autumn-js 0.0.84 → 0.0.92

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.
Files changed (236) hide show
  1. package/dist/libraries/backend/better-auth.d.mts +764 -4
  2. package/dist/libraries/backend/better-auth.d.ts +764 -4
  3. package/dist/libraries/backend/better-auth.js +341 -19184
  4. package/dist/libraries/backend/better-auth.mjs +232 -19135
  5. package/dist/libraries/backend/{chunk-XGB3TDIC.mjs → chunk-6DZX6EAA.mjs} +0 -5
  6. package/dist/libraries/backend/{chunk-J3QM5KFT.mjs → chunk-7QSJB2C5.mjs} +1 -1
  7. package/dist/libraries/backend/{chunk-UJQBHXII.mjs → chunk-FCEB2GBS.mjs} +1 -1
  8. package/dist/libraries/backend/{chunk-A46IKTLH.mjs → chunk-JPNRDMMC.mjs} +1 -1
  9. package/dist/libraries/backend/{chunk-PDPPNHEU.mjs → chunk-NTFR7Z2G.mjs} +6 -6
  10. package/dist/libraries/backend/{chunk-DG3FZZQH.mjs → chunk-U7335VZS.mjs} +1 -1
  11. package/dist/libraries/backend/{chunk-VCEQ3QBX.mjs → chunk-V6M7KRGN.mjs} +57 -0
  12. package/dist/libraries/backend/{chunk-WDRHQJKV.mjs → chunk-VFTHGJ5N.mjs} +1 -1
  13. package/dist/libraries/backend/constants.mjs +1 -1
  14. package/dist/libraries/backend/convex.js +57 -0
  15. package/dist/libraries/backend/convex.mjs +8 -8
  16. package/dist/libraries/backend/express.d.mts +2 -1
  17. package/dist/libraries/backend/express.d.ts +2 -1
  18. package/dist/libraries/backend/express.js +57 -0
  19. package/dist/libraries/backend/express.mjs +8 -8
  20. package/dist/libraries/backend/fastify.js +57 -0
  21. package/dist/libraries/backend/fastify.mjs +8 -8
  22. package/dist/libraries/backend/hono.js +57 -0
  23. package/dist/libraries/backend/hono.mjs +8 -8
  24. package/dist/libraries/backend/next.js +59 -2
  25. package/dist/libraries/backend/next.mjs +8 -8
  26. package/dist/libraries/backend/react-router.js +57 -0
  27. package/dist/libraries/backend/react-router.mjs +8 -8
  28. package/dist/libraries/backend/{referralTypes-C6ao6j-_.d.mts → referralTypes-C_LRkLGP.d.mts} +101 -36
  29. package/dist/libraries/backend/{referralTypes-BZ4WOVK5.d.ts → referralTypes-KJHGHDgD.d.ts} +101 -36
  30. package/dist/libraries/backend/remix_dep.js +57 -0
  31. package/dist/libraries/backend/remix_dep.mjs +8 -8
  32. package/dist/libraries/backend/routes/backendRouter.js +57 -0
  33. package/dist/libraries/backend/routes/backendRouter.mjs +8 -8
  34. package/dist/libraries/backend/routes/entityRoutes.js +57 -0
  35. package/dist/libraries/backend/routes/entityRoutes.mjs +4 -4
  36. package/dist/libraries/backend/routes/genRoutes.js +57 -0
  37. package/dist/libraries/backend/routes/genRoutes.mjs +4 -4
  38. package/dist/libraries/backend/routes/productRoutes.js +57 -0
  39. package/dist/libraries/backend/routes/productRoutes.mjs +4 -4
  40. package/dist/libraries/backend/routes/referralRoutes.js +57 -0
  41. package/dist/libraries/backend/routes/referralRoutes.mjs +4 -4
  42. package/dist/libraries/backend/schemas/zod.d.mts +208 -0
  43. package/dist/libraries/backend/schemas/zod.d.ts +208 -0
  44. package/dist/libraries/backend/schemas/zod.js +100 -0
  45. package/dist/libraries/backend/schemas/zod.mjs +69 -0
  46. package/dist/libraries/backend/supabase.js +57 -0
  47. package/dist/libraries/backend/supabase.mjs +8 -8
  48. package/dist/libraries/backend/tanstack.js +57 -0
  49. package/dist/libraries/backend/tanstack.mjs +8 -8
  50. package/dist/libraries/backend/utils/backendRes.js +57 -0
  51. package/dist/libraries/backend/utils/backendRes.mjs +2 -2
  52. package/dist/libraries/backend/utils/logBackendErrors.mjs +1 -1
  53. package/dist/libraries/backend/utils/secretKeyCheck.mjs +1 -1
  54. package/dist/libraries/backend/utils/withAuth.d.mts +2 -1
  55. package/dist/libraries/backend/utils/withAuth.d.ts +2 -1
  56. package/dist/libraries/backend/utils/withAuth.js +57 -0
  57. package/dist/libraries/backend/utils/withAuth.mjs +3 -3
  58. package/dist/libraries/react/AutumnContext.d.mts +7 -6
  59. package/dist/libraries/react/AutumnContext.d.ts +7 -6
  60. package/dist/libraries/react/AutumnContext.js +59 -4
  61. package/dist/libraries/react/AutumnContext.mjs +5 -5
  62. package/dist/libraries/react/BaseAutumnProvider.d.mts +6 -7
  63. package/dist/libraries/react/BaseAutumnProvider.d.ts +6 -7
  64. package/dist/libraries/react/BaseAutumnProvider.js +140 -31
  65. package/dist/libraries/react/BaseAutumnProvider.mjs +10 -10
  66. package/dist/libraries/react/{ReactAutumnClient-DXwfNOsU.d.mts → ReactAutumnClient-BmHGkNH1.d.mts} +59 -11
  67. package/dist/libraries/react/{ReactAutumnClient-BUgyWQJZ.d.ts → ReactAutumnClient-PGnPqPkr.d.ts} +59 -11
  68. package/dist/libraries/react/ReactAutumnProvider.d.mts +3 -3
  69. package/dist/libraries/react/ReactAutumnProvider.d.ts +3 -3
  70. package/dist/libraries/react/ReactAutumnProvider.js +141 -41
  71. package/dist/libraries/react/ReactAutumnProvider.mjs +11 -11
  72. package/dist/libraries/react/{chunk-JFXBUWKA.mjs → chunk-3JJC2VU5.mjs} +22 -5
  73. package/dist/libraries/react/{chunk-NTQCSYCC.mjs → chunk-6SDVW33H.mjs} +24 -14
  74. package/dist/libraries/react/{chunk-UVW2G6D5.mjs → chunk-DIJJCQ2N.mjs} +2 -4
  75. package/dist/libraries/react/{chunk-MH2YTNJL.mjs → chunk-HL4JNKWK.mjs} +3 -5
  76. package/dist/libraries/react/{chunk-3ZEXZOM3.mjs → chunk-L3IZ2O3T.mjs} +4 -13
  77. package/dist/libraries/react/{chunk-NM57LOHB.mjs → chunk-LPJSRHPQ.mjs} +2 -2
  78. package/dist/libraries/react/{chunk-UDRQNZZS.mjs → chunk-NCPXL3J2.mjs} +70 -13
  79. package/dist/libraries/react/{chunk-FFSCKSIZ.mjs → chunk-OGFFPM5T.mjs} +2 -2
  80. package/dist/libraries/react/{chunk-RXM5BXAF.mjs → chunk-PJK6OPCU.mjs} +2 -2
  81. package/dist/libraries/react/{chunk-XKG7TR4L.mjs → chunk-RZW3QO6B.mjs} +25 -6
  82. package/dist/libraries/react/{chunk-AY477KTD.mjs → chunk-SDZ5NW6G.mjs} +2 -2
  83. package/dist/libraries/react/{chunk-C23P4R7T.mjs → chunk-TCCWWPEC.mjs} +16 -6
  84. package/dist/libraries/react/{chunk-TW3RVWYN.mjs → chunk-VH4FTCAC.mjs} +2 -2
  85. package/dist/libraries/react/{chunk-K6IX3SOV.mjs → chunk-Y6RO4AM2.mjs} +279 -279
  86. package/dist/libraries/react/client/ReactAutumnClient.d.mts +6 -5
  87. package/dist/libraries/react/client/ReactAutumnClient.d.ts +6 -5
  88. package/dist/libraries/react/client/ReactAutumnClient.js +57 -0
  89. package/dist/libraries/react/client/ReactAutumnClient.mjs +4 -4
  90. package/dist/libraries/react/client/clientCompMethods.d.mts +6 -5
  91. package/dist/libraries/react/client/clientCompMethods.d.ts +6 -5
  92. package/dist/libraries/react/client/clientCusMethods.d.mts +6 -5
  93. package/dist/libraries/react/client/clientCusMethods.d.ts +6 -5
  94. package/dist/libraries/react/client/clientEntityMethods.d.mts +6 -5
  95. package/dist/libraries/react/client/clientEntityMethods.d.ts +6 -5
  96. package/dist/libraries/react/client/clientGenMethods.d.mts +6 -5
  97. package/dist/libraries/react/client/clientGenMethods.d.ts +6 -5
  98. package/dist/libraries/react/client/clientProdMethods.d.mts +6 -5
  99. package/dist/libraries/react/client/clientProdMethods.d.ts +6 -5
  100. package/dist/libraries/react/client/clientReferralMethods.d.mts +6 -4
  101. package/dist/libraries/react/client/clientReferralMethods.d.ts +6 -4
  102. package/dist/libraries/react/client/types/clientGenTypes.d.mts +136 -41
  103. package/dist/libraries/react/client/types/clientGenTypes.d.ts +136 -41
  104. package/dist/libraries/react/client/types/clientGenTypes.js +62 -0
  105. package/dist/libraries/react/client/types/clientGenTypes.mjs +52 -0
  106. package/dist/libraries/react/client/types/clientReferralTypes.d.mts +17 -5
  107. package/dist/libraries/react/client/types/clientReferralTypes.d.ts +17 -5
  108. package/dist/libraries/react/client/types/clientReferralTypes.js +20 -0
  109. package/dist/libraries/react/client/types/clientReferralTypes.mjs +13 -0
  110. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.mts +2 -1
  111. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.ts +2 -1
  112. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.js +139 -28
  113. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.mjs +21 -21
  114. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.mts +2 -1
  115. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.ts +2 -1
  116. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.mts +2 -1
  117. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.ts +2 -1
  118. package/dist/libraries/react/components/check-dialog/lib/check-content.d.mts +2 -1
  119. package/dist/libraries/react/components/check-dialog/lib/check-content.d.ts +2 -1
  120. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +2 -1
  121. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +2 -1
  122. package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +139 -28
  123. package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +21 -21
  124. package/dist/libraries/react/{cusTypes-MRvvutK7.d.ts → cusTypes-WaPJKeAb.d.mts} +29 -9
  125. package/dist/libraries/react/{cusTypes-MRvvutK7.d.mts → cusTypes-WaPJKeAb.d.ts} +29 -9
  126. package/dist/libraries/react/{entTypes-CNg4mN1E.d.ts → entTypes-D01S8gFX.d.ts} +1 -1
  127. package/dist/libraries/react/{entTypes-CGReDkQ9.d.mts → entTypes-aIV0QUCW.d.mts} +1 -1
  128. package/dist/libraries/react/hooks/handleAllowed.d.mts +4 -3
  129. package/dist/libraries/react/hooks/handleAllowed.d.ts +4 -3
  130. package/dist/libraries/react/hooks/handleAllowed.js +22 -5
  131. package/dist/libraries/react/hooks/handleAllowed.mjs +1 -1
  132. package/dist/libraries/react/hooks/useAutumn.d.mts +6 -5
  133. package/dist/libraries/react/hooks/useAutumn.d.ts +6 -5
  134. package/dist/libraries/react/hooks/useAutumn.js +96 -12
  135. package/dist/libraries/react/hooks/useAutumn.mjs +8 -8
  136. package/dist/libraries/react/hooks/useAutumnBase.d.mts +9 -8
  137. package/dist/libraries/react/hooks/useAutumnBase.d.ts +9 -8
  138. package/dist/libraries/react/hooks/useAutumnBase.js +96 -12
  139. package/dist/libraries/react/hooks/useAutumnBase.mjs +7 -7
  140. package/dist/libraries/react/hooks/useCustomer.d.mts +7 -5
  141. package/dist/libraries/react/hooks/useCustomer.d.ts +7 -5
  142. package/dist/libraries/react/hooks/useCustomer.js +139 -28
  143. package/dist/libraries/react/hooks/useCustomer.mjs +10 -10
  144. package/dist/libraries/react/hooks/useCustomerBase.d.mts +8 -4
  145. package/dist/libraries/react/hooks/useCustomerBase.d.ts +8 -4
  146. package/dist/libraries/react/hooks/useCustomerBase.js +139 -28
  147. package/dist/libraries/react/hooks/useCustomerBase.mjs +9 -9
  148. package/dist/libraries/react/hooks/useEntity.d.mts +7 -5
  149. package/dist/libraries/react/hooks/useEntity.d.ts +7 -5
  150. package/dist/libraries/react/hooks/useEntity.js +118 -17
  151. package/dist/libraries/react/hooks/useEntity.mjs +10 -10
  152. package/dist/libraries/react/hooks/useEntityBase.d.mts +7 -7
  153. package/dist/libraries/react/hooks/useEntityBase.d.ts +7 -7
  154. package/dist/libraries/react/hooks/useEntityBase.js +118 -17
  155. package/dist/libraries/react/hooks/useEntityBase.mjs +9 -9
  156. package/dist/libraries/react/hooks/usePricingTable.d.mts +2 -1
  157. package/dist/libraries/react/hooks/usePricingTable.d.ts +2 -1
  158. package/dist/libraries/react/hooks/usePricingTable.js +73 -8
  159. package/dist/libraries/react/hooks/usePricingTable.mjs +7 -7
  160. package/dist/libraries/react/hooks/usePricingTableBase.d.mts +7 -6
  161. package/dist/libraries/react/hooks/usePricingTableBase.d.ts +7 -6
  162. package/dist/libraries/react/hooks/usePricingTableBase.js +73 -8
  163. package/dist/libraries/react/hooks/usePricingTableBase.mjs +6 -6
  164. package/dist/libraries/react/hooks/useProductsBase.js +59 -4
  165. package/dist/libraries/react/hooks/useProductsBase.mjs +5 -5
  166. package/dist/libraries/react/index.d.mts +611 -0
  167. package/dist/libraries/react/index.d.ts +168 -57
  168. package/dist/libraries/react/index.js +142 -42
  169. package/dist/libraries/react/index.mjs +142 -42
  170. package/dist/libraries/react/{response-JxL9qiek.d.mts → response-Bt5OMm4y.d.mts} +21 -5
  171. package/dist/libraries/react/{response-D_2cMcet.d.ts → response-CvPzWrT9.d.ts} +21 -5
  172. package/dist/next/{AutumnProvider-DPcEuE_Q.d.ts → AutumnProvider-DtLqoQp6.d.mts} +28 -9
  173. package/dist/next/{AutumnProvider-DPcEuE_Q.d.mts → AutumnProvider-DtLqoQp6.d.ts} +28 -9
  174. package/dist/next/AutumnProvider.d.mts +2 -1
  175. package/dist/next/AutumnProvider.d.ts +2 -1
  176. package/dist/next/client/NextAutumnClient.d.mts +60 -10
  177. package/dist/next/client/NextAutumnClient.d.ts +60 -10
  178. package/dist/next/client/NextAutumnProvider.d.mts +2 -1
  179. package/dist/next/client/NextAutumnProvider.d.ts +2 -1
  180. package/dist/next/client/clientEntTypes-BFkleT6a.d.mts +22 -0
  181. package/dist/next/client/clientEntTypes-BFkleT6a.d.ts +22 -0
  182. package/dist/next/client/clientGenTypes-BPjTbeG-.d.mts +195 -0
  183. package/dist/next/client/clientGenTypes-Bqecpl58.d.ts +195 -0
  184. package/dist/next/client/clientUtils.d.mts +3 -2
  185. package/dist/next/client/clientUtils.d.ts +3 -2
  186. package/dist/next/client/{cusTypes-CJI8rdlY.d.mts → cusTypes-D8lhXGaX.d.mts} +29 -9
  187. package/dist/next/client/{cusTypes-CJI8rdlY.d.ts → cusTypes-D8lhXGaX.d.ts} +29 -9
  188. package/dist/next/client/{entTypes-okM0aeOM.d.mts → entTypes-B-2_9hzP.d.mts} +1 -1
  189. package/dist/next/client/{entTypes-CqHWTcCX.d.ts → entTypes-Dq2mbehl.d.ts} +1 -1
  190. package/dist/next/client/hooks/useAutumn.d.mts +6 -4
  191. package/dist/next/client/hooks/useAutumn.d.ts +6 -4
  192. package/dist/next/client/hooks/useCustomer.d.mts +26 -4
  193. package/dist/next/client/hooks/useCustomer.d.ts +26 -4
  194. package/dist/next/client/hooks/useCustomer.js +3 -1
  195. package/dist/next/client/hooks/useCustomer.mjs +3 -1
  196. package/dist/next/client/hooks/useEntity.d.mts +7 -5
  197. package/dist/next/client/hooks/useEntity.d.ts +7 -5
  198. package/dist/next/client/hooks/usePricingTable.d.mts +2 -1
  199. package/dist/next/client/hooks/usePricingTable.d.ts +2 -1
  200. package/dist/next/client/types.d.mts +3 -2
  201. package/dist/next/client/types.d.ts +3 -2
  202. package/dist/next/index.d.mts +221 -65
  203. package/dist/next/index.d.ts +221 -65
  204. package/dist/next/server/auth/withNextAuth.d.mts +2 -1
  205. package/dist/next/server/auth/withNextAuth.d.ts +2 -1
  206. package/dist/next/server/componentActions.d.mts +2 -1
  207. package/dist/next/server/componentActions.d.ts +2 -1
  208. package/dist/next/server/cusActions.d.mts +93 -38
  209. package/dist/next/server/cusActions.d.ts +93 -38
  210. package/dist/next/server/{cusTypes-DuSwXVmp.d.mts → cusTypes-C86FOl99.d.mts} +28 -8
  211. package/dist/next/server/{cusTypes-DuSwXVmp.d.ts → cusTypes-C86FOl99.d.ts} +28 -8
  212. package/dist/next/server/genActions.d.mts +44 -49
  213. package/dist/next/server/genActions.d.ts +44 -49
  214. package/dist/sdk/index.d.mts +123 -29
  215. package/dist/sdk/index.d.ts +123 -29
  216. package/dist/sdk/index.js +60 -9
  217. package/dist/sdk/index.mjs +57 -10
  218. package/dist/styles/global.css +42 -4
  219. package/dist/utils/encryptUtils.js +57 -0
  220. package/dist/utils/encryptUtils.mjs +57 -0
  221. package/package.json +27 -4
  222. package/tsup.config.ts +1 -22
  223. package/components.json +0 -21
  224. package/dist/next/client/clientGenTypes-CAv4hwb4.d.ts +0 -108
  225. package/dist/next/client/clientGenTypes-Dlpw9wy_.d.mts +0 -108
  226. package/dist/next/client/clientReferralTypes-C9JiOk2s.d.mts +0 -20
  227. package/dist/next/client/clientReferralTypes-C9JiOk2s.d.ts +0 -20
  228. package/dist/next/server/clientEntTypes-BOVTwIKv.d.mts +0 -14
  229. package/dist/next/server/clientEntTypes-BOVTwIKv.d.ts +0 -14
  230. package/postcss.config.js +0 -25
  231. package/publish.sh +0 -18
  232. package/scripts/css-transform-plugin.js +0 -28
  233. package/scripts/post-build.js +0 -91
  234. package/scripts/sync-registry.ts +0 -190
  235. package/tailwind.config.ts +0 -96
  236. package/tsup.dev.config.ts +0 -199
@@ -529,6 +529,63 @@ var Autumn = class {
529
529
  }
530
530
  };
531
531
 
532
+ // src/sdk/general/genTypes.ts
533
+ var import_zod = require("zod");
534
+ var AttachParamsSchema = import_zod.z.object({
535
+ customer_id: import_zod.z.string(),
536
+ product_id: import_zod.z.string().optional(),
537
+ entity_id: import_zod.z.string().optional(),
538
+ options: import_zod.z.array(import_zod.z.object({
539
+ feature_id: import_zod.z.string(),
540
+ quantity: import_zod.z.number()
541
+ })).optional(),
542
+ product_ids: import_zod.z.array(import_zod.z.string()).optional(),
543
+ // If set, will attach multiple products to the customer (cannot be used with product_id)
544
+ free_trial: import_zod.z.boolean().optional(),
545
+ // Default is true -- if set to false, will bypass product free trial
546
+ success_url: import_zod.z.string().optional(),
547
+ // Passed to Stripe
548
+ metadata: import_zod.z.record(import_zod.z.string()).optional(),
549
+ // Passed to Stripe
550
+ force_checkout: import_zod.z.boolean().optional(),
551
+ // Default is false -- if set to true, will force the customer to checkout (not allowed for upgrades / downgrades)
552
+ customer_data: import_zod.z.any().optional(),
553
+ entity_data: import_zod.z.any().optional(),
554
+ checkout_session_params: import_zod.z.record(import_zod.z.any()).optional(),
555
+ // Passed to Stripe
556
+ reward: import_zod.z.string().optional()
557
+ });
558
+ var AttachResultSchema = import_zod.z.object({
559
+ checkout_url: import_zod.z.string().optional(),
560
+ customer_id: import_zod.z.string(),
561
+ product_ids: import_zod.z.array(import_zod.z.string()),
562
+ code: import_zod.z.string(),
563
+ message: import_zod.z.string(),
564
+ customer_data: import_zod.z.any().optional()
565
+ });
566
+
567
+ // src/sdk/customers/cusEnums.ts
568
+ var import_zod2 = require("zod");
569
+ var CustomerExpandEnum = import_zod2.z.enum([
570
+ "invoices",
571
+ "rewards",
572
+ "trials_used",
573
+ "entities",
574
+ "referrals",
575
+ "payment_method"
576
+ ]);
577
+
578
+ // src/sdk/customers/cusTypes.ts
579
+ var import_zod3 = require("zod");
580
+ var CreateCustomerParamsSchema = import_zod3.z.object({
581
+ id: import_zod3.z.string().nullish(),
582
+ email: import_zod3.z.string().nullish(),
583
+ name: import_zod3.z.string().nullish(),
584
+ fingerprint: import_zod3.z.string().nullish(),
585
+ metadata: import_zod3.z.record(import_zod3.z.any()).optional(),
586
+ expand: import_zod3.z.array(CustomerExpandEnum).optional()
587
+ });
588
+
532
589
  // src/libraries/react/errorUtils/logFetchError.ts
533
590
  var logFetchError = ({
534
591
  method,
@@ -853,12 +910,10 @@ var AutumnContext = (0, import_react.createContext)({
853
910
  });
854
911
  var useAutumnContext = ({
855
912
  AutumnContext: AutumnContext2,
856
- name
913
+ name,
914
+ errorIfNotInitialized = true
857
915
  }) => {
858
916
  const context = (0, import_react.useContext)(AutumnContext2);
859
- if (!context.initialized) {
860
- throw new Error(`${name} must be used within <AutumnProvider />`);
861
- }
862
917
  return context;
863
918
  };
864
919
 
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  AutumnContext,
5
5
  useAutumnContext
6
- } from "../chunk-MH2YTNJL.mjs";
7
- import "../chunk-UDRQNZZS.mjs";
6
+ } from "../chunk-HL4JNKWK.mjs";
7
+ import "../chunk-NCPXL3J2.mjs";
8
+ import "../chunk-V5PKOA5A.mjs";
9
+ import "../chunk-JNM4BLTM.mjs";
8
10
  import "../chunk-YUV2Y2RW.mjs";
9
11
  import "../chunk-3EYF7OI5.mjs";
12
+ import "../chunk-KQT5G3HT.mjs";
10
13
  import "../chunk-JVCOY7ZL.mjs";
11
14
  import "../chunk-CIBQ4BJU.mjs";
12
15
  import "../chunk-NZ5PEXT2.mjs";
13
16
  import "../chunk-TGX6UKKS.mjs";
14
- import "../chunk-V5PKOA5A.mjs";
15
- import "../chunk-JNM4BLTM.mjs";
16
- import "../chunk-KQT5G3HT.mjs";
17
17
 
18
18
  // src/libraries/react/hooks/useProductsBase.tsx
19
19
  var useProductsBase = () => {
@@ -0,0 +1,611 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { z } from 'zod';
3
+ import * as swr from 'swr';
4
+ import { SWRConfiguration } from 'swr';
5
+ import * as React$1 from 'react';
6
+
7
+ interface ErrorResponse {
8
+ message: string;
9
+ code: string;
10
+ }
11
+ declare class AutumnError extends Error {
12
+ readonly message: string;
13
+ readonly code: string;
14
+ constructor(response: ErrorResponse);
15
+ static fromError(error: any): AutumnError;
16
+ toString(): string;
17
+ toJSON(): {
18
+ message: string;
19
+ code: string;
20
+ };
21
+ }
22
+
23
+ declare const Infinite = "inf";
24
+ declare enum FreeTrialDuration {
25
+ Day = "day"
26
+ }
27
+ declare enum UsageModel {
28
+ Prepaid = "prepaid",
29
+ PayPerUse = "pay_per_use"
30
+ }
31
+ type UsageModelType = "prepaid" | "pay_per_use";
32
+ declare enum ProductItemInterval {
33
+ Minute = "minute",
34
+ Hour = "hour",
35
+ Day = "day",
36
+ Week = "week",
37
+ Month = "month",
38
+ Quarter = "quarter",
39
+ SemiAnnual = "semi_annual",
40
+ Year = "year",
41
+ Multiple = "multiple"
42
+ }
43
+ type ProductItemIntervalType = "minute" | "hour" | "day" | "week" | "month" | "quarter" | "semi_annual" | "year" | "multiple";
44
+
45
+ type CheckFeatureScenario = "usage_limit" | "feature_flag";
46
+ interface CheckFeatureResult extends CoreCustomerFeature {
47
+ allowed: boolean;
48
+ feature_id: string;
49
+ customer_id: string;
50
+ entity_id?: string;
51
+ required_balance: number;
52
+ code: string;
53
+ usage_limit?: number;
54
+ preview?: CheckFeaturePreview;
55
+ }
56
+ interface CheckFeaturePreview {
57
+ scenario: CheckFeatureScenario;
58
+ title: string;
59
+ message: string;
60
+ feature_id: string;
61
+ feature_name: string;
62
+ products: Product[];
63
+ }
64
+ type ProductScenario = "scheduled" | "active" | "new" | "renew" | "upgrade" | "downgrade" | "cancel";
65
+ interface CheckProductResult {
66
+ allowed: boolean;
67
+ customer_id: string;
68
+ product_id: string;
69
+ code: string;
70
+ status?: string;
71
+ preview?: CheckProductPreview;
72
+ }
73
+ interface CheckProductPreview {
74
+ scenario: ProductScenario;
75
+ product_id: string;
76
+ product_name: string;
77
+ recurring: boolean;
78
+ error_on_attach?: boolean;
79
+ next_cycle_at?: number;
80
+ current_product_name?: string;
81
+ items?: {
82
+ price: string;
83
+ description: string;
84
+ usage_model?: UsageModelType;
85
+ }[];
86
+ options?: {
87
+ feature_id: string;
88
+ feature_name: string;
89
+ billing_units: number;
90
+ price?: number;
91
+ tiers?: {
92
+ to: number | string;
93
+ amount: number;
94
+ }[];
95
+ }[];
96
+ due_today?: {
97
+ price: number;
98
+ currency: string;
99
+ };
100
+ due_next_cycle?: {
101
+ price: number;
102
+ currency: string;
103
+ };
104
+ }
105
+
106
+ declare enum AppEnv {
107
+ Sandbox = "sandbox",
108
+ Live = "live"
109
+ }
110
+
111
+ interface ProductItem {
112
+ feature_id?: string;
113
+ included_usage?: number | typeof Infinite;
114
+ interval?: ProductItemIntervalType;
115
+ usage_model?: UsageModel;
116
+ price?: number;
117
+ billing_units?: number;
118
+ entity_feature_id?: string;
119
+ reset_usage_when_enabled?: boolean;
120
+ quantity?: number;
121
+ next_cycle_quantity?: number;
122
+ display?: {
123
+ primary_text?: string;
124
+ secondary_text?: string;
125
+ };
126
+ }
127
+ interface FreeTrial {
128
+ duration: FreeTrialDuration;
129
+ length: number;
130
+ unique_fingerprint: boolean;
131
+ trial_available?: boolean;
132
+ }
133
+ interface Product {
134
+ id: string;
135
+ created_at: number;
136
+ name: string;
137
+ env: AppEnv;
138
+ is_add_on: boolean;
139
+ is_default: boolean;
140
+ group: string;
141
+ version: number;
142
+ items: ProductItem[];
143
+ free_trial: FreeTrial | null;
144
+ scenario?: ProductScenario;
145
+ base_variant_id: string | null;
146
+ properties?: {
147
+ is_free?: boolean;
148
+ is_one_off?: boolean;
149
+ interval_group?: string;
150
+ };
151
+ display?: {
152
+ name?: string;
153
+ description?: string;
154
+ button_text?: string;
155
+ recommend_text?: string;
156
+ everything_from?: string;
157
+ button_url?: string;
158
+ };
159
+ }
160
+
161
+ declare enum ProductStatus {
162
+ Active = "active",
163
+ Expired = "expired",
164
+ Trialing = "trialing",
165
+ Scheduled = "scheduled",
166
+ PastDue = "past_due"
167
+ }
168
+ type CustomerExpandOption = "invoices" | "rewards" | "trials_used" | "entities" | "referrals" | "payment_method";
169
+
170
+ interface CoreCustomerFeature {
171
+ unlimited?: boolean;
172
+ interval?: ProductItemInterval | null;
173
+ balance?: number;
174
+ usage?: number;
175
+ included_usage?: number;
176
+ next_reset_at?: number | null;
177
+ overage_allowed?: boolean;
178
+ usage_limit?: number;
179
+ breakdown?: {
180
+ interval: ProductItemInterval;
181
+ balance?: number;
182
+ usage?: number;
183
+ included_usage?: number;
184
+ next_reset_at?: number;
185
+ }[];
186
+ credit_schema?: {
187
+ feature_id: string;
188
+ credit_amount: number;
189
+ }[];
190
+ }
191
+ interface CustomerFeature extends CoreCustomerFeature {
192
+ id: string;
193
+ name: string;
194
+ type: "static" | "single_use" | "continuous_use";
195
+ }
196
+ interface CustomerProduct {
197
+ id: string;
198
+ name: string | null;
199
+ group: string | null;
200
+ status: ProductStatus;
201
+ started_at: number;
202
+ canceled_at: number | null;
203
+ subscription_ids?: string[] | null;
204
+ current_period_start?: number | null;
205
+ current_period_end?: number | null;
206
+ trial_ends_at?: number;
207
+ entity_id?: string;
208
+ is_add_on: boolean;
209
+ is_default: boolean;
210
+ items: ProductItem[];
211
+ }
212
+ interface Customer {
213
+ id: string | null;
214
+ created_at: number;
215
+ name: string | null;
216
+ email: string | null;
217
+ fingerprint: string | null;
218
+ stripe_id: string | null;
219
+ env: AppEnv;
220
+ metadata: Record<string, any>;
221
+ products: CustomerProduct[];
222
+ features: Record<string, CustomerFeature>;
223
+ invoices?: CustomerInvoice[];
224
+ }
225
+ interface CustomerData {
226
+ name?: string;
227
+ email?: string;
228
+ fingerprint?: string;
229
+ }
230
+ interface BillingPortalResult {
231
+ customer_id: string;
232
+ url: string;
233
+ }
234
+ interface CustomerInvoice {
235
+ product_ids: string[];
236
+ stripe_id: string;
237
+ status: string;
238
+ total: number;
239
+ currency: string;
240
+ created_at: number;
241
+ hosted_invoice_url: string;
242
+ }
243
+
244
+ interface Entity {
245
+ id: string;
246
+ name: string;
247
+ customer_id: string;
248
+ created_at: number;
249
+ env: string;
250
+ products: CustomerProduct[];
251
+ features: Record<string, CustomerFeature>;
252
+ invoices?: CustomerInvoice[];
253
+ }
254
+
255
+ interface CancelResult {
256
+ success: boolean;
257
+ customer_id: string;
258
+ product_id: string;
259
+ }
260
+ declare const AttachResultSchema: z.ZodObject<{
261
+ checkout_url: z.ZodOptional<z.ZodString>;
262
+ customer_id: z.ZodString;
263
+ product_ids: z.ZodArray<z.ZodString, "many">;
264
+ code: z.ZodString;
265
+ message: z.ZodString;
266
+ customer_data: z.ZodOptional<z.ZodAny>;
267
+ }, "strip", z.ZodTypeAny, {
268
+ customer_id: string;
269
+ code: string;
270
+ message: string;
271
+ product_ids: string[];
272
+ customer_data?: any;
273
+ checkout_url?: string | undefined;
274
+ }, {
275
+ customer_id: string;
276
+ code: string;
277
+ message: string;
278
+ product_ids: string[];
279
+ customer_data?: any;
280
+ checkout_url?: string | undefined;
281
+ }>;
282
+ type AttachResult = z.infer<typeof AttachResultSchema>;
283
+ interface TrackResult {
284
+ id: string;
285
+ code: string;
286
+ customer_id: string;
287
+ feature_id?: string;
288
+ event_name?: string;
289
+ }
290
+ type CheckResult = CheckFeatureResult & CheckProductResult;
291
+ interface SetupPaymentResult {
292
+ customer_id: string;
293
+ url: string;
294
+ }
295
+
296
+ type Success<T> = {
297
+ data: T;
298
+ error: null;
299
+ statusCode?: number;
300
+ };
301
+ type Failure<E> = {
302
+ data: null;
303
+ error: E;
304
+ statusCode?: number;
305
+ };
306
+ type Result<T, E> = Success<T> | Failure<E>;
307
+ type AutumnPromise<T> = Promise<Result<T, AutumnError>>;
308
+
309
+ interface PricingTableProduct {
310
+ id: string;
311
+ name: string;
312
+ description?: string;
313
+ button_text?: string;
314
+ recommend_text?: string;
315
+ everything_from?: string;
316
+ price: {
317
+ primary_text: string;
318
+ secondary_text?: string;
319
+ } & ProductItem;
320
+ items: ({
321
+ primary_text: string;
322
+ secondary_text?: string;
323
+ } & ProductItem)[];
324
+ scenario: ProductScenario;
325
+ }
326
+
327
+ interface CreateReferralCodeResult {
328
+ code: string;
329
+ customer_id: string;
330
+ created_at: number;
331
+ }
332
+ interface RedeemReferralCodeResult {
333
+ id: string;
334
+ customer_id: string;
335
+ reward_id: string;
336
+ applied: boolean;
337
+ }
338
+
339
+ declare const ReactAutumnProvider: ({ children, getBearerToken, backendUrl, customerData, includeCredentials, authClient, }: {
340
+ children: React.ReactNode;
341
+ getBearerToken?: () => Promise<string | null | undefined>;
342
+ backendUrl?: string;
343
+ customerData?: CustomerData;
344
+ includeCredentials?: boolean;
345
+ authClient?: any;
346
+ }) => react_jsx_runtime.JSX.Element;
347
+
348
+ interface ProductDetails {
349
+ id?: string;
350
+ name?: string;
351
+ description?: string;
352
+ buttonText?: string;
353
+ buttonUrl?: string;
354
+ recommendText?: string;
355
+ everythingFrom?: string;
356
+ price?: {
357
+ primaryText: string;
358
+ secondaryText?: string;
359
+ };
360
+ items?: {
361
+ featureId?: string;
362
+ primaryText?: string;
363
+ secondaryText?: string;
364
+ }[];
365
+ }
366
+
367
+ interface CreateEntityParams {
368
+ id: string;
369
+ name?: string;
370
+ featureId: string;
371
+ }
372
+ interface GetEntityParams {
373
+ expand?: string[];
374
+ }
375
+
376
+ declare const CreateReferralCodeParamsSchema: z.ZodObject<{
377
+ programId: z.ZodString;
378
+ }, "strip", z.ZodTypeAny, {
379
+ programId: string;
380
+ }, {
381
+ programId: string;
382
+ }>;
383
+ type CreateReferralCodeParams = z.infer<typeof CreateReferralCodeParamsSchema>;
384
+ declare const RedeemReferralCodeParamsSchema: z.ZodObject<{
385
+ code: z.ZodString;
386
+ }, "strip", z.ZodTypeAny, {
387
+ code: string;
388
+ }, {
389
+ code: string;
390
+ }>;
391
+ type RedeemReferralCodeParams = z.infer<typeof RedeemReferralCodeParamsSchema>;
392
+
393
+ declare const AttachParamsSchema: z.ZodObject<{
394
+ productId: z.ZodOptional<z.ZodString>;
395
+ entityId: z.ZodOptional<z.ZodString>;
396
+ options: z.ZodOptional<z.ZodArray<z.ZodObject<{
397
+ featureId: z.ZodString;
398
+ quantity: z.ZodNumber;
399
+ }, "strip", z.ZodTypeAny, {
400
+ quantity: number;
401
+ featureId: string;
402
+ }, {
403
+ quantity: number;
404
+ featureId: string;
405
+ }>, "many">>;
406
+ productIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
407
+ freeTrial: z.ZodOptional<z.ZodBoolean>;
408
+ successUrl: z.ZodOptional<z.ZodString>;
409
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
410
+ forceCheckout: z.ZodOptional<z.ZodBoolean>;
411
+ dialog: z.ZodOptional<z.ZodFunction<z.ZodTuple<[z.ZodAny], z.ZodUnknown>, z.ZodUnion<[z.ZodType<JSX.Element, z.ZodTypeDef, JSX.Element>, z.ZodType<React$1.ReactNode, z.ZodTypeDef, React$1.ReactNode>]>>>;
412
+ entityData: z.ZodOptional<z.ZodAny>;
413
+ openInNewTab: z.ZodOptional<z.ZodBoolean>;
414
+ reward: z.ZodOptional<z.ZodString>;
415
+ checkoutSessionParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
416
+ }, "strip", z.ZodTypeAny, {
417
+ options?: {
418
+ quantity: number;
419
+ featureId: string;
420
+ }[] | undefined;
421
+ metadata?: Record<string, string> | undefined;
422
+ reward?: string | undefined;
423
+ productId?: string | undefined;
424
+ entityId?: string | undefined;
425
+ productIds?: string[] | undefined;
426
+ freeTrial?: boolean | undefined;
427
+ successUrl?: string | undefined;
428
+ forceCheckout?: boolean | undefined;
429
+ dialog?: ((args_0: any, ...args: unknown[]) => JSX.Element | React$1.ReactNode) | undefined;
430
+ entityData?: any;
431
+ openInNewTab?: boolean | undefined;
432
+ checkoutSessionParams?: Record<string, any> | undefined;
433
+ }, {
434
+ options?: {
435
+ quantity: number;
436
+ featureId: string;
437
+ }[] | undefined;
438
+ metadata?: Record<string, string> | undefined;
439
+ reward?: string | undefined;
440
+ productId?: string | undefined;
441
+ entityId?: string | undefined;
442
+ productIds?: string[] | undefined;
443
+ freeTrial?: boolean | undefined;
444
+ successUrl?: string | undefined;
445
+ forceCheckout?: boolean | undefined;
446
+ dialog?: ((args_0: any, ...args: unknown[]) => JSX.Element | React$1.ReactNode) | undefined;
447
+ entityData?: any;
448
+ openInNewTab?: boolean | undefined;
449
+ checkoutSessionParams?: Record<string, any> | undefined;
450
+ }>;
451
+ type AttachParams = z.infer<typeof AttachParamsSchema>;
452
+ declare const CancelParamsSchema: z.ZodObject<{
453
+ productId: z.ZodString;
454
+ entityId: z.ZodOptional<z.ZodString>;
455
+ cancelImmediately: z.ZodOptional<z.ZodBoolean>;
456
+ }, "strip", z.ZodTypeAny, {
457
+ productId: string;
458
+ entityId?: string | undefined;
459
+ cancelImmediately?: boolean | undefined;
460
+ }, {
461
+ productId: string;
462
+ entityId?: string | undefined;
463
+ cancelImmediately?: boolean | undefined;
464
+ }>;
465
+ type CancelParams = z.infer<typeof CancelParamsSchema>;
466
+ declare const CheckParamsSchema: z.ZodObject<{
467
+ featureId: z.ZodOptional<z.ZodString>;
468
+ productId: z.ZodOptional<z.ZodString>;
469
+ entityId: z.ZodOptional<z.ZodString>;
470
+ requiredBalance: z.ZodOptional<z.ZodNumber>;
471
+ sendEvent: z.ZodOptional<z.ZodBoolean>;
472
+ withPreview: z.ZodOptional<z.ZodBoolean>;
473
+ dialog: z.ZodOptional<z.ZodFunction<z.ZodTuple<[z.ZodAny], z.ZodUnknown>, z.ZodUnion<[z.ZodType<JSX.Element, z.ZodTypeDef, JSX.Element>, z.ZodType<React$1.ReactNode, z.ZodTypeDef, React$1.ReactNode>]>>>;
474
+ entityData: z.ZodOptional<z.ZodAny>;
475
+ }, "strip", z.ZodTypeAny, {
476
+ featureId?: string | undefined;
477
+ productId?: string | undefined;
478
+ entityId?: string | undefined;
479
+ dialog?: ((args_0: any, ...args: unknown[]) => JSX.Element | React$1.ReactNode) | undefined;
480
+ entityData?: any;
481
+ requiredBalance?: number | undefined;
482
+ sendEvent?: boolean | undefined;
483
+ withPreview?: boolean | undefined;
484
+ }, {
485
+ featureId?: string | undefined;
486
+ productId?: string | undefined;
487
+ entityId?: string | undefined;
488
+ dialog?: ((args_0: any, ...args: unknown[]) => JSX.Element | React$1.ReactNode) | undefined;
489
+ entityData?: any;
490
+ requiredBalance?: number | undefined;
491
+ sendEvent?: boolean | undefined;
492
+ withPreview?: boolean | undefined;
493
+ }>;
494
+ type CheckParams = z.infer<typeof CheckParamsSchema>;
495
+ declare const TrackParamsSchema: z.ZodObject<{
496
+ featureId: z.ZodOptional<z.ZodString>;
497
+ eventName: z.ZodOptional<z.ZodString>;
498
+ entityId: z.ZodOptional<z.ZodString>;
499
+ value: z.ZodOptional<z.ZodNumber>;
500
+ idempotencyKey: z.ZodOptional<z.ZodString>;
501
+ entityData: z.ZodOptional<z.ZodAny>;
502
+ }, "strip", z.ZodTypeAny, {
503
+ value?: number | undefined;
504
+ featureId?: string | undefined;
505
+ entityId?: string | undefined;
506
+ entityData?: any;
507
+ eventName?: string | undefined;
508
+ idempotencyKey?: string | undefined;
509
+ }, {
510
+ value?: number | undefined;
511
+ featureId?: string | undefined;
512
+ entityId?: string | undefined;
513
+ entityData?: any;
514
+ eventName?: string | undefined;
515
+ idempotencyKey?: string | undefined;
516
+ }>;
517
+ type TrackParams = z.infer<typeof TrackParamsSchema>;
518
+ interface OpenBillingPortalParams {
519
+ returnUrl?: string;
520
+ openInNewTab?: boolean;
521
+ }
522
+ interface SetupPaymentParams {
523
+ successUrl?: string;
524
+ checkoutSessionParams?: Record<string, any>;
525
+ openInNewTab?: boolean;
526
+ }
527
+
528
+ interface AllowedParams {
529
+ featureId?: string;
530
+ productId?: string;
531
+ requiredBalance?: number;
532
+ }
533
+
534
+ interface UseCustomerResult {
535
+ customer: Customer | null;
536
+ isLoading: boolean;
537
+ error: AutumnError | null;
538
+ attach: (params: AttachParams) => AutumnPromise<AttachResult>;
539
+ check: (params: CheckParams) => AutumnPromise<CheckResult>;
540
+ track: (params: TrackParams) => AutumnPromise<TrackResult>;
541
+ cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
542
+ setupPayment: (params: SetupPaymentParams) => AutumnPromise<SetupPaymentResult>;
543
+ openBillingPortal: (params?: OpenBillingPortalParams) => AutumnPromise<BillingPortalResult>;
544
+ refetch: () => Promise<Customer | null>;
545
+ createEntity: (params: CreateEntityParams | CreateEntityParams[]) => AutumnPromise<Entity | Entity[]>;
546
+ createReferralCode: (params: CreateReferralCodeParams) => AutumnPromise<CreateReferralCodeResult>;
547
+ redeemReferralCode: (params: RedeemReferralCodeParams) => AutumnPromise<RedeemReferralCodeResult>;
548
+ allowed: (params: AllowedParams) => boolean;
549
+ }
550
+ interface UseCustomerParams {
551
+ errorOnNotFound?: boolean;
552
+ expand?: CustomerExpandOption[];
553
+ swrConfig?: SWRConfiguration;
554
+ authClient?: any;
555
+ }
556
+
557
+ declare const useCustomer: (params?: UseCustomerParams) => UseCustomerResult;
558
+
559
+ declare const usePricingTable: (params?: {
560
+ productDetails?: ProductDetails[];
561
+ }) => {
562
+ products: Product[] | null;
563
+ isLoading: boolean;
564
+ error: AutumnError | undefined;
565
+ refetch: swr.KeyedMutator<Product[]>;
566
+ };
567
+
568
+ declare const useEntity: (entityId: string | null, params?: GetEntityParams) => {
569
+ entity: Entity | null;
570
+ isLoading: boolean;
571
+ error: any;
572
+ refetch: swr.KeyedMutator<Entity | null>;
573
+ allowed: (params: AllowedParams) => boolean;
574
+ check: (params: CheckParams) => AutumnPromise<CheckResult>;
575
+ attach: (params: AttachParams) => Promise<any>;
576
+ cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
577
+ track: (params: TrackParams) => AutumnPromise<TrackResult>;
578
+ };
579
+
580
+ /**
581
+ * @deprecated The functions exported from this hook can now be found in useCustomer
582
+ */
583
+ declare const useAutumn: () => {
584
+ attach: (params: AttachParams) => Promise<any>;
585
+ check: (params: CheckParams) => AutumnPromise<CheckResult>;
586
+ track: (params: TrackParams) => AutumnPromise<TrackResult>;
587
+ cancel: (params: CancelParams) => AutumnPromise<CancelResult>;
588
+ openBillingPortal: (params?: OpenBillingPortalParams) => AutumnPromise<BillingPortalResult>;
589
+ setupPayment: (params?: SetupPaymentParams) => AutumnPromise<SetupPaymentResult>;
590
+ };
591
+
592
+ interface AttachDialogProps {
593
+ open: boolean;
594
+ setOpen: (open: boolean) => void;
595
+ preview: CheckProductPreview;
596
+ onClick: (options?: any) => Promise<void>;
597
+ }
598
+ declare function AttachDialog(params?: AttachDialogProps): react_jsx_runtime.JSX.Element;
599
+
600
+ interface CheckDialogProps {
601
+ open: boolean;
602
+ setOpen: (open: boolean) => void;
603
+ preview: CheckFeaturePreview;
604
+ }
605
+ declare function CheckDialog(params?: CheckDialogProps): react_jsx_runtime.JSX.Element;
606
+
607
+ declare function PricingTable({ productDetails, }: {
608
+ productDetails?: any;
609
+ }): react_jsx_runtime.JSX.Element;
610
+
611
+ export { AttachDialog, ReactAutumnProvider as AutumnProvider, CheckDialog, PricingTable, type PricingTableProduct, type ProductDetails, useAutumn, useCustomer, useEntity, usePricingTable };