@mohasinac/appkit 2.6.3 → 2.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_internal/server/features/account/data.js +2 -2
- package/dist/_internal/server/features/bundles/data.d.ts +26 -6
- package/dist/_internal/server/features/bundles/data.js +41 -6
- package/dist/_internal/server/features/bundles/index.d.ts +3 -2
- package/dist/_internal/server/features/bundles/index.js +4 -2
- package/dist/_internal/server/features/bundles/metadata.d.ts +20 -0
- package/dist/_internal/server/features/bundles/metadata.js +46 -0
- package/dist/_internal/server/features/bundles/og.d.ts +38 -0
- package/dist/_internal/server/features/bundles/og.js +122 -0
- package/dist/_internal/server/features/checkout/actions.js +192 -133
- package/dist/_internal/server/features/checkout/bundle-expansion.d.ts +57 -0
- package/dist/_internal/server/features/checkout/bundle-expansion.js +70 -0
- package/dist/_internal/server/features/checkout/prize-bundle-gates.d.ts +5 -15
- package/dist/_internal/server/features/checkout/prize-bundle-gates.js +5 -21
- package/dist/_internal/server/features/media/contextGuards.js +15 -1
- package/dist/_internal/server/features/payouts/actions.d.ts +19 -0
- package/dist/_internal/server/features/payouts/actions.js +38 -0
- package/dist/_internal/server/features/products/data.js +1 -2
- package/dist/_internal/server/features/raffle/actions.d.ts +11 -0
- package/dist/_internal/server/features/raffle/actions.js +31 -0
- package/dist/_internal/server/features/refunds/actions.d.ts +31 -0
- package/dist/_internal/server/features/refunds/actions.js +77 -0
- package/dist/_internal/server/jobs/core/adminAnalytics.d.ts +28 -0
- package/dist/_internal/server/jobs/core/adminAnalytics.js +98 -0
- package/dist/_internal/server/jobs/core/assignSpinPrize.d.ts +19 -0
- package/dist/_internal/server/jobs/core/assignSpinPrize.js +81 -0
- package/dist/_internal/server/jobs/core/auctionSettlement.d.ts +2 -0
- package/dist/_internal/server/jobs/core/auctionSettlement.js +70 -0
- package/dist/_internal/server/jobs/core/autoPayoutEligibility.d.ts +2 -0
- package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +109 -0
- package/dist/_internal/server/jobs/core/bundleStockSync.d.ts +10 -0
- package/dist/_internal/server/jobs/core/bundleStockSync.js +71 -0
- package/dist/_internal/server/jobs/core/cartPrune.d.ts +2 -0
- package/dist/_internal/server/jobs/core/cartPrune.js +13 -0
- package/dist/_internal/server/jobs/core/cleanupRtdbEvents.d.ts +2 -0
- package/dist/_internal/server/jobs/core/cleanupRtdbEvents.js +45 -0
- package/dist/_internal/server/jobs/core/countersReconcile.d.ts +2 -0
- package/dist/_internal/server/jobs/core/countersReconcile.js +107 -0
- package/dist/_internal/server/jobs/core/couponExpiry.d.ts +2 -0
- package/dist/_internal/server/jobs/core/couponExpiry.js +13 -0
- package/dist/_internal/server/jobs/core/dailyDataCleanup.d.ts +2 -0
- package/dist/_internal/server/jobs/core/dailyDataCleanup.js +20 -0
- package/dist/_internal/server/jobs/core/index.d.ts +44 -0
- package/dist/_internal/server/jobs/core/index.js +47 -0
- package/dist/_internal/server/jobs/core/listingProcessor.d.ts +30 -0
- package/dist/_internal/server/jobs/core/listingProcessor.js +138 -0
- package/dist/_internal/server/jobs/core/mediaTmpCleanup.d.ts +14 -0
- package/dist/_internal/server/jobs/core/mediaTmpCleanup.js +68 -0
- package/dist/_internal/server/jobs/core/notificationPrune.d.ts +2 -0
- package/dist/_internal/server/jobs/core/notificationPrune.js +13 -0
- package/dist/_internal/server/jobs/core/offerExpiry.d.ts +2 -0
- package/dist/_internal/server/jobs/core/offerExpiry.js +50 -0
- package/dist/_internal/server/jobs/core/onBidPlaced.d.ts +15 -0
- package/dist/_internal/server/jobs/core/onBidPlaced.js +59 -0
- package/dist/_internal/server/jobs/core/onCategoryWrite.d.ts +14 -0
- package/dist/_internal/server/jobs/core/onCategoryWrite.js +134 -0
- package/dist/_internal/server/jobs/core/onOrderCreate.d.ts +18 -0
- package/dist/_internal/server/jobs/core/onOrderCreate.js +78 -0
- package/dist/_internal/server/jobs/core/onOrderStatusChange.d.ts +19 -0
- package/dist/_internal/server/jobs/core/onOrderStatusChange.js +139 -0
- package/dist/_internal/server/jobs/core/onProductStockChange.d.ts +23 -0
- package/dist/_internal/server/jobs/core/onProductStockChange.js +130 -0
- package/dist/_internal/server/jobs/core/onProductWrite.d.ts +12 -0
- package/dist/_internal/server/jobs/core/onProductWrite.js +94 -0
- package/dist/_internal/server/jobs/core/onReviewWrite.d.ts +7 -0
- package/dist/_internal/server/jobs/core/onReviewWrite.js +49 -0
- package/dist/_internal/server/jobs/core/onStoreWrite.d.ts +12 -0
- package/dist/_internal/server/jobs/core/onStoreWrite.js +7 -0
- package/dist/_internal/server/jobs/core/payoutBatch.d.ts +8 -0
- package/dist/_internal/server/jobs/core/payoutBatch.js +102 -0
- package/dist/_internal/server/jobs/core/pendingOrderTimeout.d.ts +2 -0
- package/dist/_internal/server/jobs/core/pendingOrderTimeout.js +27 -0
- package/dist/_internal/server/jobs/core/positionsReconcile.d.ts +7 -0
- package/dist/_internal/server/jobs/core/positionsReconcile.js +87 -0
- package/dist/_internal/server/jobs/core/prizeRevealClose.d.ts +2 -0
- package/dist/_internal/server/jobs/core/prizeRevealClose.js +22 -0
- package/dist/_internal/server/jobs/core/prizeRevealExpiry.d.ts +2 -0
- package/dist/_internal/server/jobs/core/prizeRevealExpiry.js +50 -0
- package/dist/_internal/server/jobs/core/prizeRevealOpen.d.ts +2 -0
- package/dist/_internal/server/jobs/core/prizeRevealOpen.js +56 -0
- package/dist/_internal/server/jobs/core/prizeRevealReminder.d.ts +2 -0
- package/dist/_internal/server/jobs/core/prizeRevealReminder.js +38 -0
- package/dist/_internal/server/jobs/core/productStatsSync.d.ts +8 -0
- package/dist/_internal/server/jobs/core/productStatsSync.js +36 -0
- package/dist/_internal/server/jobs/core/promotions.d.ts +12 -0
- package/dist/_internal/server/jobs/core/promotions.js +43 -0
- package/dist/_internal/server/jobs/core/storeAnalytics.d.ts +30 -0
- package/dist/_internal/server/jobs/core/storeAnalytics.js +109 -0
- package/dist/_internal/server/jobs/core/triggerEventRaffle.d.ts +19 -0
- package/dist/_internal/server/jobs/core/triggerEventRaffle.js +86 -0
- package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.d.ts +6 -0
- package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +85 -0
- package/dist/_internal/server/jobs/handlers/adminAnalytics.d.ts +2 -26
- package/dist/_internal/server/jobs/handlers/adminAnalytics.js +2 -98
- package/dist/_internal/server/jobs/handlers/assignSpinPrize.d.ts +1 -22
- package/dist/_internal/server/jobs/handlers/assignSpinPrize.js +2 -86
- package/dist/_internal/server/jobs/handlers/auctionSettlement.js +2 -70
- package/dist/_internal/server/jobs/handlers/autoPayoutEligibility.js +2 -110
- package/dist/_internal/server/jobs/handlers/bundleStockSync.d.ts +0 -16
- package/dist/_internal/server/jobs/handlers/bundleStockSync.js +2 -80
- package/dist/_internal/server/jobs/handlers/cartPrune.js +2 -13
- package/dist/_internal/server/jobs/handlers/cleanupRtdbEvents.js +2 -45
- package/dist/_internal/server/jobs/handlers/countersReconcile.js +2 -109
- package/dist/_internal/server/jobs/handlers/couponExpiry.js +2 -13
- package/dist/_internal/server/jobs/handlers/dailyDataCleanup.js +2 -20
- package/dist/_internal/server/jobs/handlers/listingProcessor.d.ts +3 -28
- package/dist/_internal/server/jobs/handlers/listingProcessor.js +3 -138
- package/dist/_internal/server/jobs/handlers/mediaTmpCleanup.d.ts +0 -12
- package/dist/_internal/server/jobs/handlers/mediaTmpCleanup.js +2 -69
- package/dist/_internal/server/jobs/handlers/notificationPrune.js +2 -13
- package/dist/_internal/server/jobs/handlers/offerExpiry.js +2 -50
- package/dist/_internal/server/jobs/handlers/onBidPlaced.d.ts +1 -10
- package/dist/_internal/server/jobs/handlers/onBidPlaced.js +2 -56
- package/dist/_internal/server/jobs/handlers/onCategoryWrite.d.ts +1 -8
- package/dist/_internal/server/jobs/handlers/onCategoryWrite.js +6 -134
- package/dist/_internal/server/jobs/handlers/onOrderCreate.d.ts +1 -12
- package/dist/_internal/server/jobs/handlers/onOrderCreate.js +2 -76
- package/dist/_internal/server/jobs/handlers/onOrderStatusChange.d.ts +1 -12
- package/dist/_internal/server/jobs/handlers/onOrderStatusChange.js +2 -139
- package/dist/_internal/server/jobs/handlers/onProductStockChange.d.ts +0 -13
- package/dist/_internal/server/jobs/handlers/onProductStockChange.js +7 -134
- package/dist/_internal/server/jobs/handlers/onProductWrite.d.ts +1 -6
- package/dist/_internal/server/jobs/handlers/onProductWrite.js +6 -106
- package/dist/_internal/server/jobs/handlers/onReviewWrite.js +2 -49
- package/dist/_internal/server/jobs/handlers/onStoreWrite.d.ts +1 -8
- package/dist/_internal/server/jobs/handlers/onStoreWrite.js +7 -8
- package/dist/_internal/server/jobs/handlers/payoutBatch.d.ts +0 -9
- package/dist/_internal/server/jobs/handlers/payoutBatch.js +2 -104
- package/dist/_internal/server/jobs/handlers/pendingOrderTimeout.d.ts +0 -6
- package/dist/_internal/server/jobs/handlers/pendingOrderTimeout.js +2 -33
- package/dist/_internal/server/jobs/handlers/positionsReconcile.d.ts +0 -5
- package/dist/_internal/server/jobs/handlers/positionsReconcile.js +2 -87
- package/dist/_internal/server/jobs/handlers/prizeRevealClose.d.ts +0 -7
- package/dist/_internal/server/jobs/handlers/prizeRevealClose.js +2 -29
- package/dist/_internal/server/jobs/handlers/prizeRevealExpiry.d.ts +0 -8
- package/dist/_internal/server/jobs/handlers/prizeRevealExpiry.js +2 -58
- package/dist/_internal/server/jobs/handlers/prizeRevealOpen.d.ts +0 -8
- package/dist/_internal/server/jobs/handlers/prizeRevealOpen.js +2 -65
- package/dist/_internal/server/jobs/handlers/prizeRevealReminder.d.ts +0 -7
- package/dist/_internal/server/jobs/handlers/prizeRevealReminder.js +2 -45
- package/dist/_internal/server/jobs/handlers/productStatsSync.d.ts +0 -6
- package/dist/_internal/server/jobs/handlers/productStatsSync.js +2 -36
- package/dist/_internal/server/jobs/handlers/promotions.d.ts +2 -10
- package/dist/_internal/server/jobs/handlers/promotions.js +2 -43
- package/dist/_internal/server/jobs/handlers/storeAnalytics.d.ts +2 -28
- package/dist/_internal/server/jobs/handlers/storeAnalytics.js +2 -109
- package/dist/_internal/server/jobs/handlers/triggerEventRaffle.d.ts +1 -28
- package/dist/_internal/server/jobs/handlers/triggerEventRaffle.js +2 -94
- package/dist/_internal/server/jobs/handlers/weeklyPayoutEligibility.d.ts +0 -6
- package/dist/_internal/server/jobs/handlers/weeklyPayoutEligibility.js +2 -87
- package/dist/_internal/server/jobs/index.d.ts +1 -0
- package/dist/_internal/server/jobs/index.js +1 -0
- package/dist/_internal/server/jobs/runtime/adapters/firebase.js +21 -0
- package/dist/_internal/shared/actions/action-registry.d.ts +84 -0
- package/dist/_internal/shared/actions/action-registry.js +160 -0
- package/dist/_internal/shared/checkout/rules/_defaults.d.ts +3 -0
- package/dist/_internal/shared/checkout/rules/_defaults.js +22 -0
- package/dist/_internal/shared/checkout/rules/_limits.d.ts +19 -0
- package/dist/_internal/shared/checkout/rules/_limits.js +19 -0
- package/dist/_internal/shared/checkout/rules/_registry.d.ts +44 -0
- package/dist/_internal/shared/checkout/rules/_registry.js +87 -0
- package/dist/_internal/shared/checkout/rules/auction.rule.d.ts +2 -0
- package/dist/_internal/shared/checkout/rules/auction.rule.js +10 -0
- package/dist/_internal/shared/checkout/rules/bundle.rule.d.ts +11 -0
- package/dist/_internal/shared/checkout/rules/bundle.rule.js +6 -0
- package/dist/_internal/shared/checkout/rules/classified.rule.d.ts +9 -0
- package/dist/_internal/shared/checkout/rules/classified.rule.js +9 -0
- package/dist/_internal/shared/checkout/rules/digital-code.rule.d.ts +8 -0
- package/dist/_internal/shared/checkout/rules/digital-code.rule.js +6 -0
- package/dist/_internal/shared/checkout/rules/index.d.ts +12 -0
- package/dist/_internal/shared/checkout/rules/index.js +12 -0
- package/dist/_internal/shared/checkout/rules/live.rule.d.ts +10 -0
- package/dist/_internal/shared/checkout/rules/live.rule.js +6 -0
- package/dist/_internal/shared/checkout/rules/offer.rule.d.ts +2 -0
- package/dist/_internal/shared/checkout/rules/offer.rule.js +9 -0
- package/dist/_internal/shared/checkout/rules/preorder.rule.d.ts +2 -0
- package/dist/_internal/shared/checkout/rules/preorder.rule.js +28 -0
- package/dist/_internal/shared/checkout/rules/prize-draw.rule.d.ts +2 -0
- package/dist/_internal/shared/checkout/rules/prize-draw.rule.js +65 -0
- package/dist/_internal/shared/checkout/rules/standard.rule.d.ts +2 -0
- package/dist/_internal/shared/checkout/rules/standard.rule.js +5 -0
- package/dist/_internal/shared/checkout/rules/types.d.ts +125 -0
- package/dist/_internal/shared/checkout/rules/types.js +13 -0
- package/dist/_internal/shared/features/cart/schema.d.ts +6 -6
- package/dist/_internal/shared/features/categories/bundle-copy.d.ts +123 -0
- package/dist/_internal/shared/features/categories/bundle-copy.js +134 -0
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +318 -0
- package/dist/_internal/shared/features/categories/bundle-schemas.js +55 -0
- package/dist/_internal/shared/features/orders/refund-copy.d.ts +36 -0
- package/dist/_internal/shared/features/orders/refund-copy.js +40 -0
- package/dist/_internal/shared/features/orders/schema.d.ts +4 -4
- package/dist/_internal/shared/features/products/schema.d.ts +8 -8
- package/dist/_internal/shared/listing-types/_registry.d.ts +27 -0
- package/dist/_internal/shared/listing-types/_registry.js +8 -0
- package/dist/_internal/shared/listing-types/action-tracker.d.ts +41 -0
- package/dist/_internal/shared/listing-types/action-tracker.js +70 -0
- package/dist/_internal/shared/listing-types/capabilities.js +25 -0
- package/dist/_internal/shared/listing-types/cart-shipping.d.ts +37 -0
- package/dist/_internal/shared/listing-types/cart-shipping.js +46 -0
- package/dist/_internal/shared/listing-types/classified/config.d.ts +7 -0
- package/dist/_internal/shared/listing-types/classified/config.js +8 -0
- package/dist/_internal/shared/listing-types/classified/ctas.d.ts +1 -0
- package/dist/_internal/shared/listing-types/classified/ctas.js +3 -0
- package/dist/_internal/shared/listing-types/classified/og.d.ts +1 -0
- package/dist/_internal/shared/listing-types/classified/og.js +1 -0
- package/dist/_internal/shared/listing-types/classified/schema.d.ts +1 -0
- package/dist/_internal/shared/listing-types/classified/schema.js +1 -0
- package/dist/_internal/shared/listing-types/classified/seed-factory.d.ts +1 -0
- package/dist/_internal/shared/listing-types/classified/seed-factory.js +1 -0
- package/dist/_internal/shared/listing-types/digital-code/config.d.ts +7 -0
- package/dist/_internal/shared/listing-types/digital-code/config.js +8 -0
- package/dist/_internal/shared/listing-types/digital-code/ctas.d.ts +1 -0
- package/dist/_internal/shared/listing-types/digital-code/ctas.js +3 -0
- package/dist/_internal/shared/listing-types/digital-code/og.d.ts +1 -0
- package/dist/_internal/shared/listing-types/digital-code/og.js +1 -0
- package/dist/_internal/shared/listing-types/digital-code/schema.d.ts +1 -0
- package/dist/_internal/shared/listing-types/digital-code/schema.js +1 -0
- package/dist/_internal/shared/listing-types/digital-code/seed-factory.d.ts +1 -0
- package/dist/_internal/shared/listing-types/digital-code/seed-factory.js +1 -0
- package/dist/_internal/shared/listing-types/feature-flags.d.ts +34 -0
- package/dist/_internal/shared/listing-types/feature-flags.js +45 -0
- package/dist/_internal/shared/listing-types/live/config.d.ts +7 -0
- package/dist/_internal/shared/listing-types/live/config.js +8 -0
- package/dist/_internal/shared/listing-types/live/ctas.d.ts +1 -0
- package/dist/_internal/shared/listing-types/live/ctas.js +3 -0
- package/dist/_internal/shared/listing-types/live/og.d.ts +1 -0
- package/dist/_internal/shared/listing-types/live/og.js +1 -0
- package/dist/_internal/shared/listing-types/live/schema.d.ts +1 -0
- package/dist/_internal/shared/listing-types/live/schema.js +1 -0
- package/dist/_internal/shared/listing-types/live/seed-factory.d.ts +1 -0
- package/dist/_internal/shared/listing-types/live/seed-factory.js +1 -0
- package/dist/_internal/shared/media/limits.js +8 -0
- package/dist/client.d.ts +6 -1
- package/dist/client.js +14 -1
- package/dist/configs/next.js +7 -0
- package/dist/constants/api-endpoints.d.ts +6 -0
- package/dist/constants/api-endpoints.js +4 -0
- package/dist/core/hooks/useSyncManager.js +13 -1
- package/dist/core/unit-of-work.d.ts +1 -1
- package/dist/core/unit-of-work.js +2 -2
- package/dist/features/account/actions/address-actions.d.ts +1 -1
- package/dist/features/account/actions/address-actions.js +15 -7
- package/dist/features/account/schemas/firestore.d.ts +8 -43
- package/dist/features/account/schemas/firestore.js +8 -54
- package/dist/features/account/schemas/index.d.ts +6 -6
- package/dist/features/account/server.d.ts +1 -1
- package/dist/features/account/server.js +3 -1
- package/dist/features/addresses/index.d.ts +2 -0
- package/dist/features/addresses/index.js +2 -0
- package/dist/features/addresses/repository/addresses.repository.d.ts +29 -0
- package/dist/features/addresses/repository/addresses.repository.js +157 -0
- package/dist/features/addresses/schemas/firestore.d.ts +53 -0
- package/dist/features/addresses/schemas/firestore.js +68 -0
- package/dist/features/{bundles → addresses}/schemas/index.d.ts +0 -1
- package/dist/features/{bundles → addresses}/schemas/index.js +0 -1
- package/dist/features/addresses/server.d.ts +2 -0
- package/dist/features/addresses/server.js +2 -0
- package/dist/features/admin/components/AdminAllEventEntriesView.js +4 -3
- package/dist/features/admin/components/AdminBidsView.js +4 -3
- package/dist/features/admin/components/AdminBlogView.js +8 -3
- package/dist/features/admin/components/AdminBundleEditorView.d.ts +9 -0
- package/dist/features/admin/components/AdminBundleEditorView.js +209 -0
- package/dist/features/admin/components/AdminBundlesView.d.ts +9 -0
- package/dist/features/admin/components/AdminBundlesView.js +59 -0
- package/dist/features/admin/components/AdminCartsView.js +13 -3
- package/dist/features/admin/components/AdminContactView.js +4 -3
- package/dist/features/admin/components/AdminCouponsView.js +32 -13
- package/dist/features/admin/components/AdminNewsletterView.js +4 -3
- package/dist/features/admin/components/AdminOrdersView.js +15 -7
- package/dist/features/admin/components/AdminPayoutsView.js +4 -3
- package/dist/features/admin/components/AdminProductsView.js +6 -5
- package/dist/features/admin/components/AdminReviewsView.js +5 -4
- package/dist/features/admin/components/AdminStoresView.js +4 -3
- package/dist/features/admin/components/AdminUsersView.js +15 -5
- package/dist/features/admin/components/AdminWishlistsView.js +10 -1
- package/dist/features/admin/components/DataTable.d.ts +5 -1
- package/dist/features/admin/components/DataTable.js +24 -20
- package/dist/features/admin/components/index.d.ts +4 -0
- package/dist/features/admin/components/index.js +3 -0
- package/dist/features/admin/constants/filter-tabs.d.ts +401 -0
- package/dist/features/admin/constants/filter-tabs.js +200 -0
- package/dist/features/admin/hooks/useAdminListingData.d.ts +1 -0
- package/dist/features/admin/hooks/useAdminListingData.js +1 -0
- package/dist/features/admin/schemas/firestore.d.ts +15 -0
- package/dist/features/admin/schemas/firestore.js +18 -0
- package/dist/features/admin/types/product.types.d.ts +2 -2
- package/dist/features/auctions/components/AuctionCard.d.ts +4 -1
- package/dist/features/auctions/components/AuctionCard.js +5 -3
- package/dist/features/auctions/components/AuctionDetailPageView.js +1 -1
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +2 -2
- package/dist/features/auctions/components/PlaceBidFormClient.js +12 -2
- package/dist/features/auctions/schemas/index.d.ts +2 -2
- package/dist/features/auth/index.d.ts +1 -0
- package/dist/features/auth/index.js +1 -0
- package/dist/features/auth/role-predicates.d.ts +16 -0
- package/dist/features/auth/role-predicates.js +15 -0
- package/dist/features/blog/components/BlogFeaturedCard.d.ts +4 -1
- package/dist/features/blog/components/BlogFeaturedCard.js +5 -3
- package/dist/features/cart/actions/cart-actions.d.ts +1 -0
- package/dist/features/cart/actions/cart-actions.js +16 -0
- package/dist/features/cart/components/CartView.d.ts +19 -1
- package/dist/features/cart/components/CartView.js +2 -2
- package/dist/features/cart/components/ShippingPicker.d.ts +13 -0
- package/dist/features/cart/components/ShippingPicker.js +48 -0
- package/dist/features/cart/components/index.d.ts +3 -1
- package/dist/features/cart/components/index.js +1 -0
- package/dist/features/cart/hooks/useCartCount.js +7 -1
- package/dist/features/cart/repository/cart.repository.d.ts +1 -0
- package/dist/features/cart/repository/cart.repository.js +35 -0
- package/dist/features/cart/schemas/firestore.d.ts +27 -2
- package/dist/features/categories/components/BundleAddToCartCta.d.ts +16 -0
- package/dist/features/categories/components/BundleAddToCartCta.js +54 -0
- package/dist/features/categories/components/BundleBuyNowCta.d.ts +8 -0
- package/dist/features/categories/components/BundleBuyNowCta.js +37 -0
- package/dist/features/categories/components/BundleDetailView.d.ts +22 -0
- package/dist/features/categories/components/BundleDetailView.js +31 -0
- package/dist/features/categories/components/BundleDynamicRuleEditor.d.ts +18 -0
- package/dist/features/categories/components/BundleDynamicRuleEditor.js +60 -0
- package/dist/features/categories/components/BundleItemsPicker.d.ts +26 -0
- package/dist/features/categories/components/BundleItemsPicker.js +135 -0
- package/dist/features/categories/components/BundlesListView.d.ts +13 -0
- package/dist/features/categories/components/BundlesListView.js +27 -0
- package/dist/features/categories/components/index.d.ts +12 -0
- package/dist/features/categories/components/index.js +9 -0
- package/dist/features/checkout/actions/checkout-actions.js +10 -3
- package/dist/features/events/components/AdminEventEditorView.js +108 -2
- package/dist/features/events/components/AdminEventsView.js +16 -4
- package/dist/features/events/components/EventCard.d.ts +4 -1
- package/dist/features/events/components/EventCard.js +7 -3
- package/dist/features/events/components/EventRaffleWinnerView.d.ts +21 -0
- package/dist/features/events/components/EventRaffleWinnerView.js +18 -0
- package/dist/features/events/components/SpinWheelView.d.ts +27 -0
- package/dist/features/events/components/SpinWheelView.js +64 -0
- package/dist/features/events/components/index.d.ts +4 -0
- package/dist/features/events/components/index.js +2 -0
- package/dist/features/events/schemas/firestore.d.ts +27 -1
- package/dist/features/events/schemas/firestore.js +7 -0
- package/dist/features/events/types/index.d.ts +27 -1
- package/dist/features/homepage/components/FeaturedBundlesSection.d.ts +16 -0
- package/dist/features/homepage/components/FeaturedBundlesSection.js +24 -0
- package/dist/features/homepage/components/MarketplaceHomepageView.js +4 -1
- package/dist/features/homepage/components/WhatsAppCommunitySection.js +2 -2
- package/dist/features/homepage/lib/section-renderer.d.ts +2 -0
- package/dist/features/homepage/lib/section-renderer.js +5 -5
- package/dist/features/layout/NavbarLayout.d.ts +3 -1
- package/dist/features/layout/NavbarLayout.js +32 -3
- package/dist/features/layout/TitleBarLayout.d.ts +6 -3
- package/dist/features/layout/TitleBarLayout.js +22 -7
- package/dist/features/media/upload/MediaUploadField.d.ts +15 -1
- package/dist/features/media/upload/MediaUploadField.js +22 -1
- package/dist/features/orders/components/MarketplaceOrderCard.js +4 -2
- package/dist/features/orders/components/OrderSiblingPayments.d.ts +8 -0
- package/dist/features/orders/components/OrderSiblingPayments.js +16 -0
- package/dist/features/orders/components/RefundHistoryTable.d.ts +6 -0
- package/dist/features/orders/components/RefundHistoryTable.js +23 -0
- package/dist/features/orders/components/RefundRequestView.d.ts +8 -0
- package/dist/features/orders/components/RefundRequestView.js +42 -0
- package/dist/features/orders/components/index.d.ts +6 -0
- package/dist/features/orders/components/index.js +3 -0
- package/dist/features/orders/index.d.ts +1 -0
- package/dist/features/orders/index.js +2 -0
- package/dist/features/orders/repository/orders.repository.d.ts +20 -1
- package/dist/features/orders/repository/orders.repository.js +30 -1
- package/dist/features/orders/schemas/firestore.d.ts +63 -13
- package/dist/features/orders/schemas/firestore.js +5 -5
- package/dist/features/orders/schemas/index.d.ts +4 -4
- package/dist/features/orders/types/index.d.ts +12 -2
- package/dist/features/orders/utils/bundle-grouping.d.ts +48 -0
- package/dist/features/orders/utils/bundle-grouping.js +54 -0
- package/dist/features/orders/utils/order-splitter.d.ts +9 -10
- package/dist/features/orders/utils/order-splitter.js +24 -30
- package/dist/features/payments/repository/payout.repository.d.ts +17 -1
- package/dist/features/payments/repository/payout.repository.js +47 -0
- package/dist/features/payments/schemas/firestore.d.ts +26 -0
- package/dist/features/pre-orders/components/PreorderCard.d.ts +4 -1
- package/dist/features/pre-orders/components/PreorderCard.js +8 -6
- package/dist/features/products/actions/product-actions.d.ts +1 -1
- package/dist/features/products/actions/product-actions.js +1 -1
- package/dist/features/products/components/CompareOverlay.d.ts +2 -2
- package/dist/features/products/components/CompareOverlay.js +4 -4
- package/dist/features/products/components/InteractiveProductCard.js +7 -12
- package/dist/features/products/components/NonRefundableConsentModal.d.ts +1 -1
- package/dist/features/products/components/NonRefundableConsentModal.js +0 -10
- package/dist/features/products/components/ProductGrid.js +28 -12
- package/dist/features/products/components/ShowGroupSection.js +3 -3
- package/dist/features/products/components/SublistingCarouselSection.js +2 -2
- package/dist/features/products/components/index.d.ts +0 -4
- package/dist/features/products/components/index.js +5 -2
- package/dist/features/products/index.d.ts +1 -1
- package/dist/features/products/index.js +3 -1
- package/dist/features/products/repository/products.repository.js +4 -0
- package/dist/features/products/schemas/catalog-product.d.ts +70 -0
- package/dist/features/products/schemas/catalog-product.js +50 -0
- package/dist/features/products/schemas/firestore.d.ts +110 -2
- package/dist/features/products/schemas/firestore.js +30 -0
- package/dist/features/products/schemas/index.d.ts +8 -8
- package/dist/features/products/types/index.d.ts +1 -1
- package/dist/features/products/utils/listing-type.d.ts +9 -0
- package/dist/features/products/utils/listing-type.js +4 -0
- package/dist/features/promotions/actions/coupon-actions.d.ts +2 -2
- package/dist/features/promotions/actions/coupon-actions.js +1 -1
- package/dist/features/promotions/components/CouponCard.d.ts +28 -10
- package/dist/features/promotions/components/CouponCard.js +116 -14
- package/dist/features/promotions/hooks/useCouponValidate.d.ts +1 -1
- package/dist/features/promotions/repository/coupons.repository.d.ts +1 -1
- package/dist/features/reviews/schemas/index.d.ts +2 -2
- package/dist/features/search/schemas/index.d.ts +2 -2
- package/dist/features/search/types/index.d.ts +2 -2
- package/dist/features/seller/components/SellerAuctionsView.js +4 -5
- package/dist/features/seller/components/SellerBidsView.js +5 -13
- package/dist/features/seller/components/SellerCouponsView.js +31 -67
- package/dist/features/seller/components/SellerOffersView.js +4 -5
- package/dist/features/seller/components/SellerOrdersView.js +4 -5
- package/dist/features/seller/components/SellerPayoutsView.js +4 -5
- package/dist/features/seller/components/SellerProductsView.js +4 -8
- package/dist/features/seller/schemas/index.d.ts +2 -2
- package/dist/features/stores/actions/store-address-actions.d.ts +10 -6
- package/dist/features/stores/actions/store-address-actions.js +8 -7
- package/dist/features/stores/components/InteractiveStoreCard.js +3 -10
- package/dist/features/stores/components/StoreDetailLayoutView.js +20 -5
- package/dist/features/stores/schemas/firestore.d.ts +45 -38
- package/dist/features/stores/schemas/firestore.js +2 -49
- package/dist/features/stores/server.d.ts +0 -1
- package/dist/features/stores/server.js +2 -1
- package/dist/features/wishlist/hooks/useWishlistCount.d.ts +7 -9
- package/dist/features/wishlist/hooks/useWishlistCount.js +67 -86
- package/dist/features/wishlist/types/index.d.ts +1 -1
- package/dist/index.d.ts +50 -9
- package/dist/index.js +57 -11
- package/dist/next/routing/route-map.d.ts +6 -0
- package/dist/next/routing/route-map.js +4 -0
- package/dist/providers/db-firebase/admin.d.ts +6 -2
- package/dist/providers/db-firebase/admin.js +23 -0
- package/dist/repositories/index.d.ts +1 -2
- package/dist/repositories/index.js +5 -2
- package/dist/security/authorization.d.ts +2 -1
- package/dist/security/authorization.js +3 -2
- package/dist/seed/actions/demo-seed-actions.d.ts +1 -1
- package/dist/seed/bids-seed-data.d.ts +2 -2
- package/dist/seed/bids-seed-data.js +77 -2
- package/dist/seed/cart-seed-data.d.ts +10 -10
- package/dist/seed/cart-seed-data.js +15 -15
- package/dist/seed/events-seed-data.js +77 -0
- package/dist/seed/manifest.js +16 -8
- package/dist/seed/orders-seed-data.js +41 -2
- package/dist/seed/payouts-seed-data.js +18 -2
- package/dist/seed/stores-seed-data.js +55 -0
- package/dist/server-entry.d.ts +1 -0
- package/dist/server-entry.js +2 -0
- package/dist/server.d.ts +4 -0
- package/dist/server.js +8 -0
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/components/FilterChipGroup.d.ts +39 -0
- package/dist/ui/components/FilterChipGroup.js +15 -0
- package/dist/ui/components/HorizontalScroller.js +32 -7
- package/dist/ui/components/HorizontalScroller.style.css +6 -0
- package/dist/ui/components/SiteLogo.js +1 -1
- package/dist/ui/index.d.ts +2 -0
- package/dist/ui/index.js +2 -0
- package/dist/utils/id-generators.d.ts +11 -0
- package/dist/utils/id-generators.js +16 -0
- package/package.json +1 -1
- package/dist/_internal/shared/features/bundles/config.d.ts +0 -6
- package/dist/_internal/shared/features/bundles/config.js +0 -6
- package/dist/_internal/shared/schema-versions.d.ts +0 -76
- package/dist/_internal/shared/schema-versions.js +0 -82
- package/dist/features/account/migrations.d.ts +0 -2
- package/dist/features/account/migrations.js +0 -10
- package/dist/features/admin/migrations.d.ts +0 -2
- package/dist/features/admin/migrations.js +0 -10
- package/dist/features/auctions/migrations.d.ts +0 -2
- package/dist/features/auctions/migrations.js +0 -10
- package/dist/features/auth/migrations.d.ts +0 -2
- package/dist/features/auth/migrations.js +0 -10
- package/dist/features/blog/migrations.d.ts +0 -2
- package/dist/features/blog/migrations.js +0 -10
- package/dist/features/brands/actions/brand-actions.d.ts +0 -2
- package/dist/features/brands/actions/brand-actions.js +0 -5
- package/dist/features/brands/index.d.ts +0 -3
- package/dist/features/brands/index.js +0 -3
- package/dist/features/brands/migrations.d.ts +0 -2
- package/dist/features/brands/migrations.js +0 -10
- package/dist/features/brands/repository/brands.repository.d.ts +0 -13
- package/dist/features/brands/repository/brands.repository.js +0 -60
- package/dist/features/brands/schemas/index.d.ts +0 -33
- package/dist/features/brands/schemas/index.js +0 -15
- package/dist/features/brands/server.d.ts +0 -7
- package/dist/features/brands/server.js +0 -7
- package/dist/features/bundles/components/AdminBundleEditorView.d.ts +0 -8
- package/dist/features/bundles/components/AdminBundleEditorView.js +0 -7
- package/dist/features/bundles/components/BundleDetailPageView.d.ts +0 -9
- package/dist/features/bundles/components/BundleDetailPageView.js +0 -45
- package/dist/features/bundles/components/BundleForm.d.ts +0 -12
- package/dist/features/bundles/components/BundleForm.js +0 -126
- package/dist/features/bundles/components/BundleItemsPicker.d.ts +0 -9
- package/dist/features/bundles/components/BundleItemsPicker.js +0 -77
- package/dist/features/bundles/components/BundlesByCategoryListing.d.ts +0 -6
- package/dist/features/bundles/components/BundlesByCategoryListing.js +0 -50
- package/dist/features/bundles/components/BundlesListingView.d.ts +0 -17
- package/dist/features/bundles/components/BundlesListingView.js +0 -50
- package/dist/features/bundles/components/FeaturedBundlesSection.d.ts +0 -5
- package/dist/features/bundles/components/FeaturedBundlesSection.js +0 -55
- package/dist/features/bundles/components/SellerBundleCreateView.d.ts +0 -8
- package/dist/features/bundles/components/SellerBundleCreateView.js +0 -7
- package/dist/features/bundles/components/SellerBundleEditView.d.ts +0 -9
- package/dist/features/bundles/components/SellerBundleEditView.js +0 -7
- package/dist/features/bundles/components/index.d.ts +0 -18
- package/dist/features/bundles/components/index.js +0 -9
- package/dist/features/bundles/constants/index.d.ts +0 -32
- package/dist/features/bundles/constants/index.js +0 -35
- package/dist/features/bundles/index.d.ts +0 -2
- package/dist/features/bundles/index.js +0 -2
- package/dist/features/bundles/migrations.d.ts +0 -2
- package/dist/features/bundles/migrations.js +0 -10
- package/dist/features/bundles/repository/bundles.repository.d.ts +0 -36
- package/dist/features/bundles/repository/bundles.repository.js +0 -148
- package/dist/features/bundles/repository/index.d.ts +0 -1
- package/dist/features/bundles/repository/index.js +0 -1
- package/dist/features/bundles/schemas/firestore.d.ts +0 -88
- package/dist/features/bundles/schemas/firestore.js +0 -29
- package/dist/features/bundles/schemas/zod.d.ts +0 -377
- package/dist/features/bundles/schemas/zod.js +0 -71
- package/dist/features/cart/migrations.d.ts +0 -2
- package/dist/features/cart/migrations.js +0 -10
- package/dist/features/categories/migrations.d.ts +0 -2
- package/dist/features/categories/migrations.js +0 -10
- package/dist/features/events/migrations.d.ts +0 -2
- package/dist/features/events/migrations.js +0 -10
- package/dist/features/faq/migrations.d.ts +0 -2
- package/dist/features/faq/migrations.js +0 -10
- package/dist/features/grouped/migrations.d.ts +0 -2
- package/dist/features/grouped/migrations.js +0 -10
- package/dist/features/history/migrations.d.ts +0 -2
- package/dist/features/history/migrations.js +0 -10
- package/dist/features/messages/migrations.d.ts +0 -2
- package/dist/features/messages/migrations.js +0 -10
- package/dist/features/orders/migrations.d.ts +0 -2
- package/dist/features/orders/migrations.js +0 -10
- package/dist/features/payments/migrations.d.ts +0 -2
- package/dist/features/payments/migrations.js +0 -10
- package/dist/features/products/migrations.d.ts +0 -2
- package/dist/features/products/migrations.js +0 -10
- package/dist/features/products/repository/sublisting-categories.repository.d.ts +0 -16
- package/dist/features/products/repository/sublisting-categories.repository.js +0 -126
- package/dist/features/products/schemas/sublisting-categories.d.ts +0 -45
- package/dist/features/products/schemas/sublisting-categories.js +0 -16
- package/dist/features/promotions/migrations.d.ts +0 -2
- package/dist/features/promotions/migrations.js +0 -10
- package/dist/features/reviews/migrations.d.ts +0 -2
- package/dist/features/reviews/migrations.js +0 -10
- package/dist/features/scams/migrations.d.ts +0 -2
- package/dist/features/scams/migrations.js +0 -10
- package/dist/features/seller/migrations.d.ts +0 -2
- package/dist/features/seller/migrations.js +0 -10
- package/dist/features/stores/migrations.d.ts +0 -2
- package/dist/features/stores/migrations.js +0 -10
- package/dist/features/sublisting/migrations.d.ts +0 -2
- package/dist/features/sublisting/migrations.js +0 -10
- package/dist/features/sublisting/schemas/firestore.d.ts +0 -32
- package/dist/features/sublisting/schemas/firestore.js +0 -19
- package/dist/features/support/migrations.d.ts +0 -2
- package/dist/features/support/migrations.js +0 -10
- package/dist/features/wishlist/migrations.d.ts +0 -2
- package/dist/features/wishlist/migrations.js +0 -10
- package/dist/seed/_bundle-constants.d.ts +0 -14
- package/dist/seed/_bundle-constants.js +0 -14
- package/dist/seed/anime-figures-seed-data.d.ts +0 -8
- package/dist/seed/anime-figures-seed-data.js +0 -1033
- package/dist/seed/beyblade-seed-data.d.ts +0 -7
- package/dist/seed/beyblade-seed-data.js +0 -1129
- package/dist/seed/brands-seed-data.d.ts +0 -7
- package/dist/seed/brands-seed-data.js +0 -410
- package/dist/seed/bundles-seed-data.d.ts +0 -13
- package/dist/seed/bundles-seed-data.js +0 -229
- package/dist/seed/cosplay-accessories-seed-data.d.ts +0 -8
- package/dist/seed/cosplay-accessories-seed-data.js +0 -647
- package/dist/seed/hot-wheels-seed-data.d.ts +0 -7
- package/dist/seed/hot-wheels-seed-data.js +0 -1612
- package/dist/seed/letitrip-official-seed-data.d.ts +0 -8
- package/dist/seed/letitrip-official-seed-data.js +0 -399
- package/dist/seed/pokemon-carousel-slides-seed-data.d.ts +0 -8
- package/dist/seed/pokemon-carousel-slides-seed-data.js +0 -322
- package/dist/seed/pokemon-categories-seed-data.d.ts +0 -24
- package/dist/seed/pokemon-categories-seed-data.js +0 -547
- package/dist/seed/pokemon-coupons-seed-data.d.ts +0 -6
- package/dist/seed/pokemon-coupons-seed-data.js +0 -465
- package/dist/seed/pokemon-homepage-sections-seed-data.d.ts +0 -7
- package/dist/seed/pokemon-homepage-sections-seed-data.js +0 -241
- package/dist/seed/pokemon-products-seed-data.d.ts +0 -9
- package/dist/seed/pokemon-products-seed-data.js +0 -1791
- package/dist/seed/pokemon-seed-bundle.d.ts +0 -47
- package/dist/seed/pokemon-seed-bundle.js +0 -71
- package/dist/seed/pokemon-stores-seed-data.d.ts +0 -6
- package/dist/seed/pokemon-stores-seed-data.js +0 -179
- package/dist/seed/pokemon-users-seed-data.d.ts +0 -6
- package/dist/seed/pokemon-users-seed-data.js +0 -521
- package/dist/seed/products-seed-data.d.ts +0 -6
- package/dist/seed/products-seed-data.js +0 -2530
- package/dist/seed/retro-gaming-seed-data.d.ts +0 -8
- package/dist/seed/retro-gaming-seed-data.js +0 -801
- package/dist/seed/server.d.ts +0 -2
- package/dist/seed/server.js +0 -7
- package/dist/seed/sublisting-categories-seed-data.d.ts +0 -7
- package/dist/seed/sublisting-categories-seed-data.js +0 -159
- package/dist/seed/transformers-seed-data.d.ts +0 -7
- package/dist/seed/transformers-seed-data.js +0 -530
|
@@ -3,8 +3,16 @@ import { cache } from "react";
|
|
|
3
3
|
import { storeRepository, productRepository, categoriesRepository } from "../../../repositories";
|
|
4
4
|
import { ROUTES } from "../../../next";
|
|
5
5
|
import { Container, Main, Section } from "../../../ui";
|
|
6
|
+
import { STORE_PAGE_TABS } from "../../products/constants/listing-tabs";
|
|
6
7
|
import { StoreHeader } from "./StoreHeader";
|
|
7
8
|
import { StoreNavTabs } from "./StoreNavTabs";
|
|
9
|
+
const STORE_LISTING_HREF = {
|
|
10
|
+
products: (slug) => String(ROUTES.PUBLIC.STORE_PRODUCTS(slug)),
|
|
11
|
+
auctions: (slug) => String(ROUTES.PUBLIC.STORE_AUCTIONS(slug)),
|
|
12
|
+
"pre-orders": (slug) => String(ROUTES.PUBLIC.STORE_PRE_ORDERS(slug)),
|
|
13
|
+
"prize-draws": (slug) => String(ROUTES.PUBLIC.STORE_PRIZE_DRAWS(slug)),
|
|
14
|
+
bundles: (slug) => String(ROUTES.PUBLIC.STORE_BUNDLES(slug)),
|
|
15
|
+
};
|
|
8
16
|
export const getStoreBySlug = cache((slug) => storeRepository.findBySlug(slug).catch(() => undefined));
|
|
9
17
|
function tabLabel(base, count) {
|
|
10
18
|
if (!count)
|
|
@@ -43,12 +51,19 @@ export async function StoreDetailLayoutView({ storeSlug, activeTab, children, })
|
|
|
43
51
|
.catch(() => 0),
|
|
44
52
|
])
|
|
45
53
|
: [0, 0, 0, 0, 0];
|
|
54
|
+
const listingCounts = {
|
|
55
|
+
products: productsCount,
|
|
56
|
+
auctions: auctionsCount,
|
|
57
|
+
"pre-orders": preOrdersCount,
|
|
58
|
+
"prize-draws": prizeDrawsCount,
|
|
59
|
+
bundles: bundlesCount,
|
|
60
|
+
};
|
|
46
61
|
const tabs = [
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
62
|
+
...STORE_PAGE_TABS.map((tab) => ({
|
|
63
|
+
value: tab.id,
|
|
64
|
+
label: tabLabel(tab.label, listingCounts[tab.id]),
|
|
65
|
+
href: STORE_LISTING_HREF[tab.id](storeSlug),
|
|
66
|
+
})),
|
|
52
67
|
{ value: "coupons", label: "Coupons", href: String(ROUTES.PUBLIC.STORE_COUPONS(storeSlug)) },
|
|
53
68
|
{ value: "reviews", label: "Reviews", href: String(ROUTES.PUBLIC.STORE_REVIEWS(storeSlug)) },
|
|
54
69
|
{ value: "about", label: "About", href: String(ROUTES.PUBLIC.STORE_ABOUT(storeSlug)) },
|
|
@@ -5,6 +5,40 @@
|
|
|
5
5
|
* and helpers for the stores feature.
|
|
6
6
|
*/
|
|
7
7
|
import type { StoreCapability } from "../../auth/permissions/constants";
|
|
8
|
+
export type ShippingProviderType = "shiprocket" | "self-courier" | "store-pickup" | "custom";
|
|
9
|
+
export interface ShippingProviderConfig {
|
|
10
|
+
/** Stable slug — never changes after creation. */
|
|
11
|
+
providerId: string;
|
|
12
|
+
/** Buyer-facing label (e.g. "Standard Shipping", "Store Pickup"). */
|
|
13
|
+
label: string;
|
|
14
|
+
type: ShippingProviderType;
|
|
15
|
+
fee: {
|
|
16
|
+
/** Flat fee in paise. */
|
|
17
|
+
flatInPaise?: number;
|
|
18
|
+
/** Per-kg surcharge in paise. */
|
|
19
|
+
perKgInPaise?: number;
|
|
20
|
+
/** Percentage of order subtotal (0–100). */
|
|
21
|
+
percentOfOrder?: number;
|
|
22
|
+
/** If order subtotal exceeds this threshold, shipping is free. */
|
|
23
|
+
freeAboveInPaise?: number;
|
|
24
|
+
/** Minimum charge in paise (floor after all other rules). */
|
|
25
|
+
minInPaise?: number;
|
|
26
|
+
};
|
|
27
|
+
etaDaysMin: number;
|
|
28
|
+
etaDaysMax: number;
|
|
29
|
+
/** Pincode-prefix or state allowlist; empty = all India. */
|
|
30
|
+
regions?: string[];
|
|
31
|
+
/**
|
|
32
|
+
* When true the seller's order-detail page prompts for an AWB upload
|
|
33
|
+
* after marking the order as shipped.
|
|
34
|
+
*/
|
|
35
|
+
requiresAwbUpload?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface StoreShippingConfig {
|
|
38
|
+
providers: ShippingProviderConfig[];
|
|
39
|
+
/** providerId that pre-selects in the ShippingPicker. */
|
|
40
|
+
defaultProviderId: string;
|
|
41
|
+
}
|
|
8
42
|
export declare const StoreStatusValues: {
|
|
9
43
|
readonly PENDING: "pending";
|
|
10
44
|
readonly ACTIVE: "active";
|
|
@@ -59,6 +93,11 @@ export interface StoreDocument {
|
|
|
59
93
|
minRating?: number;
|
|
60
94
|
layout?: "grid" | "carousel";
|
|
61
95
|
};
|
|
96
|
+
/**
|
|
97
|
+
* Shipping providers available for this store. Buyers pick one in the cart
|
|
98
|
+
* ShippingPicker; the chosen provider + fee lock onto each CartItem.
|
|
99
|
+
*/
|
|
100
|
+
shippingConfig?: StoreShippingConfig;
|
|
62
101
|
whatsappConfig?: {
|
|
63
102
|
/** Seller's WhatsApp Business phone number, digits-only with country code e.g. "919876543210" */
|
|
64
103
|
phoneNumber?: string;
|
|
@@ -117,42 +156,10 @@ export declare const STORE_FIELDS: {
|
|
|
117
156
|
};
|
|
118
157
|
export declare const DEFAULT_STORE_DATA: Partial<StoreDocument>;
|
|
119
158
|
export declare function generateStoreSlug(storeName: string, ownerDisplayName: string): string;
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
addressLine2?: string;
|
|
127
|
-
landmark?: string;
|
|
128
|
-
city: string;
|
|
129
|
-
state: string;
|
|
130
|
-
postalCode: string;
|
|
131
|
-
country: string;
|
|
132
|
-
isDefault: boolean;
|
|
133
|
-
createdAt: Date;
|
|
134
|
-
updatedAt: Date;
|
|
135
|
-
}
|
|
159
|
+
import type { AddressDocument as _Addr, AddressCreateInput as _AddrCreate, AddressUpdateInput as _AddrUpdate } from "../../addresses/schemas";
|
|
160
|
+
export type StoreAddressDocument = _Addr;
|
|
161
|
+
export type StoreAddressCreateInput = _AddrCreate;
|
|
162
|
+
export type StoreAddressUpdateInput = _AddrUpdate;
|
|
163
|
+
export { ADDRESS_FIELDS as STORE_ADDRESS_FIELDS, ADDRESS_INDEXED_FIELDS as STORE_ADDRESS_INDEXED_FIELDS, ADDRESS_PUBLIC_FIELDS as STORE_ADDRESS_PUBLIC_FIELDS, ADDRESS_UPDATABLE_FIELDS as STORE_ADDRESS_UPDATABLE_FIELDS, DEFAULT_ADDRESS_DATA as DEFAULT_STORE_ADDRESS_DATA, } from "../../addresses/schemas";
|
|
164
|
+
/** @deprecated SB-UNI-A — literal alias only. Use ADDRESSES_COLLECTION. */
|
|
136
165
|
export declare const STORE_ADDRESS_SUBCOLLECTION: "addresses";
|
|
137
|
-
export declare const STORE_ADDRESS_INDEXED_FIELDS: readonly ["isDefault", "createdAt"];
|
|
138
|
-
export declare const DEFAULT_STORE_ADDRESS_DATA: Partial<StoreAddressDocument>;
|
|
139
|
-
export declare const STORE_ADDRESS_PUBLIC_FIELDS: readonly ["id", "label", "fullName", "phone", "addressLine1", "addressLine2", "landmark", "city", "state", "postalCode", "country", "isDefault", "createdAt", "updatedAt"];
|
|
140
|
-
export declare const STORE_ADDRESS_UPDATABLE_FIELDS: readonly ["label", "fullName", "phone", "addressLine1", "addressLine2", "landmark", "city", "state", "postalCode", "country", "isDefault"];
|
|
141
|
-
export type StoreAddressCreateInput = Omit<StoreAddressDocument, "id" | "createdAt" | "updatedAt">;
|
|
142
|
-
export type StoreAddressUpdateInput = Partial<Pick<StoreAddressDocument, (typeof STORE_ADDRESS_UPDATABLE_FIELDS)[number]>>;
|
|
143
|
-
export declare const STORE_ADDRESS_FIELDS: {
|
|
144
|
-
readonly ID: "id";
|
|
145
|
-
readonly LABEL: "label";
|
|
146
|
-
readonly FULL_NAME: "fullName";
|
|
147
|
-
readonly PHONE: "phone";
|
|
148
|
-
readonly ADDRESS_LINE_1: "addressLine1";
|
|
149
|
-
readonly ADDRESS_LINE_2: "addressLine2";
|
|
150
|
-
readonly LANDMARK: "landmark";
|
|
151
|
-
readonly CITY: "city";
|
|
152
|
-
readonly STATE: "state";
|
|
153
|
-
readonly POSTAL_CODE: "postalCode";
|
|
154
|
-
readonly COUNTRY: "country";
|
|
155
|
-
readonly IS_DEFAULT: "isDefault";
|
|
156
|
-
readonly CREATED_AT: "createdAt";
|
|
157
|
-
readonly UPDATED_AT: "updatedAt";
|
|
158
|
-
};
|
|
@@ -57,53 +57,6 @@ export function generateStoreSlug(storeName, ownerDisplayName) {
|
|
|
57
57
|
const owner = slugify(ownerDisplayName?.split(" ")[0] ?? "seller");
|
|
58
58
|
return `${name}-by-${owner}`;
|
|
59
59
|
}
|
|
60
|
+
export { ADDRESS_FIELDS as STORE_ADDRESS_FIELDS, ADDRESS_INDEXED_FIELDS as STORE_ADDRESS_INDEXED_FIELDS, ADDRESS_PUBLIC_FIELDS as STORE_ADDRESS_PUBLIC_FIELDS, ADDRESS_UPDATABLE_FIELDS as STORE_ADDRESS_UPDATABLE_FIELDS, DEFAULT_ADDRESS_DATA as DEFAULT_STORE_ADDRESS_DATA, } from "../../addresses/schemas";
|
|
61
|
+
/** @deprecated SB-UNI-A — literal alias only. Use ADDRESSES_COLLECTION. */
|
|
60
62
|
export const STORE_ADDRESS_SUBCOLLECTION = "addresses";
|
|
61
|
-
export const STORE_ADDRESS_INDEXED_FIELDS = ["isDefault", "createdAt"];
|
|
62
|
-
export const DEFAULT_STORE_ADDRESS_DATA = {
|
|
63
|
-
isDefault: false,
|
|
64
|
-
};
|
|
65
|
-
export const STORE_ADDRESS_PUBLIC_FIELDS = [
|
|
66
|
-
"id",
|
|
67
|
-
"label",
|
|
68
|
-
"fullName",
|
|
69
|
-
"phone",
|
|
70
|
-
"addressLine1",
|
|
71
|
-
"addressLine2",
|
|
72
|
-
"landmark",
|
|
73
|
-
"city",
|
|
74
|
-
"state",
|
|
75
|
-
"postalCode",
|
|
76
|
-
"country",
|
|
77
|
-
"isDefault",
|
|
78
|
-
"createdAt",
|
|
79
|
-
"updatedAt",
|
|
80
|
-
];
|
|
81
|
-
export const STORE_ADDRESS_UPDATABLE_FIELDS = [
|
|
82
|
-
"label",
|
|
83
|
-
"fullName",
|
|
84
|
-
"phone",
|
|
85
|
-
"addressLine1",
|
|
86
|
-
"addressLine2",
|
|
87
|
-
"landmark",
|
|
88
|
-
"city",
|
|
89
|
-
"state",
|
|
90
|
-
"postalCode",
|
|
91
|
-
"country",
|
|
92
|
-
"isDefault",
|
|
93
|
-
];
|
|
94
|
-
export const STORE_ADDRESS_FIELDS = {
|
|
95
|
-
ID: "id",
|
|
96
|
-
LABEL: "label",
|
|
97
|
-
FULL_NAME: "fullName",
|
|
98
|
-
PHONE: "phone",
|
|
99
|
-
ADDRESS_LINE_1: "addressLine1",
|
|
100
|
-
ADDRESS_LINE_2: "addressLine2",
|
|
101
|
-
LANDMARK: "landmark",
|
|
102
|
-
CITY: "city",
|
|
103
|
-
STATE: "state",
|
|
104
|
-
POSTAL_CODE: "postalCode",
|
|
105
|
-
COUNTRY: "country",
|
|
106
|
-
IS_DEFAULT: "isDefault",
|
|
107
|
-
CREATED_AT: "createdAt",
|
|
108
|
-
UPDATED_AT: "updatedAt",
|
|
109
|
-
};
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
export * from "./actions";
|
|
7
7
|
export { StoresRepository } from "./repository/stores.repository";
|
|
8
8
|
export { StoreRepository, storeRepository, } from "./repository/store.repository";
|
|
9
|
-
export { storeAddressRepository } from "./repository/store-address.repository";
|
|
10
9
|
export { GET as storesGET, GET } from "./api/route";
|
|
11
10
|
export { GET as storeSlugGET } from "./api/[storeSlug]/route";
|
|
12
11
|
export { GET as storeProductsGET } from "./api/[storeSlug]/products/route";
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
export * from "./actions";
|
|
7
7
|
export { StoresRepository } from "./repository/stores.repository";
|
|
8
8
|
export { StoreRepository, storeRepository, } from "./repository/store.repository";
|
|
9
|
-
|
|
9
|
+
// SB-UNI-A 2026-05-13 — storeAddressRepository deleted. Use addressesRepository
|
|
10
|
+
// (top-level addresses collection with ownerType:"store").
|
|
10
11
|
export { GET as storesGET, GET } from "./api/route";
|
|
11
12
|
export { GET as storeSlugGET } from "./api/[storeSlug]/route";
|
|
12
13
|
export { GET as storeProductsGET } from "./api/[storeSlug]/products/route";
|
|
@@ -8,16 +8,14 @@ export interface WishlistCapEventDetail {
|
|
|
8
8
|
/**
|
|
9
9
|
* useWishlistCount
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* Server-authoritative count for the badge. For authenticated users this
|
|
12
|
+
* mirrors `/api/wishlist` via react-query (same `["wishlist", uid]` key as
|
|
13
|
+
* `useWishlist`), so mutations on the wishlist page propagate to the badge
|
|
14
|
+
* via standard query invalidation. For guests, falls back to the localStorage
|
|
15
|
+
* guest store.
|
|
13
16
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* 2. Pushes any guest-only localStorage items up to Firestore.
|
|
17
|
-
*
|
|
18
|
-
* While authenticated:
|
|
19
|
-
* - Syncs localStorage → Firestore every 60 s.
|
|
20
|
-
* - Also syncs when the user visits /wishlist or /cart.
|
|
17
|
+
* On login the hook pushes any guest items up to the server once, then clears
|
|
18
|
+
* the guest store so the two stores cannot drift.
|
|
21
19
|
*/
|
|
22
20
|
export declare function useWishlistCount(userId: string | null | undefined): number;
|
|
23
21
|
/**
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { useEffect, useRef } from "react";
|
|
3
|
+
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
3
4
|
import { usePathname } from "next/navigation";
|
|
5
|
+
import { apiClient } from "../../../http";
|
|
4
6
|
import { useGuestWishlist } from "./useGuestWishlist";
|
|
5
|
-
import { getGuestWishlistItems } from "../utils/guest-wishlist";
|
|
7
|
+
import { clearGuestWishlist, getGuestWishlistItems, } from "../utils/guest-wishlist";
|
|
6
8
|
import { WISHLIST_MAX } from "../../../constants/limits";
|
|
7
|
-
|
|
9
|
+
import { WISHLIST_ENDPOINTS } from "../../../constants/api-endpoints";
|
|
8
10
|
const WISHLIST_MERGE_API = "/api/wishlist/merge";
|
|
9
|
-
const SYNC_MS = 60000;
|
|
10
|
-
function getSyncableItems() {
|
|
11
|
-
return getGuestWishlistItems().filter((i) => ["product", "auction", "preorder"].includes(i.type));
|
|
12
|
-
}
|
|
13
11
|
/** Custom event fired when the server reports the wishlist is full during a merge. */
|
|
14
12
|
export const WISHLIST_CAP_EVENT = "appkit/wishlist/full";
|
|
15
13
|
function dispatchCapEvent(detail) {
|
|
@@ -17,103 +15,86 @@ function dispatchCapEvent(detail) {
|
|
|
17
15
|
return;
|
|
18
16
|
window.dispatchEvent(new CustomEvent(WISHLIST_CAP_EVENT, { detail }));
|
|
19
17
|
}
|
|
20
|
-
function
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
return;
|
|
24
|
-
fetch(WISHLIST_MERGE_API, {
|
|
25
|
-
method: "POST",
|
|
26
|
-
headers: { "Content-Type": "application/json" },
|
|
27
|
-
body: JSON.stringify({ items: items.map((i) => ({ productId: i.itemId })) }),
|
|
28
|
-
})
|
|
29
|
-
.then(async (res) => {
|
|
30
|
-
if (!res.ok)
|
|
31
|
-
return;
|
|
32
|
-
const json = (await res.json().catch(() => null));
|
|
33
|
-
const data = json?.data;
|
|
34
|
-
if (data?.capReached) {
|
|
35
|
-
dispatchCapEvent({
|
|
36
|
-
limit: data.limit ?? WISHLIST_MAX,
|
|
37
|
-
current: data.limit ?? WISHLIST_MAX,
|
|
38
|
-
skippedFull: data.skippedFull ?? 0,
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
})
|
|
42
|
-
.catch(() => { });
|
|
18
|
+
async function fetchServerCount(userId) {
|
|
19
|
+
const data = await apiClient.get(WISHLIST_ENDPOINTS.BY_USER(userId));
|
|
20
|
+
return data?.total ?? data?.items?.length ?? 0;
|
|
43
21
|
}
|
|
44
22
|
/**
|
|
45
23
|
* useWishlistCount
|
|
46
24
|
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
25
|
+
* Server-authoritative count for the badge. For authenticated users this
|
|
26
|
+
* mirrors `/api/wishlist` via react-query (same `["wishlist", uid]` key as
|
|
27
|
+
* `useWishlist`), so mutations on the wishlist page propagate to the badge
|
|
28
|
+
* via standard query invalidation. For guests, falls back to the localStorage
|
|
29
|
+
* guest store.
|
|
49
30
|
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* 2. Pushes any guest-only localStorage items up to Firestore.
|
|
53
|
-
*
|
|
54
|
-
* While authenticated:
|
|
55
|
-
* - Syncs localStorage → Firestore every 60 s.
|
|
56
|
-
* - Also syncs when the user visits /wishlist or /cart.
|
|
31
|
+
* On login the hook pushes any guest items up to the server once, then clears
|
|
32
|
+
* the guest store so the two stores cannot drift.
|
|
57
33
|
*/
|
|
58
34
|
export function useWishlistCount(userId) {
|
|
59
|
-
const { count
|
|
60
|
-
const
|
|
61
|
-
const mergedRef = useRef(
|
|
35
|
+
const { count: guestCount } = useGuestWishlist();
|
|
36
|
+
const queryClient = useQueryClient();
|
|
37
|
+
const mergedRef = useRef(null);
|
|
62
38
|
const pathname = usePathname();
|
|
63
|
-
|
|
39
|
+
const { data: serverTotal } = useQuery({
|
|
40
|
+
queryKey: ["wishlist", userId],
|
|
41
|
+
queryFn: () => fetchServerCount(userId),
|
|
42
|
+
enabled: !!userId,
|
|
43
|
+
staleTime: 30000,
|
|
44
|
+
});
|
|
45
|
+
// Merge on login: push guest items → server once, then clear local store.
|
|
64
46
|
useEffect(() => {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
// Only fire on the null/undefined → real-uid transition
|
|
68
|
-
if (!userId || prev === userId)
|
|
69
|
-
return;
|
|
70
|
-
if (mergedRef.current)
|
|
47
|
+
if (!userId) {
|
|
48
|
+
mergedRef.current = null;
|
|
71
49
|
return;
|
|
72
|
-
mergedRef.current = true;
|
|
73
|
-
async function merge() {
|
|
74
|
-
try {
|
|
75
|
-
// 1. Pull server wishlist into localStorage (handles new device login)
|
|
76
|
-
const resp = await fetch(WISHLIST_API);
|
|
77
|
-
if (resp.ok) {
|
|
78
|
-
const json = await resp.json();
|
|
79
|
-
const firestoreItems = json.data?.items ?? [];
|
|
80
|
-
for (const item of firestoreItems) {
|
|
81
|
-
add(item.productId, "product", {
|
|
82
|
-
title: item.productTitle,
|
|
83
|
-
image: item.productImage,
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
// 2. Push any guest-only items up to Firestore
|
|
88
|
-
pushToFirestore();
|
|
89
|
-
}
|
|
90
|
-
catch {
|
|
91
|
-
// Non-fatal — local count still shows correctly
|
|
92
|
-
}
|
|
93
50
|
}
|
|
94
|
-
|
|
95
|
-
}, [userId, add]);
|
|
96
|
-
// Reset merge flag on logout so next login re-runs the merge
|
|
97
|
-
useEffect(() => {
|
|
98
|
-
if (!userId)
|
|
99
|
-
mergedRef.current = false;
|
|
100
|
-
}, [userId]);
|
|
101
|
-
// 60 s periodic sync: localStorage → Firestore
|
|
102
|
-
useEffect(() => {
|
|
103
|
-
if (!userId)
|
|
51
|
+
if (mergedRef.current === userId)
|
|
104
52
|
return;
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
53
|
+
mergedRef.current = userId;
|
|
54
|
+
const items = getGuestWishlistItems().filter((i) => ["product", "auction", "preorder"].includes(i.type));
|
|
55
|
+
const finish = () => {
|
|
56
|
+
clearGuestWishlist();
|
|
57
|
+
void queryClient.invalidateQueries({ queryKey: ["wishlist", userId] });
|
|
58
|
+
};
|
|
59
|
+
if (items.length === 0) {
|
|
60
|
+
finish();
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
fetch(WISHLIST_MERGE_API, {
|
|
64
|
+
method: "POST",
|
|
65
|
+
headers: { "Content-Type": "application/json" },
|
|
66
|
+
body: JSON.stringify({
|
|
67
|
+
items: items.map((i) => ({ productId: i.itemId })),
|
|
68
|
+
}),
|
|
69
|
+
})
|
|
70
|
+
.then(async (res) => {
|
|
71
|
+
if (!res.ok)
|
|
72
|
+
return;
|
|
73
|
+
const json = (await res.json().catch(() => null));
|
|
74
|
+
const data = json?.data;
|
|
75
|
+
if (data?.capReached) {
|
|
76
|
+
dispatchCapEvent({
|
|
77
|
+
limit: data.limit ?? WISHLIST_MAX,
|
|
78
|
+
current: data.limit ?? WISHLIST_MAX,
|
|
79
|
+
skippedFull: data.skippedFull ?? 0,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
})
|
|
83
|
+
.catch(() => { })
|
|
84
|
+
.finally(finish);
|
|
85
|
+
}, [userId, queryClient]);
|
|
86
|
+
// Refetch when the user lands on /wishlist or /cart so the badge matches
|
|
87
|
+
// whatever the page is about to render.
|
|
109
88
|
useEffect(() => {
|
|
110
89
|
if (!userId || !pathname)
|
|
111
90
|
return;
|
|
112
91
|
if (/\/(wishlist|cart)(\/|$)/.test(pathname)) {
|
|
113
|
-
|
|
92
|
+
void queryClient.invalidateQueries({ queryKey: ["wishlist", userId] });
|
|
114
93
|
}
|
|
115
|
-
}, [pathname, userId]);
|
|
116
|
-
|
|
94
|
+
}, [pathname, userId, queryClient]);
|
|
95
|
+
if (userId)
|
|
96
|
+
return serverTotal ?? 0;
|
|
97
|
+
return guestCount;
|
|
117
98
|
}
|
|
118
99
|
/**
|
|
119
100
|
* useWishlistCountWithLimit — extends useWishlistCount with limit + isFull so
|
|
@@ -24,7 +24,7 @@ export interface WishlistProductData {
|
|
|
24
24
|
status?: "draft" | "published" | "archived" | "sold" | "out_of_stock" | "discontinued";
|
|
25
25
|
isFeatured?: boolean;
|
|
26
26
|
/** Canonical listing-kind discriminator (SB1-G Phase 4). */
|
|
27
|
-
listingType?: "standard" | "auction" | "pre-order" | "prize-draw";
|
|
27
|
+
listingType?: "standard" | "auction" | "pre-order" | "prize-draw" | "classified" | "digital-code" | "live";
|
|
28
28
|
}
|
|
29
29
|
/** WishlistItem enriched with inline product details returned by the wishlist GET endpoint. */
|
|
30
30
|
export interface EnrichedWishlistItem extends WishlistItem {
|
package/dist/index.d.ts
CHANGED
|
@@ -475,7 +475,7 @@ export type { RbacHookReturn } from "./security/index";
|
|
|
475
475
|
export type { ResolvedUser } from "./security/index";
|
|
476
476
|
export type { RoleDefinition } from "./security/index";
|
|
477
477
|
export type { UserRole } from "./security/index";
|
|
478
|
-
export {
|
|
478
|
+
export { AddressesRepository } from "./repositories/index";
|
|
479
479
|
export { BaseRepository } from "./repositories/index";
|
|
480
480
|
export { BlogRepository } from "./repositories/index";
|
|
481
481
|
export { CartRepository } from "./repositories/index";
|
|
@@ -500,7 +500,7 @@ export { SessionRepository } from "./repositories/index";
|
|
|
500
500
|
export { SmsCounterRepository } from "./repositories/index";
|
|
501
501
|
export { StoreRepository } from "./repositories/index";
|
|
502
502
|
export { UserRepository } from "./repositories/index";
|
|
503
|
-
export {
|
|
503
|
+
export { addressesRepository } from "./repositories/index";
|
|
504
504
|
export { bidRepository } from "./repositories/index";
|
|
505
505
|
export { blogRepository } from "./repositories/index";
|
|
506
506
|
export { carouselRepository } from "./repositories/index";
|
|
@@ -524,7 +524,6 @@ export { reviewRepository } from "./repositories/index";
|
|
|
524
524
|
export { sessionRepository } from "./repositories/index";
|
|
525
525
|
export { siteSettingsRepository } from "./repositories/index";
|
|
526
526
|
export { smsCounterRepository } from "./repositories/index";
|
|
527
|
-
export { storeAddressRepository } from "./repositories/index";
|
|
528
527
|
export { storeRepository } from "./repositories/index";
|
|
529
528
|
export { scammerRepository } from "./repositories/index";
|
|
530
529
|
export { productFeaturesRepository } from "./repositories/index";
|
|
@@ -1056,6 +1055,12 @@ export type { AdminBrandEditorViewProps } from "./features/admin/index";
|
|
|
1056
1055
|
export { AdminCategoriesView } from "./features/admin/index";
|
|
1057
1056
|
export { AdminCategoryEditorView } from "./features/admin/index";
|
|
1058
1057
|
export type { AdminCategoryEditorViewProps } from "./features/admin/index";
|
|
1058
|
+
export { AdminBundlesView } from "./features/admin/index";
|
|
1059
|
+
export type { AdminBundlesViewProps } from "./features/admin/index";
|
|
1060
|
+
export { AdminBundleEditorView } from "./features/admin/index";
|
|
1061
|
+
export type { AdminBundleEditorViewProps } from "./features/admin/index";
|
|
1062
|
+
export { BundleItemsPicker, defaultBundleItemsFetch, } from "./features/categories/components/BundleItemsPicker";
|
|
1063
|
+
export type { BundleItemsPickerProps, BundleItemSearchResult, } from "./features/categories/components/BundleItemsPicker";
|
|
1059
1064
|
export { AdminCouponsView } from "./features/admin/index";
|
|
1060
1065
|
export { AdminCouponEditorView } from "./features/admin/index";
|
|
1061
1066
|
export type { AdminCouponEditorViewProps } from "./features/admin/index";
|
|
@@ -1485,6 +1490,7 @@ export { getCart } from "./features/cart/server";
|
|
|
1485
1490
|
export { mergeGuestCart } from "./features/cart/server";
|
|
1486
1491
|
export { removeCartItem } from "./features/cart/server";
|
|
1487
1492
|
export { updateCartItem } from "./features/cart/server";
|
|
1493
|
+
export { updateCartItemShipping } from "./features/cart/server";
|
|
1488
1494
|
export { CART_COLLECTION } from "./features/cart/schemas/index";
|
|
1489
1495
|
export { CART_FIELDS } from "./features/cart/schemas/index";
|
|
1490
1496
|
export { CART_INDEXED_FIELDS } from "./features/cart/schemas/index";
|
|
@@ -1717,6 +1723,10 @@ export { EventLeaderboard } from "./features/events/index";
|
|
|
1717
1723
|
export { EventParticipateView } from "./features/events/index";
|
|
1718
1724
|
export { EventPollWidget } from "./features/events/index";
|
|
1719
1725
|
export { EventStatusBadge } from "./features/events/index";
|
|
1726
|
+
export { EventRaffleWinnerView } from "./features/events/index";
|
|
1727
|
+
export type { EventRaffleWinnerViewProps } from "./features/events/index";
|
|
1728
|
+
export { SpinWheelView } from "./features/events/index";
|
|
1729
|
+
export type { SpinWheelViewProps } from "./features/events/index";
|
|
1720
1730
|
export { EventsListView } from "./features/events/index";
|
|
1721
1731
|
export { EventsListPageView } from "./features/events/components/EventsListPageView";
|
|
1722
1732
|
export { EventsIndexListing } from "./features/events/index";
|
|
@@ -2141,6 +2151,12 @@ export { OrderCard } from "./features/orders/index";
|
|
|
2141
2151
|
export { OrderFilters } from "./features/orders/index";
|
|
2142
2152
|
export { OrderStatusValues } from "./features/orders/index";
|
|
2143
2153
|
export { OrdersList } from "./features/orders/index";
|
|
2154
|
+
export { OrderSiblingPayments } from "./features/orders/index";
|
|
2155
|
+
export type { OrderSiblingPaymentsProps } from "./features/orders/index";
|
|
2156
|
+
export { RefundHistoryTable } from "./features/orders/index";
|
|
2157
|
+
export type { RefundHistoryTableProps } from "./features/orders/index";
|
|
2158
|
+
export { RefundRequestView } from "./features/orders/index";
|
|
2159
|
+
export type { RefundRequestViewProps } from "./features/orders/index";
|
|
2144
2160
|
export { PaymentGatewayValues } from "./features/orders/index";
|
|
2145
2161
|
export { PaymentMethodValues } from "./features/orders/index";
|
|
2146
2162
|
export { PaymentStatusValues } from "./features/orders/index";
|
|
@@ -2169,6 +2185,7 @@ export type { OrderAdminUpdateInput } from "./features/orders/index";
|
|
|
2169
2185
|
export type { AppliedOrderDiscount } from "./features/orders/index";
|
|
2170
2186
|
export type { OrderCreateInput } from "./features/orders/index";
|
|
2171
2187
|
export type { OrderDocument } from "./features/orders/index";
|
|
2188
|
+
export type { OrderRefundEvent, RefundType } from "./features/orders/schemas/firestore";
|
|
2172
2189
|
export type { OrderDocumentItem } from "./features/orders/index";
|
|
2173
2190
|
export type { OrderFilterVariant } from "./features/orders/index";
|
|
2174
2191
|
export type { OrderFiltersProps } from "./features/orders/index";
|
|
@@ -2214,6 +2231,7 @@ export type { PaymentSettings } from "./features/payments/index";
|
|
|
2214
2231
|
export type { PayoutBankAccount } from "./features/payments/index";
|
|
2215
2232
|
export type { PayoutCreateInput } from "./features/payments/index";
|
|
2216
2233
|
export type { PayoutDocument } from "./features/payments/index";
|
|
2234
|
+
export type { PayoutRefundDeduction } from "./features/payments/index";
|
|
2217
2235
|
export type { PayoutPaymentMethod } from "./features/payments/index";
|
|
2218
2236
|
export type { PayoutUpdateInput } from "./features/payments/index";
|
|
2219
2237
|
export type { UsePaymentEventOptions } from "./features/payments/index";
|
|
@@ -2245,6 +2263,12 @@ export { preOrdersPOST } from "./features/pre-orders/server";
|
|
|
2245
2263
|
export { AuctionDetailView } from "./features/products/index";
|
|
2246
2264
|
export { AuctionDetailPageView } from "./features/auctions/index";
|
|
2247
2265
|
export { AuctionsListView } from "./features/auctions/components/AuctionsListView";
|
|
2266
|
+
export { BundlesListView } from "./features/categories/components/BundlesListView";
|
|
2267
|
+
export type { BundlesListViewProps } from "./features/categories/components/BundlesListView";
|
|
2268
|
+
export { BundleDetailView } from "./features/categories/components/BundleDetailView";
|
|
2269
|
+
export type { BundleDetailViewProps } from "./features/categories/components/BundleDetailView";
|
|
2270
|
+
export { BundleBuyNowCta } from "./features/categories/components/BundleBuyNowCta";
|
|
2271
|
+
export type { BundleBuyNowCtaProps } from "./features/categories/components/BundleBuyNowCta";
|
|
2248
2272
|
export { AuctionsView } from "./features/products/index";
|
|
2249
2273
|
export { BidHistory } from "./features/products/index";
|
|
2250
2274
|
export { BuyBar } from "./features/products/index";
|
|
@@ -2277,14 +2301,14 @@ export { PRODUCT_UPDATABLE_FIELDS } from "./features/products/index";
|
|
|
2277
2301
|
export { PlaceBidForm } from "./features/products/index";
|
|
2278
2302
|
export { PreOrderDetailView } from "./features/products/index";
|
|
2279
2303
|
export { PreOrdersView } from "./features/products/index";
|
|
2280
|
-
export { PrizeDrawsListingView } from "./features/products/
|
|
2281
|
-
export type { PrizeDrawsListingViewProps } from "./features/products/
|
|
2304
|
+
export { PrizeDrawsListingView } from "./features/products/components/PrizeDrawsListingView";
|
|
2305
|
+
export type { PrizeDrawsListingViewProps } from "./features/products/components/PrizeDrawsListingView";
|
|
2282
2306
|
export { PrizeDrawsIndexListing } from "./features/products/index";
|
|
2283
2307
|
export type { PrizeDrawsIndexListingProps } from "./features/products/index";
|
|
2284
2308
|
export { MarketplacePrizeDrawCard } from "./features/products/index";
|
|
2285
2309
|
export type { MarketplacePrizeDrawCardProps, MarketplacePrizeDrawCardData, MarketplacePrizeDrawCardLabels, } from "./features/products/index";
|
|
2286
|
-
export { PrizeDrawDetailPageView } from "./features/products/
|
|
2287
|
-
export type { PrizeDrawDetailPageViewProps } from "./features/products/
|
|
2310
|
+
export { PrizeDrawDetailPageView } from "./features/products/components/PrizeDrawDetailPageView";
|
|
2311
|
+
export type { PrizeDrawDetailPageViewProps } from "./features/products/components/PrizeDrawDetailPageView";
|
|
2288
2312
|
export { PrizeDrawEntryActions } from "./features/products/index";
|
|
2289
2313
|
export type { PrizeDrawEntryActionsProps } from "./features/products/index";
|
|
2290
2314
|
export { ProductCard } from "./features/products/index";
|
|
@@ -2315,7 +2339,12 @@ export { createProductId } from "./features/products/index";
|
|
|
2315
2339
|
export { getProductFilterKeys } from "./features/products/index";
|
|
2316
2340
|
export { getProductSortOptions } from "./features/products/index";
|
|
2317
2341
|
export { getProductTableColumns } from "./features/products/index";
|
|
2318
|
-
export { normalizeListingType, isAuctionListing, isPreOrderListing, isStandardListing, } from "./features/products/index";
|
|
2342
|
+
export { normalizeListingType, isAuctionListing, isPreOrderListing, isStandardListing, isPrizeDrawListing, isClassifiedListing, isDigitalCodeListing, isLiveListing, } from "./features/products/index";
|
|
2343
|
+
export { isListingTypeEnabled, isCategoryTypeEnabled, enabledListingTypes, enabledCategoryTypes, } from "./_internal/shared/listing-types/feature-flags";
|
|
2344
|
+
export { actionTracker, setActionTrackerSink, resetActionTrackerSink, type ActionEvent, type ActionTrackerSink, } from "./_internal/shared/listing-types/action-tracker";
|
|
2345
|
+
export { cartRequiresShipping, cartIsDigitalOnly, cartIsChatOnly, } from "./_internal/shared/listing-types/cart-shipping";
|
|
2346
|
+
export { ACTIONS, action, act, canPerformAction, actionsForListingType, actionLabel, type ActionDef, type ActionKind, type ActionResource, type ActionTree, type ActionConfirmation, } from "./_internal/shared/actions/action-registry";
|
|
2347
|
+
export { isAdminUser, isSellerUser, isModeratorUser, isEmployeeUser, isBuyerUser, } from "./features/auth/role-predicates";
|
|
2319
2348
|
export { sanitizeProductForPublic, sanitizeProductsForPublic } from "./features/products/index";
|
|
2320
2349
|
export { productAdminColumns } from "./features/products/index";
|
|
2321
2350
|
export { productImageSchema } from "./features/products/index";
|
|
@@ -2781,6 +2810,7 @@ export type { StoreAuctionsResponse } from "./features/stores/index";
|
|
|
2781
2810
|
export type { StoreAuctionsViewProps } from "./features/stores/index";
|
|
2782
2811
|
export type { StoreDetail } from "./features/stores/index";
|
|
2783
2812
|
export type { StoreDocument } from "./features/stores/index";
|
|
2813
|
+
export type { StoreShippingConfig, ShippingProviderConfig, ShippingProviderType } from "./features/stores/schemas/firestore";
|
|
2784
2814
|
export type { StoreListItem } from "./features/stores/index";
|
|
2785
2815
|
export type { StoreListParams } from "./features/stores/index";
|
|
2786
2816
|
export type { StoreListResponse } from "./features/stores/index";
|
|
@@ -2914,7 +2944,8 @@ export { historyRepository, UserHistoryRepository, trackHistoryView, getHistoryF
|
|
|
2914
2944
|
export { useMediaQuery, useBreakpoint, useClickOutside, useKeyPress, useLongPress, useGesture, useSwipe, ThemeProvider, useTheme, useSession, useAuth, useCountdown, useCamera, useBulkSelection, useUrlTable, usePendingFilters, usePendingTable, useUnsavedChanges, UNSAVED_CHANGES_EVENT, useBulkAction, useContainerGrid, useMessage, useVisibleItems, useModalStack, RTDBPayloadStatus, } from "./react/index";
|
|
2915
2945
|
export { RoleGate, ProtectedRoute, SocialAuthButtons, AuthStatusPanel, LoginForm, RegisterForm, ForgotPasswordView, ResetPasswordView, VerifyEmailView, OAuthLoadingView, } from "./features/auth/index";
|
|
2916
2946
|
export type { RoleGateProps, ProtectedRouteProps, AuthGuardUser, AuthRouteConfig, LoginFormProps, LoginFormValues, RegisterFormProps, RegisterFormValues, ForgotPasswordViewProps, ResetPasswordViewProps, VerifyEmailViewProps, } from "./features/auth/index";
|
|
2917
|
-
export { CartItemRow, CartDrawer, CartView, CartSummary } from "./features/cart/index";
|
|
2947
|
+
export { CartItemRow, CartDrawer, CartView, CartSummary, ShippingPicker } from "./features/cart/index";
|
|
2948
|
+
export type { ShippingPickerProps } from "./features/cart/index";
|
|
2918
2949
|
export { CheckoutView, CheckoutAddressStep, CheckoutOtpModal, CheckoutSuccessView } from "./features/cart/index";
|
|
2919
2950
|
export { CheckoutStepper, useCheckout } from "./features/checkout/index";
|
|
2920
2951
|
export { useProfile as useCurrentProfile, useUpdateProfile as useUpdateCurrentProfile } from "./features/account/index";
|
|
@@ -2930,6 +2961,7 @@ export type { SessionUser } from "./react/index";
|
|
|
2930
2961
|
export type { UseUrlTableOptions } from "./react/index";
|
|
2931
2962
|
export { SUCCESS_MESSAGES } from "./values/index";
|
|
2932
2963
|
export { splitCartIntoOrderGroups } from "./features/orders/index";
|
|
2964
|
+
export { groupOrderItemsByBundle, type BundleOrderGroup, type OrderItemForBundleGrouping, } from "./features/orders/index";
|
|
2933
2965
|
export { buildSieveFilters } from "./utils/filter.helper";
|
|
2934
2966
|
export { formatFileSize } from "./utils/number.formatter";
|
|
2935
2967
|
export { formatMonthYear } from "./utils/date.formatter";
|
|
@@ -2951,11 +2983,18 @@ export type { ProductFeatureAdminCreatePayload, ProductFeatureStoreCreatePayload
|
|
|
2951
2983
|
export { LISTING_PARAM_NAMES, parseListingParams, parseListingSearchParams, serializeListingParams, } from "./utils/listing-params";
|
|
2952
2984
|
export type { ListingParams } from "./utils/listing-params";
|
|
2953
2985
|
export { PRODUCT_FEATURE_CATEGORY_OPTIONS, PRODUCT_FEATURE_PRODUCT_TYPE_OPTIONS, PRODUCT_FEATURE_SCOPE_OPTIONS, PRODUCT_FEATURE_ICON_COLOR_OPTIONS, PRODUCT_FEATURE_SCOPE_TABS, PRODUCT_FEATURE_DEFAULT_DISPLAY_ORDER, PRODUCT_FEATURE_CARD_MAX_VISIBLE, PRODUCT_FEATURE_QUERY_STALE_MS, } from "./features/products/constants/product-features.constants";
|
|
2986
|
+
export { CATEGORY_PAGE_TABS, STORE_PAGE_TABS, SELLER_LISTING_TABS, SEARCH_RESULT_TABS, } from "./features/products/constants/listing-tabs";
|
|
2987
|
+
export type { ListingTab, CategoryTabId, StoreTabId, SellerListingTabId, SearchTabId, } from "./features/products/constants/listing-tabs";
|
|
2988
|
+
export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs";
|
|
2989
|
+
export type { AdminFilterTab } from "./features/admin/constants/filter-tabs";
|
|
2954
2990
|
export { GROUPED_LISTINGS_COLLECTION } from "./features/grouped/schemas/firestore";
|
|
2955
2991
|
export { CategoryBundlesListing } from "./features/categories/components/CategoryBundlesListing";
|
|
2956
2992
|
export type { CategoryBundlesListingProps } from "./features/categories/components/CategoryBundlesListing";
|
|
2957
2993
|
export type { BundleQueryRule } from "./features/categories/schemas/firestore";
|
|
2958
2994
|
export { BUNDLE_MIN_ITEMS, BUNDLE_MAX_ITEMS, BUNDLE_MAX_PER_USER_DEFAULT, BUNDLES_PAGE_SIZE, BUNDLES_FEATURED_LIMIT, } from "./_internal/shared/features/categories/bundle-config";
|
|
2995
|
+
export { BUNDLE_COPY, BUNDLE_STOCK_VARIANT, } from "./_internal/shared/features/categories/bundle-copy";
|
|
2996
|
+
export { REFUND_COPY } from "./_internal/shared/features/orders/refund-copy";
|
|
2997
|
+
export { bundleCreateSchema, bundleUpdateSchema, bundleQueryRuleSchema, bundleDisplaySchema, type BundleCreateBody, type BundleUpdateBody, } from "./_internal/shared/features/categories/bundle-schemas";
|
|
2959
2998
|
export type { GroupedListingDocument, GroupTheme, GroupVisibility } from "./features/grouped/schemas/firestore";
|
|
2960
2999
|
export { scammersSeedData } from "./seed/index";
|
|
2961
3000
|
export { productFeaturesSeedData } from "./seed/index";
|
|
@@ -3004,5 +3043,7 @@ export { LISTING_TYPE_CAPABILITIES, capabilityFor, canAddToCart, canBid, support
|
|
|
3004
3043
|
export type { ListingTypeCapability } from "./_internal/shared/listing-types/capabilities";
|
|
3005
3044
|
export { LISTING_TYPE_REGISTRY, pluginFor } from "./_internal/shared/listing-types/_registry";
|
|
3006
3045
|
export type { ListingTypePlugin } from "./_internal/shared/listing-types/_registry";
|
|
3046
|
+
export { getListingRule, getCategoryRule, pickOrderType, getSplitKey, runSyncPreflight, CHECKOUT_RULES, CATEGORY_CHECKOUT_RULES, CHECKOUT_MAX_ORDERS_PER_TX, PRIZE_DRAW_MAX_REVEALS_PER_ORDER, BUNDLE_MAX_QTY_PER_TX, STANDARD_MAX_QTY_PER_LINE, } from "./_internal/shared/checkout/rules";
|
|
3047
|
+
export type { ListingCheckoutRule, CategoryCheckoutRule, CartItemProductPair, OrderItemInput, RefundPolicy, } from "./_internal/shared/checkout/rules";
|
|
3007
3048
|
export { MEGABYTE, MAX_IMAGE_BYTES, MAX_PDF_BYTES, MAX_VIDEO_BYTES, MAX_LABEL, MAX_BYTES, ALLOWED_IMAGE_MIMES, ALLOWED_VIDEO_MIMES, ALLOWED_DOC_MIMES, ALLOWED_MIMES, ALLOWED_TYPES_LABEL, MIME_TO_EXT, PDF_MAGIC, VIDEO_CONVERSION_HINTS, classifyMime, isAllowedMime, maxBytesFor, getConversionHint, } from "./_internal/shared/media/limits";
|
|
3008
3049
|
export type { MediaKind, AllowedImageMime, AllowedVideoMime, AllowedDocMime, AllowedMime, } from "./_internal/shared/media/limits";
|