autumn-js 0.0.77 → 0.0.80
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.
- package/dist/libraries/backend/better-auth.js +30 -0
- package/dist/libraries/backend/better-auth.mjs +7 -7
- package/dist/libraries/backend/{chunk-J7UA442M.mjs → chunk-3VWJMYUQ.mjs} +13 -0
- package/dist/libraries/backend/{chunk-T4YSUMNB.mjs → chunk-6YOFMAEQ.mjs} +6 -6
- package/dist/libraries/backend/{chunk-Y2VYFWJD.mjs → chunk-7NHMUGUP.mjs} +1 -1
- package/dist/libraries/backend/{chunk-GUZSIYGF.mjs → chunk-CPLIRBCA.mjs} +1 -1
- package/dist/libraries/backend/{chunk-PBBWXVWW.mjs → chunk-HDGYVYU5.mjs} +1 -1
- package/dist/libraries/backend/{chunk-ZF4V3SVZ.mjs → chunk-MIWNIVVB.mjs} +1 -1
- package/dist/libraries/backend/{chunk-2JZFMBVR.mjs → chunk-PCYIWHGN.mjs} +18 -1
- package/dist/libraries/backend/express.d.mts +3 -2
- package/dist/libraries/backend/express.d.ts +3 -2
- package/dist/libraries/backend/express.js +32 -2
- package/dist/libraries/backend/express.mjs +9 -9
- package/dist/libraries/backend/fastify.d.mts +1 -0
- package/dist/libraries/backend/fastify.d.ts +1 -0
- package/dist/libraries/backend/fastify.js +49 -0
- package/dist/libraries/backend/fastify.mjs +14 -7
- package/dist/libraries/backend/hono.d.mts +2 -0
- package/dist/libraries/backend/hono.d.ts +2 -0
- package/dist/libraries/backend/hono.js +50 -1
- package/dist/libraries/backend/hono.mjs +15 -8
- package/dist/libraries/backend/next.js +30 -0
- package/dist/libraries/backend/next.mjs +7 -7
- package/dist/libraries/backend/react-router.d.mts +1 -1
- package/dist/libraries/backend/react-router.d.ts +1 -1
- package/dist/libraries/backend/react-router.js +51 -0
- package/dist/libraries/backend/react-router.mjs +16 -7
- package/dist/libraries/backend/{referralTypes-CSbCGBim.d.ts → referralTypes-3L_pJkT7.d.ts} +137 -126
- package/dist/libraries/backend/{referralTypes-DiYwS4QY.d.mts → referralTypes-BOtccenE.d.mts} +137 -126
- package/dist/libraries/backend/remix_dep.js +30 -0
- package/dist/libraries/backend/remix_dep.mjs +7 -7
- package/dist/libraries/backend/routes/backendRouter.js +30 -0
- package/dist/libraries/backend/routes/backendRouter.mjs +7 -7
- package/dist/libraries/backend/routes/entityRoutes.js +13 -0
- package/dist/libraries/backend/routes/entityRoutes.mjs +3 -3
- package/dist/libraries/backend/routes/genRoutes.js +30 -0
- package/dist/libraries/backend/routes/genRoutes.mjs +3 -3
- package/dist/libraries/backend/routes/productRoutes.js +13 -0
- package/dist/libraries/backend/routes/productRoutes.mjs +3 -3
- package/dist/libraries/backend/routes/referralRoutes.js +13 -0
- package/dist/libraries/backend/routes/referralRoutes.mjs +3 -3
- package/dist/libraries/backend/supabase.d.mts +1 -0
- package/dist/libraries/backend/supabase.d.ts +1 -0
- package/dist/libraries/backend/supabase.js +51 -0
- package/dist/libraries/backend/supabase.mjs +16 -7
- package/dist/libraries/backend/tanstack.d.mts +1 -0
- package/dist/libraries/backend/tanstack.d.ts +1 -0
- package/dist/libraries/backend/tanstack.js +51 -0
- package/dist/libraries/backend/tanstack.mjs +16 -7
- package/dist/libraries/backend/utils/backendRes.js +13 -0
- package/dist/libraries/backend/utils/backendRes.mjs +1 -1
- package/dist/libraries/backend/utils/withAuth.d.mts +1 -1
- package/dist/libraries/backend/utils/withAuth.d.ts +1 -1
- package/dist/libraries/backend/utils/withAuth.js +13 -0
- package/dist/libraries/backend/utils/withAuth.mjs +2 -2
- package/dist/libraries/react/AutumnContext.d.mts +4 -5
- package/dist/libraries/react/AutumnContext.d.ts +4 -5
- package/dist/libraries/react/AutumnContext.js +19 -0
- package/dist/libraries/react/AutumnContext.mjs +7 -7
- package/dist/libraries/react/BaseAutumnProvider.css +1264 -0
- package/dist/libraries/react/BaseAutumnProvider.d.mts +4 -5
- package/dist/libraries/react/BaseAutumnProvider.d.ts +4 -5
- package/dist/libraries/react/BaseAutumnProvider.js +45 -3
- package/dist/libraries/react/BaseAutumnProvider.mjs +15 -14
- package/dist/libraries/react/{ReactAutumnClient-CrkFLuOn.d.mts → ReactAutumnClient-B-g4zQsF.d.mts} +5 -5
- package/dist/libraries/react/{ReactAutumnClient-A7x9envm.d.ts → ReactAutumnClient-BUIEn-KV.d.ts} +5 -5
- package/dist/libraries/react/ReactAutumnProvider.css +1264 -0
- package/dist/libraries/react/ReactAutumnProvider.d.mts +1 -1
- package/dist/libraries/react/ReactAutumnProvider.d.ts +1 -1
- package/dist/libraries/react/ReactAutumnProvider.js +45 -3
- package/dist/libraries/react/ReactAutumnProvider.mjs +15 -14
- package/dist/libraries/react/{chunk-XXMAVKQ4.mjs → chunk-3OBQBUE2.mjs} +2 -2
- package/dist/libraries/react/{chunk-77N4ARHR.mjs → chunk-JNM4BLTM.mjs} +6 -0
- package/dist/libraries/react/{chunk-WI6WFW54.mjs → chunk-JYOLY75Q.mjs} +3 -2
- package/dist/libraries/react/chunk-OWFX3JFF.mjs +23 -0
- package/dist/libraries/react/{chunk-EH2VPTFH.mjs → chunk-RRXCG32N.mjs} +13 -0
- package/dist/libraries/react/{chunk-UMZA5GHL.mjs → chunk-WYADGMAH.mjs} +1 -1
- package/dist/libraries/react/{chunk-FINFVKJY.mjs → chunk-XPGX7SQG.mjs} +44 -18
- package/dist/libraries/react/{chunk-4CRZJJPY.mjs → chunk-Y6UVL46W.mjs} +17 -15
- package/dist/libraries/react/client/ReactAutumnClient.d.mts +4 -5
- package/dist/libraries/react/client/ReactAutumnClient.d.ts +4 -5
- package/dist/libraries/react/client/ReactAutumnClient.js +19 -0
- package/dist/libraries/react/client/ReactAutumnClient.mjs +6 -6
- package/dist/libraries/react/client/clientCompMethods.d.mts +4 -5
- package/dist/libraries/react/client/clientCompMethods.d.ts +4 -5
- package/dist/libraries/react/client/clientCusMethods.d.mts +4 -5
- package/dist/libraries/react/client/clientCusMethods.d.ts +4 -5
- package/dist/libraries/react/client/clientEntityMethods.d.mts +4 -5
- package/dist/libraries/react/client/clientEntityMethods.d.ts +4 -5
- package/dist/libraries/react/client/clientGenMethods.d.mts +7 -7
- package/dist/libraries/react/client/clientGenMethods.d.ts +7 -7
- package/dist/libraries/react/client/clientGenMethods.js +7 -0
- package/dist/libraries/react/client/clientGenMethods.mjs +3 -1
- package/dist/libraries/react/client/clientProdMethods.d.mts +4 -5
- package/dist/libraries/react/client/clientProdMethods.d.ts +4 -5
- package/dist/libraries/react/client/clientReferralMethods.d.mts +4 -5
- package/dist/libraries/react/client/clientReferralMethods.d.ts +4 -5
- package/dist/libraries/react/client/types/clientGenTypes.d.mts +6 -1
- package/dist/libraries/react/client/types/clientGenTypes.d.ts +6 -1
- package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.css +1264 -0
- package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.mts +1 -2
- package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.ts +1 -2
- package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.js +45 -3
- package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.mjs +15 -14
- package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.mts +1 -2
- package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.ts +1 -2
- package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.mts +1 -2
- package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.ts +1 -2
- package/dist/libraries/react/components/check-dialog/lib/check-content.d.mts +1 -2
- package/dist/libraries/react/components/check-dialog/lib/check-content.d.ts +1 -2
- package/dist/libraries/react/components/pricing-table/pricing-table-synced.css +1264 -0
- package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +1 -2
- package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +1 -2
- package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +62 -4
- package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +15 -14
- package/dist/libraries/react/cusTypes-DSlkhuov.d.mts +225 -0
- package/dist/libraries/react/cusTypes-DSlkhuov.d.ts +225 -0
- package/dist/libraries/react/{entTypes-C8jD10M8.d.ts → entTypes-CcB_hEh5.d.ts} +1 -1
- package/dist/libraries/react/{entTypes-8gkfAi3g.d.mts → entTypes-Rpnetevb.d.mts} +1 -1
- package/dist/libraries/react/errorUtils/logAuthError.js +13 -0
- package/dist/libraries/react/errorUtils/logAuthError.mjs +1 -1
- package/dist/libraries/react/hooks/handleAllowed.d.mts +2 -2
- package/dist/libraries/react/hooks/handleAllowed.d.ts +2 -2
- package/dist/libraries/react/hooks/useAutumn.css +1264 -0
- package/dist/libraries/react/hooks/useAutumn.d.mts +4 -4
- package/dist/libraries/react/hooks/useAutumn.d.ts +4 -4
- package/dist/libraries/react/hooks/useAutumn.js +45 -3
- package/dist/libraries/react/hooks/useAutumn.mjs +15 -14
- package/dist/libraries/react/hooks/useAutumnBase.css +1264 -0
- package/dist/libraries/react/hooks/useAutumnBase.d.mts +6 -6
- package/dist/libraries/react/hooks/useAutumnBase.d.ts +6 -6
- package/dist/libraries/react/hooks/useAutumnBase.js +45 -3
- package/dist/libraries/react/hooks/useAutumnBase.mjs +15 -14
- package/dist/libraries/react/hooks/useCustomer.css +1264 -0
- package/dist/libraries/react/hooks/useCustomer.d.mts +4 -5
- package/dist/libraries/react/hooks/useCustomer.d.ts +4 -5
- package/dist/libraries/react/hooks/useCustomer.js +45 -3
- package/dist/libraries/react/hooks/useCustomer.mjs +15 -14
- package/dist/libraries/react/hooks/useCustomerBase.css +1264 -0
- package/dist/libraries/react/hooks/useCustomerBase.d.mts +6 -6
- package/dist/libraries/react/hooks/useCustomerBase.d.ts +6 -6
- package/dist/libraries/react/hooks/useCustomerBase.js +45 -3
- package/dist/libraries/react/hooks/useCustomerBase.mjs +15 -14
- package/dist/libraries/react/hooks/useEntity.css +1264 -0
- package/dist/libraries/react/hooks/useEntity.d.mts +3 -4
- package/dist/libraries/react/hooks/useEntity.d.ts +3 -4
- package/dist/libraries/react/hooks/useEntity.js +45 -3
- package/dist/libraries/react/hooks/useEntity.mjs +15 -14
- package/dist/libraries/react/hooks/useEntityBase.css +1264 -0
- package/dist/libraries/react/hooks/useEntityBase.d.mts +4 -5
- package/dist/libraries/react/hooks/useEntityBase.d.ts +4 -5
- package/dist/libraries/react/hooks/useEntityBase.js +45 -3
- package/dist/libraries/react/hooks/useEntityBase.mjs +15 -14
- package/dist/libraries/react/hooks/usePricingTable.d.mts +1 -2
- package/dist/libraries/react/hooks/usePricingTable.d.ts +1 -2
- package/dist/libraries/react/hooks/usePricingTable.js +20 -0
- package/dist/libraries/react/hooks/usePricingTable.mjs +9 -9
- package/dist/libraries/react/hooks/usePricingTableBase.d.mts +4 -5
- package/dist/libraries/react/hooks/usePricingTableBase.d.ts +4 -5
- package/dist/libraries/react/hooks/usePricingTableBase.js +20 -0
- package/dist/libraries/react/hooks/usePricingTableBase.mjs +8 -8
- package/dist/libraries/react/hooks/useProductsBase.js +19 -0
- package/dist/libraries/react/hooks/useProductsBase.mjs +7 -7
- package/dist/libraries/react/index.d.ts +126 -115
- package/dist/libraries/react/index.js +87 -5
- package/dist/libraries/react/index.mjs +87 -5
- package/dist/libraries/react/{response-DLD-1iva.d.ts → response-BKKi_PDD.d.ts} +6 -3
- package/dist/libraries/react/{response-BGS7hGc7.d.mts → response-CTqlSAVK.d.mts} +6 -3
- package/dist/libraries/react/utils/inject-styles.d.mts +4 -0
- package/dist/libraries/react/utils/inject-styles.d.ts +4 -0
- package/dist/libraries/react/utils/inject-styles.js +47 -0
- package/dist/libraries/react/utils/inject-styles.mjs +10 -0
- package/dist/next/{AutumnProvider-BdIwgk_j.d.ts → AutumnProvider-CGdXoZNQ.d.mts} +116 -7
- package/dist/next/{AutumnProvider-BdIwgk_j.d.mts → AutumnProvider-CGdXoZNQ.d.ts} +116 -7
- package/dist/next/AutumnProvider.d.mts +1 -1
- package/dist/next/AutumnProvider.d.ts +1 -1
- package/dist/next/client/NextAutumnClient.d.mts +5 -4
- package/dist/next/client/NextAutumnClient.d.ts +5 -4
- package/dist/next/client/NextAutumnProvider.d.mts +1 -1
- package/dist/next/client/NextAutumnProvider.d.ts +1 -1
- package/dist/next/client/{clientGenTypes-Dh9BiE0s.d.mts → clientGenTypes-BHrxzZi_.d.mts} +12 -3
- package/dist/next/client/{clientGenTypes-CXkGuJ6W.d.ts → clientGenTypes-HDbUC8f6.d.ts} +12 -3
- package/dist/next/client/clientUtils.d.mts +2 -2
- package/dist/next/client/clientUtils.d.ts +2 -2
- package/dist/next/client/cusTypes-CSbB7Wu9.d.mts +225 -0
- package/dist/next/client/cusTypes-CSbB7Wu9.d.ts +225 -0
- package/dist/next/client/{entTypes-C1-bumir.d.mts → entTypes-6xEkbn32.d.mts} +1 -1
- package/dist/next/client/{entTypes-CKc2qHBt.d.ts → entTypes-B3R2yjLW.d.ts} +1 -1
- package/dist/next/client/error-DHbclCVh.d.mts +17 -0
- package/dist/next/client/error-DHbclCVh.d.ts +17 -0
- package/dist/next/client/hooks/useAutumn.d.mts +5 -4
- package/dist/next/client/hooks/useAutumn.d.ts +5 -4
- package/dist/next/client/hooks/useCustomer.d.mts +5 -4
- package/dist/next/client/hooks/useCustomer.d.ts +5 -4
- package/dist/next/client/hooks/useEntity.d.mts +5 -5
- package/dist/next/client/hooks/useEntity.d.ts +5 -5
- package/dist/next/client/hooks/usePricingTable.d.mts +2 -2
- package/dist/next/client/hooks/usePricingTable.d.ts +2 -2
- package/dist/next/client/types.d.mts +2 -2
- package/dist/next/client/types.d.ts +2 -2
- package/dist/next/index.d.mts +14 -111
- package/dist/next/index.d.ts +14 -111
- package/dist/next/server/auth/withNextAuth.d.mts +1 -1
- package/dist/next/server/auth/withNextAuth.d.ts +1 -1
- package/dist/next/server/componentActions.d.mts +1 -1
- package/dist/next/server/componentActions.d.ts +1 -1
- package/dist/next/server/cusActions.d.mts +12 -121
- package/dist/next/server/cusActions.d.ts +12 -121
- package/dist/next/server/cusTypes-ASrCF4fa.d.mts +244 -0
- package/dist/next/server/cusTypes-ASrCF4fa.d.ts +244 -0
- package/dist/next/server/genActions.d.mts +1 -1
- package/dist/next/server/genActions.d.ts +1 -1
- package/dist/sdk/index.d.mts +142 -131
- package/dist/sdk/index.d.ts +142 -131
- package/dist/sdk/index.js +13 -0
- package/dist/sdk/index.mjs +13 -0
- package/dist/styles/global.css +50 -3
- package/dist/utils/encryptUtils.js +13 -0
- package/dist/utils/encryptUtils.mjs +13 -0
- package/package.json +3 -2
- package/scripts/css-transform-plugin.js +28 -0
- package/scripts/post-build.js +65 -15
- package/scripts/sync-registry.ts +10 -0
- package/tsup.config.ts +6 -2
- package/tsup.dev.config.ts +6 -2
- package/dist/libraries/react/checkTypes-Bz2m_2pr.d.ts +0 -112
- package/dist/libraries/react/checkTypes-Cjk7BjiU.d.mts +0 -112
- package/dist/libraries/react/cusTypes-DNx5bwlw.d.mts +0 -116
- package/dist/libraries/react/cusTypes-DNx5bwlw.d.ts +0 -116
- package/dist/next/client/checkTypes-BVlLFoUT.d.ts +0 -128
- package/dist/next/client/checkTypes-CGZpuidI.d.mts +0 -128
- package/dist/next/client/cusTypes-CV5q3GIA.d.mts +0 -116
- package/dist/next/client/cusTypes-CV5q3GIA.d.ts +0 -116
- package/dist/next/server/cusTypes-Cc8NWXXF.d.mts +0 -124
- package/dist/next/server/cusTypes-Cc8NWXXF.d.ts +0 -124
|
@@ -17,11 +17,6 @@ declare class AutumnError extends Error {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
declare enum AppEnv {
|
|
21
|
-
Sandbox = "sandbox",
|
|
22
|
-
Live = "live"
|
|
23
|
-
}
|
|
24
|
-
|
|
25
20
|
declare const Infinite = "inf";
|
|
26
21
|
declare enum FreeTrialDuration {
|
|
27
22
|
Day = "day"
|
|
@@ -44,6 +39,119 @@ declare enum ProductItemInterval {
|
|
|
44
39
|
}
|
|
45
40
|
type ProductItemIntervalType = "minute" | "hour" | "day" | "week" | "month" | "quarter" | "semi_annual" | "year" | "multiple";
|
|
46
41
|
|
|
42
|
+
type CheckFeatureScenario = "usage_limit" | "feature_flag";
|
|
43
|
+
interface CheckFeatureResult extends CoreCustomerFeature {
|
|
44
|
+
allowed: boolean;
|
|
45
|
+
feature_id: string;
|
|
46
|
+
customer_id: string;
|
|
47
|
+
entity_id?: string;
|
|
48
|
+
required_balance: number;
|
|
49
|
+
code: string;
|
|
50
|
+
preview?: CheckFeaturePreview;
|
|
51
|
+
}
|
|
52
|
+
interface CheckFeaturePreview {
|
|
53
|
+
scenario: CheckFeatureScenario;
|
|
54
|
+
title: string;
|
|
55
|
+
message: string;
|
|
56
|
+
feature_id: string;
|
|
57
|
+
feature_name: string;
|
|
58
|
+
products: Product[];
|
|
59
|
+
}
|
|
60
|
+
type ProductScenario = "scheduled" | "active" | "new" | "renew" | "upgrade" | "downgrade" | "cancel";
|
|
61
|
+
interface CheckProductResult {
|
|
62
|
+
allowed: boolean;
|
|
63
|
+
customer_id: string;
|
|
64
|
+
product_id: string;
|
|
65
|
+
code: string;
|
|
66
|
+
status?: string;
|
|
67
|
+
preview?: CheckProductPreview;
|
|
68
|
+
}
|
|
69
|
+
interface CheckProductPreview {
|
|
70
|
+
scenario: ProductScenario;
|
|
71
|
+
product_id: string;
|
|
72
|
+
product_name: string;
|
|
73
|
+
recurring: boolean;
|
|
74
|
+
error_on_attach?: boolean;
|
|
75
|
+
next_cycle_at?: number;
|
|
76
|
+
current_product_name?: string;
|
|
77
|
+
items?: {
|
|
78
|
+
price: string;
|
|
79
|
+
description: string;
|
|
80
|
+
usage_model?: UsageModelType;
|
|
81
|
+
}[];
|
|
82
|
+
options?: {
|
|
83
|
+
feature_id: string;
|
|
84
|
+
feature_name: string;
|
|
85
|
+
billing_units: number;
|
|
86
|
+
price?: number;
|
|
87
|
+
tiers?: {
|
|
88
|
+
to: number | string;
|
|
89
|
+
amount: number;
|
|
90
|
+
}[];
|
|
91
|
+
}[];
|
|
92
|
+
due_today?: {
|
|
93
|
+
price: number;
|
|
94
|
+
currency: string;
|
|
95
|
+
};
|
|
96
|
+
due_next_cycle?: {
|
|
97
|
+
price: number;
|
|
98
|
+
currency: string;
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
declare enum AppEnv {
|
|
103
|
+
Sandbox = "sandbox",
|
|
104
|
+
Live = "live"
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
interface ProductItem {
|
|
108
|
+
feature_id?: string;
|
|
109
|
+
included_usage?: number | typeof Infinite;
|
|
110
|
+
interval?: ProductItemIntervalType;
|
|
111
|
+
usage_model?: UsageModel;
|
|
112
|
+
price?: number;
|
|
113
|
+
billing_units?: number;
|
|
114
|
+
entity_feature_id?: string;
|
|
115
|
+
reset_usage_when_enabled?: boolean;
|
|
116
|
+
display?: {
|
|
117
|
+
primary_text?: string;
|
|
118
|
+
secondary_text?: string;
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
interface FreeTrial {
|
|
122
|
+
duration: FreeTrialDuration;
|
|
123
|
+
length: number;
|
|
124
|
+
unique_fingerprint: boolean;
|
|
125
|
+
trial_available?: boolean;
|
|
126
|
+
}
|
|
127
|
+
interface Product {
|
|
128
|
+
id: string;
|
|
129
|
+
created_at: number;
|
|
130
|
+
name: string;
|
|
131
|
+
env: AppEnv;
|
|
132
|
+
is_add_on: boolean;
|
|
133
|
+
is_default: boolean;
|
|
134
|
+
group: string;
|
|
135
|
+
version: number;
|
|
136
|
+
items: ProductItem[];
|
|
137
|
+
free_trial: FreeTrial | null;
|
|
138
|
+
scenario?: ProductScenario;
|
|
139
|
+
base_variant_id: string | null;
|
|
140
|
+
properties?: {
|
|
141
|
+
is_free?: boolean;
|
|
142
|
+
is_one_off?: boolean;
|
|
143
|
+
interval_group?: string;
|
|
144
|
+
};
|
|
145
|
+
display?: {
|
|
146
|
+
name?: string;
|
|
147
|
+
description?: string;
|
|
148
|
+
button_text?: string;
|
|
149
|
+
recommend_text?: string;
|
|
150
|
+
everything_from?: string;
|
|
151
|
+
button_url?: string;
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
|
|
47
155
|
declare enum ProductStatus {
|
|
48
156
|
Active = "active",
|
|
49
157
|
Expired = "expired",
|
|
@@ -51,7 +159,7 @@ declare enum ProductStatus {
|
|
|
51
159
|
Scheduled = "scheduled",
|
|
52
160
|
PastDue = "past_due"
|
|
53
161
|
}
|
|
54
|
-
type CustomerExpandOption = "invoices" | "rewards" | "trials_used" | "entities";
|
|
162
|
+
type CustomerExpandOption = "invoices" | "rewards" | "trials_used" | "entities" | "referrals" | "payment_method";
|
|
55
163
|
|
|
56
164
|
interface CoreCustomerFeature {
|
|
57
165
|
unlimited?: boolean;
|
|
@@ -92,6 +200,7 @@ interface CustomerProduct {
|
|
|
92
200
|
entity_id?: string;
|
|
93
201
|
is_add_on: boolean;
|
|
94
202
|
is_default: boolean;
|
|
203
|
+
items: ProductItem[];
|
|
95
204
|
}
|
|
96
205
|
interface Customer {
|
|
97
206
|
id: string | null;
|
|
@@ -135,115 +244,6 @@ interface Entity {
|
|
|
135
244
|
invoices?: CustomerInvoice[];
|
|
136
245
|
}
|
|
137
246
|
|
|
138
|
-
interface ProductItem {
|
|
139
|
-
feature_id?: string;
|
|
140
|
-
included_usage?: number | typeof Infinite;
|
|
141
|
-
interval?: ProductItemIntervalType;
|
|
142
|
-
usage_model?: UsageModel;
|
|
143
|
-
price?: number;
|
|
144
|
-
billing_units?: number;
|
|
145
|
-
entity_feature_id?: string;
|
|
146
|
-
reset_usage_on_billing?: boolean;
|
|
147
|
-
reset_usage_when_enabled?: boolean;
|
|
148
|
-
display?: {
|
|
149
|
-
primary_text?: string;
|
|
150
|
-
secondary_text?: string;
|
|
151
|
-
};
|
|
152
|
-
}
|
|
153
|
-
interface FreeTrial {
|
|
154
|
-
duration: FreeTrialDuration;
|
|
155
|
-
length: number;
|
|
156
|
-
unique_fingerprint: boolean;
|
|
157
|
-
trial_available?: boolean;
|
|
158
|
-
}
|
|
159
|
-
interface Product {
|
|
160
|
-
id: string;
|
|
161
|
-
created_at: number;
|
|
162
|
-
name: string;
|
|
163
|
-
env: AppEnv;
|
|
164
|
-
is_add_on: boolean;
|
|
165
|
-
is_default: boolean;
|
|
166
|
-
group: string;
|
|
167
|
-
version: number;
|
|
168
|
-
items: ProductItem[];
|
|
169
|
-
free_trial: FreeTrial | null;
|
|
170
|
-
scenario?: ProductScenario;
|
|
171
|
-
base_variant_id: string | null;
|
|
172
|
-
properties?: {
|
|
173
|
-
is_free?: boolean;
|
|
174
|
-
is_one_off?: boolean;
|
|
175
|
-
interval_group?: string;
|
|
176
|
-
};
|
|
177
|
-
display?: {
|
|
178
|
-
name?: string;
|
|
179
|
-
description?: string;
|
|
180
|
-
button_text?: string;
|
|
181
|
-
recommend_text?: string;
|
|
182
|
-
everything_from?: string;
|
|
183
|
-
button_url?: string;
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
type CheckFeatureScenario = "usage_limit" | "feature_flag";
|
|
188
|
-
interface CheckFeatureResult extends CoreCustomerFeature {
|
|
189
|
-
allowed: boolean;
|
|
190
|
-
feature_id: string;
|
|
191
|
-
customer_id: string;
|
|
192
|
-
entity_id?: string;
|
|
193
|
-
required_balance: number;
|
|
194
|
-
code: string;
|
|
195
|
-
preview?: CheckFeaturePreview;
|
|
196
|
-
}
|
|
197
|
-
interface CheckFeaturePreview {
|
|
198
|
-
scenario: CheckFeatureScenario;
|
|
199
|
-
title: string;
|
|
200
|
-
message: string;
|
|
201
|
-
feature_id: string;
|
|
202
|
-
feature_name: string;
|
|
203
|
-
products: Product[];
|
|
204
|
-
}
|
|
205
|
-
type ProductScenario = "scheduled" | "active" | "new" | "renew" | "upgrade" | "downgrade" | "cancel";
|
|
206
|
-
interface CheckProductResult {
|
|
207
|
-
allowed: boolean;
|
|
208
|
-
customer_id: string;
|
|
209
|
-
product_id: string;
|
|
210
|
-
code: string;
|
|
211
|
-
status?: string;
|
|
212
|
-
preview?: CheckProductPreview;
|
|
213
|
-
}
|
|
214
|
-
interface CheckProductPreview {
|
|
215
|
-
scenario: ProductScenario;
|
|
216
|
-
product_id: string;
|
|
217
|
-
product_name: string;
|
|
218
|
-
recurring: boolean;
|
|
219
|
-
error_on_attach?: boolean;
|
|
220
|
-
next_cycle_at?: number;
|
|
221
|
-
current_product_name?: string;
|
|
222
|
-
items?: {
|
|
223
|
-
price: string;
|
|
224
|
-
description: string;
|
|
225
|
-
usage_model?: UsageModelType;
|
|
226
|
-
}[];
|
|
227
|
-
options?: {
|
|
228
|
-
feature_id: string;
|
|
229
|
-
feature_name: string;
|
|
230
|
-
billing_units: number;
|
|
231
|
-
price?: number;
|
|
232
|
-
tiers?: {
|
|
233
|
-
to: number | string;
|
|
234
|
-
amount: number;
|
|
235
|
-
}[];
|
|
236
|
-
}[];
|
|
237
|
-
due_today?: {
|
|
238
|
-
price: number;
|
|
239
|
-
currency: string;
|
|
240
|
-
};
|
|
241
|
-
due_next_cycle?: {
|
|
242
|
-
price: number;
|
|
243
|
-
currency: string;
|
|
244
|
-
};
|
|
245
|
-
}
|
|
246
|
-
|
|
247
247
|
interface CancelResult {
|
|
248
248
|
success: boolean;
|
|
249
249
|
customer_id: string;
|
|
@@ -265,6 +265,10 @@ interface TrackResult {
|
|
|
265
265
|
event_name?: string;
|
|
266
266
|
}
|
|
267
267
|
type CheckResult = CheckFeatureResult & CheckProductResult;
|
|
268
|
+
interface SetupPaymentResult {
|
|
269
|
+
customer_id: string;
|
|
270
|
+
url: string;
|
|
271
|
+
}
|
|
268
272
|
|
|
269
273
|
type Success<T> = {
|
|
270
274
|
data: T;
|
|
@@ -404,6 +408,11 @@ interface OpenBillingPortalParams {
|
|
|
404
408
|
returnUrl?: string;
|
|
405
409
|
openInNewTab?: boolean;
|
|
406
410
|
}
|
|
411
|
+
interface SetupPaymentParams {
|
|
412
|
+
successUrl?: string;
|
|
413
|
+
checkoutSessionParams?: Record<string, any>;
|
|
414
|
+
openInNewTab?: boolean;
|
|
415
|
+
}
|
|
407
416
|
|
|
408
417
|
interface AllowedParams {
|
|
409
418
|
featureId?: string;
|
|
@@ -419,6 +428,7 @@ interface UseCustomerResult {
|
|
|
419
428
|
check: (params: CheckParams) => AutumnPromise<CheckResult>;
|
|
420
429
|
track: (params: TrackParams) => AutumnPromise<TrackResult>;
|
|
421
430
|
cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
|
|
431
|
+
setupPayment: (params: SetupPaymentParams) => AutumnPromise<SetupPaymentResult>;
|
|
422
432
|
openBillingPortal: (params?: OpenBillingPortalParams) => AutumnPromise<BillingPortalResult>;
|
|
423
433
|
refetch: () => Promise<Customer | null>;
|
|
424
434
|
createEntity: (params: CreateEntityParams | CreateEntityParams[]) => AutumnPromise<Entity | Entity[]>;
|
|
@@ -463,6 +473,7 @@ declare const useAutumn: () => {
|
|
|
463
473
|
track: (params: TrackParams) => AutumnPromise<TrackResult>;
|
|
464
474
|
cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
|
|
465
475
|
openBillingPortal: (params?: OpenBillingPortalParams) => AutumnPromise<BillingPortalResult>;
|
|
476
|
+
setupPayment: (params?: SetupPaymentParams) => AutumnPromise<SetupPaymentResult>;
|
|
466
477
|
};
|
|
467
478
|
|
|
468
479
|
interface AttachDialogProps {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
require("../../styles/global.css");
|
|
3
2
|
"use strict";
|
|
4
3
|
var __create = Object.create;
|
|
5
4
|
var __defProp = Object.defineProperty;
|
|
@@ -43,6 +42,31 @@ __export(index_exports, {
|
|
|
43
42
|
});
|
|
44
43
|
module.exports = __toCommonJS(index_exports);
|
|
45
44
|
|
|
45
|
+
// #style-inject:#style-inject
|
|
46
|
+
function styleInject(css, { insertAt } = {}) {
|
|
47
|
+
if (!css || typeof document === "undefined") return;
|
|
48
|
+
const head = document.head || document.getElementsByTagName("head")[0];
|
|
49
|
+
const style = document.createElement("style");
|
|
50
|
+
style.type = "text/css";
|
|
51
|
+
if (insertAt === "top") {
|
|
52
|
+
if (head.firstChild) {
|
|
53
|
+
head.insertBefore(style, head.firstChild);
|
|
54
|
+
} else {
|
|
55
|
+
head.appendChild(style);
|
|
56
|
+
}
|
|
57
|
+
} else {
|
|
58
|
+
head.appendChild(style);
|
|
59
|
+
}
|
|
60
|
+
if (style.styleSheet) {
|
|
61
|
+
style.styleSheet.cssText = css;
|
|
62
|
+
} else {
|
|
63
|
+
style.appendChild(document.createTextNode(css));
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// src/styles/global.css
|
|
68
|
+
styleInject('*:where(.au-root, .au-root *),\n:where(.au-root, .au-root *)::before,\n:where(.au-root, .au-root *)::after {\n box-sizing: border-box;\n border-width: 0;\n border-style: solid;\n border-color: #e5e7eb;\n}\n:where(.au-root, .au-root *)::before,\n:where(.au-root, .au-root *)::after {\n --tw-content: "";\n}\n.au-root {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n -moz-tab-size: 4;\n -o-tab-size: 4;\n tab-size: 4;\n font-family:\n ui-sans-serif,\n system-ui,\n sans-serif,\n "Apple Color Emoji",\n "Segoe UI Emoji",\n "Segoe UI Symbol",\n "Noto Color Emoji";\n font-feature-settings: normal;\n font-variation-settings: normal;\n -webkit-tap-highlight-color: transparent;\n}\n.au-root {\n margin: 0;\n line-height: inherit;\n}\nhr:where(.au-root, .au-root *) {\n height: 0;\n color: inherit;\n border-top-width: 1px;\n}\nabbr:where([title]):where(.au-root, .au-root *) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nh1:where(.au-root, .au-root *),\nh2:where(.au-root, .au-root *),\nh3:where(.au-root, .au-root *),\nh4:where(.au-root, .au-root *),\nh5:where(.au-root, .au-root *),\nh6:where(.au-root, .au-root *) {\n font-size: inherit;\n font-weight: inherit;\n}\na:where(.au-root, .au-root *) {\n color: inherit;\n text-decoration: inherit;\n}\nb:where(.au-root, .au-root *),\nstrong:where(.au-root, .au-root *) {\n font-weight: bolder;\n}\ncode:where(.au-root, .au-root *),\nkbd:where(.au-root, .au-root *),\nsamp:where(.au-root, .au-root *),\npre:where(.au-root, .au-root *) {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n "Liberation Mono",\n "Courier New",\n monospace;\n font-feature-settings: normal;\n font-variation-settings: normal;\n font-size: 1em;\n}\nsmall:where(.au-root, .au-root *) {\n font-size: 80%;\n}\nsub:where(.au-root, .au-root *),\nsup:where(.au-root, .au-root *) {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsub:where(.au-root, .au-root *) {\n bottom: -0.25em;\n}\nsup:where(.au-root, .au-root *) {\n top: -0.5em;\n}\ntable:where(.au-root, .au-root *) {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n}\nbutton:where(.au-root, .au-root *),\ninput:where(.au-root, .au-root *),\noptgroup:where(.au-root, .au-root *),\nselect:where(.au-root, .au-root *),\ntextarea:where(.au-root, .au-root *) {\n font-family: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n}\nbutton:where(.au-root, .au-root *),\nselect:where(.au-root, .au-root *) {\n text-transform: none;\n}\nbutton:where(.au-root, .au-root *),\n[type=button]:where(.au-root, .au-root *),\n[type=reset]:where(.au-root, .au-root *),\n[type=submit]:where(.au-root, .au-root *) {\n -webkit-appearance: button;\n background-color: transparent;\n background-image: none;\n}\n:-moz-focusring:where(.au-root, .au-root *) {\n outline: auto;\n}\n:-moz-ui-invalid:where(.au-root, .au-root *) {\n box-shadow: none;\n}\nprogress:where(.au-root, .au-root *) {\n vertical-align: baseline;\n}\n:where(.au-root, .au-root *) ::-webkit-inner-spin-button,\n:where(.au-root, .au-root *) ::-webkit-outer-spin-button {\n height: auto;\n}\n[type=search]:where(.au-root, .au-root *) {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n}\n:where(.au-root, .au-root *) ::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n:where(.au-root, .au-root *) ::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n}\nsummary:where(.au-root, .au-root *) {\n display: list-item;\n}\nblockquote:where(.au-root, .au-root *),\ndl:where(.au-root, .au-root *),\ndd:where(.au-root, .au-root *),\nh1:where(.au-root, .au-root *),\nh2:where(.au-root, .au-root *),\nh3:where(.au-root, .au-root *),\nh4:where(.au-root, .au-root *),\nh5:where(.au-root, .au-root *),\nh6:where(.au-root, .au-root *),\nhr:where(.au-root, .au-root *),\nfigure:where(.au-root, .au-root *),\np:where(.au-root, .au-root *),\npre:where(.au-root, .au-root *) {\n margin: 0;\n}\nfieldset:where(.au-root, .au-root *) {\n margin: 0;\n padding: 0;\n}\nlegend:where(.au-root, .au-root *) {\n padding: 0;\n}\nol:where(.au-root, .au-root *),\nul:where(.au-root, .au-root *),\nmenu:where(.au-root, .au-root *) {\n list-style: none;\n margin: 0;\n padding: 0;\n}\ndialog:where(.au-root, .au-root *) {\n padding: 0;\n}\ntextarea:where(.au-root, .au-root *) {\n resize: vertical;\n}\n:where(.au-root, .au-root *) input::-moz-placeholder,\n:where(.au-root, .au-root *) textarea::-moz-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n:where(.au-root, .au-root *) input::placeholder,\n:where(.au-root, .au-root *) textarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\nbutton:where(.au-root, .au-root *),\n[role=button]:where(.au-root, .au-root *) {\n cursor: pointer;\n}\n:disabled:where(.au-root, .au-root *) {\n cursor: default;\n}\nimg:where(.au-root, .au-root *),\nsvg:where(.au-root, .au-root *),\nvideo:where(.au-root, .au-root *),\ncanvas:where(.au-root, .au-root *),\naudio:where(.au-root, .au-root *),\niframe:where(.au-root, .au-root *),\nembed:where(.au-root, .au-root *),\nobject:where(.au-root, .au-root *) {\n display: block;\n vertical-align: middle;\n}\nimg:where(.au-root, .au-root *),\nvideo:where(.au-root, .au-root *) {\n max-width: 100%;\n height: auto;\n}\n[hidden]:where(.au-root, .au-root *) {\n display: none;\n}\n.au-root *,\n.au-root ::before,\n.au-root ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: ;\n}\n.au-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n.au-pointer-events-none {\n pointer-events: none;\n}\n.au-fixed {\n position: fixed;\n}\n.au-absolute {\n position: absolute;\n}\n.au-relative {\n position: relative;\n}\n.au-inset-0 {\n inset: 0px;\n}\n.au-left-\\[50\\%\\] {\n left: 50%;\n}\n.au-right-4 {\n right: 1rem;\n}\n.au-right-\\[-1px\\] {\n right: -1px;\n}\n.au-top-4 {\n top: 1rem;\n}\n.au-top-\\[-1px\\] {\n top: -1px;\n}\n.au-top-\\[50\\%\\] {\n top: 50%;\n}\n.au-z-50 {\n z-index: 50;\n}\n.au-my-2 {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem;\n}\n.au-mb-1 {\n margin-bottom: 0.25rem;\n}\n.au-mb-2 {\n margin-bottom: 0.5rem;\n}\n.au-mb-4 {\n margin-bottom: 1rem;\n}\n.au-mb-6 {\n margin-bottom: 1.5rem;\n}\n.au-mb-8 {\n margin-bottom: 2rem;\n}\n.au-mr-2 {\n margin-right: 0.5rem;\n}\n.au-mt-0 {\n margin-top: 0px;\n}\n.au-mt-0\\.5 {\n margin-top: 0.125rem;\n}\n.au-mt-1 {\n margin-top: 0.25rem;\n}\n.au-mt-2 {\n margin-top: 0.5rem;\n}\n.au-mt-4 {\n margin-top: 1rem;\n}\n.au-line-clamp-2 {\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n}\n.au-block {\n display: block;\n}\n.au-flex {\n display: flex;\n}\n.au-inline-flex {\n display: inline-flex;\n}\n.au-grid {\n display: grid;\n}\n.au-size-4 {\n width: 1rem;\n height: 1rem;\n}\n.\\!au-h-3 {\n height: 0.75rem !important;\n}\n.au-h-10 {\n height: 2.5rem;\n}\n.au-h-16 {\n height: 4rem;\n}\n.au-h-4 {\n height: 1rem;\n}\n.au-h-5 {\n height: 1.25rem;\n}\n.au-h-6 {\n height: 1.5rem;\n}\n.au-h-7 {\n height: 1.75rem;\n}\n.au-h-8 {\n height: 2rem;\n}\n.au-h-9 {\n height: 2.25rem;\n}\n.au-h-full {\n height: 100%;\n}\n.au-w-4 {\n width: 1rem;\n}\n.au-w-6 {\n width: 1.5rem;\n}\n.au-w-8 {\n width: 2rem;\n}\n.au-w-9 {\n width: 2.25rem;\n}\n.au-w-full {\n width: 100%;\n}\n.au-min-w-16 {\n min-width: 4rem;\n}\n.au-min-w-20 {\n min-width: 5rem;\n}\n.au-max-w-lg {\n max-width: 32rem;\n}\n.au-max-w-xl {\n max-width: 36rem;\n}\n.au-flex-1 {\n flex: 1 1 0%;\n}\n.au-flex-shrink-0 {\n flex-shrink: 0;\n}\n.au-shrink-0 {\n flex-shrink: 0;\n}\n.au-flex-grow {\n flex-grow: 1;\n}\n.au--translate-y-12 {\n --tw-translate-y: -3rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au--translate-y-6 {\n --tw-translate-y: -1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-translate-x-\\[-50\\%\\] {\n --tw-translate-x: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-translate-y-6 {\n --tw-translate-y: 1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-translate-y-\\[-50\\%\\] {\n --tw-translate-y: -50%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-translate-y-\\[130\\%\\] {\n --tw-translate-y: 130%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n@keyframes au-spin {\n to {\n transform: rotate(360deg);\n }\n}\n.au-animate-spin {\n animation: au-spin 1s linear infinite;\n}\n.au-cursor-pointer {\n cursor: pointer;\n}\n.au-grid-cols-1 {\n grid-template-columns: repeat(1, minmax(0, 1fr));\n}\n.au-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.au-flex-row {\n flex-direction: row;\n}\n.au-flex-col {\n flex-direction: column;\n}\n.au-flex-col-reverse {\n flex-direction: column-reverse;\n}\n.au-items-start {\n align-items: flex-start;\n}\n.au-items-center {\n align-items: center;\n}\n.au-justify-end {\n justify-content: flex-end;\n}\n.au-justify-center {\n justify-content: center;\n}\n.au-justify-between {\n justify-content: space-between;\n}\n.au-gap-0 {\n gap: 0px;\n}\n.au-gap-1 {\n gap: 0.25rem;\n}\n.au-gap-2 {\n gap: 0.5rem;\n}\n.au-gap-4 {\n gap: 1rem;\n}\n.au-gap-x-4 {\n -moz-column-gap: 1rem;\n column-gap: 1rem;\n}\n.au-space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n}\n.au-space-y-1 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));\n}\n.au-space-y-1\\.5 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));\n}\n.au-space-y-3 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-y-reverse: 0;\n margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));\n margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));\n}\n.au-overflow-hidden {\n overflow: hidden;\n}\n.au-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.au-whitespace-nowrap {\n white-space: nowrap;\n}\n.au-rounded-full {\n border-radius: 9999px;\n}\n.au-rounded-lg {\n border-radius: var(--au-radius);\n}\n.au-rounded-md {\n border-radius: calc(var(--au-radius) - 2px);\n}\n.au-rounded-sm {\n border-radius: calc(var(--au-radius) - 4px);\n}\n.au-rounded-bl-lg {\n border-bottom-left-radius: var(--au-radius);\n}\n.au-border {\n border-width: 1px;\n}\n.au-border-2 {\n border-width: 2px;\n}\n.au-border-y {\n border-top-width: 1px;\n border-bottom-width: 1px;\n}\n.au-border-t {\n border-top-width: 1px;\n}\n.au-border-input {\n border-color: hsl(var(--au-input));\n}\n.au-border-transparent {\n border-color: transparent;\n}\n.au-bg-background {\n background-color: hsl(var(--au-background));\n}\n.au-bg-black {\n --tw-bg-opacity: 1;\n background-color: rgb(0 0 0 / var(--tw-bg-opacity));\n}\n.au-bg-black\\/80 {\n background-color: rgb(0 0 0 / 0.8);\n}\n.au-bg-destructive {\n background-color: hsl(var(--au-destructive));\n}\n.au-bg-primary {\n background-color: hsl(var(--au-primary));\n}\n.au-bg-secondary {\n background-color: hsl(var(--au-secondary));\n}\n.au-bg-secondary\\/40 {\n background-color: hsl(var(--au-secondary) / 0.4);\n}\n.au-p-0 {\n padding: 0px;\n}\n.au-p-6 {\n padding: 1.5rem;\n}\n.\\!au-py-10 {\n padding-top: 2.5rem !important;\n padding-bottom: 2.5rem !important;\n}\n.au-px-3 {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n.au-px-4 {\n padding-left: 1rem;\n padding-right: 1rem;\n}\n.au-px-6 {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n.au-px-8 {\n padding-left: 2rem;\n padding-right: 2rem;\n}\n.au-py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n}\n.au-py-2 {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.au-py-3 {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n}\n.au-py-6 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n.au-pb-0 {\n padding-bottom: 0px;\n}\n.au-pb-0\\.5 {\n padding-bottom: 0.125rem;\n}\n.au-pb-4 {\n padding-bottom: 1rem;\n}\n.au-pl-6 {\n padding-left: 1.5rem;\n}\n.au-pr-3 {\n padding-right: 0.75rem;\n}\n.au-pt-4 {\n padding-top: 1rem;\n}\n.au-text-left {\n text-align: left;\n}\n.au-text-center {\n text-align: center;\n}\n.au-text-2xl {\n font-size: 1.5rem;\n line-height: 2rem;\n}\n.au-text-lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n}\n.au-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n.au-text-xl {\n font-size: 1.25rem;\n line-height: 1.75rem;\n}\n.au-text-xs {\n font-size: 0.75rem;\n line-height: 1rem;\n}\n.au-font-bold {\n font-weight: 700;\n}\n.au-font-medium {\n font-weight: 500;\n}\n.au-font-normal {\n font-weight: 400;\n}\n.au-font-semibold {\n font-weight: 600;\n}\n.au-leading-none {\n line-height: 1;\n}\n.au-tracking-tight {\n letter-spacing: -0.025em;\n}\n.au-text-destructive-foreground {\n color: hsl(var(--au-destructive-foreground));\n}\n.au-text-foreground {\n color: hsl(var(--au-foreground));\n}\n.au-text-muted-foreground {\n color: hsl(var(--au-muted-foreground));\n}\n.au-text-primary {\n color: hsl(var(--au-primary));\n}\n.au-text-primary-foreground {\n color: hsl(var(--au-primary-foreground));\n}\n.au-text-secondary-foreground {\n color: hsl(var(--au-secondary-foreground));\n}\n.au-text-zinc-400 {\n --tw-text-opacity: 1;\n color: rgb(161 161 170 / var(--tw-text-opacity));\n}\n.au-underline-offset-4 {\n text-underline-offset: 4px;\n}\n.au-opacity-70 {\n opacity: 0.7;\n}\n.au-shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.au-shadow-inner {\n --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.au-shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.au-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);\n --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n}\n.au-shadow-stone-400 {\n --tw-shadow-color: #a8a29e;\n --tw-shadow: var(--tw-shadow-colored);\n}\n.au-shadow-zinc-800 {\n --tw-shadow-color: #27272a;\n --tw-shadow: var(--tw-shadow-colored);\n}\n.au-ring-0 {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.au-ring-offset-background {\n --tw-ring-offset-color: hsl(var(--au-background));\n}\n.au-transition {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n -webkit-backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter;\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke,\n opacity,\n box-shadow,\n transform,\n filter,\n backdrop-filter,\n -webkit-backdrop-filter;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.au-transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.au-transition-colors {\n transition-property:\n color,\n background-color,\n border-color,\n text-decoration-color,\n fill,\n stroke;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.au-transition-opacity {\n transition-property: opacity;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.au-transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n transition-duration: 150ms;\n}\n.au-duration-200 {\n transition-duration: 200ms;\n}\n.au-duration-300 {\n transition-duration: 300ms;\n}\n@keyframes enter {\n from {\n opacity: var(--tw-enter-opacity, 1);\n transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));\n }\n}\n@keyframes exit {\n to {\n opacity: var(--tw-exit-opacity, 1);\n transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));\n }\n}\n.au-slide-in-from-left-1 {\n --tw-enter-translate-x: -0.25rem;\n}\n.au-slide-out-to-left-1 {\n --tw-exit-translate-x: -0.25rem;\n}\n.au-duration-200 {\n animation-duration: 200ms;\n}\n.au-duration-300 {\n animation-duration: 300ms;\n}\n:root {\n --au-background: 0 0% 100%;\n --au-foreground: 240 10% 3.9%;\n --au-card: 0 0% 100%;\n --au-card-foreground: 240 10% 3.9%;\n --au-popover: 0 0% 100%;\n --au-popover-foreground: 240 10% 3.9%;\n --au-primary: 240 5.9% 10%;\n --au-primary-foreground: 0 0% 98%;\n --au-secondary: 240 4.8% 95.9%;\n --au-secondary-foreground: 240 5.9% 10%;\n --au-muted: 240 4.8% 95.9%;\n --au-muted-foreground: 240 3.8% 46.1%;\n --au-accent: 240 4.8% 95.9%;\n --au-accent-foreground: 240 5.9% 10%;\n --au-destructive: 0 84.2% 60.2%;\n --au-destructive-foreground: 0 0% 98%;\n --au-border: 240 5.9% 90%;\n --au-input: 240 5.9% 90%;\n --au-ring: 240 10% 3.9%;\n --au-chart-1: 12 76% 61%;\n --au-chart-2: 173 58% 39%;\n --au-chart-3: 197 37% 24%;\n --au-chart-4: 43 74% 66%;\n --au-chart-5: 27 87% 67%;\n --au-radius: 0.5rem;\n --au-sidebar-background: 0 0% 98%;\n --au-sidebar-foreground: 240 5.3% 26.1%;\n --au-sidebar-primary: 240 5.9% 10%;\n --au-sidebar-primary-foreground: 0 0% 98%;\n --au-sidebar-accent: 240 4.8% 95.9%;\n --au-sidebar-accent-foreground: 240 5.9% 10%;\n --au-sidebar-border: 220 13% 91%;\n --au-sidebar-ring: 217.2 91.2% 59.8%;\n}\n.dark {\n --au-background: 240 10% 3.9%;\n --au-foreground: 0 0% 98%;\n --au-card: 240 10% 3.9%;\n --au-card-foreground: 0 0% 98%;\n --au-popover: 240 10% 3.9%;\n --au-popover-foreground: 0 0% 98%;\n --au-primary: 0 0% 98%;\n --au-primary-foreground: 240 5.9% 10%;\n --au-secondary: 240 3.7% 15.9%;\n --au-secondary-foreground: 0 0% 98%;\n --au-muted: 240 3.7% 15.9%;\n --au-muted-foreground: 240 5% 64.9%;\n --au-accent: 240 3.7% 15.9%;\n --au-accent-foreground: 0 0% 98%;\n --au-destructive: 0 62.8% 30.6%;\n --au-destructive-foreground: 0 0% 98%;\n --au-border: 240 3.7% 15.9%;\n --au-input: 240 3.7% 15.9%;\n --au-ring: 240 4.9% 83.9%;\n --au-chart-1: 220 70% 50%;\n --au-chart-2: 160 60% 45%;\n --au-chart-3: 30 80% 55%;\n --au-chart-4: 280 65% 60%;\n --au-chart-5: 340 75% 55%;\n --au-sidebar-background: 240 5.9% 10%;\n --au-sidebar-foreground: 240 4.8% 95.9%;\n --au-sidebar-primary: 224.3 76.3% 48%;\n --au-sidebar-primary-foreground: 0 0% 100%;\n --au-sidebar-accent: 240 3.7% 15.9%;\n --au-sidebar-accent-foreground: 240 4.8% 95.9%;\n --au-sidebar-border: 240 3.7% 15.9%;\n --au-sidebar-ring: 217.2 91.2% 59.8%;\n}\n.hover\\:au-bg-accent:hover {\n background-color: hsl(var(--au-accent));\n}\n.hover\\:au-bg-destructive\\/90:hover {\n background-color: hsl(var(--au-destructive) / 0.9);\n}\n.hover\\:au-bg-primary\\/90:hover {\n background-color: hsl(var(--au-primary) / 0.9);\n}\n.hover\\:au-bg-secondary\\/80:hover {\n background-color: hsl(var(--au-secondary) / 0.8);\n}\n.hover\\:au-text-accent-foreground:hover {\n color: hsl(var(--au-accent-foreground));\n}\n.hover\\:au-underline:hover {\n text-decoration-line: underline;\n}\n.hover\\:au-opacity-100:hover {\n opacity: 1;\n}\n.hover\\:au-brightness-90:hover {\n --tw-brightness: brightness(.9);\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);\n}\n.focus\\:au-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus\\:au-ring-2:focus {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus\\:au-ring-ring:focus {\n --tw-ring-color: hsl(var(--au-ring));\n}\n.focus\\:au-ring-offset-2:focus {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:au-outline-none:focus-visible {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n.focus-visible\\:au-ring-1:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:au-ring-2:focus-visible {\n --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);\n --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);\n box-shadow:\n var(--tw-ring-offset-shadow),\n var(--tw-ring-shadow),\n var(--tw-shadow, 0 0 #0000);\n}\n.focus-visible\\:au-ring-ring:focus-visible {\n --tw-ring-color: hsl(var(--au-ring));\n}\n.focus-visible\\:au-ring-offset-2:focus-visible {\n --tw-ring-offset-width: 2px;\n}\n.focus-visible\\:au-ring-offset-background:focus-visible {\n --tw-ring-offset-color: hsl(var(--au-background));\n}\n.disabled\\:au-pointer-events-none:disabled {\n pointer-events: none;\n}\n.disabled\\:au-opacity-50:disabled {\n opacity: 0.5;\n}\n.au-group:hover .group-hover\\:au-mt-0 {\n margin-top: 0px;\n}\n.au-group:hover .group-hover\\:au-translate-y-0 {\n --tw-translate-y: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.au-group:hover .group-hover\\:au-translate-y-\\[-130\\%\\] {\n --tw-translate-y: -130%;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:au-translate-x-4[data-state=checked] {\n --tw-translate-x: 1rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=unchecked\\]\\:au-translate-x-0[data-state=unchecked] {\n --tw-translate-x: 0px;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n}\n.data-\\[state\\=checked\\]\\:au-bg-primary[data-state=checked] {\n background-color: hsl(var(--au-primary));\n}\n.data-\\[state\\=open\\]\\:au-bg-accent[data-state=open] {\n background-color: hsl(var(--au-accent));\n}\n.data-\\[state\\=unchecked\\]\\:au-bg-input[data-state=unchecked] {\n background-color: hsl(var(--au-input));\n}\n.data-\\[state\\=open\\]\\:au-text-muted-foreground[data-state=open] {\n color: hsl(var(--au-muted-foreground));\n}\n.data-\\[state\\=open\\]\\:au-animate-in[data-state=open] {\n animation-name: enter;\n animation-duration: 150ms;\n --tw-enter-opacity: initial;\n --tw-enter-scale: initial;\n --tw-enter-rotate: initial;\n --tw-enter-translate-x: initial;\n --tw-enter-translate-y: initial;\n}\n.data-\\[state\\=closed\\]\\:au-animate-out[data-state=closed] {\n animation-name: exit;\n animation-duration: 150ms;\n --tw-exit-opacity: initial;\n --tw-exit-scale: initial;\n --tw-exit-rotate: initial;\n --tw-exit-translate-x: initial;\n --tw-exit-translate-y: initial;\n}\n.data-\\[state\\=closed\\]\\:au-fade-out-0[data-state=closed] {\n --tw-exit-opacity: 0;\n}\n.data-\\[state\\=open\\]\\:au-fade-in-0[data-state=open] {\n --tw-enter-opacity: 0;\n}\n.data-\\[state\\=closed\\]\\:au-zoom-out-95[data-state=closed] {\n --tw-exit-scale: .95;\n}\n.data-\\[state\\=open\\]\\:au-zoom-in-95[data-state=open] {\n --tw-enter-scale: .95;\n}\n.data-\\[state\\=closed\\]\\:au-slide-out-to-left-1\\/2[data-state=closed] {\n --tw-exit-translate-x: -50%;\n}\n.data-\\[state\\=closed\\]\\:au-slide-out-to-top-\\[48\\%\\][data-state=closed] {\n --tw-exit-translate-y: -48%;\n}\n.data-\\[state\\=open\\]\\:au-slide-in-from-left-1\\/2[data-state=open] {\n --tw-enter-translate-x: -50%;\n}\n.data-\\[state\\=open\\]\\:au-slide-in-from-top-\\[48\\%\\][data-state=open] {\n --tw-enter-translate-y: -48%;\n}\n:is(.au-dark .dark\\:au-shadow-zinc-800\\/80) {\n --tw-shadow-color: rgb(39 39 42 / 0.8);\n --tw-shadow: var(--tw-shadow-colored);\n}\n@media (min-width: 640px) {\n .sm\\:au-h-7 {\n height: 1.75rem;\n }\n .sm\\:au-grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n .sm\\:au-flex-row {\n flex-direction: row;\n }\n .sm\\:au-items-center {\n align-items: center;\n }\n .sm\\:au-justify-end {\n justify-content: flex-end;\n }\n .sm\\:au-gap-2 {\n gap: 0.5rem;\n }\n .sm\\:au-space-x-2 > :not([hidden]) ~ :not([hidden]) {\n --tw-space-x-reverse: 0;\n margin-right: calc(0.5rem * var(--tw-space-x-reverse));\n margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));\n }\n .sm\\:au-rounded-lg {\n border-radius: var(--au-radius);\n }\n .sm\\:au-pb-0 {\n padding-bottom: 0px;\n }\n .sm\\:au-text-left {\n text-align: left;\n }\n}\n@media (min-width: 1024px) {\n .lg\\:au-right-4 {\n right: 1rem;\n }\n .lg\\:au-top-4 {\n top: 1rem;\n }\n .lg\\:au-h-\\[calc\\(100\\%\\+48px\\)\\] {\n height: calc(100% + 48px);\n }\n .lg\\:au--translate-y-12 {\n --tw-translate-y: -3rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n .lg\\:au--translate-y-6 {\n --tw-translate-y: -1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n .lg\\:au-translate-y-6 {\n --tw-translate-y: 1.5rem;\n transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));\n }\n .lg\\:au-grid-cols-\\[repeat\\(auto-fit\\,minmax\\(200px\\,1fr\\)\\)\\] {\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n }\n .lg\\:au-rounded-full {\n border-radius: 9999px;\n }\n .lg\\:au-py-0 {\n padding-top: 0px;\n padding-bottom: 0px;\n }\n .lg\\:au-py-0\\.5 {\n padding-top: 0.125rem;\n padding-bottom: 0.125rem;\n }\n .lg\\:au-shadow-lg {\n --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);\n box-shadow:\n var(--tw-ring-offset-shadow, 0 0 #0000),\n var(--tw-ring-shadow, 0 0 #0000),\n var(--tw-shadow);\n }\n}\n.\\[\\&_svg\\]\\:au-pointer-events-none svg {\n pointer-events: none;\n}\n.\\[\\&_svg\\]\\:au-size-4 svg {\n width: 1rem;\n height: 1rem;\n}\n.\\[\\&_svg\\]\\:au-shrink-0 svg {\n flex-shrink: 0;\n}\n');
|
|
69
|
+
|
|
46
70
|
// src/libraries/react/BaseAutumnProvider.tsx
|
|
47
71
|
var import_react7 = require("react");
|
|
48
72
|
|
|
@@ -97,6 +121,12 @@ var handleAttach = async ({
|
|
|
97
121
|
}) => {
|
|
98
122
|
return instance.post("/attach", params);
|
|
99
123
|
};
|
|
124
|
+
var handleSetupPayment = async ({
|
|
125
|
+
instance,
|
|
126
|
+
params
|
|
127
|
+
}) => {
|
|
128
|
+
return instance.post("/setup_payment", params);
|
|
129
|
+
};
|
|
100
130
|
var handleCancel = async ({
|
|
101
131
|
instance,
|
|
102
132
|
params
|
|
@@ -463,6 +493,13 @@ var Autumn = class {
|
|
|
463
493
|
params
|
|
464
494
|
});
|
|
465
495
|
}
|
|
496
|
+
static setupPayment = (params) => staticWrapper(handleSetupPayment, void 0, { params });
|
|
497
|
+
async setupPayment(params) {
|
|
498
|
+
return handleSetupPayment({
|
|
499
|
+
instance: this,
|
|
500
|
+
params
|
|
501
|
+
});
|
|
502
|
+
}
|
|
466
503
|
static cancel = (params) => staticWrapper(handleCancel, void 0, { params });
|
|
467
504
|
async cancel(params) {
|
|
468
505
|
return handleCancel({
|
|
@@ -603,6 +640,11 @@ async function attachMethod(params) {
|
|
|
603
640
|
const res = await this.post("/api/autumn/attach", snakeParams);
|
|
604
641
|
return res;
|
|
605
642
|
}
|
|
643
|
+
async function setupPaymentMethod(params) {
|
|
644
|
+
let snakeParams = toSnakeCase(params, ["checkoutSessionParams"]);
|
|
645
|
+
const res = await this.post("/api/autumn/setup_payment", snakeParams);
|
|
646
|
+
return res;
|
|
647
|
+
}
|
|
606
648
|
async function cancelMethod(params) {
|
|
607
649
|
let snakeParams = toSnakeCase(params);
|
|
608
650
|
const res = await this.post("/api/autumn/cancel", snakeParams);
|
|
@@ -741,6 +783,7 @@ var AutumnClient = class {
|
|
|
741
783
|
check = checkMethod.bind(this);
|
|
742
784
|
track = trackMethod.bind(this);
|
|
743
785
|
openBillingPortal = openBillingPortalMethod.bind(this);
|
|
786
|
+
setupPayment = setupPaymentMethod.bind(this);
|
|
744
787
|
entities = {
|
|
745
788
|
create: createEntityMethod.bind(this),
|
|
746
789
|
get: getEntityMethod.bind(this),
|
|
@@ -948,6 +991,7 @@ var usePricingTableBase = ({
|
|
|
948
991
|
const context = useAutumnContext({ AutumnContext: AutumnContext2, name: "usePricingTable" });
|
|
949
992
|
const fetcher = async () => {
|
|
950
993
|
try {
|
|
994
|
+
console.log("listing products!");
|
|
951
995
|
const { data: data2, error: error2 } = await context.client.products.list();
|
|
952
996
|
if (error2) throw error2;
|
|
953
997
|
return data2?.list || [];
|
|
@@ -6239,7 +6283,7 @@ var useAutumnBase = ({
|
|
|
6239
6283
|
if (!preview) {
|
|
6240
6284
|
return await attachWithoutDialog(rest);
|
|
6241
6285
|
} else {
|
|
6242
|
-
setAttachProps({ preview });
|
|
6286
|
+
setAttachProps({ preview, attachParams: rest });
|
|
6243
6287
|
setAttachOpen(true);
|
|
6244
6288
|
}
|
|
6245
6289
|
return checkRes;
|
|
@@ -6311,12 +6355,33 @@ var useAutumnBase = ({
|
|
|
6311
6355
|
return res;
|
|
6312
6356
|
}
|
|
6313
6357
|
};
|
|
6358
|
+
const setupPayment = async (params) => {
|
|
6359
|
+
let defaultParams = {
|
|
6360
|
+
openInNewTab: false
|
|
6361
|
+
};
|
|
6362
|
+
let finalParams = {
|
|
6363
|
+
...defaultParams,
|
|
6364
|
+
...params || {}
|
|
6365
|
+
};
|
|
6366
|
+
const res = await client.setupPayment(finalParams);
|
|
6367
|
+
if (res.data?.url && typeof window !== "undefined") {
|
|
6368
|
+
if (finalParams.openInNewTab) {
|
|
6369
|
+
window.open(res.data.url, "_blank");
|
|
6370
|
+
} else {
|
|
6371
|
+
window.open(res.data.url, "_self");
|
|
6372
|
+
}
|
|
6373
|
+
return res;
|
|
6374
|
+
} else {
|
|
6375
|
+
return res;
|
|
6376
|
+
}
|
|
6377
|
+
};
|
|
6314
6378
|
return {
|
|
6315
6379
|
attach,
|
|
6316
6380
|
check,
|
|
6317
6381
|
track,
|
|
6318
6382
|
cancel,
|
|
6319
|
-
openBillingPortal
|
|
6383
|
+
openBillingPortal,
|
|
6384
|
+
setupPayment
|
|
6320
6385
|
};
|
|
6321
6386
|
};
|
|
6322
6387
|
|
|
@@ -6370,7 +6435,8 @@ var emptyDefaultFunctions = {
|
|
|
6370
6435
|
check: "",
|
|
6371
6436
|
track: "",
|
|
6372
6437
|
cancel: "",
|
|
6373
|
-
openBillingPortal: ""
|
|
6438
|
+
openBillingPortal: "",
|
|
6439
|
+
setupPayment: ""
|
|
6374
6440
|
};
|
|
6375
6441
|
var useCustomerBase = ({
|
|
6376
6442
|
params,
|
|
@@ -6986,6 +7052,22 @@ var getPricingTableContent = (product) => {
|
|
|
6986
7052
|
}
|
|
6987
7053
|
};
|
|
6988
7054
|
|
|
7055
|
+
// src/libraries/react/utils/inject-styles.ts
|
|
7056
|
+
var loadingStyles = {
|
|
7057
|
+
width: "100%",
|
|
7058
|
+
height: "100%",
|
|
7059
|
+
display: "flex",
|
|
7060
|
+
justifyContent: "center",
|
|
7061
|
+
alignItems: "center",
|
|
7062
|
+
minHeight: "300px"
|
|
7063
|
+
};
|
|
7064
|
+
var spinnerStyles = {
|
|
7065
|
+
width: "1.5rem",
|
|
7066
|
+
height: "1.5rem",
|
|
7067
|
+
color: "rgb(161 161 170)",
|
|
7068
|
+
animation: "spin 1s linear infinite"
|
|
7069
|
+
};
|
|
7070
|
+
|
|
6989
7071
|
// src/libraries/react/components/pricing-table/pricing-table-synced.tsx
|
|
6990
7072
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
6991
7073
|
function PricingTable({
|
|
@@ -6995,7 +7077,7 @@ function PricingTable({
|
|
|
6995
7077
|
const [isAnnual, setIsAnnual] = (0, import_react12.useState)(false);
|
|
6996
7078
|
const { products, isLoading, error } = usePricingTable({ productDetails });
|
|
6997
7079
|
if (isLoading) {
|
|
6998
|
-
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", {
|
|
7080
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { style: loadingStyles, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(LoaderCircle, { style: spinnerStyles }) });
|
|
6999
7081
|
}
|
|
7000
7082
|
if (error) {
|
|
7001
7083
|
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { children: " Something went wrong..." });
|