@mohasinac/appkit 4.64.1 → 4.66.0

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