@mohasinac/appkit 2.1.1 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -65
- package/dist/cli/index.d.ts +6 -9
- package/dist/cli/index.js +167 -141
- package/dist/client.d.ts +15 -0
- package/dist/client.js +15 -0
- package/dist/constants/api-endpoint-resolver.d.ts +34 -0
- package/dist/constants/api-endpoint-resolver.js +38 -0
- package/dist/constants/api-endpoints.d.ts +388 -0
- package/dist/constants/api-endpoints.js +342 -0
- package/dist/constants/cache-invalidation.d.ts +18 -0
- package/dist/constants/cache-invalidation.js +33 -0
- package/dist/constants/index.d.ts +14 -0
- package/dist/constants/index.js +14 -0
- package/dist/contracts/auth.d.ts +58 -0
- package/dist/contracts/auth.js +2 -0
- package/dist/contracts/client-auth.d.ts +22 -0
- package/dist/contracts/client-auth.js +17 -0
- package/dist/contracts/client-payment-gateway.d.ts +65 -0
- package/dist/contracts/client-payment-gateway.js +25 -0
- package/dist/contracts/client-realtime.d.ts +24 -0
- package/dist/contracts/client-realtime.js +18 -0
- package/dist/contracts/client-session.d.ts +37 -0
- package/dist/contracts/client-session.js +22 -0
- package/dist/contracts/config.d.ts +53 -0
- package/dist/contracts/config.js +2 -0
- package/dist/contracts/email.d.ts +30 -0
- package/dist/contracts/email.js +2 -0
- package/dist/contracts/extend.d.ts +270 -0
- package/dist/contracts/extend.js +75 -0
- package/dist/contracts/feature.d.ts +53 -0
- package/dist/contracts/feature.js +2 -0
- package/dist/contracts/field-ops.d.ts +31 -0
- package/dist/contracts/field-ops.js +35 -0
- package/dist/contracts/form.d.ts +89 -0
- package/dist/contracts/form.js +80 -0
- package/dist/contracts/index.d.ts +32 -728
- package/dist/contracts/index.js +13 -4
- package/dist/contracts/infra.d.ts +43 -0
- package/dist/contracts/infra.js +2 -0
- package/dist/contracts/payment.d.ts +39 -0
- package/dist/contracts/payment.js +2 -0
- package/dist/contracts/registry.d.ts +26 -0
- package/dist/contracts/registry.js +14 -0
- package/dist/contracts/repository.d.ts +127 -0
- package/dist/contracts/repository.js +28 -0
- package/dist/contracts/search.d.ts +44 -0
- package/dist/contracts/search.js +2 -0
- package/dist/contracts/shipping.d.ts +64 -0
- package/dist/contracts/shipping.js +2 -0
- package/dist/contracts/storage.d.ts +27 -0
- package/dist/contracts/storage.js +2 -0
- package/dist/contracts/style.d.ts +23 -0
- package/dist/contracts/style.js +2 -0
- package/dist/contracts/table.d.ts +104 -0
- package/dist/contracts/table.js +68 -0
- package/dist/core/CacheManager.d.ts +31 -0
- package/dist/core/CacheManager.js +63 -0
- package/dist/core/EventBus.d.ts +27 -0
- package/dist/core/EventBus.js +75 -0
- package/dist/core/Logger.d.ts +60 -0
- package/dist/core/Logger.js +153 -0
- package/dist/core/Queue.d.ts +43 -0
- package/dist/core/Queue.js +92 -0
- package/dist/core/StorageManager.d.ts +36 -0
- package/dist/core/StorageManager.js +159 -0
- package/dist/core/baseline-resolver.d.ts +52 -0
- package/dist/core/baseline-resolver.js +74 -0
- package/dist/core/browser.d.ts +18 -0
- package/dist/core/browser.js +9 -0
- package/dist/core/copilot-log.repository.d.ts +44 -0
- package/dist/core/copilot-log.repository.js +61 -0
- package/dist/core/hooks/useSiteSettings.d.ts +1 -0
- package/dist/core/hooks/useSiteSettings.js +11 -0
- package/dist/core/index.d.ts +31 -326
- package/dist/core/index.js +21 -7
- package/dist/core/integration-keys.d.ts +30 -0
- package/dist/core/integration-keys.js +55 -0
- package/dist/core/mutation-events.d.ts +147 -0
- package/dist/core/mutation-events.js +193 -0
- package/dist/core/newsletter-actions.d.ts +20 -0
- package/dist/core/newsletter-actions.js +28 -0
- package/dist/core/newsletter.repository.d.ts +55 -0
- package/dist/core/newsletter.repository.js +109 -0
- package/dist/core/server-action.d.ts +114 -0
- package/dist/core/server-action.js +119 -0
- package/dist/core/site-config.d.ts +33 -0
- package/dist/core/site-config.js +74 -0
- package/dist/core/unit-of-work.d.ts +32 -0
- package/dist/core/unit-of-work.js +114 -0
- package/dist/errors/api-error.d.ts +4 -0
- package/dist/errors/api-error.js +6 -0
- package/dist/errors/authentication-error.d.ts +4 -0
- package/dist/errors/authentication-error.js +6 -0
- package/dist/errors/authorization-error.d.ts +4 -0
- package/dist/errors/authorization-error.js +6 -0
- package/dist/errors/base-error.d.ts +14 -0
- package/dist/errors/base-error.js +22 -0
- package/dist/errors/database-error.d.ts +4 -0
- package/dist/errors/database-error.js +6 -0
- package/dist/errors/error-codes.d.ts +43 -0
- package/dist/errors/error-codes.js +93 -0
- package/dist/errors/error-handler.d.ts +16 -0
- package/dist/errors/error-handler.js +57 -0
- package/dist/errors/index.d.ts +11 -96
- package/dist/errors/index.js +15 -4
- package/dist/errors/messages.d.ts +469 -0
- package/dist/errors/messages.js +503 -0
- package/dist/errors/not-found-error.d.ts +4 -0
- package/dist/errors/not-found-error.js +6 -0
- package/dist/errors/validation-error.d.ts +4 -0
- package/dist/errors/validation-error.js +6 -0
- package/dist/features/about/components/AboutView.d.ts +38 -0
- package/dist/features/about/components/AboutView.js +5 -0
- package/dist/features/about/index.d.ts +2 -42
- package/dist/features/about/index.js +1 -280
- package/dist/features/account/actions/address-actions.d.ts +7 -0
- package/dist/features/account/actions/address-actions.js +24 -0
- package/dist/features/account/actions/index.d.ts +1 -0
- package/dist/features/account/actions/index.js +1 -0
- package/dist/features/account/address-validation.d.ts +20 -0
- package/dist/features/account/address-validation.js +35 -0
- package/dist/features/account/api/[userId]/addresses/route.d.ts +21 -0
- package/dist/features/account/api/[userId]/addresses/route.js +91 -0
- package/dist/features/account/api/[userId]/route.d.ts +23 -0
- package/dist/features/account/api/[userId]/route.js +67 -0
- package/dist/features/account/columns/index.d.ts +17 -0
- package/dist/features/account/columns/index.js +39 -0
- package/dist/features/account/components/AddressBook.d.ts +39 -0
- package/dist/features/account/components/AddressBook.js +14 -0
- package/dist/features/account/components/AddressForm.d.ts +39 -0
- package/dist/features/account/components/AddressForm.js +55 -0
- package/dist/features/account/components/AddressSelectorCreate.d.ts +16 -0
- package/dist/features/account/components/AddressSelectorCreate.js +40 -0
- package/dist/features/account/components/BecomeSellerView.d.ts +17 -0
- package/dist/features/account/components/BecomeSellerView.js +5 -0
- package/dist/features/account/components/ChatList.d.ts +14 -0
- package/dist/features/account/components/ChatList.js +10 -0
- package/dist/features/account/components/ChatWindow.d.ts +17 -0
- package/dist/features/account/components/ChatWindow.js +6 -0
- package/dist/features/account/components/MessagesView.d.ts +16 -0
- package/dist/features/account/components/MessagesView.js +5 -0
- package/dist/features/account/components/NotificationBell.d.ts +32 -0
- package/dist/features/account/components/NotificationBell.js +80 -0
- package/dist/features/account/components/OrderDetailView.d.ts +18 -0
- package/dist/features/account/components/OrderDetailView.js +12 -0
- package/dist/features/account/components/ProfileView.d.ts +12 -0
- package/dist/features/account/components/ProfileView.js +5 -0
- package/dist/features/account/components/UserAccountHubView.d.ts +13 -0
- package/dist/features/account/components/UserAccountHubView.js +5 -0
- package/dist/features/account/components/UserAddressesView.d.ts +13 -0
- package/dist/features/account/components/UserAddressesView.js +5 -0
- package/dist/features/account/components/UserNotificationsView.d.ts +15 -0
- package/dist/features/account/components/UserNotificationsView.js +12 -0
- package/dist/features/account/components/UserOffersView.d.ts +10 -0
- package/dist/features/account/components/UserOffersView.js +5 -0
- package/dist/features/account/components/UserOrderTrackView.d.ts +16 -0
- package/dist/features/account/components/UserOrderTrackView.js +8 -0
- package/dist/features/account/components/UserOrdersView.d.ts +12 -0
- package/dist/features/account/components/UserOrdersView.js +5 -0
- package/dist/features/account/components/UserSettingsView.d.ts +15 -0
- package/dist/features/account/components/UserSettingsView.js +12 -0
- package/dist/features/account/components/index.d.ts +34 -0
- package/dist/features/account/components/index.js +17 -0
- package/dist/features/account/constants/addresses.d.ts +13 -0
- package/dist/features/account/constants/addresses.js +43 -0
- package/dist/features/account/hooks/useAccount.d.ts +13 -0
- package/dist/features/account/hooks/useAccount.js +19 -0
- package/dist/features/account/hooks/useAddressForm.d.ts +24 -0
- package/dist/features/account/hooks/useAddressForm.js +58 -0
- package/dist/features/account/hooks/useAddressSelector.d.ts +25 -0
- package/dist/features/account/hooks/useAddressSelector.js +30 -0
- package/dist/features/account/hooks/useAddresses.d.ts +59 -0
- package/dist/features/account/hooks/useAddresses.js +73 -0
- package/dist/features/account/hooks/useNotifications.d.ts +23 -0
- package/dist/features/account/hooks/useNotifications.js +31 -0
- package/dist/features/account/hooks/useProfile.d.ts +25 -0
- package/dist/features/account/hooks/useProfile.js +24 -0
- package/dist/features/account/hooks/useProfileStats.d.ts +6 -0
- package/dist/features/account/hooks/useProfileStats.js +21 -0
- package/dist/features/account/hooks/usePublicProfile.d.ts +78 -0
- package/dist/features/account/hooks/usePublicProfile.js +51 -0
- package/dist/features/account/index.d.ts +15 -555
- package/dist/features/account/index.js +15 -1003
- package/dist/features/account/manifest.d.ts +2 -0
- package/dist/features/account/manifest.js +27 -0
- package/dist/features/account/messages/en.json +12 -0
- package/dist/features/account/repository/account.repository.d.ts +11 -0
- package/dist/features/account/repository/account.repository.js +20 -0
- package/dist/features/account/repository/address.repository.d.ts +17 -0
- package/dist/features/account/repository/address.repository.js +185 -0
- package/dist/features/account/schemas/firestore.d.ts +48 -0
- package/dist/features/account/schemas/firestore.js +59 -0
- package/dist/features/account/schemas/index.d.ts +198 -0
- package/dist/features/account/schemas/index.js +51 -0
- package/dist/features/account/server.d.ts +9 -0
- package/dist/features/account/server.js +9 -0
- package/dist/features/account/types/index.d.ts +83 -0
- package/dist/features/account/types/index.js +2 -0
- package/dist/features/admin/actions/admin-actions.d.ts +35 -0
- package/dist/features/admin/actions/admin-actions.js +174 -0
- package/dist/features/admin/actions/admin-coupon-actions.d.ts +17 -0
- package/dist/features/admin/actions/admin-coupon-actions.js +87 -0
- package/dist/features/admin/actions/admin-read-actions.d.ts +105 -0
- package/dist/features/admin/actions/admin-read-actions.js +172 -0
- package/dist/features/admin/actions/chat-actions.d.ts +29 -0
- package/dist/features/admin/actions/chat-actions.js +97 -0
- package/dist/features/admin/actions/index.d.ts +6 -0
- package/dist/features/admin/actions/index.js +6 -0
- package/dist/features/admin/actions/notification-actions.d.ts +31 -0
- package/dist/features/admin/actions/notification-actions.js +42 -0
- package/dist/features/admin/actions/site-settings-actions.d.ts +8 -0
- package/dist/features/admin/actions/site-settings-actions.js +16 -0
- package/dist/features/admin/api/bids/route.d.ts +14 -0
- package/dist/features/admin/api/bids/route.js +53 -0
- package/dist/features/admin/api/coupons/route.d.ts +14 -0
- package/dist/features/admin/api/coupons/route.js +53 -0
- package/dist/features/admin/api/products/route.d.ts +14 -0
- package/dist/features/admin/api/products/route.js +54 -0
- package/dist/features/admin/api/reviews/route.d.ts +14 -0
- package/dist/features/admin/api/reviews/route.js +53 -0
- package/dist/features/admin/components/AdminAnalyticsView.d.ts +29 -0
- package/dist/features/admin/components/AdminAnalyticsView.js +15 -0
- package/dist/features/admin/components/AdminBidsView.d.ts +4 -0
- package/dist/features/admin/components/AdminBidsView.js +5 -0
- package/dist/features/admin/components/AdminBlogView.d.ts +4 -0
- package/dist/features/admin/components/AdminBlogView.js +5 -0
- package/dist/features/admin/components/AdminCarouselView.d.ts +9 -0
- package/dist/features/admin/components/AdminCarouselView.js +5 -0
- package/dist/features/admin/components/AdminCategoriesView.d.ts +9 -0
- package/dist/features/admin/components/AdminCategoriesView.js +5 -0
- package/dist/features/admin/components/AdminCouponsView.d.ts +4 -0
- package/dist/features/admin/components/AdminCouponsView.js +5 -0
- package/dist/features/admin/components/AdminDashboardView.d.ts +16 -0
- package/dist/features/admin/components/AdminDashboardView.js +11 -0
- package/dist/features/admin/components/AdminFaqsView.d.ts +4 -0
- package/dist/features/admin/components/AdminFaqsView.js +5 -0
- package/dist/features/admin/components/AdminFeatureFlagsView.d.ts +9 -0
- package/dist/features/admin/components/AdminFeatureFlagsView.js +5 -0
- package/dist/features/admin/components/AdminFilterBar.d.ts +65 -0
- package/dist/features/admin/components/AdminFilterBar.js +22 -0
- package/dist/features/admin/components/AdminMediaView.d.ts +9 -0
- package/dist/features/admin/components/AdminMediaView.js +5 -0
- package/dist/features/admin/components/AdminNavigationView.d.ts +9 -0
- package/dist/features/admin/components/AdminNavigationView.js +5 -0
- package/dist/features/admin/components/AdminOrdersView.d.ts +4 -0
- package/dist/features/admin/components/AdminOrdersView.js +5 -0
- package/dist/features/admin/components/AdminPageHeader.d.ts +53 -0
- package/dist/features/admin/components/AdminPageHeader.js +12 -0
- package/dist/features/admin/components/AdminPayoutsView.d.ts +4 -0
- package/dist/features/admin/components/AdminPayoutsView.js +5 -0
- package/dist/features/admin/components/AdminProductsView.d.ts +4 -0
- package/dist/features/admin/components/AdminProductsView.js +5 -0
- package/dist/features/admin/components/AdminReviewsView.d.ts +7 -0
- package/dist/features/admin/components/AdminReviewsView.js +5 -0
- package/dist/features/admin/components/AdminSectionsView.d.ts +9 -0
- package/dist/features/admin/components/AdminSectionsView.js +5 -0
- package/dist/features/admin/components/AdminSessionsManager.d.ts +9 -0
- package/dist/features/admin/components/AdminSessionsManager.js +5 -0
- package/dist/features/admin/components/AdminSidebar.d.ts +9 -0
- package/dist/features/admin/components/AdminSidebar.js +6 -0
- package/dist/features/admin/components/AdminSiteView.d.ts +10 -0
- package/dist/features/admin/components/AdminSiteView.js +5 -0
- package/dist/features/admin/components/AdminStoresView.d.ts +4 -0
- package/dist/features/admin/components/AdminStoresView.js +5 -0
- package/dist/features/admin/components/AdminTopBar.d.ts +8 -0
- package/dist/features/admin/components/AdminTopBar.js +8 -0
- package/dist/features/admin/components/AdminUsersView.d.ts +4 -0
- package/dist/features/admin/components/AdminUsersView.js +5 -0
- package/dist/features/admin/components/DashboardStats.d.ts +8 -0
- package/dist/features/admin/components/DashboardStats.js +21 -0
- package/dist/features/admin/components/DataTable.d.ts +19 -0
- package/dist/features/admin/components/DataTable.js +7 -0
- package/dist/features/admin/components/DemoSeedView.d.ts +11 -0
- package/dist/features/admin/components/DemoSeedView.js +5 -0
- package/dist/features/admin/components/DrawerFormFooter.d.ts +54 -0
- package/dist/features/admin/components/DrawerFormFooter.js +6 -0
- package/dist/features/admin/components/QuickActionsPanel.d.ts +15 -0
- package/dist/features/admin/components/QuickActionsPanel.js +6 -0
- package/dist/features/admin/components/analytics/AdminAnalyticsCharts.d.ts +17 -0
- package/dist/features/admin/components/analytics/AdminAnalyticsCharts.js +33 -0
- package/dist/features/admin/components/analytics/AdminStatCard.d.ts +8 -0
- package/dist/features/admin/components/analytics/AdminStatCard.js +6 -0
- package/dist/features/admin/components/analytics/AdminTopProductsTable.d.ts +16 -0
- package/dist/features/admin/components/analytics/AdminTopProductsTable.js +6 -0
- package/dist/features/admin/components/analytics/index.d.ts +3 -0
- package/dist/features/admin/components/analytics/index.js +3 -0
- package/dist/features/admin/components/index.d.ts +62 -0
- package/dist/features/admin/components/index.js +32 -0
- package/dist/features/admin/hooks/useAdmin.d.ts +9 -0
- package/dist/features/admin/hooks/useAdmin.js +14 -0
- package/dist/features/admin/hooks/useChat.d.ts +24 -0
- package/dist/features/admin/hooks/useChat.js +97 -0
- package/dist/features/admin/index.d.ts +8 -554
- package/dist/features/admin/index.js +7 -2703
- package/dist/features/admin/manifest.d.ts +2 -0
- package/dist/features/admin/manifest.js +13 -0
- package/dist/features/admin/messages/en.json +13 -0
- package/dist/features/admin/permission-map.d.ts +3 -0
- package/dist/features/admin/permission-map.js +24 -0
- package/dist/features/admin/repository/chat.repository.d.ts +70 -0
- package/dist/features/admin/repository/chat.repository.js +216 -0
- package/dist/features/admin/repository/notification.repository.d.ts +64 -0
- package/dist/features/admin/repository/notification.repository.js +225 -0
- package/dist/features/admin/repository/site-settings.repository.d.ts +118 -0
- package/dist/features/admin/repository/site-settings.repository.js +214 -0
- package/dist/features/admin/schemas/firestore.d.ts +311 -0
- package/dist/features/admin/schemas/firestore.js +246 -0
- package/dist/features/admin/schemas/index.d.ts +1 -0
- package/dist/features/admin/schemas/index.js +1 -0
- package/dist/features/admin/server.d.ts +15 -0
- package/dist/features/admin/server.js +14 -0
- package/dist/features/admin/types/index.d.ts +61 -0
- package/dist/features/admin/types/index.js +1 -0
- package/dist/features/admin/types/product.types.d.ts +78 -0
- package/dist/features/admin/types/product.types.js +13 -0
- package/dist/features/auctions/actions/bid-actions.d.ts +22 -0
- package/dist/features/auctions/actions/bid-actions.js +106 -0
- package/dist/features/auctions/actions/index.d.ts +1 -0
- package/dist/features/auctions/actions/index.js +1 -0
- package/dist/features/auctions/api/route.d.ts +14 -0
- package/dist/features/auctions/api/route.js +67 -0
- package/dist/features/auctions/columns/index.d.ts +14 -0
- package/dist/features/auctions/columns/index.js +63 -0
- package/dist/features/auctions/components/AuctionCard.d.ts +26 -0
- package/dist/features/auctions/components/AuctionCard.js +35 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +56 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +112 -0
- package/dist/features/auctions/components/MarketplaceAuctionGrid.d.ts +22 -0
- package/dist/features/auctions/components/MarketplaceAuctionGrid.js +37 -0
- package/dist/features/auctions/components/index.d.ts +3 -0
- package/dist/features/auctions/components/index.js +3 -0
- package/dist/features/auctions/hooks/useAuctions.d.ts +50 -0
- package/dist/features/auctions/hooks/useAuctions.js +93 -0
- package/dist/features/auctions/hooks/usePlaceBid.d.ts +24 -0
- package/dist/features/auctions/hooks/usePlaceBid.js +29 -0
- package/dist/features/auctions/hooks/useRealtimeBids.d.ts +38 -0
- package/dist/features/auctions/hooks/useRealtimeBids.js +66 -0
- package/dist/features/auctions/index.d.ts +8 -513
- package/dist/features/auctions/index.js +8 -1194
- package/dist/features/auctions/manifest.d.ts +2 -0
- package/dist/features/auctions/manifest.js +17 -0
- package/dist/features/auctions/messages/en.json +18 -0
- package/dist/features/auctions/repository/auctions.repository.d.ts +12 -0
- package/dist/features/auctions/repository/auctions.repository.js +42 -0
- package/dist/features/auctions/repository/bid.repository.d.ts +145 -0
- package/dist/features/auctions/repository/bid.repository.js +370 -0
- package/dist/features/auctions/schemas/firestore.d.ts +48 -0
- package/dist/features/auctions/schemas/firestore.js +50 -0
- package/dist/features/auctions/schemas/index.d.ts +155 -0
- package/dist/features/auctions/schemas/index.js +64 -0
- package/dist/features/auctions/server.d.ts +10 -0
- package/dist/features/auctions/server.js +10 -0
- package/dist/features/auctions/types/index.d.ts +73 -0
- package/dist/features/auctions/types/index.js +1 -0
- package/dist/features/auth/actions/index.d.ts +2 -0
- package/dist/features/auth/actions/index.js +2 -0
- package/dist/features/auth/actions/profile-actions.d.ts +27 -0
- package/dist/features/auth/actions/profile-actions.js +50 -0
- package/dist/features/auth/actions/realtime-token-actions.d.ts +11 -0
- package/dist/features/auth/actions/realtime-token-actions.js +31 -0
- package/dist/features/auth/api/route.d.ts +22 -0
- package/dist/features/auth/api/route.js +48 -0
- package/dist/features/auth/auth-helpers.d.ts +14 -0
- package/dist/features/auth/auth-helpers.js +68 -0
- package/dist/features/auth/components/AuthStatusPanel.d.ts +10 -0
- package/dist/features/auth/components/AuthStatusPanel.js +22 -0
- package/dist/features/auth/components/ForgotPasswordView.d.ts +18 -0
- package/dist/features/auth/components/ForgotPasswordView.js +15 -0
- package/dist/features/auth/components/Guards.d.ts +86 -0
- package/dist/features/auth/components/Guards.js +91 -0
- package/dist/features/auth/components/LoginForm.d.ts +36 -0
- package/dist/features/auth/components/LoginForm.js +18 -0
- package/dist/features/auth/components/RegisterForm.d.ts +36 -0
- package/dist/features/auth/components/RegisterForm.js +27 -0
- package/dist/features/auth/components/ResetPasswordView.d.ts +23 -0
- package/dist/features/auth/components/ResetPasswordView.js +22 -0
- package/dist/features/auth/components/SocialAuthButtons.d.ts +8 -0
- package/dist/features/auth/components/SocialAuthButtons.js +6 -0
- package/dist/features/auth/components/VerifyEmailView.d.ts +20 -0
- package/dist/features/auth/components/VerifyEmailView.js +8 -0
- package/dist/features/auth/components/index.d.ts +14 -0
- package/dist/features/auth/components/index.js +8 -0
- package/dist/features/auth/consent-otp.d.ts +52 -0
- package/dist/features/auth/consent-otp.js +120 -0
- package/dist/features/auth/hooks/useAuth.d.ts +81 -0
- package/dist/features/auth/hooks/useAuth.js +164 -0
- package/dist/features/auth/hooks/useAuthEvent.d.ts +22 -0
- package/dist/features/auth/hooks/useAuthEvent.js +31 -0
- package/dist/features/auth/hooks/useLogout.d.ts +16 -0
- package/dist/features/auth/hooks/useLogout.js +22 -0
- package/dist/features/auth/hooks/useRBAC.d.ts +38 -0
- package/dist/features/auth/hooks/useRBAC.js +80 -0
- package/dist/features/auth/index.d.ts +10 -315
- package/dist/features/auth/index.js +10 -1874
- package/dist/features/auth/manifest.d.ts +2 -0
- package/dist/features/auth/manifest.js +21 -0
- package/dist/features/auth/messages/en.json +13 -0
- package/dist/features/auth/repository/index.d.ts +4 -0
- package/dist/features/auth/repository/index.js +4 -0
- package/dist/features/auth/repository/session.repository.d.ts +44 -0
- package/dist/features/auth/repository/session.repository.js +246 -0
- package/dist/features/auth/repository/sms-counter.repository.d.ts +15 -0
- package/dist/features/auth/repository/sms-counter.repository.js +54 -0
- package/dist/features/auth/repository/token.repository.d.ts +38 -0
- package/dist/features/auth/repository/token.repository.js +186 -0
- package/dist/features/auth/repository/user.repository.d.ts +46 -0
- package/dist/features/auth/repository/user.repository.js +233 -0
- package/dist/features/auth/schemas/firestore.d.ts +351 -0
- package/dist/features/auth/schemas/firestore.js +272 -0
- package/dist/features/auth/schemas/index.d.ts +72 -0
- package/dist/features/auth/schemas/index.js +41 -0
- package/dist/features/auth/server.d.ts +15 -18
- package/dist/features/auth/server.js +21 -529
- package/dist/features/auth/token-helpers.d.ts +7 -0
- package/dist/features/auth/token-helpers.js +37 -0
- package/dist/features/auth/token-store.d.ts +39 -0
- package/dist/features/auth/token-store.js +120 -0
- package/dist/features/auth/types/index.d.ts +30 -0
- package/dist/features/auth/types/index.js +1 -0
- package/dist/features/before-after/api/[id]/route.d.ts +26 -0
- package/dist/features/before-after/api/[id]/route.js +88 -0
- package/dist/features/before-after/api/route.d.ts +13 -0
- package/dist/features/before-after/api/route.js +79 -0
- package/dist/features/before-after/columns/index.d.ts +17 -0
- package/dist/features/before-after/columns/index.js +50 -0
- package/dist/features/before-after/components/BeforeAfterGallery.d.ts +7 -0
- package/dist/features/before-after/components/BeforeAfterGallery.js +8 -0
- package/dist/features/before-after/components/BeforeAfterSlider.d.ts +7 -0
- package/dist/features/before-after/components/BeforeAfterSlider.js +27 -0
- package/dist/features/before-after/components/index.d.ts +2 -0
- package/dist/features/before-after/components/index.js +2 -0
- package/dist/features/before-after/hooks/useBeforeAfter.d.ts +15 -0
- package/dist/features/before-after/hooks/useBeforeAfter.js +25 -0
- package/dist/features/before-after/index.d.ts +6 -128
- package/dist/features/before-after/index.js +6 -546
- package/dist/features/before-after/manifest.d.ts +2 -0
- package/dist/features/before-after/manifest.js +10 -0
- package/dist/features/before-after/messages/en.json +8 -0
- package/dist/features/before-after/repository/before-after.repository.d.ts +13 -0
- package/dist/features/before-after/repository/before-after.repository.js +36 -0
- package/dist/features/before-after/schemas/index.d.ts +48 -0
- package/dist/features/before-after/schemas/index.js +24 -0
- package/dist/features/before-after/server.d.ts +7 -0
- package/dist/features/before-after/server.js +7 -0
- package/dist/features/before-after/types/index.d.ts +18 -0
- package/dist/features/before-after/types/index.js +1 -0
- package/dist/features/blog/actions/blog-actions.d.ts +302 -0
- package/dist/features/blog/actions/blog-actions.js +119 -0
- package/dist/features/blog/actions/index.d.ts +1 -0
- package/dist/features/blog/actions/index.js +1 -0
- package/dist/features/blog/api/[slug]/route.d.ts +23 -0
- package/dist/features/blog/api/[slug]/route.js +40 -0
- package/dist/features/blog/api/route.d.ts +12 -0
- package/dist/features/blog/api/route.js +64 -0
- package/dist/features/blog/columns/index.d.ts +27 -0
- package/dist/features/blog/columns/index.js +54 -0
- package/dist/features/blog/components/BlogFeaturedCard.d.ts +17 -0
- package/dist/features/blog/components/BlogFeaturedCard.js +24 -0
- package/dist/features/blog/components/BlogFilters.d.ts +106 -0
- package/dist/features/blog/components/BlogFilters.js +67 -0
- package/dist/features/blog/components/BlogListView.d.ts +29 -0
- package/dist/features/blog/components/BlogListView.js +38 -0
- package/dist/features/blog/components/BlogPostForm.d.ts +56 -0
- package/dist/features/blog/components/BlogPostForm.js +24 -0
- package/dist/features/blog/components/BlogPostView.d.ts +32 -0
- package/dist/features/blog/components/BlogPostView.js +39 -0
- package/dist/features/blog/components/index.d.ts +9 -0
- package/dist/features/blog/components/index.js +5 -0
- package/dist/features/blog/hooks/useBlog.d.ts +27 -0
- package/dist/features/blog/hooks/useBlog.js +51 -0
- package/dist/features/blog/index.d.ts +6 -492
- package/dist/features/blog/index.js +6 -4062
- package/dist/features/blog/manifest.d.ts +2 -0
- package/dist/features/blog/manifest.js +14 -0
- package/dist/features/blog/messages/en.json +14 -0
- package/dist/features/blog/repository/blog.repository.d.ts +79 -0
- package/dist/features/blog/repository/blog.repository.js +130 -0
- package/dist/features/blog/schemas/firestore.d.ts +87 -0
- package/dist/features/blog/schemas/firestore.js +99 -0
- package/dist/features/blog/schemas/index.d.ts +207 -0
- package/dist/features/blog/schemas/index.js +71 -0
- package/dist/features/blog/server.d.ts +8 -71
- package/dist/features/blog/server.js +10 -180
- package/dist/features/blog/types/index.d.ts +47 -0
- package/dist/features/blog/types/index.js +1 -0
- package/dist/features/cart/actions/cart-actions.d.ts +16 -0
- package/dist/features/cart/actions/cart-actions.js +52 -0
- package/dist/features/cart/actions/index.d.ts +1 -0
- package/dist/features/cart/actions/index.js +1 -0
- package/dist/features/cart/api/[id]/route.d.ts +21 -0
- package/dist/features/cart/api/[id]/route.js +62 -0
- package/dist/features/cart/api/route.d.ts +13 -0
- package/dist/features/cart/api/route.js +79 -0
- package/dist/features/cart/columns/index.d.ts +17 -0
- package/dist/features/cart/columns/index.js +53 -0
- package/dist/features/cart/components/CartDrawer.d.ts +27 -0
- package/dist/features/cart/components/CartDrawer.js +14 -0
- package/dist/features/cart/components/CartSummary.d.ts +19 -0
- package/dist/features/cart/components/CartSummary.js +5 -0
- package/dist/features/cart/components/CartView.d.ts +17 -0
- package/dist/features/cart/components/CartView.js +7 -0
- package/dist/features/cart/components/CheckoutAddressStep.d.ts +20 -0
- package/dist/features/cart/components/CheckoutAddressStep.js +12 -0
- package/dist/features/cart/components/CheckoutOtpModal.d.ts +15 -0
- package/dist/features/cart/components/CheckoutOtpModal.js +12 -0
- package/dist/features/cart/components/CheckoutSuccessView.d.ts +12 -0
- package/dist/features/cart/components/CheckoutSuccessView.js +9 -0
- package/dist/features/cart/components/CheckoutView.d.ts +15 -0
- package/dist/features/cart/components/CheckoutView.js +18 -0
- package/dist/features/cart/components/index.d.ts +13 -0
- package/dist/features/cart/components/index.js +7 -0
- package/dist/features/cart/hooks/useAddToCart.d.ts +27 -0
- package/dist/features/cart/hooks/useAddToCart.js +52 -0
- package/dist/features/cart/hooks/useCart.d.ts +17 -0
- package/dist/features/cart/hooks/useCart.js +24 -0
- package/dist/features/cart/hooks/useCartCount.d.ts +7 -0
- package/dist/features/cart/hooks/useCartCount.js +19 -0
- package/dist/features/cart/hooks/useCartQuery.d.ts +8 -0
- package/dist/features/cart/hooks/useCartQuery.js +11 -0
- package/dist/features/cart/hooks/useCheckoutReadQueries.d.ts +14 -0
- package/dist/features/cart/hooks/useCheckoutReadQueries.js +18 -0
- package/dist/features/cart/hooks/useGuestCart.d.ts +18 -0
- package/dist/features/cart/hooks/useGuestCart.js +32 -0
- package/dist/features/cart/hooks/useGuestCartMerge.d.ts +15 -0
- package/dist/features/cart/hooks/useGuestCartMerge.js +50 -0
- package/dist/features/cart/hooks/useOrder.d.ts +13 -0
- package/dist/features/cart/hooks/useOrder.js +24 -0
- package/dist/features/cart/index.d.ts +14 -451
- package/dist/features/cart/index.js +14 -1064
- package/dist/features/cart/manifest.d.ts +2 -0
- package/dist/features/cart/manifest.js +10 -0
- package/dist/features/cart/messages/en.json +10 -0
- package/dist/features/cart/repository/cart.repository.d.ts +23 -0
- package/dist/features/cart/repository/cart.repository.js +210 -0
- package/dist/features/cart/schemas/firestore.d.ts +83 -0
- package/dist/features/cart/schemas/firestore.js +36 -0
- package/dist/features/cart/schemas/index.d.ts +184 -0
- package/dist/features/cart/schemas/index.js +35 -0
- package/dist/features/cart/server.d.ts +8 -0
- package/dist/features/cart/server.js +8 -0
- package/dist/features/cart/types/index.d.ts +27 -0
- package/dist/features/cart/types/index.js +1 -0
- package/dist/features/cart/utils/guest-cart.d.ts +26 -0
- package/dist/features/cart/utils/guest-cart.js +83 -0
- package/dist/features/categories/actions/category-actions.d.ts +17 -0
- package/dist/features/categories/actions/category-actions.js +63 -0
- package/dist/features/categories/actions/index.d.ts +1 -0
- package/dist/features/categories/actions/index.js +1 -0
- package/dist/features/categories/api/[id]/route.d.ts +23 -0
- package/dist/features/categories/api/[id]/route.js +98 -0
- package/dist/features/categories/api/route.d.ts +19 -0
- package/dist/features/categories/api/route.js +200 -0
- package/dist/features/categories/columns/index.d.ts +15 -0
- package/dist/features/categories/columns/index.js +38 -0
- package/dist/features/categories/components/BreadcrumbTrail.d.ts +47 -0
- package/dist/features/categories/components/BreadcrumbTrail.js +36 -0
- package/dist/features/categories/components/CategoriesListView.d.ts +31 -0
- package/dist/features/categories/components/CategoriesListView.js +27 -0
- package/dist/features/categories/components/CategoryFilters.d.ts +68 -0
- package/dist/features/categories/components/CategoryFilters.js +75 -0
- package/dist/features/categories/components/CategoryForm.d.ts +24 -0
- package/dist/features/categories/components/CategoryForm.js +42 -0
- package/dist/features/categories/components/CategoryGrid.d.ts +14 -0
- package/dist/features/categories/components/CategoryGrid.js +14 -0
- package/dist/features/categories/components/CategoryProductsView.d.ts +49 -0
- package/dist/features/categories/components/CategoryProductsView.js +21 -0
- package/dist/features/categories/components/CategorySelectorCreate.d.ts +17 -0
- package/dist/features/categories/components/CategorySelectorCreate.js +57 -0
- package/dist/features/categories/components/CategorySortSelect.d.ts +9 -0
- package/dist/features/categories/components/CategorySortSelect.js +8 -0
- package/dist/features/categories/components/CategoryTableColumns.d.ts +30 -0
- package/dist/features/categories/components/CategoryTableColumns.js +54 -0
- package/dist/features/categories/components/CategoryTree.d.ts +15 -0
- package/dist/features/categories/components/CategoryTree.js +49 -0
- package/dist/features/categories/components/ConcernCard.d.ts +8 -0
- package/dist/features/categories/components/ConcernCard.js +5 -0
- package/dist/features/categories/components/ConcernGrid.d.ts +8 -0
- package/dist/features/categories/components/ConcernGrid.js +8 -0
- package/dist/features/categories/components/index.d.ts +22 -0
- package/dist/features/categories/components/index.js +12 -0
- package/dist/features/categories/hooks/useCategories.d.ts +26 -0
- package/dist/features/categories/hooks/useCategories.js +50 -0
- package/dist/features/categories/hooks/useCategorySelector.d.ts +26 -0
- package/dist/features/categories/hooks/useCategorySelector.js +42 -0
- package/dist/features/categories/index.d.ts +7 -461
- package/dist/features/categories/index.js +7 -2031
- package/dist/features/categories/manifest.d.ts +2 -0
- package/dist/features/categories/manifest.js +20 -0
- package/dist/features/categories/messages/en.json +14 -0
- package/dist/features/categories/repository/categories.repository.d.ts +31 -0
- package/dist/features/categories/repository/categories.repository.js +399 -0
- package/dist/features/categories/schemas/firestore.d.ts +140 -0
- package/dist/features/categories/schemas/firestore.js +189 -0
- package/dist/features/categories/schemas/index.d.ts +207 -0
- package/dist/features/categories/schemas/index.js +67 -0
- package/dist/features/categories/server.d.ts +7 -44
- package/dist/features/categories/server.js +10 -789
- package/dist/features/categories/types/index.d.ts +80 -0
- package/dist/features/categories/types/index.js +13 -0
- package/dist/features/checkout/actions/checkout-actions.d.ts +14 -0
- package/dist/features/checkout/actions/checkout-actions.js +91 -0
- package/dist/features/checkout/actions/index.d.ts +1 -0
- package/dist/features/checkout/actions/index.js +1 -0
- package/dist/features/checkout/components/CheckoutStepper.d.ts +10 -0
- package/dist/features/checkout/components/CheckoutStepper.js +15 -0
- package/dist/features/checkout/components/index.d.ts +1 -0
- package/dist/features/checkout/components/index.js +1 -0
- package/dist/features/checkout/hooks/useCheckout.d.ts +9 -0
- package/dist/features/checkout/hooks/useCheckout.js +24 -0
- package/dist/features/checkout/hooks/useCheckoutApi.d.ts +74 -0
- package/dist/features/checkout/hooks/useCheckoutApi.js +48 -0
- package/dist/features/checkout/hooks/usePaymentCheckout.d.ts +78 -0
- package/dist/features/checkout/hooks/usePaymentCheckout.js +178 -0
- package/dist/features/checkout/index.d.ts +8 -70
- package/dist/features/checkout/index.js +7 -192
- package/dist/features/checkout/manifest.d.ts +2 -0
- package/dist/features/checkout/manifest.js +17 -0
- package/dist/features/checkout/messages/en.json +10 -0
- package/dist/features/checkout/repository/failed-checkout.repository.d.ts +18 -0
- package/dist/features/checkout/repository/failed-checkout.repository.js +29 -0
- package/dist/features/checkout/schemas/firestore.d.ts +33 -0
- package/dist/features/checkout/schemas/firestore.js +6 -0
- package/dist/features/checkout/schemas/index.d.ts +1 -0
- package/dist/features/checkout/schemas/index.js +1 -0
- package/dist/features/checkout/server.d.ts +8 -0
- package/dist/features/checkout/server.js +8 -0
- package/dist/features/checkout/types/index.d.ts +46 -0
- package/dist/features/checkout/types/index.js +2 -0
- package/dist/features/cms/index.d.ts +1 -2
- package/dist/features/cms/index.js +5 -4
- package/dist/features/collections/api/[slug]/route.d.ts +26 -0
- package/dist/features/collections/api/[slug]/route.js +102 -0
- package/dist/features/collections/api/route.d.ts +13 -0
- package/dist/features/collections/api/route.js +79 -0
- package/dist/features/collections/columns/index.d.ts +17 -0
- package/dist/features/collections/columns/index.js +55 -0
- package/dist/features/collections/components/CollectionCard.d.ts +12 -0
- package/dist/features/collections/components/CollectionCard.js +9 -0
- package/dist/features/collections/components/index.d.ts +1 -0
- package/dist/features/collections/components/index.js +1 -0
- package/dist/features/collections/hooks/useCollections.d.ts +7 -0
- package/dist/features/collections/hooks/useCollections.js +34 -0
- package/dist/features/collections/index.d.ts +6 -148
- package/dist/features/collections/index.js +6 -378
- package/dist/features/collections/manifest.d.ts +2 -0
- package/dist/features/collections/manifest.js +16 -0
- package/dist/features/collections/messages/en.json +10 -0
- package/dist/features/collections/repository/collections.repository.d.ts +8 -0
- package/dist/features/collections/repository/collections.repository.js +16 -0
- package/dist/features/collections/schemas/index.d.ts +76 -0
- package/dist/features/collections/schemas/index.js +34 -0
- package/dist/features/collections/server.d.ts +7 -0
- package/dist/features/collections/server.js +7 -0
- package/dist/features/collections/types/index.d.ts +25 -0
- package/dist/features/collections/types/index.js +1 -0
- package/dist/features/consultation/api/[id]/route.d.ts +26 -0
- package/dist/features/consultation/api/[id]/route.js +88 -0
- package/dist/features/consultation/api/route.d.ts +13 -0
- package/dist/features/consultation/api/route.js +79 -0
- package/dist/features/consultation/columns/index.d.ts +17 -0
- package/dist/features/consultation/columns/index.js +54 -0
- package/dist/features/consultation/components/ConsultationForm.d.ts +8 -0
- package/dist/features/consultation/components/ConsultationForm.js +51 -0
- package/dist/features/consultation/components/index.d.ts +1 -0
- package/dist/features/consultation/components/index.js +1 -0
- package/dist/features/consultation/hooks/useBookConsultation.d.ts +8 -0
- package/dist/features/consultation/hooks/useBookConsultation.js +16 -0
- package/dist/features/consultation/index.d.ts +6 -172
- package/dist/features/consultation/index.js +6 -1084
- package/dist/features/consultation/manifest.d.ts +2 -0
- package/dist/features/consultation/manifest.js +12 -0
- package/dist/features/consultation/messages/en.json +25 -0
- package/dist/features/consultation/repository/consultations.repository.d.ts +12 -0
- package/dist/features/consultation/repository/consultations.repository.js +28 -0
- package/dist/features/consultation/schemas/index.d.ts +87 -0
- package/dist/features/consultation/schemas/index.js +47 -0
- package/dist/features/consultation/server.d.ts +7 -0
- package/dist/features/consultation/server.js +7 -0
- package/dist/features/consultation/types/index.d.ts +33 -0
- package/dist/features/consultation/types/index.js +1 -0
- package/dist/features/contact/components/ContactForm.d.ts +32 -0
- package/dist/features/contact/components/ContactForm.js +58 -0
- package/dist/features/contact/components/ContactInfoSidebar.d.ts +20 -0
- package/dist/features/contact/components/ContactInfoSidebar.js +6 -0
- package/dist/features/contact/components/index.d.ts +4 -0
- package/dist/features/contact/components/index.js +2 -0
- package/dist/features/contact/email.d.ts +61 -0
- package/dist/features/contact/email.js +345 -0
- package/dist/features/contact/hooks/useContactSubmit.d.ts +4 -0
- package/dist/features/contact/hooks/useContactSubmit.js +7 -0
- package/dist/features/contact/index.d.ts +2 -56
- package/dist/features/contact/index.js +2 -586
- package/dist/features/contact/server.d.ts +7 -0
- package/dist/features/contact/server.js +7 -0
- package/dist/features/copilot/components/AdminCopilotView.d.ts +21 -0
- package/dist/features/copilot/components/AdminCopilotView.js +29 -0
- package/dist/features/copilot/components/index.d.ts +2 -0
- package/dist/features/copilot/components/index.js +1 -0
- package/dist/features/copilot/hooks/useCopilotChat.d.ts +22 -0
- package/dist/features/copilot/hooks/useCopilotChat.js +57 -0
- package/dist/features/copilot/hooks/useCopilotFeedback.d.ts +15 -0
- package/dist/features/copilot/hooks/useCopilotFeedback.js +16 -0
- package/dist/features/copilot/index.d.ts +3 -47
- package/dist/features/copilot/index.js +3 -681
- package/dist/features/corporate/api/[id]/route.d.ts +26 -0
- package/dist/features/corporate/api/[id]/route.js +88 -0
- package/dist/features/corporate/api/route.d.ts +13 -0
- package/dist/features/corporate/api/route.js +79 -0
- package/dist/features/corporate/columns/index.d.ts +17 -0
- package/dist/features/corporate/columns/index.js +54 -0
- package/dist/features/corporate/components/CorporateInquiryForm.d.ts +7 -0
- package/dist/features/corporate/components/CorporateInquiryForm.js +36 -0
- package/dist/features/corporate/components/index.d.ts +1 -0
- package/dist/features/corporate/components/index.js +1 -0
- package/dist/features/corporate/hooks/useSubmitCorporateInquiry.d.ts +8 -0
- package/dist/features/corporate/hooks/useSubmitCorporateInquiry.js +16 -0
- package/dist/features/corporate/index.d.ts +6 -183
- package/dist/features/corporate/index.js +6 -782
- package/dist/features/corporate/manifest.d.ts +2 -0
- package/dist/features/corporate/manifest.js +12 -0
- package/dist/features/corporate/messages/en.json +26 -0
- package/dist/features/corporate/repository/corporate.repository.d.ts +12 -0
- package/dist/features/corporate/repository/corporate.repository.js +28 -0
- package/dist/features/corporate/schemas/index.d.ts +95 -0
- package/dist/features/corporate/schemas/index.js +50 -0
- package/dist/features/corporate/server.d.ts +7 -0
- package/dist/features/corporate/server.js +7 -0
- package/dist/features/corporate/types/index.d.ts +37 -0
- package/dist/features/corporate/types/index.js +1 -0
- package/dist/features/cron/firebase-adapters.d.ts +70 -0
- package/dist/features/cron/firebase-adapters.js +68 -0
- package/dist/features/cron/index.d.ts +5 -0
- package/dist/features/cron/index.js +7 -0
- package/dist/features/cron/jobs/auction-expiry.job.d.ts +27 -0
- package/dist/features/cron/jobs/auction-expiry.job.js +38 -0
- package/dist/features/cron/jobs/preorder-reminder.job.d.ts +14 -0
- package/dist/features/cron/jobs/preorder-reminder.job.js +40 -0
- package/dist/features/cron/registry.d.ts +45 -0
- package/dist/features/cron/registry.js +86 -0
- package/dist/features/cron/types.d.ts +66 -0
- package/dist/features/cron/types.js +9 -0
- package/dist/features/events/actions/event-actions.d.ts +92 -0
- package/dist/features/events/actions/event-actions.js +253 -0
- package/dist/features/events/actions/index.d.ts +1 -0
- package/dist/features/events/actions/index.js +1 -0
- package/dist/features/events/api/[id]/route.d.ts +24 -0
- package/dist/features/events/api/[id]/route.js +83 -0
- package/dist/features/events/api/route.d.ts +12 -0
- package/dist/features/events/api/route.js +88 -0
- package/dist/features/events/columns/index.d.ts +22 -0
- package/dist/features/events/columns/index.js +41 -0
- package/dist/features/events/components/AdminEventEntriesView.d.ts +17 -0
- package/dist/features/events/components/AdminEventEntriesView.js +10 -0
- package/dist/features/events/components/AdminEventsView.d.ts +11 -0
- package/dist/features/events/components/AdminEventsView.js +5 -0
- package/dist/features/events/components/EventBanner.d.ts +13 -0
- package/dist/features/events/components/EventBanner.js +48 -0
- package/dist/features/events/components/EventCard.d.ts +13 -0
- package/dist/features/events/components/EventCard.js +21 -0
- package/dist/features/events/components/EventDetailView.d.ts +15 -0
- package/dist/features/events/components/EventDetailView.js +11 -0
- package/dist/features/events/components/EventFilters.d.ts +105 -0
- package/dist/features/events/components/EventFilters.js +73 -0
- package/dist/features/events/components/EventFormDrawer.d.ts +22 -0
- package/dist/features/events/components/EventFormDrawer.js +6 -0
- package/dist/features/events/components/EventLeaderboard.d.ts +23 -0
- package/dist/features/events/components/EventLeaderboard.js +18 -0
- package/dist/features/events/components/EventParticipateView.d.ts +19 -0
- package/dist/features/events/components/EventParticipateView.js +13 -0
- package/dist/features/events/components/EventStatusBadge.d.ts +7 -0
- package/dist/features/events/components/EventStatusBadge.js +12 -0
- package/dist/features/events/components/EventsListView.d.ts +16 -0
- package/dist/features/events/components/EventsListView.js +21 -0
- package/dist/features/events/components/index.d.ts +19 -0
- package/dist/features/events/components/index.js +11 -0
- package/dist/features/events/hooks/useBulkEvent.d.ts +19 -0
- package/dist/features/events/hooks/useBulkEvent.js +36 -0
- package/dist/features/events/hooks/useEvent.d.ts +43 -0
- package/dist/features/events/hooks/useEvent.js +55 -0
- package/dist/features/events/hooks/useEvents.d.ts +27 -0
- package/dist/features/events/hooks/useEvents.js +38 -0
- package/dist/features/events/index.d.ts +8 -841
- package/dist/features/events/index.js +8 -1453
- package/dist/features/events/manifest.d.ts +2 -0
- package/dist/features/events/manifest.js +24 -0
- package/dist/features/events/messages/en.json +28 -0
- package/dist/features/events/repository/event-entry.repository.d.ts +17 -0
- package/dist/features/events/repository/event-entry.repository.js +115 -0
- package/dist/features/events/repository/events.repository.d.ts +18 -0
- package/dist/features/events/repository/events.repository.js +128 -0
- package/dist/features/events/schemas/firestore.d.ts +115 -0
- package/dist/features/events/schemas/firestore.js +77 -0
- package/dist/features/events/schemas/index.d.ts +383 -0
- package/dist/features/events/schemas/index.js +87 -0
- package/dist/features/events/server.d.ts +8 -37
- package/dist/features/events/server.js +11 -195
- package/dist/features/events/types/index.d.ts +133 -0
- package/dist/features/events/types/index.js +1 -0
- package/dist/features/faq/actions/faq-actions.d.ts +191 -0
- package/dist/features/faq/actions/faq-actions.js +103 -0
- package/dist/features/faq/actions/index.d.ts +1 -0
- package/dist/features/faq/actions/index.js +1 -0
- package/dist/features/faq/api/route.d.ts +11 -0
- package/dist/features/faq/api/route.js +50 -0
- package/dist/features/faq/columns/index.d.ts +15 -0
- package/dist/features/faq/columns/index.js +47 -0
- package/dist/features/faq/components/ContactCTA.d.ts +16 -0
- package/dist/features/faq/components/ContactCTA.js +6 -0
- package/dist/features/faq/components/FAQAccordion.d.ts +20 -0
- package/dist/features/faq/components/FAQAccordion.js +17 -0
- package/dist/features/faq/components/FAQCategorySidebar.d.ts +24 -0
- package/dist/features/faq/components/FAQCategorySidebar.js +15 -0
- package/dist/features/faq/components/FAQHelpfulButtons.d.ts +19 -0
- package/dist/features/faq/components/FAQHelpfulButtons.js +46 -0
- package/dist/features/faq/components/FAQPageContent.d.ts +54 -0
- package/dist/features/faq/components/FAQPageContent.js +67 -0
- package/dist/features/faq/components/FAQSortDropdown.d.ts +13 -0
- package/dist/features/faq/components/FAQSortDropdown.js +11 -0
- package/dist/features/faq/components/RelatedFAQs.d.ts +10 -0
- package/dist/features/faq/components/RelatedFAQs.js +9 -0
- package/dist/features/faq/components/index.d.ts +9 -0
- package/dist/features/faq/components/index.js +7 -0
- package/dist/features/faq/hooks/useFAQs.d.ts +22 -0
- package/dist/features/faq/hooks/useFAQs.js +42 -0
- package/dist/features/faq/hooks/useFaqList.d.ts +194 -0
- package/dist/features/faq/hooks/useFaqList.js +35 -0
- package/dist/features/faq/hooks/useFaqVote.d.ts +14 -0
- package/dist/features/faq/hooks/useFaqVote.js +10 -0
- package/dist/features/faq/index.d.ts +8 -619
- package/dist/features/faq/index.js +8 -1685
- package/dist/features/faq/manifest.d.ts +2 -0
- package/dist/features/faq/manifest.js +10 -0
- package/dist/features/faq/messages/en.json +14 -0
- package/dist/features/faq/repository/faqs.repository.d.ts +43 -0
- package/dist/features/faq/repository/faqs.repository.js +300 -0
- package/dist/features/faq/schemas/firestore.d.ts +63 -0
- package/dist/features/faq/schemas/firestore.js +115 -0
- package/dist/features/faq/schemas/index.d.ts +157 -0
- package/dist/features/faq/schemas/index.js +62 -0
- package/dist/features/faq/server.d.ts +9 -0
- package/dist/features/faq/server.js +9 -0
- package/dist/features/faq/types/index.d.ts +52 -0
- package/dist/features/faq/types/index.js +1 -0
- package/dist/features/filters/FilterFacetSection.d.ts +23 -0
- package/dist/features/filters/FilterFacetSection.js +39 -0
- package/dist/features/filters/FilterPanel.d.ts +61 -0
- package/dist/features/filters/FilterPanel.js +40 -0
- package/dist/features/filters/RangeFilter.d.ts +23 -0
- package/dist/features/filters/RangeFilter.js +28 -0
- package/dist/features/filters/SwitchFilter.d.ts +12 -0
- package/dist/features/filters/SwitchFilter.js +19 -0
- package/dist/features/filters/filterUtils.d.ts +11 -0
- package/dist/features/filters/filterUtils.js +13 -0
- package/dist/features/filters/index.d.ts +10 -136
- package/dist/features/filters/index.js +6 -1061
- package/dist/features/forms/Checkbox.d.ts +8 -0
- package/dist/features/forms/Checkbox.js +15 -0
- package/dist/features/forms/Form.d.ts +25 -0
- package/dist/features/forms/Form.js +38 -0
- package/dist/features/forms/Input.d.ts +10 -0
- package/dist/features/forms/Input.js +23 -0
- package/dist/features/forms/Radio.d.ts +17 -0
- package/dist/features/forms/Radio.js +19 -0
- package/dist/features/forms/Select.d.ts +13 -0
- package/dist/features/forms/Select.js +8 -0
- package/dist/features/forms/Slider.d.ts +20 -0
- package/dist/features/forms/Slider.js +22 -0
- package/dist/features/forms/Textarea.d.ts +8 -0
- package/dist/features/forms/Textarea.js +15 -0
- package/dist/features/forms/Toggle.d.ts +15 -0
- package/dist/features/forms/Toggle.js +48 -0
- package/dist/features/forms/index.d.ts +17 -129
- package/dist/features/forms/index.js +11 -915
- package/dist/features/forms/utils.d.ts +10 -0
- package/dist/features/forms/utils.js +13 -0
- package/dist/features/homepage/actions/carousel-actions.d.ts +37 -0
- package/dist/features/homepage/actions/carousel-actions.js +54 -0
- package/dist/features/homepage/actions/homepage-section-actions.d.ts +46 -0
- package/dist/features/homepage/actions/homepage-section-actions.js +55 -0
- package/dist/features/homepage/actions/index.d.ts +2 -0
- package/dist/features/homepage/actions/index.js +2 -0
- package/dist/features/homepage/api/[id]/route.d.ts +23 -0
- package/dist/features/homepage/api/[id]/route.js +100 -0
- package/dist/features/homepage/api/carousel/[id]/route.d.ts +23 -0
- package/dist/features/homepage/api/carousel/[id]/route.js +122 -0
- package/dist/features/homepage/api/carousel/route.d.ts +15 -0
- package/dist/features/homepage/api/carousel/route.js +154 -0
- package/dist/features/homepage/api/route.d.ts +14 -0
- package/dist/features/homepage/api/route.js +136 -0
- package/dist/features/homepage/api/sections/[id]/route.d.ts +26 -0
- package/dist/features/homepage/api/sections/[id]/route.js +88 -0
- package/dist/features/homepage/api/sections/route.d.ts +13 -0
- package/dist/features/homepage/api/sections/route.js +79 -0
- package/dist/features/homepage/components/AdvertisementBanner.d.ts +13 -0
- package/dist/features/homepage/components/AdvertisementBanner.js +23 -0
- package/dist/features/homepage/components/BeforeAfterCard.d.ts +10 -0
- package/dist/features/homepage/components/BeforeAfterCard.js +54 -0
- package/dist/features/homepage/components/CharacterHotspot.d.ts +24 -0
- package/dist/features/homepage/components/CharacterHotspot.js +373 -0
- package/dist/features/homepage/components/CharacterHotspotForm.d.ts +26 -0
- package/dist/features/homepage/components/CharacterHotspotForm.js +309 -0
- package/dist/features/homepage/components/CustomerReviewsSection.d.ts +13 -0
- package/dist/features/homepage/components/CustomerReviewsSection.js +14 -0
- package/dist/features/homepage/components/FAQSection.d.ts +26 -0
- package/dist/features/homepage/components/FAQSection.js +20 -0
- package/dist/features/homepage/components/FeaturedResultsSection.d.ts +17 -0
- package/dist/features/homepage/components/FeaturedResultsSection.js +18 -0
- package/dist/features/homepage/components/HeroBanner.d.ts +7 -0
- package/dist/features/homepage/components/HeroBanner.js +93 -0
- package/dist/features/homepage/components/HeroCarousel.d.ts +12 -0
- package/dist/features/homepage/components/HeroCarousel.js +157 -0
- package/dist/features/homepage/components/HeroSection.d.ts +7 -0
- package/dist/features/homepage/components/HeroSection.js +12 -0
- package/dist/features/homepage/components/HomepageSkeleton.d.ts +2 -0
- package/dist/features/homepage/components/HomepageSkeleton.js +14 -0
- package/dist/features/homepage/components/HomepageView.d.ts +25 -0
- package/dist/features/homepage/components/HomepageView.js +5 -0
- package/dist/features/homepage/components/HowItWorksInfoView.d.ts +36 -0
- package/dist/features/homepage/components/HowItWorksInfoView.js +8 -0
- package/dist/features/homepage/components/HowItWorksSection.d.ts +23 -0
- package/dist/features/homepage/components/HowItWorksSection.js +36 -0
- package/dist/features/homepage/components/NewsletterBanner.d.ts +22 -0
- package/dist/features/homepage/components/NewsletterBanner.js +34 -0
- package/dist/features/homepage/components/NewsletterSection.d.ts +10 -0
- package/dist/features/homepage/components/NewsletterSection.js +8 -0
- package/dist/features/homepage/components/PromoGrid.d.ts +9 -0
- package/dist/features/homepage/components/PromoGrid.js +35 -0
- package/dist/features/homepage/components/SectionCarousel.d.ts +75 -0
- package/dist/features/homepage/components/SectionCarousel.js +39 -0
- package/dist/features/homepage/components/SecurityHighlightsSection.d.ts +21 -0
- package/dist/features/homepage/components/SecurityHighlightsSection.js +36 -0
- package/dist/features/homepage/components/SiteFeaturesSection.d.ts +13 -0
- package/dist/features/homepage/components/SiteFeaturesSection.js +9 -0
- package/dist/features/homepage/components/StatsCounterSection.d.ts +14 -0
- package/dist/features/homepage/components/StatsCounterSection.js +32 -0
- package/dist/features/homepage/components/TestimonialsCarousel.d.ts +9 -0
- package/dist/features/homepage/components/TestimonialsCarousel.js +30 -0
- package/dist/features/homepage/components/TrustBadges.d.ts +5 -0
- package/dist/features/homepage/components/TrustBadges.js +54 -0
- package/dist/features/homepage/components/TrustFeaturesSection.d.ts +16 -0
- package/dist/features/homepage/components/TrustFeaturesSection.js +41 -0
- package/dist/features/homepage/components/TrustIndicatorsSection.d.ts +11 -0
- package/dist/features/homepage/components/TrustIndicatorsSection.js +9 -0
- package/dist/features/homepage/components/WelcomeSection.d.ts +20 -0
- package/dist/features/homepage/components/WelcomeSection.js +12 -0
- package/dist/features/homepage/components/WhatsAppCommunitySection.d.ts +15 -0
- package/dist/features/homepage/components/WhatsAppCommunitySection.js +21 -0
- package/dist/features/homepage/components/index.d.ts +52 -0
- package/dist/features/homepage/components/index.js +27 -0
- package/dist/features/homepage/hooks/useBlogArticles.d.ts +12 -0
- package/dist/features/homepage/hooks/useBlogArticles.js +31 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.d.ts +2 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.js +26 -0
- package/dist/features/homepage/hooks/useFeaturedPreOrders.d.ts +2 -0
- package/dist/features/homepage/hooks/useFeaturedPreOrders.js +26 -0
- package/dist/features/homepage/hooks/useFeaturedProducts.d.ts +4 -0
- package/dist/features/homepage/hooks/useFeaturedProducts.js +32 -0
- package/dist/features/homepage/hooks/useHeroCarousel.d.ts +9 -0
- package/dist/features/homepage/hooks/useHeroCarousel.js +17 -0
- package/dist/features/homepage/hooks/useHomepage.d.ts +11 -0
- package/dist/features/homepage/hooks/useHomepage.js +18 -0
- package/dist/features/homepage/hooks/useHomepageReviews.d.ts +7 -0
- package/dist/features/homepage/hooks/useHomepageReviews.js +16 -0
- package/dist/features/homepage/hooks/useHomepageSections.d.ts +2 -0
- package/dist/features/homepage/hooks/useHomepageSections.js +11 -0
- package/dist/features/homepage/hooks/useNewsletter.d.ts +14 -0
- package/dist/features/homepage/hooks/useNewsletter.js +10 -0
- package/dist/features/homepage/hooks/useTopBrands.d.ts +2 -0
- package/dist/features/homepage/hooks/useTopBrands.js +12 -0
- package/dist/features/homepage/hooks/useTopCategories.d.ts +4 -0
- package/dist/features/homepage/hooks/useTopCategories.js +13 -0
- package/dist/features/homepage/index.d.ts +13 -846
- package/dist/features/homepage/index.js +13 -6279
- package/dist/features/homepage/manifest.d.ts +2 -0
- package/dist/features/homepage/manifest.js +14 -0
- package/dist/features/homepage/messages/en.json +6 -0
- package/dist/features/homepage/repository/carousel.repository.d.ts +101 -0
- package/dist/features/homepage/repository/carousel.repository.js +252 -0
- package/dist/features/homepage/repository/homepage-sections.repository.d.ts +27 -0
- package/dist/features/homepage/repository/homepage-sections.repository.js +174 -0
- package/dist/features/homepage/repository/homepage.repository.d.ts +11 -0
- package/dist/features/homepage/repository/homepage.repository.js +25 -0
- package/dist/features/homepage/schemas/firestore.d.ts +251 -0
- package/dist/features/homepage/schemas/firestore.js +83 -0
- package/dist/features/homepage/schemas/index.d.ts +1 -0
- package/dist/features/homepage/schemas/index.js +1 -0
- package/dist/features/homepage/server.d.ts +10 -121
- package/dist/features/homepage/server.js +10 -1024
- package/dist/features/homepage/types/index.d.ts +163 -0
- package/dist/features/homepage/types/index.js +1 -0
- package/dist/features/layout/AutoBreadcrumbs.d.ts +15 -0
- package/dist/features/layout/AutoBreadcrumbs.js +84 -0
- package/dist/features/layout/BackToTop.d.ts +16 -0
- package/dist/features/layout/BackToTop.js +26 -0
- package/dist/features/layout/BottomActions.d.ts +1 -0
- package/dist/features/layout/BottomActions.js +153 -0
- package/dist/features/layout/BottomActionsContext.d.ts +107 -0
- package/dist/features/layout/BottomActionsContext.js +114 -0
- package/dist/features/layout/BottomNavItem.d.ts +28 -0
- package/dist/features/layout/BottomNavItem.js +28 -0
- package/dist/features/layout/BottomNavLayout.d.ts +14 -0
- package/dist/features/layout/BottomNavLayout.js +12 -0
- package/dist/features/layout/BottomNavbar.d.ts +46 -0
- package/dist/features/layout/BottomNavbar.js +19 -0
- package/dist/features/layout/BottomSheet.d.ts +29 -0
- package/dist/features/layout/BottomSheet.js +40 -0
- package/dist/features/layout/Breadcrumbs.d.ts +26 -0
- package/dist/features/layout/Breadcrumbs.js +25 -0
- package/dist/features/layout/DashboardNavContext.d.ts +19 -0
- package/dist/features/layout/DashboardNavContext.js +36 -0
- package/dist/features/layout/FooterLayout.d.ts +39 -0
- package/dist/features/layout/FooterLayout.js +12 -0
- package/dist/features/layout/LayoutClient.d.ts +11 -0
- package/dist/features/layout/LayoutClient.js +7 -0
- package/dist/features/layout/ListingLayout.d.ts +35 -0
- package/dist/features/layout/ListingLayout.js +104 -0
- package/dist/features/layout/LocaleSwitcher.d.ts +22 -0
- package/dist/features/layout/LocaleSwitcher.js +12 -0
- package/dist/features/layout/MainNavbar.d.ts +32 -0
- package/dist/features/layout/MainNavbar.js +29 -0
- package/dist/features/layout/NavItem.d.ts +19 -0
- package/dist/features/layout/NavItem.js +35 -0
- package/dist/features/layout/NavbarLayout.d.ts +27 -0
- package/dist/features/layout/NavbarLayout.js +23 -0
- package/dist/features/layout/SidebarLayout.d.ts +24 -0
- package/dist/features/layout/SidebarLayout.js +29 -0
- package/dist/features/layout/TitleBar.d.ts +18 -0
- package/dist/features/layout/TitleBar.js +19 -0
- package/dist/features/layout/TitleBarLayout.d.ts +48 -0
- package/dist/features/layout/TitleBarLayout.js +17 -0
- package/dist/features/layout/hooks/useBottomActions.d.ts +7 -0
- package/dist/features/layout/hooks/useBottomActions.js +28 -0
- package/dist/features/layout/index.d.ts +41 -315
- package/dist/features/layout/index.js +23 -1745
- package/dist/features/loyalty/api/admin/loyalty/grant/route.d.ts +12 -0
- package/dist/features/loyalty/api/admin/loyalty/grant/route.js +36 -0
- package/dist/features/loyalty/api/balance/route.d.ts +12 -0
- package/dist/features/loyalty/api/balance/route.js +39 -0
- package/dist/features/loyalty/api/earn/route.d.ts +12 -0
- package/dist/features/loyalty/api/earn/route.js +36 -0
- package/dist/features/loyalty/api/history/route.d.ts +12 -0
- package/dist/features/loyalty/api/history/route.js +56 -0
- package/dist/features/loyalty/api/redeem/route.d.ts +12 -0
- package/dist/features/loyalty/api/redeem/route.js +36 -0
- package/dist/features/loyalty/columns/index.d.ts +17 -0
- package/dist/features/loyalty/columns/index.js +40 -0
- package/dist/features/loyalty/components/CoinsDisplay.d.ts +11 -0
- package/dist/features/loyalty/components/CoinsDisplay.js +9 -0
- package/dist/features/loyalty/components/index.d.ts +1 -0
- package/dist/features/loyalty/components/index.js +1 -0
- package/dist/features/loyalty/hooks/useLoyaltyBalance.d.ts +4 -0
- package/dist/features/loyalty/hooks/useLoyaltyBalance.js +18 -0
- package/dist/features/loyalty/index.d.ts +6 -174
- package/dist/features/loyalty/index.js +6 -332
- package/dist/features/loyalty/manifest.d.ts +2 -0
- package/dist/features/loyalty/manifest.js +16 -0
- package/dist/features/loyalty/messages/en.json +19 -0
- package/dist/features/loyalty/repository/loyalty.repository.d.ts +8 -0
- package/dist/features/loyalty/repository/loyalty.repository.js +22 -0
- package/dist/features/loyalty/schemas/index.d.ts +85 -0
- package/dist/features/loyalty/schemas/index.js +40 -0
- package/dist/features/loyalty/server.d.ts +7 -0
- package/dist/features/loyalty/server.js +7 -0
- package/dist/features/loyalty/types/index.d.ts +31 -0
- package/dist/features/loyalty/types/index.js +1 -0
- package/dist/features/loyalty/types/loyalty-config.d.ts +7 -0
- package/dist/features/loyalty/types/loyalty-config.js +1 -0
- package/dist/features/loyalty/types/loyalty-math.d.ts +9 -0
- package/dist/features/loyalty/types/loyalty-math.js +27 -0
- package/dist/features/media/AvatarUpload.d.ts +22 -0
- package/dist/features/media/AvatarUpload.js +133 -0
- package/dist/features/media/MediaAvatar.d.ts +12 -0
- package/dist/features/media/MediaAvatar.js +13 -0
- package/dist/features/media/MediaImage.d.ts +28 -0
- package/dist/features/media/MediaImage.js +35 -0
- package/dist/features/media/MediaLightbox.d.ts +32 -0
- package/dist/features/media/MediaLightbox.js +245 -0
- package/dist/features/media/MediaVideo.d.ts +22 -0
- package/dist/features/media/MediaVideo.js +38 -0
- package/dist/features/media/components/MediaSlider.d.ts +10 -0
- package/dist/features/media/components/MediaSlider.js +12 -0
- package/dist/features/media/finalize.d.ts +11 -0
- package/dist/features/media/finalize.js +70 -0
- package/dist/features/media/hooks/useMedia.d.ts +198 -0
- package/dist/features/media/hooks/useMedia.js +78 -0
- package/dist/features/media/index.d.ts +30 -425
- package/dist/features/media/index.js +21 -3593
- package/dist/features/media/messages/en.json +63 -0
- package/dist/features/media/modals/ImageCropModal.d.ts +16 -0
- package/dist/features/media/modals/ImageCropModal.js +99 -0
- package/dist/features/media/modals/VideoThumbnailSelector.d.ts +10 -0
- package/dist/features/media/modals/VideoThumbnailSelector.js +51 -0
- package/dist/features/media/modals/VideoTrimModal.d.ts +11 -0
- package/dist/features/media/modals/VideoTrimModal.js +73 -0
- package/dist/features/media/server.d.ts +2 -0
- package/dist/features/media/server.js +2 -0
- package/dist/features/media/types/index.d.ts +29 -0
- package/dist/features/media/types/index.js +43 -0
- package/dist/features/media/upload/CameraCapture.d.ts +8 -0
- package/dist/features/media/upload/CameraCapture.js +59 -0
- package/dist/features/media/upload/ImageUpload.d.ts +14 -0
- package/dist/features/media/upload/ImageUpload.js +132 -0
- package/dist/features/media/upload/MediaUploadField.d.ts +31 -0
- package/dist/features/media/upload/MediaUploadField.js +204 -0
- package/dist/features/media/upload/MediaUploadList.d.ts +26 -0
- package/dist/features/media/upload/MediaUploadList.js +104 -0
- package/dist/features/orders/actions/index.d.ts +2 -0
- package/dist/features/orders/actions/index.js +2 -0
- package/dist/features/orders/actions/order-actions.d.ts +16 -0
- package/dist/features/orders/actions/order-actions.js +46 -0
- package/dist/features/orders/actions/refund-actions.d.ts +16 -0
- package/dist/features/orders/actions/refund-actions.js +88 -0
- package/dist/features/orders/api/track/[trackingId]/route.d.ts +17 -0
- package/dist/features/orders/api/track/[trackingId]/route.js +30 -0
- package/dist/features/orders/columns/index.d.ts +15 -0
- package/dist/features/orders/columns/index.js +34 -0
- package/dist/features/orders/components/MarketplaceOrderCard.d.ts +37 -0
- package/dist/features/orders/components/MarketplaceOrderCard.js +52 -0
- package/dist/features/orders/components/OrderFilters.d.ts +82 -0
- package/dist/features/orders/components/OrderFilters.js +106 -0
- package/dist/features/orders/components/OrdersList.d.ts +18 -0
- package/dist/features/orders/components/OrdersList.js +37 -0
- package/dist/features/orders/components/index.d.ts +4 -0
- package/dist/features/orders/components/index.js +3 -0
- package/dist/features/orders/hooks/useOrders.d.ts +32 -0
- package/dist/features/orders/hooks/useOrders.js +57 -0
- package/dist/features/orders/index.d.ts +7 -370
- package/dist/features/orders/index.js +7 -863
- package/dist/features/orders/manifest.d.ts +2 -0
- package/dist/features/orders/manifest.js +18 -0
- package/dist/features/orders/messages/en.json +15 -0
- package/dist/features/orders/repository/orders.repository.d.ts +188 -0
- package/dist/features/orders/repository/orders.repository.js +300 -0
- package/dist/features/orders/schemas/firestore.d.ts +129 -0
- package/dist/features/orders/schemas/firestore.js +96 -0
- package/dist/features/orders/schemas/index.d.ts +217 -0
- package/dist/features/orders/schemas/index.js +76 -0
- package/dist/features/orders/server.d.ts +9 -0
- package/dist/features/orders/server.js +10 -0
- package/dist/features/orders/types/index.d.ts +69 -0
- package/dist/features/orders/types/index.js +2 -0
- package/dist/features/orders/utils/order-splitter.d.ts +14 -0
- package/dist/features/orders/utils/order-splitter.js +29 -0
- package/dist/features/payments/columns/index.d.ts +17 -0
- package/dist/features/payments/columns/index.js +45 -0
- package/dist/features/payments/hooks/usePaymentEvent.d.ts +17 -0
- package/dist/features/payments/hooks/usePaymentEvent.js +26 -0
- package/dist/features/payments/hooks/usePayments.d.ts +10 -0
- package/dist/features/payments/hooks/usePayments.js +19 -0
- package/dist/features/payments/index.d.ts +6 -141
- package/dist/features/payments/index.js +6 -331
- package/dist/features/payments/manifest.d.ts +2 -0
- package/dist/features/payments/manifest.js +12 -0
- package/dist/features/payments/messages/en.json +11 -0
- package/dist/features/payments/repository/payments.repository.d.ts +15 -0
- package/dist/features/payments/repository/payments.repository.js +36 -0
- package/dist/features/payments/repository/payout.repository.d.ts +111 -0
- package/dist/features/payments/repository/payout.repository.js +202 -0
- package/dist/features/payments/schemas/firestore.d.ts +74 -0
- package/dist/features/payments/schemas/firestore.js +65 -0
- package/dist/features/payments/schemas/index.d.ts +77 -0
- package/dist/features/payments/schemas/index.js +67 -0
- package/dist/features/payments/server.d.ts +8 -0
- package/dist/features/payments/server.js +8 -0
- package/dist/features/payments/types/index.d.ts +36 -0
- package/dist/features/payments/types/index.js +2 -0
- package/dist/features/pre-orders/api/[id]/route.d.ts +26 -0
- package/dist/features/pre-orders/api/[id]/route.js +88 -0
- package/dist/features/pre-orders/api/[slug]/route.d.ts +16 -0
- package/dist/features/pre-orders/api/[slug]/route.js +41 -0
- package/dist/features/pre-orders/api/admin/[id]/route.d.ts +21 -0
- package/dist/features/pre-orders/api/admin/[id]/route.js +65 -0
- package/dist/features/pre-orders/api/admin/route.d.ts +12 -0
- package/dist/features/pre-orders/api/admin/route.js +56 -0
- package/dist/features/pre-orders/api/route.d.ts +13 -0
- package/dist/features/pre-orders/api/route.js +77 -0
- package/dist/features/pre-orders/columns/index.d.ts +17 -0
- package/dist/features/pre-orders/columns/index.js +68 -0
- package/dist/features/pre-orders/components/MarketplacePreorderCard.d.ts +24 -0
- package/dist/features/pre-orders/components/MarketplacePreorderCard.js +53 -0
- package/dist/features/pre-orders/components/PreOrderBadge.d.ts +14 -0
- package/dist/features/pre-orders/components/PreOrderBadge.js +17 -0
- package/dist/features/pre-orders/components/PreorderCard.d.ts +12 -0
- package/dist/features/pre-orders/components/PreorderCard.js +27 -0
- package/dist/features/pre-orders/components/index.d.ts +2 -0
- package/dist/features/pre-orders/components/index.js +2 -0
- package/dist/features/pre-orders/hooks/usePreOrders.d.ts +7 -0
- package/dist/features/pre-orders/hooks/usePreOrders.js +34 -0
- package/dist/features/pre-orders/index.d.ts +6 -170
- package/dist/features/pre-orders/index.js +6 -538
- package/dist/features/pre-orders/manifest.d.ts +2 -0
- package/dist/features/pre-orders/manifest.js +17 -0
- package/dist/features/pre-orders/messages/en.json +13 -0
- package/dist/features/pre-orders/repository/pre-orders.repository.d.ts +14 -0
- package/dist/features/pre-orders/repository/pre-orders.repository.js +44 -0
- package/dist/features/pre-orders/repository/preorders.repository.d.ts +8 -0
- package/dist/features/pre-orders/repository/preorders.repository.js +21 -0
- package/dist/features/pre-orders/schemas/index.d.ts +79 -0
- package/dist/features/pre-orders/schemas/index.js +27 -0
- package/dist/features/pre-orders/server.d.ts +5 -14
- package/dist/features/pre-orders/server.js +8 -106
- package/dist/features/pre-orders/types/index.d.ts +29 -0
- package/dist/features/pre-orders/types/index.js +12 -0
- package/dist/features/products/actions/index.d.ts +1 -0
- package/dist/features/products/actions/index.js +1 -0
- package/dist/features/products/actions/product-actions.d.ts +26 -0
- package/dist/features/products/actions/product-actions.js +111 -0
- package/dist/features/products/api/[id]/route.d.ts +29 -0
- package/dist/features/products/api/[id]/route.js +137 -0
- package/dist/features/products/api/route.d.ts +19 -0
- package/dist/features/products/api/route.js +214 -0
- package/dist/features/products/columns/index.d.ts +64 -0
- package/dist/features/products/columns/index.js +85 -0
- package/dist/features/products/columns/productTableColumns.d.ts +27 -0
- package/dist/features/products/columns/productTableColumns.js +88 -0
- package/dist/features/products/components/AuctionDetailView.d.ts +13 -0
- package/dist/features/products/components/AuctionDetailView.js +9 -0
- package/dist/features/products/components/AuctionsView.d.ts +6 -0
- package/dist/features/products/components/AuctionsView.js +5 -0
- package/dist/features/products/components/BidHistory.d.ts +28 -0
- package/dist/features/products/components/BidHistory.js +18 -0
- package/dist/features/products/components/BuyBar.d.ts +21 -0
- package/dist/features/products/components/BuyBar.js +20 -0
- package/dist/features/products/components/InteractiveProductCard.d.ts +19 -0
- package/dist/features/products/components/InteractiveProductCard.js +18 -0
- package/dist/features/products/components/MakeOfferForm.d.ts +20 -0
- package/dist/features/products/components/MakeOfferForm.js +8 -0
- package/dist/features/products/components/PlaceBidForm.d.ts +20 -0
- package/dist/features/products/components/PlaceBidForm.js +6 -0
- package/dist/features/products/components/PreOrderDetailView.d.ts +14 -0
- package/dist/features/products/components/PreOrderDetailView.js +9 -0
- package/dist/features/products/components/PreOrdersView.d.ts +6 -0
- package/dist/features/products/components/PreOrdersView.js +5 -0
- package/dist/features/products/components/ProductDetailView.d.ts +11 -0
- package/dist/features/products/components/ProductDetailView.js +9 -0
- package/dist/features/products/components/ProductFeatureBadges.d.ts +32 -0
- package/dist/features/products/components/ProductFeatureBadges.js +103 -0
- package/dist/features/products/components/ProductFilters.d.ts +90 -0
- package/dist/features/products/components/ProductFilters.js +105 -0
- package/dist/features/products/components/ProductForm.d.ts +47 -0
- package/dist/features/products/components/ProductForm.js +120 -0
- package/dist/features/products/components/ProductGrid.d.ts +69 -0
- package/dist/features/products/components/ProductGrid.js +92 -0
- package/dist/features/products/components/ProductInfo.d.ts +20 -0
- package/dist/features/products/components/ProductInfo.js +4 -0
- package/dist/features/products/components/ProductTabs.d.ts +21 -0
- package/dist/features/products/components/ProductTabs.js +22 -0
- package/dist/features/products/components/ProductsView.d.ts +6 -0
- package/dist/features/products/components/ProductsView.js +5 -0
- package/dist/features/products/components/RelatedProducts.d.ts +16 -0
- package/dist/features/products/components/RelatedProducts.js +12 -0
- package/dist/features/products/components/index.d.ts +34 -0
- package/dist/features/products/components/index.js +18 -0
- package/dist/features/products/hooks/useBrands.d.ts +9 -0
- package/dist/features/products/hooks/useBrands.js +15 -0
- package/dist/features/products/hooks/useProductDetail.d.ts +15 -0
- package/dist/features/products/hooks/useProductDetail.js +29 -0
- package/dist/features/products/hooks/useProducts.d.ts +43 -0
- package/dist/features/products/hooks/useProducts.js +67 -0
- package/dist/features/products/hooks/useRelatedProducts.d.ts +2 -0
- package/dist/features/products/hooks/useRelatedProducts.js +17 -0
- package/dist/features/products/index.d.ts +10 -1066
- package/dist/features/products/index.js +10 -2475
- package/dist/features/products/manifest.d.ts +2 -0
- package/dist/features/products/manifest.js +16 -0
- package/dist/features/products/messages/en.json +11 -0
- package/dist/features/products/repository/products.repository.d.ts +213 -0
- package/dist/features/products/repository/products.repository.js +300 -0
- package/dist/features/products/schemas/firestore.d.ts +125 -0
- package/dist/features/products/schemas/firestore.js +149 -0
- package/dist/features/products/schemas/index.d.ts +400 -0
- package/dist/features/products/schemas/index.js +173 -0
- package/dist/features/products/server.d.ts +7 -49
- package/dist/features/products/server.js +10 -803
- package/dist/features/products/types/index.d.ts +122 -0
- package/dist/features/products/types/index.js +1 -0
- package/dist/features/products/utils/listing-type.d.ts +2 -0
- package/dist/features/products/utils/listing-type.js +9 -0
- package/dist/features/promotions/actions/coupon-actions.d.ts +28 -0
- package/dist/features/promotions/actions/coupon-actions.js +23 -0
- package/dist/features/promotions/actions/index.d.ts +3 -0
- package/dist/features/promotions/actions/index.js +3 -0
- package/dist/features/promotions/actions/promotions-actions.d.ts +18 -0
- package/dist/features/promotions/actions/promotions-actions.js +37 -0
- package/dist/features/promotions/actions/seller-coupon-actions.d.ts +41 -0
- package/dist/features/promotions/actions/seller-coupon-actions.js +92 -0
- package/dist/features/promotions/api/route.d.ts +21 -0
- package/dist/features/promotions/api/route.js +85 -0
- package/dist/features/promotions/columns/index.d.ts +12 -0
- package/dist/features/promotions/columns/index.js +45 -0
- package/dist/features/promotions/components/CouponCard.d.ts +16 -0
- package/dist/features/promotions/components/CouponCard.js +20 -0
- package/dist/features/promotions/components/PromotionsView.d.ts +43 -0
- package/dist/features/promotions/components/PromotionsView.js +10 -0
- package/dist/features/promotions/components/index.d.ts +3 -0
- package/dist/features/promotions/components/index.js +2 -0
- package/dist/features/promotions/hooks/useCouponValidate.d.ts +22 -0
- package/dist/features/promotions/hooks/useCouponValidate.js +10 -0
- package/dist/features/promotions/hooks/usePromotions.d.ts +21 -0
- package/dist/features/promotions/hooks/usePromotions.js +49 -0
- package/dist/features/promotions/index.d.ts +7 -301
- package/dist/features/promotions/index.js +7 -957
- package/dist/features/promotions/manifest.d.ts +2 -0
- package/dist/features/promotions/manifest.js +14 -0
- package/dist/features/promotions/messages/en.json +20 -0
- package/dist/features/promotions/repository/coupons.repository.d.ts +224 -0
- package/dist/features/promotions/repository/coupons.repository.js +539 -0
- package/dist/features/promotions/repository/promotions.repository.d.ts +14 -0
- package/dist/features/promotions/repository/promotions.repository.js +43 -0
- package/dist/features/promotions/schemas/firestore.d.ts +105 -0
- package/dist/features/promotions/schemas/firestore.js +124 -0
- package/dist/features/promotions/schemas/index.d.ts +117 -0
- package/dist/features/promotions/schemas/index.js +58 -0
- package/dist/features/promotions/server.d.ts +10 -0
- package/dist/features/promotions/server.js +10 -0
- package/dist/features/promotions/types/index.d.ts +51 -0
- package/dist/features/promotions/types/index.js +2 -0
- package/dist/features/reviews/actions/index.d.ts +1 -0
- package/dist/features/reviews/actions/index.js +1 -0
- package/dist/features/reviews/actions/review-actions.d.ts +40 -0
- package/dist/features/reviews/actions/review-actions.js +182 -0
- package/dist/features/reviews/api/[id]/route.d.ts +23 -0
- package/dist/features/reviews/api/[id]/route.js +109 -0
- package/dist/features/reviews/api/route.d.ts +21 -0
- package/dist/features/reviews/api/route.js +171 -0
- package/dist/features/reviews/columns/index.d.ts +15 -0
- package/dist/features/reviews/columns/index.js +44 -0
- package/dist/features/reviews/components/ReviewFilters.d.ts +74 -0
- package/dist/features/reviews/components/ReviewFilters.js +60 -0
- package/dist/features/reviews/components/ReviewModal.d.ts +11 -0
- package/dist/features/reviews/components/ReviewModal.js +25 -0
- package/dist/features/reviews/components/ReviewSummary.d.ts +16 -0
- package/dist/features/reviews/components/ReviewSummary.js +20 -0
- package/dist/features/reviews/components/ReviewsList.d.ts +15 -0
- package/dist/features/reviews/components/ReviewsList.js +25 -0
- package/dist/features/reviews/components/ReviewsListView.d.ts +31 -0
- package/dist/features/reviews/components/ReviewsListView.js +16 -0
- package/dist/features/reviews/components/index.d.ts +10 -0
- package/dist/features/reviews/components/index.js +5 -0
- package/dist/features/reviews/hooks/useCreateReview.d.ts +12 -0
- package/dist/features/reviews/hooks/useCreateReview.js +20 -0
- package/dist/features/reviews/hooks/useReviews.d.ts +34 -0
- package/dist/features/reviews/hooks/useReviews.js +49 -0
- package/dist/features/reviews/index.d.ts +7 -434
- package/dist/features/reviews/index.js +7 -2297
- package/dist/features/reviews/manifest.d.ts +2 -0
- package/dist/features/reviews/manifest.js +10 -0
- package/dist/features/reviews/messages/en.json +10 -0
- package/dist/features/reviews/repository/reviews.repository.d.ts +103 -0
- package/dist/features/reviews/repository/reviews.repository.js +214 -0
- package/dist/features/reviews/schemas/firestore.d.ts +67 -0
- package/dist/features/reviews/schemas/firestore.js +59 -0
- package/dist/features/reviews/schemas/index.d.ts +183 -0
- package/dist/features/reviews/schemas/index.js +68 -0
- package/dist/features/reviews/server.d.ts +7 -46
- package/dist/features/reviews/server.js +10 -769
- package/dist/features/reviews/types/index.d.ts +62 -0
- package/dist/features/reviews/types/index.js +1 -0
- package/dist/features/search/actions/index.d.ts +1 -0
- package/dist/features/search/actions/index.js +1 -0
- package/dist/features/search/actions/search-actions.d.ts +18 -0
- package/dist/features/search/actions/search-actions.js +43 -0
- package/dist/features/search/api/route.d.ts +22 -0
- package/dist/features/search/api/route.js +79 -0
- package/dist/features/search/columns/index.d.ts +17 -0
- package/dist/features/search/columns/index.js +49 -0
- package/dist/features/search/components/Search.d.ts +41 -0
- package/dist/features/search/components/Search.js +263 -0
- package/dist/features/search/components/SearchFiltersRow.d.ts +22 -0
- package/dist/features/search/components/SearchFiltersRow.js +21 -0
- package/dist/features/search/components/SearchResultsSection.d.ts +53 -0
- package/dist/features/search/components/SearchResultsSection.js +36 -0
- package/dist/features/search/components/SearchView.d.ts +29 -0
- package/dist/features/search/components/SearchView.js +8 -0
- package/dist/features/search/components/index.d.ts +8 -0
- package/dist/features/search/components/index.js +4 -0
- package/dist/features/search/hooks/useNavSuggestions.d.ts +11 -0
- package/dist/features/search/hooks/useNavSuggestions.js +32 -0
- package/dist/features/search/hooks/useSearch.d.ts +21 -0
- package/dist/features/search/hooks/useSearch.js +34 -0
- package/dist/features/search/index.d.ts +7 -298
- package/dist/features/search/index.js +7 -1351
- package/dist/features/search/manifest.d.ts +2 -0
- package/dist/features/search/manifest.js +10 -0
- package/dist/features/search/messages/en.json +15 -0
- package/dist/features/search/repository/search.repository.d.ts +14 -0
- package/dist/features/search/repository/search.repository.js +59 -0
- package/dist/features/search/schemas/index.d.ts +70 -0
- package/dist/features/search/schemas/index.js +34 -0
- package/dist/features/search/server.d.ts +5 -83
- package/dist/features/search/server.js +5 -149
- package/dist/features/search/types/index.d.ts +46 -0
- package/dist/features/search/types/index.js +2 -0
- package/dist/features/seller/actions/index.d.ts +2 -0
- package/dist/features/seller/actions/index.js +2 -0
- package/dist/features/seller/actions/offer-actions.d.ts +32 -0
- package/dist/features/seller/actions/offer-actions.js +266 -0
- package/dist/features/seller/actions/seller-actions.d.ts +172 -0
- package/dist/features/seller/actions/seller-actions.js +480 -0
- package/dist/features/seller/api/coupons/route.d.ts +17 -0
- package/dist/features/seller/api/coupons/route.js +47 -0
- package/dist/features/seller/api/offers/route.d.ts +17 -0
- package/dist/features/seller/api/offers/route.js +63 -0
- package/dist/features/seller/api/products/route.d.ts +17 -0
- package/dist/features/seller/api/products/route.js +64 -0
- package/dist/features/seller/api/store/route.d.ts +17 -0
- package/dist/features/seller/api/store/route.js +34 -0
- package/dist/features/seller/columns/index.d.ts +22 -0
- package/dist/features/seller/columns/index.js +73 -0
- package/dist/features/seller/components/SellerAddressesView.d.ts +13 -0
- package/dist/features/seller/components/SellerAddressesView.js +5 -0
- package/dist/features/seller/components/SellerAnalyticsView.d.ts +13 -0
- package/dist/features/seller/components/SellerAnalyticsView.js +17 -0
- package/dist/features/seller/components/SellerAuctionsView.d.ts +6 -0
- package/dist/features/seller/components/SellerAuctionsView.js +5 -0
- package/dist/features/seller/components/SellerCouponsView.d.ts +6 -0
- package/dist/features/seller/components/SellerCouponsView.js +5 -0
- package/dist/features/seller/components/SellerCreateProductView.d.ts +11 -0
- package/dist/features/seller/components/SellerCreateProductView.js +5 -0
- package/dist/features/seller/components/SellerDashboardView.d.ts +14 -0
- package/dist/features/seller/components/SellerDashboardView.js +11 -0
- package/dist/features/seller/components/SellerEditProductView.d.ts +11 -0
- package/dist/features/seller/components/SellerEditProductView.js +5 -0
- package/dist/features/seller/components/SellerGuideView.d.ts +12 -0
- package/dist/features/seller/components/SellerGuideView.js +5 -0
- package/dist/features/seller/components/SellerOffersView.d.ts +4 -0
- package/dist/features/seller/components/SellerOffersView.js +5 -0
- package/dist/features/seller/components/SellerOrdersView.d.ts +4 -0
- package/dist/features/seller/components/SellerOrdersView.js +5 -0
- package/dist/features/seller/components/SellerPayoutHistoryTable.d.ts +14 -0
- package/dist/features/seller/components/SellerPayoutHistoryTable.js +10 -0
- package/dist/features/seller/components/SellerPayoutSettingsView.d.ts +11 -0
- package/dist/features/seller/components/SellerPayoutSettingsView.js +5 -0
- package/dist/features/seller/components/SellerPayoutStats.d.ts +8 -0
- package/dist/features/seller/components/SellerPayoutStats.js +9 -0
- package/dist/features/seller/components/SellerPayoutsView.d.ts +18 -0
- package/dist/features/seller/components/SellerPayoutsView.js +11 -0
- package/dist/features/seller/components/SellerProductsView.d.ts +6 -0
- package/dist/features/seller/components/SellerProductsView.js +5 -0
- package/dist/features/seller/components/SellerShippingView.d.ts +12 -0
- package/dist/features/seller/components/SellerShippingView.js +5 -0
- package/dist/features/seller/components/SellerSidebar.d.ts +16 -0
- package/dist/features/seller/components/SellerSidebar.js +11 -0
- package/dist/features/seller/components/SellerStatCard.d.ts +14 -0
- package/dist/features/seller/components/SellerStatCard.js +5 -0
- package/dist/features/seller/components/SellerStoreSetupView.d.ts +12 -0
- package/dist/features/seller/components/SellerStoreSetupView.js +8 -0
- package/dist/features/seller/components/SellerStoreView.d.ts +8 -0
- package/dist/features/seller/components/SellerStoreView.js +8 -0
- package/dist/features/seller/components/SellerStorefrontView.d.ts +13 -0
- package/dist/features/seller/components/SellerStorefrontView.js +10 -0
- package/dist/features/seller/components/SellersListView.d.ts +4 -0
- package/dist/features/seller/components/SellersListView.js +5 -0
- package/dist/features/seller/components/analytics/SellerAnalyticsStats.d.ts +14 -0
- package/dist/features/seller/components/analytics/SellerAnalyticsStats.js +9 -0
- package/dist/features/seller/components/analytics/SellerRevenueChart.d.ts +13 -0
- package/dist/features/seller/components/analytics/SellerRevenueChart.js +28 -0
- package/dist/features/seller/components/analytics/SellerTopProducts.d.ts +17 -0
- package/dist/features/seller/components/analytics/SellerTopProducts.js +6 -0
- package/dist/features/seller/components/analytics/index.d.ts +3 -0
- package/dist/features/seller/components/analytics/index.js +3 -0
- package/dist/features/seller/components/index.d.ts +44 -0
- package/dist/features/seller/components/index.js +23 -0
- package/dist/features/seller/hooks/useBecomeSeller.d.ts +12 -0
- package/dist/features/seller/hooks/useBecomeSeller.js +26 -0
- package/dist/features/seller/hooks/useSellerPayouts.d.ts +25 -0
- package/dist/features/seller/hooks/useSellerPayouts.js +42 -0
- package/dist/features/seller/hooks/useSellerStore.d.ts +28 -0
- package/dist/features/seller/hooks/useSellerStore.js +48 -0
- package/dist/features/seller/hooks/useSellerStorefront.d.ts +16 -0
- package/dist/features/seller/hooks/useSellerStorefront.js +57 -0
- package/dist/features/seller/index.d.ts +10 -926
- package/dist/features/seller/index.js +10 -2029
- package/dist/features/seller/manifest.d.ts +2 -0
- package/dist/features/seller/manifest.js +74 -0
- package/dist/features/seller/messages/en.json +32 -0
- package/dist/features/seller/permission-map.d.ts +3 -0
- package/dist/features/seller/permission-map.js +15 -0
- package/dist/features/seller/repository/offer.repository.d.ts +66 -0
- package/dist/features/seller/repository/offer.repository.js +210 -0
- package/dist/features/seller/repository/seller.repository.d.ts +22 -0
- package/dist/features/seller/repository/seller.repository.js +72 -0
- package/dist/features/seller/schemas/firestore.d.ts +76 -0
- package/dist/features/seller/schemas/firestore.js +57 -0
- package/dist/features/seller/schemas/index.d.ts +244 -0
- package/dist/features/seller/schemas/index.js +100 -0
- package/dist/features/seller/server.d.ts +13 -0
- package/dist/features/seller/server.js +13 -0
- package/dist/features/seller/types/index.d.ts +147 -0
- package/dist/features/seller/types/index.js +2 -0
- package/dist/features/stores/actions/index.d.ts +2 -0
- package/dist/features/stores/actions/index.js +2 -0
- package/dist/features/stores/actions/store-address-actions.d.ts +11 -0
- package/dist/features/stores/actions/store-address-actions.js +54 -0
- package/dist/features/stores/actions/store-query-actions.d.ts +34 -0
- package/dist/features/stores/actions/store-query-actions.js +113 -0
- package/dist/features/stores/api/[storeSlug]/auctions/route.d.ts +23 -0
- package/dist/features/stores/api/[storeSlug]/auctions/route.js +92 -0
- package/dist/features/stores/api/[storeSlug]/products/route.d.ts +23 -0
- package/dist/features/stores/api/[storeSlug]/products/route.js +97 -0
- package/dist/features/stores/api/[storeSlug]/reviews/route.d.ts +23 -0
- package/dist/features/stores/api/[storeSlug]/reviews/route.js +101 -0
- package/dist/features/stores/api/[storeSlug]/route.d.ts +21 -0
- package/dist/features/stores/api/[storeSlug]/route.js +66 -0
- package/dist/features/stores/api/route.d.ts +12 -0
- package/dist/features/stores/api/route.js +101 -0
- package/dist/features/stores/columns/index.d.ts +16 -0
- package/dist/features/stores/columns/index.js +45 -0
- package/dist/features/stores/components/InteractiveStoreCard.d.ts +20 -0
- package/dist/features/stores/components/InteractiveStoreCard.js +16 -0
- package/dist/features/stores/components/StoreAboutView.d.ts +21 -0
- package/dist/features/stores/components/StoreAboutView.js +12 -0
- package/dist/features/stores/components/StoreAddressSelectorCreate.d.ts +16 -0
- package/dist/features/stores/components/StoreAddressSelectorCreate.js +40 -0
- package/dist/features/stores/components/StoreAuctionsView.d.ts +17 -0
- package/dist/features/stores/components/StoreAuctionsView.js +5 -0
- package/dist/features/stores/components/StoreHeader.d.ts +15 -0
- package/dist/features/stores/components/StoreHeader.js +8 -0
- package/dist/features/stores/components/StoreNavTabs.d.ts +15 -0
- package/dist/features/stores/components/StoreNavTabs.js +14 -0
- package/dist/features/stores/components/StoreProductsView.d.ts +30 -0
- package/dist/features/stores/components/StoreProductsView.js +11 -0
- package/dist/features/stores/components/StoreReviewsView.d.ts +17 -0
- package/dist/features/stores/components/StoreReviewsView.js +9 -0
- package/dist/features/stores/components/StoresListView.d.ts +19 -0
- package/dist/features/stores/components/StoresListView.js +24 -0
- package/dist/features/stores/components/index.d.ts +16 -0
- package/dist/features/stores/components/index.js +9 -0
- package/dist/features/stores/hooks/useStoreAddressSelector.d.ts +23 -0
- package/dist/features/stores/hooks/useStoreAddressSelector.js +30 -0
- package/dist/features/stores/hooks/useStores.d.ts +58 -0
- package/dist/features/stores/hooks/useStores.js +96 -0
- package/dist/features/stores/index.d.ts +7 -536
- package/dist/features/stores/index.js +7 -1911
- package/dist/features/stores/manifest.d.ts +2 -0
- package/dist/features/stores/manifest.js +35 -0
- package/dist/features/stores/messages/en.json +21 -0
- package/dist/features/stores/repository/store-address.repository.d.ts +55 -0
- package/dist/features/stores/repository/store-address.repository.js +188 -0
- package/dist/features/stores/repository/store.repository.d.ts +67 -0
- package/dist/features/stores/repository/store.repository.js +181 -0
- package/dist/features/stores/repository/stores.repository.d.ts +11 -0
- package/dist/features/stores/repository/stores.repository.js +34 -0
- package/dist/features/stores/schemas/firestore.d.ts +117 -0
- package/dist/features/stores/schemas/firestore.js +109 -0
- package/dist/features/stores/schemas/index.d.ts +85 -0
- package/dist/features/stores/schemas/index.js +48 -0
- package/dist/features/stores/server.d.ts +12 -103
- package/dist/features/stores/server.js +15 -444
- package/dist/features/stores/types/index.d.ts +102 -0
- package/dist/features/stores/types/index.js +2 -0
- package/dist/features/whatsapp-bot/api/send-status/route.d.ts +12 -0
- package/dist/features/whatsapp-bot/api/send-status/route.js +36 -0
- package/dist/features/whatsapp-bot/api/webhook/route.d.ts +12 -0
- package/dist/features/whatsapp-bot/api/webhook/route.js +41 -0
- package/dist/features/whatsapp-bot/components/WhatsAppChatButton.d.ts +8 -0
- package/dist/features/whatsapp-bot/components/WhatsAppChatButton.js +7 -0
- package/dist/features/whatsapp-bot/components/index.d.ts +1 -0
- package/dist/features/whatsapp-bot/components/index.js +1 -0
- package/dist/features/whatsapp-bot/helpers/whatsapp.d.ts +21 -0
- package/dist/features/whatsapp-bot/helpers/whatsapp.js +125 -0
- package/dist/features/whatsapp-bot/index.d.ts +3 -85
- package/dist/features/whatsapp-bot/index.js +3 -154
- package/dist/features/whatsapp-bot/manifest.d.ts +2 -0
- package/dist/features/whatsapp-bot/manifest.js +13 -0
- package/dist/features/whatsapp-bot/messages/en.json +7 -0
- package/dist/features/whatsapp-bot/server.d.ts +7 -0
- package/dist/features/whatsapp-bot/server.js +7 -0
- package/dist/features/whatsapp-bot/types/index.d.ts +50 -0
- package/dist/features/whatsapp-bot/types/index.js +1 -0
- package/dist/features/wishlist/actions/index.d.ts +1 -0
- package/dist/features/wishlist/actions/index.js +1 -0
- package/dist/features/wishlist/actions/wishlist-actions.d.ts +20 -0
- package/dist/features/wishlist/actions/wishlist-actions.js +29 -0
- package/dist/features/wishlist/columns/index.d.ts +17 -0
- package/dist/features/wishlist/columns/index.js +42 -0
- package/dist/features/wishlist/components/WishlistPage.d.ts +16 -0
- package/dist/features/wishlist/components/WishlistPage.js +17 -0
- package/dist/features/wishlist/components/WishlistToggleButton.d.ts +12 -0
- package/dist/features/wishlist/components/WishlistToggleButton.js +21 -0
- package/dist/features/wishlist/components/WishlistView.d.ts +33 -0
- package/dist/features/wishlist/components/WishlistView.js +41 -0
- package/dist/features/wishlist/components/index.d.ts +4 -0
- package/dist/features/wishlist/components/index.js +3 -0
- package/dist/features/wishlist/hooks/useUserWishlist.d.ts +187 -0
- package/dist/features/wishlist/hooks/useUserWishlist.js +17 -0
- package/dist/features/wishlist/hooks/useWishlist.d.ts +16 -0
- package/dist/features/wishlist/hooks/useWishlist.js +23 -0
- package/dist/features/wishlist/hooks/useWishlistToggle.d.ts +10 -0
- package/dist/features/wishlist/hooks/useWishlistToggle.js +32 -0
- package/dist/features/wishlist/index.d.ts +9 -360
- package/dist/features/wishlist/index.js +8 -888
- package/dist/features/wishlist/manifest.d.ts +2 -0
- package/dist/features/wishlist/manifest.js +12 -0
- package/dist/features/wishlist/messages/en.json +7 -0
- package/dist/features/wishlist/repository/user-wishlist.repository.d.ts +14 -0
- package/dist/features/wishlist/repository/user-wishlist.repository.js +91 -0
- package/dist/features/wishlist/repository/wishlist.repository.d.ts +13 -0
- package/dist/features/wishlist/repository/wishlist.repository.js +31 -0
- package/dist/features/wishlist/schemas/index.d.ts +46 -0
- package/dist/features/wishlist/schemas/index.js +24 -0
- package/dist/features/wishlist/server.d.ts +9 -0
- package/dist/features/wishlist/server.js +9 -0
- package/dist/features/wishlist/types/index.d.ts +16 -0
- package/dist/features/wishlist/types/index.js +1 -0
- package/dist/http/ApiClient.d.ts +59 -0
- package/dist/http/ApiClient.js +149 -0
- package/dist/http/api-handler.d.ts +33 -0
- package/dist/http/api-handler.js +89 -0
- package/dist/http/index.d.ts +6 -58
- package/dist/http/index.js +8 -4
- package/dist/index.d.ts +1 -17
- package/dist/index.js +1 -13
- package/dist/instrumentation/index.d.ts +4 -6
- package/dist/instrumentation/index.js +54 -14
- package/dist/monitoring/analytics.d.ts +79 -0
- package/dist/monitoring/analytics.js +171 -0
- package/dist/monitoring/browser.d.ts +10 -0
- package/dist/monitoring/browser.js +6 -0
- package/dist/monitoring/cache-metrics.d.ts +24 -0
- package/dist/monitoring/cache-metrics.js +83 -0
- package/dist/monitoring/client-logger.d.ts +29 -0
- package/dist/monitoring/client-logger.js +127 -0
- package/dist/monitoring/error-tracking.d.ts +50 -0
- package/dist/monitoring/error-tracking.js +54 -0
- package/dist/monitoring/index.d.ts +12 -181
- package/dist/monitoring/index.js +7 -8
- package/dist/monitoring/performance.d.ts +31 -0
- package/dist/monitoring/performance.js +34 -0
- package/dist/monitoring/runtime.d.ts +17 -0
- package/dist/monitoring/runtime.js +28 -0
- package/dist/monitoring/server-logger.d.ts +37 -0
- package/dist/monitoring/server-logger.js +289 -0
- package/dist/next/ErrorBoundary.d.ts +19 -0
- package/dist/next/ErrorBoundary.js +35 -0
- package/dist/next/IAuthVerifier.d.ts +54 -0
- package/dist/next/IAuthVerifier.js +23 -0
- package/dist/next/api/api-response.d.ts +29 -0
- package/dist/next/api/api-response.js +31 -0
- package/dist/next/api/apiHandler.d.ts +48 -0
- package/dist/next/api/apiHandler.js +87 -0
- package/dist/next/api/errorHandler.d.ts +57 -0
- package/dist/next/api/errorHandler.js +72 -0
- package/dist/next/api/routeHandler.d.ts +60 -0
- package/dist/next/api/routeHandler.js +113 -0
- package/dist/next/cache-middleware.d.ts +35 -0
- package/dist/next/cache-middleware.js +77 -0
- package/dist/next/components/ErrorView.d.ts +13 -0
- package/dist/next/components/ErrorView.js +32 -0
- package/dist/next/components/GlobalError.d.ts +7 -0
- package/dist/next/components/GlobalError.js +43 -0
- package/dist/next/components/NotFoundView.d.ts +28 -0
- package/dist/next/components/NotFoundView.js +25 -0
- package/dist/next/components/UnauthorizedView.d.ts +28 -0
- package/dist/next/components/UnauthorizedView.js +22 -0
- package/dist/next/index.d.ts +34 -776
- package/dist/next/index.js +30 -646
- package/dist/next/middleware/chain.d.ts +47 -0
- package/dist/next/middleware/chain.js +80 -0
- package/dist/next/middleware/index.d.ts +6 -0
- package/dist/next/middleware/index.js +3 -0
- package/dist/next/middleware/pii-redactor.d.ts +32 -0
- package/dist/next/middleware/pii-redactor.js +82 -0
- package/dist/next/middleware/pii-scrubber.d.ts +11 -0
- package/dist/next/middleware/pii-scrubber.js +43 -0
- package/dist/next/middleware/types.d.ts +18 -0
- package/dist/next/middleware/types.js +1 -0
- package/dist/next/request-helpers.d.ts +25 -0
- package/dist/next/request-helpers.js +52 -0
- package/dist/next/routing/route-map.d.ts +272 -0
- package/dist/next/routing/route-map.js +202 -0
- package/dist/providers/auth-firebase/browser-stub.d.ts +24 -0
- package/dist/providers/auth-firebase/browser-stub.js +28 -0
- package/dist/providers/auth-firebase/helpers.d.ts +83 -0
- package/dist/providers/auth-firebase/helpers.js +205 -0
- package/dist/providers/auth-firebase/index.d.ts +7 -133
- package/dist/providers/auth-firebase/index.js +16 -370
- package/dist/providers/auth-firebase/provider.d.ts +8 -0
- package/dist/providers/auth-firebase/provider.js +118 -0
- package/dist/providers/auth-firebase/session.d.ts +19 -0
- package/dist/providers/auth-firebase/session.js +86 -0
- package/dist/providers/db-firebase/admin-app-lite.d.ts +6 -0
- package/dist/providers/db-firebase/admin-app-lite.js +50 -0
- package/dist/providers/db-firebase/admin-auth-lite.d.ts +5 -0
- package/dist/providers/db-firebase/admin-auth-lite.js +10 -0
- package/dist/providers/db-firebase/admin-storage-lite.d.ts +6 -0
- package/dist/providers/db-firebase/admin-storage-lite.js +11 -0
- package/dist/providers/db-firebase/admin.d.ts +29 -0
- package/dist/providers/db-firebase/admin.js +163 -0
- package/dist/providers/db-firebase/base.d.ts +44 -0
- package/dist/providers/db-firebase/base.js +180 -0
- package/dist/providers/db-firebase/base.repository.d.ts +34 -0
- package/dist/providers/db-firebase/base.repository.js +235 -0
- package/dist/providers/db-firebase/browser-stub.d.ts +37 -0
- package/dist/providers/db-firebase/browser-stub.js +56 -0
- package/dist/providers/db-firebase/client-config.d.ts +22 -0
- package/dist/providers/db-firebase/client-config.js +30 -0
- package/dist/providers/db-firebase/field-ops.d.ts +7 -0
- package/dist/providers/db-firebase/field-ops.js +13 -0
- package/dist/providers/db-firebase/helpers.d.ts +23 -0
- package/dist/providers/db-firebase/helpers.js +67 -0
- package/dist/providers/db-firebase/index.d.ts +16 -250
- package/dist/providers/db-firebase/index.js +42 -498
- package/dist/providers/db-firebase/realtime.d.ts +43 -0
- package/dist/providers/db-firebase/realtime.js +122 -0
- package/dist/providers/db-firebase/rtdb-paths.d.ts +12 -0
- package/dist/providers/db-firebase/rtdb-paths.js +12 -0
- package/dist/providers/db-firebase/sieve.d.ts +76 -0
- package/dist/providers/db-firebase/sieve.js +83 -0
- package/dist/providers/email-resend/index.d.ts +6 -64
- package/dist/providers/email-resend/index.js +14 -56
- package/dist/providers/email-resend/provider.d.ts +43 -0
- package/dist/providers/email-resend/provider.js +75 -0
- package/dist/providers/firebase-client/auth.d.ts +12 -0
- package/dist/providers/firebase-client/auth.js +30 -0
- package/dist/providers/firebase-client/index.d.ts +9 -0
- package/dist/providers/firebase-client/index.js +9 -0
- package/dist/providers/firebase-client/realtime.d.ts +18 -0
- package/dist/providers/firebase-client/realtime.js +39 -0
- package/dist/providers/payment-razorpay/index.d.ts +66 -69
- package/dist/providers/payment-razorpay/index.js +201 -97
- package/dist/providers/shipping-shiprocket/index.d.ts +69 -33
- package/dist/providers/shipping-shiprocket/index.js +135 -122
- package/dist/providers/shipping-shiprocket/shiprocket-provider.d.ts +46 -0
- package/dist/providers/shipping-shiprocket/shiprocket-provider.js +152 -0
- package/dist/providers/storage-firebase/client.d.ts +56 -0
- package/dist/providers/storage-firebase/client.js +141 -0
- package/dist/providers/storage-firebase/index.d.ts +6 -43
- package/dist/providers/storage-firebase/index.js +16 -153
- package/dist/providers/storage-firebase/provider.d.ts +23 -0
- package/dist/providers/storage-firebase/provider.js +103 -0
- package/dist/react/ErrorBoundary.d.ts +31 -0
- package/dist/react/ErrorBoundary.js +68 -0
- package/dist/react/contexts/SessionContext.d.ts +80 -0
- package/dist/react/contexts/SessionContext.js +350 -0
- package/dist/react/contexts/ThemeContext.d.ts +14 -0
- package/dist/react/contexts/ThemeContext.js +65 -0
- package/dist/react/contexts/index.d.ts +4 -0
- package/dist/react/contexts/index.js +2 -0
- package/dist/react/hooks/useBreakpoint.d.ts +29 -0
- package/dist/react/hooks/useBreakpoint.js +37 -0
- package/dist/react/hooks/useBulkAction.d.ts +65 -0
- package/dist/react/hooks/useBulkAction.js +69 -0
- package/dist/react/hooks/useBulkSelection.d.ts +40 -0
- package/dist/react/hooks/useBulkSelection.js +58 -0
- package/dist/react/hooks/useCamera.d.ts +34 -0
- package/dist/react/hooks/useCamera.js +147 -0
- package/dist/react/hooks/useClickOutside.d.ts +37 -0
- package/dist/react/hooks/useClickOutside.js +57 -0
- package/dist/react/hooks/useContainerGrid.d.ts +39 -0
- package/dist/react/hooks/useContainerGrid.js +47 -0
- package/dist/react/hooks/useCountdown.d.ts +26 -0
- package/dist/react/hooks/useCountdown.js +49 -0
- package/dist/react/hooks/useGesture.d.ts +51 -0
- package/dist/react/hooks/useGesture.js +181 -0
- package/dist/react/hooks/useKeyPress.d.ts +48 -0
- package/dist/react/hooks/useKeyPress.js +62 -0
- package/dist/react/hooks/useLongPress.d.ts +26 -0
- package/dist/react/hooks/useLongPress.js +55 -0
- package/dist/react/hooks/useMediaQuery.d.ts +17 -0
- package/dist/react/hooks/useMediaQuery.js +34 -0
- package/dist/react/hooks/useMessage.d.ts +11 -0
- package/dist/react/hooks/useMessage.js +45 -0
- package/dist/react/hooks/usePendingFilters.d.ts +58 -0
- package/dist/react/hooks/usePendingFilters.js +79 -0
- package/dist/react/hooks/usePendingTable.d.ts +49 -0
- package/dist/react/hooks/usePendingTable.js +45 -0
- package/dist/react/hooks/usePullToRefresh.d.ts +38 -0
- package/dist/react/hooks/usePullToRefresh.js +82 -0
- package/dist/react/hooks/useRealtimeEvent.d.ts +53 -0
- package/dist/react/hooks/useRealtimeEvent.js +124 -0
- package/dist/react/hooks/useSwipe.d.ts +55 -0
- package/dist/react/hooks/useSwipe.js +165 -0
- package/dist/react/hooks/useUnsavedChanges.d.ts +44 -0
- package/dist/react/hooks/useUnsavedChanges.js +55 -0
- package/dist/react/hooks/useUrlTable.d.ts +31 -0
- package/dist/react/hooks/useUrlTable.js +137 -0
- package/dist/react/hooks/useVisibleItems.d.ts +37 -0
- package/dist/react/hooks/useVisibleItems.js +59 -0
- package/dist/react/index.d.ts +49 -787
- package/dist/react/index.js +47 -1665
- package/dist/react/useModalStack.d.ts +33 -0
- package/dist/react/useModalStack.js +61 -0
- package/dist/repositories/index.d.ts +38 -0
- package/dist/repositories/index.js +40 -0
- package/dist/security/authorization.d.ts +24 -0
- package/dist/security/authorization.js +73 -0
- package/dist/security/browser.d.ts +7 -0
- package/dist/security/browser.js +5 -0
- package/dist/security/csp.d.ts +16 -0
- package/dist/security/csp.js +44 -0
- package/dist/security/index.d.ts +11 -309
- package/dist/security/index.js +8 -5
- package/dist/security/pii-encrypt.d.ts +121 -0
- package/dist/security/pii-encrypt.js +351 -0
- package/dist/security/pii-redact.d.ts +20 -0
- package/dist/security/pii-redact.js +129 -0
- package/dist/security/pii-schemas.d.ts +38 -0
- package/dist/security/pii-schemas.js +62 -0
- package/dist/security/rate-limit.d.ts +70 -0
- package/dist/security/rate-limit.js +107 -0
- package/dist/security/rbac/Can.d.ts +31 -0
- package/dist/security/rbac/Can.js +24 -0
- package/dist/security/rbac/default-roles.d.ts +2 -0
- package/dist/security/rbac/default-roles.js +83 -0
- package/dist/security/rbac/hook.d.ts +20 -0
- package/dist/security/rbac/hook.js +30 -0
- package/dist/security/rbac/index.d.ts +8 -0
- package/dist/security/rbac/index.js +6 -0
- package/dist/security/rbac/middleware.d.ts +51 -0
- package/dist/security/rbac/middleware.js +51 -0
- package/dist/security/rbac/resolver.d.ts +5 -0
- package/dist/security/rbac/resolver.js +38 -0
- package/dist/security/rbac/server.d.ts +24 -0
- package/dist/security/rbac/server.js +42 -0
- package/dist/security/rbac/types.d.ts +22 -0
- package/dist/security/rbac/types.js +2 -0
- package/dist/security/settings-encryption.d.ts +5 -0
- package/dist/security/settings-encryption.js +48 -0
- package/dist/seed/actions/demo-seed-actions.d.ts +31 -0
- package/dist/seed/actions/demo-seed-actions.js +36 -0
- package/dist/seed/actions/index.d.ts +1 -0
- package/dist/seed/actions/index.js +1 -0
- package/dist/seed/addresses-seed-data.d.ts +19 -0
- package/dist/seed/addresses-seed-data.js +418 -0
- package/dist/seed/bids-seed-data.d.ts +7 -0
- package/dist/seed/bids-seed-data.js +1168 -0
- package/dist/seed/blog-posts-seed-data.d.ts +7 -0
- package/dist/seed/blog-posts-seed-data.js +215 -0
- package/dist/seed/carousel-slides-seed-data.d.ts +7 -0
- package/dist/seed/carousel-slides-seed-data.js +283 -0
- package/dist/seed/cart-seed-data.d.ts +20 -0
- package/dist/seed/cart-seed-data.js +179 -0
- package/dist/seed/categories-seed-data.d.ts +7 -0
- package/dist/seed/categories-seed-data.js +1220 -0
- package/dist/seed/coupons-seed-data.d.ts +7 -0
- package/dist/seed/coupons-seed-data.js +508 -0
- package/dist/seed/defaults/categories.d.ts +2 -0
- package/dist/seed/defaults/categories.js +12 -0
- package/dist/seed/defaults/faqs.d.ts +2 -0
- package/dist/seed/defaults/faqs.js +40 -0
- package/dist/seed/defaults/homepage-sections.d.ts +2 -0
- package/dist/seed/defaults/homepage-sections.js +59 -0
- package/dist/seed/events-seed-data.d.ts +8 -0
- package/dist/seed/events-seed-data.js +662 -0
- package/dist/seed/factories/address.factory.d.ts +21 -0
- package/dist/seed/factories/address.factory.js +44 -0
- package/dist/seed/factories/bid.factory.d.ts +15 -0
- package/dist/seed/factories/bid.factory.js +33 -0
- package/dist/seed/factories/blog-post.factory.d.ts +15 -0
- package/dist/seed/factories/blog-post.factory.js +22 -0
- package/dist/seed/factories/carousel.factory.d.ts +11 -0
- package/dist/seed/factories/carousel.factory.js +16 -0
- package/dist/seed/factories/cart.factory.d.ts +26 -0
- package/dist/seed/factories/cart.factory.js +35 -0
- package/dist/seed/factories/category.factory.d.ts +11 -0
- package/dist/seed/factories/category.factory.js +16 -0
- package/dist/seed/factories/coupon.factory.d.ts +21 -0
- package/dist/seed/factories/coupon.factory.js +43 -0
- package/dist/seed/factories/faq.factory.d.ts +10 -0
- package/dist/seed/factories/faq.factory.js +15 -0
- package/dist/seed/factories/homepage-section.factory.d.ts +9 -0
- package/dist/seed/factories/homepage-section.factory.js +13 -0
- package/dist/seed/factories/notification.factory.d.ts +17 -0
- package/dist/seed/factories/notification.factory.js +39 -0
- package/dist/seed/factories/order.factory.d.ts +20 -0
- package/dist/seed/factories/order.factory.js +20 -0
- package/dist/seed/factories/payout.factory.d.ts +21 -0
- package/dist/seed/factories/payout.factory.js +38 -0
- package/dist/seed/factories/product.factory.d.ts +27 -0
- package/dist/seed/factories/product.factory.js +111 -0
- package/dist/seed/factories/review.factory.d.ts +14 -0
- package/dist/seed/factories/review.factory.js +52 -0
- package/dist/seed/factories/session.factory.d.ts +15 -0
- package/dist/seed/factories/session.factory.js +31 -0
- package/dist/seed/factories/store.factory.d.ts +23 -0
- package/dist/seed/factories/store.factory.js +46 -0
- package/dist/seed/factories/user.factory.d.ts +19 -0
- package/dist/seed/factories/user.factory.js +55 -0
- package/dist/seed/faq-seed-data.d.ts +47 -0
- package/dist/seed/faq-seed-data.js +2320 -0
- package/dist/seed/firestore-indexes.d.ts +13 -0
- package/dist/seed/firestore-indexes.js +32 -0
- package/dist/seed/homepage-sections-seed-data.d.ts +18 -0
- package/dist/seed/homepage-sections-seed-data.js +339 -0
- package/dist/seed/index.d.ts +68 -397
- package/dist/seed/index.js +49 -1040
- package/dist/seed/notifications-seed-data.d.ts +7 -0
- package/dist/seed/notifications-seed-data.js +494 -0
- package/dist/seed/orders-seed-data.d.ts +7 -0
- package/dist/seed/orders-seed-data.js +578 -0
- package/dist/seed/payouts-seed-data.d.ts +7 -0
- package/dist/seed/payouts-seed-data.js +202 -0
- package/dist/seed/products-seed-data.d.ts +7 -0
- package/dist/seed/products-seed-data.js +2477 -0
- package/dist/seed/reviews-seed-data.d.ts +7 -0
- package/dist/seed/reviews-seed-data.js +618 -0
- package/dist/seed/runner.d.ts +3 -0
- package/dist/seed/runner.js +38 -0
- package/dist/seed/seed-market-config.d.ts +49 -0
- package/dist/seed/seed-market-config.js +198 -0
- package/dist/seed/sessions-seed-data.d.ts +17 -0
- package/dist/seed/sessions-seed-data.js +355 -0
- package/dist/seed/site-settings-seed-data.d.ts +7 -0
- package/dist/seed/site-settings-seed-data.js +236 -0
- package/dist/seed/store-addresses-seed-data.d.ts +19 -0
- package/dist/seed/store-addresses-seed-data.js +106 -0
- package/dist/seed/stores-seed-data.d.ts +14 -0
- package/dist/seed/stores-seed-data.js +127 -0
- package/dist/seed/test-utils.d.ts +49 -0
- package/dist/seed/test-utils.js +107 -0
- package/dist/seed/types.d.ts +33 -0
- package/dist/seed/types.js +1 -0
- package/dist/seed/users-seed-data.d.ts +7 -0
- package/dist/seed/users-seed-data.js +727 -0
- package/dist/seo/index.d.ts +2 -150
- package/dist/seo/index.js +2 -4
- package/dist/seo/json-ld.d.ts +69 -0
- package/dist/seo/json-ld.js +166 -0
- package/dist/seo/metadata.d.ts +77 -0
- package/dist/seo/metadata.js +157 -0
- package/dist/server.d.ts +109 -0
- package/dist/server.js +110 -0
- package/dist/style/tailwind/index.d.ts +5 -7
- package/dist/style/tailwind/index.js +54 -33
- package/dist/style/vanilla/index.d.ts +5 -7
- package/dist/style/vanilla/index.js +45 -33
- package/dist/tokens/index.d.ts +23 -24
- package/dist/tokens/index.js +786 -4
- package/dist/tokens/tokens.css +221 -0
- package/dist/ui/DataTable.d.ts +78 -0
- package/dist/ui/DataTable.js +157 -0
- package/dist/ui/DataTable.style.css +190 -0
- package/dist/ui/animation.helper.d.ts +17 -0
- package/dist/ui/animation.helper.js +17 -0
- package/dist/ui/color.helper.d.ts +12 -0
- package/dist/ui/color.helper.js +31 -0
- package/dist/ui/columns/build-columns.d.ts +21 -0
- package/dist/ui/columns/build-columns.js +33 -0
- package/dist/ui/columns/column-renderers.d.ts +33 -0
- package/dist/ui/columns/column-renderers.js +64 -0
- package/dist/ui/columns/index.d.ts +6 -0
- package/dist/ui/columns/index.js +5 -0
- package/dist/ui/components/Accordion.d.ts +27 -0
- package/dist/ui/components/Accordion.js +57 -0
- package/dist/ui/components/Accordion.style.css +82 -0
- package/dist/ui/components/ActiveFilterChips.d.ts +13 -0
- package/dist/ui/components/ActiveFilterChips.js +9 -0
- package/dist/ui/components/ActiveFilterChips.style.css +66 -0
- package/dist/ui/components/Alert.d.ts +43 -0
- package/dist/ui/components/Alert.js +47 -0
- package/dist/ui/components/Alert.style.css +187 -0
- package/dist/ui/components/Avatar.d.ts +18 -0
- package/dist/ui/components/Avatar.js +42 -0
- package/dist/ui/components/Avatar.style.css +73 -0
- package/dist/ui/components/AvatarDisplay.d.ts +10 -0
- package/dist/ui/components/AvatarDisplay.js +56 -0
- package/dist/ui/components/AvatarDisplay.style.css +46 -0
- package/dist/ui/components/BackgroundRenderer.d.ts +15 -0
- package/dist/ui/components/BackgroundRenderer.js +42 -0
- package/dist/ui/components/BackgroundRenderer.style.css +31 -0
- package/dist/ui/components/Badge.d.ts +33 -0
- package/dist/ui/components/Badge.js +34 -0
- package/dist/ui/components/Badge.style.css +114 -0
- package/dist/ui/components/BaseListingCard.d.ts +39 -0
- package/dist/ui/components/BaseListingCard.js +56 -0
- package/dist/ui/components/BaseListingCard.style.css +84 -0
- package/dist/ui/components/Breadcrumb.d.ts +15 -0
- package/dist/ui/components/Breadcrumb.js +12 -0
- package/dist/ui/components/Breadcrumb.style.css +60 -0
- package/dist/ui/components/BulkActionBar.d.ts +34 -0
- package/dist/ui/components/BulkActionBar.js +86 -0
- package/dist/ui/components/BulkActionBar.style.css +196 -0
- package/dist/ui/components/Button.d.ts +31 -0
- package/dist/ui/components/Button.js +29 -0
- package/dist/ui/components/Button.style.css +160 -0
- package/dist/ui/components/Card.d.ts +21 -0
- package/dist/ui/components/Card.js +51 -0
- package/dist/ui/components/Card.style.css +192 -0
- package/dist/ui/components/Checkbox.d.ts +8 -0
- package/dist/ui/components/Checkbox.js +38 -0
- package/dist/ui/components/Checkbox.style.css +113 -0
- package/dist/ui/components/ConfirmDeleteModal.d.ts +33 -0
- package/dist/ui/components/ConfirmDeleteModal.js +74 -0
- package/dist/ui/components/ConfirmDeleteModal.style.css +89 -0
- package/dist/ui/components/CountdownDisplay.d.ts +14 -0
- package/dist/ui/components/CountdownDisplay.js +50 -0
- package/dist/ui/components/CountdownDisplay.style.css +4 -0
- package/dist/ui/components/DashboardStatsCard.d.ts +15 -0
- package/dist/ui/components/DashboardStatsCard.js +28 -0
- package/dist/ui/components/DashboardStatsCard.style.css +70 -0
- package/dist/ui/components/DescriptionField.d.ts +23 -0
- package/dist/ui/components/DescriptionField.js +28 -0
- package/dist/ui/components/DescriptionField.style.css +36 -0
- package/dist/ui/components/DetailViewShell.d.ts +51 -0
- package/dist/ui/components/DetailViewShell.js +50 -0
- package/dist/ui/components/Div.d.ts +20 -0
- package/dist/ui/components/Div.js +19 -0
- package/dist/ui/components/Div.style.css +6 -0
- package/dist/ui/components/Divider.d.ts +12 -0
- package/dist/ui/components/Divider.js +11 -0
- package/dist/ui/components/Divider.style.css +39 -0
- package/dist/ui/components/Drawer.d.ts +21 -0
- package/dist/ui/components/Drawer.js +72 -0
- package/dist/ui/components/Drawer.style.css +146 -0
- package/dist/ui/components/Dropdown.d.ts +36 -0
- package/dist/ui/components/Dropdown.js +142 -0
- package/dist/ui/components/Dropdown.style.css +112 -0
- package/dist/ui/components/DynamicSelect.d.ts +24 -0
- package/dist/ui/components/DynamicSelect.js +78 -0
- package/dist/ui/components/DynamicSelect.style.css +101 -0
- package/dist/ui/components/EmptyState.d.ts +12 -0
- package/dist/ui/components/EmptyState.js +17 -0
- package/dist/ui/components/EmptyState.style.css +30 -0
- package/dist/ui/components/FilterDrawer.d.ts +16 -0
- package/dist/ui/components/FilterDrawer.js +39 -0
- package/dist/ui/components/FilterDrawer.style.css +61 -0
- package/dist/ui/components/FlowDiagram.d.ts +33 -0
- package/dist/ui/components/FlowDiagram.js +15 -0
- package/dist/ui/components/FlowDiagram.style.css +77 -0
- package/dist/ui/components/Form.d.ts +27 -0
- package/dist/ui/components/Form.js +48 -0
- package/dist/ui/components/Form.style.css +27 -0
- package/dist/ui/components/FormField.d.ts +26 -0
- package/dist/ui/components/FormField.js +25 -0
- package/dist/ui/components/FormField.style.css +30 -0
- package/dist/ui/components/FormGrid.d.ts +46 -0
- package/dist/ui/components/FormGrid.js +42 -0
- package/dist/ui/components/FormGrid.style.css +32 -0
- package/dist/ui/components/HorizontalScroller.d.ts +33 -0
- package/dist/ui/components/HorizontalScroller.js +47 -0
- package/dist/ui/components/HorizontalScroller.style.css +109 -0
- package/dist/ui/components/IconButton.d.ts +32 -0
- package/dist/ui/components/IconButton.js +31 -0
- package/dist/ui/components/IconButton.style.css +103 -0
- package/dist/ui/components/ImageGallery.d.ts +17 -0
- package/dist/ui/components/ImageGallery.js +108 -0
- package/dist/ui/components/ImageGallery.style.css +163 -0
- package/dist/ui/components/ImageLightbox.d.ts +24 -0
- package/dist/ui/components/ImageLightbox.js +61 -0
- package/dist/ui/components/ImageLightbox.style.css +58 -0
- package/dist/ui/components/Input.d.ts +12 -0
- package/dist/ui/components/Input.js +29 -0
- package/dist/ui/components/Input.style.css +28 -0
- package/dist/ui/components/ItemRow.d.ts +10 -0
- package/dist/ui/components/ItemRow.js +7 -0
- package/dist/ui/components/ItemRow.style.css +33 -0
- package/dist/ui/components/Layout.d.ts +282 -0
- package/dist/ui/components/Layout.js +184 -0
- package/dist/ui/components/Layout.style.css +212 -0
- package/dist/ui/components/ListingLayout.d.ts +60 -0
- package/dist/ui/components/ListingLayout.js +121 -0
- package/dist/ui/components/ListingLayout.style.css +527 -0
- package/dist/ui/components/ListingViewShell.d.ts +38 -0
- package/dist/ui/components/ListingViewShell.js +11 -0
- package/dist/ui/components/Menu.d.ts +29 -0
- package/dist/ui/components/Menu.js +19 -0
- package/dist/ui/components/Menu.style.css +6 -0
- package/dist/ui/components/Modal.d.ts +18 -0
- package/dist/ui/components/Modal.js +79 -0
- package/dist/ui/components/Modal.style.css +102 -0
- package/dist/ui/components/Pagination.d.ts +25 -0
- package/dist/ui/components/Pagination.js +56 -0
- package/dist/ui/components/Pagination.style.css +76 -0
- package/dist/ui/components/PasswordStrengthIndicator.d.ts +12 -0
- package/dist/ui/components/PasswordStrengthIndicator.js +35 -0
- package/dist/ui/components/PasswordStrengthIndicator.style.css +56 -0
- package/dist/ui/components/PriceDisplay.d.ts +8 -0
- package/dist/ui/components/PriceDisplay.js +28 -0
- package/dist/ui/components/PriceDisplay.style.css +47 -0
- package/dist/ui/components/Progress.d.ts +23 -0
- package/dist/ui/components/Progress.js +32 -0
- package/dist/ui/components/Progress.style.css +81 -0
- package/dist/ui/components/Radio.d.ts +18 -0
- package/dist/ui/components/Radio.js +64 -0
- package/dist/ui/components/Radio.style.css +155 -0
- package/dist/ui/components/RatingDisplay.d.ts +8 -0
- package/dist/ui/components/RatingDisplay.js +15 -0
- package/dist/ui/components/RatingDisplay.style.css +50 -0
- package/dist/ui/components/ResponsiveView.d.ts +12 -0
- package/dist/ui/components/ResponsiveView.js +9 -0
- package/dist/ui/components/ResponsiveView.style.css +69 -0
- package/dist/ui/components/RoleBadge.d.ts +7 -0
- package/dist/ui/components/RoleBadge.js +21 -0
- package/dist/ui/components/RoleBadge.style.css +7 -0
- package/dist/ui/components/RowActionMenu.d.ts +13 -0
- package/dist/ui/components/RowActionMenu.js +17 -0
- package/dist/ui/components/RowActionMenu.style.css +91 -0
- package/dist/ui/components/SectionTabs.d.ts +19 -0
- package/dist/ui/components/SectionTabs.js +66 -0
- package/dist/ui/components/SectionTabs.style.css +163 -0
- package/dist/ui/components/Select.d.ts +19 -0
- package/dist/ui/components/Select.js +27 -0
- package/dist/ui/components/Select.style.css +177 -0
- package/dist/ui/components/Semantic.d.ts +154 -0
- package/dist/ui/components/Semantic.js +32 -0
- package/dist/ui/components/Semantic.style.css +14 -0
- package/dist/ui/components/SideDrawer.d.ts +28 -0
- package/dist/ui/components/SideDrawer.js +151 -0
- package/dist/ui/components/SideDrawer.style.css +214 -0
- package/dist/ui/components/SideModal.d.ts +25 -0
- package/dist/ui/components/SideModal.js +61 -0
- package/dist/ui/components/SideModal.style.css +77 -0
- package/dist/ui/components/Skeleton.d.ts +14 -0
- package/dist/ui/components/Skeleton.js +22 -0
- package/dist/ui/components/Skeleton.style.css +55 -0
- package/dist/ui/components/SkipToMain.d.ts +6 -0
- package/dist/ui/components/SkipToMain.js +6 -0
- package/dist/ui/components/SkipToMain.style.css +34 -0
- package/dist/ui/components/Slider.d.ts +17 -0
- package/dist/ui/components/Slider.js +38 -0
- package/dist/ui/components/Slider.style.css +17 -0
- package/dist/ui/components/SlottedListingView.d.ts +62 -0
- package/dist/ui/components/SlottedListingView.js +41 -0
- package/dist/ui/components/SortDropdown.d.ts +15 -0
- package/dist/ui/components/SortDropdown.js +8 -0
- package/dist/ui/components/SortDropdown.style.css +12 -0
- package/dist/ui/components/Spinner.d.ts +13 -0
- package/dist/ui/components/Spinner.js +15 -0
- package/dist/ui/components/Spinner.style.css +76 -0
- package/dist/ui/components/StackedViewShell.d.ts +50 -0
- package/dist/ui/components/StackedViewShell.js +39 -0
- package/dist/ui/components/StarRating.d.ts +17 -0
- package/dist/ui/components/StarRating.js +29 -0
- package/dist/ui/components/StarRating.style.css +44 -0
- package/dist/ui/components/StatsGrid.d.ts +18 -0
- package/dist/ui/components/StatsGrid.js +17 -0
- package/dist/ui/components/StatsGrid.style.css +96 -0
- package/dist/ui/components/StatusBadge.d.ts +18 -0
- package/dist/ui/components/StatusBadge.js +60 -0
- package/dist/ui/components/StatusBadge.style.css +5 -0
- package/dist/ui/components/StepperNav.d.ts +10 -0
- package/dist/ui/components/StepperNav.js +23 -0
- package/dist/ui/components/StepperNav.style.css +110 -0
- package/dist/ui/components/SummaryCard.d.ts +21 -0
- package/dist/ui/components/SummaryCard.js +15 -0
- package/dist/ui/components/SummaryCard.style.css +82 -0
- package/dist/ui/components/TabStrip.d.ts +34 -0
- package/dist/ui/components/TabStrip.js +57 -0
- package/dist/ui/components/TabStrip.style.css +97 -0
- package/dist/ui/components/TablePagination.d.ts +21 -0
- package/dist/ui/components/TablePagination.js +32 -0
- package/dist/ui/components/TablePagination.style.css +89 -0
- package/dist/ui/components/Tabs.d.ts +28 -0
- package/dist/ui/components/Tabs.js +41 -0
- package/dist/ui/components/Tabs.style.css +46 -0
- package/dist/ui/components/TagInput.d.ts +10 -0
- package/dist/ui/components/TagInput.js +60 -0
- package/dist/ui/components/TagInput.style.css +121 -0
- package/dist/ui/components/TextLink.d.ts +42 -0
- package/dist/ui/components/TextLink.js +48 -0
- package/dist/ui/components/TextLink.style.css +94 -0
- package/dist/ui/components/Textarea.d.ts +9 -0
- package/dist/ui/components/Textarea.js +21 -0
- package/dist/ui/components/Textarea.style.css +30 -0
- package/dist/ui/components/Toast.d.ts +15 -0
- package/dist/ui/components/Toast.js +61 -0
- package/dist/ui/components/Toast.style.css +114 -0
- package/dist/ui/components/Toggle.d.ts +12 -0
- package/dist/ui/components/Toggle.js +47 -0
- package/dist/ui/components/Toggle.style.css +107 -0
- package/dist/ui/components/Tooltip.d.ts +34 -0
- package/dist/ui/components/Tooltip.js +110 -0
- package/dist/ui/components/Tooltip.style.css +114 -0
- package/dist/ui/components/Typography.d.ts +50 -0
- package/dist/ui/components/Typography.js +103 -0
- package/dist/ui/components/Typography.style.css +178 -0
- package/dist/ui/components/UnsavedChangesModal.d.ts +17 -0
- package/dist/ui/components/UnsavedChangesModal.js +52 -0
- package/dist/ui/components/UnsavedChangesModal.style.css +33 -0
- package/dist/ui/components/ViewToggle.d.ts +15 -0
- package/dist/ui/components/ViewToggle.js +29 -0
- package/dist/ui/components/ViewToggle.style.css +50 -0
- package/dist/ui/components/index.style.css +76 -0
- package/dist/ui/index.d.ts +165 -1644
- package/dist/ui/index.js +87 -4784
- package/dist/ui/rich-text/RichText.d.ts +46 -0
- package/dist/ui/rich-text/RichText.js +172 -0
- package/dist/ui/rich-text/RichText.style.css +5 -0
- package/dist/ui/rich-text/index.d.ts +2 -0
- package/dist/ui/rich-text/index.js +1 -0
- package/dist/ui/style.helper.d.ts +7 -0
- package/dist/ui/style.helper.js +12 -0
- package/dist/utils/animation.helper.d.ts +19 -0
- package/dist/utils/animation.helper.js +19 -0
- package/dist/utils/array.helper.d.ts +17 -0
- package/dist/utils/array.helper.js +53 -0
- package/dist/utils/business-day.d.ts +47 -0
- package/dist/utils/business-day.js +68 -0
- package/dist/utils/client.d.ts +1 -0
- package/dist/utils/client.js +1 -0
- package/dist/utils/color.helper.d.ts +32 -0
- package/dist/utils/color.helper.js +51 -0
- package/dist/utils/cookie.converter.d.ts +7 -0
- package/dist/utils/cookie.converter.js +32 -0
- package/dist/utils/date.formatter.d.ts +22 -0
- package/dist/utils/date.formatter.js +194 -0
- package/dist/utils/event-manager.d.ts +45 -0
- package/dist/utils/event-manager.js +185 -0
- package/dist/utils/filter.helper.d.ts +18 -0
- package/dist/utils/filter.helper.js +21 -0
- package/dist/utils/id-generators.d.ts +243 -0
- package/dist/utils/id-generators.js +360 -0
- package/dist/utils/index.d.ts +17 -545
- package/dist/utils/index.js +18 -4
- package/dist/utils/media-field.d.ts +2 -0
- package/dist/utils/media-field.js +1 -0
- package/dist/utils/number.formatter.d.ts +13 -0
- package/dist/utils/number.formatter.js +100 -0
- package/dist/utils/object.helper.d.ts +16 -0
- package/dist/utils/object.helper.js +82 -0
- package/dist/utils/pagination.helper.d.ts +23 -0
- package/dist/utils/pagination.helper.js +24 -0
- package/dist/utils/schema-ui.d.ts +83 -0
- package/dist/utils/schema-ui.js +185 -0
- package/dist/utils/sorting.helper.d.ts +7 -0
- package/dist/utils/sorting.helper.js +16 -0
- package/dist/utils/string.formatter.d.ts +19 -0
- package/dist/utils/string.formatter.js +140 -0
- package/dist/utils/type.converter.d.ts +14 -0
- package/dist/utils/type.converter.js +61 -0
- package/dist/validation/ZodSetup.d.ts +5 -0
- package/dist/validation/ZodSetup.js +11 -0
- package/dist/validation/email.validator.d.ts +7 -0
- package/dist/validation/email.validator.js +33 -0
- package/dist/validation/index.d.ts +9 -126
- package/dist/validation/index.js +8 -4
- package/dist/validation/input.validator.d.ts +11 -0
- package/dist/validation/input.validator.js +33 -0
- package/dist/validation/password.validator.d.ts +21 -0
- package/dist/validation/password.validator.js +77 -0
- package/dist/validation/phone.validator.d.ts +9 -0
- package/dist/validation/phone.validator.js +41 -0
- package/dist/validation/schemas.d.ts +267 -0
- package/dist/validation/schemas.js +176 -0
- package/dist/validation/url.validator.d.ts +7 -0
- package/dist/validation/url.validator.js +44 -0
- package/dist/validation/zod-error-map.d.ts +17 -0
- package/dist/validation/zod-error-map.js +85 -0
- package/dist/values/index.d.ts +6 -0
- package/dist/values/index.js +6 -0
- package/dist/values/success-messages.d.ts +242 -0
- package/dist/values/success-messages.js +272 -0
- package/package.json +87 -445
- package/dist/chunk-2NMEKWO5.js +0 -35
- package/dist/chunk-2NMEKWO5.js.map +0 -1
- package/dist/chunk-6344OTT4.js +0 -329
- package/dist/chunk-6344OTT4.js.map +0 -1
- package/dist/chunk-7HUFI4MW.cjs +0 -941
- package/dist/chunk-7HUFI4MW.cjs.map +0 -1
- package/dist/chunk-AZ2XDBYA.cjs +0 -150
- package/dist/chunk-AZ2XDBYA.cjs.map +0 -1
- package/dist/chunk-CI4ZFLS7.js +0 -1162
- package/dist/chunk-CI4ZFLS7.js.map +0 -1
- package/dist/chunk-DSCHV5OD.js +0 -620
- package/dist/chunk-DSCHV5OD.js.map +0 -1
- package/dist/chunk-EEMSMWIZ.js +0 -566
- package/dist/chunk-EEMSMWIZ.js.map +0 -1
- package/dist/chunk-EPJNBIKL.js +0 -916
- package/dist/chunk-EPJNBIKL.js.map +0 -1
- package/dist/chunk-FJEY6LN2.cjs +0 -64
- package/dist/chunk-FJEY6LN2.cjs.map +0 -1
- package/dist/chunk-GZXXRVTM.cjs +0 -343
- package/dist/chunk-GZXXRVTM.cjs.map +0 -1
- package/dist/chunk-IE5L2QHV.js +0 -204
- package/dist/chunk-IE5L2QHV.js.map +0 -1
- package/dist/chunk-JPHORBTI.cjs +0 -366
- package/dist/chunk-JPHORBTI.cjs.map +0 -1
- package/dist/chunk-K4C5Z22R.js +0 -146
- package/dist/chunk-K4C5Z22R.js.map +0 -1
- package/dist/chunk-PAHR3D5L.js +0 -56
- package/dist/chunk-PAHR3D5L.js.map +0 -1
- package/dist/chunk-PE44UBFV.js +0 -324
- package/dist/chunk-PE44UBFV.js.map +0 -1
- package/dist/chunk-RNELVIKK.cjs +0 -1287
- package/dist/chunk-RNELVIKK.cjs.map +0 -1
- package/dist/chunk-S367Y35J.cjs +0 -39
- package/dist/chunk-S367Y35J.cjs.map +0 -1
- package/dist/chunk-ULLW73KN.cjs +0 -217
- package/dist/chunk-ULLW73KN.cjs.map +0 -1
- package/dist/chunk-UNYFAUWW.cjs +0 -630
- package/dist/chunk-UNYFAUWW.cjs.map +0 -1
- package/dist/chunk-V55QYTXF.js +0 -259
- package/dist/chunk-V55QYTXF.js.map +0 -1
- package/dist/chunk-WKVCFDEA.cjs +0 -599
- package/dist/chunk-WKVCFDEA.cjs.map +0 -1
- package/dist/chunk-YT4QVIBP.cjs +0 -292
- package/dist/chunk-YT4QVIBP.cjs.map +0 -1
- package/dist/cli/index.cjs +0 -155
- package/dist/cli/index.cjs.map +0 -1
- package/dist/cli/index.d.cts +0 -41
- package/dist/cli/index.js.map +0 -1
- package/dist/contracts/index.cjs +0 -37
- package/dist/contracts/index.cjs.map +0 -1
- package/dist/contracts/index.d.cts +0 -728
- package/dist/contracts/index.js.map +0 -1
- package/dist/core/index.cjs +0 -84
- package/dist/core/index.cjs.map +0 -1
- package/dist/core/index.d.cts +0 -329
- package/dist/core/index.js.map +0 -1
- package/dist/errors/index.cjs +0 -57
- package/dist/errors/index.cjs.map +0 -1
- package/dist/errors/index.d.cts +0 -96
- package/dist/errors/index.js.map +0 -1
- package/dist/extend-D57fwPSu.d.cts +0 -122
- package/dist/extend-D57fwPSu.d.ts +0 -122
- package/dist/extend-D_0wzsse.d.cts +0 -79
- package/dist/extend-D_0wzsse.d.ts +0 -79
- package/dist/extend-jcOQfU2G.d.cts +0 -162
- package/dist/extend-jcOQfU2G.d.ts +0 -162
- package/dist/feature-C8mVv66I.d.cts +0 -84
- package/dist/feature-C8mVv66I.d.ts +0 -84
- package/dist/feature-DENiK3vd.d.cts +0 -55
- package/dist/feature-DENiK3vd.d.ts +0 -55
- package/dist/feature-RWXQ_lnf.d.cts +0 -41
- package/dist/feature-RWXQ_lnf.d.ts +0 -41
- package/dist/features/about/index.cjs +0 -286
- package/dist/features/about/index.cjs.map +0 -1
- package/dist/features/about/index.d.cts +0 -42
- package/dist/features/about/index.js.map +0 -1
- package/dist/features/account/index.cjs +0 -1032
- package/dist/features/account/index.cjs.map +0 -1
- package/dist/features/account/index.d.cts +0 -555
- package/dist/features/account/index.js.map +0 -1
- package/dist/features/admin/index.cjs +0 -2747
- package/dist/features/admin/index.cjs.map +0 -1
- package/dist/features/admin/index.d.cts +0 -554
- package/dist/features/admin/index.js.map +0 -1
- package/dist/features/auctions/index.cjs +0 -1219
- package/dist/features/auctions/index.cjs.map +0 -1
- package/dist/features/auctions/index.d.cts +0 -513
- package/dist/features/auctions/index.js.map +0 -1
- package/dist/features/auth/index.cjs +0 -1897
- package/dist/features/auth/index.cjs.map +0 -1
- package/dist/features/auth/index.d.cts +0 -315
- package/dist/features/auth/index.js.map +0 -1
- package/dist/features/auth/server.cjs +0 -531
- package/dist/features/auth/server.cjs.map +0 -1
- package/dist/features/auth/server.d.cts +0 -24
- package/dist/features/auth/server.js.map +0 -1
- package/dist/features/before-after/index.cjs +0 -559
- package/dist/features/before-after/index.cjs.map +0 -1
- package/dist/features/before-after/index.d.cts +0 -128
- package/dist/features/before-after/index.js.map +0 -1
- package/dist/features/blog/index.cjs +0 -4088
- package/dist/features/blog/index.cjs.map +0 -1
- package/dist/features/blog/index.d.cts +0 -492
- package/dist/features/blog/index.js.map +0 -1
- package/dist/features/blog/server.cjs +0 -184
- package/dist/features/blog/server.cjs.map +0 -1
- package/dist/features/blog/server.d.cts +0 -74
- package/dist/features/blog/server.js.map +0 -1
- package/dist/features/cart/index.cjs +0 -1097
- package/dist/features/cart/index.cjs.map +0 -1
- package/dist/features/cart/index.d.cts +0 -451
- package/dist/features/cart/index.js.map +0 -1
- package/dist/features/categories/index.cjs +0 -2062
- package/dist/features/categories/index.cjs.map +0 -1
- package/dist/features/categories/index.d.cts +0 -461
- package/dist/features/categories/index.js.map +0 -1
- package/dist/features/categories/server.cjs +0 -796
- package/dist/features/categories/server.cjs.map +0 -1
- package/dist/features/categories/server.d.cts +0 -47
- package/dist/features/categories/server.js.map +0 -1
- package/dist/features/checkout/index.cjs +0 -200
- package/dist/features/checkout/index.cjs.map +0 -1
- package/dist/features/checkout/index.d.cts +0 -70
- package/dist/features/checkout/index.js.map +0 -1
- package/dist/features/cms/index.cjs +0 -5
- package/dist/features/cms/index.cjs.map +0 -1
- package/dist/features/cms/index.d.cts +0 -2
- package/dist/features/cms/index.js.map +0 -1
- package/dist/features/collections/index.cjs +0 -394
- package/dist/features/collections/index.cjs.map +0 -1
- package/dist/features/collections/index.d.cts +0 -148
- package/dist/features/collections/index.js.map +0 -1
- package/dist/features/consultation/index.cjs +0 -1099
- package/dist/features/consultation/index.cjs.map +0 -1
- package/dist/features/consultation/index.d.cts +0 -172
- package/dist/features/consultation/index.js.map +0 -1
- package/dist/features/contact/index.cjs +0 -593
- package/dist/features/contact/index.cjs.map +0 -1
- package/dist/features/contact/index.d.cts +0 -56
- package/dist/features/contact/index.js.map +0 -1
- package/dist/features/copilot/index.cjs +0 -688
- package/dist/features/copilot/index.cjs.map +0 -1
- package/dist/features/copilot/index.d.cts +0 -47
- package/dist/features/copilot/index.js.map +0 -1
- package/dist/features/corporate/index.cjs +0 -796
- package/dist/features/corporate/index.cjs.map +0 -1
- package/dist/features/corporate/index.d.cts +0 -183
- package/dist/features/corporate/index.js.map +0 -1
- package/dist/features/events/index.cjs +0 -1486
- package/dist/features/events/index.cjs.map +0 -1
- package/dist/features/events/index.d.cts +0 -841
- package/dist/features/events/index.js.map +0 -1
- package/dist/features/events/server.cjs +0 -199
- package/dist/features/events/server.cjs.map +0 -1
- package/dist/features/events/server.d.cts +0 -40
- package/dist/features/events/server.js.map +0 -1
- package/dist/features/faq/index.cjs +0 -1714
- package/dist/features/faq/index.cjs.map +0 -1
- package/dist/features/faq/index.d.cts +0 -619
- package/dist/features/faq/index.js.map +0 -1
- package/dist/features/filters/index.cjs +0 -1073
- package/dist/features/filters/index.cjs.map +0 -1
- package/dist/features/filters/index.d.cts +0 -136
- package/dist/features/filters/index.js.map +0 -1
- package/dist/features/forms/index.cjs +0 -936
- package/dist/features/forms/index.cjs.map +0 -1
- package/dist/features/forms/index.d.cts +0 -129
- package/dist/features/forms/index.js.map +0 -1
- package/dist/features/homepage/index.cjs +0 -6321
- package/dist/features/homepage/index.cjs.map +0 -1
- package/dist/features/homepage/index.d.cts +0 -846
- package/dist/features/homepage/index.js.map +0 -1
- package/dist/features/homepage/server.cjs +0 -1038
- package/dist/features/homepage/server.cjs.map +0 -1
- package/dist/features/homepage/server.d.cts +0 -121
- package/dist/features/homepage/server.js.map +0 -1
- package/dist/features/layout/index.cjs +0 -1766
- package/dist/features/layout/index.cjs.map +0 -1
- package/dist/features/layout/index.d.cts +0 -315
- package/dist/features/layout/index.js.map +0 -1
- package/dist/features/loyalty/index.cjs +0 -352
- package/dist/features/loyalty/index.cjs.map +0 -1
- package/dist/features/loyalty/index.d.cts +0 -174
- package/dist/features/loyalty/index.js.map +0 -1
- package/dist/features/media/index.cjs +0 -3620
- package/dist/features/media/index.cjs.map +0 -1
- package/dist/features/media/index.d.cts +0 -425
- package/dist/features/media/index.js.map +0 -1
- package/dist/features/orders/index.cjs +0 -882
- package/dist/features/orders/index.cjs.map +0 -1
- package/dist/features/orders/index.d.cts +0 -370
- package/dist/features/orders/index.js.map +0 -1
- package/dist/features/payments/index.cjs +0 -341
- package/dist/features/payments/index.cjs.map +0 -1
- package/dist/features/payments/index.d.cts +0 -141
- package/dist/features/payments/index.js.map +0 -1
- package/dist/features/pre-orders/index.cjs +0 -558
- package/dist/features/pre-orders/index.cjs.map +0 -1
- package/dist/features/pre-orders/index.d.cts +0 -170
- package/dist/features/pre-orders/index.js.map +0 -1
- package/dist/features/pre-orders/server.cjs +0 -111
- package/dist/features/pre-orders/server.cjs.map +0 -1
- package/dist/features/pre-orders/server.d.cts +0 -17
- package/dist/features/pre-orders/server.js.map +0 -1
- package/dist/features/products/index.cjs +0 -2513
- package/dist/features/products/index.cjs.map +0 -1
- package/dist/features/products/index.d.cts +0 -1066
- package/dist/features/products/index.js.map +0 -1
- package/dist/features/products/server.cjs +0 -809
- package/dist/features/products/server.cjs.map +0 -1
- package/dist/features/products/server.d.cts +0 -52
- package/dist/features/products/server.js.map +0 -1
- package/dist/features/promotions/index.cjs +0 -977
- package/dist/features/promotions/index.cjs.map +0 -1
- package/dist/features/promotions/index.d.cts +0 -301
- package/dist/features/promotions/index.js.map +0 -1
- package/dist/features/reviews/index.cjs +0 -2324
- package/dist/features/reviews/index.cjs.map +0 -1
- package/dist/features/reviews/index.d.cts +0 -434
- package/dist/features/reviews/index.js.map +0 -1
- package/dist/features/reviews/server.cjs +0 -776
- package/dist/features/reviews/server.cjs.map +0 -1
- package/dist/features/reviews/server.d.cts +0 -49
- package/dist/features/reviews/server.js.map +0 -1
- package/dist/features/search/index.cjs +0 -1368
- package/dist/features/search/index.cjs.map +0 -1
- package/dist/features/search/index.d.cts +0 -298
- package/dist/features/search/index.js.map +0 -1
- package/dist/features/search/server.cjs +0 -154
- package/dist/features/search/server.cjs.map +0 -1
- package/dist/features/search/server.d.cts +0 -83
- package/dist/features/search/server.js.map +0 -1
- package/dist/features/seller/index.cjs +0 -2086
- package/dist/features/seller/index.cjs.map +0 -1
- package/dist/features/seller/index.d.cts +0 -926
- package/dist/features/seller/index.js.map +0 -1
- package/dist/features/stores/index.cjs +0 -1942
- package/dist/features/stores/index.cjs.map +0 -1
- package/dist/features/stores/index.d.cts +0 -536
- package/dist/features/stores/index.js.map +0 -1
- package/dist/features/stores/server.cjs +0 -451
- package/dist/features/stores/server.cjs.map +0 -1
- package/dist/features/stores/server.d.cts +0 -106
- package/dist/features/stores/server.js.map +0 -1
- package/dist/features/whatsapp-bot/index.cjs +0 -168
- package/dist/features/whatsapp-bot/index.cjs.map +0 -1
- package/dist/features/whatsapp-bot/index.d.cts +0 -85
- package/dist/features/whatsapp-bot/index.js.map +0 -1
- package/dist/features/wishlist/index.cjs +0 -904
- package/dist/features/wishlist/index.cjs.map +0 -1
- package/dist/features/wishlist/index.d.cts +0 -360
- package/dist/features/wishlist/index.js.map +0 -1
- package/dist/http/index.cjs +0 -21
- package/dist/http/index.cjs.map +0 -1
- package/dist/http/index.d.cts +0 -61
- package/dist/http/index.js.map +0 -1
- package/dist/index-B6T9NNcG.d.cts +0 -9
- package/dist/index-B6T9NNcG.d.ts +0 -9
- package/dist/index-CakUKzrE.d.cts +0 -10
- package/dist/index-CakUKzrE.d.ts +0 -10
- package/dist/index-D0Fxv9Z8.d.cts +0 -32
- package/dist/index-D0Fxv9Z8.d.ts +0 -32
- package/dist/index-Dh42RtMY.d.cts +0 -54
- package/dist/index-Dh42RtMY.d.ts +0 -54
- package/dist/index.cjs +0 -1182
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -17
- package/dist/index.js.map +0 -1
- package/dist/instrumentation/index.cjs +0 -17
- package/dist/instrumentation/index.cjs.map +0 -1
- package/dist/instrumentation/index.d.cts +0 -66
- package/dist/instrumentation/index.js.map +0 -1
- package/dist/monitoring/index.cjs +0 -141
- package/dist/monitoring/index.cjs.map +0 -1
- package/dist/monitoring/index.d.cts +0 -181
- package/dist/monitoring/index.js.map +0 -1
- package/dist/next/index.cjs +0 -693
- package/dist/next/index.cjs.map +0 -1
- package/dist/next/index.d.cts +0 -777
- package/dist/next/index.js.map +0 -1
- package/dist/providers/auth-firebase/index.cjs +0 -400
- package/dist/providers/auth-firebase/index.cjs.map +0 -1
- package/dist/providers/auth-firebase/index.d.cts +0 -137
- package/dist/providers/auth-firebase/index.js.map +0 -1
- package/dist/providers/db-firebase/index.cjs +0 -533
- package/dist/providers/db-firebase/index.cjs.map +0 -1
- package/dist/providers/db-firebase/index.d.cts +0 -265
- package/dist/providers/db-firebase/index.js.map +0 -1
- package/dist/providers/email-resend/index.cjs +0 -58
- package/dist/providers/email-resend/index.cjs.map +0 -1
- package/dist/providers/email-resend/index.d.cts +0 -73
- package/dist/providers/email-resend/index.js.map +0 -1
- package/dist/providers/payment-razorpay/index.cjs +0 -111
- package/dist/providers/payment-razorpay/index.cjs.map +0 -1
- package/dist/providers/payment-razorpay/index.d.cts +0 -96
- package/dist/providers/payment-razorpay/index.js.map +0 -1
- package/dist/providers/search-algolia/index.cjs +0 -301
- package/dist/providers/search-algolia/index.cjs.map +0 -1
- package/dist/providers/search-algolia/index.d.cts +0 -251
- package/dist/providers/search-algolia/index.d.ts +0 -251
- package/dist/providers/search-algolia/index.js +0 -280
- package/dist/providers/search-algolia/index.js.map +0 -1
- package/dist/providers/shipping-shiprocket/index.cjs +0 -147
- package/dist/providers/shipping-shiprocket/index.cjs.map +0 -1
- package/dist/providers/shipping-shiprocket/index.d.cts +0 -236
- package/dist/providers/shipping-shiprocket/index.js.map +0 -1
- package/dist/providers/storage-firebase/index.cjs +0 -176
- package/dist/providers/storage-firebase/index.cjs.map +0 -1
- package/dist/providers/storage-firebase/index.d.cts +0 -53
- package/dist/providers/storage-firebase/index.js.map +0 -1
- package/dist/react/index.cjs +0 -1687
- package/dist/react/index.cjs.map +0 -1
- package/dist/react/index.d.cts +0 -788
- package/dist/react/index.js.map +0 -1
- package/dist/repository-BO60jtdT.d.cts +0 -61
- package/dist/repository-BO60jtdT.d.ts +0 -61
- package/dist/repository-jKU_Ji1P.d.cts +0 -44
- package/dist/repository-jKU_Ji1P.d.ts +0 -44
- package/dist/security/index.cjs +0 -138
- package/dist/security/index.cjs.map +0 -1
- package/dist/security/index.d.cts +0 -309
- package/dist/security/index.js.map +0 -1
- package/dist/seed/index.cjs +0 -1085
- package/dist/seed/index.cjs.map +0 -1
- package/dist/seed/index.d.cts +0 -397
- package/dist/seed/index.js.map +0 -1
- package/dist/seo/index.cjs +0 -81
- package/dist/seo/index.cjs.map +0 -1
- package/dist/seo/index.d.cts +0 -150
- package/dist/seo/index.js.map +0 -1
- package/dist/style/tailwind/index.cjs +0 -40
- package/dist/style/tailwind/index.cjs.map +0 -1
- package/dist/style/tailwind/index.d.cts +0 -34
- package/dist/style/tailwind/index.js.map +0 -1
- package/dist/style/vanilla/index.cjs +0 -40
- package/dist/style/vanilla/index.cjs.map +0 -1
- package/dist/style/vanilla/index.d.cts +0 -26
- package/dist/style/vanilla/index.js.map +0 -1
- package/dist/style-BSlM-eWG.d.cts +0 -25
- package/dist/style-BSlM-eWG.d.ts +0 -25
- package/dist/tokens/index.cjs +0 -45
- package/dist/tokens/index.cjs.map +0 -1
- package/dist/tokens/index.d.cts +0 -734
- package/dist/tokens/index.js.map +0 -1
- package/dist/ui/index.cjs +0 -4870
- package/dist/ui/index.cjs.map +0 -1
- package/dist/ui/index.d.cts +0 -1644
- package/dist/ui/index.js.map +0 -1
- package/dist/utils/index.cjs +0 -505
- package/dist/utils/index.cjs.map +0 -1
- package/dist/utils/index.d.cts +0 -545
- package/dist/utils/index.js.map +0 -1
- package/dist/validation/index.cjs +0 -153
- package/dist/validation/index.cjs.map +0 -1
- package/dist/validation/index.d.cts +0 -126
- package/dist/validation/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/contracts/registry.ts","../../../src/features/stores/api/route.ts","../../../src/features/stores/api/%5BstoreSlug%5D/route.ts","../../../src/features/stores/api/%5BstoreSlug%5D/products/route.ts","../../../src/features/stores/api/%5BstoreSlug%5D/auctions/route.ts","../../../src/features/stores/api/%5BstoreSlug%5D/reviews/route.ts"],"names":["_a","GET","NextResponse","param","numParam","validateSieveFilters"],"mappings":"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","file":"server.js","sourcesContent":["import type { IAuthProvider, ISessionProvider } from \"./auth.js\";\nimport type { IEmailProvider } from \"./email.js\";\nimport type { IStorageProvider } from \"./storage.js\";\nimport type { IPaymentProvider } from \"./payment.js\";\nimport type { IShippingProvider } from \"./shipping.js\";\nimport type { ISearchProvider } from \"./search.js\";\nimport type { ICacheProvider, IQueueProvider, IEventBus } from \"./infra.js\";\nimport type { IStyleAdapter } from \"./style.js\";\nimport type { IDbProvider } from \"./repository.js\";\n\nexport interface ProviderRegistry {\n auth: IAuthProvider;\n session: ISessionProvider;\n email: IEmailProvider;\n storage: IStorageProvider;\n style: IStyleAdapter;\n db?: IDbProvider;\n payment?: IPaymentProvider;\n shipping?: IShippingProvider;\n search?: ISearchProvider;\n cache?: ICacheProvider;\n queue?: IQueueProvider;\n eventBus?: IEventBus;\n}\n\nlet _registry: ProviderRegistry | null = null;\n\nexport function registerProviders(registry: ProviderRegistry): void {\n _registry = registry;\n}\n\nexport function getProviders(): ProviderRegistry {\n if (!_registry) {\n throw new Error(\n \"[contracts] Call registerProviders() before getProviders(). \" +\n \"Ensure providers.config.ts is imported at app startup.\",\n );\n }\n return _registry;\n}\n\nexport function _resetProviders(): void {\n _registry = null;\n}","/**\r\n * feat-stores — Next.js App Router API handlers (GET /api/stores)\r\n *\r\n * Consuming projects can create a 2-line stub:\r\n *\r\n * ```ts\r\n * // app/api/stores/route.ts\r\n * export { GET } from \"@mohasinac/feat-stores\";\r\n * ```\r\n */\r\n\r\nimport { NextResponse } from \"next/server.js\";\r\nimport { getProviders } from \"@mohasinac/contracts\";\r\nimport type { StoreListItem, StoreListResponse } from \"../types/index.js\";\r\n\r\ntype StoreListEntity = StoreListItem & {\r\n stats?: {\r\n totalProducts?: number;\r\n itemsSold?: number;\r\n totalReviews?: number;\r\n averageRating?: number;\r\n };\r\n};\r\n\r\nfunction param(url: URL, key: string): string | null {\r\n return url.searchParams.get(key);\r\n}\r\n\r\nfunction numParam(url: URL, key: string, fallback: number): number {\r\n const v = url.searchParams.get(key);\r\n const n = v !== null ? Number(v) : NaN;\r\n return Number.isFinite(n) ? n : fallback;\r\n}\r\n\r\nconst SAFE_STORE_FILTER_FIELDS = new Set([\r\n \"storeName\",\r\n \"storeCategory\",\r\n \"status\",\r\n \"isPublic\",\r\n]);\r\n\r\nfunction validateSieveFilters(\r\n raw: string,\r\n allowedFields: ReadonlySet<string>,\r\n): string {\r\n return raw\r\n .split(\",\")\r\n .map((c) => c.trim())\r\n .filter((c) => {\r\n const m = c.match(/^([^<>=!@]+)\\s*(?:==|!=|<=|>=|<|>|@=\\*?)/);\r\n return m ? allowedFields.has(m[1].trim()) : false;\r\n })\r\n .join(\",\");\r\n}\r\n\r\n// ─── GET /api/stores ────────────────────────────────────────────────────────\r\nexport async function GET(request: Request): Promise<NextResponse> {\r\n try {\r\n const url = new URL(request.url);\r\n const page = numParam(url, \"page\", 1);\r\n const pageSize = numParam(url, \"pageSize\", 24);\r\n const sort = param(url, \"sorts\") ?? \"-createdAt\";\r\n\r\n const parts: string[] = [\"status==active,isPublic==true\"];\r\n const q = param(url, \"q\");\r\n if (q) parts.push(`storeName@=*${q}`);\r\n const category = param(url, \"category\");\r\n if (category) parts.push(`storeCategory==${category}`);\r\n const rawFilters = param(url, \"filters\");\r\n if (rawFilters) {\r\n const safe = validateSieveFilters(rawFilters, SAFE_STORE_FILTER_FIELDS);\r\n if (safe) parts.push(safe);\r\n }\r\n const filters = parts.join(\",\");\r\n\r\n const { db } = getProviders();\r\n if (!db) {\r\n return NextResponse.json(\r\n { success: false, error: \"Database provider not registered\" },\r\n { status: 503 },\r\n );\r\n }\r\n\r\n const repo = db.getRepository<StoreListEntity>(\"stores\");\r\n const result = await repo.findAll({\r\n filters,\r\n sort,\r\n page,\r\n perPage: pageSize,\r\n });\r\n\r\n // Map to public-safe shape (strip sensitive fields)\r\n const items: StoreListItem[] = result.data.map((s) => ({\r\n id: s.id,\r\n storeSlug: s.storeSlug,\r\n ownerId: s.ownerId,\r\n storeName: s.storeName,\r\n storeDescription: s.storeDescription,\r\n storeCategory: s.storeCategory,\r\n storeLogoURL: s.storeLogoURL,\r\n storeBannerURL: s.storeBannerURL,\r\n status: s.status,\r\n isPublic: s.isPublic,\r\n totalProducts: s.stats?.totalProducts ?? s.totalProducts ?? undefined,\r\n itemsSold: s.stats?.itemsSold ?? s.itemsSold ?? undefined,\r\n totalReviews: s.stats?.totalReviews ?? s.totalReviews ?? undefined,\r\n averageRating: s.stats?.averageRating ?? s.averageRating,\r\n createdAt: s.createdAt,\r\n }));\r\n\r\n const body: StoreListResponse = {\r\n items,\r\n total: result.total,\r\n page: result.page,\r\n pageSize: result.perPage,\r\n totalPages: result.totalPages,\r\n hasMore: result.page < result.totalPages,\r\n };\r\n\r\n return NextResponse.json({ success: true, data: body });\r\n } catch (error) {\r\n console.error(\"[feat-stores] GET /api/stores failed\", error);\r\n return NextResponse.json(\r\n { success: false, error: \"Failed to fetch stores\" },\r\n { status: 500 },\r\n );\r\n }\r\n}\r\n","/**\r\n * feat-stores — single-store route handler (GET /api/stores/[storeSlug])\r\n *\r\n * Consuming projects create a 2-line stub:\r\n *\r\n * ```ts\r\n * // app/api/stores/[storeSlug]/route.ts\r\n * export { GET } from \"@mohasinac/feat-stores\"; // re-exported as storeSlugGET\r\n * ```\r\n *\r\n * Returns StoreDetail directly (no outer `{ store }` wrapper) so\r\n * apiClient.get<StoreDetail>('/api/stores/x') resolves correctly.\r\n */\r\n\r\nimport { NextResponse } from \"next/server.js\";\r\nimport { getProviders } from \"@mohasinac/contracts\";\r\nimport type { StoreDetail } from \"../../types/index.js\";\r\n\r\ntype RouteContext = { params: Promise<{ storeSlug: string }> };\r\n\r\ninterface StoreEntity {\r\n id: string;\r\n storeSlug: string;\r\n ownerId: string;\r\n storeName: string;\r\n storeDescription?: string;\r\n storeCategory?: string;\r\n storeLogoURL?: string;\r\n storeBannerURL?: string;\r\n status: string;\r\n isPublic: boolean;\r\n stats?: {\r\n totalProducts?: number;\r\n itemsSold?: number;\r\n totalReviews?: number;\r\n averageRating?: number;\r\n };\r\n totalProducts?: number;\r\n itemsSold?: number;\r\n totalReviews?: number;\r\n averageRating?: number;\r\n bio?: string;\r\n location?: string;\r\n website?: string;\r\n socialLinks?: StoreDetail[\"socialLinks\"];\r\n returnPolicy?: string;\r\n shippingPolicy?: string;\r\n isVacationMode?: boolean;\r\n vacationMessage?: string;\r\n createdAt?: string;\r\n}\r\n\r\n// ─── GET /api/stores/[storeSlug] ─────────────────────────────────────────────\r\n\r\nexport async function GET(\r\n _request: Request,\r\n context: RouteContext,\r\n): Promise<NextResponse> {\r\n try {\r\n const { storeSlug } = await context.params;\r\n\r\n const { db } = getProviders();\r\n if (!db) {\r\n return NextResponse.json(\r\n { success: false, error: \"Database provider not registered\" },\r\n { status: 503 },\r\n );\r\n }\r\n\r\n // Look up store by slug — filters for active + public stores only\r\n const repo = db.getRepository<StoreEntity>(\"stores\");\r\n const result = await repo.findAll({\r\n filters: `storeSlug==${storeSlug},status==active,isPublic==true`,\r\n perPage: 1,\r\n });\r\n\r\n const raw = result.data[0];\r\n if (!raw) {\r\n return NextResponse.json(\r\n { success: false, error: \"Store not found\" },\r\n { status: 404 },\r\n );\r\n }\r\n\r\n // Map to public-safe StoreDetail shape (strip internal/sensitive fields)\r\n const store: StoreDetail = {\r\n id: raw.id,\r\n storeSlug: raw.storeSlug,\r\n ownerId: raw.ownerId,\r\n storeName: raw.storeName,\r\n storeDescription: raw.storeDescription,\r\n storeCategory: raw.storeCategory,\r\n storeLogoURL: raw.storeLogoURL,\r\n storeBannerURL: raw.storeBannerURL,\r\n status: raw.status,\r\n isPublic: raw.isPublic,\r\n totalProducts: raw.stats?.totalProducts ?? raw.totalProducts ?? undefined,\r\n itemsSold: raw.stats?.itemsSold ?? raw.itemsSold ?? undefined,\r\n totalReviews: raw.stats?.totalReviews ?? raw.totalReviews ?? undefined,\r\n averageRating: raw.stats?.averageRating ?? raw.averageRating,\r\n bio: raw.bio,\r\n location: raw.location,\r\n website: raw.website,\r\n socialLinks: raw.socialLinks,\r\n returnPolicy: raw.returnPolicy,\r\n shippingPolicy: raw.shippingPolicy,\r\n isVacationMode: raw.isVacationMode,\r\n vacationMessage: raw.vacationMessage,\r\n createdAt: raw.createdAt,\r\n };\r\n\r\n return NextResponse.json({ success: true, data: store });\r\n } catch (error) {\r\n console.error(\"[feat-stores] GET /api/stores/[storeSlug] failed\", error);\r\n return NextResponse.json(\r\n { success: false, error: \"Failed to fetch store\" },\r\n { status: 500 },\r\n );\r\n }\r\n}\r\n","/**\r\n * feat-stores — store products (GET /api/stores/[storeSlug]/products)\r\n *\r\n * 2-line stub:\r\n * ```ts\r\n * // app/api/stores/[storeSlug]/products/route.ts\r\n * export { storeProductsGET as GET } from \"@mohasinac/feat-stores\";\r\n * ```\r\n *\r\n * Returns published non-auction products for a store, paginated.\r\n * Query params: sorts, page, pageSize, filters (extra Sieve filter string).\r\n *\r\n * Requires `db` registered in providers.config via `registerProviders()`.\r\n * Collections: \"stores\", \"products\"\r\n */\r\n\r\nimport { NextResponse } from \"next/server.js\";\r\nimport { getProviders } from \"@mohasinac/contracts\";\r\nimport type {\r\n StoreProductItem,\r\n StoreProductsResponse,\r\n} from \"../../../types/index.js\";\r\n\r\ninterface StoreEntity {\r\n ownerId: string;\r\n}\r\n\r\ntype RouteContext = { params: Promise<{ storeSlug: string }> };\r\n\r\nfunction param(url: URL, key: string): string | null {\r\n return url.searchParams.get(key);\r\n}\r\n\r\nfunction numParam(url: URL, key: string, fallback: number): number {\r\n const v = url.searchParams.get(key);\r\n const n = v !== null ? Number(v) : NaN;\r\n return Number.isFinite(n) ? n : fallback;\r\n}\r\n\r\nconst SAFE_STORE_PRODUCT_FILTER_FIELDS = new Set([\r\n \"category\",\r\n \"price\",\r\n \"brand\",\r\n \"condition\",\r\n]);\r\n\r\nfunction validateSieveFilters(\r\n raw: string,\r\n allowedFields: ReadonlySet<string>,\r\n): string {\r\n return raw\r\n .split(\",\")\r\n .map((c) => c.trim())\r\n .filter((c) => {\r\n const m = c.match(/^([^<>=!@]+)\\s*(?:==|!=|<=|>=|<|>|@=\\*?)/);\r\n return m ? allowedFields.has(m[1].trim()) : false;\r\n })\r\n .join(\",\");\r\n}\r\n\r\n// ─── GET /api/stores/[storeSlug]/products ─────────────────────────────────────\r\nexport async function GET(\r\n request: Request,\r\n context: RouteContext,\r\n): Promise<NextResponse> {\r\n try {\r\n const { storeSlug } = await context.params;\r\n const url = new URL(request.url);\r\n\r\n const { db } = getProviders();\r\n if (!db) {\r\n return NextResponse.json(\r\n { success: false, error: \"Database provider not registered\" },\r\n { status: 503 },\r\n );\r\n }\r\n\r\n // Resolve store by slug\r\n const storesRepo = db.getRepository<StoreEntity>(\"stores\");\r\n const storeResult = await storesRepo.findAll({\r\n filters: `storeSlug==${storeSlug},status==active,isPublic==true`,\r\n perPage: 1,\r\n });\r\n const store = storeResult.data[0];\r\n if (!store) {\r\n return NextResponse.json(\r\n { success: false, error: \"Store not found\" },\r\n { status: 404 },\r\n );\r\n }\r\n\r\n const sort = param(url, \"sorts\") ?? \"-createdAt\";\r\n const page = numParam(url, \"page\", 1);\r\n const pageSize = numParam(url, \"pageSize\", 24);\r\n\r\n const filterParts = [\r\n `sellerId==${store.ownerId}`,\r\n \"status==published\",\r\n \"isAuction==false\",\r\n ];\r\n const extra = param(url, \"filters\");\r\n if (extra) {\r\n const safe = validateSieveFilters(\r\n extra,\r\n SAFE_STORE_PRODUCT_FILTER_FIELDS,\r\n );\r\n if (safe) filterParts.push(safe);\r\n }\r\n\r\n const productsRepo = db.getRepository<StoreProductItem>(\"products\");\r\n const result = await productsRepo.findAll({\r\n filters: filterParts.join(\",\"),\r\n sort,\r\n order: sort.startsWith(\"-\") ? \"desc\" : \"asc\",\r\n page,\r\n perPage: pageSize,\r\n });\r\n\r\n const body: StoreProductsResponse = {\r\n items: result.data,\r\n total: result.total,\r\n page: result.page,\r\n pageSize: result.perPage,\r\n totalPages: result.totalPages,\r\n hasMore: result.page < result.totalPages,\r\n };\r\n\r\n return NextResponse.json({ success: true, data: body });\r\n } catch (error) {\r\n console.error(\r\n \"[feat-stores] GET /api/stores/[storeSlug]/products failed\",\r\n error,\r\n );\r\n return NextResponse.json(\r\n { success: false, error: \"Failed to fetch store products\" },\r\n { status: 500 },\r\n );\r\n }\r\n}\r\n","/**\r\n * feat-stores — store auctions (GET /api/stores/[storeSlug]/auctions)\r\n *\r\n * 2-line stub:\r\n * ```ts\r\n * // app/api/stores/[storeSlug]/auctions/route.ts\r\n * export { storeAuctionsGET as GET } from \"@mohasinac/feat-stores\";\r\n * ```\r\n *\r\n * Returns published auction listings for a store, paginated.\r\n * Query params: sorts, page, pageSize, filters (extra Sieve filter string).\r\n *\r\n * Requires `db` registered in providers.config via `registerProviders()`.\r\n * Collections: \"stores\", \"products\"\r\n */\r\n\r\nimport { NextResponse } from \"next/server.js\";\r\nimport { getProviders } from \"@mohasinac/contracts\";\r\nimport type {\r\n StoreAuctionItem,\r\n StoreProductsResponse,\r\n} from \"../../../types/index.js\";\r\n\r\ninterface StoreEntity {\r\n ownerId: string;\r\n}\r\n\r\nconst SAFE_STORE_AUCTION_FILTER_FIELDS = new Set([\"price\", \"category\"]);\r\n\r\nfunction validateSieveFilters(\r\n raw: string,\r\n allowedFields: ReadonlySet<string>,\r\n): string {\r\n return raw\r\n .split(\",\")\r\n .map((c) => c.trim())\r\n .filter((c) => {\r\n const m = c.match(/^([^<>=!@]+)\\s*(?:==|!=|<=|>=|<|>|@=\\*?)/);\r\n return m ? allowedFields.has(m[1].trim()) : false;\r\n })\r\n .join(\",\");\r\n}\r\n\r\ntype RouteContext = { params: Promise<{ storeSlug: string }> };\r\n\r\nfunction param(url: URL, key: string): string | null {\r\n return url.searchParams.get(key);\r\n}\r\n\r\nfunction numParam(url: URL, key: string, fallback: number): number {\r\n const v = url.searchParams.get(key);\r\n const n = v !== null ? Number(v) : NaN;\r\n return Number.isFinite(n) ? n : fallback;\r\n}\r\n\r\n// ─── GET /api/stores/[storeSlug]/auctions ─────────────────────────────────────\r\nexport async function GET(\r\n request: Request,\r\n context: RouteContext,\r\n): Promise<NextResponse> {\r\n try {\r\n const { storeSlug } = await context.params;\r\n const url = new URL(request.url);\r\n\r\n const { db } = getProviders();\r\n if (!db) {\r\n return NextResponse.json(\r\n { success: false, error: \"Database provider not registered\" },\r\n { status: 503 },\r\n );\r\n }\r\n\r\n // Resolve store by slug\r\n const storesRepo = db.getRepository<StoreEntity>(\"stores\");\r\n const storeResult = await storesRepo.findAll({\r\n filters: `storeSlug==${storeSlug},status==active,isPublic==true`,\r\n perPage: 1,\r\n });\r\n const store = storeResult.data[0];\r\n if (!store) {\r\n return NextResponse.json(\r\n { success: false, error: \"Store not found\" },\r\n { status: 404 },\r\n );\r\n }\r\n\r\n const sort = param(url, \"sorts\") ?? \"-createdAt\";\r\n const page = numParam(url, \"page\", 1);\r\n const pageSize = numParam(url, \"pageSize\", 24);\r\n\r\n const filterParts = [\r\n `sellerId==${store.ownerId}`,\r\n \"status==published\",\r\n \"isAuction==true\",\r\n ];\r\n const extra = param(url, \"filters\");\r\n if (extra) {\r\n const safe = validateSieveFilters(\r\n extra,\r\n SAFE_STORE_AUCTION_FILTER_FIELDS,\r\n );\r\n if (safe) filterParts.push(safe);\r\n }\r\n\r\n const productsRepo = db.getRepository<StoreAuctionItem>(\"products\");\r\n const result = await productsRepo.findAll({\r\n filters: filterParts.join(\",\"),\r\n sort,\r\n order: sort.startsWith(\"-\") ? \"desc\" : \"asc\",\r\n page,\r\n perPage: pageSize,\r\n });\r\n\r\n const body: StoreProductsResponse = {\r\n items: result.data,\r\n total: result.total,\r\n page: result.page,\r\n pageSize: result.perPage,\r\n totalPages: result.totalPages,\r\n hasMore: result.page < result.totalPages,\r\n };\r\n\r\n return NextResponse.json({ success: true, data: body });\r\n } catch (error) {\r\n console.error(\r\n \"[feat-stores] GET /api/stores/[storeSlug]/auctions failed\",\r\n error,\r\n );\r\n return NextResponse.json(\r\n { success: false, error: \"Failed to fetch store auctions\" },\r\n { status: 500 },\r\n );\r\n }\r\n}\r\n","/**\n * feat-stores — store reviews aggregate (GET /api/stores/[storeSlug]/reviews)\n *\n * 2-line stub:\n * ```ts\n * // app/api/stores/[storeSlug]/reviews/route.ts\n * export { storeReviewsGET as GET } from \"@mohasinac/feat-stores\";\n * ```\n *\n * Aggregates approved reviews from up to 20 published products in a store.\n * Returns: reviews[], averageRating, totalReviews, ratingDistribution.\n *\n * Requires `db` registered in providers.config via `registerProviders()`.\n * Collections: \"stores\", \"products\", \"reviews\"\n */\n\nimport { NextResponse } from \"next/server.js\";\nimport { getProviders } from \"@mohasinac/contracts\";\n\ntype RouteContext = { params: Promise<{ storeSlug: string }> };\n\ninterface StoreEntity {\n id: string;\n ownerId: string;\n}\n\ninterface ProductEntity {\n id: string;\n title?: string;\n mainImage?: string | null;\n}\n\ninterface ReviewEntity {\n productId: string;\n createdAt?: string;\n rating: number;\n productTitle?: string;\n}\n\n// ─── GET /api/stores/[storeSlug]/reviews ──────────────────────────────────────\nexport async function GET(\n _request: Request,\n context: RouteContext,\n): Promise<NextResponse> {\n try {\n const { storeSlug } = await context.params;\n\n const { db } = getProviders();\n if (!db) {\n return NextResponse.json(\n { success: false, error: \"Database provider not registered\" },\n { status: 503 },\n );\n }\n\n // Resolve store by slug\n const storesRepo = db.getRepository<StoreEntity>(\"stores\");\n const storeResult = await storesRepo.findAll({\n filters: `storeSlug==${storeSlug},status==active,isPublic==true`,\n perPage: 1,\n });\n const store = storeResult.data[0];\n if (!store) {\n return NextResponse.json(\n { success: false, error: \"Store not found\" },\n { status: 404 },\n );\n }\n\n // Fetch up to 20 published products for this seller\n const productsRepo = db.getRepository<ProductEntity>(\"products\");\n const productsResult = await productsRepo.findAll({\n filters: `sellerId==${store.ownerId},status==published`,\n sort: \"itemsSold\",\n order: \"desc\",\n perPage: 20,\n });\n const products = productsResult.data;\n\n // Fetch approved reviews for each product in parallel (cap 50 per product)\n const reviewsRepo = db.getRepository<ReviewEntity>(\"reviews\");\n const reviewArrays = await Promise.all(\n products.map((p) =>\n reviewsRepo\n .findAll({\n filters: `productId==${p.id},status==approved`,\n sort: \"createdAt\",\n order: \"desc\",\n perPage: 50,\n })\n .then((r) => r.data),\n ),\n );\n\n // Flatten, sort by date desc, cap to 10 most recent\n const allReviews: ReviewEntity[] = reviewArrays\n .flat()\n .sort(\n (a, b) =>\n new Date(b.createdAt ?? 0).getTime() -\n new Date(a.createdAt ?? 0).getTime(),\n )\n .slice(0, 10);\n\n // Compute aggregate metrics\n const ratingDistribution: Record<number, number> = {\n 1: 0,\n 2: 0,\n 3: 0,\n 4: 0,\n 5: 0,\n };\n let ratingSum = 0;\n let totalReviews = 0;\n\n for (const reviews of reviewArrays) {\n for (const review of reviews) {\n totalReviews++;\n ratingSum += review.rating;\n ratingDistribution[review.rating] =\n (ratingDistribution[review.rating] ?? 0) + 1;\n }\n }\n\n const averageRating = totalReviews > 0 ? ratingSum / totalReviews : 0;\n\n // Enrich reviews with product title + main image\n const productMap = new Map(products.map((p) => [p.id, p]));\n const reviewsWithProduct = allReviews.map((review) => ({\n ...review,\n productTitle:\n productMap.get(review.productId)?.title ?? review.productTitle,\n productMainImage: productMap.get(review.productId)?.mainImage ?? null,\n }));\n\n return NextResponse.json({\n success: true,\n data: {\n reviews: reviewsWithProduct,\n averageRating: Math.round(averageRating * 10) / 10,\n totalReviews,\n ratingDistribution,\n },\n });\n } catch (error) {\n console.error(\n \"[feat-stores] GET /api/stores/[storeSlug]/reviews failed\",\n error,\n );\n return NextResponse.json(\n { success: false, error: \"Failed to fetch store reviews\" },\n { status: 500 },\n );\n }\n}\n"]}
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
'use strict';
|
|
3
|
-
|
|
4
|
-
var crypto = require('crypto');
|
|
5
|
-
var Link = require('next/link');
|
|
6
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
7
|
-
|
|
8
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
|
|
10
|
-
var Link__default = /*#__PURE__*/_interopDefault(Link);
|
|
11
|
-
|
|
12
|
-
function buildCheckoutMessageURL(input) {
|
|
13
|
-
const { waNumber, cart, total, address, isPreorder = false } = input;
|
|
14
|
-
const prefix = isPreorder ? "\u{1F516} *PRE-ORDER*\n\n" : "";
|
|
15
|
-
const lines = cart.map(
|
|
16
|
-
(i) => `\u2022 ${i.name} \xD7${i.qty} \u2014 \u20B9${(i.salePrice * i.qty).toLocaleString("en-IN")}`
|
|
17
|
-
);
|
|
18
|
-
const body = [
|
|
19
|
-
`${prefix}Hi Hobson! I'd like to place an order:`,
|
|
20
|
-
"",
|
|
21
|
-
...lines,
|
|
22
|
-
"",
|
|
23
|
-
`*Total: \u20B9${total.toLocaleString("en-IN")}*`,
|
|
24
|
-
"",
|
|
25
|
-
`Deliver to: ${address.name}, ${address.line1}${address.line2 ? ", " + address.line2 : ""}, ${address.city} - ${address.pincode}`,
|
|
26
|
-
`Phone: ${address.phone}`,
|
|
27
|
-
"",
|
|
28
|
-
"Please share payment details."
|
|
29
|
-
].join("\n");
|
|
30
|
-
return `https://wa.me/${waNumber}?text=${encodeURIComponent(body)}`;
|
|
31
|
-
}
|
|
32
|
-
function buildStatusNotificationURL(input) {
|
|
33
|
-
const { userPhone, template, vars } = input;
|
|
34
|
-
const body = template.replace(
|
|
35
|
-
/\{(\w+)\}/g,
|
|
36
|
-
(_, key) => {
|
|
37
|
-
var _a;
|
|
38
|
-
return (_a = vars[key]) != null ? _a : `{${key}}`;
|
|
39
|
-
}
|
|
40
|
-
);
|
|
41
|
-
return `https://wa.me/${userPhone}?text=${encodeURIComponent(body)}`;
|
|
42
|
-
}
|
|
43
|
-
function verifyWebhookSignature(input) {
|
|
44
|
-
const { payload, signature, secret } = input;
|
|
45
|
-
const expected = crypto.createHmac("sha256", secret).update(payload).digest("hex");
|
|
46
|
-
const expectedBuf = Buffer.from(expected, "hex");
|
|
47
|
-
const sigBuf = Buffer.from(signature, "hex");
|
|
48
|
-
if (expectedBuf.length !== sigBuf.length) return false;
|
|
49
|
-
return crypto.timingSafeEqual(expectedBuf, sigBuf);
|
|
50
|
-
}
|
|
51
|
-
function isAdminNumber(incomingNumber, adminBotNumber) {
|
|
52
|
-
const clean = (n) => n.replace(/\D/g, "");
|
|
53
|
-
return clean(incomingNumber).endsWith(clean(adminBotNumber));
|
|
54
|
-
}
|
|
55
|
-
function parseIncomingWebhookPayload(rawBody, contentType) {
|
|
56
|
-
var _a, _b, _c;
|
|
57
|
-
try {
|
|
58
|
-
if (contentType.includes("application/x-www-form-urlencoded")) {
|
|
59
|
-
const params = new URLSearchParams(rawBody);
|
|
60
|
-
const from2 = (_a = params.get("From")) != null ? _a : "";
|
|
61
|
-
const body2 = (_b = params.get("Body")) != null ? _b : "";
|
|
62
|
-
if (!from2 || !body2) return null;
|
|
63
|
-
return { from: from2.replace(/^whatsapp:/i, "").replace(/\D/g, ""), body: body2.trim() };
|
|
64
|
-
}
|
|
65
|
-
const json = JSON.parse(rawBody);
|
|
66
|
-
const from = typeof json.senderWaId === "string" ? json.senderWaId : typeof json.from === "string" ? json.from : "";
|
|
67
|
-
const body = typeof ((_c = json.text) == null ? void 0 : _c.body) === "string" ? json.text.body : typeof json.body === "string" ? json.body : "";
|
|
68
|
-
if (!from || !body) return null;
|
|
69
|
-
return { from: from.replace(/\D/g, ""), body: body.trim() };
|
|
70
|
-
} catch (e) {
|
|
71
|
-
return null;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
var DEFAULT_STATUS_MESSAGES = {
|
|
75
|
-
pending_payment: "\u{1F6D2} Your order #{id} has been received and is awaiting payment confirmation.",
|
|
76
|
-
payment_confirmed: "\u2705 Payment confirmed for order #{id}! We're getting it ready.",
|
|
77
|
-
processing: "\u{1F4E6} Your order #{id} is being packed and prepared for dispatch.",
|
|
78
|
-
shipped: "\u{1F69A} Your order #{id} is on its way!{tracking}",
|
|
79
|
-
out_for_delivery: "\u{1F3C3} Your order #{id} is out for delivery today!",
|
|
80
|
-
delivered: "\u{1F389} Order #{id} delivered! Thank you for your order!",
|
|
81
|
-
cancelled: "\u274C Your order #{id} has been cancelled. Contact us if you have any questions.",
|
|
82
|
-
refund_initiated: "\u{1F4B8} Refund initiated for order #{id}. It should reflect within 5\u20137 business days."
|
|
83
|
-
};
|
|
84
|
-
function buildStatusMessage(input, statusMessages = DEFAULT_STATUS_MESSAGES) {
|
|
85
|
-
var _a;
|
|
86
|
-
const { orderId, status, trackingNumber, courierName } = input;
|
|
87
|
-
const template = (_a = statusMessages[status]) != null ? _a : `Your order #${orderId} status updated to: ${status}.`;
|
|
88
|
-
const trackingLine = trackingNumber ? `
|
|
89
|
-
Tracking: ${courierName ? courierName + " \u2014 " : ""}${trackingNumber}` : "";
|
|
90
|
-
return template.replace("{id}", orderId).replace("{tracking}", trackingLine);
|
|
91
|
-
}
|
|
92
|
-
async function sendWhatsAppMessage(input) {
|
|
93
|
-
const { toPhone, message, accountSid, authToken, fromNumber } = input;
|
|
94
|
-
const cleanPhone = toPhone.replace(/\D/g, "");
|
|
95
|
-
if (!cleanPhone) return false;
|
|
96
|
-
const url = `https://api.twilio.com/2010-04-01/Accounts/${accountSid}/Messages.json`;
|
|
97
|
-
const body = new URLSearchParams({
|
|
98
|
-
From: fromNumber,
|
|
99
|
-
To: `whatsapp:+${cleanPhone}`,
|
|
100
|
-
Body: message
|
|
101
|
-
});
|
|
102
|
-
const res = await fetch(url, {
|
|
103
|
-
method: "POST",
|
|
104
|
-
headers: {
|
|
105
|
-
"Content-Type": "application/x-www-form-urlencoded",
|
|
106
|
-
Authorization: `Basic ${Buffer.from(`${accountSid}:${authToken}`).toString("base64")}`
|
|
107
|
-
},
|
|
108
|
-
body: body.toString()
|
|
109
|
-
});
|
|
110
|
-
return res.ok;
|
|
111
|
-
}
|
|
112
|
-
function WhatsAppChatButton({
|
|
113
|
-
waNumber,
|
|
114
|
-
message = "Hi! I have a question.",
|
|
115
|
-
label = "Chat on WhatsApp",
|
|
116
|
-
className
|
|
117
|
-
}) {
|
|
118
|
-
const href = `https://wa.me/${waNumber}?text=${encodeURIComponent(message)}`;
|
|
119
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
120
|
-
Link__default.default,
|
|
121
|
-
{
|
|
122
|
-
href,
|
|
123
|
-
target: "_blank",
|
|
124
|
-
rel: "noopener noreferrer",
|
|
125
|
-
className: `inline-flex items-center gap-2 rounded-lg bg-green-500 px-4 py-2 text-sm font-semibold text-white transition-colors hover:bg-green-600 ${className != null ? className : ""}`,
|
|
126
|
-
children: [
|
|
127
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
128
|
-
"svg",
|
|
129
|
-
{
|
|
130
|
-
className: "h-4 w-4",
|
|
131
|
-
viewBox: "0 0 24 24",
|
|
132
|
-
fill: "currentColor",
|
|
133
|
-
"aria-hidden": "true",
|
|
134
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z" })
|
|
135
|
-
}
|
|
136
|
-
),
|
|
137
|
-
label
|
|
138
|
-
]
|
|
139
|
-
}
|
|
140
|
-
);
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
// src/features/whatsapp-bot/manifest.ts
|
|
144
|
-
var manifest = {
|
|
145
|
-
name: "whatsappBot",
|
|
146
|
-
i18nNamespace: "whatsappBot",
|
|
147
|
-
envKeys: [
|
|
148
|
-
"WHATSAPP_BOT_NUMBER",
|
|
149
|
-
"WHATSAPP_WEBHOOK_SECRET"
|
|
150
|
-
],
|
|
151
|
-
routes: [],
|
|
152
|
-
apiRoutes: [
|
|
153
|
-
{ segment: "api/whatsapp/webhook", methods: ["POST"] },
|
|
154
|
-
{ segment: "api/whatsapp/send-status", methods: ["POST"] }
|
|
155
|
-
]
|
|
156
|
-
};
|
|
157
|
-
|
|
158
|
-
exports.WhatsAppChatButton = WhatsAppChatButton;
|
|
159
|
-
exports.buildCheckoutMessageURL = buildCheckoutMessageURL;
|
|
160
|
-
exports.buildStatusMessage = buildStatusMessage;
|
|
161
|
-
exports.buildStatusNotificationURL = buildStatusNotificationURL;
|
|
162
|
-
exports.isAdminNumber = isAdminNumber;
|
|
163
|
-
exports.manifest = manifest;
|
|
164
|
-
exports.parseIncomingWebhookPayload = parseIncomingWebhookPayload;
|
|
165
|
-
exports.sendWhatsAppMessage = sendWhatsAppMessage;
|
|
166
|
-
exports.verifyWebhookSignature = verifyWebhookSignature;
|
|
167
|
-
//# sourceMappingURL=index.cjs.map
|
|
168
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/features/whatsapp-bot/helpers/whatsapp.ts","../../../src/features/whatsapp-bot/components/WhatsAppChatButton.tsx","../../../src/features/whatsapp-bot/manifest.ts"],"names":["createHmac","timingSafeEqual","from","body","jsxs","Link","jsx"],"mappings":";;;;;;;;;;AAUO,SAAS,wBAAwB,KAAA,EAAqC;AAC3E,EAAA,MAAM,EAAE,QAAA,EAAU,IAAA,EAAM,OAAO,OAAA,EAAS,UAAA,GAAa,OAAM,GAAI,KAAA;AAC/D,EAAA,MAAM,MAAA,GAAS,aAAa,2BAAA,GAAiC,EAAA;AAC7D,EAAA,MAAM,QAAQ,IAAA,CAAK,GAAA;AAAA,IACjB,CAAC,CAAA,KAAM,CAAA,OAAA,EAAU,CAAA,CAAE,IAAI,CAAA,KAAA,EAAQ,CAAA,CAAE,GAAG,CAAA,cAAA,EAAA,CAAkB,EAAE,SAAA,GAAY,CAAA,CAAE,GAAA,EAAK,cAAA,CAAe,OAAO,CAAC,CAAA;AAAA,GACpG;AACA,EAAA,MAAM,IAAA,GAAO;AAAA,IACX,GAAG,MAAM,CAAA,sCAAA,CAAA;AAAA,IACT,EAAA;AAAA,IACA,GAAG,KAAA;AAAA,IACH,EAAA;AAAA,IACA,CAAA,cAAA,EAAiB,KAAA,CAAM,cAAA,CAAe,OAAO,CAAC,CAAA,CAAA,CAAA;AAAA,IAC9C,EAAA;AAAA,IACA,eAAe,OAAA,CAAQ,IAAI,KAAK,OAAA,CAAQ,KAAK,GAAG,OAAA,CAAQ,KAAA,GAAQ,IAAA,GAAO,OAAA,CAAQ,QAAQ,EAAE,CAAA,EAAA,EAAK,QAAQ,IAAI,CAAA,GAAA,EAAM,QAAQ,OAAO,CAAA,CAAA;AAAA,IAC/H,CAAA,OAAA,EAAU,QAAQ,KAAK,CAAA,CAAA;AAAA,IACvB,EAAA;AAAA,IACA;AAAA,GACF,CAAE,KAAK,IAAI,CAAA;AACX,EAAA,OAAO,CAAA,cAAA,EAAiB,QAAQ,CAAA,MAAA,EAAS,kBAAA,CAAmB,IAAI,CAAC,CAAA,CAAA;AACnE;AAEO,SAAS,2BAA2B,KAAA,EAAwC;AACjF,EAAA,MAAM,EAAE,SAAA,EAAW,QAAA,EAAU,IAAA,EAAK,GAAI,KAAA;AACtC,EAAA,MAAM,OAAO,QAAA,CAAS,OAAA;AAAA,IACpB,YAAA;AAAA,IACA,CAAC,GAAG,GAAA,KAAa;AAnCrB,MAAA,IAAA,EAAA;AAmCwB,MAAA,OAAA,CAAA,EAAA,GAAA,IAAA,CAAK,GAAG,CAAA,KAAR,IAAA,GAAA,EAAA,GAAa,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,CAAA;AAAA,IAAA;AAAA,GAC1C;AACA,EAAA,OAAO,CAAA,cAAA,EAAiB,SAAS,CAAA,MAAA,EAAS,kBAAA,CAAmB,IAAI,CAAC,CAAA,CAAA;AACpE;AAEO,SAAS,uBAAuB,KAAA,EAAoC;AACzE,EAAA,MAAM,EAAE,OAAA,EAAS,SAAA,EAAW,MAAA,EAAO,GAAI,KAAA;AACvC,EAAA,MAAM,QAAA,GAAWA,kBAAW,QAAA,EAAU,MAAM,EAAE,MAAA,CAAO,OAAO,CAAA,CAAE,MAAA,CAAO,KAAK,CAAA;AAC1E,EAAA,MAAM,WAAA,GAAc,MAAA,CAAO,IAAA,CAAK,QAAA,EAAU,KAAK,CAAA;AAC/C,EAAA,MAAM,MAAA,GAAS,MAAA,CAAO,IAAA,CAAK,SAAA,EAAW,KAAK,CAAA;AAC3C,EAAA,IAAI,WAAA,CAAY,MAAA,KAAW,MAAA,CAAO,MAAA,EAAQ,OAAO,KAAA;AACjD,EAAA,OAAOC,sBAAA,CAAgB,aAAa,MAAM,CAAA;AAC5C;AAEO,SAAS,aAAA,CAAc,gBAAwB,cAAA,EAAiC;AACrF,EAAA,MAAM,QAAQ,CAAC,CAAA,KAAc,CAAA,CAAE,OAAA,CAAQ,OAAO,EAAE,CAAA;AAChD,EAAA,OAAO,MAAM,cAAc,CAAA,CAAE,QAAA,CAAS,KAAA,CAAM,cAAc,CAAC,CAAA;AAC7D;AAMO,SAAS,2BAAA,CACd,SACA,WAAA,EAC+B;AA7DjC,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AA8DE,EAAA,IAAI;AACF,IAAA,IAAI,WAAA,CAAY,QAAA,CAAS,mCAAmC,CAAA,EAAG;AAC7D,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,OAAO,CAAA;AAC1C,MAAA,MAAMC,KAAAA,GAAAA,CAAO,EAAA,GAAA,MAAA,CAAO,GAAA,CAAI,MAAM,MAAjB,IAAA,GAAA,EAAA,GAAsB,EAAA;AACnC,MAAA,MAAMC,KAAAA,GAAAA,CAAO,EAAA,GAAA,MAAA,CAAO,GAAA,CAAI,MAAM,MAAjB,IAAA,GAAA,EAAA,GAAsB,EAAA;AACnC,MAAA,IAAI,CAACD,KAAAA,IAAQ,CAACC,KAAAA,EAAM,OAAO,IAAA;AAC3B,MAAA,OAAO,EAAE,IAAA,EAAMD,KAAAA,CAAK,OAAA,CAAQ,eAAe,EAAE,CAAA,CAAE,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA,EAAG,IAAA,EAAMC,KAAAA,CAAK,MAAK,EAAE;AAAA,IACvF;AAEA,IAAA,MAAM,IAAA,GAAO,IAAA,CAAK,KAAA,CAAM,OAAO,CAAA;AAC/B,IAAA,MAAM,IAAA,GACJ,OAAO,IAAA,CAAK,UAAA,KAAe,QAAA,GAAW,IAAA,CAAK,UAAA,GAC3C,OAAO,IAAA,CAAK,IAAA,KAAS,QAAA,GAAW,IAAA,CAAK,IAAA,GAAO,EAAA;AAC9C,IAAA,MAAM,IAAA,GACJ,QAAA,CAAQ,EAAA,GAAA,IAAA,CAAK,IAAA,KAAL,mBAAmD,IAAA,CAAA,KAAS,QAAA,GAC9D,IAAA,CAAK,IAAA,CAAiC,OACxC,OAAO,IAAA,CAAK,IAAA,KAAS,QAAA,GAAW,KAAK,IAAA,GAAO,EAAA;AAClD,IAAA,IAAI,CAAC,IAAA,IAAQ,CAAC,IAAA,EAAM,OAAO,IAAA;AAC3B,IAAA,OAAO,EAAE,IAAA,EAAM,IAAA,CAAK,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA,EAAG,IAAA,EAAM,IAAA,CAAK,IAAA,EAAK,EAAE;AAAA,EAC5D,CAAA,CAAA,OAAQ,CAAA,EAAA;AACN,IAAA,OAAO,IAAA;AAAA,EACT;AACF;AAEA,IAAM,uBAAA,GAAkD;AAAA,EACtD,eAAA,EAAmB,oFAAA;AAAA,EACnB,iBAAA,EAAmB,mEAAA;AAAA,EACnB,UAAA,EAAmB,uEAAA;AAAA,EACnB,OAAA,EAAmB,qDAAA;AAAA,EACnB,gBAAA,EAAmB,uDAAA;AAAA,EACnB,SAAA,EAAmB,4DAAA;AAAA,EACnB,SAAA,EAAmB,mFAAA;AAAA,EACnB,gBAAA,EAAmB;AACrB,CAAA;AAMO,SAAS,kBAAA,CACd,KAAA,EACA,cAAA,GAAyC,uBAAA,EACjC;AAxGV,EAAA,IAAA,EAAA;AAyGE,EAAA,MAAM,EAAE,OAAA,EAAS,MAAA,EAAQ,cAAA,EAAgB,aAAY,GAAI,KAAA;AACzD,EAAA,MAAM,QAAA,GAAA,CAAW,oBAAe,MAAM,CAAA,KAArB,YAA0B,CAAA,YAAA,EAAe,OAAO,uBAAuB,MAAM,CAAA,CAAA,CAAA;AAC9F,EAAA,MAAM,eAAe,cAAA,GACjB;AAAA,UAAA,EAAe,cAAc,WAAA,GAAc,UAAA,GAAQ,EAAE,CAAA,EAAG,cAAc,CAAA,CAAA,GACtE,EAAA;AACJ,EAAA,OAAO,SAAS,OAAA,CAAQ,MAAA,EAAQ,OAAO,CAAA,CAAE,OAAA,CAAQ,cAAc,YAAY,CAAA;AAC7E;AAMA,eAAsB,oBAAoB,KAAA,EAA4C;AACpF,EAAA,MAAM,EAAE,OAAA,EAAS,OAAA,EAAS,UAAA,EAAY,SAAA,EAAW,YAAW,GAAI,KAAA;AAChE,EAAA,MAAM,UAAA,GAAa,OAAA,CAAQ,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AAC5C,EAAA,IAAI,CAAC,YAAY,OAAO,KAAA;AACxB,EAAA,MAAM,GAAA,GAAM,8CAA8C,UAAU,CAAA,cAAA,CAAA;AACpE,EAAA,MAAM,IAAA,GAAO,IAAI,eAAA,CAAgB;AAAA,IAC/B,IAAA,EAAM,UAAA;AAAA,IACN,EAAA,EAAI,aAAa,UAAU,CAAA,CAAA;AAAA,IAC3B,IAAA,EAAM;AAAA,GACP,CAAA;AACD,EAAA,MAAM,GAAA,GAAM,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,IAC3B,MAAA,EAAQ,MAAA;AAAA,IACR,OAAA,EAAS;AAAA,MACP,cAAA,EAAgB,mCAAA;AAAA,MAChB,aAAA,EAAe,CAAA,MAAA,EAAS,MAAA,CAAO,IAAA,CAAK,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,SAAS,CAAA,CAAE,CAAA,CAAE,QAAA,CAAS,QAAQ,CAAC,CAAA;AAAA,KACtF;AAAA,IACA,IAAA,EAAM,KAAK,QAAA;AAAS,GACrB,CAAA;AACD,EAAA,OAAO,GAAA,CAAI,EAAA;AACb;AC5HO,SAAS,kBAAA,CAAmB;AAAA,EACjC,QAAA;AAAA,EACA,OAAA,GAAU,wBAAA;AAAA,EACV,KAAA,GAAQ,kBAAA;AAAA,EACR;AACF,CAAA,EAA4B;AAC1B,EAAA,MAAM,OAAO,CAAA,cAAA,EAAiB,QAAQ,CAAA,MAAA,EAAS,kBAAA,CAAmB,OAAO,CAAC,CAAA,CAAA;AAC1E,EAAA,uBACEC,eAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,IAAA;AAAA,MACA,MAAA,EAAO,QAAA;AAAA,MACP,GAAA,EAAI,qBAAA;AAAA,MACJ,SAAA,EAAW,CAAA,uIAAA,EAA0I,SAAA,IAAA,IAAA,GAAA,SAAA,GAAa,EAAE,CAAA,CAAA;AAAA,MAEpK,QAAA,EAAA;AAAA,wBAAAC,cAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU,SAAA;AAAA,YACV,OAAA,EAAQ,WAAA;AAAA,YACR,IAAA,EAAK,cAAA;AAAA,YACL,aAAA,EAAY,MAAA;AAAA,YAEZ,QAAA,kBAAAA,cAAA,CAAC,MAAA,EAAA,EAAK,CAAA,EAAE,klCAAA,EAAmlC;AAAA;AAAA,SAC7lC;AAAA,QACC;AAAA;AAAA;AAAA,GACH;AAEJ;;;ACnCO,IAAM,QAAA,GAA4B;AAAA,EACvC,IAAA,EAAM,aAAA;AAAA,EACN,aAAA,EAAe,aAAA;AAAA,EACf,OAAA,EAAS;AAAA,IACP,qBAAA;AAAA,IACA;AAAA,GACF;AAAA,EACA,QAAQ,EAAC;AAAA,EACT,SAAA,EAAW;AAAA,IACT,EAAE,OAAA,EAAS,sBAAA,EAAwB,OAAA,EAAS,CAAC,MAAM,CAAA,EAAE;AAAA,IACrD,EAAE,OAAA,EAAS,0BAAA,EAA4B,OAAA,EAAS,CAAC,MAAM,CAAA;AAAE;AAE7D","file":"index.cjs","sourcesContent":["import { createHmac, timingSafeEqual } from \"crypto\";\r\nimport type {\r\n CheckoutMessageInput,\r\n StatusNotificationInput,\r\n WebhookVerifyInput,\r\n IncomingWebhookPayload,\r\n SendWhatsAppInput,\r\n StatusMessageInput,\r\n} from \"../types\";\r\n\r\nexport function buildCheckoutMessageURL(input: CheckoutMessageInput): string {\r\n const { waNumber, cart, total, address, isPreorder = false } = input;\r\n const prefix = isPreorder ? \"\\uD83D\\uDD16 *PRE-ORDER*\\n\\n\" : \"\";\r\n const lines = cart.map(\r\n (i) => `\\u2022 ${i.name} \\xD7${i.qty} \\u2014 \\u20B9${(i.salePrice * i.qty).toLocaleString(\"en-IN\")}`,\r\n );\r\n const body = [\r\n `${prefix}Hi Hobson! I'd like to place an order:`,\r\n \"\",\r\n ...lines,\r\n \"\",\r\n `*Total: \\u20B9${total.toLocaleString(\"en-IN\")}*`,\r\n \"\",\r\n `Deliver to: ${address.name}, ${address.line1}${address.line2 ? \", \" + address.line2 : \"\"}, ${address.city} - ${address.pincode}`,\r\n `Phone: ${address.phone}`,\r\n \"\",\r\n \"Please share payment details.\",\r\n ].join(\"\\n\");\r\n return `https://wa.me/${waNumber}?text=${encodeURIComponent(body)}`;\r\n}\r\n\r\nexport function buildStatusNotificationURL(input: StatusNotificationInput): string {\r\n const { userPhone, template, vars } = input;\r\n const body = template.replace(\r\n /\\{(\\w+)\\}/g,\r\n (_, key: string) => vars[key] ?? `{${key}}`,\r\n );\r\n return `https://wa.me/${userPhone}?text=${encodeURIComponent(body)}`;\r\n}\r\n\r\nexport function verifyWebhookSignature(input: WebhookVerifyInput): boolean {\r\n const { payload, signature, secret } = input;\r\n const expected = createHmac(\"sha256\", secret).update(payload).digest(\"hex\");\r\n const expectedBuf = Buffer.from(expected, \"hex\");\r\n const sigBuf = Buffer.from(signature, \"hex\");\r\n if (expectedBuf.length !== sigBuf.length) return false;\r\n return timingSafeEqual(expectedBuf, sigBuf);\r\n}\r\n\r\nexport function isAdminNumber(incomingNumber: string, adminBotNumber: string): boolean {\r\n const clean = (n: string) => n.replace(/\\D/g, \"\");\r\n return clean(incomingNumber).endsWith(clean(adminBotNumber));\r\n}\r\n\r\n/**\r\n * Parse an incoming WhatsApp webhook payload (Twilio form-encoded or Wati.io JSON).\r\n * Returns null if the payload cannot be parsed or is missing required fields.\r\n */\r\nexport function parseIncomingWebhookPayload(\r\n rawBody: string,\r\n contentType: string,\r\n): IncomingWebhookPayload | null {\r\n try {\r\n if (contentType.includes(\"application/x-www-form-urlencoded\")) {\r\n const params = new URLSearchParams(rawBody);\r\n const from = params.get(\"From\") ?? \"\";\r\n const body = params.get(\"Body\") ?? \"\";\r\n if (!from || !body) return null;\r\n return { from: from.replace(/^whatsapp:/i, \"\").replace(/\\D/g, \"\"), body: body.trim() };\r\n }\r\n // JSON format (Wati.io or generic)\r\n const json = JSON.parse(rawBody) as Record<string, unknown>;\r\n const from =\r\n typeof json.senderWaId === \"string\" ? json.senderWaId :\r\n typeof json.from === \"string\" ? json.from : \"\";\r\n const body =\r\n typeof (json.text as Record<string, unknown> | undefined)?.body === \"string\"\r\n ? ((json.text as Record<string, unknown>).body as string)\r\n : typeof json.body === \"string\" ? json.body : \"\";\r\n if (!from || !body) return null;\r\n return { from: from.replace(/\\D/g, \"\"), body: body.trim() };\r\n } catch {\r\n return null;\r\n }\r\n}\r\n\r\nconst DEFAULT_STATUS_MESSAGES: Record<string, string> = {\r\n pending_payment: \"🛒 Your order #{id} has been received and is awaiting payment confirmation.\",\r\n payment_confirmed: \"✅ Payment confirmed for order #{id}! We're getting it ready.\",\r\n processing: \"📦 Your order #{id} is being packed and prepared for dispatch.\",\r\n shipped: \"🚚 Your order #{id} is on its way!{tracking}\",\r\n out_for_delivery: \"🏃 Your order #{id} is out for delivery today!\",\r\n delivered: \"🎉 Order #{id} delivered! Thank you for your order!\",\r\n cancelled: \"❌ Your order #{id} has been cancelled. Contact us if you have any questions.\",\r\n refund_initiated: \"💸 Refund initiated for order #{id}. It should reflect within 5–7 business days.\",\r\n};\r\n\r\n/**\r\n * Build a human-readable status notification message for an order.\r\n * Pass a custom `statusMessages` map to override the defaults.\r\n */\r\nexport function buildStatusMessage(\r\n input: StatusMessageInput,\r\n statusMessages: Record<string, string> = DEFAULT_STATUS_MESSAGES,\r\n): string {\r\n const { orderId, status, trackingNumber, courierName } = input;\r\n const template = statusMessages[status] ?? `Your order #${orderId} status updated to: ${status}.`;\r\n const trackingLine = trackingNumber\r\n ? `\\nTracking: ${courierName ? courierName + \" — \" : \"\"}${trackingNumber}`\r\n : \"\";\r\n return template.replace(\"{id}\", orderId).replace(\"{tracking}\", trackingLine);\r\n}\r\n\r\n/**\r\n * Send an outbound WhatsApp message via Twilio REST API.\r\n * Returns true on success, false on failure.\r\n */\r\nexport async function sendWhatsAppMessage(input: SendWhatsAppInput): Promise<boolean> {\r\n const { toPhone, message, accountSid, authToken, fromNumber } = input;\r\n const cleanPhone = toPhone.replace(/\\D/g, \"\");\r\n if (!cleanPhone) return false;\r\n const url = `https://api.twilio.com/2010-04-01/Accounts/${accountSid}/Messages.json`;\r\n const body = new URLSearchParams({\r\n From: fromNumber,\r\n To: `whatsapp:+${cleanPhone}`,\r\n Body: message,\r\n });\r\n const res = await fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/x-www-form-urlencoded\",\r\n Authorization: `Basic ${Buffer.from(`${accountSid}:${authToken}`).toString(\"base64\")}`,\r\n },\r\n body: body.toString(),\r\n });\r\n return res.ok;\r\n}\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\n\r\ninterface WhatsAppChatButtonProps {\r\n waNumber: string;\r\n message?: string;\r\n label?: string;\r\n className?: string;\r\n}\r\n\r\nexport function WhatsAppChatButton({\r\n waNumber,\r\n message = \"Hi! I have a question.\",\r\n label = \"Chat on WhatsApp\",\r\n className,\r\n}: WhatsAppChatButtonProps) {\r\n const href = `https://wa.me/${waNumber}?text=${encodeURIComponent(message)}`;\r\n return (\r\n <Link\r\n href={href}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n className={`inline-flex items-center gap-2 rounded-lg bg-green-500 px-4 py-2 text-sm font-semibold text-white transition-colors hover:bg-green-600 ${className ?? \"\"}`}\r\n >\r\n <svg\r\n className=\"h-4 w-4\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\"\r\n >\r\n <path d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z\" />\r\n </svg>\r\n {label}\r\n </Link>\r\n );\r\n}\r\n","import type { FeatureManifest } from \"@mohasinac/contracts\";\r\n\r\nexport const manifest: FeatureManifest = {\r\n name: \"whatsappBot\",\r\n i18nNamespace: \"whatsappBot\",\r\n envKeys: [\r\n \"WHATSAPP_BOT_NUMBER\",\r\n \"WHATSAPP_WEBHOOK_SECRET\",\r\n ],\r\n routes: [],\r\n apiRoutes: [\r\n { segment: \"api/whatsapp/webhook\", methods: [\"POST\"] },\r\n { segment: \"api/whatsapp/send-status\", methods: [\"POST\"] },\r\n ],\r\n};\r\n"]}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { F as FeatureManifest } from '../../feature-DENiK3vd.cjs';
|
|
3
|
-
|
|
4
|
-
interface CheckoutMessageInput {
|
|
5
|
-
waNumber: string;
|
|
6
|
-
cart: Array<{
|
|
7
|
-
name: string;
|
|
8
|
-
qty: number;
|
|
9
|
-
salePrice: number;
|
|
10
|
-
}>;
|
|
11
|
-
total: number;
|
|
12
|
-
address: {
|
|
13
|
-
name: string;
|
|
14
|
-
phone: string;
|
|
15
|
-
line1: string;
|
|
16
|
-
line2?: string;
|
|
17
|
-
city: string;
|
|
18
|
-
pincode: string;
|
|
19
|
-
};
|
|
20
|
-
isPreorder?: boolean;
|
|
21
|
-
}
|
|
22
|
-
interface StatusNotificationInput {
|
|
23
|
-
userPhone: string;
|
|
24
|
-
template: string;
|
|
25
|
-
vars: Record<string, string>;
|
|
26
|
-
}
|
|
27
|
-
interface WebhookVerifyInput {
|
|
28
|
-
payload: string;
|
|
29
|
-
signature: string;
|
|
30
|
-
secret: string;
|
|
31
|
-
}
|
|
32
|
-
interface IncomingWebhookPayload {
|
|
33
|
-
/** Digits-only phone number, e.g. "919876543210" */
|
|
34
|
-
from: string;
|
|
35
|
-
body: string;
|
|
36
|
-
}
|
|
37
|
-
interface SendWhatsAppInput {
|
|
38
|
-
/** Digits-only phone number, e.g. "919876543210" */
|
|
39
|
-
toPhone: string;
|
|
40
|
-
message: string;
|
|
41
|
-
accountSid: string;
|
|
42
|
-
authToken: string;
|
|
43
|
-
/** Twilio from number, e.g. "whatsapp:+14155238886" */
|
|
44
|
-
fromNumber: string;
|
|
45
|
-
}
|
|
46
|
-
/** Known order status values — extend as needed per project. */
|
|
47
|
-
type OrderStatusKey = "pending_payment" | "payment_confirmed" | "processing" | "shipped" | "out_for_delivery" | "delivered" | "cancelled" | "refund_initiated" | string;
|
|
48
|
-
interface StatusMessageInput {
|
|
49
|
-
orderId: string;
|
|
50
|
-
status: OrderStatusKey;
|
|
51
|
-
trackingNumber?: string;
|
|
52
|
-
courierName?: string;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
declare function buildCheckoutMessageURL(input: CheckoutMessageInput): string;
|
|
56
|
-
declare function buildStatusNotificationURL(input: StatusNotificationInput): string;
|
|
57
|
-
declare function verifyWebhookSignature(input: WebhookVerifyInput): boolean;
|
|
58
|
-
declare function isAdminNumber(incomingNumber: string, adminBotNumber: string): boolean;
|
|
59
|
-
/**
|
|
60
|
-
* Parse an incoming WhatsApp webhook payload (Twilio form-encoded or Wati.io JSON).
|
|
61
|
-
* Returns null if the payload cannot be parsed or is missing required fields.
|
|
62
|
-
*/
|
|
63
|
-
declare function parseIncomingWebhookPayload(rawBody: string, contentType: string): IncomingWebhookPayload | null;
|
|
64
|
-
/**
|
|
65
|
-
* Build a human-readable status notification message for an order.
|
|
66
|
-
* Pass a custom `statusMessages` map to override the defaults.
|
|
67
|
-
*/
|
|
68
|
-
declare function buildStatusMessage(input: StatusMessageInput, statusMessages?: Record<string, string>): string;
|
|
69
|
-
/**
|
|
70
|
-
* Send an outbound WhatsApp message via Twilio REST API.
|
|
71
|
-
* Returns true on success, false on failure.
|
|
72
|
-
*/
|
|
73
|
-
declare function sendWhatsAppMessage(input: SendWhatsAppInput): Promise<boolean>;
|
|
74
|
-
|
|
75
|
-
interface WhatsAppChatButtonProps {
|
|
76
|
-
waNumber: string;
|
|
77
|
-
message?: string;
|
|
78
|
-
label?: string;
|
|
79
|
-
className?: string;
|
|
80
|
-
}
|
|
81
|
-
declare function WhatsAppChatButton({ waNumber, message, label, className, }: WhatsAppChatButtonProps): react_jsx_runtime.JSX.Element;
|
|
82
|
-
|
|
83
|
-
declare const manifest: FeatureManifest;
|
|
84
|
-
|
|
85
|
-
export { type CheckoutMessageInput, type IncomingWebhookPayload, type OrderStatusKey, type SendWhatsAppInput, type StatusMessageInput, type StatusNotificationInput, type WebhookVerifyInput, WhatsAppChatButton, buildCheckoutMessageURL, buildStatusMessage, buildStatusNotificationURL, isAdminNumber, manifest, parseIncomingWebhookPayload, sendWhatsAppMessage, verifyWebhookSignature };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/features/whatsapp-bot/helpers/whatsapp.ts","../../../src/features/whatsapp-bot/components/WhatsAppChatButton.tsx","../../../src/features/whatsapp-bot/manifest.ts"],"names":["from","body"],"mappings":"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","file":"index.js","sourcesContent":["import { createHmac, timingSafeEqual } from \"crypto\";\r\nimport type {\r\n CheckoutMessageInput,\r\n StatusNotificationInput,\r\n WebhookVerifyInput,\r\n IncomingWebhookPayload,\r\n SendWhatsAppInput,\r\n StatusMessageInput,\r\n} from \"../types\";\r\n\r\nexport function buildCheckoutMessageURL(input: CheckoutMessageInput): string {\r\n const { waNumber, cart, total, address, isPreorder = false } = input;\r\n const prefix = isPreorder ? \"\\uD83D\\uDD16 *PRE-ORDER*\\n\\n\" : \"\";\r\n const lines = cart.map(\r\n (i) => `\\u2022 ${i.name} \\xD7${i.qty} \\u2014 \\u20B9${(i.salePrice * i.qty).toLocaleString(\"en-IN\")}`,\r\n );\r\n const body = [\r\n `${prefix}Hi Hobson! I'd like to place an order:`,\r\n \"\",\r\n ...lines,\r\n \"\",\r\n `*Total: \\u20B9${total.toLocaleString(\"en-IN\")}*`,\r\n \"\",\r\n `Deliver to: ${address.name}, ${address.line1}${address.line2 ? \", \" + address.line2 : \"\"}, ${address.city} - ${address.pincode}`,\r\n `Phone: ${address.phone}`,\r\n \"\",\r\n \"Please share payment details.\",\r\n ].join(\"\\n\");\r\n return `https://wa.me/${waNumber}?text=${encodeURIComponent(body)}`;\r\n}\r\n\r\nexport function buildStatusNotificationURL(input: StatusNotificationInput): string {\r\n const { userPhone, template, vars } = input;\r\n const body = template.replace(\r\n /\\{(\\w+)\\}/g,\r\n (_, key: string) => vars[key] ?? `{${key}}`,\r\n );\r\n return `https://wa.me/${userPhone}?text=${encodeURIComponent(body)}`;\r\n}\r\n\r\nexport function verifyWebhookSignature(input: WebhookVerifyInput): boolean {\r\n const { payload, signature, secret } = input;\r\n const expected = createHmac(\"sha256\", secret).update(payload).digest(\"hex\");\r\n const expectedBuf = Buffer.from(expected, \"hex\");\r\n const sigBuf = Buffer.from(signature, \"hex\");\r\n if (expectedBuf.length !== sigBuf.length) return false;\r\n return timingSafeEqual(expectedBuf, sigBuf);\r\n}\r\n\r\nexport function isAdminNumber(incomingNumber: string, adminBotNumber: string): boolean {\r\n const clean = (n: string) => n.replace(/\\D/g, \"\");\r\n return clean(incomingNumber).endsWith(clean(adminBotNumber));\r\n}\r\n\r\n/**\r\n * Parse an incoming WhatsApp webhook payload (Twilio form-encoded or Wati.io JSON).\r\n * Returns null if the payload cannot be parsed or is missing required fields.\r\n */\r\nexport function parseIncomingWebhookPayload(\r\n rawBody: string,\r\n contentType: string,\r\n): IncomingWebhookPayload | null {\r\n try {\r\n if (contentType.includes(\"application/x-www-form-urlencoded\")) {\r\n const params = new URLSearchParams(rawBody);\r\n const from = params.get(\"From\") ?? \"\";\r\n const body = params.get(\"Body\") ?? \"\";\r\n if (!from || !body) return null;\r\n return { from: from.replace(/^whatsapp:/i, \"\").replace(/\\D/g, \"\"), body: body.trim() };\r\n }\r\n // JSON format (Wati.io or generic)\r\n const json = JSON.parse(rawBody) as Record<string, unknown>;\r\n const from =\r\n typeof json.senderWaId === \"string\" ? json.senderWaId :\r\n typeof json.from === \"string\" ? json.from : \"\";\r\n const body =\r\n typeof (json.text as Record<string, unknown> | undefined)?.body === \"string\"\r\n ? ((json.text as Record<string, unknown>).body as string)\r\n : typeof json.body === \"string\" ? json.body : \"\";\r\n if (!from || !body) return null;\r\n return { from: from.replace(/\\D/g, \"\"), body: body.trim() };\r\n } catch {\r\n return null;\r\n }\r\n}\r\n\r\nconst DEFAULT_STATUS_MESSAGES: Record<string, string> = {\r\n pending_payment: \"🛒 Your order #{id} has been received and is awaiting payment confirmation.\",\r\n payment_confirmed: \"✅ Payment confirmed for order #{id}! We're getting it ready.\",\r\n processing: \"📦 Your order #{id} is being packed and prepared for dispatch.\",\r\n shipped: \"🚚 Your order #{id} is on its way!{tracking}\",\r\n out_for_delivery: \"🏃 Your order #{id} is out for delivery today!\",\r\n delivered: \"🎉 Order #{id} delivered! Thank you for your order!\",\r\n cancelled: \"❌ Your order #{id} has been cancelled. Contact us if you have any questions.\",\r\n refund_initiated: \"💸 Refund initiated for order #{id}. It should reflect within 5–7 business days.\",\r\n};\r\n\r\n/**\r\n * Build a human-readable status notification message for an order.\r\n * Pass a custom `statusMessages` map to override the defaults.\r\n */\r\nexport function buildStatusMessage(\r\n input: StatusMessageInput,\r\n statusMessages: Record<string, string> = DEFAULT_STATUS_MESSAGES,\r\n): string {\r\n const { orderId, status, trackingNumber, courierName } = input;\r\n const template = statusMessages[status] ?? `Your order #${orderId} status updated to: ${status}.`;\r\n const trackingLine = trackingNumber\r\n ? `\\nTracking: ${courierName ? courierName + \" — \" : \"\"}${trackingNumber}`\r\n : \"\";\r\n return template.replace(\"{id}\", orderId).replace(\"{tracking}\", trackingLine);\r\n}\r\n\r\n/**\r\n * Send an outbound WhatsApp message via Twilio REST API.\r\n * Returns true on success, false on failure.\r\n */\r\nexport async function sendWhatsAppMessage(input: SendWhatsAppInput): Promise<boolean> {\r\n const { toPhone, message, accountSid, authToken, fromNumber } = input;\r\n const cleanPhone = toPhone.replace(/\\D/g, \"\");\r\n if (!cleanPhone) return false;\r\n const url = `https://api.twilio.com/2010-04-01/Accounts/${accountSid}/Messages.json`;\r\n const body = new URLSearchParams({\r\n From: fromNumber,\r\n To: `whatsapp:+${cleanPhone}`,\r\n Body: message,\r\n });\r\n const res = await fetch(url, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/x-www-form-urlencoded\",\r\n Authorization: `Basic ${Buffer.from(`${accountSid}:${authToken}`).toString(\"base64\")}`,\r\n },\r\n body: body.toString(),\r\n });\r\n return res.ok;\r\n}\r\n","\"use client\";\r\n\r\nimport React from \"react\";\r\nimport Link from \"next/link\";\r\n\r\ninterface WhatsAppChatButtonProps {\r\n waNumber: string;\r\n message?: string;\r\n label?: string;\r\n className?: string;\r\n}\r\n\r\nexport function WhatsAppChatButton({\r\n waNumber,\r\n message = \"Hi! I have a question.\",\r\n label = \"Chat on WhatsApp\",\r\n className,\r\n}: WhatsAppChatButtonProps) {\r\n const href = `https://wa.me/${waNumber}?text=${encodeURIComponent(message)}`;\r\n return (\r\n <Link\r\n href={href}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n className={`inline-flex items-center gap-2 rounded-lg bg-green-500 px-4 py-2 text-sm font-semibold text-white transition-colors hover:bg-green-600 ${className ?? \"\"}`}\r\n >\r\n <svg\r\n className=\"h-4 w-4\"\r\n viewBox=\"0 0 24 24\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\"\r\n >\r\n <path d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z\" />\r\n </svg>\r\n {label}\r\n </Link>\r\n );\r\n}\r\n","import type { FeatureManifest } from \"@mohasinac/contracts\";\r\n\r\nexport const manifest: FeatureManifest = {\r\n name: \"whatsappBot\",\r\n i18nNamespace: \"whatsappBot\",\r\n envKeys: [\r\n \"WHATSAPP_BOT_NUMBER\",\r\n \"WHATSAPP_WEBHOOK_SECRET\",\r\n ],\r\n routes: [],\r\n apiRoutes: [\r\n { segment: \"api/whatsapp/webhook\", methods: [\"POST\"] },\r\n { segment: \"api/whatsapp/send-status\", methods: [\"POST\"] },\r\n ],\r\n};\r\n"]}
|