@mohasinac/appkit 4.58.0 → 4.60.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/layout/DashboardLayoutClient.js +62 -5
- package/dist/_internal/client/features/maintenance/views/MaintenanceDashboardView.js +2 -2
- package/dist/_internal/server/features/brands/actions.js +78 -4
- package/dist/_internal/server/features/checkout/actions.d.ts +36 -13
- package/dist/_internal/server/features/checkout/actions.js +668 -183
- package/dist/_internal/server/features/checkout/supplier-identity.js +18 -1
- package/dist/_internal/server/features/gateway-events/index.d.ts +10 -0
- package/dist/_internal/server/features/gateway-events/index.js +10 -0
- package/dist/_internal/server/features/gateway-events/ingest.d.ts +127 -0
- package/dist/_internal/server/features/gateway-events/ingest.js +188 -0
- package/dist/_internal/server/features/gateway-events/redact.d.ts +66 -0
- package/dist/_internal/server/features/gateway-events/redact.js +151 -0
- package/dist/_internal/server/features/grievance/actions.d.ts +63 -0
- package/dist/_internal/server/features/grievance/actions.js +173 -0
- package/dist/_internal/server/features/grievance/index.d.ts +8 -0
- package/dist/_internal/server/features/grievance/index.js +8 -0
- package/dist/_internal/server/features/grouped/data.js +28 -3
- package/dist/_internal/server/features/lottery/actions.js +99 -4
- package/dist/_internal/server/features/order-completion/actions.d.ts +92 -0
- package/dist/_internal/server/features/order-completion/actions.js +336 -0
- package/dist/_internal/server/features/order-completion/index.d.ts +7 -0
- package/dist/_internal/server/features/order-completion/index.js +7 -0
- package/dist/_internal/server/features/orders/actions.d.ts +13 -0
- package/dist/_internal/server/features/orders/actions.js +56 -2
- package/dist/_internal/server/features/orders/adapters.js +26 -0
- package/dist/_internal/server/features/orders/cancellation-refund.d.ts +116 -0
- package/dist/_internal/server/features/orders/cancellation-refund.js +466 -0
- package/dist/_internal/server/features/orders/index.d.ts +2 -1
- package/dist/_internal/server/features/orders/index.js +1 -1
- package/dist/_internal/server/features/orders/service.d.ts +60 -0
- package/dist/_internal/server/features/orders/service.js +74 -0
- package/dist/_internal/server/features/payment-cases/disputes.d.ts +76 -0
- package/dist/_internal/server/features/payment-cases/disputes.js +241 -0
- package/dist/_internal/server/features/payment-cases/index.d.ts +9 -0
- package/dist/_internal/server/features/payment-cases/index.js +9 -0
- package/dist/_internal/server/features/payouts/actions.d.ts +28 -3
- package/dist/_internal/server/features/payouts/actions.js +84 -10
- package/dist/_internal/server/features/points/adjust.d.ts +61 -0
- package/dist/_internal/server/features/points/adjust.js +121 -0
- package/dist/_internal/server/features/points/award.d.ts +65 -0
- package/dist/_internal/server/features/points/award.js +145 -0
- package/dist/_internal/server/features/price-index/market.d.ts +33 -0
- package/dist/_internal/server/features/price-index/market.js +54 -1
- package/dist/_internal/server/features/products/data.js +40 -22
- package/dist/_internal/server/features/protection-claims/actions.d.ts +72 -0
- package/dist/_internal/server/features/protection-claims/actions.js +228 -0
- package/dist/_internal/server/features/protection-claims/index.d.ts +8 -0
- package/dist/_internal/server/features/protection-claims/index.js +8 -0
- package/dist/_internal/server/features/refunds/actions.d.ts +20 -0
- package/dist/_internal/server/features/refunds/actions.js +259 -17
- package/dist/_internal/server/features/refunds/capacity.d.ts +29 -0
- package/dist/_internal/server/features/refunds/capacity.js +37 -0
- package/dist/_internal/server/features/reviews/actions.js +3 -2
- package/dist/_internal/server/features/search/index-build/sources.js +20 -1
- package/dist/_internal/server/features/shipping/reconcile.d.ts +10 -1
- package/dist/_internal/server/features/shipping/reconcile.js +34 -3
- package/dist/_internal/server/features/shipping/reimbursement.d.ts +117 -0
- package/dist/_internal/server/features/shipping/reimbursement.js +223 -0
- package/dist/_internal/server/features/stores/tabs.d.ts +19 -4
- package/dist/_internal/server/features/stores/tabs.js +24 -4
- package/dist/_internal/server/functions/https.d.ts +31 -1
- package/dist/_internal/server/functions/https.js +52 -1
- package/dist/_internal/server/functions/scheduled.d.ts +72 -1
- package/dist/_internal/server/functions/scheduled.js +124 -1
- package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +62 -16
- package/dist/_internal/server/jobs/core/boxRollupReconcile.d.ts +46 -0
- package/dist/_internal/server/jobs/core/boxRollupReconcile.js +142 -0
- package/dist/_internal/server/jobs/core/dailyDataCleanup.js +149 -1
- package/dist/_internal/server/jobs/core/dailyStatusDigest.d.ts +14 -0
- package/dist/_internal/server/jobs/core/dailyStatusDigest.js +79 -1
- package/dist/_internal/server/jobs/core/index.d.ts +2 -0
- package/dist/_internal/server/jobs/core/index.js +2 -0
- package/dist/_internal/server/jobs/core/marketPriceRollup.d.ts +64 -0
- package/dist/_internal/server/jobs/core/marketPriceRollup.js +153 -0
- package/dist/_internal/server/jobs/core/obligationSweep.d.ts +36 -0
- package/dist/_internal/server/jobs/core/obligationSweep.js +503 -0
- package/dist/_internal/server/jobs/core/paymentReconcile.d.ts +79 -0
- package/dist/_internal/server/jobs/core/paymentReconcile.js +614 -0
- package/dist/_internal/server/jobs/core/paymentWindowTimeout.js +34 -0
- package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +35 -4
- package/dist/_internal/server/jobs/handlers/boxRollupReconcile.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/boxRollupReconcile.js +15 -0
- package/dist/_internal/server/jobs/handlers/countersReconcileNow.d.ts +65 -0
- package/dist/_internal/server/jobs/handlers/countersReconcileNow.js +89 -0
- package/dist/_internal/server/jobs/handlers/index.d.ts +5 -0
- package/dist/_internal/server/jobs/handlers/index.js +5 -0
- package/dist/_internal/server/jobs/handlers/marketPriceRollup.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/marketPriceRollup.js +2 -0
- package/dist/_internal/server/jobs/handlers/messages.d.ts +1 -1
- package/dist/_internal/server/jobs/handlers/messages.js +1 -1
- package/dist/_internal/server/jobs/handlers/obligationSweep.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/obligationSweep.js +15 -0
- package/dist/_internal/server/jobs/handlers/onShipmentAllocationSync.js +30 -1
- package/dist/_internal/server/jobs/handlers/paymentReconcile.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/paymentReconcile.js +6 -0
- package/dist/_internal/shared/actions/action-registry.d.ts +1 -1
- package/dist/_internal/shared/actions/action-registry.js +71 -0
- package/dist/_internal/shared/checkout/coupon-discount.d.ts +73 -0
- package/dist/_internal/shared/checkout/coupon-discount.js +103 -0
- package/dist/_internal/shared/checkout/lanes.d.ts +42 -0
- package/dist/_internal/shared/checkout/lanes.js +46 -0
- package/dist/_internal/shared/checkout/order-math.d.ts +149 -1
- package/dist/_internal/shared/checkout/order-math.js +251 -3
- package/dist/_internal/shared/checkout/refundable-base.d.ts +116 -0
- package/dist/_internal/shared/checkout/refundable-base.js +122 -0
- package/dist/_internal/shared/features/auctions/config.d.ts +14 -1
- package/dist/_internal/shared/features/auctions/config.js +30 -1
- package/dist/_internal/shared/features/brands/schema.d.ts +42 -0
- package/dist/_internal/shared/features/brands/schema.js +18 -0
- package/dist/_internal/shared/features/orders/refund-copy.d.ts +22 -0
- package/dist/_internal/shared/features/orders/refund-copy.js +34 -0
- package/dist/_internal/shared/features/print/label-profiles.d.ts +198 -0
- package/dist/_internal/shared/features/print/label-profiles.js +350 -0
- package/dist/_internal/shared/features/products/to-product-item.js +33 -5
- package/dist/_internal/shared/fees/calculator.d.ts +31 -2
- package/dist/_internal/shared/fees/calculator.js +103 -5
- package/dist/_internal/shared/fees/india-states.d.ts +195 -0
- package/dist/_internal/shared/fees/india-states.js +190 -0
- package/dist/_internal/shared/fees/payout-hold.d.ts +80 -0
- package/dist/_internal/shared/fees/payout-hold.js +74 -0
- package/dist/_internal/shared/obligations/deadlines.d.ts +94 -0
- package/dist/_internal/shared/obligations/deadlines.js +155 -0
- package/dist/_internal/shared/shipping/quote.d.ts +96 -0
- package/dist/_internal/shared/shipping/quote.js +67 -0
- package/dist/_internal/shared/time/business-days.d.ts +91 -0
- package/dist/_internal/shared/time/business-days.js +185 -0
- package/dist/_internal/shared/types/base-document.d.ts +1 -1
- package/dist/cli/index.js +0 -2
- package/dist/client.d.ts +9 -4
- package/dist/client.js +26 -3
- package/dist/configs/tailwind.d.ts +0 -12
- package/dist/configs/tailwind.js +28 -15
- package/dist/constants/api-endpoints.d.ts +51 -9
- package/dist/constants/api-endpoints.js +23 -7
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/constants/seed-meta.d.ts +113 -0
- package/dist/constants/seed-meta.js +91 -0
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/payment.d.ts +131 -0
- package/dist/features/about/components/AboutView.js +1 -1
- package/dist/features/about/components/DeveloperView.js +5 -2
- package/dist/features/about/components/FAQPageView.js +2 -1
- package/dist/features/about/components/FeesView.js +2 -1
- package/dist/features/about/components/HelpPageView.js +2 -1
- package/dist/features/about/components/HowAuctionsWorkView.js +2 -1
- package/dist/features/about/components/HowCheckoutWorksView.js +2 -1
- package/dist/features/about/components/HowEmiWorksView.js +2 -1
- package/dist/features/about/components/HowOffersWorkView.js +2 -1
- package/dist/features/about/components/HowOrdersWorkView.js +2 -1
- package/dist/features/about/components/HowPayoutsWorkView.js +2 -1
- package/dist/features/about/components/HowPreOrdersWorkView.js +2 -1
- package/dist/features/about/components/HowReviewsWorkView.js +2 -1
- package/dist/features/about/components/PolicyPageView.js +2 -1
- package/dist/features/about/components/ProseHero.d.ts +73 -0
- package/dist/features/about/components/ProseHero.js +18 -0
- package/dist/features/about/components/SecurityPrivacyView.js +2 -1
- package/dist/features/about/components/ShippingPolicyView.js +2 -1
- package/dist/features/about/components/TrackOrderView.js +2 -1
- package/dist/features/about/components/UnauthorizedView.js +1 -1
- package/dist/features/about/index.d.ts +2 -0
- package/dist/features/about/index.js +5 -0
- package/dist/features/account/actions/address-actions.d.ts +26 -2
- package/dist/features/account/actions/address-actions.js +25 -1
- package/dist/features/account/components/BuyerShoppingGuideView.js +1 -1
- package/dist/features/account/components/NotificationPreferencesPanel.js +1 -1
- package/dist/features/account/components/UserOrdersView.js +17 -0
- package/dist/features/account/components/UserSidebar.js +1 -1
- package/dist/features/account/hooks/useNotifications.js +29 -0
- package/dist/features/admin/actions/admin-coupon-actions.js +36 -0
- package/dist/features/admin/components/AdminBeysView.js +2 -2
- package/dist/features/admin/components/AdminBlogEditorView.js +2 -2
- package/dist/features/admin/components/AdminBrandEditorView.js +32 -2
- package/dist/features/admin/components/AdminBundleEditorView.js +1 -1
- package/dist/features/admin/components/AdminCarouselEditorView.js +1 -1
- package/dist/features/admin/components/AdminCategoriesView.js +1 -1
- package/dist/features/admin/components/AdminCategoryEditorView.js +73 -17
- package/dist/features/admin/components/AdminContactEditorView.js +1 -1
- package/dist/features/admin/components/AdminCouponEditorView.js +26 -1
- package/dist/features/admin/components/AdminFaqEditorView.js +1 -1
- package/dist/features/admin/components/AdminFaqsView.js +2 -2
- package/dist/features/admin/components/AdminGatewayEventsView.d.ts +54 -0
- package/dist/features/admin/components/AdminGatewayEventsView.js +209 -0
- package/dist/features/admin/components/AdminGuideHubView.js +1 -1
- package/dist/features/admin/components/AdminMoneyCasesView.d.ts +60 -0
- package/dist/features/admin/components/AdminMoneyCasesView.js +287 -0
- package/dist/features/admin/components/AdminPartsView.js +2 -2
- package/dist/features/admin/components/AdminProductsView.js +75 -4
- package/dist/features/admin/components/AdminSidebar.js +2 -2
- package/dist/features/admin/components/AdminSiteSettingsView.js +65 -7
- package/dist/features/admin/components/AdminSublistingCategoriesView.js +2 -0
- package/dist/features/admin/components/AdminSupportTicketDetailView.js +1 -1
- package/dist/features/admin/components/AdminSupportTicketsView.js +2 -2
- package/dist/features/admin/components/AdminTesterChecklistView.js +2 -2
- package/dist/features/admin/components/AdminUsersView.js +72 -1
- package/dist/features/admin/components/AdminViewCards.d.ts +3 -1
- package/dist/features/admin/components/AdminViewCards.js +4 -4
- package/dist/features/admin/components/DataListingView.d.ts +28 -0
- package/dist/features/admin/components/DataListingView.js +175 -14
- package/dist/features/admin/components/DataTable.d.ts +12 -1
- package/dist/features/admin/components/DataTable.js +3 -3
- package/dist/features/admin/components/OwnerQuickActions.d.ts +1 -1
- package/dist/features/admin/components/OwnerQuickActions.js +60 -2
- package/dist/features/admin/components/RecordOwnerQuickActions.d.ts +1 -1
- package/dist/features/admin/components/RecordOwnerQuickActions.js +61 -14
- package/dist/features/admin/components/analytics/AdminStatCard.d.ts +35 -1
- package/dist/features/admin/components/analytics/AdminStatCard.js +77 -2
- package/dist/features/admin/components/index.d.ts +4 -0
- package/dist/features/admin/components/index.js +6 -0
- package/dist/features/admin/constants/filter-tabs.d.ts +156 -0
- package/dist/features/admin/constants/filter-tabs.js +106 -0
- package/dist/features/admin/repository/site-settings.repository.d.ts +22 -0
- package/dist/features/admin/repository/site-settings.repository.js +82 -1
- package/dist/features/admin/schemas/admin-editor-forms.d.ts +21 -0
- package/dist/features/admin/schemas/admin-editor-forms.js +44 -0
- package/dist/features/admin/schemas/firestore.js +5 -1
- package/dist/features/admin/schemas/site-settings-form.js +30 -1
- package/dist/features/auctions/actions/bid-actions.js +13 -1
- package/dist/features/auctions/components/AuctionBottomActions.js +2 -2
- package/dist/features/auctions/components/AuctionDetailPageView.js +3 -1
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +11 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +5 -3
- package/dist/features/auctions/components/PlaceBidFormClient.d.ts +8 -1
- package/dist/features/auctions/components/PlaceBidFormClient.js +2 -2
- package/dist/features/audit-log/schemas/firestore.d.ts +28 -0
- package/dist/features/audit-log/schemas/firestore.js +14 -0
- package/dist/features/auth/permissions/constants.d.ts +17 -1
- package/dist/features/auth/permissions/constants.js +18 -0
- package/dist/features/blog/components/BlogPostView.js +1 -1
- package/dist/features/catalogue/components/AdminCatalogueApprovalsView.js +1 -1
- package/dist/features/categories/api/[id]/description-template/route.js +107 -1
- package/dist/features/categories/components/BrandDetailPageView.js +2 -2
- package/dist/features/categories/components/BreadcrumbTrail.js +7 -1
- package/dist/features/categories/components/BundleDetailView.js +1 -1
- package/dist/features/categories/components/CategoryDetailPageView.js +2 -2
- package/dist/features/categories/components/CategoryForm.js +12 -1
- package/dist/features/categories/components/CategoryTemplatePicker.js +38 -5
- package/dist/features/categories/repository/market-price-index.repository.d.ts +123 -0
- package/dist/features/categories/repository/market-price-index.repository.js +105 -0
- package/dist/features/categories/repository/price-observation.repository.d.ts +166 -0
- package/dist/features/categories/repository/price-observation.repository.js +132 -0
- package/dist/features/events/components/EventSaleBanner.js +1 -1
- package/dist/features/events/components/EventStatusBadge.js +1 -1
- package/dist/features/faq/components/FAQAccordion.js +2 -1
- package/dist/features/faq/components/FAQCategorySidebar.js +2 -2
- package/dist/features/faq/components/FAQHelpfulButtons.js +4 -4
- package/dist/features/faq/components/RelatedFAQs.js +1 -1
- package/dist/features/filters/FilterFacetSection.js +1 -1
- package/dist/features/filters/SwitchFilter.js +1 -1
- package/dist/features/gateway-events/repository/gateway-events.repository.d.ts +117 -0
- package/dist/features/gateway-events/repository/gateway-events.repository.js +274 -0
- package/dist/features/gateway-events/schemas/firestore.d.ts +217 -0
- package/dist/features/gateway-events/schemas/firestore.js +125 -0
- package/dist/features/gateway-events/schemas/index.d.ts +81 -0
- package/dist/features/gateway-events/schemas/index.js +79 -0
- package/dist/features/grouped/components/GroupedListingDetailView.js +1 -1
- package/dist/features/homepage/components/AnnouncementBar.js +37 -1
- package/dist/features/homepage/components/AnnouncementBar.style.css +30 -0
- package/dist/features/homepage/components/BrandsSection.js +1 -1
- package/dist/features/homepage/components/CTABannerSection.js +1 -1
- package/dist/features/homepage/components/FeaturedBundlesSection.js +14 -24
- package/dist/features/homepage/components/HeroCarousel.js +2 -2
- package/dist/features/homepage/components/SocialPostCard.js +1 -1
- package/dist/features/inventory/components/AdminMoveLedgerView.d.ts +7 -0
- package/dist/features/inventory/components/AdminMoveLedgerView.js +157 -0
- package/dist/features/inventory/components/AdminStorageBoxesView.d.ts +11 -0
- package/dist/features/inventory/components/AdminStorageBoxesView.js +168 -0
- package/dist/features/inventory/components/ReceiveStationView.d.ts +39 -0
- package/dist/features/inventory/components/ReceiveStationView.js +413 -0
- package/dist/features/inventory/components/operator-message.d.ts +29 -0
- package/dist/features/inventory/components/operator-message.js +41 -0
- package/dist/features/inventory/index.d.ts +13 -0
- package/dist/features/inventory/index.js +28 -0
- package/dist/features/inventory/repository/inventory-movements.repository.d.ts +97 -0
- package/dist/features/inventory/repository/inventory-movements.repository.js +186 -0
- package/dist/features/inventory/repository/inventory-placements.repository.d.ts +179 -0
- package/dist/features/inventory/repository/inventory-placements.repository.js +345 -0
- package/dist/features/inventory/repository/storage-boxes.repository.d.ts +83 -0
- package/dist/features/inventory/repository/storage-boxes.repository.js +127 -0
- package/dist/features/inventory/schemas/firestore.d.ts +197 -0
- package/dist/features/inventory/schemas/firestore.js +159 -0
- package/dist/features/layout/AppLayoutShell.d.ts +12 -1
- package/dist/features/layout/AppLayoutShell.js +25 -12
- package/dist/features/layout/AutoBreadcrumbs.js +162 -3
- package/dist/features/layout/AutoBreadcrumbs.style.css +45 -0
- package/dist/features/layout/BottomNavbar.d.ts +1 -1
- package/dist/features/layout/BottomNavbar.js +2 -2
- package/dist/features/media/MediaAvatar.js +1 -1
- package/dist/features/media/MediaImage.d.ts +24 -4
- package/dist/features/media/MediaImage.js +44 -4
- package/dist/features/media/MediaLightbox.js +1 -1
- package/dist/features/media/modals/ImageCropModal.js +1 -1
- package/dist/features/media/modals/ImageEditor.js +1 -1
- package/dist/features/media/upload/MediaUploadField.js +91 -3
- package/dist/features/obligations/constants/policies.d.ts +92 -0
- package/dist/features/obligations/constants/policies.js +378 -0
- package/dist/features/obligations/repository/obligations.repository.d.ts +68 -0
- package/dist/features/obligations/repository/obligations.repository.js +158 -0
- package/dist/features/obligations/schemas/firestore.d.ts +160 -0
- package/dist/features/obligations/schemas/firestore.js +87 -0
- package/dist/features/orders/actions/order-actions.d.ts +43 -4
- package/dist/features/orders/actions/order-actions.js +60 -3
- package/dist/features/orders/actions/refund-actions.js +70 -10
- package/dist/features/orders/components/OrderCompletionPanel.d.ts +27 -0
- package/dist/features/orders/components/OrderCompletionPanel.js +192 -0
- package/dist/features/orders/components/OrdersList.js +2 -2
- package/dist/features/orders/components/RefundHistoryTable.js +3 -1
- package/dist/features/orders/components/index.d.ts +2 -0
- package/dist/features/orders/components/index.js +6 -0
- package/dist/features/orders/constants/transitions.d.ts +59 -0
- package/dist/features/orders/constants/transitions.js +104 -0
- package/dist/features/orders/repository/orders.repository.d.ts +109 -6
- package/dist/features/orders/repository/orders.repository.js +464 -21
- package/dist/features/orders/schemas/firestore.d.ts +270 -0
- package/dist/features/orders/schemas/firestore.js +24 -0
- package/dist/features/orders/schemas/index.d.ts +61 -0
- package/dist/features/orders/schemas/index.js +22 -0
- package/dist/features/orders/types/index.d.ts +79 -0
- package/dist/features/parts/components/PartsIndexPageView.js +8 -1
- package/dist/features/payment-cases/repository/payment-cases.repository.d.ts +170 -0
- package/dist/features/payment-cases/repository/payment-cases.repository.js +342 -0
- package/dist/features/payment-cases/schemas/firestore.d.ts +229 -0
- package/dist/features/payment-cases/schemas/firestore.js +105 -0
- package/dist/features/payment-cases/schemas/resolve-form.d.ts +97 -0
- package/dist/features/payment-cases/schemas/resolve-form.js +114 -0
- package/dist/features/payments/repository/payout.repository.d.ts +0 -1
- package/dist/features/payments/repository/payout.repository.js +0 -1
- package/dist/features/points/repository/points.repository.d.ts +122 -0
- package/dist/features/points/repository/points.repository.js +304 -1
- package/dist/features/points/schemas/adjust-form.d.ts +58 -0
- package/dist/features/points/schemas/adjust-form.js +63 -0
- package/dist/features/points/schemas/firestore.d.ts +108 -1
- package/dist/features/points/schemas/firestore.js +84 -0
- package/dist/features/pre-orders/components/MarketplacePreorderCard.js +3 -3
- package/dist/features/pre-orders/components/PreOrderBadge.js +1 -1
- package/dist/features/pre-orders/components/PreOrderDetailPageView.js +1 -1
- package/dist/features/price-index/components/PriceIndexToolView.d.ts +23 -4
- package/dist/features/price-index/components/PriceIndexToolView.js +71 -6
- package/dist/features/price-index/market-stats.d.ts +82 -0
- package/dist/features/price-index/market-stats.js +230 -0
- package/dist/features/print/components/BoxLabelPrintView.d.ts +25 -0
- package/dist/features/print/components/BoxLabelPrintView.js +66 -0
- package/dist/features/print/components/LabelProfilePicker.d.ts +13 -0
- package/dist/features/print/components/LabelProfilePicker.js +38 -0
- package/dist/features/print/components/labels.d.ts +117 -0
- package/dist/features/print/components/labels.js +258 -0
- package/dist/features/print/components/labels.style.css +46 -0
- package/dist/features/print/index.d.ts +6 -0
- package/dist/features/print/index.js +16 -0
- package/dist/features/products/columns/productTableColumns.js +5 -4
- package/dist/features/products/components/MarketplaceBundleCard.js +2 -2
- package/dist/features/products/components/MarketplacePrizeDrawCard.js +6 -6
- package/dist/features/products/components/PrizeDrawCollage.js +1 -1
- package/dist/features/products/components/PrizeDrawItemsEditor.js +1 -1
- package/dist/features/products/components/PrizeRevealModal.js +2 -2
- package/dist/features/products/components/ProductDetailPageView.js +18 -4
- package/dist/features/products/components/ProductForm.js +34 -23
- package/dist/features/products/components/ProductGrid.js +86 -62
- package/dist/features/products/constants/card-badges.d.ts +97 -0
- package/dist/features/products/constants/card-badges.js +100 -0
- package/dist/features/products/repository/products.repository.js +34 -1
- package/dist/features/products/schemas/firestore.d.ts +46 -3
- package/dist/features/products/schemas/firestore.js +21 -0
- package/dist/features/promotions/components/PromotionsView.js +1 -1
- package/dist/features/promotions/repository/claimed-coupons.repository.d.ts +32 -0
- package/dist/features/promotions/repository/claimed-coupons.repository.js +58 -0
- package/dist/features/promotions/schemas/firestore.js +30 -3
- package/dist/features/promotions/schemas/index.d.ts +6 -6
- package/dist/features/protection-claims/repository/protection-claims.repository.d.ts +54 -0
- package/dist/features/protection-claims/repository/protection-claims.repository.js +174 -0
- package/dist/features/protection-claims/schemas/firestore.d.ts +168 -0
- package/dist/features/protection-claims/schemas/firestore.js +130 -0
- package/dist/features/reviews/actions/review-actions.js +3 -2
- package/dist/features/reviews/components/ReviewModal.js +1 -1
- package/dist/features/reviews/components/ReviewsList.js +1 -1
- package/dist/features/reviews/schemas/firestore.d.ts +20 -1
- package/dist/features/scams/constants/scam-types.d.ts +2 -0
- package/dist/features/scams/constants/scam-types.js +18 -0
- package/dist/features/scams/schemas/report-form.d.ts +3 -3
- package/dist/features/scams/schemas/report-form.js +26 -1
- package/dist/features/search/components/Search.js +9 -9
- package/dist/features/search/components/SearchResultsClient.js +18 -3
- package/dist/features/search/components/SearchResultsPageView.d.ts +1 -6
- package/dist/features/search/components/SearchResultsPageView.js +2 -2
- package/dist/features/seller/actions/offer-actions.js +16 -1
- package/dist/features/seller/actions/seller-actions.js +14 -3
- package/dist/features/seller/components/CategoryInlineSelect.js +75 -11
- package/dist/features/seller/components/PrintCenterView.d.ts +5 -0
- package/dist/features/seller/components/PrintCenterView.js +41 -30
- package/dist/features/seller/components/SellerOrdersView.js +1 -1
- package/dist/features/seller/components/SellerPayoutRequestView.js +16 -5
- package/dist/features/seller/components/SellerPayoutSettingsView.js +1 -1
- package/dist/features/seller/components/SellerProductShell.d.ts +16 -0
- package/dist/features/seller/components/SellerProductShell.js +123 -13
- package/dist/features/seller/components/SellerReviewsView.js +4 -2
- package/dist/features/seller/components/SellerSidebar.js +1 -1
- package/dist/features/seller/schemas/coupon-form.d.ts +26 -0
- package/dist/features/seller/schemas/coupon-form.js +27 -0
- package/dist/features/seller/schemas/product-form.d.ts +3 -0
- package/dist/features/seller/schemas/product-form.js +5 -0
- package/dist/features/shell/FormShell.js +2 -2
- package/dist/features/shell/QuickFormDrawer.js +14 -0
- package/dist/features/shell/SectionForm.d.ts +19 -0
- package/dist/features/shell/SectionForm.js +133 -9
- package/dist/features/shell/SectionForm.style.css +54 -0
- package/dist/features/shipments/components/AdminShipmentsView.js +16 -1
- package/dist/features/shipments/repository/shipment-items.repository.d.ts +9 -0
- package/dist/features/shipments/repository/shipment-items.repository.js +14 -0
- package/dist/features/site-settings/components/ActionPermissionsManager.js +1 -1
- package/dist/features/sticker-trace/components/StickerCommitPanel.js +1 -1
- package/dist/features/store-extensions/schemas/report-review-form.d.ts +8 -8
- package/dist/features/stores/components/StoreGuideHubView.js +1 -1
- package/dist/features/stores/components/StoreHeader.js +1 -1
- package/dist/features/support/schemas/firestore.d.ts +73 -2
- package/dist/features/support/schemas/firestore.js +59 -0
- package/dist/index.d.ts +16 -155
- package/dist/index.js +88 -341
- package/dist/next/ErrorBoundary.js +1 -1
- package/dist/next/routing/route-map.d.ts +24 -0
- package/dist/next/routing/route-map.js +40 -0
- package/dist/providers/payment-manual/index.d.ts +15 -1
- package/dist/providers/payment-manual/index.js +37 -0
- package/dist/providers/payment-phonepe/index.d.ts +14 -1
- package/dist/providers/payment-phonepe/index.js +36 -0
- package/dist/providers/payment-razorpay/index.d.ts +44 -1
- package/dist/providers/payment-razorpay/index.js +99 -0
- package/dist/providers/shipping-shiprocket/index.d.ts +18 -0
- package/dist/providers/shipping-shiprocket/index.js +18 -0
- package/dist/schemas/registry.d.ts +44 -11
- package/dist/server-entry.d.ts +2 -0
- package/dist/server-entry.js +27 -0
- package/dist/server.d.ts +42 -69
- package/dist/server.js +93 -69
- package/dist/styles.css +418 -149
- package/dist/tailwind-utilities.css +1 -1
- package/dist/tokens/themes/default-dark.js +15 -12
- package/dist/tokens/themes/default-light.js +14 -11
- package/dist/tokens/tokens.css +106 -23
- package/dist/ui/DataTable.style.css +4 -4
- package/dist/ui/columns/cell-renderers.d.ts +20 -0
- package/dist/ui/columns/cell-renderers.js +26 -1
- package/dist/ui/columns/index.d.ts +1 -1
- package/dist/ui/columns/index.js +4 -1
- package/dist/ui/components/Badge.style.css +1 -1
- package/dist/ui/components/Breadcrumb.js +19 -1
- package/dist/ui/components/BulkActionBar.style.css +4 -4
- package/dist/ui/components/Button.style.css +1 -1
- package/dist/ui/components/Checkbox.style.css +1 -1
- package/dist/ui/components/FallbackShell.js +1 -1
- package/dist/ui/components/Form.d.ts +14 -1
- package/dist/ui/components/Form.js +2 -2
- package/dist/ui/components/FormField.js +18 -4
- package/dist/ui/components/FormField.style.css +43 -3
- package/dist/ui/components/GatedPrice.style.css +1 -1
- package/dist/ui/components/IconButton.style.css +1 -1
- package/dist/ui/components/Input.js +22 -1
- package/dist/ui/components/Input.style.css +38 -22
- package/dist/ui/components/ListingFilterDrawer.js +1 -1
- package/dist/ui/components/ListingToolbar.js +1 -1
- package/dist/ui/components/PaginatedSelect.js +0 -0
- package/dist/ui/components/Radio.style.css +1 -1
- package/dist/ui/components/Repeater.d.ts +53 -0
- package/dist/ui/components/Repeater.js +7 -0
- package/dist/ui/components/RichTextEditor.d.ts +20 -1
- package/dist/ui/components/RichTextEditor.js +23 -2
- package/dist/ui/components/Select.style.css +7 -21
- package/dist/ui/components/Semantic.js +27 -3
- package/dist/ui/components/TagInput.style.css +4 -9
- package/dist/ui/components/Textarea.style.css +4 -18
- package/dist/ui/components/Toggle.style.css +1 -1
- package/dist/ui/components/Typography.d.ts +3 -3
- package/dist/ui/components/Typography.js +15 -15
- package/dist/ui/components/ViewToggle.style.css +4 -4
- package/dist/ui/forms/AddAnotherToggle.d.ts +16 -0
- package/dist/ui/forms/AddAnotherToggle.js +56 -0
- package/dist/ui/forms/ColorPickerField.js +15 -2
- package/dist/ui/forms/FieldCheckbox.js +15 -2
- package/dist/ui/forms/FieldInput.d.ts +22 -1
- package/dist/ui/forms/FieldInput.js +19 -5
- package/dist/ui/forms/FieldLabel.d.ts +35 -0
- package/dist/ui/forms/FieldLabel.js +70 -0
- package/dist/ui/forms/FieldSelect.d.ts +4 -1
- package/dist/ui/forms/FieldSelect.js +27 -5
- package/dist/ui/forms/FieldTextarea.d.ts +4 -1
- package/dist/ui/forms/FieldTextarea.js +22 -5
- package/dist/ui/forms/FormShell.d.ts +17 -1
- package/dist/ui/forms/FormShell.js +36 -2
- package/dist/ui/forms/FormShell.style.css +41 -33
- package/dist/ui/forms/index.d.ts +5 -1
- package/dist/ui/forms/index.js +2 -0
- package/dist/ui/icons/icon-registry.d.ts +1 -0
- package/dist/ui/icons/icon-registry.js +17 -1
- package/dist/utils/id-generators.d.ts +80 -0
- package/dist/utils/id-generators.js +93 -0
- package/dist/utils/search-txt-builders.d.ts +12 -0
- package/dist/utils/search-txt-builders.js +17 -0
- package/package.json +4 -2
- package/scripts/seed-cli.mjs +175 -6
- package/dist/features/loyalty/api/admin/loyalty/grant/route.d.ts +0 -12
- package/dist/features/loyalty/api/admin/loyalty/grant/route.js +0 -38
- package/dist/features/loyalty/api/balance/route.d.ts +0 -12
- package/dist/features/loyalty/api/balance/route.js +0 -41
- package/dist/features/loyalty/api/earn/route.d.ts +0 -12
- package/dist/features/loyalty/api/earn/route.js +0 -38
- package/dist/features/loyalty/api/history/route.d.ts +0 -12
- package/dist/features/loyalty/api/history/route.js +0 -58
- package/dist/features/loyalty/api/redeem/route.d.ts +0 -12
- package/dist/features/loyalty/api/redeem/route.js +0 -38
- package/dist/features/loyalty/columns/index.d.ts +0 -17
- package/dist/features/loyalty/columns/index.js +0 -40
- package/dist/features/loyalty/components/CoinsDisplay.d.ts +0 -12
- package/dist/features/loyalty/components/CoinsDisplay.js +0 -10
- package/dist/features/loyalty/components/index.d.ts +0 -1
- package/dist/features/loyalty/components/index.js +0 -1
- package/dist/features/loyalty/hooks/useLoyaltyBalance.d.ts +0 -4
- package/dist/features/loyalty/hooks/useLoyaltyBalance.js +0 -25
- package/dist/features/loyalty/index.d.ts +0 -6
- package/dist/features/loyalty/index.js +0 -6
- package/dist/features/loyalty/manifest.d.ts +0 -2
- package/dist/features/loyalty/manifest.js +0 -16
- package/dist/features/loyalty/messages/en.json +0 -19
- package/dist/features/loyalty/repository/loyalty.repository.d.ts +0 -8
- package/dist/features/loyalty/repository/loyalty.repository.js +0 -22
- package/dist/features/loyalty/schemas/index.d.ts +0 -85
- package/dist/features/loyalty/schemas/index.js +0 -40
- package/dist/features/loyalty/server.d.ts +0 -6
- package/dist/features/loyalty/server.js +0 -6
- package/dist/features/loyalty/types/index.d.ts +0 -31
- package/dist/features/loyalty/types/index.js +0 -1
- package/dist/features/loyalty/types/loyalty-config.d.ts +0 -7
- package/dist/features/loyalty/types/loyalty-config.js +0 -1
- package/dist/features/loyalty/types/loyalty-math.d.ts +0 -9
- package/dist/features/loyalty/types/loyalty-math.js +0 -27
- package/dist/features/products/components/ProductOwnerQuickActions.d.ts +0 -11
- package/dist/features/products/components/ProductOwnerQuickActions.js +0 -120
- package/dist/features/tester/seed-data/_happy-path.d.ts +0 -23
- package/dist/features/tester/seed-data/_happy-path.js +0 -710
- package/dist/features/tester/seed-data/_money-flows.d.ts +0 -23
- package/dist/features/tester/seed-data/_money-flows.js +0 -610
- package/dist/features/tester/seed-data/authored/_types.d.ts +0 -57
- package/dist/features/tester/seed-data/authored/_types.js +0 -35
- package/dist/features/tester/seed-data/authored/account-auth__profile-settings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/account-auth__profile-settings.js +0 -226
- package/dist/features/tester/seed-data/authored/account-auth__signup-login.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/account-auth__signup-login.js +0 -329
- package/dist/features/tester/seed-data/authored/addresses__address-filters.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__address-filters.js +0 -41
- package/dist/features/tester/seed-data/authored/addresses__postal-lookup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__postal-lookup.js +0 -76
- package/dist/features/tester/seed-data/authored/addresses__postal-validation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__postal-validation.js +0 -78
- package/dist/features/tester/seed-data/authored/addresses__state-picker.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__state-picker.js +0 -59
- package/dist/features/tester/seed-data/authored/addresses__unban-request.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__unban-request.js +0 -77
- package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.js +0 -151
- package/dist/features/tester/seed-data/authored/admin__bans-and-trust.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bans-and-trust.js +0 -265
- package/dist/features/tester/seed-data/authored/admin__blog-faqs.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__blog-faqs.js +0 -131
- package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.js +0 -143
- package/dist/features/tester/seed-data/authored/admin__bulk-actions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bulk-actions.js +0 -207
- package/dist/features/tester/seed-data/authored/admin__bundles.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bundles.js +0 -144
- package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.js +0 -265
- package/dist/features/tester/seed-data/authored/admin__catalog-listings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +0 -318
- package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.js +0 -177
- package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.js +0 -165
- package/dist/features/tester/seed-data/authored/admin__content-deletes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__content-deletes.js +0 -267
- package/dist/features/tester/seed-data/authored/admin__content-marketing.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__content-marketing.js +0 -188
- package/dist/features/tester/seed-data/authored/admin__coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__coupons.js +0 -215
- package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.js +0 -202
- package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.js +0 -249
- package/dist/features/tester/seed-data/authored/admin__media-watermark.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__media-watermark.js +0 -148
- package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.js +0 -350
- package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.js +0 -129
- package/dist/features/tester/seed-data/authored/admin__site-system.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__site-system.js +0 -586
- package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.js +0 -260
- package/dist/features/tester/seed-data/authored/admin__users-trust.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__users-trust.js +0 -569
- package/dist/features/tester/seed-data/authored/buying__bidding.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__bidding.js +0 -449
- package/dist/features/tester/seed-data/authored/buying__browsing-search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__browsing-search.js +0 -684
- package/dist/features/tester/seed-data/authored/buying__buying-checkout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__buying-checkout.js +0 -546
- package/dist/features/tester/seed-data/authored/buying__buying-coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__buying-coupons.js +0 -379
- package/dist/features/tester/seed-data/authored/buying__cart.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__cart.js +0 -1264
- package/dist/features/tester/seed-data/authored/buying__image-tile-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__image-tile-layout.js +0 -122
- package/dist/features/tester/seed-data/authored/buying__my-orders.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__my-orders.js +0 -279
- package/dist/features/tester/seed-data/authored/buying__offers.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__offers.js +0 -1127
- package/dist/features/tester/seed-data/authored/buying__order-detail-actions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__order-detail-actions.js +0 -153
- package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.js +0 -252
- package/dist/features/tester/seed-data/authored/buying__product-detail.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__product-detail.js +0 -474
- package/dist/features/tester/seed-data/authored/buying__return-request.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__return-request.js +0 -165
- package/dist/features/tester/seed-data/authored/buying__reviews-pagination.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__reviews-pagination.js +0 -260
- package/dist/features/tester/seed-data/authored/buying__reviews.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__reviews.js +0 -128
- package/dist/features/tester/seed-data/authored/buying__spares-and-groups.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__spares-and-groups.js +0 -96
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.js +0 -283
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.js +0 -169
- package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.js +0 -105
- package/dist/features/tester/seed-data/authored/buying__wishlist-history.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__wishlist-history.js +0 -374
- package/dist/features/tester/seed-data/authored/community-support__messages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__messages.js +0 -200
- package/dist/features/tester/seed-data/authored/community-support__public-profile.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__public-profile.js +0 -54
- package/dist/features/tester/seed-data/authored/community-support__support-tickets.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__support-tickets.js +0 -76
- package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.d.ts +0 -4
- package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.js +0 -590
- package/dist/features/tester/seed-data/authored/content-discovery__blog.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__blog.js +0 -110
- package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +0 -149
- package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.js +0 -145
- package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +0 -174
- package/dist/features/tester/seed-data/authored/content-discovery__coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__coupons.js +0 -169
- package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.js +0 -209
- package/dist/features/tester/seed-data/authored/content-discovery__event-participation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__event-participation.js +0 -207
- package/dist/features/tester/seed-data/authored/content-discovery__events.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__events.js +0 -377
- package/dist/features/tester/seed-data/authored/content-discovery__faq-help.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__faq-help.js +0 -87
- package/dist/features/tester/seed-data/authored/content-discovery__notifications.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__notifications.js +0 -147
- package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.js +0 -209
- package/dist/features/tester/seed-data/authored/content-discovery__parts-database.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__parts-database.js +0 -167
- package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.js +0 -73
- package/dist/features/tester/seed-data/authored/content-discovery__search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__search.js +0 -363
- package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.js +0 -340
- package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.js +0 -88
- package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.js +0 -78
- package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.js +0 -76
- package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.js +0 -62
- package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.js +0 -163
- package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.js +0 -61
- package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.js +0 -89
- package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.js +0 -95
- package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.js +0 -191
- package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.js +0 -158
- package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.js +0 -82
- package/dist/features/tester/seed-data/authored/design-ux__footer-theme.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__footer-theme.js +0 -106
- package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.js +0 -88
- package/dist/features/tester/seed-data/authored/design-ux__general-design.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__general-design.js +0 -204
- package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.js +0 -301
- package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.js +0 -90
- package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.js +0 -85
- package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.js +0 -407
- package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.js +0 -88
- package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +0 -84
- package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.js +0 -214
- package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.js +0 -275
- package/dist/features/tester/seed-data/authored/index.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/index.js +0 -301
- package/dist/features/tester/seed-data/authored/page-wiring__data-loss.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__data-loss.js +0 -125
- package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.js +0 -85
- package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.js +0 -92
- package/dist/features/tester/seed-data/authored/page-wiring__reachability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__reachability.js +0 -115
- package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.js +0 -137
- package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +0 -263
- package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.js +0 -229
- package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.js +0 -325
- package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.js +0 -126
- package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.js +0 -141
- package/dist/features/tester/seed-data/authored/public-pages__store-tabs.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__store-tabs.js +0 -115
- package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.js +0 -253
- package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.js +0 -93
- package/dist/features/tester/seed-data/authored/search-and-nav__header-search.d.ts +0 -3
- package/dist/features/tester/seed-data/authored/search-and-nav__header-search.js +0 -185
- package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.js +0 -82
- package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.js +0 -60
- package/dist/features/tester/seed-data/authored/selling__become-seller.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__become-seller.js +0 -117
- package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.js +0 -148
- package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.js +0 -108
- package/dist/features/tester/seed-data/authored/selling__listing-a-product.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-a-product.js +0 -274
- package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.js +0 -145
- package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.js +0 -336
- package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.js +0 -136
- package/dist/features/tester/seed-data/authored/selling__media-limits.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__media-limits.js +0 -135
- package/dist/features/tester/seed-data/authored/selling__product-upload-details.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +0 -155
- package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.js +0 -138
- package/dist/features/tester/seed-data/authored/selling__sectionised-forms.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__sectionised-forms.js +0 -191
- package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.js +0 -138
- package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.js +0 -106
- package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.js +0 -192
- package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.js +0 -109
- package/dist/features/tester/seed-data/authored/selling__seller-guide.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-guide.js +0 -34
- package/dist/features/tester/seed-data/authored/selling__seller-listing-types.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-listing-types.js +0 -348
- package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.js +0 -87
- package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.js +0 -90
- package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.js +0 -85
- package/dist/features/tester/seed-data/authored/selling__seller-orders.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-orders.js +0 -213
- package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.js +0 -192
- package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.js +0 -77
- package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.js +0 -165
- package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.js +0 -116
- package/dist/features/tester/seed-data/authored/seo__canonical-and-host.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__canonical-and-host.js +0 -127
- package/dist/features/tester/seed-data/authored/seo__og-images.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__og-images.js +0 -107
- package/dist/features/tester/seed-data/authored/seo__page-metadata.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__page-metadata.js +0 -120
- package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.js +0 -105
- package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.js +0 -58
- package/dist/features/tester/seed-data/authored/tools__sticker-tracer.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/tools__sticker-tracer.js +0 -284
- package/dist/features/tester/seed-data/index.d.ts +0 -2
- package/dist/features/tester/seed-data/index.js +0 -2
- package/dist/features/tester/seed-data/tester-checklist-seed-data.d.ts +0 -2
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +0 -7601
- package/dist/features/tester/seed-data/tester-responses-seed-data.d.ts +0 -2
- package/dist/features/tester/seed-data/tester-responses-seed-data.js +0 -95
- package/dist/features/tester/seed-data/tester-window.d.ts +0 -25
- package/dist/features/tester/seed-data/tester-window.js +0 -66
- package/dist/seed/_helpers/brand-rows.d.ts +0 -35
- package/dist/seed/_helpers/brand-rows.js +0 -600
- package/dist/seed/_helpers/category-content-generated.d.ts +0 -24
- package/dist/seed/_helpers/category-content-generated.js +0 -1853
- package/dist/seed/_helpers/category-content.d.ts +0 -68
- package/dist/seed/_helpers/category-content.js +0 -731
- package/dist/seed/_helpers/category-forest.d.ts +0 -4
- package/dist/seed/_helpers/category-forest.js +0 -824
- package/dist/seed/_helpers/category-images-generated.d.ts +0 -57
- package/dist/seed/_helpers/category-images-generated.js +0 -618
- package/dist/seed/_helpers/category-models/chunk0.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk0.js +0 -2648
- package/dist/seed/_helpers/category-models/chunk1.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk1.js +0 -2318
- package/dist/seed/_helpers/category-models/chunk2.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk2.js +0 -2560
- package/dist/seed/_helpers/category-models/chunk3.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk3.js +0 -2196
- package/dist/seed/_helpers/category-models/chunk4.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk4.js +0 -1732
- package/dist/seed/_helpers/category-models.d.ts +0 -12
- package/dist/seed/_helpers/category-models.js +0 -45
- package/dist/seed/_helpers/category-names.d.ts +0 -54
- package/dist/seed/_helpers/category-names.js +0 -118
- package/dist/seed/_helpers/category-parts-glossary-map.d.ts +0 -1
- package/dist/seed/_helpers/category-parts-glossary-map.js +0 -2499
- package/dist/seed/_helpers/category-parts.d.ts +0 -9
- package/dist/seed/_helpers/category-parts.js +0 -15022
- package/dist/seed/_helpers/category-tree.d.ts +0 -27
- package/dist/seed/_helpers/category-tree.js +0 -119
- package/dist/seed/_helpers/character-features.d.ts +0 -10
- package/dist/seed/_helpers/character-features.js +0 -120
- package/dist/seed/_helpers/final-sale-fixtures.d.ts +0 -35
- package/dist/seed/_helpers/final-sale-fixtures.js +0 -61
- package/dist/seed/_helpers/franchise-rows.d.ts +0 -43
- package/dist/seed/_helpers/franchise-rows.js +0 -189
- package/dist/seed/_helpers/media.d.ts +0 -67
- package/dist/seed/_helpers/media.js +0 -172
- package/dist/seed/_helpers/part-colours-generated.d.ts +0 -18
- package/dist/seed/_helpers/part-colours-generated.js +0 -273
- package/dist/seed/_helpers/product-search-txt.d.ts +0 -18
- package/dist/seed/_helpers/product-search-txt.js +0 -23
- package/dist/seed/_helpers/search-txt-wrappers.d.ts +0 -26
- package/dist/seed/_helpers/search-txt-wrappers.js +0 -58
- package/dist/seed/addresses-seed-data.d.ts +0 -2
- package/dist/seed/addresses-seed-data.js +0 -78
- package/dist/seed/authenticity-knowledge-seed-data.d.ts +0 -78
- package/dist/seed/authenticity-knowledge-seed-data.js +0 -10729
- package/dist/seed/bey-products-seed-data.d.ts +0 -18
- package/dist/seed/bey-products-seed-data.js +0 -18011
- package/dist/seed/beys/chunk0.d.ts +0 -17
- package/dist/seed/beys/chunk0.js +0 -36733
- package/dist/seed/beys/chunk1.d.ts +0 -17
- package/dist/seed/beys/chunk1.js +0 -35728
- package/dist/seed/beys/chunk2.d.ts +0 -17
- package/dist/seed/beys/chunk2.js +0 -35857
- package/dist/seed/beys/chunk3.d.ts +0 -17
- package/dist/seed/beys/chunk3.js +0 -34476
- package/dist/seed/beys-seed-data.d.ts +0 -18
- package/dist/seed/beys-seed-data.js +0 -11
- package/dist/seed/bids-seed-data.d.ts +0 -2
- package/dist/seed/bids-seed-data.js +0 -206
- package/dist/seed/blog-posts-seed-data.d.ts +0 -6
- package/dist/seed/blog-posts-seed-data.js +0 -442
- package/dist/seed/carousel-slides-seed-data.d.ts +0 -2
- package/dist/seed/carousel-slides-seed-data.js +0 -411
- package/dist/seed/carousels-seed-data.d.ts +0 -2
- package/dist/seed/carousels-seed-data.js +0 -36
- package/dist/seed/cart-seed-data.d.ts +0 -2
- package/dist/seed/cart-seed-data.js +0 -241
- package/dist/seed/catalogue-seed-data.d.ts +0 -2
- package/dist/seed/catalogue-seed-data.js +0 -112
- package/dist/seed/categories-seed-data.d.ts +0 -3
- package/dist/seed/categories-seed-data.js +0 -816
- package/dist/seed/claimed-coupons-seed-data.d.ts +0 -2
- package/dist/seed/claimed-coupons-seed-data.js +0 -85
- package/dist/seed/coupon-usage-seed-data.d.ts +0 -9
- package/dist/seed/coupon-usage-seed-data.js +0 -55
- package/dist/seed/coupons-seed-data.d.ts +0 -2
- package/dist/seed/coupons-seed-data.js +0 -226
- package/dist/seed/defaults/categories.d.ts +0 -2
- package/dist/seed/defaults/categories.js +0 -12
- package/dist/seed/defaults/faqs.d.ts +0 -2
- package/dist/seed/defaults/faqs.js +0 -40
- package/dist/seed/events-seed-data.d.ts +0 -7
- package/dist/seed/events-seed-data.js +0 -482
- package/dist/seed/factories/address.factory.d.ts +0 -21
- package/dist/seed/factories/address.factory.js +0 -44
- package/dist/seed/factories/bid.factory.d.ts +0 -15
- package/dist/seed/factories/bid.factory.js +0 -33
- package/dist/seed/factories/blog-post.factory.d.ts +0 -15
- package/dist/seed/factories/blog-post.factory.js +0 -22
- package/dist/seed/factories/carousel.factory.d.ts +0 -11
- package/dist/seed/factories/carousel.factory.js +0 -17
- package/dist/seed/factories/cart.factory.d.ts +0 -25
- package/dist/seed/factories/cart.factory.js +0 -35
- package/dist/seed/factories/category.factory.d.ts +0 -11
- package/dist/seed/factories/category.factory.js +0 -16
- package/dist/seed/factories/coupon.factory.d.ts +0 -21
- package/dist/seed/factories/coupon.factory.js +0 -43
- package/dist/seed/factories/faq.factory.d.ts +0 -10
- package/dist/seed/factories/faq.factory.js +0 -15
- package/dist/seed/factories/notification.factory.d.ts +0 -18
- package/dist/seed/factories/notification.factory.js +0 -39
- package/dist/seed/factories/order.factory.d.ts +0 -20
- package/dist/seed/factories/order.factory.js +0 -20
- package/dist/seed/factories/payout.factory.d.ts +0 -21
- package/dist/seed/factories/payout.factory.js +0 -38
- package/dist/seed/factories/product.factory.d.ts +0 -27
- package/dist/seed/factories/product.factory.js +0 -80
- package/dist/seed/factories/review.factory.d.ts +0 -14
- package/dist/seed/factories/review.factory.js +0 -52
- package/dist/seed/factories/session.factory.d.ts +0 -15
- package/dist/seed/factories/session.factory.js +0 -31
- package/dist/seed/factories/store.factory.d.ts +0 -23
- package/dist/seed/factories/store.factory.js +0 -47
- package/dist/seed/factories/user.factory.d.ts +0 -19
- package/dist/seed/factories/user.factory.js +0 -56
- package/dist/seed/faq-seed-data.d.ts +0 -18
- package/dist/seed/faq-seed-data.js +0 -1956
- package/dist/seed/firestore-indexes.d.ts +0 -12
- package/dist/seed/firestore-indexes.js +0 -31
- package/dist/seed/grouped-listings-seed-data.d.ts +0 -2
- package/dist/seed/grouped-listings-seed-data.js +0 -283
- package/dist/seed/history-seed-data.d.ts +0 -12
- package/dist/seed/history-seed-data.js +0 -70
- package/dist/seed/homepage-sections-seed-data.d.ts +0 -2
- package/dist/seed/homepage-sections-seed-data.js +0 -1034
- package/dist/seed/index.d.ts +0 -100
- package/dist/seed/index.js +0 -115
- package/dist/seed/lottery-entries-seed-data.d.ts +0 -2
- package/dist/seed/lottery-entries-seed-data.js +0 -108
- package/dist/seed/manifest.d.ts +0 -16
- package/dist/seed/manifest.js +0 -235
- package/dist/seed/media-assets-seed-data.d.ts +0 -22
- package/dist/seed/media-assets-seed-data.js +0 -5593
- package/dist/seed/model-composition-seed-data.d.ts +0 -15
- package/dist/seed/model-composition-seed-data.js +0 -9032
- package/dist/seed/notifications-seed-data.d.ts +0 -2
- package/dist/seed/notifications-seed-data.js +0 -606
- package/dist/seed/offers-seed-data.d.ts +0 -2
- package/dist/seed/offers-seed-data.js +0 -398
- package/dist/seed/orders-seed-data.d.ts +0 -2
- package/dist/seed/orders-seed-data.js +0 -845
- package/dist/seed/part-glossary/chunk0.d.ts +0 -9
- package/dist/seed/part-glossary/chunk0.js +0 -35448
- package/dist/seed/part-glossary/chunk1.d.ts +0 -9
- package/dist/seed/part-glossary/chunk1.js +0 -40494
- package/dist/seed/part-glossary/chunk2.d.ts +0 -9
- package/dist/seed/part-glossary/chunk2.js +0 -51242
- package/dist/seed/part-glossary/chunk3.d.ts +0 -9
- package/dist/seed/part-glossary/chunk3.js +0 -53337
- package/dist/seed/part-glossary/chunk4.d.ts +0 -9
- package/dist/seed/part-glossary/chunk4.js +0 -51454
- package/dist/seed/part-glossary-seed-data.d.ts +0 -15
- package/dist/seed/part-glossary-seed-data.js +0 -25
- package/dist/seed/payouts-seed-data.d.ts +0 -2
- package/dist/seed/payouts-seed-data.js +0 -302
- package/dist/seed/product-features-seed-data.d.ts +0 -3
- package/dist/seed/product-features-seed-data.js +0 -366
- package/dist/seed/products-art-seed-data.d.ts +0 -2
- package/dist/seed/products-art-seed-data.js +0 -289
- package/dist/seed/products-auctions-seed-data.d.ts +0 -2
- package/dist/seed/products-auctions-seed-data.js +0 -475
- package/dist/seed/products-beyblade-x-seed-data.d.ts +0 -2
- package/dist/seed/products-beyblade-x-seed-data.js +0 -476
- package/dist/seed/products-catalogue/chunk0.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk0.js +0 -7262
- package/dist/seed/products-catalogue/chunk1.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk1.js +0 -7290
- package/dist/seed/products-catalogue/chunk10.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk10.js +0 -7290
- package/dist/seed/products-catalogue/chunk11.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk11.js +0 -7005
- package/dist/seed/products-catalogue/chunk12.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk12.js +0 -7002
- package/dist/seed/products-catalogue/chunk13.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk13.js +0 -7002
- package/dist/seed/products-catalogue/chunk14.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk14.js +0 -7002
- package/dist/seed/products-catalogue/chunk15.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk15.js +0 -7002
- package/dist/seed/products-catalogue/chunk16.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk16.js +0 -7002
- package/dist/seed/products-catalogue/chunk17.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk17.js +0 -7002
- package/dist/seed/products-catalogue/chunk18.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk18.js +0 -4398
- package/dist/seed/products-catalogue/chunk2.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk2.js +0 -7268
- package/dist/seed/products-catalogue/chunk3.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk3.js +0 -7264
- package/dist/seed/products-catalogue/chunk4.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk4.js +0 -7268
- package/dist/seed/products-catalogue/chunk5.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk5.js +0 -7258
- package/dist/seed/products-catalogue/chunk6.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk6.js +0 -7268
- package/dist/seed/products-catalogue/chunk7.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk7.js +0 -7311
- package/dist/seed/products-catalogue/chunk8.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk8.js +0 -7304
- package/dist/seed/products-catalogue/chunk9.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk9.js +0 -7309
- package/dist/seed/products-catalogue-seed-data.d.ts +0 -2
- package/dist/seed/products-catalogue-seed-data.js +0 -60
- package/dist/seed/products-classifieds-seed-data.d.ts +0 -7
- package/dist/seed/products-classifieds-seed-data.js +0 -435
- package/dist/seed/products-digital-codes-seed-data.d.ts +0 -7
- package/dist/seed/products-digital-codes-seed-data.js +0 -395
- package/dist/seed/products-live-items-seed-data.d.ts +0 -7
- package/dist/seed/products-live-items-seed-data.js +0 -269
- package/dist/seed/products-preorders-seed-data.d.ts +0 -2
- package/dist/seed/products-preorders-seed-data.js +0 -360
- package/dist/seed/products-prize-draws-seed-data.d.ts +0 -7
- package/dist/seed/products-prize-draws-seed-data.js +0 -427
- package/dist/seed/products-spares-seed-data.d.ts +0 -2
- package/dist/seed/products-spares-seed-data.js +0 -368
- package/dist/seed/products-standard-seed-data.d.ts +0 -2
- package/dist/seed/products-standard-seed-data.js +0 -632
- package/dist/seed/products-stickers-seed-data.d.ts +0 -2
- package/dist/seed/products-stickers-seed-data.js +0 -319
- package/dist/seed/reviews-seed-data.d.ts +0 -1
- package/dist/seed/reviews-seed-data.js +0 -185
- package/dist/seed/runner.d.ts +0 -2
- package/dist/seed/runner.js +0 -125
- package/dist/seed/scammers-seed-data.d.ts +0 -2
- package/dist/seed/scammers-seed-data.js +0 -235
- package/dist/seed/seed-market-config.d.ts +0 -48
- package/dist/seed/seed-market-config.js +0 -199
- package/dist/seed/seed-purpose.d.ts +0 -299
- package/dist/seed/seed-purpose.js +0 -440
- package/dist/seed/sessions-seed-data.d.ts +0 -3
- package/dist/seed/sessions-seed-data.js +0 -116
- package/dist/seed/shipments-seed-data.d.ts +0 -5
- package/dist/seed/shipments-seed-data.js +0 -185
- package/dist/seed/site-settings-seed-data.d.ts +0 -2
- package/dist/seed/site-settings-seed-data.js +0 -1069
- package/dist/seed/store-addresses-seed-data.d.ts +0 -18
- package/dist/seed/store-addresses-seed-data.js +0 -71
- package/dist/seed/store-extensions-seed-data.d.ts +0 -11
- package/dist/seed/store-extensions-seed-data.js +0 -292
- package/dist/seed/stores-seed-data.d.ts +0 -6
- package/dist/seed/stores-seed-data.js +0 -242
- package/dist/seed/support-tickets-seed-data.d.ts +0 -16
- package/dist/seed/support-tickets-seed-data.js +0 -239
- package/dist/seed/tax-codes-seed-data.d.ts +0 -34
- package/dist/seed/tax-codes-seed-data.js +0 -100
- package/dist/seed/test-data-ttl.d.ts +0 -29
- package/dist/seed/test-data-ttl.js +0 -31
- package/dist/seed/test-utils.d.ts +0 -49
- package/dist/seed/test-utils.js +0 -110
- package/dist/seed/types.d.ts +0 -89
- package/dist/seed/types.js +0 -15
- package/dist/seed/users-seed-data.d.ts +0 -2
- package/dist/seed/users-seed-data.js +0 -597
- package/dist/seed/wishlists-seed-data.d.ts +0 -12
- package/dist/seed/wishlists-seed-data.js +0 -54
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* WHY: Authored six-part procedures for Part Two's buyer-facing surfaces —
|
|
3
|
-
* spares, made-to-order, and self-assembled group selections with rules
|
|
4
|
-
* and a discount.
|
|
5
|
-
* WHAT: 6 case(s), keyed by full checklist id.
|
|
6
|
-
*
|
|
7
|
-
* 🛑 EVERY CASE IS AN EXPLICIT BEFORE -> AFTER. A spares page or a group picker
|
|
8
|
-
* returning 200 with plausible cards is not evidence any of this works — the
|
|
9
|
-
* exclusion from the general catalogue, the stock bypass, and the discount
|
|
10
|
-
* arithmetic are all silent-failure-shaped.
|
|
11
|
-
*
|
|
12
|
-
* @tag domain:tester
|
|
13
|
-
* @tag layer:seed
|
|
14
|
-
* @tag pattern:none
|
|
15
|
-
* @tag access:server-only
|
|
16
|
-
* @tag consumers:seed-data/authored/index.ts
|
|
17
|
-
* @tag sideEffects:none
|
|
18
|
-
*/
|
|
19
|
-
export const authored = {
|
|
20
|
-
"checklist-buying-spares-and-groups-spares-not-in-general-catalogue": {
|
|
21
|
-
roles: ["buyer"],
|
|
22
|
-
startPage: "/products",
|
|
23
|
-
steps: [
|
|
24
|
-
"Search /products for a known spare's title (e.g. \"Cross Dranzer\" or \"Galeon Bit Chip\").",
|
|
25
|
-
"Note whether it appears in the results.",
|
|
26
|
-
"Navigate to /spares and search for the same title.",
|
|
27
|
-
],
|
|
28
|
-
expectedBehaviour: "`spares` sets `inGeneralCatalogue: false`, so `listPublicProducts` on /products never includes it. The same row is reachable only through /spares, which spans exactly that one listing type.",
|
|
29
|
-
expectedUiState: "The spare's title is ABSENT from the /products search results. The same title IS present in the /spares search results, with its own card and price.",
|
|
30
|
-
endResult: "BEFORE spares existed, there was no tenth listing type at all. AFTER: a spare is reachable from exactly one place, never two. If it appears on both pages, the catalogue-exclusion flag broke. If it appears on neither, the /spares page or its nav wiring broke.",
|
|
31
|
-
},
|
|
32
|
-
"checklist-buying-spares-and-groups-spares-nav-entry-present": {
|
|
33
|
-
roles: ["buyer"],
|
|
34
|
-
startPage: "/",
|
|
35
|
-
steps: [
|
|
36
|
-
"Open the main nav's \"Products\" dropdown (hover on desktop, tap the caret on mobile).",
|
|
37
|
-
"Look for a \"Spares\" entry in the list of children.",
|
|
38
|
-
"Click it.",
|
|
39
|
-
],
|
|
40
|
-
expectedBehaviour: "Every listing type excluded from the general catalogue must be linked from MAIN_NAV_ITEMS or it is reachable from nowhere. Spares is one of those types, so its nav child is not decoration — it is the only discovery path.",
|
|
41
|
-
expectedUiState: "The dropdown shows a \"Spares\" row with a puzzle-piece icon and a one-line description. Clicking it navigates to /spares and the page renders a product grid.",
|
|
42
|
-
endResult: "BEFORE: no entry existed because the type did not exist. AFTER: the entry is present, and clicking it lands on a real page, not a 404 or a redirect back to /products.",
|
|
43
|
-
},
|
|
44
|
-
"checklist-buying-spares-and-groups-made-to-order-buyable-at-zero-stock": {
|
|
45
|
-
roles: ["buyer"],
|
|
46
|
-
startPage: "/products/sticker-beyblade-custom-print-on-demand",
|
|
47
|
-
steps: [
|
|
48
|
-
"Open the seeded \"Custom Beyblade Sticker Sheet — Print on Demand\" listing.",
|
|
49
|
-
"Read the stock/availability line near the price.",
|
|
50
|
-
"Click Add to Cart, then proceed through checkout with a test payment method.",
|
|
51
|
-
],
|
|
52
|
-
expectedBehaviour: "This listing has `madeToOrder: true` and `availableQuantity: 0`. `baseAvailable()` returns true unconditionally for a made-to-order row before either quantity check runs, so stock must gate nothing on it — not the PDP badge, not Add to Cart, not checkout.",
|
|
53
|
-
expectedUiState: "The page shows \"Made to order — printed when you order, so it never runs out.\" It must NOT show \"Out of Stock\" or any stock count. Add to Cart is enabled and checkout completes normally.",
|
|
54
|
-
endResult: "BEFORE the `madeToOrder` flag existed, a listing at zero stock was always sold out — there was no way to sell a print-on-demand item without lying about a fake stock number. AFTER: zero stock and buyable coexist correctly for this one flag.",
|
|
55
|
-
},
|
|
56
|
-
"checklist-buying-spares-and-groups-group-picker-shows-rules-before-choosing": {
|
|
57
|
-
roles: ["buyer"],
|
|
58
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
59
|
-
steps: [
|
|
60
|
-
"Open any member of the seeded \"Burst & X Attackers You Might Like\" group (e.g. the Valkyrie listing).",
|
|
61
|
-
"Scroll to the group/\"Pick what you want\" section and open the full picker (it may be behind a \"Show all\" link once 5+ members exist).",
|
|
62
|
-
"Read the picker before selecting anything.",
|
|
63
|
-
],
|
|
64
|
-
expectedBehaviour: "The group carries `groupMinMembers: 2`, `groupMaxMembers: 3`, `groupMaxUnitsPerMember: 2`, `groupDiscountPercent: 10`. `describeGroupRules()` must render these as plain text near the top of the picker — stated BEFORE the buyer commits to a selection, not only surfaced as a refusal after submitting.",
|
|
65
|
-
expectedUiState: "Text reading something like \"Pick at least 2 · Pick at most 3 · Max 2 of each · 10% off the selection\" is visible above the member rows, before any quantity has been changed from zero.",
|
|
66
|
-
endResult: "BEFORE: a group had no rules at all, so there was nothing to state. AFTER: the rules are visible up front. If the picker shows nothing until a violation occurs, the rule-statement UI is missing even though enforcement might still work — that is a real but easy-to-miss partial failure.",
|
|
67
|
-
},
|
|
68
|
-
"checklist-buying-spares-and-groups-group-picker-blocks-and-explains-invalid-selection": {
|
|
69
|
-
roles: ["buyer"],
|
|
70
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
71
|
-
steps: [
|
|
72
|
-
"On the same group picker, set exactly ONE member's quantity to 1 and leave the rest at 0.",
|
|
73
|
-
"Observe the Add button and any message shown.",
|
|
74
|
-
"Change the selection to 3 units of a single member instead (0 of the others).",
|
|
75
|
-
"Observe the Add button and message again.",
|
|
76
|
-
"Correct the selection to 2 different members at 1 unit each.",
|
|
77
|
-
],
|
|
78
|
-
expectedBehaviour: "`checkGroupRules()` runs client-side on every change. One item selected violates `groupMinMembers: 2` (\"Pick at least 2 different items\"). Three units of one item violates `groupMaxUnitsPerMember: 2` (\"At most 2 of … per order\"). Both must disable Add; neither should require a page reload to re-enable it once fixed.",
|
|
79
|
-
expectedUiState: "Step 1: Add is disabled, a warning box names the minimum-items rule. Step 2 (after changing selection): Add is still disabled, a DIFFERENT warning naming the per-item cap appears — not the same message as step 1. Step 3: both warnings disappear and Add becomes enabled, with no reload.",
|
|
80
|
-
endResult: "BEFORE: a group selection had no rules to violate. AFTER: an invalid selection is caught before the buyer wastes a click on a server round-trip, and the message names the SPECIFIC rule broken rather than a generic \"invalid selection\".",
|
|
81
|
-
},
|
|
82
|
-
"checklist-buying-spares-and-groups-group-discount-applied-and-shown": {
|
|
83
|
-
roles: ["buyer"],
|
|
84
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
85
|
-
steps: [
|
|
86
|
-
"On the group picker, note the individual prices of two different members.",
|
|
87
|
-
"Select 1 of each of those two members.",
|
|
88
|
-
"Read the total shown in the picker.",
|
|
89
|
-
"Add to cart and open the cart page; read the line total there.",
|
|
90
|
-
"Proceed to checkout and read the order review total for that line.",
|
|
91
|
-
],
|
|
92
|
-
expectedBehaviour: "`groupDiscountPercent: 10` is applied inside `deriveLinePrice` — the single writer of a multi-member line's price — so the discount must be visible and IDENTICAL in all three places: the picker's live total, the cart line, and the checkout review. 10% below the sum of the two members' individual prices, rounded to the paisa.",
|
|
93
|
-
expectedUiState: "All three totals show the same discounted figure (sum of the two prices × 0.9, rounded to 2 decimals). The picker additionally shows the pre-discount sum struck through or labelled, so the discount is legible rather than just a smaller number.",
|
|
94
|
-
endResult: "BEFORE: a self-assembled group had no price relationship to its members beyond a plain sum. AFTER: the discount is one number, computed once, read identically everywhere — if any of the three disagrees with the other two, the cart total and the invoice have diverged, which is the exact failure Root Cause #75 describes.",
|
|
95
|
-
},
|
|
96
|
-
};
|
|
@@ -1,283 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* WHY: Authored six-part procedures for the buying/user-dashboard-extras page.
|
|
3
|
-
* WHAT: 15 case(s), keyed by full checklist id.
|
|
4
|
-
*
|
|
5
|
-
* Written by hand, case by case, against the label each one states. There is no
|
|
6
|
-
* generator: the authoring scripts were deleted once it was clear they were
|
|
7
|
-
* scaffolding around work that is simply writing.
|
|
8
|
-
*
|
|
9
|
-
* 🛑 SIX CASES HERE ARE ABOUT THE ORDER TIMELINE, and they turn on two rules that
|
|
10
|
-
* are easy to get backwards.
|
|
11
|
-
*
|
|
12
|
-
* A step with no recorded date renders an em-dash. Not the current time, and not
|
|
13
|
-
* a proxy field — the record's last-updated value means "last write of any kind"
|
|
14
|
-
* and an expiry date is a deadline, not an event. A fabricated timestamp cannot be
|
|
15
|
-
* told from a real one afterwards, which makes it worse than a missing one.
|
|
16
|
-
*
|
|
17
|
-
* And money churn is deliberately NOT in the timeline. Only the final coupon and
|
|
18
|
-
* add-on state is kept, on the order itself. A coupon that lapsed before the order
|
|
19
|
-
* existed is not that order's history, and pricing noise would exhaust the
|
|
20
|
-
* fifty-entry cap within days and bury the handful of transitions anyone reads.
|
|
21
|
-
*
|
|
22
|
-
* @tag domain:tester
|
|
23
|
-
* @tag layer:seed
|
|
24
|
-
* @tag pattern:none
|
|
25
|
-
* @tag access:server-only
|
|
26
|
-
* @tag consumers:seed-data/authored/index.ts
|
|
27
|
-
* @tag sideEffects:none
|
|
28
|
-
*/
|
|
29
|
-
export const authored = {
|
|
30
|
-
"checklist-buying-user-dashboard-extras-addresses-crud": {
|
|
31
|
-
roles: ["buyer"],
|
|
32
|
-
startPage: "/user/addresses",
|
|
33
|
-
steps: [
|
|
34
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
35
|
-
"Open /user/addresses and read the existing addresses.",
|
|
36
|
-
"Create one: 'QA Address dashboard-extras', '15 Test Lane', Indore, Madhya Pradesh, 452010, landmark 'Opposite the arena'.",
|
|
37
|
-
"Save, RELOAD, and read every field including the landmark.",
|
|
38
|
-
"Edit ONLY the street to '16 Test Lane', save, RELOAD, and read every field again.",
|
|
39
|
-
"Set it as the default, save, RELOAD, and check exactly one address is default.",
|
|
40
|
-
"Delete it and RELOAD to confirm.",
|
|
41
|
-
],
|
|
42
|
-
inputs: {
|
|
43
|
-
name: "QA Address dashboard-extras",
|
|
44
|
-
streetBefore: "15 Test Lane",
|
|
45
|
-
streetAfter: "16 Test Lane",
|
|
46
|
-
landmark: "Opposite the arena",
|
|
47
|
-
},
|
|
48
|
-
expectedBehaviour: "Create, edit, default-set and delete all persist, and an edit to one field leaves the rest alone. Setting a default must unset the previous one — two defaults is a state nothing downstream can resolve. The landmark is the field to watch: a form that cannot name it sends undefined, and undefined overwrites.",
|
|
49
|
-
expectedUiState: "After each reload the address holds exactly what was typed, landmark included, and after the street edit the landmark is still there. Exactly one address is marked default.",
|
|
50
|
-
expectedData: { defaultAddressCount: 1 },
|
|
51
|
-
endResult: "The address is deleted by the final step.",
|
|
52
|
-
},
|
|
53
|
-
"checklist-buying-user-dashboard-extras-catalogue-crud": {
|
|
54
|
-
roles: ["buyer"],
|
|
55
|
-
startPage: "/user/catalogue",
|
|
56
|
-
steps: [
|
|
57
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
58
|
-
"Open the personal catalogue surface and read the existing items.",
|
|
59
|
-
"Create one titled 'QA Catalogue dashboard-extras' with a description and public/test-media/sample-image.png attached.",
|
|
60
|
-
"Save, RELOAD, and read every field including the photo.",
|
|
61
|
-
"Set it to public, save, and open /profile/user-yugi-muto in a private window.",
|
|
62
|
-
"Find it under the Catalogue tab and open its own public page.",
|
|
63
|
-
"Set it back to private and check it disappears from the public profile.",
|
|
64
|
-
"Delete the item.",
|
|
65
|
-
],
|
|
66
|
-
inputs: {
|
|
67
|
-
title: "QA Catalogue dashboard-extras",
|
|
68
|
-
image: "public/test-media/sample-image.png",
|
|
69
|
-
},
|
|
70
|
-
expectedBehaviour: "A personal catalogue item is a private photo record of something the buyer owns, optionally published. It is NOT a listing type — it lives in its own feature with its own id prefix, and its public visibility is a per-item choice rather than a consequence of creating it.",
|
|
71
|
-
expectedUiState: "After the reload every field holds and the photo renders. Set public, the item appears on the owner's public profile Catalogue tab and has its own page. Set private, it disappears from the public profile.",
|
|
72
|
-
endResult: "The item is deleted by the final step.",
|
|
73
|
-
},
|
|
74
|
-
"checklist-buying-user-dashboard-extras-settings-page": {
|
|
75
|
-
roles: ["buyer"],
|
|
76
|
-
startPage: "/user/settings",
|
|
77
|
-
steps: [
|
|
78
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
79
|
-
"Open /user/settings and read every tab in the strip.",
|
|
80
|
-
"Open each tab and check it renders its fields rather than an empty panel.",
|
|
81
|
-
"Note one distinctive value from each tab.",
|
|
82
|
-
"Change one field on one tab and save.",
|
|
83
|
-
"RELOAD and walk every tab, comparing each noted value.",
|
|
84
|
-
"Restore the changed field.",
|
|
85
|
-
],
|
|
86
|
-
expectedBehaviour: "Every tab renders, and saving one tab leaves the others untouched. A form that submits its whole object from state populated only by the tabs the user opened blanks the rest — and the save reports success either way, so only the reload shows it.",
|
|
87
|
-
expectedUiState: "All tabs render fields. After the reload only the edited field differs and every other noted value is unchanged. A tab that opens empty, or a value silently reset, are both findings.",
|
|
88
|
-
expectedData: { unintendedFieldChanges: 0 },
|
|
89
|
-
endResult: "The changed field is restored.",
|
|
90
|
-
},
|
|
91
|
-
"checklist-buying-user-dashboard-extras-my-prize-draws": {
|
|
92
|
-
roles: ["buyer"],
|
|
93
|
-
startPage: "/user/prize-draws",
|
|
94
|
-
steps: [
|
|
95
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
96
|
-
"Open the buyer's prize-draws surface and read every row.",
|
|
97
|
-
"Check each names the draw, the number of entries bought and the outcome.",
|
|
98
|
-
"Find an entry in a REVEALED draw and read the prize it names.",
|
|
99
|
-
"Find an entry in a draw that has not yet been drawn and read what it shows.",
|
|
100
|
-
"Open one entry and check it reaches the draw or the order behind it.",
|
|
101
|
-
"Compare a revealed prize against the same prize on the order page.",
|
|
102
|
-
],
|
|
103
|
-
expectedBehaviour: "The list shows what was entered and what came of it. A pending draw and a revealed one are different states and must read differently — a pending entry shown as though it lost, or a revealed one shown as pending, are both wrong and neither errors.",
|
|
104
|
-
expectedUiState: "Rows name the draw, the entry count and either the assigned prize or a pending state. The prize matches what the order page shows. Rows open something rather than being inert.",
|
|
105
|
-
endResult: "Read-only; nothing persists.",
|
|
106
|
-
},
|
|
107
|
-
"checklist-buying-user-dashboard-extras-my-digital-codes": {
|
|
108
|
-
roles: ["buyer"],
|
|
109
|
-
startPage: "/user/digital-codes",
|
|
110
|
-
steps: [
|
|
111
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
112
|
-
"Open the buyer's digital-codes surface and read every row.",
|
|
113
|
-
"Check each names the listing it came from and shows its code or its delivery state.",
|
|
114
|
-
"Find an auto-claim purchase and read whether its code is present.",
|
|
115
|
-
"Find a manual-delivery purchase and read what it shows instead.",
|
|
116
|
-
"Use any copy control and paste the result somewhere to compare it against what is displayed.",
|
|
117
|
-
"Reload and check the codes are still there.",
|
|
118
|
-
],
|
|
119
|
-
expectedBehaviour: "An auto-claim purchase shows its delivered code immediately; a manual-delivery one shows a pending state until the seller sends it. Any copy control must place exactly the displayed string on the clipboard — a truncated or differently-cased copy produces a redemption failure the buyer cannot explain.",
|
|
120
|
-
expectedUiState: "Auto-claim rows show a real code that survives a reload. Manual rows show a pending state rather than an empty cell. The copied value matches the displayed one character for character.",
|
|
121
|
-
endResult: "Read-only; nothing persists.",
|
|
122
|
-
},
|
|
123
|
-
"checklist-buying-user-dashboard-extras-my-offers": {
|
|
124
|
-
roles: ["buyer"],
|
|
125
|
-
startPage: "/user/offers",
|
|
126
|
-
steps: [
|
|
127
|
-
"Sign in as vivaan.kapoor@gmail.com / TempPass123!.",
|
|
128
|
-
"Open /user/offers and read every row — product, offered amount, listed price, status and round.",
|
|
129
|
-
"Read every status filter offered and select each, noting any that returns nothing.",
|
|
130
|
-
"For each empty filter, check the unfiltered list for rows of that status.",
|
|
131
|
-
"Find an offer that was countered and read how its round is shown.",
|
|
132
|
-
"Open one offer and read its detail.",
|
|
133
|
-
"Check at least one row action is a view rather than only a mutation.",
|
|
134
|
-
],
|
|
135
|
-
expectedBehaviour: "The list shows the negotiation state with enough context to act — the offered amount against the listed price is the whole point. A counter creates a NEW offer document per round, linked forwards and backwards and denormalised to the chain's root, so a row can say which round it is without extra reads.",
|
|
136
|
-
expectedUiState: "Rows show product, amounts, status and round. Every status filter returns its own rows or is empty with none unfiltered either — the real statuses include countered and withdrawn, and a chip reading 'Rejected' against a stored 'Declined' matches nothing forever. A view affordance exists.",
|
|
137
|
-
endResult: "Read-only; nothing persists beyond the URL.",
|
|
138
|
-
},
|
|
139
|
-
"checklist-buying-user-dashboard-extras-order-timeline-shows-real-events": {
|
|
140
|
-
roles: ["buyer"],
|
|
141
|
-
startPage: "/user/orders",
|
|
142
|
-
steps: [
|
|
143
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
144
|
-
"Open /user/orders and open an order that has moved through several statuses.",
|
|
145
|
-
"Open its timeline and read every step in order.",
|
|
146
|
-
"Read the date and time against each step.",
|
|
147
|
-
"Check the steps the order has NOT reached are shown as upcoming rather than complete.",
|
|
148
|
-
"Check any step with no recorded date shows an em-dash rather than a date.",
|
|
149
|
-
"Compare one step's date against when that transition actually happened.",
|
|
150
|
-
],
|
|
151
|
-
expectedBehaviour: "The timeline is built from the order's own recorded per-status dates. A step with no date renders an em-dash — never the current time, and never a proxy such as the record's last-updated value, which means 'last write of any kind' rather than when the step happened.",
|
|
152
|
-
expectedUiState: "Reached steps carry real dates, unreached steps read as upcoming, and any missing date is an em-dash. Every step carrying a plausible date on a recently-placed order is the fabrication failure, and it is indistinguishable from correct data afterwards.",
|
|
153
|
-
endResult: "Read-only; nothing persists.",
|
|
154
|
-
},
|
|
155
|
-
"checklist-buying-user-dashboard-extras-order-partial-refund-in-timeline": {
|
|
156
|
-
roles: ["buyer"],
|
|
157
|
-
startPage: "/user/orders",
|
|
158
|
-
steps: [
|
|
159
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
160
|
-
"Open /user/orders and find an order that received a partial refund.",
|
|
161
|
-
"Open its timeline and look for an entry describing the refund.",
|
|
162
|
-
"Read whether the entry states the amount refunded.",
|
|
163
|
-
"Check the entry is not phrased as an array or a count changing.",
|
|
164
|
-
"Compare the refunded amount against the order's own refund total.",
|
|
165
|
-
],
|
|
166
|
-
expectedBehaviour: "A partial refund changes no tracked status field, so a plain field-diff would leave no trace of it at all — the entry is contributed explicitly. Diffing the refunds collection instead was rejected because it renders as 'an array of one became an array of two', which is true and useless.",
|
|
167
|
-
expectedUiState: "The timeline holds an entry naming the refund and its amount, in readable language. An entry describing a list growing, or no entry at all for a refund that demonstrably happened, are both failures.",
|
|
168
|
-
endResult: "Read-only. If no partially-refunded order exists, answer null rather than creating one.",
|
|
169
|
-
},
|
|
170
|
-
"checklist-buying-user-dashboard-extras-order-auction-won-vs-bought-out": {
|
|
171
|
-
roles: ["buyer"],
|
|
172
|
-
startPage: "/user/orders",
|
|
173
|
-
steps: [
|
|
174
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
175
|
-
"Open /user/orders and switch to the Auction wins tab.",
|
|
176
|
-
"Open an order that came from a WON auction and read what it says about how it was won.",
|
|
177
|
-
"Read whether it shows the winning bid and the number of competing bids.",
|
|
178
|
-
"Open an order that came from a BUY-NOW purchase on an auction and read the same.",
|
|
179
|
-
"Compare the two — check they are described differently.",
|
|
180
|
-
"Check the buy-now order's bid count is not assumed to be zero.",
|
|
181
|
-
],
|
|
182
|
-
expectedBehaviour: "A settled win and a buyout are both auction orders but different provenance, and the order records which. A buyout is a REAL bid: it is placed as a bid, leaves the auction live, and the count it records is the competitive bids it beat — so a buyout order asserting zero bids by definition is wrong.",
|
|
183
|
-
expectedUiState: "The won order names the winning bid and the competing bid count. The buy-now order is described as a buyout rather than as a win, and its bid count reflects the bids that existed rather than being fixed at zero.",
|
|
184
|
-
endResult: "Read-only; nothing persists.",
|
|
185
|
-
},
|
|
186
|
-
"checklist-buying-user-dashboard-extras-order-offer-shows-what-was-saved": {
|
|
187
|
-
roles: ["buyer"],
|
|
188
|
-
startPage: "/user/orders",
|
|
189
|
-
steps: [
|
|
190
|
-
"Sign in as vivaan.kapoor@gmail.com / TempPass123!.",
|
|
191
|
-
"Open /user/orders and switch to the Offer wins tab.",
|
|
192
|
-
"Open an order that came from an accepted offer.",
|
|
193
|
-
"Read the price charged and the listing's original price.",
|
|
194
|
-
"Check the order states what was saved rather than only the amount paid.",
|
|
195
|
-
"Compare the charged price against the offer's agreed amount.",
|
|
196
|
-
],
|
|
197
|
-
expectedBehaviour: "An offer order records the agreed price and the listed price it was negotiated down from. The charged figure must be the AGREED one — the rule that decides a line's price knows about locked prices, and three hand-written copies of that rule elsewhere omitted that branch, so the gateway captured the list price while the cart showed the agreed one.",
|
|
198
|
-
expectedUiState: "The order shows the agreed price as charged, the original listed price, and the difference. A charged amount equal to the listing price is the copied-rule failure, and the two figures never appear on the same screen anywhere else.",
|
|
199
|
-
endResult: "Read-only; nothing persists.",
|
|
200
|
-
},
|
|
201
|
-
"checklist-buying-user-dashboard-extras-order-history-no-money-churn": {
|
|
202
|
-
roles: ["buyer"],
|
|
203
|
-
startPage: "/user/orders",
|
|
204
|
-
steps: [
|
|
205
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
206
|
-
"Open an order that had coupons applied and add-ons selected.",
|
|
207
|
-
"Open its timeline and read every entry.",
|
|
208
|
-
"Look for entries describing coupons being applied or removed, or add-on fees changing.",
|
|
209
|
-
"Count the entries in total.",
|
|
210
|
-
"Read the order's own summary and check the final coupon and add-on state is shown there instead.",
|
|
211
|
-
],
|
|
212
|
-
expectedBehaviour: "Pricing churn is deliberately absent from the timeline. Only the FINAL coupon and add-on state is kept, and it lives on the order itself — a coupon that lapsed before the order existed is not that order's history, and pricing noise would exhaust the fifty-entry cap within days and bury the handful of transitions anyone actually reads.",
|
|
213
|
-
expectedUiState: "The timeline holds status transitions and refunds, and no entries about coupons being applied or removed. The order's summary shows the final applied discounts and add-ons. A timeline full of pricing entries is the failure.",
|
|
214
|
-
expectedData: { pricingEntriesInTimeline: 0 },
|
|
215
|
-
endResult: "Read-only; nothing persists.",
|
|
216
|
-
},
|
|
217
|
-
"checklist-buying-user-dashboard-extras-order-history-carries-no-personal-data": {
|
|
218
|
-
roles: ["buyer"],
|
|
219
|
-
startPage: "/user/orders",
|
|
220
|
-
steps: [
|
|
221
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
222
|
-
"Open an order and open its timeline.",
|
|
223
|
-
"Read every entry for a name, an email address or a phone number.",
|
|
224
|
-
"Read how the actor of each change is identified.",
|
|
225
|
-
"Open the browser's View Source and search the page for an email address.",
|
|
226
|
-
"Check any actor shown is an identifier rather than a person's name.",
|
|
227
|
-
],
|
|
228
|
-
expectedBehaviour: "History entries carry no personal data, and this is enforced where the entry is built rather than by convention. The encryption pass is a flat top-level loop that never descends into arrays — so a name or email nested inside a history entry would be stored in PLAINTEXT and never decrypted on the way out, which is why the primitive scrubs those fields itself.",
|
|
229
|
-
expectedUiState: "No entry contains a name, email or phone. Actors are identifiers. Neither the rendered timeline nor the page source contains an email address.",
|
|
230
|
-
expectedData: { piiInTimeline: 0 },
|
|
231
|
-
endResult: "Read-only. A convention saying 'do not put PII in history' is one forgetful writer away from a plaintext leak, which is why this is checked rather than assumed.",
|
|
232
|
-
},
|
|
233
|
-
"checklist-buying-user-dashboard-extras-my-returns": {
|
|
234
|
-
roles: ["buyer"],
|
|
235
|
-
startPage: "/user/returns",
|
|
236
|
-
steps: [
|
|
237
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
238
|
-
"Open the buyer's returns surface and read every row.",
|
|
239
|
-
"Check each names the item, the order and the reason given.",
|
|
240
|
-
"Read every status filter offered and select each.",
|
|
241
|
-
"Open one return and read the full reason and any admin response.",
|
|
242
|
-
"Check the returned order also appears under the ACTIVE scope on /user/orders.",
|
|
243
|
-
],
|
|
244
|
-
expectedBehaviour: "Returns are a view over orders rather than a separate entity — a return is an order status. That is why a return-requested order sits under Active on the orders list: it is an open item awaiting action, and filing it under Closed removes it from the list the buyer checks.",
|
|
245
|
-
expectedUiState: "Rows name the item, the order and the reason, and open to the full text. The same order appears under Active on /user/orders. A return-requested order under Closed is the finding.",
|
|
246
|
-
endResult: "Read-only; nothing persists beyond the URL.",
|
|
247
|
-
},
|
|
248
|
-
"checklist-buying-user-dashboard-extras-my-reviews": {
|
|
249
|
-
roles: ["buyer"],
|
|
250
|
-
startPage: "/user/reviews",
|
|
251
|
-
steps: [
|
|
252
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
253
|
-
"Open the buyer's reviews surface and read every row.",
|
|
254
|
-
"Check each names the product, the rating and the date.",
|
|
255
|
-
"Check any review photos render rather than showing placeholder icons.",
|
|
256
|
-
"Open one and check it can be edited.",
|
|
257
|
-
"Read whether any seller response is shown alongside.",
|
|
258
|
-
"Click a row and confirm it reaches the product or the review.",
|
|
259
|
-
],
|
|
260
|
-
expectedBehaviour: "The buyer's own reviews are listed with their photos and any seller response. Review images are plain URL strings — a renderer expecting objects reads undefined off every one and falls back to a placeholder, which makes all the photos vanish at once rather than one being broken.",
|
|
261
|
-
expectedUiState: "Rows name the product, rating and date, photos render, and any seller response is visible. Rows reach the product or the review. Placeholder icons in place of every photo is the string-versus-object failure.",
|
|
262
|
-
expectedData: { placeholderPhotos: 0 },
|
|
263
|
-
endResult: "Read-only; nothing persists.",
|
|
264
|
-
},
|
|
265
|
-
"checklist-buying-user-dashboard-extras-user-personal-listings-search-sort": {
|
|
266
|
-
roles: ["buyer"],
|
|
267
|
-
startPage: "/user/digital-codes",
|
|
268
|
-
steps: [
|
|
269
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
270
|
-
"Open the personal catalogue surface and note the unfiltered item count.",
|
|
271
|
-
"Type a word from one item's title into the search box and read the results.",
|
|
272
|
-
"Clear it, type zzzznope, and read the count.",
|
|
273
|
-
"Read the sort dropdown's options and its default selection.",
|
|
274
|
-
"Check the default is one of the offered options.",
|
|
275
|
-
"Select each other option and check the order changes each time.",
|
|
276
|
-
],
|
|
277
|
-
inputs: { nonsenseQuery: "zzzznope" },
|
|
278
|
-
expectedBehaviour: "Search narrows and every sort option reorders. The nonsense query is the control that separates a filtering search from a decorative one — a real term returns plausible rows either way. A default sort that is not among the offered options opens the dropdown blank, which this listing family has done before.",
|
|
279
|
-
expectedUiState: "The real term narrows the list; 'zzzznope' returns zero and an empty state rather than everything. The sort dropdown opens with one of its own options selected, and each option visibly reorders the items.",
|
|
280
|
-
expectedData: { nonsenseResultCount: 0, inertSortOptions: 0 },
|
|
281
|
-
endResult: "Read-only; nothing persists beyond the URL.",
|
|
282
|
-
},
|
|
283
|
-
};
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* WHY: Authored six-part procedures for the buying/user-dashboard-navigation page.
|
|
3
|
-
* WHAT: 9 case(s), keyed by full checklist id.
|
|
4
|
-
*
|
|
5
|
-
* Written by hand, case by case, against the label each one states. There is no
|
|
6
|
-
* generator: the authoring scripts were deleted once it was clear they were
|
|
7
|
-
* scaffolding around work that is simply writing.
|
|
8
|
-
*
|
|
9
|
-
* 🛑 THE /user SUBTREE IS DIFFERENT FROM /admin AND /store. Its layout reads no
|
|
10
|
-
* session server-side — the guard is a client component — so these routes are
|
|
11
|
-
* PRERENDERED to a signed-out shell and the session hydrates in the browser. That
|
|
12
|
-
* shell is the same bytes for every visitor, which is what makes it safe, and it
|
|
13
|
-
* is also why the signed-out case watches for a flash rather than expecting an
|
|
14
|
-
* immediate server redirect.
|
|
15
|
-
*
|
|
16
|
-
* @tag domain:tester
|
|
17
|
-
* @tag layer:seed
|
|
18
|
-
* @tag pattern:none
|
|
19
|
-
* @tag access:server-only
|
|
20
|
-
* @tag consumers:seed-data/authored/index.ts
|
|
21
|
-
* @tag sideEffects:none
|
|
22
|
-
*/
|
|
23
|
-
export const authored = {
|
|
24
|
-
"checklist-buying-user-dashboard-navigation-sidebar-all-links-work": {
|
|
25
|
-
roles: ["buyer"],
|
|
26
|
-
startPage: "/user",
|
|
27
|
-
steps: [
|
|
28
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
29
|
-
"Open /user and expand every group in the sidebar.",
|
|
30
|
-
"Click each link in turn, reading where it lands and going back each time.",
|
|
31
|
-
"Write down any link that 404s, renders an empty shell, or lands somewhere unrelated.",
|
|
32
|
-
"Count the links against the pages that exist under /user.",
|
|
33
|
-
"Read whether a Testing group is present for this non-tester account.",
|
|
34
|
-
],
|
|
35
|
-
expectedBehaviour: "Every sidebar link opens a real page with content. The inverse — a built page with no sidebar entry — is the same defect from the other side, and it is not mechanically blocked: around seventeen pages across the portals were once reachable only by typing their exact URL. The Testing group is injected at runtime for tester accounts and must be absent entirely for others rather than rendering as an empty heading.",
|
|
36
|
-
expectedUiState: "Every link resolves to a page with content, not a 404 and not chrome with an empty body. No Testing group appears for this account. Note any page you know exists that has no link — that half has to be spotted by eye.",
|
|
37
|
-
expectedData: { brokenLinks: 0 },
|
|
38
|
-
endResult: "Read-only; nothing persists.",
|
|
39
|
-
},
|
|
40
|
-
"checklist-buying-user-dashboard-navigation-sidebar-active-highlight": {
|
|
41
|
-
roles: ["buyer"],
|
|
42
|
-
startPage: "/user",
|
|
43
|
-
steps: [
|
|
44
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
45
|
-
"Open /user and note which sidebar entry is highlighted.",
|
|
46
|
-
"Navigate to /user/orders and read which entry is highlighted.",
|
|
47
|
-
"Open a specific order's detail and read the highlight again.",
|
|
48
|
-
"Navigate to /user/addresses and read it again.",
|
|
49
|
-
"Press the browser back button and read the highlight.",
|
|
50
|
-
],
|
|
51
|
-
expectedBehaviour: "The highlight is derived from the current path, so it follows nested routes where the sidebar has no entry of its own — an order detail still highlights Orders — and it follows a back navigation, which a highlight set from the click cannot.",
|
|
52
|
-
expectedUiState: "Exactly one entry is highlighted at a time and it matches the current section, including on the order detail. After the back navigation it matches wherever the browser landed.",
|
|
53
|
-
endResult: "Read-only; nothing persists.",
|
|
54
|
-
},
|
|
55
|
-
"checklist-buying-user-dashboard-navigation-sidebar-mobile-collapse": {
|
|
56
|
-
roles: ["buyer"],
|
|
57
|
-
startPage: "/user",
|
|
58
|
-
steps: [
|
|
59
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
60
|
-
"Resize the browser window to 390 pixels wide and open /user.",
|
|
61
|
-
"Open the sidebar using the header's hamburger icon.",
|
|
62
|
-
"Read its entries, and navigate somewhere.",
|
|
63
|
-
"Check whether it closed on navigation.",
|
|
64
|
-
"Count the fixed bars at the bottom of the screen and read every one of its slots, including the last ('More').",
|
|
65
|
-
"Tap the bottom bar's 'More' slot and read what it opens.",
|
|
66
|
-
"Try to scroll the page sideways.",
|
|
67
|
-
],
|
|
68
|
-
inputs: { mobileWidth: 390 },
|
|
69
|
-
expectedBehaviour: "BEFORE (fixed 2026-09-28): /user rendered a dashboard-specific bottom bar — up to 5 flattened sidebar links, text-only, no icons — while the public bottom bar was suppressed on this route. AFTER: the dashboard sidebar opens from the header hamburger, exactly as on every dashboard route, and closes after navigating. The bottom tab bar itself is now the SAME shared bar every public page uses (same items, same order, same icons) — not a dashboard-specific one — and its own 'More' slot opens the public site menu, not this sidebar. Exactly one bottom bar is mounted either way, since it is the sole publisher of its own height.",
|
|
70
|
-
expectedUiState: "The header hamburger opens the dashboard sidebar, collapsed by default, closing after navigation. The bottom bar matches the public site's bar item-for-item, and tapping its 'More' slot opens the public menu rather than the dashboard sidebar. The page does not scroll sideways.",
|
|
71
|
-
expectedData: { bottomNavCount: 1 },
|
|
72
|
-
endResult: "Read-only; restore the window width afterwards.",
|
|
73
|
-
},
|
|
74
|
-
"checklist-buying-user-dashboard-navigation-deep-link-direct-load": {
|
|
75
|
-
roles: ["buyer"],
|
|
76
|
-
startPage: "/user/orders",
|
|
77
|
-
steps: [
|
|
78
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
79
|
-
"Open /user/orders, apply a filter and a sort, and copy the URL.",
|
|
80
|
-
"Open a new tab and paste that URL.",
|
|
81
|
-
"Read whether the same filter and sort are applied on first paint.",
|
|
82
|
-
"Open a specific order's detail, copy that URL, and open it in a new tab.",
|
|
83
|
-
"Read whether it opens on the same order.",
|
|
84
|
-
"Reload that tab and read it again.",
|
|
85
|
-
],
|
|
86
|
-
expectedBehaviour: "Listing state lives in the URL, so a filtered view is shareable and reproduces on first paint. These routes are prerendered and hydrate their session client-side, so a deep link renders its shell immediately and fills in — what must not happen is the filters arriving and then being replaced by the defaults.",
|
|
87
|
-
expectedUiState: "The pasted listing URL shows the same rows, filter and sort as the tab it came from. The order URL opens that order and survives a reload. A filtered link that lands on the unfiltered default is the failure.",
|
|
88
|
-
endResult: "Read-only; nothing persists beyond the URL.",
|
|
89
|
-
},
|
|
90
|
-
"checklist-buying-user-dashboard-navigation-become-seller-crossnav": {
|
|
91
|
-
roles: ["buyer"],
|
|
92
|
-
startPage: "/user",
|
|
93
|
-
steps: [
|
|
94
|
-
"Sign in as karthik.new@gmail.com / TempPass123!, a buyer with no store.",
|
|
95
|
-
"Open /user and find the route into selling.",
|
|
96
|
-
"Click it and read where it lands.",
|
|
97
|
-
"Go back and open /sell directly, reading where that lands.",
|
|
98
|
-
"Sign out and sign in as tyson@beybladearena.in / TempPass123!, who has a store.",
|
|
99
|
-
"Open /user and read what the same area of the sidebar offers now.",
|
|
100
|
-
"Follow it and read where it lands.",
|
|
101
|
-
],
|
|
102
|
-
expectedBehaviour: "The cross-navigation resolves by whether the account already has a store: a buyer is routed into the become-seller flow, an existing seller into their store dashboard. Offering a seller the become-seller flow, or a buyer a dashboard they cannot use, are the two ways this reads wrong.",
|
|
103
|
-
expectedUiState: "The buyer's link opens the become-seller flow with real content. The seller's opens /store. Neither lands on a 404 and neither offers the wrong destination for its account.",
|
|
104
|
-
endResult: "Read-only; apply for nothing.",
|
|
105
|
-
},
|
|
106
|
-
"checklist-buying-user-dashboard-navigation-browser-back-forward": {
|
|
107
|
-
roles: ["buyer"],
|
|
108
|
-
startPage: "/user",
|
|
109
|
-
steps: [
|
|
110
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
111
|
-
"Open /user, then /user/orders, then apply a filter, then open an order's detail.",
|
|
112
|
-
"Press the browser back button once and read where it lands.",
|
|
113
|
-
"Press back again and read where it lands, including whether the filter is still applied.",
|
|
114
|
-
"Press back once more.",
|
|
115
|
-
"Press forward three times, reading each landing.",
|
|
116
|
-
],
|
|
117
|
-
expectedBehaviour: "Each state change that alters the URL is one history entry, so back walks them in reverse one press at a time. A filter change that writes the URL twice — once for the filter and once to reset the page number — produces two entries for one action, and back appears not to work.",
|
|
118
|
-
expectedUiState: "Back and forward move one step per press, and the filtered listing returns with its filter applied. Two presses needed to undo a single filter change is the double-navigation failure.",
|
|
119
|
-
endResult: "Read-only; nothing persists beyond the URL.",
|
|
120
|
-
},
|
|
121
|
-
"checklist-buying-user-dashboard-navigation-logged-out-redirect": {
|
|
122
|
-
roles: ["guest"],
|
|
123
|
-
startPage: "/user",
|
|
124
|
-
steps: [
|
|
125
|
-
"Open a private window with no session.",
|
|
126
|
-
"Open /user and watch the page for 5 seconds.",
|
|
127
|
-
"Open /user/orders and watch for 5 seconds.",
|
|
128
|
-
"Open /user/addresses and watch for 5 seconds.",
|
|
129
|
-
"Read each for any name, email, order or address at any point.",
|
|
130
|
-
"Open the browser's View Source on one of them and search for an email address and for a uid.",
|
|
131
|
-
"Read where each navigation ends up.",
|
|
132
|
-
],
|
|
133
|
-
expectedBehaviour: "These routes are prerendered to a signed-out shell and the session hydrates client-side, so the served HTML is identical for every visitor and cannot contain anyone's data. The redirect therefore happens after hydration — a brief flash of chrome is expected and is the tradeoff being evaluated, while a spinner that never resolves is not.",
|
|
134
|
-
expectedUiState: "Each URL shows chrome and a loading state, then lands on the sign-in page. No name, email, order or address appears at any point, and none is present in the page source. Nothing is still spinning after 5 seconds. Record whether the flash feels acceptable.",
|
|
135
|
-
expectedData: { userDataInSource: 0 },
|
|
136
|
-
endResult: "All three end signed out. Any trace of a real account fails the case outright, separately from the flash question.",
|
|
137
|
-
},
|
|
138
|
-
"checklist-buying-user-dashboard-navigation-breadcrumbs-accurate": {
|
|
139
|
-
roles: ["buyer"],
|
|
140
|
-
startPage: "/user",
|
|
141
|
-
steps: [
|
|
142
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
143
|
-
"Open /user and read any breadcrumb trail shown.",
|
|
144
|
-
"Navigate to /user/orders and read the trail.",
|
|
145
|
-
"Open a specific order's detail and read the trail.",
|
|
146
|
-
"Click each breadcrumb ancestor in turn and check it lands where it says.",
|
|
147
|
-
"Check the current page is shown as the last crumb and is not itself a link.",
|
|
148
|
-
],
|
|
149
|
-
expectedBehaviour: "The trail reflects the real route hierarchy and every ancestor is a working link. The last crumb is the current page and is not clickable — a self-link reads as a working link and goes nowhere new, the same defect the policy pages' related-links list had.",
|
|
150
|
-
expectedUiState: "The trail deepens as the route deepens, every ancestor navigates correctly, and the final crumb is plain text rather than a link.",
|
|
151
|
-
endResult: "Read-only; nothing persists.",
|
|
152
|
-
},
|
|
153
|
-
"checklist-buying-user-dashboard-navigation-sidebar-logout-button": {
|
|
154
|
-
roles: ["buyer"],
|
|
155
|
-
startPage: "/user",
|
|
156
|
-
steps: [
|
|
157
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
158
|
-
/* 'Logout' is the rendered label (AppLayoutShell's sidebarProfileLabels). */
|
|
159
|
-
"Open /user and find 'Logout' in the sidebar's Profile section.",
|
|
160
|
-
"Click it and read where the browser lands.",
|
|
161
|
-
"Open /user again and read what happens.",
|
|
162
|
-
"Press the browser back button and read what is shown.",
|
|
163
|
-
"Open /user/orders directly and read what happens.",
|
|
164
|
-
],
|
|
165
|
-
expectedBehaviour: "Log out clears both the server session cookie and the client auth session. Clearing only one leaves the browser able to re-mint a session on the next request, which is why the second navigation rather than the redirect is the real check — and a dashboard restored from the back-forward cache after log-out is a real exposure on a shared machine.",
|
|
166
|
-
expectedUiState: "The browser leaves the dashboard. Opening /user or /user/orders afterwards redirects to sign-in rather than rendering, even briefly with real data. The back button does not restore the dashboard from cache.",
|
|
167
|
-
endResult: "The session is ended.",
|
|
168
|
-
},
|
|
169
|
-
};
|