Loading...
* {:else if error} *Error: {error.message}
* {:else if customer} *Welcome {customer.name}!
*Messages: {customer.features?.messages?.balance}
* {#if !canUpload} * * {/if} * {/if} * ``` * * @example * ```svelte * * * * * * ``` * * @example * ```svelte * * * * * * * * {#if messagesFeature} *Usage: {messagesUsed} / {messagesTotal} (Remaining: {messagesRemaining})
* {/if} * ``` */ export function useCustomer() { const autumn = getAutumnContext(); if (!autumn) { throw new Error( "No Autumn client found in context. Did you forget to call setupAutumn()?", ); } return { get customer() { return autumn.customer; }, get isLoading() { return autumn.isLoading; }, get error() { return autumn.error; }, allowed: autumn.allowed, check: autumn.check, checkout: autumn.checkout, track: autumn.track, attach: autumn.attach, cancel: autumn.cancel, openBillingPortal: autumn.openBillingPortal, createEntity: autumn.createEntity, getEntity: autumn.getEntity, setupPayment: autumn.setupPayment, createReferralCode: autumn.createReferralCode, redeemReferralCode: autumn.redeemReferralCode, listProducts: autumn.listProducts, usage: autumn.usage, query: autumn.query, listEvents: autumn.listEvents, aggregateEvents: autumn.aggregateEvents, refetch: autumn.refetch, }; } /** * Check if Autumn has been set up in the current context. */ export function isAutumnSetup(): boolean { return hasAutumnContext(); } export type { Customer, Entity, Feature, Product, ProductItem, CheckParams, CheckResult, CheckoutParams, CheckoutResult, TrackParams, TrackResult, AttachParams, AttachResult, AttachFeatureOptions, CancelParams, BillingPortalParams, BillingPortalResult, CreateCustomerParams, CreateEntityParams, GetEntityParams, SetupPaymentParams, SetupPaymentResult, CreateReferralCodeParams, CreateReferralCodeResult, RedeemReferralCodeParams, RedeemReferralCodeResult, SetUsageParams, SetUsageResult, FeatureUsageData, QueryParams, QueryResult, EventRecord, EventListParams, EventListResult, EventAggregateParams, LocalCheckResult, RefetchOptions, AutumnConvexApi, AutumnActionResponse, } from "./types.js"; export { AutumnError, unwrapAutumnResponse } from "./types.js";