@cedros/pay-react 1.0.4 → 1.1.0

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 (389) hide show
  1. package/README.md +297 -39
  2. package/dist/CedrosContext-DUT3cLZg.mjs +2474 -0
  3. package/dist/CedrosContext-efFL4kQz.js +11 -0
  4. package/dist/admin/index.d.ts +9 -0
  5. package/dist/admin/index.d.ts.map +1 -0
  6. package/dist/admin/plugin.d.ts +9 -0
  7. package/dist/admin/plugin.d.ts.map +1 -0
  8. package/dist/admin/types.d.ts +115 -0
  9. package/dist/admin/types.d.ts.map +1 -0
  10. package/dist/components/CedrosPay.d.ts.map +1 -1
  11. package/dist/components/CreditsButton.d.ts +42 -0
  12. package/dist/components/CreditsButton.d.ts.map +1 -0
  13. package/dist/components/CreditsSubscribeButton.d.ts +55 -0
  14. package/dist/components/CreditsSubscribeButton.d.ts.map +1 -0
  15. package/dist/components/CryptoButton.d.ts.map +1 -1
  16. package/dist/components/CryptoSubscribeButton.d.ts +50 -0
  17. package/dist/components/CryptoSubscribeButton.d.ts.map +1 -0
  18. package/dist/components/PaymentModal.d.ts +8 -2
  19. package/dist/components/PaymentModal.d.ts.map +1 -1
  20. package/dist/components/PurchaseButton.d.ts +14 -3
  21. package/dist/components/PurchaseButton.d.ts.map +1 -1
  22. package/dist/components/SubscribeButton.d.ts +55 -0
  23. package/dist/components/SubscribeButton.d.ts.map +1 -0
  24. package/dist/components/SubscriptionManagementPanel.d.ts +67 -0
  25. package/dist/components/SubscriptionManagementPanel.d.ts.map +1 -0
  26. package/dist/components/admin/AISettingsSection.d.ts +3 -0
  27. package/dist/components/admin/AISettingsSection.d.ts.map +1 -0
  28. package/dist/components/admin/AdminAuthManager.d.ts +95 -0
  29. package/dist/components/admin/AdminAuthManager.d.ts.map +1 -0
  30. package/dist/components/admin/CedrosPayAdminDashboard.d.ts +40 -0
  31. package/dist/components/admin/CedrosPayAdminDashboard.d.ts.map +1 -0
  32. package/dist/components/admin/ConfigEditor.d.ts +13 -0
  33. package/dist/components/admin/ConfigEditor.d.ts.map +1 -0
  34. package/dist/components/admin/CouponsSection.d.ts +3 -0
  35. package/dist/components/admin/CouponsSection.d.ts.map +1 -0
  36. package/dist/components/admin/Dropdown.d.ts +29 -0
  37. package/dist/components/admin/Dropdown.d.ts.map +1 -0
  38. package/dist/components/admin/FAQSection.d.ts +3 -0
  39. package/dist/components/admin/FAQSection.d.ts.map +1 -0
  40. package/dist/components/admin/MessagingSection.d.ts +10 -0
  41. package/dist/components/admin/MessagingSection.d.ts.map +1 -0
  42. package/dist/components/admin/OverviewSection.d.ts +3 -0
  43. package/dist/components/admin/OverviewSection.d.ts.map +1 -0
  44. package/dist/components/admin/PaymentSettingsSection.d.ts +3 -0
  45. package/dist/components/admin/PaymentSettingsSection.d.ts.map +1 -0
  46. package/dist/components/admin/ProductVariationsEditor.d.ts +14 -0
  47. package/dist/components/admin/ProductVariationsEditor.d.ts.map +1 -0
  48. package/dist/components/admin/ProductsSection.d.ts +3 -0
  49. package/dist/components/admin/ProductsSection.d.ts.map +1 -0
  50. package/dist/components/admin/RefundsSection.d.ts +3 -0
  51. package/dist/components/admin/RefundsSection.d.ts.map +1 -0
  52. package/dist/components/admin/SettingsSection.d.ts +10 -0
  53. package/dist/components/admin/SettingsSection.d.ts.map +1 -0
  54. package/dist/components/admin/SingleCategorySettings.d.ts +21 -0
  55. package/dist/components/admin/SingleCategorySettings.d.ts.map +1 -0
  56. package/dist/components/admin/StatsBar.d.ts +19 -0
  57. package/dist/components/admin/StatsBar.d.ts.map +1 -0
  58. package/dist/components/admin/StorefrontSection.d.ts +3 -0
  59. package/dist/components/admin/StorefrontSection.d.ts.map +1 -0
  60. package/dist/components/admin/SubscriptionsSection.d.ts +3 -0
  61. package/dist/components/admin/SubscriptionsSection.d.ts.map +1 -0
  62. package/dist/components/admin/TransactionsSection.d.ts +3 -0
  63. package/dist/components/admin/TransactionsSection.d.ts.map +1 -0
  64. package/dist/components/admin/VariantInventoryGrid.d.ts +19 -0
  65. package/dist/components/admin/VariantInventoryGrid.d.ts.map +1 -0
  66. package/dist/components/admin/VariationTypeEditor.d.ts +15 -0
  67. package/dist/components/admin/VariationTypeEditor.d.ts.map +1 -0
  68. package/dist/components/admin/configApi.d.ts +104 -0
  69. package/dist/components/admin/configApi.d.ts.map +1 -0
  70. package/dist/components/admin/icons.d.ts +50 -0
  71. package/dist/components/admin/icons.d.ts.map +1 -0
  72. package/dist/components/admin/index.d.ts +16 -0
  73. package/dist/components/admin/index.d.ts.map +1 -0
  74. package/dist/components/admin/sections-more.d.ts +12 -0
  75. package/dist/components/admin/sections-more.d.ts.map +1 -0
  76. package/dist/components/admin/sections.d.ts +12 -0
  77. package/dist/components/admin/sections.d.ts.map +1 -0
  78. package/dist/components/admin/types.d.ts +324 -0
  79. package/dist/components/admin/types.d.ts.map +1 -0
  80. package/dist/components/admin/useAdminAuth.d.ts +50 -0
  81. package/dist/components/admin/useAdminAuth.d.ts.map +1 -0
  82. package/dist/components/admin/useAutosave.d.ts +56 -0
  83. package/dist/components/admin/useAutosave.d.ts.map +1 -0
  84. package/dist/components/admin/useProductVariations.d.ts +56 -0
  85. package/dist/components/admin/useProductVariations.d.ts.map +1 -0
  86. package/dist/components/subscriptionPanelStyles.d.ts +12 -0
  87. package/dist/components/subscriptionPanelStyles.d.ts.map +1 -0
  88. package/dist/context/CedrosContext.d.ts +6 -0
  89. package/dist/context/CedrosContext.d.ts.map +1 -1
  90. package/dist/context/ThemeContext.d.ts +6 -0
  91. package/dist/context/ThemeContext.d.ts.map +1 -1
  92. package/dist/crypto-only.d.ts +1 -1
  93. package/dist/crypto-only.d.ts.map +1 -1
  94. package/dist/crypto-only.js +1 -1
  95. package/dist/crypto-only.mjs +16 -17
  96. package/dist/ecommerce/__tests__/cartCheckoutRequirements.test.d.ts +2 -0
  97. package/dist/ecommerce/__tests__/cartCheckoutRequirements.test.d.ts.map +1 -0
  98. package/dist/ecommerce/__tests__/cartProviderPersistence.test.d.ts +2 -0
  99. package/dist/ecommerce/__tests__/cartProviderPersistence.test.d.ts.map +1 -0
  100. package/dist/ecommerce/__tests__/cartReducer.test.d.ts +2 -0
  101. package/dist/ecommerce/__tests__/cartReducer.test.d.ts.map +1 -0
  102. package/dist/ecommerce/__tests__/cartServerMerge.test.d.ts +2 -0
  103. package/dist/ecommerce/__tests__/cartServerMerge.test.d.ts.map +1 -0
  104. package/dist/ecommerce/__tests__/checkoutPaymentMethods.test.d.ts +2 -0
  105. package/dist/ecommerce/__tests__/checkoutPaymentMethods.test.d.ts.map +1 -0
  106. package/dist/ecommerce/__tests__/checkoutReturn.test.d.ts +2 -0
  107. package/dist/ecommerce/__tests__/checkoutReturn.test.d.ts.map +1 -0
  108. package/dist/ecommerce/__tests__/checkoutSchema.test.d.ts +2 -0
  109. package/dist/ecommerce/__tests__/checkoutSchema.test.d.ts.map +1 -0
  110. package/dist/ecommerce/__tests__/mockAdapter.test.d.ts +2 -0
  111. package/dist/ecommerce/__tests__/mockAdapter.test.d.ts.map +1 -0
  112. package/dist/ecommerce/adapters/CommerceAdapter.d.ts +235 -0
  113. package/dist/ecommerce/adapters/CommerceAdapter.d.ts.map +1 -0
  114. package/dist/ecommerce/adapters/mock/mockAdapter.d.ts +3 -0
  115. package/dist/ecommerce/adapters/mock/mockAdapter.d.ts.map +1 -0
  116. package/dist/ecommerce/adapters/paywall/paywallAdapter.d.ts +6 -0
  117. package/dist/ecommerce/adapters/paywall/paywallAdapter.d.ts.map +1 -0
  118. package/dist/ecommerce/components/cart/CartLineItem.d.ts +12 -0
  119. package/dist/ecommerce/components/cart/CartLineItem.d.ts.map +1 -0
  120. package/dist/ecommerce/components/cart/CartPageContent.d.ts +6 -0
  121. package/dist/ecommerce/components/cart/CartPageContent.d.ts.map +1 -0
  122. package/dist/ecommerce/components/cart/CartPanel.d.ts +5 -0
  123. package/dist/ecommerce/components/cart/CartPanel.d.ts.map +1 -0
  124. package/dist/ecommerce/components/cart/CartSidebar.d.ts +11 -0
  125. package/dist/ecommerce/components/cart/CartSidebar.d.ts.map +1 -0
  126. package/dist/ecommerce/components/cart/CartSummary.d.ts +13 -0
  127. package/dist/ecommerce/components/cart/CartSummary.d.ts.map +1 -0
  128. package/dist/ecommerce/components/cart/PromoCodeInput.d.ts +6 -0
  129. package/dist/ecommerce/components/cart/PromoCodeInput.d.ts.map +1 -0
  130. package/dist/ecommerce/components/catalog/Breadcrumbs.d.ts +9 -0
  131. package/dist/ecommerce/components/catalog/Breadcrumbs.d.ts.map +1 -0
  132. package/dist/ecommerce/components/catalog/CategoryNav.d.ts +8 -0
  133. package/dist/ecommerce/components/catalog/CategoryNav.d.ts.map +1 -0
  134. package/dist/ecommerce/components/catalog/FilterPanel.d.ts +29 -0
  135. package/dist/ecommerce/components/catalog/FilterPanel.d.ts.map +1 -0
  136. package/dist/ecommerce/components/catalog/Price.d.ts +9 -0
  137. package/dist/ecommerce/components/catalog/Price.d.ts.map +1 -0
  138. package/dist/ecommerce/components/catalog/ProductCard.d.ts +14 -0
  139. package/dist/ecommerce/components/catalog/ProductCard.d.ts.map +1 -0
  140. package/dist/ecommerce/components/catalog/ProductGallery.d.ts +6 -0
  141. package/dist/ecommerce/components/catalog/ProductGallery.d.ts.map +1 -0
  142. package/dist/ecommerce/components/catalog/ProductGrid.d.ts +20 -0
  143. package/dist/ecommerce/components/catalog/ProductGrid.d.ts.map +1 -0
  144. package/dist/ecommerce/components/catalog/QuantitySelector.d.ts +8 -0
  145. package/dist/ecommerce/components/catalog/QuantitySelector.d.ts.map +1 -0
  146. package/dist/ecommerce/components/catalog/QuickViewDialog.d.ts +10 -0
  147. package/dist/ecommerce/components/catalog/QuickViewDialog.d.ts.map +1 -0
  148. package/dist/ecommerce/components/catalog/SearchInput.d.ts +7 -0
  149. package/dist/ecommerce/components/catalog/SearchInput.d.ts.map +1 -0
  150. package/dist/ecommerce/components/catalog/VariantSelector.d.ts +19 -0
  151. package/dist/ecommerce/components/catalog/VariantSelector.d.ts.map +1 -0
  152. package/dist/ecommerce/components/chat/ShopChatPanel.d.ts +4 -0
  153. package/dist/ecommerce/components/chat/ShopChatPanel.d.ts.map +1 -0
  154. package/dist/ecommerce/components/checkout/AddressForm.d.ts +9 -0
  155. package/dist/ecommerce/components/checkout/AddressForm.d.ts.map +1 -0
  156. package/dist/ecommerce/components/checkout/CheckoutCancelPage.d.ts +24 -0
  157. package/dist/ecommerce/components/checkout/CheckoutCancelPage.d.ts.map +1 -0
  158. package/dist/ecommerce/components/checkout/CheckoutForm.d.ts +4 -0
  159. package/dist/ecommerce/components/checkout/CheckoutForm.d.ts.map +1 -0
  160. package/dist/ecommerce/components/checkout/CheckoutLayout.d.ts +6 -0
  161. package/dist/ecommerce/components/checkout/CheckoutLayout.d.ts.map +1 -0
  162. package/dist/ecommerce/components/checkout/CheckoutReceipt.d.ts +8 -0
  163. package/dist/ecommerce/components/checkout/CheckoutReceipt.d.ts.map +1 -0
  164. package/dist/ecommerce/components/checkout/CheckoutSuccessPage.d.ts +29 -0
  165. package/dist/ecommerce/components/checkout/CheckoutSuccessPage.d.ts.map +1 -0
  166. package/dist/ecommerce/components/checkout/InventoryVerificationDialog.d.ts +19 -0
  167. package/dist/ecommerce/components/checkout/InventoryVerificationDialog.d.ts.map +1 -0
  168. package/dist/ecommerce/components/checkout/OrderReview.d.ts +4 -0
  169. package/dist/ecommerce/components/checkout/OrderReview.d.ts.map +1 -0
  170. package/dist/ecommerce/components/checkout/PaymentStep.d.ts +15 -0
  171. package/dist/ecommerce/components/checkout/PaymentStep.d.ts.map +1 -0
  172. package/dist/ecommerce/components/checkout/ShippingMethodSelector.d.ts +9 -0
  173. package/dist/ecommerce/components/checkout/ShippingMethodSelector.d.ts.map +1 -0
  174. package/dist/ecommerce/components/faq/FAQItem.d.ts +29 -0
  175. package/dist/ecommerce/components/faq/FAQItem.d.ts.map +1 -0
  176. package/dist/ecommerce/components/faq/FAQItem.test.d.ts +7 -0
  177. package/dist/ecommerce/components/faq/FAQItem.test.d.ts.map +1 -0
  178. package/dist/ecommerce/components/faq/FAQList.d.ts +15 -0
  179. package/dist/ecommerce/components/faq/FAQList.d.ts.map +1 -0
  180. package/dist/ecommerce/components/faq/index.d.ts +3 -0
  181. package/dist/ecommerce/components/faq/index.d.ts.map +1 -0
  182. package/dist/ecommerce/components/general/EmptyState.d.ts +8 -0
  183. package/dist/ecommerce/components/general/EmptyState.d.ts.map +1 -0
  184. package/dist/ecommerce/components/general/ErrorBoundary.d.ts +16 -0
  185. package/dist/ecommerce/components/general/ErrorBoundary.d.ts.map +1 -0
  186. package/dist/ecommerce/components/general/ErrorState.d.ts +7 -0
  187. package/dist/ecommerce/components/general/ErrorState.d.ts.map +1 -0
  188. package/dist/ecommerce/components/general/toast.d.ts +19 -0
  189. package/dist/ecommerce/components/general/toast.d.ts.map +1 -0
  190. package/dist/ecommerce/components/orders/OrderCard.d.ts +7 -0
  191. package/dist/ecommerce/components/orders/OrderCard.d.ts.map +1 -0
  192. package/dist/ecommerce/components/orders/OrderDetails.d.ts +7 -0
  193. package/dist/ecommerce/components/orders/OrderDetails.d.ts.map +1 -0
  194. package/dist/ecommerce/components/orders/OrderList.d.ts +7 -0
  195. package/dist/ecommerce/components/orders/OrderList.d.ts.map +1 -0
  196. package/dist/ecommerce/components/ui/accordion.d.ts +7 -0
  197. package/dist/ecommerce/components/ui/accordion.d.ts.map +1 -0
  198. package/dist/ecommerce/components/ui/badge.d.ts +10 -0
  199. package/dist/ecommerce/components/ui/badge.d.ts.map +1 -0
  200. package/dist/ecommerce/components/ui/button.d.ts +12 -0
  201. package/dist/ecommerce/components/ui/button.d.ts.map +1 -0
  202. package/dist/ecommerce/components/ui/card.d.ts +8 -0
  203. package/dist/ecommerce/components/ui/card.d.ts.map +1 -0
  204. package/dist/ecommerce/components/ui/dialog.d.ts +13 -0
  205. package/dist/ecommerce/components/ui/dialog.d.ts.map +1 -0
  206. package/dist/ecommerce/components/ui/input.d.ts +5 -0
  207. package/dist/ecommerce/components/ui/input.d.ts.map +1 -0
  208. package/dist/ecommerce/components/ui/label.d.ts +3 -0
  209. package/dist/ecommerce/components/ui/label.d.ts.map +1 -0
  210. package/dist/ecommerce/components/ui/select.d.ts +9 -0
  211. package/dist/ecommerce/components/ui/select.d.ts.map +1 -0
  212. package/dist/ecommerce/components/ui/separator.d.ts +4 -0
  213. package/dist/ecommerce/components/ui/separator.d.ts.map +1 -0
  214. package/dist/ecommerce/components/ui/sheet.d.ts +21 -0
  215. package/dist/ecommerce/components/ui/sheet.d.ts.map +1 -0
  216. package/dist/ecommerce/components/ui/skeleton.d.ts +3 -0
  217. package/dist/ecommerce/components/ui/skeleton.d.ts.map +1 -0
  218. package/dist/ecommerce/components/ui/tabs.d.ts +7 -0
  219. package/dist/ecommerce/components/ui/tabs.d.ts.map +1 -0
  220. package/dist/ecommerce/components/ui/textarea.d.ts +5 -0
  221. package/dist/ecommerce/components/ui/textarea.d.ts.map +1 -0
  222. package/dist/ecommerce/config/context.d.ts +13 -0
  223. package/dist/ecommerce/config/context.d.ts.map +1 -0
  224. package/dist/ecommerce/config/types.d.ts +48 -0
  225. package/dist/ecommerce/config/types.d.ts.map +1 -0
  226. package/dist/ecommerce/hooks/checkoutReturn.d.ts +3 -0
  227. package/dist/ecommerce/hooks/checkoutReturn.d.ts.map +1 -0
  228. package/dist/ecommerce/hooks/useAIRelatedProducts.d.ts +33 -0
  229. package/dist/ecommerce/hooks/useAIRelatedProducts.d.ts.map +1 -0
  230. package/dist/ecommerce/hooks/useCartInventory.d.ts +42 -0
  231. package/dist/ecommerce/hooks/useCartInventory.d.ts.map +1 -0
  232. package/dist/ecommerce/hooks/useCatalogUrlState.d.ts +15 -0
  233. package/dist/ecommerce/hooks/useCatalogUrlState.d.ts.map +1 -0
  234. package/dist/ecommerce/hooks/useCategories.d.ts +7 -0
  235. package/dist/ecommerce/hooks/useCategories.d.ts.map +1 -0
  236. package/dist/ecommerce/hooks/useCheckoutResultFromUrl.d.ts +4 -0
  237. package/dist/ecommerce/hooks/useCheckoutResultFromUrl.d.ts.map +1 -0
  238. package/dist/ecommerce/hooks/useHoldExpiry.d.ts +34 -0
  239. package/dist/ecommerce/hooks/useHoldExpiry.d.ts.map +1 -0
  240. package/dist/ecommerce/hooks/useInventoryVerification.d.ts +41 -0
  241. package/dist/ecommerce/hooks/useInventoryVerification.d.ts.map +1 -0
  242. package/dist/ecommerce/hooks/useOrders.d.ts +7 -0
  243. package/dist/ecommerce/hooks/useOrders.d.ts.map +1 -0
  244. package/dist/ecommerce/hooks/usePaymentMethodsConfig.d.ts +6 -0
  245. package/dist/ecommerce/hooks/usePaymentMethodsConfig.d.ts.map +1 -0
  246. package/dist/ecommerce/hooks/useProduct.d.ts +7 -0
  247. package/dist/ecommerce/hooks/useProduct.d.ts.map +1 -0
  248. package/dist/ecommerce/hooks/useProducts.d.ts +8 -0
  249. package/dist/ecommerce/hooks/useProducts.d.ts.map +1 -0
  250. package/dist/ecommerce/hooks/useShippingMethods.d.ts +10 -0
  251. package/dist/ecommerce/hooks/useShippingMethods.d.ts.map +1 -0
  252. package/dist/ecommerce/hooks/useStorefrontSettings.d.ts +32 -0
  253. package/dist/ecommerce/hooks/useStorefrontSettings.d.ts.map +1 -0
  254. package/dist/ecommerce/hooks/useSubscriptionData.d.ts +8 -0
  255. package/dist/ecommerce/hooks/useSubscriptionData.d.ts.map +1 -0
  256. package/dist/ecommerce/index.d.ts +98 -0
  257. package/dist/ecommerce/index.d.ts.map +1 -0
  258. package/dist/ecommerce/integrations/cedros-pay/useCedrosPayCheckoutAdapter.d.ts +10 -0
  259. package/dist/ecommerce/integrations/cedros-pay/useCedrosPayCheckoutAdapter.d.ts.map +1 -0
  260. package/dist/ecommerce/state/cart/CartProvider.d.ts +27 -0
  261. package/dist/ecommerce/state/cart/CartProvider.d.ts.map +1 -0
  262. package/dist/ecommerce/state/cart/cartReducer.d.ts +35 -0
  263. package/dist/ecommerce/state/cart/cartReducer.d.ts.map +1 -0
  264. package/dist/ecommerce/state/checkout/checkoutSchema.d.ts +21 -0
  265. package/dist/ecommerce/state/checkout/checkoutSchema.d.ts.map +1 -0
  266. package/dist/ecommerce/state/checkout/useCheckout.d.ts +34 -0
  267. package/dist/ecommerce/state/checkout/useCheckout.d.ts.map +1 -0
  268. package/dist/ecommerce/templates/CartTemplate.d.ts +5 -0
  269. package/dist/ecommerce/templates/CartTemplate.d.ts.map +1 -0
  270. package/dist/ecommerce/templates/CategoryTemplate.d.ts +11 -0
  271. package/dist/ecommerce/templates/CategoryTemplate.d.ts.map +1 -0
  272. package/dist/ecommerce/templates/CheckoutTemplate.d.ts +9 -0
  273. package/dist/ecommerce/templates/CheckoutTemplate.d.ts.map +1 -0
  274. package/dist/ecommerce/templates/ProductTemplate.d.ts +11 -0
  275. package/dist/ecommerce/templates/ProductTemplate.d.ts.map +1 -0
  276. package/dist/ecommerce/templates/PurchaseHistoryTemplate.d.ts +6 -0
  277. package/dist/ecommerce/templates/PurchaseHistoryTemplate.d.ts.map +1 -0
  278. package/dist/ecommerce/templates/ReceiptTemplate.d.ts +19 -0
  279. package/dist/ecommerce/templates/ReceiptTemplate.d.ts.map +1 -0
  280. package/dist/ecommerce/templates/ShopTemplate.d.ts +15 -0
  281. package/dist/ecommerce/templates/ShopTemplate.d.ts.map +1 -0
  282. package/dist/ecommerce/templates/SubscriptionTemplate.d.ts +15 -0
  283. package/dist/ecommerce/templates/SubscriptionTemplate.d.ts.map +1 -0
  284. package/dist/ecommerce/testing/adapterContract.d.ts +11 -0
  285. package/dist/ecommerce/testing/adapterContract.d.ts.map +1 -0
  286. package/dist/ecommerce/types.d.ts +164 -0
  287. package/dist/ecommerce/types.d.ts.map +1 -0
  288. package/dist/ecommerce/utils/cartCheckoutRequirements.d.ts +18 -0
  289. package/dist/ecommerce/utils/cartCheckoutRequirements.d.ts.map +1 -0
  290. package/dist/ecommerce/utils/cartItemMetadata.d.ts +3 -0
  291. package/dist/ecommerce/utils/cartItemMetadata.d.ts.map +1 -0
  292. package/dist/ecommerce/utils/cn.d.ts +3 -0
  293. package/dist/ecommerce/utils/cn.d.ts.map +1 -0
  294. package/dist/ecommerce/utils/money.d.ts +6 -0
  295. package/dist/ecommerce/utils/money.d.ts.map +1 -0
  296. package/dist/ecommerce/utils/storage.d.ts +5 -0
  297. package/dist/ecommerce/utils/storage.d.ts.map +1 -0
  298. package/dist/en-BXheDBal.mjs +19 -0
  299. package/dist/en-Yikrt96u.js +1 -0
  300. package/dist/hooks/useCreditsPayment.d.ts +64 -0
  301. package/dist/hooks/useCreditsPayment.d.ts.map +1 -0
  302. package/dist/hooks/useCreditsSubscription.d.ts +42 -0
  303. package/dist/hooks/useCreditsSubscription.d.ts.map +1 -0
  304. package/dist/hooks/useCryptoSubscription.d.ts +42 -0
  305. package/dist/hooks/useCryptoSubscription.d.ts.map +1 -0
  306. package/dist/hooks/usePaymentMode.d.ts.map +1 -1
  307. package/dist/hooks/useStripeCheckout.d.ts +1 -0
  308. package/dist/hooks/useStripeCheckout.d.ts.map +1 -1
  309. package/dist/hooks/useSubscription.d.ts +42 -0
  310. package/dist/hooks/useSubscription.d.ts.map +1 -0
  311. package/dist/hooks/useSubscriptionManagement.d.ts +92 -0
  312. package/dist/hooks/useSubscriptionManagement.d.ts.map +1 -0
  313. package/dist/hooks/useX402Payment.d.ts +1 -0
  314. package/dist/hooks/useX402Payment.d.ts.map +1 -1
  315. package/dist/i18n/index.d.ts +7 -0
  316. package/dist/i18n/index.d.ts.map +1 -1
  317. package/dist/index-D2d_ukkR.mjs +26838 -0
  318. package/dist/index-DGkSHjb1.js +136 -0
  319. package/dist/index.d.ts +20 -2
  320. package/dist/index.d.ts.map +1 -1
  321. package/dist/index.js +1 -1
  322. package/dist/index.mjs +79 -625
  323. package/dist/magic-string.es-B81Zo59j.js +10 -0
  324. package/dist/magic-string.es-uPKorP4O.mjs +663 -0
  325. package/dist/managers/CreditsManager.d.ts +151 -0
  326. package/dist/managers/CreditsManager.d.ts.map +1 -0
  327. package/dist/managers/ManagerCache.d.ts +6 -0
  328. package/dist/managers/ManagerCache.d.ts.map +1 -1
  329. package/dist/managers/RouteDiscoveryManager.d.ts.map +1 -1
  330. package/dist/managers/StripeManager.d.ts.map +1 -1
  331. package/dist/managers/SubscriptionChangeManager.d.ts +42 -0
  332. package/dist/managers/SubscriptionChangeManager.d.ts.map +1 -0
  333. package/dist/managers/SubscriptionManager.d.ts +113 -0
  334. package/dist/managers/SubscriptionManager.d.ts.map +1 -0
  335. package/dist/managers/X402Manager.d.ts.map +1 -1
  336. package/dist/pay-react.css +1 -1
  337. package/dist/sections-6IcZ6JeN.js +1 -0
  338. package/dist/sections-a0Dz-MMz.mjs +10 -0
  339. package/dist/stripe-only.d.ts +1 -1
  340. package/dist/stripe-only.d.ts.map +1 -1
  341. package/dist/stripe-only.js +1 -1
  342. package/dist/stripe-only.mjs +12 -13
  343. package/dist/styles-C4-_hbgr.js +1 -0
  344. package/dist/styles-QcAsIVWl.mjs +1909 -0
  345. package/dist/telemetry.js +1 -1
  346. package/dist/telemetry.mjs +1 -1
  347. package/dist/testing/index.js +147 -1
  348. package/dist/testing/index.mjs +10555 -103
  349. package/dist/types/componentOptions.d.ts +14 -4
  350. package/dist/types/componentOptions.d.ts.map +1 -1
  351. package/dist/types/errors.d.ts +26 -4
  352. package/dist/types/errors.d.ts.map +1 -1
  353. package/dist/types/index.d.ts +116 -0
  354. package/dist/types/index.d.ts.map +1 -1
  355. package/dist/types/subscription.d.ts +300 -0
  356. package/dist/types/subscription.d.ts.map +1 -0
  357. package/dist/utils/cartHelpers.d.ts +3 -0
  358. package/dist/utils/cartHelpers.d.ts.map +1 -1
  359. package/dist/utils/cspHelper.d.ts +7 -1
  360. package/dist/utils/cspHelper.d.ts.map +1 -1
  361. package/dist/utils/csvHelpers.d.ts +62 -0
  362. package/dist/utils/csvHelpers.d.ts.map +1 -0
  363. package/dist/utils/csvHelpers.test.d.ts +2 -0
  364. package/dist/utils/csvHelpers.test.d.ts.map +1 -0
  365. package/dist/utils/dateHelpers.d.ts +24 -0
  366. package/dist/utils/dateHelpers.d.ts.map +1 -0
  367. package/dist/utils/eventEmitter.d.ts +1 -1
  368. package/dist/utils/eventEmitter.d.ts.map +1 -1
  369. package/dist/utils/fetchWithTimeout.d.ts +3 -3
  370. package/dist/utils/index.d.ts +2 -1
  371. package/dist/utils/index.d.ts.map +1 -1
  372. package/dist/utils/tokenMintValidator.d.ts +10 -6
  373. package/dist/utils/tokenMintValidator.d.ts.map +1 -1
  374. package/dist/utils/uuid.d.ts.map +1 -1
  375. package/dist/uuid-C5B8o31X.js +1 -0
  376. package/dist/uuid-_z3jSatJ.mjs +17 -0
  377. package/package.json +25 -9
  378. package/dist/CedrosContext-B3iCqN6e.js +0 -11
  379. package/dist/CedrosContext-vX9uqZKp.mjs +0 -1796
  380. package/dist/en-CSsJl3nf.mjs +0 -19
  381. package/dist/en-D-uY3ltT.js +0 -1
  382. package/dist/styles-61pRysGe.js +0 -1
  383. package/dist/styles-DI2LPVdQ.mjs +0 -1625
  384. package/dist/utils/uuid-shim.d.ts +0 -9
  385. package/dist/utils/uuid-shim.d.ts.map +0 -1
  386. package/dist/uuid-C0iMjdcc.js +0 -1
  387. package/dist/uuid-UlzrVY8Y.mjs +0 -17
  388. package/dist/walletDetection-JZR3UCOa.mjs +0 -27
  389. package/dist/walletDetection-bNmV5ItZ.js +0 -1
@@ -0,0 +1,104 @@
1
+ import { IAdminAuthManager } from './AdminAuthManager';
2
+ /**
3
+ * Admin Config API Client
4
+ *
5
+ * Client for interacting with the server's /admin/config/* endpoints.
6
+ * Uses Ed25519 authentication headers.
7
+ */
8
+ /** Config category summary */
9
+ export interface ConfigCategory {
10
+ category: string;
11
+ keyCount: number;
12
+ lastUpdated: string;
13
+ hasSecrets: boolean;
14
+ }
15
+ /** List categories response */
16
+ export interface ListCategoriesResponse {
17
+ categories: ConfigCategory[];
18
+ count: number;
19
+ }
20
+ /** Get config response */
21
+ export interface GetConfigResponse {
22
+ category: string;
23
+ config: Record<string, unknown>;
24
+ updatedAt: string;
25
+ secretsRedacted: boolean;
26
+ }
27
+ /** Config history entry */
28
+ export interface ConfigHistoryEntry {
29
+ id: string;
30
+ configKey: string;
31
+ action: 'CREATE' | 'UPDATE' | 'DELETE';
32
+ changedAt: string;
33
+ changedBy: string;
34
+ }
35
+ /** History response */
36
+ export interface ConfigHistoryResponse {
37
+ history: ConfigHistoryEntry[];
38
+ count: number;
39
+ }
40
+ /** Validation response */
41
+ export interface ValidateConfigResponse {
42
+ valid: boolean;
43
+ errors: string[];
44
+ warnings: string[];
45
+ }
46
+ /** Auth credentials for Ed25519 signing (legacy) */
47
+ export interface AdminAuth {
48
+ signerPublicKey: string;
49
+ sign: (message: string) => Promise<string>;
50
+ }
51
+ /** Admin Config API client */
52
+ export declare class ConfigApiClient {
53
+ private serverUrl;
54
+ private auth?;
55
+ private authManager?;
56
+ constructor(serverUrl: string, auth?: AdminAuth | undefined, authManager?: IAdminAuthManager | undefined);
57
+ private fetch;
58
+ /** List all config categories */
59
+ listCategories(limit?: number): Promise<ListCategoriesResponse>;
60
+ /** Get config for a category */
61
+ getConfig(category: string, redactSecrets?: boolean): Promise<GetConfigResponse>;
62
+ /** Full update - replace entire category config */
63
+ updateConfig(category: string, config: Record<string, unknown>, description?: string): Promise<void>;
64
+ /** Partial update - update specific keys */
65
+ patchConfig(category: string, updates: Record<string, unknown>, description?: string): Promise<void>;
66
+ /** Batch update multiple categories */
67
+ batchUpdate(updates: Array<{
68
+ category: string;
69
+ configKey: string;
70
+ value: unknown;
71
+ description?: string;
72
+ }>): Promise<void>;
73
+ /** Validate config before saving */
74
+ validateConfig(category: string, config: Record<string, unknown>): Promise<ValidateConfigResponse>;
75
+ /** Get config change history */
76
+ getHistory(category?: string, limit?: number): Promise<ConfigHistoryResponse>;
77
+ }
78
+ /** Field metadata for special input types */
79
+ export interface FieldMeta {
80
+ type?: 'dropdown' | 'number' | 'boolean' | 'token_mint' | 'toggle' | 'secret_array' | 'solana_address';
81
+ options?: string[];
82
+ unit?: string;
83
+ /** Description text shown below the field label */
84
+ description?: string;
85
+ /** Hide this field from the UI */
86
+ hidden?: boolean;
87
+ /** Only show this field when another field has a truthy value */
88
+ showWhen?: string;
89
+ }
90
+ /** Category metadata */
91
+ export interface CategoryMeta {
92
+ label: string;
93
+ description?: string;
94
+ secrets: string[];
95
+ icon: string;
96
+ fields?: Record<string, FieldMeta>;
97
+ }
98
+ /** Known config categories and their metadata */
99
+ export declare const CONFIG_CATEGORIES: Record<string, CategoryMeta>;
100
+ /** Check if a field is a secret for a given category */
101
+ export declare function isSecretField(category: string, field: string): boolean;
102
+ /** Placeholder for redacted secrets */
103
+ export declare const REDACTED_VALUE = "[REDACTED]";
104
+ //# sourceMappingURL=configApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configApi.d.ts","sourceRoot":"","sources":["../../../src/components/admin/configApi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Admin Dashboard Icons
3
+ *
4
+ * SVG icons (Lucide-style, 16x16) for the admin dashboard.
5
+ */
6
+ export declare const Icons: {
7
+ overview: import("react/jsx-runtime").JSX.Element;
8
+ products: import("react/jsx-runtime").JSX.Element;
9
+ transactions: import("react/jsx-runtime").JSX.Element;
10
+ coupons: import("react/jsx-runtime").JSX.Element;
11
+ refunds: import("react/jsx-runtime").JSX.Element;
12
+ settings: import("react/jsx-runtime").JSX.Element;
13
+ wallet: import("react/jsx-runtime").JSX.Element;
14
+ chevronRight: import("react/jsx-runtime").JSX.Element;
15
+ loading: import("react/jsx-runtime").JSX.Element;
16
+ refresh: import("react/jsx-runtime").JSX.Element;
17
+ user: import("react/jsx-runtime").JSX.Element;
18
+ walletConnected: import("react/jsx-runtime").JSX.Element;
19
+ check: import("react/jsx-runtime").JSX.Element;
20
+ subscriptions: import("react/jsx-runtime").JSX.Element;
21
+ trash: import("react/jsx-runtime").JSX.Element;
22
+ plus: import("react/jsx-runtime").JSX.Element;
23
+ chevronDown: import("react/jsx-runtime").JSX.Element;
24
+ chevronUp: import("react/jsx-runtime").JSX.Element;
25
+ storefront: import("react/jsx-runtime").JSX.Element;
26
+ arrowUp: import("react/jsx-runtime").JSX.Element;
27
+ arrowDown: import("react/jsx-runtime").JSX.Element;
28
+ delete: import("react/jsx-runtime").JSX.Element;
29
+ close: import("react/jsx-runtime").JSX.Element;
30
+ edit: import("react/jsx-runtime").JSX.Element;
31
+ faq: import("react/jsx-runtime").JSX.Element;
32
+ chat: import("react/jsx-runtime").JSX.Element;
33
+ globe: import("react/jsx-runtime").JSX.Element;
34
+ ai: import("react/jsx-runtime").JSX.Element;
35
+ notifications: import("react/jsx-runtime").JSX.Element;
36
+ key: import("react/jsx-runtime").JSX.Element;
37
+ eye: import("react/jsx-runtime").JSX.Element;
38
+ eyeOff: import("react/jsx-runtime").JSX.Element;
39
+ stripe: import("react/jsx-runtime").JSX.Element;
40
+ crypto: import("react/jsx-runtime").JSX.Element;
41
+ logging: import("react/jsx-runtime").JSX.Element;
42
+ paywall: import("react/jsx-runtime").JSX.Element;
43
+ credits: import("react/jsx-runtime").JSX.Element;
44
+ creditCard: import("react/jsx-runtime").JSX.Element;
45
+ mail: import("react/jsx-runtime").JSX.Element;
46
+ server: import("react/jsx-runtime").JSX.Element;
47
+ calendarRepeat: import("react/jsx-runtime").JSX.Element;
48
+ brain: import("react/jsx-runtime").JSX.Element;
49
+ };
50
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/components/admin/icons.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyRjB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Admin Dashboard Components
3
+ *
4
+ * Complete admin panel for managing Cedros Pay payments, products, and refunds.
5
+ */
6
+ export { CedrosPayAdminDashboard, type CedrosPayAdminDashboardProps, type DashboardSection, } from './CedrosPayAdminDashboard';
7
+ export { ConfigEditor, type ConfigEditorProps } from './ConfigEditor';
8
+ export { SettingsSection, type SettingsSectionProps } from './SettingsSection';
9
+ export { SubscriptionsSection } from './SubscriptionsSection';
10
+ export { StorefrontSection } from './StorefrontSection';
11
+ export { FAQSection } from './FAQSection';
12
+ export type { SubscriptionPlan, SubscriptionSettings, ProductPageSettings, RelatedProductsMode } from './types';
13
+ export { ConfigApiClient, CONFIG_CATEGORIES, REDACTED_VALUE, isSecretField, type ConfigCategory, type CategoryMeta, type FieldMeta, type GetConfigResponse, type ValidateConfigResponse, type ConfigHistoryEntry, type AdminAuth, } from './configApi';
14
+ export { AdminAuthManager, ADMIN_NONCE_PURPOSES, type IAdminAuthManager, type AdminAuthMethod, type AdminCredentials, type WalletSigner, type AdminAuthHeaders, type JwtAuthHeaders, } from './AdminAuthManager';
15
+ export { useAdminAuth, type UseAdminAuthOptions, type UseAdminAuthResult, } from './useAdminAuth';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/admin/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,GACtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAChH,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,SAAS,GACf,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,GACxB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Admin Dashboard Section Components (Part 2)
3
+ *
4
+ * Coupons, Refunds sections + re-export Settings.
5
+ *
6
+ * @deprecated Import directly from './CouponsSection' or './RefundsSection' instead.
7
+ * This file is kept for backwards compatibility.
8
+ */
9
+ export { CouponsSection } from './CouponsSection';
10
+ export { RefundsSection } from './RefundsSection';
11
+ export { SettingsSection } from './SettingsSection';
12
+ //# sourceMappingURL=sections-more.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sections-more.d.ts","sourceRoot":"","sources":["../../../src/components/admin/sections-more.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Admin Dashboard Section Components
3
+ *
4
+ * Individual section components for the admin dashboard.
5
+ * This file now re-exports from split modules for backwards compatibility.
6
+ */
7
+ export type { SectionProps } from './types';
8
+ export { OverviewSection } from './OverviewSection';
9
+ export { ProductsSection } from './ProductsSection';
10
+ export { TransactionsSection } from './TransactionsSection';
11
+ export { CouponsSection, RefundsSection, SettingsSection } from './sections-more';
12
+ //# sourceMappingURL=sections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sections.d.ts","sourceRoot":"","sources":["../../../src/components/admin/sections.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,324 @@
1
+ import { IAdminAuthManager } from './AdminAuthManager';
2
+ /** Props for section components */
3
+ export interface SectionProps {
4
+ serverUrl: string;
5
+ /** @deprecated Use authManager instead */
6
+ apiKey?: string;
7
+ refreshInterval?: number;
8
+ pageSize?: number;
9
+ /** Admin auth manager for authenticated requests */
10
+ authManager?: IAdminAuthManager;
11
+ }
12
+ /** Stats response from backend */
13
+ export interface PaymentStats {
14
+ totalRevenue: number;
15
+ totalTransactions: number;
16
+ activeProducts: number;
17
+ pendingRefunds: number;
18
+ revenueByMethod: {
19
+ stripe: number;
20
+ x402: number;
21
+ credits: number;
22
+ };
23
+ transactionsByMethod: {
24
+ stripe: number;
25
+ x402: number;
26
+ credits: number;
27
+ };
28
+ }
29
+ /** Product resource from backend */
30
+ export interface Product {
31
+ id: string;
32
+ title?: string;
33
+ slug?: string;
34
+ imageUrl?: string;
35
+ description: string;
36
+ fiatAmountCents: number;
37
+ fiatCurrency: string;
38
+ stripePriceId?: string;
39
+ cryptoAtomicAmount: number;
40
+ cryptoToken: string;
41
+ inventoryQuantity?: number | null;
42
+ metadata?: Record<string, string>;
43
+ active?: boolean;
44
+ /** Product variations (SKUs) - each variation is a separate SKU */
45
+ variations?: Array<{
46
+ id: string;
47
+ sku?: string;
48
+ }>;
49
+ }
50
+ /** Transaction from backend */
51
+ export interface Transaction {
52
+ id: string;
53
+ resourceId: string;
54
+ method: 'stripe' | 'x402' | 'credits';
55
+ amount: number;
56
+ currency: string;
57
+ status: 'pending' | 'completed' | 'failed' | 'refunded';
58
+ paidAt: string;
59
+ metadata?: Record<string, string>;
60
+ }
61
+ /** Coupon scope - which products the coupon applies to */
62
+ export type CouponScope = 'all_products' | 'specific_products' | 'specific_categories';
63
+ /** Payment method restriction for coupons */
64
+ export type CouponPaymentMethod = 'any' | 'stripe' | 'x402' | 'credits';
65
+ /** When the coupon discount is applied */
66
+ export type CouponAppliesAt = 'cart' | 'checkout' | 'both';
67
+ /** Coupon from backend */
68
+ export interface Coupon {
69
+ code: string;
70
+ discountType: 'percentage' | 'fixed';
71
+ discountValue: number;
72
+ currency?: string;
73
+ active: boolean;
74
+ usageLimit?: number;
75
+ usageCount: number;
76
+ expiresAt?: string;
77
+ /** Which products the coupon applies to (default: all_products) */
78
+ scope?: CouponScope;
79
+ /** Product IDs when scope is 'specific_products' */
80
+ productIds?: string[];
81
+ /** Category IDs when scope is 'specific_categories' */
82
+ categoryIds?: string[];
83
+ /** Restrict to specific payment method (default: any) */
84
+ paymentMethod?: CouponPaymentMethod;
85
+ /** Automatically apply coupon when conditions are met */
86
+ autoApply?: boolean;
87
+ /** When the discount is applied (default: both) */
88
+ appliesAt?: CouponAppliesAt;
89
+ /** Start date for the coupon (ISO datetime) */
90
+ startsAt?: string;
91
+ minimumAmountCents?: number;
92
+ usageLimitPerCustomer?: number;
93
+ firstPurchaseOnly?: boolean;
94
+ }
95
+ /** x402 Refund from backend */
96
+ export interface Refund {
97
+ id: string;
98
+ transactionId: string;
99
+ amount: number;
100
+ currency: string;
101
+ status: 'pending' | 'processing' | 'completed' | 'failed';
102
+ reason?: string;
103
+ createdAt: string;
104
+ }
105
+ /** Stripe Refund from backend */
106
+ export interface StripeRefund {
107
+ id: string;
108
+ /** Stripe refund id, null/undefined until processed */
109
+ stripeRefundId?: string | null;
110
+ /** Stripe charge id (nullable per Stripe refund object) */
111
+ chargeId?: string | null;
112
+ paymentIntentId?: string | null;
113
+ amount: number;
114
+ currency: string;
115
+ status: 'pending' | 'requires_action' | 'succeeded' | 'failed' | 'canceled';
116
+ reason?: 'duplicate' | 'fraudulent' | 'requested_by_customer' | string;
117
+ createdAt: string;
118
+ metadata?: Record<string, string>;
119
+ }
120
+ /** Credits Refund Request from cedros-login backend */
121
+ export interface CreditsRefundRequest {
122
+ id: string;
123
+ /** Original credit transaction id */
124
+ originalTransactionId: string;
125
+ userId?: string;
126
+ /** Smallest unit (lamports for SOL, micros for USD) */
127
+ amountLamports: number;
128
+ currency?: string;
129
+ status: 'pending' | 'processed' | 'rejected' | string;
130
+ reason?: string;
131
+ createdAt: string;
132
+ processedAt?: string | null;
133
+ rejectedAt?: string | null;
134
+ rejectedReason?: string | null;
135
+ }
136
+ /** Subscription plan configuration */
137
+ export interface SubscriptionPlan {
138
+ id: string;
139
+ title: string;
140
+ description: string;
141
+ /** Monthly price in USD (e.g., 10 for $10/month) */
142
+ priceMonthlyUsd: number;
143
+ /** Annual price in USD (e.g., 100 for $100/year) */
144
+ priceAnnualUsd: number;
145
+ /** Feature bullet points */
146
+ features: string[];
147
+ /** Bold highlight text shown above feature list (first feature) */
148
+ featureHighlight?: string;
149
+ /** Custom button text (default: "Purchase") */
150
+ buttonText?: string;
151
+ /** Mark as featured/popular plan */
152
+ isPopular?: boolean;
153
+ /** Plan is available for purchase */
154
+ isActive: boolean;
155
+ /** Sort order (lower = first) */
156
+ sortOrder?: number;
157
+ /** Stripe price ID for monthly billing (auto-populated by backend) */
158
+ stripePriceIdMonthly?: string;
159
+ /** Stripe price ID for annual billing (auto-populated by backend) */
160
+ stripePriceIdAnnual?: string;
161
+ /** Stripe product ID (auto-populated by backend) */
162
+ stripeProductId?: string;
163
+ /** Inventory quantity - null/undefined means unlimited */
164
+ inventoryQuantity?: number | null;
165
+ /** Number of subscriptions sold (read-only, populated by backend) */
166
+ inventorySold?: number;
167
+ /** Number of active subscribers on this plan (read-only, populated by backend) */
168
+ activeSubscribers?: number;
169
+ }
170
+ /** Subscription settings for the page */
171
+ export interface SubscriptionSettings {
172
+ /** Subscriptions feature is enabled */
173
+ enabled: boolean;
174
+ /** All subscription plans */
175
+ plans: SubscriptionPlan[];
176
+ /** Page title (default: "Choose Your Plan") */
177
+ pageTitle?: string;
178
+ /** Page subtitle */
179
+ pageSubtitle?: string;
180
+ /** Annual savings badge text (default: "2 months free") */
181
+ annualSavingsBadge?: string;
182
+ /** Popular plan badge text (default: "Best Deal") */
183
+ popularBadgeText?: string;
184
+ /** Footer notice text */
185
+ footerNotice?: string;
186
+ }
187
+ /** Related products display mode */
188
+ export type RelatedProductsMode = 'most_recent' | 'by_category' | 'manual' | 'ai';
189
+ /** Catalog filter visibility settings */
190
+ export interface CatalogFilterSettings {
191
+ /** Show tags filter */
192
+ tags: boolean;
193
+ /** Show price range filter */
194
+ priceRange: boolean;
195
+ /** Show in-stock filter */
196
+ inStock: boolean;
197
+ }
198
+ /** Catalog sort option visibility settings */
199
+ export interface CatalogSortSettings {
200
+ /** Show "Featured" sort option */
201
+ featured: boolean;
202
+ /** Show "Price: Low to High" sort option */
203
+ priceAsc: boolean;
204
+ /** Show "Price: High to Low" sort option */
205
+ priceDesc: boolean;
206
+ }
207
+ /** Checkout settings */
208
+ export interface CheckoutDisplaySettings {
209
+ /** Show promo/coupon code input on cart and checkout pages */
210
+ promoCodes: boolean;
211
+ }
212
+ /** Product card layout style */
213
+ export type ProductCardLayout = 'large' | 'square' | 'compact';
214
+ /** Image crop position for product cards */
215
+ export type ImageCropPosition = 'center' | 'top' | 'bottom' | 'left' | 'right';
216
+ /** Layout settings for a page */
217
+ export interface LayoutSettings {
218
+ /** Card layout style */
219
+ layout: ProductCardLayout;
220
+ /** Image crop/focus position */
221
+ imageCrop: ImageCropPosition;
222
+ }
223
+ /** Product detail page section visibility settings */
224
+ export interface ProductPageSectionSettings {
225
+ /** Show description accordion */
226
+ showDescription: boolean;
227
+ /** Show specs/attributes accordion */
228
+ showSpecs: boolean;
229
+ /** Show shipping & returns accordion */
230
+ showShipping: boolean;
231
+ /** Show related products section */
232
+ showRelatedProducts: boolean;
233
+ }
234
+ /** Product page and catalog settings */
235
+ export interface ProductPageSettings {
236
+ relatedProducts: {
237
+ /** How to select related products */
238
+ mode: RelatedProductsMode;
239
+ /** Maximum number of related products to show (default: 4) */
240
+ maxItems: number;
241
+ /** Layout settings for related products grid */
242
+ layout: LayoutSettings;
243
+ };
244
+ catalog: {
245
+ /** Which filters to show in shop/category sidebars */
246
+ filters: CatalogFilterSettings;
247
+ /** Which sort options to show */
248
+ sort: CatalogSortSettings;
249
+ };
250
+ checkout: CheckoutDisplaySettings;
251
+ /** Layout settings for the shop page */
252
+ shopLayout: LayoutSettings;
253
+ /** Layout settings for category pages */
254
+ categoryLayout: LayoutSettings;
255
+ /** Product detail page section visibility */
256
+ sections: ProductPageSectionSettings;
257
+ }
258
+ /** AI provider types */
259
+ export type AIProvider = 'gemini' | 'openai';
260
+ /** Available AI models */
261
+ export type AIModel = 'not_set' | 'gemini-2.5-flash' | 'gemini-2.5-pro' | 'openai-4o' | 'openai-5.1' | 'openai-5.2';
262
+ /** AI model display info */
263
+ export interface AIModelInfo {
264
+ id: AIModel;
265
+ label: string;
266
+ provider: AIProvider | null;
267
+ }
268
+ /** AI task types that can be assigned models */
269
+ export type AITask = 'related_product_finder' | 'product_detail_assistant' | 'site_chat' | 'product_searcher';
270
+ /** AI task configuration */
271
+ export interface AITaskConfig {
272
+ task: AITask;
273
+ label: string;
274
+ description: string;
275
+ assignedModel: AIModel;
276
+ /** System/default prompt for this task */
277
+ systemPrompt?: string;
278
+ }
279
+ /** API key configuration (stored securely, only shows masked version) */
280
+ export interface APIKeyConfig {
281
+ provider: AIProvider;
282
+ /** Whether a key is configured (don't expose actual key) */
283
+ isConfigured: boolean;
284
+ /** Masked version for display (e.g., "sk-...abc123") */
285
+ maskedKey?: string;
286
+ /** Last updated timestamp */
287
+ updatedAt?: string;
288
+ }
289
+ /** AI settings for the admin dashboard */
290
+ export interface AISettings {
291
+ apiKeys: APIKeyConfig[];
292
+ taskAssignments: AITaskConfig[];
293
+ }
294
+ /** Inventory management settings */
295
+ export interface InventorySettings {
296
+ /** Enable pre-checkout inventory verification */
297
+ preCheckoutVerification: boolean;
298
+ /** Enable inventory holds when items are added to cart */
299
+ holdsEnabled: boolean;
300
+ /** Hold duration in minutes (5-60) */
301
+ holdDurationMinutes: number;
302
+ }
303
+ /** Shop page content settings */
304
+ export interface ShopPageSettings {
305
+ /** Shop page title (default: "Shop") */
306
+ title: string;
307
+ /** Shop page description/subtitle */
308
+ description: string;
309
+ }
310
+ /** FAQ item for knowledge base */
311
+ export interface FAQ {
312
+ id: string;
313
+ question: string;
314
+ answer: string;
315
+ keywords: string[];
316
+ active: boolean;
317
+ /** Whether AI chat assistant should use this FAQ (default: true) */
318
+ useInChat: boolean;
319
+ /** Whether to display on public FAQ page (default: true) */
320
+ displayOnPage: boolean;
321
+ createdAt?: string;
322
+ updatedAt?: string;
323
+ }
324
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/admin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,mCAAmC;AACnC,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;AAED,kCAAkC;AAClC,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,oBAAoB,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,oCAAoC;AACpC,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD;AAED,+BAA+B;AAC/B,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,0DAA0D;AAC1D,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAEvF,6CAA6C;AAC7C,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAExE,0CAA0C;AAC1C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAE3D,0BAA0B;AAC1B,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mEAAmE;IACnE,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB,yDAAyD;IACzD,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mDAAmD;IACnD,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,+BAA+B;AAC/B,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,uDAAuD;IACvD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,iBAAiB,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC5E,MAAM,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,uBAAuB,GAAG,MAAM,CAAC;IACvE,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,uDAAuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,qCAAqC;IACrC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,sCAAsC;AACtC,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,eAAe,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qCAAqC;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oDAAoD;IACpD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,qEAAqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,6BAA6B;IAC7B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,oCAAoC;AACpC,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG,aAAa,GAAG,QAAQ,GAAG,IAAI,CAAC;AAElF,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACpC,uBAAuB;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAwB;AACxB,MAAM,WAAW,uBAAuB;IACtC,8DAA8D;IAC9D,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gCAAgC;AAChC,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/D,4CAA4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/E,iCAAiC;AACjC,MAAM,WAAW,cAAc;IAC7B,wBAAwB;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,gCAAgC;IAChC,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AAED,sDAAsD;AACtD,MAAM,WAAW,0BAA0B;IACzC,iCAAiC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,sCAAsC;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,YAAY,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE;QACf,qCAAqC;QACrC,IAAI,EAAE,mBAAmB,CAAC;QAC1B,8DAA8D;QAC9D,QAAQ,EAAE,MAAM,CAAC;QACjB,gDAAgD;QAChD,MAAM,EAAE,cAAc,CAAC;KACxB,CAAC;IACF,OAAO,EAAE;QACP,sDAAsD;QACtD,OAAO,EAAE,qBAAqB,CAAC;QAC/B,iCAAiC;QACjC,IAAI,EAAE,mBAAmB,CAAC;KAC3B,CAAC;IACF,QAAQ,EAAE,uBAAuB,CAAC;IAClC,wCAAwC;IACxC,UAAU,EAAE,cAAc,CAAC;IAC3B,yCAAyC;IACzC,cAAc,EAAE,cAAc,CAAC;IAC/B,6CAA6C;IAC7C,QAAQ,EAAE,0BAA0B,CAAC;CACtC;AAED,wBAAwB;AACxB,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C,0BAA0B;AAC1B,MAAM,MAAM,OAAO,GACf,SAAS,GACT,kBAAkB,GAClB,gBAAgB,GAChB,WAAW,GACX,YAAY,GACZ,YAAY,CAAC;AAEjB,4BAA4B;AAC5B,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAC;CAC7B;AAED,gDAAgD;AAChD,MAAM,MAAM,MAAM,GAAG,wBAAwB,GAAG,0BAA0B,GAAG,WAAW,GAAG,kBAAkB,CAAC;AAE9G,4BAA4B;AAC5B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,yEAAyE;AACzE,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,UAAU,CAAC;IACrB,4DAA4D;IAC5D,YAAY,EAAE,OAAO,CAAC;IACtB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,0CAA0C;AAC1C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,eAAe,EAAE,YAAY,EAAE,CAAC;CACjC;AAED,oCAAoC;AACpC,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,uBAAuB,EAAE,OAAO,CAAC;IACjC,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,sCAAsC;IACtC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,iCAAiC;AACjC,MAAM,WAAW,gBAAgB;IAC/B,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,kCAAkC;AAClC,MAAM,WAAW,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,50 @@
1
+ import { AdminAuthMethod, IAdminAuthManager } from './AdminAuthManager';
2
+ export interface UseAdminAuthOptions {
3
+ /** Backend server URL */
4
+ serverUrl: string;
5
+ /** JWT token from cedros-login */
6
+ cedrosLoginToken?: string;
7
+ /** Whether the cedros-login user is an admin */
8
+ isAdmin?: boolean;
9
+ }
10
+ export interface UseAdminAuthResult {
11
+ /** Current auth method being used */
12
+ authMethod: AdminAuthMethod;
13
+ /** Whether user is authenticated for admin access */
14
+ isAuthenticated: boolean;
15
+ /** Whether wallet is connected */
16
+ walletConnected: boolean;
17
+ /** Connected wallet address (truncated for display) */
18
+ walletAddress: string | null;
19
+ /** Whether cedros-login is available and user is admin */
20
+ cedrosLoginAvailable: boolean;
21
+ /** Admin auth manager instance */
22
+ authManager: IAdminAuthManager;
23
+ /** Fetch with admin auth */
24
+ fetchWithAuth: <T>(path: string, options?: RequestInit) => Promise<T>;
25
+ }
26
+ /**
27
+ * Hook for admin authentication
28
+ *
29
+ * Automatically uses wallet signing if available, falls back to cedros-login JWT.
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * function AdminDashboard({ serverUrl }) {
34
+ * const { isAuthenticated, authMethod, fetchWithAuth } = useAdminAuth({
35
+ * serverUrl,
36
+ * cedrosLoginToken: userToken,
37
+ * isAdmin: user?.isAdmin,
38
+ * });
39
+ *
40
+ * if (!isAuthenticated) {
41
+ * return <div>Please connect wallet or sign in as admin</div>;
42
+ * }
43
+ *
44
+ * const stats = await fetchWithAuth('/admin/stats');
45
+ * }
46
+ * ```
47
+ */
48
+ export declare function useAdminAuth({ serverUrl, cedrosLoginToken, isAdmin, }: UseAdminAuthOptions): UseAdminAuthResult;
49
+ export default useAdminAuth;
50
+ //# sourceMappingURL=useAdminAuth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAdminAuth.d.ts","sourceRoot":"","sources":["../../../src/components/admin/useAdminAuth.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAoB,KAAK,eAAe,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEpG,MAAM,WAAW,mBAAmB;IAClC,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,UAAU,EAAE,eAAe,CAAC;IAC5B,qDAAqD;IACrD,eAAe,EAAE,OAAO,CAAC;IACzB,kCAAkC;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,uDAAuD;IACvD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,0DAA0D;IAC1D,oBAAoB,EAAE,OAAO,CAAC;IAC9B,kCAAkC;IAClC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,4BAA4B;IAC5B,aAAa,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CACvE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,gBAAgB,EAChB,OAAe,GAChB,EAAE,mBAAmB,GAAG,kBAAkB,CAoD1C;AAED,eAAe,YAAY,CAAC"}