@rovela-ai/sdk 0.3.34 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/{styles/admin-theme.css → admin-theme.css} +1 -46
- package/dist/checkout/index.d.ts +1 -1
- package/dist/checkout/index.d.ts.map +1 -1
- package/dist/checkout/server/create-checkout-session.d.ts +10 -1
- package/dist/checkout/server/create-checkout-session.d.ts.map +1 -1
- package/dist/checkout/server/create-checkout-session.js +28 -17
- package/dist/checkout/server/create-checkout-session.js.map +1 -1
- package/dist/checkout/server/handle-webhook.d.ts.map +1 -1
- package/dist/checkout/server/handle-webhook.js +24 -26
- package/dist/checkout/server/handle-webhook.js.map +1 -1
- package/dist/checkout/server/order-service.d.ts +8 -3
- package/dist/checkout/server/order-service.d.ts.map +1 -1
- package/dist/checkout/server/order-service.js +60 -14
- package/dist/checkout/server/order-service.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/package.json +1 -2
- package/dist/admin/api/accept-invite.d.ts +0 -65
- package/dist/admin/api/accept-invite.d.ts.map +0 -1
- package/dist/admin/api/accept-invite.js +0 -115
- package/dist/admin/api/accept-invite.js.map +0 -1
- package/dist/admin/api/auth.d.ts +0 -32
- package/dist/admin/api/auth.d.ts.map +0 -1
- package/dist/admin/api/auth.js +0 -37
- package/dist/admin/api/auth.js.map +0 -1
- package/dist/admin/api/categories.d.ts +0 -68
- package/dist/admin/api/categories.d.ts.map +0 -1
- package/dist/admin/api/categories.js +0 -266
- package/dist/admin/api/categories.js.map +0 -1
- package/dist/admin/api/check.d.ts +0 -38
- package/dist/admin/api/check.d.ts.map +0 -1
- package/dist/admin/api/check.js +0 -49
- package/dist/admin/api/check.js.map +0 -1
- package/dist/admin/api/customers.d.ts +0 -77
- package/dist/admin/api/customers.d.ts.map +0 -1
- package/dist/admin/api/customers.js +0 -219
- package/dist/admin/api/customers.js.map +0 -1
- package/dist/admin/api/forgot-password.d.ts +0 -39
- package/dist/admin/api/forgot-password.d.ts.map +0 -1
- package/dist/admin/api/forgot-password.js +0 -66
- package/dist/admin/api/forgot-password.js.map +0 -1
- package/dist/admin/api/index.d.ts +0 -107
- package/dist/admin/api/index.d.ts.map +0 -1
- package/dist/admin/api/index.js +0 -127
- package/dist/admin/api/index.js.map +0 -1
- package/dist/admin/api/linked-customer.d.ts +0 -32
- package/dist/admin/api/linked-customer.d.ts.map +0 -1
- package/dist/admin/api/linked-customer.js +0 -45
- package/dist/admin/api/linked-customer.js.map +0 -1
- package/dist/admin/api/me.d.ts +0 -72
- package/dist/admin/api/me.d.ts.map +0 -1
- package/dist/admin/api/me.js +0 -177
- package/dist/admin/api/me.js.map +0 -1
- package/dist/admin/api/orders.d.ts +0 -91
- package/dist/admin/api/orders.d.ts.map +0 -1
- package/dist/admin/api/orders.js +0 -390
- package/dist/admin/api/orders.js.map +0 -1
- package/dist/admin/api/products-bulk.d.ts +0 -38
- package/dist/admin/api/products-bulk.d.ts.map +0 -1
- package/dist/admin/api/products-bulk.js +0 -135
- package/dist/admin/api/products-bulk.js.map +0 -1
- package/dist/admin/api/products-stats.d.ts +0 -34
- package/dist/admin/api/products-stats.d.ts.map +0 -1
- package/dist/admin/api/products-stats.js +0 -43
- package/dist/admin/api/products-stats.js.map +0 -1
- package/dist/admin/api/products.d.ts +0 -104
- package/dist/admin/api/products.d.ts.map +0 -1
- package/dist/admin/api/products.js +0 -491
- package/dist/admin/api/products.js.map +0 -1
- package/dist/admin/api/refund.d.ts +0 -29
- package/dist/admin/api/refund.d.ts.map +0 -1
- package/dist/admin/api/refund.js +0 -142
- package/dist/admin/api/refund.js.map +0 -1
- package/dist/admin/api/reset-password.d.ts +0 -49
- package/dist/admin/api/reset-password.d.ts.map +0 -1
- package/dist/admin/api/reset-password.js +0 -99
- package/dist/admin/api/reset-password.js.map +0 -1
- package/dist/admin/api/return.d.ts +0 -47
- package/dist/admin/api/return.d.ts.map +0 -1
- package/dist/admin/api/return.js +0 -186
- package/dist/admin/api/return.js.map +0 -1
- package/dist/admin/api/settings.d.ts +0 -49
- package/dist/admin/api/settings.d.ts.map +0 -1
- package/dist/admin/api/settings.js +0 -201
- package/dist/admin/api/settings.js.map +0 -1
- package/dist/admin/api/setup-guide.d.ts +0 -78
- package/dist/admin/api/setup-guide.d.ts.map +0 -1
- package/dist/admin/api/setup-guide.js +0 -235
- package/dist/admin/api/setup-guide.js.map +0 -1
- package/dist/admin/api/setup.d.ts +0 -60
- package/dist/admin/api/setup.d.ts.map +0 -1
- package/dist/admin/api/setup.js +0 -126
- package/dist/admin/api/setup.js.map +0 -1
- package/dist/admin/api/shipping.d.ts +0 -287
- package/dist/admin/api/shipping.d.ts.map +0 -1
- package/dist/admin/api/shipping.js +0 -746
- package/dist/admin/api/shipping.js.map +0 -1
- package/dist/admin/api/stats.d.ts +0 -43
- package/dist/admin/api/stats.d.ts.map +0 -1
- package/dist/admin/api/stats.js +0 -92
- package/dist/admin/api/stats.js.map +0 -1
- package/dist/admin/api/stripe-status.d.ts +0 -39
- package/dist/admin/api/stripe-status.d.ts.map +0 -1
- package/dist/admin/api/stripe-status.js +0 -99
- package/dist/admin/api/stripe-status.js.map +0 -1
- package/dist/admin/api/tax-zones.d.ts +0 -97
- package/dist/admin/api/tax-zones.d.ts.map +0 -1
- package/dist/admin/api/tax-zones.js +0 -265
- package/dist/admin/api/tax-zones.js.map +0 -1
- package/dist/admin/api/users.d.ts +0 -142
- package/dist/admin/api/users.d.ts.map +0 -1
- package/dist/admin/api/users.js +0 -356
- package/dist/admin/api/users.js.map +0 -1
- package/dist/admin/components/AdminAcceptInviteForm.d.ts +0 -3
- package/dist/admin/components/AdminAcceptInviteForm.d.ts.map +0 -1
- package/dist/admin/components/AdminAcceptInviteForm.js +0 -137
- package/dist/admin/components/AdminAcceptInviteForm.js.map +0 -1
- package/dist/admin/components/AdminAccountPage.d.ts +0 -10
- package/dist/admin/components/AdminAccountPage.d.ts.map +0 -1
- package/dist/admin/components/AdminAccountPage.js +0 -126
- package/dist/admin/components/AdminAccountPage.js.map +0 -1
- package/dist/admin/components/AdminBarBanner.d.ts +0 -2
- package/dist/admin/components/AdminBarBanner.d.ts.map +0 -1
- package/dist/admin/components/AdminBarBanner.js +0 -266
- package/dist/admin/components/AdminBarBanner.js.map +0 -1
- package/dist/admin/components/AdminForgotPasswordForm.d.ts +0 -8
- package/dist/admin/components/AdminForgotPasswordForm.d.ts.map +0 -1
- package/dist/admin/components/AdminForgotPasswordForm.js +0 -59
- package/dist/admin/components/AdminForgotPasswordForm.js.map +0 -1
- package/dist/admin/components/AdminGuard.d.ts +0 -40
- package/dist/admin/components/AdminGuard.d.ts.map +0 -1
- package/dist/admin/components/AdminGuard.js +0 -94
- package/dist/admin/components/AdminGuard.js.map +0 -1
- package/dist/admin/components/AdminLayout.d.ts +0 -40
- package/dist/admin/components/AdminLayout.d.ts.map +0 -1
- package/dist/admin/components/AdminLayout.js +0 -39
- package/dist/admin/components/AdminLayout.js.map +0 -1
- package/dist/admin/components/AdminLoginForm.d.ts +0 -18
- package/dist/admin/components/AdminLoginForm.d.ts.map +0 -1
- package/dist/admin/components/AdminLoginForm.js +0 -61
- package/dist/admin/components/AdminLoginForm.js.map +0 -1
- package/dist/admin/components/AdminNav.d.ts +0 -44
- package/dist/admin/components/AdminNav.d.ts.map +0 -1
- package/dist/admin/components/AdminNav.js +0 -175
- package/dist/admin/components/AdminNav.js.map +0 -1
- package/dist/admin/components/AdminResetPasswordForm.d.ts +0 -12
- package/dist/admin/components/AdminResetPasswordForm.d.ts.map +0 -1
- package/dist/admin/components/AdminResetPasswordForm.js +0 -134
- package/dist/admin/components/AdminResetPasswordForm.js.map +0 -1
- package/dist/admin/components/AdminSelect.d.ts +0 -47
- package/dist/admin/components/AdminSelect.d.ts.map +0 -1
- package/dist/admin/components/AdminSelect.js +0 -71
- package/dist/admin/components/AdminSelect.js.map +0 -1
- package/dist/admin/components/AdminSetupForm.d.ts +0 -28
- package/dist/admin/components/AdminSetupForm.d.ts.map +0 -1
- package/dist/admin/components/AdminSetupForm.js +0 -85
- package/dist/admin/components/AdminSetupForm.js.map +0 -1
- package/dist/admin/components/AdminToast.d.ts +0 -31
- package/dist/admin/components/AdminToast.d.ts.map +0 -1
- package/dist/admin/components/AdminToast.js +0 -83
- package/dist/admin/components/AdminToast.js.map +0 -1
- package/dist/admin/components/AdminUserMenu.d.ts +0 -14
- package/dist/admin/components/AdminUserMenu.d.ts.map +0 -1
- package/dist/admin/components/AdminUserMenu.js +0 -34
- package/dist/admin/components/AdminUserMenu.js.map +0 -1
- package/dist/admin/components/CategoryForm.d.ts +0 -30
- package/dist/admin/components/CategoryForm.d.ts.map +0 -1
- package/dist/admin/components/CategoryForm.js +0 -152
- package/dist/admin/components/CategoryForm.js.map +0 -1
- package/dist/admin/components/CategorySelect.d.ts +0 -32
- package/dist/admin/components/CategorySelect.d.ts.map +0 -1
- package/dist/admin/components/CategorySelect.js +0 -139
- package/dist/admin/components/CategorySelect.js.map +0 -1
- package/dist/admin/components/CustomerDetails.d.ts +0 -15
- package/dist/admin/components/CustomerDetails.d.ts.map +0 -1
- package/dist/admin/components/CustomerDetails.js +0 -177
- package/dist/admin/components/CustomerDetails.js.map +0 -1
- package/dist/admin/components/CustomerTable.d.ts +0 -13
- package/dist/admin/components/CustomerTable.d.ts.map +0 -1
- package/dist/admin/components/CustomerTable.js +0 -112
- package/dist/admin/components/CustomerTable.js.map +0 -1
- package/dist/admin/components/DeleteConfirmDialog.d.ts +0 -57
- package/dist/admin/components/DeleteConfirmDialog.d.ts.map +0 -1
- package/dist/admin/components/DeleteConfirmDialog.js +0 -46
- package/dist/admin/components/DeleteConfirmDialog.js.map +0 -1
- package/dist/admin/components/ExampleContentBanner.d.ts +0 -2
- package/dist/admin/components/ExampleContentBanner.d.ts.map +0 -1
- package/dist/admin/components/ExampleContentBanner.js +0 -153
- package/dist/admin/components/ExampleContentBanner.js.map +0 -1
- package/dist/admin/components/InventoryEditor.d.ts +0 -15
- package/dist/admin/components/InventoryEditor.d.ts.map +0 -1
- package/dist/admin/components/InventoryEditor.js +0 -86
- package/dist/admin/components/InventoryEditor.js.map +0 -1
- package/dist/admin/components/InviteUserDialog.d.ts +0 -3
- package/dist/admin/components/InviteUserDialog.d.ts.map +0 -1
- package/dist/admin/components/InviteUserDialog.js +0 -127
- package/dist/admin/components/InviteUserDialog.js.map +0 -1
- package/dist/admin/components/LogoUpload.d.ts +0 -22
- package/dist/admin/components/LogoUpload.d.ts.map +0 -1
- package/dist/admin/components/LogoUpload.js +0 -210
- package/dist/admin/components/LogoUpload.js.map +0 -1
- package/dist/admin/components/LowStockAlert.d.ts +0 -11
- package/dist/admin/components/LowStockAlert.d.ts.map +0 -1
- package/dist/admin/components/LowStockAlert.js +0 -33
- package/dist/admin/components/LowStockAlert.js.map +0 -1
- package/dist/admin/components/OrderDetails.d.ts +0 -14
- package/dist/admin/components/OrderDetails.d.ts.map +0 -1
- package/dist/admin/components/OrderDetails.js +0 -210
- package/dist/admin/components/OrderDetails.js.map +0 -1
- package/dist/admin/components/OrderStatusChart.d.ts +0 -21
- package/dist/admin/components/OrderStatusChart.d.ts.map +0 -1
- package/dist/admin/components/OrderStatusChart.js +0 -61
- package/dist/admin/components/OrderStatusChart.js.map +0 -1
- package/dist/admin/components/OrderTable.d.ts +0 -13
- package/dist/admin/components/OrderTable.d.ts.map +0 -1
- package/dist/admin/components/OrderTable.js +0 -117
- package/dist/admin/components/OrderTable.js.map +0 -1
- package/dist/admin/components/PaymentSettings.d.ts +0 -13
- package/dist/admin/components/PaymentSettings.d.ts.map +0 -1
- package/dist/admin/components/PaymentSettings.js +0 -120
- package/dist/admin/components/PaymentSettings.js.map +0 -1
- package/dist/admin/components/PeriodSelector.d.ts +0 -9
- package/dist/admin/components/PeriodSelector.d.ts.map +0 -1
- package/dist/admin/components/PeriodSelector.js +0 -19
- package/dist/admin/components/PeriodSelector.js.map +0 -1
- package/dist/admin/components/PermissionsMatrix.d.ts +0 -8
- package/dist/admin/components/PermissionsMatrix.d.ts.map +0 -1
- package/dist/admin/components/PermissionsMatrix.js +0 -70
- package/dist/admin/components/PermissionsMatrix.js.map +0 -1
- package/dist/admin/components/PrimaryMetricsRow.d.ts +0 -11
- package/dist/admin/components/PrimaryMetricsRow.d.ts.map +0 -1
- package/dist/admin/components/PrimaryMetricsRow.js +0 -73
- package/dist/admin/components/PrimaryMetricsRow.js.map +0 -1
- package/dist/admin/components/ProductForm.d.ts +0 -18
- package/dist/admin/components/ProductForm.d.ts.map +0 -1
- package/dist/admin/components/ProductForm.js +0 -261
- package/dist/admin/components/ProductForm.js.map +0 -1
- package/dist/admin/components/ProductTable.d.ts +0 -14
- package/dist/admin/components/ProductTable.d.ts.map +0 -1
- package/dist/admin/components/ProductTable.js +0 -384
- package/dist/admin/components/ProductTable.js.map +0 -1
- package/dist/admin/components/RecentOrders.d.ts +0 -11
- package/dist/admin/components/RecentOrders.d.ts.map +0 -1
- package/dist/admin/components/RecentOrders.js +0 -63
- package/dist/admin/components/RecentOrders.js.map +0 -1
- package/dist/admin/components/RefundDialog.d.ts +0 -17
- package/dist/admin/components/RefundDialog.d.ts.map +0 -1
- package/dist/admin/components/RefundDialog.js +0 -90
- package/dist/admin/components/RefundDialog.js.map +0 -1
- package/dist/admin/components/RevenueChart.d.ts +0 -23
- package/dist/admin/components/RevenueChart.d.ts.map +0 -1
- package/dist/admin/components/RevenueChart.js +0 -75
- package/dist/admin/components/RevenueChart.js.map +0 -1
- package/dist/admin/components/SEOPreview.d.ts +0 -33
- package/dist/admin/components/SEOPreview.d.ts.map +0 -1
- package/dist/admin/components/SEOPreview.js +0 -30
- package/dist/admin/components/SEOPreview.js.map +0 -1
- package/dist/admin/components/SecondaryMetricsRow.d.ts +0 -14
- package/dist/admin/components/SecondaryMetricsRow.d.ts.map +0 -1
- package/dist/admin/components/SecondaryMetricsRow.js +0 -45
- package/dist/admin/components/SecondaryMetricsRow.js.map +0 -1
- package/dist/admin/components/SetupGuide.d.ts +0 -4
- package/dist/admin/components/SetupGuide.d.ts.map +0 -1
- package/dist/admin/components/SetupGuide.js +0 -244
- package/dist/admin/components/SetupGuide.js.map +0 -1
- package/dist/admin/components/ShippingSettings.d.ts +0 -3
- package/dist/admin/components/ShippingSettings.d.ts.map +0 -1
- package/dist/admin/components/ShippingSettings.js +0 -553
- package/dist/admin/components/ShippingSettings.js.map +0 -1
- package/dist/admin/components/StatsCards.d.ts +0 -18
- package/dist/admin/components/StatsCards.d.ts.map +0 -1
- package/dist/admin/components/StatsCards.js +0 -71
- package/dist/admin/components/StatsCards.js.map +0 -1
- package/dist/admin/components/StoreSettings.d.ts +0 -19
- package/dist/admin/components/StoreSettings.d.ts.map +0 -1
- package/dist/admin/components/StoreSettings.js +0 -149
- package/dist/admin/components/StoreSettings.js.map +0 -1
- package/dist/admin/components/TagInput.d.ts +0 -29
- package/dist/admin/components/TagInput.d.ts.map +0 -1
- package/dist/admin/components/TagInput.js +0 -69
- package/dist/admin/components/TagInput.js.map +0 -1
- package/dist/admin/components/TaxSettings.d.ts +0 -12
- package/dist/admin/components/TaxSettings.d.ts.map +0 -1
- package/dist/admin/components/TaxSettings.js +0 -272
- package/dist/admin/components/TaxSettings.js.map +0 -1
- package/dist/admin/components/UsersTable.d.ts +0 -3
- package/dist/admin/components/UsersTable.d.ts.map +0 -1
- package/dist/admin/components/UsersTable.js +0 -393
- package/dist/admin/components/UsersTable.js.map +0 -1
- package/dist/admin/components/VariantManager.d.ts +0 -44
- package/dist/admin/components/VariantManager.d.ts.map +0 -1
- package/dist/admin/components/VariantManager.js +0 -325
- package/dist/admin/components/VariantManager.js.map +0 -1
- package/dist/admin/components/index.d.ts +0 -71
- package/dist/admin/components/index.d.ts.map +0 -1
- package/dist/admin/components/index.js +0 -87
- package/dist/admin/components/index.js.map +0 -1
- package/dist/admin/config.d.ts +0 -71
- package/dist/admin/config.d.ts.map +0 -1
- package/dist/admin/config.js +0 -253
- package/dist/admin/config.js.map +0 -1
- package/dist/admin/hooks/fetchAdminApi.d.ts +0 -65
- package/dist/admin/hooks/fetchAdminApi.d.ts.map +0 -1
- package/dist/admin/hooks/fetchAdminApi.js +0 -96
- package/dist/admin/hooks/fetchAdminApi.js.map +0 -1
- package/dist/admin/hooks/index.d.ts +0 -24
- package/dist/admin/hooks/index.d.ts.map +0 -1
- package/dist/admin/hooks/index.js +0 -19
- package/dist/admin/hooks/index.js.map +0 -1
- package/dist/admin/hooks/useAdminAuth.d.ts +0 -25
- package/dist/admin/hooks/useAdminAuth.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminAuth.js +0 -183
- package/dist/admin/hooks/useAdminAuth.js.map +0 -1
- package/dist/admin/hooks/useAdminCategories.d.ts +0 -9
- package/dist/admin/hooks/useAdminCategories.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminCategories.js +0 -112
- package/dist/admin/hooks/useAdminCategories.js.map +0 -1
- package/dist/admin/hooks/useAdminCustomers.d.ts +0 -3
- package/dist/admin/hooks/useAdminCustomers.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminCustomers.js +0 -110
- package/dist/admin/hooks/useAdminCustomers.js.map +0 -1
- package/dist/admin/hooks/useAdminMe.d.ts +0 -31
- package/dist/admin/hooks/useAdminMe.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminMe.js +0 -78
- package/dist/admin/hooks/useAdminMe.js.map +0 -1
- package/dist/admin/hooks/useAdminOrders.d.ts +0 -3
- package/dist/admin/hooks/useAdminOrders.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminOrders.js +0 -118
- package/dist/admin/hooks/useAdminOrders.js.map +0 -1
- package/dist/admin/hooks/useAdminPermissions.d.ts +0 -3
- package/dist/admin/hooks/useAdminPermissions.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminPermissions.js +0 -51
- package/dist/admin/hooks/useAdminPermissions.js.map +0 -1
- package/dist/admin/hooks/useAdminProductMetrics.d.ts +0 -3
- package/dist/admin/hooks/useAdminProductMetrics.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminProductMetrics.js +0 -32
- package/dist/admin/hooks/useAdminProductMetrics.js.map +0 -1
- package/dist/admin/hooks/useAdminProducts.d.ts +0 -3
- package/dist/admin/hooks/useAdminProducts.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminProducts.js +0 -132
- package/dist/admin/hooks/useAdminProducts.js.map +0 -1
- package/dist/admin/hooks/useAdminSession.d.ts +0 -23
- package/dist/admin/hooks/useAdminSession.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminSession.js +0 -117
- package/dist/admin/hooks/useAdminSession.js.map +0 -1
- package/dist/admin/hooks/useAdminStats.d.ts +0 -47
- package/dist/admin/hooks/useAdminStats.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminStats.js +0 -128
- package/dist/admin/hooks/useAdminStats.js.map +0 -1
- package/dist/admin/hooks/useAdminUsers.d.ts +0 -3
- package/dist/admin/hooks/useAdminUsers.d.ts.map +0 -1
- package/dist/admin/hooks/useAdminUsers.js +0 -177
- package/dist/admin/hooks/useAdminUsers.js.map +0 -1
- package/dist/admin/hooks/useLinkedCustomerStatus.d.ts +0 -3
- package/dist/admin/hooks/useLinkedCustomerStatus.d.ts.map +0 -1
- package/dist/admin/hooks/useLinkedCustomerStatus.js +0 -48
- package/dist/admin/hooks/useLinkedCustomerStatus.js.map +0 -1
- package/dist/admin/hooks/useSetupGuide.d.ts +0 -45
- package/dist/admin/hooks/useSetupGuide.d.ts.map +0 -1
- package/dist/admin/hooks/useSetupGuide.js +0 -60
- package/dist/admin/hooks/useSetupGuide.js.map +0 -1
- package/dist/admin/index.d.ts +0 -66
- package/dist/admin/index.d.ts.map +0 -1
- package/dist/admin/index.js +0 -144
- package/dist/admin/index.js.map +0 -1
- package/dist/admin/permissions.d.ts +0 -92
- package/dist/admin/permissions.d.ts.map +0 -1
- package/dist/admin/permissions.js +0 -201
- package/dist/admin/permissions.js.map +0 -1
- package/dist/admin/server/admin-invite.d.ts +0 -122
- package/dist/admin/server/admin-invite.d.ts.map +0 -1
- package/dist/admin/server/admin-invite.js +0 -235
- package/dist/admin/server/admin-invite.js.map +0 -1
- package/dist/admin/server/admin-password-reset.d.ts +0 -87
- package/dist/admin/server/admin-password-reset.d.ts.map +0 -1
- package/dist/admin/server/admin-password-reset.js +0 -220
- package/dist/admin/server/admin-password-reset.js.map +0 -1
- package/dist/admin/server/admin-self-service.d.ts +0 -86
- package/dist/admin/server/admin-self-service.d.ts.map +0 -1
- package/dist/admin/server/admin-self-service.js +0 -188
- package/dist/admin/server/admin-self-service.js.map +0 -1
- package/dist/admin/server/admin-service.d.ts +0 -130
- package/dist/admin/server/admin-service.d.ts.map +0 -1
- package/dist/admin/server/admin-service.js +0 -278
- package/dist/admin/server/admin-service.js.map +0 -1
- package/dist/admin/server/admin-session.d.ts +0 -173
- package/dist/admin/server/admin-session.d.ts.map +0 -1
- package/dist/admin/server/admin-session.js +0 -272
- package/dist/admin/server/admin-session.js.map +0 -1
- package/dist/admin/server/index.d.ts +0 -17
- package/dist/admin/server/index.d.ts.map +0 -1
- package/dist/admin/server/index.js +0 -39
- package/dist/admin/server/index.js.map +0 -1
- package/dist/admin/server/user-management.d.ts +0 -223
- package/dist/admin/server/user-management.d.ts.map +0 -1
- package/dist/admin/server/user-management.js +0 -846
- package/dist/admin/server/user-management.js.map +0 -1
- package/dist/admin/types.d.ts +0 -1172
- package/dist/admin/types.d.ts.map +0 -1
- package/dist/admin/types.js +0 -10
- package/dist/admin/types.js.map +0 -1
- package/dist/auth/api/auth.d.ts +0 -54
- package/dist/auth/api/auth.d.ts.map +0 -1
- package/dist/auth/api/auth.js +0 -59
- package/dist/auth/api/auth.js.map +0 -1
- package/dist/auth/api/forgot-password.d.ts +0 -41
- package/dist/auth/api/forgot-password.d.ts.map +0 -1
- package/dist/auth/api/forgot-password.js +0 -65
- package/dist/auth/api/forgot-password.js.map +0 -1
- package/dist/auth/api/index.d.ts +0 -36
- package/dist/auth/api/index.d.ts.map +0 -1
- package/dist/auth/api/index.js +0 -44
- package/dist/auth/api/index.js.map +0 -1
- package/dist/auth/api/register.d.ts +0 -41
- package/dist/auth/api/register.d.ts.map +0 -1
- package/dist/auth/api/register.js +0 -94
- package/dist/auth/api/register.js.map +0 -1
- package/dist/auth/api/request-refund.d.ts +0 -38
- package/dist/auth/api/request-refund.d.ts.map +0 -1
- package/dist/auth/api/request-refund.js +0 -142
- package/dist/auth/api/request-refund.js.map +0 -1
- package/dist/auth/api/request-return.d.ts +0 -39
- package/dist/auth/api/request-return.d.ts.map +0 -1
- package/dist/auth/api/request-return.js +0 -109
- package/dist/auth/api/request-return.js.map +0 -1
- package/dist/auth/api/resend-verification.d.ts +0 -41
- package/dist/auth/api/resend-verification.d.ts.map +0 -1
- package/dist/auth/api/resend-verification.js +0 -68
- package/dist/auth/api/resend-verification.js.map +0 -1
- package/dist/auth/api/reset-password.d.ts +0 -67
- package/dist/auth/api/reset-password.d.ts.map +0 -1
- package/dist/auth/api/reset-password.js +0 -106
- package/dist/auth/api/reset-password.js.map +0 -1
- package/dist/auth/api/verify-email.d.ts +0 -47
- package/dist/auth/api/verify-email.d.ts.map +0 -1
- package/dist/auth/api/verify-email.js +0 -90
- package/dist/auth/api/verify-email.js.map +0 -1
- package/dist/auth/components/AuthGuard.d.ts +0 -52
- package/dist/auth/components/AuthGuard.d.ts.map +0 -1
- package/dist/auth/components/AuthGuard.js +0 -109
- package/dist/auth/components/AuthGuard.js.map +0 -1
- package/dist/auth/components/ForgotPasswordForm.d.ts +0 -15
- package/dist/auth/components/ForgotPasswordForm.d.ts.map +0 -1
- package/dist/auth/components/ForgotPasswordForm.js +0 -43
- package/dist/auth/components/ForgotPasswordForm.js.map +0 -1
- package/dist/auth/components/Label.d.ts +0 -19
- package/dist/auth/components/Label.d.ts.map +0 -1
- package/dist/auth/components/Label.js +0 -18
- package/dist/auth/components/Label.js.map +0 -1
- package/dist/auth/components/ResetPasswordForm.d.ts +0 -18
- package/dist/auth/components/ResetPasswordForm.d.ts.map +0 -1
- package/dist/auth/components/ResetPasswordForm.js +0 -87
- package/dist/auth/components/ResetPasswordForm.js.map +0 -1
- package/dist/auth/components/SignInForm.d.ts +0 -21
- package/dist/auth/components/SignInForm.d.ts.map +0 -1
- package/dist/auth/components/SignInForm.js +0 -61
- package/dist/auth/components/SignInForm.js.map +0 -1
- package/dist/auth/components/SignUpForm.d.ts +0 -18
- package/dist/auth/components/SignUpForm.d.ts.map +0 -1
- package/dist/auth/components/SignUpForm.js +0 -78
- package/dist/auth/components/SignUpForm.js.map +0 -1
- package/dist/auth/components/UserMenu.d.ts +0 -18
- package/dist/auth/components/UserMenu.d.ts.map +0 -1
- package/dist/auth/components/UserMenu.js +0 -73
- package/dist/auth/components/UserMenu.js.map +0 -1
- package/dist/auth/components/VerifyEmailNotice.d.ts +0 -20
- package/dist/auth/components/VerifyEmailNotice.d.ts.map +0 -1
- package/dist/auth/components/VerifyEmailNotice.js +0 -57
- package/dist/auth/components/VerifyEmailNotice.js.map +0 -1
- package/dist/auth/components/index.d.ts +0 -15
- package/dist/auth/components/index.d.ts.map +0 -1
- package/dist/auth/components/index.js +0 -14
- package/dist/auth/components/index.js.map +0 -1
- package/dist/auth/config.d.ts +0 -59
- package/dist/auth/config.d.ts.map +0 -1
- package/dist/auth/config.js +0 -255
- package/dist/auth/config.js.map +0 -1
- package/dist/auth/hooks/index.d.ts +0 -7
- package/dist/auth/hooks/index.d.ts.map +0 -1
- package/dist/auth/hooks/index.js +0 -7
- package/dist/auth/hooks/index.js.map +0 -1
- package/dist/auth/hooks/useAuth.d.ts +0 -30
- package/dist/auth/hooks/useAuth.d.ts.map +0 -1
- package/dist/auth/hooks/useAuth.js +0 -261
- package/dist/auth/hooks/useAuth.js.map +0 -1
- package/dist/auth/index.d.ts +0 -55
- package/dist/auth/index.d.ts.map +0 -1
- package/dist/auth/index.js +0 -67
- package/dist/auth/index.js.map +0 -1
- package/dist/auth/server/customer-service.d.ts +0 -140
- package/dist/auth/server/customer-service.d.ts.map +0 -1
- package/dist/auth/server/customer-service.js +0 -266
- package/dist/auth/server/customer-service.js.map +0 -1
- package/dist/auth/server/customer-session.d.ts +0 -81
- package/dist/auth/server/customer-session.d.ts.map +0 -1
- package/dist/auth/server/customer-session.js +0 -115
- package/dist/auth/server/customer-session.js.map +0 -1
- package/dist/auth/server/email-sender.d.ts +0 -64
- package/dist/auth/server/email-sender.d.ts.map +0 -1
- package/dist/auth/server/email-sender.js +0 -106
- package/dist/auth/server/email-sender.js.map +0 -1
- package/dist/auth/server/index.d.ts +0 -15
- package/dist/auth/server/index.d.ts.map +0 -1
- package/dist/auth/server/index.js +0 -19
- package/dist/auth/server/index.js.map +0 -1
- package/dist/auth/server/password-reset-service.d.ts +0 -87
- package/dist/auth/server/password-reset-service.d.ts.map +0 -1
- package/dist/auth/server/password-reset-service.js +0 -198
- package/dist/auth/server/password-reset-service.js.map +0 -1
- package/dist/auth/server/password.d.ts +0 -58
- package/dist/auth/server/password.d.ts.map +0 -1
- package/dist/auth/server/password.js +0 -85
- package/dist/auth/server/password.js.map +0 -1
- package/dist/auth/server/verification-service.d.ts +0 -88
- package/dist/auth/server/verification-service.d.ts.map +0 -1
- package/dist/auth/server/verification-service.js +0 -224
- package/dist/auth/server/verification-service.js.map +0 -1
- package/dist/auth/types.d.ts +0 -311
- package/dist/auth/types.d.ts.map +0 -1
- package/dist/auth/types.js +0 -7
- package/dist/auth/types.js.map +0 -1
- package/dist/cart/CartProvider.d.ts +0 -65
- package/dist/cart/CartProvider.d.ts.map +0 -1
- package/dist/cart/CartProvider.js +0 -100
- package/dist/cart/CartProvider.js.map +0 -1
- package/dist/cart/components/AddToCartButton.d.ts +0 -77
- package/dist/cart/components/AddToCartButton.d.ts.map +0 -1
- package/dist/cart/components/AddToCartButton.js +0 -122
- package/dist/cart/components/AddToCartButton.js.map +0 -1
- package/dist/cart/components/CartDrawer.d.ts +0 -71
- package/dist/cart/components/CartDrawer.d.ts.map +0 -1
- package/dist/cart/components/CartDrawer.js +0 -117
- package/dist/cart/components/CartDrawer.js.map +0 -1
- package/dist/cart/components/CartIcon.d.ts +0 -36
- package/dist/cart/components/CartIcon.d.ts.map +0 -1
- package/dist/cart/components/CartIcon.js +0 -68
- package/dist/cart/components/CartIcon.js.map +0 -1
- package/dist/cart/components/CartItem.d.ts +0 -52
- package/dist/cart/components/CartItem.d.ts.map +0 -1
- package/dist/cart/components/CartItem.js +0 -55
- package/dist/cart/components/CartItem.js.map +0 -1
- package/dist/cart/components/CartSummary.d.ts +0 -43
- package/dist/cart/components/CartSummary.d.ts.map +0 -1
- package/dist/cart/components/CartSummary.js +0 -60
- package/dist/cart/components/CartSummary.js.map +0 -1
- package/dist/cart/components/QuantitySelector.d.ts +0 -39
- package/dist/cart/components/QuantitySelector.d.ts.map +0 -1
- package/dist/cart/components/QuantitySelector.js +0 -85
- package/dist/cart/components/QuantitySelector.js.map +0 -1
- package/dist/cart/components/index.d.ts +0 -18
- package/dist/cart/components/index.d.ts.map +0 -1
- package/dist/cart/components/index.js +0 -12
- package/dist/cart/components/index.js.map +0 -1
- package/dist/cart/index.d.ts +0 -109
- package/dist/cart/index.d.ts.map +0 -1
- package/dist/cart/index.js +0 -115
- package/dist/cart/index.js.map +0 -1
- package/dist/cart/store.d.ts +0 -150
- package/dist/cart/store.d.ts.map +0 -1
- package/dist/cart/store.js +0 -315
- package/dist/cart/store.js.map +0 -1
- package/dist/checkout/api/checkout.js +0 -112
- package/dist/checkout/api/checkout.js.map +0 -1
- package/dist/checkout/api/countries.d.ts +0 -17
- package/dist/checkout/api/countries.d.ts.map +0 -1
- package/dist/checkout/api/countries.js +0 -38
- package/dist/checkout/api/countries.js.map +0 -1
- package/dist/checkout/api/index.js +0 -11
- package/dist/checkout/api/index.js.map +0 -1
- package/dist/checkout/api/payment-status.d.ts +0 -45
- package/dist/checkout/api/payment-status.d.ts.map +0 -1
- package/dist/checkout/api/payment-status.js +0 -104
- package/dist/checkout/api/payment-status.js.map +0 -1
- package/dist/checkout/api/shipping.d.ts +0 -34
- package/dist/checkout/api/shipping.d.ts.map +0 -1
- package/dist/checkout/api/shipping.js +0 -247
- package/dist/checkout/api/shipping.js.map +0 -1
- package/dist/checkout/api/webhook.js +0 -55
- package/dist/checkout/api/webhook.js.map +0 -1
- package/dist/checkout/components/CheckoutButton.d.ts +0 -55
- package/dist/checkout/components/CheckoutButton.d.ts.map +0 -1
- package/dist/checkout/components/CheckoutButton.js +0 -132
- package/dist/checkout/components/CheckoutButton.js.map +0 -1
- package/dist/checkout/components/CheckoutFlow.d.ts +0 -53
- package/dist/checkout/components/CheckoutFlow.d.ts.map +0 -1
- package/dist/checkout/components/CheckoutFlow.js +0 -286
- package/dist/checkout/components/CheckoutFlow.js.map +0 -1
- package/dist/checkout/components/CheckoutSuccess.d.ts +0 -29
- package/dist/checkout/components/CheckoutSuccess.d.ts.map +0 -1
- package/dist/checkout/components/CheckoutSuccess.js +0 -49
- package/dist/checkout/components/CheckoutSuccess.js.map +0 -1
- package/dist/checkout/components/OrderSummary.d.ts +0 -37
- package/dist/checkout/components/OrderSummary.d.ts.map +0 -1
- package/dist/checkout/components/OrderSummary.js +0 -71
- package/dist/checkout/components/OrderSummary.js.map +0 -1
- package/dist/checkout/components/ShippingForm.d.ts +0 -30
- package/dist/checkout/components/ShippingForm.d.ts.map +0 -1
- package/dist/checkout/components/ShippingForm.js +0 -184
- package/dist/checkout/components/ShippingForm.js.map +0 -1
- package/dist/checkout/components/ShippingOptions.d.ts +0 -51
- package/dist/checkout/components/ShippingOptions.d.ts.map +0 -1
- package/dist/checkout/components/ShippingOptions.js +0 -93
- package/dist/checkout/components/ShippingOptions.js.map +0 -1
- package/dist/checkout/components/index.d.ts +0 -12
- package/dist/checkout/components/index.d.ts.map +0 -1
- package/dist/checkout/components/index.js +0 -12
- package/dist/checkout/components/index.js.map +0 -1
- package/dist/checkout/constants.d.ts +0 -244
- package/dist/checkout/constants.d.ts.map +0 -1
- package/dist/checkout/constants.js +0 -119
- package/dist/checkout/constants.js.map +0 -1
- package/dist/checkout/hooks/index.d.ts +0 -9
- package/dist/checkout/hooks/index.d.ts.map +0 -1
- package/dist/checkout/hooks/index.js +0 -8
- package/dist/checkout/hooks/index.js.map +0 -1
- package/dist/checkout/hooks/useCheckout.d.ts +0 -61
- package/dist/checkout/hooks/useCheckout.d.ts.map +0 -1
- package/dist/checkout/hooks/useCheckout.js +0 -172
- package/dist/checkout/hooks/useCheckout.js.map +0 -1
- package/dist/checkout/hooks/usePaymentStatus.d.ts +0 -42
- package/dist/checkout/hooks/usePaymentStatus.d.ts.map +0 -1
- package/dist/checkout/hooks/usePaymentStatus.js +0 -71
- package/dist/checkout/hooks/usePaymentStatus.js.map +0 -1
- package/dist/checkout/index.js +0 -135
- package/dist/checkout/index.js.map +0 -1
- package/dist/checkout/server/coupons.d.ts +0 -91
- package/dist/checkout/server/coupons.d.ts.map +0 -1
- package/dist/checkout/server/coupons.js +0 -192
- package/dist/checkout/server/coupons.js.map +0 -1
- package/dist/checkout/server/index.js +0 -10
- package/dist/checkout/server/index.js.map +0 -1
- package/dist/checkout/stripe/client.d.ts +0 -74
- package/dist/checkout/stripe/client.d.ts.map +0 -1
- package/dist/checkout/stripe/client.js +0 -175
- package/dist/checkout/stripe/client.js.map +0 -1
- package/dist/checkout/stripe/index.d.ts +0 -7
- package/dist/checkout/stripe/index.d.ts.map +0 -1
- package/dist/checkout/stripe/index.js +0 -7
- package/dist/checkout/stripe/index.js.map +0 -1
- package/dist/checkout/types.d.ts +0 -489
- package/dist/checkout/types.d.ts.map +0 -1
- package/dist/checkout/types.js +0 -8
- package/dist/checkout/types.js.map +0 -1
- package/dist/core/StoreSettingsProvider.d.ts +0 -107
- package/dist/core/StoreSettingsProvider.d.ts.map +0 -1
- package/dist/core/StoreSettingsProvider.js +0 -200
- package/dist/core/StoreSettingsProvider.js.map +0 -1
- package/dist/core/api/index.d.ts +0 -7
- package/dist/core/api/index.d.ts.map +0 -1
- package/dist/core/api/index.js +0 -7
- package/dist/core/api/index.js.map +0 -1
- package/dist/core/api/settings.d.ts +0 -42
- package/dist/core/api/settings.d.ts.map +0 -1
- package/dist/core/api/settings.js +0 -74
- package/dist/core/api/settings.js.map +0 -1
- package/dist/core/config.d.ts +0 -296
- package/dist/core/config.d.ts.map +0 -1
- package/dist/core/config.js +0 -117
- package/dist/core/config.js.map +0 -1
- package/dist/core/cookie-consent/CookieBanner.d.ts +0 -2
- package/dist/core/cookie-consent/CookieBanner.d.ts.map +0 -1
- package/dist/core/cookie-consent/CookieBanner.js +0 -243
- package/dist/core/cookie-consent/CookieBanner.js.map +0 -1
- package/dist/core/cookie-consent/CookieConsentProvider.d.ts +0 -53
- package/dist/core/cookie-consent/CookieConsentProvider.d.ts.map +0 -1
- package/dist/core/cookie-consent/CookieConsentProvider.js +0 -162
- package/dist/core/cookie-consent/CookieConsentProvider.js.map +0 -1
- package/dist/core/cookie-consent/CookiePreferencesLink.d.ts +0 -15
- package/dist/core/cookie-consent/CookiePreferencesLink.d.ts.map +0 -1
- package/dist/core/cookie-consent/CookiePreferencesLink.js +0 -12
- package/dist/core/cookie-consent/CookiePreferencesLink.js.map +0 -1
- package/dist/core/cookie-consent/index.d.ts +0 -17
- package/dist/core/cookie-consent/index.d.ts.map +0 -1
- package/dist/core/cookie-consent/index.js +0 -16
- package/dist/core/cookie-consent/index.js.map +0 -1
- package/dist/core/cookie-consent/types.d.ts +0 -31
- package/dist/core/cookie-consent/types.d.ts.map +0 -1
- package/dist/core/cookie-consent/types.js +0 -10
- package/dist/core/cookie-consent/types.js.map +0 -1
- package/dist/core/cookie-consent/useCookieConsent.d.ts +0 -14
- package/dist/core/cookie-consent/useCookieConsent.d.ts.map +0 -1
- package/dist/core/cookie-consent/useCookieConsent.js +0 -25
- package/dist/core/cookie-consent/useCookieConsent.js.map +0 -1
- package/dist/core/db/client.d.ts +0 -39
- package/dist/core/db/client.d.ts.map +0 -1
- package/dist/core/db/client.js +0 -86
- package/dist/core/db/client.js.map +0 -1
- package/dist/core/db/index.d.ts +0 -11
- package/dist/core/db/index.d.ts.map +0 -1
- package/dist/core/db/index.js +0 -36
- package/dist/core/db/index.js.map +0 -1
- package/dist/core/db/queries.d.ts +0 -1427
- package/dist/core/db/queries.d.ts.map +0 -1
- package/dist/core/db/queries.js +0 -1932
- package/dist/core/db/queries.js.map +0 -1
- package/dist/core/db/schema.d.ts +0 -3462
- package/dist/core/db/schema.d.ts.map +0 -1
- package/dist/core/db/schema.js +0 -494
- package/dist/core/db/schema.js.map +0 -1
- package/dist/core/index.d.ts +0 -22
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -43
- package/dist/core/index.js.map +0 -1
- package/dist/core/server/index.d.ts +0 -18
- package/dist/core/server/index.d.ts.map +0 -1
- package/dist/core/server/index.js +0 -47
- package/dist/core/server/index.js.map +0 -1
- package/dist/core/types.d.ts +0 -283
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -8
- package/dist/core/types.js.map +0 -1
- package/dist/core/utils.d.ts +0 -167
- package/dist/core/utils.d.ts.map +0 -1
- package/dist/core/utils.js +0 -351
- package/dist/core/utils.js.map +0 -1
- package/dist/emails/config.d.ts +0 -69
- package/dist/emails/config.d.ts.map +0 -1
- package/dist/emails/config.js +0 -147
- package/dist/emails/config.js.map +0 -1
- package/dist/emails/index.d.ts +0 -85
- package/dist/emails/index.d.ts.map +0 -1
- package/dist/emails/index.js +0 -110
- package/dist/emails/index.js.map +0 -1
- package/dist/emails/send/admin-auth.d.ts +0 -94
- package/dist/emails/send/admin-auth.d.ts.map +0 -1
- package/dist/emails/send/admin-auth.js +0 -118
- package/dist/emails/send/admin-auth.js.map +0 -1
- package/dist/emails/send/auth.d.ts +0 -91
- package/dist/emails/send/auth.d.ts.map +0 -1
- package/dist/emails/send/auth.js +0 -130
- package/dist/emails/send/auth.js.map +0 -1
- package/dist/emails/send/index.d.ts +0 -12
- package/dist/emails/send/index.d.ts.map +0 -1
- package/dist/emails/send/index.js +0 -18
- package/dist/emails/send/index.js.map +0 -1
- package/dist/emails/send/orders.d.ts +0 -186
- package/dist/emails/send/orders.d.ts.map +0 -1
- package/dist/emails/send/orders.js +0 -258
- package/dist/emails/send/orders.js.map +0 -1
- package/dist/emails/sender.d.ts +0 -72
- package/dist/emails/sender.d.ts.map +0 -1
- package/dist/emails/sender.js +0 -116
- package/dist/emails/sender.js.map +0 -1
- package/dist/emails/templates/admin-invite.d.ts +0 -40
- package/dist/emails/templates/admin-invite.d.ts.map +0 -1
- package/dist/emails/templates/admin-invite.js +0 -62
- package/dist/emails/templates/admin-invite.js.map +0 -1
- package/dist/emails/templates/base.d.ts +0 -109
- package/dist/emails/templates/base.d.ts.map +0 -1
- package/dist/emails/templates/base.js +0 -334
- package/dist/emails/templates/base.js.map +0 -1
- package/dist/emails/templates/email-verification.d.ts +0 -28
- package/dist/emails/templates/email-verification.d.ts.map +0 -1
- package/dist/emails/templates/email-verification.js +0 -52
- package/dist/emails/templates/email-verification.js.map +0 -1
- package/dist/emails/templates/index.d.ts +0 -16
- package/dist/emails/templates/index.d.ts.map +0 -1
- package/dist/emails/templates/index.js +0 -28
- package/dist/emails/templates/index.js.map +0 -1
- package/dist/emails/templates/order-cancelled.d.ts +0 -30
- package/dist/emails/templates/order-cancelled.d.ts.map +0 -1
- package/dist/emails/templates/order-cancelled.js +0 -83
- package/dist/emails/templates/order-cancelled.js.map +0 -1
- package/dist/emails/templates/order-confirmation.d.ts +0 -36
- package/dist/emails/templates/order-confirmation.d.ts.map +0 -1
- package/dist/emails/templates/order-confirmation.js +0 -174
- package/dist/emails/templates/order-confirmation.js.map +0 -1
- package/dist/emails/templates/order-delivered.d.ts +0 -31
- package/dist/emails/templates/order-delivered.d.ts.map +0 -1
- package/dist/emails/templates/order-delivered.js +0 -100
- package/dist/emails/templates/order-delivered.js.map +0 -1
- package/dist/emails/templates/order-shipped.d.ts +0 -32
- package/dist/emails/templates/order-shipped.d.ts.map +0 -1
- package/dist/emails/templates/order-shipped.js +0 -83
- package/dist/emails/templates/order-shipped.js.map +0 -1
- package/dist/emails/templates/password-reset.d.ts +0 -27
- package/dist/emails/templates/password-reset.d.ts.map +0 -1
- package/dist/emails/templates/password-reset.js +0 -51
- package/dist/emails/templates/password-reset.js.map +0 -1
- package/dist/emails/templates/refund-processed.d.ts +0 -32
- package/dist/emails/templates/refund-processed.d.ts.map +0 -1
- package/dist/emails/templates/refund-processed.js +0 -92
- package/dist/emails/templates/refund-processed.js.map +0 -1
- package/dist/emails/templates/welcome.d.ts +0 -27
- package/dist/emails/templates/welcome.d.ts.map +0 -1
- package/dist/emails/templates/welcome.js +0 -52
- package/dist/emails/templates/welcome.js.map +0 -1
- package/dist/emails/types.d.ts +0 -229
- package/dist/emails/types.d.ts.map +0 -1
- package/dist/emails/types.js +0 -7
- package/dist/emails/types.js.map +0 -1
- package/dist/emails/utils.d.ts +0 -94
- package/dist/emails/utils.d.ts.map +0 -1
- package/dist/emails/utils.js +0 -218
- package/dist/emails/utils.js.map +0 -1
- package/dist/index.js +0 -73
- package/dist/index.js.map +0 -1
- package/dist/media/api/delete.d.ts +0 -43
- package/dist/media/api/delete.d.ts.map +0 -1
- package/dist/media/api/delete.js +0 -124
- package/dist/media/api/delete.js.map +0 -1
- package/dist/media/api/index.d.ts +0 -17
- package/dist/media/api/index.d.ts.map +0 -1
- package/dist/media/api/index.js +0 -17
- package/dist/media/api/index.js.map +0 -1
- package/dist/media/api/presign.d.ts +0 -38
- package/dist/media/api/presign.d.ts.map +0 -1
- package/dist/media/api/presign.js +0 -130
- package/dist/media/api/presign.js.map +0 -1
- package/dist/media/components/DropZone.d.ts +0 -18
- package/dist/media/components/DropZone.d.ts.map +0 -1
- package/dist/media/components/DropZone.js +0 -107
- package/dist/media/components/DropZone.js.map +0 -1
- package/dist/media/components/ImageGalleryUpload.d.ts +0 -21
- package/dist/media/components/ImageGalleryUpload.d.ts.map +0 -1
- package/dist/media/components/ImageGalleryUpload.js +0 -195
- package/dist/media/components/ImageGalleryUpload.js.map +0 -1
- package/dist/media/components/ImageUpload.d.ts +0 -17
- package/dist/media/components/ImageUpload.d.ts.map +0 -1
- package/dist/media/components/ImageUpload.js +0 -89
- package/dist/media/components/ImageUpload.js.map +0 -1
- package/dist/media/components/index.d.ts +0 -10
- package/dist/media/components/index.d.ts.map +0 -1
- package/dist/media/components/index.js +0 -9
- package/dist/media/components/index.js.map +0 -1
- package/dist/media/config.d.ts +0 -83
- package/dist/media/config.d.ts.map +0 -1
- package/dist/media/config.js +0 -189
- package/dist/media/config.js.map +0 -1
- package/dist/media/hooks/index.d.ts +0 -8
- package/dist/media/hooks/index.d.ts.map +0 -1
- package/dist/media/hooks/index.js +0 -7
- package/dist/media/hooks/index.js.map +0 -1
- package/dist/media/hooks/useUpload.d.ts +0 -32
- package/dist/media/hooks/useUpload.d.ts.map +0 -1
- package/dist/media/hooks/useUpload.js +0 -260
- package/dist/media/hooks/useUpload.js.map +0 -1
- package/dist/media/index.d.ts +0 -57
- package/dist/media/index.d.ts.map +0 -1
- package/dist/media/index.js +0 -68
- package/dist/media/index.js.map +0 -1
- package/dist/media/server/delete.d.ts +0 -59
- package/dist/media/server/delete.d.ts.map +0 -1
- package/dist/media/server/delete.js +0 -176
- package/dist/media/server/delete.js.map +0 -1
- package/dist/media/server/index.d.ts +0 -10
- package/dist/media/server/index.d.ts.map +0 -1
- package/dist/media/server/index.js +0 -13
- package/dist/media/server/index.js.map +0 -1
- package/dist/media/server/presign.d.ts +0 -57
- package/dist/media/server/presign.d.ts.map +0 -1
- package/dist/media/server/presign.js +0 -112
- package/dist/media/server/presign.js.map +0 -1
- package/dist/media/server/r2-client.d.ts +0 -30
- package/dist/media/server/r2-client.d.ts.map +0 -1
- package/dist/media/server/r2-client.js +0 -76
- package/dist/media/server/r2-client.js.map +0 -1
- package/dist/media/types.d.ts +0 -317
- package/dist/media/types.d.ts.map +0 -1
- package/dist/media/types.js +0 -95
- package/dist/media/types.js.map +0 -1
- package/dist/products/api/categories.d.ts +0 -29
- package/dist/products/api/categories.d.ts.map +0 -1
- package/dist/products/api/categories.js +0 -46
- package/dist/products/api/categories.js.map +0 -1
- package/dist/products/api/index.d.ts +0 -24
- package/dist/products/api/index.d.ts.map +0 -1
- package/dist/products/api/index.js +0 -24
- package/dist/products/api/index.js.map +0 -1
- package/dist/products/api/product.d.ts +0 -36
- package/dist/products/api/product.d.ts.map +0 -1
- package/dist/products/api/product.js +0 -67
- package/dist/products/api/product.js.map +0 -1
- package/dist/products/api/products.d.ts +0 -41
- package/dist/products/api/products.d.ts.map +0 -1
- package/dist/products/api/products.js +0 -99
- package/dist/products/api/products.js.map +0 -1
- package/dist/products/components/CategoryNav.d.ts +0 -51
- package/dist/products/components/CategoryNav.d.ts.map +0 -1
- package/dist/products/components/CategoryNav.js +0 -110
- package/dist/products/components/CategoryNav.js.map +0 -1
- package/dist/products/components/ProductBreadcrumb.d.ts +0 -52
- package/dist/products/components/ProductBreadcrumb.d.ts.map +0 -1
- package/dist/products/components/ProductBreadcrumb.js +0 -73
- package/dist/products/components/ProductBreadcrumb.js.map +0 -1
- package/dist/products/components/ProductCard.d.ts +0 -54
- package/dist/products/components/ProductCard.d.ts.map +0 -1
- package/dist/products/components/ProductCard.js +0 -72
- package/dist/products/components/ProductCard.js.map +0 -1
- package/dist/products/components/ProductDetails.d.ts +0 -63
- package/dist/products/components/ProductDetails.d.ts.map +0 -1
- package/dist/products/components/ProductDetails.js +0 -137
- package/dist/products/components/ProductDetails.js.map +0 -1
- package/dist/products/components/ProductFilters.d.ts +0 -70
- package/dist/products/components/ProductFilters.d.ts.map +0 -1
- package/dist/products/components/ProductFilters.js +0 -125
- package/dist/products/components/ProductFilters.js.map +0 -1
- package/dist/products/components/ProductGallery.d.ts +0 -42
- package/dist/products/components/ProductGallery.d.ts.map +0 -1
- package/dist/products/components/ProductGallery.js +0 -103
- package/dist/products/components/ProductGallery.js.map +0 -1
- package/dist/products/components/ProductGrid.d.ts +0 -50
- package/dist/products/components/ProductGrid.d.ts.map +0 -1
- package/dist/products/components/ProductGrid.js +0 -81
- package/dist/products/components/ProductGrid.js.map +0 -1
- package/dist/products/components/ProductSearch.d.ts +0 -43
- package/dist/products/components/ProductSearch.d.ts.map +0 -1
- package/dist/products/components/ProductSearch.js +0 -97
- package/dist/products/components/ProductSearch.js.map +0 -1
- package/dist/products/components/ProductSort.d.ts +0 -43
- package/dist/products/components/ProductSort.d.ts.map +0 -1
- package/dist/products/components/ProductSort.js +0 -59
- package/dist/products/components/ProductSort.js.map +0 -1
- package/dist/products/components/VariantSelector.d.ts +0 -43
- package/dist/products/components/VariantSelector.d.ts.map +0 -1
- package/dist/products/components/VariantSelector.js +0 -147
- package/dist/products/components/VariantSelector.js.map +0 -1
- package/dist/products/components/index.d.ts +0 -26
- package/dist/products/components/index.d.ts.map +0 -1
- package/dist/products/components/index.js +0 -19
- package/dist/products/components/index.js.map +0 -1
- package/dist/products/hooks/index.d.ts +0 -14
- package/dist/products/hooks/index.d.ts.map +0 -1
- package/dist/products/hooks/index.js +0 -10
- package/dist/products/hooks/index.js.map +0 -1
- package/dist/products/hooks/useCategories.d.ts +0 -56
- package/dist/products/hooks/useCategories.d.ts.map +0 -1
- package/dist/products/hooks/useCategories.js +0 -126
- package/dist/products/hooks/useCategories.js.map +0 -1
- package/dist/products/hooks/useProduct.d.ts +0 -44
- package/dist/products/hooks/useProduct.d.ts.map +0 -1
- package/dist/products/hooks/useProduct.js +0 -87
- package/dist/products/hooks/useProduct.js.map +0 -1
- package/dist/products/hooks/useProductAttributes.d.ts +0 -59
- package/dist/products/hooks/useProductAttributes.d.ts.map +0 -1
- package/dist/products/hooks/useProductAttributes.js +0 -146
- package/dist/products/hooks/useProductAttributes.js.map +0 -1
- package/dist/products/hooks/useProducts.d.ts +0 -67
- package/dist/products/hooks/useProducts.d.ts.map +0 -1
- package/dist/products/hooks/useProducts.js +0 -131
- package/dist/products/hooks/useProducts.js.map +0 -1
- package/dist/products/index.d.ts +0 -94
- package/dist/products/index.d.ts.map +0 -1
- package/dist/products/index.js +0 -106
- package/dist/products/index.js.map +0 -1
- package/dist/shipping/index.d.ts +0 -8
- package/dist/shipping/index.d.ts.map +0 -1
- package/dist/shipping/index.js +0 -8
- package/dist/shipping/index.js.map +0 -1
- package/dist/shipping/shippo.d.ts +0 -85
- package/dist/shipping/shippo.d.ts.map +0 -1
- package/dist/shipping/shippo.js +0 -298
- package/dist/shipping/shippo.js.map +0 -1
- package/dist/theme/ThemeProvider.d.ts +0 -70
- package/dist/theme/ThemeProvider.d.ts.map +0 -1
- package/dist/theme/ThemeProvider.js +0 -75
- package/dist/theme/ThemeProvider.js.map +0 -1
- package/dist/theme/colors.d.ts +0 -148
- package/dist/theme/colors.d.ts.map +0 -1
- package/dist/theme/colors.js +0 -214
- package/dist/theme/colors.js.map +0 -1
- package/dist/theme/defaults.d.ts +0 -212
- package/dist/theme/defaults.d.ts.map +0 -1
- package/dist/theme/defaults.js +0 -275
- package/dist/theme/defaults.js.map +0 -1
- package/dist/theme/fonts.d.ts +0 -59
- package/dist/theme/fonts.d.ts.map +0 -1
- package/dist/theme/fonts.js +0 -196
- package/dist/theme/fonts.js.map +0 -1
- package/dist/theme/generator.d.ts +0 -50
- package/dist/theme/generator.d.ts.map +0 -1
- package/dist/theme/generator.js +0 -316
- package/dist/theme/generator.js.map +0 -1
- package/dist/theme/hooks.d.ts +0 -110
- package/dist/theme/hooks.d.ts.map +0 -1
- package/dist/theme/hooks.js +0 -101
- package/dist/theme/hooks.js.map +0 -1
- package/dist/theme/index.d.ts +0 -37
- package/dist/theme/index.d.ts.map +0 -1
- package/dist/theme/index.js +0 -49
- package/dist/theme/index.js.map +0 -1
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela-ai/sdk/auth/server/customer-session
|
|
3
|
-
*
|
|
4
|
-
* Centralized session check for customer-side API routes and Server
|
|
5
|
-
* Components. Mirror of `requireAdmin()` on the admin side.
|
|
6
|
-
*
|
|
7
|
-
* # Why this exists
|
|
8
|
-
*
|
|
9
|
-
* Before this helper, customer API routes each had their own inline
|
|
10
|
-
* "check session.user.id, optionally check session.user.role" scaffolding.
|
|
11
|
-
* Some of them (e.g. `/api/account/orders`) simply checked `session.user.id`
|
|
12
|
-
* and trusted whatever was there — including an admin session that happened
|
|
13
|
-
* to be in the single shared cookie. Result: admin JWTs silently succeeded
|
|
14
|
-
* on customer endpoints, returning "no orders" for the admin UUID rather
|
|
15
|
-
* than rejecting the request.
|
|
16
|
-
*
|
|
17
|
-
* Post-0.3.20 the admin cookie lives at a different name entirely
|
|
18
|
-
* (`__Secure-rovela.admin.session-token`), so an admin JWT CANNOT reach
|
|
19
|
-
* this helper because `getServerSession(createCustomerAuthOptions())` only
|
|
20
|
-
* reads the customer cookie (`__Secure-rovela.customer.session-token`).
|
|
21
|
-
* The `role` check below is belt-and-braces for legacy tokens still in
|
|
22
|
-
* flight during the fleet-wide cookie-name rollout.
|
|
23
|
-
*
|
|
24
|
-
* # Return contract
|
|
25
|
-
*
|
|
26
|
-
* Discriminated union, same as `requireAdmin`:
|
|
27
|
-
* - `{ ok: true, customer }` — caller proceeds
|
|
28
|
-
* - `{ ok: false, response }` — caller returns `response` directly
|
|
29
|
-
*
|
|
30
|
-
* Never throws — any internal error converts to a safe response.
|
|
31
|
-
*
|
|
32
|
-
* @example
|
|
33
|
-
* ```ts
|
|
34
|
-
* export async function GET() {
|
|
35
|
-
* const guard = await requireCustomer()
|
|
36
|
-
* if (!guard.ok) return guard.response
|
|
37
|
-
* const { customer } = guard
|
|
38
|
-
* const orders = await findOrders({ customerId: customer.id })
|
|
39
|
-
* return Response.json({ orders })
|
|
40
|
-
* }
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
import { NextResponse } from 'next/server';
|
|
44
|
-
import { getServerSession } from 'next-auth';
|
|
45
|
-
import { createCustomerAuthOptions } from '../config';
|
|
46
|
-
import { findCustomerById } from './customer-service';
|
|
47
|
-
// =============================================================================
|
|
48
|
-
// Response helpers
|
|
49
|
-
// =============================================================================
|
|
50
|
-
function unauthorized() {
|
|
51
|
-
return NextResponse.json({ error: 'Unauthorized', code: 'UNAUTHORIZED' }, { status: 401 });
|
|
52
|
-
}
|
|
53
|
-
function forbidden() {
|
|
54
|
-
return NextResponse.json({ error: 'Forbidden', code: 'FORBIDDEN' }, { status: 403 });
|
|
55
|
-
}
|
|
56
|
-
// =============================================================================
|
|
57
|
-
// Main helper
|
|
58
|
-
// =============================================================================
|
|
59
|
-
/**
|
|
60
|
-
* Authenticate the current request as a customer.
|
|
61
|
-
*
|
|
62
|
-
* Resolves with either `{ ok: true, customer }` (caller may proceed) or
|
|
63
|
-
* `{ ok: false, response }` (caller returns the response to the client).
|
|
64
|
-
*
|
|
65
|
-
* @example
|
|
66
|
-
* ```ts
|
|
67
|
-
* export async function GET() {
|
|
68
|
-
* const guard = await requireCustomer()
|
|
69
|
-
* if (!guard.ok) return guard.response
|
|
70
|
-
* // ...proceed with guard.customer
|
|
71
|
-
* }
|
|
72
|
-
* ```
|
|
73
|
-
*/
|
|
74
|
-
export async function requireCustomer() {
|
|
75
|
-
let rawSession;
|
|
76
|
-
try {
|
|
77
|
-
rawSession = await getServerSession(createCustomerAuthOptions());
|
|
78
|
-
}
|
|
79
|
-
catch (err) {
|
|
80
|
-
console.error('[requireCustomer] Failed to read session:', err);
|
|
81
|
-
return { ok: false, response: unauthorized() };
|
|
82
|
-
}
|
|
83
|
-
const sessionUser = rawSession?.user;
|
|
84
|
-
if (!sessionUser?.id) {
|
|
85
|
-
return { ok: false, response: unauthorized() };
|
|
86
|
-
}
|
|
87
|
-
// Defense in depth: an admin cookie cannot reach this endpoint by
|
|
88
|
-
// design (separate cookie jar), but if a legacy token with a `role`
|
|
89
|
-
// field somehow decodes in this context, treat it as forbidden rather
|
|
90
|
-
// than render customer UI with admin identity.
|
|
91
|
-
if (sessionUser.role) {
|
|
92
|
-
return { ok: false, response: forbidden() };
|
|
93
|
-
}
|
|
94
|
-
// Re-validate the customer exists in the DB. Catches orphan JWTs where
|
|
95
|
-
// the customer row was deleted after the token was minted.
|
|
96
|
-
let customer;
|
|
97
|
-
try {
|
|
98
|
-
const row = await findCustomerById(sessionUser.id);
|
|
99
|
-
if (!row) {
|
|
100
|
-
return { ok: false, response: unauthorized() };
|
|
101
|
-
}
|
|
102
|
-
customer = {
|
|
103
|
-
id: row.id,
|
|
104
|
-
email: row.email,
|
|
105
|
-
name: row.name ?? null,
|
|
106
|
-
emailVerified: !!row.emailVerified,
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
catch (err) {
|
|
110
|
-
console.error('[requireCustomer] Failed to load customer row:', err);
|
|
111
|
-
return { ok: false, response: unauthorized() };
|
|
112
|
-
}
|
|
113
|
-
return { ok: true, customer };
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=customer-session.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"customer-session.js","sourceRoot":"","sources":["../../../src/auth/server/customer-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAsBrD,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF,SAAS,YAAY;IACnB,OAAO,YAAY,CAAC,IAAI,CACtB,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,EAC/C,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;AACH,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,YAAY,CAAC,IAAI,CACtB,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,EACzC,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,cAAc;AACd,gFAAgF;AAEhF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,IAAI,UAAmB,CAAA;IACvB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,gBAAgB,CAAC,yBAAyB,EAAE,CAAC,CAAA;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAA;QAC/D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAA;IAChD,CAAC;IAED,MAAM,WAAW,GAAI,UAEZ,EAAE,IAAI,CAAA;IAEf,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC;QACrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAA;IAChD,CAAC;IAED,kEAAkE;IAClE,oEAAoE;IACpE,sEAAsE;IACtE,+CAA+C;IAC/C,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAA;IAC7C,CAAC;IAED,uEAAuE;IACvE,2DAA2D;IAC3D,IAAI,QAA0B,CAAA;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAClD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAA;QAChD,CAAC;QACD,QAAQ,GAAG;YACT,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI;YACtB,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa;SACnC,CAAA;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,GAAG,CAAC,CAAA;QACpE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAA;IAChD,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;AAC/B,CAAC"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server/email-sender
|
|
3
|
-
*
|
|
4
|
-
* Email sending utilities for customer authentication.
|
|
5
|
-
* This file re-exports from the emails module for backward compatibility.
|
|
6
|
-
*
|
|
7
|
-
* NOTE: For new code, prefer importing directly from '@rovela/sdk/emails':
|
|
8
|
-
* ```typescript
|
|
9
|
-
* import { sendVerificationEmail, sendWelcomeEmail } from '@rovela/sdk/emails'
|
|
10
|
-
* ```
|
|
11
|
-
*/
|
|
12
|
-
/**
|
|
13
|
-
* Send verification email to new customer.
|
|
14
|
-
*
|
|
15
|
-
* @param email - Customer email address
|
|
16
|
-
* @param token - Verification token
|
|
17
|
-
* @param storeName - Name of the store
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* await sendVerificationEmail('customer@example.com', 'abc123token', 'My Store')
|
|
22
|
-
* ```
|
|
23
|
-
*
|
|
24
|
-
* @deprecated Use `sendVerificationEmail` from '@rovela/sdk/emails' for more options
|
|
25
|
-
*/
|
|
26
|
-
export declare function sendVerificationEmail(email: string, token: string, storeName: string): Promise<void>;
|
|
27
|
-
/**
|
|
28
|
-
* Send password reset email to customer.
|
|
29
|
-
*
|
|
30
|
-
* @param email - Customer email address
|
|
31
|
-
* @param token - Reset token
|
|
32
|
-
* @param storeName - Name of the store
|
|
33
|
-
*
|
|
34
|
-
* @example
|
|
35
|
-
* ```typescript
|
|
36
|
-
* await sendPasswordResetEmail('customer@example.com', 'abc123token', 'My Store')
|
|
37
|
-
* ```
|
|
38
|
-
*
|
|
39
|
-
* @deprecated Use `sendPasswordResetEmail` from '@rovela/sdk/emails' for more options
|
|
40
|
-
*/
|
|
41
|
-
export declare function sendPasswordResetEmail(email: string, token: string, storeName: string): Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* Send welcome email to new customer after verification.
|
|
44
|
-
*
|
|
45
|
-
* @param email - Customer email address
|
|
46
|
-
* @param name - Customer name
|
|
47
|
-
* @param storeName - Name of the store
|
|
48
|
-
*
|
|
49
|
-
* @example
|
|
50
|
-
* ```typescript
|
|
51
|
-
* await sendWelcomeEmail('customer@example.com', 'John', 'My Store')
|
|
52
|
-
* ```
|
|
53
|
-
*
|
|
54
|
-
* @deprecated Use `sendWelcomeEmail` from '@rovela/sdk/emails' for more options
|
|
55
|
-
*/
|
|
56
|
-
export declare function sendWelcomeEmail(email: string, name: string | null | undefined, storeName: string): Promise<void>;
|
|
57
|
-
/**
|
|
58
|
-
* Get the store name from configuration or environment.
|
|
59
|
-
* Falls back to a generic name if not configured.
|
|
60
|
-
*
|
|
61
|
-
* @deprecated Use `getStoreName` from '@rovela/sdk/emails'
|
|
62
|
-
*/
|
|
63
|
-
export declare function getStoreName(): Promise<string>;
|
|
64
|
-
//# sourceMappingURL=email-sender.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"email-sender.d.ts","sourceRoot":"","sources":["../../../src/auth/server/email-sender.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAcH;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAEpD"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server/email-sender
|
|
3
|
-
*
|
|
4
|
-
* Email sending utilities for customer authentication.
|
|
5
|
-
* This file re-exports from the emails module for backward compatibility.
|
|
6
|
-
*
|
|
7
|
-
* NOTE: For new code, prefer importing directly from '@rovela/sdk/emails':
|
|
8
|
-
* ```typescript
|
|
9
|
-
* import { sendVerificationEmail, sendWelcomeEmail } from '@rovela/sdk/emails'
|
|
10
|
-
* ```
|
|
11
|
-
*/
|
|
12
|
-
import { sendVerificationEmail as sendVerification, sendPasswordResetEmail as sendPasswordReset, sendWelcomeEmail as sendWelcome, getStoreName as getStoreNameFromEmails, getStoreUrl, } from '../../emails';
|
|
13
|
-
// =============================================================================
|
|
14
|
-
// Re-exported Functions (Backward Compatible API)
|
|
15
|
-
// =============================================================================
|
|
16
|
-
/**
|
|
17
|
-
* Send verification email to new customer.
|
|
18
|
-
*
|
|
19
|
-
* @param email - Customer email address
|
|
20
|
-
* @param token - Verification token
|
|
21
|
-
* @param storeName - Name of the store
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```typescript
|
|
25
|
-
* await sendVerificationEmail('customer@example.com', 'abc123token', 'My Store')
|
|
26
|
-
* ```
|
|
27
|
-
*
|
|
28
|
-
* @deprecated Use `sendVerificationEmail` from '@rovela/sdk/emails' for more options
|
|
29
|
-
*/
|
|
30
|
-
export async function sendVerificationEmail(email, token, storeName) {
|
|
31
|
-
const storeUrl = getStoreUrl();
|
|
32
|
-
const verificationLink = `${storeUrl}/auth/verify-email?token=${token}`;
|
|
33
|
-
const result = await sendVerification({
|
|
34
|
-
to: email,
|
|
35
|
-
customerName: email.split('@')[0], // Fallback to email prefix
|
|
36
|
-
verificationLink,
|
|
37
|
-
expiryTime: '24',
|
|
38
|
-
});
|
|
39
|
-
if (!result.success) {
|
|
40
|
-
console.error('[Auth Email] Failed to send verification email:', result.error);
|
|
41
|
-
throw new Error('Failed to send verification email');
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Send password reset email to customer.
|
|
46
|
-
*
|
|
47
|
-
* @param email - Customer email address
|
|
48
|
-
* @param token - Reset token
|
|
49
|
-
* @param storeName - Name of the store
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* ```typescript
|
|
53
|
-
* await sendPasswordResetEmail('customer@example.com', 'abc123token', 'My Store')
|
|
54
|
-
* ```
|
|
55
|
-
*
|
|
56
|
-
* @deprecated Use `sendPasswordResetEmail` from '@rovela/sdk/emails' for more options
|
|
57
|
-
*/
|
|
58
|
-
export async function sendPasswordResetEmail(email, token, storeName) {
|
|
59
|
-
const storeUrl = getStoreUrl();
|
|
60
|
-
const resetLink = `${storeUrl}/auth/reset-password?token=${token}`;
|
|
61
|
-
const result = await sendPasswordReset({
|
|
62
|
-
to: email,
|
|
63
|
-
customerName: email.split('@')[0], // Fallback to email prefix
|
|
64
|
-
resetLink,
|
|
65
|
-
expiryTime: '1',
|
|
66
|
-
});
|
|
67
|
-
if (!result.success) {
|
|
68
|
-
console.error('[Auth Email] Failed to send password reset email:', result.error);
|
|
69
|
-
throw new Error('Failed to send password reset email');
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Send welcome email to new customer after verification.
|
|
74
|
-
*
|
|
75
|
-
* @param email - Customer email address
|
|
76
|
-
* @param name - Customer name
|
|
77
|
-
* @param storeName - Name of the store
|
|
78
|
-
*
|
|
79
|
-
* @example
|
|
80
|
-
* ```typescript
|
|
81
|
-
* await sendWelcomeEmail('customer@example.com', 'John', 'My Store')
|
|
82
|
-
* ```
|
|
83
|
-
*
|
|
84
|
-
* @deprecated Use `sendWelcomeEmail` from '@rovela/sdk/emails' for more options
|
|
85
|
-
*/
|
|
86
|
-
export async function sendWelcomeEmail(email, name, storeName) {
|
|
87
|
-
const customerName = name || 'there';
|
|
88
|
-
const result = await sendWelcome({
|
|
89
|
-
to: email,
|
|
90
|
-
customerName,
|
|
91
|
-
});
|
|
92
|
-
// Welcome email failure is not critical - just log it
|
|
93
|
-
if (!result.success) {
|
|
94
|
-
console.error('[Auth Email] Failed to send welcome email:', result.error);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Get the store name from configuration or environment.
|
|
99
|
-
* Falls back to a generic name if not configured.
|
|
100
|
-
*
|
|
101
|
-
* @deprecated Use `getStoreName` from '@rovela/sdk/emails'
|
|
102
|
-
*/
|
|
103
|
-
export async function getStoreName() {
|
|
104
|
-
return getStoreNameFromEmails();
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=email-sender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"email-sender.js","sourceRoot":"","sources":["../../../src/auth/server/email-sender.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,qBAAqB,IAAI,gBAAgB,EACzC,sBAAsB,IAAI,iBAAiB,EAC3C,gBAAgB,IAAI,WAAW,EAC/B,YAAY,IAAI,sBAAsB,EACtC,WAAW,GACZ,MAAM,cAAc,CAAA;AAErB,gFAAgF;AAChF,kDAAkD;AAClD,gFAAgF;AAEhF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,KAAa,EACb,SAAiB;IAEjB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,gBAAgB,GAAG,GAAG,QAAQ,4BAA4B,KAAK,EAAE,CAAA;IAEvE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;QACpC,EAAE,EAAE,KAAK;QACT,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B;QAC9D,gBAAgB;QAChB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAC9E,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAa,EACb,KAAa,EACb,SAAiB;IAEjB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,GAAG,QAAQ,8BAA8B,KAAK,EAAE,CAAA;IAElE,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;QACrC,EAAE,EAAE,KAAK;QACT,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B;QAC9D,SAAS;QACT,UAAU,EAAE,GAAG;KAChB,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAChF,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAa,EACb,IAA+B,EAC/B,SAAiB;IAEjB,MAAM,YAAY,GAAG,IAAI,IAAI,OAAO,CAAA;IAEpC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;QAC/B,EAAE,EAAE,KAAK;QACT,YAAY;KACb,CAAC,CAAA;IAEF,sDAAsD;IACtD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3E,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,OAAO,sBAAsB,EAAE,CAAA;AACjC,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server
|
|
3
|
-
*
|
|
4
|
-
* Server-side authentication utilities.
|
|
5
|
-
* Import from '@rovela/sdk/auth/server' in server components and API routes.
|
|
6
|
-
*/
|
|
7
|
-
export { hashPassword, verifyPassword, validatePassword, MIN_PASSWORD_LENGTH, } from './password';
|
|
8
|
-
export { sendVerificationEmail, sendPasswordResetEmail, sendWelcomeEmail, getStoreName, } from './email-sender';
|
|
9
|
-
export { createCustomer, authenticateCustomer, findCustomerForSession, findCustomerByEmail, findCustomerById, updateCustomer, updateCustomerPassword, markEmailVerified, emailExists, } from './customer-service';
|
|
10
|
-
export type { CreateCustomerResult, AuthenticateResult, AuthenticateError, } from './customer-service';
|
|
11
|
-
export { requireCustomer } from './customer-session';
|
|
12
|
-
export type { VerifiedCustomer, RequireCustomerResult } from './customer-session';
|
|
13
|
-
export { createVerificationToken, verifyEmail, deleteVerificationTokens, resendVerificationEmail, isEmailVerified, cleanupExpiredTokens, } from './verification-service';
|
|
14
|
-
export { requestPasswordReset, validateResetToken, resetPassword, deletePasswordResetTokens, cleanupExpiredResetTokens, } from './password-reset-service';
|
|
15
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth/server/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAA;AAGnB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,YAAY,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAGjF,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAA"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server
|
|
3
|
-
*
|
|
4
|
-
* Server-side authentication utilities.
|
|
5
|
-
* Import from '@rovela/sdk/auth/server' in server components and API routes.
|
|
6
|
-
*/
|
|
7
|
-
// Password utilities
|
|
8
|
-
export { hashPassword, verifyPassword, validatePassword, MIN_PASSWORD_LENGTH, } from './password';
|
|
9
|
-
// Email utilities
|
|
10
|
-
export { sendVerificationEmail, sendPasswordResetEmail, sendWelcomeEmail, getStoreName, } from './email-sender';
|
|
11
|
-
// Customer service
|
|
12
|
-
export { createCustomer, authenticateCustomer, findCustomerForSession, findCustomerByEmail, findCustomerById, updateCustomer, updateCustomerPassword, markEmailVerified, emailExists, } from './customer-service';
|
|
13
|
-
// Customer session guard (mirror of requireAdmin on the admin side)
|
|
14
|
-
export { requireCustomer } from './customer-session';
|
|
15
|
-
// Verification service
|
|
16
|
-
export { createVerificationToken, verifyEmail, deleteVerificationTokens, resendVerificationEmail, isEmailVerified, cleanupExpiredTokens, } from './verification-service';
|
|
17
|
-
// Password reset service
|
|
18
|
-
export { requestPasswordReset, validateResetToken, resetPassword, deletePasswordResetTokens, cleanupExpiredResetTokens, } from './password-reset-service';
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auth/server/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,YAAY,CAAA;AAEnB,kBAAkB;AAClB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GACb,MAAM,gBAAgB,CAAA;AAEvB,mBAAmB;AACnB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAO3B,oEAAoE;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAGpD,uBAAuB;AACvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,oBAAoB,GACrB,MAAM,wBAAwB,CAAA;AAE/B,yBAAyB;AACzB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAA"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server/password-reset-service
|
|
3
|
-
*
|
|
4
|
-
* Password reset token management.
|
|
5
|
-
* Handles creating, validating, and using reset tokens.
|
|
6
|
-
* Each store has its own database (via Neon branches) - no tenant isolation needed.
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Request a password reset for a customer.
|
|
10
|
-
* Creates a token and sends reset email.
|
|
11
|
-
*
|
|
12
|
-
* Note: Always returns success to prevent email enumeration attacks.
|
|
13
|
-
*
|
|
14
|
-
* @param email - Customer email address
|
|
15
|
-
* @returns Always returns success (security best practice)
|
|
16
|
-
*
|
|
17
|
-
* @example
|
|
18
|
-
* ```typescript
|
|
19
|
-
* const result = await requestPasswordReset('customer@example.com')
|
|
20
|
-
* // Always show "If an account exists, we've sent a reset email"
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
export declare function requestPasswordReset(email: string): Promise<{
|
|
24
|
-
success: boolean;
|
|
25
|
-
}>;
|
|
26
|
-
/**
|
|
27
|
-
* Validate a password reset token.
|
|
28
|
-
* Does NOT consume the token - use resetPassword() for that.
|
|
29
|
-
*
|
|
30
|
-
* @param token - Reset token from email link
|
|
31
|
-
* @returns Validation result
|
|
32
|
-
*
|
|
33
|
-
* @example
|
|
34
|
-
* ```typescript
|
|
35
|
-
* const result = await validateResetToken(token)
|
|
36
|
-
* if (result.valid) {
|
|
37
|
-
* // Show password reset form
|
|
38
|
-
* } else {
|
|
39
|
-
* // Show error message
|
|
40
|
-
* }
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
export declare function validateResetToken(token: string): Promise<{
|
|
44
|
-
valid: boolean;
|
|
45
|
-
error?: string;
|
|
46
|
-
}>;
|
|
47
|
-
/**
|
|
48
|
-
* Reset password using a token.
|
|
49
|
-
* Validates the token, updates the password, and deletes the token.
|
|
50
|
-
*
|
|
51
|
-
* @param token - Reset token from email link
|
|
52
|
-
* @param newPassword - New password (plain text, will be hashed)
|
|
53
|
-
* @returns Reset result
|
|
54
|
-
*
|
|
55
|
-
* @example
|
|
56
|
-
* ```typescript
|
|
57
|
-
* const result = await resetPassword(token, 'newSecurePassword123')
|
|
58
|
-
* if (result.success) {
|
|
59
|
-
* // Redirect to login
|
|
60
|
-
* } else {
|
|
61
|
-
* // Show error
|
|
62
|
-
* }
|
|
63
|
-
* ```
|
|
64
|
-
*/
|
|
65
|
-
export declare function resetPassword(token: string, newPassword: string): Promise<{
|
|
66
|
-
success: boolean;
|
|
67
|
-
error?: string;
|
|
68
|
-
}>;
|
|
69
|
-
/**
|
|
70
|
-
* Delete all password reset tokens for a customer.
|
|
71
|
-
*
|
|
72
|
-
* @param customerId - Customer UUID
|
|
73
|
-
*
|
|
74
|
-
* @example
|
|
75
|
-
* ```typescript
|
|
76
|
-
* await deletePasswordResetTokens(customerId)
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
export declare function deletePasswordResetTokens(customerId: string): Promise<void>;
|
|
80
|
-
/**
|
|
81
|
-
* Clean up expired password reset tokens.
|
|
82
|
-
* Should be called periodically (e.g., via cron job).
|
|
83
|
-
*
|
|
84
|
-
* @returns Number of tokens deleted
|
|
85
|
-
*/
|
|
86
|
-
export declare function cleanupExpiredResetTokens(): Promise<number>;
|
|
87
|
-
//# sourceMappingURL=password-reset-service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"password-reset-service.d.ts","sourceRoot":"","sources":["../../../src/auth/server/password-reset-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4BH;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,OAAO,EAAE,OAAO,CAAA;CACjB,CAAC,CAiCD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/D,KAAK,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CA+BD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CAyCD;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAMf;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,CASjE"}
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @rovela/sdk/auth/server/password-reset-service
|
|
3
|
-
*
|
|
4
|
-
* Password reset token management.
|
|
5
|
-
* Handles creating, validating, and using reset tokens.
|
|
6
|
-
* Each store has its own database (via Neon branches) - no tenant isolation needed.
|
|
7
|
-
*/
|
|
8
|
-
import { eq, lt } from 'drizzle-orm';
|
|
9
|
-
import { nanoid } from 'nanoid';
|
|
10
|
-
import { getDb } from '../../core/db/client';
|
|
11
|
-
import * as schema from '../../core/db/schema';
|
|
12
|
-
import { findCustomerByEmail, updateCustomerPassword } from './customer-service';
|
|
13
|
-
import { sendPasswordResetEmail, getStoreName } from './email-sender';
|
|
14
|
-
// =============================================================================
|
|
15
|
-
// Constants
|
|
16
|
-
// =============================================================================
|
|
17
|
-
/**
|
|
18
|
-
* Password reset token expiry time in milliseconds (1 hour).
|
|
19
|
-
* Shorter than verification tokens for security.
|
|
20
|
-
*/
|
|
21
|
-
const TOKEN_EXPIRY_MS = 60 * 60 * 1000;
|
|
22
|
-
/**
|
|
23
|
-
* Token length (URL-safe).
|
|
24
|
-
*/
|
|
25
|
-
const TOKEN_LENGTH = 32;
|
|
26
|
-
// =============================================================================
|
|
27
|
-
// Token Management
|
|
28
|
-
// =============================================================================
|
|
29
|
-
/**
|
|
30
|
-
* Request a password reset for a customer.
|
|
31
|
-
* Creates a token and sends reset email.
|
|
32
|
-
*
|
|
33
|
-
* Note: Always returns success to prevent email enumeration attacks.
|
|
34
|
-
*
|
|
35
|
-
* @param email - Customer email address
|
|
36
|
-
* @returns Always returns success (security best practice)
|
|
37
|
-
*
|
|
38
|
-
* @example
|
|
39
|
-
* ```typescript
|
|
40
|
-
* const result = await requestPasswordReset('customer@example.com')
|
|
41
|
-
* // Always show "If an account exists, we've sent a reset email"
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
export async function requestPasswordReset(email) {
|
|
45
|
-
// Find customer by email
|
|
46
|
-
const customer = await findCustomerByEmail(email);
|
|
47
|
-
if (!customer) {
|
|
48
|
-
// Don't reveal if email exists - return success anyway
|
|
49
|
-
return { success: true };
|
|
50
|
-
}
|
|
51
|
-
// Delete any existing reset tokens for this customer
|
|
52
|
-
await deletePasswordResetTokens(customer.id);
|
|
53
|
-
// Generate new token
|
|
54
|
-
const db = getDb();
|
|
55
|
-
const token = nanoid(TOKEN_LENGTH);
|
|
56
|
-
const expires = new Date(Date.now() + TOKEN_EXPIRY_MS);
|
|
57
|
-
await db.insert(schema.customerPasswordResetTokens).values({
|
|
58
|
-
customerId: customer.id,
|
|
59
|
-
token,
|
|
60
|
-
expires,
|
|
61
|
-
});
|
|
62
|
-
// Send reset email
|
|
63
|
-
const storeName = await getStoreName();
|
|
64
|
-
try {
|
|
65
|
-
await sendPasswordResetEmail(email, token, storeName);
|
|
66
|
-
}
|
|
67
|
-
catch (error) {
|
|
68
|
-
console.error('[Auth Reset] Failed to send password reset email:', error);
|
|
69
|
-
// Don't fail the request if email fails - still return success for security
|
|
70
|
-
}
|
|
71
|
-
return { success: true };
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Validate a password reset token.
|
|
75
|
-
* Does NOT consume the token - use resetPassword() for that.
|
|
76
|
-
*
|
|
77
|
-
* @param token - Reset token from email link
|
|
78
|
-
* @returns Validation result
|
|
79
|
-
*
|
|
80
|
-
* @example
|
|
81
|
-
* ```typescript
|
|
82
|
-
* const result = await validateResetToken(token)
|
|
83
|
-
* if (result.valid) {
|
|
84
|
-
* // Show password reset form
|
|
85
|
-
* } else {
|
|
86
|
-
* // Show error message
|
|
87
|
-
* }
|
|
88
|
-
* ```
|
|
89
|
-
*/
|
|
90
|
-
export async function validateResetToken(token) {
|
|
91
|
-
const db = getDb();
|
|
92
|
-
// Find the token
|
|
93
|
-
const [tokenRecord] = await db
|
|
94
|
-
.select()
|
|
95
|
-
.from(schema.customerPasswordResetTokens)
|
|
96
|
-
.where(eq(schema.customerPasswordResetTokens.token, token))
|
|
97
|
-
.limit(1);
|
|
98
|
-
if (!tokenRecord) {
|
|
99
|
-
return {
|
|
100
|
-
valid: false,
|
|
101
|
-
error: 'Invalid or expired reset link. Please request a new one.',
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
// Check if token has expired
|
|
105
|
-
if (new Date() > tokenRecord.expires) {
|
|
106
|
-
// Clean up expired token
|
|
107
|
-
await db
|
|
108
|
-
.delete(schema.customerPasswordResetTokens)
|
|
109
|
-
.where(eq(schema.customerPasswordResetTokens.id, tokenRecord.id));
|
|
110
|
-
return {
|
|
111
|
-
valid: false,
|
|
112
|
-
error: 'Reset link has expired. Please request a new one.',
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
return { valid: true };
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Reset password using a token.
|
|
119
|
-
* Validates the token, updates the password, and deletes the token.
|
|
120
|
-
*
|
|
121
|
-
* @param token - Reset token from email link
|
|
122
|
-
* @param newPassword - New password (plain text, will be hashed)
|
|
123
|
-
* @returns Reset result
|
|
124
|
-
*
|
|
125
|
-
* @example
|
|
126
|
-
* ```typescript
|
|
127
|
-
* const result = await resetPassword(token, 'newSecurePassword123')
|
|
128
|
-
* if (result.success) {
|
|
129
|
-
* // Redirect to login
|
|
130
|
-
* } else {
|
|
131
|
-
* // Show error
|
|
132
|
-
* }
|
|
133
|
-
* ```
|
|
134
|
-
*/
|
|
135
|
-
export async function resetPassword(token, newPassword) {
|
|
136
|
-
const db = getDb();
|
|
137
|
-
// Find the token
|
|
138
|
-
const [tokenRecord] = await db
|
|
139
|
-
.select()
|
|
140
|
-
.from(schema.customerPasswordResetTokens)
|
|
141
|
-
.where(eq(schema.customerPasswordResetTokens.token, token))
|
|
142
|
-
.limit(1);
|
|
143
|
-
if (!tokenRecord) {
|
|
144
|
-
return {
|
|
145
|
-
success: false,
|
|
146
|
-
error: 'Invalid or expired reset link. Please request a new one.',
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
// Check if token has expired
|
|
150
|
-
if (new Date() > tokenRecord.expires) {
|
|
151
|
-
// Clean up expired token
|
|
152
|
-
await db
|
|
153
|
-
.delete(schema.customerPasswordResetTokens)
|
|
154
|
-
.where(eq(schema.customerPasswordResetTokens.id, tokenRecord.id));
|
|
155
|
-
return {
|
|
156
|
-
success: false,
|
|
157
|
-
error: 'Reset link has expired. Please request a new one.',
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
// Update the customer's password
|
|
161
|
-
await updateCustomerPassword(tokenRecord.customerId, newPassword);
|
|
162
|
-
// Delete all reset tokens for this customer
|
|
163
|
-
await db
|
|
164
|
-
.delete(schema.customerPasswordResetTokens)
|
|
165
|
-
.where(eq(schema.customerPasswordResetTokens.customerId, tokenRecord.customerId));
|
|
166
|
-
return { success: true };
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Delete all password reset tokens for a customer.
|
|
170
|
-
*
|
|
171
|
-
* @param customerId - Customer UUID
|
|
172
|
-
*
|
|
173
|
-
* @example
|
|
174
|
-
* ```typescript
|
|
175
|
-
* await deletePasswordResetTokens(customerId)
|
|
176
|
-
* ```
|
|
177
|
-
*/
|
|
178
|
-
export async function deletePasswordResetTokens(customerId) {
|
|
179
|
-
const db = getDb();
|
|
180
|
-
await db
|
|
181
|
-
.delete(schema.customerPasswordResetTokens)
|
|
182
|
-
.where(eq(schema.customerPasswordResetTokens.customerId, customerId));
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Clean up expired password reset tokens.
|
|
186
|
-
* Should be called periodically (e.g., via cron job).
|
|
187
|
-
*
|
|
188
|
-
* @returns Number of tokens deleted
|
|
189
|
-
*/
|
|
190
|
-
export async function cleanupExpiredResetTokens() {
|
|
191
|
-
const db = getDb();
|
|
192
|
-
const result = await db
|
|
193
|
-
.delete(schema.customerPasswordResetTokens)
|
|
194
|
-
.where(lt(schema.customerPasswordResetTokens.expires, new Date()))
|
|
195
|
-
.returning({ id: schema.customerPasswordResetTokens.id });
|
|
196
|
-
return result.length;
|
|
197
|
-
}
|
|
198
|
-
//# sourceMappingURL=password-reset-service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"password-reset-service.js","sourceRoot":"","sources":["../../../src/auth/server/password-reset-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC5C,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAErE,gFAAgF;AAChF,YAAY;AACZ,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,eAAe,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAEtC;;GAEG;AACH,MAAM,YAAY,GAAG,EAAE,CAAA;AAEvB,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAa;IAGtD,yBAAyB;IACzB,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAA;IAEjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,uDAAuD;QACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IAED,qDAAqD;IACrD,MAAM,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAE5C,qBAAqB;IACrB,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAClB,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;IAClC,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC,CAAA;IAEtD,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,MAAM,CAAC;QACzD,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,KAAK;QACL,OAAO;KACR,CAAC,CAAA;IAEF,mBAAmB;IACnB,MAAM,SAAS,GAAG,MAAM,YAAY,EAAE,CAAA;IACtC,IAAI,CAAC;QACH,MAAM,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IACvD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAA;QACzE,4EAA4E;IAC9E,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAa;IAIpD,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAElB,iBAAiB;IACjB,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,EAAE;SAC3B,MAAM,EAAE;SACR,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC;SACxC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SAC1D,KAAK,CAAC,CAAC,CAAC,CAAA;IAEX,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,0DAA0D;SAClE,CAAA;IACH,CAAC;IAED,6BAA6B;IAC7B,IAAI,IAAI,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;QACrC,yBAAyB;QACzB,MAAM,EAAE;aACL,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC;aAC1C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;QAEnE,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,mDAAmD;SAC3D,CAAA;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;AACxB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAa,EACb,WAAmB;IAKnB,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAElB,iBAAiB;IACjB,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,EAAE;SAC3B,MAAM,EAAE;SACR,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC;SACxC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SAC1D,KAAK,CAAC,CAAC,CAAC,CAAA;IAEX,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,0DAA0D;SAClE,CAAA;IACH,CAAC;IAED,6BAA6B;IAC7B,IAAI,IAAI,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;QACrC,yBAAyB;QACzB,MAAM,EAAE;aACL,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC;aAC1C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;QAEnE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mDAAmD;SAC3D,CAAA;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,sBAAsB,CAAC,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;IAEjE,4CAA4C;IAC5C,MAAM,EAAE;SACL,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC;SAC1C,KAAK,CACJ,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,CAC1E,CAAA;IAEH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,UAAkB;IAElB,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAElB,MAAM,EAAE;SACL,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC;SAC1C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AACzE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;IAElB,MAAM,MAAM,GAAG,MAAM,EAAE;SACpB,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC;SAC1C,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;SACjE,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,2BAA2B,CAAC,EAAE,EAAE,CAAC,CAAA;IAE3D,OAAO,MAAM,CAAC,MAAM,CAAA;AACtB,CAAC"}
|