@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,1034 +0,0 @@
1
- /*
2
- * WHY: Seeds the homepage layout β€” which sections render, in what order, with what copy.
3
- * WHAT: 26 sections (21 enabled + 5 deliberately disabled), ordered 1..26 contiguously.
4
- *
5
- * πŸ›‘ Four of those five were disabled on 2026-10-20 β€” auctions (3),
6
- * featured-bundles (9), event-raffles (13) and prize-draws (14) β€” each with its
7
- * own note on the switch that did it. A disabled row KEEPS its order slot, so
8
- * the range stays contiguous and re-enabling one puts it back where it was
9
- * rather than at the end.
10
- * `google-reviews` is a REGISTERED type with no document β€” see the note
11
- * beside the deliberate budget-tile omission below for why.
12
- *
13
- * `how-it-works` (25) and `promo-grid` (26) were in that same unseeded set and
14
- * were SEEDED 2026-10-20, on the terms the rule always allowed: there is now
15
- * real copy for them. How-it-works quotes the three-tier authenticity policy
16
- * the carousel already leads with; promo-grid routes to the four generation
17
- * categories using the same `/media/` covers those categories use. Neither
18
- * invents a claim. `testimonials` stays unseeded β€” the site has never had a
19
- * customer, so every quote would be fabricated.
20
- *
21
- * πŸ›‘ That count and range are ASSERTED, not described β€” `order` must stay unique
22
- * and contiguous. Until 2026-10-19 this header read "22 sections … 1..21" while
23
- * the file held 23 documents numbered 1..22, and `section-systems-matrix` and
24
- * `section-featured-products` BOTH claimed `order: 5`. `MarketplaceHomepageView`
25
- * tie-breaks on `updatedAt` (identical for both) and then `id.localeCompare`, so
26
- * the live running order of the homepage was decided alphabetically β€” a silent
27
- * accident, not a layout decision. The 24th document (`collection-cards`,
28
- * added the same day) closed the other half of that finding: a registered
29
- * section type with a renderer and zero seeded rows is the same class of gap,
30
- * just silent rather than colliding.
31
- *
32
- * ORDER: hero β†’ SHOP (products, auctions, pre-orders) β†’ carousel β†’ trust β†’
33
- * orient (categories, systems matrix) β†’ shop cont. (bundles) β†’ supply
34
- * (stores) β†’ social proof (reviews) β†’ engage (events, raffles, prize draws) β†’
35
- * editorial (blog) β†’ convert (seller banner, newsletter) β†’ reassure (stats,
36
- * security, community, FAQ, brands).
37
- *
38
- * πŸ›‘ Products (2), auctions (3) and pre-orders (4) were lifted above the
39
- * carousel on 2026-10-20 at the owner's request β€” real merchandise directly
40
- * under the hero, promotions below it. That OVERRIDES the research arrangement
41
- * this header used to describe (trust β†’ orient β†’ shop), so do not "restore"
42
- * the old order on the strength of the paragraphs below; they explain the
43
- * reasoning for the sections that are still in a research-driven position,
44
- * not a mandate for the three that were deliberately moved. Pre-orders came
45
- * up from 8 in a second pass, which is why the carousel/trust/categories/
46
- * matrix block reads 5 β†’ 8 rather than 4 β†’ 7.
47
- *
48
- * The systems matrix still sits immediately after the generation tiles (7 β†’ 8)
49
- * because that is where the measured leader puts it: on worldhobbyshop
50
- * "Browse Beyblade Systems & Series" (25 text links) follows "Shop Beyblades
51
- * by Generation" (6 image tiles) β€” taxonomy routing stays together. See
52
- * docs/research/competitor-crawl-2026-10/layout.md.
53
- *
54
- * Baymard's finding still drives the hero: a static hero outperforms a
55
- * carousel, and the one documented carousel win came from demoting it BELOW a
56
- * static hero. So `welcome` is first and owns the page's single <h1>; the
57
- * `carousel` is now demoted further still, under the first three product
58
- * rails, and its slide titles render as <h2>.
59
- *
60
- * COPY IS CATALOGUE-NEUTRAL on purpose. "Shop by Category" stays correct
61
- * however the catalogue changes; "Burst & X Series" goes stale the moment it
62
- * broadens. Two brand-filtered Beyblade product strips were removed for this
63
- * reason β€” and because they filtered the shared 12-item featured set
64
- * client-side, so they usually rendered empty anyway.
65
- *
66
- * πŸ›‘ Every field set here is one the renderer actually READS. Before this pass
67
- * the seed configured banner buttons, trust indicators, a features list, blog
68
- * display flags and the entire carousel config, none of which
69
- * `lib/section-renderer.tsx` forwarded. If you add a field, confirm it reaches
70
- * a component prop β€” see the config-coverage check in the plan.
71
- *
72
- * EXPORTS:
73
- * homepageSectionsSeedData β€” Array of Partial<HomepageSectionDocument> for seed runner
74
- *
75
- * @tag domain:homepage
76
- * @tag layer:seed
77
- * @tag pattern:none
78
- * @tag access:server-only
79
- * @tag consumers:seed/index.ts,seed/runner.ts
80
- * @tag sideEffects:none
81
- */
82
- import { ROUTES } from "../next/routing/route-map.js";
83
- const NOW = new Date();
84
- const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
85
- export const homepageSectionsSeedData = [
86
- // ---- 1. Hero -------------------------------------------------------------
87
- // Owns the page's single <h1>. Keep it enabled: disabling it while the
88
- // carousel stays on leaves the document with NO h1 at all.
89
- {
90
- id: "section-welcome-hero",
91
- type: "welcome",
92
- order: 1,
93
- enabled: true,
94
- config: {
95
- /*
96
- * πŸ›‘ NO AUCTIONS IN THE HERO, and nothing else that the site does not
97
- * currently do.
98
- *
99
- * The h1 read "Buy, Sell & Auction Collectibles" and the second CTA sent
100
- * visitors to /auctions β€” which `listings.listingTypes.auction: false`
101
- * now switches off (2026-10-20). The first screen of the site is the
102
- * worst place to advertise a type whose browse page returns nothing.
103
- *
104
- * The description lost "bid in live auctions" for the same reason, and
105
- * "escrow-backed payments" because that claim was withdrawn from the
106
- * seller guide and the Become-a-Seller copy on the same day.
107
- *
108
- * ⚠️ This is SEED data. The live hero is a `homepageSections` document and
109
- * is NOT rewritten by editing this file β€” change it in the admin
110
- * homepage-sections editor, or re-seed.
111
- */
112
- h1: "Buy & Sell Collectibles",
113
- subtitle: "Verified sellers, secure payments, and authenticity checks on every listing.",
114
- description: "A marketplace built for collectors β€” browse thousands of listings, reserve upcoming releases, and buy with secure, verified payments.",
115
- showCTA: true,
116
- pillLabel: "Buy, sell & collect",
117
- ctaText: "Start Shopping",
118
- ctaLink: String(ROUTES.PUBLIC.PRODUCTS),
119
- secondaryCtaText: "Explore Categories",
120
- secondaryCtaLink: String(ROUTES.PUBLIC.CATEGORIES),
121
- },
122
- createdAt: daysAgo(90),
123
- updatedAt: daysAgo(2),
124
- },
125
- // ---- 5. Promo carousel ---------------------------------------------------
126
- // "medium" rather than "tall": it now sits UNDER a full hero, so a
127
- // viewport-height band would push everything else below the fold.
128
- {
129
- id: "section-hero-carousel",
130
- type: "carousel",
131
- order: 5,
132
- enabled: true,
133
- config: {
134
- title: "Featured promotions",
135
- height: "medium",
136
- defaultAutoplayDelayMs: 6000,
137
- pauseOnHover: true,
138
- showDots: true,
139
- showArrows: true,
140
- },
141
- createdAt: daysAgo(90),
142
- updatedAt: daysAgo(5),
143
- },
144
- // ---- 6. Trust bar --------------------------------------------------------
145
- // Research: ~80% of attention is above the fold and the first 3–4 trust
146
- // elements carry nearly all of the lift.
147
- {
148
- id: "section-trust-indicators",
149
- type: "trust-indicators",
150
- order: 6,
151
- enabled: true,
152
- config: {
153
- title: "Why buyers trust us",
154
- indicators: [
155
- {
156
- id: "trust-authenticity",
157
- icon: "shield-check",
158
- title: "Authenticity checked",
159
- description: "Every seller is verified before their first listing goes live.",
160
- },
161
- {
162
- // Was "Escrow-backed payments". The escrow claim was withdrawn from
163
- // the seller guide, the Become-a-Seller copy and the hero description
164
- // on 2026-10-20; a trust badge is the last place it should have
165
- // survived, because it is the claim a buyer is most likely to rely
166
- // on. The `id` is deliberately unchanged β€” it is this seed document's
167
- // identity, not its copy.
168
- id: "trust-escrow",
169
- icon: "lock",
170
- title: "Secure payments",
171
- description: "Your money reaches the seller after the item is delivered and accepted.",
172
- },
173
- {
174
- id: "trust-returns",
175
- icon: "rotate-ccw",
176
- title: "Straightforward returns",
177
- description: "Report a problem within the return window and we step in.",
178
- },
179
- {
180
- id: "trust-support",
181
- icon: "message-circle",
182
- title: "Real human support",
183
- description: "Questions about an order reach a person, not a form.",
184
- },
185
- ],
186
- },
187
- createdAt: daysAgo(90),
188
- updatedAt: daysAgo(20),
189
- },
190
- // ---- 7. Orient: categories ----------------------------------------------
191
- // Baymard's top homepage guideline, and the main internal-linking surface.
192
- {
193
- id: "section-collectibles-categories",
194
- type: "categories",
195
- order: 7,
196
- enabled: true,
197
- config: {
198
- title: "Shop by Category",
199
- /*
200
- * 6, from the `categories-generation-tiles` SECTION_TEMPLATE β€” and 6 is a
201
- * measured number, not a round one: worldhobbyshop's "Shop Beyblades by
202
- * Generation" is exactly six tiles (Beyblade X, Burst, Metal, Plastic
203
- * Generation, Launchers & Grips, Stadiums & Arenas), 3 columns at 1280 and
204
- * 1 at 390. See docs/research/competitor-crawl-2026-10/layout.md.
205
- */
206
- maxCategories: 6,
207
- viewMoreLabel: "All categories β†’",
208
- autoScroll: false,
209
- scrollInterval: 5000,
210
- loop: true,
211
- },
212
- createdAt: daysAgo(90),
213
- updatedAt: daysAgo(10),
214
- },
215
- // ---- 2–4, 9. Shop --------------------------------------------------------
216
- // Products (2), auctions (3) and pre-orders (4) sit directly under the hero,
217
- // ABOVE the carousel β€” a merchandising-first top of page, asked for
218
- // 2026-10-20. Bundles (9) stay below the orientation band.
219
- //
220
- // maxItems stays <= 12 everywhere: SSR supplies exactly 12 via
221
- // getFeatured*(12), so a larger cap would promise rows that cannot fill.
222
- {
223
- id: "section-featured-products",
224
- type: "products",
225
- order: 2,
226
- enabled: true,
227
- config: {
228
- title: "Featured Products",
229
- subtitle: "Hand-picked listings from verified sellers.",
230
- /*
231
- * 8, from the `products-recently-added` SECTION_TEMPLATE, which took it
232
- * from worldhobbyshop's one product rail β€” measured 2026-10-19 at exactly
233
- * 8 cards, 4 columns (docs/research/competitor-crawl-2026-10/layout.md).
234
- * The SEO leader ships the fewest products on its homepage; its advantage
235
- * is taxonomy routing, not merchandising volume.
236
- *
237
- * Safe against the `<= 12` rule above: SSR still supplies 12 via
238
- * getFeatured*(12) and this renders 8 of them, so it can never under-fill.
239
- * The 4-row over-fetch is deliberate β€” `getFeaturedProducts(12)` is shared
240
- * with the auctions and pre-orders rails, so narrowing it to match would
241
- * couple three sections' counts to one fetch.
242
- */
243
- maxItems: 8,
244
- viewMoreLabel: "View all products β†’",
245
- rows: 1,
246
- autoScroll: false,
247
- scrollInterval: 5000,
248
- loop: true,
249
- },
250
- createdAt: daysAgo(90),
251
- updatedAt: daysAgo(1),
252
- },
253
- /*
254
- * πŸ›‘ DISABLED, NOT DELETED β€” and the `order: 3` slot is held.
255
- *
256
- * `listings.listingTypes.auction: false` already stops this rail rendering
257
- * (HOMEPAGE_SECTION_LISTING_TYPE in MarketplaceHomepageView), so `enabled:
258
- * false` is the second of two locks, not the only one. It is worth having
259
- * because it is the one an ADMIN sees: a section listed as enabled in the
260
- * homepage builder, silently filtered out at render, reads as a bug in the
261
- * builder. Both switches say the same thing now.
262
- *
263
- * The copy and the "⚑ LIVE AUCTIONS" pill stay exactly as they were, so
264
- * re-enabling the type and this flag restores the rail intact.
265
- */
266
- {
267
- id: "section-live-auctions",
268
- type: "auctions",
269
- order: 3,
270
- enabled: false,
271
- config: {
272
- title: "Live Auctions",
273
- subtitle: "Bidding open now β€” place yours before the timer runs out.",
274
- maxAuctions: 12,
275
- viewMoreLabel: "View all auctions β†’",
276
- rows: 1,
277
- autoScroll: false,
278
- scrollInterval: 5000,
279
- loop: true,
280
- },
281
- createdAt: daysAgo(90),
282
- updatedAt: daysAgo(1),
283
- },
284
- {
285
- id: "section-pre-orders",
286
- type: "pre-orders",
287
- order: 4,
288
- enabled: true,
289
- config: {
290
- title: "Reserve Before It Ships",
291
- subtitle: "Lock in upcoming releases with a deposit.",
292
- maxItems: 12,
293
- viewMoreLabel: "View all pre-orders β†’",
294
- rows: 1,
295
- autoScroll: false,
296
- scrollInterval: 5000,
297
- loop: true,
298
- },
299
- createdAt: daysAgo(90),
300
- updatedAt: daysAgo(3),
301
- },
302
- // Disabled 2026-10-20 with `listings.categoryTypes.bundle: false`. Same
303
- // two-lock arrangement as the auctions rail above β€” see that note.
304
- {
305
- id: "section-featured-bundles",
306
- type: "featured-bundles",
307
- order: 9,
308
- enabled: false,
309
- config: {
310
- title: "Curated Bundles",
311
- subtitle: "Multiple items, one discounted price.",
312
- maxItems: 8,
313
- showSavingsBadge: true,
314
- viewMoreLabel: "View all bundles β†’",
315
- },
316
- createdAt: daysAgo(60),
317
- updatedAt: daysAgo(4),
318
- },
319
- // ---- 9. Supply side ------------------------------------------------------
320
- {
321
- id: "section-featured-stores",
322
- type: "stores",
323
- order: 10,
324
- enabled: true,
325
- config: {
326
- title: "Featured Stores",
327
- subtitle: "Sellers with a track record collectors rate highly.",
328
- maxStores: 8,
329
- viewMoreLabel: "View all stores β†’",
330
- autoScroll: false,
331
- scrollInterval: 6000,
332
- loop: true,
333
- },
334
- createdAt: daysAgo(90),
335
- updatedAt: daysAgo(8),
336
- },
337
- // ---- 10. Social proof ----------------------------------------------------
338
- {
339
- id: "section-collector-reviews",
340
- type: "reviews",
341
- order: 11,
342
- enabled: true,
343
- config: {
344
- title: "What Buyers Say",
345
- maxReviews: 12,
346
- itemsPerView: 3,
347
- mobileItemsPerView: 1,
348
- viewMoreLabel: "See all reviews β†’",
349
- autoScroll: true,
350
- scrollInterval: 5000,
351
- loop: true,
352
- },
353
- createdAt: daysAgo(90),
354
- updatedAt: daysAgo(6),
355
- },
356
- // ---- 11–13. Engage -------------------------------------------------------
357
- {
358
- id: "section-upcoming-events",
359
- type: "events",
360
- order: 12,
361
- enabled: true,
362
- config: {
363
- title: "Events & Offers",
364
- subtitle: "Sales, giveaways and community events running now.",
365
- maxEvents: 6,
366
- viewMoreLabel: "View all events β†’",
367
- autoScroll: false,
368
- scrollInterval: 6000,
369
- loop: true,
370
- },
371
- createdAt: daysAgo(90),
372
- updatedAt: daysAgo(7),
373
- },
374
- {
375
- id: "section-event-raffles",
376
- type: "event-raffles",
377
- /*
378
- * πŸ›‘ DISABLED, and here `enabled: false` is the ONLY lock there is.
379
- *
380
- * Raffles and spin wheels are EVENT types, not listing types and not
381
- * category types, so no Site Settings toggle reaches them and
382
- * `HOMEPAGE_SECTION_LISTING_TYPE` has nothing to map them to. The same gap
383
- * put Lotteries, Bundles and Promotions in the footer's hand-written hidden
384
- * block (src/constants/navigation.tsx) β€” a per-document flag is the whole
385
- * mechanism for this one, which is exactly why it is spelled out.
386
- */
387
- order: 13,
388
- enabled: false,
389
- config: {
390
- title: "Raffles & Spin Wheels",
391
- subtitle: "Enter for free and see if the odds are with you.",
392
- maxItems: 6,
393
- raffleType: "all",
394
- showEntryCount: true,
395
- showCountdown: true,
396
- },
397
- createdAt: daysAgo(30),
398
- updatedAt: daysAgo(3),
399
- },
400
- {
401
- id: "section-prize-draws",
402
- type: "prize-draws",
403
- // Disabled 2026-10-20 with `listings.listingTypes.prize-draw: false` β€” the
404
- // same two-lock arrangement as the auctions rail.
405
- order: 14,
406
- enabled: false,
407
- config: {
408
- title: "Prize Draws",
409
- subtitle: "Buy an entry for a shot at something rare.",
410
- maxItems: 6,
411
- // "open" is deliberate β€” a closed draw is not enterable, so surfacing it
412
- // on the homepage would be an invitation to a dead end.
413
- revealStatus: "open",
414
- showCountdown: true,
415
- showEntriesRemaining: true,
416
- },
417
- createdAt: daysAgo(45),
418
- updatedAt: daysAgo(3),
419
- },
420
- // ---- 14. Editorial -------------------------------------------------------
421
- {
422
- id: "section-collector-blog",
423
- type: "blog-articles",
424
- order: 15,
425
- enabled: true,
426
- config: {
427
- title: "From Our Blog",
428
- // 4, from the `blog-four-excerpts` SECTION_TEMPLATE (beybladeartshop ships
429
- // four article excerpts). Safe against the SSR fetch, which supplies 6 via
430
- // getFeaturedBlogPosts(6) β€” this renders 4 of them.
431
- maxArticles: 4,
432
- viewMoreLabel: "View all posts β†’",
433
- showReadTime: true,
434
- showAuthor: true,
435
- showThumbnails: true,
436
- },
437
- createdAt: daysAgo(90),
438
- updatedAt: daysAgo(12),
439
- },
440
- // ---- 15. Seller CTA ------------------------------------------------------
441
- // Same document as the old "Beyblade banner", re-purposed. The id keeps its
442
- // stale name on purpose: renaming it would create a fresh document and orphan
443
- // whatever an admin has already edited on this one.
444
- {
445
- id: "section-beyblade-banner",
446
- type: "banner",
447
- order: 16,
448
- enabled: true,
449
- config: {
450
- height: "md",
451
- /* Real imagery instead of a `seedPhoto()` grey tile β€” see the MEDIA block
452
- in carousel-slides-seed-data.ts for why that helper produces one of six
453
- flat SVG rectangles and why a third-party host is not the alternative.
454
- πŸ›‘ A seller pitch wants a HUMAN packing an order, which the wiki corpus
455
- does not contain; this generation cover is a stand-in until a real photo
456
- exists for the slot. */
457
- backgroundImage: "/media/category-beyblade-x-image",
458
- content: {
459
- title: "Have collectibles to sell?",
460
- subtitle: "Open a store in minutes.",
461
- description: "List for free, reach collectors across the country, and get paid on a predictable schedule.",
462
- },
463
- buttons: [
464
- { text: "Start selling β†’", link: String(ROUTES.PUBLIC.SELLER_GUIDE), variant: "primary" },
465
- { text: "Browse the marketplace", link: String(ROUTES.PUBLIC.PRODUCTS), variant: "outline" },
466
- ],
467
- },
468
- createdAt: daysAgo(90),
469
- updatedAt: daysAgo(9),
470
- },
471
- // ---- 16. Newsletter ------------------------------------------------------
472
- // Inline with a real reason to subscribe, not an overlay β€” 59% of sites do
473
- // overlay signup badly, per Baymard.
474
- {
475
- id: "section-newsletter",
476
- type: "newsletter",
477
- order: 17,
478
- enabled: true,
479
- config: {
480
- title: "Get new listings first",
481
- description: "One email a week: fresh drops, auctions closing soon, and price cuts on your saved categories.",
482
- privacyText: "We never share your address. Unsubscribe in one click.",
483
- privacyLink: String(ROUTES.PUBLIC.PRIVACY),
484
- },
485
- createdAt: daysAgo(90),
486
- updatedAt: daysAgo(14),
487
- },
488
- // ---- 17–21. Reassure -----------------------------------------------------
489
- // Stats moved DOWN from 3rd. Numbers are corroboration for a visitor who is
490
- // already interested; they answer no question a first-time visitor is asking
491
- // at the top of the page.
492
- {
493
- id: "section-platform-stats",
494
- type: "stats",
495
- order: 18,
496
- enabled: true,
497
- config: {
498
- /*
499
- * πŸ›‘ VERIFIABLE FACTS, not volume claims.
500
- *
501
- * This read "200+ Listings Β· 8+ Verified Sellers Β· 35+ Buyer Reviews Β·
502
- * 50+ Orders Completed". Those were `source: "live"` FALLBACKS, shown
503
- * whenever the metric fetch fails β€” and all four were falsifiable in the
504
- * same breath as the page that showed them: `realListingsOnly()` in
505
- * seed-cli.mjs loads on the order of a dozen products, and the site has
506
- * never taken a real order, so "50+ Orders Completed" was a number about
507
- * nothing. A visitor who reads it and then browses the catalogue
508
- * concludes the whole page is decoration.
509
- *
510
- * The replacements are things a visitor can CHECK by clicking through,
511
- * and each was counted from source in the change that wrote it:
512
- * - parts `PART_LEAF_COUNT` (_helpers/category-parts.ts:17528) = 2490.
513
- * πŸ›‘ CLAUDE.md says 752; that is stale, the corpus grew.
514
- * - generations 4 tier-1 rows under `category-spinning-tops`.
515
- * - brands 28 `BRAND_SEED_INPUTS` entries (`BRAND_ROW_COUNT`).
516
- * Re-count before editing any of them rather than trusting this comment.
517
- *
518
- * `total_listings` stays LIVE and keeps a `"0"` fallback: a live number is
519
- * verifiable by definition, and a zero fallback can only ever understate.
520
- * `total_orders` and `total_reviews` are dropped rather than zeroed β€” a
521
- * giant "0" in 48pt type is worse than not raising the subject.
522
- *
523
- * `iconName` is required on a static stat; a live one derives its glyph
524
- * from `metric` via STAT_PRESET_ICON.
525
- */
526
- title: "By the numbers",
527
- stats: [
528
- { key: "products", label: "Listings", value: "0", source: "live", metric: "total_listings", suffix: "+" },
529
- { key: "parts", label: "Parts catalogued", value: "2,490", source: "static", iconName: "spares" },
530
- { key: "generations", label: "Generations covered", value: "4", source: "static", iconName: "archive" },
531
- { key: "brands", label: "Brands", value: "28", source: "static", iconName: "deals" },
532
- ],
533
- },
534
- createdAt: daysAgo(90),
535
- updatedAt: daysAgo(15),
536
- },
537
- {
538
- id: "section-platform-features",
539
- type: "features",
540
- order: 19,
541
- enabled: true,
542
- config: {
543
- title: "Security You Can Trust",
544
- pillLabel: "Built for trust",
545
- learnMoreLabel: "Learn about our security β†’",
546
- learnMoreLink: String(ROUTES.PUBLIC.SECURITY),
547
- items: [
548
- {
549
- key: "escrow",
550
- title: "Escrow on every order",
551
- description: "Funds reach the seller only after the item is delivered and accepted.",
552
- },
553
- {
554
- key: "verified-sellers",
555
- title: "Verified sellers only",
556
- description: "Identity and payout details are checked before a store can publish.",
557
- },
558
- {
559
- key: "scam-registry",
560
- title: "Public scam registry",
561
- description: "Reported bad actors are recorded so buyers can check before they pay.",
562
- },
563
- {
564
- key: "encrypted-data",
565
- title: "Encrypted personal data",
566
- description: "Addresses, phone numbers and payout details are encrypted at rest.",
567
- },
568
- ],
569
- },
570
- createdAt: daysAgo(90),
571
- updatedAt: daysAgo(11),
572
- },
573
- {
574
- id: "section-whatsapp-community",
575
- type: "whatsapp-community",
576
- order: 20,
577
- enabled: true,
578
- config: {
579
- title: "Join the community",
580
- description: "Deal alerts, auction reminders, and early access to drops.",
581
- /* πŸ›‘ The line that used to sit here β€” "Keep this link verbatim β€” a
582
- tester-checklist case asserts it" β€” was FALSE and is deleted. Verified:
583
- zero hits for `chat.whatsapp.com` anywhere under
584
- `appkit/src/features/tester/seed-data/`. It had also outlived its
585
- subject: the value it was protecting (a bare `https://chat.whatsapp.com/`
586
- with no invite code) is gone, so the comment defended a string that no
587
- longer existed while discouraging anyone from touching the field. */
588
- // Left unset: a bare chat.whatsapp.com URL is not a valid invite code and
589
- // opens a page that resolves to no group. The real link is env-owned
590
- // (WHATSAPP_GROUP_INVITE) and reaches the card through appkit.config.
591
- groupLink: undefined,
592
- benefits: [
593
- "Deal alerts before they hit the homepage",
594
- "Reminders when auctions you watch are closing",
595
- "Early access to limited drops",
596
- "Direct line to the team for order questions",
597
- ],
598
- buttonText: "Join the group",
599
- },
600
- createdAt: daysAgo(90),
601
- updatedAt: daysAgo(13),
602
- },
603
- {
604
- id: "section-homepage-faq",
605
- type: "faq",
606
- order: 21,
607
- enabled: true,
608
- config: {
609
- title: "Frequently Asked Questions",
610
- subtitle: "The questions new buyers ask most.",
611
- showOnHomepage: true,
612
- /*
613
- * B6b β€” 6 β†’ 10. The FAQ block is the densest single SEO win on the page
614
- * (worldhobbyshop's 10-question block is a measured part of why it leads
615
- * the fifteen on SEO) and it is an answer-engine surface, so it feeds
616
- * `faqJsonLd`. 20 rows are flagged `showOnHomepage`; showing 10 of them
617
- * is the intended shape.
618
- */
619
- displayCount: 10,
620
- linkToFullPage: true,
621
- viewMoreLabel: "View all FAQs β†’",
622
- showCategoryTabs: true,
623
- /*
624
- * πŸ›‘ EMPTY ON PURPOSE β€” the tabs DERIVE from the items actually shown.
625
- *
626
- * This listed `["shipping_delivery", "returns_refunds",
627
- * "orders_payment"]` and measured live on 2026-10-12 **all three
628
- * rendered EMPTY PANELS**, while the three categories whose rows were
629
- * actually displayed (`general`, `product_information`,
630
- * `fees_and_taxes`) had no tab at all.
631
- *
632
- * The cause is that the two halves answer different questions and
633
- * neither knows about the other: the ITEMS come from
634
- * `getHomepageFAQs()` β€” `showOnHomepage` ordered by `priority` DESC,
635
- * then sliced to `displayCount` β€” while the TABS were a hand-written
636
- * list. Raise a row's priority, or add a higher-priority row in another
637
- * category (B6b's FAQ half added 22, including a whole new
638
- * `fees_and_taxes`), and the slice moves out from under the tabs
639
- * silently. That is Root Cause #72's shape: a tab you can click with
640
- * nothing behind it.
641
- *
642
- * `FAQSection` already derives tabs from its items when `tabs` is empty
643
- * (`if (tabsProp && tabsProp.length > 0) return tabsProp;`), so an empty
644
- * array makes an empty tab STRUCTURALLY IMPOSSIBLE rather than something
645
- * to re-sync by hand. A hand-maintained enumeration beside a query is
646
- * the defect, not the list's contents.
647
- *
648
- * πŸ›‘ `[]` rather than deleting the key, because `appkit-seed load` is a
649
- * MERGE write and cannot remove a field β€” dropping it from the seed
650
- * would leave the three stale values in Firestore forever and the fix
651
- * would read as applied while changing nothing.
652
- */
653
- visibleTabs: [],
654
- allowMultipleOpen: false,
655
- defaultOpenCount: 1,
656
- /*
657
- * πŸ›‘ NOT a filter, despite the name. The renderer uses this ONLY as a
658
- * fallback tab list when `visibleTabs` is empty
659
- * (`cfg?.visibleTabs?.length ? cfg.visibleTabs : cfg?.categories`), and
660
- * the items are never filtered by it. So a category absent from here is
661
- * still displayed β€” which is why `fees_and_taxes` rows appear on the
662
- * homepage today while being absent from this list.
663
- *
664
- * Emptied too, or it would simply become the hand-written tab list this
665
- * change exists to delete.
666
- */
667
- categories: [],
668
- },
669
- createdAt: daysAgo(90),
670
- updatedAt: daysAgo(16),
671
- },
672
- {
673
- id: "section-top-brands",
674
- type: "brands",
675
- order: 22,
676
- enabled: true,
677
- config: {
678
- title: "Top Brands",
679
- subtitle: "Browse by the makers collectors look for.",
680
- maxBrands: 12,
681
- viewMoreLabel: "All brands β†’",
682
- autoScroll: false,
683
- scrollInterval: 5000,
684
- loop: true,
685
- },
686
- createdAt: daysAgo(90),
687
- updatedAt: daysAgo(18),
688
- },
689
- // ---- Disabled ------------------------------------------------------------
690
- // Kept, NOT deleted: the tester case `sections-social-feed-hidden` asserts a
691
- // disabled section does not render, and deleting the document would make that
692
- // case untestable rather than passing.
693
- {
694
- id: "section-social-feed-instagram",
695
- type: "social-feed",
696
- order: 23,
697
- enabled: false,
698
- config: {
699
- title: "Follow along",
700
- subtitle: "New arrivals and community highlights.",
701
- platform: "instagram",
702
- handle: "letitrip.in",
703
- postType: "all",
704
- count: 9,
705
- layout: "grid",
706
- showCaption: true,
707
- showStats: false,
708
- },
709
- createdAt: daysAgo(90),
710
- updatedAt: daysAgo(25),
711
- },
712
- /*
713
- * REMOVED β€” `section-brand-takara-tomy` and `section-brand-beyblade`.
714
- *
715
- * Both were `products` sections with a `filterByBrand`. All three products
716
- * sections share ONE `getFeaturedProducts(12)` result and the brand filter is
717
- * applied client-side, so each strip filtered the same twelve rows and
718
- * usually rendered empty. They were also the most catalogue-specific thing on
719
- * the page.
720
- *
721
- * πŸ›‘ `appkit-seed load` UPSERTS and never deletes. Dropping them from this
722
- * array does not remove them from Firestore β€” delete both documents at
723
- * /admin/sections after seeding, or they keep rendering.
724
- */
725
- /*
726
- * ── B6b β€” THE SYSTEMS MATRIX ─────────────────────────────────────────────
727
- *
728
- * worldhobbyshop's single biggest SEO asset, and it is TAXONOMY ROUTING
729
- * rather than merchandising: 25 internal links telling a crawler which
730
- * sub-collections exist. It is most of why they have 79 unique internal
731
- * links (BAS has 57) while running the FEWEST products and words on their
732
- * homepage of the fifteen crawled β€” 8 product cards and 1,816 words.
733
- *
734
- * πŸ›‘ `custom-cards`, NOT `collection-cards`, and the plan had this wrong.
735
- * `collection-cards` is capped at `COLLECTION_CARDS_MAX_ENTRIES = 3` and its
736
- * entries are LIVE-CONTENT queries (`{type, limit, categorySlug}`), so it
737
- * cannot express a link matrix at all. `custom-cards` carries
738
- * `cards[].buttons[]` of `{label, href}`, which is exactly a matrix.
739
- *
740
- * πŸ›‘ Every href is a REAL post-B5 category id, read off `categoriesSeedData`
741
- * rather than typed from memory. A dead link here is the Root Cause #33
742
- * shape on the routing axis β€” it 404s, and `audit-nav-page-wiring` does not
743
- * reach section configs.
744
- *
745
- * No prices anywhere, which is what makes this safe where a price-band tile
746
- * is not β€” see the note below the array.
747
- *
748
- * πŸ›‘ Each card's `image` is the SAME `/media/<shortId>` the generation
749
- * CATEGORY carries, not a second asset. `CustomCardsSection` renders a card
750
- * with artwork as a poster β€” the image fills it and a scrim carries the type
751
- * β€” so the four cards here and the four `promo-grid` banners below and the
752
- * four category tiles are one set of four objects, uploaded once. Minting a
753
- * parallel `matrix-*` shortId would be a mirror that drifts the first time
754
- * one of them is re-fetched (Root Cause #42).
755
- */
756
- {
757
- id: "section-systems-matrix",
758
- type: "custom-cards",
759
- order: 8,
760
- enabled: true,
761
- config: {
762
- title: "Every system, every part family",
763
- layout: "grid",
764
- columns: 4,
765
- autoScroll: false,
766
- loop: false,
767
- cards: [
768
- {
769
- id: "matrix-original",
770
- image: "/media/category-beyblade-original-image",
771
- imageAlt: "",
772
- eyebrow: "1999–2003",
773
- title: "Beyblade Original",
774
- body: "Four part systems in four years, and they do not interchange. Plastic Generation through Heavy Metal System.",
775
- buttons: [
776
- { label: "Plastic Generation", href: "/categories/category-original-plastic-gen", variant: "ghost" },
777
- { label: "Spin Gear", href: "/categories/category-original-spin-gear", variant: "ghost" },
778
- { label: "Magnacore", href: "/categories/category-original-magnacore", variant: "ghost" },
779
- { label: "Engine Gear", href: "/categories/category-original-engine-gear", variant: "ghost" },
780
- { label: "Heavy Metal System", href: "/categories/category-original-hms", variant: "ghost" },
781
- { label: "Parts", href: "/categories/category-original-parts", variant: "outline" },
782
- { label: "Launchers", href: "/categories/category-original-launchers", variant: "outline" },
783
- ],
784
- },
785
- {
786
- id: "matrix-metal",
787
- image: "/media/category-beyblade-metal-image",
788
- imageAlt: "",
789
- eyebrow: "2008–2013",
790
- title: "Metal Fight",
791
- body: "The tuning era, and the only generation where loose parts outnumber complete tops.",
792
- buttons: [
793
- { label: "Metal System", href: "/categories/category-metal-phws", variant: "ghost" },
794
- { label: "Metal Fusion", href: "/categories/category-metal-fusion", variant: "ghost" },
795
- { label: "Metal Masters", href: "/categories/category-metal-masters", variant: "ghost" },
796
- { label: "Metal Fury (4D)", href: "/categories/category-metal-fury-4d", variant: "ghost" },
797
- { label: "Shogun Steel", href: "/categories/category-metal-shogun-steel", variant: "ghost" },
798
- { label: "Parts", href: "/categories/category-metal-parts", variant: "outline" },
799
- { label: "Launchers", href: "/categories/category-metal-launchers", variant: "outline" },
800
- ],
801
- },
802
- {
803
- id: "matrix-burst",
804
- image: "/media/category-beyblade-burst-image",
805
- imageAlt: "",
806
- eyebrow: "2015–2023",
807
- title: "Beyblade Burst",
808
- body: "Seven waves of the bursting mechanic, from single-layer Classic to Burst Ultimate.",
809
- buttons: [
810
- { label: "Burst Classic", href: "/categories/category-burst-classic", variant: "ghost" },
811
- { label: "Burst God", href: "/categories/category-burst-god", variant: "ghost" },
812
- { label: "Cho-Z", href: "/categories/category-burst-cho-z", variant: "ghost" },
813
- { label: "GT", href: "/categories/category-burst-gt", variant: "ghost" },
814
- { label: "Superking", href: "/categories/category-burst-superking", variant: "ghost" },
815
- { label: "Dynamite Battle", href: "/categories/category-burst-db", variant: "ghost" },
816
- { label: "Burst Ultimate", href: "/categories/category-burst-bu", variant: "ghost" },
817
- { label: "Parts", href: "/categories/category-burst-parts", variant: "outline" },
818
- ],
819
- },
820
- {
821
- id: "matrix-x",
822
- image: "/media/category-beyblade-x-image",
823
- imageAlt: "",
824
- eyebrow: "2023–",
825
- title: "Beyblade X",
826
- body: "The Xtreme Line rail is the centre of the design β€” blades, ratchets and bits, and a stadium that is part of the game.",
827
- buttons: [
828
- { label: "Basic Line", href: "/categories/category-x-basic", variant: "ghost" },
829
- { label: "Unique Line (UX)", href: "/categories/category-x-unique-ux", variant: "ghost" },
830
- { label: "Custom Line (CX)", href: "/categories/category-x-custom-cx", variant: "ghost" },
831
- { label: "X-Over Project", href: "/categories/category-x-over", variant: "ghost" },
832
- { label: "Parts", href: "/categories/category-x-parts", variant: "outline" },
833
- { label: "Launchers", href: "/categories/category-x-launchers", variant: "outline" },
834
- { label: "Stadiums", href: "/categories/category-x-stadiums", variant: "outline" },
835
- ],
836
- },
837
- ],
838
- },
839
- createdAt: daysAgo(1),
840
- updatedAt: daysAgo(1),
841
- },
842
- /*
843
- * `collection-cards` had a renderer and a builder with zero seeded rows β€” a
844
- * type nobody ever saw, structurally identical to 22 missing-order or
845
- * mis-ordered sections elsewhere in this file: a gap only a human reading
846
- * the schema would ever notice.
847
- *
848
- * πŸ›‘ Deliberately scoped to `categories` / `brands` / `stores` β€” the three
849
- * axes that are PERMANENT regardless of product count. Even if every one of
850
- * the 1,237 generated catalogue products were deleted, these three entry
851
- * types would still resolve to real, populated rows: 1,185 categories, 28
852
- * brand rows, 5 stores, all seeded independently of the product catalogue.
853
- * A `"products"` or `"auctions"` entry here would be the opposite β€” a card
854
- * that goes empty the moment the catalogue does, on a section whose entire
855
- * point is to always have something to show.
856
- */
857
- {
858
- id: "section-top-collections",
859
- type: "collection-cards",
860
- order: 24,
861
- enabled: true,
862
- config: {
863
- title: "Explore the Marketplace",
864
- subtitle: "Three ways into the catalogue that never go empty.",
865
- layout: "grid",
866
- itemsPerRow: 3,
867
- showCollectionTabs: false,
868
- collections: [
869
- { type: "categories", label: "Shop by Generation", limit: 6 },
870
- { type: "brands", label: "Shop by Brand", limit: 8 },
871
- { type: "stores", label: "Verified Sellers", limit: 5 },
872
- ],
873
- cta: { label: "View all categories β†’", href: String(ROUTES.PUBLIC.CATEGORIES), variant: "text" },
874
- },
875
- createdAt: daysAgo(1),
876
- updatedAt: daysAgo(1),
877
- },
878
- /*
879
- * ---- 25. How it works ----------------------------------------------------
880
- *
881
- * `how-it-works` and `promo-grid` (26) were registered types with renderers,
882
- * admin create-picker entries and ZERO seeded rows β€” so both returned `null`
883
- * and the page was missing the two blocks a 2026 marketplace homepage most
884
- * obviously has. They were left unseeded on the principle that this file must
885
- * not invent placeholder content, which was the right call: the reason they
886
- * can be seeded NOW is that there is real, checkable copy to put in them.
887
- *
888
- * πŸ›‘ Every step below is a claim the site actually honours. No "ships in 24
889
- * hours", no "100% buyer protection" β€” the authenticity labelling in step 2
890
- * is the one genuine differentiator the carousel already leads with, quoted
891
- * from the same policy.
892
- *
893
- * πŸ›‘ NO BIDDING STEP. `listings.listingTypes.auction` is false, so a step
894
- * telling visitors to place a bid would route them to a browse page with
895
- * nothing in it.
896
- *
897
- * πŸ›‘ PLACEMENT IS PROVISIONAL. Appended at 25/26 rather than inserted mid-page
898
- * (how-it-works belongs nearer the top, after the trust bar) because the
899
- * section order is being tuned with the owner in a parallel change and
900
- * renumbering 24 rows underneath that would collide. Reposition from
901
- * /admin/sections, which is cheaper than a reseed.
902
- */
903
- {
904
- id: "section-how-it-works",
905
- type: "how-it-works",
906
- order: 25,
907
- enabled: true,
908
- config: {
909
- title: "How buying here works",
910
- subtitle: "Three steps, and the second one is the part other marketplaces skip.",
911
- pillLabel: "New here?",
912
- ctaLabel: "Browse the catalogue β†’",
913
- ctaLink: String(ROUTES.PUBLIC.PRODUCTS),
914
- steps: [
915
- {
916
- number: 1,
917
- iconKey: "search",
918
- title: "Find the piece",
919
- desc: "Filter by generation, part family, condition and price across every seller on the marketplace.",
920
- },
921
- {
922
- number: 2,
923
- iconKey: "verify",
924
- title: "Read the authenticity label",
925
- desc: "Every listing carries one of three labels β€” original, reproduction or unverified. If a seller does not say which, it reads β€œunverified”; we will not claim β€œoriginal” on their behalf.",
926
- },
927
- {
928
- number: 3,
929
- iconKey: "lock",
930
- title: "Buy with the seller verified",
931
- desc: "Identity and payout details are checked before a store can publish, and your address and phone number are encrypted at rest.",
932
- },
933
- ],
934
- },
935
- createdAt: daysAgo(1),
936
- updatedAt: daysAgo(1),
937
- },
938
- /*
939
- * ---- 26. Promo grid ------------------------------------------------------
940
- *
941
- * The always-dark 4-tile editorial mosaic: one large slot plus three, each a
942
- * full-bleed image under a bottom-up scrim. Routes to the four generations,
943
- * which is the one set of destinations guaranteed to be populated however the
944
- * product catalogue changes β€” a promo tile pointing at an empty page is worse
945
- * than no tile.
946
- *
947
- * πŸ›‘ `image` is a `/media/<shortId>` slug backed by a real `mediaAssets` row,
948
- * never `seedPhoto()` (six flat grey tiles) and never a third-party host
949
- * (Root Cause #104). These four covers are the same ones the generation
950
- * categories use, so they are known-present.
951
- *
952
- * πŸ›‘ The component caps at `PROMO_GRID_MAX_BANNERS` (4) and silently drops a
953
- * fifth β€” the layout has exactly one hero slot and three regular ones.
954
- */
955
- {
956
- id: "section-generation-promos",
957
- type: "promo-grid",
958
- order: 26,
959
- enabled: true,
960
- config: {
961
- eyebrow: "FOUR GENERATIONS",
962
- heading: "Pick your era",
963
- banners: [
964
- {
965
- id: "promo-beyblade-x",
966
- title: "Beyblade X",
967
- ctaLabel: "Shop Beyblade X",
968
- ctaUrl: "/categories/category-beyblade-x",
969
- image: "/media/category-beyblade-x-image",
970
- },
971
- {
972
- id: "promo-beyblade-burst",
973
- title: "Burst",
974
- ctaLabel: "Shop Burst",
975
- ctaUrl: "/categories/category-beyblade-burst",
976
- image: "/media/category-beyblade-burst-image",
977
- },
978
- {
979
- id: "promo-beyblade-metal",
980
- title: "Metal Fight",
981
- ctaLabel: "Shop Metal Fight",
982
- ctaUrl: "/categories/category-beyblade-metal",
983
- image: "/media/category-beyblade-metal-image",
984
- },
985
- {
986
- id: "promo-beyblade-original",
987
- title: "The Originals",
988
- ctaLabel: "Shop the originals",
989
- ctaUrl: "/categories/category-beyblade-original",
990
- image: "/media/category-beyblade-original-image",
991
- },
992
- ],
993
- },
994
- createdAt: daysAgo(1),
995
- updatedAt: daysAgo(1),
996
- },
997
- /*
998
- * πŸ›‘ `google-reviews` stays DELIBERATELY UNSEEDED β€” not an oversight, the
999
- * same decision already made for `googleMapsApiKey`/`googlePlaceId` in
1000
- * `site-settings-seed-data.ts`: those are seeded `""` on purpose, because
1001
- * their consumers (`GoogleReviewsSectionConfig.placeId` is this section's
1002
- * only REQUIRED field) read them directly and would treat a placeholder as
1003
- * a usable credential, producing a failed, possibly BILLED Google Places
1004
- * API call instead of skipping cleanly.
1005
- *
1006
- * Reviews pulled from this section are real third-party content keyed to a
1007
- * real Google Business Profile this project does not have. Fabricating a
1008
- * `placeId` would either hit Google's API with an invalid key (cost, for a
1009
- * call that can never succeed) or β€” worse β€” a VALID placeId for a real,
1010
- * unrelated business, rendering someone else's reviews as this store's own.
1011
- * Neither is a seed-data problem to paper over; it is a real business
1012
- * prerequisite (a Google Business Profile must exist) that has not happened
1013
- * yet. The type stays in `SectionType` and `SECTION_REGISTRY` β€” it is a real
1014
- * feature with zero fabricated data, not a bug.
1015
- */
1016
- /*
1017
- * πŸ›‘ TCI's five BUDGET TILES ("Under β‚Ή499 / β‚Ή799 / β‚Ή999 / β‚Ή1499") are
1018
- * DELIBERATELY NOT SEEDED, and this is a decision rather than an omission.
1019
- *
1020
- * The plan argued they are safe because "the tiles are LINKS, not prices".
1021
- * That is true of the tile and false of the mechanism. Prices are hidden from
1022
- * signed-out visitors, and the price-range facet and every money sort are
1023
- * withheld specifically because "hiding the number is not hiding the value" β€”
1024
- * bracketing a hidden price with a range filter is the one casually reachable
1025
- * way around the gate. The documented residue is that a HAND-WRITTEN
1026
- * `?f=price<499` still works, and five tiles on the homepage promote that
1027
- * residue to the most prominent path on the site: a guest could bucket the
1028
- * entire catalogue into five price bands in five clicks, without an account.
1029
- *
1030
- * The matrix above has no such property β€” a category link reveals no amount.
1031
- * Revisit if guest price-gating is ever relaxed; until then this is a tile
1032
- * that would quietly undo a gate another step built.
1033
- */
1034
- ];