autumn-js 0.0.66 → 0.0.72

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 (390) hide show
  1. package/components.json +21 -0
  2. package/dist/libraries/backend/{chunk-NDN25XDG.mjs → chunk-2JZFMBVR.mjs} +1 -1
  3. package/dist/libraries/backend/chunk-45WVZY23.mjs +41 -0
  4. package/dist/libraries/backend/{chunk-NDS3EHT3.mjs → chunk-GUZSIYGF.mjs} +1 -1
  5. package/dist/libraries/backend/{chunk-W63TY2DI.mjs → chunk-J7UA442M.mjs} +70 -59
  6. package/dist/libraries/backend/chunk-PBBWXVWW.mjs +28 -0
  7. package/dist/libraries/backend/{chunk-FRL4IWBU.mjs → chunk-T4YSUMNB.mjs} +9 -5
  8. package/dist/libraries/backend/chunk-UNZHJTEY.mjs +18 -0
  9. package/dist/libraries/backend/{chunk-QXJ7YDTB.mjs → chunk-Y2VYFWJD.mjs} +1 -1
  10. package/dist/libraries/backend/{chunk-C2YFOJYP.mjs → chunk-ZF4V3SVZ.mjs} +13 -8
  11. package/dist/libraries/backend/express.d.mts +3 -2
  12. package/dist/libraries/backend/express.d.ts +3 -2
  13. package/dist/libraries/backend/express.js +168 -78
  14. package/dist/libraries/backend/express.mjs +15 -6
  15. package/dist/libraries/backend/fastify.js +149 -78
  16. package/dist/libraries/backend/fastify.mjs +8 -6
  17. package/dist/libraries/backend/hono.js +149 -78
  18. package/dist/libraries/backend/hono.mjs +8 -6
  19. package/dist/libraries/backend/next.js +259 -176
  20. package/dist/libraries/backend/next.mjs +116 -104
  21. package/dist/libraries/backend/react-router.js +149 -78
  22. package/dist/libraries/backend/react-router.mjs +8 -6
  23. package/dist/libraries/backend/{referralTypes-p6A_PZbz.d.ts → referralTypes-C-jpvu6u.d.mts} +63 -31
  24. package/dist/libraries/backend/{referralTypes-BdY-EkkQ.d.mts → referralTypes-qdpA4XBw.d.ts} +63 -31
  25. package/dist/libraries/backend/remix_dep.js +149 -78
  26. package/dist/libraries/backend/remix_dep.mjs +8 -6
  27. package/dist/libraries/backend/{response-ByHPEnHs.d.mts → response-CV6KGWH5.d.mts} +1 -0
  28. package/dist/libraries/backend/{response-ByHPEnHs.d.ts → response-CV6KGWH5.d.ts} +1 -0
  29. package/dist/libraries/backend/routes/backendRouter.js +147 -75
  30. package/dist/libraries/backend/routes/backendRouter.mjs +8 -6
  31. package/dist/libraries/backend/routes/entityRoutes.js +123 -66
  32. package/dist/libraries/backend/routes/entityRoutes.mjs +5 -3
  33. package/dist/libraries/backend/routes/genRoutes.js +124 -71
  34. package/dist/libraries/backend/routes/genRoutes.mjs +4 -3
  35. package/dist/libraries/backend/routes/productRoutes.d.mts +5 -0
  36. package/dist/libraries/backend/routes/productRoutes.d.ts +5 -0
  37. package/dist/libraries/{react/hooks/useEntityProvider.js → backend/routes/productRoutes.js} +210 -96
  38. package/dist/libraries/backend/routes/productRoutes.mjs +11 -0
  39. package/dist/libraries/backend/routes/referralRoutes.js +124 -69
  40. package/dist/libraries/backend/routes/referralRoutes.mjs +4 -3
  41. package/dist/libraries/backend/supabase.js +149 -78
  42. package/dist/libraries/backend/supabase.mjs +8 -6
  43. package/dist/libraries/backend/tanstack.js +152 -79
  44. package/dist/libraries/backend/tanstack.mjs +11 -9
  45. package/dist/libraries/backend/utils/backendRes.d.mts +1 -1
  46. package/dist/libraries/backend/utils/backendRes.d.ts +1 -1
  47. package/dist/libraries/backend/utils/backendRes.js +114 -59
  48. package/dist/libraries/backend/utils/backendRes.mjs +3 -1
  49. package/dist/libraries/backend/utils/logBackendErrors.d.mts +5 -0
  50. package/dist/libraries/backend/utils/logBackendErrors.d.ts +5 -0
  51. package/dist/libraries/backend/utils/logBackendErrors.js +84 -0
  52. package/dist/libraries/backend/utils/logBackendErrors.mjs +14 -0
  53. package/dist/libraries/backend/utils/secretKeyCheck.d.mts +13 -0
  54. package/dist/libraries/backend/utils/secretKeyCheck.d.ts +13 -0
  55. package/dist/libraries/backend/utils/secretKeyCheck.js +42 -0
  56. package/dist/libraries/backend/utils/secretKeyCheck.mjs +7 -0
  57. package/dist/libraries/backend/utils/withAuth.d.mts +3 -3
  58. package/dist/libraries/backend/utils/withAuth.d.ts +3 -3
  59. package/dist/libraries/backend/utils/withAuth.js +123 -66
  60. package/dist/libraries/backend/utils/withAuth.mjs +4 -2
  61. package/dist/libraries/react/AutumnContext.d.mts +15 -18
  62. package/dist/libraries/react/AutumnContext.d.ts +15 -18
  63. package/dist/libraries/react/AutumnContext.js +189 -101
  64. package/dist/libraries/react/AutumnContext.mjs +6 -4
  65. package/dist/libraries/react/BaseAutumnProvider.d.mts +11 -7
  66. package/dist/libraries/react/BaseAutumnProvider.d.ts +11 -7
  67. package/dist/libraries/react/BaseAutumnProvider.js +594 -263
  68. package/dist/libraries/react/BaseAutumnProvider.mjs +12 -8
  69. package/dist/libraries/react/{ReactAutumnClient-BQtmw21U.d.mts → ReactAutumnClient-4e3t4WTF.d.mts} +40 -25
  70. package/dist/libraries/react/{ReactAutumnClient-DNcV0gAT.d.ts → ReactAutumnClient-B-lWmwRW.d.ts} +40 -25
  71. package/dist/libraries/react/ReactAutumnProvider.d.mts +4 -3
  72. package/dist/libraries/react/ReactAutumnProvider.d.ts +4 -3
  73. package/dist/libraries/react/ReactAutumnProvider.js +610 -266
  74. package/dist/libraries/react/ReactAutumnProvider.mjs +12 -9
  75. package/dist/libraries/react/{response-B1KyqUB9.d.ts → checkTypes-BDNI_s2B.d.ts} +42 -55
  76. package/dist/libraries/react/{response-B5dHU3I9.d.mts → checkTypes-CyKIOmeF.d.mts} +42 -55
  77. package/dist/libraries/react/chunk-2XYYCR4J.mjs +276 -0
  78. package/dist/libraries/react/chunk-4CGZZYLG.mjs +2487 -0
  79. package/dist/libraries/react/chunk-4PX3AQKX.mjs +53 -0
  80. package/dist/libraries/react/chunk-7PRD7RPD.mjs +20 -0
  81. package/dist/libraries/react/chunk-B7HGBQCO.mjs +48 -0
  82. package/dist/libraries/react/chunk-BCMBFJ7E.mjs +125 -0
  83. package/dist/libraries/react/{chunk-STABYMUY.mjs → chunk-CE5BBB5H.mjs} +58 -27
  84. package/dist/libraries/react/chunk-CIBQ4BJU.mjs +19 -0
  85. package/dist/libraries/react/{chunk-OCZFV7OX.mjs → chunk-EH2VPTFH.mjs} +104 -56
  86. package/dist/libraries/react/chunk-FHANCAHB.mjs +17 -0
  87. package/dist/libraries/react/chunk-GTF7A5TG.mjs +76 -0
  88. package/dist/libraries/react/chunk-JFXBUWKA.mjs +50 -0
  89. package/dist/libraries/react/chunk-MY2ODATB.mjs +51 -0
  90. package/dist/libraries/react/chunk-NEV76K4V.mjs +552 -0
  91. package/dist/libraries/react/chunk-O4HHXBGR.mjs +101 -0
  92. package/dist/libraries/react/chunk-Q7CK32YT.mjs +172 -0
  93. package/dist/libraries/react/chunk-QBBE72EF.mjs +57 -0
  94. package/dist/libraries/react/{chunk-PW6WFMLB.mjs → chunk-QMIIDFRP.mjs} +10 -37
  95. package/dist/libraries/react/chunk-TFGQQAVB.mjs +38 -0
  96. package/dist/{next/client/hooks/useEntityProvider.js → libraries/react/chunk-X3HJKZGO.mjs} +17 -11
  97. package/dist/libraries/react/chunk-YUV2Y2RW.mjs +12 -0
  98. package/dist/libraries/react/chunk-ZKHBOCMO.mjs +17 -0
  99. package/dist/libraries/react/{chunk-O4SNGQNB.mjs → chunk-ZQ6LDLK5.mjs} +67 -65
  100. package/dist/libraries/react/chunk-ZWO4QYXI.mjs +20 -0
  101. package/dist/libraries/react/chunk-ZXE5MFKL.mjs +45 -0
  102. package/dist/libraries/react/client/ReactAutumnClient.d.mts +6 -5
  103. package/dist/libraries/react/client/ReactAutumnClient.d.ts +6 -5
  104. package/dist/libraries/react/client/ReactAutumnClient.js +177 -76
  105. package/dist/libraries/react/client/ReactAutumnClient.mjs +5 -3
  106. package/dist/libraries/react/client/clientCompMethods.d.mts +6 -5
  107. package/dist/libraries/react/client/clientCompMethods.d.ts +6 -5
  108. package/dist/libraries/react/client/clientCusMethods.d.mts +6 -5
  109. package/dist/libraries/react/client/clientCusMethods.d.ts +6 -5
  110. package/dist/libraries/react/client/clientEntityMethods.d.mts +6 -5
  111. package/dist/libraries/react/client/clientEntityMethods.d.ts +6 -5
  112. package/dist/libraries/react/client/clientGenMethods.d.mts +7 -6
  113. package/dist/libraries/react/client/clientGenMethods.d.ts +7 -6
  114. package/dist/libraries/react/client/clientProdMethods.d.mts +15 -0
  115. package/dist/libraries/react/client/clientProdMethods.d.ts +15 -0
  116. package/dist/libraries/react/client/clientProdMethods.js +35 -0
  117. package/dist/libraries/react/client/clientProdMethods.mjs +8 -0
  118. package/dist/libraries/react/client/clientReferralMethods.d.mts +6 -5
  119. package/dist/libraries/react/client/clientReferralMethods.d.ts +6 -5
  120. package/dist/libraries/react/client/types/clientEntTypes.d.mts +1 -1
  121. package/dist/libraries/react/client/types/clientEntTypes.d.ts +1 -1
  122. package/dist/libraries/react/client/types/clientGenTypes.d.mts +2 -2
  123. package/dist/libraries/react/client/types/clientGenTypes.d.ts +2 -2
  124. package/dist/libraries/react/client/types/clientPricingTableTypes.d.mts +8 -10
  125. package/dist/libraries/react/client/types/clientPricingTableTypes.d.ts +8 -10
  126. package/dist/libraries/react/client/types/clientProdTypes.d.mts +5 -0
  127. package/dist/libraries/react/client/types/clientProdTypes.d.ts +5 -0
  128. package/dist/libraries/react/client/types/clientProdTypes.js +20 -0
  129. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.mts +52 -0
  130. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.ts +52 -0
  131. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.js +4387 -0
  132. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.mjs +50 -0
  133. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.mts +10 -0
  134. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.ts +10 -0
  135. package/dist/libraries/react/components/attach-dialog/lib/attach-content.js +148 -0
  136. package/dist/libraries/react/components/attach-dialog/lib/attach-content.mjs +8 -0
  137. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.mts +12 -0
  138. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.ts +12 -0
  139. package/dist/libraries/react/components/check-dialog/check-dialog-synced.js +2895 -0
  140. package/dist/libraries/react/components/check-dialog/check-dialog-synced.mjs +13 -0
  141. package/dist/libraries/react/components/check-dialog/lib/check-content.d.mts +9 -0
  142. package/dist/libraries/react/components/check-dialog/lib/check-content.d.ts +9 -0
  143. package/dist/libraries/react/components/check-dialog/lib/check-content.js +74 -0
  144. package/dist/libraries/react/components/check-dialog/lib/check-content.mjs +8 -0
  145. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.mts +7 -0
  146. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.ts +7 -0
  147. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.js +80 -0
  148. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.mjs +8 -0
  149. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +51 -0
  150. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +51 -0
  151. package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +4684 -0
  152. package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +53 -0
  153. package/dist/libraries/react/components/ui/button.d.mts +14 -0
  154. package/dist/libraries/react/components/ui/button.d.ts +14 -0
  155. package/dist/libraries/react/components/ui/button.js +2601 -0
  156. package/dist/libraries/react/components/ui/button.mjs +11 -0
  157. package/dist/libraries/react/components/ui/dialog.d.mts +18 -0
  158. package/dist/libraries/react/components/ui/dialog.d.ts +18 -0
  159. package/dist/libraries/react/components/ui/dialog.js +2774 -0
  160. package/dist/libraries/react/components/ui/dialog.mjs +27 -0
  161. package/dist/libraries/react/components/ui/switch.d.mts +7 -0
  162. package/dist/libraries/react/components/ui/switch.d.ts +7 -0
  163. package/dist/libraries/react/components/ui/switch.js +2550 -0
  164. package/dist/libraries/react/components/ui/switch.mjs +9 -0
  165. package/dist/libraries/react/{cusTypes-Cf-s9PYP.d.ts → cusTypes-DNx5bwlw.d.mts} +13 -5
  166. package/dist/libraries/react/{cusTypes-Cf-s9PYP.d.mts → cusTypes-DNx5bwlw.d.ts} +13 -5
  167. package/dist/libraries/react/{entTypes-CV-165S-.d.mts → entTypes-8gkfAi3g.d.mts} +1 -1
  168. package/dist/libraries/react/{entTypes-BbIk0Toa.d.ts → entTypes-C8jD10M8.d.ts} +1 -1
  169. package/dist/libraries/react/{error-CG2LXoa7.d.mts → error-DHbclCVh.d.mts} +1 -0
  170. package/dist/libraries/react/{error-CG2LXoa7.d.ts → error-DHbclCVh.d.ts} +1 -0
  171. package/dist/libraries/react/errorUtils/logAuthError.d.mts +8 -0
  172. package/dist/libraries/react/errorUtils/logAuthError.d.ts +8 -0
  173. package/dist/libraries/react/{hooks/usePricingTableProvider.js → errorUtils/logAuthError.js} +129 -97
  174. package/dist/libraries/react/errorUtils/logAuthError.mjs +21 -0
  175. package/dist/libraries/react/errorUtils/logFetchError.d.mts +8 -0
  176. package/dist/libraries/react/errorUtils/logFetchError.d.ts +8 -0
  177. package/dist/libraries/react/errorUtils/logFetchError.js +42 -0
  178. package/dist/libraries/react/errorUtils/logFetchError.mjs +8 -0
  179. package/dist/libraries/react/hooks/handleAllowed.d.mts +14 -0
  180. package/dist/libraries/react/hooks/handleAllowed.d.ts +14 -0
  181. package/dist/libraries/react/hooks/handleAllowed.js +73 -0
  182. package/dist/libraries/react/hooks/handleAllowed.mjs +8 -0
  183. package/dist/libraries/react/hooks/useAutumn.d.mts +12 -40
  184. package/dist/libraries/react/hooks/useAutumn.d.ts +12 -40
  185. package/dist/libraries/react/hooks/useAutumn.js +416 -166
  186. package/dist/libraries/react/hooks/useAutumn.mjs +9 -5
  187. package/dist/libraries/react/hooks/useAutumnBase.d.mts +23 -0
  188. package/dist/libraries/react/hooks/useAutumnBase.d.ts +23 -0
  189. package/dist/libraries/react/hooks/useAutumnBase.js +1063 -0
  190. package/dist/libraries/react/hooks/useAutumnBase.mjs +20 -0
  191. package/dist/libraries/react/hooks/useCustomer.d.mts +11 -17
  192. package/dist/libraries/react/hooks/useCustomer.d.ts +11 -17
  193. package/dist/libraries/react/hooks/useCustomer.js +594 -120
  194. package/dist/libraries/react/hooks/useCustomer.mjs +11 -5
  195. package/dist/libraries/react/hooks/useCustomerBase.d.mts +38 -0
  196. package/dist/libraries/react/hooks/useCustomerBase.d.ts +38 -0
  197. package/dist/libraries/react/hooks/useCustomerBase.js +1168 -0
  198. package/dist/libraries/react/hooks/useCustomerBase.mjs +22 -0
  199. package/dist/libraries/react/hooks/useEntity.d.mts +14 -6
  200. package/dist/libraries/react/hooks/useEntity.d.ts +14 -6
  201. package/dist/libraries/react/hooks/useEntity.js +272 -142
  202. package/dist/libraries/react/hooks/useEntity.mjs +9 -6
  203. package/dist/libraries/react/hooks/useEntityBase.d.mts +33 -0
  204. package/dist/libraries/react/hooks/useEntityBase.d.ts +33 -0
  205. package/dist/libraries/react/hooks/useEntityBase.js +134 -0
  206. package/dist/libraries/react/hooks/useEntityBase.mjs +9 -0
  207. package/dist/libraries/react/hooks/usePricingTable.d.mts +10 -13
  208. package/dist/libraries/react/hooks/usePricingTable.d.ts +10 -13
  209. package/dist/libraries/react/hooks/usePricingTable.js +339 -125
  210. package/dist/libraries/react/hooks/usePricingTable.mjs +8 -5
  211. package/dist/libraries/react/hooks/usePricingTableBase.d.mts +27 -0
  212. package/dist/libraries/react/hooks/usePricingTableBase.d.ts +27 -0
  213. package/dist/libraries/react/hooks/usePricingTableBase.js +926 -0
  214. package/dist/libraries/react/hooks/usePricingTableBase.mjs +19 -0
  215. package/dist/libraries/react/hooks/useProductsBase.d.mts +3 -0
  216. package/dist/libraries/react/hooks/useProductsBase.d.ts +3 -0
  217. package/dist/libraries/react/hooks/useProductsBase.js +776 -0
  218. package/dist/libraries/react/hooks/useProductsBase.mjs +29 -0
  219. package/dist/libraries/react/index.d.ts +485 -16
  220. package/dist/libraries/react/index.js +4201 -493
  221. package/dist/libraries/react/index.mjs +4869 -30
  222. package/dist/libraries/react/lib/utils.d.mts +5 -0
  223. package/dist/libraries/react/lib/utils.d.ts +5 -0
  224. package/dist/libraries/react/lib/utils.js +2511 -0
  225. package/dist/libraries/react/lib/utils.mjs +8 -0
  226. package/dist/libraries/react/response-9K8DyGXf.d.ts +40 -0
  227. package/dist/libraries/react/response-ChCmaLBk.d.mts +40 -0
  228. package/dist/libraries/react/utils/compareParams.mjs +18 -3
  229. package/dist/next/AutumnProvider-BdIwgk_j.d.mts +136 -0
  230. package/dist/next/AutumnProvider-BdIwgk_j.d.ts +136 -0
  231. package/dist/next/AutumnProvider.d.mts +2 -0
  232. package/dist/next/AutumnProvider.d.ts +2 -0
  233. package/dist/next/AutumnProvider.js +2 -2
  234. package/dist/next/AutumnProvider.mjs +2 -2
  235. package/dist/next/client/AutumnClientProvider.d.mts +2 -0
  236. package/dist/next/client/AutumnClientProvider.d.ts +2 -0
  237. package/dist/next/client/AutumnClientProvider.mjs +2 -0
  238. package/dist/next/client/NextAutumnClient.d.mts +102 -0
  239. package/dist/next/client/NextAutumnClient.d.ts +102 -0
  240. package/dist/next/client/NextAutumnClient.js +95 -0
  241. package/dist/next/client/NextAutumnClient.mjs +95 -0
  242. package/dist/next/client/NextAutumnProvider.d.mts +10 -0
  243. package/dist/next/client/NextAutumnProvider.d.ts +10 -0
  244. package/dist/next/client/NextAutumnProvider.js +21 -0
  245. package/dist/next/client/NextAutumnProvider.mjs +21 -0
  246. package/dist/next/client/checkTypes-BHxu_xEV.d.ts +126 -0
  247. package/dist/next/client/checkTypes-CEaWu4S3.d.mts +126 -0
  248. package/dist/next/client/clientGenTypes-BRfigzSY.d.mts +98 -0
  249. package/dist/next/client/clientGenTypes-i3cKamAv.d.ts +98 -0
  250. package/dist/{sdk/referrals.d.ts → next/client/clientReferralTypes-C9JiOk2s.d.mts} +8 -9
  251. package/dist/{sdk/referrals.d.mts → next/client/clientReferralTypes-C9JiOk2s.d.ts} +8 -9
  252. package/dist/next/client/clientUtils.d.mts +2 -2
  253. package/dist/next/client/clientUtils.d.ts +2 -2
  254. package/dist/next/client/cusTypes-CV5q3GIA.d.mts +116 -0
  255. package/dist/next/client/cusTypes-CV5q3GIA.d.ts +116 -0
  256. package/dist/next/client/{entTypes-C9TNWMk6.d.mts → entTypes-C1-bumir.d.mts} +5 -2
  257. package/dist/next/client/{entTypes-BDqnMLZ4.d.ts → entTypes-CKc2qHBt.d.ts} +5 -2
  258. package/dist/next/client/handleAllowed-B8TBAzfI.d.mts +7 -0
  259. package/dist/next/client/handleAllowed-B8TBAzfI.d.ts +7 -0
  260. package/dist/next/client/hooks/useAutumn.d.mts +8 -33
  261. package/dist/next/client/hooks/useAutumn.d.ts +8 -33
  262. package/dist/next/client/hooks/useAutumn.js +3 -236
  263. package/dist/next/client/hooks/useAutumn.mjs +3 -236
  264. package/dist/next/client/hooks/useCustomer.d.mts +26 -20
  265. package/dist/next/client/hooks/useCustomer.d.ts +26 -20
  266. package/dist/next/client/hooks/useCustomer.js +6 -120
  267. package/dist/next/client/hooks/useCustomer.mjs +6 -120
  268. package/dist/next/client/hooks/useEntity.d.mts +13 -5
  269. package/dist/next/client/hooks/useEntity.d.ts +13 -5
  270. package/dist/next/client/hooks/useEntity.js +3 -2
  271. package/dist/next/client/hooks/useEntity.mjs +3 -2
  272. package/dist/next/client/hooks/usePricingTable.d.mts +26 -13
  273. package/dist/next/client/hooks/usePricingTable.d.ts +26 -13
  274. package/dist/next/client/hooks/usePricingTable.js +4 -50
  275. package/dist/next/client/hooks/usePricingTable.mjs +4 -50
  276. package/dist/next/client/types.d.mts +12 -3
  277. package/dist/next/client/types.d.ts +12 -3
  278. package/dist/next/enums.d.mts +5 -0
  279. package/dist/next/enums.d.ts +5 -0
  280. package/dist/next/index.d.mts +372 -233
  281. package/dist/next/index.d.ts +372 -233
  282. package/dist/next/index.js +13 -8
  283. package/dist/next/index.mjs +6 -4
  284. package/dist/next/server/auth/handleAuthProvider.d.mts +2 -2
  285. package/dist/next/server/auth/handleAuthProvider.d.ts +2 -2
  286. package/dist/next/server/auth/supabase-wrapper.d.mts +1 -3
  287. package/dist/next/server/auth/supabase-wrapper.d.ts +1 -3
  288. package/dist/next/server/auth/{withAuth.d.mts → withNextAuth.d.mts} +1 -1
  289. package/dist/next/server/auth/{withAuth.d.ts → withNextAuth.d.ts} +1 -1
  290. package/dist/next/server/clientEntTypes-BOVTwIKv.d.mts +14 -0
  291. package/dist/next/server/clientEntTypes-BOVTwIKv.d.ts +14 -0
  292. package/dist/next/server/componentActions.d.mts +1 -1
  293. package/dist/next/server/componentActions.d.ts +1 -1
  294. package/dist/next/server/componentActions.js +1 -1
  295. package/dist/next/server/componentActions.mjs +1 -1
  296. package/dist/next/server/cusActions.d.mts +243 -16
  297. package/dist/next/server/cusActions.d.ts +243 -16
  298. package/dist/next/server/cusActions.js +12 -22
  299. package/dist/next/server/cusActions.mjs +12 -22
  300. package/dist/next/server/{cusTypes-BD42O-7Z.d.mts → cusTypes-Cc8NWXXF.d.mts} +12 -8
  301. package/dist/next/server/{cusTypes-BD42O-7Z.d.ts → cusTypes-Cc8NWXXF.d.ts} +12 -8
  302. package/dist/next/server/genActions.d.mts +41 -26
  303. package/dist/next/server/genActions.d.ts +41 -26
  304. package/dist/next/server/genActions.js +14 -62
  305. package/dist/next/server/genActions.mjs +14 -62
  306. package/dist/next/server/{response-BCg7kiiN.d.mts → response-eH4S4sg0.d.mts} +1 -0
  307. package/dist/next/server/{response-BCg7kiiN.d.ts → response-eH4S4sg0.d.ts} +1 -0
  308. package/dist/next/server/utils.d.mts +1 -1
  309. package/dist/next/server/utils.d.ts +1 -1
  310. package/dist/sdk/index.d.mts +406 -27
  311. package/dist/sdk/index.d.ts +406 -27
  312. package/dist/sdk/index.js +107 -72
  313. package/dist/sdk/index.mjs +103 -72
  314. package/dist/styles/global.css +1147 -0
  315. package/dist/utils/chunk-V7R5DCYR.mjs +41 -0
  316. package/dist/utils/encryptUtils.js +104 -56
  317. package/dist/utils/encryptUtils.mjs +70 -56
  318. package/dist/utils/logger.d.mts +45 -0
  319. package/dist/utils/logger.d.ts +45 -0
  320. package/dist/utils/logger.js +75 -0
  321. package/dist/utils/logger.mjs +6 -0
  322. package/dist/utils/toSnakeCase.d.mts +3 -0
  323. package/dist/utils/toSnakeCase.d.ts +3 -0
  324. package/dist/utils/toSnakeCase.js +45 -0
  325. package/dist/utils/toSnakeCase.mjs +20 -0
  326. package/package.json +25 -7
  327. package/postcss.config.js +7 -0
  328. package/scripts/sync-registry.ts +292 -0
  329. package/tailwind.config.js +57 -0
  330. package/tsup.config.ts +87 -29
  331. package/tsup.dev.config.ts +196 -0
  332. package/dist/libraries/react/chunk-5LNSASJV.mjs +0 -33
  333. package/dist/libraries/react/chunk-CZA5WF64.mjs +0 -51
  334. package/dist/libraries/react/chunk-ILWLFCTA.mjs +0 -61
  335. package/dist/libraries/react/chunk-KHU4NOQJ.mjs +0 -30
  336. package/dist/libraries/react/chunk-PIIGEXKQ.mjs +0 -77
  337. package/dist/libraries/react/chunk-PYM4YPRD.mjs +0 -38
  338. package/dist/libraries/react/chunk-Q5SSQSDP.mjs +0 -48
  339. package/dist/libraries/react/chunk-URAFNMTH.mjs +0 -48
  340. package/dist/libraries/react/chunk-VN4AVW2V.mjs +0 -24
  341. package/dist/libraries/react/hooks/useCustomerProvider.d.mts +0 -28
  342. package/dist/libraries/react/hooks/useCustomerProvider.d.ts +0 -28
  343. package/dist/libraries/react/hooks/useCustomerProvider.js +0 -100
  344. package/dist/libraries/react/hooks/useCustomerProvider.mjs +0 -8
  345. package/dist/libraries/react/hooks/useEntityProvider.d.mts +0 -33
  346. package/dist/libraries/react/hooks/useEntityProvider.d.ts +0 -33
  347. package/dist/libraries/react/hooks/useEntityProvider.mjs +0 -9
  348. package/dist/libraries/react/hooks/usePricingTableProvider.d.mts +0 -19
  349. package/dist/libraries/react/hooks/usePricingTableProvider.d.ts +0 -19
  350. package/dist/libraries/react/hooks/usePricingTableProvider.mjs +0 -9
  351. package/dist/libraries/react/index.d.mts +0 -16
  352. package/dist/next/client/AutumnContext.d.mts +0 -9
  353. package/dist/next/client/AutumnContext.d.ts +0 -9
  354. package/dist/next/client/AutumnContext.js +0 -47
  355. package/dist/next/client/AutumnContext.mjs +0 -47
  356. package/dist/next/client/AutumnProvider.d.mts +0 -11
  357. package/dist/next/client/AutumnProvider.d.ts +0 -11
  358. package/dist/next/client/AutumnProvider.js +0 -117
  359. package/dist/next/client/AutumnProvider.mjs +0 -117
  360. package/dist/next/client/clientEntTypes-pqnB95m3.d.mts +0 -9
  361. package/dist/next/client/clientEntTypes-pqnB95m3.d.ts +0 -9
  362. package/dist/next/client/cusTypes-sh5_cN7N.d.mts +0 -86
  363. package/dist/next/client/cusTypes-sh5_cN7N.d.ts +0 -86
  364. package/dist/next/client/hooks/types.d.mts +0 -27
  365. package/dist/next/client/hooks/types.d.ts +0 -27
  366. package/dist/next/client/hooks/useEntityProvider.d.mts +0 -11
  367. package/dist/next/client/hooks/useEntityProvider.d.ts +0 -11
  368. package/dist/next/client/hooks/useEntityProvider.mjs +0 -52
  369. package/dist/next/server/clientEntTypes-B3DRcw3U.d.mts +0 -216
  370. package/dist/next/server/clientEntTypes-BRUTcNUD.d.ts +0 -216
  371. package/dist/sdk/check.d.mts +0 -47
  372. package/dist/sdk/check.d.ts +0 -47
  373. package/dist/sdk/cusTypes-BTV6ui4e.d.ts +0 -95
  374. package/dist/sdk/cusTypes-wBxbodEe.d.mts +0 -95
  375. package/dist/sdk/customers.d.mts +0 -2
  376. package/dist/sdk/customers.d.ts +0 -2
  377. package/dist/sdk/entTypes-BwLV9Jn4.d.ts +0 -35
  378. package/dist/sdk/entTypes-CJjjWn54.d.mts +0 -35
  379. package/dist/sdk/entities.d.mts +0 -3
  380. package/dist/sdk/entities.d.ts +0 -3
  381. package/dist/sdk/general.d.mts +0 -104
  382. package/dist/sdk/general.d.ts +0 -104
  383. package/dist/sdk/prodEnums-C1lccCWI.d.mts +0 -28
  384. package/dist/sdk/prodEnums-C1lccCWI.d.ts +0 -28
  385. package/dist/sdk/products.d.mts +0 -47
  386. package/dist/sdk/products.d.ts +0 -47
  387. /package/dist/{next/client/hooks/types.js → libraries/react/client/types/clientProdTypes.mjs} +0 -0
  388. /package/dist/next/client/{hooks/types.mjs → AutumnClientProvider.js} +0 -0
  389. /package/dist/next/server/auth/{withAuth.js → withNextAuth.js} +0 -0
  390. /package/dist/next/server/auth/{withAuth.mjs → withNextAuth.mjs} +0 -0
@@ -0,0 +1,552 @@
1
+ "use client";
2
+
3
+ import {
4
+ getAttachContent
5
+ } from "./chunk-BCMBFJ7E.mjs";
6
+ import {
7
+ getPricingTableContent
8
+ } from "./chunk-QBBE72EF.mjs";
9
+ import {
10
+ Button
11
+ } from "./chunk-O4HHXBGR.mjs";
12
+ import {
13
+ ArrowRight,
14
+ Check,
15
+ Dialog,
16
+ DialogContent,
17
+ DialogFooter,
18
+ DialogTitle,
19
+ LoaderCircle
20
+ } from "./chunk-2XYYCR4J.mjs";
21
+ import {
22
+ Switch
23
+ } from "./chunk-TFGQQAVB.mjs";
24
+ import {
25
+ usePricingTable
26
+ } from "./chunk-7PRD7RPD.mjs";
27
+ import {
28
+ cn
29
+ } from "./chunk-4CGZZYLG.mjs";
30
+ import {
31
+ useCustomer
32
+ } from "./chunk-ZWO4QYXI.mjs";
33
+
34
+ // src/libraries/react/components/pricing-table/pricing-table-synced.tsx
35
+ import React2 from "react";
36
+
37
+ // src/libraries/react/components/attach-dialog/attach-dialog-synced.tsx
38
+ import { useEffect, useState } from "react";
39
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
40
+ function AttachDialog(params) {
41
+ const { attach } = useCustomer();
42
+ const [loading, setLoading] = useState(false);
43
+ const [optionsInput, setOptionsInput] = useState(
44
+ params?.preview?.options || []
45
+ );
46
+ const getTotalPrice = () => {
47
+ let sum = due_today?.price || 0;
48
+ optionsInput.forEach((option) => {
49
+ if (option.price && option.quantity) {
50
+ sum += option.price * (option.quantity / option.billing_units);
51
+ }
52
+ });
53
+ return sum;
54
+ };
55
+ useEffect(() => {
56
+ setOptionsInput(params?.preview?.options || []);
57
+ }, [params?.preview?.options]);
58
+ if (!params || !params.preview) {
59
+ return /* @__PURE__ */ jsx(Fragment, {});
60
+ }
61
+ const { open, setOpen, preview } = params;
62
+ const { items, due_today } = preview;
63
+ const { title, message } = getAttachContent(preview);
64
+ return /* @__PURE__ */ jsx(Dialog, { open, onOpenChange: setOpen, children: /* @__PURE__ */ jsxs(
65
+ DialogContent,
66
+ {
67
+ className: cn("p-0 pt-4 gap-0 text-foreground overflow-hidden text-sm"),
68
+ children: [
69
+ /* @__PURE__ */ jsx(DialogTitle, { className: cn("px-6 mb-1 "), children: title }),
70
+ /* @__PURE__ */ jsx("div", { className: cn("px-6 mt-1 mb-4 text-muted-foreground"), children: message }),
71
+ (items || optionsInput.length > 0) && /* @__PURE__ */ jsxs("div", { className: "mb-6 px-6", children: [
72
+ items?.map((item) => /* @__PURE__ */ jsxs(PriceItem, { children: [
73
+ /* @__PURE__ */ jsx("span", { className: "truncate flex-1", children: item.description }),
74
+ /* @__PURE__ */ jsx("span", { children: item.price })
75
+ ] }, item.description)),
76
+ optionsInput?.map((option, index) => {
77
+ return /* @__PURE__ */ jsx(
78
+ OptionsInput,
79
+ {
80
+ option,
81
+ optionsInput,
82
+ setOptionsInput,
83
+ index
84
+ },
85
+ option.feature_name
86
+ );
87
+ })
88
+ ] }),
89
+ /* @__PURE__ */ jsxs(DialogFooter, { className: "flex flex-col sm:flex-row justify-between gap-x-4 py-2 pl-6 pr-3 bg-secondary border-t shadow-inner", children: [
90
+ due_today && /* @__PURE__ */ jsxs(TotalPrice, { children: [
91
+ /* @__PURE__ */ jsx("span", { children: "Due Today" }),
92
+ /* @__PURE__ */ jsx("span", { children: new Intl.NumberFormat("en-US", {
93
+ style: "currency",
94
+ currency: due_today.currency
95
+ }).format(getTotalPrice()) })
96
+ ] }),
97
+ /* @__PURE__ */ jsx(
98
+ Button,
99
+ {
100
+ size: "sm",
101
+ onClick: async () => {
102
+ setLoading(true);
103
+ await attach({
104
+ productId: preview.product_id,
105
+ options: optionsInput.map((option) => ({
106
+ featureId: option.feature_id,
107
+ quantity: option.quantity || 0
108
+ }))
109
+ });
110
+ setOpen(false);
111
+ setLoading(false);
112
+ },
113
+ disabled: loading,
114
+ className: "min-w-16 flex items-center gap-2",
115
+ children: loading ? /* @__PURE__ */ jsx(LoaderCircle, { className: "w-4 h-4 animate-spin" }) : /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("span", { className: "whitespace-nowrap flex gap-1", children: "Confirm" }) })
116
+ }
117
+ )
118
+ ] })
119
+ ]
120
+ }
121
+ ) });
122
+ }
123
+ var PriceItem = ({
124
+ children,
125
+ className,
126
+ ...props
127
+ }) => {
128
+ return /* @__PURE__ */ jsx(
129
+ "div",
130
+ {
131
+ className: cn(
132
+ "flex flex-col pb-4 sm:pb-0 gap-1 sm:flex-row justify-between sm:h-7 sm:gap-2 sm:items-center",
133
+ className
134
+ ),
135
+ ...props,
136
+ children
137
+ }
138
+ );
139
+ };
140
+ var OptionsInput = ({
141
+ className,
142
+ option,
143
+ optionsInput,
144
+ setOptionsInput,
145
+ index,
146
+ ...props
147
+ }) => {
148
+ const { feature_name, billing_units, quantity, price } = option;
149
+ return /* @__PURE__ */ jsxs(PriceItem, { children: [
150
+ /* @__PURE__ */ jsx("span", { children: feature_name }),
151
+ /* @__PURE__ */ jsx(
152
+ QuantityInput,
153
+ {
154
+ value: quantity ? quantity / billing_units : "",
155
+ onChange: (e) => {
156
+ const newOptions = [...optionsInput];
157
+ newOptions[index].quantity = parseInt(e.target.value) * billing_units;
158
+ setOptionsInput(newOptions);
159
+ },
160
+ children: /* @__PURE__ */ jsxs("span", { className: "", children: [
161
+ "\xD7 $",
162
+ price,
163
+ " per ",
164
+ billing_units === 1 ? " " : billing_units,
165
+ " ",
166
+ feature_name
167
+ ] })
168
+ },
169
+ feature_name
170
+ )
171
+ ] }, feature_name);
172
+ };
173
+ var QuantityInput = ({
174
+ children,
175
+ onChange,
176
+ value,
177
+ className,
178
+ ...props
179
+ }) => {
180
+ const currentValue = Number(value) || 0;
181
+ const handleValueChange = (newValue) => {
182
+ const syntheticEvent = {
183
+ target: { value: String(newValue) }
184
+ };
185
+ onChange(syntheticEvent);
186
+ };
187
+ return /* @__PURE__ */ jsxs(
188
+ "div",
189
+ {
190
+ className: cn(className, "flex flex-row items-center gap-4"),
191
+ ...props,
192
+ children: [
193
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
194
+ /* @__PURE__ */ jsx(
195
+ Button,
196
+ {
197
+ variant: "outline",
198
+ size: "icon",
199
+ onClick: () => currentValue > 0 && handleValueChange(currentValue - 1),
200
+ disabled: currentValue <= 0,
201
+ className: "h-6 w-6 pb-0.5",
202
+ children: "-"
203
+ }
204
+ ),
205
+ /* @__PURE__ */ jsx("span", { className: "w-8 text-center text-foreground", children: currentValue }),
206
+ /* @__PURE__ */ jsx(
207
+ Button,
208
+ {
209
+ variant: "outline",
210
+ size: "icon",
211
+ onClick: () => handleValueChange(currentValue + 1),
212
+ className: "h-6 w-6 pb-0.5",
213
+ children: "+"
214
+ }
215
+ )
216
+ ] }),
217
+ children
218
+ ]
219
+ }
220
+ );
221
+ };
222
+ var TotalPrice = ({ children }) => {
223
+ return /* @__PURE__ */ jsx("div", { className: "w-full font-semibold flex justify-between items-center", children });
224
+ };
225
+ var PricingDialogButton = ({
226
+ children,
227
+ size,
228
+ onClick,
229
+ disabled,
230
+ className
231
+ }) => {
232
+ return /* @__PURE__ */ jsxs(
233
+ Button,
234
+ {
235
+ onClick,
236
+ disabled,
237
+ size,
238
+ className: cn(className, "shadow-sm shadow-stone-400"),
239
+ children: [
240
+ children,
241
+ /* @__PURE__ */ jsx(ArrowRight, { className: "!h-3" })
242
+ ]
243
+ }
244
+ );
245
+ };
246
+
247
+ // src/libraries/react/components/pricing-table/pricing-table-synced.tsx
248
+ import { createContext, useContext, useState as useState2 } from "react";
249
+ import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
250
+ function PricingTable({
251
+ productDetails
252
+ }) {
253
+ const { attach } = useCustomer();
254
+ const [isAnnual, setIsAnnual] = useState2(false);
255
+ const { products, isLoading, error } = usePricingTable({ productDetails });
256
+ if (isLoading) {
257
+ return /* @__PURE__ */ jsx2("div", { className: "w-full h-full flex justify-center items-center min-h-[300px]", children: /* @__PURE__ */ jsx2(LoaderCircle, { className: "w-6 h-6 text-zinc-400 animate-spin" }) });
258
+ }
259
+ if (error) {
260
+ return /* @__PURE__ */ jsx2("div", { children: " Something went wrong..." });
261
+ }
262
+ const intervals = Array.from(
263
+ new Set(
264
+ products?.map((p) => p.properties?.interval_group).filter((i) => !!i)
265
+ )
266
+ );
267
+ const multiInterval = intervals.length > 1;
268
+ const intervalFilter = (product) => {
269
+ if (!product.properties?.interval_group) {
270
+ return true;
271
+ }
272
+ if (multiInterval) {
273
+ if (isAnnual) {
274
+ return product.properties?.interval_group === "year";
275
+ } else {
276
+ return product.properties?.interval_group === "month";
277
+ }
278
+ }
279
+ return true;
280
+ };
281
+ return /* @__PURE__ */ jsx2("div", { children: products && /* @__PURE__ */ jsx2(
282
+ PricingTableContainer,
283
+ {
284
+ products,
285
+ isAnnualToggle: isAnnual,
286
+ setIsAnnualToggle: setIsAnnual,
287
+ multiInterval,
288
+ children: products.filter(intervalFilter).map((product, index) => /* @__PURE__ */ jsx2(
289
+ PricingCard,
290
+ {
291
+ productId: product.id,
292
+ buttonProps: {
293
+ disabled: product.scenario === "active" || product.scenario === "scheduled",
294
+ onClick: async () => {
295
+ if (product.id) {
296
+ await attach({
297
+ productId: product.id,
298
+ dialog: AttachDialog
299
+ });
300
+ } else if (product.display?.button_url) {
301
+ window.open(product.display?.button_url, "_blank");
302
+ }
303
+ }
304
+ }
305
+ },
306
+ index
307
+ ))
308
+ }
309
+ ) });
310
+ }
311
+ var PricingTableContext = createContext({
312
+ isAnnualToggle: false,
313
+ setIsAnnualToggle: () => {
314
+ },
315
+ products: [],
316
+ showFeatures: true
317
+ });
318
+ var usePricingTableContext = (componentName) => {
319
+ const context = useContext(PricingTableContext);
320
+ if (context === void 0) {
321
+ throw new Error(`${componentName} must be used within <PricingTable />`);
322
+ }
323
+ return context;
324
+ };
325
+ var PricingTableContainer = ({
326
+ children,
327
+ products,
328
+ showFeatures = true,
329
+ className,
330
+ isAnnualToggle,
331
+ setIsAnnualToggle,
332
+ multiInterval
333
+ }) => {
334
+ if (!products) {
335
+ throw new Error("products is required in <PricingTable />");
336
+ }
337
+ if (products.length === 0) {
338
+ return /* @__PURE__ */ jsx2(Fragment2, {});
339
+ }
340
+ return /* @__PURE__ */ jsx2(
341
+ PricingTableContext.Provider,
342
+ {
343
+ value: { isAnnualToggle, setIsAnnualToggle, products, showFeatures },
344
+ children: /* @__PURE__ */ jsxs2("div", { className: cn("flex items-center flex-col"), children: [
345
+ multiInterval && /* @__PURE__ */ jsx2(
346
+ "div",
347
+ {
348
+ className: cn(
349
+ products.some((p) => p.display?.recommend_text) && "mb-8"
350
+ ),
351
+ children: /* @__PURE__ */ jsx2(
352
+ AnnualSwitch,
353
+ {
354
+ isAnnualToggle,
355
+ setIsAnnualToggle
356
+ }
357
+ )
358
+ }
359
+ ),
360
+ /* @__PURE__ */ jsx2(
361
+ "div",
362
+ {
363
+ className: cn(
364
+ "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-[repeat(auto-fit,minmax(200px,1fr))] w-full gap-2",
365
+ className
366
+ ),
367
+ children
368
+ }
369
+ )
370
+ ] })
371
+ }
372
+ );
373
+ };
374
+ var PricingCard = ({
375
+ productId,
376
+ className,
377
+ onButtonClick,
378
+ buttonProps
379
+ }) => {
380
+ const { products, showFeatures } = usePricingTableContext("PricingCard");
381
+ const product = products.find((p) => p.id === productId);
382
+ if (!product) {
383
+ throw new Error(`Product with id ${productId} not found`);
384
+ }
385
+ const { name, display: productDisplay, items } = product;
386
+ const { buttonText } = getPricingTableContent(product);
387
+ const isRecommended = productDisplay?.recommend_text ? true : false;
388
+ const mainPriceDisplay = product.properties?.is_free ? {
389
+ primary_text: "Free"
390
+ } : product.items[0].display;
391
+ const featureItems = product.properties?.is_free ? product.items : product.items.slice(1);
392
+ return /* @__PURE__ */ jsxs2(
393
+ "div",
394
+ {
395
+ className: cn(
396
+ "w-full h-full py-6 text-foreground border rounded-lg shadow-sm max-w-xl",
397
+ isRecommended && "lg:-translate-y-6 lg:shadow-lg dark:shadow-zinc-800/80 lg:h-[calc(100%+48px)] bg-secondary/40",
398
+ className
399
+ ),
400
+ children: [
401
+ productDisplay?.recommend_text && /* @__PURE__ */ jsx2(RecommendedBadge, { recommended: productDisplay?.recommend_text }),
402
+ /* @__PURE__ */ jsxs2(
403
+ "div",
404
+ {
405
+ className: cn(
406
+ "flex flex-col h-full flex-grow",
407
+ isRecommended && "lg:translate-y-6"
408
+ ),
409
+ children: [
410
+ /* @__PURE__ */ jsxs2("div", { className: "h-full", children: [
411
+ /* @__PURE__ */ jsxs2("div", { className: "flex flex-col", children: [
412
+ /* @__PURE__ */ jsxs2("div", { className: "pb-4", children: [
413
+ /* @__PURE__ */ jsx2("h2", { className: "text-2xl font-semibold px-6 truncate", children: name }),
414
+ productDisplay?.description && /* @__PURE__ */ jsx2("div", { className: "text-sm text-muted-foreground px-6 h-8", children: /* @__PURE__ */ jsxs2("p", { className: "line-clamp-2", children: [
415
+ "Everything from ",
416
+ productDisplay?.description,
417
+ ", plus:"
418
+ ] }) })
419
+ ] }),
420
+ /* @__PURE__ */ jsx2("div", { className: "mb-2", children: /* @__PURE__ */ jsx2("h3", { className: "font-semibold h-16 flex px-6 items-center border-y mb-4 bg-secondary/40", children: /* @__PURE__ */ jsxs2("div", { className: "line-clamp-2", children: [
421
+ mainPriceDisplay?.primary_text,
422
+ " ",
423
+ mainPriceDisplay?.secondary_text && /* @__PURE__ */ jsx2("span", { className: "font-normal text-muted-foreground mt-1", children: mainPriceDisplay?.secondary_text })
424
+ ] }) }) })
425
+ ] }),
426
+ showFeatures && featureItems.length > 0 && /* @__PURE__ */ jsx2("div", { className: "flex-grow px-6 mb-6", children: /* @__PURE__ */ jsx2(
427
+ PricingFeatureList,
428
+ {
429
+ items: featureItems,
430
+ showIcon: true,
431
+ everythingFrom: product.display?.everything_from
432
+ }
433
+ ) })
434
+ ] }),
435
+ /* @__PURE__ */ jsx2("div", { className: cn(" px-6 ", isRecommended && "lg:-translate-y-12"), children: /* @__PURE__ */ jsx2(
436
+ PricingCardButton,
437
+ {
438
+ recommended: productDisplay?.recommend_text ? true : false,
439
+ onClick: onButtonClick,
440
+ ...buttonProps,
441
+ children: buttonText
442
+ }
443
+ ) })
444
+ ]
445
+ }
446
+ )
447
+ ]
448
+ }
449
+ );
450
+ };
451
+ var PricingFeatureList = ({
452
+ items,
453
+ showIcon = true,
454
+ everythingFrom,
455
+ className
456
+ }) => {
457
+ return /* @__PURE__ */ jsxs2("div", { className: cn("flex-grow", className), children: [
458
+ everythingFrom && /* @__PURE__ */ jsxs2("p", { className: "text-sm mb-4", children: [
459
+ "Everything from ",
460
+ everythingFrom,
461
+ ", plus:"
462
+ ] }),
463
+ /* @__PURE__ */ jsx2("div", { className: "space-y-3", children: items.map((item, index) => /* @__PURE__ */ jsxs2("div", { className: "flex items-start gap-2 text-sm", children: [
464
+ showIcon && /* @__PURE__ */ jsx2(Check, { className: "h-4 w-4 text-primary flex-shrink-0 mt-0.5" }),
465
+ /* @__PURE__ */ jsxs2("div", { className: "flex flex-col", children: [
466
+ /* @__PURE__ */ jsx2("span", { children: item.display?.primary_text }),
467
+ item.display?.secondary_text && /* @__PURE__ */ jsx2("span", { className: "text-sm text-muted-foreground", children: item.display?.secondary_text })
468
+ ] })
469
+ ] }, index)) })
470
+ ] });
471
+ };
472
+ var PricingCardButton = React2.forwardRef(({ recommended, children, buttonUrl, onClick, className, ...props }, ref) => {
473
+ const [loading, setLoading] = useState2(false);
474
+ return /* @__PURE__ */ jsx2(
475
+ Button,
476
+ {
477
+ className: cn(
478
+ "w-full py-3 px-4 group overflow-hidden relative transition-all duration-300 hover:brightness-90 border rounded-lg",
479
+ className
480
+ ),
481
+ variant: recommended ? "default" : "secondary",
482
+ ref,
483
+ disabled: loading,
484
+ onClick: async (e) => {
485
+ setLoading(true);
486
+ try {
487
+ if (onClick) {
488
+ await onClick(e);
489
+ return;
490
+ }
491
+ if (buttonUrl) {
492
+ window.open(buttonUrl, "_blank");
493
+ return;
494
+ }
495
+ } catch (error) {
496
+ throw error;
497
+ } finally {
498
+ setLoading(false);
499
+ }
500
+ },
501
+ ...props,
502
+ children: loading ? /* @__PURE__ */ jsx2(LoaderCircle, { className: "h-4 w-4 animate-spin" }) : /* @__PURE__ */ jsxs2(Fragment2, { children: [
503
+ /* @__PURE__ */ jsxs2("div", { className: "flex items-center justify-between w-full transition-transform duration-300 group-hover:translate-y-[-130%]", children: [
504
+ /* @__PURE__ */ jsx2("span", { children }),
505
+ /* @__PURE__ */ jsx2("span", { className: "text-sm", children: "\u2192" })
506
+ ] }),
507
+ /* @__PURE__ */ jsxs2("div", { className: "flex items-center justify-between w-full absolute px-4 translate-y-[130%] transition-transform duration-300 group-hover:translate-y-0 mt-2 group-hover:mt-0", children: [
508
+ /* @__PURE__ */ jsx2("span", { children }),
509
+ /* @__PURE__ */ jsx2("span", { className: "text-sm", children: "\u2192" })
510
+ ] })
511
+ ] })
512
+ }
513
+ );
514
+ });
515
+ PricingCardButton.displayName = "PricingCardButton";
516
+ var AnnualSwitch = ({
517
+ isAnnualToggle,
518
+ setIsAnnualToggle
519
+ }) => {
520
+ return /* @__PURE__ */ jsxs2("div", { className: "flex items-center space-x-2 mb-4", children: [
521
+ /* @__PURE__ */ jsx2("span", { className: "text-sm text-muted-foreground", children: "Monthly" }),
522
+ /* @__PURE__ */ jsx2(
523
+ Switch,
524
+ {
525
+ id: "annual-billing",
526
+ checked: isAnnualToggle,
527
+ onCheckedChange: setIsAnnualToggle
528
+ }
529
+ ),
530
+ /* @__PURE__ */ jsx2("span", { className: "text-sm text-muted-foreground", children: "Annual" })
531
+ ] });
532
+ };
533
+ var RecommendedBadge = ({ recommended }) => {
534
+ return /* @__PURE__ */ jsx2("div", { className: "bg-secondary absolute border text-muted-foreground text-sm font-medium lg:rounded-full px-3 lg:py-0.5 lg:top-4 lg:right-4 top-[-1px] right-[-1px] rounded-bl-lg", children: recommended });
535
+ };
536
+
537
+ export {
538
+ PricingTable,
539
+ usePricingTableContext,
540
+ PricingTableContainer,
541
+ PricingCard,
542
+ PricingFeatureList,
543
+ PricingCardButton,
544
+ AnnualSwitch,
545
+ RecommendedBadge,
546
+ AttachDialog,
547
+ PriceItem,
548
+ OptionsInput,
549
+ QuantityInput,
550
+ TotalPrice,
551
+ PricingDialogButton
552
+ };
@@ -0,0 +1,101 @@
1
+ "use client";
2
+
3
+ import {
4
+ clsx,
5
+ cn
6
+ } from "./chunk-4CGZZYLG.mjs";
7
+
8
+ // src/libraries/react/components/ui/button.tsx
9
+ import { Slot } from "@radix-ui/react-slot";
10
+
11
+ // ../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.mjs
12
+ var falsyToString = (value) => typeof value === "boolean" ? `${value}` : value === 0 ? "0" : value;
13
+ var cx = clsx;
14
+ var cva = (base, config) => (props) => {
15
+ var _config_compoundVariants;
16
+ if ((config === null || config === void 0 ? void 0 : config.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);
17
+ const { variants, defaultVariants } = config;
18
+ const getVariantClassNames = Object.keys(variants).map((variant) => {
19
+ const variantProp = props === null || props === void 0 ? void 0 : props[variant];
20
+ const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];
21
+ if (variantProp === null) return null;
22
+ const variantKey = falsyToString(variantProp) || falsyToString(defaultVariantProp);
23
+ return variants[variant][variantKey];
24
+ });
25
+ const propsWithoutUndefined = props && Object.entries(props).reduce((acc, param) => {
26
+ let [key, value] = param;
27
+ if (value === void 0) {
28
+ return acc;
29
+ }
30
+ acc[key] = value;
31
+ return acc;
32
+ }, {});
33
+ const getCompoundVariantClassNames = config === null || config === void 0 ? void 0 : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param) => {
34
+ let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;
35
+ return Object.entries(compoundVariantOptions).every((param2) => {
36
+ let [key, value] = param2;
37
+ return Array.isArray(value) ? value.includes({
38
+ ...defaultVariants,
39
+ ...propsWithoutUndefined
40
+ }[key]) : {
41
+ ...defaultVariants,
42
+ ...propsWithoutUndefined
43
+ }[key] === value;
44
+ }) ? [
45
+ ...acc,
46
+ cvClass,
47
+ cvClassName
48
+ ] : acc;
49
+ }, []);
50
+ return cx(base, getVariantClassNames, getCompoundVariantClassNames, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);
51
+ };
52
+
53
+ // src/libraries/react/components/ui/button.tsx
54
+ import { jsx } from "react/jsx-runtime";
55
+ var buttonVariants = cva(
56
+ "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
57
+ {
58
+ variants: {
59
+ variant: {
60
+ default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
61
+ secondary: "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/90",
62
+ destructive: "bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
63
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
64
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
65
+ link: "text-primary underline-offset-4 hover:underline"
66
+ },
67
+ size: {
68
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
69
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
70
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
71
+ icon: "size-9"
72
+ }
73
+ },
74
+ defaultVariants: {
75
+ variant: "default",
76
+ size: "default"
77
+ }
78
+ }
79
+ );
80
+ function Button({
81
+ className,
82
+ variant,
83
+ size,
84
+ asChild = false,
85
+ ...props
86
+ }) {
87
+ const Comp = asChild ? Slot : "button";
88
+ return /* @__PURE__ */ jsx(
89
+ Comp,
90
+ {
91
+ "data-slot": "button",
92
+ className: cn(buttonVariants({ variant, size, className })),
93
+ ...props
94
+ }
95
+ );
96
+ }
97
+
98
+ export {
99
+ buttonVariants,
100
+ Button
101
+ };