@mohasinac/appkit 4.13.1 → 4.15.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/dist/_internal/client/features/layout/DashboardLayoutClient.js +14 -5
- package/dist/_internal/client/features/lottery/LotteryAdminEditView.d.ts +3 -0
- package/dist/_internal/client/features/lottery/LotteryAdminEditView.js +6 -0
- package/dist/_internal/client/features/lottery/LotteryDetailView.d.ts +8 -0
- package/dist/_internal/client/features/lottery/LotteryDetailView.js +4 -1
- package/dist/_internal/client/features/lottery/LotteryListView.d.ts +7 -0
- package/dist/_internal/client/features/lottery/LotteryListView.js +1 -1
- package/dist/_internal/client/features/lottery/PrizeDrawLotteryDetailView.js +4 -1
- package/dist/_internal/client/features/lottery/slot-collage-items.d.ts +15 -0
- package/dist/_internal/client/features/lottery/slot-collage-items.js +13 -0
- package/dist/_internal/server/features/auctions/actions.js +8 -2
- package/dist/_internal/server/features/bundles/data.d.ts +16 -0
- package/dist/_internal/server/features/bundles/data.js +26 -0
- package/dist/_internal/server/features/bundles/index.d.ts +1 -1
- package/dist/_internal/server/features/bundles/index.js +1 -1
- package/dist/_internal/server/features/cart/service.d.ts +3 -3
- package/dist/_internal/server/features/checkout/actions.js +25 -0
- package/dist/_internal/server/features/checkout/locked-lines.d.ts +38 -0
- package/dist/_internal/server/features/checkout/locked-lines.js +171 -0
- package/dist/_internal/server/features/checkout/source-context.d.ts +5 -0
- package/dist/_internal/server/features/checkout/source-context.js +157 -0
- package/dist/_internal/server/features/homepage/index.d.ts +0 -1
- package/dist/_internal/server/features/homepage/index.js +7 -1
- package/dist/_internal/server/features/lottery/adapters.js +4 -0
- package/dist/_internal/server/features/offers/adapters.d.ts +103 -0
- package/dist/_internal/server/features/offers/adapters.js +88 -0
- package/dist/_internal/server/features/offers/index.d.ts +2 -0
- package/dist/_internal/server/features/offers/index.js +1 -0
- package/dist/_internal/server/features/orders/adapters.js +24 -0
- package/dist/_internal/server/features/products/data.js +15 -37
- package/dist/_internal/server/features/products/index.d.ts +1 -1
- package/dist/_internal/server/features/products/index.js +1 -1
- package/dist/_internal/server/features/products/list-public.d.ts +46 -20
- package/dist/_internal/server/features/products/list-public.js +266 -90
- package/dist/_internal/server/features/products/listing-tab-counts.d.ts +44 -0
- package/dist/_internal/server/features/products/listing-tab-counts.js +97 -0
- package/dist/_internal/server/features/site-settings/adapters.d.ts +51 -0
- package/dist/_internal/server/features/site-settings/adapters.js +75 -0
- package/dist/_internal/server/features/site-settings/index.d.ts +1 -0
- package/dist/_internal/server/features/site-settings/index.js +1 -0
- package/dist/_internal/server/features/stores/adapters.d.ts +56 -0
- package/dist/_internal/server/features/stores/adapters.js +91 -0
- package/dist/_internal/server/features/stores/index.d.ts +1 -0
- package/dist/_internal/server/features/stores/index.js +1 -0
- package/dist/_internal/server/jobs/core/auctionSettlement.js +56 -2
- package/dist/_internal/server/jobs/core/offerExpiry.js +55 -19
- package/dist/_internal/server/jobs/core/paymentReviewAutoApprove.d.ts +5 -0
- package/dist/_internal/server/jobs/core/paymentReviewAutoApprove.js +33 -1
- package/dist/_internal/server/jobs/handlers/messages.d.ts +7 -0
- package/dist/_internal/server/jobs/handlers/messages.js +10 -0
- package/dist/_internal/shared/actions/action-registry.js +17 -1
- package/dist/_internal/shared/checkout/lanes.d.ts +25 -0
- package/dist/_internal/shared/checkout/lanes.js +26 -0
- package/dist/_internal/shared/features/auctions/config.d.ts +27 -0
- package/dist/_internal/shared/features/auctions/config.js +27 -0
- package/dist/_internal/shared/features/auctions/schema.d.ts +14 -2
- package/dist/_internal/shared/features/auctions/schema.js +13 -1
- package/dist/_internal/shared/features/blog/schema.d.ts +2 -2
- package/dist/_internal/shared/features/cart/schema.d.ts +20 -15
- package/dist/_internal/shared/features/cart/schema.js +15 -0
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +32 -32
- package/dist/_internal/shared/features/emi/schedule.d.ts +24 -3
- package/dist/_internal/shared/features/emi/schedule.js +20 -5
- package/dist/_internal/shared/features/events/schema.d.ts +2 -2
- package/dist/_internal/shared/features/homepage/section-gate.d.ts +14 -0
- package/dist/_internal/shared/features/homepage/section-gate.js +51 -0
- package/dist/_internal/shared/features/offers/config.d.ts +30 -0
- package/dist/_internal/shared/features/offers/config.js +59 -0
- package/dist/_internal/shared/features/orders/schema.d.ts +8 -8
- package/dist/_internal/shared/features/products/schema.d.ts +30 -30
- package/dist/_internal/shared/features/products/to-product-item.js +6 -0
- package/dist/_internal/shared/features/reviews/schema.d.ts +2 -2
- package/dist/_internal/shared/features/site-settings/fees.d.ts +60 -0
- package/dist/_internal/shared/features/site-settings/fees.js +39 -0
- package/dist/_internal/shared/features/site-settings/types.d.ts +40 -0
- package/dist/_internal/shared/features/site-settings/types.js +1 -0
- package/dist/_internal/shared/history/history.d.ts +88 -0
- package/dist/_internal/shared/history/history.js +198 -0
- package/dist/_internal/shared/history/index.d.ts +4 -0
- package/dist/_internal/shared/history/index.js +2 -0
- package/dist/_internal/shared/history/types.d.ts +61 -0
- package/dist/_internal/shared/history/types.js +6 -0
- package/dist/_internal/shared/listing-types/_registry.d.ts +54 -1
- package/dist/_internal/shared/listing-types/_registry.js +67 -0
- package/dist/_internal/shared/listing-types/art/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/art/config.js +5 -0
- package/dist/_internal/shared/listing-types/auction/config.d.ts +13 -0
- package/dist/_internal/shared/listing-types/auction/config.js +21 -0
- package/dist/_internal/shared/listing-types/availability.d.ts +79 -0
- package/dist/_internal/shared/listing-types/availability.js +104 -0
- package/dist/_internal/shared/listing-types/capabilities.d.ts +15 -0
- package/dist/_internal/shared/listing-types/capabilities.js +12 -0
- package/dist/_internal/shared/listing-types/classified/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/classified/config.js +5 -0
- package/dist/_internal/shared/listing-types/digital-code/config.d.ts +11 -0
- package/dist/_internal/shared/listing-types/digital-code/config.js +22 -2
- package/dist/_internal/shared/listing-types/live/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/live/config.js +5 -0
- package/dist/_internal/shared/listing-types/pre-order/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/pre-order/config.js +19 -0
- package/dist/_internal/shared/listing-types/prize-draw/config.d.ts +11 -0
- package/dist/_internal/shared/listing-types/prize-draw/config.js +15 -0
- package/dist/_internal/shared/listing-types/standard/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/standard/config.js +5 -0
- package/dist/_internal/shared/listing-types/stickers/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/stickers/config.js +5 -0
- package/dist/client.d.ts +20 -7
- package/dist/client.js +22 -4
- package/dist/constants/api-endpoints.d.ts +6 -0
- package/dist/constants/api-endpoints.js +2 -0
- package/dist/constants/field-names.d.ts +57 -8
- package/dist/constants/field-names.js +101 -8
- package/dist/constants/table-keys.d.ts +17 -0
- package/dist/constants/table-keys.js +17 -0
- package/dist/errors/error-codes.d.ts +13 -1
- package/dist/errors/error-codes.js +13 -1
- package/dist/errors/error-display-map.js +12 -3
- package/dist/errors/messages.d.ts +10 -2
- package/dist/errors/messages.js +10 -2
- package/dist/features/about/components/AboutView.d.ts +3 -0
- package/dist/features/about/components/AboutView.js +3 -2
- package/dist/features/about/components/PolicyPageView.d.ts +2 -1
- package/dist/features/about/components/PolicyPageView.js +61 -23
- package/dist/features/about/components/PublicProfileView.js +5 -0
- package/dist/features/about/schemas/firestore.d.ts +3 -0
- package/dist/features/account/components/UserBidsView.js +12 -4
- package/dist/features/account/components/UserOrdersView.js +7 -0
- package/dist/features/account/components/UserReturnsView.d.ts +3 -0
- package/dist/features/account/components/UserReturnsView.js +17 -1
- package/dist/features/account/components/index.d.ts +0 -2
- package/dist/features/account/components/index.js +0 -1
- package/dist/features/account/schemas/index.d.ts +2 -2
- package/dist/features/account/types/index.d.ts +21 -2
- package/dist/features/addresses/schemas/index.d.ts +4 -4
- package/dist/features/admin/components/AdminArtView.js +8 -3
- package/dist/features/admin/components/AdminAuditLogView.js +1 -0
- package/dist/features/admin/components/AdminBidsView.js +15 -2
- package/dist/features/admin/components/AdminBlogEditorView.js +65 -33
- package/dist/features/admin/components/AdminClassifiedView.js +8 -3
- package/dist/features/admin/components/AdminDigitalCodesView.js +8 -3
- package/dist/features/admin/components/AdminFeatureEditorView.js +35 -6
- package/dist/features/admin/components/AdminFeatureFlagsView.js +1 -0
- package/dist/features/admin/components/AdminLiveView.js +8 -3
- package/dist/features/admin/components/AdminNavEditorView.js +15 -5
- package/dist/features/admin/components/AdminNewsletterView.js +18 -2
- package/dist/features/admin/components/AdminOffersView.d.ts +4 -0
- package/dist/features/admin/components/AdminOffersView.js +230 -0
- package/dist/features/admin/components/AdminOrdersView.js +10 -1
- package/dist/features/admin/components/AdminPaymentMethodsView.js +24 -4
- package/dist/features/admin/components/AdminPrizeDrawsView.js +5 -0
- package/dist/features/admin/components/AdminProductsView.js +16 -29
- package/dist/features/admin/components/AdminScammerEditorView.d.ts +2 -1
- package/dist/features/admin/components/AdminScammerEditorView.js +3 -13
- package/dist/features/admin/components/AdminScammersView.js +3 -8
- package/dist/features/admin/components/AdminSectionsView.js +32 -23
- package/dist/features/admin/components/AdminSessionsView.js +17 -2
- package/dist/features/admin/components/AdminSiteSettingsView.js +31 -13
- package/dist/features/admin/components/AdminSiteView.js +6 -2
- package/dist/features/admin/components/AdminStickersView.js +8 -3
- package/dist/features/admin/components/ViewAuditLogEntryModal.js +1 -0
- package/dist/features/admin/components/index.d.ts +2 -0
- package/dist/features/admin/components/index.js +1 -0
- package/dist/features/admin/components/sections/adminSectionsTypes.d.ts +4 -2
- package/dist/features/admin/components/sections/adminSectionsTypes.js +45 -27
- package/dist/features/admin/constants/filter-tabs.d.ts +89 -0
- package/dist/features/admin/constants/filter-tabs.js +56 -0
- package/dist/features/admin/schemas/firestore.d.ts +122 -3
- package/dist/features/admin/schemas/firestore.js +1 -0
- package/dist/features/admin/schemas/homepage-section-form.d.ts +22 -0
- package/dist/features/admin/schemas/homepage-section-form.js +68 -0
- package/dist/features/admin/schemas/nav-item-form.d.ts +74 -0
- package/dist/features/admin/schemas/nav-item-form.js +72 -0
- package/dist/features/auctions/actions/bid-actions.d.ts +20 -5
- package/dist/features/auctions/actions/bid-actions.js +93 -20
- package/dist/features/auctions/components/AuctionBidsTable.d.ts +10 -1
- package/dist/features/auctions/components/AuctionBidsTable.js +22 -4
- package/dist/features/auctions/components/AuctionDetailPageView.js +11 -6
- package/dist/features/auctions/components/AuctionsListView.js +5 -6
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +7 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +19 -2
- package/dist/features/auctions/components/PlaceBidFormClient.d.ts +1 -2
- package/dist/features/auctions/components/PlaceBidFormClient.js +8 -4
- package/dist/features/auctions/components/bid-detail-fields.d.ts +29 -0
- package/dist/features/auctions/components/bid-detail-fields.js +103 -0
- package/dist/features/auctions/repository/bid.repository.d.ts +13 -0
- package/dist/features/auctions/repository/bid.repository.js +23 -0
- package/dist/features/auctions/schemas/firestore.d.ts +17 -0
- package/dist/features/auctions/schemas/index.d.ts +12 -12
- package/dist/features/audit-log/schemas/firestore.d.ts +14 -0
- package/dist/features/audit-log/schemas/firestore.js +7 -0
- package/dist/features/auth/permissions/constants.d.ts +1 -1
- package/dist/features/auth/permissions/constants.js +10 -1
- package/dist/features/blog/actions/blog-actions.d.ts +7 -7
- package/dist/features/blog/schemas/blog-form.d.ts +80 -0
- package/dist/features/blog/schemas/blog-form.js +100 -0
- package/dist/features/blog/schemas/index.d.ts +6 -6
- package/dist/features/cart/repository/cart.repository.js +1 -0
- package/dist/features/cart/schemas/firestore.d.ts +15 -0
- package/dist/features/catalogue/schemas/validation.d.ts +4 -4
- package/dist/features/categories/components/BrandDetailPageView.js +23 -40
- package/dist/features/categories/components/BrandDetailTabs.d.ts +7 -7
- package/dist/features/categories/components/BrandDetailTabs.js +8 -12
- package/dist/features/categories/components/BundleCollage.js +1 -1
- package/dist/features/categories/components/CategoryDetailPageView.js +53 -57
- package/dist/features/categories/components/CategoryDetailTabs.d.ts +10 -8
- package/dist/features/categories/components/CategoryDetailTabs.js +11 -16
- package/dist/features/categories/components/CategoryProductsListing.js +11 -1
- package/dist/features/categories/components/ConcernCard.js +7 -1
- package/dist/features/categories/schemas/firestore.d.ts +13 -0
- package/dist/features/categories/schemas/index.d.ts +26 -26
- package/dist/features/classified/components/ClassifiedDetailPageView.d.ts +16 -1
- package/dist/features/classified/components/ClassifiedDetailPageView.js +23 -3
- package/dist/features/events/components/AdminEventEditorView.js +32 -54
- package/dist/features/events/components/AdminEventEntriesView.js +22 -3
- package/dist/features/events/components/AdminEventsView.js +15 -11
- package/dist/features/events/components/EventFilters.d.ts +9 -1
- package/dist/features/events/components/EventFilters.js +45 -21
- package/dist/features/events/components/EventsIndexListing.d.ts +6 -1
- package/dist/features/events/components/EventsIndexListing.js +2 -2
- package/dist/features/events/components/EventsListPageView.js +13 -4
- package/dist/features/events/repository/events.repository.d.ts +17 -0
- package/dist/features/events/repository/events.repository.js +27 -0
- package/dist/features/events/schemas/event-form.d.ts +113 -0
- package/dist/features/events/schemas/event-form.js +82 -0
- package/dist/features/events/schemas/firestore.d.ts +12 -0
- package/dist/features/events/schemas/firestore.js +12 -0
- package/dist/features/events/schemas/index.d.ts +50 -50
- package/dist/features/events/types/index.d.ts +11 -0
- package/dist/features/events/types/index.js +57 -1
- package/dist/features/faq/actions/faq-actions.d.ts +12 -12
- package/dist/features/faq/schemas/index.d.ts +8 -8
- package/dist/features/filters/FilterFacetSection.d.ts +7 -1
- package/dist/features/filters/FilterFacetSection.js +11 -3
- package/dist/features/grouped/schemas/grouped-listing-form.d.ts +101 -0
- package/dist/features/grouped/schemas/grouped-listing-form.js +89 -0
- package/dist/features/grouped/schemas/index.d.ts +4 -4
- package/dist/features/homepage/actions/homepage-section-actions.d.ts +11 -3
- package/dist/features/homepage/actions/homepage-section-actions.js +33 -1
- package/dist/features/homepage/components/AnnouncementBar.d.ts +7 -1
- package/dist/features/homepage/components/AnnouncementBar.js +3 -3
- package/dist/features/homepage/components/MarketplaceHomepageView.js +20 -6
- package/dist/features/homepage/hooks/homepage-query.d.ts +16 -0
- package/dist/features/homepage/hooks/homepage-query.js +45 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.d.ts +10 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.js +28 -8
- package/dist/features/homepage/hooks/useFeaturedPreOrders.js +17 -8
- package/dist/features/homepage/hooks/useFeaturedProducts.js +15 -8
- package/dist/features/homepage/schemas/index.d.ts +33 -2
- package/dist/features/homepage/schemas/index.js +24 -0
- package/dist/features/layout/AppLayoutShell.d.ts +11 -1
- package/dist/features/layout/AppLayoutShell.js +15 -14
- package/dist/features/layout/BackToTop.d.ts +9 -0
- package/dist/features/layout/BackToTop.js +10 -1
- package/dist/features/layout/BottomActions.js +28 -25
- package/dist/features/layout/BottomChrome.d.ts +34 -0
- package/dist/features/layout/BottomChrome.js +55 -0
- package/dist/features/layout/BottomNavLayout.d.ts +6 -0
- package/dist/features/layout/BottomNavLayout.js +7 -1
- package/dist/features/layout/BottomNavbar.js +15 -2
- package/dist/features/layout/FooterLayout.js +11 -1
- package/dist/features/layout/NavbarLayout.js +1 -1
- package/dist/features/layout/TitleBarLayout.d.ts +7 -0
- package/dist/features/layout/TitleBarLayout.js +28 -5
- package/dist/features/layout/index.d.ts +2 -0
- package/dist/features/layout/index.js +1 -0
- package/dist/features/lottery/types/index.d.ts +3 -0
- package/dist/features/media/MediaPickerModal.js +5 -1
- package/dist/features/messages/schemas/index.d.ts +2 -2
- package/dist/features/orders/components/OrderScopeTabs.d.ts +20 -0
- package/dist/features/orders/components/OrderScopeTabs.js +31 -0
- package/dist/features/orders/components/OrderStatusTimeline.d.ts +5 -1
- package/dist/features/orders/components/OrderStatusTimeline.js +39 -20
- package/dist/features/orders/constants/order-scope.d.ts +48 -0
- package/dist/features/orders/constants/order-scope.js +111 -0
- package/dist/features/orders/repository/orders.repository.d.ts +54 -7
- package/dist/features/orders/repository/orders.repository.js +121 -22
- package/dist/features/orders/schemas/firestore.d.ts +152 -0
- package/dist/features/orders/schemas/firestore.js +30 -0
- package/dist/features/orders/schemas/index.d.ts +18 -18
- package/dist/features/orders/types/index.d.ts +35 -7
- package/dist/features/pre-orders/components/PreOrdersIndexListing.js +14 -9
- package/dist/features/pre-orders/components/PreOrdersListView.js +6 -5
- package/dist/features/pre-orders/schemas/index.d.ts +1 -1
- package/dist/features/products/actions/product-actions.d.ts +14 -0
- package/dist/features/products/actions/product-actions.js +49 -11
- package/dist/features/products/api/route.d.ts +12 -0
- package/dist/features/products/api/route.js +42 -100
- package/dist/features/products/components/ArtStickersListView.js +2 -2
- package/dist/features/products/components/AuctionsIndexListing.js +13 -11
- package/dist/features/products/components/AvailabilityTabs.d.ts +11 -0
- package/dist/features/products/components/AvailabilityTabs.js +47 -0
- package/dist/features/products/components/GroupSettingsPanel.js +5 -1
- package/dist/features/products/components/MakeOfferButton.js +48 -49
- package/dist/features/products/components/PrizeDrawCollage.d.ts +20 -4
- package/dist/features/products/components/PrizeDrawCollage.js +9 -1
- package/dist/features/products/components/PrizeDrawsIndexListing.js +14 -12
- package/dist/features/products/components/PrizeDrawsListingView.js +2 -2
- package/dist/features/products/components/PrizeDrawsSection.d.ts +7 -1
- package/dist/features/products/components/PrizeDrawsSection.js +23 -18
- package/dist/features/products/components/ProductDetailPageView.d.ts +4 -1
- package/dist/features/products/components/ProductDetailPageView.js +18 -4
- package/dist/features/products/components/ProductForm.js +5 -2
- package/dist/features/products/components/ProductGrid.js +6 -1
- package/dist/features/products/components/ProductsIndexListing.js +22 -32
- package/dist/features/products/components/ProductsIndexPageView.js +6 -9
- package/dist/features/products/components/index.d.ts +2 -2
- package/dist/features/products/components/index.js +1 -1
- package/dist/features/products/config/listing-type-listing-config.d.ts +20 -0
- package/dist/features/products/config/listing-type-listing-config.js +22 -10
- package/dist/features/products/constants/action-defs.d.ts +2 -0
- package/dist/features/products/constants/action-defs.js +6 -0
- package/dist/features/products/hooks/useAvailabilityScope.d.ts +13 -0
- package/dist/features/products/hooks/useAvailabilityScope.js +19 -0
- package/dist/features/products/hooks/useProducts.d.ts +5 -0
- package/dist/features/products/hooks/useProducts.js +13 -2
- package/dist/features/products/repository/products.repository.d.ts +31 -2
- package/dist/features/products/repository/products.repository.js +53 -21
- package/dist/features/products/schemas/firestore.d.ts +17 -3
- package/dist/features/products/schemas/firestore.js +7 -2
- package/dist/features/products/schemas/index.d.ts +64 -64
- package/dist/features/products/schemas/product-features.validators.d.ts +79 -6
- package/dist/features/products/schemas/product-features.validators.js +63 -0
- package/dist/features/products/types/index.d.ts +16 -1
- package/dist/features/promotions/schemas/index.d.ts +2 -2
- package/dist/features/reviews/schemas/index.d.ts +16 -16
- package/dist/features/scams/constants/scammer-status-display.d.ts +28 -0
- package/dist/features/scams/constants/scammer-status-display.js +79 -0
- package/dist/features/search/schemas/index.d.ts +4 -4
- package/dist/features/seller/actions/offer-actions.js +57 -4
- package/dist/features/seller/components/OfferPhaseTimeline.d.ts +59 -0
- package/dist/features/seller/components/OfferPhaseTimeline.js +107 -0
- package/dist/features/seller/components/SellerArtView.js +5 -0
- package/dist/features/seller/components/SellerAuctionsView.js +13 -15
- package/dist/features/seller/components/SellerBidsView.js +11 -4
- package/dist/features/seller/components/SellerClassifiedView.js +5 -0
- package/dist/features/seller/components/SellerCouponEditorView.js +17 -17
- package/dist/features/seller/components/SellerDigitalCodesView.js +5 -0
- package/dist/features/seller/components/SellerLiveView.js +5 -0
- package/dist/features/seller/components/SellerOffersView.js +2 -1
- package/dist/features/seller/components/SellerOrdersView.js +31 -9
- package/dist/features/seller/components/SellerPayoutSettingsView.js +56 -31
- package/dist/features/seller/components/SellerPreOrdersView.js +5 -0
- package/dist/features/seller/components/SellerPrizeDrawsView.js +14 -16
- package/dist/features/seller/components/SellerProductShell.js +7 -1
- package/dist/features/seller/components/SellerProductsView.js +11 -8
- package/dist/features/seller/components/SellerStickersView.js +5 -0
- package/dist/features/seller/components/index.d.ts +0 -2
- package/dist/features/seller/components/index.js +0 -1
- package/dist/features/seller/repository/offer.repository.d.ts +142 -24
- package/dist/features/seller/repository/offer.repository.js +165 -26
- package/dist/features/seller/schemas/coupon-form.d.ts +72 -0
- package/dist/features/seller/schemas/coupon-form.js +116 -0
- package/dist/features/seller/schemas/firestore.d.ts +56 -2
- package/dist/features/seller/schemas/firestore.js +27 -0
- package/dist/features/seller/schemas/index.d.ts +2 -2
- package/dist/features/seller/schemas/offer-forms.d.ts +46 -0
- package/dist/features/seller/schemas/offer-forms.js +42 -0
- package/dist/features/seller/server.d.ts +0 -1
- package/dist/features/seller/server.js +0 -1
- package/dist/features/shell/SectionForm.d.ts +99 -0
- package/dist/features/shell/SectionForm.js +128 -0
- package/dist/features/shell/build-sections.d.ts +63 -0
- package/dist/features/shell/build-sections.js +207 -0
- package/dist/features/shell/entity-form.d.ts +109 -0
- package/dist/features/shell/entity-form.js +96 -0
- package/dist/features/shell/field-ui-meta.d.ts +115 -0
- package/dist/features/shell/field-ui-meta.js +324 -0
- package/dist/features/shell/index.d.ts +8 -0
- package/dist/features/shell/index.js +4 -0
- package/dist/features/status-history/components/StatusTimeline.d.ts +74 -0
- package/dist/features/status-history/components/StatusTimeline.js +46 -0
- package/dist/features/status-history/index.d.ts +11 -0
- package/dist/features/status-history/index.js +10 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.d.ts +27 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.js +82 -0
- package/dist/features/store-extensions/index.d.ts +12 -0
- package/dist/features/store-extensions/index.js +12 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.d.ts +36 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.js +114 -0
- package/dist/features/store-extensions/schemas/analytics-forms.d.ts +57 -0
- package/dist/features/store-extensions/schemas/analytics-forms.js +158 -0
- package/dist/features/store-extensions/schemas/custom-role-form.d.ts +85 -0
- package/dist/features/store-extensions/schemas/custom-role-form.js +118 -0
- package/dist/features/store-extensions/schemas/firestore.d.ts +21 -1
- package/dist/features/store-extensions/schemas/firestore.js +60 -0
- package/dist/features/store-extensions/schemas/google-config-form.d.ts +53 -0
- package/dist/features/store-extensions/schemas/google-config-form.js +105 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.d.ts +28 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.js +80 -0
- package/dist/features/store-extensions/schemas/listing-template-form.d.ts +78 -0
- package/dist/features/store-extensions/schemas/listing-template-form.js +87 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.d.ts +49 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.js +101 -0
- package/dist/features/store-extensions/schemas/payout-method-form.d.ts +153 -0
- package/dist/features/store-extensions/schemas/payout-method-form.js +155 -0
- package/dist/features/store-extensions/schemas/report-create-form.d.ts +25 -0
- package/dist/features/store-extensions/schemas/report-create-form.js +79 -0
- package/dist/features/store-extensions/schemas/report-review-form.d.ts +47 -0
- package/dist/features/store-extensions/schemas/report-review-form.js +111 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.d.ts +148 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.js +104 -0
- package/dist/features/store-extensions/schemas/store-category-form.d.ts +54 -0
- package/dist/features/store-extensions/schemas/store-category-form.js +73 -0
- package/dist/features/stores/api/[storeSlug]/route.js +2 -25
- package/dist/features/stores/components/StoreAuctionsListing.js +15 -1
- package/dist/features/stores/components/StoreClassifiedsListing.js +12 -2
- package/dist/features/stores/components/StoreDetailLayoutView.js +24 -71
- package/dist/features/stores/components/StoreDigitalCodesListing.js +12 -2
- package/dist/features/stores/components/StoreLiveItemsListing.js +12 -2
- package/dist/features/stores/components/StorePreOrdersListing.js +12 -1
- package/dist/features/stores/components/StoreProductsListing.js +11 -1
- package/dist/features/stores/repository/store.repository.js +6 -0
- package/dist/features/stores/schemas/index.d.ts +6 -6
- package/dist/features/support/schemas/index.d.ts +4 -4
- package/dist/features/tester/actions/checklist-item-actions.d.ts +4 -4
- package/dist/features/tester/seed-data/offers-tester-seed-data.js +119 -3
- package/dist/features/tester/seed-data/products-tester-seed-data.js +131 -1
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +431 -1
- package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +1 -1
- package/dist/index.d.ts +25 -12
- package/dist/index.js +26 -11
- package/dist/next/routing/route-map.d.ts +23 -3
- package/dist/next/routing/route-map.js +14 -2
- package/dist/providers/db-firebase/base.repository.d.ts +30 -0
- package/dist/providers/db-firebase/base.repository.js +50 -1
- package/dist/providers/db-firebase/index.d.ts +1 -1
- package/dist/providers/db-firebase/index.js +1 -1
- package/dist/providers/db-firebase/sieve.d.ts +25 -0
- package/dist/providers/db-firebase/sieve.js +52 -18
- package/dist/react/hooks/useUrlTable.js +10 -1
- package/dist/schemas/firestore-value.d.ts +8 -0
- package/dist/schemas/firestore-value.js +44 -0
- package/dist/schemas/index.d.ts +1 -1
- package/dist/schemas/index.js +1 -1
- package/dist/schemas/registry.d.ts +702 -69
- package/dist/schemas/registry.js +64 -1
- package/dist/seed/_helpers/category-forest.d.ts +2 -0
- package/dist/seed/_helpers/category-forest.js +309 -0
- package/dist/seed/_helpers/category-tree.d.ts +27 -0
- package/dist/seed/_helpers/category-tree.js +103 -0
- package/dist/seed/bids-seed-data.js +30 -0
- package/dist/seed/catalogue-seed-data.js +12 -12
- package/dist/seed/categories-seed-data.js +177 -162
- package/dist/seed/events-seed-data.js +61 -10
- package/dist/seed/homepage-sections-seed-data.js +5 -1
- package/dist/seed/offers-seed-data.js +244 -34
- package/dist/seed/orders-seed-data.js +336 -1
- package/dist/seed/products-art-seed-data.js +50 -12
- package/dist/seed/products-auctions-seed-data.js +138 -18
- package/dist/seed/products-classifieds-seed-data.js +80 -16
- package/dist/seed/products-digital-codes-seed-data.js +66 -18
- package/dist/seed/products-live-items-seed-data.js +64 -13
- package/dist/seed/products-preorders-seed-data.d.ts +0 -1
- package/dist/seed/products-preorders-seed-data.js +52 -13
- package/dist/seed/products-prize-draws-seed-data.js +63 -14
- package/dist/seed/products-standard-seed-data.js +99 -26
- package/dist/seed/products-stickers-seed-data.js +47 -12
- package/dist/seed/reviews-seed-data.js +6 -1
- package/dist/seed/site-settings-seed-data.d.ts +1 -38
- package/dist/seed/site-settings-seed-data.js +38 -76
- package/dist/seed/stores-seed-data.js +71 -1
- package/dist/seed/users-seed-data.js +15 -5
- package/dist/server-entry.d.ts +1 -2
- package/dist/server-entry.js +4 -3
- package/dist/server.d.ts +6 -3
- package/dist/server.js +13 -4
- package/dist/styles.css +78 -12
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/components/Button.style.css +19 -4
- package/dist/ui/components/CollapsibleSection.d.ts +17 -1
- package/dist/ui/components/CollapsibleSection.js +6 -2
- package/dist/ui/components/FilterChipGroup.d.ts +25 -1
- package/dist/ui/components/FilterChipGroup.js +21 -4
- package/dist/ui/components/HandMode.style.css +47 -0
- package/dist/ui/components/Layout.d.ts +9 -2
- package/dist/ui/components/Layout.js +1 -1
- package/dist/ui/components/ListingLayout.js +8 -8
- package/dist/ui/components/ListingLayout.style.css +8 -7
- package/dist/ui/components/RecordDetailModal.d.ts +10 -1
- package/dist/ui/components/RecordDetailModal.js +2 -2
- package/dist/ui/components/StickyToolbar.d.ts +3 -1
- package/dist/ui/components/StickyToolbar.js +62 -20
- package/dist/ui/components/bottom-chrome-slot.d.ts +21 -0
- package/dist/ui/components/bottom-chrome-slot.js +29 -0
- package/dist/ui/components/index.style.css +3 -0
- package/dist/ui/forms/FormShell.d.ts +43 -13
- package/dist/ui/forms/FormShell.js +22 -11
- package/dist/ui/forms/index.d.ts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/package.json +2 -1
- package/scripts/node-esm-loader.mjs +65 -0
- package/scripts/seed-cli-loader.mjs +6 -49
- package/scripts/seed-cli.mjs +1 -1
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
* WHY: Seeds purchase orders representing completed transactions across Beyblade marketplace buyers and sellers.
|
|
3
3
|
* WHAT: Exports 50 orders across 3 buyer/store combos. All statuses distributed. Order IDs: order-{itemCount}-{YYYYMMDD}-{rand6}.
|
|
4
4
|
*
|
|
5
|
+
* ## One fixture per acquisition path
|
|
6
|
+
*
|
|
7
|
+
* The six `acquisitionOrders` below exist so every branch of the
|
|
8
|
+
* `OrderSourceContext` union has real data behind it. `orderType` has five
|
|
9
|
+
* values and cannot separate a settled auction win from a buyout — both are
|
|
10
|
+
* "auction" — which is exactly why `sourceContext` keys on its own
|
|
11
|
+
* discriminator.
|
|
12
|
+
*
|
|
13
|
+
* Every FK in a `sourceContext` points at a real seeded document: the winning
|
|
14
|
+
* bid, the buyout bid, the accepted offer. A provenance record pointing at
|
|
15
|
+
* nothing is worse than none, because it reads as evidence (Root Cause #26).
|
|
16
|
+
*
|
|
17
|
+
* ## `statusHistory` is a DELTA log, never a snapshot
|
|
18
|
+
*
|
|
19
|
+
* Each entry records only the tracked fields that changed. Money is
|
|
20
|
+
* deliberately absent: the final coupon and add-on state already lives on the
|
|
21
|
+
* order document, and replaying pricing churn buries the handful of
|
|
22
|
+
* transitions anyone actually reads. Refunds ARE here — a partial refund
|
|
23
|
+
* changes no tracked field, so it is contributed explicitly.
|
|
24
|
+
*
|
|
25
|
+
* `actorUid` is the only identity an entry may carry. Never a name or an
|
|
26
|
+
* email: `encryptPiiFields` never descends into arrays, so PII inside
|
|
27
|
+
* `statusHistory` would be stored in plaintext.
|
|
28
|
+
*
|
|
5
29
|
* EXPORTS:
|
|
6
30
|
* ordersSeedData — Array of 50 order documents with full transactional metadata
|
|
7
31
|
*
|
|
@@ -384,8 +408,319 @@ function withOrderImages(order) {
|
|
|
384
408
|
})),
|
|
385
409
|
};
|
|
386
410
|
}
|
|
411
|
+
/**
|
|
412
|
+
* One history entry, in the same delta shape `withHistory()` writes at runtime,
|
|
413
|
+
* so a seeded timeline and a real one render identically.
|
|
414
|
+
*/
|
|
415
|
+
function entry(at, actorRole, trigger, changes, extra = {}) {
|
|
416
|
+
return { at, actorRole, trigger, changes, ...extra };
|
|
417
|
+
}
|
|
418
|
+
const BUYER_YUGI = "user-yugi-muto";
|
|
419
|
+
const BUYER_KAIBA = "user-seto-kaiba";
|
|
420
|
+
const BUYER_ADMIN = "user-admin-letitrip";
|
|
421
|
+
const ARENA = "store-beyblade-arena";
|
|
422
|
+
/**
|
|
423
|
+
* Six orders, one per `OrderSourceContext` path.
|
|
424
|
+
*
|
|
425
|
+
* The two auction fixtures are the point of the set: they are the pair
|
|
426
|
+
* `orderType` alone cannot tell apart.
|
|
427
|
+
*/
|
|
428
|
+
const acquisitionOrders = [
|
|
429
|
+
// ── standard ──────────────────────────────────────────────────────────
|
|
430
|
+
{
|
|
431
|
+
id: "order-1-20260818-stdctx",
|
|
432
|
+
productId: "product-beyblade-burst-valkyrie",
|
|
433
|
+
productTitle: "Beyblade Burst B-01 Valkyrie",
|
|
434
|
+
userId: BUYER_YUGI,
|
|
435
|
+
userName: "Mock User 3",
|
|
436
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
437
|
+
storeId: ARENA,
|
|
438
|
+
quantity: 1,
|
|
439
|
+
unitPrice: 999,
|
|
440
|
+
totalPrice: 999,
|
|
441
|
+
currency: "INR",
|
|
442
|
+
status: "delivered",
|
|
443
|
+
paymentStatus: "paid",
|
|
444
|
+
paymentMethod: "cash",
|
|
445
|
+
orderType: "standard",
|
|
446
|
+
shippingAddress: "addr-yugi-home",
|
|
447
|
+
trackingNumber: "LIR-TRK-88213004",
|
|
448
|
+
shippingCarrier: "Delhivery",
|
|
449
|
+
orderDate: daysAgo(12),
|
|
450
|
+
shippingDate: daysAgo(9),
|
|
451
|
+
deliveryDate: daysAgo(6),
|
|
452
|
+
createdAt: daysAgo(12),
|
|
453
|
+
updatedAt: daysAgo(6),
|
|
454
|
+
sourceContext: { path: "standard", listPrice: 999 },
|
|
455
|
+
statusHistory: [
|
|
456
|
+
entry(daysAgo(12), "buyer", "createCheckoutOrder", {
|
|
457
|
+
status: { from: null, to: "pending" },
|
|
458
|
+
}, { actorUid: BUYER_YUGI }),
|
|
459
|
+
entry(daysAgo(11), "seller", "updateOrderStatus", {
|
|
460
|
+
status: { from: "pending", to: "confirmed" },
|
|
461
|
+
paymentStatus: { from: "pending", to: "paid" },
|
|
462
|
+
}, { actorUid: ARENA }),
|
|
463
|
+
entry(daysAgo(9), "seller", "customShipOrder", {
|
|
464
|
+
status: { from: "confirmed", to: "shipped" },
|
|
465
|
+
trackingNumber: { from: null, to: "LIR-TRK-88213004" },
|
|
466
|
+
}, { actorUid: ARENA }),
|
|
467
|
+
entry(daysAgo(6), "system", "deliveryConfirmation", {
|
|
468
|
+
status: { from: "shipped", to: "delivered" },
|
|
469
|
+
}),
|
|
470
|
+
],
|
|
471
|
+
},
|
|
472
|
+
// ── auction-won — settled at close, against a real ladder ─────────────
|
|
473
|
+
{
|
|
474
|
+
id: "order-1-20260822-aucwon",
|
|
475
|
+
productId: "auction-beyblade-metal-diablo-nemesis",
|
|
476
|
+
productTitle: "Metal Fight Beyblade BB-122 Diablo Nemesis (Ended — Sold)",
|
|
477
|
+
userId: BUYER_KAIBA,
|
|
478
|
+
userName: "Mock User 2",
|
|
479
|
+
userEmail: "vivaan.kapoor@gmail.com",
|
|
480
|
+
storeId: ARENA,
|
|
481
|
+
quantity: 1,
|
|
482
|
+
unitPrice: 6200,
|
|
483
|
+
totalPrice: 6200,
|
|
484
|
+
currency: "INR",
|
|
485
|
+
status: "processing",
|
|
486
|
+
paymentStatus: "paid",
|
|
487
|
+
paymentMethod: "upi_manual",
|
|
488
|
+
orderType: "auction",
|
|
489
|
+
shippingAddress: "addr-kaiba-mansion",
|
|
490
|
+
orderDate: daysAgo(2),
|
|
491
|
+
createdAt: daysAgo(2),
|
|
492
|
+
updatedAt: daysAgo(1),
|
|
493
|
+
sourceContext: {
|
|
494
|
+
path: "auction-won",
|
|
495
|
+
auctionId: "auction-beyblade-metal-diablo-nemesis",
|
|
496
|
+
bidId: "bid-beyblade-metal-diablo-nemesis-rohit-collector-20260601-005",
|
|
497
|
+
winningBidAmount: 6200,
|
|
498
|
+
bidCount: 6,
|
|
499
|
+
startingBid: 3499,
|
|
500
|
+
// No reserve on this auction, so the reserve cannot fail to be met.
|
|
501
|
+
reserveMet: true,
|
|
502
|
+
auctionEndedAt: daysAgo(2),
|
|
503
|
+
runnerUpAmount: 5428,
|
|
504
|
+
},
|
|
505
|
+
statusHistory: [
|
|
506
|
+
entry(daysAgo(2), "system", "auctionSettlement", {
|
|
507
|
+
status: { from: null, to: "pending" },
|
|
508
|
+
}, { reason: "Won at auction close" }),
|
|
509
|
+
entry(daysAgo(1), "admin", "adminVerifyPayment", {
|
|
510
|
+
status: { from: "pending", to: "processing" },
|
|
511
|
+
paymentStatus: { from: "pending", to: "paid" },
|
|
512
|
+
paymentReviewOutcome: { from: null, to: "verified" },
|
|
513
|
+
}, { actorUid: BUYER_ADMIN }),
|
|
514
|
+
],
|
|
515
|
+
},
|
|
516
|
+
// ── auction-buy-now — a buyout ENDED a live auction ───────────────────
|
|
517
|
+
{
|
|
518
|
+
// Referenced back by the buyout bid's `orderId`, so the link resolves in
|
|
519
|
+
// both directions.
|
|
520
|
+
id: "order-1-20260820-buyout",
|
|
521
|
+
productId: "auction-beyblade-burst-spriggan-requiem-bought-out",
|
|
522
|
+
productTitle: "Beyblade Burst B-128 Spriggan Requiem (Ended — Bought Out)",
|
|
523
|
+
userId: BUYER_KAIBA,
|
|
524
|
+
userName: "Mock User 2",
|
|
525
|
+
userEmail: "vivaan.kapoor@gmail.com",
|
|
526
|
+
storeId: ARENA,
|
|
527
|
+
quantity: 1,
|
|
528
|
+
unitPrice: 4999,
|
|
529
|
+
totalPrice: 4999,
|
|
530
|
+
currency: "INR",
|
|
531
|
+
status: "shipped",
|
|
532
|
+
paymentStatus: "paid",
|
|
533
|
+
paymentMethod: "cash",
|
|
534
|
+
orderType: "auction",
|
|
535
|
+
// What separates this from the win above. Both are orderType "auction";
|
|
536
|
+
// only a buyout gets the 24h admin-review window.
|
|
537
|
+
isBuyout: true,
|
|
538
|
+
shippingAddress: "addr-kaiba-mansion",
|
|
539
|
+
trackingNumber: "LIR-TRK-77410992",
|
|
540
|
+
shippingCarrier: "Blue Dart",
|
|
541
|
+
orderDate: daysAgo(4),
|
|
542
|
+
shippingDate: daysAgo(2),
|
|
543
|
+
createdAt: daysAgo(4),
|
|
544
|
+
updatedAt: daysAgo(2),
|
|
545
|
+
sourceContext: {
|
|
546
|
+
path: "auction-buy-now",
|
|
547
|
+
auctionId: "auction-beyblade-burst-spriggan-requiem-bought-out",
|
|
548
|
+
bidId: "bid-beyblade-burst-spriggan-requiem-seto-kaiba-20260820-buyout",
|
|
549
|
+
buyNowPrice: 4999,
|
|
550
|
+
listPrice: 5499,
|
|
551
|
+
// The highest NON-buyout bid the buyout beat.
|
|
552
|
+
standingBidAtBuyout: 3100,
|
|
553
|
+
// Three, not zero. The old type asserted "zero bids by definition"
|
|
554
|
+
// because Buy Now used to be gated on `!bidsHaveStarted`; that gate was
|
|
555
|
+
// removed, and recording 0 would bake a falsehood into an audit record.
|
|
556
|
+
bidCount: 3,
|
|
557
|
+
boughtAt: daysAgo(4),
|
|
558
|
+
checkoutDeadline: daysAgo(4),
|
|
559
|
+
},
|
|
560
|
+
statusHistory: [
|
|
561
|
+
entry(daysAgo(4), "buyer", "claimAuctionForCheckout", {
|
|
562
|
+
status: { from: null, to: "pending" },
|
|
563
|
+
}, { actorUid: BUYER_KAIBA, reason: "Buy Now claim won" }),
|
|
564
|
+
entry(daysAgo(3), "seller", "updateOrderStatus", {
|
|
565
|
+
status: { from: "pending", to: "confirmed" },
|
|
566
|
+
paymentStatus: { from: "pending", to: "paid" },
|
|
567
|
+
}, { actorUid: ARENA }),
|
|
568
|
+
entry(daysAgo(2), "seller", "customShipOrder", {
|
|
569
|
+
status: { from: "confirmed", to: "shipped" },
|
|
570
|
+
trackingNumber: { from: null, to: "LIR-TRK-77410992" },
|
|
571
|
+
}, { actorUid: ARENA }),
|
|
572
|
+
],
|
|
573
|
+
},
|
|
574
|
+
// ── offer-accepted — the end of a real negotiation ────────────────────
|
|
575
|
+
{
|
|
576
|
+
id: "order-1-20260813-offerctx",
|
|
577
|
+
productId: "product-beyblade-x-knife-shinobi",
|
|
578
|
+
productTitle: "Beyblade X Knife Shinobi",
|
|
579
|
+
userId: BUYER_ADMIN,
|
|
580
|
+
userName: "Mock User 1",
|
|
581
|
+
userEmail: "admin@letitrip.in",
|
|
582
|
+
storeId: ARENA,
|
|
583
|
+
quantity: 1,
|
|
584
|
+
unitPrice: 800,
|
|
585
|
+
totalPrice: 800,
|
|
586
|
+
currency: "INR",
|
|
587
|
+
status: "delivered",
|
|
588
|
+
paymentStatus: "paid",
|
|
589
|
+
paymentMethod: "cash",
|
|
590
|
+
orderType: "offer",
|
|
591
|
+
// The offer this order settled — its own status is `paid`, and this is the
|
|
592
|
+
// order id it points at.
|
|
593
|
+
offerId: "offer-admin-x-knife-shinobi-paid",
|
|
594
|
+
shippingAddress: "addr-letitrip-hq",
|
|
595
|
+
orderDate: daysAgo(11),
|
|
596
|
+
shippingDate: daysAgo(9),
|
|
597
|
+
deliveryDate: daysAgo(7),
|
|
598
|
+
createdAt: daysAgo(11),
|
|
599
|
+
updatedAt: daysAgo(7),
|
|
600
|
+
sourceContext: {
|
|
601
|
+
path: "offer-accepted",
|
|
602
|
+
offerId: "offer-admin-x-knife-shinobi-paid",
|
|
603
|
+
offeredAmount: 800,
|
|
604
|
+
listPriceAtOffer: 949,
|
|
605
|
+
// Accepted outright — no counter rounds. Compare the Metal Storm
|
|
606
|
+
// Pegasus chain in offers-seed-data.ts, which reaches round 3.
|
|
607
|
+
counterRounds: 1,
|
|
608
|
+
acceptedBy: ARENA,
|
|
609
|
+
acceptedAt: daysAgo(12),
|
|
610
|
+
checkoutDeadline: daysAgo(10),
|
|
611
|
+
},
|
|
612
|
+
statusHistory: [
|
|
613
|
+
entry(daysAgo(11), "buyer", "createCheckoutOrder", {
|
|
614
|
+
status: { from: null, to: "pending" },
|
|
615
|
+
}, { actorUid: BUYER_ADMIN }),
|
|
616
|
+
entry(daysAgo(10), "seller", "updateOrderStatus", {
|
|
617
|
+
status: { from: "pending", to: "confirmed" },
|
|
618
|
+
paymentStatus: { from: "pending", to: "paid" },
|
|
619
|
+
}, { actorUid: ARENA }),
|
|
620
|
+
entry(daysAgo(9), "seller", "customShipOrder", {
|
|
621
|
+
status: { from: "confirmed", to: "shipped" },
|
|
622
|
+
trackingNumber: { from: null, to: "LIR-TRK-30028841" },
|
|
623
|
+
}, { actorUid: ARENA }),
|
|
624
|
+
entry(daysAgo(7), "system", "deliveryConfirmation", {
|
|
625
|
+
status: { from: "shipped", to: "delivered" },
|
|
626
|
+
}),
|
|
627
|
+
// A PARTIAL refund. It changes no tracked field, so it can only reach the
|
|
628
|
+
// timeline as an explicit contribution — diffing `refunds[]` would render
|
|
629
|
+
// as "an array of 0 became an array of 1", which is true and useless.
|
|
630
|
+
entry(daysAgo(6), "admin", "postRefundEvent", {
|
|
631
|
+
refund: {
|
|
632
|
+
from: null,
|
|
633
|
+
to: { refundId: "refund-x-knife-shinobi-1", type: "partial", amount: 120, reason: "Minor box damage in transit" },
|
|
634
|
+
},
|
|
635
|
+
}, { actorUid: BUYER_ADMIN, reason: "Minor box damage in transit" }),
|
|
636
|
+
],
|
|
637
|
+
trackingNumber: "LIR-TRK-30028841",
|
|
638
|
+
shippingCarrier: "Delhivery",
|
|
639
|
+
},
|
|
640
|
+
// ── pre-order — deposit taken, balance outstanding ────────────────────
|
|
641
|
+
{
|
|
642
|
+
id: "order-1-20260819-preordr",
|
|
643
|
+
productId: "preorder-beyblade-x-bx-08-wave",
|
|
644
|
+
productTitle: "Beyblade X BX-08 Wave (Pre-Order)",
|
|
645
|
+
userId: BUYER_YUGI,
|
|
646
|
+
userName: "Mock User 3",
|
|
647
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
648
|
+
storeId: ARENA,
|
|
649
|
+
quantity: 1,
|
|
650
|
+
unitPrice: 799,
|
|
651
|
+
totalPrice: 799,
|
|
652
|
+
currency: "INR",
|
|
653
|
+
status: "confirmed",
|
|
654
|
+
paymentStatus: "pending",
|
|
655
|
+
paymentMethod: "cash",
|
|
656
|
+
orderType: "preorder",
|
|
657
|
+
// 25% of ₹799 — matches `preOrderDepositPercent` on the product.
|
|
658
|
+
depositAmount: 199.75,
|
|
659
|
+
shippingAddress: "addr-yugi-home",
|
|
660
|
+
orderDate: daysAgo(5),
|
|
661
|
+
createdAt: daysAgo(5),
|
|
662
|
+
updatedAt: daysAgo(5),
|
|
663
|
+
sourceContext: {
|
|
664
|
+
path: "pre-order",
|
|
665
|
+
depositAmount: 199.75,
|
|
666
|
+
balanceDue: 599.25,
|
|
667
|
+
},
|
|
668
|
+
statusHistory: [
|
|
669
|
+
entry(daysAgo(5), "buyer", "createCheckoutOrder", {
|
|
670
|
+
status: { from: null, to: "pending" },
|
|
671
|
+
}, { actorUid: BUYER_YUGI }),
|
|
672
|
+
entry(daysAgo(5), "seller", "updateOrderStatus", {
|
|
673
|
+
status: { from: "pending", to: "confirmed" },
|
|
674
|
+
}, { actorUid: ARENA, note: "Deposit received — balance due on dispatch." }),
|
|
675
|
+
],
|
|
676
|
+
},
|
|
677
|
+
// ── prize-draw — several entries bought in one order ──────────────────
|
|
678
|
+
{
|
|
679
|
+
id: "order-1-20260821-prizedr",
|
|
680
|
+
productId: "prizedraw-beyblade-mystery-box",
|
|
681
|
+
productTitle: "Beyblade Mystery Box — Prize Draw",
|
|
682
|
+
userId: BUYER_KAIBA,
|
|
683
|
+
userName: "Mock User 2",
|
|
684
|
+
userEmail: "vivaan.kapoor@gmail.com",
|
|
685
|
+
storeId: ARENA,
|
|
686
|
+
quantity: 3,
|
|
687
|
+
unitPrice: 99,
|
|
688
|
+
totalPrice: 297,
|
|
689
|
+
currency: "INR",
|
|
690
|
+
status: "confirmed",
|
|
691
|
+
paymentStatus: "paid",
|
|
692
|
+
paymentMethod: "cash",
|
|
693
|
+
orderType: "prize-draw",
|
|
694
|
+
shippingAddress: "addr-kaiba-mansion",
|
|
695
|
+
orderDate: daysAgo(3),
|
|
696
|
+
createdAt: daysAgo(3),
|
|
697
|
+
updatedAt: daysAgo(3),
|
|
698
|
+
sourceContext: {
|
|
699
|
+
path: "prize-draw",
|
|
700
|
+
prizeDrawProductId: "prizedraw-beyblade-mystery-box",
|
|
701
|
+
pricePerEntry: 99,
|
|
702
|
+
entryCount: 3,
|
|
703
|
+
// `prizeDrawMode` is reveal-vs-lottery, a different axis. This records
|
|
704
|
+
// the reveal TIMING: no reveal window means it reveals on sell-out.
|
|
705
|
+
revealMode: "instant",
|
|
706
|
+
},
|
|
707
|
+
statusHistory: [
|
|
708
|
+
entry(daysAgo(3), "buyer", "createCheckoutOrder", {
|
|
709
|
+
status: { from: null, to: "pending" },
|
|
710
|
+
}, { actorUid: BUYER_KAIBA }),
|
|
711
|
+
entry(daysAgo(3), "seller", "updateOrderStatus", {
|
|
712
|
+
status: { from: "pending", to: "confirmed" },
|
|
713
|
+
paymentStatus: { from: "pending", to: "paid" },
|
|
714
|
+
}, { actorUid: ARENA }),
|
|
715
|
+
],
|
|
716
|
+
},
|
|
717
|
+
];
|
|
387
718
|
export const ordersSeedData = [
|
|
388
719
|
cashOrderPendingProof,
|
|
389
720
|
cashOrderVerified,
|
|
390
|
-
...
|
|
721
|
+
...acquisitionOrders,
|
|
722
|
+
// The slice keeps the fixture count stable as fixtures are added above it —
|
|
723
|
+
// it used to be 48 for the two manual-payment orders, and now also absorbs
|
|
724
|
+
// the six acquisition-path orders.
|
|
725
|
+
...[..._rawOrdersSeedData, ...expandedOrders].slice(0, 42),
|
|
391
726
|
].map(withOrderImages);
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
* stub with the note "out of scope for the minimal Beyblade-focused demo catalog,"
|
|
5
5
|
* but unlike "live," art prints fit the Beyblade theme naturally as fan-art (see
|
|
6
6
|
* CLAUDE.md seed-data blandness sweep, 2026-08-20 session).
|
|
7
|
-
* WHAT: Exports
|
|
7
|
+
* WHAT: Exports 6 Beyblade fan-art print listings on Beyblade Arena, varying size,
|
|
8
8
|
* material, finish, and edition size (including one open-edition, no editionSize).
|
|
9
9
|
*
|
|
10
10
|
* EXPORTS:
|
|
11
|
-
* productsArtSeedData — Array of
|
|
11
|
+
* productsArtSeedData — Array of 6 Partial<ProductDocument> with listingType:"art"
|
|
12
12
|
*
|
|
13
13
|
* @tag domain:products,art
|
|
14
14
|
* @tag layer:seed
|
|
@@ -26,8 +26,8 @@ export const productsArtSeedData = [
|
|
|
26
26
|
slug: "art-dranzer-phoenix-poster",
|
|
27
27
|
title: "Dranzer Phoenix Rising — Fan Art Poster",
|
|
28
28
|
description: "A vibrant fan-art poster of Dranzer erupting in phoenix flame, hand-illustrated and giclée-printed on matte photo paper.",
|
|
29
|
-
categorySlugs: ["category-spinning-tops"],
|
|
30
|
-
categoryNames: ["Spinning Tops"],
|
|
29
|
+
categorySlugs: ["category-stadiums-standard", "category-gear-stadiums", "category-battle-gear", "category-spinning-tops"],
|
|
30
|
+
categoryNames: ["Standard Stadiums", "Stadiums", "Battle Gear", "Spinning Tops"],
|
|
31
31
|
brandSlug: "brand-beyblade",
|
|
32
32
|
brand: "Beyblade",
|
|
33
33
|
price: 599,
|
|
@@ -61,8 +61,8 @@ export const productsArtSeedData = [
|
|
|
61
61
|
slug: "art-valkyrie-holographic-print",
|
|
62
62
|
title: "Beyblade Burst Valkyrie — Holographic Art Print (Limited /100)",
|
|
63
63
|
description: "A limited-edition holographic art print of Valkyrie mid-battle, numbered out of 100. Ships in a rigid mailer to prevent bending.",
|
|
64
|
-
categorySlugs: ["category-beyblade-burst", "category-spinning-tops"],
|
|
65
|
-
categoryNames: ["Beyblade Burst", "Spinning Tops"],
|
|
64
|
+
categorySlugs: ["category-burst-classic", "category-burst-tops", "category-beyblade-burst", "category-spinning-tops"],
|
|
65
|
+
categoryNames: ["Burst Classic", "Burst Tops", "Beyblade Burst", "Spinning Tops"],
|
|
66
66
|
brandSlug: "brand-beyblade",
|
|
67
67
|
brand: "Beyblade",
|
|
68
68
|
price: 1299,
|
|
@@ -96,8 +96,8 @@ export const productsArtSeedData = [
|
|
|
96
96
|
slug: "art-beyblade-x-lineup-canvas",
|
|
97
97
|
title: "Beyblade X Full Lineup — Canvas Print",
|
|
98
98
|
description: "A gallery-style canvas print featuring the full current Beyblade X roster in battle formation. Stretched and ready to hang.",
|
|
99
|
-
categorySlugs: ["category-beyblade-x", "category-spinning-tops"],
|
|
100
|
-
categoryNames: ["Beyblade X", "Spinning Tops"],
|
|
99
|
+
categorySlugs: ["category-x-starters", "category-x-tops", "category-beyblade-x", "category-spinning-tops"],
|
|
100
|
+
categoryNames: ["Starter Sets", "Beyblade X Tops", "Beyblade X", "Spinning Tops"],
|
|
101
101
|
brandSlug: "brand-takara-tomy",
|
|
102
102
|
brand: "Takara-Tomy",
|
|
103
103
|
price: 2499,
|
|
@@ -134,8 +134,8 @@ export const productsArtSeedData = [
|
|
|
134
134
|
slug: "art-metal-fight-vintage-poster",
|
|
135
135
|
title: "Metal Fight Beyblade — Vintage-Style Poster (Open Edition)",
|
|
136
136
|
description: "A retro-styled poster celebrating the Metal Fight era, printed on demand — open edition, no print run limit.",
|
|
137
|
-
categorySlugs: ["category-beyblade-metal", "category-spinning-tops"],
|
|
138
|
-
categoryNames: ["Beyblade Metal Fight", "Spinning Tops"],
|
|
137
|
+
categorySlugs: ["category-metal-fusion", "category-metal-tops", "category-beyblade-metal", "category-spinning-tops"],
|
|
138
|
+
categoryNames: ["Metal Fusion", "Metal Fight Tops", "Beyblade Metal Fight", "Spinning Tops"],
|
|
139
139
|
brandSlug: "brand-takara-tomy",
|
|
140
140
|
brand: "Takara-Tomy",
|
|
141
141
|
price: 449,
|
|
@@ -166,8 +166,8 @@ export const productsArtSeedData = [
|
|
|
166
166
|
slug: "art-original-series-anniversary-print",
|
|
167
167
|
title: "Original Series 25th Anniversary — Glossy Art Print",
|
|
168
168
|
description: "A commemorative glossy print marking 25 years of the original Beyblade series, featuring Dragoon, Dranzer, Driger, and Draciel together.",
|
|
169
|
-
categorySlugs: ["category-beyblade-original", "category-spinning-tops"],
|
|
170
|
-
categoryNames: ["Beyblade Original", "Spinning Tops"],
|
|
169
|
+
categorySlugs: ["category-original-plastic-gen", "category-original-tops", "category-beyblade-original", "category-spinning-tops"],
|
|
170
|
+
categoryNames: ["Plastic Generation", "Original Tops", "Beyblade Original", "Spinning Tops"],
|
|
171
171
|
brandSlug: "brand-beyblade",
|
|
172
172
|
brand: "Beyblade",
|
|
173
173
|
price: 899,
|
|
@@ -196,4 +196,42 @@ export const productsArtSeedData = [
|
|
|
196
196
|
updatedAt: new Date("2026-08-19"),
|
|
197
197
|
searchTokens: buildSearchTokens("Original Series 25th Anniversary — Glossy Art Print", "Commemorative glossy print marking 25 years of the original Beyblade series.", "Beyblade", "brand-beyblade", ["Beyblade Original", "Spinning Tops"], ["fan-art", "vintage-collectible", "limited-run"]),
|
|
198
198
|
},
|
|
199
|
+
{
|
|
200
|
+
// Sold-out fixture. The canonical unavailable shape for a stock-only type:
|
|
201
|
+
// isSold + both quantities zeroed, and status STILL published — an
|
|
202
|
+
// archived row is hidden by the status filter before the availability
|
|
203
|
+
// predicate ever runs, so it would prove nothing.
|
|
204
|
+
id: "art-dragoon-galaxy-turbo-print-sold-out",
|
|
205
|
+
slug: "art-dragoon-galaxy-turbo-print-sold-out",
|
|
206
|
+
title: "Dragoon Galaxy Turbo — Fan Art Print (Sold Out)",
|
|
207
|
+
description: "A sold-out run of the Dragoon Galaxy Turbo fan-art print. Every copy of this edition has shipped.",
|
|
208
|
+
categorySlugs: ["category-original-hms", "category-original-tops", "category-beyblade-original", "category-spinning-tops"],
|
|
209
|
+
categoryNames: ["Heavy Metal System", "Original Tops", "Beyblade Original", "Spinning Tops"],
|
|
210
|
+
brandSlug: "brand-beyblade",
|
|
211
|
+
brand: "Beyblade",
|
|
212
|
+
price: 749,
|
|
213
|
+
currency: "INR",
|
|
214
|
+
stockQuantity: 0,
|
|
215
|
+
availableQuantity: 0,
|
|
216
|
+
isSold: true,
|
|
217
|
+
mainImage: seedExtMedia("https://picsum.photos/seed/art-image-dragoon-galaxy-sold-out-1-20260824/900/900"),
|
|
218
|
+
images: [
|
|
219
|
+
seedExtMedia("https://picsum.photos/seed/art-image-dragoon-galaxy-sold-out-1-20260824/900/900"),
|
|
220
|
+
],
|
|
221
|
+
status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
|
|
222
|
+
condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
|
|
223
|
+
listingType: "art",
|
|
224
|
+
storeId: "store-beyblade-arena",
|
|
225
|
+
storeName: "Beyblade Arena",
|
|
226
|
+
printMeta: { size: "18x24 in", material: "Archival cotton rag", finish: "Matte", editionSize: 40 },
|
|
227
|
+
customFields: [],
|
|
228
|
+
customSections: [],
|
|
229
|
+
featured: false,
|
|
230
|
+
isPromoted: false,
|
|
231
|
+
isOnSale: false,
|
|
232
|
+
tags: ["fan-art", "poster", "sold-out"],
|
|
233
|
+
createdAt: new Date("2026-08-24"),
|
|
234
|
+
updatedAt: new Date("2026-08-24"),
|
|
235
|
+
searchTokens: buildSearchTokens("Dragoon Galaxy Turbo — Fan Art Print (Sold Out)", "A sold-out run of the Dragoon Galaxy Turbo fan-art print.", "Beyblade", "brand-beyblade", ["Beyblade Original", "Spinning Tops"], ["fan-art", "poster", "sold-out"]),
|
|
236
|
+
},
|
|
199
237
|
];
|