@mohasinac/appkit 4.64.1 → 4.66.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/.build-stamp.json +3 -3
- package/dist/_internal/client/features/digital-code/CodeRevealPanel.js +4 -1
- package/dist/_internal/client/features/digital-code/DigitalContentPoolManager.js +5 -1
- package/dist/_internal/client/features/layout/DashboardLayoutClient.d.ts +1 -1
- package/dist/_internal/client/features/layout/DashboardLayoutClient.js +3 -1
- package/dist/_internal/client/features/lottery/LotteryAdminEditView.js +6 -2
- package/dist/_internal/client/features/lottery/LotteryAdminSlotView.js +5 -1
- package/dist/_internal/client/features/lottery/LotteryDetailView.js +6 -1
- package/dist/_internal/client/features/lottery/LotteryEntriesView.js +6 -1
- package/dist/_internal/client/features/lottery/LotteryListView.js +7 -1
- package/dist/_internal/client/features/lottery/LotteryPullForm.js +3 -1
- package/dist/_internal/client/features/lottery/LotterySlotGrid.js +3 -1
- package/dist/_internal/client/features/lottery/PrizeDrawLotteryDetailView.js +6 -1
- package/dist/_internal/client/scaffolds/AppShell.js +3 -1
- package/dist/_internal/server/features/account/data.js +2 -1
- package/dist/_internal/server/features/auctions/service.js +1 -1
- package/dist/_internal/server/features/auth/capabilities.js +1 -1
- package/dist/_internal/server/features/auth/permissions.js +1 -1
- package/dist/_internal/server/features/brands/actions.js +1 -1
- package/dist/_internal/server/features/brands/data.js +1 -1
- package/dist/_internal/server/features/brands/service.js +1 -1
- package/dist/_internal/server/features/bundles/actions.js +1 -1
- package/dist/_internal/server/features/bundles/data.js +2 -2
- package/dist/_internal/server/features/cart/actions.js +1 -1
- package/dist/_internal/server/features/cart/data.js +1 -1
- package/dist/_internal/server/features/cart/service.js +1 -1
- package/dist/_internal/server/features/categories/data.js +1 -1
- package/dist/_internal/server/features/checkout/actions.js +20 -3
- package/dist/_internal/server/features/checkout/group-rule-revalidation.js +1 -1
- package/dist/_internal/server/features/checkout/locked-lines.js +1 -1
- package/dist/_internal/server/features/checkout/upi-resolution.js +2 -1
- package/dist/_internal/server/features/grouped/data.js +2 -1
- package/dist/_internal/server/features/history/actions.d.ts +1 -1
- package/dist/_internal/server/features/history/actions.js +1 -1
- package/dist/_internal/server/features/history/data.d.ts +1 -1
- package/dist/_internal/server/features/history/data.js +1 -1
- package/dist/_internal/server/features/item-requests/data.js +1 -1
- package/dist/_internal/server/features/messages/actions.js +1 -1
- package/dist/_internal/server/features/payouts/actions.js +1 -1
- package/dist/_internal/server/features/pre-orders/actions.js +1 -1
- package/dist/_internal/server/features/pre-orders/service.js +1 -1
- package/dist/_internal/server/features/prize-draws/actions.js +1 -1
- package/dist/_internal/server/features/products/actions.js +1 -1
- package/dist/_internal/server/features/products/data.js +1 -1
- package/dist/_internal/server/features/products/list-public.js +1 -1
- package/dist/_internal/server/features/products/service.js +1 -1
- package/dist/_internal/server/features/promotions/actions.js +1 -1
- package/dist/_internal/server/features/promotions/adapters.js +9 -0
- package/dist/_internal/server/features/promotions/data.d.ts +24 -3
- package/dist/_internal/server/features/promotions/data.js +41 -6
- package/dist/_internal/server/features/promotions/index.d.ts +1 -1
- package/dist/_internal/server/features/promotions/index.js +1 -1
- package/dist/_internal/server/features/promotions/service.js +1 -1
- package/dist/_internal/server/features/search/index-build/sources.js +27 -12
- package/dist/_internal/server/features/seo/sitemap.js +79 -13
- package/dist/_internal/server/features/shared/listing-data-factory.js +1 -1
- package/dist/_internal/server/features/shipping/courier-block.js +1 -1
- package/dist/_internal/server/features/site-settings/adapters.d.ts +1 -1
- package/dist/_internal/server/features/site-settings/adapters.js +16 -1
- package/dist/_internal/server/features/sticker-trace/promote-to-listings.js +1 -1
- package/dist/_internal/server/features/stores/adapters.d.ts +1 -1
- package/dist/_internal/server/features/stores/adapters.js +14 -0
- package/dist/_internal/server/features/stores/data.js +1 -1
- package/dist/_internal/server/features/stores/tabs.d.ts +19 -15
- package/dist/_internal/server/features/stores/tabs.js +20 -21
- package/dist/_internal/server/features/sublisting-categories/data.js +1 -1
- package/dist/_internal/server/features/wishlist/actions.d.ts +1 -1
- package/dist/_internal/server/features/wishlist/actions.js +1 -1
- package/dist/_internal/server/features/wishlist/data.d.ts +1 -1
- package/dist/_internal/server/features/wishlist/data.js +1 -1
- package/dist/_internal/server/jobs/core/analyticsAlertEvaluate.js +9 -4
- package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +1 -1
- package/dist/_internal/server/jobs/core/cartPrune.js +1 -1
- package/dist/_internal/server/jobs/core/catalogueImageStalenessReminder.js +1 -1
- package/dist/_internal/server/jobs/core/categoryTaxonomyBackfill.js +22 -0
- package/dist/_internal/server/jobs/core/cleanupRtdbEvents.js +1 -1
- package/dist/_internal/server/jobs/core/countersReconcile.js +0 -1
- package/dist/_internal/server/jobs/core/couponExpiry.js +1 -1
- package/dist/_internal/server/jobs/core/dailyDataCleanup.js +2 -1
- package/dist/_internal/server/jobs/core/draftPrune.js +1 -1
- package/dist/_internal/server/jobs/core/hardBanReinstatement.js +1 -1
- package/dist/_internal/server/jobs/core/newsletterExport.js +1 -1
- package/dist/_internal/server/jobs/core/notificationPrune.js +1 -1
- package/dist/_internal/server/jobs/core/onJobCreated.js +1 -1
- package/dist/_internal/server/jobs/core/onOrderCreate.js +3 -1
- package/dist/_internal/server/jobs/core/onProductWrite.js +2 -1
- package/dist/_internal/server/jobs/core/onScamReportCreate.js +2 -1
- package/dist/_internal/server/jobs/core/onScamReportRejected.js +1 -1
- package/dist/_internal/server/jobs/core/onScamReportVerified.js +1 -1
- package/dist/_internal/server/jobs/core/revenueRollup.js +1 -1
- package/dist/_internal/server/jobs/core/runJobOnce.js +1 -1
- package/dist/_internal/server/jobs/core/sellerStandingRollup.js +1 -1
- package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +1 -1
- package/dist/_internal/server/jobs/handlers/onCatalogueSubmittedForApproval.js +2 -2
- package/dist/_internal/shared/features/blog/schema.d.ts +12 -12
- package/dist/_internal/shared/features/brands/schema.d.ts +19 -19
- package/dist/_internal/shared/features/cart/schema.d.ts +17 -17
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +60 -60
- package/dist/_internal/shared/features/events/schema.d.ts +4 -4
- package/dist/_internal/shared/features/orders/schema.d.ts +8 -8
- package/dist/_internal/shared/features/products/schema.d.ts +2 -2
- package/dist/_internal/shared/features/promotions/schema.d.ts +12 -12
- package/dist/_internal/shared/features/reviews/schema.d.ts +3 -3
- package/dist/_internal/shared/features/site-settings/types.d.ts +10 -2
- package/dist/_internal/shared/features/sticker-trace/trace/segment.js +13 -2
- package/dist/_internal/shared/listing-types/feature-flags.d.ts +54 -0
- package/dist/_internal/shared/listing-types/feature-flags.js +72 -0
- package/dist/client.d.ts +225 -117
- package/dist/client.js +148 -74
- package/dist/constants/field-names.d.ts +1 -0
- package/dist/constants/field-names.js +14 -0
- package/dist/errors/error-handler.d.ts +1 -1
- package/dist/features/about/components/AboutView.js +9 -1
- package/dist/features/about/components/DeveloperView.js +8 -2
- package/dist/features/about/components/FAQPageView.js +5 -2
- package/dist/features/about/components/FeesView.js +4 -1
- package/dist/features/about/components/GstExplainerView.js +6 -1
- package/dist/features/about/components/GuidesHubView.js +5 -1
- package/dist/features/about/components/HelpPageView.js +6 -2
- package/dist/features/about/components/HowAuctionsWorkView.js +6 -2
- package/dist/features/about/components/HowCheckoutWorksView.js +6 -2
- package/dist/features/about/components/HowEmiWorksView.js +7 -2
- package/dist/features/about/components/HowOffersWorkView.js +6 -2
- package/dist/features/about/components/HowOrdersWorkView.js +6 -2
- package/dist/features/about/components/HowPayoutsWorkView.js +6 -2
- package/dist/features/about/components/HowPreOrdersWorkView.js +6 -2
- package/dist/features/about/components/HowReviewsWorkView.js +6 -2
- package/dist/features/about/components/PolicyPageView.js +6 -3
- package/dist/features/about/components/ProseHero.js +3 -1
- package/dist/features/about/components/PublicProfileView.js +6 -1
- package/dist/features/about/components/SecurityPrivacyView.js +6 -2
- package/dist/features/about/components/ShippingPolicyView.js +7 -3
- package/dist/features/about/components/SpotAFakeView.js +6 -1
- package/dist/features/about/components/TrackOrderView.js +5 -2
- package/dist/features/about/components/UnauthorizedView.js +5 -2
- package/dist/features/about/schemas/index.d.ts +18 -18
- package/dist/features/account/api/[userId]/addresses/route.js +1 -5
- package/dist/features/account/components/AddressBook.js +4 -1
- package/dist/features/account/components/AddressFilters.js +1 -1
- package/dist/features/account/components/AddressForm.js +1 -1
- package/dist/features/account/components/AddressSelectorCreate.js +2 -1
- package/dist/features/account/components/AddressesIndexListing.js +5 -1
- package/dist/features/account/components/BecomeSellerView.js +2 -1
- package/dist/features/account/components/BuyerAccountGuideView.js +6 -1
- package/dist/features/account/components/BuyerAuctionsGuideView.js +5 -1
- package/dist/features/account/components/BuyerOrdersGuideView.js +5 -1
- package/dist/features/account/components/BuyerShoppingGuideView.js +5 -1
- package/dist/features/account/components/LinkedAccountsSection.js +5 -1
- package/dist/features/account/components/NotificationBell.js +8 -1
- package/dist/features/account/components/NotificationPreferencesPanel.js +6 -1
- package/dist/features/account/components/OrderDetailView.d.ts +1 -1
- package/dist/features/account/components/OrderDetailView.js +1 -1
- package/dist/features/account/components/ProfileView.d.ts +1 -1
- package/dist/features/account/components/ProfileView.js +1 -1
- package/dist/features/account/components/UserAccountHubView.d.ts +1 -1
- package/dist/features/account/components/UserAccountHubView.js +1 -1
- package/dist/features/account/components/UserBidsView.js +5 -1
- package/dist/features/account/components/UserOffersPanel.js +9 -1
- package/dist/features/account/components/UserOrderTrackView.d.ts +1 -1
- package/dist/features/account/components/UserOrderTrackView.js +1 -1
- package/dist/features/account/components/UserOrdersView.js +6 -1
- package/dist/features/account/components/UserReturnsView.js +3 -1
- package/dist/features/account/components/UserSidebar.js +8 -1
- package/dist/features/account/schemas/index.d.ts +10 -10
- package/dist/features/addresses/repository/addresses.repository.js +1 -1
- package/dist/features/addresses/schemas/address-form.d.ts +16 -16
- package/dist/features/addresses/schemas/index.d.ts +2 -2
- package/dist/features/admin/actions/admin-actions.d.ts +3 -3
- package/dist/features/admin/actions/admin-coupon-actions.d.ts +1 -1
- package/dist/features/admin/actions/admin-read-actions.d.ts +3 -3
- package/dist/features/admin/api/bids/route.js +1 -5
- package/dist/features/admin/api/coupons/route.js +1 -5
- package/dist/features/admin/api/products/route.js +1 -5
- package/dist/features/admin/api/reviews/route.js +1 -5
- package/dist/features/admin/components/AdminActionIndexView.d.ts +1 -1
- package/dist/features/admin/components/AdminActionIndexView.js +7 -1
- package/dist/features/admin/components/AdminAdEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminAdEditorView.js +8 -1
- package/dist/features/admin/components/AdminAddressBookView.js +8 -1
- package/dist/features/admin/components/AdminAddressClustersView.js +7 -1
- package/dist/features/admin/components/AdminAddressEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminAddressEditorView.js +4 -1
- package/dist/features/admin/components/AdminAddressesView.js +6 -1
- package/dist/features/admin/components/AdminAllEventEntriesView.d.ts +1 -1
- package/dist/features/admin/components/AdminAllEventEntriesView.js +5 -1
- package/dist/features/admin/components/AdminAnalyticsGuideView.js +5 -1
- package/dist/features/admin/components/AdminAnalyticsView.js +4 -2
- package/dist/features/admin/components/AdminArtView.d.ts +1 -1
- package/dist/features/admin/components/AdminArtView.js +1 -1
- package/dist/features/admin/components/AdminAuditLogView.d.ts +1 -1
- package/dist/features/admin/components/AdminAuditLogView.js +5 -1
- package/dist/features/admin/components/AdminBeysView.d.ts +1 -1
- package/dist/features/admin/components/AdminBeysView.js +3 -1
- package/dist/features/admin/components/AdminBidsView.d.ts +1 -1
- package/dist/features/admin/components/AdminBidsView.js +7 -2
- package/dist/features/admin/components/AdminBlogEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminBlogEditorView.js +14 -2
- package/dist/features/admin/components/AdminBlogView.d.ts +1 -1
- package/dist/features/admin/components/AdminBlogView.js +2 -1
- package/dist/features/admin/components/AdminBrandEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminBrandEditorView.js +7 -2
- package/dist/features/admin/components/AdminBrandsView.d.ts +1 -1
- package/dist/features/admin/components/AdminBrandsView.js +4 -2
- package/dist/features/admin/components/AdminBundleEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminBundleEditorView.js +3 -1
- package/dist/features/admin/components/AdminBundlesView.js +7 -1
- package/dist/features/admin/components/AdminCarouselEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminCarouselEditorView.js +12 -3
- package/dist/features/admin/components/AdminCarouselGroupEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminCarouselView.d.ts +1 -1
- package/dist/features/admin/components/AdminCarouselView.js +16 -2
- package/dist/features/admin/components/AdminCartsView.d.ts +1 -1
- package/dist/features/admin/components/AdminCartsView.js +3 -1
- package/dist/features/admin/components/AdminCatalogGuideView.js +5 -1
- package/dist/features/admin/components/AdminCategoriesView.d.ts +1 -1
- package/dist/features/admin/components/AdminCategoriesView.js +3 -1
- package/dist/features/admin/components/AdminCategoryEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminCategoryEditorView.js +2 -2
- package/dist/features/admin/components/AdminClassifiedView.d.ts +1 -1
- package/dist/features/admin/components/AdminClassifiedView.js +1 -1
- package/dist/features/admin/components/AdminContactView.d.ts +1 -1
- package/dist/features/admin/components/AdminContactView.js +5 -1
- package/dist/features/admin/components/AdminContentGuideView.js +5 -1
- package/dist/features/admin/components/AdminCouponEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminCouponEditorView.js +5 -1
- package/dist/features/admin/components/AdminCouponsView.d.ts +1 -1
- package/dist/features/admin/components/AdminCouponsView.js +6 -1
- package/dist/features/admin/components/AdminDashboardView.d.ts +1 -1
- package/dist/features/admin/components/AdminDashboardView.js +2 -2
- package/dist/features/admin/components/AdminDigitalCodesView.d.ts +1 -1
- package/dist/features/admin/components/AdminDigitalCodesView.js +1 -1
- package/dist/features/admin/components/AdminFaqEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminFaqEditorView.js +12 -2
- package/dist/features/admin/components/AdminFaqsView.d.ts +1 -1
- package/dist/features/admin/components/AdminFaqsView.js +3 -1
- package/dist/features/admin/components/AdminFeatureEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminFeatureEditorView.js +6 -2
- package/dist/features/admin/components/AdminFeaturesView.d.ts +1 -1
- package/dist/features/admin/components/AdminFeaturesView.js +2 -1
- package/dist/features/admin/components/AdminFulfillmentView.js +2 -1
- package/dist/features/admin/components/AdminGatewayEventsView.d.ts +1 -1
- package/dist/features/admin/components/AdminGatewayEventsView.js +8 -1
- package/dist/features/admin/components/AdminGroupedListingsView.d.ts +1 -1
- package/dist/features/admin/components/AdminGroupedListingsView.js +7 -2
- package/dist/features/admin/components/AdminGuideHubView.js +7 -2
- package/dist/features/admin/components/AdminHistoryView.d.ts +1 -1
- package/dist/features/admin/components/AdminHistoryView.js +1 -1
- package/dist/features/admin/components/AdminIntegrationsView.js +6 -1
- package/dist/features/admin/components/AdminInvoicingView.js +6 -1
- package/dist/features/admin/components/AdminLiveView.d.ts +1 -1
- package/dist/features/admin/components/AdminLiveView.js +1 -1
- package/dist/features/admin/components/AdminMediaView.d.ts +1 -1
- package/dist/features/admin/components/AdminMediaView.js +11 -1
- package/dist/features/admin/components/AdminMoneyCasesView.d.ts +1 -1
- package/dist/features/admin/components/AdminMoneyCasesView.js +7 -1
- package/dist/features/admin/components/AdminNavEditorView.js +3 -1
- package/dist/features/admin/components/AdminNavigationView.d.ts +1 -1
- package/dist/features/admin/components/AdminNavigationView.js +10 -1
- package/dist/features/admin/components/AdminNewsletterView.d.ts +1 -1
- package/dist/features/admin/components/AdminNewsletterView.js +7 -1
- package/dist/features/admin/components/AdminNotificationsView.d.ts +1 -1
- package/dist/features/admin/components/AdminNotificationsView.js +5 -1
- package/dist/features/admin/components/AdminOffersView.d.ts +1 -1
- package/dist/features/admin/components/AdminOffersView.js +5 -1
- package/dist/features/admin/components/AdminOrderEditorView.js +8 -2
- package/dist/features/admin/components/AdminOrdersGuideView.js +4 -1
- package/dist/features/admin/components/AdminOrdersView.d.ts +1 -1
- package/dist/features/admin/components/AdminOrdersView.js +3 -1
- package/dist/features/admin/components/AdminPartsView.d.ts +1 -1
- package/dist/features/admin/components/AdminPartsView.js +3 -1
- package/dist/features/admin/components/AdminPaymentClustersView.js +7 -1
- package/dist/features/admin/components/AdminPaymentMethodsView.js +7 -1
- package/dist/features/admin/components/AdminPaymentsGuideView.js +4 -1
- package/dist/features/admin/components/AdminPayoutsView.d.ts +1 -1
- package/dist/features/admin/components/AdminPayoutsView.js +5 -1
- package/dist/features/admin/components/AdminPrizeDrawsView.d.ts +1 -1
- package/dist/features/admin/components/AdminPrizeDrawsView.js +7 -1
- package/dist/features/admin/components/AdminProductEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminProductEditorView.js +5 -2
- package/dist/features/admin/components/AdminProductsView.d.ts +1 -1
- package/dist/features/admin/components/AdminProductsView.js +5 -2
- package/dist/features/admin/components/AdminReturnRequestsView.js +3 -1
- package/dist/features/admin/components/AdminReviewsView.d.ts +1 -1
- package/dist/features/admin/components/AdminReviewsView.js +8 -1
- package/dist/features/admin/components/AdminScammersView.d.ts +1 -1
- package/dist/features/admin/components/AdminScammersView.js +5 -1
- package/dist/features/admin/components/AdminSectionsView.js +1 -1
- package/dist/features/admin/components/AdminSessionsManager.js +1 -1
- package/dist/features/admin/components/AdminSessionsView.d.ts +1 -1
- package/dist/features/admin/components/AdminSessionsView.js +6 -1
- package/dist/features/admin/components/AdminSidebar.js +7 -1
- package/dist/features/admin/components/AdminSiteConfigGuideView.js +5 -1
- package/dist/features/admin/components/AdminSiteSettingsView.d.ts +1 -1
- package/dist/features/admin/components/AdminSiteSettingsView.js +21 -5
- package/dist/features/admin/components/AdminSparesView.d.ts +1 -1
- package/dist/features/admin/components/AdminSparesView.js +1 -1
- package/dist/features/admin/components/AdminStickersView.d.ts +1 -1
- package/dist/features/admin/components/AdminStickersView.js +1 -1
- package/dist/features/admin/components/AdminStoreAddressesView.js +1 -1
- package/dist/features/admin/components/AdminStoreEditorView.js +7 -1
- package/dist/features/admin/components/AdminStoresGuideView.js +5 -1
- package/dist/features/admin/components/AdminStoresView.d.ts +1 -1
- package/dist/features/admin/components/AdminStoresView.js +4 -1
- package/dist/features/admin/components/AdminSublistingCategoryEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminSublistingCategoryEditorView.js +8 -3
- package/dist/features/admin/components/AdminSupportTicketDetailView.js +12 -1
- package/dist/features/admin/components/AdminSupportTicketsView.d.ts +1 -1
- package/dist/features/admin/components/AdminSupportTicketsView.js +4 -1
- package/dist/features/admin/components/AdminTaxCodeEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminTaxCodeEditorView.js +4 -1
- package/dist/features/admin/components/AdminTaxCodesView.d.ts +1 -1
- package/dist/features/admin/components/AdminTaxCodesView.js +1 -1
- package/dist/features/admin/components/AdminTeamGuideView.js +5 -1
- package/dist/features/admin/components/AdminTeamView.d.ts +1 -1
- package/dist/features/admin/components/AdminTeamView.js +4 -1
- package/dist/features/admin/components/AdminTesterChecklistItemEditorView.d.ts +1 -1
- package/dist/features/admin/components/AdminTesterChecklistItemEditorView.js +4 -1
- package/dist/features/admin/components/AdminTesterChecklistView.d.ts +1 -1
- package/dist/features/admin/components/AdminTesterChecklistView.js +4 -1
- package/dist/features/admin/components/AdminTopBar.js +1 -1
- package/dist/features/admin/components/AdminTrustGuideView.js +5 -1
- package/dist/features/admin/components/AdminUserEditorView.js +12 -1
- package/dist/features/admin/components/AdminUsersGuideView.js +5 -1
- package/dist/features/admin/components/AdminUsersView.d.ts +1 -1
- package/dist/features/admin/components/AdminViewCards.js +4 -1
- package/dist/features/admin/components/AdminWishlistsView.d.ts +1 -1
- package/dist/features/admin/components/AdminWishlistsView.js +1 -1
- package/dist/features/admin/components/DashboardStats.js +3 -1
- package/dist/features/admin/components/DataListingView.d.ts +1 -1
- package/dist/features/admin/components/DataListingView.js +14 -2
- package/dist/features/admin/components/DataTable.js +7 -1
- package/dist/features/admin/components/OwnerQuickActions.d.ts +7 -1
- package/dist/features/admin/components/OwnerQuickActions.js +3 -2
- package/dist/features/admin/components/QuickEditMenu.js +2 -1
- package/dist/features/admin/components/ViewAuditLogEntryModal.js +6 -1
- package/dist/features/admin/components/ViewNotificationModal.js +6 -1
- package/dist/features/admin/components/analytics/AdminAnalyticsCharts.js +2 -1
- package/dist/features/admin/components/analytics/AdminStatCard.js +3 -1
- package/dist/features/admin/components/analytics/AdminTopProductsTable.js +3 -1
- package/dist/features/admin/components/sections/adminSectionsTypes.js +1 -0
- package/dist/features/admin/constants/site-settings-tabs.d.ts +1 -1
- package/dist/features/admin/hooks/useAdminListing.d.ts +1 -1
- package/dist/features/admin/hooks/useOptimisticRowFlag.js +1 -1
- package/dist/features/admin/schemas/action-index-form.d.ts +2 -2
- package/dist/features/admin/schemas/admin-editor-forms.d.ts +12 -12
- package/dist/features/admin/schemas/admin-editor-forms.js +0 -1
- package/dist/features/admin/schemas/admin-ops-forms.d.ts +8 -8
- package/dist/features/admin/schemas/admin-user-form.d.ts +8 -8
- package/dist/features/admin/schemas/firestore.d.ts +52 -0
- package/dist/features/admin/schemas/firestore.js +20 -0
- package/dist/features/admin/schemas/nav-item-form.d.ts +8 -8
- package/dist/features/auctions/actions/bid-actions.js +1 -1
- package/dist/features/auctions/api/route.js +1 -8
- package/dist/features/auctions/components/AuctionBidsTable.js +6 -1
- package/dist/features/auctions/components/AuctionBottomActions.js +1 -1
- package/dist/features/auctions/components/AuctionDetailPageView.js +12 -9
- package/dist/features/auctions/components/AuctionFilters.js +1 -1
- package/dist/features/auctions/components/AuctionLiveStatusBadge.js +1 -1
- package/dist/features/auctions/components/AuctionsListView.js +3 -1
- package/dist/features/auctions/components/CollapsibleBidHistory.js +4 -1
- package/dist/features/auctions/components/LiveBidPrice.js +3 -1
- package/dist/features/auctions/components/LiveMinIncrement.js +1 -1
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +1 -1
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +9 -3
- package/dist/features/auctions/components/MarketplaceAuctionGrid.d.ts +1 -1
- package/dist/features/auctions/components/MarketplaceAuctionGrid.js +3 -1
- package/dist/features/auctions/components/PlaceBidFormClient.js +8 -1
- package/dist/features/auctions/schemas/index.d.ts +34 -34
- package/dist/features/auth/components/ForgotPasswordView.js +6 -1
- package/dist/features/auth/components/Guards.js +4 -1
- package/dist/features/auth/components/LoginForm.js +7 -1
- package/dist/features/auth/components/OAuthLoadingView.js +3 -1
- package/dist/features/auth/components/RegisterForm.js +5 -1
- package/dist/features/auth/components/ResetPasswordView.js +6 -1
- package/dist/features/auth/components/SocialAuthButtons.js +4 -1
- package/dist/features/auth/components/VerifyEmailView.js +4 -1
- package/dist/features/auth/hooks/useAuth.js +1 -1
- package/dist/features/auth/schemas/index.d.ts +2 -2
- package/dist/features/before-after/api/route.js +1 -5
- package/dist/features/before-after/components/BeforeAfterGallery.js +3 -1
- package/dist/features/before-after/components/BeforeAfterSlider.js +3 -1
- package/dist/features/before-after/schemas/index.d.ts +4 -4
- package/dist/features/beys/components/BeyDetailPageView.js +7 -1
- package/dist/features/blog/actions/blog-actions.d.ts +39 -39
- package/dist/features/blog/api/route.js +1 -8
- package/dist/features/blog/components/BlogFeaturedCard.js +6 -1
- package/dist/features/blog/components/BlogFilters.js +1 -1
- package/dist/features/blog/components/BlogIndexListing.js +7 -1
- package/dist/features/blog/components/BlogIndexPageView.d.ts +2 -3
- package/dist/features/blog/components/BlogIndexPageView.js +9 -10
- package/dist/features/blog/components/BlogListView.js +6 -1
- package/dist/features/blog/components/BlogPostForm.js +9 -2
- package/dist/features/blog/components/BlogPostView.js +5 -1
- package/dist/features/blog/schemas/blog-form.d.ts +10 -10
- package/dist/features/blog/schemas/index.d.ts +80 -80
- package/dist/features/cart/actions/cart-actions.js +1 -1
- package/dist/features/cart/api/route.js +1 -5
- package/dist/features/cart/components/CartDrawer.js +6 -1
- package/dist/features/cart/components/CartGroupLineRow.js +5 -1
- package/dist/features/cart/components/CartPriceBreakdown.js +4 -1
- package/dist/features/cart/components/CartSummary.js +2 -1
- package/dist/features/cart/components/CartView.js +3 -1
- package/dist/features/cart/components/CheckoutAddressStep.js +3 -1
- package/dist/features/cart/components/CheckoutSuccessView.d.ts +1 -1
- package/dist/features/cart/components/CheckoutSuccessView.js +1 -1
- package/dist/features/cart/components/CheckoutView.js +3 -1
- package/dist/features/cart/components/PointsTenderPicker.js +3 -1
- package/dist/features/cart/components/ShippingPicker.js +4 -1
- package/dist/features/cart/components/StoreAddonsPicker.js +3 -1
- package/dist/features/cart/schemas/index.d.ts +30 -30
- package/dist/features/cart/utils/guest-cart.js +1 -5
- package/dist/features/catalogue/actions/approve-catalogue-listing.js +1 -1
- package/dist/features/catalogue/actions/list-from-catalogue.js +2 -1
- package/dist/features/catalogue/actions/submit-for-approval.js +1 -1
- package/dist/features/catalogue/components/AdminCatalogueApprovalsView.js +6 -1
- package/dist/features/catalogue/components/CatalogueItemEditorView.js +1 -1
- package/dist/features/catalogue/components/PublicCatalogueItemDetailView.js +6 -1
- package/dist/features/catalogue/components/PublicCatalogueView.js +5 -1
- package/dist/features/catalogue/components/UserCatalogueView.js +7 -1
- package/dist/features/catalogue/repository/catalogue.repository.js +1 -1
- package/dist/features/catalogue/schemas/validation.d.ts +12 -12
- package/dist/features/catalogue/utils/product-from-item.js +1 -1
- package/dist/features/categories/api/route.js +5 -23
- package/dist/features/categories/components/BrandDetailPageView.js +6 -2
- package/dist/features/categories/components/BrandDetailTabs.js +2 -1
- package/dist/features/categories/components/BreadcrumbTrail.js +4 -2
- package/dist/features/categories/components/BundleBuyNowCta.js +5 -2
- package/dist/features/categories/components/BundleCollage.js +5 -1
- package/dist/features/categories/components/BundleDetailView.js +6 -1
- package/dist/features/categories/components/BundleDynamicRuleEditor.js +6 -1
- package/dist/features/categories/components/BundleItemsPicker.js +7 -1
- package/dist/features/categories/components/BundlesListView.d.ts +2 -3
- package/dist/features/categories/components/BundlesListView.js +6 -7
- package/dist/features/categories/components/CategoriesIndexListing.js +55 -6
- package/dist/features/categories/components/CategoriesIndexPageView.d.ts +2 -3
- package/dist/features/categories/components/CategoriesIndexPageView.js +3 -33
- package/dist/features/categories/components/CategoryBundlesListing.js +8 -2
- package/dist/features/categories/components/CategoryDetailPageView.js +7 -2
- package/dist/features/categories/components/CategoryDetailTabs.js +2 -1
- package/dist/features/categories/components/CategoryFilters.js +1 -1
- package/dist/features/categories/components/CategoryForm.js +3 -1
- package/dist/features/categories/components/CategoryGrid.js +3 -1
- package/dist/features/categories/components/CategoryHighlightsAndFaqSection.js +3 -1
- package/dist/features/categories/components/CategoryProductsListing.js +8 -1
- package/dist/features/categories/components/CategorySelectorCreate.js +6 -1
- package/dist/features/categories/components/CategorySortSelect.js +4 -1
- package/dist/features/categories/components/CategoryStoresListing.js +2 -1
- package/dist/features/categories/components/CategoryTableColumns.js +6 -2
- package/dist/features/categories/components/CategoryTemplatePicker.js +4 -1
- package/dist/features/categories/components/CategoryTree.js +2 -1
- package/dist/features/categories/components/ConcernCard.js +3 -1
- package/dist/features/categories/components/ConcernGrid.js +1 -1
- package/dist/features/categories/components/PriceGuidanceHint.js +3 -1
- package/dist/features/categories/components/SubcategoryCardRow.js +4 -1
- package/dist/features/categories/constants/category-tabs.d.ts +1 -1
- package/dist/features/categories/constants/category-tabs.js +7 -0
- package/dist/features/categories/hooks/useCategories.d.ts +6 -0
- package/dist/features/categories/hooks/useCategories.js +73 -2
- package/dist/features/categories/schemas/bundle-form.d.ts +22 -22
- package/dist/features/categories/schemas/index.d.ts +100 -100
- package/dist/features/categories/types/index.d.ts +1 -1
- package/dist/features/checkout/components/CheckoutStepper.js +3 -1
- package/dist/features/classified/components/ClassifiedDetailPageView.js +9 -9
- package/dist/features/classified/components/ClassifiedFilters.js +3 -1
- package/dist/features/collections/api/route.js +1 -5
- package/dist/features/collections/components/CollectionCard.js +4 -1
- package/dist/features/collections/schemas/index.d.ts +9 -9
- package/dist/features/consultation/api/route.js +1 -5
- package/dist/features/consultation/components/ConsultationForm.js +3 -1
- package/dist/features/consultation/schemas/index.d.ts +8 -8
- package/dist/features/contact/components/ContactForm.js +5 -2
- package/dist/features/contact/components/ContactInfoSidebar.js +4 -1
- package/dist/features/contact/components/ContactPageView.js +6 -1
- package/dist/features/contact/email.js +2 -5
- package/dist/features/corporate/api/route.js +1 -5
- package/dist/features/corporate/components/CorporateInquiryForm.js +3 -1
- package/dist/features/dashboard/components/DashboardHubView.js +7 -1
- package/dist/features/digital-codes/components/DigitalCodeDetailPageView.js +8 -8
- package/dist/features/digital-codes/components/DigitalCodeFilters.js +1 -1
- package/dist/features/dispute-reasons/components/AdminDisputeReasonsView.js +4 -1
- package/dist/features/events/components/AdminEventEditorView.d.ts +1 -1
- package/dist/features/events/components/AdminEventEditorView.js +14 -3
- package/dist/features/events/components/AdminEventEntriesView.js +10 -2
- package/dist/features/events/components/AdminEventsView.d.ts +1 -1
- package/dist/features/events/components/AdminEventsView.js +2 -1
- package/dist/features/events/components/EventBanner.js +3 -1
- package/dist/features/events/components/EventCard.js +7 -1
- package/dist/features/events/components/EventDetailView.d.ts +1 -1
- package/dist/features/events/components/EventDetailView.js +1 -1
- package/dist/features/events/components/EventFilters.js +1 -1
- package/dist/features/events/components/EventFormDrawer.js +1 -1
- package/dist/features/events/components/EventInsights.js +3 -1
- package/dist/features/events/components/EventLeaderboard.js +3 -1
- package/dist/features/events/components/EventLikeButton.js +4 -1
- package/dist/features/events/components/EventLikersRail.js +5 -1
- package/dist/features/events/components/EventOfferCard.js +3 -1
- package/dist/features/events/components/EventParticipateView.js +1 -1
- package/dist/features/events/components/EventPollWidget.js +8 -1
- package/dist/features/events/components/EventRaffleEntryForm.js +3 -1
- package/dist/features/events/components/EventRaffleWinnerView.js +6 -1
- package/dist/features/events/components/EventRafflesSection.js +3 -1
- package/dist/features/events/components/EventSaleBanner.js +4 -1
- package/dist/features/events/components/EventStatusBadge.js +1 -1
- package/dist/features/events/components/EventTypeBadge.js +1 -1
- package/dist/features/events/components/EventsIndexListing.js +7 -1
- package/dist/features/events/components/EventsListPageView.d.ts +2 -3
- package/dist/features/events/components/EventsListPageView.js +11 -12
- package/dist/features/events/components/EventsListView.js +4 -1
- package/dist/features/events/components/RelatedEventsCarousel.js +3 -1
- package/dist/features/events/components/SpinWheel.js +1 -1
- package/dist/features/events/components/SpinWheelView.js +7 -1
- package/dist/features/events/schemas/event-form.d.ts +5 -0
- package/dist/features/events/schemas/event-form.js +17 -0
- package/dist/features/events/schemas/firestore.d.ts +49 -1
- package/dist/features/events/schemas/index.d.ts +184 -184
- package/dist/features/events/utils/carousel-slide.d.ts +0 -9
- package/dist/features/events/utils/carousel-slide.js +38 -1
- package/dist/features/faq/actions/faq-actions.d.ts +12 -12
- package/dist/features/faq/components/ContactCTA.js +5 -1
- package/dist/features/faq/components/FAQAccordion.js +6 -1
- package/dist/features/faq/components/FAQCategorySidebar.js +5 -1
- package/dist/features/faq/components/FAQHelpfulButtons.js +3 -1
- package/dist/features/faq/components/FAQPageContent.js +8 -1
- package/dist/features/faq/components/FAQSearchableList.js +2 -1
- package/dist/features/faq/components/FAQSortDropdown.js +4 -1
- package/dist/features/faq/components/RelatedFAQs.js +4 -1
- package/dist/features/faq/constants/help-guides.d.ts +8 -5
- package/dist/features/faq/constants/help-guides.js +9 -5
- package/dist/features/faq/schemas/index.d.ts +14 -14
- package/dist/features/filters/AsyncFacetSection.js +8 -3
- package/dist/features/filters/FilterFacetSection.js +11 -6
- package/dist/features/filters/FilterPanel.js +1 -1
- package/dist/features/filters/RangeFilter.js +8 -3
- package/dist/features/filters/SwitchFilter.js +7 -3
- package/dist/features/filters/filterUtils.d.ts +0 -2
- package/dist/features/filters/filterUtils.js +0 -4
- package/dist/features/filters/index.d.ts +1 -1
- package/dist/features/filters/index.js +1 -1
- package/dist/features/forms/Checkbox.js +7 -4
- package/dist/features/forms/Input.js +7 -5
- package/dist/features/forms/Radio.js +9 -6
- package/dist/features/forms/Select.js +5 -3
- package/dist/features/forms/Slider.js +6 -3
- package/dist/features/forms/Textarea.js +6 -3
- package/dist/features/forms/Toggle.js +6 -4
- package/dist/features/forms/index.d.ts +1 -1
- package/dist/features/forms/index.js +1 -1
- package/dist/features/forms/utils.d.ts +0 -2
- package/dist/features/forms/utils.js +0 -4
- package/dist/features/gateway-events/schemas/index.d.ts +10 -10
- package/dist/features/grouped/components/GroupedListingDetailView.js +4 -1
- package/dist/features/grouped/components/GroupedListingEditorView.js +5 -2
- package/dist/features/grouped/components/GroupedListingsCarousel.js +1 -1
- package/dist/features/grouped/schemas/grouped-listing-form.d.ts +8 -8
- package/dist/features/grouped/schemas/index.d.ts +8 -8
- package/dist/features/history/hooks/useHistory.js +1 -1
- package/dist/features/history/utils/guest-history.js +1 -5
- package/dist/features/homepage/actions/homepage-section-actions.d.ts +4 -4
- package/dist/features/homepage/components/AdSlot.js +3 -1
- package/dist/features/homepage/components/BrandsSection.js +6 -1
- package/dist/features/homepage/components/CTABannerSection.js +6 -1
- package/dist/features/homepage/components/CharacterHotspot.js +5 -1
- package/dist/features/homepage/components/CharacterHotspotForm.js +8 -1
- package/dist/features/homepage/components/CollectionCardsSection.js +4 -1
- package/dist/features/homepage/components/CustomCardsSection.js +13 -2
- package/dist/features/homepage/components/CustomerReviewsSection.js +5 -1
- package/dist/features/homepage/components/FAQSection.js +8 -1
- package/dist/features/homepage/components/FeaturedBundlesSection.d.ts +6 -1
- package/dist/features/homepage/components/FeaturedBundlesSection.js +4 -2
- package/dist/features/homepage/components/GoogleReviewsSection.js +6 -1
- package/dist/features/homepage/components/HeroCarousel.js +6 -1
- package/dist/features/homepage/components/HomepageCouponsSection.d.ts +25 -0
- package/dist/features/homepage/components/HomepageCouponsSection.js +42 -0
- package/dist/features/homepage/components/HowItWorksSection.d.ts +1 -1
- package/dist/features/homepage/components/HowItWorksSection.js +7 -1
- package/dist/features/homepage/components/MarketplaceHomepageView.js +52 -4
- package/dist/features/homepage/components/NewsletterSection.js +4 -1
- package/dist/features/homepage/components/PromoGrid.js +4 -1
- package/dist/features/homepage/components/SectionCarousel.d.ts +1 -1
- package/dist/features/homepage/components/SectionCarousel.js +6 -1
- package/dist/features/homepage/components/SecurityHighlightsSection.js +6 -1
- package/dist/features/homepage/components/ShopByCategorySection.js +7 -1
- package/dist/features/homepage/components/SocialFeedSection.js +6 -1
- package/dist/features/homepage/components/SocialPostCard.js +4 -1
- package/dist/features/homepage/components/StatsCounterSection.js +5 -1
- package/dist/features/homepage/components/TestimonialsCarousel.js +4 -1
- package/dist/features/homepage/components/TrustFeaturesSection.js +5 -1
- package/dist/features/homepage/components/WelcomeSection.js +10 -1
- package/dist/features/homepage/components/WhatsAppCommunitySection.js +8 -1
- package/dist/features/homepage/lib/section-renderer.d.ts +2 -0
- package/dist/features/homepage/lib/section-renderer.js +8 -0
- package/dist/features/homepage/schemas/firestore.d.ts +23 -2
- package/dist/features/homepage/schemas/firestore.js +2 -0
- package/dist/features/homepage/schemas/index.d.ts +133 -133
- package/dist/features/inventory/components/ReceiveStationView.js +9 -1
- package/dist/features/jobs/actions/enqueue-job.js +1 -1
- package/dist/features/layout/AppLayoutShell.d.ts +23 -1
- package/dist/features/layout/AppLayoutShell.js +13 -12
- package/dist/features/layout/AutoBreadcrumbs.js +3 -1
- package/dist/features/layout/BackToTop.js +2 -1
- package/dist/features/layout/BottomActions.js +5 -1
- package/dist/features/layout/BottomActionsContext.d.ts +1 -1
- package/dist/features/layout/BottomChrome.js +1 -1
- package/dist/features/layout/BottomNavItem.d.ts +9 -1
- package/dist/features/layout/BottomNavItem.js +20 -5
- package/dist/features/layout/BottomNavLayout.js +1 -1
- package/dist/features/layout/BottomSheet.js +4 -1
- package/dist/features/layout/Breadcrumbs.js +2 -1
- package/dist/features/layout/FooterLayout.js +5 -1
- package/dist/features/layout/LocaleSwitcher.js +1 -1
- package/dist/features/layout/NavItem.js +2 -1
- package/dist/features/layout/NavbarLayout.js +5 -1
- package/dist/features/layout/PageTabs.js +1 -1
- package/dist/features/layout/SideActionDock.js +7 -1
- package/dist/features/layout/SidebarLayout.d.ts +1 -1
- package/dist/features/layout/SidebarLayout.js +2 -1
- package/dist/features/layout/TitleBarLayout.js +9 -1
- package/dist/features/layout/index.d.ts +1 -1
- package/dist/features/live/components/LiveItemDetailPageView.js +8 -8
- package/dist/features/live/components/LiveItemFilters.js +3 -1
- package/dist/features/lottery/schemas/config-write.d.ts +10 -10
- package/dist/features/lottery/schemas/zod.d.ts +6 -6
- package/dist/features/media/MediaLightbox.js +3 -5
- package/dist/features/media/modals/ImageCropModal.js +6 -1
- package/dist/features/media/modals/ImageEditor.js +6 -1
- package/dist/features/media/modals/VideoTrimModal.js +6 -1
- package/dist/features/media/types/index.d.ts +4 -4
- package/dist/features/media/upload/MediaUploadList.js +7 -1
- package/dist/features/orders/components/OrderAddonBadges.js +2 -1
- package/dist/features/orders/components/OrderCompletionPanel.d.ts +1 -1
- package/dist/features/orders/components/OrderCompletionPanel.js +1 -1
- package/dist/features/orders/components/OrderFilters.js +1 -1
- package/dist/features/orders/components/OrderPaymentSummary.js +4 -1
- package/dist/features/orders/components/OrderProvenanceCard.js +5 -1
- package/dist/features/orders/components/OrderScopeTabs.js +1 -1
- package/dist/features/orders/components/OrderSiblingPayments.js +3 -1
- package/dist/features/orders/components/OrderStatusTimeline.js +4 -1
- package/dist/features/orders/components/OrdersList.js +4 -1
- package/dist/features/orders/components/RaiseDisputeForm.js +1 -1
- package/dist/features/orders/components/RefundHistoryTable.js +4 -1
- package/dist/features/orders/components/RefundRequestView.js +2 -2
- package/dist/features/orders/components/YourPurchaseStrip.js +5 -1
- package/dist/features/orders/schemas/index.d.ts +86 -86
- package/dist/features/parts/components/AssemblyDrawer.js +8 -1
- package/dist/features/parts/components/ModelCompositionPanel.js +5 -1
- package/dist/features/parts/components/PartDetailPageView.js +7 -1
- package/dist/features/parts/components/PartsIndexPageView.js +6 -1
- package/dist/features/parts/components/PartsSearchBox.js +5 -1
- package/dist/features/parts/schemas/firestore.d.ts +274 -0
- package/dist/features/parts/schemas/firestore.js +19 -0
- package/dist/features/payments/repository/saved-payment-methods.repository.js +1 -1
- package/dist/features/payments/schemas/index.d.ts +10 -10
- package/dist/features/points/schemas/adjust-form.d.ts +2 -2
- package/dist/features/pre-orders/api/admin/route.js +1 -5
- package/dist/features/pre-orders/components/MarketplacePreorderCard.d.ts +1 -1
- package/dist/features/pre-orders/components/MarketplacePreorderCard.js +10 -3
- package/dist/features/pre-orders/components/PreOrderActionsClient.js +6 -1
- package/dist/features/pre-orders/components/PreOrderBadge.js +2 -1
- package/dist/features/pre-orders/components/PreOrderDetailPageView.js +10 -9
- package/dist/features/pre-orders/components/PreOrderFilters.js +1 -1
- package/dist/features/pre-orders/components/PreOrdersIndexListing.js +11 -2
- package/dist/features/pre-orders/components/PreOrdersListView.js +3 -1
- package/dist/features/pre-orders/components/PreorderCard.js +1 -1
- package/dist/features/pre-orders/schemas/index.d.ts +15 -15
- package/dist/features/price-index/components/PriceIndexToolView.js +4 -1
- package/dist/features/pricing/components/AdminPricingView.js +4 -1
- package/dist/features/print/components/BoxLabelPrintView.js +5 -1
- package/dist/features/print/components/LabelProfilePicker.js +3 -1
- package/dist/features/print/components/labels.js +3 -1
- package/dist/features/products/api/route.js +1 -3
- package/dist/features/products/columns/productTableColumns.js +5 -1
- package/dist/features/products/components/ArtStickersListView.js +3 -1
- package/dist/features/products/components/AuctionDetailView.d.ts +1 -1
- package/dist/features/products/components/AuctionDetailView.js +2 -1
- package/dist/features/products/components/AuctionsIndexListing.js +10 -2
- package/dist/features/products/components/AvailabilityScopeHint.js +3 -1
- package/dist/features/products/components/AvailabilityTabs.js +1 -1
- package/dist/features/products/components/BidHistory.js +4 -1
- package/dist/features/products/components/CityCollectiblesView.js +6 -1
- package/dist/features/products/components/CompareOverlay.js +6 -1
- package/dist/features/products/components/CustomFieldsEditor.js +6 -1
- package/dist/features/products/components/CustomSectionTabContent.js +4 -6
- package/dist/features/products/components/CustomSectionsEditor.js +6 -1
- package/dist/features/products/components/FeatureBadge.js +2 -1
- package/dist/features/products/components/GroupMemberPicker.js +9 -2
- package/dist/features/products/components/GroupSettingsPanel.js +13 -2
- package/dist/features/products/components/MakeOfferButton.js +6 -1
- package/dist/features/products/components/MarketplaceBundleCard.js +6 -1
- package/dist/features/products/components/MarketplacePrizeDrawCard.js +7 -1
- package/dist/features/products/components/NonRefundableConsentModal.js +6 -1
- package/dist/features/products/components/PreOrderDetailView.d.ts +1 -1
- package/dist/features/products/components/PreOrderDetailView.js +1 -1
- package/dist/features/products/components/PrizeDrawCollage.js +6 -1
- package/dist/features/products/components/PrizeDrawDetailPageView.js +7 -8
- package/dist/features/products/components/PrizeDrawEntryActions.d.ts +1 -1
- package/dist/features/products/components/PrizeDrawEntryActions.js +8 -2
- package/dist/features/products/components/PrizeDrawWinnerMappingView.js +7 -1
- package/dist/features/products/components/PrizeDrawsIndexListing.js +8 -1
- package/dist/features/products/components/PrizeDrawsListingView.js +3 -1
- package/dist/features/products/components/PrizeDrawsSection.js +3 -1
- package/dist/features/products/components/PrizeRevealModal.js +6 -1
- package/dist/features/products/components/ProductCardMetadataSection.js +3 -1
- package/dist/features/products/components/ProductDetailActions.js +4 -1
- package/dist/features/products/components/ProductDetailPageView.js +11 -9
- package/dist/features/products/components/ProductDetailView.d.ts +1 -1
- package/dist/features/products/components/ProductDetailView.js +1 -1
- package/dist/features/products/components/ProductFeatureBadges.js +4 -1
- package/dist/features/products/components/ProductFeaturesSelector.js +3 -1
- package/dist/features/products/components/ProductFilters.js +2 -1
- package/dist/features/products/components/ProductForm.js +1 -1
- package/dist/features/products/components/ProductGalleryClient.js +4 -1
- package/dist/features/products/components/ProductGradingTab.js +4 -1
- package/dist/features/products/components/ProductGrid.d.ts +1 -1
- package/dist/features/products/components/ProductGrid.js +7 -1
- package/dist/features/products/components/ProductsIndexListing.js +11 -3
- package/dist/features/products/components/ProductsIndexPageView.js +6 -2
- package/dist/features/products/components/RelatedItemsSection.js +1 -1
- package/dist/features/products/components/RelatedProducts.js +3 -1
- package/dist/features/products/components/ShowGroupSection.js +7 -1
- package/dist/features/products/components/SparesListView.js +4 -1
- package/dist/features/products/components/SublistingCarouselSection.js +4 -1
- package/dist/features/products/components/SublistingCategorySelect.js +2 -1
- package/dist/features/products/hooks/useProducts.js +1 -1
- package/dist/features/products/repository/products.repository.js +0 -1
- package/dist/features/products/schemas/index.d.ts +70 -70
- package/dist/features/products/schemas/product-features.validators.d.ts +52 -52
- package/dist/features/promotions/actions/promotions-actions.js +22 -6
- package/dist/features/promotions/api/route.js +1 -8
- package/dist/features/promotions/components/AttachedCouponsSection.js +5 -2
- package/dist/features/promotions/components/CouponCard.js +8 -1
- package/dist/features/promotions/components/CouponCodeCopyRow.js +2 -1
- package/dist/features/promotions/components/CouponHelpDetails.js +4 -1
- package/dist/features/promotions/components/CouponsIndexListing.js +12 -1
- package/dist/features/promotions/components/PromotionsView.js +4 -1
- package/dist/features/promotions/constants/attached-coupons.d.ts +14 -0
- package/dist/features/promotions/repository/coupons.repository.js +32 -2
- package/dist/features/promotions/schemas/firestore.d.ts +33 -0
- package/dist/features/promotions/schemas/firestore.js +44 -0
- package/dist/features/promotions/schemas/index.d.ts +108 -108
- package/dist/features/reviews/components/ReviewDetailPageView.js +4 -1
- package/dist/features/reviews/components/ReviewDetailShell.js +8 -1
- package/dist/features/reviews/components/ReviewFilters.js +1 -1
- package/dist/features/reviews/components/ReviewModal.js +7 -2
- package/dist/features/reviews/components/ReviewSummary.js +4 -2
- package/dist/features/reviews/components/ReviewsIndexPageView.d.ts +2 -3
- package/dist/features/reviews/components/ReviewsIndexPageView.js +12 -13
- package/dist/features/reviews/components/ReviewsList.js +7 -2
- package/dist/features/reviews/components/ReviewsListingPanel.js +7 -1
- package/dist/features/reviews/schemas/index.d.ts +40 -40
- package/dist/features/scams/components/ScamAwarenessModal.js +7 -1
- package/dist/features/scams/components/ScamProfileView.js +11 -1
- package/dist/features/scams/constants/scammer-status-display.d.ts +1 -1
- package/dist/features/scams/schemas/index.d.ts +22 -22
- package/dist/features/scams/schemas/report-form.d.ts +4 -4
- package/dist/features/search/components/EntityTypeahead.js +5 -1
- package/dist/features/search/components/Search.js +7 -1
- package/dist/features/search/components/SearchFacetRail.js +4 -1
- package/dist/features/search/components/SearchResultsClient.js +1 -1
- package/dist/features/search/components/SearchResultsPageView.js +5 -1
- package/dist/features/seller/api/coupons/route.js +1 -5
- package/dist/features/seller/api/products/route.js +1 -5
- package/dist/features/seller/components/BulkStockModal.js +2 -1
- package/dist/features/seller/components/CategoryChipPicker.js +3 -1
- package/dist/features/seller/components/FulfillmentView.js +2 -1
- package/dist/features/seller/components/GroupInlineSelect.js +1 -1
- package/dist/features/seller/components/SellerAddressesView.js +11 -2
- package/dist/features/seller/components/SellerAnalyticsAlertsView.js +9 -1
- package/dist/features/seller/components/SellerAnalyticsView.d.ts +1 -1
- package/dist/features/seller/components/SellerAnalyticsView.js +4 -1
- package/dist/features/seller/components/SellerBidsView.js +8 -2
- package/dist/features/seller/components/SellerBundlesView.js +7 -1
- package/dist/features/seller/components/SellerCouponEditorView.js +5 -1
- package/dist/features/seller/components/SellerCouponsView.d.ts +1 -1
- package/dist/features/seller/components/SellerCouponsView.js +5 -1
- package/dist/features/seller/components/SellerDashboardView.d.ts +1 -1
- package/dist/features/seller/components/SellerDashboardView.js +4 -1
- package/dist/features/seller/components/SellerFeaturesView.js +8 -1
- package/dist/features/seller/components/SellerGoogleReviewsView.js +7 -1
- package/dist/features/seller/components/SellerGroupedListingsView.js +4 -1
- package/dist/features/seller/components/SellerGuideView.d.ts +1 -1
- package/dist/features/seller/components/SellerGuideView.js +1 -1
- package/dist/features/seller/components/SellerListingTypeView.js +4 -1
- package/dist/features/seller/components/SellerOffersView.d.ts +1 -1
- package/dist/features/seller/components/SellerOffersView.js +4 -1
- package/dist/features/seller/components/SellerOrdersView.js +8 -1
- package/dist/features/seller/components/SellerPayoutHistoryTable.js +2 -1
- package/dist/features/seller/components/SellerPayoutMethodsView.js +7 -1
- package/dist/features/seller/components/SellerPayoutRequestView.js +8 -1
- package/dist/features/seller/components/SellerPayoutSettingsView.js +3 -2
- package/dist/features/seller/components/SellerPayoutStats.js +1 -1
- package/dist/features/seller/components/SellerPayoutsView.d.ts +1 -1
- package/dist/features/seller/components/SellerPayoutsView.js +10 -1
- package/dist/features/seller/components/SellerProductShell.js +1 -2
- package/dist/features/seller/components/SellerProductsCards.js +7 -1
- package/dist/features/seller/components/SellerProductsFilterDrawer.js +4 -1
- package/dist/features/seller/components/SellerProductsView.js +7 -1
- package/dist/features/seller/components/SellerReviewsView.js +11 -1
- package/dist/features/seller/components/SellerShippingConfigsView.js +6 -1
- package/dist/features/seller/components/SellerShippingView.js +2 -2
- package/dist/features/seller/components/SellerSidebar.js +7 -1
- package/dist/features/seller/components/SellerStoreCategoriesView.js +5 -1
- package/dist/features/seller/components/SellerStoreSetupView.js +2 -1
- package/dist/features/seller/components/SellerStorefrontView.js +1 -1
- package/dist/features/seller/components/SellerSupportView.d.ts +1 -1
- package/dist/features/seller/components/SellerSupportView.js +4 -1
- package/dist/features/seller/components/SellersListView.d.ts +1 -1
- package/dist/features/seller/components/SellersListView.js +1 -1
- package/dist/features/seller/components/analytics/SellerAnalyticsStats.js +1 -1
- package/dist/features/seller/components/analytics/SellerRevenueChart.js +2 -1
- package/dist/features/seller/components/analytics/SellerTopProducts.js +3 -1
- package/dist/features/seller/hooks/useSellerListingData.js +0 -30
- package/dist/features/seller/schemas/coupon-form.d.ts +50 -50
- package/dist/features/seller/schemas/index.d.ts +22 -22
- package/dist/features/seller/schemas/order-forms.d.ts +12 -12
- package/dist/features/server-errors/schemas/index.d.ts +4 -4
- package/dist/features/shell/CommandPalette.js +7 -1
- package/dist/features/shell/FormShell.js +5 -1
- package/dist/features/shell/SectionForm.js +4 -1
- package/dist/features/shipments/components/AdminShipmentEditorView.js +9 -1
- package/dist/features/shipments/components/AdminShipmentLotItemsView.js +11 -1
- package/dist/features/shipments/components/AdminShipmentProjectionsView.js +10 -1
- package/dist/features/shipments/components/AdminShipmentsView.d.ts +1 -1
- package/dist/features/shipments/components/AdminShipmentsView.js +3 -1
- package/dist/features/shipments/components/ShipmentItemLinkModal.js +7 -1
- package/dist/features/shipments/schemas/validation.d.ts +44 -44
- package/dist/features/site-settings/components/ActionPermissionsManager.js +7 -2
- package/dist/features/site-settings/components/NavPermissionsManager.js +6 -2
- package/dist/features/site-settings/components/ThemeManagerView.js +9 -1
- package/dist/features/status-history/components/StatusTimeline.js +4 -1
- package/dist/features/sticker-trace/components/StickerPrintPanel.js +6 -1
- package/dist/features/sticker-trace/components/StickerRetryPanel.js +4 -1
- package/dist/features/sticker-trace/components/StickerRunHistoryPanel.js +5 -1
- package/dist/features/sticker-trace/components/StickerTraceStudio.js +5 -1
- package/dist/features/store-extensions/schemas/admin-notification-form.d.ts +5 -5
- package/dist/features/store-extensions/schemas/custom-role-form.d.ts +12 -12
- package/dist/features/store-extensions/schemas/item-request-create-form.d.ts +2 -2
- package/dist/features/store-extensions/schemas/listing-template-form.d.ts +13 -13
- package/dist/features/store-extensions/schemas/payout-method-form.d.ts +10 -10
- package/dist/features/store-extensions/schemas/shipping-config-form.d.ts +12 -12
- package/dist/features/store-extensions/schemas/store-category-form.d.ts +10 -10
- package/dist/features/stores/api/[storeSlug]/auctions/route.js +1 -10
- package/dist/features/stores/api/[storeSlug]/products/route.js +1 -10
- package/dist/features/stores/components/InteractiveStoreCard.js +15 -2
- package/dist/features/stores/components/SellerStandingPanel.js +3 -1
- package/dist/features/stores/components/SellerTierBadge.js +2 -1
- package/dist/features/stores/components/StoreAboutView.js +5 -1
- package/dist/features/stores/components/StoreAddressSelectorCreate.js +2 -1
- package/dist/features/stores/components/StoreAuctionsListing.js +8 -1
- package/dist/features/stores/components/StoreAuctionsView.d.ts +1 -1
- package/dist/features/stores/components/StoreAuctionsView.js +1 -1
- package/dist/features/stores/components/StoreBundlesPageView.js +1 -1
- package/dist/features/stores/components/StoreCapabilitiesGuideView.js +6 -1
- package/dist/features/stores/components/StoreClassifiedsListing.js +7 -1
- package/dist/features/stores/components/StoreCreateForm.js +3 -1
- package/dist/features/stores/components/StoreDetailLayoutView.js +5 -2
- package/dist/features/stores/components/StoreDigitalCodesListing.js +7 -1
- package/dist/features/stores/components/StoreFilters.js +1 -1
- package/dist/features/stores/components/StoreFinanceGuideView.js +6 -1
- package/dist/features/stores/components/StoreGuideHubView.js +7 -2
- package/dist/features/stores/components/StoreHeader.js +6 -1
- package/dist/features/stores/components/StoreListingsGuideView.js +6 -1
- package/dist/features/stores/components/StoreLiveItemsListing.js +7 -1
- package/dist/features/stores/components/StoreNavTabs.js +3 -1
- package/dist/features/stores/components/StoreOrdersGuideView.js +7 -1
- package/dist/features/stores/components/StorePreOrdersListing.js +7 -1
- package/dist/features/stores/components/StoreProductsListing.js +8 -1
- package/dist/features/stores/components/StoreProductsView.js +5 -1
- package/dist/features/stores/components/StoreReviewsView.d.ts +1 -1
- package/dist/features/stores/components/StoreReviewsView.js +1 -1
- package/dist/features/stores/components/StoreSettingsGuideView.js +6 -1
- package/dist/features/stores/components/StoresIndexListing.js +9 -2
- package/dist/features/stores/components/StoresIndexPageView.d.ts +2 -3
- package/dist/features/stores/components/StoresIndexPageView.js +10 -11
- package/dist/features/stores/hooks/useStoreAddressSelector.d.ts +1 -1
- package/dist/features/stores/schemas/firestore.d.ts +27 -0
- package/dist/features/stores/schemas/firestore.js +2 -0
- package/dist/features/stores/schemas/index.d.ts +28 -28
- package/dist/features/support/schemas/index.d.ts +14 -14
- package/dist/features/support/schemas/ticket-create-form.d.ts +4 -4
- package/dist/features/tax-codes/schemas/tax-code-form.d.ts +4 -4
- package/dist/features/tax-codes/schemas/tax-codes.validators.d.ts +10 -10
- package/dist/features/tester/actions/checklist-item-actions.d.ts +3 -3
- package/dist/features/tester/components/AdminTesterFeedbackIssuesView.js +7 -1
- package/dist/features/tester/components/AdminTesterFeedbackListView.js +5 -1
- package/dist/features/tester/components/AdminTesterFeedbackReportView.js +2 -1
- package/dist/features/tester/components/AdminTesterFeedbackView.js +5 -1
- package/dist/features/tester/components/TesterChecklistStepRow.js +8 -1
- package/dist/features/tester/components/TesterFeedbackChart.js +3 -1
- package/dist/features/tester/schemas/checklist-item-form.d.ts +2 -2
- package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.js +8 -1
- package/dist/features/wishlist/components/WishlistCapWatcher.js +1 -1
- package/dist/features/wishlist/components/WishlistHeartButton.js +2 -1
- package/dist/features/wishlist/components/WishlistPage.js +5 -1
- package/dist/features/wishlist/components/WishlistView.js +3 -1
- package/dist/features/wishlist/hooks/useWishlistToggle.js +1 -1
- package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +1 -1
- package/dist/features/wishlist/schemas/index.d.ts +2 -2
- package/dist/features/wishlist/utils/guest-wishlist.js +1 -5
- package/dist/index.d.ts +2496 -2452
- package/dist/index.js +1549 -1500
- package/dist/next/api/routeHandler.js +1 -1
- package/dist/providers/db-firebase/admin-app-lite.js +14 -2
- package/dist/providers/db-firebase/admin.js +8 -2
- package/dist/react/hooks/use-action-dispatch.d.ts +1 -1
- package/dist/react/hooks/use-action-dispatch.js +1 -1
- package/dist/react/hooks/useBrowsePageFlags.d.ts +26 -0
- package/dist/react/hooks/useBrowsePageFlags.js +18 -0
- package/dist/schemas/registry.d.ts +492 -487
- package/dist/schemas/sieve.d.ts +5 -5
- package/dist/schemas/webhooks/google-oauth.d.ts +4 -4
- package/dist/security/csp.d.ts +32 -2
- package/dist/security/csp.js +32 -2
- package/dist/server.d.ts +369 -362
- package/dist/server.js +355 -351
- package/dist/styles.css +1 -1
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/components/Button.js +1 -1
- package/dist/ui/components/Chart.js +0 -1
- package/dist/ui/components/HorizontalScroller.js +27 -2
- package/dist/ui/components/Repeater.js +4 -1
- package/dist/ui/rich-text/RichText.js +1 -3
- package/dist/ui/rich-text/RichTextRenderer.js +1 -3
- package/dist/utils/browser-storage.d.ts +14 -0
- package/dist/utils/browser-storage.js +18 -0
- package/dist/utils/classnames.d.ts +19 -0
- package/dist/utils/classnames.js +21 -0
- package/dist/utils/search-params.d.ts +44 -0
- package/dist/utils/search-params.js +46 -0
- package/dist/utils/sieve-builder.d.ts +13 -0
- package/dist/utils/sieve-builder.js +22 -0
- package/dist/utils/string.formatter.d.ts +12 -0
- package/dist/utils/string.formatter.js +17 -0
- package/dist/validation/schemas.d.ts +26 -26
- package/package.json +90 -2
|
@@ -548,7 +548,252 @@ export interface PartGlossaryDocument extends BaseDocument, AdminEditableRecord
|
|
|
548
548
|
imageSourceUrl?: string;
|
|
549
549
|
/** "Read more on the Beyblade Wiki". Facts taken, prose theirs, link out. */
|
|
550
550
|
sourceUrl?: string;
|
|
551
|
+
/**
|
|
552
|
+
* Hand-written analysis, read from the sources one page at a time.
|
|
553
|
+
*
|
|
554
|
+
* 🛑 ONE NESTED OBJECT, not twenty top-level fields, and the reason is the
|
|
555
|
+
* merge rather than tidiness. Everything else on this document is EXTRACTED
|
|
556
|
+
* and is regenerated wholesale by `generate-parts-seed.mjs`; this is
|
|
557
|
+
* AUTHORED and must survive that regeneration. Keeping it under one key
|
|
558
|
+
* makes the overlay merge a single assignment the generator cannot
|
|
559
|
+
* accidentally clobber field-by-field, and makes "is this ours or the
|
|
560
|
+
* wiki's?" answerable by position rather than by memory.
|
|
561
|
+
*
|
|
562
|
+
* 🛑 It also keeps `adminEditedFields` honest: an admin editing
|
|
563
|
+
* `authored.verdict` records one path, where twenty flattened fields would
|
|
564
|
+
* need twenty entries and the first missed one would be silently
|
|
565
|
+
* re-generated over.
|
|
566
|
+
*/
|
|
567
|
+
authored?: PartAuthoredAnalysis;
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* What a human wrote about one part after reading its sources.
|
|
571
|
+
*
|
|
572
|
+
* ── 🛑 WHY THESE FIELDS AND NOT A FREE-TEXT BLOB ───────────────────────────
|
|
573
|
+
*
|
|
574
|
+
* Each one is a question a buyer or a game implementation actually asks, and
|
|
575
|
+
* each was being answered in passing inside prose where nothing could filter,
|
|
576
|
+
* sort or require it. `availability` is the worked example: 93 records carried
|
|
577
|
+
* "one bey, Takara Tomy only" and "widely shipped across six products" inside
|
|
578
|
+
* their competitive reasoning, so the single most commercially useful fact on
|
|
579
|
+
* the record was unqueryable until it became a field.
|
|
580
|
+
*/
|
|
581
|
+
export interface PartAuthoredAnalysis {
|
|
582
|
+
/** My own account of the shape, in my words, from the sources' facts. */
|
|
583
|
+
geometryNote: string;
|
|
584
|
+
/** 2-3 sentences. The thing a buyer reads first. */
|
|
585
|
+
verdict: string;
|
|
586
|
+
competitive: {
|
|
587
|
+
/** essential | useful | collector | outclassed. */
|
|
588
|
+
tier: PartCompetitiveTier;
|
|
589
|
+
/** 0-100 WITHIN its slot, so parts are comparable where they compete. */
|
|
590
|
+
score: number;
|
|
591
|
+
/** Where the judgement came from, so a reader can discount it. */
|
|
592
|
+
basis: "source-overall" | "ratings" | "mass" | "legality" | "combo-list" | "inference";
|
|
593
|
+
/**
|
|
594
|
+
* Per format or per role, because one part is often two parts.
|
|
595
|
+
*
|
|
596
|
+
* 🛑 Not decoration: `attack-ring--circle-upper` produces monstrous Smash
|
|
597
|
+
* ONLY in left spin and mingles all three attack types in right spin, from
|
|
598
|
+
* one fixed shape. A single tier for that part is a lie in one direction.
|
|
599
|
+
*/
|
|
600
|
+
byFormat?: Record<string, string> | null;
|
|
601
|
+
reasoning: string;
|
|
602
|
+
};
|
|
603
|
+
designDifficulty: {
|
|
604
|
+
/** 0-100. How hard this part is to reproduce faithfully in a game. */
|
|
605
|
+
score: number;
|
|
606
|
+
/** From the CLOSED driver set in `terms.json`. */
|
|
607
|
+
drivers: string[];
|
|
608
|
+
reasoning: string;
|
|
609
|
+
/** The detail a naive implementation gets wrong. */
|
|
610
|
+
note?: string;
|
|
611
|
+
};
|
|
612
|
+
/**
|
|
613
|
+
* Which products it came in, and in what colour.
|
|
614
|
+
*
|
|
615
|
+
* 🛑 `beys` is what a RELEASE LIST says shipped it — a purchasing fact with
|
|
616
|
+
* codes and colourways attached. `beysFromOtherSources` is "a document
|
|
617
|
+
* describes this part inside this bey", LABELLED BY ORIGIN
|
|
618
|
+
* (`corpus:gen1-plastic-dranzer-v2`). Merging the two would make a corpus
|
|
619
|
+
* mention indistinguishable from a box you can buy, which is the one
|
|
620
|
+
* distinction a shopper needs. 306 parts have the second and not the first.
|
|
621
|
+
*/
|
|
622
|
+
availability: {
|
|
623
|
+
beys: string[];
|
|
624
|
+
beysFromOtherSources?: string[];
|
|
625
|
+
usedByIds?: string[];
|
|
626
|
+
colourways: Array<{
|
|
627
|
+
colourway: string;
|
|
628
|
+
vendor?: string;
|
|
629
|
+
code?: string;
|
|
630
|
+
distribution?: string;
|
|
631
|
+
inBey?: string;
|
|
632
|
+
}>;
|
|
633
|
+
codes?: string[];
|
|
634
|
+
hasbroCode?: string;
|
|
635
|
+
moulds?: boolean;
|
|
636
|
+
/** Why `beys` is empty, when it is. An empty list is a finding, not a blank. */
|
|
637
|
+
note?: string | null;
|
|
638
|
+
};
|
|
639
|
+
/**
|
|
640
|
+
* The character who used it in the story.
|
|
641
|
+
*
|
|
642
|
+
* 🛑 The single biggest collector hook, and it does NOT live on the part
|
|
643
|
+
* pages: measured, the `Owner` infobox key is filled on 3 of 2,248 part
|
|
644
|
+
* pages. It comes from the bey and character pages. Nobody searches "Attack
|
|
645
|
+
* Ring MA-04"; they search "Tyson's Dragoon".
|
|
646
|
+
*/
|
|
647
|
+
owner?: string;
|
|
648
|
+
/** "Bladebreakers", "Blitz Team" — a collecting set in its own right. */
|
|
649
|
+
team?: string;
|
|
650
|
+
/** Series plus episode of first appearance, as the source words it. */
|
|
651
|
+
animeDebut?: string;
|
|
652
|
+
/** How hard it is to get. A closed enum so it can be faceted. */
|
|
653
|
+
rarity?: PartRarity;
|
|
654
|
+
/** The vendor or region that gated it — "SH-03/04 Chinese exclusive". */
|
|
655
|
+
exclusiveTo?: string;
|
|
656
|
+
/**
|
|
657
|
+
* How to tell which copy you are buying.
|
|
658
|
+
*
|
|
659
|
+
* 🛑 The most actionable buying guidance in the whole corpus and it was
|
|
660
|
+
* buried in prose. Circle Upper's first mould has a 2.9 mm metal frame and
|
|
661
|
+
* weighs mid-19 g; its second has 3.6 mm and weighs upper-20 g, and they
|
|
662
|
+
* perform differently. Cross Griffon's Hasbro mould moves the figurine
|
|
663
|
+
* mounts to the top where they only add recoil, so the wiki says a Takara
|
|
664
|
+
* copy is "greatly preferred". That is a purchase decision.
|
|
665
|
+
*/
|
|
666
|
+
mouldIdentification?: string;
|
|
667
|
+
/**
|
|
668
|
+
* What wears or breaks, and whether it matters — which is exactly what a
|
|
669
|
+
* USED-marketplace listing needs and what the sources keep volunteering:
|
|
670
|
+
* "spikes wear with use but do NOT affect usability", "very unlikely to
|
|
671
|
+
* break, even on Grip Base", "sharp wing tips can cause damage to Stadium
|
|
672
|
+
* walls".
|
|
673
|
+
*/
|
|
674
|
+
conditionWatch?: string;
|
|
675
|
+
/** What else you must own for it to work — "needs a taller RC to clear the floor". */
|
|
676
|
+
needsToUse?: string;
|
|
677
|
+
/**
|
|
678
|
+
* Named finishing moves, with the character who performs them.
|
|
679
|
+
*
|
|
680
|
+
* Source: the bey corpus's own tables, e.g.
|
|
681
|
+
* `| Dark Wings | Phi | Layer-level impact at low spin | Burst Turbo |`.
|
|
682
|
+
* Nothing had ever joined them to a part or a bey.
|
|
683
|
+
*/
|
|
684
|
+
specialMoves?: Array<{
|
|
685
|
+
name: string;
|
|
686
|
+
character?: string;
|
|
687
|
+
effect?: string;
|
|
688
|
+
system?: string;
|
|
689
|
+
}>;
|
|
690
|
+
/** The spirit bound to the bey — a game entity in its own right. */
|
|
691
|
+
bitBeast?: string;
|
|
692
|
+
/**
|
|
693
|
+
* How it wins.
|
|
694
|
+
*
|
|
695
|
+
* 🛑 FOUR classes are already evidenced and most models carry two. Beyond
|
|
696
|
+
* knock-out and destabilise-then-outspin: Cross Griffon has "some of the
|
|
697
|
+
* most effective stopping power of any Attack Ring", interrupting rotation
|
|
698
|
+
* without moving the opponent, and Cross Spiker delivers "spike attack" in
|
|
699
|
+
* left spin. An implementation with only KO and topple has nowhere to put
|
|
700
|
+
* either, and would render the generation's best stopping-power ring as a
|
|
701
|
+
* mid-tier smash part.
|
|
702
|
+
*/
|
|
703
|
+
winCondition?: string[];
|
|
704
|
+
/**
|
|
705
|
+
* Every photograph of this part that a source carries, with its caption.
|
|
706
|
+
*
|
|
707
|
+
* 🛑 THE CAPTION IS THE DATA. "Advance Attacker with Metal Frame detached" is
|
|
708
|
+
* not a label for a picture — it is the statement that a photograph exists of
|
|
709
|
+
* the one feature the part is built around, and looking at it corrected the
|
|
710
|
+
* prose: every source calls the metal frame a "Metal Frame" that "separates
|
|
711
|
+
* from the ABS Caul", and the photograph shows it is a single die-cast
|
|
712
|
+
* triskelion — a central annulus, three radial arms, three tangential claws,
|
|
713
|
+
* with three registration pegs at 120° that are what permit the flip. No
|
|
714
|
+
* source says any of that.
|
|
715
|
+
*
|
|
716
|
+
* 🛑 `image` above is ONE `/media/<slug>` for the card. This is the gallery,
|
|
717
|
+
* and it holds SOURCE urls deliberately: routing them through `/media`
|
|
718
|
+
* requires uploading ~1,600 objects to live Storage, which is a separate,
|
|
719
|
+
* explicitly-authorised step. Recording what exists is free and reversible;
|
|
720
|
+
* publishing it is neither. Nothing renders these directly — Root Cause #27
|
|
721
|
+
* and the media rules still apply at the point of use.
|
|
722
|
+
*
|
|
723
|
+
* 🛑 Fetching needs `Referer: https://beyblade.fandom.com/`.
|
|
724
|
+
* `static.wikia.nocookie.net` hotlink-protects on the REFERER, not the
|
|
725
|
+
* User-Agent: a browser UA alone returns 403 `text/html`, which reads as "the
|
|
726
|
+
* image is gone" and sends you hunting for a replacement that does not exist.
|
|
727
|
+
*
|
|
728
|
+
* 🛑 fandom and WBO are ONE lineage here, not two sources. Both serve
|
|
729
|
+
* `1AdvanceStriker.JPG` under the same name. Dedupe on `name`, never on
|
|
730
|
+
* `url`, or one photograph is counted as corroboration of itself.
|
|
731
|
+
*/
|
|
732
|
+
photos?: Array<{
|
|
733
|
+
/** The source's own caption. Empty on WBO, which usually gives none. */
|
|
734
|
+
caption?: string;
|
|
735
|
+
/** Original upload filename — the dedupe key across hosts. */
|
|
736
|
+
name?: string;
|
|
737
|
+
/** Full-size URL, with the host's thumbnail scaling undone. */
|
|
738
|
+
url: string;
|
|
739
|
+
/** `fandom` | `wbo` — which crawl it came from, for attribution. */
|
|
740
|
+
host?: string;
|
|
741
|
+
/** What this photo PROVES that the prose does not say. */
|
|
742
|
+
shows?: string;
|
|
743
|
+
}>;
|
|
744
|
+
/**
|
|
745
|
+
* What wear does to it.
|
|
746
|
+
*
|
|
747
|
+
* 🛑 WEAR CAN BE A POSITIVE, which a durability model that only degrades
|
|
748
|
+
* cannot express. hmsdb's best combo for Circle Upper wants "a Bearing Core
|
|
749
|
+
* 2 that is WORN ENOUGH to consistently flower pattern". Treating wear as
|
|
750
|
+
* monotonic damage contradicts the source.
|
|
751
|
+
*/
|
|
752
|
+
wearBehaviour?: string;
|
|
753
|
+
/** Launcher or winder needed, and whether spin direction is chosen at launch. */
|
|
754
|
+
launcherRequirement?: string;
|
|
755
|
+
/** Where behaviour changes by stadium — range matters more in a wide one. */
|
|
756
|
+
stadiumDependence?: string;
|
|
757
|
+
/** Counters and countered-by, as the sources name them. */
|
|
758
|
+
matchups?: {
|
|
759
|
+
strongAgainst?: string[];
|
|
760
|
+
weakAgainst?: string[];
|
|
761
|
+
note?: string;
|
|
762
|
+
};
|
|
763
|
+
/** Parts the sources pair it with, verbatim from their combo lists. */
|
|
764
|
+
comboPartners?: string[];
|
|
765
|
+
/** Terms from `terms.json`, so the vocabulary stays closed. */
|
|
766
|
+
termsUsed?: string[];
|
|
767
|
+
/** Where a source was wrong or where two sources disagree. */
|
|
768
|
+
corrections?: Array<{
|
|
769
|
+
field: string;
|
|
770
|
+
was: string;
|
|
771
|
+
now: string;
|
|
772
|
+
basis: string;
|
|
773
|
+
}>;
|
|
774
|
+
/** confirmed | probable | weak — and the gate checks it against the record. */
|
|
775
|
+
confidence: "confirmed" | "probable" | "weak";
|
|
776
|
+
confidenceNote?: string;
|
|
777
|
+
/** Which sources the record was written from. */
|
|
778
|
+
sourceUsed: string[];
|
|
779
|
+
sourceUrl?: string;
|
|
780
|
+
authoredAt: string;
|
|
781
|
+
/** Set when a record is re-read after new sources became reachable. */
|
|
782
|
+
reReadAt?: string;
|
|
551
783
|
}
|
|
784
|
+
/** How hard a part is to obtain. Faceted, so it is a closed set. */
|
|
785
|
+
export declare const PartRarityValues: readonly ["mass-retail", "booster", "random-booster", "set-only", "prize", "vendor-exclusive", "regional-exclusive"];
|
|
786
|
+
export type PartRarity = (typeof PartRarityValues)[number];
|
|
787
|
+
/**
|
|
788
|
+
* How much a part matters competitively.
|
|
789
|
+
*
|
|
790
|
+
* 🛑 `collector` is not a weak `useful`. It means "worth owning rather than
|
|
791
|
+
* playing" and it is the only tier assignable with NO performance evidence —
|
|
792
|
+
* which is what a part like `attack-ring--dark-spike`, whose every source is
|
|
793
|
+
* silent, honestly deserves.
|
|
794
|
+
*/
|
|
795
|
+
export declare const PartCompetitiveTierValues: readonly ["essential", "useful", "collector", "outclassed"];
|
|
796
|
+
export type PartCompetitiveTier = (typeof PartCompetitiveTierValues)[number];
|
|
552
797
|
/** One slot of one model's composition. */
|
|
553
798
|
export interface ModelSlot {
|
|
554
799
|
slotKey: PartSlot;
|
|
@@ -624,6 +869,35 @@ export interface ModelCompositionDocument extends BaseDocument {
|
|
|
624
869
|
source?: string;
|
|
625
870
|
/** The named-model category this composition describes, when one exists. */
|
|
626
871
|
categoryId?: string;
|
|
872
|
+
/**
|
|
873
|
+
* The character who used this bey, as a `character-*` category id.
|
|
874
|
+
*
|
|
875
|
+
* 🛑 An ID, not a name. Character names are re-localised between the
|
|
876
|
+
* Japanese and English releases (Takao Kinomiya / Tyson Granger), so a name
|
|
877
|
+
* is the one key guaranteed to drift — the same trap `brand-rows.ts` records
|
|
878
|
+
* for brands matching on display name.
|
|
879
|
+
*/
|
|
880
|
+
owner?: string;
|
|
881
|
+
/**
|
|
882
|
+
* ── 🛑 THE ANIME SUCCESSION CHAIN, NOT RELEASE ORDER ────────────────────
|
|
883
|
+
*
|
|
884
|
+
* `previousBey` is the bey this one replaced in the STORY; `nextBey` is the
|
|
885
|
+
* one that replaced it. Both are composition ids.
|
|
886
|
+
*
|
|
887
|
+
* 🛑 IT CANNOT BE DERIVED FROM PRODUCT CODES, and a generator must not try.
|
|
888
|
+
* Tyson's chain runs Dragoon -> Dragoon S -> Dragoon V -> Dragoon V2 ->
|
|
889
|
+
* Dragoon G -> Dragoon MS, crossing four part systems and three toy lines,
|
|
890
|
+
* and the codes do not order it. The sequence is a narrative fact stated in
|
|
891
|
+
* prose on the bey and character pages, so it is READ.
|
|
892
|
+
*
|
|
893
|
+
* 🛑 BOTH DIRECTIONS ARE STORED AND MUST AGREE. A one-way link makes "what
|
|
894
|
+
* came before this" unanswerable from the earlier bey's page, and a
|
|
895
|
+
* `character.lineup` that disagrees with these links is the denormalised-
|
|
896
|
+
* mirror trap (Root Cause #42) — here it would silently break a progression.
|
|
897
|
+
* `audit-lineup-symmetry` checks both.
|
|
898
|
+
*/
|
|
899
|
+
previousBey?: string;
|
|
900
|
+
nextBey?: string;
|
|
627
901
|
}
|
|
628
902
|
/** `(slot, code|name)` → document id. The ONE place this is composed. */
|
|
629
903
|
export declare function partGlossaryId(slot: PartSlot, codeOrName: string): string;
|
|
@@ -305,6 +305,25 @@ export function partSlotFromSegment(segment) {
|
|
|
305
305
|
const hit = ALL_PART_SLOTS.find((s) => s === segment);
|
|
306
306
|
return hit ?? null;
|
|
307
307
|
}
|
|
308
|
+
/** How hard a part is to obtain. Faceted, so it is a closed set. */
|
|
309
|
+
export const PartRarityValues = [
|
|
310
|
+
"mass-retail",
|
|
311
|
+
"booster",
|
|
312
|
+
"random-booster",
|
|
313
|
+
"set-only",
|
|
314
|
+
"prize",
|
|
315
|
+
"vendor-exclusive",
|
|
316
|
+
"regional-exclusive",
|
|
317
|
+
];
|
|
318
|
+
/**
|
|
319
|
+
* How much a part matters competitively.
|
|
320
|
+
*
|
|
321
|
+
* 🛑 `collector` is not a weak `useful`. It means "worth owning rather than
|
|
322
|
+
* playing" and it is the only tier assignable with NO performance evidence —
|
|
323
|
+
* which is what a part like `attack-ring--dark-spike`, whose every source is
|
|
324
|
+
* silent, honestly deserves.
|
|
325
|
+
*/
|
|
326
|
+
export const PartCompetitiveTierValues = ["essential", "useful", "collector", "outclassed"];
|
|
308
327
|
/** `(slot, code|name)` → document id. The ONE place this is composed. */
|
|
309
328
|
export function partGlossaryId(slot, codeOrName) {
|
|
310
329
|
const tail = codeOrName
|
|
@@ -12,7 +12,7 @@ import { createHash } from "crypto";
|
|
|
12
12
|
import { normalizeError } from "../../../errors/normalize.js";
|
|
13
13
|
import { DatabaseError } from "../../../errors/index.js";
|
|
14
14
|
import { serverLogger } from "../../../monitoring/index.js";
|
|
15
|
-
import { BaseRepository, prepareForFirestore
|
|
15
|
+
import { BaseRepository, prepareForFirestore } from "../../../providers/db-firebase/index.js";
|
|
16
16
|
import { PAYMENT_METHOD_PII_FIELDS, encryptPiiFields, maskPii, revealPii, } from "../../../security/index.js";
|
|
17
17
|
import { asEncrypted } from "../../../security/encrypted.js";
|
|
18
18
|
import { SAVED_PAYMENT_METHOD_FIELDS, SAVED_PAYMENT_METHODS_COLLECTION, } from "../schemas/saved-methods-firestore.js";
|
|
@@ -151,20 +151,20 @@ export declare const payoutFirestoreSchema: z.ZodObject<{
|
|
|
151
151
|
}, z.ZodTypeAny, "passthrough">>]>>;
|
|
152
152
|
}, "strip", z.ZodTypeAny, {
|
|
153
153
|
currency: string;
|
|
154
|
-
status: "
|
|
154
|
+
status: "pending" | "processing" | "paid" | "failed";
|
|
155
155
|
id: string;
|
|
156
|
+
storeId: string;
|
|
157
|
+
sellerName: string;
|
|
158
|
+
sellerEmail: string;
|
|
156
159
|
createdAt: string | Date | z.objectOutputType<{
|
|
157
160
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
158
161
|
}, z.ZodTypeAny, "passthrough">;
|
|
159
162
|
updatedAt: string | Date | z.objectOutputType<{
|
|
160
163
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
161
164
|
}, z.ZodTypeAny, "passthrough">;
|
|
162
|
-
amount: number;
|
|
163
|
-
storeId: string;
|
|
164
|
-
sellerName: string;
|
|
165
|
-
sellerEmail: string;
|
|
166
165
|
paymentMethod: "upi" | "bank_transfer";
|
|
167
166
|
platformFee: number;
|
|
167
|
+
amount: number;
|
|
168
168
|
requestedAt: string | Date | z.objectOutputType<{
|
|
169
169
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
170
170
|
}, z.ZodTypeAny, "passthrough">;
|
|
@@ -201,20 +201,20 @@ export declare const payoutFirestoreSchema: z.ZodObject<{
|
|
|
201
201
|
isAutomatic?: boolean | undefined;
|
|
202
202
|
}, {
|
|
203
203
|
currency: string;
|
|
204
|
-
status: "
|
|
204
|
+
status: "pending" | "processing" | "paid" | "failed";
|
|
205
205
|
id: string;
|
|
206
|
+
storeId: string;
|
|
207
|
+
sellerName: string;
|
|
208
|
+
sellerEmail: string;
|
|
206
209
|
createdAt: string | Date | z.objectInputType<{
|
|
207
210
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
208
211
|
}, z.ZodTypeAny, "passthrough">;
|
|
209
212
|
updatedAt: string | Date | z.objectInputType<{
|
|
210
213
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
211
214
|
}, z.ZodTypeAny, "passthrough">;
|
|
212
|
-
amount: number;
|
|
213
|
-
storeId: string;
|
|
214
|
-
sellerName: string;
|
|
215
|
-
sellerEmail: string;
|
|
216
215
|
paymentMethod: "upi" | "bank_transfer";
|
|
217
216
|
platformFee: number;
|
|
217
|
+
amount: number;
|
|
218
218
|
requestedAt: string | Date | z.objectInputType<{
|
|
219
219
|
toDate: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodDate>;
|
|
220
220
|
}, z.ZodTypeAny, "passthrough">;
|
|
@@ -45,14 +45,14 @@ export declare const pointsAdjustFormSchema: z.ZodObject<{
|
|
|
45
45
|
/** Never shown to the buyer. The next admin's answer to "why?". */
|
|
46
46
|
adminReason: z.ZodString;
|
|
47
47
|
}, "strict", z.ZodTypeAny, {
|
|
48
|
-
amount: number;
|
|
49
48
|
description: string;
|
|
50
49
|
userId: string;
|
|
50
|
+
amount: number;
|
|
51
51
|
adminReason: string;
|
|
52
52
|
}, {
|
|
53
|
-
amount: number;
|
|
54
53
|
description: string;
|
|
55
54
|
userId: string;
|
|
55
|
+
amount: number;
|
|
56
56
|
adminReason: string;
|
|
57
57
|
}>;
|
|
58
58
|
export type PointsAdjustFormValues = z.infer<typeof pointsAdjustFormSchema>;
|
|
@@ -11,11 +11,7 @@
|
|
|
11
11
|
import { NextResponse } from "next/server.js";
|
|
12
12
|
import { getProviders } from "../../../../contracts/index.js";
|
|
13
13
|
import { normalizeError } from "../../../../errors/normalize.js";
|
|
14
|
-
|
|
15
|
-
const v = url.searchParams.get(key);
|
|
16
|
-
const n = v !== null ? Number(v) : NaN;
|
|
17
|
-
return Number.isFinite(n) ? n : fallback;
|
|
18
|
-
}
|
|
14
|
+
import { numParam } from "../../../../utils/search-params.js";
|
|
19
15
|
export async function GET(request) {
|
|
20
16
|
try {
|
|
21
17
|
const url = new URL(request.url);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ProductItem } from "../../products/types";
|
|
2
|
-
import {
|
|
2
|
+
import type { WishlistToggleActions } from "../../wishlist/hooks/useWishlistToggle";
|
|
3
3
|
export type MarketplacePreorderCardData = ProductItem;
|
|
4
4
|
export interface MarketplacePreorderCardLabels {
|
|
5
5
|
preOrderBadge?: string;
|
|
@@ -4,8 +4,8 @@ import { normalizeError } from "../../../errors/normalize.js";
|
|
|
4
4
|
import { useCallback } from "react";
|
|
5
5
|
import { useRouter } from "next/navigation.js";
|
|
6
6
|
import { useLongPress } from "../../../react/hooks/useLongPress.js";
|
|
7
|
-
import { MediaImage } from "../../media/
|
|
8
|
-
import { useWishlistToggle } from "../../wishlist/
|
|
7
|
+
import { MediaImage } from "../../media/MediaImage.js";
|
|
8
|
+
import { useWishlistToggle } from "../../wishlist/hooks/useWishlistToggle.js";
|
|
9
9
|
import { ROUTES } from "../../../next/routing/route-map.js";
|
|
10
10
|
import { ACTIONS } from "../../../_internal/shared/actions/action-registry.js";
|
|
11
11
|
import { formatCurrency } from "../../../utils/index.js";
|
|
@@ -14,7 +14,14 @@ const CLS_PREORDER_BADGE = "inline-flex items-center rounded-full bg-warning-sol
|
|
|
14
14
|
const CLS_SALE_BADGE = "rounded-full bg-success-solid px-[var(--appkit-space-2)] py-[var(--appkit-space-0-5)] text-[length:var(--appkit-text-xs)] font-bold text-success-on-solid";
|
|
15
15
|
const CLS_TRENDING_BADGE = "rounded-full bg-indigo-600 px-[var(--appkit-space-2)] py-[var(--appkit-space-0-5)] text-[length:var(--appkit-text-xs)] font-bold text-white";
|
|
16
16
|
const CLS_LIMITED_BADGE = "rounded-full bg-info-solid px-[var(--appkit-space-2)] py-[var(--appkit-space-0-5)] text-[length:var(--appkit-text-xs)] font-bold text-info-on-solid";
|
|
17
|
-
import { Div
|
|
17
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
18
|
+
import { BaseListingCard } from "../../../ui/components/BaseListingCard.js";
|
|
19
|
+
import { Button } from "../../../ui/components/Button.js";
|
|
20
|
+
import { GatedPrice } from "../../../ui/components/GatedPrice.js";
|
|
21
|
+
import { RichText } from "../../../ui/rich-text/RichText.js";
|
|
22
|
+
import { Row, Stack } from "../../../ui/components/Layout.js";
|
|
23
|
+
import { Span, Text } from "../../../ui/components/Typography.js";
|
|
24
|
+
import { TextLink } from "../../../ui/components/TextLink.js";
|
|
18
25
|
import { normalizeRichTextHtml } from "../../../utils/string.formatter.js";
|
|
19
26
|
import { PreorderBadge } from "./PreorderCard.js";
|
|
20
27
|
import { WishlistHeartButton } from "../../wishlist/components/WishlistHeartButton.js";
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useState, useTransition } from "react";
|
|
4
|
-
import { Button
|
|
4
|
+
import { Button } from "../../../ui/components/Button.js";
|
|
5
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
6
|
+
import { GatedPrice, PricesOnly } from "../../../ui/components/GatedPrice.js";
|
|
7
|
+
import { LoginRequiredModal } from "../../../ui/components/LoginRequiredModal.js";
|
|
8
|
+
import { Row, Stack } from "../../../ui/components/Layout.js";
|
|
9
|
+
import { Span, Text } from "../../../ui/components/Typography.js";
|
|
5
10
|
import { isAuthError } from "../../../utils/auth-error.js";
|
|
6
11
|
import { formatCurrency } from "../../../utils/number.formatter.js";
|
|
7
12
|
import { normalizeError } from "../../../errors/normalize.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Div
|
|
2
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
3
|
+
import { Span } from "../../../ui/components/Typography.js";
|
|
3
4
|
const CLS_NEW_BADGE = "rounded-full bg-indigo-600 px-[var(--appkit-space-2-5)] py-[var(--appkit-space-0-5)] text-white";
|
|
4
5
|
const STATUS_MAP = {
|
|
5
6
|
pending: { label: "Pending", color: "bg-warning-surface text-warning" },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import Link from "next/link.js";
|
|
3
|
-
import { productRepository } from "
|
|
3
|
+
import { productRepository } from "../../products/repository/products.repository.js";
|
|
4
4
|
const __P = {
|
|
5
5
|
p3: "p-[var(--appkit-space-3)]",
|
|
6
6
|
p5: "p-[var(--appkit-space-5)]",
|
|
@@ -14,10 +14,17 @@ const CLS_STATUS_BADGE = "inline-block rounded-full bg-warning-surface dark:bg-w
|
|
|
14
14
|
import { ROUTES } from "../../../next/routing/route-map.js";
|
|
15
15
|
import { getDefaultCurrency } from "../../../core/baseline-resolver.js";
|
|
16
16
|
import { formatCurrency, roundRupees } from "../../../utils/number.formatter.js";
|
|
17
|
-
import {
|
|
17
|
+
import { toDescriptionHtml } from "../../../utils/string.formatter.js";
|
|
18
18
|
import { safeDisplayName } from "../../../security/index.js";
|
|
19
19
|
import { ProgressBarFill } from "../../../ui/components/ProgressBarFill.js";
|
|
20
|
-
import { Button
|
|
20
|
+
import { Button } from "../../../ui/components/Button.js";
|
|
21
|
+
import { Container, Row, Stack } from "../../../ui/components/Layout.js";
|
|
22
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
23
|
+
import { GatedPrice, PricesOnly } from "../../../ui/components/GatedPrice.js";
|
|
24
|
+
import { Heading, Span, Text } from "../../../ui/components/Typography.js";
|
|
25
|
+
import { Main, Nav, Section, Ul, Li } from "../../../ui/components/Semantic.js";
|
|
26
|
+
import { RichText } from "../../../ui/rich-text/RichText.js";
|
|
27
|
+
import { SpecTable } from "../../../ui/components/SpecTable.js";
|
|
21
28
|
import { PreOrderDetailView } from "../../products/components/PreOrderDetailView.js";
|
|
22
29
|
import { PreOrderBottomActions } from "./PreOrderBottomActions.js";
|
|
23
30
|
import { ProductTabsShell } from "../../products/components/ProductTabsShell.js";
|
|
@@ -38,12 +45,6 @@ import { GroupedListingsCarousel } from "../../grouped/components/GroupedListing
|
|
|
38
45
|
import { getGroupsWithItemsForProduct } from "../../../_internal/server/features/grouped/data.js";
|
|
39
46
|
import { OwnerQuickActions } from "../../admin/components/OwnerQuickActions.js";
|
|
40
47
|
import { PurchaseReviewAffordance } from "../../reviews/components/PurchaseReviewAffordance.js";
|
|
41
|
-
function toDescriptionHtml(raw) {
|
|
42
|
-
if (!raw)
|
|
43
|
-
return "";
|
|
44
|
-
const s = typeof raw === "string" ? raw : JSON.stringify(raw);
|
|
45
|
-
return normalizeRichTextHtml(s);
|
|
46
|
-
}
|
|
47
48
|
const PRODUCTION_STATUS_LABELS = {
|
|
48
49
|
upcoming: "Coming Soon",
|
|
49
50
|
in_production: "In Production",
|
|
@@ -4,7 +4,7 @@ import { useTranslations } from "next-intl";
|
|
|
4
4
|
import { FilterFacetSection } from "../../filters/FilterFacetSection.js";
|
|
5
5
|
import { AsyncFacetSection } from "../../filters/AsyncFacetSection.js";
|
|
6
6
|
import { RangeFilter } from "../../filters/RangeFilter.js";
|
|
7
|
-
import { Div } from "../../../ui/
|
|
7
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
8
8
|
export function PreOrderFilters({ table, categoryOptions = [], brandOptions = [], storeOptions = [], loadCategoryOptions, loadBrandOptions, loadStoreOptions, currencyPrefix = "", }) {
|
|
9
9
|
const t = useTranslations("filters");
|
|
10
10
|
const selectedCategories = table.get("category")
|
|
@@ -6,7 +6,16 @@ import { useState, useCallback } from "react";
|
|
|
6
6
|
import { Columns, Heart, ShoppingCart } from "lucide-react";
|
|
7
7
|
import { useUrlTable } from "../../../react/hooks/useUrlTable.js";
|
|
8
8
|
import { useProducts } from "../../products/hooks/useProducts.js";
|
|
9
|
-
import { BulkActionBar
|
|
9
|
+
import { BulkActionBar } from "../../../ui/components/BulkActionBar.js";
|
|
10
|
+
import { Div } from "../../../ui/components/Div.js";
|
|
11
|
+
import { FilterDrawer } from "../../../ui/components/FilterDrawer.js";
|
|
12
|
+
import { Grid, Row, Stack } from "../../../ui/components/Layout.js";
|
|
13
|
+
import { ListingToolbar } from "../../../ui/components/ListingToolbar.js";
|
|
14
|
+
import { LoginRequiredModal } from "../../../ui/components/LoginRequiredModal.js";
|
|
15
|
+
import { Pagination } from "../../../ui/components/Pagination.js";
|
|
16
|
+
import { Text } from "../../../ui/components/Typography.js";
|
|
17
|
+
import { useToast } from "../../../ui/components/toast-context.js";
|
|
18
|
+
import { StickyToolbar } from "../../../ui/components/StickyToolbar.js";
|
|
10
19
|
import { usePendingTable } from "../../../react/hooks/usePendingTable.js";
|
|
11
20
|
import { useAuthGate } from "../../../react/hooks/useAuthGate.js";
|
|
12
21
|
import { ACTION_ID, ACTION_META, COMPARE_MAX_ITEMS } from "../../products/constants/action-defs.js";
|
|
@@ -22,7 +31,7 @@ import { useBrands } from "../../products/hooks/useBrands.js";
|
|
|
22
31
|
import { useBulkSelection } from "../../../react/hooks/useBulkSelection.js";
|
|
23
32
|
import { TABLE_KEYS, VIEW_MODE } from "../../../constants/table-keys.js";
|
|
24
33
|
import { PREORDER_SORT_OPTIONS } from "../../products/constants/sieve.js";
|
|
25
|
-
import { useBottomActions } from "../../layout/
|
|
34
|
+
import { useBottomActions } from "../../layout/hooks/useBottomActions.js";
|
|
26
35
|
import { AVAILABILITY_VALUES } from "../../../constants/field-names.js";
|
|
27
36
|
import { AvailabilityTabs } from "../../products/components/AvailabilityTabs.js";
|
|
28
37
|
const PRE_ORDER_LISTING_TYPES = ["pre-order"];
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Container
|
|
2
|
+
import { Container } from "../../../ui/components/Layout.js";
|
|
3
|
+
import { Main, Section } from "../../../ui/components/Semantic.js";
|
|
4
|
+
import { Heading } from "../../../ui/components/Typography.js";
|
|
3
5
|
import { AdSlot } from "../../homepage/components/AdSlot.js";
|
|
4
6
|
import { PreOrdersIndexListing } from "./PreOrdersIndexListing.js";
|
|
5
7
|
import { listPublicProducts, parsePublicProductParams, defaultAvailabilityForListingTypes, } from "../../../_internal/server/features/products/list-public.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Span } from "../../../ui/
|
|
2
|
+
import { Span } from "../../../ui/components/Typography.js";
|
|
3
3
|
import { getPreorderStatus } from "../types/index.js";
|
|
4
4
|
const STATUS_LABELS = {
|
|
5
5
|
available: "Pre-order now",
|
|
@@ -23,19 +23,19 @@ export declare const preorderItemSchema: z.ZodObject<{
|
|
|
23
23
|
youtubeId: z.ZodOptional<z.ZodString>;
|
|
24
24
|
duration: z.ZodOptional<z.ZodNumber>;
|
|
25
25
|
}, "strip", z.ZodTypeAny, {
|
|
26
|
-
type: "
|
|
26
|
+
type: "image" | "video" | "file";
|
|
27
27
|
url: string;
|
|
28
|
-
source?: "upload" | "youtube" | "external" | undefined;
|
|
29
28
|
alt?: string | undefined;
|
|
30
29
|
thumbnailUrl?: string | undefined;
|
|
30
|
+
source?: "upload" | "youtube" | "external" | undefined;
|
|
31
31
|
youtubeId?: string | undefined;
|
|
32
32
|
duration?: number | undefined;
|
|
33
33
|
}, {
|
|
34
|
-
type: "
|
|
34
|
+
type: "image" | "video" | "file";
|
|
35
35
|
url: string;
|
|
36
|
-
source?: "upload" | "youtube" | "external" | undefined;
|
|
37
36
|
alt?: string | undefined;
|
|
38
37
|
thumbnailUrl?: string | undefined;
|
|
38
|
+
source?: "upload" | "youtube" | "external" | undefined;
|
|
39
39
|
youtubeId?: string | undefined;
|
|
40
40
|
duration?: number | undefined;
|
|
41
41
|
}>, "many">>;
|
|
@@ -49,46 +49,46 @@ export declare const preorderItemSchema: z.ZodObject<{
|
|
|
49
49
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
50
50
|
}, "strip", z.ZodTypeAny, {
|
|
51
51
|
id: string;
|
|
52
|
-
name: string;
|
|
53
52
|
slug: string;
|
|
54
53
|
active: boolean;
|
|
55
54
|
isFeatured: boolean;
|
|
55
|
+
name: string;
|
|
56
56
|
salePrice: number;
|
|
57
57
|
regularPrice: number;
|
|
58
58
|
brand?: string | undefined;
|
|
59
|
+
franchise?: string | undefined;
|
|
60
|
+
images?: string[] | undefined;
|
|
59
61
|
createdAt?: string | undefined;
|
|
60
62
|
media?: {
|
|
61
|
-
type: "
|
|
63
|
+
type: "image" | "video" | "file";
|
|
62
64
|
url: string;
|
|
63
|
-
source?: "upload" | "youtube" | "external" | undefined;
|
|
64
65
|
alt?: string | undefined;
|
|
65
66
|
thumbnailUrl?: string | undefined;
|
|
67
|
+
source?: "upload" | "youtube" | "external" | undefined;
|
|
66
68
|
youtubeId?: string | undefined;
|
|
67
69
|
duration?: number | undefined;
|
|
68
70
|
}[] | undefined;
|
|
69
|
-
franchise?: string | undefined;
|
|
70
|
-
images?: string[] | undefined;
|
|
71
71
|
preorderShipDate?: string | undefined;
|
|
72
72
|
}, {
|
|
73
73
|
id: string;
|
|
74
|
-
name: string;
|
|
75
74
|
slug: string;
|
|
75
|
+
name: string;
|
|
76
76
|
salePrice: number;
|
|
77
77
|
regularPrice: number;
|
|
78
78
|
brand?: string | undefined;
|
|
79
|
+
franchise?: string | undefined;
|
|
80
|
+
images?: string[] | undefined;
|
|
79
81
|
createdAt?: string | undefined;
|
|
80
82
|
active?: boolean | undefined;
|
|
83
|
+
isFeatured?: boolean | undefined;
|
|
81
84
|
media?: {
|
|
82
|
-
type: "
|
|
85
|
+
type: "image" | "video" | "file";
|
|
83
86
|
url: string;
|
|
84
|
-
source?: "upload" | "youtube" | "external" | undefined;
|
|
85
87
|
alt?: string | undefined;
|
|
86
88
|
thumbnailUrl?: string | undefined;
|
|
89
|
+
source?: "upload" | "youtube" | "external" | undefined;
|
|
87
90
|
youtubeId?: string | undefined;
|
|
88
91
|
duration?: number | undefined;
|
|
89
92
|
}[] | undefined;
|
|
90
|
-
franchise?: string | undefined;
|
|
91
|
-
images?: string[] | undefined;
|
|
92
|
-
isFeatured?: boolean | undefined;
|
|
93
93
|
preorderShipDate?: string | undefined;
|
|
94
94
|
}>;
|