@dotted-labs/ngx-supabase-stripe 0.6.4 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,98 @@
1
+ {
2
+ "locale": "en",
3
+ "translations": {
4
+ "stripe.billing.daily": "Daily",
5
+ "stripe.billing.monthly": "Monthly",
6
+ "stripe.billing.weekly": "Weekly",
7
+ "stripe.billing.yearly": "Yearly",
8
+ "stripe.checkout.error_message": "The payment could not be processed. Please try again or contact support.",
9
+ "stripe.checkout.error_title": "An error occurred",
10
+ "stripe.checkout.payment_complete": "Payment completed successfully!",
11
+ "stripe.checkout.payment_processing": "Payment in processing",
12
+ "stripe.checkout.processing_message": "Your payment is being processed. You will receive an email confirmation when it is complete.",
13
+ "stripe.checkout.verifying_status": "Verifying your payment status...",
14
+ "stripe.common.back": "Back",
15
+ "stripe.common.close": "Close",
16
+ "stripe.common.error_label": "Error:",
17
+ "stripe.common.loading": "Loading...",
18
+ "stripe.common.not_available": "N/A",
19
+ "stripe.common.refresh": "Refresh",
20
+ "stripe.customer.payment_intents_description": "Payment intents history. Select a tab to see the list or table view.",
21
+ "stripe.customer.payment_intents_title": "Payment Intents",
22
+ "stripe.customer.tab_list": "List",
23
+ "stripe.customer.tab_table": "Table",
24
+ "stripe.errors.no_auth_session": "No Supabase Auth session. Sign in before checkout (e.g. signInWithPassword, signInWithOAuth, or magic link).",
25
+ "stripe.errors.no_stripe_instance": "No Stripe instance returned",
26
+ "stripe.errors.payment_method_not_found": "Payment method not found",
27
+ "stripe.errors.portal_session_failed": "Could not create portal session",
28
+ "stripe.errors.unknown": "Unknown error",
29
+ "stripe.payment_intents.additional_info": "Additional information",
30
+ "stripe.payment_intents.confirmation": "Confirmation:",
31
+ "stripe.payment_intents.count_label": "payment intents",
32
+ "stripe.payment_intents.details": "Details",
33
+ "stripe.payment_intents.dialog_title": "Payment intent details",
34
+ "stripe.payment_intents.empty_description": "No payment intents found in your history.",
35
+ "stripe.payment_intents.empty_title": "No recent payment intents",
36
+ "stripe.payment_intents.environment": "Environment",
37
+ "stripe.payment_intents.export_selected": "Export selected",
38
+ "stripe.payment_intents.invoice": "Invoice",
39
+ "stripe.payment_intents.mode.live": "Live",
40
+ "stripe.payment_intents.mode.test": "Test",
41
+ "stripe.payment_intents.payment_info": "Payment information",
42
+ "stripe.payment_intents.payment_method": "Payment method",
43
+ "stripe.payment_intents.reference": "Reference",
44
+ "stripe.payment_intents.table.amount": "Amount",
45
+ "stripe.payment_intents.table.mode": "Mode",
46
+ "stripe.payment_intents.table.payment_method": "Payment method",
47
+ "stripe.payment_intents.table.status": "Status",
48
+ "stripe.payment_intents.transaction_details": "Transaction details",
49
+ "stripe.payment_method.active": "Active",
50
+ "stripe.payment_method.added_on": "Payment method added:",
51
+ "stripe.payment_method.billing_address": "Billing address",
52
+ "stripe.payment_method.cardholder": "CARDHOLDER",
53
+ "stripe.payment_method.contact_info": "Contact information",
54
+ "stripe.payment_method.expired": "Expired",
55
+ "stripe.payment_method.valid_thru": "VALID THRU",
56
+ "stripe.product.buy_now": "Buy now",
57
+ "stripe.product.inactive": "Inactive",
58
+ "stripe.product.no_products": "No products available",
59
+ "stripe.product.per_month": "/mo",
60
+ "stripe.product.per_year": "/yr",
61
+ "stripe.status.active": "Active",
62
+ "stripe.status.canceled": "Canceled",
63
+ "stripe.status.failed": "Failed",
64
+ "stripe.status.incomplete": "Incomplete",
65
+ "stripe.status.incomplete_expired": "Incomplete expired",
66
+ "stripe.status.paid": "Paid",
67
+ "stripe.status.past_due": "Past due",
68
+ "stripe.status.paused": "Paused",
69
+ "stripe.status.pending": "Pending",
70
+ "stripe.status.processing": "Processing",
71
+ "stripe.status.requires_action": "Requires action",
72
+ "stripe.status.requires_capture": "Requires capture",
73
+ "stripe.status.requires_confirmation": "Requires confirmation",
74
+ "stripe.status.requires_payment_method": "Requires payment method",
75
+ "stripe.status.succeeded": "Succeeded",
76
+ "stripe.status.trialing": "Trialing",
77
+ "stripe.status.unpaid": "Unpaid",
78
+ "stripe.subscription.active_until": "Subscription active until:",
79
+ "stripe.subscription.canceled_badge": "Canceled",
80
+ "stripe.subscription.count_label": "subscriptions",
81
+ "stripe.subscription.description": "Manage your subscriptions and payments in one place",
82
+ "stripe.subscription.empty_description": "Browse our plans to start a subscription.",
83
+ "stripe.subscription.empty_title": "You have no active subscriptions",
84
+ "stripe.subscription.loading_details": "Loading subscription details...",
85
+ "stripe.subscription.manage": "Manage subscription",
86
+ "stripe.subscription.plan_fallback": "Subscription plan",
87
+ "stripe.subscription.product_alt": "Subscription product",
88
+ "stripe.subscription.return.active": "Your subscription is active and ready to use.",
89
+ "stripe.subscription.return.benefit_full_access": "Full access to all features",
90
+ "stripe.subscription.return.benefit_support": "24/7 priority support",
91
+ "stripe.subscription.return.benefit_updates": "Automatic updates",
92
+ "stripe.subscription.return.benefits_title": "Included benefits:",
93
+ "stripe.subscription.return.contact_support": "Contact support",
94
+ "stripe.subscription.return.go_dashboard": "Go to dashboard",
95
+ "stripe.subscription.return.need_help": "Need help?",
96
+ "stripe.subscription.title": "Subscriptions"
97
+ }
98
+ }
@@ -0,0 +1,98 @@
1
+ {
2
+ "locale": "es",
3
+ "translations": {
4
+ "stripe.billing.daily": "Diario",
5
+ "stripe.billing.monthly": "Mensual",
6
+ "stripe.billing.weekly": "Semanal",
7
+ "stripe.billing.yearly": "Anual",
8
+ "stripe.checkout.error_message": "No se pudo procesar el pago. Inténtalo de nuevo o contacta con soporte.",
9
+ "stripe.checkout.error_title": "Se produjo un error",
10
+ "stripe.checkout.payment_complete": "¡Pago completado con éxito!",
11
+ "stripe.checkout.payment_processing": "Pago en procesamiento",
12
+ "stripe.checkout.processing_message": "Tu pago se está procesando. Recibirás un correo de confirmación cuando se complete.",
13
+ "stripe.checkout.verifying_status": "Verificando el estado de tu pago...",
14
+ "stripe.common.back": "Volver",
15
+ "stripe.common.close": "Cerrar",
16
+ "stripe.common.error_label": "Error:",
17
+ "stripe.common.loading": "Cargando...",
18
+ "stripe.common.not_available": "N/D",
19
+ "stripe.common.refresh": "Actualizar",
20
+ "stripe.customer.payment_intents_description": "Historial de payment intents. Selecciona una pestaña para ver la lista o la tabla.",
21
+ "stripe.customer.payment_intents_title": "Payment Intents",
22
+ "stripe.customer.tab_list": "Lista",
23
+ "stripe.customer.tab_table": "Tabla",
24
+ "stripe.errors.no_auth_session": "No hay sesión de Supabase Auth. Inicia sesión antes del checkout (p. ej. signInWithPassword, signInWithOAuth o magic link).",
25
+ "stripe.errors.no_stripe_instance": "No se devolvió una instancia de Stripe",
26
+ "stripe.errors.payment_method_not_found": "Método de pago no encontrado",
27
+ "stripe.errors.portal_session_failed": "No se pudo crear la sesión del portal",
28
+ "stripe.errors.unknown": "Error desconocido",
29
+ "stripe.payment_intents.additional_info": "Información adicional",
30
+ "stripe.payment_intents.confirmation": "Confirmación:",
31
+ "stripe.payment_intents.count_label": "payment intents",
32
+ "stripe.payment_intents.details": "Detalles",
33
+ "stripe.payment_intents.dialog_title": "Detalles del payment intent",
34
+ "stripe.payment_intents.empty_description": "No se encontraron payment intents en tu historial.",
35
+ "stripe.payment_intents.empty_title": "No hay payment intents recientes",
36
+ "stripe.payment_intents.environment": "Entorno",
37
+ "stripe.payment_intents.export_selected": "Exportar seleccionados",
38
+ "stripe.payment_intents.invoice": "Factura",
39
+ "stripe.payment_intents.mode.live": "Producción",
40
+ "stripe.payment_intents.mode.test": "Prueba",
41
+ "stripe.payment_intents.payment_info": "Información del pago",
42
+ "stripe.payment_intents.payment_method": "Método de pago",
43
+ "stripe.payment_intents.reference": "Referencia",
44
+ "stripe.payment_intents.table.amount": "Importe",
45
+ "stripe.payment_intents.table.mode": "Modo",
46
+ "stripe.payment_intents.table.payment_method": "Método de pago",
47
+ "stripe.payment_intents.table.status": "Estado",
48
+ "stripe.payment_intents.transaction_details": "Detalles de la transacción",
49
+ "stripe.payment_method.active": "Activa",
50
+ "stripe.payment_method.added_on": "Método agregado:",
51
+ "stripe.payment_method.billing_address": "Dirección de facturación",
52
+ "stripe.payment_method.cardholder": "TITULAR",
53
+ "stripe.payment_method.contact_info": "Información de contacto",
54
+ "stripe.payment_method.expired": "Expirada",
55
+ "stripe.payment_method.valid_thru": "VÁLIDA HASTA",
56
+ "stripe.product.buy_now": "Comprar ahora",
57
+ "stripe.product.inactive": "Inactivo",
58
+ "stripe.product.no_products": "No hay productos disponibles",
59
+ "stripe.product.per_month": "/mes",
60
+ "stripe.product.per_year": "/año",
61
+ "stripe.status.active": "Activa",
62
+ "stripe.status.canceled": "Cancelada",
63
+ "stripe.status.failed": "Fallida",
64
+ "stripe.status.incomplete": "Incompleta",
65
+ "stripe.status.incomplete_expired": "Incompleta expirada",
66
+ "stripe.status.paid": "Pagada",
67
+ "stripe.status.past_due": "Vencida",
68
+ "stripe.status.paused": "Pausada",
69
+ "stripe.status.pending": "Pendiente",
70
+ "stripe.status.processing": "Procesando",
71
+ "stripe.status.requires_action": "Requiere acción",
72
+ "stripe.status.requires_capture": "Requiere captura",
73
+ "stripe.status.requires_confirmation": "Requiere confirmación",
74
+ "stripe.status.requires_payment_method": "Requiere método de pago",
75
+ "stripe.status.succeeded": "Completada",
76
+ "stripe.status.trialing": "En prueba",
77
+ "stripe.status.unpaid": "Impagada",
78
+ "stripe.subscription.active_until": "Suscripción activa hasta:",
79
+ "stripe.subscription.canceled_badge": "Cancelada",
80
+ "stripe.subscription.count_label": "suscripciones",
81
+ "stripe.subscription.description": "Gestiona tus suscripciones y pagos en un solo lugar",
82
+ "stripe.subscription.empty_description": "Consulta nuestros planes para comenzar una suscripción.",
83
+ "stripe.subscription.empty_title": "No tienes suscripciones activas",
84
+ "stripe.subscription.loading_details": "Cargando detalles de la suscripción...",
85
+ "stripe.subscription.manage": "Gestionar suscripción",
86
+ "stripe.subscription.plan_fallback": "Plan de suscripción",
87
+ "stripe.subscription.product_alt": "Producto de suscripción",
88
+ "stripe.subscription.return.active": "Tu suscripción está activa y lista para usar.",
89
+ "stripe.subscription.return.benefit_full_access": "Acceso completo a todas las funciones",
90
+ "stripe.subscription.return.benefit_support": "Soporte prioritario 24/7",
91
+ "stripe.subscription.return.benefit_updates": "Actualizaciones automáticas",
92
+ "stripe.subscription.return.benefits_title": "Beneficios incluidos:",
93
+ "stripe.subscription.return.contact_support": "Contacta soporte",
94
+ "stripe.subscription.return.go_dashboard": "Ir al panel principal",
95
+ "stripe.subscription.return.need_help": "¿Necesitas ayuda?",
96
+ "stripe.subscription.title": "Suscripciones"
97
+ }
98
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dotted-labs/ngx-supabase-stripe",
3
- "version": "0.6.4",
3
+ "version": "0.7.0",
4
4
  "description": "An Angular library for integrating Supabase and Stripe into your applications, providing ready-to-use components that simplify the implementation of payments and subscriptions",
5
5
  "keywords": [
6
6
  "angular",
@@ -28,6 +28,7 @@
28
28
  "peerDependencies": {
29
29
  "@angular/common": "^21.0.0",
30
30
  "@angular/core": "^21.0.0",
31
+ "@angular/localize": "^21.0.0",
31
32
  "@stripe/stripe-js": "^8.8.0",
32
33
  "@supabase/supabase-js": "^2.39.7"
33
34
  },
@@ -44,6 +45,11 @@
44
45
  ".": {
45
46
  "types": "./types/dotted-labs-ngx-supabase-stripe.d.ts",
46
47
  "default": "./fesm2022/dotted-labs-ngx-supabase-stripe.mjs"
48
+ },
49
+ "./i18n": {
50
+ "types": "./types/dotted-labs-ngx-supabase-stripe-i18n.d.ts",
51
+ "default": "./fesm2022/dotted-labs-ngx-supabase-stripe-i18n.mjs"
47
52
  }
48
- }
53
+ },
54
+ "type": "module"
49
55
  }
@@ -0,0 +1,15 @@
1
+ declare const STRIPE_LOCALES: readonly ["es", "en"];
2
+ type StripeLocale = (typeof STRIPE_LOCALES)[number];
3
+ type StripeMessagesFile = {
4
+ locale: string;
5
+ translations: Record<string, string>;
6
+ };
7
+ /**
8
+ * Loads stripe translation messages for the given locale.
9
+ * Falls back to English when the locale is not available.
10
+ * The app consumer must merge the result into `loadTranslations()` before bootstrap.
11
+ */
12
+ declare const loadStripeMessages: (locale: string) => Promise<StripeMessagesFile>;
13
+
14
+ export { STRIPE_LOCALES, loadStripeMessages };
15
+ export type { StripeLocale, StripeMessagesFile };
@@ -1,12 +1,12 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { InjectionToken, Provider, EnvironmentProviders, OnInit } from '@angular/core';
3
+ import { StripeConstructorOptions, Stripe as Stripe$1, StripeEmbeddedCheckout } from '@stripe/stripe-js';
3
4
  import * as _dotted_labs_ngx_supabase_stripe from '@dotted-labs/ngx-supabase-stripe';
4
5
  import { SupabaseClient } from '@supabase/supabase-js';
5
6
  import * as _ngrx_signals from '@ngrx/signals';
6
7
  import * as stripe from 'stripe';
7
8
  import { Stripe } from 'stripe';
8
9
  import * as _ngrx_signals_entities from '@ngrx/signals/entities';
9
- import { Stripe as Stripe$1, StripeEmbeddedCheckout } from '@stripe/stripe-js';
10
10
  import * as _supabase_postgrest_js from '@supabase/postgrest-js';
11
11
 
12
12
  /**
@@ -23,6 +23,11 @@ interface StripeConfig {
23
23
  * When omitted, components use `window.location.origin`.
24
24
  */
25
25
  embeddedCheckoutBaseUrl?: string;
26
+ /**
27
+ * BCP 47 locale for Stripe.js (e.g. 'en', 'es'). Localizes Embedded Checkout UI only.
28
+ * Should match the locale passed to loadStripeMessages() in the consuming app.
29
+ */
30
+ locale?: StripeConstructorOptions['locale'];
26
31
  }
27
32
  declare const STRIPE_CONFIG: InjectionToken<StripeConfig>;
28
33
  /**
@@ -921,6 +926,16 @@ declare const CheckoutStore: _angular_core.Type<{
921
926
  sessionStatus: ICheckoutSessionStatus | null;
922
927
  }>>;
923
928
 
929
+ declare enum Currency {
930
+ EUR = "eur",
931
+ USD = "usd",
932
+ GBP = "gbp",
933
+ JPY = "jpy",
934
+ KRW = "krw",
935
+ CNY = "cny",
936
+ INR = "inr"
937
+ }
938
+
924
939
  type StripeSchemaType = Database['stripe'];
925
940
  type StripeRowType<T extends keyof StripeSchemaType['Tables']> = StripeSchemaType['Tables'][T]['Row'];
926
941
  type StripeUpdateType<T extends keyof StripeSchemaType['Tables']> = StripeSchemaType['Tables'][T]['Update'];
@@ -938,16 +953,7 @@ type StripeCustomerRow = StripeRowType<'customers'>;
938
953
  type StripeCustomer = Omit<StripeCustomerRow, 'created' | 'updated'>;
939
954
  type StripeTables = keyof StripeSchemaType['Tables'];
940
955
 
941
- declare enum Currency {
942
- EUR = "eur",
943
- USD = "usd",
944
- GBP = "gbp",
945
- JPY = "jpy",
946
- KRW = "krw",
947
- CNY = "cny",
948
- INR = "inr"
949
- }
950
-
956
+ type StripePricePublic = Omit<StripePrice, 'attrs'>;
951
957
  type StripeProductPublic = Omit<StripeProduct, 'attrs'> & {
952
958
  images: string[];
953
959
  prices: {
@@ -955,7 +961,7 @@ type StripeProductPublic = Omit<StripeProduct, 'attrs'> & {
955
961
  recurringInterval: string;
956
962
  }[];
957
963
  };
958
- type StripePricePublic = Omit<StripePrice, 'attrs'>;
964
+
959
965
  type ProductsStatus = 'idle' | 'loading' | 'success' | 'error';
960
966
  declare const ProductsStore: _angular_core.Type<{
961
967
  products: _angular_core.Signal<StripeProductPublic[] | null>;
@@ -984,7 +990,6 @@ declare const ProductsStore: _angular_core.Type<{
984
990
  error: string | null;
985
991
  currency: Currency;
986
992
  }>>;
987
- declare function parseProduct(product: StripeProduct, prices?: StripePrice[]): StripeProductPublic;
988
993
 
989
994
  type CustomerStatus = 'idle' | 'loading' | 'success' | 'error';
990
995
  type StripePaymentIntentsPublic = Omit<StripePaymentIntent, 'attrs'> & {
@@ -1924,7 +1929,7 @@ declare class SupabaseClientService {
1924
1929
  current_period_start: string;
1925
1930
  current_period_end: string;
1926
1931
  attrs: _dotted_labs_ngx_supabase_stripe.Json;
1927
- }[], "get_stripe_subscriptions", null, "RPC">;
1932
+ }[], "get_stripe_subscriptions", null, "RPC", false>;
1928
1933
  /**
1929
1934
  * Stripe subscriptions for the JWT-authenticated Supabase user (empty if anonymous)
1930
1935
  */
@@ -2521,7 +2526,7 @@ declare class SupabaseClientService {
2521
2526
  current_period_start: string;
2522
2527
  current_period_end: string;
2523
2528
  attrs: _dotted_labs_ngx_supabase_stripe.Json;
2524
- }[], "get_stripe_subscriptions_for_authenticated_user", null, "RPC">;
2529
+ }[], "get_stripe_subscriptions_for_authenticated_user", null, "RPC", false>;
2525
2530
  /**
2526
2531
  * Select a Stripe subscription
2527
2532
  * @param subscriptionId The subscription ID
@@ -3119,7 +3124,7 @@ declare class SupabaseClientService {
3119
3124
  current_period_start: string;
3120
3125
  current_period_end: string;
3121
3126
  attrs: _dotted_labs_ngx_supabase_stripe.Json;
3122
- }[], "get_stripe_subscription", null, "RPC">;
3127
+ }[], "get_stripe_subscription", null, "RPC", false>;
3123
3128
  /**
3124
3129
  * STRIPE PRICES
3125
3130
  */
@@ -3302,6 +3307,42 @@ declare class SupabaseClientService {
3302
3307
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<SupabaseClientService>;
3303
3308
  }
3304
3309
 
3310
+ type FetchCatalogResult = {
3311
+ prices: StripePrice[];
3312
+ products: StripeProductPublic[];
3313
+ };
3314
+ declare class ProductsService {
3315
+ private readonly supabaseService;
3316
+ /**
3317
+ * Map a Stripe product row plus price rows to the public shape used by the UI.
3318
+ */
3319
+ toStripeProductPublic(product: StripeProduct, prices?: StripePrice[]): StripeProductPublic;
3320
+ /**
3321
+ * Load all Stripe prices and products, returning parsed public products.
3322
+ */
3323
+ fetchFullCatalog(): Promise<{
3324
+ data: FetchCatalogResult | null;
3325
+ error: Error | null;
3326
+ }>;
3327
+ /**
3328
+ * Load prices and a single product by id, returning parsed public product(s).
3329
+ */
3330
+ fetchProductById(id: string): Promise<{
3331
+ data: StripeProductPublic[];
3332
+ error: Error | null;
3333
+ }>;
3334
+ /**
3335
+ * Load prices and products for the given Stripe product ids.
3336
+ */
3337
+ fetchProductsByIds(ids: string[]): Promise<{
3338
+ data: StripeProductPublic[];
3339
+ error: Error | null;
3340
+ }>;
3341
+ private parseProduct;
3342
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProductsService, never>;
3343
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ProductsService>;
3344
+ }
3345
+
3305
3346
  declare class EmbeddedCheckoutComponent implements OnInit {
3306
3347
  readonly checkoutStore: {
3307
3348
  status: _angular_core.Signal<_dotted_labs_ngx_supabase_stripe.CheckoutStatus>;
@@ -3491,6 +3532,8 @@ declare class UtilsService {
3491
3532
  formatAmount(amount: number, currency?: string): string;
3492
3533
  formatDate(timestamp: number | string): string;
3493
3534
  getStatusBadgeClass(status: string): string;
3535
+ translateStripeStatus(status: string): string;
3536
+ translateBillingInterval(interval: string): string;
3494
3537
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<UtilsService, never>;
3495
3538
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<UtilsService>;
3496
3539
  }
@@ -3708,6 +3751,8 @@ declare class PaymentIntentsTableComponent {
3708
3751
  readonly exportSelected: _angular_core.OutputEmitterRef<StripePaymentIntentsPublic[]>;
3709
3752
  readonly onRefresh: _angular_core.OutputEmitterRef<void>;
3710
3753
  readonly utils: UtilsService;
3754
+ protected readonly liveModeLabel: string;
3755
+ protected readonly testModeLabel: string;
3711
3756
  readonly hasPaymentIntents: _angular_core.Signal<boolean>;
3712
3757
  protected readonly trackByPaymentIntentId: (index: number, item: StripePaymentIntentsPublic) => string | null;
3713
3758
  refreshPaymentIntents(): void;
@@ -3836,5 +3881,5 @@ declare class CustomerDashboardComponent {
3836
3881
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<CustomerDashboardComponent, "lib-customer-dashboard", never, { "returnUrl": { "alias": "returnUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
3837
3882
  }
3838
3883
 
3839
- export { CheckoutStore, Currency, CustomerDashboardComponent, CustomerStore, EmbeddedCheckoutComponent, EmbeddedSubscriptionComponent, PaymentIntentsListComponent, PaymentIntentsTableComponent, PortalAccountStore, ProductItemButtonComponent, ProductListComponent, ProductsStore, ReturnPageComponent, STRIPE_CONFIG, SUPABASE_BROWSER_CLIENT, SUPABASE_CONFIG, StripeClientService, SubscriptionCardComponent, SubscriptionReturnPageComponent, SubscriptionsListComponent, SubscriptionsStore, SupabaseClientService, parsePaymentIntent, parseProduct, parseSubscription, provideNgxSupabaseStripeConfig, provideStripeConfig, provideSupabaseConfig };
3840
- export type { CheckoutStatus, CompositeTypes, CustomerState, CustomerStatus, Database, ICheckoutSessionStatus, Json, NgxSupabaseStripeConfig, PaymentMethodEntity, PortalSessionResponse, PortalState, PortalStatus, ProductsStatus, StripeConfig, StripeCustomerPublic, StripePaymentIntentsPublic, StripePricePublic, StripeProductPublic, StripeSubscriptionCancellationDetails, StripeSubscriptionPlan, StripeSubscriptionPublic, SubscriptionState, SubscriptionStatus, SupabaseConfig, Tables, TablesInsert, TablesUpdate };
3884
+ export { CheckoutStore, Currency, CustomerDashboardComponent, CustomerStore, EmbeddedCheckoutComponent, EmbeddedSubscriptionComponent, PaymentIntentsListComponent, PaymentIntentsTableComponent, PortalAccountStore, ProductItemButtonComponent, ProductListComponent, ProductsService, ProductsStore, ReturnPageComponent, STRIPE_CONFIG, SUPABASE_BROWSER_CLIENT, SUPABASE_CONFIG, StripeClientService, SubscriptionCardComponent, SubscriptionReturnPageComponent, SubscriptionsListComponent, SubscriptionsStore, SupabaseClientService, parsePaymentIntent, parseSubscription, provideNgxSupabaseStripeConfig, provideStripeConfig, provideSupabaseConfig };
3885
+ export type { CheckoutStatus, CompositeTypes, CustomerState, CustomerStatus, Database, FetchCatalogResult, ICheckoutSessionStatus, Json, NgxSupabaseStripeConfig, PaymentMethodEntity, PortalSessionResponse, PortalState, PortalStatus, ProductsStatus, StripeConfig, StripeCustomerPublic, StripePaymentIntentsPublic, StripePricePublic, StripeProductPublic, StripeSubscriptionCancellationDetails, StripeSubscriptionPlan, StripeSubscriptionPublic, SubscriptionState, SubscriptionStatus, SupabaseConfig, Tables, TablesInsert, TablesUpdate };