@mohasinac/appkit 4.30.18 → 4.31.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 (557) hide show
  1. package/dist/_internal/client/features/digital-code/CodeRevealPanel.js +5 -2
  2. package/dist/_internal/client/features/layout/DashboardLayoutClient.js +3 -3
  3. package/dist/_internal/client/features/layout/useSidebarSearch.d.ts +21 -5
  4. package/dist/_internal/client/features/layout/useSidebarSearch.js +27 -6
  5. package/dist/_internal/client/features/lottery/LotteryAdminEditView.d.ts +23 -3
  6. package/dist/_internal/client/features/lottery/LotteryAdminEditView.js +106 -86
  7. package/dist/_internal/client/features/lottery/LotteryPullForm.d.ts +16 -5
  8. package/dist/_internal/client/features/lottery/LotteryPullForm.js +65 -40
  9. package/dist/_internal/client/features/maintenance/views/AnalysisRunnerView.js +5 -2
  10. package/dist/_internal/client/features/maintenance/views/CloudLogsListView.js +11 -3
  11. package/dist/_internal/client/hand-mode/HandModeProvider.js +2 -0
  12. package/dist/_internal/server/features/auctions/actions.js +14 -3
  13. package/dist/_internal/server/features/auctions/service.js +1 -1
  14. package/dist/_internal/server/features/auth/permissions.d.ts +2 -0
  15. package/dist/_internal/server/features/auth/permissions.js +3 -2
  16. package/dist/_internal/server/features/blog/data.js +2 -2
  17. package/dist/_internal/server/features/blog/service.js +3 -3
  18. package/dist/_internal/server/features/brands/data.js +1 -1
  19. package/dist/_internal/server/features/brands/service.js +3 -3
  20. package/dist/_internal/server/features/bundles/actions.js +6 -1
  21. package/dist/_internal/server/features/bundles/data.js +21 -4
  22. package/dist/_internal/server/features/cart/data.js +3 -1
  23. package/dist/_internal/server/features/cart/service.js +13 -2
  24. package/dist/_internal/server/features/categories/data.js +26 -6
  25. package/dist/_internal/server/features/classified/index.d.ts +0 -1
  26. package/dist/_internal/server/features/classified/index.js +0 -1
  27. package/dist/_internal/server/features/digital-code/index.d.ts +0 -1
  28. package/dist/_internal/server/features/digital-code/index.js +0 -1
  29. package/dist/_internal/server/features/events/actions.js +17 -4
  30. package/dist/_internal/server/features/events/data.js +1 -1
  31. package/dist/_internal/server/features/events/service.js +1 -1
  32. package/dist/_internal/server/features/grouped/data.js +7 -2
  33. package/dist/_internal/server/features/item-requests/data.js +1 -1
  34. package/dist/_internal/server/features/live/index.d.ts +0 -1
  35. package/dist/_internal/server/features/live/index.js +0 -1
  36. package/dist/_internal/server/features/lottery/actions.js +2 -2
  37. package/dist/_internal/server/features/lottery/data.js +1 -1
  38. package/dist/_internal/server/features/orders/actions.js +7 -7
  39. package/dist/_internal/server/features/orders/data.d.ts +1 -1
  40. package/dist/_internal/server/features/orders/data.js +14 -2
  41. package/dist/_internal/server/features/orders/service.js +1 -1
  42. package/dist/_internal/server/features/pre-orders/service.js +1 -1
  43. package/dist/_internal/server/features/prize-draws/actions.js +1 -1
  44. package/dist/_internal/server/features/products/data.js +21 -6
  45. package/dist/_internal/server/features/products/list-public.d.ts +9 -0
  46. package/dist/_internal/server/features/products/list-public.js +95 -7
  47. package/dist/_internal/server/features/products/service.js +1 -1
  48. package/dist/_internal/server/features/promotions/actions.js +1 -1
  49. package/dist/_internal/server/features/promotions/data.js +1 -1
  50. package/dist/_internal/server/features/promotions/service.js +1 -1
  51. package/dist/_internal/server/features/reviews/data.d.ts +1 -1
  52. package/dist/_internal/server/features/reviews/data.js +6 -1
  53. package/dist/_internal/server/features/reviews/og-data.js +1 -1
  54. package/dist/_internal/server/features/shared/listing-data-factory.js +7 -2
  55. package/dist/_internal/server/features/site-settings/adapters.d.ts +2 -2
  56. package/dist/_internal/server/features/site-settings/adapters.js +8 -5
  57. package/dist/_internal/server/features/stores/data.js +1 -1
  58. package/dist/_internal/server/features/sublisting-categories/data.js +1 -1
  59. package/dist/_internal/server/features/tester/visibility.d.ts +2 -1
  60. package/dist/_internal/server/features/tester/visibility.js +2 -2
  61. package/dist/_internal/server/functions/scheduled.d.ts +3 -1
  62. package/dist/_internal/server/functions/scheduled.js +27 -1
  63. package/dist/_internal/server/jobs/core/auctionSettlement.js +6 -1
  64. package/dist/_internal/server/jobs/core/hardBanCascade.js +4 -0
  65. package/dist/_internal/server/jobs/core/index.d.ts +2 -0
  66. package/dist/_internal/server/jobs/core/index.js +2 -0
  67. package/dist/_internal/server/jobs/core/onOrderStatusChange.js +7 -15
  68. package/dist/_internal/server/jobs/core/pageViewPrune.d.ts +10 -0
  69. package/dist/_internal/server/jobs/core/pageViewPrune.js +44 -0
  70. package/dist/_internal/server/jobs/core/pageViewRollup.d.ts +2 -0
  71. package/dist/_internal/server/jobs/core/pageViewRollup.js +87 -0
  72. package/dist/_internal/server/jobs/core/revenueRollup.js +7 -1
  73. package/dist/_internal/server/jobs/handlers/index.d.ts +2 -0
  74. package/dist/_internal/server/jobs/handlers/index.js +2 -0
  75. package/dist/_internal/server/jobs/handlers/pageViewPrune.d.ts +2 -0
  76. package/dist/_internal/server/jobs/handlers/pageViewPrune.js +2 -0
  77. package/dist/_internal/server/jobs/handlers/pageViewRollup.d.ts +2 -0
  78. package/dist/_internal/server/jobs/handlers/pageViewRollup.js +2 -0
  79. package/dist/_internal/shared/actions/action-registry.d.ts +1 -1
  80. package/dist/_internal/shared/actions/action-registry.js +69 -22
  81. package/dist/_internal/shared/checkout/rules/classified.rule.d.ts +9 -4
  82. package/dist/_internal/shared/checkout/rules/classified.rule.js +7 -2
  83. package/dist/_internal/shared/features/layout/matchesNavQuery.d.ts +14 -0
  84. package/dist/_internal/shared/features/layout/matchesNavQuery.js +72 -0
  85. package/dist/_internal/shared/features/layout/types.d.ts +37 -1
  86. package/dist/_internal/shared/features/layout/types.js +19 -1
  87. package/dist/_internal/shared/features/notifications/action-url.d.ts +9 -1
  88. package/dist/_internal/shared/features/notifications/action-url.js +47 -0
  89. package/dist/_internal/shared/features/offers/config.d.ts +65 -0
  90. package/dist/_internal/shared/features/offers/config.js +73 -2
  91. package/dist/_internal/shared/features/orders/schema.d.ts +19 -1
  92. package/dist/_internal/shared/features/orders/schema.js +22 -2
  93. package/dist/_internal/shared/features/site-settings/types.d.ts +12 -3
  94. package/dist/_internal/shared/listing-types/capabilities.d.ts +8 -2
  95. package/dist/_internal/shared/listing-types/capabilities.js +6 -1
  96. package/dist/_internal/shared/listing-types/classified/ctas.js +6 -1
  97. package/dist/_internal/shared/listing-types/feature-flags.d.ts +10 -5
  98. package/dist/_internal/shared/listing-types/feature-flags.js +11 -6
  99. package/dist/client/api/useApiQuery.js +17 -6
  100. package/dist/client.d.ts +38 -20
  101. package/dist/client.js +39 -14
  102. package/dist/configs/next.js +10 -2
  103. package/dist/constants/api-endpoints.d.ts +18 -54
  104. package/dist/constants/api-endpoints.js +6 -26
  105. package/dist/constants/field-names.d.ts +6 -24
  106. package/dist/constants/field-names.js +10 -27
  107. package/dist/constants/geo/countries.d.ts +50 -0
  108. package/dist/constants/geo/countries.js +129 -0
  109. package/dist/constants/geo/subdivisions.d.ts +13 -0
  110. package/dist/constants/geo/subdivisions.js +104 -0
  111. package/dist/constants/index.d.ts +2 -2
  112. package/dist/constants/index.js +2 -2
  113. package/dist/constants/table-keys.d.ts +24 -0
  114. package/dist/constants/table-keys.js +28 -0
  115. package/dist/contracts/client-realtime.d.ts +6 -0
  116. package/dist/contracts/extend.d.ts +0 -9
  117. package/dist/contracts/index.d.ts +1 -1
  118. package/dist/contracts/realtime-session.d.ts +12 -12
  119. package/dist/contracts/realtime-session.js +79 -77
  120. package/dist/core/browser.d.ts +1 -1
  121. package/dist/core/browser.js +1 -1
  122. package/dist/core/index.d.ts +1 -1
  123. package/dist/core/index.js +1 -1
  124. package/dist/core/site-config.d.ts +0 -3
  125. package/dist/core/site-config.js +0 -3
  126. package/dist/errors/index.d.ts +1 -1
  127. package/dist/errors/index.js +1 -1
  128. package/dist/errors/messages.d.ts +0 -8
  129. package/dist/errors/messages.js +0 -9
  130. package/dist/features/about/components/DeveloperView.js +7 -2
  131. package/dist/features/about/components/PolicyPageView.js +9 -1
  132. package/dist/features/about/components/PublicProfileView.js +23 -5
  133. package/dist/features/about/schemas/index.d.ts +8 -8
  134. package/dist/features/account/components/AddressFilters.js +32 -11
  135. package/dist/features/account/components/AddressForm.d.ts +26 -25
  136. package/dist/features/account/components/AddressForm.js +81 -103
  137. package/dist/features/account/components/AddressesIndexListing.js +8 -4
  138. package/dist/features/account/components/NotificationBell.js +4 -3
  139. package/dist/features/account/components/NotificationPreferencesPanel.js +1 -1
  140. package/dist/features/account/components/UserOffersPanel.js +1 -1
  141. package/dist/features/account/components/UserSidebar.d.ts +3 -4
  142. package/dist/features/account/components/UserSupportView.js +89 -58
  143. package/dist/features/account/components/index.d.ts +1 -7
  144. package/dist/features/account/components/index.js +0 -3
  145. package/dist/features/account/hooks/useAddresses.d.ts +4 -3
  146. package/dist/features/account/hooks/useAddresses.js +4 -6
  147. package/dist/features/account/hooks/useCollapsedSections.d.ts +51 -10
  148. package/dist/features/account/hooks/useCollapsedSections.js +211 -38
  149. package/dist/features/account/hooks/useProfile.d.ts +8 -0
  150. package/dist/features/account/index.d.ts +0 -3
  151. package/dist/features/account/index.js +0 -3
  152. package/dist/features/account/schemas/index.d.ts +0 -92
  153. package/dist/features/account/schemas/index.js +42 -20
  154. package/dist/features/addresses/components/AddressLocationFields.d.ts +13 -0
  155. package/dist/features/addresses/components/AddressLocationFields.js +41 -0
  156. package/dist/features/addresses/hooks/usePostalLookup.d.ts +17 -0
  157. package/dist/features/addresses/hooks/usePostalLookup.js +133 -0
  158. package/dist/features/addresses/schemas/address-form.d.ts +423 -0
  159. package/dist/features/addresses/schemas/address-form.js +212 -0
  160. package/dist/features/addresses/schemas/index.d.ts +1 -0
  161. package/dist/features/addresses/schemas/index.js +8 -0
  162. package/dist/features/admin/actions/admin-read-actions.d.ts +1 -1
  163. package/dist/features/admin/actions/index.d.ts +0 -1
  164. package/dist/features/admin/actions/index.js +0 -1
  165. package/dist/features/admin/actions/notification-actions.js +1 -41
  166. package/dist/features/admin/components/AdminActionIndexView.d.ts +32 -0
  167. package/dist/features/admin/components/AdminActionIndexView.js +128 -0
  168. package/dist/features/admin/components/AdminAdEditorView.js +159 -163
  169. package/dist/features/admin/components/AdminAddressEditorView.js +97 -55
  170. package/dist/features/admin/components/AdminBrandEditorView.d.ts +15 -0
  171. package/dist/features/admin/components/AdminBrandEditorView.js +113 -77
  172. package/dist/features/admin/components/AdminBundleEditorView.d.ts +19 -9
  173. package/dist/features/admin/components/AdminBundleEditorView.js +136 -168
  174. package/dist/features/admin/components/AdminCategoryEditorView.js +120 -43
  175. package/dist/features/admin/components/AdminCouponEditorView.js +145 -109
  176. package/dist/features/admin/components/AdminEmployeeEditorView.js +125 -56
  177. package/dist/features/admin/components/AdminFaqEditorView.js +112 -58
  178. package/dist/features/admin/components/AdminFeatureEditorView.js +108 -68
  179. package/dist/features/admin/components/AdminFulfillmentView.js +5 -2
  180. package/dist/features/admin/components/AdminMediaView.js +3 -3
  181. package/dist/features/admin/components/AdminNavEditorView.js +69 -44
  182. package/dist/features/admin/components/AdminOrderEditorView.js +47 -10
  183. package/dist/features/admin/components/AdminPrizeDrawsView.js +16 -2
  184. package/dist/features/admin/components/AdminSidebar.d.ts +11 -7
  185. package/dist/features/admin/components/AdminSiteSettingsView.js +37 -37
  186. package/dist/features/admin/components/AdminStoreEditorView.js +75 -52
  187. package/dist/features/admin/components/AdminSublistingCategoryEditorView.js +71 -30
  188. package/dist/features/admin/components/AdminTesterChecklistItemEditorView.js +95 -65
  189. package/dist/features/admin/components/BrandQuickCreateForm.d.ts +10 -0
  190. package/dist/features/admin/components/BrandQuickCreateForm.js +49 -26
  191. package/dist/features/admin/components/CategoryQuickCreateForm.d.ts +11 -0
  192. package/dist/features/admin/components/CategoryQuickCreateForm.js +48 -26
  193. package/dist/features/admin/components/index.d.ts +2 -2
  194. package/dist/features/admin/components/index.js +1 -1
  195. package/dist/features/admin/constants/site-settings-tabs.d.ts +120 -0
  196. package/dist/features/admin/constants/site-settings-tabs.js +152 -0
  197. package/dist/features/admin/index.d.ts +0 -3
  198. package/dist/features/admin/index.js +0 -2
  199. package/dist/features/admin/repository/analytics-rollup.repository.d.ts +35 -0
  200. package/dist/features/admin/repository/analytics-rollup.repository.js +30 -0
  201. package/dist/features/admin/schemas/admin-editor-forms.d.ts +56 -57
  202. package/dist/features/admin/schemas/admin-editor-forms.js +97 -54
  203. package/dist/features/admin/schemas/admin-ops-forms.d.ts +57 -5
  204. package/dist/features/admin/schemas/admin-ops-forms.js +104 -20
  205. package/dist/features/admin/schemas/admin-user-form.js +7 -0
  206. package/dist/features/admin/schemas/firestore.d.ts +48 -95
  207. package/dist/features/admin/schemas/firestore.js +15 -151
  208. package/dist/features/admin/schemas/nav-item-form.js +9 -2
  209. package/dist/features/admin/server.d.ts +0 -4
  210. package/dist/features/admin/server.js +0 -2
  211. package/dist/features/admin/types/index.d.ts +0 -7
  212. package/dist/features/analytics/repository/page-views.repository.d.ts +14 -0
  213. package/dist/features/analytics/repository/page-views.repository.js +24 -0
  214. package/dist/features/analytics/types.d.ts +1 -1
  215. package/dist/features/analytics/types.js +13 -0
  216. package/dist/features/auctions/components/AuctionDetailPageView.js +6 -2
  217. package/dist/features/auctions/components/MarketplaceAuctionCard.js +3 -1
  218. package/dist/features/auth/actions/index.d.ts +0 -1
  219. package/dist/features/auth/actions/index.js +0 -1
  220. package/dist/features/auth/actions/profile-actions.js +4 -3
  221. package/dist/features/auth/actions/realtime-token-actions.js +1 -12
  222. package/dist/features/auth/auth-helpers.js +5 -7
  223. package/dist/features/auth/components/ForgotPasswordView.js +1 -1
  224. package/dist/features/auth/components/Guards.js +2 -1
  225. package/dist/features/auth/components/LoginForm.d.ts +0 -2
  226. package/dist/features/auth/components/LoginForm.js +2 -4
  227. package/dist/features/auth/components/RegisterForm.js +62 -19
  228. package/dist/features/auth/components/ResetPasswordView.js +1 -1
  229. package/dist/features/auth/hooks/useAuth.js +3 -0
  230. package/dist/features/auth/permissions/constants.d.ts +27 -1
  231. package/dist/features/auth/role-predicates.d.ts +75 -7
  232. package/dist/features/auth/role-predicates.js +28 -2
  233. package/dist/features/auth/schemas/firestore.d.ts +22 -0
  234. package/dist/features/auth/schemas/index.d.ts +1 -1
  235. package/dist/features/auth/schemas/index.js +44 -8
  236. package/dist/features/auth/types/index.d.ts +14 -1
  237. package/dist/features/blog/api/route.js +10 -2
  238. package/dist/features/blog/components/BlogIndexListing.js +1 -1
  239. package/dist/features/blog/hooks/useBlog.js +2 -2
  240. package/dist/features/blog/repository/blog.repository.js +3 -1
  241. package/dist/features/blog/schemas/index.d.ts +4 -0
  242. package/dist/features/blog/schemas/index.js +2 -0
  243. package/dist/features/blog/types/index.d.ts +1 -1
  244. package/dist/features/cart/actions/cart-actions.js +13 -4
  245. package/dist/features/cart/utils/pending-ops.js +1 -1
  246. package/dist/features/catalogue/components/CatalogueItemEditorView.d.ts +22 -0
  247. package/dist/features/catalogue/components/CatalogueItemEditorView.js +112 -52
  248. package/dist/features/catalogue/schemas/validation.d.ts +4 -4
  249. package/dist/features/catalogue/schemas/validation.js +47 -10
  250. package/dist/features/categories/components/BrandDetailPageView.js +28 -12
  251. package/dist/features/categories/components/CategoryDetailPageView.js +37 -20
  252. package/dist/features/categories/repository/categories.repository.js +3 -1
  253. package/dist/features/categories/schemas/bundle-form.d.ts +142 -0
  254. package/dist/features/categories/schemas/bundle-form.js +149 -0
  255. package/dist/features/checkout/actions/checkout-value-otp-actions.js +10 -1
  256. package/dist/features/classified/components/ClassifiedContactSellerPanel.js +1 -1
  257. package/dist/features/classified/components/ClassifiedDetailPageView.d.ts +5 -4
  258. package/dist/features/classified/components/ClassifiedDetailPageView.js +47 -18
  259. package/dist/features/consultation/components/ConsultationForm.js +1 -1
  260. package/dist/features/consultation/schemas/index.js +34 -10
  261. package/dist/features/corporate/schemas/index.js +36 -15
  262. package/dist/features/digital-codes/components/DigitalCodeDetailPageView.js +4 -1
  263. package/dist/features/events/components/EventBanner.js +5 -2
  264. package/dist/features/events/components/EventOfferCard.js +3 -1
  265. package/dist/features/events/components/EventPollWidget.js +1 -1
  266. package/dist/features/events/components/SpinWheelView.js +3 -2
  267. package/dist/features/filters/FilterPanel.js +3 -3
  268. package/dist/features/filters/RangeFilter.d.ts +10 -0
  269. package/dist/features/filters/RangeFilter.js +41 -4
  270. package/dist/features/grouped/components/GroupedListingEditorView.js +2 -1
  271. package/dist/features/history/hooks/useHistory.js +29 -27
  272. package/dist/features/homepage/components/AdSlot.js +3 -1
  273. package/dist/features/homepage/components/GoogleReviewsSection.js +8 -2
  274. package/dist/features/homepage/components/MarketplaceHomepageView.js +58 -15
  275. package/dist/features/homepage/components/SocialFeedSection.js +4 -1
  276. package/dist/features/homepage/hooks/useBlogArticles.js +1 -1
  277. package/dist/features/homepage/lib/live-stats.js +8 -1
  278. package/dist/features/homepage/repository/carousel.repository.js +2 -1
  279. package/dist/features/layout/BottomActions.js +84 -11
  280. package/dist/features/layout/BottomActionsContext.d.ts +1 -6
  281. package/dist/features/layout/BottomActionsContext.js +1 -1
  282. package/dist/features/layout/hooks/useBottomActions.js +2 -2
  283. package/dist/features/layout/hooks/useFormBottomActions.d.ts +12 -1
  284. package/dist/features/layout/hooks/useFormBottomActions.js +12 -6
  285. package/dist/features/live/components/LiveItemDetailPageView.js +4 -1
  286. package/dist/features/lottery/schemas/config-write.d.ts +9 -5
  287. package/dist/features/lottery/schemas/config-write.js +69 -9
  288. package/dist/features/media/finalize.js +3 -1
  289. package/dist/features/media/modals/ImageEditor.js +1 -1
  290. package/dist/features/media/modals/VideoThumbnailSelector.js +5 -2
  291. package/dist/features/media/modals/VideoTrimModal.js +5 -2
  292. package/dist/features/media/upload/MediaUploadField.js +2 -2
  293. package/dist/features/messages/hooks/useConversation.js +18 -4
  294. package/dist/features/messages/hooks/useConversations.js +25 -8
  295. package/dist/features/orders/components/RefundRequestView.js +5 -2
  296. package/dist/features/orders/schemas/buyer-forms.d.ts +6 -3
  297. package/dist/features/orders/schemas/buyer-forms.js +31 -3
  298. package/dist/features/orders/schemas/index.d.ts +2 -2
  299. package/dist/features/pre-orders/components/MarketplacePreorderCard.js +3 -1
  300. package/dist/features/pre-orders/components/PreOrderActionsClient.js +1 -1
  301. package/dist/features/pre-orders/components/PreOrderDetailPageView.js +4 -1
  302. package/dist/features/products/components/GroupSettingsPanel.js +3 -1
  303. package/dist/features/products/components/MakeOfferButton.d.ts +13 -2
  304. package/dist/features/products/components/MakeOfferButton.js +33 -11
  305. package/dist/features/products/components/PrizeDrawDetailPageView.js +4 -1
  306. package/dist/features/products/components/ProductDetailActions.js +0 -1
  307. package/dist/features/products/components/ProductDetailPageView.d.ts +7 -3
  308. package/dist/features/products/components/ProductDetailPageView.js +16 -7
  309. package/dist/features/products/components/ShareButton.js +3 -1
  310. package/dist/features/products/constants/action-defs.d.ts +1 -2
  311. package/dist/features/products/constants/action-defs.js +40 -43
  312. package/dist/features/products/repository/loadProductFeatures.js +10 -2
  313. package/dist/features/products/repository/products.repository.d.ts +5 -1
  314. package/dist/features/products/repository/products.repository.js +25 -2
  315. package/dist/features/products/schemas/firestore.d.ts +7 -3
  316. package/dist/features/products/schemas/product-features.validators.js +3 -0
  317. package/dist/features/promotions/components/CouponCard.js +11 -8
  318. package/dist/features/reviews/actions/review-actions.js +8 -1
  319. package/dist/features/reviews/components/ReviewDetailPageView.js +13 -3
  320. package/dist/features/reviews/components/ReviewDetailShell.js +3 -1
  321. package/dist/features/scams/actions/scam-actions.d.ts +9 -1
  322. package/dist/features/scams/actions/scam-actions.js +52 -12
  323. package/dist/features/scams/components/SellerTrustBadge.d.ts +1 -1
  324. package/dist/features/scams/components/SellerTrustBadge.js +13 -0
  325. package/dist/features/scams/repository/scammer.repository.js +2 -1
  326. package/dist/features/scams/schemas/firestore.d.ts +15 -1
  327. package/dist/features/scams/schemas/report-form.d.ts +5 -5
  328. package/dist/features/scams/schemas/report-form.js +18 -3
  329. package/dist/features/search/action-index/derive.d.ts +49 -0
  330. package/dist/features/search/action-index/derive.js +121 -0
  331. package/dist/features/search/action-index/repository.d.ts +42 -0
  332. package/dist/features/search/action-index/repository.js +100 -0
  333. package/dist/features/search/action-index/settings-entries.d.ts +41 -0
  334. package/dist/features/search/action-index/settings-entries.js +268 -0
  335. package/dist/features/search/action-index/types.d.ts +81 -0
  336. package/dist/features/search/action-index/types.js +102 -0
  337. package/dist/features/search/action-index/validate-entry.d.ts +34 -0
  338. package/dist/features/search/action-index/validate-entry.js +114 -0
  339. package/dist/features/search/hooks/useNavSuggestions.d.ts +5 -1
  340. package/dist/features/search/hooks/useNavSuggestions.js +23 -3
  341. package/dist/features/search/repository/search.repository.js +3 -1
  342. package/dist/features/seller/actions/offer-actions.js +43 -19
  343. package/dist/features/seller/actions/seller-actions.js +29 -5
  344. package/dist/features/seller/components/CategoryChipPicker.d.ts +9 -0
  345. package/dist/features/seller/components/CategoryChipPicker.js +12 -0
  346. package/dist/features/seller/components/FulfillmentView.js +5 -2
  347. package/dist/features/seller/components/PhysicalLocationModal.js +1 -1
  348. package/dist/features/seller/components/PrintCenterView.js +3 -1
  349. package/dist/features/seller/components/SellerAddressesView.js +5 -1
  350. package/dist/features/seller/components/SellerAnalyticsAlertsView.js +83 -43
  351. package/dist/features/seller/components/SellerArtView.d.ts +14 -7
  352. package/dist/features/seller/components/SellerArtView.js +4 -119
  353. package/dist/features/seller/components/SellerBidsView.js +1 -1
  354. package/dist/features/seller/components/SellerClassifiedView.d.ts +14 -7
  355. package/dist/features/seller/components/SellerClassifiedView.js +4 -124
  356. package/dist/features/seller/components/SellerCouponEditorView.d.ts +22 -1
  357. package/dist/features/seller/components/SellerCouponEditorView.js +91 -45
  358. package/dist/features/seller/components/SellerCouponsView.js +1 -1
  359. package/dist/features/seller/components/SellerDigitalCodesView.d.ts +14 -7
  360. package/dist/features/seller/components/SellerDigitalCodesView.js +4 -126
  361. package/dist/features/seller/components/SellerGoogleReviewsView.js +2 -2
  362. package/dist/features/seller/components/SellerListingTypeView.d.ts +66 -0
  363. package/dist/features/seller/components/SellerListingTypeView.js +277 -0
  364. package/dist/features/seller/components/SellerLiveView.d.ts +14 -7
  365. package/dist/features/seller/components/SellerLiveView.js +4 -126
  366. package/dist/features/seller/components/SellerOrdersView.js +3 -3
  367. package/dist/features/seller/components/SellerPayoutMethodsView.js +2 -2
  368. package/dist/features/seller/components/SellerProductShell.d.ts +5 -0
  369. package/dist/features/seller/components/SellerProductShell.js +15 -5
  370. package/dist/features/seller/components/SellerProductsView.js +24 -10
  371. package/dist/features/seller/components/SellerReviewsView.js +47 -16
  372. package/dist/features/seller/components/SellerShippingConfigsView.js +5 -4
  373. package/dist/features/seller/components/SellerSidebar.d.ts +3 -6
  374. package/dist/features/seller/components/SellerStickersView.d.ts +14 -7
  375. package/dist/features/seller/components/SellerStickersView.js +4 -119
  376. package/dist/features/seller/components/SellerStoreCategoriesView.js +3 -2
  377. package/dist/features/seller/components/SellerSupportView.d.ts +31 -0
  378. package/dist/features/seller/components/SellerSupportView.js +100 -0
  379. package/dist/features/seller/components/index.d.ts +4 -8
  380. package/dist/features/seller/components/index.js +2 -4
  381. package/dist/features/seller/index.d.ts +0 -1
  382. package/dist/features/seller/index.js +0 -1
  383. package/dist/features/seller/schemas/coupon-form.d.ts +214 -0
  384. package/dist/features/seller/schemas/coupon-form.js +155 -23
  385. package/dist/features/seller/schemas/offer-forms.d.ts +16 -7
  386. package/dist/features/seller/schemas/offer-forms.js +28 -12
  387. package/dist/features/shell/FormShell.js +2 -2
  388. package/dist/features/shell/QuickFormDrawer.js +2 -2
  389. package/dist/features/shell/SectionForm.d.ts +19 -1
  390. package/dist/features/shell/SectionForm.js +104 -17
  391. package/dist/features/shell/build-sections.d.ts +23 -0
  392. package/dist/features/shell/build-sections.js +106 -8
  393. package/dist/features/shell/field-ui-meta.d.ts +44 -0
  394. package/dist/features/shell/field-ui-meta.js +14 -7
  395. package/dist/features/shell/form-sections.d.ts +46 -0
  396. package/dist/features/shell/form-sections.js +114 -0
  397. package/dist/features/shipments/components/AdminShipmentEditorView.js +87 -64
  398. package/dist/features/shipments/schemas/validation.d.ts +2 -2
  399. package/dist/features/shipments/schemas/validation.js +44 -13
  400. package/dist/features/store-extensions/schemas/custom-role-form.js +6 -2
  401. package/dist/features/store-extensions/schemas/listing-template-form.d.ts +7 -7
  402. package/dist/features/store-extensions/schemas/payout-method-form.js +14 -0
  403. package/dist/features/stores/actions/store-query-actions.js +3 -2
  404. package/dist/features/stores/api/[storeSlug]/auctions/route.js +3 -1
  405. package/dist/features/stores/api/[storeSlug]/products/route.js +3 -1
  406. package/dist/features/stores/components/StoreDetailLayoutView.d.ts +1 -1
  407. package/dist/features/stores/components/StoreDetailLayoutView.js +12 -3
  408. package/dist/features/support/repository/support.repository.d.ts +21 -0
  409. package/dist/features/support/repository/support.repository.js +63 -0
  410. package/dist/features/support/schemas/firestore.d.ts +27 -2
  411. package/dist/features/support/schemas/firestore.js +2 -0
  412. package/dist/features/support/schemas/ticket-create-form.js +7 -0
  413. package/dist/features/tester/schemas/checklist-item-form.d.ts +43 -0
  414. package/dist/features/tester/schemas/checklist-item-form.js +109 -0
  415. package/dist/features/tester/seed-data/blog-tester-seed-data.js +2 -2
  416. package/dist/features/tester/seed-data/categories-tester-seed-data.js +2 -2
  417. package/dist/features/tester/seed-data/events-tester-seed-data.js +5 -5
  418. package/dist/features/tester/seed-data/orders-tester-seed-data.js +2 -2
  419. package/dist/features/tester/seed-data/products-tester-seed-data.js +48 -49
  420. package/dist/features/tester/seed-data/stores-tester-seed-data.js +3 -3
  421. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +291 -30
  422. package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.js +51 -14
  423. package/dist/features/wishlist/hooks/useWishlistToggle.js +8 -1
  424. package/dist/http/api-handler.js +2 -1
  425. package/dist/index.d.ts +25 -104
  426. package/dist/index.js +38 -143
  427. package/dist/jobs.d.ts +1 -1
  428. package/dist/jobs.js +1 -1
  429. package/dist/monitoring/browser.d.ts +0 -2
  430. package/dist/monitoring/browser.js +12 -1
  431. package/dist/monitoring/index.d.ts +0 -2
  432. package/dist/monitoring/index.js +0 -1
  433. package/dist/next/api/routeHandler.js +9 -4
  434. package/dist/next/index.d.ts +1 -2
  435. package/dist/next/index.js +0 -1
  436. package/dist/next/middleware/index.d.ts +0 -2
  437. package/dist/next/middleware/index.js +0 -1
  438. package/dist/next/routing/route-map.d.ts +8 -7
  439. package/dist/next/routing/route-map.js +10 -3
  440. package/dist/providers/auth-firebase/session.js +3 -1
  441. package/dist/providers/db-firebase/admin-app-lite.js +8 -8
  442. package/dist/providers/db-firebase/admin.js +27 -13
  443. package/dist/providers/db-firebase/browser-stub.d.ts +1 -11
  444. package/dist/providers/db-firebase/browser-stub.js +6 -11
  445. package/dist/providers/db-firebase/index.d.ts +0 -1
  446. package/dist/providers/db-firebase/index.js +0 -1
  447. package/dist/providers/db-firebase/rtdb-paths.d.ts +15 -6
  448. package/dist/providers/db-firebase/rtdb-paths.js +15 -6
  449. package/dist/providers/db-firebase/rtdb-url.d.ts +27 -0
  450. package/dist/providers/db-firebase/rtdb-url.js +50 -0
  451. package/dist/providers/db-firebase/sieve.d.ts +22 -0
  452. package/dist/providers/firebase-client/realtime.d.ts +20 -0
  453. package/dist/providers/firebase-client/realtime.js +34 -1
  454. package/dist/providers.d.ts +1 -1
  455. package/dist/providers.js +1 -1
  456. package/dist/react/hooks/use-action-dispatch.js +8 -2
  457. package/dist/react/hooks/useFormStatePreservation.js +3 -1
  458. package/dist/react/hooks/useListingTypeFlags.d.ts +1 -1
  459. package/dist/react/hooks/useListingTypeFlags.js +1 -1
  460. package/dist/react/hooks/usePendingFilters.js +5 -3
  461. package/dist/react/hooks/usePendingTable.js +15 -3
  462. package/dist/react/hooks/useRealtimeEvent.js +20 -9
  463. package/dist/repositories/index.d.ts +0 -1
  464. package/dist/repositories/index.js +0 -1
  465. package/dist/schemas/registry.d.ts +197 -232
  466. package/dist/schemas/registry.js +5 -6
  467. package/dist/schemas/webhooks/razorpay.d.ts +50 -50
  468. package/dist/security/authorization.d.ts +9 -0
  469. package/dist/security/authorization.js +16 -2
  470. package/dist/security/browser.d.ts +1 -3
  471. package/dist/security/browser.js +5 -2
  472. package/dist/security/index.d.ts +1 -3
  473. package/dist/security/index.js +19 -2
  474. package/dist/security/pii-encrypt.js +16 -0
  475. package/dist/security/pii-schemas.d.ts +0 -14
  476. package/dist/security/pii-schemas.js +7 -15
  477. package/dist/seed/_helpers/category-forest.js +2 -2
  478. package/dist/seed/_helpers/media.d.ts +19 -0
  479. package/dist/seed/_helpers/media.js +75 -0
  480. package/dist/seed/blog-posts-seed-data.js +17 -17
  481. package/dist/seed/carousel-slides-seed-data.js +7 -7
  482. package/dist/seed/cart-seed-data.js +13 -13
  483. package/dist/seed/categories-seed-data.js +10 -10
  484. package/dist/seed/events-seed-data.js +24 -24
  485. package/dist/seed/factories/product.factory.js +4 -4
  486. package/dist/seed/factories/store.factory.js +3 -3
  487. package/dist/seed/factories/user.factory.js +2 -2
  488. package/dist/seed/grouped-listings-seed-data.js +11 -11
  489. package/dist/seed/homepage-sections-seed-data.js +2 -2
  490. package/dist/seed/index.d.ts +0 -1
  491. package/dist/seed/index.js +0 -1
  492. package/dist/seed/manifest.d.ts +1 -1
  493. package/dist/seed/manifest.js +0 -5
  494. package/dist/seed/notifications-seed-data.js +20 -1
  495. package/dist/seed/orders-seed-data.js +2 -2
  496. package/dist/seed/products-art-seed-data.js +16 -16
  497. package/dist/seed/products-auctions-seed-data.js +34 -34
  498. package/dist/seed/products-classifieds-seed-data.js +35 -37
  499. package/dist/seed/products-digital-codes-seed-data.js +20 -20
  500. package/dist/seed/products-live-items-seed-data.js +11 -11
  501. package/dist/seed/products-preorders-seed-data.js +13 -13
  502. package/dist/seed/products-prize-draws-seed-data.js +43 -43
  503. package/dist/seed/products-standard-seed-data.js +54 -54
  504. package/dist/seed/products-stickers-seed-data.js +15 -15
  505. package/dist/seed/reviews-seed-data.js +4 -4
  506. package/dist/seed/scammers-seed-data.js +3 -3
  507. package/dist/seed/site-settings-seed-data.js +11 -24
  508. package/dist/seed/store-extensions-seed-data.js +10 -10
  509. package/dist/seed/stores-seed-data.js +11 -11
  510. package/dist/seed/support-tickets-seed-data.d.ts +14 -0
  511. package/dist/seed/support-tickets-seed-data.js +20 -1
  512. package/dist/seed/users-seed-data.js +20 -20
  513. package/dist/server-entry.d.ts +0 -1
  514. package/dist/server-entry.js +0 -1
  515. package/dist/server.d.ts +9 -6
  516. package/dist/server.js +7 -13
  517. package/dist/styles.css +248 -68
  518. package/dist/tailwind-utilities.css +1 -1
  519. package/dist/tokens/themes/default-dark.js +2 -2
  520. package/dist/tokens/themes/default-light.js +2 -2
  521. package/dist/tokens/tokens.css +24 -4
  522. package/dist/ui/components/ActionRow.d.ts +50 -0
  523. package/dist/ui/components/ActionRow.js +53 -0
  524. package/dist/ui/components/ActionRow.style.css +145 -0
  525. package/dist/ui/components/Drawer.d.ts +10 -0
  526. package/dist/ui/components/Drawer.js +2 -1
  527. package/dist/ui/components/FilterDrawer.js +4 -1
  528. package/dist/ui/components/FilterDrawer.style.css +6 -12
  529. package/dist/ui/components/FormActionBar.js +14 -1
  530. package/dist/ui/components/FormActionBar.style.css +12 -11
  531. package/dist/ui/components/ListingLayout.js +8 -1
  532. package/dist/ui/components/ListingLayout.style.css +6 -13
  533. package/dist/ui/components/Modal.d.ts +15 -1
  534. package/dist/ui/components/Modal.js +17 -3
  535. package/dist/ui/components/QuickCreateModal.js +2 -2
  536. package/dist/ui/components/QuickCreateModal.style.css +78 -84
  537. package/dist/ui/components/RecordDetailModal.js +2 -2
  538. package/dist/ui/components/SideDrawer.d.ts +8 -0
  539. package/dist/ui/components/SideDrawer.js +2 -1
  540. package/dist/ui/components/SideDrawer.style.css +6 -3
  541. package/dist/ui/components/SideModal.d.ts +11 -1
  542. package/dist/ui/components/SideModal.js +3 -2
  543. package/dist/ui/components/SideModal.style.css +14 -0
  544. package/dist/ui/components/Typography.style.css +33 -24
  545. package/dist/ui/components/index.style.css +1 -0
  546. package/dist/ui/components/toolbar-collapse.js +1 -2
  547. package/dist/ui/forms/FormShell.style.css +260 -311
  548. package/dist/ui/index.d.ts +2 -0
  549. package/dist/ui/index.js +1 -0
  550. package/dist/utils/index.d.ts +0 -1
  551. package/dist/utils/index.js +0 -1
  552. package/dist/validation/index.d.ts +1 -1
  553. package/dist/validation/index.js +1 -1
  554. package/dist/validation/schemas.d.ts +0 -19
  555. package/dist/validation/schemas.js +8 -19
  556. package/package.json +1 -1
  557. package/scripts/seed-cli.mjs +3 -6
@@ -24,7 +24,7 @@
24
24
  */
25
25
  import { PRODUCT_FIELDS } from "../../../constants/field-names";
26
26
  import { buildSearchTxt } from "../../../utils/search-txt";
27
- import { seedExtMedia } from "../../../seed/_helpers/media";
27
+ import { seedPhoto } from "../../../seed/_helpers/media";
28
28
  import { testDataExpiresAt } from "./tester-ttl";
29
29
  const TESTER_STORE_ID = "store-tester-sandbox";
30
30
  const TESTER_STORE_NAME = "Tester Sandbox Store";
@@ -71,8 +71,8 @@ const stagedAuctions = AUCTION_CYCLE_STAGGER_HOURS.map((hours, i) => withTokens(
71
71
  bidCount: 0,
72
72
  bidsHaveStarted: false,
73
73
  isSold: false,
74
- mainImage: seedExtMedia(`https://picsum.photos/seed/auction-image-tester-sandbox-cycle-${i + 1}-20260101/900/900`),
75
- images: [seedExtMedia(`https://picsum.photos/seed/auction-image-tester-sandbox-cycle-${i + 1}-20260101/900/900`)],
74
+ mainImage: seedPhoto(`auction-image-tester-sandbox-cycle-${i + 1}-20260101`, 900, 900),
75
+ images: [seedPhoto(`auction-image-tester-sandbox-cycle-${i + 1}-20260101`, 900, 900)],
76
76
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
77
77
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
78
78
  listingType: "auction",
@@ -154,8 +154,8 @@ const buyoutAuctions = [
154
154
  bidCount: f.bidCount,
155
155
  bidsHaveStarted: f.bidsHaveStarted,
156
156
  isSold: false,
157
- mainImage: seedExtMedia(`https://picsum.photos/seed/auction-image-tester-sandbox-${f.key}-20260101/900/900`),
158
- images: [seedExtMedia(`https://picsum.photos/seed/auction-image-tester-sandbox-${f.key}-20260101/900/900`)],
157
+ mainImage: seedPhoto(`auction-image-tester-sandbox-${f.key}-20260101`, 900, 900),
158
+ images: [seedPhoto(`auction-image-tester-sandbox-${f.key}-20260101`, 900, 900)],
159
159
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
160
160
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
161
161
  listingType: "auction",
@@ -193,8 +193,8 @@ const offerableProduct = withTokens({
193
193
  stockQuantity: 5,
194
194
  availableQuantity: 5,
195
195
  isSold: false,
196
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-offerable-20260101/900/900"),
197
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-offerable-20260101/900/900")],
196
+ mainImage: seedPhoto("product-image-tester-offerable-20260101", 900, 900),
197
+ images: [seedPhoto("product-image-tester-offerable-20260101", 900, 900)],
198
198
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
199
199
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
200
200
  listingType: "standard",
@@ -223,8 +223,8 @@ export const productsTesterSeedData = [
223
223
  stockQuantity: 10,
224
224
  availableQuantity: 10,
225
225
  isSold: false,
226
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-1-20260101/900/900"),
227
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-1-20260101/900/900")],
226
+ mainImage: seedPhoto("product-image-tester-standard-1-20260101", 900, 900),
227
+ images: [seedPhoto("product-image-tester-standard-1-20260101", 900, 900)],
228
228
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
229
229
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
230
230
  listingType: "standard",
@@ -259,8 +259,8 @@ export const productsTesterSeedData = [
259
259
  stockQuantity: 10,
260
260
  availableQuantity: 10,
261
261
  isSold: false,
262
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-2-20260101/900/900"),
263
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-2-20260101/900/900")],
262
+ mainImage: seedPhoto("product-image-tester-standard-2-20260101", 900, 900),
263
+ images: [seedPhoto("product-image-tester-standard-2-20260101", 900, 900)],
264
264
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
265
265
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
266
266
  listingType: "standard",
@@ -290,8 +290,8 @@ export const productsTesterSeedData = [
290
290
  stockQuantity: 10,
291
291
  availableQuantity: 10,
292
292
  isSold: false,
293
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-3-20260101/900/900"),
294
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-3-20260101/900/900")],
293
+ mainImage: seedPhoto("product-image-tester-standard-3-20260101", 900, 900),
294
+ images: [seedPhoto("product-image-tester-standard-3-20260101", 900, 900)],
295
295
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
296
296
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
297
297
  listingType: "standard",
@@ -326,8 +326,8 @@ export const productsTesterSeedData = [
326
326
  stockQuantity: 0,
327
327
  availableQuantity: 0,
328
328
  isSold: true,
329
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-group-soldout-20260101/900/900"),
330
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-group-soldout-20260101/900/900")],
329
+ mainImage: seedPhoto("product-image-tester-group-soldout-20260101", 900, 900),
330
+ images: [seedPhoto("product-image-tester-group-soldout-20260101", 900, 900)],
331
331
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
332
332
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
333
333
  listingType: "standard",
@@ -363,8 +363,8 @@ export const productsTesterSeedData = [
363
363
  stockQuantity: 6,
364
364
  availableQuantity: 6,
365
365
  isSold: false,
366
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-crossstore-a-20260101/900/900"),
367
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-crossstore-a-20260101/900/900")],
366
+ mainImage: seedPhoto("product-image-tester-crossstore-a-20260101", 900, 900),
367
+ images: [seedPhoto("product-image-tester-crossstore-a-20260101", 900, 900)],
368
368
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
369
369
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
370
370
  listingType: "standard",
@@ -394,8 +394,8 @@ export const productsTesterSeedData = [
394
394
  stockQuantity: 6,
395
395
  availableQuantity: 6,
396
396
  isSold: false,
397
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-crossstore-b-20260101/900/900"),
398
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-crossstore-b-20260101/900/900")],
397
+ mainImage: seedPhoto("product-image-tester-crossstore-b-20260101", 900, 900),
398
+ images: [seedPhoto("product-image-tester-crossstore-b-20260101", 900, 900)],
399
399
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
400
400
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
401
401
  listingType: "standard",
@@ -427,8 +427,8 @@ export const productsTesterSeedData = [
427
427
  stockQuantity: 0,
428
428
  availableQuantity: 0,
429
429
  isSold: true,
430
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-sold-20260101/900/900"),
431
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-sold-20260101/900/900")],
430
+ mainImage: seedPhoto("product-image-tester-standard-sold-20260101", 900, 900),
431
+ images: [seedPhoto("product-image-tester-standard-sold-20260101", 900, 900)],
432
432
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
433
433
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
434
434
  listingType: "standard",
@@ -459,8 +459,8 @@ export const productsTesterSeedData = [
459
459
  bidsHaveStarted: true,
460
460
  leadingBidderId: "user-tester-qa",
461
461
  isSold: true,
462
- mainImage: seedExtMedia("https://picsum.photos/seed/auction-image-tester-sandbox-won-20260101/900/900"),
463
- images: [seedExtMedia("https://picsum.photos/seed/auction-image-tester-sandbox-won-20260101/900/900")],
462
+ mainImage: seedPhoto("auction-image-tester-sandbox-won-20260101", 900, 900),
463
+ images: [seedPhoto("auction-image-tester-sandbox-won-20260101", 900, 900)],
464
464
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
465
465
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
466
466
  listingType: "auction",
@@ -485,8 +485,8 @@ export const productsTesterSeedData = [
485
485
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
486
486
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
487
487
  listingType: "pre-order",
488
- images: [seedExtMedia("https://picsum.photos/seed/preorder-image-tester-sandbox-1-20260101/900/900")],
489
- mainImage: seedExtMedia("https://picsum.photos/seed/preorder-image-tester-sandbox-1-20260101/900/900"),
488
+ images: [seedPhoto("preorder-image-tester-sandbox-1-20260101", 900, 900)],
489
+ mainImage: seedPhoto("preorder-image-tester-sandbox-1-20260101", 900, 900),
490
490
  isSold: false,
491
491
  // stockQuantity must be set (not just availableQuantity) — the public
492
492
  // listing route's default "hide sold" filter is a Firestore inequality
@@ -523,8 +523,8 @@ export const productsTesterSeedData = [
523
523
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
524
524
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
525
525
  listingType: "prize-draw",
526
- images: [seedExtMedia("https://picsum.photos/seed/prizedraw-image-tester-sandbox-1-20260101/900/900")],
527
- mainImage: seedExtMedia("https://picsum.photos/seed/prizedraw-image-tester-sandbox-1-20260101/900/900"),
526
+ images: [seedPhoto("prizedraw-image-tester-sandbox-1-20260101", 900, 900)],
527
+ mainImage: seedPhoto("prizedraw-image-tester-sandbox-1-20260101", 900, 900),
528
528
  isSold: false,
529
529
  stockQuantity: 3,
530
530
  availableQuantity: 3,
@@ -542,9 +542,9 @@ export const productsTesterSeedData = [
542
542
  prizeRevealWindowEnd: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000),
543
543
  prizeRevealStatus: "open",
544
544
  prizeDrawItems: [
545
- { itemNumber: 1, title: "Test Prize — Grand", description: "Disposable test grand prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-1-20260101/600/600")], condition: "new", estimatedValue: 500, isWon: false },
546
- { itemNumber: 2, title: "Test Prize — Runner-up", description: "Disposable test runner-up prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-2-20260101/600/600")], condition: "new", estimatedValue: 150, isWon: false },
547
- { itemNumber: 3, title: "Test Prize — Consolation", description: "Disposable test consolation prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-3-20260101/600/600")], condition: "new", estimatedValue: 20, isWon: false },
545
+ { itemNumber: 1, title: "Test Prize — Grand", description: "Disposable test grand prize.", images: [seedPhoto("prizedraw-item-1-20260101", 600, 600)], condition: "new", estimatedValue: 500, isWon: false },
546
+ { itemNumber: 2, title: "Test Prize — Runner-up", description: "Disposable test runner-up prize.", images: [seedPhoto("prizedraw-item-2-20260101", 600, 600)], condition: "new", estimatedValue: 150, isWon: false },
547
+ { itemNumber: 3, title: "Test Prize — Consolation", description: "Disposable test consolation prize.", images: [seedPhoto("prizedraw-item-3-20260101", 600, 600)], condition: "new", estimatedValue: 20, isWon: false },
548
548
  ],
549
549
  createdAt: new Date(),
550
550
  updatedAt: new Date(),
@@ -563,8 +563,8 @@ export const productsTesterSeedData = [
563
563
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
564
564
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
565
565
  listingType: "prize-draw",
566
- images: [seedExtMedia("https://picsum.photos/seed/prizedraw-image-tester-sandbox-closed-20260101/900/900")],
567
- mainImage: seedExtMedia("https://picsum.photos/seed/prizedraw-image-tester-sandbox-closed-20260101/900/900"),
566
+ images: [seedPhoto("prizedraw-image-tester-sandbox-closed-20260101", 900, 900)],
567
+ mainImage: seedPhoto("prizedraw-image-tester-sandbox-closed-20260101", 900, 900),
568
568
  isSold: true,
569
569
  stockQuantity: 0,
570
570
  availableQuantity: 0,
@@ -582,9 +582,9 @@ export const productsTesterSeedData = [
582
582
  prizeRevealWindowEnd: new Date(Date.now() - 1 * 24 * 60 * 60 * 1000),
583
583
  prizeRevealStatus: "closed",
584
584
  prizeDrawItems: [
585
- { itemNumber: 1, title: "Test Prize — Grand", description: "Disposable test grand prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-closed-1-20260101/600/600")], condition: "new", estimatedValue: 500, isWon: true },
586
- { itemNumber: 2, title: "Test Prize — Runner-up", description: "Disposable test runner-up prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-closed-2-20260101/600/600")], condition: "new", estimatedValue: 150, isWon: true },
587
- { itemNumber: 3, title: "Test Prize — Consolation", description: "Disposable test consolation prize.", images: [seedExtMedia("https://picsum.photos/seed/prizedraw-item-closed-3-20260101/600/600")], condition: "new", estimatedValue: 20, isWon: true },
585
+ { itemNumber: 1, title: "Test Prize — Grand", description: "Disposable test grand prize.", images: [seedPhoto("prizedraw-item-closed-1-20260101", 600, 600)], condition: "new", estimatedValue: 500, isWon: true },
586
+ { itemNumber: 2, title: "Test Prize — Runner-up", description: "Disposable test runner-up prize.", images: [seedPhoto("prizedraw-item-closed-2-20260101", 600, 600)], condition: "new", estimatedValue: 150, isWon: true },
587
+ { itemNumber: 3, title: "Test Prize — Consolation", description: "Disposable test consolation prize.", images: [seedPhoto("prizedraw-item-closed-3-20260101", 600, 600)], condition: "new", estimatedValue: 20, isWon: true },
588
588
  ],
589
589
  createdAt: new Date(),
590
590
  updatedAt: new Date(),
@@ -609,8 +609,8 @@ export const productsTesterSeedData = [
609
609
  condition: PRODUCT_FIELDS.CONDITION_VALUES.GOOD,
610
610
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
611
611
  listingType: "classified",
612
- images: [seedExtMedia("https://picsum.photos/seed/classified-image-tester-sandbox-1-20260101/900/900")],
613
- mainImage: seedExtMedia("https://picsum.photos/seed/classified-image-tester-sandbox-1-20260101/900/900"),
612
+ images: [seedPhoto("classified-image-tester-sandbox-1-20260101", 900, 900)],
613
+ mainImage: seedPhoto("classified-image-tester-sandbox-1-20260101", 900, 900),
614
614
  isSold: false,
615
615
  stockQuantity: 1,
616
616
  availableQuantity: 1,
@@ -620,7 +620,6 @@ export const productsTesterSeedData = [
620
620
  isOnSale: false,
621
621
  classified: {
622
622
  meetupArea: { city: "Bengaluru", locality: "Test Locality", pincode: "560001" },
623
- contactMethod: "both",
624
623
  acceptsShipping: false,
625
624
  negotiable: true,
626
625
  },
@@ -641,8 +640,8 @@ export const productsTesterSeedData = [
641
640
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
642
641
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
643
642
  listingType: "digital-code",
644
- images: [seedExtMedia("https://picsum.photos/seed/digitalcode-image-tester-sandbox-1-20260101/900/900")],
645
- mainImage: seedExtMedia("https://picsum.photos/seed/digitalcode-image-tester-sandbox-1-20260101/900/900"),
643
+ images: [seedPhoto("digitalcode-image-tester-sandbox-1-20260101", 900, 900)],
644
+ mainImage: seedPhoto("digitalcode-image-tester-sandbox-1-20260101", 900, 900),
646
645
  isSold: false,
647
646
  stockQuantity: 10,
648
647
  availableQuantity: 10,
@@ -673,8 +672,8 @@ export const productsTesterSeedData = [
673
672
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
674
673
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
675
674
  listingType: "live",
676
- images: [seedExtMedia("https://picsum.photos/seed/live-image-tester-sandbox-1-20260101/900/900")],
677
- mainImage: seedExtMedia("https://picsum.photos/seed/live-image-tester-sandbox-1-20260101/900/900"),
675
+ images: [seedPhoto("live-image-tester-sandbox-1-20260101", 900, 900)],
676
+ mainImage: seedPhoto("live-image-tester-sandbox-1-20260101", 900, 900),
678
677
  // Real, directly-playable dog video (a raw <video> element, not routed through
679
678
  // /api/media/ext which is image-only — Root Cause #27) — Wikimedia Commons,
680
679
  // CC-BY-SA 4.0, https://commons.wikimedia.org/wiki/File:Slow_motion_of_running_greyhound.webm.
@@ -682,7 +681,7 @@ export const productsTesterSeedData = [
682
681
  // on a genuine "animal actually moving" clip instead of a broken YouTube watch-page URL.
683
682
  video: {
684
683
  url: "https://upload.wikimedia.org/wikipedia/commons/4/42/Slow_motion_of_running_greyhound.webm", // audit-seed-external-url-ok: raw <video> src, CC-BY-SA 4.0 (Wikimedia Commons)
685
- thumbnailUrl: seedExtMedia("https://picsum.photos/seed/live-video-thumb-tester-sandbox-1-20260101/800/450"),
684
+ thumbnailUrl: seedPhoto("live-video-thumb-tester-sandbox-1-20260101", 800, 450),
686
685
  duration: 14,
687
686
  },
688
687
  isSold: false,
@@ -718,8 +717,8 @@ export const productsTesterSeedData = [
718
717
  stockQuantity: 5,
719
718
  availableQuantity: 5,
720
719
  isSold: false,
721
- mainImage: seedExtMedia("https://picsum.photos/seed/art-image-tester-sandbox-1-20260101/900/900"),
722
- images: [seedExtMedia("https://picsum.photos/seed/art-image-tester-sandbox-1-20260101/900/900")],
720
+ mainImage: seedPhoto("art-image-tester-sandbox-1-20260101", 900, 900),
721
+ images: [seedPhoto("art-image-tester-sandbox-1-20260101", 900, 900)],
723
722
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
724
723
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
725
724
  listingType: "art",
@@ -744,8 +743,8 @@ export const productsTesterSeedData = [
744
743
  stockQuantity: 25,
745
744
  availableQuantity: 25,
746
745
  isSold: false,
747
- mainImage: seedExtMedia("https://picsum.photos/seed/stickers-image-tester-sandbox-1-20260101/900/900"),
748
- images: [seedExtMedia("https://picsum.photos/seed/stickers-image-tester-sandbox-1-20260101/900/900")],
746
+ mainImage: seedPhoto("stickers-image-tester-sandbox-1-20260101", 900, 900),
747
+ images: [seedPhoto("stickers-image-tester-sandbox-1-20260101", 900, 900)],
749
748
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
750
749
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
751
750
  listingType: "stickers",
@@ -774,8 +773,8 @@ export const productsTesterSeedData = [
774
773
  condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
775
774
  status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
776
775
  listingType: "standard",
777
- images: [seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-1-20260101/900/900")],
778
- mainImage: seedExtMedia("https://picsum.photos/seed/product-image-tester-standard-1-20260101/900/900"),
776
+ images: [seedPhoto("product-image-tester-standard-1-20260101", 900, 900)],
777
+ mainImage: seedPhoto("product-image-tester-standard-1-20260101", 900, 900),
779
778
  isSold: false,
780
779
  stockQuantity: 5,
781
780
  availableQuantity: 5,
@@ -15,7 +15,7 @@
15
15
  * @tag sideEffects:none
16
16
  */
17
17
  import { STORE_FIELDS } from "../../../constants/field-names";
18
- import { seedExtMedia } from "../../../seed/_helpers/media";
18
+ import { seedPhoto } from "../../../seed/_helpers/media";
19
19
  import { testDataExpiresAt } from "./tester-ttl";
20
20
  export const storesTesterSeedData = [
21
21
  {
@@ -25,8 +25,8 @@ export const storesTesterSeedData = [
25
25
  storeName: "Tester Sandbox Store",
26
26
  storeDescription: "Shared test store for the tester QA program. Products here are disposable and auto-expire — buy, bid, and review freely.",
27
27
  storeCategory: "category-tester-sandbox",
28
- storeLogoURL: seedExtMedia("https://picsum.photos/seed/store-logo-tester-sandbox-20260101/400/400"),
29
- storeBannerURL: seedExtMedia("https://picsum.photos/seed/store-banner-tester-sandbox-20260101/1600/400"),
28
+ storeLogoURL: seedPhoto("store-logo-tester-sandbox-20260101", 400, 400),
29
+ storeBannerURL: seedPhoto("store-banner-tester-sandbox-20260101", 1600, 400),
30
30
  status: STORE_FIELDS.STATUS_VALUES.ACTIVE,
31
31
  isPublic: true,
32
32
  bio: "This store exists only for tester QA. Everything in it is disposable test data.",