@b3dotfun/sdk 0.1.68 → 0.1.69-alpha.1

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 (281) hide show
  1. package/dist/cjs/anyspend/platform/client.d.ts +35 -0
  2. package/dist/cjs/anyspend/platform/client.js +158 -0
  3. package/dist/cjs/anyspend/platform/errors.d.ts +38 -0
  4. package/dist/cjs/anyspend/platform/errors.js +77 -0
  5. package/dist/cjs/anyspend/platform/index.d.ts +87 -0
  6. package/dist/cjs/anyspend/platform/index.js +85 -0
  7. package/dist/cjs/anyspend/platform/resources/analytics.d.ts +7 -0
  8. package/dist/cjs/anyspend/platform/resources/analytics.js +12 -0
  9. package/dist/cjs/anyspend/platform/resources/checkout-sessions.d.ts +17 -0
  10. package/dist/cjs/anyspend/platform/resources/checkout-sessions.js +27 -0
  11. package/dist/cjs/anyspend/platform/resources/customers.d.ts +19 -0
  12. package/dist/cjs/anyspend/platform/resources/customers.js +34 -0
  13. package/dist/cjs/anyspend/platform/resources/discount-codes.d.ts +29 -0
  14. package/dist/cjs/anyspend/platform/resources/discount-codes.js +31 -0
  15. package/dist/cjs/anyspend/platform/resources/events.d.ts +14 -0
  16. package/dist/cjs/anyspend/platform/resources/events.js +16 -0
  17. package/dist/cjs/anyspend/platform/resources/notifications.d.ts +18 -0
  18. package/dist/cjs/anyspend/platform/resources/notifications.js +27 -0
  19. package/dist/cjs/anyspend/platform/resources/organization.d.ts +17 -0
  20. package/dist/cjs/anyspend/platform/resources/organization.js +15 -0
  21. package/dist/cjs/anyspend/platform/resources/payment-links.d.ts +21 -0
  22. package/dist/cjs/anyspend/platform/resources/payment-links.js +49 -0
  23. package/dist/cjs/anyspend/platform/resources/products.d.ts +27 -0
  24. package/dist/cjs/anyspend/platform/resources/products.js +31 -0
  25. package/dist/cjs/anyspend/platform/resources/transactions.d.ts +11 -0
  26. package/dist/cjs/anyspend/platform/resources/transactions.js +25 -0
  27. package/dist/cjs/anyspend/platform/resources/webhooks.d.ts +14 -0
  28. package/dist/cjs/anyspend/platform/resources/webhooks.js +33 -0
  29. package/dist/cjs/anyspend/platform/resources/widgets.d.ts +38 -0
  30. package/dist/cjs/anyspend/platform/resources/widgets.js +31 -0
  31. package/dist/cjs/anyspend/platform/types.d.ts +478 -0
  32. package/dist/cjs/anyspend/platform/types.js +5 -0
  33. package/dist/cjs/anyspend/platform/utils/idempotency.d.ts +4 -0
  34. package/dist/cjs/anyspend/platform/utils/idempotency.js +17 -0
  35. package/dist/cjs/anyspend/platform/utils/pagination.d.ts +12 -0
  36. package/dist/cjs/anyspend/platform/utils/pagination.js +22 -0
  37. package/dist/cjs/anyspend/react/components/AnySpend.d.ts +5 -1
  38. package/dist/cjs/anyspend/react/components/AnySpend.js +127 -16
  39. package/dist/cjs/anyspend/react/components/AnySpendCustom.js +4 -4
  40. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +2 -2
  41. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.d.ts +14 -6
  42. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckout.js +55 -8
  43. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  44. package/dist/cjs/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
  45. package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +5 -1
  46. package/dist/cjs/anyspend/react/components/checkout/CheckoutPaymentPanel.js +2 -2
  47. package/dist/cjs/anyspend/react/components/checkout/CryptoPayPanel.js +1 -1
  48. package/dist/cjs/anyspend/react/components/checkout/FiatCheckoutPanel.d.ts +5 -1
  49. package/dist/cjs/anyspend/react/components/checkout/FiatCheckoutPanel.js +48 -16
  50. package/dist/cjs/anyspend/react/components/checkout/KycGate.d.ts +11 -0
  51. package/dist/cjs/anyspend/react/components/checkout/KycGate.js +203 -0
  52. package/dist/cjs/anyspend/react/components/checkout/VariablePricingInput.d.ts +17 -0
  53. package/dist/cjs/anyspend/react/components/checkout/VariablePricingInput.js +145 -0
  54. package/dist/cjs/anyspend/react/components/common/CryptoPaymentMethod.js +1 -1
  55. package/dist/cjs/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  56. package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  57. package/dist/cjs/anyspend/react/components/common/OrderDetails.js +1 -1
  58. package/dist/cjs/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  59. package/dist/cjs/anyspend/react/components/common/RecipientSelection.js +1 -1
  60. package/dist/cjs/anyspend/react/components/index.d.ts +1 -1
  61. package/dist/cjs/anyspend/react/hooks/index.d.ts +1 -0
  62. package/dist/cjs/anyspend/react/hooks/index.js +1 -0
  63. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +2 -0
  64. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +14 -0
  65. package/dist/cjs/anyspend/react/hooks/useKycStatus.d.ts +47 -0
  66. package/dist/cjs/anyspend/react/hooks/useKycStatus.js +124 -0
  67. package/dist/cjs/anyspend/services/anyspend.d.ts +4 -1
  68. package/dist/cjs/anyspend/services/anyspend.js +3 -1
  69. package/dist/cjs/global-account/react/components/B3DynamicModal.js +1 -1
  70. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  71. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
  72. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +4 -2
  73. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +2 -2
  74. package/dist/cjs/global-account/react/components/ManageAccount/BottomNavigation.js +3 -3
  75. package/dist/cjs/global-account/react/components/ManageAccount/HomeActions.js +1 -1
  76. package/dist/cjs/global-account/react/components/ManageAccount/channels/TelegramChannel.js +1 -1
  77. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +1 -1
  78. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +13 -5
  79. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +1 -1
  80. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStep.d.ts +1 -1
  81. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStep.js +21 -24
  82. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +1 -1
  83. package/dist/cjs/global-account/react/hooks/useAuth.js +1 -1
  84. package/dist/cjs/global-account/react/hooks/useAuthentication.d.ts +3 -1
  85. package/dist/cjs/global-account/react/hooks/useAuthentication.js +94 -24
  86. package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  87. package/dist/cjs/global-account/react/hooks/useAutoSelectWallet.js +31 -3
  88. package/dist/cjs/global-account/react/hooks/useGetAllTWSigners.js +2 -1
  89. package/dist/cjs/global-account/react/stores/useModalStore.d.ts +4 -0
  90. package/dist/cjs/global-account/react/stores/useModalStore.js +2 -0
  91. package/dist/cjs/global-account/react/utils/createWagmiConfig.d.ts +18 -0
  92. package/dist/cjs/global-account/react/utils/createWagmiConfig.js +17 -0
  93. package/dist/esm/anyspend/platform/client.d.ts +35 -0
  94. package/dist/esm/anyspend/platform/client.js +153 -0
  95. package/dist/esm/anyspend/platform/errors.d.ts +38 -0
  96. package/dist/esm/anyspend/platform/errors.js +67 -0
  97. package/dist/esm/anyspend/platform/index.d.ts +87 -0
  98. package/dist/esm/anyspend/platform/index.js +75 -0
  99. package/dist/esm/anyspend/platform/resources/analytics.d.ts +7 -0
  100. package/dist/esm/anyspend/platform/resources/analytics.js +8 -0
  101. package/dist/esm/anyspend/platform/resources/checkout-sessions.d.ts +17 -0
  102. package/dist/esm/anyspend/platform/resources/checkout-sessions.js +23 -0
  103. package/dist/esm/anyspend/platform/resources/customers.d.ts +19 -0
  104. package/dist/esm/anyspend/platform/resources/customers.js +30 -0
  105. package/dist/esm/anyspend/platform/resources/discount-codes.d.ts +29 -0
  106. package/dist/esm/anyspend/platform/resources/discount-codes.js +27 -0
  107. package/dist/esm/anyspend/platform/resources/events.d.ts +14 -0
  108. package/dist/esm/anyspend/platform/resources/events.js +12 -0
  109. package/dist/esm/anyspend/platform/resources/notifications.d.ts +18 -0
  110. package/dist/esm/anyspend/platform/resources/notifications.js +23 -0
  111. package/dist/esm/anyspend/platform/resources/organization.d.ts +17 -0
  112. package/dist/esm/anyspend/platform/resources/organization.js +11 -0
  113. package/dist/esm/anyspend/platform/resources/payment-links.d.ts +21 -0
  114. package/dist/esm/anyspend/platform/resources/payment-links.js +45 -0
  115. package/dist/esm/anyspend/platform/resources/products.d.ts +27 -0
  116. package/dist/esm/anyspend/platform/resources/products.js +27 -0
  117. package/dist/esm/anyspend/platform/resources/transactions.d.ts +11 -0
  118. package/dist/esm/anyspend/platform/resources/transactions.js +21 -0
  119. package/dist/esm/anyspend/platform/resources/webhooks.d.ts +14 -0
  120. package/dist/esm/anyspend/platform/resources/webhooks.js +29 -0
  121. package/dist/esm/anyspend/platform/resources/widgets.d.ts +38 -0
  122. package/dist/esm/anyspend/platform/resources/widgets.js +27 -0
  123. package/dist/esm/anyspend/platform/types.d.ts +478 -0
  124. package/dist/esm/anyspend/platform/types.js +4 -0
  125. package/dist/esm/anyspend/platform/utils/idempotency.d.ts +4 -0
  126. package/dist/esm/anyspend/platform/utils/idempotency.js +14 -0
  127. package/dist/esm/anyspend/platform/utils/pagination.d.ts +12 -0
  128. package/dist/esm/anyspend/platform/utils/pagination.js +19 -0
  129. package/dist/esm/anyspend/react/components/AnySpend.d.ts +5 -1
  130. package/dist/esm/anyspend/react/components/AnySpend.js +128 -17
  131. package/dist/esm/anyspend/react/components/AnySpendCustom.js +4 -4
  132. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +2 -2
  133. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.d.ts +14 -6
  134. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckout.js +55 -8
  135. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  136. package/dist/esm/anyspend/react/components/checkout/AnySpendCheckoutTrigger.js +2 -2
  137. package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +5 -1
  138. package/dist/esm/anyspend/react/components/checkout/CheckoutPaymentPanel.js +2 -2
  139. package/dist/esm/anyspend/react/components/checkout/CryptoPayPanel.js +1 -1
  140. package/dist/esm/anyspend/react/components/checkout/FiatCheckoutPanel.d.ts +5 -1
  141. package/dist/esm/anyspend/react/components/checkout/FiatCheckoutPanel.js +50 -18
  142. package/dist/esm/anyspend/react/components/checkout/KycGate.d.ts +11 -0
  143. package/dist/esm/anyspend/react/components/checkout/KycGate.js +167 -0
  144. package/dist/esm/anyspend/react/components/checkout/VariablePricingInput.d.ts +17 -0
  145. package/dist/esm/anyspend/react/components/checkout/VariablePricingInput.js +142 -0
  146. package/dist/esm/anyspend/react/components/common/CryptoPaymentMethod.js +1 -1
  147. package/dist/esm/anyspend/react/components/common/FeeDetailPanel.js +1 -1
  148. package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  149. package/dist/esm/anyspend/react/components/common/OrderDetails.js +1 -1
  150. package/dist/esm/anyspend/react/components/common/PointsDetailPanel.js +1 -1
  151. package/dist/esm/anyspend/react/components/common/RecipientSelection.js +1 -1
  152. package/dist/esm/anyspend/react/components/index.d.ts +1 -1
  153. package/dist/esm/anyspend/react/hooks/index.d.ts +1 -0
  154. package/dist/esm/anyspend/react/hooks/index.js +1 -0
  155. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +2 -0
  156. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +14 -0
  157. package/dist/esm/anyspend/react/hooks/useKycStatus.d.ts +47 -0
  158. package/dist/esm/anyspend/react/hooks/useKycStatus.js +117 -0
  159. package/dist/esm/anyspend/services/anyspend.d.ts +4 -1
  160. package/dist/esm/anyspend/services/anyspend.js +3 -1
  161. package/dist/esm/global-account/react/components/B3DynamicModal.js +1 -1
  162. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  163. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.js +2 -1
  164. package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +4 -2
  165. package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +2 -2
  166. package/dist/esm/global-account/react/components/ManageAccount/BottomNavigation.js +3 -3
  167. package/dist/esm/global-account/react/components/ManageAccount/HomeActions.js +1 -1
  168. package/dist/esm/global-account/react/components/ManageAccount/channels/TelegramChannel.js +1 -1
  169. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +1 -1
  170. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Flow.js +13 -5
  171. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +1 -1
  172. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStep.d.ts +1 -1
  173. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStep.js +21 -24
  174. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +1 -1
  175. package/dist/esm/global-account/react/hooks/useAuth.js +2 -2
  176. package/dist/esm/global-account/react/hooks/useAuthentication.d.ts +3 -1
  177. package/dist/esm/global-account/react/hooks/useAuthentication.js +94 -24
  178. package/dist/esm/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  179. package/dist/esm/global-account/react/hooks/useAutoSelectWallet.js +33 -5
  180. package/dist/esm/global-account/react/hooks/useGetAllTWSigners.js +2 -1
  181. package/dist/esm/global-account/react/stores/useModalStore.d.ts +4 -0
  182. package/dist/esm/global-account/react/stores/useModalStore.js +2 -0
  183. package/dist/esm/global-account/react/utils/createWagmiConfig.d.ts +18 -0
  184. package/dist/esm/global-account/react/utils/createWagmiConfig.js +16 -0
  185. package/dist/styles/index.css +1 -1
  186. package/dist/types/anyspend/platform/client.d.ts +35 -0
  187. package/dist/types/anyspend/platform/errors.d.ts +38 -0
  188. package/dist/types/anyspend/platform/index.d.ts +87 -0
  189. package/dist/types/anyspend/platform/resources/analytics.d.ts +7 -0
  190. package/dist/types/anyspend/platform/resources/checkout-sessions.d.ts +17 -0
  191. package/dist/types/anyspend/platform/resources/customers.d.ts +19 -0
  192. package/dist/types/anyspend/platform/resources/discount-codes.d.ts +29 -0
  193. package/dist/types/anyspend/platform/resources/events.d.ts +14 -0
  194. package/dist/types/anyspend/platform/resources/notifications.d.ts +18 -0
  195. package/dist/types/anyspend/platform/resources/organization.d.ts +17 -0
  196. package/dist/types/anyspend/platform/resources/payment-links.d.ts +21 -0
  197. package/dist/types/anyspend/platform/resources/products.d.ts +27 -0
  198. package/dist/types/anyspend/platform/resources/transactions.d.ts +11 -0
  199. package/dist/types/anyspend/platform/resources/webhooks.d.ts +14 -0
  200. package/dist/types/anyspend/platform/resources/widgets.d.ts +38 -0
  201. package/dist/types/anyspend/platform/types.d.ts +478 -0
  202. package/dist/types/anyspend/platform/utils/idempotency.d.ts +4 -0
  203. package/dist/types/anyspend/platform/utils/pagination.d.ts +12 -0
  204. package/dist/types/anyspend/react/components/AnySpend.d.ts +5 -1
  205. package/dist/types/anyspend/react/components/checkout/AnySpendCheckout.d.ts +14 -6
  206. package/dist/types/anyspend/react/components/checkout/AnySpendCheckoutTrigger.d.ts +3 -1
  207. package/dist/types/anyspend/react/components/checkout/CheckoutPaymentPanel.d.ts +5 -1
  208. package/dist/types/anyspend/react/components/checkout/FiatCheckoutPanel.d.ts +5 -1
  209. package/dist/types/anyspend/react/components/checkout/KycGate.d.ts +11 -0
  210. package/dist/types/anyspend/react/components/checkout/VariablePricingInput.d.ts +17 -0
  211. package/dist/types/anyspend/react/components/index.d.ts +1 -1
  212. package/dist/types/anyspend/react/hooks/index.d.ts +1 -0
  213. package/dist/types/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +2 -0
  214. package/dist/types/anyspend/react/hooks/useKycStatus.d.ts +47 -0
  215. package/dist/types/anyspend/services/anyspend.d.ts +4 -1
  216. package/dist/types/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +3 -1
  217. package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +4 -2
  218. package/dist/types/global-account/react/components/SignInWithB3/steps/LoginStep.d.ts +1 -1
  219. package/dist/types/global-account/react/hooks/useAuthentication.d.ts +3 -1
  220. package/dist/types/global-account/react/hooks/useAutoSelectWallet.d.ts +6 -3
  221. package/dist/types/global-account/react/stores/useModalStore.d.ts +4 -0
  222. package/dist/types/global-account/react/utils/createWagmiConfig.d.ts +18 -0
  223. package/package.json +7 -1
  224. package/src/anyspend/docs/checkout-sessions.md +20 -3
  225. package/src/anyspend/platform/client.ts +198 -0
  226. package/src/anyspend/platform/errors.ts +92 -0
  227. package/src/anyspend/platform/index.ts +129 -0
  228. package/src/anyspend/platform/resources/analytics.ts +10 -0
  229. package/src/anyspend/platform/resources/checkout-sessions.ts +36 -0
  230. package/src/anyspend/platform/resources/customers.ts +54 -0
  231. package/src/anyspend/platform/resources/discount-codes.ts +63 -0
  232. package/src/anyspend/platform/resources/events.ts +22 -0
  233. package/src/anyspend/platform/resources/notifications.ts +37 -0
  234. package/src/anyspend/platform/resources/organization.ts +24 -0
  235. package/src/anyspend/platform/resources/payment-links.ts +74 -0
  236. package/src/anyspend/platform/resources/products.ts +59 -0
  237. package/src/anyspend/platform/resources/transactions.ts +33 -0
  238. package/src/anyspend/platform/resources/webhooks.ts +47 -0
  239. package/src/anyspend/platform/resources/widgets.ts +63 -0
  240. package/src/anyspend/platform/types.ts +532 -0
  241. package/src/anyspend/platform/utils/idempotency.ts +15 -0
  242. package/src/anyspend/platform/utils/pagination.ts +32 -0
  243. package/src/anyspend/react/components/AnySpend.tsx +152 -18
  244. package/src/anyspend/react/components/AnySpendCustom.tsx +4 -4
  245. package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +2 -2
  246. package/src/anyspend/react/components/checkout/AnySpendCheckout.tsx +81 -18
  247. package/src/anyspend/react/components/checkout/AnySpendCheckoutTrigger.tsx +4 -0
  248. package/src/anyspend/react/components/checkout/CheckoutPaymentPanel.tsx +8 -0
  249. package/src/anyspend/react/components/checkout/CryptoPayPanel.tsx +4 -13
  250. package/src/anyspend/react/components/checkout/FiatCheckoutPanel.tsx +86 -17
  251. package/src/anyspend/react/components/checkout/KycGate.tsx +387 -0
  252. package/src/anyspend/react/components/checkout/VariablePricingInput.tsx +247 -0
  253. package/src/anyspend/react/components/common/CryptoPaymentMethod.tsx +1 -1
  254. package/src/anyspend/react/components/common/FeeDetailPanel.tsx +1 -1
  255. package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +2 -2
  256. package/src/anyspend/react/components/common/OrderDetails.tsx +1 -1
  257. package/src/anyspend/react/components/common/PointsDetailPanel.tsx +1 -1
  258. package/src/anyspend/react/components/common/RecipientSelection.tsx +1 -1
  259. package/src/anyspend/react/components/index.ts +1 -0
  260. package/src/anyspend/react/hooks/index.ts +1 -0
  261. package/src/anyspend/react/hooks/useAnyspendCreateOnrampOrder.ts +17 -0
  262. package/src/anyspend/react/hooks/useKycStatus.ts +150 -0
  263. package/src/anyspend/services/anyspend.ts +7 -0
  264. package/src/global-account/react/components/B3DynamicModal.tsx +0 -2
  265. package/src/global-account/react/components/B3Provider/AuthenticationProvider.tsx +4 -0
  266. package/src/global-account/react/components/B3Provider/B3Provider.tsx +9 -2
  267. package/src/global-account/react/components/ManageAccount/BottomNavigation.tsx +7 -7
  268. package/src/global-account/react/components/ManageAccount/HomeActions.tsx +2 -2
  269. package/src/global-account/react/components/ManageAccount/ManageAccount.tsx +7 -7
  270. package/src/global-account/react/components/ManageAccount/channels/TelegramChannel.tsx +1 -1
  271. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +1 -1
  272. package/src/global-account/react/components/SignInWithB3/SignInWithB3Flow.tsx +13 -5
  273. package/src/global-account/react/components/SignInWithB3/SignInWithB3Privy.tsx +1 -1
  274. package/src/global-account/react/components/SignInWithB3/steps/LoginStep.tsx +35 -25
  275. package/src/global-account/react/components/SignInWithB3/steps/LoginStepCustom.tsx +1 -1
  276. package/src/global-account/react/hooks/useAuth.ts +2 -2
  277. package/src/global-account/react/hooks/useAuthentication.ts +92 -27
  278. package/src/global-account/react/hooks/useAutoSelectWallet.ts +40 -6
  279. package/src/global-account/react/hooks/useGetAllTWSigners.tsx +2 -1
  280. package/src/global-account/react/stores/useModalStore.ts +6 -0
  281. package/src/global-account/react/utils/createWagmiConfig.tsx +18 -0
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Typed error classes for the AnySpend Platform API client.
3
+ */
4
+ export interface ApiErrorResponse {
5
+ error: {
6
+ type: string;
7
+ code: string;
8
+ message: string;
9
+ param?: string;
10
+ };
11
+ }
12
+ export declare class ApiError extends Error {
13
+ readonly type: string;
14
+ readonly code: string;
15
+ readonly status: number;
16
+ readonly param?: string;
17
+ constructor(status: number, body: ApiErrorResponse);
18
+ }
19
+ export declare class AuthenticationError extends ApiError {
20
+ constructor(status: number, body: ApiErrorResponse);
21
+ }
22
+ export declare class PermissionError extends ApiError {
23
+ constructor(status: number, body: ApiErrorResponse);
24
+ }
25
+ export declare class RateLimitError extends ApiError {
26
+ readonly retryAfter: number;
27
+ constructor(status: number, body: ApiErrorResponse, retryAfter: number);
28
+ }
29
+ export declare class NotFoundError extends ApiError {
30
+ constructor(status: number, body: ApiErrorResponse);
31
+ }
32
+ export declare class IdempotencyError extends ApiError {
33
+ constructor(status: number, body: ApiErrorResponse);
34
+ }
35
+ /**
36
+ * Parse an API error response into the appropriate typed error class.
37
+ */
38
+ export declare function parseApiError(status: number, body: ApiErrorResponse, headers?: Headers): ApiError;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Typed error classes for the AnySpend Platform API client.
3
+ */
4
+ export class ApiError extends Error {
5
+ constructor(status, body) {
6
+ super(body.error.message);
7
+ this.name = "ApiError";
8
+ this.type = body.error.type;
9
+ this.code = body.error.code;
10
+ this.status = status;
11
+ this.param = body.error.param;
12
+ }
13
+ }
14
+ export class AuthenticationError extends ApiError {
15
+ constructor(status, body) {
16
+ super(status, body);
17
+ this.name = "AuthenticationError";
18
+ }
19
+ }
20
+ export class PermissionError extends ApiError {
21
+ constructor(status, body) {
22
+ super(status, body);
23
+ this.name = "PermissionError";
24
+ }
25
+ }
26
+ export class RateLimitError extends ApiError {
27
+ constructor(status, body, retryAfter) {
28
+ super(status, body);
29
+ this.name = "RateLimitError";
30
+ this.retryAfter = retryAfter;
31
+ }
32
+ }
33
+ export class NotFoundError extends ApiError {
34
+ constructor(status, body) {
35
+ super(status, body);
36
+ this.name = "NotFoundError";
37
+ }
38
+ }
39
+ export class IdempotencyError extends ApiError {
40
+ constructor(status, body) {
41
+ super(status, body);
42
+ this.name = "IdempotencyError";
43
+ }
44
+ }
45
+ /**
46
+ * Parse an API error response into the appropriate typed error class.
47
+ */
48
+ export function parseApiError(status, body, headers) {
49
+ const type = body.error?.type;
50
+ if (status === 401 || type === "authentication_error") {
51
+ return new AuthenticationError(status, body);
52
+ }
53
+ if (status === 403 || type === "permission_error") {
54
+ return new PermissionError(status, body);
55
+ }
56
+ if (status === 429 || type === "rate_limit_error") {
57
+ const retryAfter = parseInt(headers?.get("Retry-After") || "60", 10);
58
+ return new RateLimitError(status, body, retryAfter);
59
+ }
60
+ if (status === 404 || type === "not_found_error") {
61
+ return new NotFoundError(status, body);
62
+ }
63
+ if (type === "idempotency_error") {
64
+ return new IdempotencyError(status, body);
65
+ }
66
+ return new ApiError(status, body);
67
+ }
@@ -0,0 +1,87 @@
1
+ /**
2
+ * AnySpend Platform API Client
3
+ *
4
+ * A headless TypeScript client for the AnySpend Platform REST API.
5
+ * Works in any runtime with `fetch` (Node.js, browsers, Cloudflare Workers, Deno, Bun).
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { AnySpendPlatformClient } from '../../anyspend/platform';
10
+ *
11
+ * const platform = new AnySpendPlatformClient('asp_your_api_key_here');
12
+ *
13
+ * // Create a payment link
14
+ * const link = await platform.paymentLinks.create({
15
+ * name: 'Summer Sale',
16
+ * amount: '10000000',
17
+ * token_address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
18
+ * chain_id: 8453,
19
+ * recipient_address: '0x...',
20
+ * });
21
+ *
22
+ * // Quick pay (no API key needed)
23
+ * const quickLink = await AnySpendPlatformClient.quickPay({
24
+ * recipient_address: '0x...',
25
+ * amount: '5000000',
26
+ * });
27
+ * ```
28
+ */
29
+ import { type ClientConfig } from "./client";
30
+ import { PaymentLinksResource } from "./resources/payment-links";
31
+ import { ProductsResource } from "./resources/products";
32
+ import { CustomersResource } from "./resources/customers";
33
+ import { TransactionsResource } from "./resources/transactions";
34
+ import { CheckoutSessionsResource } from "./resources/checkout-sessions";
35
+ import { WebhooksResource } from "./resources/webhooks";
36
+ import { DiscountCodesResource } from "./resources/discount-codes";
37
+ import { NotificationsResource } from "./resources/notifications";
38
+ import { WidgetsResource } from "./resources/widgets";
39
+ import { OrganizationResource } from "./resources/organization";
40
+ import { AnalyticsResource } from "./resources/analytics";
41
+ import { EventsResource } from "./resources/events";
42
+ import type { QuickPayParams, PaymentLink } from "./types";
43
+ export declare class AnySpendPlatformClient {
44
+ private client;
45
+ /** Payment Links - Create, manage, and track payment links */
46
+ readonly paymentLinks: PaymentLinksResource;
47
+ /** Products - Manage your product catalog */
48
+ readonly products: ProductsResource;
49
+ /** Customers - Manage customer records */
50
+ readonly customers: CustomersResource;
51
+ /** Transactions - View transaction history and stats */
52
+ readonly transactions: TransactionsResource;
53
+ /** Checkout Sessions - Server-side checkout management */
54
+ readonly checkoutSessions: CheckoutSessionsResource;
55
+ /** Webhooks - Configure webhook endpoints */
56
+ readonly webhooks: WebhooksResource;
57
+ /** Discount Codes - Create and validate discounts */
58
+ readonly discountCodes: DiscountCodesResource;
59
+ /** Notifications - Email and Telegram settings */
60
+ readonly notifications: NotificationsResource;
61
+ /** Widgets - Embeddable widget configurations */
62
+ readonly widgets: WidgetsResource;
63
+ /** Organization - Org settings and defaults */
64
+ readonly organization: OrganizationResource;
65
+ /** Analytics - Revenue and conversion analytics */
66
+ readonly analytics: AnalyticsResource;
67
+ /** Events - API audit trail */
68
+ readonly events: EventsResource;
69
+ /**
70
+ * Create a new AnySpend Platform API client.
71
+ *
72
+ * @param apiKey - Your API key (starts with `asp_`)
73
+ * @param config - Optional configuration
74
+ */
75
+ constructor(apiKey: string, config?: ClientConfig);
76
+ /**
77
+ * Create a quick payment link without authentication.
78
+ * Rate limited to 5 requests per minute per IP.
79
+ *
80
+ * @param params - Quick pay parameters
81
+ * @param baseUrl - Optional API base URL (defaults to production)
82
+ */
83
+ static quickPay(params: QuickPayParams, baseUrl?: string): Promise<PaymentLink>;
84
+ }
85
+ export type { ClientConfig } from "./client";
86
+ export { ApiError, AuthenticationError, PermissionError, RateLimitError, NotFoundError, IdempotencyError, } from "./errors";
87
+ export type * from "./types";
@@ -0,0 +1,75 @@
1
+ /**
2
+ * AnySpend Platform API Client
3
+ *
4
+ * A headless TypeScript client for the AnySpend Platform REST API.
5
+ * Works in any runtime with `fetch` (Node.js, browsers, Cloudflare Workers, Deno, Bun).
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { AnySpendPlatformClient } from '../../anyspend/platform/index.js';
10
+ *
11
+ * const platform = new AnySpendPlatformClient('asp_your_api_key_here');
12
+ *
13
+ * // Create a payment link
14
+ * const link = await platform.paymentLinks.create({
15
+ * name: 'Summer Sale',
16
+ * amount: '10000000',
17
+ * token_address: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
18
+ * chain_id: 8453,
19
+ * recipient_address: '0x...',
20
+ * });
21
+ *
22
+ * // Quick pay (no API key needed)
23
+ * const quickLink = await AnySpendPlatformClient.quickPay({
24
+ * recipient_address: '0x...',
25
+ * amount: '5000000',
26
+ * });
27
+ * ```
28
+ */
29
+ import { HttpClient, StaticHttpClient, DEFAULT_BASE_URL } from "./client.js";
30
+ import { PaymentLinksResource } from "./resources/payment-links.js";
31
+ import { ProductsResource } from "./resources/products.js";
32
+ import { CustomersResource } from "./resources/customers.js";
33
+ import { TransactionsResource } from "./resources/transactions.js";
34
+ import { CheckoutSessionsResource } from "./resources/checkout-sessions.js";
35
+ import { WebhooksResource } from "./resources/webhooks.js";
36
+ import { DiscountCodesResource } from "./resources/discount-codes.js";
37
+ import { NotificationsResource } from "./resources/notifications.js";
38
+ import { WidgetsResource } from "./resources/widgets.js";
39
+ import { OrganizationResource } from "./resources/organization.js";
40
+ import { AnalyticsResource } from "./resources/analytics.js";
41
+ import { EventsResource } from "./resources/events.js";
42
+ export class AnySpendPlatformClient {
43
+ /**
44
+ * Create a new AnySpend Platform API client.
45
+ *
46
+ * @param apiKey - Your API key (starts with `asp_`)
47
+ * @param config - Optional configuration
48
+ */
49
+ constructor(apiKey, config) {
50
+ this.client = new HttpClient(apiKey, config);
51
+ this.paymentLinks = new PaymentLinksResource(this.client);
52
+ this.products = new ProductsResource(this.client);
53
+ this.customers = new CustomersResource(this.client);
54
+ this.transactions = new TransactionsResource(this.client);
55
+ this.checkoutSessions = new CheckoutSessionsResource(this.client);
56
+ this.webhooks = new WebhooksResource(this.client);
57
+ this.discountCodes = new DiscountCodesResource(this.client);
58
+ this.notifications = new NotificationsResource(this.client);
59
+ this.widgets = new WidgetsResource(this.client);
60
+ this.organization = new OrganizationResource(this.client);
61
+ this.analytics = new AnalyticsResource(this.client);
62
+ this.events = new EventsResource(this.client);
63
+ }
64
+ /**
65
+ * Create a quick payment link without authentication.
66
+ * Rate limited to 5 requests per minute per IP.
67
+ *
68
+ * @param params - Quick pay parameters
69
+ * @param baseUrl - Optional API base URL (defaults to production)
70
+ */
71
+ static async quickPay(params, baseUrl = DEFAULT_BASE_URL) {
72
+ return StaticHttpClient.post(baseUrl, "/quick-pay", params);
73
+ }
74
+ }
75
+ export { ApiError, AuthenticationError, PermissionError, RateLimitError, NotFoundError, IdempotencyError, } from "./errors.js";
@@ -0,0 +1,7 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { AnalyticsOverview } from "../types";
3
+ export declare class AnalyticsResource {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ overview(period?: "7d" | "30d" | "90d" | "all"): Promise<AnalyticsOverview>;
7
+ }
@@ -0,0 +1,8 @@
1
+ export class AnalyticsResource {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ async overview(period) {
6
+ return this.client.get("/analytics/overview", period !== undefined ? { period } : undefined);
7
+ }
8
+ }
@@ -0,0 +1,17 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { CheckoutSession, ListResponse, CreateCheckoutSessionParams, PaginationParams } from "../types";
3
+ export interface ListCheckoutSessionsParams extends PaginationParams {
4
+ status?: "open" | "processing" | "completed" | "expired" | "failed";
5
+ payment_link_id?: string;
6
+ from?: number;
7
+ to?: number;
8
+ }
9
+ export declare class CheckoutSessionsResource {
10
+ private client;
11
+ constructor(client: HttpClient);
12
+ list(params?: ListCheckoutSessionsParams): Promise<ListResponse<CheckoutSession>>;
13
+ listAutoPaginate(params?: Omit<ListCheckoutSessionsParams, "page">): AsyncGenerator<CheckoutSession>;
14
+ create(params: CreateCheckoutSessionParams): Promise<CheckoutSession>;
15
+ get(id: string): Promise<CheckoutSession>;
16
+ expire(id: string): Promise<CheckoutSession>;
17
+ }
@@ -0,0 +1,23 @@
1
+ import { autoPaginate } from "../utils/pagination.js";
2
+ export class CheckoutSessionsResource {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async list(params) {
7
+ return this.client.get("/checkout-sessions", params);
8
+ }
9
+ async *listAutoPaginate(params) {
10
+ yield* autoPaginate((page, limit) => this.list({ ...params, page, limit }), {
11
+ limit: params?.limit,
12
+ });
13
+ }
14
+ async create(params) {
15
+ return this.client.post("/checkout-sessions", params);
16
+ }
17
+ async get(id) {
18
+ return this.client.get(`/checkout-sessions/${id}`);
19
+ }
20
+ async expire(id) {
21
+ return this.client.post(`/checkout-sessions/${id}/expire`);
22
+ }
23
+ }
@@ -0,0 +1,19 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { Customer, Transaction, ListResponse, DeletedResponse, CreateCustomerParams, UpdateCustomerParams, ExportCustomersParams, PaginationParams } from "../types";
3
+ export interface ListCustomersParams extends PaginationParams {
4
+ search?: string;
5
+ sort?: "created_at" | "updated_at" | "total_paid" | "transaction_count";
6
+ order?: "asc" | "desc";
7
+ }
8
+ export declare class CustomersResource {
9
+ private client;
10
+ constructor(client: HttpClient);
11
+ list(params?: ListCustomersParams): Promise<ListResponse<Customer>>;
12
+ listAutoPaginate(params?: Omit<ListCustomersParams, "page">): AsyncGenerator<Customer>;
13
+ create(params: CreateCustomerParams): Promise<Customer>;
14
+ get(id: string): Promise<Customer>;
15
+ update(id: string, params: UpdateCustomerParams): Promise<Customer>;
16
+ delete(id: string): Promise<DeletedResponse>;
17
+ transactions(id: string, params?: PaginationParams): Promise<ListResponse<Transaction>>;
18
+ export(params?: ExportCustomersParams): Promise<string>;
19
+ }
@@ -0,0 +1,30 @@
1
+ import { autoPaginate } from "../utils/pagination.js";
2
+ export class CustomersResource {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async list(params) {
7
+ return this.client.get("/customers", params);
8
+ }
9
+ async *listAutoPaginate(params) {
10
+ yield* autoPaginate((page, limit) => this.list({ ...params, page, limit }), { limit: params?.limit });
11
+ }
12
+ async create(params) {
13
+ return this.client.post("/customers", params);
14
+ }
15
+ async get(id) {
16
+ return this.client.get(`/customers/${id}`);
17
+ }
18
+ async update(id, params) {
19
+ return this.client.patch(`/customers/${id}`, params);
20
+ }
21
+ async delete(id) {
22
+ return this.client.delete(`/customers/${id}`);
23
+ }
24
+ async transactions(id, params) {
25
+ return this.client.get(`/customers/${id}/transactions`, params);
26
+ }
27
+ async export(params) {
28
+ return this.client.get("/customers/export", params);
29
+ }
30
+ }
@@ -0,0 +1,29 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { DiscountCode, ListResponse, DeletedResponse, CreateDiscountCodeParams, BatchCreateDiscountCodesParams, ValidateDiscountResult, BatchCreateResult, PaginationParams } from "../types";
3
+ export interface ListDiscountCodesParams extends PaginationParams {
4
+ payment_link_id?: string;
5
+ active?: "true" | "false";
6
+ search?: string;
7
+ }
8
+ export interface UpdateDiscountCodeParams {
9
+ is_active?: boolean;
10
+ max_uses?: number;
11
+ min_order_amount?: string;
12
+ expires_at?: number;
13
+ }
14
+ export interface ValidateDiscountParams {
15
+ code: string;
16
+ payment_link_id?: string;
17
+ amount?: string;
18
+ }
19
+ export declare class DiscountCodesResource {
20
+ private client;
21
+ constructor(client: HttpClient);
22
+ list(params?: ListDiscountCodesParams): Promise<ListResponse<DiscountCode>>;
23
+ listAutoPaginate(params?: Omit<ListDiscountCodesParams, "page">): AsyncGenerator<DiscountCode>;
24
+ create(params: CreateDiscountCodeParams): Promise<DiscountCode>;
25
+ update(id: string, params: UpdateDiscountCodeParams): Promise<DiscountCode>;
26
+ delete(id: string): Promise<DeletedResponse>;
27
+ validate(params: ValidateDiscountParams): Promise<ValidateDiscountResult>;
28
+ batchCreate(params: BatchCreateDiscountCodesParams): Promise<BatchCreateResult>;
29
+ }
@@ -0,0 +1,27 @@
1
+ import { autoPaginate } from "../utils/pagination.js";
2
+ export class DiscountCodesResource {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async list(params) {
7
+ return this.client.get("/discount-codes", params);
8
+ }
9
+ async *listAutoPaginate(params) {
10
+ yield* autoPaginate((page, limit) => this.list({ ...params, page, limit }), { limit: params?.limit });
11
+ }
12
+ async create(params) {
13
+ return this.client.post("/discount-codes", params);
14
+ }
15
+ async update(id, params) {
16
+ return this.client.patch(`/discount-codes/${id}`, params);
17
+ }
18
+ async delete(id) {
19
+ return this.client.delete(`/discount-codes/${id}`);
20
+ }
21
+ async validate(params) {
22
+ return this.client.post("/discount-codes/validate", params);
23
+ }
24
+ async batchCreate(params) {
25
+ return this.client.post("/discount-codes/batch", params);
26
+ }
27
+ }
@@ -0,0 +1,14 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { ApiEvent, ListResponse, PaginationParams } from "../types";
3
+ export interface ListEventsParams extends PaginationParams {
4
+ event_type?: string;
5
+ resource_type?: string;
6
+ from?: number;
7
+ to?: number;
8
+ }
9
+ export declare class EventsResource {
10
+ private client;
11
+ constructor(client: HttpClient);
12
+ list(params?: ListEventsParams): Promise<ListResponse<ApiEvent>>;
13
+ listAutoPaginate(params?: Omit<ListEventsParams, "page">): AsyncGenerator<ApiEvent>;
14
+ }
@@ -0,0 +1,12 @@
1
+ import { autoPaginate } from "../utils/pagination.js";
2
+ export class EventsResource {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async list(params) {
7
+ return this.client.get("/events", params);
8
+ }
9
+ async *listAutoPaginate(params) {
10
+ yield* autoPaginate((page, limit) => this.list({ ...params, page, limit }), { limit: params?.limit });
11
+ }
12
+ }
@@ -0,0 +1,18 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { NotificationSettings, UpdateNotificationSettingsParams, ActionResponse } from "../types";
3
+ export interface TelegramLinkResult {
4
+ object: "telegram_link";
5
+ link_url: string;
6
+ link_code: string;
7
+ expires_at: number;
8
+ }
9
+ export declare class NotificationsResource {
10
+ private client;
11
+ constructor(client: HttpClient);
12
+ get(): Promise<NotificationSettings>;
13
+ update(params: UpdateNotificationSettingsParams): Promise<NotificationSettings>;
14
+ linkTelegram(): Promise<TelegramLinkResult>;
15
+ unlinkTelegram(): Promise<ActionResponse>;
16
+ testEmail(): Promise<ActionResponse>;
17
+ testTelegram(): Promise<ActionResponse>;
18
+ }
@@ -0,0 +1,23 @@
1
+ export class NotificationsResource {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ async get() {
6
+ return this.client.get("/notifications");
7
+ }
8
+ async update(params) {
9
+ return this.client.patch("/notifications", params);
10
+ }
11
+ async linkTelegram() {
12
+ return this.client.post("/notifications/telegram/link");
13
+ }
14
+ async unlinkTelegram() {
15
+ return this.client.post("/notifications/telegram/unlink");
16
+ }
17
+ async testEmail() {
18
+ return this.client.post("/notifications/test/email");
19
+ }
20
+ async testTelegram() {
21
+ return this.client.post("/notifications/test/telegram");
22
+ }
23
+ }
@@ -0,0 +1,17 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { Organization } from "../types";
3
+ export interface UpdateOrganizationParams {
4
+ name?: string;
5
+ description?: string;
6
+ logo_url?: string;
7
+ website_url?: string;
8
+ default_recipient_address?: string;
9
+ default_chain_id?: number;
10
+ default_token_address?: string;
11
+ }
12
+ export declare class OrganizationResource {
13
+ private client;
14
+ constructor(client: HttpClient);
15
+ get(): Promise<Organization>;
16
+ update(params: UpdateOrganizationParams): Promise<Organization>;
17
+ }
@@ -0,0 +1,11 @@
1
+ export class OrganizationResource {
2
+ constructor(client) {
3
+ this.client = client;
4
+ }
5
+ async get() {
6
+ return this.client.get("/organization");
7
+ }
8
+ async update(params) {
9
+ return this.client.patch("/organization", params);
10
+ }
11
+ }
@@ -0,0 +1,21 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { PaymentLink, PaymentLinkItem, PaymentLinkStats, CheckoutSession, ListResponse, DeletedResponse, CreatePaymentLinkParams, CreatePaymentLinkItemParams, UpdatePaymentLinkParams, ListPaymentLinksParams, PaginationParams } from "../types";
3
+ export declare class PaymentLinksResource {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ list(params?: ListPaymentLinksParams): Promise<ListResponse<PaymentLink>>;
7
+ listAutoPaginate(params?: Omit<ListPaymentLinksParams, "page">): AsyncGenerator<PaymentLink>;
8
+ create(params: CreatePaymentLinkParams): Promise<PaymentLink>;
9
+ get(id: string): Promise<PaymentLink>;
10
+ update(id: string, params: UpdatePaymentLinkParams): Promise<PaymentLink>;
11
+ delete(id: string): Promise<DeletedResponse>;
12
+ duplicate(id: string, overrides?: Partial<CreatePaymentLinkParams>): Promise<PaymentLink>;
13
+ stats(id: string, days?: number): Promise<PaymentLinkStats>;
14
+ sessions(id: string, params?: PaginationParams): Promise<ListResponse<CheckoutSession>>;
15
+ visitors(id: string, params?: PaginationParams & {
16
+ days?: number;
17
+ }): Promise<ListResponse<Record<string, unknown>>>;
18
+ items(id: string): Promise<PaymentLinkItem[]>;
19
+ addItem(id: string, item: CreatePaymentLinkItemParams): Promise<PaymentLinkItem>;
20
+ removeItem(id: string, itemId: string): Promise<DeletedResponse>;
21
+ }
@@ -0,0 +1,45 @@
1
+ import { autoPaginate } from "../utils/pagination.js";
2
+ export class PaymentLinksResource {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async list(params) {
7
+ return this.client.get("/payment-links", params);
8
+ }
9
+ async *listAutoPaginate(params) {
10
+ yield* autoPaginate((page, limit) => this.list({ ...params, page, limit }), { limit: params?.limit });
11
+ }
12
+ async create(params) {
13
+ return this.client.post("/payment-links", params);
14
+ }
15
+ async get(id) {
16
+ return this.client.get(`/payment-links/${id}`);
17
+ }
18
+ async update(id, params) {
19
+ return this.client.patch(`/payment-links/${id}`, params);
20
+ }
21
+ async delete(id) {
22
+ return this.client.delete(`/payment-links/${id}`);
23
+ }
24
+ async duplicate(id, overrides) {
25
+ return this.client.post(`/payment-links/${id}/duplicate`, overrides ?? {});
26
+ }
27
+ async stats(id, days) {
28
+ return this.client.get(`/payment-links/${id}/stats`, days !== undefined ? { days } : undefined);
29
+ }
30
+ async sessions(id, params) {
31
+ return this.client.get(`/payment-links/${id}/sessions`, params);
32
+ }
33
+ async visitors(id, params) {
34
+ return this.client.get(`/payment-links/${id}/visitors`, params);
35
+ }
36
+ async items(id) {
37
+ return this.client.get(`/payment-links/${id}/items`);
38
+ }
39
+ async addItem(id, item) {
40
+ return this.client.post(`/payment-links/${id}/items`, item);
41
+ }
42
+ async removeItem(id, itemId) {
43
+ return this.client.delete(`/payment-links/${id}/items/${itemId}`);
44
+ }
45
+ }
@@ -0,0 +1,27 @@
1
+ import type { HttpClient } from "../client";
2
+ import type { Product, PaymentLink, ListResponse, DeletedResponse, CreateProductParams, UpdateProductParams, PaginationParams } from "../types";
3
+ export interface ListProductsParams extends PaginationParams {
4
+ search?: string;
5
+ active?: "true" | "false";
6
+ product_type?: "one_time" | "subscription" | "variable";
7
+ sort?: "created_at" | "updated_at" | "name";
8
+ order?: "asc" | "desc";
9
+ }
10
+ export interface GenerateLinkParams {
11
+ recipient_address?: string;
12
+ name?: string;
13
+ description?: string;
14
+ theme_color?: string;
15
+ button_text?: string;
16
+ }
17
+ export declare class ProductsResource {
18
+ private client;
19
+ constructor(client: HttpClient);
20
+ list(params?: ListProductsParams): Promise<ListResponse<Product>>;
21
+ listAutoPaginate(params?: Omit<ListProductsParams, "page">): AsyncGenerator<Product>;
22
+ create(params: CreateProductParams): Promise<Product>;
23
+ get(id: string): Promise<Product>;
24
+ update(id: string, params: UpdateProductParams): Promise<Product>;
25
+ delete(id: string): Promise<DeletedResponse>;
26
+ generateLink(id: string, params?: GenerateLinkParams): Promise<PaymentLink>;
27
+ }