@stardeckai/autumn-js 0.1.85

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 (536) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.md +12 -0
  3. package/dist/libraries/backend/balancesTypes-BrQjQCw3.d.ts +1822 -0
  4. package/dist/libraries/backend/balancesTypes-Dk9mLKO8.d.mts +1822 -0
  5. package/dist/libraries/backend/better-auth.d.mts +772 -0
  6. package/dist/libraries/backend/better-auth.d.ts +772 -0
  7. package/dist/libraries/backend/better-auth.js +2872 -0
  8. package/dist/libraries/backend/better-auth.mjs +482 -0
  9. package/dist/libraries/backend/chunk-4LJK3VUJ.mjs +48 -0
  10. package/dist/libraries/backend/chunk-7AOVJSWM.mjs +158 -0
  11. package/dist/libraries/backend/chunk-ENC3BP6R.mjs +53 -0
  12. package/dist/libraries/backend/chunk-IZDJ3I6T.mjs +1749 -0
  13. package/dist/libraries/backend/chunk-KSG3E4Q2.mjs +8 -0
  14. package/dist/libraries/backend/chunk-LM7CBUUT.mjs +95 -0
  15. package/dist/libraries/backend/chunk-NRKSUO62.mjs +115 -0
  16. package/dist/libraries/backend/chunk-SGEUXFOF.mjs +40 -0
  17. package/dist/libraries/backend/chunk-SRJD6EXQ.mjs +104 -0
  18. package/dist/libraries/backend/chunk-UNZHJTEY.mjs +18 -0
  19. package/dist/libraries/backend/chunk-ZGBFNNRL.mjs +78 -0
  20. package/dist/libraries/backend/chunk-ZW3KBZDU.mjs +30 -0
  21. package/dist/libraries/backend/constants.d.mts +4 -0
  22. package/dist/libraries/backend/constants.d.ts +4 -0
  23. package/dist/libraries/backend/constants.js +33 -0
  24. package/dist/libraries/backend/constants.mjs +8 -0
  25. package/dist/libraries/backend/convex.d.mts +16 -0
  26. package/dist/libraries/backend/convex.d.ts +16 -0
  27. package/dist/libraries/backend/convex.js +2468 -0
  28. package/dist/libraries/backend/convex.mjs +164 -0
  29. package/dist/libraries/backend/elysia.d.mts +35 -0
  30. package/dist/libraries/backend/elysia.d.ts +35 -0
  31. package/dist/libraries/backend/elysia.js +2399 -0
  32. package/dist/libraries/backend/elysia.mjs +102 -0
  33. package/dist/libraries/backend/express.d.mts +16 -0
  34. package/dist/libraries/backend/express.d.ts +16 -0
  35. package/dist/libraries/backend/express.js +2371 -0
  36. package/dist/libraries/backend/express.mjs +72 -0
  37. package/dist/libraries/backend/fastify.d.mts +9 -0
  38. package/dist/libraries/backend/fastify.d.ts +9 -0
  39. package/dist/libraries/backend/fastify.js +2368 -0
  40. package/dist/libraries/backend/fastify.mjs +69 -0
  41. package/dist/libraries/backend/hono.d.mts +12 -0
  42. package/dist/libraries/backend/hono.d.ts +12 -0
  43. package/dist/libraries/backend/hono.js +2365 -0
  44. package/dist/libraries/backend/hono.mjs +66 -0
  45. package/dist/libraries/backend/index.d.mts +25 -0
  46. package/dist/libraries/backend/index.d.ts +25 -0
  47. package/dist/libraries/backend/index.js +2376 -0
  48. package/dist/libraries/backend/index.mjs +74 -0
  49. package/dist/libraries/backend/next.d.mts +13 -0
  50. package/dist/libraries/backend/next.d.ts +13 -0
  51. package/dist/libraries/backend/next.js +2395 -0
  52. package/dist/libraries/backend/next.mjs +94 -0
  53. package/dist/libraries/backend/react-router.d.mts +12 -0
  54. package/dist/libraries/backend/react-router.d.ts +12 -0
  55. package/dist/libraries/backend/react-router.js +2396 -0
  56. package/dist/libraries/backend/react-router.mjs +97 -0
  57. package/dist/libraries/backend/remix_dep.d.mts +15 -0
  58. package/dist/libraries/backend/remix_dep.d.ts +15 -0
  59. package/dist/libraries/backend/remix_dep.js +2360 -0
  60. package/dist/libraries/backend/remix_dep.mjs +73 -0
  61. package/dist/libraries/backend/response-BBvvMvoC.d.mts +30 -0
  62. package/dist/libraries/backend/response-BBvvMvoC.d.ts +30 -0
  63. package/dist/libraries/backend/routes/analyticsRoutes.d.mts +6 -0
  64. package/dist/libraries/backend/routes/analyticsRoutes.d.ts +6 -0
  65. package/dist/libraries/backend/routes/analyticsRoutes.js +1936 -0
  66. package/dist/libraries/backend/routes/analyticsRoutes.mjs +10 -0
  67. package/dist/libraries/backend/routes/backendRouter.d.mts +12 -0
  68. package/dist/libraries/backend/routes/backendRouter.d.ts +12 -0
  69. package/dist/libraries/backend/routes/backendRouter.js +2304 -0
  70. package/dist/libraries/backend/routes/backendRouter.mjs +15 -0
  71. package/dist/libraries/backend/routes/basePath.d.mts +2 -0
  72. package/dist/libraries/backend/routes/basePath.d.ts +2 -0
  73. package/dist/libraries/backend/routes/basePath.js +1 -0
  74. package/dist/libraries/backend/routes/basePath.mjs +0 -0
  75. package/dist/libraries/backend/routes/entityRoutes.d.mts +6 -0
  76. package/dist/libraries/backend/routes/entityRoutes.d.ts +6 -0
  77. package/dist/libraries/backend/routes/entityRoutes.js +1963 -0
  78. package/dist/libraries/backend/routes/entityRoutes.mjs +10 -0
  79. package/dist/libraries/backend/routes/genRoutes.d.mts +6 -0
  80. package/dist/libraries/backend/routes/genRoutes.d.ts +6 -0
  81. package/dist/libraries/backend/routes/genRoutes.js +2041 -0
  82. package/dist/libraries/backend/routes/genRoutes.mjs +10 -0
  83. package/dist/libraries/backend/routes/productRoutes.d.mts +6 -0
  84. package/dist/libraries/backend/routes/productRoutes.d.ts +6 -0
  85. package/dist/libraries/backend/routes/productRoutes.js +1913 -0
  86. package/dist/libraries/backend/routes/productRoutes.mjs +10 -0
  87. package/dist/libraries/backend/routes/referralRoutes.d.mts +6 -0
  88. package/dist/libraries/backend/routes/referralRoutes.d.ts +6 -0
  89. package/dist/libraries/backend/routes/referralRoutes.js +1931 -0
  90. package/dist/libraries/backend/routes/referralRoutes.mjs +10 -0
  91. package/dist/libraries/backend/schemas/zod.d.mts +71 -0
  92. package/dist/libraries/backend/schemas/zod.d.ts +71 -0
  93. package/dist/libraries/backend/schemas/zod.js +101 -0
  94. package/dist/libraries/backend/schemas/zod.mjs +68 -0
  95. package/dist/libraries/backend/supabase.d.mts +9 -0
  96. package/dist/libraries/backend/supabase.d.ts +9 -0
  97. package/dist/libraries/backend/supabase.js +2394 -0
  98. package/dist/libraries/backend/supabase.mjs +95 -0
  99. package/dist/libraries/backend/tanstack.d.mts +32 -0
  100. package/dist/libraries/backend/tanstack.d.ts +32 -0
  101. package/dist/libraries/backend/tanstack.js +2384 -0
  102. package/dist/libraries/backend/tanstack.mjs +83 -0
  103. package/dist/libraries/backend/utils/AuthFunction.d.mts +9 -0
  104. package/dist/libraries/backend/utils/AuthFunction.d.ts +9 -0
  105. package/dist/libraries/backend/utils/AuthFunction.js +18 -0
  106. package/dist/libraries/backend/utils/AuthFunction.mjs +0 -0
  107. package/dist/libraries/backend/utils/backendRes.d.mts +19 -0
  108. package/dist/libraries/backend/utils/backendRes.d.ts +19 -0
  109. package/dist/libraries/backend/utils/backendRes.js +1791 -0
  110. package/dist/libraries/backend/utils/backendRes.mjs +10 -0
  111. package/dist/libraries/backend/utils/betterAuth/middlewares.d.mts +26 -0
  112. package/dist/libraries/backend/utils/betterAuth/middlewares.d.ts +26 -0
  113. package/dist/libraries/backend/utils/betterAuth/middlewares.js +130 -0
  114. package/dist/libraries/backend/utils/betterAuth/middlewares.mjs +10 -0
  115. package/dist/libraries/backend/utils/betterAuth/types.d.mts +19 -0
  116. package/dist/libraries/backend/utils/betterAuth/types.d.ts +19 -0
  117. package/dist/libraries/backend/utils/betterAuth/types.js +18 -0
  118. package/dist/libraries/backend/utils/betterAuth/types.mjs +0 -0
  119. package/dist/libraries/backend/utils/logBackendErrors.d.mts +5 -0
  120. package/dist/libraries/backend/utils/logBackendErrors.d.ts +5 -0
  121. package/dist/libraries/backend/utils/logBackendErrors.js +73 -0
  122. package/dist/libraries/backend/utils/logBackendErrors.mjs +13 -0
  123. package/dist/libraries/backend/utils/secretKeyCheck.d.mts +13 -0
  124. package/dist/libraries/backend/utils/secretKeyCheck.d.ts +13 -0
  125. package/dist/libraries/backend/utils/secretKeyCheck.js +42 -0
  126. package/dist/libraries/backend/utils/secretKeyCheck.mjs +6 -0
  127. package/dist/libraries/backend/utils/withAuth.d.mts +29 -0
  128. package/dist/libraries/backend/utils/withAuth.d.ts +29 -0
  129. package/dist/libraries/backend/utils/withAuth.js +1892 -0
  130. package/dist/libraries/backend/utils/withAuth.mjs +9 -0
  131. package/dist/libraries/react/AutumnContext.d.mts +34 -0
  132. package/dist/libraries/react/AutumnContext.d.ts +34 -0
  133. package/dist/libraries/react/AutumnContext.js +2162 -0
  134. package/dist/libraries/react/AutumnContext.mjs +20 -0
  135. package/dist/libraries/react/BaseAutumnProvider.d.mts +18 -0
  136. package/dist/libraries/react/BaseAutumnProvider.d.ts +18 -0
  137. package/dist/libraries/react/BaseAutumnProvider.js +2833 -0
  138. package/dist/libraries/react/BaseAutumnProvider.mjs +25 -0
  139. package/dist/libraries/react/ReactAutumnClient-BJzchCM3.d.ts +304 -0
  140. package/dist/libraries/react/ReactAutumnClient-Cc2rjUsz.d.mts +304 -0
  141. package/dist/libraries/react/ReactAutumnProvider.d.mts +20 -0
  142. package/dist/libraries/react/ReactAutumnProvider.d.ts +20 -0
  143. package/dist/libraries/react/ReactAutumnProvider.js +3229 -0
  144. package/dist/libraries/react/ReactAutumnProvider.mjs +26 -0
  145. package/dist/libraries/react/attachTypes-BNlJ6XXa.d.mts +69 -0
  146. package/dist/libraries/react/attachTypes-eg914-6v.d.ts +69 -0
  147. package/dist/libraries/react/chunk-2ZZJUGBO.mjs +138 -0
  148. package/dist/libraries/react/chunk-4J2T27L6.mjs +99 -0
  149. package/dist/libraries/react/chunk-4J6OC4ZQ.mjs +2532 -0
  150. package/dist/libraries/react/chunk-6EXNYWJX.mjs +67 -0
  151. package/dist/libraries/react/chunk-736TFHSL.mjs +18 -0
  152. package/dist/libraries/react/chunk-ACRIHVEO.mjs +134 -0
  153. package/dist/libraries/react/chunk-ACSLCOHZ.mjs +198 -0
  154. package/dist/libraries/react/chunk-BGOD72CO.mjs +20 -0
  155. package/dist/libraries/react/chunk-BLM4DAAR.mjs +158 -0
  156. package/dist/libraries/react/chunk-BVK3DYFG.mjs +157 -0
  157. package/dist/libraries/react/chunk-CIBQ4BJU.mjs +19 -0
  158. package/dist/libraries/react/chunk-CSHDMTUY.mjs +52 -0
  159. package/dist/libraries/react/chunk-D2TXVOAD.mjs +50 -0
  160. package/dist/libraries/react/chunk-EAZME3W6.mjs +89 -0
  161. package/dist/libraries/react/chunk-FDURBIAI.mjs +2520 -0
  162. package/dist/libraries/react/chunk-FK5QRKSW.mjs +747 -0
  163. package/dist/libraries/react/chunk-GUM4HIGI.mjs +30 -0
  164. package/dist/libraries/react/chunk-I5ZGIAIX.mjs +57 -0
  165. package/dist/libraries/react/chunk-IKJYNTI5.mjs +1335 -0
  166. package/dist/libraries/react/chunk-J24P6YUI.mjs +25 -0
  167. package/dist/libraries/react/chunk-JNGOZQHP.mjs +62 -0
  168. package/dist/libraries/react/chunk-JVCOY7ZL.mjs +22 -0
  169. package/dist/libraries/react/chunk-KEGHYZMH.mjs +584 -0
  170. package/dist/libraries/react/chunk-LDGZ322L.mjs +92 -0
  171. package/dist/libraries/react/chunk-MPAPGILW.mjs +360 -0
  172. package/dist/libraries/react/chunk-NBCD7YQN.mjs +151 -0
  173. package/dist/libraries/react/chunk-OO5IBU2P.mjs +67 -0
  174. package/dist/libraries/react/chunk-OYBOLAL5.mjs +31 -0
  175. package/dist/libraries/react/chunk-Q24L3UDQ.mjs +206 -0
  176. package/dist/libraries/react/chunk-R4I7MVEX.mjs +46 -0
  177. package/dist/libraries/react/chunk-RFSQBGLO.mjs +21 -0
  178. package/dist/libraries/react/chunk-SGEO7BFC.mjs +44 -0
  179. package/dist/libraries/react/chunk-SUENW2KS.mjs +17 -0
  180. package/dist/libraries/react/chunk-TI73WOTR.mjs +256 -0
  181. package/dist/libraries/react/chunk-URQMBRFZ.mjs +62 -0
  182. package/dist/libraries/react/chunk-V575SGOW.mjs +12 -0
  183. package/dist/libraries/react/chunk-VPW2CMGB.mjs +165 -0
  184. package/dist/libraries/react/chunk-WA7QZHL5.mjs +101 -0
  185. package/dist/libraries/react/chunk-WFFVOEUG.mjs +15 -0
  186. package/dist/libraries/react/chunk-WVKYZYFT.mjs +37 -0
  187. package/dist/libraries/react/chunk-XDQLJ7QR.mjs +17 -0
  188. package/dist/libraries/react/chunk-XGG7IZUQ.mjs +218 -0
  189. package/dist/libraries/react/chunk-ZBHCIMJH.mjs +448 -0
  190. package/dist/libraries/react/chunk-ZJPIZX24.mjs +1736 -0
  191. package/dist/libraries/react/chunk-ZPW4DL3O.mjs +96 -0
  192. package/dist/libraries/react/client/ConvexAutumnClient.d.mts +77 -0
  193. package/dist/libraries/react/client/ConvexAutumnClient.d.ts +77 -0
  194. package/dist/libraries/react/client/ConvexAutumnClient.js +2119 -0
  195. package/dist/libraries/react/client/ConvexAutumnClient.mjs +9 -0
  196. package/dist/libraries/react/client/ReactAutumnClient.d.mts +9 -0
  197. package/dist/libraries/react/client/ReactAutumnClient.d.ts +9 -0
  198. package/dist/libraries/react/client/ReactAutumnClient.js +2120 -0
  199. package/dist/libraries/react/client/ReactAutumnClient.mjs +17 -0
  200. package/dist/libraries/react/client/clientAnalyticsMethods.d.mts +14 -0
  201. package/dist/libraries/react/client/clientAnalyticsMethods.d.ts +14 -0
  202. package/dist/libraries/react/client/clientAnalyticsMethods.js +41 -0
  203. package/dist/libraries/react/client/clientAnalyticsMethods.mjs +10 -0
  204. package/dist/libraries/react/client/clientCompMethods.d.mts +33 -0
  205. package/dist/libraries/react/client/clientCompMethods.d.ts +33 -0
  206. package/dist/libraries/react/client/clientCompMethods.js +35 -0
  207. package/dist/libraries/react/client/clientCompMethods.mjs +11 -0
  208. package/dist/libraries/react/client/clientCusMethods.d.mts +16 -0
  209. package/dist/libraries/react/client/clientCusMethods.d.ts +16 -0
  210. package/dist/libraries/react/client/clientCusMethods.js +38 -0
  211. package/dist/libraries/react/client/clientCusMethods.mjs +8 -0
  212. package/dist/libraries/react/client/clientEntityMethods.d.mts +16 -0
  213. package/dist/libraries/react/client/clientEntityMethods.d.ts +16 -0
  214. package/dist/libraries/react/client/clientEntityMethods.js +58 -0
  215. package/dist/libraries/react/client/clientEntityMethods.mjs +12 -0
  216. package/dist/libraries/react/client/clientGenMethods.d.mts +22 -0
  217. package/dist/libraries/react/client/clientGenMethods.d.ts +22 -0
  218. package/dist/libraries/react/client/clientGenMethods.js +97 -0
  219. package/dist/libraries/react/client/clientGenMethods.mjs +22 -0
  220. package/dist/libraries/react/client/clientProdMethods.d.mts +15 -0
  221. package/dist/libraries/react/client/clientProdMethods.d.ts +15 -0
  222. package/dist/libraries/react/client/clientProdMethods.js +35 -0
  223. package/dist/libraries/react/client/clientProdMethods.mjs +8 -0
  224. package/dist/libraries/react/client/clientReferralMethods.d.mts +15 -0
  225. package/dist/libraries/react/client/clientReferralMethods.d.ts +15 -0
  226. package/dist/libraries/react/client/clientReferralMethods.js +41 -0
  227. package/dist/libraries/react/client/clientReferralMethods.mjs +10 -0
  228. package/dist/libraries/react/client/types/clientAnalyticsTypes.d.mts +78 -0
  229. package/dist/libraries/react/client/types/clientAnalyticsTypes.d.ts +78 -0
  230. package/dist/libraries/react/client/types/clientAnalyticsTypes.js +92 -0
  231. package/dist/libraries/react/client/types/clientAnalyticsTypes.mjs +62 -0
  232. package/dist/libraries/react/client/types/clientAttachTypes.d.mts +48 -0
  233. package/dist/libraries/react/client/types/clientAttachTypes.d.ts +48 -0
  234. package/dist/libraries/react/client/types/clientAttachTypes.js +76 -0
  235. package/dist/libraries/react/client/types/clientAttachTypes.mjs +50 -0
  236. package/dist/libraries/react/client/types/clientCusTypes.d.mts +5 -0
  237. package/dist/libraries/react/client/types/clientCusTypes.d.ts +5 -0
  238. package/dist/libraries/react/client/types/clientCusTypes.js +20 -0
  239. package/dist/libraries/react/client/types/clientCusTypes.mjs +2 -0
  240. package/dist/libraries/react/client/types/clientEntTypes.d.mts +19 -0
  241. package/dist/libraries/react/client/types/clientEntTypes.d.ts +19 -0
  242. package/dist/libraries/react/client/types/clientEntTypes.js +48 -0
  243. package/dist/libraries/react/client/types/clientEntTypes.mjs +22 -0
  244. package/dist/libraries/react/client/types/clientGenTypes.d.mts +56 -0
  245. package/dist/libraries/react/client/types/clientGenTypes.d.ts +56 -0
  246. package/dist/libraries/react/client/types/clientGenTypes.js +1819 -0
  247. package/dist/libraries/react/client/types/clientGenTypes.mjs +54 -0
  248. package/dist/libraries/react/client/types/clientPricingTableTypes.d.mts +20 -0
  249. package/dist/libraries/react/client/types/clientPricingTableTypes.d.ts +20 -0
  250. package/dist/libraries/react/client/types/clientPricingTableTypes.js +20 -0
  251. package/dist/libraries/react/client/types/clientPricingTableTypes.mjs +2 -0
  252. package/dist/libraries/react/client/types/clientProdTypes.d.mts +5 -0
  253. package/dist/libraries/react/client/types/clientProdTypes.d.ts +5 -0
  254. package/dist/libraries/react/client/types/clientProdTypes.js +20 -0
  255. package/dist/libraries/react/client/types/clientProdTypes.mjs +2 -0
  256. package/dist/libraries/react/client/types/clientReferralTypes.d.mts +12 -0
  257. package/dist/libraries/react/client/types/clientReferralTypes.d.ts +12 -0
  258. package/dist/libraries/react/client/types/clientReferralTypes.js +40 -0
  259. package/dist/libraries/react/client/types/clientReferralTypes.mjs +15 -0
  260. package/dist/libraries/react/client/types/responseTypes.d.mts +2 -0
  261. package/dist/libraries/react/client/types/responseTypes.d.ts +2 -0
  262. package/dist/libraries/react/client/types/responseTypes.js +3 -0
  263. package/dist/libraries/react/client/types/responseTypes.mjs +2 -0
  264. package/dist/libraries/react/components/checkout-dialog/checkout-dialog-synced.css +1460 -0
  265. package/dist/libraries/react/components/checkout-dialog/checkout-dialog-synced.d.mts +25 -0
  266. package/dist/libraries/react/components/checkout-dialog/checkout-dialog-synced.d.ts +25 -0
  267. package/dist/libraries/react/components/checkout-dialog/checkout-dialog-synced.js +11543 -0
  268. package/dist/libraries/react/components/checkout-dialog/checkout-dialog-synced.mjs +57 -0
  269. package/dist/libraries/react/components/checkout-dialog/lib/checkout-content.d.mts +11 -0
  270. package/dist/libraries/react/components/checkout-dialog/lib/checkout-content.d.ts +11 -0
  271. package/dist/libraries/react/components/checkout-dialog/lib/checkout-content.js +181 -0
  272. package/dist/libraries/react/components/checkout-dialog/lib/checkout-content.mjs +8 -0
  273. package/dist/libraries/react/components/paywall-dialog/lib/paywall-content.d.mts +9 -0
  274. package/dist/libraries/react/components/paywall-dialog/lib/paywall-content.d.ts +9 -0
  275. package/dist/libraries/react/components/paywall-dialog/lib/paywall-content.js +80 -0
  276. package/dist/libraries/react/components/paywall-dialog/lib/paywall-content.mjs +8 -0
  277. package/dist/libraries/react/components/paywall-dialog/paywall-dialog-synced.css +1460 -0
  278. package/dist/libraries/react/components/paywall-dialog/paywall-dialog-synced.d.mts +11 -0
  279. package/dist/libraries/react/components/paywall-dialog/paywall-dialog-synced.d.ts +11 -0
  280. package/dist/libraries/react/components/paywall-dialog/paywall-dialog-synced.js +10566 -0
  281. package/dist/libraries/react/components/paywall-dialog/paywall-dialog-synced.mjs +53 -0
  282. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.mts +9 -0
  283. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.ts +9 -0
  284. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.js +85 -0
  285. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.mjs +8 -0
  286. package/dist/libraries/react/components/pricing-table/pricing-table-synced.css +1460 -0
  287. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +52 -0
  288. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +52 -0
  289. package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +11834 -0
  290. package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +66 -0
  291. package/dist/libraries/react/components/ui/accordion.d.mts +15 -0
  292. package/dist/libraries/react/components/ui/accordion.d.ts +15 -0
  293. package/dist/libraries/react/components/ui/accordion.js +3679 -0
  294. package/dist/libraries/react/components/ui/accordion.mjs +19 -0
  295. package/dist/libraries/react/components/ui/button.d.mts +11 -0
  296. package/dist/libraries/react/components/ui/button.d.ts +11 -0
  297. package/dist/libraries/react/components/ui/button.js +2776 -0
  298. package/dist/libraries/react/components/ui/button.mjs +12 -0
  299. package/dist/libraries/react/components/ui/dialog.d.mts +29 -0
  300. package/dist/libraries/react/components/ui/dialog.d.ts +29 -0
  301. package/dist/libraries/react/components/ui/dialog.js +4880 -0
  302. package/dist/libraries/react/components/ui/dialog.mjs +33 -0
  303. package/dist/libraries/react/components/ui/input.d.mts +5 -0
  304. package/dist/libraries/react/components/ui/input.d.ts +5 -0
  305. package/dist/libraries/react/components/ui/input.js +2587 -0
  306. package/dist/libraries/react/components/ui/input.mjs +9 -0
  307. package/dist/libraries/react/components/ui/popover.d.mts +11 -0
  308. package/dist/libraries/react/components/ui/popover.d.ts +11 -0
  309. package/dist/libraries/react/components/ui/popover.js +6852 -0
  310. package/dist/libraries/react/components/ui/popover.mjs +20 -0
  311. package/dist/libraries/react/components/ui/switch.d.mts +8 -0
  312. package/dist/libraries/react/components/ui/switch.d.ts +8 -0
  313. package/dist/libraries/react/components/ui/switch.js +3096 -0
  314. package/dist/libraries/react/components/ui/switch.mjs +13 -0
  315. package/dist/libraries/react/cusTypes-CfdKzRo3.d.mts +210 -0
  316. package/dist/libraries/react/cusTypes-CmjJWspY.d.ts +210 -0
  317. package/dist/libraries/react/error-DHbclCVh.d.mts +17 -0
  318. package/dist/libraries/react/error-DHbclCVh.d.ts +17 -0
  319. package/dist/libraries/react/errorUtils/logAuthError.d.mts +3 -0
  320. package/dist/libraries/react/errorUtils/logAuthError.d.ts +3 -0
  321. package/dist/libraries/react/errorUtils/logAuthError.js +45 -0
  322. package/dist/libraries/react/errorUtils/logAuthError.mjs +8 -0
  323. package/dist/libraries/react/errorUtils/logFetchError.d.mts +8 -0
  324. package/dist/libraries/react/errorUtils/logFetchError.d.ts +8 -0
  325. package/dist/libraries/react/errorUtils/logFetchError.js +42 -0
  326. package/dist/libraries/react/errorUtils/logFetchError.mjs +8 -0
  327. package/dist/libraries/react/eventTypes-5iJYcv30.d.mts +26 -0
  328. package/dist/libraries/react/eventTypes-5iJYcv30.d.ts +26 -0
  329. package/dist/libraries/react/genTypes-BouhbtKm.d.ts +24 -0
  330. package/dist/libraries/react/genTypes-DT5O0rCP.d.mts +24 -0
  331. package/dist/libraries/react/hooks/helpers/handleCheck.d.mts +34 -0
  332. package/dist/libraries/react/hooks/helpers/handleCheck.d.ts +34 -0
  333. package/dist/libraries/react/hooks/helpers/handleCheck.js +1917 -0
  334. package/dist/libraries/react/hooks/helpers/handleCheck.mjs +11 -0
  335. package/dist/libraries/react/hooks/helpers/useAutumnBase.d.mts +32 -0
  336. package/dist/libraries/react/hooks/helpers/useAutumnBase.d.ts +32 -0
  337. package/dist/libraries/react/hooks/helpers/useAutumnBase.js +2115 -0
  338. package/dist/libraries/react/hooks/helpers/useAutumnBase.mjs +10 -0
  339. package/dist/libraries/react/hooks/helpers/useDialog.d.mts +3 -0
  340. package/dist/libraries/react/hooks/helpers/useDialog.d.ts +3 -0
  341. package/dist/libraries/react/hooks/helpers/useDialog.js +44 -0
  342. package/dist/libraries/react/hooks/helpers/useDialog.mjs +8 -0
  343. package/dist/libraries/react/hooks/useAggregateEvents.d.mts +20 -0
  344. package/dist/libraries/react/hooks/useAggregateEvents.d.ts +20 -0
  345. package/dist/libraries/react/hooks/useAggregateEvents.js +2216 -0
  346. package/dist/libraries/react/hooks/useAggregateEvents.mjs +19 -0
  347. package/dist/libraries/react/hooks/useAnalytics.d.mts +21 -0
  348. package/dist/libraries/react/hooks/useAnalytics.d.ts +21 -0
  349. package/dist/libraries/react/hooks/useAnalytics.js +2201 -0
  350. package/dist/libraries/react/hooks/useAnalytics.mjs +19 -0
  351. package/dist/libraries/react/hooks/useCustomer.d.mts +89 -0
  352. package/dist/libraries/react/hooks/useCustomer.d.ts +89 -0
  353. package/dist/libraries/react/hooks/useCustomer.js +2738 -0
  354. package/dist/libraries/react/hooks/useCustomer.mjs +23 -0
  355. package/dist/libraries/react/hooks/useCustomerBase.d.mts +91 -0
  356. package/dist/libraries/react/hooks/useCustomerBase.d.ts +91 -0
  357. package/dist/libraries/react/hooks/useCustomerBase.js +2728 -0
  358. package/dist/libraries/react/hooks/useCustomerBase.mjs +22 -0
  359. package/dist/libraries/react/hooks/useEntity.d.mts +30 -0
  360. package/dist/libraries/react/hooks/useEntity.d.ts +30 -0
  361. package/dist/libraries/react/hooks/useEntity.js +2740 -0
  362. package/dist/libraries/react/hooks/useEntity.mjs +23 -0
  363. package/dist/libraries/react/hooks/useEntityBase.d.mts +39 -0
  364. package/dist/libraries/react/hooks/useEntityBase.d.ts +39 -0
  365. package/dist/libraries/react/hooks/useEntityBase.js +2732 -0
  366. package/dist/libraries/react/hooks/useEntityBase.mjs +22 -0
  367. package/dist/libraries/react/hooks/useListEvents.d.mts +43 -0
  368. package/dist/libraries/react/hooks/useListEvents.d.ts +43 -0
  369. package/dist/libraries/react/hooks/useListEvents.js +2238 -0
  370. package/dist/libraries/react/hooks/useListEvents.mjs +19 -0
  371. package/dist/libraries/react/hooks/usePaywall.d.mts +13 -0
  372. package/dist/libraries/react/hooks/usePaywall.d.ts +13 -0
  373. package/dist/libraries/react/hooks/usePaywall.js +2194 -0
  374. package/dist/libraries/react/hooks/usePaywall.mjs +19 -0
  375. package/dist/libraries/react/hooks/usePricingTable.d.mts +15 -0
  376. package/dist/libraries/react/hooks/usePricingTable.d.ts +15 -0
  377. package/dist/libraries/react/hooks/usePricingTable.js +2363 -0
  378. package/dist/libraries/react/hooks/usePricingTable.mjs +20 -0
  379. package/dist/libraries/react/hooks/usePricingTableBase.d.mts +25 -0
  380. package/dist/libraries/react/hooks/usePricingTableBase.d.ts +25 -0
  381. package/dist/libraries/react/hooks/usePricingTableBase.js +1957 -0
  382. package/dist/libraries/react/hooks/usePricingTableBase.mjs +9 -0
  383. package/dist/libraries/react/hooks/useProductsBase.d.mts +19 -0
  384. package/dist/libraries/react/hooks/useProductsBase.d.ts +19 -0
  385. package/dist/libraries/react/hooks/useProductsBase.js +55 -0
  386. package/dist/libraries/react/hooks/useProductsBase.mjs +21 -0
  387. package/dist/libraries/react/index.d.mts +951 -0
  388. package/dist/libraries/react/index.d.ts +951 -0
  389. package/dist/libraries/react/index.js +12709 -0
  390. package/dist/libraries/react/index.mjs +12662 -0
  391. package/dist/libraries/react/lib/utils.d.mts +5 -0
  392. package/dist/libraries/react/lib/utils.d.ts +5 -0
  393. package/dist/libraries/react/lib/utils.js +2556 -0
  394. package/dist/libraries/react/lib/utils.mjs +8 -0
  395. package/dist/libraries/react/prodTypes-C4aZSZfO.d.mts +171 -0
  396. package/dist/libraries/react/prodTypes-C4aZSZfO.d.ts +171 -0
  397. package/dist/libraries/react/utils/compareParams.d.mts +3 -0
  398. package/dist/libraries/react/utils/compareParams.d.ts +3 -0
  399. package/dist/libraries/react/utils/compareParams.js +47 -0
  400. package/dist/libraries/react/utils/compareParams.mjs +23 -0
  401. package/dist/libraries/react/utils/errorUtils.d.mts +20 -0
  402. package/dist/libraries/react/utils/errorUtils.d.ts +20 -0
  403. package/dist/libraries/react/utils/errorUtils.js +61 -0
  404. package/dist/libraries/react/utils/errorUtils.mjs +36 -0
  405. package/dist/libraries/react/utils/inject-styles.d.mts +4 -0
  406. package/dist/libraries/react/utils/inject-styles.d.ts +4 -0
  407. package/dist/libraries/react/utils/inject-styles.js +61 -0
  408. package/dist/libraries/react/utils/inject-styles.mjs +10 -0
  409. package/dist/next/AutumnProvider.d.mts +30 -0
  410. package/dist/next/AutumnProvider.d.ts +30 -0
  411. package/dist/next/AutumnProvider.js +68 -0
  412. package/dist/next/AutumnProvider.mjs +44 -0
  413. package/dist/next/client/AutumnClientProvider.d.mts +2 -0
  414. package/dist/next/client/AutumnClientProvider.d.ts +2 -0
  415. package/dist/next/client/AutumnClientProvider.js +2 -0
  416. package/dist/next/client/AutumnClientProvider.mjs +2 -0
  417. package/dist/next/client/NextAutumnClient.d.mts +375 -0
  418. package/dist/next/client/NextAutumnClient.d.ts +375 -0
  419. package/dist/next/client/NextAutumnClient.js +107 -0
  420. package/dist/next/client/NextAutumnClient.mjs +107 -0
  421. package/dist/next/client/NextAutumnProvider.d.mts +13 -0
  422. package/dist/next/client/NextAutumnProvider.d.ts +13 -0
  423. package/dist/next/client/NextAutumnProvider.js +23 -0
  424. package/dist/next/client/NextAutumnProvider.mjs +23 -0
  425. package/dist/next/client/clientAttachTypes-CZ0FmsbF.d.mts +104 -0
  426. package/dist/next/client/clientAttachTypes-Dczm087t.d.ts +104 -0
  427. package/dist/next/client/clientEntTypes-CeaZbrIq.d.ts +73 -0
  428. package/dist/next/client/clientEntTypes-jltPLNQ5.d.mts +73 -0
  429. package/dist/next/client/clientUtils.d.mts +18 -0
  430. package/dist/next/client/clientUtils.d.ts +18 -0
  431. package/dist/next/client/clientUtils.js +72 -0
  432. package/dist/next/client/clientUtils.mjs +72 -0
  433. package/dist/next/client/cusTypes-BgJmgZt6.d.ts +215 -0
  434. package/dist/next/client/cusTypes-BngiltFz.d.mts +215 -0
  435. package/dist/next/client/error-DHbclCVh.d.mts +17 -0
  436. package/dist/next/client/error-DHbclCVh.d.ts +17 -0
  437. package/dist/next/client/hooks/useAutumn.d.mts +20 -0
  438. package/dist/next/client/hooks/useAutumn.d.ts +20 -0
  439. package/dist/next/client/hooks/useAutumn.js +17 -0
  440. package/dist/next/client/hooks/useAutumn.mjs +17 -0
  441. package/dist/next/client/hooks/useCustomer.d.mts +89 -0
  442. package/dist/next/client/hooks/useCustomer.d.ts +89 -0
  443. package/dist/next/client/hooks/useCustomer.js +15 -0
  444. package/dist/next/client/hooks/useCustomer.mjs +15 -0
  445. package/dist/next/client/hooks/useEntity.d.mts +27 -0
  446. package/dist/next/client/hooks/useEntity.d.ts +27 -0
  447. package/dist/next/client/hooks/useEntity.js +11 -0
  448. package/dist/next/client/hooks/useEntity.mjs +11 -0
  449. package/dist/next/client/hooks/usePricingTable.d.mts +33 -0
  450. package/dist/next/client/hooks/usePricingTable.d.ts +33 -0
  451. package/dist/next/client/hooks/usePricingTable.js +14 -0
  452. package/dist/next/client/hooks/usePricingTable.mjs +14 -0
  453. package/dist/next/client/prodTypes-G6W3NUPg.d.mts +162 -0
  454. package/dist/next/client/prodTypes-G6W3NUPg.d.ts +162 -0
  455. package/dist/next/client/response-CLgEplsF.d.ts +16 -0
  456. package/dist/next/client/response-DKQ_cb7U.d.mts +16 -0
  457. package/dist/next/client/types.d.mts +74 -0
  458. package/dist/next/client/types.d.ts +74 -0
  459. package/dist/next/client/types.js +21 -0
  460. package/dist/next/client/types.mjs +21 -0
  461. package/dist/next/enums.d.mts +5 -0
  462. package/dist/next/enums.d.ts +5 -0
  463. package/dist/next/enums.js +31 -0
  464. package/dist/next/enums.mjs +7 -0
  465. package/dist/next/index.d.mts +19 -0
  466. package/dist/next/index.d.ts +19 -0
  467. package/dist/next/index.js +22 -0
  468. package/dist/next/index.mjs +1 -0
  469. package/dist/next/server/auth/authPlugin.d.mts +13 -0
  470. package/dist/next/server/auth/authPlugin.d.ts +13 -0
  471. package/dist/next/server/auth/authPlugin.js +11 -0
  472. package/dist/next/server/auth/authPlugin.mjs +11 -0
  473. package/dist/next/server/auth/clerk-wrapper.d.mts +3 -0
  474. package/dist/next/server/auth/clerk-wrapper.d.ts +3 -0
  475. package/dist/next/server/auth/clerk-wrapper.js +22 -0
  476. package/dist/next/server/auth/clerk-wrapper.mjs +22 -0
  477. package/dist/next/server/auth/get-next-headers.d.mts +6 -0
  478. package/dist/next/server/auth/get-next-headers.d.ts +6 -0
  479. package/dist/next/server/auth/get-next-headers.js +18 -0
  480. package/dist/next/server/auth/get-next-headers.mjs +18 -0
  481. package/dist/next/server/auth/handleAuthProvider.d.mts +44 -0
  482. package/dist/next/server/auth/handleAuthProvider.d.ts +44 -0
  483. package/dist/next/server/auth/handleAuthProvider.js +179 -0
  484. package/dist/next/server/auth/handleAuthProvider.mjs +179 -0
  485. package/dist/next/server/auth/supabase-wrapper.d.mts +3 -0
  486. package/dist/next/server/auth/supabase-wrapper.d.ts +3 -0
  487. package/dist/next/server/auth/supabase-wrapper.js +45 -0
  488. package/dist/next/server/auth/supabase-wrapper.mjs +45 -0
  489. package/dist/next/server/auth/withNextAuth.d.mts +16 -0
  490. package/dist/next/server/auth/withNextAuth.d.ts +16 -0
  491. package/dist/next/server/auth/withNextAuth.js +42 -0
  492. package/dist/next/server/auth/withNextAuth.mjs +42 -0
  493. package/dist/next/server/componentActions.d.mts +12 -0
  494. package/dist/next/server/componentActions.d.ts +12 -0
  495. package/dist/next/server/componentActions.js +21 -0
  496. package/dist/next/server/componentActions.mjs +21 -0
  497. package/dist/next/server/cusActions.d.mts +1421 -0
  498. package/dist/next/server/cusActions.d.ts +1421 -0
  499. package/dist/next/server/cusActions.js +70 -0
  500. package/dist/next/server/cusActions.mjs +70 -0
  501. package/dist/next/server/cusTypes-C7g7DT5P.d.mts +444 -0
  502. package/dist/next/server/cusTypes-C7g7DT5P.d.ts +444 -0
  503. package/dist/next/server/genActions.d.mts +86 -0
  504. package/dist/next/server/genActions.d.ts +86 -0
  505. package/dist/next/server/genActions.js +90 -0
  506. package/dist/next/server/genActions.mjs +90 -0
  507. package/dist/next/server/response-Bal_cFRb.d.mts +30 -0
  508. package/dist/next/server/response-Bal_cFRb.d.ts +30 -0
  509. package/dist/next/server/utils.d.mts +5 -0
  510. package/dist/next/server/utils.d.ts +5 -0
  511. package/dist/next/server/utils.js +16 -0
  512. package/dist/next/server/utils.mjs +16 -0
  513. package/dist/sdk/index.d.mts +2859 -0
  514. package/dist/sdk/index.d.ts +2859 -0
  515. package/dist/sdk/index.js +1832 -0
  516. package/dist/sdk/index.mjs +1742 -0
  517. package/dist/styles/global.css +1498 -0
  518. package/dist/utils/chunk-EG37DNU2.mjs +40 -0
  519. package/dist/utils/encryptUtils.d.mts +4 -0
  520. package/dist/utils/encryptUtils.d.ts +4 -0
  521. package/dist/utils/encryptUtils.js +1811 -0
  522. package/dist/utils/encryptUtils.mjs +1742 -0
  523. package/dist/utils/entityUtils.d.mts +3 -0
  524. package/dist/utils/entityUtils.d.ts +3 -0
  525. package/dist/utils/entityUtils.js +35 -0
  526. package/dist/utils/entityUtils.mjs +10 -0
  527. package/dist/utils/logger.d.mts +45 -0
  528. package/dist/utils/logger.d.ts +45 -0
  529. package/dist/utils/logger.js +64 -0
  530. package/dist/utils/logger.mjs +6 -0
  531. package/dist/utils/toSnakeCase.d.mts +7 -0
  532. package/dist/utils/toSnakeCase.d.ts +7 -0
  533. package/dist/utils/toSnakeCase.js +64 -0
  534. package/dist/utils/toSnakeCase.mjs +39 -0
  535. package/package.json +201 -0
  536. package/tsup.config.ts +213 -0
@@ -0,0 +1,2115 @@
1
+ "use client";
2
+
3
+ "use strict";
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __export = (target, all) => {
11
+ for (var name in all)
12
+ __defProp(target, name, { get: all[name], enumerable: true });
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
28
+ mod
29
+ ));
30
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
31
+
32
+ // src/libraries/react/hooks/helpers/useAutumnBase.tsx
33
+ var useAutumnBase_exports = {};
34
+ __export(useAutumnBase_exports, {
35
+ useAutumnBase: () => useAutumnBase
36
+ });
37
+ module.exports = __toCommonJS(useAutumnBase_exports);
38
+
39
+ // src/libraries/react/hooks/usePricingTableBase.tsx
40
+ var import_swr = __toESM(require("swr"));
41
+
42
+ // src/libraries/backend/constants.ts
43
+ var autumnApiUrl = "https://api.useautumn.com/v1";
44
+
45
+ // src/utils/logger.ts
46
+ var getTime = () => {
47
+ const timeString = (/* @__PURE__ */ new Date()).toISOString();
48
+ return `[${timeString.split("T")[1].split(".")[0]}]`;
49
+ };
50
+ var greaterThanLevel = (level) => {
51
+ return levels.indexOf(level) >= levels.indexOf(logger.level);
52
+ };
53
+ var levels = ["debug", "info", "warn", "error", "fatal"];
54
+ var logger = {
55
+ ...console,
56
+ level: "info",
57
+ debug: (...args) => {
58
+ if (greaterThanLevel("debug")) {
59
+ console.log(getTime(), "DEBUG", ...args);
60
+ }
61
+ },
62
+ log: (...args) => {
63
+ console.log(getTime(), "INFO", ...args);
64
+ },
65
+ info: (...args) => {
66
+ if (greaterThanLevel("info")) {
67
+ console.log(getTime(), "INFO", ...args);
68
+ }
69
+ },
70
+ warn: (...args) => {
71
+ if (greaterThanLevel("warn")) {
72
+ console.log(getTime(), "WARN", ...args);
73
+ }
74
+ },
75
+ error: (...args) => {
76
+ if (greaterThanLevel("error")) {
77
+ console.log(getTime(), "ERROR", ...args);
78
+ }
79
+ }
80
+ };
81
+
82
+ // src/sdk/utils.ts
83
+ var import_query_string = __toESM(require("query-string"));
84
+ var staticWrapper = (callback, instance, args) => {
85
+ if (!instance) {
86
+ instance = new Autumn();
87
+ }
88
+ return callback({ instance, ...args });
89
+ };
90
+ var buildQueryString = (params) => {
91
+ if (!params) return "";
92
+ return import_query_string.default.stringify(params, {
93
+ skipNull: true,
94
+ skipEmptyString: true
95
+ });
96
+ };
97
+ var buildPathWithQuery = (basePath, params) => {
98
+ const query = buildQueryString(params);
99
+ return query ? `${basePath}?${query}` : basePath;
100
+ };
101
+
102
+ // src/sdk/balances/balancesMethods.ts
103
+ var balanceMethods = (instance) => {
104
+ return {
105
+ create: (params) => staticWrapper(handleCreateBalance, instance, { params })
106
+ };
107
+ };
108
+ var handleCreateBalance = async ({
109
+ instance,
110
+ params
111
+ }) => {
112
+ return instance.post("/balances/create", params);
113
+ };
114
+
115
+ // src/sdk/error.ts
116
+ var AutumnError = class _AutumnError extends Error {
117
+ message;
118
+ code;
119
+ constructor(response) {
120
+ super(response.message);
121
+ this.message = response.message;
122
+ this.code = response.code;
123
+ }
124
+ static fromError(error) {
125
+ return new _AutumnError({
126
+ message: error.message || "Unknown error",
127
+ code: error.code || "unknown_error"
128
+ });
129
+ }
130
+ toString() {
131
+ return `${this.message} (code: ${this.code})`;
132
+ }
133
+ toJSON() {
134
+ return {
135
+ message: this.message,
136
+ code: this.code
137
+ };
138
+ }
139
+ };
140
+
141
+ // src/sdk/customers/cusMethods.ts
142
+ var customerMethods = (instance) => {
143
+ return {
144
+ list: (params) => staticWrapper(listCustomers, instance, { params }),
145
+ get: (id, params) => staticWrapper(getCustomer, instance, { id, params }),
146
+ create: (params) => staticWrapper(createCustomer, instance, { params }),
147
+ update: (id, params) => staticWrapper(updateCustomer, instance, { id, params }),
148
+ delete: (id, params) => staticWrapper(deleteCustomer, instance, { id, params }),
149
+ billingPortal: (id, params) => staticWrapper(billingPortal, instance, { id, params }),
150
+ updateBalances: (id, params) => staticWrapper(updateBalances, instance, { id, params })
151
+ };
152
+ };
153
+ var getExpandStr = (expand) => {
154
+ if (!expand) {
155
+ return "";
156
+ }
157
+ return `expand=${expand.join(",")}`;
158
+ };
159
+ var listCustomers = async ({
160
+ instance,
161
+ params
162
+ }) => {
163
+ const path = buildPathWithQuery("/customers", params);
164
+ return instance.get(path);
165
+ };
166
+ var getCustomer = async ({
167
+ instance,
168
+ id,
169
+ params
170
+ }) => {
171
+ if (!id) {
172
+ return {
173
+ data: null,
174
+ error: new AutumnError({
175
+ message: "Customer ID is required",
176
+ code: "CUSTOMER_ID_REQUIRED"
177
+ })
178
+ };
179
+ }
180
+ return instance.get(`/customers/${id}?${getExpandStr(params?.expand)}`);
181
+ };
182
+ var createCustomer = async ({
183
+ instance,
184
+ params
185
+ }) => {
186
+ return instance.post(`/customers?${getExpandStr(params?.expand)}`, params);
187
+ };
188
+ var updateCustomer = async ({
189
+ instance,
190
+ id,
191
+ params
192
+ }) => {
193
+ return instance.post(`/customers/${id}`, params);
194
+ };
195
+ var deleteCustomer = async ({
196
+ instance,
197
+ id,
198
+ params
199
+ }) => {
200
+ return instance.delete(`/customers/${id}${params?.delete_in_stripe ? "?delete_in_stripe=true" : ""}`);
201
+ };
202
+ var billingPortal = async ({
203
+ instance,
204
+ id,
205
+ params
206
+ }) => {
207
+ const finalParams = {
208
+ ...params,
209
+ return_url: params?.return_url ?? instance.defaultReturnUrl
210
+ };
211
+ return instance.post(`/customers/${id}/billing_portal`, finalParams);
212
+ };
213
+ var updateBalances = async ({
214
+ instance,
215
+ id,
216
+ params
217
+ }) => {
218
+ return instance.post(`/customers/${id}/balances`, {
219
+ balances: Array.isArray(params) ? params : [params]
220
+ });
221
+ };
222
+
223
+ // src/sdk/customers/entities/entMethods.ts
224
+ var entityMethods = (instance) => {
225
+ return {
226
+ get: (customer_id, entity_id, params) => staticWrapper(getEntity, instance, {
227
+ customer_id,
228
+ entity_id,
229
+ params
230
+ }),
231
+ create: (customer_id, params) => staticWrapper(createEntity, instance, { customer_id, params }),
232
+ transfer: (customer_id, params) => staticWrapper(transferProduct, instance, { customer_id, params }),
233
+ delete: (customer_id, entity_id) => staticWrapper(deleteEntity, instance, { customer_id, entity_id })
234
+ };
235
+ };
236
+ var getExpandStr2 = (expand) => {
237
+ if (!expand) {
238
+ return "";
239
+ }
240
+ return `expand=${expand.join(",")}`;
241
+ };
242
+ var getEntity = async ({
243
+ instance,
244
+ customer_id,
245
+ entity_id,
246
+ params
247
+ }) => {
248
+ return instance.get(
249
+ `/customers/${customer_id}/entities/${entity_id}?${getExpandStr2(
250
+ params?.expand
251
+ )}`
252
+ );
253
+ };
254
+ var createEntity = async ({
255
+ instance,
256
+ customer_id,
257
+ params
258
+ }) => {
259
+ return instance.post(`/customers/${customer_id}/entities`, params);
260
+ };
261
+ var deleteEntity = async ({
262
+ instance,
263
+ customer_id,
264
+ entity_id
265
+ }) => {
266
+ return instance.delete(`/customers/${customer_id}/entities/${entity_id}`);
267
+ };
268
+ var transferProduct = async ({
269
+ instance,
270
+ customer_id,
271
+ params
272
+ }) => {
273
+ return instance.post(`/customers/${customer_id}/transfer`, params);
274
+ };
275
+
276
+ // src/sdk/events/eventMethods.ts
277
+ var eventMethods = (instance) => {
278
+ return {
279
+ list: (params) => staticWrapper(handleEventList, instance, { params }),
280
+ aggregate: (params) => staticWrapper(handleEventAggregate, instance, { params })
281
+ };
282
+ };
283
+ var handleEventList = async ({
284
+ instance,
285
+ params
286
+ }) => {
287
+ return instance.post("/events/list", params);
288
+ };
289
+ var handleEventAggregate = async ({
290
+ instance,
291
+ params
292
+ }) => {
293
+ return instance.post("/events/aggregate", params);
294
+ };
295
+
296
+ // src/sdk/features/featureMethods.ts
297
+ var featureMethods = (instance) => {
298
+ return {
299
+ list: () => staticWrapper(listFeatures, instance, {}),
300
+ get: (id) => staticWrapper(getFeature, instance, { id })
301
+ };
302
+ };
303
+ var listFeatures = async ({
304
+ instance,
305
+ params
306
+ }) => {
307
+ let path = "/features";
308
+ if (params) {
309
+ const queryParams = new URLSearchParams();
310
+ for (const [key, value] of Object.entries(params)) {
311
+ if (value !== void 0) {
312
+ queryParams.append(key, String(value));
313
+ }
314
+ }
315
+ const queryString2 = queryParams.toString();
316
+ if (queryString2) {
317
+ path += `?${queryString2}`;
318
+ }
319
+ }
320
+ return instance.get(path);
321
+ };
322
+ var getFeature = async ({
323
+ instance,
324
+ id
325
+ }) => {
326
+ return instance.get(`/features/${id}`);
327
+ };
328
+
329
+ // src/sdk/general/genMethods.ts
330
+ var handleCheckout = async ({
331
+ instance,
332
+ params
333
+ }) => {
334
+ const finalParams = {
335
+ ...params,
336
+ success_url: params.success_url ?? instance.defaultReturnUrl
337
+ };
338
+ return instance.post("/checkout", finalParams);
339
+ };
340
+ var handleAttach = async ({
341
+ instance,
342
+ params
343
+ }) => {
344
+ const finalParams = {
345
+ ...params,
346
+ success_url: params.success_url ?? instance.defaultReturnUrl
347
+ };
348
+ return instance.post("/attach", finalParams);
349
+ };
350
+ var handleSetupPayment = async ({
351
+ instance,
352
+ params
353
+ }) => {
354
+ const finalParams = {
355
+ ...params,
356
+ success_url: params.success_url ?? instance.defaultReturnUrl
357
+ };
358
+ return instance.post("/setup_payment", finalParams);
359
+ };
360
+ var handleCancel = async ({
361
+ instance,
362
+ params
363
+ }) => {
364
+ return instance.post("/cancel", params);
365
+ };
366
+ var handleTrack = async ({
367
+ instance,
368
+ params
369
+ }) => {
370
+ return instance.post("/track", params);
371
+ };
372
+ var handleUsage = async ({
373
+ instance,
374
+ params
375
+ }) => {
376
+ return instance.post("/usage", params);
377
+ };
378
+ var handleCheck = async ({
379
+ instance,
380
+ params
381
+ }) => {
382
+ return instance.post("/check", params);
383
+ };
384
+ var handleQuery = async ({
385
+ instance,
386
+ params
387
+ }) => {
388
+ return instance.post("/query", params);
389
+ };
390
+
391
+ // src/sdk/products/prodMethods.ts
392
+ var productMethods = (instance) => {
393
+ return {
394
+ get: (id) => staticWrapper(getProduct, instance, { id }),
395
+ create: (params) => staticWrapper(createProduct, instance, { params }),
396
+ list: (params) => staticWrapper(listProducts, instance, { params }),
397
+ delete: (id) => staticWrapper(deleteProduct, instance, { id })
398
+ };
399
+ };
400
+ var listProducts = async ({
401
+ instance,
402
+ params
403
+ }) => {
404
+ let path = "/products_beta";
405
+ if (params) {
406
+ const queryParams = new URLSearchParams();
407
+ for (const [key, value] of Object.entries(params)) {
408
+ if (value !== void 0) {
409
+ queryParams.append(key, String(value));
410
+ }
411
+ }
412
+ const queryString2 = queryParams.toString();
413
+ if (queryString2) {
414
+ path += `?${queryString2}`;
415
+ }
416
+ }
417
+ return instance.get(path);
418
+ };
419
+ var getProduct = async ({
420
+ instance,
421
+ id
422
+ }) => {
423
+ return instance.get(`/products/${id}`);
424
+ };
425
+ var createProduct = async ({
426
+ instance,
427
+ params
428
+ }) => {
429
+ return instance.post("/products", params);
430
+ };
431
+ var deleteProduct = async ({
432
+ instance,
433
+ id,
434
+ params
435
+ }) => {
436
+ const path = buildPathWithQuery(`/products/${id}`, params);
437
+ return instance.delete(path);
438
+ };
439
+
440
+ // src/sdk/referrals/referralMethods.ts
441
+ var referralMethods = (instance) => {
442
+ return {
443
+ createCode: (params) => staticWrapper(createReferralCode, instance, { params }),
444
+ redeemCode: (params) => staticWrapper(redeemReferralCode, instance, { params })
445
+ };
446
+ };
447
+ var createReferralCode = async ({
448
+ instance,
449
+ params
450
+ }) => {
451
+ return instance.post("/referrals/code", params);
452
+ };
453
+ var redeemReferralCode = async ({
454
+ instance,
455
+ params
456
+ }) => {
457
+ return instance.post("/referrals/redeem", params);
458
+ };
459
+
460
+ // src/sdk/response.ts
461
+ var toContainerResult = async ({
462
+ response,
463
+ logger: logger2,
464
+ logError = true
465
+ }) => {
466
+ if (response.status < 200 || response.status >= 300) {
467
+ let error;
468
+ try {
469
+ error = await response.json();
470
+ if (logError) {
471
+ logger2.error(`[Autumn] ${error.message}`);
472
+ }
473
+ } catch (error2) {
474
+ throw error2;
475
+ }
476
+ return {
477
+ data: null,
478
+ error: new AutumnError({
479
+ message: error.message,
480
+ code: error.code
481
+ }),
482
+ statusCode: response.status
483
+ };
484
+ }
485
+ try {
486
+ const data = await response.json();
487
+ return {
488
+ data,
489
+ error: null,
490
+ statusCode: response?.status
491
+ };
492
+ } catch (error) {
493
+ throw error;
494
+ }
495
+ };
496
+
497
+ // src/sdk/v2/balancesMethods.ts
498
+ var V2_API_VERSION = "2.1.0";
499
+ var handleBalancesUpdate = async ({
500
+ instance,
501
+ params
502
+ }) => {
503
+ return instance.postWithVersion("/balances.update", params, V2_API_VERSION);
504
+ };
505
+ var handleBalancesFinalize = async ({
506
+ instance,
507
+ params
508
+ }) => {
509
+ return instance.postWithVersion("/balances.finalize", params, V2_API_VERSION);
510
+ };
511
+ var v2BalancesMethods = (instance) => {
512
+ const wrapper = (handler, params) => {
513
+ const inst = instance || new Autumn();
514
+ return handler({ instance: inst, params });
515
+ };
516
+ return {
517
+ /**
518
+ * Updates a customer's balance for a specific feature.
519
+ *
520
+ * @param params - Update balance parameters
521
+ * @returns Promise resolving to update balance response
522
+ *
523
+ * @example
524
+ * ```typescript
525
+ * // Set remaining balance to exact value
526
+ * await autumn.v2.balances.update({
527
+ * customer_id: "cus_123",
528
+ * feature_id: "api_calls",
529
+ * remaining: 1000,
530
+ * });
531
+ *
532
+ * // Add to existing balance
533
+ * await autumn.v2.balances.update({
534
+ * customer_id: "cus_123",
535
+ * feature_id: "credits",
536
+ * add_to_balance: 500,
537
+ * });
538
+ *
539
+ * // Update usage
540
+ * await autumn.v2.balances.update({
541
+ * customer_id: "cus_123",
542
+ * feature_id: "api_calls",
543
+ * usage: 100,
544
+ * });
545
+ *
546
+ * // Target specific balance by interval or balance_id
547
+ * await autumn.v2.balances.update({
548
+ * customer_id: "cus_123",
549
+ * feature_id: "api_calls",
550
+ * balance_id: "bal_xyz",
551
+ * remaining: 500,
552
+ * });
553
+ * ```
554
+ */
555
+ update: (params) => wrapper(handleBalancesUpdate, params),
556
+ /**
557
+ * Finalizes a balance lock by confirming or releasing it.
558
+ *
559
+ * @param params - Finalize lock parameters
560
+ * @returns Promise resolving to finalize lock response
561
+ *
562
+ * @example
563
+ * ```typescript
564
+ * // Confirm a lock (deduct the reserved balance)
565
+ * await autumn.v2.balances.finalize({
566
+ * lock_id: "lock_abc123",
567
+ * action: "confirm",
568
+ * });
569
+ *
570
+ * // Release a lock (return the reserved balance)
571
+ * await autumn.v2.balances.finalize({
572
+ * lock_id: "lock_abc123",
573
+ * action: "release",
574
+ * });
575
+ *
576
+ * // Confirm with a different value than originally reserved
577
+ * await autumn.v2.balances.finalize({
578
+ * lock_id: "lock_abc123",
579
+ * action: "confirm",
580
+ * override_value: 5,
581
+ * });
582
+ * ```
583
+ */
584
+ finalize: (params) => wrapper(handleBalancesFinalize, params)
585
+ };
586
+ };
587
+
588
+ // src/sdk/v2/billingMethods.ts
589
+ var V2_API_VERSION2 = "2.1.0";
590
+ var handleBillingAttach = async ({
591
+ instance,
592
+ params
593
+ }) => {
594
+ const finalParams = {
595
+ ...params,
596
+ success_url: params.success_url ?? instance.defaultReturnUrl,
597
+ redirect_mode: params.redirect_mode ?? "if_required"
598
+ };
599
+ return instance.postWithVersion(
600
+ "/billing.attach",
601
+ finalParams,
602
+ V2_API_VERSION2
603
+ );
604
+ };
605
+ var handleBillingUpdate = async ({
606
+ instance,
607
+ params
608
+ }) => {
609
+ return instance.postWithVersion("/billing.update", params, V2_API_VERSION2);
610
+ };
611
+ var handleBillingPreviewAttach = async ({
612
+ instance,
613
+ params
614
+ }) => {
615
+ return instance.postWithVersion(
616
+ "/billing.preview_attach",
617
+ params,
618
+ V2_API_VERSION2
619
+ );
620
+ };
621
+ var handleBillingPreviewUpdate = async ({
622
+ instance,
623
+ params
624
+ }) => {
625
+ return instance.postWithVersion(
626
+ "/billing.preview_update",
627
+ params,
628
+ V2_API_VERSION2
629
+ );
630
+ };
631
+ var handleBillingMultiAttach = async ({
632
+ instance,
633
+ params
634
+ }) => {
635
+ const finalParams = {
636
+ ...params,
637
+ success_url: params.success_url ?? instance.defaultReturnUrl,
638
+ redirect_mode: params.redirect_mode ?? "if_required"
639
+ };
640
+ return instance.postWithVersion(
641
+ "/billing.multi_attach",
642
+ finalParams,
643
+ V2_API_VERSION2
644
+ );
645
+ };
646
+ var handleBillingPreviewMultiAttach = async ({
647
+ instance,
648
+ params
649
+ }) => {
650
+ return instance.postWithVersion(
651
+ "/billing.preview_multi_attach",
652
+ params,
653
+ V2_API_VERSION2
654
+ );
655
+ };
656
+ var handleBillingSetupPayment = async ({
657
+ instance,
658
+ params
659
+ }) => {
660
+ const finalParams = {
661
+ ...params,
662
+ success_url: params.success_url ?? instance.defaultReturnUrl
663
+ };
664
+ return instance.postWithVersion(
665
+ "/billing.setup_payment",
666
+ finalParams,
667
+ V2_API_VERSION2
668
+ );
669
+ };
670
+ var v2BillingMethods = (instance) => {
671
+ const wrapper = (handler, params) => {
672
+ const inst = instance || new Autumn();
673
+ return handler({ instance: inst, params });
674
+ };
675
+ return {
676
+ /**
677
+ * Attaches a plan to a customer, enabling access and handling billing.
678
+ *
679
+ * @param params - Attach parameters including customer ID, plan ID, and options
680
+ * @returns Promise resolving to billing response with checkout URL if needed
681
+ *
682
+ * @example
683
+ * ```typescript
684
+ * const result = await autumn.v2.billing.attach({
685
+ * customer_id: "cus_123",
686
+ * plan_id: "pro_plan",
687
+ * success_url: "https://myapp.com/success"
688
+ * });
689
+ *
690
+ * if (result.payment_url) {
691
+ * // Payment required - redirect to checkout
692
+ * window.location.href = result.payment_url;
693
+ * }
694
+ * ```
695
+ */
696
+ attach: (params) => wrapper(handleBillingAttach, params),
697
+ /**
698
+ * Updates a customer's subscription, handling plan changes and cancellations.
699
+ *
700
+ * @param params - Update parameters including customer ID, plan ID, and cancel action
701
+ * @returns Promise resolving to billing response with invoice details
702
+ *
703
+ * @example
704
+ * ```typescript
705
+ * // Update to a new plan
706
+ * const result = await autumn.v2.billing.update({
707
+ * customer_id: "cus_123",
708
+ * plan_id: "enterprise_plan",
709
+ * feature_quantities: [{ feature_id: "seats", quantity: 10 }]
710
+ * });
711
+ *
712
+ * // Cancel at end of billing cycle
713
+ * const cancelResult = await autumn.v2.billing.update({
714
+ * customer_id: "cus_123",
715
+ * plan_id: "pro_plan",
716
+ * cancel_action: "cancel_end_of_cycle"
717
+ * });
718
+ * ```
719
+ */
720
+ update: (params) => wrapper(handleBillingUpdate, params),
721
+ /**
722
+ * Preview what attaching a plan would cost without actually attaching it.
723
+ *
724
+ * @param params - Same parameters as attach
725
+ * @returns Promise resolving to preview response with line items and totals
726
+ *
727
+ * @example
728
+ * ```typescript
729
+ * const preview = await autumn.v2.billing.previewAttach({
730
+ * customer_id: "cus_123",
731
+ * plan_id: "pro_plan"
732
+ * });
733
+ *
734
+ * console.log(`Total: $${preview.total / 100}`);
735
+ * preview.line_items.forEach(item => {
736
+ * console.log(`${item.title}: $${item.amount / 100}`);
737
+ * });
738
+ * ```
739
+ */
740
+ previewAttach: (params) => wrapper(handleBillingPreviewAttach, params),
741
+ /**
742
+ * Preview what updating a subscription would cost without actually updating it.
743
+ *
744
+ * @param params - Same parameters as update
745
+ * @returns Promise resolving to preview response with line items and totals
746
+ *
747
+ * @example
748
+ * ```typescript
749
+ * const preview = await autumn.v2.billing.previewUpdate({
750
+ * customer_id: "cus_123",
751
+ * plan_id: "enterprise_plan",
752
+ * feature_quantities: [{ feature_id: "seats", quantity: 20 }]
753
+ * });
754
+ *
755
+ * console.log(`Prorated charge: $${preview.total / 100}`);
756
+ * ```
757
+ */
758
+ previewUpdate: (params) => wrapper(handleBillingPreviewUpdate, params),
759
+ /**
760
+ * Attaches multiple plans to a customer in a single request.
761
+ *
762
+ * @param params - Multi-attach parameters including customer ID and array of plans
763
+ * @returns Promise resolving to billing response with checkout URL if needed
764
+ *
765
+ * @example
766
+ * ```typescript
767
+ * const result = await autumn.v2.billing.multiAttach({
768
+ * customer_id: "cus_123",
769
+ * plans: [
770
+ * { plan_id: "base_plan" },
771
+ * { plan_id: "addon_plan", feature_quantities: [{ feature_id: "seats", quantity: 5 }] }
772
+ * ],
773
+ * success_url: "https://myapp.com/success"
774
+ * });
775
+ * ```
776
+ */
777
+ multiAttach: (params) => wrapper(handleBillingMultiAttach, params),
778
+ /**
779
+ * Preview what attaching multiple plans would cost without actually attaching them.
780
+ *
781
+ * @param params - Same parameters as multiAttach
782
+ * @returns Promise resolving to preview response with line items and totals
783
+ *
784
+ * @example
785
+ * ```typescript
786
+ * const preview = await autumn.v2.billing.previewMultiAttach({
787
+ * customer_id: "cus_123",
788
+ * plans: [
789
+ * { plan_id: "base_plan" },
790
+ * { plan_id: "addon_plan" }
791
+ * ]
792
+ * });
793
+ *
794
+ * console.log(`Total: $${preview.total / 100}`);
795
+ * ```
796
+ */
797
+ previewMultiAttach: (params) => wrapper(handleBillingPreviewMultiAttach, params),
798
+ /**
799
+ * Sets up a payment method for a customer. Optionally attach a plan after setup.
800
+ *
801
+ * @param params - Setup payment parameters including customer ID and optional plan
802
+ * @returns Promise resolving to setup payment response with redirect URL
803
+ *
804
+ * @example
805
+ * ```typescript
806
+ * // Just setup payment method
807
+ * const result = await autumn.v2.billing.setupPayment({
808
+ * customer_id: "cus_123",
809
+ * success_url: "https://myapp.com/account"
810
+ * });
811
+ *
812
+ * // Setup payment and attach a plan after
813
+ * const result = await autumn.v2.billing.setupPayment({
814
+ * customer_id: "cus_123",
815
+ * plan_id: "pro_plan",
816
+ * success_url: "https://myapp.com/success"
817
+ * });
818
+ *
819
+ * // Redirect to Stripe
820
+ * window.location.href = result.url;
821
+ * ```
822
+ */
823
+ setupPayment: (params) => wrapper(handleBillingSetupPayment, params)
824
+ };
825
+ };
826
+
827
+ // src/sdk/client.ts
828
+ var LATEST_API_VERSION = "1.2";
829
+ var Autumn = class {
830
+ secretKey;
831
+ publishableKey;
832
+ headers;
833
+ url;
834
+ logger = console;
835
+ defaultReturnUrl;
836
+ constructor(options) {
837
+ try {
838
+ this.secretKey = options?.secretKey || process.env.AUTUMN_SECRET_KEY;
839
+ this.publishableKey = options?.publishableKey || process.env.AUTUMN_PUBLISHABLE_KEY;
840
+ } catch (error) {
841
+ }
842
+ if (!this.secretKey && !this.publishableKey && !options?.headers) {
843
+ throw new Error("Autumn secret key or publishable key is required");
844
+ }
845
+ this.headers = options?.headers || {
846
+ Authorization: `Bearer ${this.secretKey || this.publishableKey}`,
847
+ "Content-Type": "application/json"
848
+ };
849
+ const version = options?.version || LATEST_API_VERSION;
850
+ this.headers["x-api-version"] = version;
851
+ this.url = options?.url || autumnApiUrl;
852
+ this.logger = logger;
853
+ this.logger.level = options?.logLevel || "info";
854
+ this.defaultReturnUrl = options?.defaultReturnUrl;
855
+ }
856
+ async get(path) {
857
+ const response = await fetch(`${this.url}${path}`, {
858
+ headers: this.headers
859
+ });
860
+ return toContainerResult({ response, logger: this.logger });
861
+ }
862
+ async post(path, body) {
863
+ try {
864
+ const response = await fetch(`${this.url}${path}`, {
865
+ method: "POST",
866
+ headers: this.headers,
867
+ body: JSON.stringify(body)
868
+ });
869
+ return toContainerResult({ response, logger: this.logger });
870
+ } catch (error) {
871
+ console.error("Error sending request:", error);
872
+ throw error;
873
+ }
874
+ }
875
+ async postWithVersion(path, body, version) {
876
+ try {
877
+ const headers = {
878
+ ...this.headers,
879
+ "x-api-version": version
880
+ };
881
+ const response = await fetch(`${this.url}${path}`, {
882
+ method: "POST",
883
+ headers,
884
+ body: JSON.stringify(body)
885
+ });
886
+ return toContainerResult({ response, logger: this.logger });
887
+ } catch (error) {
888
+ console.error("Error sending request:", error);
889
+ throw error;
890
+ }
891
+ }
892
+ async delete(path) {
893
+ const response = await fetch(`${this.url}${path}`, {
894
+ method: "DELETE",
895
+ headers: this.headers
896
+ });
897
+ return toContainerResult({ response, logger: this.logger });
898
+ }
899
+ static customers = customerMethods();
900
+ static products = productMethods();
901
+ static entities = entityMethods();
902
+ static referrals = referralMethods();
903
+ static features = featureMethods();
904
+ static events = eventMethods();
905
+ static balances = balanceMethods();
906
+ static v2 = {
907
+ billing: v2BillingMethods(),
908
+ balances: v2BalancesMethods()
909
+ };
910
+ customers = customerMethods(this);
911
+ products = productMethods(this);
912
+ entities = entityMethods(this);
913
+ referrals = referralMethods(this);
914
+ features = featureMethods(this);
915
+ events = eventMethods(this);
916
+ balances = balanceMethods(this);
917
+ v2 = {
918
+ billing: v2BillingMethods(this),
919
+ balances: v2BalancesMethods(this)
920
+ };
921
+ /**
922
+ * Initiates a checkout flow for a product purchase.
923
+ *
924
+ * The checkout function handles the purchase process for products with pricing.
925
+ * It determines whether to show a dialog for user input or redirect directly
926
+ * to Stripe based on the customer's state and product requirements.
927
+ *
928
+ * @param params - Checkout parameters including product ID, customer data, and options
929
+ * @returns Promise resolving to checkout details including pricing, prorations, and URLs
930
+ *
931
+ * @example
932
+ * ```typescript
933
+ * const result = await autumn.checkout({
934
+ * customer_id: "user_123",
935
+ * product_id: "pro",
936
+ * success_url: "https://myapp.com/success"
937
+ * });
938
+ *
939
+ * if (result.url) {
940
+ * // Redirect to Stripe checkout
941
+ * window.location.href = result.url;
942
+ * }
943
+ * ```
944
+ */
945
+ async checkout(params) {
946
+ return handleCheckout({
947
+ instance: this,
948
+ params
949
+ });
950
+ }
951
+ static checkout = (params) => staticWrapper(handleCheckout, void 0, { params });
952
+ static usage = (params) => staticWrapper(handleUsage, void 0, { params });
953
+ /**
954
+ * Attaches a product to a customer, enabling access and handling billing.
955
+ *
956
+ * The attach function activates a product for a customer and applies all product items.
957
+ * When you attach a product:
958
+ * - The customer gains access to all features in the product
959
+ * - If the product has prices, the customer will be billed accordingly
960
+ * - If there's no existing payment method, a checkout URL will be generated
961
+ *
962
+ * @param params - Attach parameters including customer ID, product ID, and options
963
+ * @returns Promise resolving to attachment result with checkout URL if needed
964
+ *
965
+ * @example
966
+ * ```typescript
967
+ * const result = await autumn.attach({
968
+ * customer_id: "user_123",
969
+ * product_id: "pro",
970
+ * success_url: "https://myapp.com/success"
971
+ * });
972
+ *
973
+ * if (result.checkout_url) {
974
+ * // Payment required - redirect to checkout
975
+ * window.location.href = result.checkout_url;
976
+ * } else {
977
+ * // Product successfully attached
978
+ * console.log("Access granted:", result.message);
979
+ * }
980
+ * ```
981
+ */
982
+ async attach(params) {
983
+ return handleAttach({
984
+ instance: this,
985
+ params
986
+ });
987
+ }
988
+ static attach = (params) => staticWrapper(handleAttach, void 0, { params });
989
+ static setupPayment = (params) => staticWrapper(handleSetupPayment, void 0, { params });
990
+ /**
991
+ * Sets up a payment method for a customer.
992
+ *
993
+ * This method allows you to set up payment methods for customers without
994
+ * immediately charging them. Useful for collecting payment information
995
+ * before product attachment or for updating existing payment methods.
996
+ *
997
+ * @param params - Setup payment parameters including customer information
998
+ * @returns Promise resolving to setup payment result
999
+ *
1000
+ * @example
1001
+ * ```typescript
1002
+ * const result = await autumn.setupPayment({
1003
+ * customer_id: "user_123"
1004
+ * });
1005
+ * ```
1006
+ */
1007
+ async setupPayment(params) {
1008
+ return handleSetupPayment({
1009
+ instance: this,
1010
+ params
1011
+ });
1012
+ }
1013
+ static cancel = (params) => staticWrapper(handleCancel, void 0, { params });
1014
+ /**
1015
+ * Cancels a customer's subscription or product attachment.
1016
+ *
1017
+ * This method allows you to cancel a customer's subscription to a specific product.
1018
+ * You can choose to cancel immediately or at the end of the billing cycle.
1019
+ *
1020
+ * @param params - Cancel parameters including customer ID and product ID
1021
+ * @returns Promise resolving to cancellation result
1022
+ *
1023
+ * @example
1024
+ * ```typescript
1025
+ * const result = await autumn.cancel({
1026
+ * customer_id: "user_123",
1027
+ * product_id: "pro",
1028
+ * cancel_immediately: false // Cancel at end of billing cycle
1029
+ * });
1030
+ * ```
1031
+ */
1032
+ async cancel(params) {
1033
+ return handleCancel({
1034
+ instance: this,
1035
+ params
1036
+ });
1037
+ }
1038
+ static check = (params) => staticWrapper(handleCheck, void 0, { params });
1039
+ /**
1040
+ * Checks if a customer has access to a specific feature.
1041
+ *
1042
+ * This method verifies whether a customer has permission to use a feature
1043
+ * and checks their remaining balance/usage limits. It can be used to gate
1044
+ * features and determine when to show upgrade prompts.
1045
+ *
1046
+ * @param params - Check parameters including customer ID and feature ID
1047
+ * @returns Promise resolving to access check result with allowed status and balance info
1048
+ *
1049
+ * @example
1050
+ * ```typescript
1051
+ * const result = await autumn.check({
1052
+ * customer_id: "user_123",
1053
+ * feature_id: "messages",
1054
+ * required_balance: 1
1055
+ * });
1056
+ *
1057
+ * if (!result.allowed) {
1058
+ * console.log("Feature access denied - upgrade required");
1059
+ * }
1060
+ * ```
1061
+ */
1062
+ async check(params) {
1063
+ return handleCheck({
1064
+ instance: this,
1065
+ params
1066
+ });
1067
+ }
1068
+ static track = (params) => staticWrapper(handleTrack, void 0, { params });
1069
+ /**
1070
+ * Tracks usage events for features or analytics.
1071
+ *
1072
+ * This method records usage events for metered features, updating the customer's
1073
+ * balance and usage statistics. It's typically used server-side to ensure
1074
+ * accurate tracking that cannot be manipulated by users.
1075
+ *
1076
+ * @param params - Track parameters including customer ID, feature ID, and usage value
1077
+ * @returns Promise resolving to tracking result
1078
+ *
1079
+ * @example
1080
+ * ```typescript
1081
+ * const result = await autumn.track({
1082
+ * customer_id: "user_123",
1083
+ * feature_id: "messages",
1084
+ * value: 1 // Track 1 message sent
1085
+ * });
1086
+ * ```
1087
+ */
1088
+ async track(params) {
1089
+ return handleTrack({
1090
+ instance: this,
1091
+ params
1092
+ });
1093
+ }
1094
+ /**
1095
+ * Retrieves usage statistics and analytics for a customer.
1096
+ *
1097
+ * This method fetches detailed usage information for a customer's features,
1098
+ * including current balances, usage history, and analytics data. Useful
1099
+ * for displaying usage dashboards or generating reports.
1100
+ *
1101
+ * @param params - Usage parameters including customer ID and optional filters
1102
+ * @returns Promise resolving to usage statistics and analytics data
1103
+ *
1104
+ * @example
1105
+ * ```typescript
1106
+ * const result = await autumn.usage({
1107
+ * customer_id: "user_123",
1108
+ * feature_id: "messages"
1109
+ * value: 20 // Usage value
1110
+ * });
1111
+ * ```
1112
+ */
1113
+ async usage(params) {
1114
+ return handleUsage({
1115
+ instance: this,
1116
+ params
1117
+ });
1118
+ }
1119
+ static query = (params) => staticWrapper(handleQuery, void 0, { params });
1120
+ /**
1121
+ * Performs advanced queries on customer data and analytics.
1122
+ *
1123
+ * This method allows you to run complex queries against customer data,
1124
+ * usage patterns, and billing information. Useful for generating reports,
1125
+ * analytics, and custom data insights.
1126
+ *
1127
+ * @param params - Query parameters including customer ID and query specifications
1128
+ * @returns Promise resolving to query results with requested data
1129
+ *
1130
+ * @example
1131
+ * ```typescript
1132
+ * const result = await autumn.query({
1133
+ * customer_id: "user_123",
1134
+ * feature_id: "messages" // feature id to fetch for query, can also be an array
1135
+ * });
1136
+ *
1137
+ * ```
1138
+ */
1139
+ async query(params) {
1140
+ return handleQuery({
1141
+ instance: this,
1142
+ params
1143
+ });
1144
+ }
1145
+ };
1146
+
1147
+ // src/sdk/customers/cusEnums.ts
1148
+ var import_v4 = require("zod/v4");
1149
+ var CustomerExpandEnum = import_v4.z.enum([
1150
+ "invoices",
1151
+ "rewards",
1152
+ "trials_used",
1153
+ "entities",
1154
+ "referrals",
1155
+ "payment_method"
1156
+ ]);
1157
+
1158
+ // src/sdk/customers/cusTypes.ts
1159
+ var import_v42 = require("zod/v4");
1160
+
1161
+ // src/sdk/products/prodEnums.ts
1162
+ var ProductItemInterval = /* @__PURE__ */ ((ProductItemInterval2) => {
1163
+ ProductItemInterval2["Minute"] = "minute";
1164
+ ProductItemInterval2["Hour"] = "hour";
1165
+ ProductItemInterval2["Day"] = "day";
1166
+ ProductItemInterval2["Week"] = "week";
1167
+ ProductItemInterval2["Month"] = "month";
1168
+ ProductItemInterval2["Quarter"] = "quarter";
1169
+ ProductItemInterval2["SemiAnnual"] = "semi_annual";
1170
+ ProductItemInterval2["Year"] = "year";
1171
+ ProductItemInterval2["Multiple"] = "multiple";
1172
+ return ProductItemInterval2;
1173
+ })(ProductItemInterval || {});
1174
+
1175
+ // src/sdk/customers/cusTypes.ts
1176
+ var PurchaseLimitInterval = ["hour", "day", "week", "month"];
1177
+ var PurchaseLimitIntervalEnum = import_v42.z.enum(PurchaseLimitInterval);
1178
+ var AutoTopupPurchaseLimitSchema = import_v42.z.object({
1179
+ interval: PurchaseLimitIntervalEnum,
1180
+ interval_count: import_v42.z.number().min(1).default(1),
1181
+ limit: import_v42.z.number().min(1)
1182
+ });
1183
+ var AutoTopupSchema = import_v42.z.object({
1184
+ feature_id: import_v42.z.string(),
1185
+ enabled: import_v42.z.boolean().default(false),
1186
+ threshold: import_v42.z.number().min(0),
1187
+ quantity: import_v42.z.number().min(1),
1188
+ purchase_limit: AutoTopupPurchaseLimitSchema.optional()
1189
+ });
1190
+ var CustomerBillingControlsSchema = import_v42.z.object({
1191
+ auto_topups: import_v42.z.array(AutoTopupSchema).optional()
1192
+ });
1193
+ var CoreCusFeatureSchema = import_v42.z.object({
1194
+ unlimited: import_v42.z.boolean().optional(),
1195
+ interval: import_v42.z.enum(ProductItemInterval).optional(),
1196
+ balance: import_v42.z.number().nullish(),
1197
+ usage: import_v42.z.number().optional(),
1198
+ included_usage: import_v42.z.number().optional(),
1199
+ next_reset_at: import_v42.z.number().nullish(),
1200
+ overage_allowed: import_v42.z.boolean().optional(),
1201
+ usage_limit: import_v42.z.number().optional(),
1202
+ rollovers: import_v42.z.object({
1203
+ balance: import_v42.z.number(),
1204
+ expires_at: import_v42.z.number()
1205
+ }).optional(),
1206
+ breakdown: import_v42.z.array(
1207
+ import_v42.z.object({
1208
+ interval: import_v42.z.enum(ProductItemInterval),
1209
+ balance: import_v42.z.number().optional(),
1210
+ usage: import_v42.z.number().optional(),
1211
+ included_usage: import_v42.z.number().optional(),
1212
+ next_reset_at: import_v42.z.number().optional()
1213
+ })
1214
+ ).optional(),
1215
+ credit_schema: import_v42.z.array(
1216
+ import_v42.z.object({
1217
+ feature_id: import_v42.z.string(),
1218
+ credit_amount: import_v42.z.number()
1219
+ })
1220
+ ).optional()
1221
+ });
1222
+ var CustomerDataSchema = import_v42.z.object({
1223
+ name: import_v42.z.string().nullish(),
1224
+ email: import_v42.z.string().nullish(),
1225
+ fingerprint: import_v42.z.string().nullish()
1226
+ });
1227
+ var CreateCustomerParamsSchema = import_v42.z.object({
1228
+ id: import_v42.z.string().nullish(),
1229
+ email: import_v42.z.string().nullish(),
1230
+ name: import_v42.z.string().nullish(),
1231
+ fingerprint: import_v42.z.string().nullish(),
1232
+ metadata: import_v42.z.record(import_v42.z.string(), import_v42.z.any()).optional(),
1233
+ expand: import_v42.z.array(CustomerExpandEnum).optional(),
1234
+ stripe_id: import_v42.z.string().nullish(),
1235
+ auto_enable_plan_id: import_v42.z.string().optional(),
1236
+ billing_controls: CustomerBillingControlsSchema.optional()
1237
+ });
1238
+ var BillingPortalParamsSchema = import_v42.z.object({
1239
+ return_url: import_v42.z.string().optional()
1240
+ });
1241
+ var UpdateBalancesParamsSchema = import_v42.z.object({
1242
+ feature_id: import_v42.z.string(),
1243
+ balance: import_v42.z.number()
1244
+ }).or(
1245
+ import_v42.z.array(
1246
+ import_v42.z.object({
1247
+ feature_id: import_v42.z.string(),
1248
+ balance: import_v42.z.number()
1249
+ })
1250
+ )
1251
+ ).or(
1252
+ import_v42.z.object({
1253
+ entity_id: import_v42.z.string().optional(),
1254
+ balances: import_v42.z.array(
1255
+ import_v42.z.object({
1256
+ feature_id: import_v42.z.string(),
1257
+ balance: import_v42.z.number()
1258
+ })
1259
+ )
1260
+ })
1261
+ );
1262
+ var DeleteCustomerParamsSchema = import_v42.z.object({
1263
+ delete_in_stripe: import_v42.z.boolean().optional()
1264
+ });
1265
+ var ListCustomersParamsSchema = import_v42.z.object({
1266
+ limit: import_v42.z.number().optional(),
1267
+ offset: import_v42.z.number().optional()
1268
+ });
1269
+
1270
+ // src/sdk/customers/entities/entTypes.ts
1271
+ var import_v43 = require("zod/v4");
1272
+ var EntityDataSchema = import_v43.z.object({
1273
+ name: import_v43.z.string().optional(),
1274
+ feature_id: import_v43.z.string()
1275
+ });
1276
+ var TransferProductParamsSchema = import_v43.z.object({
1277
+ from_entity_id: import_v43.z.string(),
1278
+ to_entity_id: import_v43.z.string(),
1279
+ product_id: import_v43.z.string()
1280
+ });
1281
+
1282
+ // src/sdk/general/pageTypes.ts
1283
+ var import_v44 = require("zod/v4");
1284
+ var PagePaginationDefaults = {
1285
+ Limit: 100,
1286
+ MaxLimit: 1e3
1287
+ };
1288
+ var PagePaginationQuerySchema = import_v44.z.object({
1289
+ offset: import_v44.z.coerce.number().int().min(0).default(0).describe("Number of items to skip"),
1290
+ limit: import_v44.z.coerce.number().int().min(1).max(PagePaginationDefaults.MaxLimit).default(PagePaginationDefaults.Limit).describe(
1291
+ `Number of items to return. Default ${PagePaginationDefaults.Limit}, max ${PagePaginationDefaults.MaxLimit}.`
1292
+ )
1293
+ });
1294
+ var createPagePaginatedResponseSchema = (itemSchema) => import_v44.z.object({
1295
+ list: import_v44.z.array(itemSchema).describe("Array of items for current page"),
1296
+ has_more: import_v44.z.boolean().describe("Whether more results exist after this page"),
1297
+ offset: import_v44.z.number().describe("Current offset position"),
1298
+ limit: import_v44.z.number().describe("Limit passed in the request"),
1299
+ total: import_v44.z.number().describe("Total number of items returned in the current page")
1300
+ });
1301
+
1302
+ // src/sdk/events/eventTypes.ts
1303
+ var import_v45 = require("zod/v4");
1304
+ var QueryRangeEnum = import_v45.z.enum([
1305
+ "24h",
1306
+ "7d",
1307
+ "30d",
1308
+ "90d",
1309
+ "last_cycle",
1310
+ "1bc",
1311
+ "3bc"
1312
+ ]);
1313
+ var BinSizeEnum = import_v45.z.enum(["day", "hour"]);
1314
+ var QueryParamsSchema = import_v45.z.object({
1315
+ customer_id: import_v45.z.string(),
1316
+ feature_id: import_v45.z.string().or(import_v45.z.array(import_v45.z.string())),
1317
+ range: QueryRangeEnum.optional(),
1318
+ group_by: import_v45.z.string().startsWith("properties.").optional(),
1319
+ bin_size: BinSizeEnum.optional(),
1320
+ custom_range: import_v45.z.object({
1321
+ start: import_v45.z.number(),
1322
+ end: import_v45.z.number()
1323
+ }).optional()
1324
+ });
1325
+ var EventsListParamsSchema = PagePaginationQuerySchema.extend({
1326
+ customer_id: import_v45.z.string(),
1327
+ feature_id: import_v45.z.string().or(import_v45.z.array(import_v45.z.string())),
1328
+ custom_range: import_v45.z.object({
1329
+ start: import_v45.z.coerce.number().optional(),
1330
+ end: import_v45.z.coerce.number().optional()
1331
+ }).optional()
1332
+ });
1333
+ var EventsListItemSchema = import_v45.z.object({
1334
+ id: import_v45.z.string().describe("Event ID (KSUID)"),
1335
+ timestamp: import_v45.z.number().describe("Event timestamp (epoch milliseconds)"),
1336
+ feature_id: import_v45.z.string().describe("Name of the event"),
1337
+ customer_id: import_v45.z.string().describe("Customer identifier"),
1338
+ value: import_v45.z.number().describe("Event value/count"),
1339
+ properties: import_v45.z.object({}).describe("Event properties (JSONB)")
1340
+ });
1341
+ var EventsListResponseSchema = createPagePaginatedResponseSchema(EventsListItemSchema);
1342
+
1343
+ // src/sdk/features/featureTypes.ts
1344
+ var import_v46 = require("zod/v4");
1345
+ var FeatureType = /* @__PURE__ */ ((FeatureType2) => {
1346
+ FeatureType2["Boolean"] = "boolean";
1347
+ FeatureType2["SingleUse"] = "single_use";
1348
+ FeatureType2["ContinuousUse"] = "continuous_use";
1349
+ FeatureType2["CreditSystem"] = "credit_system";
1350
+ return FeatureType2;
1351
+ })(FeatureType || {});
1352
+ var FeatureSchema = import_v46.z.object({
1353
+ id: import_v46.z.string(),
1354
+ name: import_v46.z.string(),
1355
+ type: import_v46.z.enum(FeatureType),
1356
+ display: import_v46.z.object({
1357
+ singular: import_v46.z.string(),
1358
+ plural: import_v46.z.string()
1359
+ }).nullish(),
1360
+ credit_schema: import_v46.z.array(
1361
+ import_v46.z.object({
1362
+ metered_feature_id: import_v46.z.string(),
1363
+ credit_cost: import_v46.z.number()
1364
+ })
1365
+ ).nullish(),
1366
+ archived: import_v46.z.boolean()
1367
+ });
1368
+
1369
+ // src/sdk/general/attachTypes.ts
1370
+ var import_v47 = require("zod/v4");
1371
+ var AttachFeatureOptionsSchema = import_v47.z.object({
1372
+ feature_id: import_v47.z.string(),
1373
+ quantity: import_v47.z.number()
1374
+ });
1375
+ var AttachParamsSchema = import_v47.z.object({
1376
+ customer_id: import_v47.z.string(),
1377
+ product_id: import_v47.z.string().optional(),
1378
+ entity_id: import_v47.z.string().optional(),
1379
+ options: import_v47.z.array(AttachFeatureOptionsSchema).optional(),
1380
+ product_ids: import_v47.z.array(import_v47.z.string()).optional(),
1381
+ free_trial: import_v47.z.boolean().optional(),
1382
+ success_url: import_v47.z.string().optional(),
1383
+ metadata: import_v47.z.record(import_v47.z.string(), import_v47.z.string()).optional(),
1384
+ force_checkout: import_v47.z.boolean().optional(),
1385
+ customer_data: CustomerDataSchema.optional(),
1386
+ entity_data: import_v47.z.any().optional(),
1387
+ checkout_session_params: import_v47.z.record(import_v47.z.string(), import_v47.z.any()).optional(),
1388
+ reward: import_v47.z.string().optional(),
1389
+ invoice: import_v47.z.boolean().optional(),
1390
+ new_billing_subscription: import_v47.z.boolean().optional()
1391
+ });
1392
+ var AttachResultSchema = import_v47.z.object({
1393
+ checkout_url: import_v47.z.string().optional(),
1394
+ customer_id: import_v47.z.string(),
1395
+ product_ids: import_v47.z.array(import_v47.z.string()),
1396
+ code: import_v47.z.string(),
1397
+ message: import_v47.z.string(),
1398
+ customer_data: import_v47.z.any().optional(),
1399
+ invoice: import_v47.z.object({
1400
+ status: import_v47.z.string(),
1401
+ stripe_id: import_v47.z.string(),
1402
+ hosted_invoice_url: import_v47.z.string().nullable(),
1403
+ total: import_v47.z.number(),
1404
+ currency: import_v47.z.string()
1405
+ }).optional()
1406
+ });
1407
+ var CheckoutParamsSchema = import_v47.z.object({
1408
+ customer_id: import_v47.z.string(),
1409
+ product_id: import_v47.z.string(),
1410
+ product_ids: import_v47.z.array(import_v47.z.string()).optional(),
1411
+ entity_id: import_v47.z.string().optional(),
1412
+ options: import_v47.z.array(AttachFeatureOptionsSchema).optional(),
1413
+ force_checkout: import_v47.z.boolean().optional(),
1414
+ invoice: import_v47.z.boolean().optional(),
1415
+ success_url: import_v47.z.string().optional(),
1416
+ customer_data: CustomerDataSchema.optional(),
1417
+ entity_data: import_v47.z.any().optional(),
1418
+ checkout_session_params: import_v47.z.record(import_v47.z.string(), import_v47.z.any()).optional(),
1419
+ reward: import_v47.z.string().optional(),
1420
+ new_billing_subscription: import_v47.z.boolean().optional()
1421
+ });
1422
+
1423
+ // src/sdk/general/checkTypes.ts
1424
+ var import_v48 = require("zod/v4");
1425
+ var CheckFeatureResultSchema = import_v48.z.object({
1426
+ allowed: import_v48.z.boolean(),
1427
+ feature_id: import_v48.z.string(),
1428
+ customer_id: import_v48.z.string(),
1429
+ entity_id: import_v48.z.string().optional(),
1430
+ required_balance: import_v48.z.number()
1431
+ }).extend(CoreCusFeatureSchema.shape);
1432
+
1433
+ // src/sdk/general/genTypes.ts
1434
+ var import_v49 = require("zod/v4");
1435
+ var LockParamsSchema = import_v49.z.object({
1436
+ lock_id: import_v49.z.string().max(256),
1437
+ enabled: import_v49.z.literal(true),
1438
+ expires_at: import_v49.z.number().optional()
1439
+ });
1440
+ var CancelParamsSchema = import_v49.z.object({
1441
+ customer_id: import_v49.z.string(),
1442
+ product_id: import_v49.z.string(),
1443
+ entity_id: import_v49.z.string().optional(),
1444
+ cancel_immediately: import_v49.z.boolean().optional(),
1445
+ prorate: import_v49.z.boolean().optional()
1446
+ });
1447
+ var CancelResultSchema = import_v49.z.object({
1448
+ success: import_v49.z.boolean(),
1449
+ customer_id: import_v49.z.string(),
1450
+ product_id: import_v49.z.string()
1451
+ });
1452
+ var TrackParamsSchema = import_v49.z.object({
1453
+ customer_id: import_v49.z.string(),
1454
+ value: import_v49.z.number().optional(),
1455
+ feature_id: import_v49.z.string().optional(),
1456
+ event_name: import_v49.z.string().optional(),
1457
+ entity_id: import_v49.z.string().optional(),
1458
+ customer_data: import_v49.z.any().optional(),
1459
+ idempotency_key: import_v49.z.string().optional(),
1460
+ entity_data: import_v49.z.any().optional(),
1461
+ properties: import_v49.z.record(import_v49.z.string(), import_v49.z.any()).optional(),
1462
+ lock: LockParamsSchema.optional()
1463
+ });
1464
+ var TrackResultSchema = import_v49.z.object({
1465
+ id: import_v49.z.string(),
1466
+ code: import_v49.z.string(),
1467
+ customer_id: import_v49.z.string(),
1468
+ feature_id: import_v49.z.string().optional(),
1469
+ event_name: import_v49.z.string().optional()
1470
+ });
1471
+ var CheckParamsSchema = import_v49.z.object({
1472
+ customer_id: import_v49.z.string(),
1473
+ feature_id: import_v49.z.string().optional(),
1474
+ product_id: import_v49.z.string().optional(),
1475
+ entity_id: import_v49.z.string().optional(),
1476
+ customer_data: import_v49.z.any().optional(),
1477
+ required_balance: import_v49.z.number().optional(),
1478
+ send_event: import_v49.z.boolean().optional(),
1479
+ with_preview: import_v49.z.boolean().optional(),
1480
+ entity_data: EntityDataSchema.optional(),
1481
+ lock: LockParamsSchema.optional()
1482
+ });
1483
+
1484
+ // src/sdk/referrals/referralTypes.ts
1485
+ var import_v410 = require("zod/v4");
1486
+ var CreateReferralCodeParamsSchema = import_v410.z.object({
1487
+ customer_id: import_v410.z.string(),
1488
+ program_id: import_v410.z.string()
1489
+ });
1490
+ var RedeemReferralCodeParamsSchema = import_v410.z.object({
1491
+ code: import_v410.z.string(),
1492
+ customer_id: import_v410.z.string()
1493
+ });
1494
+
1495
+ // src/sdk/balances/balancesTypes.ts
1496
+ var import_v411 = require("zod/v4");
1497
+ var ResetInterval = [
1498
+ "one_off",
1499
+ "minute",
1500
+ "hour",
1501
+ "day",
1502
+ "week",
1503
+ "month",
1504
+ "quarter",
1505
+ "semi_annual",
1506
+ "year"
1507
+ ];
1508
+ var CreateBalanceParamsSchema = import_v411.z.object({
1509
+ feature_id: import_v411.z.string().describe("The feature ID to create the balance for"),
1510
+ customer_id: import_v411.z.string().describe("The customer ID to assign the balance to"),
1511
+ entity_id: import_v411.z.string().optional().describe("Entity ID for entity-scoped balances"),
1512
+ granted_balance: import_v411.z.number().optional().describe("The initial balance amount to grant"),
1513
+ unlimited: import_v411.z.boolean().optional().describe("Whether the balance is unlimited"),
1514
+ reset: import_v411.z.object({
1515
+ interval: import_v411.z.enum(ResetInterval),
1516
+ interval_count: import_v411.z.number().optional()
1517
+ }).optional().describe("Reset configuration for the balance"),
1518
+ expires_at: import_v411.z.number().optional().describe("Unix timestamp (milliseconds) when the balance expires")
1519
+ });
1520
+
1521
+ // src/sdk/v2/billingTypes.ts
1522
+ var import_v412 = require("zod/v4");
1523
+ var BillingIntervalSchema = import_v412.z.enum([
1524
+ "one_off",
1525
+ "week",
1526
+ "month",
1527
+ "quarter",
1528
+ "semi_annual",
1529
+ "year"
1530
+ ]);
1531
+ var ResetIntervalSchema = import_v412.z.enum([
1532
+ "one_off",
1533
+ "minute",
1534
+ "hour",
1535
+ "day",
1536
+ "week",
1537
+ "month",
1538
+ "quarter",
1539
+ "semi_annual",
1540
+ "year"
1541
+ ]);
1542
+ var BillingMethodSchema = import_v412.z.enum(["prepaid", "usage_based"]);
1543
+ var OnIncreaseSchema = import_v412.z.enum([
1544
+ "bill_immediately",
1545
+ "prorate_immediately",
1546
+ "prorate_next_cycle",
1547
+ "bill_next_cycle"
1548
+ ]);
1549
+ var OnDecreaseSchema = import_v412.z.enum([
1550
+ "prorate",
1551
+ "prorate_immediately",
1552
+ "prorate_next_cycle",
1553
+ "none",
1554
+ "no_prorations"
1555
+ ]);
1556
+ var RolloverExpiryDurationTypeSchema = import_v412.z.enum(["month", "forever"]);
1557
+ var FeatureQuantityParamsSchema = import_v412.z.object({
1558
+ feature_id: import_v412.z.string(),
1559
+ quantity: import_v412.z.number().min(0).optional(),
1560
+ adjustable: import_v412.z.boolean().optional()
1561
+ });
1562
+ var FreeTrialParamsSchema = import_v412.z.object({
1563
+ duration_length: import_v412.z.number(),
1564
+ duration_type: import_v412.z.enum(["day", "month", "year"]).default("month"),
1565
+ card_required: import_v412.z.boolean().default(true)
1566
+ });
1567
+ var AttachDiscountSchema = import_v412.z.union([
1568
+ import_v412.z.object({ reward_id: import_v412.z.string() }),
1569
+ import_v412.z.object({ promotion_code: import_v412.z.string() })
1570
+ ]);
1571
+ var InvoiceModeParamsSchema = import_v412.z.object({
1572
+ enabled: import_v412.z.boolean(),
1573
+ enable_plan_immediately: import_v412.z.boolean().default(false),
1574
+ finalize: import_v412.z.boolean().default(true)
1575
+ });
1576
+ var ProrationBehaviorSchema = import_v412.z.enum(["prorate_immediately", "none"]);
1577
+ var RedirectModeSchema = import_v412.z.enum(["always", "if_required", "never"]);
1578
+ var PlanScheduleSchema = import_v412.z.enum(["immediate", "end_of_cycle"]);
1579
+ var CancelActionSchema = import_v412.z.enum([
1580
+ "cancel_immediately",
1581
+ "cancel_end_of_cycle",
1582
+ "uncancel"
1583
+ ]);
1584
+ var UsageTierSchema = import_v412.z.object({
1585
+ to: import_v412.z.number().or(import_v412.z.literal("inf")),
1586
+ amount: import_v412.z.number()
1587
+ });
1588
+ var BasePriceParamsSchema = import_v412.z.object({
1589
+ amount: import_v412.z.number(),
1590
+ interval: BillingIntervalSchema,
1591
+ interval_count: import_v412.z.number().optional()
1592
+ });
1593
+ var CreatePlanItemParamsSchema = import_v412.z.object({
1594
+ feature_id: import_v412.z.string(),
1595
+ included: import_v412.z.number().optional(),
1596
+ unlimited: import_v412.z.boolean().optional(),
1597
+ reset: import_v412.z.object({
1598
+ interval: ResetIntervalSchema,
1599
+ interval_count: import_v412.z.number().optional()
1600
+ }).optional(),
1601
+ price: import_v412.z.object({
1602
+ amount: import_v412.z.number().optional(),
1603
+ tiers: import_v412.z.array(UsageTierSchema).optional(),
1604
+ interval: BillingIntervalSchema,
1605
+ interval_count: import_v412.z.number().default(1).optional(),
1606
+ billing_units: import_v412.z.number().default(1).optional(),
1607
+ billing_method: BillingMethodSchema,
1608
+ max_purchase: import_v412.z.number().optional()
1609
+ }).optional(),
1610
+ proration: import_v412.z.object({
1611
+ on_increase: OnIncreaseSchema,
1612
+ on_decrease: OnDecreaseSchema
1613
+ }).optional(),
1614
+ rollover: import_v412.z.object({
1615
+ max: import_v412.z.number().optional(),
1616
+ expiry_duration_type: RolloverExpiryDurationTypeSchema,
1617
+ expiry_duration_length: import_v412.z.number().optional()
1618
+ }).optional()
1619
+ });
1620
+ var CustomizePlanSchema = import_v412.z.object({
1621
+ price: BasePriceParamsSchema.nullable().optional(),
1622
+ items: import_v412.z.array(CreatePlanItemParamsSchema).optional(),
1623
+ free_trial: FreeTrialParamsSchema.nullable().optional()
1624
+ });
1625
+ var CustomLineItemSchema = import_v412.z.object({
1626
+ amount: import_v412.z.number(),
1627
+ description: import_v412.z.string()
1628
+ });
1629
+ var BillingParamsBaseSchema = import_v412.z.object({
1630
+ customer_id: import_v412.z.string(),
1631
+ entity_id: import_v412.z.string().optional(),
1632
+ feature_quantities: import_v412.z.array(FeatureQuantityParamsSchema).optional(),
1633
+ version: import_v412.z.number().optional(),
1634
+ customize: CustomizePlanSchema.optional(),
1635
+ invoice_mode: InvoiceModeParamsSchema.optional(),
1636
+ proration_behavior: ProrationBehaviorSchema.optional(),
1637
+ subscription_id: import_v412.z.string().optional()
1638
+ });
1639
+ var BillingAttachParamsSchema = BillingParamsBaseSchema.extend({
1640
+ plan_id: import_v412.z.string(),
1641
+ discounts: import_v412.z.array(AttachDiscountSchema).optional(),
1642
+ success_url: import_v412.z.string().optional(),
1643
+ redirect_mode: RedirectModeSchema.optional(),
1644
+ new_billing_subscription: import_v412.z.boolean().optional(),
1645
+ plan_schedule: PlanScheduleSchema.optional(),
1646
+ checkout_session_params: import_v412.z.record(import_v412.z.string(), import_v412.z.unknown()).optional(),
1647
+ custom_line_items: import_v412.z.array(CustomLineItemSchema).optional()
1648
+ });
1649
+ var BillingUpdateParamsSchema = BillingParamsBaseSchema.extend({
1650
+ plan_id: import_v412.z.string().optional(),
1651
+ cancel_action: CancelActionSchema.optional()
1652
+ });
1653
+ var PaymentFailureCodeSchema = import_v412.z.enum([
1654
+ "3ds_required",
1655
+ "payment_method_required",
1656
+ "payment_failed"
1657
+ ]);
1658
+ var BillingRequiredActionSchema = import_v412.z.object({
1659
+ code: PaymentFailureCodeSchema,
1660
+ reason: import_v412.z.string()
1661
+ });
1662
+ var BillingResponseSchema = import_v412.z.object({
1663
+ customer_id: import_v412.z.string(),
1664
+ entity_id: import_v412.z.string().optional(),
1665
+ invoice: import_v412.z.object({
1666
+ status: import_v412.z.string().nullable(),
1667
+ stripe_id: import_v412.z.string(),
1668
+ total: import_v412.z.number(),
1669
+ currency: import_v412.z.string(),
1670
+ hosted_invoice_url: import_v412.z.string().nullable()
1671
+ }).optional(),
1672
+ payment_url: import_v412.z.string().nullable(),
1673
+ required_action: BillingRequiredActionSchema.optional()
1674
+ });
1675
+ var MultiAttachCustomizePlanSchema = import_v412.z.object({
1676
+ price: BasePriceParamsSchema.nullable().optional(),
1677
+ items: import_v412.z.array(CreatePlanItemParamsSchema).optional()
1678
+ });
1679
+ var MultiAttachPlanSchema = import_v412.z.object({
1680
+ plan_id: import_v412.z.string(),
1681
+ customize: MultiAttachCustomizePlanSchema.optional(),
1682
+ feature_quantities: import_v412.z.array(FeatureQuantityParamsSchema).optional(),
1683
+ version: import_v412.z.number().optional(),
1684
+ subscription_id: import_v412.z.string().optional()
1685
+ });
1686
+ var MultiAttachParamsSchema = import_v412.z.object({
1687
+ customer_id: import_v412.z.string(),
1688
+ entity_id: import_v412.z.string().optional(),
1689
+ plans: import_v412.z.array(MultiAttachPlanSchema).min(1),
1690
+ free_trial: FreeTrialParamsSchema.nullable().optional(),
1691
+ invoice_mode: InvoiceModeParamsSchema.optional(),
1692
+ discounts: import_v412.z.array(AttachDiscountSchema).optional(),
1693
+ success_url: import_v412.z.string().optional(),
1694
+ checkout_session_params: import_v412.z.record(import_v412.z.string(), import_v412.z.unknown()).optional(),
1695
+ redirect_mode: RedirectModeSchema.optional(),
1696
+ new_billing_subscription: import_v412.z.boolean().optional()
1697
+ });
1698
+ var SetupPaymentParamsSchema = import_v412.z.object({
1699
+ customer_id: import_v412.z.string(),
1700
+ entity_id: import_v412.z.string().optional(),
1701
+ plan_id: import_v412.z.string().optional(),
1702
+ feature_quantities: import_v412.z.array(FeatureQuantityParamsSchema).optional(),
1703
+ version: import_v412.z.number().optional(),
1704
+ customize: CustomizePlanSchema.optional(),
1705
+ discounts: import_v412.z.array(AttachDiscountSchema).optional(),
1706
+ success_url: import_v412.z.string().optional(),
1707
+ checkout_session_params: import_v412.z.record(import_v412.z.string(), import_v412.z.unknown()).optional()
1708
+ });
1709
+ var SetupPaymentResponseSchema = import_v412.z.object({
1710
+ customer_id: import_v412.z.string(),
1711
+ entity_id: import_v412.z.string().optional(),
1712
+ url: import_v412.z.string()
1713
+ });
1714
+ var PreviewLineItemSchema = import_v412.z.object({
1715
+ title: import_v412.z.string(),
1716
+ description: import_v412.z.string(),
1717
+ amount: import_v412.z.number()
1718
+ });
1719
+ var BillingPreviewResponseSchema = import_v412.z.object({
1720
+ customer_id: import_v412.z.string(),
1721
+ line_items: import_v412.z.array(PreviewLineItemSchema),
1722
+ total: import_v412.z.number(),
1723
+ currency: import_v412.z.string(),
1724
+ next_cycle: import_v412.z.object({
1725
+ starts_at: import_v412.z.number(),
1726
+ total: import_v412.z.number()
1727
+ }).optional()
1728
+ });
1729
+
1730
+ // src/sdk/v2/balancesTypes.ts
1731
+ var import_v413 = require("zod/v4");
1732
+ var V2ResetIntervalSchema = import_v413.z.enum([
1733
+ "one_off",
1734
+ "minute",
1735
+ "hour",
1736
+ "day",
1737
+ "week",
1738
+ "month",
1739
+ "quarter",
1740
+ "semi_annual",
1741
+ "year"
1742
+ ]);
1743
+ var V2UpdateBalanceParamsSchema = import_v413.z.object({
1744
+ customer_id: import_v413.z.string(),
1745
+ feature_id: import_v413.z.string(),
1746
+ entity_id: import_v413.z.string().optional(),
1747
+ remaining: import_v413.z.number().optional(),
1748
+ add_to_balance: import_v413.z.number().optional(),
1749
+ usage: import_v413.z.number().optional(),
1750
+ interval: V2ResetIntervalSchema.optional(),
1751
+ included_grant: import_v413.z.number().optional(),
1752
+ balance_id: import_v413.z.string().optional(),
1753
+ next_reset_at: import_v413.z.number().optional()
1754
+ });
1755
+ var V2UpdateBalanceResponseSchema = import_v413.z.object({
1756
+ message: import_v413.z.string()
1757
+ });
1758
+ var V2FinalizeLockActionSchema = import_v413.z.enum(["confirm", "release"]);
1759
+ var V2FinalizeLockParamsSchema = import_v413.z.object({
1760
+ lock_id: import_v413.z.string(),
1761
+ action: V2FinalizeLockActionSchema,
1762
+ override_value: import_v413.z.number().optional(),
1763
+ properties: import_v413.z.record(import_v413.z.string(), import_v413.z.any()).optional()
1764
+ });
1765
+ var V2FinalizeLockResponseSchema = import_v413.z.object({
1766
+ success: import_v413.z.literal(true)
1767
+ });
1768
+
1769
+ // src/libraries/react/hooks/usePricingTableBase.tsx
1770
+ var mergeProductDetails = (products, productDetails) => {
1771
+ if (!products) {
1772
+ return null;
1773
+ }
1774
+ if (!productDetails) {
1775
+ return products.map((product) => {
1776
+ if (product.base_variant_id) {
1777
+ let baseProduct = products.find(
1778
+ (p) => p.id === product.base_variant_id
1779
+ );
1780
+ if (baseProduct) {
1781
+ return {
1782
+ ...product,
1783
+ name: baseProduct.name
1784
+ };
1785
+ }
1786
+ }
1787
+ return product;
1788
+ });
1789
+ }
1790
+ let fetchedProducts = structuredClone(products);
1791
+ let mergedProducts = [];
1792
+ for (const overrideDetails of productDetails) {
1793
+ if (!overrideDetails.id) {
1794
+ let properties = {};
1795
+ let overrideItems2 = overrideDetails.items?.map((item) => ({
1796
+ display: {
1797
+ primary_text: item.primaryText,
1798
+ secondary_text: item.secondaryText
1799
+ }
1800
+ }));
1801
+ let overridePrice2 = overrideDetails.price;
1802
+ if (overrideDetails.price) {
1803
+ properties.is_free = false;
1804
+ overrideItems2 = [
1805
+ {
1806
+ display: {
1807
+ primary_text: overridePrice2?.primaryText,
1808
+ secondary_text: overridePrice2?.secondaryText
1809
+ }
1810
+ },
1811
+ ...overrideItems2 || []
1812
+ ];
1813
+ }
1814
+ if (!overrideItems2 || overrideItems2.length === 0) {
1815
+ overrideItems2 = [
1816
+ {
1817
+ display: {
1818
+ primary_text: ""
1819
+ }
1820
+ }
1821
+ ];
1822
+ }
1823
+ mergedProducts.push({
1824
+ display: {
1825
+ name: overrideDetails.name,
1826
+ description: overrideDetails.description,
1827
+ button_text: overrideDetails.buttonText,
1828
+ recommend_text: overrideDetails.recommendText,
1829
+ everything_from: overrideDetails.everythingFrom,
1830
+ button_url: overrideDetails.buttonUrl
1831
+ },
1832
+ items: overrideItems2,
1833
+ properties
1834
+ });
1835
+ continue;
1836
+ }
1837
+ let fetchedProduct = fetchedProducts.find(
1838
+ (p) => p.id === overrideDetails.id
1839
+ );
1840
+ if (!fetchedProduct) {
1841
+ continue;
1842
+ }
1843
+ let displayName = fetchedProduct.name;
1844
+ let baseVariantId = fetchedProduct.base_variant_id;
1845
+ if (baseVariantId) {
1846
+ let baseProduct = fetchedProducts.find((p) => p.id === baseVariantId);
1847
+ if (baseProduct) {
1848
+ displayName = baseProduct.name;
1849
+ }
1850
+ }
1851
+ displayName = overrideDetails.name || displayName;
1852
+ const originalIsFree = fetchedProduct.properties?.is_free;
1853
+ let overrideProperties = fetchedProduct.properties || {};
1854
+ let overrideItems = overrideDetails.items;
1855
+ let overridePrice = overrideDetails.price;
1856
+ let mergedItems = [];
1857
+ if (overridePrice) {
1858
+ overrideProperties.is_free = false;
1859
+ if (originalIsFree || overrideItems !== void 0) {
1860
+ mergedItems.push({
1861
+ display: {
1862
+ primary_text: overridePrice.primaryText,
1863
+ secondary_text: overridePrice.secondaryText
1864
+ }
1865
+ });
1866
+ } else {
1867
+ fetchedProduct.items[0].display = {
1868
+ primary_text: overridePrice.primaryText,
1869
+ secondary_text: overridePrice.secondaryText
1870
+ };
1871
+ }
1872
+ } else {
1873
+ if (overrideItems && !originalIsFree) {
1874
+ mergedItems.push(fetchedProduct.items[0]);
1875
+ }
1876
+ }
1877
+ if (overrideItems) {
1878
+ for (const overrideItem of overrideItems) {
1879
+ if (!overrideItem.featureId) {
1880
+ mergedItems.push({
1881
+ display: {
1882
+ primary_text: overrideItem.primaryText,
1883
+ secondary_text: overrideItem.secondaryText
1884
+ }
1885
+ });
1886
+ } else {
1887
+ let fetchedItem = fetchedProduct.items.find(
1888
+ (i) => i.feature_id === overrideItem.featureId
1889
+ );
1890
+ if (!fetchedItem) {
1891
+ console.error(
1892
+ `Feature with id ${overrideItem.featureId} not found for product ${fetchedProduct.id}`
1893
+ );
1894
+ continue;
1895
+ }
1896
+ mergedItems.push({
1897
+ ...fetchedItem,
1898
+ display: {
1899
+ primary_text: overrideItem.primaryText || fetchedItem.display?.primary_text,
1900
+ secondary_text: overrideItem.secondaryText || fetchedItem.display?.secondary_text
1901
+ }
1902
+ });
1903
+ }
1904
+ }
1905
+ } else {
1906
+ mergedItems = fetchedProduct.items;
1907
+ }
1908
+ const mergedProduct = {
1909
+ ...fetchedProduct,
1910
+ items: mergedItems,
1911
+ properties: overrideProperties,
1912
+ display: {
1913
+ name: displayName,
1914
+ description: overrideDetails.description,
1915
+ button_text: overrideDetails.buttonText,
1916
+ recommend_text: overrideDetails.recommendText,
1917
+ everything_from: overrideDetails.everythingFrom,
1918
+ button_url: overrideDetails.buttonUrl
1919
+ }
1920
+ };
1921
+ mergedProducts.push(mergedProduct);
1922
+ }
1923
+ return mergedProducts;
1924
+ };
1925
+ var defaultSWRConfig = {
1926
+ refreshInterval: 0
1927
+ };
1928
+ var usePricingTableBase = ({
1929
+ client,
1930
+ params
1931
+ }) => {
1932
+ const fetcher = async () => {
1933
+ try {
1934
+ const { data: data2, error: error2 } = await client.products.list();
1935
+ if (error2) throw error2;
1936
+ return data2?.list || [];
1937
+ } catch (error2) {
1938
+ throw new AutumnError({
1939
+ message: "Failed to fetch pricing table products",
1940
+ code: "failed_to_fetch_pricing_table_products"
1941
+ });
1942
+ }
1943
+ };
1944
+ const { data, error, mutate } = (0, import_swr.default)(
1945
+ ["pricing-table", client.backendUrl, JSON.stringify(client.customerData)],
1946
+ fetcher,
1947
+ { ...defaultSWRConfig }
1948
+ );
1949
+ return {
1950
+ products: mergeProductDetails(data || [], params?.productDetails),
1951
+ isLoading: !error && !data,
1952
+ error,
1953
+ refetch: mutate
1954
+ };
1955
+ };
1956
+
1957
+ // src/libraries/react/hooks/helpers/useAutumnBase.tsx
1958
+ var useAutumnBase = ({
1959
+ // AutumnContext,
1960
+ context,
1961
+ client,
1962
+ refetchCustomer
1963
+ }) => {
1964
+ const { attachDialog, paywallDialog } = context || {};
1965
+ const { refetch: refetchPricingTable } = usePricingTableBase({ client });
1966
+ const attachWithoutDialog = async (params) => {
1967
+ const result = await client.attach(params);
1968
+ if (result.error) {
1969
+ return result;
1970
+ }
1971
+ const data = result.data;
1972
+ if (data?.checkout_url && typeof window !== "undefined") {
1973
+ if (params.openInNewTab) {
1974
+ window.open(data.checkout_url, "_blank");
1975
+ } else {
1976
+ window.location.href = data.checkout_url;
1977
+ }
1978
+ }
1979
+ await refetchPricingTable();
1980
+ if (refetchCustomer) {
1981
+ await refetchCustomer();
1982
+ }
1983
+ attachDialog?.setOpen(false);
1984
+ return result;
1985
+ };
1986
+ const checkout = async (params) => {
1987
+ const { data, error } = await client.checkout(params);
1988
+ const { dialog, ...rest } = params;
1989
+ if (params.dialog && params.productIds) {
1990
+ throw new Error(
1991
+ "Dialog and productIds are not supported together in checkout()"
1992
+ );
1993
+ }
1994
+ if (error) {
1995
+ return { data, error };
1996
+ }
1997
+ const hasPrepaid = data.product.items.some(
1998
+ (item) => item.usage_model === "prepaid"
1999
+ );
2000
+ const showDialog = hasPrepaid && params.dialog;
2001
+ if (data.url && !showDialog) {
2002
+ if (params.openInNewTab) {
2003
+ window.open(data.url, "_blank");
2004
+ } else {
2005
+ window.location.href = data.url;
2006
+ }
2007
+ return { data, error };
2008
+ }
2009
+ if (params.dialog) {
2010
+ attachDialog?.setProps({ checkoutResult: data, checkoutParams: rest });
2011
+ attachDialog?.setComponent(params.dialog);
2012
+ attachDialog?.setOpen(true);
2013
+ }
2014
+ return { data, error };
2015
+ };
2016
+ const attachWithDialog = async (params) => {
2017
+ const { ...rest } = params;
2018
+ const { productId, entityId, entityData } = params;
2019
+ const checkRes = await client.check({
2020
+ productId,
2021
+ entityId,
2022
+ entityData,
2023
+ withPreview: true
2024
+ });
2025
+ if (checkRes.error) {
2026
+ return checkRes;
2027
+ }
2028
+ const preview = checkRes.data.preview;
2029
+ if (!preview) {
2030
+ return await attachWithoutDialog(rest);
2031
+ } else {
2032
+ attachDialog?.setProps({ preview, attachParams: rest });
2033
+ attachDialog?.setOpen(true);
2034
+ }
2035
+ return checkRes;
2036
+ };
2037
+ const attach = async (params) => {
2038
+ const { dialog } = params;
2039
+ if (dialog && !attachDialog?.open) {
2040
+ attachDialog?.setComponent(dialog);
2041
+ return await attachWithDialog(params);
2042
+ }
2043
+ return await attachWithoutDialog(params);
2044
+ };
2045
+ const cancel = async (params) => {
2046
+ const res = await client.cancel(params);
2047
+ if (res.error) {
2048
+ return res;
2049
+ }
2050
+ return res;
2051
+ };
2052
+ const track = async (params) => {
2053
+ const res = await client.track(params);
2054
+ if (res.error) {
2055
+ return res;
2056
+ }
2057
+ return res;
2058
+ };
2059
+ const openBillingPortal = async (params) => {
2060
+ const defaultParams = {
2061
+ openInNewTab: false
2062
+ };
2063
+ const finalParams = {
2064
+ ...defaultParams,
2065
+ ...params
2066
+ };
2067
+ const res = await client.openBillingPortal(finalParams);
2068
+ if (res.error) {
2069
+ return res;
2070
+ }
2071
+ const data = res.data;
2072
+ if (data?.url && typeof window !== "undefined") {
2073
+ if (finalParams.openInNewTab) {
2074
+ window.open(data.url, "_blank");
2075
+ } else {
2076
+ window.open(data.url, "_self");
2077
+ }
2078
+ return res;
2079
+ } else {
2080
+ return res;
2081
+ }
2082
+ };
2083
+ const setupPayment = async (params) => {
2084
+ const defaultParams = {
2085
+ openInNewTab: false
2086
+ };
2087
+ const finalParams = {
2088
+ ...defaultParams,
2089
+ ...params || {}
2090
+ };
2091
+ const res = await client.setupPayment(finalParams);
2092
+ if (res.data?.url && typeof window !== "undefined") {
2093
+ if (finalParams.openInNewTab) {
2094
+ window.open(res.data.url, "_blank");
2095
+ } else {
2096
+ window.open(res.data.url, "_self");
2097
+ }
2098
+ return res;
2099
+ } else {
2100
+ return res;
2101
+ }
2102
+ };
2103
+ return {
2104
+ attach,
2105
+ track,
2106
+ cancel,
2107
+ openBillingPortal,
2108
+ setupPayment,
2109
+ checkout
2110
+ };
2111
+ };
2112
+ // Annotate the CommonJS export names for ESM import in node:
2113
+ 0 && (module.exports = {
2114
+ useAutumnBase
2115
+ });