autumn-js 0.0.67 → 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 (297) hide show
  1. package/components.json +21 -0
  2. package/dist/libraries/backend/{chunk-6OVW4YXK.mjs → chunk-2JZFMBVR.mjs} +1 -1
  3. package/dist/libraries/backend/{chunk-AEEYR55J.mjs → chunk-GUZSIYGF.mjs} +1 -1
  4. package/dist/libraries/backend/{chunk-BYAXY6C4.mjs → chunk-J7UA442M.mjs} +1 -1
  5. package/dist/libraries/backend/chunk-PBBWXVWW.mjs +28 -0
  6. package/dist/libraries/backend/{chunk-46YP3QFO.mjs → chunk-T4YSUMNB.mjs} +9 -5
  7. package/dist/libraries/backend/chunk-UNZHJTEY.mjs +18 -0
  8. package/dist/libraries/backend/{chunk-IZAQ6MUN.mjs → chunk-Y2VYFWJD.mjs} +1 -1
  9. package/dist/libraries/backend/{chunk-6N4RVNZ5.mjs → chunk-ZF4V3SVZ.mjs} +1 -1
  10. package/dist/libraries/backend/express.d.mts +2 -1
  11. package/dist/libraries/backend/express.d.ts +2 -1
  12. package/dist/libraries/backend/express.js +45 -7
  13. package/dist/libraries/backend/express.mjs +14 -6
  14. package/dist/libraries/backend/fastify.js +26 -7
  15. package/dist/libraries/backend/fastify.mjs +7 -6
  16. package/dist/libraries/backend/hono.js +26 -7
  17. package/dist/libraries/backend/hono.mjs +7 -6
  18. package/dist/libraries/backend/next.js +52 -11
  19. package/dist/libraries/backend/next.mjs +21 -10
  20. package/dist/libraries/backend/react-router.js +26 -7
  21. package/dist/libraries/backend/react-router.mjs +7 -6
  22. package/dist/libraries/backend/{referralTypes-7NmhI47Z.d.mts → referralTypes-C-jpvu6u.d.mts} +57 -25
  23. package/dist/libraries/backend/{referralTypes-CURy8Tnw.d.ts → referralTypes-qdpA4XBw.d.ts} +57 -25
  24. package/dist/libraries/backend/remix_dep.js +26 -7
  25. package/dist/libraries/backend/remix_dep.mjs +7 -6
  26. package/dist/libraries/backend/routes/backendRouter.js +24 -5
  27. package/dist/libraries/backend/routes/backendRouter.mjs +7 -6
  28. package/dist/libraries/backend/routes/entityRoutes.js +1 -1
  29. package/dist/libraries/backend/routes/entityRoutes.mjs +3 -3
  30. package/dist/libraries/backend/routes/genRoutes.js +1 -1
  31. package/dist/libraries/backend/routes/genRoutes.mjs +3 -3
  32. package/dist/libraries/backend/routes/productRoutes.d.mts +5 -0
  33. package/dist/libraries/backend/routes/productRoutes.d.ts +5 -0
  34. package/dist/libraries/backend/routes/productRoutes.js +594 -0
  35. package/dist/libraries/backend/routes/productRoutes.mjs +11 -0
  36. package/dist/libraries/backend/routes/referralRoutes.js +1 -1
  37. package/dist/libraries/backend/routes/referralRoutes.mjs +3 -3
  38. package/dist/libraries/backend/supabase.js +26 -7
  39. package/dist/libraries/backend/supabase.mjs +7 -6
  40. package/dist/libraries/backend/tanstack.js +26 -7
  41. package/dist/libraries/backend/tanstack.mjs +7 -6
  42. package/dist/libraries/backend/utils/backendRes.js +1 -1
  43. package/dist/libraries/backend/utils/backendRes.mjs +1 -1
  44. package/dist/libraries/backend/utils/secretKeyCheck.d.mts +13 -0
  45. package/dist/libraries/backend/utils/secretKeyCheck.d.ts +13 -0
  46. package/dist/libraries/backend/utils/secretKeyCheck.js +42 -0
  47. package/dist/libraries/backend/utils/secretKeyCheck.mjs +7 -0
  48. package/dist/libraries/backend/utils/withAuth.d.mts +2 -2
  49. package/dist/libraries/backend/utils/withAuth.d.ts +2 -2
  50. package/dist/libraries/backend/utils/withAuth.js +1 -1
  51. package/dist/libraries/backend/utils/withAuth.mjs +2 -2
  52. package/dist/libraries/react/AutumnContext.d.mts +7 -6
  53. package/dist/libraries/react/AutumnContext.d.ts +7 -6
  54. package/dist/libraries/react/AutumnContext.js +13 -5
  55. package/dist/libraries/react/AutumnContext.mjs +6 -5
  56. package/dist/libraries/react/BaseAutumnProvider.d.mts +7 -6
  57. package/dist/libraries/react/BaseAutumnProvider.d.ts +7 -6
  58. package/dist/libraries/react/BaseAutumnProvider.js +378 -14
  59. package/dist/libraries/react/BaseAutumnProvider.mjs +11 -7
  60. package/dist/libraries/react/{ReactAutumnClient-EjsfCAgE.d.mts → ReactAutumnClient-4e3t4WTF.d.mts} +29 -6
  61. package/dist/libraries/react/{ReactAutumnClient-BM8hrCEC.d.ts → ReactAutumnClient-B-lWmwRW.d.ts} +29 -6
  62. package/dist/libraries/react/ReactAutumnProvider.d.mts +3 -2
  63. package/dist/libraries/react/ReactAutumnProvider.d.ts +3 -2
  64. package/dist/libraries/react/ReactAutumnProvider.js +389 -16
  65. package/dist/libraries/react/ReactAutumnProvider.mjs +12 -8
  66. package/dist/libraries/react/{response-B2MqTR7X.d.ts → checkTypes-BDNI_s2B.d.ts} +40 -53
  67. package/dist/libraries/react/{response-By38xiUq.d.mts → checkTypes-CyKIOmeF.d.mts} +40 -53
  68. package/dist/libraries/react/chunk-2XYYCR4J.mjs +276 -0
  69. package/dist/libraries/react/chunk-4CGZZYLG.mjs +2487 -0
  70. package/dist/libraries/react/chunk-4PX3AQKX.mjs +53 -0
  71. package/dist/libraries/react/{chunk-57I3B4BV.mjs → chunk-7PRD7RPD.mjs} +2 -2
  72. package/dist/libraries/react/{chunk-EOSHPHLH.mjs → chunk-B7HGBQCO.mjs} +4 -5
  73. package/dist/libraries/react/chunk-BCMBFJ7E.mjs +125 -0
  74. package/dist/libraries/react/{chunk-XDAZD5HF.mjs → chunk-CE5BBB5H.mjs} +18 -12
  75. package/dist/libraries/react/{chunk-JNJ53ZW6.mjs → chunk-EH2VPTFH.mjs} +1 -1
  76. package/dist/libraries/react/{chunk-5S5BL6HV.mjs → chunk-FHANCAHB.mjs} +2 -2
  77. package/dist/libraries/react/{chunk-A6J237PD.mjs → chunk-GTF7A5TG.mjs} +26 -7
  78. package/dist/libraries/react/chunk-JFXBUWKA.mjs +50 -0
  79. package/dist/libraries/react/chunk-MY2ODATB.mjs +51 -0
  80. package/dist/libraries/react/chunk-NEV76K4V.mjs +552 -0
  81. package/dist/libraries/react/chunk-O4HHXBGR.mjs +101 -0
  82. package/dist/libraries/react/chunk-Q7CK32YT.mjs +172 -0
  83. package/dist/libraries/react/chunk-QBBE72EF.mjs +57 -0
  84. package/dist/libraries/react/{chunk-NJFRQ6T4.mjs → chunk-QMIIDFRP.mjs} +7 -5
  85. package/dist/libraries/react/chunk-TFGQQAVB.mjs +38 -0
  86. package/dist/libraries/react/{chunk-BGEO5REY.mjs → chunk-X3HJKZGO.mjs} +5 -1
  87. package/dist/libraries/react/chunk-YUV2Y2RW.mjs +12 -0
  88. package/dist/libraries/react/{chunk-DMU3G7UZ.mjs → chunk-ZKHBOCMO.mjs} +2 -2
  89. package/dist/libraries/react/{chunk-CQ27LXPH.mjs → chunk-ZQ6LDLK5.mjs} +38 -35
  90. package/dist/libraries/react/{chunk-IXVPNA4H.mjs → chunk-ZWO4QYXI.mjs} +2 -2
  91. package/dist/libraries/react/{chunk-2MVQH6J5.mjs → chunk-ZXE5MFKL.mjs} +14 -5
  92. package/dist/libraries/react/client/ReactAutumnClient.d.mts +5 -5
  93. package/dist/libraries/react/client/ReactAutumnClient.d.ts +5 -5
  94. package/dist/libraries/react/client/ReactAutumnClient.js +10 -1
  95. package/dist/libraries/react/client/ReactAutumnClient.mjs +5 -4
  96. package/dist/libraries/react/client/clientCompMethods.d.mts +5 -5
  97. package/dist/libraries/react/client/clientCompMethods.d.ts +5 -5
  98. package/dist/libraries/react/client/clientCusMethods.d.mts +5 -5
  99. package/dist/libraries/react/client/clientCusMethods.d.ts +5 -5
  100. package/dist/libraries/react/client/clientEntityMethods.d.mts +5 -5
  101. package/dist/libraries/react/client/clientEntityMethods.d.ts +5 -5
  102. package/dist/libraries/react/client/clientGenMethods.d.mts +6 -6
  103. package/dist/libraries/react/client/clientGenMethods.d.ts +6 -6
  104. package/dist/libraries/react/client/clientProdMethods.d.mts +15 -0
  105. package/dist/libraries/react/client/clientProdMethods.d.ts +15 -0
  106. package/dist/libraries/react/client/clientProdMethods.js +35 -0
  107. package/dist/libraries/react/client/clientProdMethods.mjs +8 -0
  108. package/dist/libraries/react/client/clientReferralMethods.d.mts +5 -5
  109. package/dist/libraries/react/client/clientReferralMethods.d.ts +5 -5
  110. package/dist/libraries/react/client/types/clientEntTypes.d.mts +1 -1
  111. package/dist/libraries/react/client/types/clientEntTypes.d.ts +1 -1
  112. package/dist/libraries/react/client/types/clientPricingTableTypes.d.mts +8 -10
  113. package/dist/libraries/react/client/types/clientPricingTableTypes.d.ts +8 -10
  114. package/dist/libraries/react/client/types/clientProdTypes.d.mts +5 -0
  115. package/dist/libraries/react/client/types/clientProdTypes.d.ts +5 -0
  116. package/dist/libraries/react/client/types/clientProdTypes.js +20 -0
  117. package/dist/libraries/react/client/types/clientProdTypes.mjs +2 -0
  118. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.mts +52 -0
  119. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.d.ts +52 -0
  120. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.js +4387 -0
  121. package/dist/libraries/react/components/attach-dialog/attach-dialog-synced.mjs +50 -0
  122. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.mts +10 -0
  123. package/dist/libraries/react/components/attach-dialog/lib/attach-content.d.ts +10 -0
  124. package/dist/libraries/react/components/attach-dialog/lib/attach-content.js +148 -0
  125. package/dist/libraries/react/components/attach-dialog/lib/attach-content.mjs +8 -0
  126. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.mts +12 -0
  127. package/dist/libraries/react/components/check-dialog/check-dialog-synced.d.ts +12 -0
  128. package/dist/libraries/react/components/check-dialog/check-dialog-synced.js +2895 -0
  129. package/dist/libraries/react/components/check-dialog/check-dialog-synced.mjs +13 -0
  130. package/dist/libraries/react/components/check-dialog/lib/check-content.d.mts +9 -0
  131. package/dist/libraries/react/components/check-dialog/lib/check-content.d.ts +9 -0
  132. package/dist/libraries/react/components/check-dialog/lib/check-content.js +74 -0
  133. package/dist/libraries/react/components/check-dialog/lib/check-content.mjs +8 -0
  134. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.mts +7 -0
  135. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.d.ts +7 -0
  136. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.js +80 -0
  137. package/dist/libraries/react/components/pricing-table/lib/pricing-table-content.mjs +8 -0
  138. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.mts +51 -0
  139. package/dist/libraries/react/components/pricing-table/pricing-table-synced.d.ts +51 -0
  140. package/dist/libraries/react/components/pricing-table/pricing-table-synced.js +4684 -0
  141. package/dist/libraries/react/components/pricing-table/pricing-table-synced.mjs +53 -0
  142. package/dist/libraries/react/components/ui/button.d.mts +14 -0
  143. package/dist/libraries/react/components/ui/button.d.ts +14 -0
  144. package/dist/libraries/react/components/ui/button.js +2601 -0
  145. package/dist/libraries/react/components/ui/button.mjs +11 -0
  146. package/dist/libraries/react/components/ui/dialog.d.mts +18 -0
  147. package/dist/libraries/react/components/ui/dialog.d.ts +18 -0
  148. package/dist/libraries/react/components/ui/dialog.js +2774 -0
  149. package/dist/libraries/react/components/ui/dialog.mjs +27 -0
  150. package/dist/libraries/react/components/ui/switch.d.mts +7 -0
  151. package/dist/libraries/react/components/ui/switch.d.ts +7 -0
  152. package/dist/libraries/react/components/ui/switch.js +2550 -0
  153. package/dist/libraries/react/components/ui/switch.mjs +9 -0
  154. package/dist/{next/client/cusTypes-D9vXDh6B.d.mts → libraries/react/cusTypes-DNx5bwlw.d.mts} +13 -5
  155. package/dist/{next/client/cusTypes-D9vXDh6B.d.ts → libraries/react/cusTypes-DNx5bwlw.d.ts} +13 -5
  156. package/dist/libraries/react/{entTypes-CV-165S-.d.mts → entTypes-8gkfAi3g.d.mts} +1 -1
  157. package/dist/libraries/react/{entTypes-BbIk0Toa.d.ts → entTypes-C8jD10M8.d.ts} +1 -1
  158. package/dist/libraries/react/errorUtils/logAuthError.js +1 -1
  159. package/dist/libraries/react/errorUtils/logAuthError.mjs +1 -1
  160. package/dist/libraries/react/hooks/handleAllowed.d.mts +14 -0
  161. package/dist/libraries/react/hooks/handleAllowed.d.ts +14 -0
  162. package/dist/libraries/react/hooks/handleAllowed.js +73 -0
  163. package/dist/libraries/react/hooks/handleAllowed.mjs +8 -0
  164. package/dist/libraries/react/hooks/useAutumn.d.mts +11 -39
  165. package/dist/libraries/react/hooks/useAutumn.d.ts +11 -39
  166. package/dist/libraries/react/hooks/useAutumn.js +167 -48
  167. package/dist/libraries/react/hooks/useAutumn.mjs +9 -8
  168. package/dist/libraries/react/hooks/useAutumnBase.d.mts +9 -41
  169. package/dist/libraries/react/hooks/useAutumnBase.d.ts +9 -41
  170. package/dist/libraries/react/hooks/useAutumnBase.js +167 -48
  171. package/dist/libraries/react/hooks/useAutumnBase.mjs +8 -7
  172. package/dist/libraries/react/hooks/useCustomer.d.mts +6 -5
  173. package/dist/libraries/react/hooks/useCustomer.d.ts +6 -5
  174. package/dist/libraries/react/hooks/useCustomer.js +375 -11
  175. package/dist/libraries/react/hooks/useCustomer.mjs +11 -7
  176. package/dist/libraries/react/hooks/useCustomerBase.d.mts +13 -6
  177. package/dist/libraries/react/hooks/useCustomerBase.d.ts +13 -6
  178. package/dist/libraries/react/hooks/useCustomerBase.js +374 -12
  179. package/dist/libraries/react/hooks/useCustomerBase.mjs +10 -6
  180. package/dist/libraries/react/hooks/useEntity.d.mts +10 -2
  181. package/dist/libraries/react/hooks/useEntity.d.ts +10 -2
  182. package/dist/libraries/react/hooks/useEntity.js +61 -6
  183. package/dist/libraries/react/hooks/useEntity.mjs +9 -7
  184. package/dist/libraries/react/hooks/useEntityBase.d.mts +13 -5
  185. package/dist/libraries/react/hooks/useEntityBase.d.ts +13 -5
  186. package/dist/libraries/react/hooks/useEntityBase.js +48 -1
  187. package/dist/libraries/react/hooks/useEntityBase.mjs +2 -1
  188. package/dist/libraries/react/hooks/usePricingTable.d.mts +4 -3
  189. package/dist/libraries/react/hooks/usePricingTable.d.ts +4 -3
  190. package/dist/libraries/react/hooks/usePricingTable.js +131 -15
  191. package/dist/libraries/react/hooks/usePricingTable.mjs +8 -7
  192. package/dist/libraries/react/hooks/usePricingTableBase.d.mts +7 -7
  193. package/dist/libraries/react/hooks/usePricingTableBase.d.ts +7 -7
  194. package/dist/libraries/react/hooks/usePricingTableBase.js +131 -15
  195. package/dist/libraries/react/hooks/usePricingTableBase.mjs +7 -6
  196. package/dist/libraries/react/hooks/useProductsBase.d.mts +3 -0
  197. package/dist/libraries/react/hooks/useProductsBase.d.ts +3 -0
  198. package/dist/libraries/react/hooks/useProductsBase.js +776 -0
  199. package/dist/libraries/react/hooks/useProductsBase.mjs +29 -0
  200. package/dist/libraries/react/index.d.ts +485 -19
  201. package/dist/libraries/react/index.js +3965 -229
  202. package/dist/libraries/react/index.mjs +4869 -31
  203. package/dist/libraries/react/lib/utils.d.mts +5 -0
  204. package/dist/libraries/react/lib/utils.d.ts +5 -0
  205. package/dist/libraries/react/lib/utils.js +2511 -0
  206. package/dist/libraries/react/lib/utils.mjs +8 -0
  207. package/dist/libraries/react/response-9K8DyGXf.d.ts +40 -0
  208. package/dist/libraries/react/response-ChCmaLBk.d.mts +40 -0
  209. package/dist/next/AutumnProvider-BdIwgk_j.d.mts +136 -0
  210. package/dist/next/AutumnProvider-BdIwgk_j.d.ts +136 -0
  211. package/dist/next/AutumnProvider.d.mts +2 -0
  212. package/dist/next/AutumnProvider.d.ts +2 -0
  213. package/dist/next/client/NextAutumnClient.d.mts +28 -7
  214. package/dist/next/client/NextAutumnClient.d.ts +28 -7
  215. package/dist/next/client/NextAutumnProvider.d.mts +1 -1
  216. package/dist/next/client/NextAutumnProvider.d.ts +1 -1
  217. package/dist/next/client/checkTypes-BHxu_xEV.d.ts +126 -0
  218. package/dist/next/client/checkTypes-CEaWu4S3.d.mts +126 -0
  219. package/dist/next/client/clientGenTypes-BRfigzSY.d.mts +98 -0
  220. package/dist/next/client/clientGenTypes-i3cKamAv.d.ts +98 -0
  221. package/dist/next/client/clientUtils.d.mts +2 -2
  222. package/dist/next/client/clientUtils.d.ts +2 -2
  223. package/dist/{libraries/react/cusTypes-Cf-s9PYP.d.ts → next/client/cusTypes-CV5q3GIA.d.mts} +13 -5
  224. package/dist/{libraries/react/cusTypes-Cf-s9PYP.d.mts → next/client/cusTypes-CV5q3GIA.d.ts} +13 -5
  225. package/dist/next/client/{entTypes-C2xwPhrH.d.mts → entTypes-C1-bumir.d.mts} +1 -1
  226. package/dist/next/client/{entTypes-D5Bk72AS.d.ts → entTypes-CKc2qHBt.d.ts} +1 -1
  227. package/dist/next/client/handleAllowed-B8TBAzfI.d.mts +7 -0
  228. package/dist/next/client/handleAllowed-B8TBAzfI.d.ts +7 -0
  229. package/dist/next/client/hooks/useAutumn.d.mts +8 -41
  230. package/dist/next/client/hooks/useAutumn.d.ts +8 -41
  231. package/dist/next/client/hooks/useCustomer.d.mts +11 -4
  232. package/dist/next/client/hooks/useCustomer.d.ts +11 -4
  233. package/dist/next/client/hooks/useEntity.d.mts +10 -2
  234. package/dist/next/client/hooks/useEntity.d.ts +10 -2
  235. package/dist/next/client/hooks/usePricingTable.d.mts +16 -5
  236. package/dist/next/client/hooks/usePricingTable.d.ts +16 -5
  237. package/dist/next/client/types.d.mts +12 -3
  238. package/dist/next/client/types.d.ts +12 -3
  239. package/dist/next/enums.d.mts +5 -0
  240. package/dist/next/enums.d.ts +5 -0
  241. package/dist/next/index.d.mts +100 -192
  242. package/dist/next/index.d.ts +100 -192
  243. package/dist/next/server/auth/withNextAuth.d.mts +1 -1
  244. package/dist/next/server/auth/withNextAuth.d.ts +1 -1
  245. package/dist/next/server/{clientEntTypes-CWr4xXQ1.d.mts → clientEntTypes-BOVTwIKv.d.mts} +1 -1
  246. package/dist/next/server/{clientEntTypes-CWr4xXQ1.d.ts → clientEntTypes-BOVTwIKv.d.ts} +1 -1
  247. package/dist/next/server/componentActions.d.mts +1 -1
  248. package/dist/next/server/componentActions.d.ts +1 -1
  249. package/dist/next/server/cusActions.d.mts +48 -20
  250. package/dist/next/server/cusActions.d.ts +48 -20
  251. package/dist/next/server/{cusTypes-DYgbKGrd.d.mts → cusTypes-Cc8NWXXF.d.mts} +12 -8
  252. package/dist/next/server/{cusTypes-DYgbKGrd.d.ts → cusTypes-Cc8NWXXF.d.ts} +12 -8
  253. package/dist/next/server/genActions.d.mts +2 -2
  254. package/dist/next/server/genActions.d.ts +2 -2
  255. package/dist/sdk/index.d.mts +400 -26
  256. package/dist/sdk/index.d.ts +400 -26
  257. package/dist/sdk/index.js +1 -1
  258. package/dist/sdk/index.mjs +1 -1
  259. package/dist/styles/global.css +1147 -0
  260. package/dist/utils/encryptUtils.js +1 -1
  261. package/dist/utils/encryptUtils.mjs +1 -1
  262. package/package.json +24 -5
  263. package/postcss.config.js +7 -0
  264. package/scripts/sync-registry.ts +292 -0
  265. package/tailwind.config.js +57 -0
  266. package/tsup.config.ts +86 -23
  267. package/tsup.dev.config.ts +196 -0
  268. package/dist/libraries/react/chunk-PSE3LKMR.mjs +0 -64
  269. package/dist/libraries/react/componentTypes-HF9MRJPX.d.mts +0 -15
  270. package/dist/libraries/react/componentTypes-HF9MRJPX.d.ts +0 -15
  271. package/dist/libraries/react/index.d.mts +0 -19
  272. package/dist/next/client/clientEntTypes-ClSxkMvK.d.mts +0 -29
  273. package/dist/next/client/clientEntTypes-DuYXyCN4.d.ts +0 -29
  274. package/dist/next/client/clientGenTypes-BvnGc6fc.d.mts +0 -156
  275. package/dist/next/client/clientGenTypes-F8OKtPMU.d.ts +0 -156
  276. package/dist/next/client/componentTypes-HF9MRJPX.d.mts +0 -15
  277. package/dist/next/client/componentTypes-HF9MRJPX.d.ts +0 -15
  278. package/dist/next/client/error-DHbclCVh.d.mts +0 -17
  279. package/dist/next/client/error-DHbclCVh.d.ts +0 -17
  280. package/dist/sdk/check.d.mts +0 -47
  281. package/dist/sdk/check.d.ts +0 -47
  282. package/dist/sdk/cusTypes-BTV6ui4e.d.ts +0 -95
  283. package/dist/sdk/cusTypes-wBxbodEe.d.mts +0 -95
  284. package/dist/sdk/customers.d.mts +0 -2
  285. package/dist/sdk/customers.d.ts +0 -2
  286. package/dist/sdk/entTypes-BwLV9Jn4.d.ts +0 -35
  287. package/dist/sdk/entTypes-CJjjWn54.d.mts +0 -35
  288. package/dist/sdk/entities.d.mts +0 -3
  289. package/dist/sdk/entities.d.ts +0 -3
  290. package/dist/sdk/general.d.mts +0 -104
  291. package/dist/sdk/general.d.ts +0 -104
  292. package/dist/sdk/prodEnums-C1lccCWI.d.mts +0 -28
  293. package/dist/sdk/prodEnums-C1lccCWI.d.ts +0 -28
  294. package/dist/sdk/products.d.mts +0 -47
  295. package/dist/sdk/products.d.ts +0 -47
  296. package/dist/sdk/referrals.d.mts +0 -21
  297. package/dist/sdk/referrals.d.ts +0 -21
@@ -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
+ };