@rovela-ai/sdk 0.4.1 → 0.4.2
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.
- package/dist/admin/api/accept-invite.d.ts +65 -0
- package/dist/admin/api/accept-invite.d.ts.map +1 -0
- package/dist/admin/api/accept-invite.js +115 -0
- package/dist/admin/api/accept-invite.js.map +1 -0
- package/dist/admin/api/categories.d.ts +68 -0
- package/dist/admin/api/categories.d.ts.map +1 -0
- package/dist/admin/api/categories.js +266 -0
- package/dist/admin/api/categories.js.map +1 -0
- package/dist/admin/api/check.d.ts +38 -0
- package/dist/admin/api/check.d.ts.map +1 -0
- package/dist/admin/api/check.js +49 -0
- package/dist/admin/api/check.js.map +1 -0
- package/dist/admin/api/customers.d.ts +77 -0
- package/dist/admin/api/customers.d.ts.map +1 -0
- package/dist/admin/api/customers.js +219 -0
- package/dist/admin/api/customers.js.map +1 -0
- package/dist/admin/api/forgot-password.d.ts +39 -0
- package/dist/admin/api/forgot-password.d.ts.map +1 -0
- package/dist/admin/api/forgot-password.js +66 -0
- package/dist/admin/api/forgot-password.js.map +1 -0
- package/dist/admin/api/index.d.ts +109 -0
- package/dist/admin/api/index.d.ts.map +1 -0
- package/dist/admin/api/index.js +128 -0
- package/dist/admin/api/index.js.map +1 -0
- package/dist/admin/api/linked-customer.d.ts +32 -0
- package/dist/admin/api/linked-customer.d.ts.map +1 -0
- package/dist/admin/api/linked-customer.js +45 -0
- package/dist/admin/api/linked-customer.js.map +1 -0
- package/dist/admin/api/me.d.ts +72 -0
- package/dist/admin/api/me.d.ts.map +1 -0
- package/dist/admin/api/me.js +177 -0
- package/dist/admin/api/me.js.map +1 -0
- package/dist/admin/api/orders.d.ts +91 -0
- package/dist/admin/api/orders.d.ts.map +1 -0
- package/dist/admin/api/orders.js +390 -0
- package/dist/admin/api/orders.js.map +1 -0
- package/dist/admin/api/products-bulk.d.ts +38 -0
- package/dist/admin/api/products-bulk.d.ts.map +1 -0
- package/dist/admin/api/products-bulk.js +135 -0
- package/dist/admin/api/products-bulk.js.map +1 -0
- package/dist/admin/api/products-stats.d.ts +34 -0
- package/dist/admin/api/products-stats.d.ts.map +1 -0
- package/dist/admin/api/products-stats.js +43 -0
- package/dist/admin/api/products-stats.js.map +1 -0
- package/dist/admin/api/products.d.ts +104 -0
- package/dist/admin/api/products.d.ts.map +1 -0
- package/dist/admin/api/products.js +491 -0
- package/dist/admin/api/products.js.map +1 -0
- package/dist/admin/api/refund.d.ts +29 -0
- package/dist/admin/api/refund.d.ts.map +1 -0
- package/dist/admin/api/refund.js +142 -0
- package/dist/admin/api/refund.js.map +1 -0
- package/dist/admin/api/reset-password.d.ts +49 -0
- package/dist/admin/api/reset-password.d.ts.map +1 -0
- package/dist/admin/api/reset-password.js +99 -0
- package/dist/admin/api/reset-password.js.map +1 -0
- package/dist/admin/api/return.d.ts +47 -0
- package/dist/admin/api/return.d.ts.map +1 -0
- package/dist/admin/api/return.js +186 -0
- package/dist/admin/api/return.js.map +1 -0
- package/dist/admin/api/settings.d.ts +49 -0
- package/dist/admin/api/settings.d.ts.map +1 -0
- package/dist/admin/api/settings.js +201 -0
- package/dist/admin/api/settings.js.map +1 -0
- package/dist/admin/api/setup-guide.d.ts +78 -0
- package/dist/admin/api/setup-guide.d.ts.map +1 -0
- package/dist/admin/api/setup-guide.js +235 -0
- package/dist/admin/api/setup-guide.js.map +1 -0
- package/dist/admin/api/setup.d.ts +60 -0
- package/dist/admin/api/setup.d.ts.map +1 -0
- package/dist/admin/api/setup.js +126 -0
- package/dist/admin/api/setup.js.map +1 -0
- package/dist/admin/api/shipping.d.ts +287 -0
- package/dist/admin/api/shipping.d.ts.map +1 -0
- package/dist/admin/api/shipping.js +746 -0
- package/dist/admin/api/shipping.js.map +1 -0
- package/dist/admin/api/stats.d.ts +43 -0
- package/dist/admin/api/stats.d.ts.map +1 -0
- package/dist/admin/api/stats.js +92 -0
- package/dist/admin/api/stats.js.map +1 -0
- package/dist/admin/api/stripe-status.d.ts +39 -0
- package/dist/admin/api/stripe-status.d.ts.map +1 -0
- package/dist/admin/api/stripe-status.js +99 -0
- package/dist/admin/api/stripe-status.js.map +1 -0
- package/dist/admin/api/tax-zones.d.ts +97 -0
- package/dist/admin/api/tax-zones.d.ts.map +1 -0
- package/dist/admin/api/tax-zones.js +265 -0
- package/dist/admin/api/tax-zones.js.map +1 -0
- package/dist/admin/api/users.d.ts +142 -0
- package/dist/admin/api/users.d.ts.map +1 -0
- package/dist/admin/api/users.js +355 -0
- package/dist/admin/api/users.js.map +1 -0
- package/dist/admin/components/AdminAcceptInviteForm.d.ts +3 -0
- package/dist/admin/components/AdminAcceptInviteForm.d.ts.map +1 -0
- package/dist/admin/components/AdminAcceptInviteForm.js +137 -0
- package/dist/admin/components/AdminAcceptInviteForm.js.map +1 -0
- package/dist/admin/components/AdminAccountPage.d.ts +10 -0
- package/dist/admin/components/AdminAccountPage.d.ts.map +1 -0
- package/dist/admin/components/AdminAccountPage.js +126 -0
- package/dist/admin/components/AdminAccountPage.js.map +1 -0
- package/dist/admin/components/AdminBarBanner.d.ts +2 -0
- package/dist/admin/components/AdminBarBanner.d.ts.map +1 -0
- package/dist/admin/components/AdminBarBanner.js +266 -0
- package/dist/admin/components/AdminBarBanner.js.map +1 -0
- package/dist/admin/components/AdminForgotPasswordForm.d.ts +8 -0
- package/dist/admin/components/AdminForgotPasswordForm.d.ts.map +1 -0
- package/dist/admin/components/AdminForgotPasswordForm.js +59 -0
- package/dist/admin/components/AdminForgotPasswordForm.js.map +1 -0
- package/dist/admin/components/AdminGuard.d.ts +40 -0
- package/dist/admin/components/AdminGuard.d.ts.map +1 -0
- package/dist/admin/components/AdminGuard.js +94 -0
- package/dist/admin/components/AdminGuard.js.map +1 -0
- package/dist/admin/components/AdminLayout.d.ts +40 -0
- package/dist/admin/components/AdminLayout.d.ts.map +1 -0
- package/dist/admin/components/AdminLayout.js +39 -0
- package/dist/admin/components/AdminLayout.js.map +1 -0
- package/dist/admin/components/AdminLoginForm.d.ts +18 -0
- package/dist/admin/components/AdminLoginForm.d.ts.map +1 -0
- package/dist/admin/components/AdminLoginForm.js +61 -0
- package/dist/admin/components/AdminLoginForm.js.map +1 -0
- package/dist/admin/components/AdminNav.d.ts +44 -0
- package/dist/admin/components/AdminNav.d.ts.map +1 -0
- package/dist/admin/components/AdminNav.js +175 -0
- package/dist/admin/components/AdminNav.js.map +1 -0
- package/dist/admin/components/AdminResetPasswordForm.d.ts +12 -0
- package/dist/admin/components/AdminResetPasswordForm.d.ts.map +1 -0
- package/dist/admin/components/AdminResetPasswordForm.js +134 -0
- package/dist/admin/components/AdminResetPasswordForm.js.map +1 -0
- package/dist/admin/components/AdminSelect.d.ts +47 -0
- package/dist/admin/components/AdminSelect.d.ts.map +1 -0
- package/dist/admin/components/AdminSelect.js +71 -0
- package/dist/admin/components/AdminSelect.js.map +1 -0
- package/dist/admin/components/AdminToast.d.ts +31 -0
- package/dist/admin/components/AdminToast.d.ts.map +1 -0
- package/dist/admin/components/AdminToast.js +83 -0
- package/dist/admin/components/AdminToast.js.map +1 -0
- package/dist/admin/components/AdminUserMenu.d.ts +14 -0
- package/dist/admin/components/AdminUserMenu.d.ts.map +1 -0
- package/dist/admin/components/AdminUserMenu.js +34 -0
- package/dist/admin/components/AdminUserMenu.js.map +1 -0
- package/dist/admin/components/CategoryForm.d.ts +30 -0
- package/dist/admin/components/CategoryForm.d.ts.map +1 -0
- package/dist/admin/components/CategoryForm.js +152 -0
- package/dist/admin/components/CategoryForm.js.map +1 -0
- package/dist/admin/components/CategorySelect.d.ts +32 -0
- package/dist/admin/components/CategorySelect.d.ts.map +1 -0
- package/dist/admin/components/CategorySelect.js +139 -0
- package/dist/admin/components/CategorySelect.js.map +1 -0
- package/dist/admin/components/CustomerDetails.d.ts +15 -0
- package/dist/admin/components/CustomerDetails.d.ts.map +1 -0
- package/dist/admin/components/CustomerDetails.js +177 -0
- package/dist/admin/components/CustomerDetails.js.map +1 -0
- package/dist/admin/components/CustomerTable.d.ts +13 -0
- package/dist/admin/components/CustomerTable.d.ts.map +1 -0
- package/dist/admin/components/CustomerTable.js +112 -0
- package/dist/admin/components/CustomerTable.js.map +1 -0
- package/dist/admin/components/DeleteConfirmDialog.d.ts +56 -0
- package/dist/admin/components/DeleteConfirmDialog.d.ts.map +1 -0
- package/dist/admin/components/DeleteConfirmDialog.js +46 -0
- package/dist/admin/components/DeleteConfirmDialog.js.map +1 -0
- package/dist/admin/components/ExampleContentBanner.d.ts +2 -0
- package/dist/admin/components/ExampleContentBanner.d.ts.map +1 -0
- package/dist/admin/components/ExampleContentBanner.js +153 -0
- package/dist/admin/components/ExampleContentBanner.js.map +1 -0
- package/dist/admin/components/InventoryEditor.d.ts +15 -0
- package/dist/admin/components/InventoryEditor.d.ts.map +1 -0
- package/dist/admin/components/InventoryEditor.js +86 -0
- package/dist/admin/components/InventoryEditor.js.map +1 -0
- package/dist/admin/components/InviteUserDialog.d.ts +3 -0
- package/dist/admin/components/InviteUserDialog.d.ts.map +1 -0
- package/dist/admin/components/InviteUserDialog.js +126 -0
- package/dist/admin/components/InviteUserDialog.js.map +1 -0
- package/dist/admin/components/LogoUpload.d.ts +22 -0
- package/dist/admin/components/LogoUpload.d.ts.map +1 -0
- package/dist/admin/components/LogoUpload.js +210 -0
- package/dist/admin/components/LogoUpload.js.map +1 -0
- package/dist/admin/components/LowStockAlert.d.ts +11 -0
- package/dist/admin/components/LowStockAlert.d.ts.map +1 -0
- package/dist/admin/components/LowStockAlert.js +33 -0
- package/dist/admin/components/LowStockAlert.js.map +1 -0
- package/dist/admin/components/OrderDetails.d.ts +14 -0
- package/dist/admin/components/OrderDetails.d.ts.map +1 -0
- package/dist/admin/components/OrderDetails.js +210 -0
- package/dist/admin/components/OrderDetails.js.map +1 -0
- package/dist/admin/components/OrderStatusChart.d.ts +21 -0
- package/dist/admin/components/OrderStatusChart.d.ts.map +1 -0
- package/dist/admin/components/OrderStatusChart.js +61 -0
- package/dist/admin/components/OrderStatusChart.js.map +1 -0
- package/dist/admin/components/OrderTable.d.ts +13 -0
- package/dist/admin/components/OrderTable.d.ts.map +1 -0
- package/dist/admin/components/OrderTable.js +117 -0
- package/dist/admin/components/OrderTable.js.map +1 -0
- package/dist/admin/components/PaymentSettings.d.ts +13 -0
- package/dist/admin/components/PaymentSettings.d.ts.map +1 -0
- package/dist/admin/components/PaymentSettings.js +117 -0
- package/dist/admin/components/PaymentSettings.js.map +1 -0
- package/dist/admin/components/PeriodSelector.d.ts +9 -0
- package/dist/admin/components/PeriodSelector.d.ts.map +1 -0
- package/dist/admin/components/PeriodSelector.js +19 -0
- package/dist/admin/components/PeriodSelector.js.map +1 -0
- package/dist/admin/components/PermissionsMatrix.d.ts +8 -0
- package/dist/admin/components/PermissionsMatrix.d.ts.map +1 -0
- package/dist/admin/components/PermissionsMatrix.js +70 -0
- package/dist/admin/components/PermissionsMatrix.js.map +1 -0
- package/dist/admin/components/PrimaryMetricsRow.d.ts +11 -0
- package/dist/admin/components/PrimaryMetricsRow.d.ts.map +1 -0
- package/dist/admin/components/PrimaryMetricsRow.js +73 -0
- package/dist/admin/components/PrimaryMetricsRow.js.map +1 -0
- package/dist/admin/components/ProductForm.d.ts +18 -0
- package/dist/admin/components/ProductForm.d.ts.map +1 -0
- package/dist/admin/components/ProductForm.js +251 -0
- package/dist/admin/components/ProductForm.js.map +1 -0
- package/dist/admin/components/ProductTable.d.ts +14 -0
- package/dist/admin/components/ProductTable.d.ts.map +1 -0
- package/dist/admin/components/ProductTable.js +384 -0
- package/dist/admin/components/ProductTable.js.map +1 -0
- package/dist/admin/components/RecentOrders.d.ts +11 -0
- package/dist/admin/components/RecentOrders.d.ts.map +1 -0
- package/dist/admin/components/RecentOrders.js +63 -0
- package/dist/admin/components/RecentOrders.js.map +1 -0
- package/dist/admin/components/RefundDialog.d.ts +17 -0
- package/dist/admin/components/RefundDialog.d.ts.map +1 -0
- package/dist/admin/components/RefundDialog.js +90 -0
- package/dist/admin/components/RefundDialog.js.map +1 -0
- package/dist/admin/components/RevenueChart.d.ts +23 -0
- package/dist/admin/components/RevenueChart.d.ts.map +1 -0
- package/dist/admin/components/RevenueChart.js +75 -0
- package/dist/admin/components/RevenueChart.js.map +1 -0
- package/dist/admin/components/SEOPreview.d.ts +33 -0
- package/dist/admin/components/SEOPreview.d.ts.map +1 -0
- package/dist/admin/components/SEOPreview.js +30 -0
- package/dist/admin/components/SEOPreview.js.map +1 -0
- package/dist/admin/components/SecondaryMetricsRow.d.ts +14 -0
- package/dist/admin/components/SecondaryMetricsRow.d.ts.map +1 -0
- package/dist/admin/components/SecondaryMetricsRow.js +45 -0
- package/dist/admin/components/SecondaryMetricsRow.js.map +1 -0
- package/dist/admin/components/SetupGuide.d.ts +4 -0
- package/dist/admin/components/SetupGuide.d.ts.map +1 -0
- package/dist/admin/components/SetupGuide.js +244 -0
- package/dist/admin/components/SetupGuide.js.map +1 -0
- package/dist/admin/components/ShippingSettings.d.ts +3 -0
- package/dist/admin/components/ShippingSettings.d.ts.map +1 -0
- package/dist/admin/components/ShippingSettings.js +553 -0
- package/dist/admin/components/ShippingSettings.js.map +1 -0
- package/dist/admin/components/StatsCards.d.ts +18 -0
- package/dist/admin/components/StatsCards.d.ts.map +1 -0
- package/dist/admin/components/StatsCards.js +71 -0
- package/dist/admin/components/StatsCards.js.map +1 -0
- package/dist/admin/components/StoreSettings.d.ts +19 -0
- package/dist/admin/components/StoreSettings.d.ts.map +1 -0
- package/dist/admin/components/StoreSettings.js +149 -0
- package/dist/admin/components/StoreSettings.js.map +1 -0
- package/dist/admin/components/TagInput.d.ts +29 -0
- package/dist/admin/components/TagInput.d.ts.map +1 -0
- package/dist/admin/components/TagInput.js +69 -0
- package/dist/admin/components/TagInput.js.map +1 -0
- package/dist/admin/components/TaxSettings.d.ts +12 -0
- package/dist/admin/components/TaxSettings.d.ts.map +1 -0
- package/dist/admin/components/TaxSettings.js +272 -0
- package/dist/admin/components/TaxSettings.js.map +1 -0
- package/dist/admin/components/UsersTable.d.ts +3 -0
- package/dist/admin/components/UsersTable.d.ts.map +1 -0
- package/dist/admin/components/UsersTable.js +388 -0
- package/dist/admin/components/UsersTable.js.map +1 -0
- package/dist/admin/components/VariantManager.d.ts +44 -0
- package/dist/admin/components/VariantManager.d.ts.map +1 -0
- package/dist/admin/components/VariantManager.js +324 -0
- package/dist/admin/components/VariantManager.js.map +1 -0
- package/dist/admin/components/index.d.ts +69 -0
- package/dist/admin/components/index.d.ts.map +1 -0
- package/dist/admin/components/index.js +86 -0
- package/dist/admin/components/index.js.map +1 -0
- package/dist/admin/config.d.ts +51 -0
- package/dist/admin/config.d.ts.map +1 -0
- package/dist/admin/config.js +224 -0
- package/dist/admin/config.js.map +1 -0
- package/dist/admin/hooks/fetchAdminApi.d.ts +65 -0
- package/dist/admin/hooks/fetchAdminApi.d.ts.map +1 -0
- package/dist/admin/hooks/fetchAdminApi.js +96 -0
- package/dist/admin/hooks/fetchAdminApi.js.map +1 -0
- package/dist/admin/hooks/index.d.ts +24 -0
- package/dist/admin/hooks/index.d.ts.map +1 -0
- package/dist/admin/hooks/index.js +19 -0
- package/dist/admin/hooks/index.js.map +1 -0
- package/dist/admin/hooks/useAdminAuth.d.ts +25 -0
- package/dist/admin/hooks/useAdminAuth.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminAuth.js +183 -0
- package/dist/admin/hooks/useAdminAuth.js.map +1 -0
- package/dist/admin/hooks/useAdminCategories.d.ts +9 -0
- package/dist/admin/hooks/useAdminCategories.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminCategories.js +112 -0
- package/dist/admin/hooks/useAdminCategories.js.map +1 -0
- package/dist/admin/hooks/useAdminCustomers.d.ts +3 -0
- package/dist/admin/hooks/useAdminCustomers.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminCustomers.js +110 -0
- package/dist/admin/hooks/useAdminCustomers.js.map +1 -0
- package/dist/admin/hooks/useAdminMe.d.ts +31 -0
- package/dist/admin/hooks/useAdminMe.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminMe.js +78 -0
- package/dist/admin/hooks/useAdminMe.js.map +1 -0
- package/dist/admin/hooks/useAdminOrders.d.ts +3 -0
- package/dist/admin/hooks/useAdminOrders.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminOrders.js +118 -0
- package/dist/admin/hooks/useAdminOrders.js.map +1 -0
- package/dist/admin/hooks/useAdminPermissions.d.ts +3 -0
- package/dist/admin/hooks/useAdminPermissions.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminPermissions.js +51 -0
- package/dist/admin/hooks/useAdminPermissions.js.map +1 -0
- package/dist/admin/hooks/useAdminProductMetrics.d.ts +3 -0
- package/dist/admin/hooks/useAdminProductMetrics.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminProductMetrics.js +32 -0
- package/dist/admin/hooks/useAdminProductMetrics.js.map +1 -0
- package/dist/admin/hooks/useAdminProducts.d.ts +3 -0
- package/dist/admin/hooks/useAdminProducts.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminProducts.js +132 -0
- package/dist/admin/hooks/useAdminProducts.js.map +1 -0
- package/dist/admin/hooks/useAdminSession.d.ts +23 -0
- package/dist/admin/hooks/useAdminSession.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminSession.js +117 -0
- package/dist/admin/hooks/useAdminSession.js.map +1 -0
- package/dist/admin/hooks/useAdminStats.d.ts +47 -0
- package/dist/admin/hooks/useAdminStats.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminStats.js +128 -0
- package/dist/admin/hooks/useAdminStats.js.map +1 -0
- package/dist/admin/hooks/useAdminUsers.d.ts +3 -0
- package/dist/admin/hooks/useAdminUsers.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminUsers.js +177 -0
- package/dist/admin/hooks/useAdminUsers.js.map +1 -0
- package/dist/admin/hooks/useLinkedCustomerStatus.d.ts +3 -0
- package/dist/admin/hooks/useLinkedCustomerStatus.d.ts.map +1 -0
- package/dist/admin/hooks/useLinkedCustomerStatus.js +48 -0
- package/dist/admin/hooks/useLinkedCustomerStatus.js.map +1 -0
- package/dist/admin/hooks/useSetupGuide.d.ts +45 -0
- package/dist/admin/hooks/useSetupGuide.d.ts.map +1 -0
- package/dist/admin/hooks/useSetupGuide.js +60 -0
- package/dist/admin/hooks/useSetupGuide.js.map +1 -0
- package/dist/admin/index.d.ts +66 -0
- package/dist/admin/index.d.ts.map +1 -0
- package/dist/admin/index.js +144 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/permissions.d.ts +79 -0
- package/dist/admin/permissions.d.ts.map +1 -0
- package/dist/admin/permissions.js +182 -0
- package/dist/admin/permissions.js.map +1 -0
- package/dist/admin/server/admin-invite.d.ts +122 -0
- package/dist/admin/server/admin-invite.d.ts.map +1 -0
- package/dist/admin/server/admin-invite.js +235 -0
- package/dist/admin/server/admin-invite.js.map +1 -0
- package/dist/admin/server/admin-password-reset.d.ts +87 -0
- package/dist/admin/server/admin-password-reset.d.ts.map +1 -0
- package/dist/admin/server/admin-password-reset.js +220 -0
- package/dist/admin/server/admin-password-reset.js.map +1 -0
- package/dist/admin/server/admin-self-service.d.ts +86 -0
- package/dist/admin/server/admin-self-service.d.ts.map +1 -0
- package/dist/admin/server/admin-self-service.js +188 -0
- package/dist/admin/server/admin-self-service.js.map +1 -0
- package/dist/admin/server/admin-service.d.ts +131 -0
- package/dist/admin/server/admin-service.d.ts.map +1 -0
- package/dist/admin/server/admin-service.js +278 -0
- package/dist/admin/server/admin-service.js.map +1 -0
- package/dist/admin/server/admin-session.d.ts +173 -0
- package/dist/admin/server/admin-session.d.ts.map +1 -0
- package/dist/admin/server/admin-session.js +272 -0
- package/dist/admin/server/admin-session.js.map +1 -0
- package/dist/admin/server/index.d.ts +17 -0
- package/dist/admin/server/index.d.ts.map +1 -0
- package/dist/admin/server/index.js +39 -0
- package/dist/admin/server/index.js.map +1 -0
- package/dist/admin/server/user-management.d.ts +221 -0
- package/dist/admin/server/user-management.d.ts.map +1 -0
- package/dist/admin/server/user-management.js +838 -0
- package/dist/admin/server/user-management.js.map +1 -0
- package/dist/admin/types.d.ts +1161 -0
- package/dist/admin/types.d.ts.map +1 -0
- package/dist/admin/types.js +10 -0
- package/dist/admin/types.js.map +1 -0
- package/dist/auth/api/forgot-password.d.ts +41 -0
- package/dist/auth/api/forgot-password.d.ts.map +1 -0
- package/dist/auth/api/forgot-password.js +65 -0
- package/dist/auth/api/forgot-password.js.map +1 -0
- package/dist/auth/api/index.d.ts +37 -0
- package/dist/auth/api/index.d.ts.map +1 -0
- package/dist/auth/api/index.js +44 -0
- package/dist/auth/api/index.js.map +1 -0
- package/dist/auth/api/register.d.ts +41 -0
- package/dist/auth/api/register.d.ts.map +1 -0
- package/dist/auth/api/register.js +99 -0
- package/dist/auth/api/register.js.map +1 -0
- package/dist/auth/api/request-refund.d.ts +38 -0
- package/dist/auth/api/request-refund.d.ts.map +1 -0
- package/dist/auth/api/request-refund.js +142 -0
- package/dist/auth/api/request-refund.js.map +1 -0
- package/dist/auth/api/request-return.d.ts +39 -0
- package/dist/auth/api/request-return.d.ts.map +1 -0
- package/dist/auth/api/request-return.js +109 -0
- package/dist/auth/api/request-return.js.map +1 -0
- package/dist/auth/api/resend-verification.d.ts +41 -0
- package/dist/auth/api/resend-verification.d.ts.map +1 -0
- package/dist/auth/api/resend-verification.js +68 -0
- package/dist/auth/api/resend-verification.js.map +1 -0
- package/dist/auth/api/reset-password.d.ts +67 -0
- package/dist/auth/api/reset-password.d.ts.map +1 -0
- package/dist/auth/api/reset-password.js +106 -0
- package/dist/auth/api/reset-password.js.map +1 -0
- package/dist/auth/api/verify-email.d.ts +47 -0
- package/dist/auth/api/verify-email.d.ts.map +1 -0
- package/dist/auth/api/verify-email.js +90 -0
- package/dist/auth/api/verify-email.js.map +1 -0
- package/dist/auth/components/AuthGuard.d.ts +52 -0
- package/dist/auth/components/AuthGuard.d.ts.map +1 -0
- package/dist/auth/components/AuthGuard.js +109 -0
- package/dist/auth/components/AuthGuard.js.map +1 -0
- package/dist/auth/components/ForgotPasswordForm.d.ts +15 -0
- package/dist/auth/components/ForgotPasswordForm.d.ts.map +1 -0
- package/dist/auth/components/ForgotPasswordForm.js +43 -0
- package/dist/auth/components/ForgotPasswordForm.js.map +1 -0
- package/dist/auth/components/Label.d.ts +19 -0
- package/dist/auth/components/Label.d.ts.map +1 -0
- package/dist/auth/components/Label.js +18 -0
- package/dist/auth/components/Label.js.map +1 -0
- package/dist/auth/components/ResetPasswordForm.d.ts +18 -0
- package/dist/auth/components/ResetPasswordForm.d.ts.map +1 -0
- package/dist/auth/components/ResetPasswordForm.js +87 -0
- package/dist/auth/components/ResetPasswordForm.js.map +1 -0
- package/dist/auth/components/SignInForm.d.ts +21 -0
- package/dist/auth/components/SignInForm.d.ts.map +1 -0
- package/dist/auth/components/SignInForm.js +61 -0
- package/dist/auth/components/SignInForm.js.map +1 -0
- package/dist/auth/components/SignUpForm.d.ts +18 -0
- package/dist/auth/components/SignUpForm.d.ts.map +1 -0
- package/dist/auth/components/SignUpForm.js +78 -0
- package/dist/auth/components/SignUpForm.js.map +1 -0
- package/dist/auth/components/UserMenu.d.ts +18 -0
- package/dist/auth/components/UserMenu.d.ts.map +1 -0
- package/dist/auth/components/UserMenu.js +73 -0
- package/dist/auth/components/UserMenu.js.map +1 -0
- package/dist/auth/components/VerifyEmailNotice.d.ts +20 -0
- package/dist/auth/components/VerifyEmailNotice.d.ts.map +1 -0
- package/dist/auth/components/VerifyEmailNotice.js +57 -0
- package/dist/auth/components/VerifyEmailNotice.js.map +1 -0
- package/dist/auth/components/index.d.ts +15 -0
- package/dist/auth/components/index.d.ts.map +1 -0
- package/dist/auth/components/index.js +14 -0
- package/dist/auth/components/index.js.map +1 -0
- package/dist/auth/config.d.ts +52 -0
- package/dist/auth/config.d.ts.map +1 -0
- package/dist/auth/config.js +243 -0
- package/dist/auth/config.js.map +1 -0
- package/dist/auth/hooks/index.d.ts +7 -0
- package/dist/auth/hooks/index.d.ts.map +1 -0
- package/dist/auth/hooks/index.js +7 -0
- package/dist/auth/hooks/index.js.map +1 -0
- package/dist/auth/hooks/useAuth.d.ts +30 -0
- package/dist/auth/hooks/useAuth.d.ts.map +1 -0
- package/dist/auth/hooks/useAuth.js +251 -0
- package/dist/auth/hooks/useAuth.js.map +1 -0
- package/dist/auth/index.d.ts +55 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +67 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/server/customer-service.d.ts +140 -0
- package/dist/auth/server/customer-service.d.ts.map +1 -0
- package/dist/auth/server/customer-service.js +266 -0
- package/dist/auth/server/customer-service.js.map +1 -0
- package/dist/auth/server/customer-session.d.ts +79 -0
- package/dist/auth/server/customer-session.d.ts.map +1 -0
- package/dist/auth/server/customer-session.js +103 -0
- package/dist/auth/server/customer-session.js.map +1 -0
- package/dist/auth/server/index.d.ts +14 -0
- package/dist/auth/server/index.d.ts.map +1 -0
- package/dist/auth/server/index.js +17 -0
- package/dist/auth/server/index.js.map +1 -0
- package/dist/auth/server/password-reset-service.d.ts +87 -0
- package/dist/auth/server/password-reset-service.d.ts.map +1 -0
- package/dist/auth/server/password-reset-service.js +203 -0
- package/dist/auth/server/password-reset-service.js.map +1 -0
- package/dist/auth/server/password.d.ts +58 -0
- package/dist/auth/server/password.d.ts.map +1 -0
- package/dist/auth/server/password.js +85 -0
- package/dist/auth/server/password.js.map +1 -0
- package/dist/auth/server/verification-service.d.ts +88 -0
- package/dist/auth/server/verification-service.d.ts.map +1 -0
- package/dist/auth/server/verification-service.js +231 -0
- package/dist/auth/server/verification-service.js.map +1 -0
- package/dist/auth/types.d.ts +311 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +7 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/cart/CartProvider.d.ts +65 -0
- package/dist/cart/CartProvider.d.ts.map +1 -0
- package/dist/cart/CartProvider.js +96 -0
- package/dist/cart/CartProvider.js.map +1 -0
- package/dist/cart/components/AddToCartButton.d.ts +77 -0
- package/dist/cart/components/AddToCartButton.d.ts.map +1 -0
- package/dist/cart/components/AddToCartButton.js +122 -0
- package/dist/cart/components/AddToCartButton.js.map +1 -0
- package/dist/cart/components/CartDrawer.d.ts +71 -0
- package/dist/cart/components/CartDrawer.d.ts.map +1 -0
- package/dist/cart/components/CartDrawer.js +117 -0
- package/dist/cart/components/CartDrawer.js.map +1 -0
- package/dist/cart/components/CartIcon.d.ts +36 -0
- package/dist/cart/components/CartIcon.d.ts.map +1 -0
- package/dist/cart/components/CartIcon.js +68 -0
- package/dist/cart/components/CartIcon.js.map +1 -0
- package/dist/cart/components/CartItem.d.ts +52 -0
- package/dist/cart/components/CartItem.d.ts.map +1 -0
- package/dist/cart/components/CartItem.js +55 -0
- package/dist/cart/components/CartItem.js.map +1 -0
- package/dist/cart/components/CartSummary.d.ts +43 -0
- package/dist/cart/components/CartSummary.d.ts.map +1 -0
- package/dist/cart/components/CartSummary.js +60 -0
- package/dist/cart/components/CartSummary.js.map +1 -0
- package/dist/cart/components/QuantitySelector.d.ts +39 -0
- package/dist/cart/components/QuantitySelector.d.ts.map +1 -0
- package/dist/cart/components/QuantitySelector.js +85 -0
- package/dist/cart/components/QuantitySelector.js.map +1 -0
- package/dist/cart/components/index.d.ts +18 -0
- package/dist/cart/components/index.d.ts.map +1 -0
- package/dist/cart/components/index.js +12 -0
- package/dist/cart/components/index.js.map +1 -0
- package/dist/cart/index.d.ts +109 -0
- package/dist/cart/index.d.ts.map +1 -0
- package/dist/cart/index.js +115 -0
- package/dist/cart/index.js.map +1 -0
- package/dist/cart/store.d.ts +150 -0
- package/dist/cart/store.d.ts.map +1 -0
- package/dist/cart/store.js +315 -0
- package/dist/cart/store.js.map +1 -0
- package/dist/checkout/api/checkout.js +112 -0
- package/dist/checkout/api/checkout.js.map +1 -0
- package/dist/checkout/api/countries.d.ts +17 -0
- package/dist/checkout/api/countries.d.ts.map +1 -0
- package/dist/checkout/api/countries.js +38 -0
- package/dist/checkout/api/countries.js.map +1 -0
- package/dist/checkout/api/index.js +11 -0
- package/dist/checkout/api/index.js.map +1 -0
- package/dist/checkout/api/payment-status.d.ts +45 -0
- package/dist/checkout/api/payment-status.d.ts.map +1 -0
- package/dist/checkout/api/payment-status.js +104 -0
- package/dist/checkout/api/payment-status.js.map +1 -0
- package/dist/checkout/api/shipping.d.ts +34 -0
- package/dist/checkout/api/shipping.d.ts.map +1 -0
- package/dist/checkout/api/shipping.js +247 -0
- package/dist/checkout/api/shipping.js.map +1 -0
- package/dist/checkout/api/webhook.js +55 -0
- package/dist/checkout/api/webhook.js.map +1 -0
- package/dist/checkout/components/CheckoutButton.d.ts +55 -0
- package/dist/checkout/components/CheckoutButton.d.ts.map +1 -0
- package/dist/checkout/components/CheckoutButton.js +132 -0
- package/dist/checkout/components/CheckoutButton.js.map +1 -0
- package/dist/checkout/components/CheckoutFlow.d.ts +53 -0
- package/dist/checkout/components/CheckoutFlow.d.ts.map +1 -0
- package/dist/checkout/components/CheckoutFlow.js +286 -0
- package/dist/checkout/components/CheckoutFlow.js.map +1 -0
- package/dist/checkout/components/CheckoutSuccess.d.ts +29 -0
- package/dist/checkout/components/CheckoutSuccess.d.ts.map +1 -0
- package/dist/checkout/components/CheckoutSuccess.js +49 -0
- package/dist/checkout/components/CheckoutSuccess.js.map +1 -0
- package/dist/checkout/components/OrderSummary.d.ts +37 -0
- package/dist/checkout/components/OrderSummary.d.ts.map +1 -0
- package/dist/checkout/components/OrderSummary.js +71 -0
- package/dist/checkout/components/OrderSummary.js.map +1 -0
- package/dist/checkout/components/ShippingForm.d.ts +30 -0
- package/dist/checkout/components/ShippingForm.d.ts.map +1 -0
- package/dist/checkout/components/ShippingForm.js +185 -0
- package/dist/checkout/components/ShippingForm.js.map +1 -0
- package/dist/checkout/components/ShippingOptions.d.ts +51 -0
- package/dist/checkout/components/ShippingOptions.d.ts.map +1 -0
- package/dist/checkout/components/ShippingOptions.js +93 -0
- package/dist/checkout/components/ShippingOptions.js.map +1 -0
- package/dist/checkout/components/index.d.ts +12 -0
- package/dist/checkout/components/index.d.ts.map +1 -0
- package/dist/checkout/components/index.js +12 -0
- package/dist/checkout/components/index.js.map +1 -0
- package/dist/checkout/constants.d.ts +244 -0
- package/dist/checkout/constants.d.ts.map +1 -0
- package/dist/checkout/constants.js +119 -0
- package/dist/checkout/constants.js.map +1 -0
- package/dist/checkout/hooks/index.d.ts +9 -0
- package/dist/checkout/hooks/index.d.ts.map +1 -0
- package/dist/checkout/hooks/index.js +8 -0
- package/dist/checkout/hooks/index.js.map +1 -0
- package/dist/checkout/hooks/useCheckout.d.ts +38 -0
- package/dist/checkout/hooks/useCheckout.d.ts.map +1 -0
- package/dist/checkout/hooks/useCheckout.js +134 -0
- package/dist/checkout/hooks/useCheckout.js.map +1 -0
- package/dist/checkout/hooks/usePaymentStatus.d.ts +42 -0
- package/dist/checkout/hooks/usePaymentStatus.d.ts.map +1 -0
- package/dist/checkout/hooks/usePaymentStatus.js +71 -0
- package/dist/checkout/hooks/usePaymentStatus.js.map +1 -0
- package/dist/checkout/index.js +135 -0
- package/dist/checkout/index.js.map +1 -0
- package/dist/checkout/server/coupons.d.ts +91 -0
- package/dist/checkout/server/coupons.d.ts.map +1 -0
- package/dist/checkout/server/coupons.js +192 -0
- package/dist/checkout/server/coupons.js.map +1 -0
- package/dist/checkout/server/index.js +10 -0
- package/dist/checkout/server/index.js.map +1 -0
- package/dist/checkout/stripe/client.d.ts +74 -0
- package/dist/checkout/stripe/client.d.ts.map +1 -0
- package/dist/checkout/stripe/client.js +175 -0
- package/dist/checkout/stripe/client.js.map +1 -0
- package/dist/checkout/stripe/index.d.ts +7 -0
- package/dist/checkout/stripe/index.d.ts.map +1 -0
- package/dist/checkout/stripe/index.js +7 -0
- package/dist/checkout/stripe/index.js.map +1 -0
- package/dist/checkout/types.d.ts +489 -0
- package/dist/checkout/types.d.ts.map +1 -0
- package/dist/checkout/types.js +8 -0
- package/dist/checkout/types.js.map +1 -0
- package/dist/core/StoreSettingsProvider.d.ts +107 -0
- package/dist/core/StoreSettingsProvider.d.ts.map +1 -0
- package/dist/core/StoreSettingsProvider.js +200 -0
- package/dist/core/StoreSettingsProvider.js.map +1 -0
- package/dist/core/api/index.d.ts +7 -0
- package/dist/core/api/index.d.ts.map +1 -0
- package/dist/core/api/index.js +7 -0
- package/dist/core/api/index.js.map +1 -0
- package/dist/core/api/settings.d.ts +42 -0
- package/dist/core/api/settings.d.ts.map +1 -0
- package/dist/core/api/settings.js +74 -0
- package/dist/core/api/settings.js.map +1 -0
- package/dist/core/config.d.ts +270 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +80 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/cookie-consent/CookieBanner.d.ts +2 -0
- package/dist/core/cookie-consent/CookieBanner.d.ts.map +1 -0
- package/dist/core/cookie-consent/CookieBanner.js +243 -0
- package/dist/core/cookie-consent/CookieBanner.js.map +1 -0
- package/dist/core/cookie-consent/CookieConsentProvider.d.ts +53 -0
- package/dist/core/cookie-consent/CookieConsentProvider.d.ts.map +1 -0
- package/dist/core/cookie-consent/CookieConsentProvider.js +162 -0
- package/dist/core/cookie-consent/CookieConsentProvider.js.map +1 -0
- package/dist/core/cookie-consent/CookiePreferencesLink.d.ts +15 -0
- package/dist/core/cookie-consent/CookiePreferencesLink.d.ts.map +1 -0
- package/dist/core/cookie-consent/CookiePreferencesLink.js +12 -0
- package/dist/core/cookie-consent/CookiePreferencesLink.js.map +1 -0
- package/dist/core/cookie-consent/index.d.ts +17 -0
- package/dist/core/cookie-consent/index.d.ts.map +1 -0
- package/dist/core/cookie-consent/index.js +16 -0
- package/dist/core/cookie-consent/index.js.map +1 -0
- package/dist/core/cookie-consent/types.d.ts +31 -0
- package/dist/core/cookie-consent/types.d.ts.map +1 -0
- package/dist/core/cookie-consent/types.js +10 -0
- package/dist/core/cookie-consent/types.js.map +1 -0
- package/dist/core/cookie-consent/useCookieConsent.d.ts +14 -0
- package/dist/core/cookie-consent/useCookieConsent.d.ts.map +1 -0
- package/dist/core/cookie-consent/useCookieConsent.js +25 -0
- package/dist/core/cookie-consent/useCookieConsent.js.map +1 -0
- package/dist/core/db/client.d.ts +39 -0
- package/dist/core/db/client.d.ts.map +1 -0
- package/dist/core/db/client.js +86 -0
- package/dist/core/db/client.js.map +1 -0
- package/dist/core/db/index.d.ts +11 -0
- package/dist/core/db/index.d.ts.map +1 -0
- package/dist/core/db/index.js +36 -0
- package/dist/core/db/index.js.map +1 -0
- package/dist/core/db/queries.d.ts +1427 -0
- package/dist/core/db/queries.d.ts.map +1 -0
- package/dist/core/db/queries.js +1932 -0
- package/dist/core/db/queries.js.map +1 -0
- package/dist/core/db/schema.d.ts +3462 -0
- package/dist/core/db/schema.d.ts.map +1 -0
- package/dist/core/db/schema.js +495 -0
- package/dist/core/db/schema.js.map +1 -0
- package/dist/core/index.d.ts +22 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +43 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/server/index.d.ts +18 -0
- package/dist/core/server/index.d.ts.map +1 -0
- package/dist/core/server/index.js +47 -0
- package/dist/core/server/index.js.map +1 -0
- package/dist/core/types.d.ts +246 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +8 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/utils.d.ts +147 -0
- package/dist/core/utils.d.ts.map +1 -0
- package/dist/core/utils.js +309 -0
- package/dist/core/utils.js.map +1 -0
- package/dist/emails/config.d.ts +69 -0
- package/dist/emails/config.d.ts.map +1 -0
- package/dist/emails/config.js +147 -0
- package/dist/emails/config.js.map +1 -0
- package/dist/emails/index.d.ts +85 -0
- package/dist/emails/index.d.ts.map +1 -0
- package/dist/emails/index.js +110 -0
- package/dist/emails/index.js.map +1 -0
- package/dist/emails/send/admin-auth.d.ts +94 -0
- package/dist/emails/send/admin-auth.d.ts.map +1 -0
- package/dist/emails/send/admin-auth.js +118 -0
- package/dist/emails/send/admin-auth.js.map +1 -0
- package/dist/emails/send/auth.d.ts +91 -0
- package/dist/emails/send/auth.d.ts.map +1 -0
- package/dist/emails/send/auth.js +130 -0
- package/dist/emails/send/auth.js.map +1 -0
- package/dist/emails/send/index.d.ts +12 -0
- package/dist/emails/send/index.d.ts.map +1 -0
- package/dist/emails/send/index.js +18 -0
- package/dist/emails/send/index.js.map +1 -0
- package/dist/emails/send/orders.d.ts +186 -0
- package/dist/emails/send/orders.d.ts.map +1 -0
- package/dist/emails/send/orders.js +258 -0
- package/dist/emails/send/orders.js.map +1 -0
- package/dist/emails/sender.d.ts +72 -0
- package/dist/emails/sender.d.ts.map +1 -0
- package/dist/emails/sender.js +116 -0
- package/dist/emails/sender.js.map +1 -0
- package/dist/emails/templates/admin-invite.d.ts +40 -0
- package/dist/emails/templates/admin-invite.d.ts.map +1 -0
- package/dist/emails/templates/admin-invite.js +62 -0
- package/dist/emails/templates/admin-invite.js.map +1 -0
- package/dist/emails/templates/base.d.ts +109 -0
- package/dist/emails/templates/base.d.ts.map +1 -0
- package/dist/emails/templates/base.js +334 -0
- package/dist/emails/templates/base.js.map +1 -0
- package/dist/emails/templates/email-verification.d.ts +28 -0
- package/dist/emails/templates/email-verification.d.ts.map +1 -0
- package/dist/emails/templates/email-verification.js +52 -0
- package/dist/emails/templates/email-verification.js.map +1 -0
- package/dist/emails/templates/index.d.ts +16 -0
- package/dist/emails/templates/index.d.ts.map +1 -0
- package/dist/emails/templates/index.js +28 -0
- package/dist/emails/templates/index.js.map +1 -0
- package/dist/emails/templates/order-cancelled.d.ts +30 -0
- package/dist/emails/templates/order-cancelled.d.ts.map +1 -0
- package/dist/emails/templates/order-cancelled.js +83 -0
- package/dist/emails/templates/order-cancelled.js.map +1 -0
- package/dist/emails/templates/order-confirmation.d.ts +36 -0
- package/dist/emails/templates/order-confirmation.d.ts.map +1 -0
- package/dist/emails/templates/order-confirmation.js +174 -0
- package/dist/emails/templates/order-confirmation.js.map +1 -0
- package/dist/emails/templates/order-delivered.d.ts +31 -0
- package/dist/emails/templates/order-delivered.d.ts.map +1 -0
- package/dist/emails/templates/order-delivered.js +100 -0
- package/dist/emails/templates/order-delivered.js.map +1 -0
- package/dist/emails/templates/order-shipped.d.ts +32 -0
- package/dist/emails/templates/order-shipped.d.ts.map +1 -0
- package/dist/emails/templates/order-shipped.js +83 -0
- package/dist/emails/templates/order-shipped.js.map +1 -0
- package/dist/emails/templates/password-reset.d.ts +27 -0
- package/dist/emails/templates/password-reset.d.ts.map +1 -0
- package/dist/emails/templates/password-reset.js +51 -0
- package/dist/emails/templates/password-reset.js.map +1 -0
- package/dist/emails/templates/refund-processed.d.ts +32 -0
- package/dist/emails/templates/refund-processed.d.ts.map +1 -0
- package/dist/emails/templates/refund-processed.js +92 -0
- package/dist/emails/templates/refund-processed.js.map +1 -0
- package/dist/emails/templates/welcome.d.ts +27 -0
- package/dist/emails/templates/welcome.d.ts.map +1 -0
- package/dist/emails/templates/welcome.js +52 -0
- package/dist/emails/templates/welcome.js.map +1 -0
- package/dist/emails/types.d.ts +229 -0
- package/dist/emails/types.d.ts.map +1 -0
- package/dist/emails/types.js +7 -0
- package/dist/emails/types.js.map +1 -0
- package/dist/emails/utils.d.ts +94 -0
- package/dist/emails/utils.d.ts.map +1 -0
- package/dist/emails/utils.js +218 -0
- package/dist/emails/utils.js.map +1 -0
- package/dist/index.js +73 -0
- package/dist/index.js.map +1 -0
- package/dist/media/api/delete.d.ts +43 -0
- package/dist/media/api/delete.d.ts.map +1 -0
- package/dist/media/api/delete.js +124 -0
- package/dist/media/api/delete.js.map +1 -0
- package/dist/media/api/index.d.ts +17 -0
- package/dist/media/api/index.d.ts.map +1 -0
- package/dist/media/api/index.js +17 -0
- package/dist/media/api/index.js.map +1 -0
- package/dist/media/api/presign.d.ts +38 -0
- package/dist/media/api/presign.d.ts.map +1 -0
- package/dist/media/api/presign.js +130 -0
- package/dist/media/api/presign.js.map +1 -0
- package/dist/media/components/DropZone.d.ts +18 -0
- package/dist/media/components/DropZone.d.ts.map +1 -0
- package/dist/media/components/DropZone.js +107 -0
- package/dist/media/components/DropZone.js.map +1 -0
- package/dist/media/components/ImageGalleryUpload.d.ts +21 -0
- package/dist/media/components/ImageGalleryUpload.d.ts.map +1 -0
- package/dist/media/components/ImageGalleryUpload.js +193 -0
- package/dist/media/components/ImageGalleryUpload.js.map +1 -0
- package/dist/media/components/ImageUpload.d.ts +17 -0
- package/dist/media/components/ImageUpload.d.ts.map +1 -0
- package/dist/media/components/ImageUpload.js +89 -0
- package/dist/media/components/ImageUpload.js.map +1 -0
- package/dist/media/components/index.d.ts +10 -0
- package/dist/media/components/index.d.ts.map +1 -0
- package/dist/media/components/index.js +9 -0
- package/dist/media/components/index.js.map +1 -0
- package/dist/media/config.d.ts +83 -0
- package/dist/media/config.d.ts.map +1 -0
- package/dist/media/config.js +189 -0
- package/dist/media/config.js.map +1 -0
- package/dist/media/hooks/index.d.ts +8 -0
- package/dist/media/hooks/index.d.ts.map +1 -0
- package/dist/media/hooks/index.js +7 -0
- package/dist/media/hooks/index.js.map +1 -0
- package/dist/media/hooks/useUpload.d.ts +32 -0
- package/dist/media/hooks/useUpload.d.ts.map +1 -0
- package/dist/media/hooks/useUpload.js +260 -0
- package/dist/media/hooks/useUpload.js.map +1 -0
- package/dist/media/index.d.ts +57 -0
- package/dist/media/index.d.ts.map +1 -0
- package/dist/media/index.js +68 -0
- package/dist/media/index.js.map +1 -0
- package/dist/media/server/delete.d.ts +59 -0
- package/dist/media/server/delete.d.ts.map +1 -0
- package/dist/media/server/delete.js +176 -0
- package/dist/media/server/delete.js.map +1 -0
- package/dist/media/server/index.d.ts +10 -0
- package/dist/media/server/index.d.ts.map +1 -0
- package/dist/media/server/index.js +13 -0
- package/dist/media/server/index.js.map +1 -0
- package/dist/media/server/presign.d.ts +57 -0
- package/dist/media/server/presign.d.ts.map +1 -0
- package/dist/media/server/presign.js +112 -0
- package/dist/media/server/presign.js.map +1 -0
- package/dist/media/server/r2-client.d.ts +30 -0
- package/dist/media/server/r2-client.d.ts.map +1 -0
- package/dist/media/server/r2-client.js +76 -0
- package/dist/media/server/r2-client.js.map +1 -0
- package/dist/media/types.d.ts +316 -0
- package/dist/media/types.d.ts.map +1 -0
- package/dist/media/types.js +95 -0
- package/dist/media/types.js.map +1 -0
- package/dist/products/api/categories.d.ts +29 -0
- package/dist/products/api/categories.d.ts.map +1 -0
- package/dist/products/api/categories.js +46 -0
- package/dist/products/api/categories.js.map +1 -0
- package/dist/products/api/index.d.ts +24 -0
- package/dist/products/api/index.d.ts.map +1 -0
- package/dist/products/api/index.js +24 -0
- package/dist/products/api/index.js.map +1 -0
- package/dist/products/api/product.d.ts +36 -0
- package/dist/products/api/product.d.ts.map +1 -0
- package/dist/products/api/product.js +67 -0
- package/dist/products/api/product.js.map +1 -0
- package/dist/products/api/products.d.ts +41 -0
- package/dist/products/api/products.d.ts.map +1 -0
- package/dist/products/api/products.js +99 -0
- package/dist/products/api/products.js.map +1 -0
- package/dist/products/components/ProductCard.d.ts +54 -0
- package/dist/products/components/ProductCard.d.ts.map +1 -0
- package/dist/products/components/ProductCard.js +72 -0
- package/dist/products/components/ProductCard.js.map +1 -0
- package/dist/products/components/ProductDetails.d.ts +63 -0
- package/dist/products/components/ProductDetails.d.ts.map +1 -0
- package/dist/products/components/ProductDetails.js +137 -0
- package/dist/products/components/ProductDetails.js.map +1 -0
- package/dist/products/components/ProductGallery.d.ts +30 -0
- package/dist/products/components/ProductGallery.d.ts.map +1 -0
- package/dist/products/components/ProductGallery.js +91 -0
- package/dist/products/components/ProductGallery.js.map +1 -0
- package/dist/products/components/ProductGrid.d.ts +50 -0
- package/dist/products/components/ProductGrid.d.ts.map +1 -0
- package/dist/products/components/ProductGrid.js +81 -0
- package/dist/products/components/ProductGrid.js.map +1 -0
- package/dist/products/components/ProductSearch.d.ts +43 -0
- package/dist/products/components/ProductSearch.d.ts.map +1 -0
- package/dist/products/components/ProductSearch.js +97 -0
- package/dist/products/components/ProductSearch.js.map +1 -0
- package/dist/products/components/ProductSort.d.ts +43 -0
- package/dist/products/components/ProductSort.d.ts.map +1 -0
- package/dist/products/components/ProductSort.js +59 -0
- package/dist/products/components/ProductSort.js.map +1 -0
- package/dist/products/components/VariantSelector.d.ts +43 -0
- package/dist/products/components/VariantSelector.d.ts.map +1 -0
- package/dist/products/components/VariantSelector.js +147 -0
- package/dist/products/components/VariantSelector.js.map +1 -0
- package/dist/products/components/index.d.ts +20 -0
- package/dist/products/components/index.d.ts.map +1 -0
- package/dist/products/components/index.js +15 -0
- package/dist/products/components/index.js.map +1 -0
- package/dist/products/hooks/index.d.ts +10 -0
- package/dist/products/hooks/index.d.ts.map +1 -0
- package/dist/products/hooks/index.js +8 -0
- package/dist/products/hooks/index.js.map +1 -0
- package/dist/products/hooks/useProduct.d.ts +44 -0
- package/dist/products/hooks/useProduct.d.ts.map +1 -0
- package/dist/products/hooks/useProduct.js +87 -0
- package/dist/products/hooks/useProduct.js.map +1 -0
- package/dist/products/hooks/useProducts.d.ts +67 -0
- package/dist/products/hooks/useProducts.d.ts.map +1 -0
- package/dist/products/hooks/useProducts.js +131 -0
- package/dist/products/hooks/useProducts.js.map +1 -0
- package/dist/products/index.d.ts +69 -0
- package/dist/products/index.d.ts.map +1 -0
- package/dist/products/index.js +79 -0
- package/dist/products/index.js.map +1 -0
- package/dist/shipping/index.d.ts +8 -0
- package/dist/shipping/index.d.ts.map +1 -0
- package/dist/shipping/index.js +8 -0
- package/dist/shipping/index.js.map +1 -0
- package/dist/shipping/shippo.d.ts +77 -0
- package/dist/shipping/shippo.d.ts.map +1 -0
- package/dist/shipping/shippo.js +280 -0
- package/dist/shipping/shippo.js.map +1 -0
- package/dist/theme/colors.d.ts +134 -0
- package/dist/theme/colors.d.ts.map +1 -0
- package/dist/theme/colors.js +214 -0
- package/dist/theme/colors.js.map +1 -0
- package/dist/theme/defaults.d.ts +133 -0
- package/dist/theme/defaults.d.ts.map +1 -0
- package/dist/theme/defaults.js +210 -0
- package/dist/theme/defaults.js.map +1 -0
- package/dist/theme/fonts.d.ts +28 -0
- package/dist/theme/fonts.d.ts.map +1 -0
- package/dist/theme/fonts.js +55 -0
- package/dist/theme/fonts.js.map +1 -0
- package/dist/theme/generator.d.ts +43 -0
- package/dist/theme/generator.d.ts.map +1 -0
- package/dist/theme/generator.js +272 -0
- package/dist/theme/generator.js.map +1 -0
- package/dist/theme/index.d.ts +23 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +30 -0
- package/dist/theme/index.js.map +1 -0
- package/package.json +2 -2
- /package/dist/admin/{admin-theme.css → styles/admin-theme.css} +0 -0
|
@@ -0,0 +1,384 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
/**
|
|
4
|
+
* @rovela/sdk/admin/components/ProductTable
|
|
5
|
+
*
|
|
6
|
+
* Admin product list with:
|
|
7
|
+
* - Three metric cards above the filter row (Active / Out of stock / Best
|
|
8
|
+
* seller — last 30 days, by units)
|
|
9
|
+
* - Five quick-filter chips (All · Active · Drafts · Archived · Out of stock)
|
|
10
|
+
* replacing the legacy Status dropdown — default = Active
|
|
11
|
+
* - Bulk row selection with three actions (Activate / Archive / Delete);
|
|
12
|
+
* Delete enforces the existing "must be archived first" precondition
|
|
13
|
+
* - Real inventory column with low/out-of-stock badges (replaces the
|
|
14
|
+
* hardcoded `—`); for variant products shows the summed variant
|
|
15
|
+
* inventory computed server-side via `getInventoryByProductIds`
|
|
16
|
+
*
|
|
17
|
+
* Back-compat: every existing `ProductTableProps` field is preserved.
|
|
18
|
+
*/
|
|
19
|
+
import { useState, useEffect, useCallback, useMemo } from 'react';
|
|
20
|
+
import { ImageIcon, Pencil, Trash2, CheckCircle2, Archive, X, TrendingUp, AlertTriangle, Package, } from 'lucide-react';
|
|
21
|
+
import { useAdminProducts } from '../hooks/useAdminProducts';
|
|
22
|
+
import { useAdminProductMetrics } from '../hooks/useAdminProductMetrics';
|
|
23
|
+
import { useStoreSettingsOptional } from '../../core/StoreSettingsProvider';
|
|
24
|
+
import { AdminSelect } from './AdminSelect';
|
|
25
|
+
import { DeleteConfirmDialog } from './DeleteConfirmDialog';
|
|
26
|
+
const CHIP_LABELS = {
|
|
27
|
+
all: 'All',
|
|
28
|
+
active: 'Active',
|
|
29
|
+
drafts: 'Drafts',
|
|
30
|
+
archived: 'Archived',
|
|
31
|
+
oos: 'Out of stock',
|
|
32
|
+
};
|
|
33
|
+
const CHIP_ORDER = ['all', 'active', 'drafts', 'archived', 'oos'];
|
|
34
|
+
function chipToFilter(chip) {
|
|
35
|
+
switch (chip) {
|
|
36
|
+
case 'all':
|
|
37
|
+
return {};
|
|
38
|
+
case 'active':
|
|
39
|
+
return { status: 'active' };
|
|
40
|
+
case 'drafts':
|
|
41
|
+
return { status: 'draft' };
|
|
42
|
+
case 'archived':
|
|
43
|
+
return { status: 'archived' };
|
|
44
|
+
case 'oos':
|
|
45
|
+
// Scoped to active so the table count matches the OOS metric card.
|
|
46
|
+
return { status: 'active', outOfStock: true };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function initialStatusToChip(initialStatus) {
|
|
50
|
+
if (initialStatus === 'draft')
|
|
51
|
+
return 'drafts';
|
|
52
|
+
if (initialStatus === 'archived')
|
|
53
|
+
return 'archived';
|
|
54
|
+
if (initialStatus === 'active')
|
|
55
|
+
return 'active';
|
|
56
|
+
return 'active'; // default: Active (most useful daily view)
|
|
57
|
+
}
|
|
58
|
+
// =============================================================================
|
|
59
|
+
// Status Badge
|
|
60
|
+
// =============================================================================
|
|
61
|
+
const statusBadgeClass = {
|
|
62
|
+
draft: 'admin-badge-draft',
|
|
63
|
+
active: 'admin-badge-active',
|
|
64
|
+
archived: 'admin-badge-archived',
|
|
65
|
+
};
|
|
66
|
+
function StatusBadge({ status }) {
|
|
67
|
+
const badgeClass = statusBadgeClass[status] || 'admin-badge-draft';
|
|
68
|
+
return (_jsx("span", { className: `admin-badge ${badgeClass}`, children: status.charAt(0).toUpperCase() + status.slice(1) }));
|
|
69
|
+
}
|
|
70
|
+
// =============================================================================
|
|
71
|
+
// Inventory Cell
|
|
72
|
+
// =============================================================================
|
|
73
|
+
/**
|
|
74
|
+
* Renders the inventory column. Replaces the legacy hardcoded `—`.
|
|
75
|
+
*
|
|
76
|
+
* - `trackInventory=false` AND non-variant → '—' (untracked is the only
|
|
77
|
+
* legitimate dash — the merchant explicitly opted out)
|
|
78
|
+
* - effectiveInventory === 0 → red "Out" badge
|
|
79
|
+
* - effectiveInventory <= 5 → amber "Low (N)" badge
|
|
80
|
+
* - otherwise → plain number
|
|
81
|
+
*/
|
|
82
|
+
function InventoryCell({ product: p }) {
|
|
83
|
+
const tracks = p.hasVariants || p.trackInventory !== false;
|
|
84
|
+
if (!tracks) {
|
|
85
|
+
return _jsx("span", { className: "admin-text-muted", children: "\u2014" });
|
|
86
|
+
}
|
|
87
|
+
const inv = p.effectiveInventory ?? 0;
|
|
88
|
+
if (inv <= 0) {
|
|
89
|
+
return _jsx("span", { className: "admin-badge admin-badge-out-of-stock", children: "Out" });
|
|
90
|
+
}
|
|
91
|
+
if (inv <= 5) {
|
|
92
|
+
return (_jsxs("span", { className: "admin-badge admin-badge-low-stock", children: ["Low (", inv, ")"] }));
|
|
93
|
+
}
|
|
94
|
+
return _jsx("span", { className: "admin-text", children: inv });
|
|
95
|
+
}
|
|
96
|
+
// =============================================================================
|
|
97
|
+
// Metric Cards
|
|
98
|
+
// =============================================================================
|
|
99
|
+
function MetricCard({ label, primary, secondary, icon: Icon, isLoading, href, onClick, }) {
|
|
100
|
+
const Wrapper = onClick
|
|
101
|
+
? 'button'
|
|
102
|
+
: href
|
|
103
|
+
? 'a'
|
|
104
|
+
: 'div';
|
|
105
|
+
const wrapperProps = onClick
|
|
106
|
+
? { type: 'button', onClick }
|
|
107
|
+
: href
|
|
108
|
+
? { href }
|
|
109
|
+
: {};
|
|
110
|
+
return (_jsx(Wrapper, { ...wrapperProps, className: "admin-stat-card admin-stat-card-clickable", children: _jsxs("div", { className: "admin-stat-content", children: [_jsxs("div", { className: "admin-stat-text", children: [_jsx("p", { className: "admin-stat-label", children: label }), isLoading ? (_jsx("div", { className: "admin-skeleton", style: { height: '2.25rem', width: '7rem' } })) : (_jsx("p", { className: "admin-stat-value", children: primary })), secondary && !isLoading && (_jsx("p", { className: "admin-stat-secondary", children: secondary }))] }), _jsx("div", { className: "admin-stat-icon", children: _jsx(Icon, {}) })] }) }));
|
|
111
|
+
}
|
|
112
|
+
function ProductMetricsCards({ metrics, isLoading, currency, locale, onActiveClick, onOutOfStockClick, onBestSellerClick, }) {
|
|
113
|
+
const formatRevenue = (value) => {
|
|
114
|
+
const n = parseFloat(value);
|
|
115
|
+
if (!Number.isFinite(n))
|
|
116
|
+
return '';
|
|
117
|
+
return new Intl.NumberFormat(locale, {
|
|
118
|
+
style: 'currency',
|
|
119
|
+
currency,
|
|
120
|
+
minimumFractionDigits: 0,
|
|
121
|
+
maximumFractionDigits: 0,
|
|
122
|
+
}).format(n);
|
|
123
|
+
};
|
|
124
|
+
return (_jsxs("div", { className: "admin-stats-grid admin-stats-grid-3 admin-stats-grid-compact", children: [_jsx(MetricCard, { label: "Active products", primary: metrics?.activeCount.toLocaleString() ?? '0', icon: Package, isLoading: isLoading, onClick: onActiveClick }), _jsx(MetricCard, { label: "Out of stock", primary: metrics?.outOfStockCount.toLocaleString() ?? '0', secondary: metrics && metrics.outOfStockCount > 0
|
|
125
|
+
? 'Restock to keep selling'
|
|
126
|
+
: undefined, icon: AlertTriangle, isLoading: isLoading, onClick: onOutOfStockClick }), _jsx(MetricCard, { label: "Best seller (30 d)", primary: metrics?.bestSeller ? (_jsx("span", { className: "admin-stat-value-name", title: metrics.bestSeller.name, children: metrics.bestSeller.name })) : (_jsx("span", { className: "admin-text-muted", style: { fontSize: '1.125rem' }, children: "No sales yet" })), secondary: metrics?.bestSeller
|
|
127
|
+
? `${metrics.bestSeller.unitsSold} units · ${formatRevenue(metrics.bestSeller.revenue)}`
|
|
128
|
+
: 'Your top product appears after the first order', icon: TrendingUp, isLoading: isLoading, onClick: metrics?.bestSeller
|
|
129
|
+
? () => onBestSellerClick(metrics.bestSeller.id)
|
|
130
|
+
: undefined })] }));
|
|
131
|
+
}
|
|
132
|
+
// =============================================================================
|
|
133
|
+
// Chip Row
|
|
134
|
+
// =============================================================================
|
|
135
|
+
function ChipRow({ active, onChange, disabled, }) {
|
|
136
|
+
return (_jsx("div", { className: "admin-chip-row", role: "tablist", "aria-label": "Quick filters", children: CHIP_ORDER.map((chip) => {
|
|
137
|
+
const isActive = chip === active;
|
|
138
|
+
return (_jsx("button", { type: "button", role: "tab", "aria-selected": isActive, disabled: disabled, onClick: () => onChange(chip), className: `admin-chip ${isActive ? 'admin-chip-active' : ''}`, children: CHIP_LABELS[chip] }, chip));
|
|
139
|
+
}) }));
|
|
140
|
+
}
|
|
141
|
+
// =============================================================================
|
|
142
|
+
// Bulk Action Bar
|
|
143
|
+
// =============================================================================
|
|
144
|
+
function BulkActionBar({ count, selectedAreAllArchived, isProcessing, onActivate, onArchive, onDelete, onClear, }) {
|
|
145
|
+
return (_jsxs("div", { className: "admin-bulk-bar", role: "region", "aria-label": "Bulk actions", children: [_jsxs("div", { className: "admin-bulk-bar-count", children: [_jsx(CheckCircle2, { className: "h-4 w-4" }), _jsxs("span", { children: [_jsx("strong", { children: count }), " selected"] })] }), _jsxs("div", { className: "admin-bulk-bar-actions", children: [_jsxs("button", { type: "button", onClick: onActivate, disabled: isProcessing, className: "admin-btn admin-btn-secondary admin-btn-sm", children: [_jsx(CheckCircle2, { className: "h-4 w-4" }), "Activate"] }), _jsxs("button", { type: "button", onClick: onArchive, disabled: isProcessing, className: "admin-btn admin-btn-secondary admin-btn-sm", children: [_jsx(Archive, { className: "h-4 w-4" }), "Archive"] }), _jsxs("button", { type: "button", onClick: onDelete, disabled: isProcessing || !selectedAreAllArchived, title: selectedAreAllArchived
|
|
146
|
+
? 'Permanently delete selected'
|
|
147
|
+
: 'Archive these products first, then delete', className: "admin-btn admin-btn-danger admin-btn-sm", children: [_jsx(Trash2, { className: "h-4 w-4" }), "Delete"] }), _jsx("button", { type: "button", onClick: onClear, disabled: isProcessing, "aria-label": "Clear selection", className: "admin-bulk-bar-clear", children: _jsx(X, { className: "h-4 w-4" }) })] })] }));
|
|
148
|
+
}
|
|
149
|
+
function ProductRow({ product: p, isSelected, onToggleSelect, onProductClick, onDeleteClick, formatCurrency, }) {
|
|
150
|
+
return (_jsxs("tr", { className: `admin-table-row ${isSelected ? 'admin-table-row-selected' : ''}`, children: [_jsx("td", { className: "px-4 py-4 w-12", children: _jsx("input", { type: "checkbox", className: "admin-checkbox", checked: isSelected, onChange: () => onToggleSelect(p.id), "aria-label": `Select ${p.name}` }) }), _jsx("td", { className: "px-6 py-4", children: _jsxs("div", { className: "flex items-center gap-3", children: [p.images?.[0] ? (
|
|
151
|
+
// 40px admin-only thumbnail; next/image's perf wins don't apply at this scale
|
|
152
|
+
// eslint-disable-next-line @next/next/no-img-element
|
|
153
|
+
_jsx("img", { src: p.images[0], alt: p.name, className: "h-10 w-10 rounded object-cover" })) : (_jsx("div", { className: "admin-image-placeholder h-10 w-10 rounded", children: _jsx(ImageIcon, { className: "h-5 w-5", strokeWidth: 1.5 }) })), _jsx("a", { href: `/admin/products/${p.id}`, onClick: (e) => {
|
|
154
|
+
if (onProductClick) {
|
|
155
|
+
e.preventDefault();
|
|
156
|
+
onProductClick(p.id);
|
|
157
|
+
}
|
|
158
|
+
}, className: "admin-inventory-item-link", children: p.name })] }) }), _jsx("td", { className: "px-6 py-4", children: _jsx(StatusBadge, { status: p.status }) }), _jsx("td", { className: "px-6 py-4 text-sm font-medium", children: formatCurrency(p.price) }), _jsx("td", { className: "px-6 py-4 text-sm", children: _jsx(InventoryCell, { product: p }) }), _jsx("td", { className: "px-6 py-4", children: _jsxs("div", { className: "flex items-center justify-end gap-2", children: [_jsx("a", { href: `/admin/products/${p.id}`, onClick: (e) => {
|
|
159
|
+
if (onProductClick) {
|
|
160
|
+
e.preventDefault();
|
|
161
|
+
onProductClick(p.id);
|
|
162
|
+
}
|
|
163
|
+
}, className: "p-2 rounded-md hover:bg-[hsl(var(--admin-background-subtle))] text-[hsl(var(--admin-foreground-muted))] hover:text-[hsl(var(--admin-foreground))] transition-colors", "aria-label": "Edit product", children: _jsx(Pencil, { className: "h-4 w-4" }) }), _jsx("button", { type: "button", onClick: () => onDeleteClick(p.id, p.name), className: "p-2 rounded-md hover:bg-[hsl(var(--admin-error)/0.1)] text-[hsl(var(--admin-foreground-muted))] hover:text-[hsl(var(--admin-error))] transition-colors", "aria-label": "Delete product", children: _jsx(Trash2, { className: "h-4 w-4" }) })] }) })] }));
|
|
164
|
+
}
|
|
165
|
+
// =============================================================================
|
|
166
|
+
// Component
|
|
167
|
+
// =============================================================================
|
|
168
|
+
/**
|
|
169
|
+
* Products data table with metrics row, quick-filter chips, bulk actions,
|
|
170
|
+
* and a real inventory column.
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```tsx
|
|
174
|
+
* <ProductTable
|
|
175
|
+
* onProductClick={(id) => router.push(`/admin/products/${id}`)}
|
|
176
|
+
* />
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
export function ProductTable({ initialSearch, initialCategory, initialStatus, pageSize = 20, onProductClick, className = '', }) {
|
|
180
|
+
const { products, total, page, isLoading, fetchProducts, deleteProduct, bulkAction, } = useAdminProducts();
|
|
181
|
+
const { metrics, isLoading: isMetricsLoading, fetchMetrics } = useAdminProductMetrics();
|
|
182
|
+
// Get currency from context
|
|
183
|
+
const storeSettings = useStoreSettingsOptional();
|
|
184
|
+
const resolvedCurrency = storeSettings?.currency ?? 'USD';
|
|
185
|
+
const resolvedLocale = storeSettings?.locale ?? 'en-US';
|
|
186
|
+
// Filter state
|
|
187
|
+
const [search, setSearch] = useState(initialSearch || '');
|
|
188
|
+
const [chip, setChip] = useState(() => initialStatusToChip(initialStatus));
|
|
189
|
+
const [sort, setSort] = useState('newest');
|
|
190
|
+
// Selection state — tracked as a Set of product IDs on the current page
|
|
191
|
+
const [selected, setSelected] = useState(new Set());
|
|
192
|
+
const [isProcessing, setIsProcessing] = useState(false);
|
|
193
|
+
// Single-row delete dialog
|
|
194
|
+
const [deleteTarget, setDeleteTarget] = useState(null);
|
|
195
|
+
const [isDeleting, setIsDeleting] = useState(false);
|
|
196
|
+
const [deleteError, setDeleteError] = useState(null);
|
|
197
|
+
// Bulk confirmation dialog
|
|
198
|
+
const [bulkConfirm, setBulkConfirm] = useState(null);
|
|
199
|
+
// Derived: are all selected products already archived? Drives the Delete
|
|
200
|
+
// button enable state in the bulk bar.
|
|
201
|
+
const selectedAreAllArchived = useMemo(() => {
|
|
202
|
+
if (selected.size === 0)
|
|
203
|
+
return false;
|
|
204
|
+
for (const p of products) {
|
|
205
|
+
if (selected.has(p.id) && p.status !== 'archived')
|
|
206
|
+
return false;
|
|
207
|
+
}
|
|
208
|
+
return true;
|
|
209
|
+
}, [selected, products]);
|
|
210
|
+
// Fetch products on filter change.
|
|
211
|
+
// Pattern A — reset internal selection on filter prop changes.
|
|
212
|
+
// Alternative is `<ProductTable key={filterSignature}/>` parent remount.
|
|
213
|
+
useEffect(() => {
|
|
214
|
+
const filter = chipToFilter(chip);
|
|
215
|
+
fetchProducts({
|
|
216
|
+
search: search || undefined,
|
|
217
|
+
category: initialCategory || undefined,
|
|
218
|
+
status: filter.status,
|
|
219
|
+
outOfStock: filter.outOfStock,
|
|
220
|
+
sort,
|
|
221
|
+
page: 1,
|
|
222
|
+
limit: pageSize,
|
|
223
|
+
});
|
|
224
|
+
// Clear selection on filter change so the user doesn't accidentally
|
|
225
|
+
// bulk-act on rows they can't see.
|
|
226
|
+
// eslint-disable-next-line react-hooks/set-state-in-effect
|
|
227
|
+
setSelected(new Set());
|
|
228
|
+
}, [search, chip, sort, pageSize, initialCategory, fetchProducts]);
|
|
229
|
+
// One-time metric fetch on mount (re-fetched after every successful action)
|
|
230
|
+
useEffect(() => {
|
|
231
|
+
fetchMetrics();
|
|
232
|
+
}, [fetchMetrics]);
|
|
233
|
+
const refetchAll = useCallback(() => {
|
|
234
|
+
const filter = chipToFilter(chip);
|
|
235
|
+
fetchProducts({
|
|
236
|
+
search: search || undefined,
|
|
237
|
+
category: initialCategory || undefined,
|
|
238
|
+
status: filter.status,
|
|
239
|
+
outOfStock: filter.outOfStock,
|
|
240
|
+
sort,
|
|
241
|
+
page,
|
|
242
|
+
limit: pageSize,
|
|
243
|
+
});
|
|
244
|
+
fetchMetrics();
|
|
245
|
+
}, [
|
|
246
|
+
chip,
|
|
247
|
+
search,
|
|
248
|
+
sort,
|
|
249
|
+
page,
|
|
250
|
+
pageSize,
|
|
251
|
+
initialCategory,
|
|
252
|
+
fetchProducts,
|
|
253
|
+
fetchMetrics,
|
|
254
|
+
]);
|
|
255
|
+
const handlePageChange = useCallback((newPage) => {
|
|
256
|
+
const filter = chipToFilter(chip);
|
|
257
|
+
fetchProducts({
|
|
258
|
+
search: search || undefined,
|
|
259
|
+
category: initialCategory || undefined,
|
|
260
|
+
status: filter.status,
|
|
261
|
+
outOfStock: filter.outOfStock,
|
|
262
|
+
sort,
|
|
263
|
+
page: newPage,
|
|
264
|
+
limit: pageSize,
|
|
265
|
+
});
|
|
266
|
+
setSelected(new Set());
|
|
267
|
+
}, [search, chip, sort, pageSize, initialCategory, fetchProducts]);
|
|
268
|
+
// ---- Selection handlers ------------------------------------------------
|
|
269
|
+
const handleToggleSelect = useCallback((id) => {
|
|
270
|
+
setSelected((prev) => {
|
|
271
|
+
const next = new Set(prev);
|
|
272
|
+
if (next.has(id))
|
|
273
|
+
next.delete(id);
|
|
274
|
+
else
|
|
275
|
+
next.add(id);
|
|
276
|
+
return next;
|
|
277
|
+
});
|
|
278
|
+
}, []);
|
|
279
|
+
const handleSelectAllOnPage = useCallback(() => {
|
|
280
|
+
setSelected((prev) => {
|
|
281
|
+
// If already all selected on the page, clear; else select all on page.
|
|
282
|
+
const allSelected = products.length > 0 && products.every((p) => prev.has(p.id));
|
|
283
|
+
if (allSelected)
|
|
284
|
+
return new Set();
|
|
285
|
+
const next = new Set(prev);
|
|
286
|
+
for (const p of products)
|
|
287
|
+
next.add(p.id);
|
|
288
|
+
return next;
|
|
289
|
+
});
|
|
290
|
+
}, [products]);
|
|
291
|
+
const handleClearSelection = useCallback(() => {
|
|
292
|
+
setSelected(new Set());
|
|
293
|
+
}, []);
|
|
294
|
+
// ---- Single-row delete (existing flow, unchanged) -----------------------
|
|
295
|
+
const handleDeleteClick = useCallback((id, name) => {
|
|
296
|
+
setDeleteTarget({ id, name });
|
|
297
|
+
setDeleteError(null);
|
|
298
|
+
}, []);
|
|
299
|
+
const handleDeleteConfirm = useCallback(async () => {
|
|
300
|
+
if (!deleteTarget)
|
|
301
|
+
return;
|
|
302
|
+
setIsDeleting(true);
|
|
303
|
+
setDeleteError(null);
|
|
304
|
+
const result = await deleteProduct(deleteTarget.id);
|
|
305
|
+
setIsDeleting(false);
|
|
306
|
+
if (result.success) {
|
|
307
|
+
setDeleteTarget(null);
|
|
308
|
+
refetchAll();
|
|
309
|
+
}
|
|
310
|
+
else {
|
|
311
|
+
setDeleteError(result.error ?? 'Failed to delete product. Please try again.');
|
|
312
|
+
}
|
|
313
|
+
}, [deleteTarget, deleteProduct, refetchAll]);
|
|
314
|
+
const handleDeleteCancel = useCallback(() => {
|
|
315
|
+
if (!isDeleting) {
|
|
316
|
+
setDeleteTarget(null);
|
|
317
|
+
setDeleteError(null);
|
|
318
|
+
}
|
|
319
|
+
}, [isDeleting]);
|
|
320
|
+
// ---- Bulk actions ------------------------------------------------------
|
|
321
|
+
const performBulk = useCallback(async (action) => {
|
|
322
|
+
const ids = Array.from(selected);
|
|
323
|
+
if (ids.length === 0)
|
|
324
|
+
return;
|
|
325
|
+
setIsProcessing(true);
|
|
326
|
+
const result = await bulkAction(ids, action);
|
|
327
|
+
setIsProcessing(false);
|
|
328
|
+
setBulkConfirm(null);
|
|
329
|
+
// Refresh the page + metrics regardless of partial-success outcome.
|
|
330
|
+
refetchAll();
|
|
331
|
+
setSelected(new Set());
|
|
332
|
+
// Surface partial failures via console — the parent app can wire a toast
|
|
333
|
+
// by inspecting the hook return if needed. We deliberately don't throw
|
|
334
|
+
// because the SDK shouldn't depend on a toast library.
|
|
335
|
+
if (result.failed.length > 0) {
|
|
336
|
+
console.warn(`[ProductTable] Bulk ${action}: ${result.succeeded.length} succeeded, ${result.failed.length} failed`, result.failed);
|
|
337
|
+
}
|
|
338
|
+
}, [selected, bulkAction, refetchAll]);
|
|
339
|
+
const handleActivate = useCallback(() => performBulk('activate'), [performBulk]);
|
|
340
|
+
const handleArchive = useCallback(() => setBulkConfirm('archive'), []);
|
|
341
|
+
const handleDeleteBulk = useCallback(() => setBulkConfirm('delete'), []);
|
|
342
|
+
const confirmBulk = useCallback(() => {
|
|
343
|
+
if (bulkConfirm === 'archive')
|
|
344
|
+
performBulk('archive');
|
|
345
|
+
else if (bulkConfirm === 'delete')
|
|
346
|
+
performBulk('delete');
|
|
347
|
+
}, [bulkConfirm, performBulk]);
|
|
348
|
+
const cancelBulkConfirm = useCallback(() => {
|
|
349
|
+
if (!isProcessing)
|
|
350
|
+
setBulkConfirm(null);
|
|
351
|
+
}, [isProcessing]);
|
|
352
|
+
// ---- Metric card click-throughs ----------------------------------------
|
|
353
|
+
const handleActiveCardClick = useCallback(() => setChip('active'), []);
|
|
354
|
+
const handleOosCardClick = useCallback(() => setChip('oos'), []);
|
|
355
|
+
const handleBestSellerCardClick = useCallback((id) => {
|
|
356
|
+
if (onProductClick)
|
|
357
|
+
onProductClick(id);
|
|
358
|
+
else
|
|
359
|
+
window.location.href = `/admin/products/${id}`;
|
|
360
|
+
}, [onProductClick]);
|
|
361
|
+
// ---- Helpers -----------------------------------------------------------
|
|
362
|
+
const formatCurrency = (value) => {
|
|
363
|
+
return new Intl.NumberFormat(resolvedLocale, {
|
|
364
|
+
style: 'currency',
|
|
365
|
+
currency: resolvedCurrency,
|
|
366
|
+
}).format(parseFloat(value));
|
|
367
|
+
};
|
|
368
|
+
const totalPages = Math.ceil(total / pageSize);
|
|
369
|
+
const allOnPageSelected = products.length > 0 && products.every((p) => selected.has(p.id));
|
|
370
|
+
const someOnPageSelected = products.length > 0 && products.some((p) => selected.has(p.id));
|
|
371
|
+
return (_jsxs("div", { className: `space-y-4 ${className}`, children: [_jsx(ProductMetricsCards, { metrics: metrics, isLoading: isMetricsLoading, currency: resolvedCurrency, locale: resolvedLocale, onActiveClick: handleActiveCardClick, onOutOfStockClick: handleOosCardClick, onBestSellerClick: handleBestSellerCardClick }), selected.size > 0 ? (_jsx(BulkActionBar, { count: selected.size, selectedAreAllArchived: selectedAreAllArchived, isProcessing: isProcessing, onActivate: handleActivate, onArchive: handleArchive, onDelete: handleDeleteBulk, onClear: handleClearSelection })) : (_jsxs(_Fragment, { children: [_jsx(ChipRow, { active: chip, onChange: setChip, disabled: isLoading }), _jsxs("div", { className: "admin-filter-bar", children: [_jsx("input", { type: "text", value: search, onChange: (e) => setSearch(e.target.value), placeholder: "Search products...", className: "admin-filter-search" }), _jsx(AdminSelect, { value: sort, onChange: (value) => setSort(value), options: [
|
|
372
|
+
{ value: 'newest', label: 'Newest' },
|
|
373
|
+
{ value: 'name', label: 'Name' },
|
|
374
|
+
{ value: 'price-asc', label: 'Price: Low to High' },
|
|
375
|
+
{ value: 'price-desc', label: 'Price: High to Low' },
|
|
376
|
+
], className: "w-[170px]" })] })] })), _jsxs("div", { className: "admin-card overflow-hidden", children: [_jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "admin-table w-full", children: [_jsx("thead", { children: _jsxs("tr", { className: "admin-table-header", children: [_jsx("th", { className: "px-4 py-3 w-12 text-left", children: _jsx("input", { type: "checkbox", className: "admin-checkbox", checked: allOnPageSelected, ref: (el) => {
|
|
377
|
+
if (el)
|
|
378
|
+
el.indeterminate =
|
|
379
|
+
someOnPageSelected && !allOnPageSelected;
|
|
380
|
+
}, onChange: handleSelectAllOnPage, "aria-label": "Select all products on this page" }) }), _jsx("th", { className: "px-6 py-3 text-left", children: "Product" }), _jsx("th", { className: "px-6 py-3 text-left", children: "Status" }), _jsx("th", { className: "px-6 py-3 text-left", children: "Price" }), _jsx("th", { className: "px-6 py-3 text-left", children: "Inventory" }), _jsx("th", { className: "px-6 py-3 text-right", children: "Actions" })] }) }), _jsx("tbody", { children: isLoading ? ([...Array(5)].map((_, i) => (_jsxs("tr", { className: "admin-table-row", children: [_jsx("td", { className: "px-4 py-4 w-12", children: _jsx("div", { className: "admin-skeleton admin-skeleton-md w-4 rounded" }) }), _jsx("td", { className: "px-6 py-4", children: _jsxs("div", { className: "flex items-center gap-3", children: [_jsx("div", { className: "admin-skeleton admin-skeleton-xl w-10 rounded" }), _jsx("div", { className: "admin-skeleton admin-skeleton-md w-32 rounded" })] }) }), _jsx("td", { className: "px-6 py-4", children: _jsx("div", { className: "admin-skeleton admin-skeleton-lg w-16 rounded" }) }), _jsx("td", { className: "px-6 py-4", children: _jsx("div", { className: "admin-skeleton admin-skeleton-md w-16 rounded" }) }), _jsx("td", { className: "px-6 py-4", children: _jsx("div", { className: "admin-skeleton admin-skeleton-md w-12 rounded" }) }), _jsx("td", { className: "px-6 py-4", children: _jsx("div", { className: "admin-skeleton admin-skeleton-md w-20 rounded" }) })] }, i)))) : products.length === 0 ? (_jsx("tr", { children: _jsx("td", { colSpan: 6, className: "px-6 py-12 text-center admin-empty-text", children: "No products found" }) })) : (products.map((product) => (_jsx(ProductRow, { product: product, isSelected: selected.has(product.id), onToggleSelect: handleToggleSelect, onProductClick: onProductClick, onDeleteClick: handleDeleteClick, formatCurrency: formatCurrency }, product.id)))) })] }) }), totalPages > 1 && (_jsxs("div", { className: "admin-pagination px-6", children: [_jsxs("p", { className: "admin-pagination-info", children: ["Showing ", (page - 1) * pageSize + 1, " to", ' ', Math.min(page * pageSize, total), " of ", total] }), _jsxs("div", { className: "admin-pagination-controls", children: [_jsx("button", { onClick: () => handlePageChange(page - 1), disabled: page === 1, className: "admin-btn admin-btn-secondary admin-btn-sm disabled:opacity-50", children: "Previous" }), _jsx("button", { onClick: () => handlePageChange(page + 1), disabled: page >= totalPages, className: "admin-btn admin-btn-secondary admin-btn-sm disabled:opacity-50", children: "Next" })] })] }))] }), _jsx(DeleteConfirmDialog, { isOpen: !!deleteTarget, title: "Delete Product", itemName: deleteTarget?.name || '', itemType: "product", isDeleting: isDeleting, error: deleteError, onConfirm: handleDeleteConfirm, onCancel: handleDeleteCancel }), _jsx(DeleteConfirmDialog, { isOpen: bulkConfirm !== null, title: bulkConfirm === 'delete'
|
|
381
|
+
? `Delete ${selected.size} product${selected.size === 1 ? '' : 's'}`
|
|
382
|
+
: `Archive ${selected.size} product${selected.size === 1 ? '' : 's'}`, itemName: `${selected.size} selected product${selected.size === 1 ? '' : 's'}`, itemType: "product", isDeleting: isProcessing, error: null, onConfirm: confirmBulk, onCancel: cancelBulkConfirm })] }));
|
|
383
|
+
}
|
|
384
|
+
//# sourceMappingURL=ProductTable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProductTable.js","sourceRoot":"","sources":["../../../src/admin/components/ProductTable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { RecentOrdersProps } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Recent orders widget for dashboard with Rovela admin styling.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```tsx
|
|
7
|
+
* <RecentOrders limit={5} viewAllHref="/admin/orders" />
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
export declare function RecentOrders({ limit, viewAllHref, className, }: RecentOrdersProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=RecentOrders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecentOrders.d.ts","sourceRoot":"","sources":["../../../src/admin/components/RecentOrders.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AA6BjD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAS,EACT,WAA6B,EAC7B,SAAc,GACf,EAAE,iBAAiB,2CA0GnB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
/**
|
|
4
|
+
* @rovela/sdk/admin/components/RecentOrders
|
|
5
|
+
*
|
|
6
|
+
* Recent orders table for dashboard with Rovela admin theme styling.
|
|
7
|
+
* Uses pure CSS for hover states - no React state handlers.
|
|
8
|
+
*/
|
|
9
|
+
import { ChevronRight, ShoppingBag } from 'lucide-react';
|
|
10
|
+
import { useAdminStats } from '../hooks/useAdminStats';
|
|
11
|
+
import { useStoreSettingsOptional } from '../../core/StoreSettingsProvider';
|
|
12
|
+
// =============================================================================
|
|
13
|
+
// Status Badge - Pure CSS Classes
|
|
14
|
+
// =============================================================================
|
|
15
|
+
const statusBadgeClass = {
|
|
16
|
+
pending: 'admin-badge-pending',
|
|
17
|
+
paid: 'admin-badge-paid',
|
|
18
|
+
shipped: 'admin-badge-shipped',
|
|
19
|
+
delivered: 'admin-badge-delivered',
|
|
20
|
+
cancelled: 'admin-badge-cancelled',
|
|
21
|
+
refunded: 'admin-badge-refunded',
|
|
22
|
+
};
|
|
23
|
+
function StatusBadge({ status }) {
|
|
24
|
+
const badgeClass = statusBadgeClass[status] || 'admin-badge-neutral';
|
|
25
|
+
return (_jsx("span", { className: `admin-badge ${badgeClass}`, children: status.charAt(0).toUpperCase() + status.slice(1) }));
|
|
26
|
+
}
|
|
27
|
+
// =============================================================================
|
|
28
|
+
// Component
|
|
29
|
+
// =============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Recent orders widget for dashboard with Rovela admin styling.
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```tsx
|
|
35
|
+
* <RecentOrders limit={5} viewAllHref="/admin/orders" />
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export function RecentOrders({ limit = 5, viewAllHref = '/admin/orders', className = '', }) {
|
|
39
|
+
const { recentOrders, isLoading } = useAdminStats({
|
|
40
|
+
recentOrdersLimit: limit,
|
|
41
|
+
});
|
|
42
|
+
// Get currency from context
|
|
43
|
+
const storeSettings = useStoreSettingsOptional();
|
|
44
|
+
const resolvedCurrency = storeSettings?.currency ?? 'USD';
|
|
45
|
+
const resolvedLocale = storeSettings?.locale ?? 'en-US';
|
|
46
|
+
const formatDate = (dateString) => {
|
|
47
|
+
const date = new Date(dateString);
|
|
48
|
+
return date.toLocaleDateString(resolvedLocale, {
|
|
49
|
+
month: 'short',
|
|
50
|
+
day: 'numeric',
|
|
51
|
+
hour: '2-digit',
|
|
52
|
+
minute: '2-digit',
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
const formatCurrency = (value) => {
|
|
56
|
+
return new Intl.NumberFormat(resolvedLocale, {
|
|
57
|
+
style: 'currency',
|
|
58
|
+
currency: resolvedCurrency,
|
|
59
|
+
}).format(parseFloat(value));
|
|
60
|
+
};
|
|
61
|
+
return (_jsxs("div", { className: `admin-card ${className}`, children: [_jsxs("div", { className: "admin-widget-header", children: [_jsxs("div", { children: [_jsx("h3", { className: "admin-widget-title", children: "Recent Orders" }), _jsx("p", { className: "admin-widget-subtitle", children: "Latest customer orders" })] }), _jsxs("a", { href: viewAllHref, className: "admin-view-all-link", children: ["View all", _jsx(ChevronRight, { className: "h-4 w-4" })] })] }), _jsx("div", { className: "overflow-x-auto", children: isLoading ? (_jsx("div", { className: "p-6", children: _jsx("div", { className: "space-y-4", children: [...Array(limit)].map((_, i) => (_jsxs("div", { className: "flex items-center gap-4", children: [_jsx("div", { className: "admin-skeleton admin-skeleton-md w-24 rounded" }), _jsx("div", { className: "admin-skeleton admin-skeleton-md w-32 rounded" }), _jsx("div", { className: "admin-skeleton admin-skeleton-lg w-16 rounded" }), _jsx("div", { className: "admin-skeleton admin-skeleton-md w-20 rounded" })] }, i))) }) })) : recentOrders.length === 0 ? (_jsxs("div", { className: "admin-empty-state py-12", children: [_jsx(ShoppingBag, { className: "admin-empty-icon h-12 w-12", strokeWidth: 1 }), _jsx("p", { className: "admin-empty-text mt-4 text-sm", children: "No orders yet" }), _jsx("p", { className: "admin-empty-subtext text-xs", children: "Orders will appear here as they come in" })] })) : (_jsxs("table", { className: "admin-table w-full", children: [_jsx("thead", { children: _jsxs("tr", { className: "admin-table-header", children: [_jsx("th", { className: "px-6 py-3", children: "Order" }), _jsx("th", { className: "px-6 py-3", children: "Customer" }), _jsx("th", { className: "px-6 py-3", children: "Status" }), _jsx("th", { className: "px-6 py-3 text-right", children: "Total" }), _jsx("th", { className: "px-6 py-3 text-right", children: "Date" })] }) }), _jsx("tbody", { children: recentOrders.map((order) => (_jsxs("tr", { className: "admin-table-row", children: [_jsx("td", { className: "whitespace-nowrap px-6 py-4", children: _jsxs("a", { href: `/admin/orders/${order.id}`, className: "admin-table-row-link", children: ["#", order.id.slice(-8).toUpperCase()] }) }), _jsx("td", { className: "whitespace-nowrap px-6 py-4 text-sm", children: order.email }), _jsx("td", { className: "whitespace-nowrap px-6 py-4", children: _jsx(StatusBadge, { status: order.status }) }), _jsx("td", { className: "whitespace-nowrap px-6 py-4 text-right text-sm font-medium", children: formatCurrency(order.total) }), _jsx("td", { className: "whitespace-nowrap px-6 py-4 text-right text-sm admin-text-muted", children: formatDate(order.createdAt) })] }, order.id))) })] })) })] }));
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=RecentOrders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RecentOrders.js","sourceRoot":"","sources":["../../../src/admin/components/RecentOrders.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { RefundDialogProps } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Refund dialog for processing order refunds.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```tsx
|
|
7
|
+
* <RefundDialog
|
|
8
|
+
* orderId="123"
|
|
9
|
+
* orderTotal="99.99"
|
|
10
|
+
* isOpen={showRefund}
|
|
11
|
+
* onClose={() => setShowRefund(false)}
|
|
12
|
+
* onSuccess={() => refetchOrder()}
|
|
13
|
+
* />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare function RefundDialog({ orderId, orderTotal, isOpen, onClose, onSuccess, }: RefundDialogProps): import("react/jsx-runtime").JSX.Element | null;
|
|
17
|
+
//# sourceMappingURL=RefundDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RefundDialog.d.ts","sourceRoot":"","sources":["../../../src/admin/components/RefundDialog.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAMjD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,UAAU,EACV,MAAM,EACN,OAAO,EACP,SAAS,GACV,EAAE,iBAAiB,kDA4JnB"}
|