@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.
Files changed (1080) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/_internal/client/features/layout/DashboardLayoutClient.js +62 -5
  3. package/dist/_internal/client/features/maintenance/views/MaintenanceDashboardView.js +2 -2
  4. package/dist/_internal/server/features/brands/actions.js +78 -4
  5. package/dist/_internal/server/features/checkout/actions.d.ts +36 -13
  6. package/dist/_internal/server/features/checkout/actions.js +668 -183
  7. package/dist/_internal/server/features/checkout/supplier-identity.js +18 -1
  8. package/dist/_internal/server/features/gateway-events/index.d.ts +10 -0
  9. package/dist/_internal/server/features/gateway-events/index.js +10 -0
  10. package/dist/_internal/server/features/gateway-events/ingest.d.ts +127 -0
  11. package/dist/_internal/server/features/gateway-events/ingest.js +188 -0
  12. package/dist/_internal/server/features/gateway-events/redact.d.ts +66 -0
  13. package/dist/_internal/server/features/gateway-events/redact.js +151 -0
  14. package/dist/_internal/server/features/grievance/actions.d.ts +63 -0
  15. package/dist/_internal/server/features/grievance/actions.js +173 -0
  16. package/dist/_internal/server/features/grievance/index.d.ts +8 -0
  17. package/dist/_internal/server/features/grievance/index.js +8 -0
  18. package/dist/_internal/server/features/grouped/data.js +28 -3
  19. package/dist/_internal/server/features/lottery/actions.js +99 -4
  20. package/dist/_internal/server/features/order-completion/actions.d.ts +92 -0
  21. package/dist/_internal/server/features/order-completion/actions.js +336 -0
  22. package/dist/_internal/server/features/order-completion/index.d.ts +7 -0
  23. package/dist/_internal/server/features/order-completion/index.js +7 -0
  24. package/dist/_internal/server/features/orders/actions.d.ts +13 -0
  25. package/dist/_internal/server/features/orders/actions.js +56 -2
  26. package/dist/_internal/server/features/orders/adapters.js +26 -0
  27. package/dist/_internal/server/features/orders/cancellation-refund.d.ts +116 -0
  28. package/dist/_internal/server/features/orders/cancellation-refund.js +466 -0
  29. package/dist/_internal/server/features/orders/index.d.ts +2 -1
  30. package/dist/_internal/server/features/orders/index.js +1 -1
  31. package/dist/_internal/server/features/orders/service.d.ts +60 -0
  32. package/dist/_internal/server/features/orders/service.js +74 -0
  33. package/dist/_internal/server/features/payment-cases/disputes.d.ts +76 -0
  34. package/dist/_internal/server/features/payment-cases/disputes.js +241 -0
  35. package/dist/_internal/server/features/payment-cases/index.d.ts +9 -0
  36. package/dist/_internal/server/features/payment-cases/index.js +9 -0
  37. package/dist/_internal/server/features/payouts/actions.d.ts +28 -3
  38. package/dist/_internal/server/features/payouts/actions.js +84 -10
  39. package/dist/_internal/server/features/points/adjust.d.ts +61 -0
  40. package/dist/_internal/server/features/points/adjust.js +121 -0
  41. package/dist/_internal/server/features/points/award.d.ts +65 -0
  42. package/dist/_internal/server/features/points/award.js +145 -0
  43. package/dist/_internal/server/features/price-index/market.d.ts +33 -0
  44. package/dist/_internal/server/features/price-index/market.js +54 -1
  45. package/dist/_internal/server/features/products/data.js +40 -22
  46. package/dist/_internal/server/features/protection-claims/actions.d.ts +72 -0
  47. package/dist/_internal/server/features/protection-claims/actions.js +228 -0
  48. package/dist/_internal/server/features/protection-claims/index.d.ts +8 -0
  49. package/dist/_internal/server/features/protection-claims/index.js +8 -0
  50. package/dist/_internal/server/features/refunds/actions.d.ts +20 -0
  51. package/dist/_internal/server/features/refunds/actions.js +259 -17
  52. package/dist/_internal/server/features/refunds/capacity.d.ts +29 -0
  53. package/dist/_internal/server/features/refunds/capacity.js +37 -0
  54. package/dist/_internal/server/features/reviews/actions.js +3 -2
  55. package/dist/_internal/server/features/search/index-build/sources.js +20 -1
  56. package/dist/_internal/server/features/shipping/reconcile.d.ts +10 -1
  57. package/dist/_internal/server/features/shipping/reconcile.js +34 -3
  58. package/dist/_internal/server/features/shipping/reimbursement.d.ts +117 -0
  59. package/dist/_internal/server/features/shipping/reimbursement.js +223 -0
  60. package/dist/_internal/server/features/stores/tabs.d.ts +19 -4
  61. package/dist/_internal/server/features/stores/tabs.js +24 -4
  62. package/dist/_internal/server/functions/https.d.ts +31 -1
  63. package/dist/_internal/server/functions/https.js +52 -1
  64. package/dist/_internal/server/functions/scheduled.d.ts +72 -1
  65. package/dist/_internal/server/functions/scheduled.js +124 -1
  66. package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +62 -16
  67. package/dist/_internal/server/jobs/core/boxRollupReconcile.d.ts +46 -0
  68. package/dist/_internal/server/jobs/core/boxRollupReconcile.js +142 -0
  69. package/dist/_internal/server/jobs/core/dailyDataCleanup.js +149 -1
  70. package/dist/_internal/server/jobs/core/dailyStatusDigest.d.ts +14 -0
  71. package/dist/_internal/server/jobs/core/dailyStatusDigest.js +79 -1
  72. package/dist/_internal/server/jobs/core/index.d.ts +2 -0
  73. package/dist/_internal/server/jobs/core/index.js +2 -0
  74. package/dist/_internal/server/jobs/core/marketPriceRollup.d.ts +64 -0
  75. package/dist/_internal/server/jobs/core/marketPriceRollup.js +153 -0
  76. package/dist/_internal/server/jobs/core/obligationSweep.d.ts +36 -0
  77. package/dist/_internal/server/jobs/core/obligationSweep.js +503 -0
  78. package/dist/_internal/server/jobs/core/paymentReconcile.d.ts +79 -0
  79. package/dist/_internal/server/jobs/core/paymentReconcile.js +614 -0
  80. package/dist/_internal/server/jobs/core/paymentWindowTimeout.js +34 -0
  81. package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +35 -4
  82. package/dist/_internal/server/jobs/handlers/boxRollupReconcile.d.ts +2 -0
  83. package/dist/_internal/server/jobs/handlers/boxRollupReconcile.js +15 -0
  84. package/dist/_internal/server/jobs/handlers/countersReconcileNow.d.ts +65 -0
  85. package/dist/_internal/server/jobs/handlers/countersReconcileNow.js +89 -0
  86. package/dist/_internal/server/jobs/handlers/index.d.ts +5 -0
  87. package/dist/_internal/server/jobs/handlers/index.js +5 -0
  88. package/dist/_internal/server/jobs/handlers/marketPriceRollup.d.ts +2 -0
  89. package/dist/_internal/server/jobs/handlers/marketPriceRollup.js +2 -0
  90. package/dist/_internal/server/jobs/handlers/messages.d.ts +1 -1
  91. package/dist/_internal/server/jobs/handlers/messages.js +1 -1
  92. package/dist/_internal/server/jobs/handlers/obligationSweep.d.ts +2 -0
  93. package/dist/_internal/server/jobs/handlers/obligationSweep.js +15 -0
  94. package/dist/_internal/server/jobs/handlers/onShipmentAllocationSync.js +30 -1
  95. package/dist/_internal/server/jobs/handlers/paymentReconcile.d.ts +2 -0
  96. package/dist/_internal/server/jobs/handlers/paymentReconcile.js +6 -0
  97. package/dist/_internal/shared/actions/action-registry.d.ts +1 -1
  98. package/dist/_internal/shared/actions/action-registry.js +71 -0
  99. package/dist/_internal/shared/checkout/coupon-discount.d.ts +73 -0
  100. package/dist/_internal/shared/checkout/coupon-discount.js +103 -0
  101. package/dist/_internal/shared/checkout/lanes.d.ts +42 -0
  102. package/dist/_internal/shared/checkout/lanes.js +46 -0
  103. package/dist/_internal/shared/checkout/order-math.d.ts +149 -1
  104. package/dist/_internal/shared/checkout/order-math.js +251 -3
  105. package/dist/_internal/shared/checkout/refundable-base.d.ts +116 -0
  106. package/dist/_internal/shared/checkout/refundable-base.js +122 -0
  107. package/dist/_internal/shared/features/auctions/config.d.ts +14 -1
  108. package/dist/_internal/shared/features/auctions/config.js +30 -1
  109. package/dist/_internal/shared/features/brands/schema.d.ts +42 -0
  110. package/dist/_internal/shared/features/brands/schema.js +18 -0
  111. package/dist/_internal/shared/features/orders/refund-copy.d.ts +22 -0
  112. package/dist/_internal/shared/features/orders/refund-copy.js +34 -0
  113. package/dist/_internal/shared/features/print/label-profiles.d.ts +198 -0
  114. package/dist/_internal/shared/features/print/label-profiles.js +350 -0
  115. package/dist/_internal/shared/features/products/to-product-item.js +33 -5
  116. package/dist/_internal/shared/fees/calculator.d.ts +31 -2
  117. package/dist/_internal/shared/fees/calculator.js +103 -5
  118. package/dist/_internal/shared/fees/india-states.d.ts +195 -0
  119. package/dist/_internal/shared/fees/india-states.js +190 -0
  120. package/dist/_internal/shared/fees/payout-hold.d.ts +80 -0
  121. package/dist/_internal/shared/fees/payout-hold.js +74 -0
  122. package/dist/_internal/shared/obligations/deadlines.d.ts +94 -0
  123. package/dist/_internal/shared/obligations/deadlines.js +155 -0
  124. package/dist/_internal/shared/shipping/quote.d.ts +96 -0
  125. package/dist/_internal/shared/shipping/quote.js +67 -0
  126. package/dist/_internal/shared/time/business-days.d.ts +91 -0
  127. package/dist/_internal/shared/time/business-days.js +185 -0
  128. package/dist/_internal/shared/types/base-document.d.ts +1 -1
  129. package/dist/cli/index.js +0 -2
  130. package/dist/client.d.ts +9 -4
  131. package/dist/client.js +26 -3
  132. package/dist/configs/tailwind.d.ts +0 -12
  133. package/dist/configs/tailwind.js +28 -15
  134. package/dist/constants/api-endpoints.d.ts +51 -9
  135. package/dist/constants/api-endpoints.js +23 -7
  136. package/dist/constants/index.d.ts +1 -1
  137. package/dist/constants/index.js +1 -1
  138. package/dist/constants/seed-meta.d.ts +113 -0
  139. package/dist/constants/seed-meta.js +91 -0
  140. package/dist/contracts/index.d.ts +1 -1
  141. package/dist/contracts/payment.d.ts +131 -0
  142. package/dist/features/about/components/AboutView.js +1 -1
  143. package/dist/features/about/components/DeveloperView.js +5 -2
  144. package/dist/features/about/components/FAQPageView.js +2 -1
  145. package/dist/features/about/components/FeesView.js +2 -1
  146. package/dist/features/about/components/HelpPageView.js +2 -1
  147. package/dist/features/about/components/HowAuctionsWorkView.js +2 -1
  148. package/dist/features/about/components/HowCheckoutWorksView.js +2 -1
  149. package/dist/features/about/components/HowEmiWorksView.js +2 -1
  150. package/dist/features/about/components/HowOffersWorkView.js +2 -1
  151. package/dist/features/about/components/HowOrdersWorkView.js +2 -1
  152. package/dist/features/about/components/HowPayoutsWorkView.js +2 -1
  153. package/dist/features/about/components/HowPreOrdersWorkView.js +2 -1
  154. package/dist/features/about/components/HowReviewsWorkView.js +2 -1
  155. package/dist/features/about/components/PolicyPageView.js +2 -1
  156. package/dist/features/about/components/ProseHero.d.ts +73 -0
  157. package/dist/features/about/components/ProseHero.js +18 -0
  158. package/dist/features/about/components/SecurityPrivacyView.js +2 -1
  159. package/dist/features/about/components/ShippingPolicyView.js +2 -1
  160. package/dist/features/about/components/TrackOrderView.js +2 -1
  161. package/dist/features/about/components/UnauthorizedView.js +1 -1
  162. package/dist/features/about/index.d.ts +2 -0
  163. package/dist/features/about/index.js +5 -0
  164. package/dist/features/account/actions/address-actions.d.ts +26 -2
  165. package/dist/features/account/actions/address-actions.js +25 -1
  166. package/dist/features/account/components/BuyerShoppingGuideView.js +1 -1
  167. package/dist/features/account/components/NotificationPreferencesPanel.js +1 -1
  168. package/dist/features/account/components/UserOrdersView.js +17 -0
  169. package/dist/features/account/components/UserSidebar.js +1 -1
  170. package/dist/features/account/hooks/useNotifications.js +29 -0
  171. package/dist/features/admin/actions/admin-coupon-actions.js +36 -0
  172. package/dist/features/admin/components/AdminBeysView.js +2 -2
  173. package/dist/features/admin/components/AdminBlogEditorView.js +2 -2
  174. package/dist/features/admin/components/AdminBrandEditorView.js +32 -2
  175. package/dist/features/admin/components/AdminBundleEditorView.js +1 -1
  176. package/dist/features/admin/components/AdminCarouselEditorView.js +1 -1
  177. package/dist/features/admin/components/AdminCategoriesView.js +1 -1
  178. package/dist/features/admin/components/AdminCategoryEditorView.js +73 -17
  179. package/dist/features/admin/components/AdminContactEditorView.js +1 -1
  180. package/dist/features/admin/components/AdminCouponEditorView.js +26 -1
  181. package/dist/features/admin/components/AdminFaqEditorView.js +1 -1
  182. package/dist/features/admin/components/AdminFaqsView.js +2 -2
  183. package/dist/features/admin/components/AdminGatewayEventsView.d.ts +54 -0
  184. package/dist/features/admin/components/AdminGatewayEventsView.js +209 -0
  185. package/dist/features/admin/components/AdminGuideHubView.js +1 -1
  186. package/dist/features/admin/components/AdminMoneyCasesView.d.ts +60 -0
  187. package/dist/features/admin/components/AdminMoneyCasesView.js +287 -0
  188. package/dist/features/admin/components/AdminPartsView.js +2 -2
  189. package/dist/features/admin/components/AdminProductsView.js +75 -4
  190. package/dist/features/admin/components/AdminSidebar.js +2 -2
  191. package/dist/features/admin/components/AdminSiteSettingsView.js +65 -7
  192. package/dist/features/admin/components/AdminSublistingCategoriesView.js +2 -0
  193. package/dist/features/admin/components/AdminSupportTicketDetailView.js +1 -1
  194. package/dist/features/admin/components/AdminSupportTicketsView.js +2 -2
  195. package/dist/features/admin/components/AdminTesterChecklistView.js +2 -2
  196. package/dist/features/admin/components/AdminUsersView.js +72 -1
  197. package/dist/features/admin/components/AdminViewCards.d.ts +3 -1
  198. package/dist/features/admin/components/AdminViewCards.js +4 -4
  199. package/dist/features/admin/components/DataListingView.d.ts +28 -0
  200. package/dist/features/admin/components/DataListingView.js +175 -14
  201. package/dist/features/admin/components/DataTable.d.ts +12 -1
  202. package/dist/features/admin/components/DataTable.js +3 -3
  203. package/dist/features/admin/components/OwnerQuickActions.d.ts +1 -1
  204. package/dist/features/admin/components/OwnerQuickActions.js +60 -2
  205. package/dist/features/admin/components/RecordOwnerQuickActions.d.ts +1 -1
  206. package/dist/features/admin/components/RecordOwnerQuickActions.js +61 -14
  207. package/dist/features/admin/components/analytics/AdminStatCard.d.ts +35 -1
  208. package/dist/features/admin/components/analytics/AdminStatCard.js +77 -2
  209. package/dist/features/admin/components/index.d.ts +4 -0
  210. package/dist/features/admin/components/index.js +6 -0
  211. package/dist/features/admin/constants/filter-tabs.d.ts +156 -0
  212. package/dist/features/admin/constants/filter-tabs.js +106 -0
  213. package/dist/features/admin/repository/site-settings.repository.d.ts +22 -0
  214. package/dist/features/admin/repository/site-settings.repository.js +82 -1
  215. package/dist/features/admin/schemas/admin-editor-forms.d.ts +21 -0
  216. package/dist/features/admin/schemas/admin-editor-forms.js +44 -0
  217. package/dist/features/admin/schemas/firestore.js +5 -1
  218. package/dist/features/admin/schemas/site-settings-form.js +30 -1
  219. package/dist/features/auctions/actions/bid-actions.js +13 -1
  220. package/dist/features/auctions/components/AuctionBottomActions.js +2 -2
  221. package/dist/features/auctions/components/AuctionDetailPageView.js +3 -1
  222. package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +11 -0
  223. package/dist/features/auctions/components/MarketplaceAuctionCard.js +5 -3
  224. package/dist/features/auctions/components/PlaceBidFormClient.d.ts +8 -1
  225. package/dist/features/auctions/components/PlaceBidFormClient.js +2 -2
  226. package/dist/features/audit-log/schemas/firestore.d.ts +28 -0
  227. package/dist/features/audit-log/schemas/firestore.js +14 -0
  228. package/dist/features/auth/permissions/constants.d.ts +17 -1
  229. package/dist/features/auth/permissions/constants.js +18 -0
  230. package/dist/features/blog/components/BlogPostView.js +1 -1
  231. package/dist/features/catalogue/components/AdminCatalogueApprovalsView.js +1 -1
  232. package/dist/features/categories/api/[id]/description-template/route.js +107 -1
  233. package/dist/features/categories/components/BrandDetailPageView.js +2 -2
  234. package/dist/features/categories/components/BreadcrumbTrail.js +7 -1
  235. package/dist/features/categories/components/BundleDetailView.js +1 -1
  236. package/dist/features/categories/components/CategoryDetailPageView.js +2 -2
  237. package/dist/features/categories/components/CategoryForm.js +12 -1
  238. package/dist/features/categories/components/CategoryTemplatePicker.js +38 -5
  239. package/dist/features/categories/repository/market-price-index.repository.d.ts +123 -0
  240. package/dist/features/categories/repository/market-price-index.repository.js +105 -0
  241. package/dist/features/categories/repository/price-observation.repository.d.ts +166 -0
  242. package/dist/features/categories/repository/price-observation.repository.js +132 -0
  243. package/dist/features/events/components/EventSaleBanner.js +1 -1
  244. package/dist/features/events/components/EventStatusBadge.js +1 -1
  245. package/dist/features/faq/components/FAQAccordion.js +2 -1
  246. package/dist/features/faq/components/FAQCategorySidebar.js +2 -2
  247. package/dist/features/faq/components/FAQHelpfulButtons.js +4 -4
  248. package/dist/features/faq/components/RelatedFAQs.js +1 -1
  249. package/dist/features/filters/FilterFacetSection.js +1 -1
  250. package/dist/features/filters/SwitchFilter.js +1 -1
  251. package/dist/features/gateway-events/repository/gateway-events.repository.d.ts +117 -0
  252. package/dist/features/gateway-events/repository/gateway-events.repository.js +274 -0
  253. package/dist/features/gateway-events/schemas/firestore.d.ts +217 -0
  254. package/dist/features/gateway-events/schemas/firestore.js +125 -0
  255. package/dist/features/gateway-events/schemas/index.d.ts +81 -0
  256. package/dist/features/gateway-events/schemas/index.js +79 -0
  257. package/dist/features/grouped/components/GroupedListingDetailView.js +1 -1
  258. package/dist/features/homepage/components/AnnouncementBar.js +37 -1
  259. package/dist/features/homepage/components/AnnouncementBar.style.css +30 -0
  260. package/dist/features/homepage/components/BrandsSection.js +1 -1
  261. package/dist/features/homepage/components/CTABannerSection.js +1 -1
  262. package/dist/features/homepage/components/FeaturedBundlesSection.js +14 -24
  263. package/dist/features/homepage/components/HeroCarousel.js +2 -2
  264. package/dist/features/homepage/components/SocialPostCard.js +1 -1
  265. package/dist/features/inventory/components/AdminMoveLedgerView.d.ts +7 -0
  266. package/dist/features/inventory/components/AdminMoveLedgerView.js +157 -0
  267. package/dist/features/inventory/components/AdminStorageBoxesView.d.ts +11 -0
  268. package/dist/features/inventory/components/AdminStorageBoxesView.js +168 -0
  269. package/dist/features/inventory/components/ReceiveStationView.d.ts +39 -0
  270. package/dist/features/inventory/components/ReceiveStationView.js +413 -0
  271. package/dist/features/inventory/components/operator-message.d.ts +29 -0
  272. package/dist/features/inventory/components/operator-message.js +41 -0
  273. package/dist/features/inventory/index.d.ts +13 -0
  274. package/dist/features/inventory/index.js +28 -0
  275. package/dist/features/inventory/repository/inventory-movements.repository.d.ts +97 -0
  276. package/dist/features/inventory/repository/inventory-movements.repository.js +186 -0
  277. package/dist/features/inventory/repository/inventory-placements.repository.d.ts +179 -0
  278. package/dist/features/inventory/repository/inventory-placements.repository.js +345 -0
  279. package/dist/features/inventory/repository/storage-boxes.repository.d.ts +83 -0
  280. package/dist/features/inventory/repository/storage-boxes.repository.js +127 -0
  281. package/dist/features/inventory/schemas/firestore.d.ts +197 -0
  282. package/dist/features/inventory/schemas/firestore.js +159 -0
  283. package/dist/features/layout/AppLayoutShell.d.ts +12 -1
  284. package/dist/features/layout/AppLayoutShell.js +25 -12
  285. package/dist/features/layout/AutoBreadcrumbs.js +162 -3
  286. package/dist/features/layout/AutoBreadcrumbs.style.css +45 -0
  287. package/dist/features/layout/BottomNavbar.d.ts +1 -1
  288. package/dist/features/layout/BottomNavbar.js +2 -2
  289. package/dist/features/media/MediaAvatar.js +1 -1
  290. package/dist/features/media/MediaImage.d.ts +24 -4
  291. package/dist/features/media/MediaImage.js +44 -4
  292. package/dist/features/media/MediaLightbox.js +1 -1
  293. package/dist/features/media/modals/ImageCropModal.js +1 -1
  294. package/dist/features/media/modals/ImageEditor.js +1 -1
  295. package/dist/features/media/upload/MediaUploadField.js +91 -3
  296. package/dist/features/obligations/constants/policies.d.ts +92 -0
  297. package/dist/features/obligations/constants/policies.js +378 -0
  298. package/dist/features/obligations/repository/obligations.repository.d.ts +68 -0
  299. package/dist/features/obligations/repository/obligations.repository.js +158 -0
  300. package/dist/features/obligations/schemas/firestore.d.ts +160 -0
  301. package/dist/features/obligations/schemas/firestore.js +87 -0
  302. package/dist/features/orders/actions/order-actions.d.ts +43 -4
  303. package/dist/features/orders/actions/order-actions.js +60 -3
  304. package/dist/features/orders/actions/refund-actions.js +70 -10
  305. package/dist/features/orders/components/OrderCompletionPanel.d.ts +27 -0
  306. package/dist/features/orders/components/OrderCompletionPanel.js +192 -0
  307. package/dist/features/orders/components/OrdersList.js +2 -2
  308. package/dist/features/orders/components/RefundHistoryTable.js +3 -1
  309. package/dist/features/orders/components/index.d.ts +2 -0
  310. package/dist/features/orders/components/index.js +6 -0
  311. package/dist/features/orders/constants/transitions.d.ts +59 -0
  312. package/dist/features/orders/constants/transitions.js +104 -0
  313. package/dist/features/orders/repository/orders.repository.d.ts +109 -6
  314. package/dist/features/orders/repository/orders.repository.js +464 -21
  315. package/dist/features/orders/schemas/firestore.d.ts +270 -0
  316. package/dist/features/orders/schemas/firestore.js +24 -0
  317. package/dist/features/orders/schemas/index.d.ts +61 -0
  318. package/dist/features/orders/schemas/index.js +22 -0
  319. package/dist/features/orders/types/index.d.ts +79 -0
  320. package/dist/features/parts/components/PartsIndexPageView.js +8 -1
  321. package/dist/features/payment-cases/repository/payment-cases.repository.d.ts +170 -0
  322. package/dist/features/payment-cases/repository/payment-cases.repository.js +342 -0
  323. package/dist/features/payment-cases/schemas/firestore.d.ts +229 -0
  324. package/dist/features/payment-cases/schemas/firestore.js +105 -0
  325. package/dist/features/payment-cases/schemas/resolve-form.d.ts +97 -0
  326. package/dist/features/payment-cases/schemas/resolve-form.js +114 -0
  327. package/dist/features/payments/repository/payout.repository.d.ts +0 -1
  328. package/dist/features/payments/repository/payout.repository.js +0 -1
  329. package/dist/features/points/repository/points.repository.d.ts +122 -0
  330. package/dist/features/points/repository/points.repository.js +304 -1
  331. package/dist/features/points/schemas/adjust-form.d.ts +58 -0
  332. package/dist/features/points/schemas/adjust-form.js +63 -0
  333. package/dist/features/points/schemas/firestore.d.ts +108 -1
  334. package/dist/features/points/schemas/firestore.js +84 -0
  335. package/dist/features/pre-orders/components/MarketplacePreorderCard.js +3 -3
  336. package/dist/features/pre-orders/components/PreOrderBadge.js +1 -1
  337. package/dist/features/pre-orders/components/PreOrderDetailPageView.js +1 -1
  338. package/dist/features/price-index/components/PriceIndexToolView.d.ts +23 -4
  339. package/dist/features/price-index/components/PriceIndexToolView.js +71 -6
  340. package/dist/features/price-index/market-stats.d.ts +82 -0
  341. package/dist/features/price-index/market-stats.js +230 -0
  342. package/dist/features/print/components/BoxLabelPrintView.d.ts +25 -0
  343. package/dist/features/print/components/BoxLabelPrintView.js +66 -0
  344. package/dist/features/print/components/LabelProfilePicker.d.ts +13 -0
  345. package/dist/features/print/components/LabelProfilePicker.js +38 -0
  346. package/dist/features/print/components/labels.d.ts +117 -0
  347. package/dist/features/print/components/labels.js +258 -0
  348. package/dist/features/print/components/labels.style.css +46 -0
  349. package/dist/features/print/index.d.ts +6 -0
  350. package/dist/features/print/index.js +16 -0
  351. package/dist/features/products/columns/productTableColumns.js +5 -4
  352. package/dist/features/products/components/MarketplaceBundleCard.js +2 -2
  353. package/dist/features/products/components/MarketplacePrizeDrawCard.js +6 -6
  354. package/dist/features/products/components/PrizeDrawCollage.js +1 -1
  355. package/dist/features/products/components/PrizeDrawItemsEditor.js +1 -1
  356. package/dist/features/products/components/PrizeRevealModal.js +2 -2
  357. package/dist/features/products/components/ProductDetailPageView.js +18 -4
  358. package/dist/features/products/components/ProductForm.js +34 -23
  359. package/dist/features/products/components/ProductGrid.js +86 -62
  360. package/dist/features/products/constants/card-badges.d.ts +97 -0
  361. package/dist/features/products/constants/card-badges.js +100 -0
  362. package/dist/features/products/repository/products.repository.js +34 -1
  363. package/dist/features/products/schemas/firestore.d.ts +46 -3
  364. package/dist/features/products/schemas/firestore.js +21 -0
  365. package/dist/features/promotions/components/PromotionsView.js +1 -1
  366. package/dist/features/promotions/repository/claimed-coupons.repository.d.ts +32 -0
  367. package/dist/features/promotions/repository/claimed-coupons.repository.js +58 -0
  368. package/dist/features/promotions/schemas/firestore.js +30 -3
  369. package/dist/features/promotions/schemas/index.d.ts +6 -6
  370. package/dist/features/protection-claims/repository/protection-claims.repository.d.ts +54 -0
  371. package/dist/features/protection-claims/repository/protection-claims.repository.js +174 -0
  372. package/dist/features/protection-claims/schemas/firestore.d.ts +168 -0
  373. package/dist/features/protection-claims/schemas/firestore.js +130 -0
  374. package/dist/features/reviews/actions/review-actions.js +3 -2
  375. package/dist/features/reviews/components/ReviewModal.js +1 -1
  376. package/dist/features/reviews/components/ReviewsList.js +1 -1
  377. package/dist/features/reviews/schemas/firestore.d.ts +20 -1
  378. package/dist/features/scams/constants/scam-types.d.ts +2 -0
  379. package/dist/features/scams/constants/scam-types.js +18 -0
  380. package/dist/features/scams/schemas/report-form.d.ts +3 -3
  381. package/dist/features/scams/schemas/report-form.js +26 -1
  382. package/dist/features/search/components/Search.js +9 -9
  383. package/dist/features/search/components/SearchResultsClient.js +18 -3
  384. package/dist/features/search/components/SearchResultsPageView.d.ts +1 -6
  385. package/dist/features/search/components/SearchResultsPageView.js +2 -2
  386. package/dist/features/seller/actions/offer-actions.js +16 -1
  387. package/dist/features/seller/actions/seller-actions.js +14 -3
  388. package/dist/features/seller/components/CategoryInlineSelect.js +75 -11
  389. package/dist/features/seller/components/PrintCenterView.d.ts +5 -0
  390. package/dist/features/seller/components/PrintCenterView.js +41 -30
  391. package/dist/features/seller/components/SellerOrdersView.js +1 -1
  392. package/dist/features/seller/components/SellerPayoutRequestView.js +16 -5
  393. package/dist/features/seller/components/SellerPayoutSettingsView.js +1 -1
  394. package/dist/features/seller/components/SellerProductShell.d.ts +16 -0
  395. package/dist/features/seller/components/SellerProductShell.js +123 -13
  396. package/dist/features/seller/components/SellerReviewsView.js +4 -2
  397. package/dist/features/seller/components/SellerSidebar.js +1 -1
  398. package/dist/features/seller/schemas/coupon-form.d.ts +26 -0
  399. package/dist/features/seller/schemas/coupon-form.js +27 -0
  400. package/dist/features/seller/schemas/product-form.d.ts +3 -0
  401. package/dist/features/seller/schemas/product-form.js +5 -0
  402. package/dist/features/shell/FormShell.js +2 -2
  403. package/dist/features/shell/QuickFormDrawer.js +14 -0
  404. package/dist/features/shell/SectionForm.d.ts +19 -0
  405. package/dist/features/shell/SectionForm.js +133 -9
  406. package/dist/features/shell/SectionForm.style.css +54 -0
  407. package/dist/features/shipments/components/AdminShipmentsView.js +16 -1
  408. package/dist/features/shipments/repository/shipment-items.repository.d.ts +9 -0
  409. package/dist/features/shipments/repository/shipment-items.repository.js +14 -0
  410. package/dist/features/site-settings/components/ActionPermissionsManager.js +1 -1
  411. package/dist/features/sticker-trace/components/StickerCommitPanel.js +1 -1
  412. package/dist/features/store-extensions/schemas/report-review-form.d.ts +8 -8
  413. package/dist/features/stores/components/StoreGuideHubView.js +1 -1
  414. package/dist/features/stores/components/StoreHeader.js +1 -1
  415. package/dist/features/support/schemas/firestore.d.ts +73 -2
  416. package/dist/features/support/schemas/firestore.js +59 -0
  417. package/dist/index.d.ts +16 -155
  418. package/dist/index.js +88 -341
  419. package/dist/next/ErrorBoundary.js +1 -1
  420. package/dist/next/routing/route-map.d.ts +24 -0
  421. package/dist/next/routing/route-map.js +40 -0
  422. package/dist/providers/payment-manual/index.d.ts +15 -1
  423. package/dist/providers/payment-manual/index.js +37 -0
  424. package/dist/providers/payment-phonepe/index.d.ts +14 -1
  425. package/dist/providers/payment-phonepe/index.js +36 -0
  426. package/dist/providers/payment-razorpay/index.d.ts +44 -1
  427. package/dist/providers/payment-razorpay/index.js +99 -0
  428. package/dist/providers/shipping-shiprocket/index.d.ts +18 -0
  429. package/dist/providers/shipping-shiprocket/index.js +18 -0
  430. package/dist/schemas/registry.d.ts +44 -11
  431. package/dist/server-entry.d.ts +2 -0
  432. package/dist/server-entry.js +27 -0
  433. package/dist/server.d.ts +42 -69
  434. package/dist/server.js +93 -69
  435. package/dist/styles.css +418 -149
  436. package/dist/tailwind-utilities.css +1 -1
  437. package/dist/tokens/themes/default-dark.js +15 -12
  438. package/dist/tokens/themes/default-light.js +14 -11
  439. package/dist/tokens/tokens.css +106 -23
  440. package/dist/ui/DataTable.style.css +4 -4
  441. package/dist/ui/columns/cell-renderers.d.ts +20 -0
  442. package/dist/ui/columns/cell-renderers.js +26 -1
  443. package/dist/ui/columns/index.d.ts +1 -1
  444. package/dist/ui/columns/index.js +4 -1
  445. package/dist/ui/components/Badge.style.css +1 -1
  446. package/dist/ui/components/Breadcrumb.js +19 -1
  447. package/dist/ui/components/BulkActionBar.style.css +4 -4
  448. package/dist/ui/components/Button.style.css +1 -1
  449. package/dist/ui/components/Checkbox.style.css +1 -1
  450. package/dist/ui/components/FallbackShell.js +1 -1
  451. package/dist/ui/components/Form.d.ts +14 -1
  452. package/dist/ui/components/Form.js +2 -2
  453. package/dist/ui/components/FormField.js +18 -4
  454. package/dist/ui/components/FormField.style.css +43 -3
  455. package/dist/ui/components/GatedPrice.style.css +1 -1
  456. package/dist/ui/components/IconButton.style.css +1 -1
  457. package/dist/ui/components/Input.js +22 -1
  458. package/dist/ui/components/Input.style.css +38 -22
  459. package/dist/ui/components/ListingFilterDrawer.js +1 -1
  460. package/dist/ui/components/ListingToolbar.js +1 -1
  461. package/dist/ui/components/PaginatedSelect.js +0 -0
  462. package/dist/ui/components/Radio.style.css +1 -1
  463. package/dist/ui/components/Repeater.d.ts +53 -0
  464. package/dist/ui/components/Repeater.js +7 -0
  465. package/dist/ui/components/RichTextEditor.d.ts +20 -1
  466. package/dist/ui/components/RichTextEditor.js +23 -2
  467. package/dist/ui/components/Select.style.css +7 -21
  468. package/dist/ui/components/Semantic.js +27 -3
  469. package/dist/ui/components/TagInput.style.css +4 -9
  470. package/dist/ui/components/Textarea.style.css +4 -18
  471. package/dist/ui/components/Toggle.style.css +1 -1
  472. package/dist/ui/components/Typography.d.ts +3 -3
  473. package/dist/ui/components/Typography.js +15 -15
  474. package/dist/ui/components/ViewToggle.style.css +4 -4
  475. package/dist/ui/forms/AddAnotherToggle.d.ts +16 -0
  476. package/dist/ui/forms/AddAnotherToggle.js +56 -0
  477. package/dist/ui/forms/ColorPickerField.js +15 -2
  478. package/dist/ui/forms/FieldCheckbox.js +15 -2
  479. package/dist/ui/forms/FieldInput.d.ts +22 -1
  480. package/dist/ui/forms/FieldInput.js +19 -5
  481. package/dist/ui/forms/FieldLabel.d.ts +35 -0
  482. package/dist/ui/forms/FieldLabel.js +70 -0
  483. package/dist/ui/forms/FieldSelect.d.ts +4 -1
  484. package/dist/ui/forms/FieldSelect.js +27 -5
  485. package/dist/ui/forms/FieldTextarea.d.ts +4 -1
  486. package/dist/ui/forms/FieldTextarea.js +22 -5
  487. package/dist/ui/forms/FormShell.d.ts +17 -1
  488. package/dist/ui/forms/FormShell.js +36 -2
  489. package/dist/ui/forms/FormShell.style.css +41 -33
  490. package/dist/ui/forms/index.d.ts +5 -1
  491. package/dist/ui/forms/index.js +2 -0
  492. package/dist/ui/icons/icon-registry.d.ts +1 -0
  493. package/dist/ui/icons/icon-registry.js +17 -1
  494. package/dist/utils/id-generators.d.ts +80 -0
  495. package/dist/utils/id-generators.js +93 -0
  496. package/dist/utils/search-txt-builders.d.ts +12 -0
  497. package/dist/utils/search-txt-builders.js +17 -0
  498. package/package.json +4 -2
  499. package/scripts/seed-cli.mjs +175 -6
  500. package/dist/features/loyalty/api/admin/loyalty/grant/route.d.ts +0 -12
  501. package/dist/features/loyalty/api/admin/loyalty/grant/route.js +0 -38
  502. package/dist/features/loyalty/api/balance/route.d.ts +0 -12
  503. package/dist/features/loyalty/api/balance/route.js +0 -41
  504. package/dist/features/loyalty/api/earn/route.d.ts +0 -12
  505. package/dist/features/loyalty/api/earn/route.js +0 -38
  506. package/dist/features/loyalty/api/history/route.d.ts +0 -12
  507. package/dist/features/loyalty/api/history/route.js +0 -58
  508. package/dist/features/loyalty/api/redeem/route.d.ts +0 -12
  509. package/dist/features/loyalty/api/redeem/route.js +0 -38
  510. package/dist/features/loyalty/columns/index.d.ts +0 -17
  511. package/dist/features/loyalty/columns/index.js +0 -40
  512. package/dist/features/loyalty/components/CoinsDisplay.d.ts +0 -12
  513. package/dist/features/loyalty/components/CoinsDisplay.js +0 -10
  514. package/dist/features/loyalty/components/index.d.ts +0 -1
  515. package/dist/features/loyalty/components/index.js +0 -1
  516. package/dist/features/loyalty/hooks/useLoyaltyBalance.d.ts +0 -4
  517. package/dist/features/loyalty/hooks/useLoyaltyBalance.js +0 -25
  518. package/dist/features/loyalty/index.d.ts +0 -6
  519. package/dist/features/loyalty/index.js +0 -6
  520. package/dist/features/loyalty/manifest.d.ts +0 -2
  521. package/dist/features/loyalty/manifest.js +0 -16
  522. package/dist/features/loyalty/messages/en.json +0 -19
  523. package/dist/features/loyalty/repository/loyalty.repository.d.ts +0 -8
  524. package/dist/features/loyalty/repository/loyalty.repository.js +0 -22
  525. package/dist/features/loyalty/schemas/index.d.ts +0 -85
  526. package/dist/features/loyalty/schemas/index.js +0 -40
  527. package/dist/features/loyalty/server.d.ts +0 -6
  528. package/dist/features/loyalty/server.js +0 -6
  529. package/dist/features/loyalty/types/index.d.ts +0 -31
  530. package/dist/features/loyalty/types/index.js +0 -1
  531. package/dist/features/loyalty/types/loyalty-config.d.ts +0 -7
  532. package/dist/features/loyalty/types/loyalty-config.js +0 -1
  533. package/dist/features/loyalty/types/loyalty-math.d.ts +0 -9
  534. package/dist/features/loyalty/types/loyalty-math.js +0 -27
  535. package/dist/features/products/components/ProductOwnerQuickActions.d.ts +0 -11
  536. package/dist/features/products/components/ProductOwnerQuickActions.js +0 -120
  537. package/dist/features/tester/seed-data/_happy-path.d.ts +0 -23
  538. package/dist/features/tester/seed-data/_happy-path.js +0 -710
  539. package/dist/features/tester/seed-data/_money-flows.d.ts +0 -23
  540. package/dist/features/tester/seed-data/_money-flows.js +0 -610
  541. package/dist/features/tester/seed-data/authored/_types.d.ts +0 -57
  542. package/dist/features/tester/seed-data/authored/_types.js +0 -35
  543. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.d.ts +0 -2
  544. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.js +0 -226
  545. package/dist/features/tester/seed-data/authored/account-auth__signup-login.d.ts +0 -2
  546. package/dist/features/tester/seed-data/authored/account-auth__signup-login.js +0 -329
  547. package/dist/features/tester/seed-data/authored/addresses__address-filters.d.ts +0 -2
  548. package/dist/features/tester/seed-data/authored/addresses__address-filters.js +0 -41
  549. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.d.ts +0 -2
  550. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.js +0 -76
  551. package/dist/features/tester/seed-data/authored/addresses__postal-validation.d.ts +0 -2
  552. package/dist/features/tester/seed-data/authored/addresses__postal-validation.js +0 -78
  553. package/dist/features/tester/seed-data/authored/addresses__state-picker.d.ts +0 -2
  554. package/dist/features/tester/seed-data/authored/addresses__state-picker.js +0 -59
  555. package/dist/features/tester/seed-data/authored/addresses__unban-request.d.ts +0 -2
  556. package/dist/features/tester/seed-data/authored/addresses__unban-request.js +0 -77
  557. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.d.ts +0 -2
  558. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.js +0 -151
  559. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.d.ts +0 -2
  560. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.js +0 -265
  561. package/dist/features/tester/seed-data/authored/admin__blog-faqs.d.ts +0 -2
  562. package/dist/features/tester/seed-data/authored/admin__blog-faqs.js +0 -131
  563. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.d.ts +0 -2
  564. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.js +0 -143
  565. package/dist/features/tester/seed-data/authored/admin__bulk-actions.d.ts +0 -2
  566. package/dist/features/tester/seed-data/authored/admin__bulk-actions.js +0 -207
  567. package/dist/features/tester/seed-data/authored/admin__bundles.d.ts +0 -2
  568. package/dist/features/tester/seed-data/authored/admin__bundles.js +0 -144
  569. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.d.ts +0 -2
  570. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.js +0 -265
  571. package/dist/features/tester/seed-data/authored/admin__catalog-listings.d.ts +0 -2
  572. package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +0 -318
  573. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.d.ts +0 -2
  574. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.js +0 -177
  575. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.d.ts +0 -2
  576. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.js +0 -165
  577. package/dist/features/tester/seed-data/authored/admin__content-deletes.d.ts +0 -2
  578. package/dist/features/tester/seed-data/authored/admin__content-deletes.js +0 -267
  579. package/dist/features/tester/seed-data/authored/admin__content-marketing.d.ts +0 -2
  580. package/dist/features/tester/seed-data/authored/admin__content-marketing.js +0 -188
  581. package/dist/features/tester/seed-data/authored/admin__coupons.d.ts +0 -2
  582. package/dist/features/tester/seed-data/authored/admin__coupons.js +0 -215
  583. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.d.ts +0 -2
  584. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.js +0 -202
  585. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.d.ts +0 -2
  586. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.js +0 -249
  587. package/dist/features/tester/seed-data/authored/admin__media-watermark.d.ts +0 -2
  588. package/dist/features/tester/seed-data/authored/admin__media-watermark.js +0 -148
  589. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.d.ts +0 -2
  590. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.js +0 -350
  591. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.d.ts +0 -2
  592. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.js +0 -129
  593. package/dist/features/tester/seed-data/authored/admin__site-system.d.ts +0 -2
  594. package/dist/features/tester/seed-data/authored/admin__site-system.js +0 -586
  595. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.d.ts +0 -2
  596. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.js +0 -260
  597. package/dist/features/tester/seed-data/authored/admin__users-trust.d.ts +0 -2
  598. package/dist/features/tester/seed-data/authored/admin__users-trust.js +0 -569
  599. package/dist/features/tester/seed-data/authored/buying__bidding.d.ts +0 -2
  600. package/dist/features/tester/seed-data/authored/buying__bidding.js +0 -449
  601. package/dist/features/tester/seed-data/authored/buying__browsing-search.d.ts +0 -2
  602. package/dist/features/tester/seed-data/authored/buying__browsing-search.js +0 -684
  603. package/dist/features/tester/seed-data/authored/buying__buying-checkout.d.ts +0 -2
  604. package/dist/features/tester/seed-data/authored/buying__buying-checkout.js +0 -546
  605. package/dist/features/tester/seed-data/authored/buying__buying-coupons.d.ts +0 -2
  606. package/dist/features/tester/seed-data/authored/buying__buying-coupons.js +0 -379
  607. package/dist/features/tester/seed-data/authored/buying__cart.d.ts +0 -2
  608. package/dist/features/tester/seed-data/authored/buying__cart.js +0 -1264
  609. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.d.ts +0 -2
  610. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.js +0 -122
  611. package/dist/features/tester/seed-data/authored/buying__my-orders.d.ts +0 -2
  612. package/dist/features/tester/seed-data/authored/buying__my-orders.js +0 -279
  613. package/dist/features/tester/seed-data/authored/buying__offers.d.ts +0 -2
  614. package/dist/features/tester/seed-data/authored/buying__offers.js +0 -1127
  615. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.d.ts +0 -2
  616. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.js +0 -153
  617. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.d.ts +0 -2
  618. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.js +0 -252
  619. package/dist/features/tester/seed-data/authored/buying__product-detail.d.ts +0 -2
  620. package/dist/features/tester/seed-data/authored/buying__product-detail.js +0 -474
  621. package/dist/features/tester/seed-data/authored/buying__return-request.d.ts +0 -2
  622. package/dist/features/tester/seed-data/authored/buying__return-request.js +0 -165
  623. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.d.ts +0 -2
  624. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.js +0 -260
  625. package/dist/features/tester/seed-data/authored/buying__reviews.d.ts +0 -2
  626. package/dist/features/tester/seed-data/authored/buying__reviews.js +0 -128
  627. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.d.ts +0 -2
  628. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.js +0 -96
  629. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.d.ts +0 -2
  630. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.js +0 -283
  631. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.d.ts +0 -2
  632. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.js +0 -169
  633. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.d.ts +0 -2
  634. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.js +0 -105
  635. package/dist/features/tester/seed-data/authored/buying__wishlist-history.d.ts +0 -2
  636. package/dist/features/tester/seed-data/authored/buying__wishlist-history.js +0 -374
  637. package/dist/features/tester/seed-data/authored/community-support__messages.d.ts +0 -2
  638. package/dist/features/tester/seed-data/authored/community-support__messages.js +0 -200
  639. package/dist/features/tester/seed-data/authored/community-support__public-profile.d.ts +0 -2
  640. package/dist/features/tester/seed-data/authored/community-support__public-profile.js +0 -54
  641. package/dist/features/tester/seed-data/authored/community-support__support-tickets.d.ts +0 -2
  642. package/dist/features/tester/seed-data/authored/community-support__support-tickets.js +0 -76
  643. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.d.ts +0 -4
  644. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.js +0 -590
  645. package/dist/features/tester/seed-data/authored/content-discovery__blog.d.ts +0 -2
  646. package/dist/features/tester/seed-data/authored/content-discovery__blog.js +0 -110
  647. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.d.ts +0 -2
  648. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +0 -149
  649. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.d.ts +0 -2
  650. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.js +0 -145
  651. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +0 -2
  652. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +0 -174
  653. package/dist/features/tester/seed-data/authored/content-discovery__coupons.d.ts +0 -2
  654. package/dist/features/tester/seed-data/authored/content-discovery__coupons.js +0 -169
  655. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.d.ts +0 -2
  656. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.js +0 -209
  657. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.d.ts +0 -2
  658. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.js +0 -207
  659. package/dist/features/tester/seed-data/authored/content-discovery__events.d.ts +0 -2
  660. package/dist/features/tester/seed-data/authored/content-discovery__events.js +0 -377
  661. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.d.ts +0 -2
  662. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.js +0 -87
  663. package/dist/features/tester/seed-data/authored/content-discovery__notifications.d.ts +0 -2
  664. package/dist/features/tester/seed-data/authored/content-discovery__notifications.js +0 -147
  665. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.d.ts +0 -2
  666. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.js +0 -209
  667. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.d.ts +0 -2
  668. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.js +0 -167
  669. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.d.ts +0 -2
  670. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.js +0 -73
  671. package/dist/features/tester/seed-data/authored/content-discovery__search.d.ts +0 -2
  672. package/dist/features/tester/seed-data/authored/content-discovery__search.js +0 -363
  673. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.d.ts +0 -2
  674. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.js +0 -340
  675. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.d.ts +0 -2
  676. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.js +0 -88
  677. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.d.ts +0 -2
  678. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.js +0 -78
  679. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.d.ts +0 -2
  680. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.js +0 -76
  681. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.d.ts +0 -2
  682. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.js +0 -62
  683. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.d.ts +0 -2
  684. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.js +0 -163
  685. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.d.ts +0 -2
  686. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.js +0 -61
  687. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.d.ts +0 -2
  688. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.js +0 -89
  689. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.d.ts +0 -2
  690. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.js +0 -95
  691. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.d.ts +0 -2
  692. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.js +0 -191
  693. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.d.ts +0 -2
  694. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.js +0 -158
  695. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.d.ts +0 -2
  696. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.js +0 -82
  697. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.d.ts +0 -2
  698. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.js +0 -106
  699. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.d.ts +0 -2
  700. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.js +0 -88
  701. package/dist/features/tester/seed-data/authored/design-ux__general-design.d.ts +0 -2
  702. package/dist/features/tester/seed-data/authored/design-ux__general-design.js +0 -204
  703. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.d.ts +0 -2
  704. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.js +0 -301
  705. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.d.ts +0 -2
  706. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.js +0 -90
  707. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.d.ts +0 -2
  708. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.js +0 -85
  709. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.d.ts +0 -2
  710. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.js +0 -407
  711. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.d.ts +0 -2
  712. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.js +0 -88
  713. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +0 -2
  714. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +0 -84
  715. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.d.ts +0 -2
  716. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.js +0 -214
  717. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.d.ts +0 -2
  718. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.js +0 -275
  719. package/dist/features/tester/seed-data/authored/index.d.ts +0 -2
  720. package/dist/features/tester/seed-data/authored/index.js +0 -301
  721. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.d.ts +0 -2
  722. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.js +0 -125
  723. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.d.ts +0 -2
  724. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.js +0 -85
  725. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.d.ts +0 -2
  726. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.js +0 -92
  727. package/dist/features/tester/seed-data/authored/page-wiring__reachability.d.ts +0 -2
  728. package/dist/features/tester/seed-data/authored/page-wiring__reachability.js +0 -115
  729. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.d.ts +0 -2
  730. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.js +0 -137
  731. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.d.ts +0 -2
  732. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +0 -263
  733. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.d.ts +0 -2
  734. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.js +0 -229
  735. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.d.ts +0 -2
  736. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.js +0 -325
  737. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.d.ts +0 -2
  738. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.js +0 -126
  739. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.d.ts +0 -2
  740. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.js +0 -141
  741. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.d.ts +0 -2
  742. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.js +0 -115
  743. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.d.ts +0 -2
  744. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.js +0 -253
  745. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.d.ts +0 -2
  746. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.js +0 -93
  747. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.d.ts +0 -3
  748. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.js +0 -185
  749. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.d.ts +0 -2
  750. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.js +0 -82
  751. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.d.ts +0 -2
  752. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.js +0 -60
  753. package/dist/features/tester/seed-data/authored/selling__become-seller.d.ts +0 -2
  754. package/dist/features/tester/seed-data/authored/selling__become-seller.js +0 -117
  755. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.d.ts +0 -2
  756. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.js +0 -148
  757. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.d.ts +0 -2
  758. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.js +0 -108
  759. package/dist/features/tester/seed-data/authored/selling__listing-a-product.d.ts +0 -2
  760. package/dist/features/tester/seed-data/authored/selling__listing-a-product.js +0 -274
  761. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.d.ts +0 -2
  762. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.js +0 -145
  763. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.d.ts +0 -2
  764. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.js +0 -336
  765. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.d.ts +0 -2
  766. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.js +0 -136
  767. package/dist/features/tester/seed-data/authored/selling__media-limits.d.ts +0 -2
  768. package/dist/features/tester/seed-data/authored/selling__media-limits.js +0 -135
  769. package/dist/features/tester/seed-data/authored/selling__product-upload-details.d.ts +0 -2
  770. package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +0 -155
  771. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.d.ts +0 -2
  772. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.js +0 -138
  773. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.d.ts +0 -2
  774. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.js +0 -191
  775. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.d.ts +0 -2
  776. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.js +0 -138
  777. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.d.ts +0 -2
  778. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.js +0 -106
  779. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.d.ts +0 -2
  780. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.js +0 -192
  781. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.d.ts +0 -2
  782. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.js +0 -109
  783. package/dist/features/tester/seed-data/authored/selling__seller-guide.d.ts +0 -2
  784. package/dist/features/tester/seed-data/authored/selling__seller-guide.js +0 -34
  785. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.d.ts +0 -2
  786. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.js +0 -348
  787. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.d.ts +0 -2
  788. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.js +0 -87
  789. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.d.ts +0 -2
  790. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.js +0 -90
  791. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.d.ts +0 -2
  792. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.js +0 -85
  793. package/dist/features/tester/seed-data/authored/selling__seller-orders.d.ts +0 -2
  794. package/dist/features/tester/seed-data/authored/selling__seller-orders.js +0 -213
  795. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.d.ts +0 -2
  796. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.js +0 -192
  797. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.d.ts +0 -2
  798. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.js +0 -77
  799. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.d.ts +0 -2
  800. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.js +0 -165
  801. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.d.ts +0 -2
  802. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.js +0 -116
  803. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.d.ts +0 -2
  804. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.js +0 -127
  805. package/dist/features/tester/seed-data/authored/seo__og-images.d.ts +0 -2
  806. package/dist/features/tester/seed-data/authored/seo__og-images.js +0 -107
  807. package/dist/features/tester/seed-data/authored/seo__page-metadata.d.ts +0 -2
  808. package/dist/features/tester/seed-data/authored/seo__page-metadata.js +0 -120
  809. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.d.ts +0 -2
  810. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.js +0 -105
  811. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.d.ts +0 -2
  812. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.js +0 -58
  813. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.d.ts +0 -2
  814. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.js +0 -284
  815. package/dist/features/tester/seed-data/index.d.ts +0 -2
  816. package/dist/features/tester/seed-data/index.js +0 -2
  817. package/dist/features/tester/seed-data/tester-checklist-seed-data.d.ts +0 -2
  818. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +0 -7601
  819. package/dist/features/tester/seed-data/tester-responses-seed-data.d.ts +0 -2
  820. package/dist/features/tester/seed-data/tester-responses-seed-data.js +0 -95
  821. package/dist/features/tester/seed-data/tester-window.d.ts +0 -25
  822. package/dist/features/tester/seed-data/tester-window.js +0 -66
  823. package/dist/seed/_helpers/brand-rows.d.ts +0 -35
  824. package/dist/seed/_helpers/brand-rows.js +0 -600
  825. package/dist/seed/_helpers/category-content-generated.d.ts +0 -24
  826. package/dist/seed/_helpers/category-content-generated.js +0 -1853
  827. package/dist/seed/_helpers/category-content.d.ts +0 -68
  828. package/dist/seed/_helpers/category-content.js +0 -731
  829. package/dist/seed/_helpers/category-forest.d.ts +0 -4
  830. package/dist/seed/_helpers/category-forest.js +0 -824
  831. package/dist/seed/_helpers/category-images-generated.d.ts +0 -57
  832. package/dist/seed/_helpers/category-images-generated.js +0 -618
  833. package/dist/seed/_helpers/category-models/chunk0.d.ts +0 -2
  834. package/dist/seed/_helpers/category-models/chunk0.js +0 -2648
  835. package/dist/seed/_helpers/category-models/chunk1.d.ts +0 -2
  836. package/dist/seed/_helpers/category-models/chunk1.js +0 -2318
  837. package/dist/seed/_helpers/category-models/chunk2.d.ts +0 -2
  838. package/dist/seed/_helpers/category-models/chunk2.js +0 -2560
  839. package/dist/seed/_helpers/category-models/chunk3.d.ts +0 -2
  840. package/dist/seed/_helpers/category-models/chunk3.js +0 -2196
  841. package/dist/seed/_helpers/category-models/chunk4.d.ts +0 -2
  842. package/dist/seed/_helpers/category-models/chunk4.js +0 -1732
  843. package/dist/seed/_helpers/category-models.d.ts +0 -12
  844. package/dist/seed/_helpers/category-models.js +0 -45
  845. package/dist/seed/_helpers/category-names.d.ts +0 -54
  846. package/dist/seed/_helpers/category-names.js +0 -118
  847. package/dist/seed/_helpers/category-parts-glossary-map.d.ts +0 -1
  848. package/dist/seed/_helpers/category-parts-glossary-map.js +0 -2499
  849. package/dist/seed/_helpers/category-parts.d.ts +0 -9
  850. package/dist/seed/_helpers/category-parts.js +0 -15022
  851. package/dist/seed/_helpers/category-tree.d.ts +0 -27
  852. package/dist/seed/_helpers/category-tree.js +0 -119
  853. package/dist/seed/_helpers/character-features.d.ts +0 -10
  854. package/dist/seed/_helpers/character-features.js +0 -120
  855. package/dist/seed/_helpers/final-sale-fixtures.d.ts +0 -35
  856. package/dist/seed/_helpers/final-sale-fixtures.js +0 -61
  857. package/dist/seed/_helpers/franchise-rows.d.ts +0 -43
  858. package/dist/seed/_helpers/franchise-rows.js +0 -189
  859. package/dist/seed/_helpers/media.d.ts +0 -67
  860. package/dist/seed/_helpers/media.js +0 -172
  861. package/dist/seed/_helpers/part-colours-generated.d.ts +0 -18
  862. package/dist/seed/_helpers/part-colours-generated.js +0 -273
  863. package/dist/seed/_helpers/product-search-txt.d.ts +0 -18
  864. package/dist/seed/_helpers/product-search-txt.js +0 -23
  865. package/dist/seed/_helpers/search-txt-wrappers.d.ts +0 -26
  866. package/dist/seed/_helpers/search-txt-wrappers.js +0 -58
  867. package/dist/seed/addresses-seed-data.d.ts +0 -2
  868. package/dist/seed/addresses-seed-data.js +0 -78
  869. package/dist/seed/authenticity-knowledge-seed-data.d.ts +0 -78
  870. package/dist/seed/authenticity-knowledge-seed-data.js +0 -10729
  871. package/dist/seed/bey-products-seed-data.d.ts +0 -18
  872. package/dist/seed/bey-products-seed-data.js +0 -18011
  873. package/dist/seed/beys/chunk0.d.ts +0 -17
  874. package/dist/seed/beys/chunk0.js +0 -36733
  875. package/dist/seed/beys/chunk1.d.ts +0 -17
  876. package/dist/seed/beys/chunk1.js +0 -35728
  877. package/dist/seed/beys/chunk2.d.ts +0 -17
  878. package/dist/seed/beys/chunk2.js +0 -35857
  879. package/dist/seed/beys/chunk3.d.ts +0 -17
  880. package/dist/seed/beys/chunk3.js +0 -34476
  881. package/dist/seed/beys-seed-data.d.ts +0 -18
  882. package/dist/seed/beys-seed-data.js +0 -11
  883. package/dist/seed/bids-seed-data.d.ts +0 -2
  884. package/dist/seed/bids-seed-data.js +0 -206
  885. package/dist/seed/blog-posts-seed-data.d.ts +0 -6
  886. package/dist/seed/blog-posts-seed-data.js +0 -442
  887. package/dist/seed/carousel-slides-seed-data.d.ts +0 -2
  888. package/dist/seed/carousel-slides-seed-data.js +0 -411
  889. package/dist/seed/carousels-seed-data.d.ts +0 -2
  890. package/dist/seed/carousels-seed-data.js +0 -36
  891. package/dist/seed/cart-seed-data.d.ts +0 -2
  892. package/dist/seed/cart-seed-data.js +0 -241
  893. package/dist/seed/catalogue-seed-data.d.ts +0 -2
  894. package/dist/seed/catalogue-seed-data.js +0 -112
  895. package/dist/seed/categories-seed-data.d.ts +0 -3
  896. package/dist/seed/categories-seed-data.js +0 -816
  897. package/dist/seed/claimed-coupons-seed-data.d.ts +0 -2
  898. package/dist/seed/claimed-coupons-seed-data.js +0 -85
  899. package/dist/seed/coupon-usage-seed-data.d.ts +0 -9
  900. package/dist/seed/coupon-usage-seed-data.js +0 -55
  901. package/dist/seed/coupons-seed-data.d.ts +0 -2
  902. package/dist/seed/coupons-seed-data.js +0 -226
  903. package/dist/seed/defaults/categories.d.ts +0 -2
  904. package/dist/seed/defaults/categories.js +0 -12
  905. package/dist/seed/defaults/faqs.d.ts +0 -2
  906. package/dist/seed/defaults/faqs.js +0 -40
  907. package/dist/seed/events-seed-data.d.ts +0 -7
  908. package/dist/seed/events-seed-data.js +0 -482
  909. package/dist/seed/factories/address.factory.d.ts +0 -21
  910. package/dist/seed/factories/address.factory.js +0 -44
  911. package/dist/seed/factories/bid.factory.d.ts +0 -15
  912. package/dist/seed/factories/bid.factory.js +0 -33
  913. package/dist/seed/factories/blog-post.factory.d.ts +0 -15
  914. package/dist/seed/factories/blog-post.factory.js +0 -22
  915. package/dist/seed/factories/carousel.factory.d.ts +0 -11
  916. package/dist/seed/factories/carousel.factory.js +0 -17
  917. package/dist/seed/factories/cart.factory.d.ts +0 -25
  918. package/dist/seed/factories/cart.factory.js +0 -35
  919. package/dist/seed/factories/category.factory.d.ts +0 -11
  920. package/dist/seed/factories/category.factory.js +0 -16
  921. package/dist/seed/factories/coupon.factory.d.ts +0 -21
  922. package/dist/seed/factories/coupon.factory.js +0 -43
  923. package/dist/seed/factories/faq.factory.d.ts +0 -10
  924. package/dist/seed/factories/faq.factory.js +0 -15
  925. package/dist/seed/factories/notification.factory.d.ts +0 -18
  926. package/dist/seed/factories/notification.factory.js +0 -39
  927. package/dist/seed/factories/order.factory.d.ts +0 -20
  928. package/dist/seed/factories/order.factory.js +0 -20
  929. package/dist/seed/factories/payout.factory.d.ts +0 -21
  930. package/dist/seed/factories/payout.factory.js +0 -38
  931. package/dist/seed/factories/product.factory.d.ts +0 -27
  932. package/dist/seed/factories/product.factory.js +0 -80
  933. package/dist/seed/factories/review.factory.d.ts +0 -14
  934. package/dist/seed/factories/review.factory.js +0 -52
  935. package/dist/seed/factories/session.factory.d.ts +0 -15
  936. package/dist/seed/factories/session.factory.js +0 -31
  937. package/dist/seed/factories/store.factory.d.ts +0 -23
  938. package/dist/seed/factories/store.factory.js +0 -47
  939. package/dist/seed/factories/user.factory.d.ts +0 -19
  940. package/dist/seed/factories/user.factory.js +0 -56
  941. package/dist/seed/faq-seed-data.d.ts +0 -18
  942. package/dist/seed/faq-seed-data.js +0 -1956
  943. package/dist/seed/firestore-indexes.d.ts +0 -12
  944. package/dist/seed/firestore-indexes.js +0 -31
  945. package/dist/seed/grouped-listings-seed-data.d.ts +0 -2
  946. package/dist/seed/grouped-listings-seed-data.js +0 -283
  947. package/dist/seed/history-seed-data.d.ts +0 -12
  948. package/dist/seed/history-seed-data.js +0 -70
  949. package/dist/seed/homepage-sections-seed-data.d.ts +0 -2
  950. package/dist/seed/homepage-sections-seed-data.js +0 -1034
  951. package/dist/seed/index.d.ts +0 -100
  952. package/dist/seed/index.js +0 -115
  953. package/dist/seed/lottery-entries-seed-data.d.ts +0 -2
  954. package/dist/seed/lottery-entries-seed-data.js +0 -108
  955. package/dist/seed/manifest.d.ts +0 -16
  956. package/dist/seed/manifest.js +0 -235
  957. package/dist/seed/media-assets-seed-data.d.ts +0 -22
  958. package/dist/seed/media-assets-seed-data.js +0 -5593
  959. package/dist/seed/model-composition-seed-data.d.ts +0 -15
  960. package/dist/seed/model-composition-seed-data.js +0 -9032
  961. package/dist/seed/notifications-seed-data.d.ts +0 -2
  962. package/dist/seed/notifications-seed-data.js +0 -606
  963. package/dist/seed/offers-seed-data.d.ts +0 -2
  964. package/dist/seed/offers-seed-data.js +0 -398
  965. package/dist/seed/orders-seed-data.d.ts +0 -2
  966. package/dist/seed/orders-seed-data.js +0 -845
  967. package/dist/seed/part-glossary/chunk0.d.ts +0 -9
  968. package/dist/seed/part-glossary/chunk0.js +0 -35448
  969. package/dist/seed/part-glossary/chunk1.d.ts +0 -9
  970. package/dist/seed/part-glossary/chunk1.js +0 -40494
  971. package/dist/seed/part-glossary/chunk2.d.ts +0 -9
  972. package/dist/seed/part-glossary/chunk2.js +0 -51242
  973. package/dist/seed/part-glossary/chunk3.d.ts +0 -9
  974. package/dist/seed/part-glossary/chunk3.js +0 -53337
  975. package/dist/seed/part-glossary/chunk4.d.ts +0 -9
  976. package/dist/seed/part-glossary/chunk4.js +0 -51454
  977. package/dist/seed/part-glossary-seed-data.d.ts +0 -15
  978. package/dist/seed/part-glossary-seed-data.js +0 -25
  979. package/dist/seed/payouts-seed-data.d.ts +0 -2
  980. package/dist/seed/payouts-seed-data.js +0 -302
  981. package/dist/seed/product-features-seed-data.d.ts +0 -3
  982. package/dist/seed/product-features-seed-data.js +0 -366
  983. package/dist/seed/products-art-seed-data.d.ts +0 -2
  984. package/dist/seed/products-art-seed-data.js +0 -289
  985. package/dist/seed/products-auctions-seed-data.d.ts +0 -2
  986. package/dist/seed/products-auctions-seed-data.js +0 -475
  987. package/dist/seed/products-beyblade-x-seed-data.d.ts +0 -2
  988. package/dist/seed/products-beyblade-x-seed-data.js +0 -476
  989. package/dist/seed/products-catalogue/chunk0.d.ts +0 -12
  990. package/dist/seed/products-catalogue/chunk0.js +0 -7262
  991. package/dist/seed/products-catalogue/chunk1.d.ts +0 -12
  992. package/dist/seed/products-catalogue/chunk1.js +0 -7290
  993. package/dist/seed/products-catalogue/chunk10.d.ts +0 -12
  994. package/dist/seed/products-catalogue/chunk10.js +0 -7290
  995. package/dist/seed/products-catalogue/chunk11.d.ts +0 -12
  996. package/dist/seed/products-catalogue/chunk11.js +0 -7005
  997. package/dist/seed/products-catalogue/chunk12.d.ts +0 -12
  998. package/dist/seed/products-catalogue/chunk12.js +0 -7002
  999. package/dist/seed/products-catalogue/chunk13.d.ts +0 -12
  1000. package/dist/seed/products-catalogue/chunk13.js +0 -7002
  1001. package/dist/seed/products-catalogue/chunk14.d.ts +0 -12
  1002. package/dist/seed/products-catalogue/chunk14.js +0 -7002
  1003. package/dist/seed/products-catalogue/chunk15.d.ts +0 -12
  1004. package/dist/seed/products-catalogue/chunk15.js +0 -7002
  1005. package/dist/seed/products-catalogue/chunk16.d.ts +0 -12
  1006. package/dist/seed/products-catalogue/chunk16.js +0 -7002
  1007. package/dist/seed/products-catalogue/chunk17.d.ts +0 -12
  1008. package/dist/seed/products-catalogue/chunk17.js +0 -7002
  1009. package/dist/seed/products-catalogue/chunk18.d.ts +0 -12
  1010. package/dist/seed/products-catalogue/chunk18.js +0 -4398
  1011. package/dist/seed/products-catalogue/chunk2.d.ts +0 -12
  1012. package/dist/seed/products-catalogue/chunk2.js +0 -7268
  1013. package/dist/seed/products-catalogue/chunk3.d.ts +0 -12
  1014. package/dist/seed/products-catalogue/chunk3.js +0 -7264
  1015. package/dist/seed/products-catalogue/chunk4.d.ts +0 -12
  1016. package/dist/seed/products-catalogue/chunk4.js +0 -7268
  1017. package/dist/seed/products-catalogue/chunk5.d.ts +0 -12
  1018. package/dist/seed/products-catalogue/chunk5.js +0 -7258
  1019. package/dist/seed/products-catalogue/chunk6.d.ts +0 -12
  1020. package/dist/seed/products-catalogue/chunk6.js +0 -7268
  1021. package/dist/seed/products-catalogue/chunk7.d.ts +0 -12
  1022. package/dist/seed/products-catalogue/chunk7.js +0 -7311
  1023. package/dist/seed/products-catalogue/chunk8.d.ts +0 -12
  1024. package/dist/seed/products-catalogue/chunk8.js +0 -7304
  1025. package/dist/seed/products-catalogue/chunk9.d.ts +0 -12
  1026. package/dist/seed/products-catalogue/chunk9.js +0 -7309
  1027. package/dist/seed/products-catalogue-seed-data.d.ts +0 -2
  1028. package/dist/seed/products-catalogue-seed-data.js +0 -60
  1029. package/dist/seed/products-classifieds-seed-data.d.ts +0 -7
  1030. package/dist/seed/products-classifieds-seed-data.js +0 -435
  1031. package/dist/seed/products-digital-codes-seed-data.d.ts +0 -7
  1032. package/dist/seed/products-digital-codes-seed-data.js +0 -395
  1033. package/dist/seed/products-live-items-seed-data.d.ts +0 -7
  1034. package/dist/seed/products-live-items-seed-data.js +0 -269
  1035. package/dist/seed/products-preorders-seed-data.d.ts +0 -2
  1036. package/dist/seed/products-preorders-seed-data.js +0 -360
  1037. package/dist/seed/products-prize-draws-seed-data.d.ts +0 -7
  1038. package/dist/seed/products-prize-draws-seed-data.js +0 -427
  1039. package/dist/seed/products-spares-seed-data.d.ts +0 -2
  1040. package/dist/seed/products-spares-seed-data.js +0 -368
  1041. package/dist/seed/products-standard-seed-data.d.ts +0 -2
  1042. package/dist/seed/products-standard-seed-data.js +0 -632
  1043. package/dist/seed/products-stickers-seed-data.d.ts +0 -2
  1044. package/dist/seed/products-stickers-seed-data.js +0 -319
  1045. package/dist/seed/reviews-seed-data.d.ts +0 -1
  1046. package/dist/seed/reviews-seed-data.js +0 -185
  1047. package/dist/seed/runner.d.ts +0 -2
  1048. package/dist/seed/runner.js +0 -125
  1049. package/dist/seed/scammers-seed-data.d.ts +0 -2
  1050. package/dist/seed/scammers-seed-data.js +0 -235
  1051. package/dist/seed/seed-market-config.d.ts +0 -48
  1052. package/dist/seed/seed-market-config.js +0 -199
  1053. package/dist/seed/seed-purpose.d.ts +0 -299
  1054. package/dist/seed/seed-purpose.js +0 -440
  1055. package/dist/seed/sessions-seed-data.d.ts +0 -3
  1056. package/dist/seed/sessions-seed-data.js +0 -116
  1057. package/dist/seed/shipments-seed-data.d.ts +0 -5
  1058. package/dist/seed/shipments-seed-data.js +0 -185
  1059. package/dist/seed/site-settings-seed-data.d.ts +0 -2
  1060. package/dist/seed/site-settings-seed-data.js +0 -1069
  1061. package/dist/seed/store-addresses-seed-data.d.ts +0 -18
  1062. package/dist/seed/store-addresses-seed-data.js +0 -71
  1063. package/dist/seed/store-extensions-seed-data.d.ts +0 -11
  1064. package/dist/seed/store-extensions-seed-data.js +0 -292
  1065. package/dist/seed/stores-seed-data.d.ts +0 -6
  1066. package/dist/seed/stores-seed-data.js +0 -242
  1067. package/dist/seed/support-tickets-seed-data.d.ts +0 -16
  1068. package/dist/seed/support-tickets-seed-data.js +0 -239
  1069. package/dist/seed/tax-codes-seed-data.d.ts +0 -34
  1070. package/dist/seed/tax-codes-seed-data.js +0 -100
  1071. package/dist/seed/test-data-ttl.d.ts +0 -29
  1072. package/dist/seed/test-data-ttl.js +0 -31
  1073. package/dist/seed/test-utils.d.ts +0 -49
  1074. package/dist/seed/test-utils.js +0 -110
  1075. package/dist/seed/types.d.ts +0 -89
  1076. package/dist/seed/types.js +0 -15
  1077. package/dist/seed/users-seed-data.d.ts +0 -2
  1078. package/dist/seed/users-seed-data.js +0 -597
  1079. package/dist/seed/wishlists-seed-data.d.ts +0 -12
  1080. package/dist/seed/wishlists-seed-data.js +0 -54
@@ -1,684 +0,0 @@
1
- /*
2
- * WHY: Authored six-part procedures for the buying/browsing-search checklist page.
3
- * WHAT: 42 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
- * @tag domain:tester
10
- * @tag layer:seed
11
- * @tag pattern:none
12
- * @tag access:server-only
13
- * @tag consumers:seed-data/authored/index.ts
14
- * @tag sideEffects:none
15
- */
16
- export const authored = {
17
- "checklist-buying-browsing-search-art-stickers-default-not-empty": {
18
- roles: ["guest"],
19
- startPage: "/art",
20
- steps: [
21
- "Open /art.",
22
- ],
23
- expectedBehaviour: "The /art page shows real Art and Sticker items on the Available tab without any filter or toggle needed. No Firestore error toast appears.",
24
- expectedUiState: "At least one product card is visible. 'No products found' is NOT shown. No toast message mentions a missing index or a Firestore error.",
25
- endResult: "Nothing is persisted.",
26
- },
27
- "checklist-buying-browsing-search-art-stickers-show-sold-adds-not-reveals": {
28
- roles: ["guest"],
29
- startPage: "/art",
30
- steps: [
31
- "Open /art.",
32
- "Count the cards visible on the 'Available' tab.",
33
- "Click the 'Sold' tab.",
34
- "Count the cards on that tab.",
35
- "Click back to the 'Available' tab.",
36
- "Click 'Filters', tick 'Stickers', click 'Apply'.",
37
- "Note the count on 'Available'.",
38
- "Click the 'Sold' tab and note the count.",
39
- ],
40
- expectedBehaviour: "The Available tab shows real items without the Sold tab being required. The Sold tab adds sold-out items on top — it is not the only place to see any results.",
41
- expectedUiState: "Available tab: shows at least one card before any tab-switching. Sold tab: shows 'Beyblade Metal Fight Sticker Sheet (Sold Out)' (sticker-beyblade-metal-fight-sold-out) and/or 'Dragoon Galaxy Turbo — Fan Art Print (Sold Out)' (art-dragoon-galaxy-turbo-print-sold-out). Total cards across both tabs is greater than on Available alone.",
42
- endResult: "Nothing is persisted.",
43
- },
44
- "checklist-buying-browsing-search-art-stickers-type-chips-narrow": {
45
- roles: ["guest"],
46
- startPage: "/art",
47
- steps: [
48
- "Open /art.",
49
- "Click 'Filters'.",
50
- "Read every checkbox under 'Listing type'.",
51
- "Tick 'Art' only and click 'Apply'.",
52
- "Click 'Filters', untick 'Art', tick 'Stickers', click 'Apply'.",
53
- "Click 'Filters', untick 'Stickers', click 'Apply'.",
54
- ],
55
- expectedBehaviour: "The Listing type section on /art shows exactly two checkboxes: Art and Stickers. Each alone narrows the grid to that type and returns at least one result. With neither ticked the grid shows both types.",
56
- expectedUiState: "Drawer: exactly two Listing type checkboxes — Art and Stickers. Art only: grid shows Art cards only, at least one card present. Stickers only: grid shows Sticker cards only, at least one card present. Neither ticked: grid shows Art and Sticker cards mixed.",
57
- endResult: "Nothing is persisted.",
58
- },
59
- "checklist-buying-browsing-search-auctions-show-ended-off-shows-live": {
60
- roles: ["guest"],
61
- startPage: "/auctions",
62
- steps: [
63
- "Open /auctions.",
64
- "Read the availability tab bar and the grid.",
65
- ],
66
- expectedBehaviour: "Live auctions appear on the Available tab, which is selected on arrival. The page is not empty. This case used to start on /products with the Auctions chip ticked; auctions now live only on their own page.",
67
- expectedUiState: "At least one live auction card is visible (e.g. 'Beyblade Burst B-100 Cho-Z Achilles' or 'Metal Fight Beyblade BB-99 Lightning L-Drago'). The middle tab reads 'Ended' and is NOT selected. The grid is not empty and no error toast appears.",
68
- endResult: "Nothing is persisted.",
69
- },
70
- "checklist-buying-browsing-search-auctions-show-ended-with-nondefault-sort": {
71
- roles: ["buyer"],
72
- startPage: "/auctions",
73
- steps: [
74
- "Sign in as a buyer.",
75
- "Open /auctions.",
76
- "Open the 'Sort by' dropdown and select 'Highest Current Bid'.",
77
- "Read the order of the current-bid figures on the cards.",
78
- ],
79
- expectedBehaviour: "Sorting by 'Highest Current Bid' on the Available tab still returns only live auctions, ordered by current bid descending, and the grid is not empty. The role is BUYER, not guest: 'Highest Current Bid' is a money sort and is not offered to signed-out visitors, because ordering by bid ranks every hidden amount on the page.",
80
- expectedUiState: "The grid shows live auction cards whose current-bid figures descend from top-left to bottom-right. No ended auction cards are visible. No 'No products found' message appears.",
81
- endResult: "Nothing is persisted.",
82
- },
83
- "checklist-buying-browsing-search-browse-categories": {
84
- roles: ["guest"],
85
- startPage: "/categories",
86
- steps: [
87
- "Open /categories.",
88
- "Click the 'Beyblade Burst' card.",
89
- ],
90
- expectedBehaviour: "The browser navigates to /categories/category-beyblade-burst and returns a listing of products in that category.",
91
- expectedUiState: "The heading reads 'Beyblade Burst'. At least one product card is visible. The breadcrumb shows 'Home / Categories / Beyblade Burst'.",
92
- endResult: "Nothing is persisted. Reloading /categories/category-beyblade-burst shows the same category listing.",
93
- },
94
- "checklist-buying-browsing-search-card-shows-seller-name": {
95
- roles: ["guest"],
96
- startPage: "/products",
97
- steps: [
98
- "Open /products in grid view.",
99
- "Scan the visible cards for the 'by …' line under each title.",
100
- "Click 'List view' in the toolbar to switch to list mode.",
101
- "Scan the same cards in list view.",
102
- "Open /auctions and scan the auction cards for a 'by …' line.",
103
- "Open /pre-orders and scan the pre-order cards.",
104
- "Open /prize-draws and scan the prize-draw cards.",
105
- ],
106
- expectedBehaviour: "Every listing card on every page carries a 'by <store name>' line. The name is a readable store name, never a raw slug.",
107
- expectedUiState: "Each card shows a line such as 'by Beyblade Arena' or 'by LetItRip Official'. No card shows a raw slug such as 'by store-beyblade-arena'.",
108
- endResult: "Nothing is persisted. The store-name line is purely display data.",
109
- },
110
- "checklist-buying-browsing-search-compare-custom-fields": {
111
- roles: ["buyer"],
112
- startPage: "/products",
113
- steps: [
114
- "Sign in as vivaan.kapoor@gmail.com.",
115
- "Open /products.",
116
- "Tick the checkbox on 'Beyblade Burst B-97 Spryzen S2 (Video Demo, Wikimedia)' (product-beyblade-burst-spryzen-video-demo).",
117
- "Tick the checkbox on 'Metal Fight Beyblade BB-118 Dark Bull (Video Demo, YouTube)' (product-beyblade-metal-dark-bull-video-demo).",
118
- "Click the 'Compare' button in the bulk-action bar.",
119
- ],
120
- expectedBehaviour: "A compare view opens that shows both items side by side. Beyond the standard rows (image, price, condition, brand, category, store), any custom spec fields defined on these products (e.g. dimensions, material, edition) appear as additional comparison rows.",
121
- expectedUiState: "The compare table has columns for each selected product. Standard rows (Price, Condition, Brand, Category, Store) are present. At least one additional custom-spec row is present — it is not limited to only those six standard fields.",
122
- endResult: "Nothing is persisted.",
123
- },
124
- "checklist-buying-browsing-search-compare-double-row-arrows": {
125
- roles: ["guest"],
126
- startPage: "/",
127
- steps: [
128
- "Open /.",
129
- "Scroll to the 'Live Auctions' section.",
130
- ],
131
- expectedBehaviour: "The scroll arrows for a double-row section span the full height of the double row.",
132
- expectedUiState: "The left arrow and right arrow on the 'Live Auctions' strip are tall slivers that run the full combined height of both rows — not small circular buttons positioned at the vertical centre.",
133
- endResult: "Nothing is persisted.",
134
- },
135
- "checklist-buying-browsing-search-default-listing-not-empty": {
136
- roles: ["guest"],
137
- startPage: "/products",
138
- steps: [
139
- "Open /products with no filters applied.",
140
- "Open /auctions with no filters applied.",
141
- "Open /pre-orders with no filters applied.",
142
- "Open /art with no filters applied.",
143
- "Open /prize-draws with no filters applied.",
144
- ],
145
- expectedBehaviour: "Every listing page returns real items without any filter or toggle being needed. No page silently returns zero results due to a broken Firestore index.",
146
- expectedUiState: "Each page shows at least one product card. None of the five pages shows 'No products found' as the default state, and no toast about a missing Firestore index appears.",
147
- endResult: "Nothing is persisted.",
148
- },
149
- "checklist-buying-browsing-search-filter-drawer-combines-correctly": {
150
- roles: ["buyer"],
151
- startPage: "/products",
152
- steps: [
153
- "Sign in as a buyer — the Price Range facet is hidden from signed-out visitors.",
154
- "Open /products.",
155
- "Note the initial result count.",
156
- "Click 'Filters'.",
157
- "Set Price Range minimum to 500 and maximum to 1500.",
158
- "Tick 'Takara-Tomy' under Brand.",
159
- "Tick 'Beyblade X' under Category.",
160
- "Tick 'New' under Condition.",
161
- "Click 'Apply'.",
162
- "Note the new result count.",
163
- "Click 'Filters' and click 'Reset all', then 'Apply'.",
164
- "Note the result count.",
165
- ],
166
- inputs: { priceMin: 500, priceMax: 1500, brand: "Takara-Tomy", category: "Beyblade X", condition: "New" },
167
- expectedBehaviour: "All four filters apply simultaneously and narrow the results. Every remaining card satisfies all four constraints. Reset all clears all filters and restores the full result count.",
168
- expectedUiState: "After Apply: count is lower than the initial count; every card shows Takara-Tomy brand, Beyblade X category, New condition, and price between ₹500 and ₹1,500. After Reset all and Apply: count matches the original initial count and mixed types/brands reappear.",
169
- endResult: "Nothing is persisted to the server.",
170
- },
171
- "checklist-buying-browsing-search-filter-drawer-facets-actually-filter": {
172
- roles: ["guest"],
173
- startPage: "/products",
174
- steps: [
175
- "Open /products.",
176
- "Note the result count.",
177
- "Click 'Filters'.",
178
- "Expand 'Features' and select one feature option if any are listed.",
179
- "Click 'Apply'.",
180
- "Note the new result count and compare to the original.",
181
- "Click 'Filters' and click 'Reset all', then 'Apply'.",
182
- "Note the result count returns to the original.",
183
- ],
184
- expectedBehaviour: "Selecting a Features value actually narrows the result set (count drops). The grid content changes to match the filter, not just the badge number.",
185
- expectedUiState: "After selecting a Feature and applying: result count is lower than original, Filters badge increments, and the grid shows only items matching that feature. After Reset all: result count returns to the original count.",
186
- endResult: "Nothing is persisted to the server.",
187
- needsReview: true,
188
- reviewNote: "The 'Tags' and 'Sublisting Type' sections described in the case label were not visible in the drawer during observation — only 'Features' was present. Steps use Features only. Revisit if Tags/Sublisting Type appear on the live site.",
189
- },
190
- "checklist-buying-browsing-search-filter-drawer-flips-hand-mode": {
191
- roles: ["buyer"],
192
- startPage: "/products",
193
- steps: [
194
- "Sign in as vivaan.kapoor@gmail.com.",
195
- "Open /user/profile and enable 'Left-hand mode' if it is not already enabled.",
196
- "Open /products.",
197
- "Click 'Filters'.",
198
- ],
199
- expectedBehaviour: "With Left-hand mode ON, the filter drawer opens from the left edge of the screen instead of the right edge.",
200
- expectedUiState: "The Filters drawer slides in from the left side of the viewport. The drawer heading 'Filters' and filter sections are anchored to the left.",
201
- endResult: "The Left-hand mode preference persists in the user's profile across sessions.",
202
- },
203
- "checklist-buying-browsing-search-filters": {
204
- roles: ["buyer"],
205
- startPage: "/products",
206
- steps: [
207
- "Sign in as a buyer — the Price Range facet is hidden from signed-out visitors.",
208
- "Open /products.",
209
- "Note the result count shown in pagination.",
210
- "Click 'Filters'.",
211
- "Under 'Price Range', set minimum to 500 and maximum to 1000.",
212
- "Under 'Brand', tick 'Takara-Tomy'.",
213
- "Under 'Condition', tick 'New'.",
214
- "Click 'Apply'.",
215
- ],
216
- expectedBehaviour: "The server re-queries with the price, brand, and condition constraints applied together. The result count drops below the original count.",
217
- expectedUiState: "Every visible card is priced between ₹500 and ₹1,000, shows the 'Takara-Tomy' brand badge, and is listed as New. The Filters button shows a badge count of 3 or more.",
218
- endResult: "Nothing is persisted on the server. Reloading the filtered URL shows the same filtered grid.",
219
- },
220
- "checklist-buying-browsing-search-free-shipping-toggle-actually-filters": {
221
- roles: ["guest"],
222
- startPage: "/products",
223
- steps: [
224
- "Open /products.",
225
- "Note the result count in the pagination bar.",
226
- "Click 'Filters'.",
227
- "Toggle 'Free shipping only' ON under the Shipping section.",
228
- "Click 'Apply'.",
229
- "Note the new result count.",
230
- "Scan the visible cards.",
231
- ],
232
- expectedBehaviour: "Turning the free shipping toggle on reduces the result count. Every remaining card genuinely offers free shipping.",
233
- expectedUiState: "The result count is lower than before the toggle. The Filters badge increments. Each visible card shows a free-shipping indicator. No card with a shipping fee is visible.",
234
- endResult: "Nothing is persisted to the server.",
235
- },
236
- "checklist-buying-browsing-search-grid-follows-sidebar-not-viewport": {
237
- roles: ["guest"],
238
- startPage: "/products",
239
- steps: [
240
- "Open /products at 1440px wide.",
241
- "Count the number of cards per row before the sidebar is open.",
242
- "Click 'Filters' to open the desktop filter sidebar.",
243
- "Count the number of cards per row while the sidebar is open.",
244
- "Close the sidebar by clicking 'Filters' again or pressing Escape.",
245
- "Count the cards per row again.",
246
- ],
247
- expectedBehaviour: "Opening the sidebar reduces the card count per row by one because the grid container narrows. Each remaining card stays approximately the same width — the grid is not recalculated against the viewport.",
248
- expectedUiState: "With sidebar open: one fewer column than without the sidebar. Card widths are visually similar before and after. Closing the sidebar restores the previous column count.",
249
- endResult: "Nothing is persisted. Layout is purely CSS.",
250
- },
251
- "checklist-buying-browsing-search-grid-one-card-per-row-on-phone": {
252
- roles: ["guest"],
253
- startPage: "/products",
254
- steps: [
255
- "Open /products.",
256
- "Resize the browser window to 375px wide.",
257
- "Count how many cards appear side-by-side in the first row.",
258
- "Resize to 768px wide and count again.",
259
- "Resize to 1024px wide and count again.",
260
- "Resize to 1440px wide and count again.",
261
- "Open /stores and repeat the same four width checks.",
262
- "Open /blog and repeat the same four width checks.",
263
- ],
264
- expectedBehaviour: "At 375px exactly one card fills the row. At 768px two cards share the row. At 1024px and 1440px three or four cards share the row. Cards always fill the available width with no gap on the right.",
265
- expectedUiState: "375px: 1 card per row, card fills the full content width. 768px: 2 cards per row. 1024px: 3 cards per row. 1440px: 3–4 cards per row. No half-width orphan cards at 375px.",
266
- endResult: "Nothing is persisted. Layout is purely CSS.",
267
- },
268
- "checklist-buying-browsing-search-grid-short-last-row-not-stretched": {
269
- roles: ["guest"],
270
- startPage: "/products",
271
- steps: [
272
- "Open /products at 1440px wide (3 cards per row at desktop).",
273
- "Click 'Filters', tick 'Standard' under Listing type, and click 'Apply'.",
274
- "If the result count is a multiple of 3, additionally tick 'Takara-Tomy' under Brand and click 'Apply' again — repeat until the last row is short (1 or 2 cards, not a full row of 3).",
275
- "Scroll to the last row of cards.",
276
- ],
277
- expectedBehaviour: "The short last row is left-aligned. The lone card is exactly the same width as the cards in the rows above it, with empty space to its right.",
278
- expectedUiState: "The last-row card(s) have the same width as full-row cards. The remaining column slots are empty whitespace — no card stretches to fill the full row width.",
279
- endResult: "Nothing is persisted. Layout is purely CSS.",
280
- },
281
- "checklist-buying-browsing-search-homepage-event-raffles-section": {
282
- roles: ["guest"],
283
- startPage: "/",
284
- steps: [
285
- "Open /.",
286
- "Scroll down looking for a 'Raffles' or 'Spin Wheels' strip.",
287
- "Read the TYPE of EVERY card in that strip — open each one if the card does not say. Write down any card that is not a raffle or a spin wheel.",
288
- "Open /events in a new tab.",
289
- "Note which events have a raffle or spin-wheel type and are currently active.",
290
- ],
291
- expectedBehaviour: "If any raffle or spin-wheel event is active on /events, the homepage shows a 'Raffles & Spin Wheels' strip containing those events AND NOTHING ELSE. The strip is absent only when genuinely no raffle or spin-wheel event is active.",
292
- expectedUiState: "The homepage shows a 'Raffles & Spin Wheels' heading with at least one event card beneath it (e.g. 'Daily Beyblade Pull! Spin for a Prize'). Every card in the strip is a raffle or a spin wheel. The same events must also appear on /events.",
293
- /*
294
- * 🛑 Step 3 — reading each card's TYPE — is the case.
295
- *
296
- * The strip filtered on `hasRaffle`, which was not in the events repository's
297
- * SIEVE_FIELDS. The Sieve adapter runs with `throwExceptions: false`, so an
298
- * unallowlisted field does not raise: the clause was SILENTLY DISCARDED and
299
- * the query degraded to `status == active` sorted by start date. The strip
300
- * rendered the six most recently-started active events of any type — sales,
301
- * polls, feedback forms — under a heading promising raffles.
302
- *
303
- * Every card was a real, live, correctly-rendered event, which is exactly
304
- * why this read as working. Only the heading was false, and the old case
305
- * asked for "at least one event card", which that satisfied.
306
- */
307
- expectedData: { nonPrizeEventsInStrip: 0 },
308
- endResult: "BEFORE: the strip listed active events of ANY type — a clearance sale and a poll appeared under 'Raffles & Spin Wheels' — because the raffle filter was being dropped before the query ran. AFTER: every card in the strip is a raffle or a spin wheel. Nothing is persisted.",
309
- },
310
- "checklist-buying-browsing-search-homepage-prize-draws-section": {
311
- roles: ["guest"],
312
- startPage: "/",
313
- steps: [
314
- "Open /.",
315
- "Scroll the full homepage from top to bottom.",
316
- ],
317
- expectedBehaviour: "Every homepage strip either renders cards or is cleanly absent. No strip is replaced by an error message while the rest of the page loads normally.",
318
- expectedUiState: "A 'Prize Draws' heading is visible with at least one prize-draw card beneath it (e.g. 'Beyblade Original Vintage Vault — Prize Draw'). No strip shows 'Something went wrong' or a blank gap where cards should be.",
319
- endResult: "Nothing is persisted.",
320
- },
321
- "checklist-buying-browsing-search-listing-no-missing-message": {
322
- roles: ["guest"],
323
- startPage: "/products",
324
- steps: [
325
- "Open browser DevTools (F12) and go to the Console tab.",
326
- "Open /products.",
327
- "Wait for the page to fully load.",
328
- "Read the console output.",
329
- ],
330
- expectedBehaviour: "No 'MISSING_MESSAGE' error is logged. All translation keys resolve to readable labels.",
331
- expectedUiState: "The Console tab shows no entry matching 'MISSING_MESSAGE: …'. Every visible label on the page is readable text, not a raw key string.",
332
- endResult: "Nothing is persisted.",
333
- },
334
- "checklist-buying-browsing-search-listing-toggles-persist-across-pagination": {
335
- roles: ["guest"],
336
- startPage: "/products",
337
- steps: [
338
- "Open /products.",
339
- "Click the 'Sold & Ended' tab.",
340
- "Click 'Page 2' in the pagination bar.",
341
- "Read the active tab and the URL.",
342
- ],
343
- expectedBehaviour: "Navigating to page 2 while the 'Sold & Ended' tab is active keeps the tab active. Page 2 shows sold and ended items, not available items.",
344
- expectedUiState: "The 'Sold & Ended' tab remains highlighted after clicking Page 2. The URL contains both the availability and page parameters. The grid on page 2 shows sold/ended items, not available ones.",
345
- endResult: "Nothing is persisted to the server. State is URL-encoded.",
346
- },
347
- "checklist-buying-browsing-search-listing-toolbar-collapsed-on-mobile": {
348
- roles: ["guest"],
349
- startPage: "/products",
350
- steps: [
351
- "Resize the browser to 375px wide.",
352
- "Open /products.",
353
- "Click the 'Show Toolbar' strip.",
354
- "Open /auctions.",
355
- "Navigate back to /products.",
356
- "Resize to 1440px wide.",
357
- "Open /products.",
358
- ],
359
- expectedBehaviour: "At 375px the toolbar opens collapsed to a single strip. Tapping it expands the full search/filter/sort toolbar. After navigating away and back the toolbar stays expanded because the user chose to expand it. At 1440px the toolbar is open by default.",
360
- expectedUiState: "375px initial: a single 'Show Toolbar' strip is visible; no search box or filter chips are visible above it. After tap: a search field, Filters button, Sort control, and view toggles are all visible. After navigating away and back: toolbar is still expanded. 1440px: toolbar is fully visible without tapping.",
361
- endResult: "The toolbar expanded/collapsed preference is preserved across navigation within the session but is not persisted to the server.",
362
- },
363
- "checklist-buying-browsing-search-listing-toolbar-forced-open-on-selection": {
364
- roles: ["seller"],
365
- startPage: "/store/products",
366
- steps: [
367
- "Resize the browser to 375px wide.",
368
- "Open /store/products (the seller's own product listing).",
369
- "Collapse the toolbar by clicking 'Hide Toolbar' if it is open.",
370
- "Tick the checkbox on one product card to select it.",
371
- ],
372
- expectedBehaviour: "Selecting a row while the toolbar is collapsed forces the toolbar to open so the bulk-action bar becomes visible.",
373
- expectedUiState: "The toolbar is visible after the checkbox is ticked. The bulk-action bar (with actions such as 'Delete' or 'Publish') is visible and not cut off.",
374
- endResult: "Nothing is persisted. The forced-open state is UI-only.",
375
- },
376
- "checklist-buying-browsing-search-pagination": {
377
- roles: ["guest"],
378
- startPage: "/products",
379
- steps: [
380
- "Open /products.",
381
- "Note the current page indicator in the pagination bar (Page 1).",
382
- "Click the 'Page 2' button in the pagination bar.",
383
- "Wait for the grid to load.",
384
- "Click the 'Next page' (›) button.",
385
- "Click the 'Previous page' (‹) button.",
386
- ],
387
- expectedBehaviour: "Each pagination action loads the correct page of results. The URL updates to reflect the page number. The grid is not empty on any valid page.",
388
- expectedUiState: "After clicking Page 2: the pagination bar highlights Page 2 and the URL contains 'page=2'. After Next: the next page loads with different cards. After Previous: the previous page loads. No page shows 'No products found' unless the total results genuinely fit on one page.",
389
- endResult: "Nothing is persisted to the server. The page parameter is URL state.",
390
- },
391
- "checklist-buying-browsing-search-every-listing-type-reachable-from-nav-or-products": {
392
- roles: ["guest"],
393
- startPage: "/products",
394
- steps: [
395
- "Open /products and read the main navigation bar.",
396
- "Click 'Auctions' in the nav and confirm at least one auction card is shown.",
397
- "Click 'Pre-Orders' in the nav and confirm at least one pre-order card is shown.",
398
- "Click 'Prize Draws' in the nav and confirm at least one prize-draw card is shown.",
399
- "Click 'Art & Stickers' in the nav and confirm at least one art or sticker card is shown.",
400
- "Return to /products, click 'Filters', tick 'Classifieds', click 'Apply', and read the grid.",
401
- "Click 'Filters', untick 'Classifieds', tick 'Digital Codes', click 'Apply', and read the grid.",
402
- "Click 'Filters', untick 'Digital Codes', tick 'Live Items', click 'Apply', and read the grid.",
403
- ],
404
- expectedBehaviour: "All nine listing types are reachable without typing a URL. Five reach their own page from the main nav; the remaining four — Standard, Classifieds, Digital Codes, Live Items — are reached through the /products Listing type filter, because they have no nav entry of their own.",
405
- expectedUiState: "Each nav click lands on the matching page with at least one real card: /auctions, /pre-orders, /prize-draws, /art. Each /products filter selection narrows the grid to that type with at least one card and no 'No products found' state — Classifieds shows 'Classified' badges, Digital Codes shows 'Digital Code' badges, Live Items shows 'Live Item' badges.",
406
- endResult: "Nothing is persisted to the server. A type that can be reached from neither the nav nor the /products filter is the regression this case exists for.",
407
- },
408
- "checklist-buying-browsing-search-product-filter-status-labels": {
409
- roles: ["admin"],
410
- startPage: "/products",
411
- steps: [
412
- "Sign in as admin@letitrip.in.",
413
- "Open /products.",
414
- "Click 'Filters'.",
415
- "Scroll to or expand the 'Status' section in the drawer.",
416
- "Read every option label under Status.",
417
- ],
418
- expectedBehaviour: "Every Status option displays a readable word — Published, Draft, In Review, or Archived — never a raw i18n key.",
419
- expectedUiState: "The Status section lists labels such as 'Published', 'Draft', 'In Review', 'Archived'. No label reads as a key like 'filters.statusInReview' or 'status.draft'.",
420
- endResult: "Nothing is persisted.",
421
- },
422
- "checklist-buying-browsing-search-product-type-chip-dedicated-page-link": {
423
- roles: ["guest"],
424
- startPage: "/products",
425
- steps: [
426
- "Open /products.",
427
- "Click 'Filters'.",
428
- "Tick only 'Classifieds' under Listing type.",
429
- "Read the contents of the drawer below the Listing type checkboxes, without pressing Apply.",
430
- "Click the 'Full Classifieds filters →' link.",
431
- "Navigate back to /products.",
432
- "Click 'Filters', untick 'Classifieds', tick only 'Digital Codes', and read for a similar link.",
433
- "Navigate back to /products.",
434
- "Click 'Filters', tick 'Classifieds' and 'Digital Codes' both, and read for a link.",
435
- "Navigate back to /products.",
436
- "Click 'Filters', untick all, and read for a link.",
437
- "Click 'Filters', tick only 'Standard', and read for a link.",
438
- ],
439
- expectedBehaviour: "When exactly one type that has its own browse page is ticked, a 'Full <type> filters →' link appears in the drawer below the Listing type section (before pressing Apply). The link navigates to that type's dedicated page, which carries facets this generic page cannot. With two types ticked or none ticked, no link appears. Standard is the exception: its 'dedicated page' IS /products, so offering a link would point the page at itself.",
440
- expectedUiState: "Classifieds only: 'Full Classifieds filters →' link is visible; clicking it lands on /classified. Digital Codes only: 'Full Digital Codes filters →' link is visible. Both ticked: no link visible. None ticked: no link visible. Standard only: NO link is visible — in particular no 'Full Products filters →' link pointing back at /products.",
441
- endResult: "Nothing is persisted to the server.",
442
- },
443
- "checklist-buying-browsing-search-product-type-chip-drives-sort-options": {
444
- roles: ["guest"],
445
- startPage: "/products",
446
- steps: [
447
- "Sign in as a buyer (price sorts are hidden from signed-out visitors).",
448
- "Open /auctions and open the 'Sort by' dropdown; read the available options.",
449
- "Open /pre-orders and open the 'Sort by' dropdown; read the available options.",
450
- "Open /products and open the 'Sort by' dropdown; read the available options.",
451
- ],
452
- expectedBehaviour: "Each listing type offers the sorts that make sense for it, and only those. An auction sorts by how soon it ends; a pre-order by when it is delivered; the general catalogue by neither, because neither field means anything for a standard product. This used to be exercised by ticking Auctions and Pre-Orders on /products; those types now live only on their own pages, so the contrast is read across pages instead.",
453
- expectedUiState: "/auctions: the Sort dropdown includes 'Ending Soon'. /pre-orders: it includes 'Earliest Delivery' and does NOT include 'Ending Soon'. /products: it includes neither 'Ending Soon' nor 'Earliest Delivery', offering generic options such as 'Newest First' and the two price sorts.",
454
- endResult: "Nothing is persisted to the server.",
455
- },
456
- "checklist-buying-browsing-search-product-type-chip-sort-resets-no-empty-page": {
457
- roles: ["guest"],
458
- startPage: "/products",
459
- steps: [
460
- "Open /products?sort=auctionEndDate:asc directly in the address bar — an auction-only sort that the general catalogue cannot satisfy.",
461
- "Read the 'Sort by' dropdown and the grid.",
462
- "Open /products?listingType=auction directly in the address bar.",
463
- "Read the URL the browser settles on and the page heading.",
464
- ],
465
- expectedBehaviour: "A sort or a listing type that /products does not offer must degrade visibly, never silently. An unsupported sort falls back to the default rather than running a query Firestore rejects, which would surface as a bare empty grid with no error. A URL naming only out-of-catalogue types redirects to the page that owns them, rather than quietly showing the whole general catalogue as though the filter had been honoured.",
466
- expectedUiState: "First URL: the Sort dropdown reads 'Newest First', the grid shows product cards, and there is no 'No products found' state and no error. Second URL: the browser lands on /auctions and the page heading reads Auctions — it does NOT stay on /products showing unfiltered results.",
467
- endResult: "Nothing is persisted to the server.",
468
- },
469
- "checklist-buying-browsing-search-product-type-chips-cover-all-types": {
470
- roles: ["guest"],
471
- startPage: "/products",
472
- steps: [
473
- "Open /products.",
474
- "Click 'Filters'.",
475
- "Count every checkbox under the 'Listing type' heading.",
476
- "Read each checkbox label.",
477
- ],
478
- expectedBehaviour: "Exactly four listing-type checkboxes are present: Standard, Classifieds, Digital Codes, Live Items. Those are the four types with no dedicated entry in the main nav, so /products is their only discovery path. Auctions, Pre-Orders, Prize Draws, Art and Stickers are NOT offered here — each owns a dedicated page reachable from the main nav. No checkbox labelled 'Bundles' is present; a bundle is a category, not a listing type.",
479
- expectedUiState: "BEFORE: nine checkboxes, including Auctions, Pre-Orders, Prize Draws, Art and Stickers. AFTER: the Listing type section shows exactly four — Standard, Classifieds, Digital Codes, Live Items. No 'Auctions', 'Pre-Orders', 'Prize Draws', 'Art', 'Stickers' or 'Bundles' checkbox is present.",
480
- endResult: "Nothing is persisted.",
481
- },
482
- "checklist-buying-browsing-search-product-type-chips-multi-select": {
483
- roles: ["guest"],
484
- startPage: "/products",
485
- steps: [
486
- "Open /products.",
487
- "Click 'Filters'.",
488
- "Tick 'Classifieds'.",
489
- "Tick 'Digital Codes' without unticking 'Classifieds'.",
490
- "Click 'Apply'.",
491
- "Click 'Filters' again to reopen the drawer.",
492
- "Read which boxes are ticked.",
493
- "Click 'Close'.",
494
- "Untick both 'Classifieds' and 'Digital Codes' in the drawer.",
495
- "Click 'Apply'.",
496
- ],
497
- expectedBehaviour: "Both checkboxes remain ticked after Apply. The grid shows a mix of Classified and Digital Code cards. After unticking both and applying, the grid returns to showing every type the general catalogue spans.",
498
- expectedUiState: "After first Apply: the Filters badge count is 2; the grid shows cards labelled 'Classified' and 'Digital Code'. Reopening drawer: both Classifieds and Digital Codes are ticked. After second Apply with none ticked: badge count returns to 0 and cards of multiple types reappear.",
499
- endResult: "Nothing is persisted to the server. Filter state is URL state.",
500
- },
501
- "checklist-buying-browsing-search-product-type-chips-none-means-all": {
502
- roles: ["guest"],
503
- startPage: "/products",
504
- steps: [
505
- "Open /products.",
506
- "Click 'Filters' and confirm no 'Listing type' boxes are ticked.",
507
- "Click 'Close'.",
508
- "Scan the badges on the first page of cards.",
509
- ],
510
- expectedBehaviour: "With no Listing type filter applied the grid shows every type the GENERAL CATALOGUE spans — not every type in the system. At least two different type badges are visible on the first page, and none of them is a type that owns a dedicated nav page.",
511
- expectedUiState: "At least two different type badges are visible on page 1, drawn only from Classified / Digital Code / Live Item / no-badge (Standard) — for example a 'Classified' card alongside a 'Digital Code' card. NO 'Auction', 'Pre-Order', 'Prize Draw', 'Art Print' or 'Sticker Sheet' badge appears.",
512
- endResult: "Nothing is persisted.",
513
- },
514
- "checklist-buying-browsing-search-product-type-filter-counts-in-badge": {
515
- roles: ["guest"],
516
- startPage: "/products",
517
- steps: [
518
- "Open /products.",
519
- "Click 'Filters'.",
520
- "Tick 'Classifieds'.",
521
- "Click 'Apply'.",
522
- "Note the new number on the Filters badge.",
523
- "Click 'Filters' again.",
524
- "Click 'Reset all'.",
525
- "Click 'Apply'.",
526
- "Note the Filters badge number and the grid content.",
527
- ],
528
- expectedBehaviour: "Ticking one Listing type box and pressing Apply increases the Filters badge by 1. 'Reset all' unticks every type box and restores the badge to 0, and the grid repopulates with every type the general catalogue spans.",
529
- expectedUiState: "After ticking Classifieds and applying: badge shows 1 (or higher if defaults add to it). After Reset all and Apply: badge shows 0 and the grid contains mixed listing types.",
530
- endResult: "Nothing is persisted to the server.",
531
- },
532
- "checklist-buying-browsing-search-product-type-filter-lives-in-drawer": {
533
- roles: ["guest"],
534
- startPage: "/products",
535
- steps: [
536
- "Open /products.",
537
- "Scan the area between the availability tabs and the product grid for any row of pill chips labelled Standard, Auctions, Pre-Orders, etc.",
538
- "Click 'Filters' to open the drawer.",
539
- "Scroll to the top of the drawer and look for a 'Listing type' section.",
540
- ],
541
- expectedBehaviour: "No TYPE chip row exists between the tabs and the grid. The listing-type filter is exclusively inside the Filters drawer, under a 'Listing type' heading.",
542
- expectedUiState: "The area between the 'Available / Sold & Ended / All' tabs and the product grid contains no pill chips for listing type. Inside the Filters drawer a 'Listing type' section appears at the top with checkboxes.",
543
- endResult: "Nothing is persisted.",
544
- },
545
- "checklist-buying-browsing-search-product-type-pending-until-apply": {
546
- roles: ["guest"],
547
- startPage: "/products",
548
- steps: [
549
- "Open /products with no filters applied.",
550
- "Note the types of cards visible in the grid.",
551
- "Click 'Filters'.",
552
- "Tick 'Classifieds' and watch the grid behind the open drawer.",
553
- "Click 'Apply'.",
554
- "Note the grid now.",
555
- "Click 'Filters' again.",
556
- "Tick 'Live Items'.",
557
- "Click the X (Close) button on the drawer — do not click Apply.",
558
- "Click 'Filters' again to reopen and read which boxes are ticked.",
559
- ],
560
- expectedBehaviour: "Ticking a box does not change the grid until Apply is pressed. Closing with X discards pending changes — the grid and the ticked state both revert to what was applied before.",
561
- expectedUiState: "While drawer is open with Classifieds ticked: grid behind the drawer still shows mixed types. After Apply: grid shows only Classified cards. After ticking Live Items and closing with X: grid still shows only Classified cards (Live Items was discarded). Reopening drawer: only Classifieds is ticked; Live Items is unticked.",
562
- endResult: "Nothing is persisted to the server.",
563
- },
564
- "checklist-buying-browsing-search-product-type-selection-survives-reload": {
565
- roles: ["guest"],
566
- startPage: "/products",
567
- steps: [
568
- "Open /products.",
569
- "Click 'Filters', tick 'Classifieds' and 'Live Items', click 'Apply'.",
570
- "Copy the current URL from the address bar.",
571
- "Open the copied URL in a new browser tab.",
572
- "Click 'Filters' in the new tab and read which boxes are ticked.",
573
- "Close the new tab.",
574
- "Press the browser Back button in the original tab.",
575
- "Click 'Filters' in the original tab and read which boxes are ticked.",
576
- ],
577
- expectedBehaviour: "The applied listing types are encoded in the URL. Opening the URL in a new tab shows the same filtered grid with Classifieds and Live Items ticked. Pressing Back restores the previous selection.",
578
- expectedUiState: "New tab: grid shows Classified and Live Item cards; Filters drawer shows Classifieds and Live Items ticked. After Back: the previous filter state (before the Classifieds + Live Items selection) is restored.",
579
- endResult: "Nothing is persisted to the server. Filter state is URL state.",
580
- },
581
- "checklist-buying-browsing-search-product-type-toggles-follow-selection": {
582
- roles: ["guest"],
583
- startPage: "/products",
584
- steps: [
585
- "Open /products and read the label of the middle availability tab above the grid.",
586
- "Click that middle tab and read the cards.",
587
- "Open /auctions and read the label of its middle availability tab.",
588
- "Click that middle tab and read the cards.",
589
- "Open /prize-draws and read the label of its middle availability tab.",
590
- ],
591
- expectedBehaviour: "The middle availability tab is named for how that listing type stops being available: a product runs out, an auction ends, a prize draw closes. This used to be read by ticking Auctions on /products; auctions now live only on their own page, so the three wordings are read across the three pages.",
592
- expectedUiState: "/products: the middle tab reads 'Sold'; clicking it shows sold-out product cards. /auctions: it reads 'Ended'; clicking it shows ended auction cards. /prize-draws: it reads 'Closed'. In all three the first tab is 'Available' and is selected on arrival.",
593
- endResult: "Nothing is persisted to the server.",
594
- },
595
- "checklist-buying-browsing-search-search": {
596
- roles: ["guest"],
597
- startPage: "/products",
598
- steps: [
599
- "Open /products and read the total result count.",
600
- "Type 'Valkyrie' into the 'Search products...' field.",
601
- "Click the 'Search' button.",
602
- "Read the result count and every card title.",
603
- "Clear the field, type 'zzzznope', and click 'Search'.",
604
- "Read the result count.",
605
- ],
606
- inputs: { matchingQuery: "Valkyrie", nonsenseQuery: "zzzznope" },
607
- expectedBehaviour: "The grid narrows to titles and descriptions matching the term. The nonsense query is the control that proves it is narrowing at all — a search that silently returns everything looks exactly like a working search when the term happens to match most of a small catalogue.",
608
- expectedUiState: "'Valkyrie' returns a smaller count than the unfiltered grid, and every card shown contains the word — 'Beyblade Burst B-01 Valkyrie' and 'Beyblade Burst Valtryek V3 (Sold Out)' style matches. 'zzzznope' returns zero results and an empty state, NOT the full catalogue.",
609
- expectedData: { nonsenseResultCount: 0 },
610
- endResult: "Nothing persists; the query lives in the URL, so reloading reproduces the same filtered grid.",
611
- },
612
- "checklist-buying-browsing-search-search-filter-sort-combo": {
613
- roles: ["guest"],
614
- startPage: "/products",
615
- steps: [
616
- "Open /products.",
617
- "Type 'Beyblade' in the search field and click 'Search'.",
618
- "Click 'Filters', tick 'Classifieds', click 'Apply'.",
619
- "Open the 'Sort by' dropdown and select 'Name: A–Z'.",
620
- "Read the URL.",
621
- "Click 'Page 2' in the pagination bar if available.",
622
- "Read the URL and note the result count.",
623
- ],
624
- inputs: { query: "Beyblade", listingType: "Classifieds", sort: "Name: A–Z" },
625
- expectedBehaviour: "All three — search query, listing type filter, and sort — stay applied together. Pagination reflects the combined narrowed result count, not the unfiltered total. The sort used here is deliberately a non-money one: price sorts are not offered to signed-out visitors.",
626
- expectedUiState: "The URL contains the search term, the listing-type parameter, and the sort parameter together. The grid shows only Classified cards whose title includes 'Beyblade', ordered A–Z by title. Page 2 (if navigated) continues this filtered/sorted set, not the unfiltered set.",
627
- endResult: "Nothing is persisted to the server. State is URL-encoded.",
628
- },
629
- "checklist-buying-browsing-search-show-sold-toggle-reveals-items": {
630
- roles: ["guest"],
631
- startPage: "/products",
632
- steps: [
633
- "Open /products.",
634
- "Click the 'Sold & Ended' tab.",
635
- "Scan the grid for 'Beyblade X BX-34 Dran Buster (Sold Out)' (product-beyblade-x-dran-buster-sold-out).",
636
- "Click the 'Available' tab.",
637
- "Open /auctions.",
638
- "Click the 'Ended' tab.",
639
- "Scan the grid for 'Beyblade Burst B-128 Spriggan Requiem (Ended — Bought Out)' (auction-beyblade-burst-spriggan-requiem-bought-out).",
640
- /*
641
- * 🛑 'Available', not 'Live' — and on the next page 'Ended', not 'Closed'.
642
- *
643
- * `availabilityTabsFor` builds exactly three tabs and only the MIDDLE one
644
- * varies: its label comes from HIDE_DEFAULT_NOUN, which maps every
645
- * hideDefault onto "Sold" or "Ended" and nothing else. Prize-draw's
646
- * `hideDefault: "closed"` maps to "Ended", so /prize-draws reads
647
- * Available / Ended / All.
648
- *
649
- * The first tab is ALWAYS 'Available'. This case named it 'Live' on
650
- * /auctions and 'Open' on /prize-draws, and called the prize-draw middle
651
- * tab 'Closed' — three controls that render under different names, so the
652
- * tester would hunt, fail to find them, and answer "could not test" on a
653
- * feature that works.
654
- */
655
- "Click the 'Available' tab.",
656
- "Open /prize-draws.",
657
- "Click the 'Ended' tab.",
658
- "Scan the grid for 'Metal Fight Mystery Draw — Ended (Revealed)' (prizedraw-beyblade-metal-closed-revealed).",
659
- "Click the 'Available' tab.",
660
- ],
661
- expectedBehaviour: "The 'Available' tab hides sold-out, ended and closed items on every listing page; the middle tab reveals them. Only the middle label varies by listing type — 'Sold & Ended' on /products, 'Ended' on /auctions and on /prize-draws.",
662
- expectedUiState: "'Beyblade X BX-34 Dran Buster (Sold Out)' appears on the 'Sold & Ended' tab and is absent on 'Available'. 'Beyblade Burst B-128 Spriggan Requiem (Ended — Bought Out)' appears on /auctions' 'Ended' tab and is absent on 'Available'. 'Metal Fight Mystery Draw — Ended (Revealed)' appears on /prize-draws' 'Ended' tab and is absent on 'Available'. No page offers a tab labelled 'Live', 'Open' or 'Closed'.",
663
- endResult: "Nothing is persisted. Tab state is URL state only.",
664
- },
665
- "checklist-buying-browsing-search-sort-options-per-listing-type": {
666
- roles: ["buyer"],
667
- startPage: "/products",
668
- steps: [
669
- "Sign in as a buyer — price sorts are not offered to signed-out visitors.",
670
- "Open /products with no type filter.",
671
- "Open the 'Sort by' dropdown and select 'Price low to high'.",
672
- "Note the order of cards (cheapest first).",
673
- "Open the 'Sort by' dropdown and select 'Price high to low'.",
674
- "Note the order of cards (most expensive first).",
675
- "Open /auctions, open Sort and select 'Ending Soon'.",
676
- "Note the order of auction cards.",
677
- "Open /pre-orders, open Sort and select 'Earliest Delivery'.",
678
- "Note the order of pre-order cards.",
679
- ],
680
- expectedBehaviour: "Each sort option genuinely reorders the visible results. Price sorts change the order by price. Ending Soon reorders auctions by end date. Earliest Delivery reorders pre-orders by delivery date. The auction and pre-order legs run on their own pages, because those types are no longer selectable on /products.",
681
- expectedUiState: "Price low to high: cheapest card first (e.g. ₹149 before ₹1,299). Price high to low: most expensive first. Ending Soon on /auctions: auctions with soonest end date appear first. Earliest Delivery on /pre-orders: pre-orders with earliest expected delivery appear first.",
682
- endResult: "Nothing is persisted.",
683
- },
684
- };