mirror of
https://github.com/hanzoai/billing.git
synced 2026-10-30 18:46:54 +00:00
Published npm packages have issues: - @hanzo/commerce v7.3.10 doesn't include the billing API client (only in unreleased v7.4.0) - @hanzo/ui v5.3.34 exports billing from src/ but doesn't ship src/ in the tarball - @hanzo/auth v2.7.1 source files reference @hanzo/ui/primitives which lacks type declarations Solution: inline all three as self-contained modules: - lib/commerce-client.ts — Commerce API client (balance, deposits, subscriptions, plans) - lib/billing/ — BillingWorkspace + 5 sub-components + types (from @hanzo/ui source) - lib/iam-auth.ts — OIDC/PKCE auth flow with Casdoor (hanzo.id) Build passes: typecheck + next build → 4 static pages generated. Co-authored-by: Hanzo Dev <[email protected]>
14 lines
304 B
TypeScript
14 lines
304 B
TypeScript
import { Commerce } from './commerce-client'
|
|
|
|
let instance: Commerce | null = null
|
|
|
|
export function getCommerce(commerceUrl: string, token?: string): Commerce {
|
|
if (!instance) {
|
|
instance = new Commerce({ commerceUrl, token })
|
|
}
|
|
if (token) {
|
|
instance.setToken(token)
|
|
}
|
|
return instance
|
|
}
|