@mohasinac/appkit 4.58.0 → 4.59.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 (556) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/_internal/server/jobs/handlers/messages.d.ts +1 -1
  3. package/dist/_internal/server/jobs/handlers/messages.js +1 -1
  4. package/dist/_internal/shared/types/base-document.d.ts +1 -1
  5. package/dist/constants/seed-meta.d.ts +113 -0
  6. package/dist/constants/seed-meta.js +91 -0
  7. package/dist/index.d.ts +0 -131
  8. package/dist/index.js +50 -294
  9. package/dist/server.d.ts +0 -69
  10. package/dist/server.js +0 -69
  11. package/package.json +4 -2
  12. package/scripts/seed-cli.mjs +69 -1
  13. package/dist/features/tester/seed-data/_happy-path.d.ts +0 -23
  14. package/dist/features/tester/seed-data/_happy-path.js +0 -710
  15. package/dist/features/tester/seed-data/_money-flows.d.ts +0 -23
  16. package/dist/features/tester/seed-data/_money-flows.js +0 -610
  17. package/dist/features/tester/seed-data/authored/_types.d.ts +0 -57
  18. package/dist/features/tester/seed-data/authored/_types.js +0 -35
  19. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.d.ts +0 -2
  20. package/dist/features/tester/seed-data/authored/account-auth__profile-settings.js +0 -226
  21. package/dist/features/tester/seed-data/authored/account-auth__signup-login.d.ts +0 -2
  22. package/dist/features/tester/seed-data/authored/account-auth__signup-login.js +0 -329
  23. package/dist/features/tester/seed-data/authored/addresses__address-filters.d.ts +0 -2
  24. package/dist/features/tester/seed-data/authored/addresses__address-filters.js +0 -41
  25. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.d.ts +0 -2
  26. package/dist/features/tester/seed-data/authored/addresses__postal-lookup.js +0 -76
  27. package/dist/features/tester/seed-data/authored/addresses__postal-validation.d.ts +0 -2
  28. package/dist/features/tester/seed-data/authored/addresses__postal-validation.js +0 -78
  29. package/dist/features/tester/seed-data/authored/addresses__state-picker.d.ts +0 -2
  30. package/dist/features/tester/seed-data/authored/addresses__state-picker.js +0 -59
  31. package/dist/features/tester/seed-data/authored/addresses__unban-request.d.ts +0 -2
  32. package/dist/features/tester/seed-data/authored/addresses__unban-request.js +0 -77
  33. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.d.ts +0 -2
  34. package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.js +0 -151
  35. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.d.ts +0 -2
  36. package/dist/features/tester/seed-data/authored/admin__bans-and-trust.js +0 -265
  37. package/dist/features/tester/seed-data/authored/admin__blog-faqs.d.ts +0 -2
  38. package/dist/features/tester/seed-data/authored/admin__blog-faqs.js +0 -131
  39. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.d.ts +0 -2
  40. package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.js +0 -143
  41. package/dist/features/tester/seed-data/authored/admin__bulk-actions.d.ts +0 -2
  42. package/dist/features/tester/seed-data/authored/admin__bulk-actions.js +0 -207
  43. package/dist/features/tester/seed-data/authored/admin__bundles.d.ts +0 -2
  44. package/dist/features/tester/seed-data/authored/admin__bundles.js +0 -144
  45. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.d.ts +0 -2
  46. package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.js +0 -265
  47. package/dist/features/tester/seed-data/authored/admin__catalog-listings.d.ts +0 -2
  48. package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +0 -318
  49. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.d.ts +0 -2
  50. package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.js +0 -177
  51. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.d.ts +0 -2
  52. package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.js +0 -165
  53. package/dist/features/tester/seed-data/authored/admin__content-deletes.d.ts +0 -2
  54. package/dist/features/tester/seed-data/authored/admin__content-deletes.js +0 -267
  55. package/dist/features/tester/seed-data/authored/admin__content-marketing.d.ts +0 -2
  56. package/dist/features/tester/seed-data/authored/admin__content-marketing.js +0 -188
  57. package/dist/features/tester/seed-data/authored/admin__coupons.d.ts +0 -2
  58. package/dist/features/tester/seed-data/authored/admin__coupons.js +0 -215
  59. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.d.ts +0 -2
  60. package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.js +0 -202
  61. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.d.ts +0 -2
  62. package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.js +0 -249
  63. package/dist/features/tester/seed-data/authored/admin__media-watermark.d.ts +0 -2
  64. package/dist/features/tester/seed-data/authored/admin__media-watermark.js +0 -148
  65. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.d.ts +0 -2
  66. package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.js +0 -350
  67. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.d.ts +0 -2
  68. package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.js +0 -129
  69. package/dist/features/tester/seed-data/authored/admin__site-system.d.ts +0 -2
  70. package/dist/features/tester/seed-data/authored/admin__site-system.js +0 -586
  71. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.d.ts +0 -2
  72. package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.js +0 -260
  73. package/dist/features/tester/seed-data/authored/admin__users-trust.d.ts +0 -2
  74. package/dist/features/tester/seed-data/authored/admin__users-trust.js +0 -569
  75. package/dist/features/tester/seed-data/authored/buying__bidding.d.ts +0 -2
  76. package/dist/features/tester/seed-data/authored/buying__bidding.js +0 -449
  77. package/dist/features/tester/seed-data/authored/buying__browsing-search.d.ts +0 -2
  78. package/dist/features/tester/seed-data/authored/buying__browsing-search.js +0 -684
  79. package/dist/features/tester/seed-data/authored/buying__buying-checkout.d.ts +0 -2
  80. package/dist/features/tester/seed-data/authored/buying__buying-checkout.js +0 -546
  81. package/dist/features/tester/seed-data/authored/buying__buying-coupons.d.ts +0 -2
  82. package/dist/features/tester/seed-data/authored/buying__buying-coupons.js +0 -379
  83. package/dist/features/tester/seed-data/authored/buying__cart.d.ts +0 -2
  84. package/dist/features/tester/seed-data/authored/buying__cart.js +0 -1264
  85. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.d.ts +0 -2
  86. package/dist/features/tester/seed-data/authored/buying__image-tile-layout.js +0 -122
  87. package/dist/features/tester/seed-data/authored/buying__my-orders.d.ts +0 -2
  88. package/dist/features/tester/seed-data/authored/buying__my-orders.js +0 -279
  89. package/dist/features/tester/seed-data/authored/buying__offers.d.ts +0 -2
  90. package/dist/features/tester/seed-data/authored/buying__offers.js +0 -1127
  91. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.d.ts +0 -2
  92. package/dist/features/tester/seed-data/authored/buying__order-detail-actions.js +0 -153
  93. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.d.ts +0 -2
  94. package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.js +0 -252
  95. package/dist/features/tester/seed-data/authored/buying__product-detail.d.ts +0 -2
  96. package/dist/features/tester/seed-data/authored/buying__product-detail.js +0 -474
  97. package/dist/features/tester/seed-data/authored/buying__return-request.d.ts +0 -2
  98. package/dist/features/tester/seed-data/authored/buying__return-request.js +0 -165
  99. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.d.ts +0 -2
  100. package/dist/features/tester/seed-data/authored/buying__reviews-pagination.js +0 -260
  101. package/dist/features/tester/seed-data/authored/buying__reviews.d.ts +0 -2
  102. package/dist/features/tester/seed-data/authored/buying__reviews.js +0 -128
  103. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.d.ts +0 -2
  104. package/dist/features/tester/seed-data/authored/buying__spares-and-groups.js +0 -96
  105. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.d.ts +0 -2
  106. package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.js +0 -283
  107. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.d.ts +0 -2
  108. package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.js +0 -169
  109. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.d.ts +0 -2
  110. package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.js +0 -105
  111. package/dist/features/tester/seed-data/authored/buying__wishlist-history.d.ts +0 -2
  112. package/dist/features/tester/seed-data/authored/buying__wishlist-history.js +0 -374
  113. package/dist/features/tester/seed-data/authored/community-support__messages.d.ts +0 -2
  114. package/dist/features/tester/seed-data/authored/community-support__messages.js +0 -200
  115. package/dist/features/tester/seed-data/authored/community-support__public-profile.d.ts +0 -2
  116. package/dist/features/tester/seed-data/authored/community-support__public-profile.js +0 -54
  117. package/dist/features/tester/seed-data/authored/community-support__support-tickets.d.ts +0 -2
  118. package/dist/features/tester/seed-data/authored/community-support__support-tickets.js +0 -76
  119. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.d.ts +0 -4
  120. package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.js +0 -590
  121. package/dist/features/tester/seed-data/authored/content-discovery__blog.d.ts +0 -2
  122. package/dist/features/tester/seed-data/authored/content-discovery__blog.js +0 -110
  123. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.d.ts +0 -2
  124. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +0 -149
  125. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.d.ts +0 -2
  126. package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.js +0 -145
  127. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +0 -2
  128. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +0 -174
  129. package/dist/features/tester/seed-data/authored/content-discovery__coupons.d.ts +0 -2
  130. package/dist/features/tester/seed-data/authored/content-discovery__coupons.js +0 -169
  131. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.d.ts +0 -2
  132. package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.js +0 -209
  133. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.d.ts +0 -2
  134. package/dist/features/tester/seed-data/authored/content-discovery__event-participation.js +0 -207
  135. package/dist/features/tester/seed-data/authored/content-discovery__events.d.ts +0 -2
  136. package/dist/features/tester/seed-data/authored/content-discovery__events.js +0 -377
  137. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.d.ts +0 -2
  138. package/dist/features/tester/seed-data/authored/content-discovery__faq-help.js +0 -87
  139. package/dist/features/tester/seed-data/authored/content-discovery__notifications.d.ts +0 -2
  140. package/dist/features/tester/seed-data/authored/content-discovery__notifications.js +0 -147
  141. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.d.ts +0 -2
  142. package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.js +0 -209
  143. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.d.ts +0 -2
  144. package/dist/features/tester/seed-data/authored/content-discovery__parts-database.js +0 -167
  145. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.d.ts +0 -2
  146. package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.js +0 -73
  147. package/dist/features/tester/seed-data/authored/content-discovery__search.d.ts +0 -2
  148. package/dist/features/tester/seed-data/authored/content-discovery__search.js +0 -363
  149. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.d.ts +0 -2
  150. package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.js +0 -340
  151. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.d.ts +0 -2
  152. package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.js +0 -88
  153. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.d.ts +0 -2
  154. package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.js +0 -78
  155. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.d.ts +0 -2
  156. package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.js +0 -76
  157. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.d.ts +0 -2
  158. package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.js +0 -62
  159. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.d.ts +0 -2
  160. package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.js +0 -163
  161. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.d.ts +0 -2
  162. package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.js +0 -61
  163. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.d.ts +0 -2
  164. package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.js +0 -89
  165. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.d.ts +0 -2
  166. package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.js +0 -95
  167. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.d.ts +0 -2
  168. package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.js +0 -191
  169. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.d.ts +0 -2
  170. package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.js +0 -158
  171. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.d.ts +0 -2
  172. package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.js +0 -82
  173. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.d.ts +0 -2
  174. package/dist/features/tester/seed-data/authored/design-ux__footer-theme.js +0 -106
  175. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.d.ts +0 -2
  176. package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.js +0 -88
  177. package/dist/features/tester/seed-data/authored/design-ux__general-design.d.ts +0 -2
  178. package/dist/features/tester/seed-data/authored/design-ux__general-design.js +0 -204
  179. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.d.ts +0 -2
  180. package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.js +0 -301
  181. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.d.ts +0 -2
  182. package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.js +0 -90
  183. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.d.ts +0 -2
  184. package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.js +0 -85
  185. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.d.ts +0 -2
  186. package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.js +0 -407
  187. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.d.ts +0 -2
  188. package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.js +0 -88
  189. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +0 -2
  190. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +0 -84
  191. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.d.ts +0 -2
  192. package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.js +0 -214
  193. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.d.ts +0 -2
  194. package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.js +0 -275
  195. package/dist/features/tester/seed-data/authored/index.d.ts +0 -2
  196. package/dist/features/tester/seed-data/authored/index.js +0 -301
  197. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.d.ts +0 -2
  198. package/dist/features/tester/seed-data/authored/page-wiring__data-loss.js +0 -125
  199. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.d.ts +0 -2
  200. package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.js +0 -85
  201. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.d.ts +0 -2
  202. package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.js +0 -92
  203. package/dist/features/tester/seed-data/authored/page-wiring__reachability.d.ts +0 -2
  204. package/dist/features/tester/seed-data/authored/page-wiring__reachability.js +0 -115
  205. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.d.ts +0 -2
  206. package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.js +0 -137
  207. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.d.ts +0 -2
  208. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +0 -263
  209. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.d.ts +0 -2
  210. package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.js +0 -229
  211. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.d.ts +0 -2
  212. package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.js +0 -325
  213. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.d.ts +0 -2
  214. package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.js +0 -126
  215. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.d.ts +0 -2
  216. package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.js +0 -141
  217. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.d.ts +0 -2
  218. package/dist/features/tester/seed-data/authored/public-pages__store-tabs.js +0 -115
  219. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.d.ts +0 -2
  220. package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.js +0 -253
  221. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.d.ts +0 -2
  222. package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.js +0 -93
  223. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.d.ts +0 -3
  224. package/dist/features/tester/seed-data/authored/search-and-nav__header-search.js +0 -185
  225. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.d.ts +0 -2
  226. package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.js +0 -82
  227. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.d.ts +0 -2
  228. package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.js +0 -60
  229. package/dist/features/tester/seed-data/authored/selling__become-seller.d.ts +0 -2
  230. package/dist/features/tester/seed-data/authored/selling__become-seller.js +0 -117
  231. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.d.ts +0 -2
  232. package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.js +0 -148
  233. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.d.ts +0 -2
  234. package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.js +0 -108
  235. package/dist/features/tester/seed-data/authored/selling__listing-a-product.d.ts +0 -2
  236. package/dist/features/tester/seed-data/authored/selling__listing-a-product.js +0 -274
  237. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.d.ts +0 -2
  238. package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.js +0 -145
  239. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.d.ts +0 -2
  240. package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.js +0 -336
  241. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.d.ts +0 -2
  242. package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.js +0 -136
  243. package/dist/features/tester/seed-data/authored/selling__media-limits.d.ts +0 -2
  244. package/dist/features/tester/seed-data/authored/selling__media-limits.js +0 -135
  245. package/dist/features/tester/seed-data/authored/selling__product-upload-details.d.ts +0 -2
  246. package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +0 -155
  247. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.d.ts +0 -2
  248. package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.js +0 -138
  249. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.d.ts +0 -2
  250. package/dist/features/tester/seed-data/authored/selling__sectionised-forms.js +0 -191
  251. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.d.ts +0 -2
  252. package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.js +0 -138
  253. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.d.ts +0 -2
  254. package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.js +0 -106
  255. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.d.ts +0 -2
  256. package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.js +0 -192
  257. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.d.ts +0 -2
  258. package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.js +0 -109
  259. package/dist/features/tester/seed-data/authored/selling__seller-guide.d.ts +0 -2
  260. package/dist/features/tester/seed-data/authored/selling__seller-guide.js +0 -34
  261. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.d.ts +0 -2
  262. package/dist/features/tester/seed-data/authored/selling__seller-listing-types.js +0 -348
  263. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.d.ts +0 -2
  264. package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.js +0 -87
  265. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.d.ts +0 -2
  266. package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.js +0 -90
  267. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.d.ts +0 -2
  268. package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.js +0 -85
  269. package/dist/features/tester/seed-data/authored/selling__seller-orders.d.ts +0 -2
  270. package/dist/features/tester/seed-data/authored/selling__seller-orders.js +0 -213
  271. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.d.ts +0 -2
  272. package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.js +0 -192
  273. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.d.ts +0 -2
  274. package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.js +0 -77
  275. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.d.ts +0 -2
  276. package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.js +0 -165
  277. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.d.ts +0 -2
  278. package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.js +0 -116
  279. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.d.ts +0 -2
  280. package/dist/features/tester/seed-data/authored/seo__canonical-and-host.js +0 -127
  281. package/dist/features/tester/seed-data/authored/seo__og-images.d.ts +0 -2
  282. package/dist/features/tester/seed-data/authored/seo__og-images.js +0 -107
  283. package/dist/features/tester/seed-data/authored/seo__page-metadata.d.ts +0 -2
  284. package/dist/features/tester/seed-data/authored/seo__page-metadata.js +0 -120
  285. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.d.ts +0 -2
  286. package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.js +0 -105
  287. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.d.ts +0 -2
  288. package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.js +0 -58
  289. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.d.ts +0 -2
  290. package/dist/features/tester/seed-data/authored/tools__sticker-tracer.js +0 -284
  291. package/dist/features/tester/seed-data/index.d.ts +0 -2
  292. package/dist/features/tester/seed-data/index.js +0 -2
  293. package/dist/features/tester/seed-data/tester-checklist-seed-data.d.ts +0 -2
  294. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +0 -7601
  295. package/dist/features/tester/seed-data/tester-responses-seed-data.d.ts +0 -2
  296. package/dist/features/tester/seed-data/tester-responses-seed-data.js +0 -95
  297. package/dist/features/tester/seed-data/tester-window.d.ts +0 -25
  298. package/dist/features/tester/seed-data/tester-window.js +0 -66
  299. package/dist/seed/_helpers/brand-rows.d.ts +0 -35
  300. package/dist/seed/_helpers/brand-rows.js +0 -600
  301. package/dist/seed/_helpers/category-content-generated.d.ts +0 -24
  302. package/dist/seed/_helpers/category-content-generated.js +0 -1853
  303. package/dist/seed/_helpers/category-content.d.ts +0 -68
  304. package/dist/seed/_helpers/category-content.js +0 -731
  305. package/dist/seed/_helpers/category-forest.d.ts +0 -4
  306. package/dist/seed/_helpers/category-forest.js +0 -824
  307. package/dist/seed/_helpers/category-images-generated.d.ts +0 -57
  308. package/dist/seed/_helpers/category-images-generated.js +0 -618
  309. package/dist/seed/_helpers/category-models/chunk0.d.ts +0 -2
  310. package/dist/seed/_helpers/category-models/chunk0.js +0 -2648
  311. package/dist/seed/_helpers/category-models/chunk1.d.ts +0 -2
  312. package/dist/seed/_helpers/category-models/chunk1.js +0 -2318
  313. package/dist/seed/_helpers/category-models/chunk2.d.ts +0 -2
  314. package/dist/seed/_helpers/category-models/chunk2.js +0 -2560
  315. package/dist/seed/_helpers/category-models/chunk3.d.ts +0 -2
  316. package/dist/seed/_helpers/category-models/chunk3.js +0 -2196
  317. package/dist/seed/_helpers/category-models/chunk4.d.ts +0 -2
  318. package/dist/seed/_helpers/category-models/chunk4.js +0 -1732
  319. package/dist/seed/_helpers/category-models.d.ts +0 -12
  320. package/dist/seed/_helpers/category-models.js +0 -45
  321. package/dist/seed/_helpers/category-names.d.ts +0 -54
  322. package/dist/seed/_helpers/category-names.js +0 -118
  323. package/dist/seed/_helpers/category-parts-glossary-map.d.ts +0 -1
  324. package/dist/seed/_helpers/category-parts-glossary-map.js +0 -2499
  325. package/dist/seed/_helpers/category-parts.d.ts +0 -9
  326. package/dist/seed/_helpers/category-parts.js +0 -15022
  327. package/dist/seed/_helpers/category-tree.d.ts +0 -27
  328. package/dist/seed/_helpers/category-tree.js +0 -119
  329. package/dist/seed/_helpers/character-features.d.ts +0 -10
  330. package/dist/seed/_helpers/character-features.js +0 -120
  331. package/dist/seed/_helpers/final-sale-fixtures.d.ts +0 -35
  332. package/dist/seed/_helpers/final-sale-fixtures.js +0 -61
  333. package/dist/seed/_helpers/franchise-rows.d.ts +0 -43
  334. package/dist/seed/_helpers/franchise-rows.js +0 -189
  335. package/dist/seed/_helpers/media.d.ts +0 -67
  336. package/dist/seed/_helpers/media.js +0 -172
  337. package/dist/seed/_helpers/part-colours-generated.d.ts +0 -18
  338. package/dist/seed/_helpers/part-colours-generated.js +0 -273
  339. package/dist/seed/_helpers/product-search-txt.d.ts +0 -18
  340. package/dist/seed/_helpers/product-search-txt.js +0 -23
  341. package/dist/seed/_helpers/search-txt-wrappers.d.ts +0 -26
  342. package/dist/seed/_helpers/search-txt-wrappers.js +0 -58
  343. package/dist/seed/addresses-seed-data.d.ts +0 -2
  344. package/dist/seed/addresses-seed-data.js +0 -78
  345. package/dist/seed/authenticity-knowledge-seed-data.d.ts +0 -78
  346. package/dist/seed/authenticity-knowledge-seed-data.js +0 -10729
  347. package/dist/seed/bey-products-seed-data.d.ts +0 -18
  348. package/dist/seed/bey-products-seed-data.js +0 -18011
  349. package/dist/seed/beys/chunk0.d.ts +0 -17
  350. package/dist/seed/beys/chunk0.js +0 -36733
  351. package/dist/seed/beys/chunk1.d.ts +0 -17
  352. package/dist/seed/beys/chunk1.js +0 -35728
  353. package/dist/seed/beys/chunk2.d.ts +0 -17
  354. package/dist/seed/beys/chunk2.js +0 -35857
  355. package/dist/seed/beys/chunk3.d.ts +0 -17
  356. package/dist/seed/beys/chunk3.js +0 -34476
  357. package/dist/seed/beys-seed-data.d.ts +0 -18
  358. package/dist/seed/beys-seed-data.js +0 -11
  359. package/dist/seed/bids-seed-data.d.ts +0 -2
  360. package/dist/seed/bids-seed-data.js +0 -206
  361. package/dist/seed/blog-posts-seed-data.d.ts +0 -6
  362. package/dist/seed/blog-posts-seed-data.js +0 -442
  363. package/dist/seed/carousel-slides-seed-data.d.ts +0 -2
  364. package/dist/seed/carousel-slides-seed-data.js +0 -411
  365. package/dist/seed/carousels-seed-data.d.ts +0 -2
  366. package/dist/seed/carousels-seed-data.js +0 -36
  367. package/dist/seed/cart-seed-data.d.ts +0 -2
  368. package/dist/seed/cart-seed-data.js +0 -241
  369. package/dist/seed/catalogue-seed-data.d.ts +0 -2
  370. package/dist/seed/catalogue-seed-data.js +0 -112
  371. package/dist/seed/categories-seed-data.d.ts +0 -3
  372. package/dist/seed/categories-seed-data.js +0 -816
  373. package/dist/seed/claimed-coupons-seed-data.d.ts +0 -2
  374. package/dist/seed/claimed-coupons-seed-data.js +0 -85
  375. package/dist/seed/coupon-usage-seed-data.d.ts +0 -9
  376. package/dist/seed/coupon-usage-seed-data.js +0 -55
  377. package/dist/seed/coupons-seed-data.d.ts +0 -2
  378. package/dist/seed/coupons-seed-data.js +0 -226
  379. package/dist/seed/defaults/categories.d.ts +0 -2
  380. package/dist/seed/defaults/categories.js +0 -12
  381. package/dist/seed/defaults/faqs.d.ts +0 -2
  382. package/dist/seed/defaults/faqs.js +0 -40
  383. package/dist/seed/events-seed-data.d.ts +0 -7
  384. package/dist/seed/events-seed-data.js +0 -482
  385. package/dist/seed/factories/address.factory.d.ts +0 -21
  386. package/dist/seed/factories/address.factory.js +0 -44
  387. package/dist/seed/factories/bid.factory.d.ts +0 -15
  388. package/dist/seed/factories/bid.factory.js +0 -33
  389. package/dist/seed/factories/blog-post.factory.d.ts +0 -15
  390. package/dist/seed/factories/blog-post.factory.js +0 -22
  391. package/dist/seed/factories/carousel.factory.d.ts +0 -11
  392. package/dist/seed/factories/carousel.factory.js +0 -17
  393. package/dist/seed/factories/cart.factory.d.ts +0 -25
  394. package/dist/seed/factories/cart.factory.js +0 -35
  395. package/dist/seed/factories/category.factory.d.ts +0 -11
  396. package/dist/seed/factories/category.factory.js +0 -16
  397. package/dist/seed/factories/coupon.factory.d.ts +0 -21
  398. package/dist/seed/factories/coupon.factory.js +0 -43
  399. package/dist/seed/factories/faq.factory.d.ts +0 -10
  400. package/dist/seed/factories/faq.factory.js +0 -15
  401. package/dist/seed/factories/notification.factory.d.ts +0 -18
  402. package/dist/seed/factories/notification.factory.js +0 -39
  403. package/dist/seed/factories/order.factory.d.ts +0 -20
  404. package/dist/seed/factories/order.factory.js +0 -20
  405. package/dist/seed/factories/payout.factory.d.ts +0 -21
  406. package/dist/seed/factories/payout.factory.js +0 -38
  407. package/dist/seed/factories/product.factory.d.ts +0 -27
  408. package/dist/seed/factories/product.factory.js +0 -80
  409. package/dist/seed/factories/review.factory.d.ts +0 -14
  410. package/dist/seed/factories/review.factory.js +0 -52
  411. package/dist/seed/factories/session.factory.d.ts +0 -15
  412. package/dist/seed/factories/session.factory.js +0 -31
  413. package/dist/seed/factories/store.factory.d.ts +0 -23
  414. package/dist/seed/factories/store.factory.js +0 -47
  415. package/dist/seed/factories/user.factory.d.ts +0 -19
  416. package/dist/seed/factories/user.factory.js +0 -56
  417. package/dist/seed/faq-seed-data.d.ts +0 -18
  418. package/dist/seed/faq-seed-data.js +0 -1956
  419. package/dist/seed/firestore-indexes.d.ts +0 -12
  420. package/dist/seed/firestore-indexes.js +0 -31
  421. package/dist/seed/grouped-listings-seed-data.d.ts +0 -2
  422. package/dist/seed/grouped-listings-seed-data.js +0 -283
  423. package/dist/seed/history-seed-data.d.ts +0 -12
  424. package/dist/seed/history-seed-data.js +0 -70
  425. package/dist/seed/homepage-sections-seed-data.d.ts +0 -2
  426. package/dist/seed/homepage-sections-seed-data.js +0 -1034
  427. package/dist/seed/index.d.ts +0 -100
  428. package/dist/seed/index.js +0 -115
  429. package/dist/seed/lottery-entries-seed-data.d.ts +0 -2
  430. package/dist/seed/lottery-entries-seed-data.js +0 -108
  431. package/dist/seed/manifest.d.ts +0 -16
  432. package/dist/seed/manifest.js +0 -235
  433. package/dist/seed/media-assets-seed-data.d.ts +0 -22
  434. package/dist/seed/media-assets-seed-data.js +0 -5593
  435. package/dist/seed/model-composition-seed-data.d.ts +0 -15
  436. package/dist/seed/model-composition-seed-data.js +0 -9032
  437. package/dist/seed/notifications-seed-data.d.ts +0 -2
  438. package/dist/seed/notifications-seed-data.js +0 -606
  439. package/dist/seed/offers-seed-data.d.ts +0 -2
  440. package/dist/seed/offers-seed-data.js +0 -398
  441. package/dist/seed/orders-seed-data.d.ts +0 -2
  442. package/dist/seed/orders-seed-data.js +0 -845
  443. package/dist/seed/part-glossary/chunk0.d.ts +0 -9
  444. package/dist/seed/part-glossary/chunk0.js +0 -35448
  445. package/dist/seed/part-glossary/chunk1.d.ts +0 -9
  446. package/dist/seed/part-glossary/chunk1.js +0 -40494
  447. package/dist/seed/part-glossary/chunk2.d.ts +0 -9
  448. package/dist/seed/part-glossary/chunk2.js +0 -51242
  449. package/dist/seed/part-glossary/chunk3.d.ts +0 -9
  450. package/dist/seed/part-glossary/chunk3.js +0 -53337
  451. package/dist/seed/part-glossary/chunk4.d.ts +0 -9
  452. package/dist/seed/part-glossary/chunk4.js +0 -51454
  453. package/dist/seed/part-glossary-seed-data.d.ts +0 -15
  454. package/dist/seed/part-glossary-seed-data.js +0 -25
  455. package/dist/seed/payouts-seed-data.d.ts +0 -2
  456. package/dist/seed/payouts-seed-data.js +0 -302
  457. package/dist/seed/product-features-seed-data.d.ts +0 -3
  458. package/dist/seed/product-features-seed-data.js +0 -366
  459. package/dist/seed/products-art-seed-data.d.ts +0 -2
  460. package/dist/seed/products-art-seed-data.js +0 -289
  461. package/dist/seed/products-auctions-seed-data.d.ts +0 -2
  462. package/dist/seed/products-auctions-seed-data.js +0 -475
  463. package/dist/seed/products-beyblade-x-seed-data.d.ts +0 -2
  464. package/dist/seed/products-beyblade-x-seed-data.js +0 -476
  465. package/dist/seed/products-catalogue/chunk0.d.ts +0 -12
  466. package/dist/seed/products-catalogue/chunk0.js +0 -7262
  467. package/dist/seed/products-catalogue/chunk1.d.ts +0 -12
  468. package/dist/seed/products-catalogue/chunk1.js +0 -7290
  469. package/dist/seed/products-catalogue/chunk10.d.ts +0 -12
  470. package/dist/seed/products-catalogue/chunk10.js +0 -7290
  471. package/dist/seed/products-catalogue/chunk11.d.ts +0 -12
  472. package/dist/seed/products-catalogue/chunk11.js +0 -7005
  473. package/dist/seed/products-catalogue/chunk12.d.ts +0 -12
  474. package/dist/seed/products-catalogue/chunk12.js +0 -7002
  475. package/dist/seed/products-catalogue/chunk13.d.ts +0 -12
  476. package/dist/seed/products-catalogue/chunk13.js +0 -7002
  477. package/dist/seed/products-catalogue/chunk14.d.ts +0 -12
  478. package/dist/seed/products-catalogue/chunk14.js +0 -7002
  479. package/dist/seed/products-catalogue/chunk15.d.ts +0 -12
  480. package/dist/seed/products-catalogue/chunk15.js +0 -7002
  481. package/dist/seed/products-catalogue/chunk16.d.ts +0 -12
  482. package/dist/seed/products-catalogue/chunk16.js +0 -7002
  483. package/dist/seed/products-catalogue/chunk17.d.ts +0 -12
  484. package/dist/seed/products-catalogue/chunk17.js +0 -7002
  485. package/dist/seed/products-catalogue/chunk18.d.ts +0 -12
  486. package/dist/seed/products-catalogue/chunk18.js +0 -4398
  487. package/dist/seed/products-catalogue/chunk2.d.ts +0 -12
  488. package/dist/seed/products-catalogue/chunk2.js +0 -7268
  489. package/dist/seed/products-catalogue/chunk3.d.ts +0 -12
  490. package/dist/seed/products-catalogue/chunk3.js +0 -7264
  491. package/dist/seed/products-catalogue/chunk4.d.ts +0 -12
  492. package/dist/seed/products-catalogue/chunk4.js +0 -7268
  493. package/dist/seed/products-catalogue/chunk5.d.ts +0 -12
  494. package/dist/seed/products-catalogue/chunk5.js +0 -7258
  495. package/dist/seed/products-catalogue/chunk6.d.ts +0 -12
  496. package/dist/seed/products-catalogue/chunk6.js +0 -7268
  497. package/dist/seed/products-catalogue/chunk7.d.ts +0 -12
  498. package/dist/seed/products-catalogue/chunk7.js +0 -7311
  499. package/dist/seed/products-catalogue/chunk8.d.ts +0 -12
  500. package/dist/seed/products-catalogue/chunk8.js +0 -7304
  501. package/dist/seed/products-catalogue/chunk9.d.ts +0 -12
  502. package/dist/seed/products-catalogue/chunk9.js +0 -7309
  503. package/dist/seed/products-catalogue-seed-data.d.ts +0 -2
  504. package/dist/seed/products-catalogue-seed-data.js +0 -60
  505. package/dist/seed/products-classifieds-seed-data.d.ts +0 -7
  506. package/dist/seed/products-classifieds-seed-data.js +0 -435
  507. package/dist/seed/products-digital-codes-seed-data.d.ts +0 -7
  508. package/dist/seed/products-digital-codes-seed-data.js +0 -395
  509. package/dist/seed/products-live-items-seed-data.d.ts +0 -7
  510. package/dist/seed/products-live-items-seed-data.js +0 -269
  511. package/dist/seed/products-preorders-seed-data.d.ts +0 -2
  512. package/dist/seed/products-preorders-seed-data.js +0 -360
  513. package/dist/seed/products-prize-draws-seed-data.d.ts +0 -7
  514. package/dist/seed/products-prize-draws-seed-data.js +0 -427
  515. package/dist/seed/products-spares-seed-data.d.ts +0 -2
  516. package/dist/seed/products-spares-seed-data.js +0 -368
  517. package/dist/seed/products-standard-seed-data.d.ts +0 -2
  518. package/dist/seed/products-standard-seed-data.js +0 -632
  519. package/dist/seed/products-stickers-seed-data.d.ts +0 -2
  520. package/dist/seed/products-stickers-seed-data.js +0 -319
  521. package/dist/seed/reviews-seed-data.d.ts +0 -1
  522. package/dist/seed/reviews-seed-data.js +0 -185
  523. package/dist/seed/runner.d.ts +0 -2
  524. package/dist/seed/runner.js +0 -125
  525. package/dist/seed/scammers-seed-data.d.ts +0 -2
  526. package/dist/seed/scammers-seed-data.js +0 -235
  527. package/dist/seed/seed-market-config.d.ts +0 -48
  528. package/dist/seed/seed-market-config.js +0 -199
  529. package/dist/seed/seed-purpose.d.ts +0 -299
  530. package/dist/seed/seed-purpose.js +0 -440
  531. package/dist/seed/sessions-seed-data.d.ts +0 -3
  532. package/dist/seed/sessions-seed-data.js +0 -116
  533. package/dist/seed/shipments-seed-data.d.ts +0 -5
  534. package/dist/seed/shipments-seed-data.js +0 -185
  535. package/dist/seed/site-settings-seed-data.d.ts +0 -2
  536. package/dist/seed/site-settings-seed-data.js +0 -1069
  537. package/dist/seed/store-addresses-seed-data.d.ts +0 -18
  538. package/dist/seed/store-addresses-seed-data.js +0 -71
  539. package/dist/seed/store-extensions-seed-data.d.ts +0 -11
  540. package/dist/seed/store-extensions-seed-data.js +0 -292
  541. package/dist/seed/stores-seed-data.d.ts +0 -6
  542. package/dist/seed/stores-seed-data.js +0 -242
  543. package/dist/seed/support-tickets-seed-data.d.ts +0 -16
  544. package/dist/seed/support-tickets-seed-data.js +0 -239
  545. package/dist/seed/tax-codes-seed-data.d.ts +0 -34
  546. package/dist/seed/tax-codes-seed-data.js +0 -100
  547. package/dist/seed/test-data-ttl.d.ts +0 -29
  548. package/dist/seed/test-data-ttl.js +0 -31
  549. package/dist/seed/test-utils.d.ts +0 -49
  550. package/dist/seed/test-utils.js +0 -110
  551. package/dist/seed/types.d.ts +0 -89
  552. package/dist/seed/types.js +0 -15
  553. package/dist/seed/users-seed-data.d.ts +0 -2
  554. package/dist/seed/users-seed-data.js +0 -597
  555. package/dist/seed/wishlists-seed-data.d.ts +0 -12
  556. package/dist/seed/wishlists-seed-data.js +0 -54
@@ -1,2 +0,0 @@
1
- import type { NotificationDocument } from "../features/admin/schemas";
2
- export declare const notificationsSeedData: Partial<NotificationDocument>[];
@@ -1,606 +0,0 @@
1
- /*
2
- * WHY: Seeds notifications for the Beyblade collectibles marketplace — covers all notification types across 3 users.
3
- * WHAT: 23 notifications (10 Rehan, 8 Tyson, 5 Admin). Mix of read/unread, all notification types.
4
- *
5
- * EXPORTS:
6
- * notificationsSeedData — Array of Partial<NotificationDocument> for seed runner
7
- *
8
- * @tag domain:notifications
9
- * @tag layer:seed
10
- * @tag pattern:none
11
- * @tag access:server-only
12
- * @tag consumers:seed/index.ts,seed/runner.ts
13
- * @tag sideEffects:none
14
- */
15
- import { NOTIFICATION_FIELDS } from "../features/admin/schemas/index.js";
16
- import { ROUTES } from "../next/routing/route-map.js";
17
- import { resolveNotificationActionUrl, TYPE_AUDIENCE, } from "../_internal/shared/features/notifications/action-url.js";
18
- const NOW = new Date();
19
- const hoursAgo = (n) => new Date(NOW.getTime() - n * 3600000);
20
- const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
21
- const notificationRecords = [
22
- // ── Rehan's notifications (10) — buyer-focused ────────────────────────────
23
- {
24
- id: "notif-yugi-outbid-001",
25
- userId: "user-yugi-muto",
26
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_OUTBID,
27
- priority: "high",
28
- title: "You've been outbid!",
29
- message: "Someone placed a higher bid on Beyblade Original Dragoon Storm. Current bid: ₹4,500.",
30
- actionUrl: "/auctions/auction-beyblade-original-dragoon-storm",
31
- actionLabel: "Place New Bid",
32
- isRead: false,
33
- relatedId: "auction-beyblade-original-dragoon-storm",
34
- relatedType: "product",
35
- createdAt: hoursAgo(2),
36
- updatedAt: hoursAgo(2),
37
- },
38
- {
39
- id: "notif-yugi-shipped-001",
40
- userId: "user-yugi-muto",
41
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_SHIPPED,
42
- priority: "normal",
43
- title: "Your order has shipped!",
44
- message: "Order #order-1-20260515-abc123 — Beyblade Original Dranzer S is on its way. Track your shipment.",
45
- actionUrl: "/user/orders/order-1-20260515-abc123",
46
- actionLabel: "Track Order",
47
- isRead: false,
48
- relatedId: "order-1-20260515-abc123",
49
- relatedType: "order",
50
- createdAt: hoursAgo(6),
51
- updatedAt: hoursAgo(6),
52
- },
53
- {
54
- id: "notif-yugi-delivered-001",
55
- userId: "user-yugi-muto",
56
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_DELIVERED,
57
- priority: "normal",
58
- title: "Order delivered!",
59
- message: "Order #order-2-20260510-def456 has been delivered. Please confirm receipt and leave a review.",
60
- actionUrl: "/user/orders/order-2-20260510-def456",
61
- actionLabel: "Confirm & Review",
62
- isRead: true,
63
- readAt: daysAgo(1),
64
- relatedId: "order-2-20260510-def456",
65
- relatedType: "order",
66
- createdAt: daysAgo(2),
67
- updatedAt: daysAgo(1),
68
- },
69
- {
70
- id: "notif-yugi-price-drop-001",
71
- userId: "user-yugi-muto",
72
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PRODUCT_AVAILABLE,
73
- priority: "normal",
74
- title: "Price drop on your wishlist item!",
75
- message: "Beyblade Metal Storm Pegasus dropped from ₹1,999 to ₹1,699. Get it before it's gone.",
76
- actionUrl: "/products/product-beyblade-metal-storm-pegasus",
77
- actionLabel: "View Product",
78
- isRead: false,
79
- relatedId: "product-beyblade-metal-storm-pegasus",
80
- relatedType: "product",
81
- createdAt: daysAgo(1),
82
- updatedAt: daysAgo(1),
83
- },
84
- {
85
- id: "notif-yugi-auction-won-001",
86
- userId: "user-yugi-muto",
87
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_WON,
88
- priority: "high",
89
- title: "Congratulations! You won the auction!",
90
- message: "You won the Beyblade Metal Lightning L-Drago auction for ₹5,200. Complete payment within 48 hours.",
91
- actionUrl: "/auctions/auction-beyblade-metal-lightning-l-drago",
92
- actionLabel: "Pay Now",
93
- isRead: true,
94
- readAt: daysAgo(3),
95
- relatedId: "auction-beyblade-metal-lightning-l-drago",
96
- relatedType: "product",
97
- createdAt: daysAgo(5),
98
- updatedAt: daysAgo(3),
99
- },
100
- {
101
- id: "notif-yugi-raffle-win-001",
102
- userId: "user-yugi-muto",
103
- type: NOTIFICATION_FIELDS.TYPE_VALUES.SYSTEM,
104
- priority: "high",
105
- title: "You won the Original Series Raffle!",
106
- message: "Congratulations! You've been selected as the winner of the Complete Original Series Collectors Set raffle.",
107
- actionUrl: "/events/event-won-original-set-raffle",
108
- actionLabel: "View Details",
109
- isRead: true,
110
- readAt: daysAgo(4),
111
- relatedId: "event-won-original-set-raffle",
112
- relatedType: "product",
113
- createdAt: daysAgo(5),
114
- updatedAt: daysAgo(4),
115
- },
116
- {
117
- id: "notif-yugi-review-approved-001",
118
- userId: "user-yugi-muto",
119
- type: NOTIFICATION_FIELDS.TYPE_VALUES.REVIEW_APPROVED,
120
- priority: "low",
121
- title: "Your review was published",
122
- message: "Your review for Beyblade Original Dranzer S has been approved and is now live.",
123
- isRead: true,
124
- readAt: daysAgo(6),
125
- relatedId: "review-1",
126
- relatedType: "review",
127
- createdAt: daysAgo(7),
128
- updatedAt: daysAgo(6),
129
- },
130
- {
131
- id: "notif-yugi-welcome-001",
132
- userId: "user-yugi-muto",
133
- type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
134
- priority: "normal",
135
- title: "Welcome to LetItRip, Rehan!",
136
- message: "Your account is ready. Start browsing verified Beyblade collectibles from sellers across India.",
137
- actionUrl: String(ROUTES.PUBLIC.PRODUCTS),
138
- actionLabel: "Start Shopping",
139
- isRead: true,
140
- readAt: daysAgo(30),
141
- createdAt: daysAgo(30),
142
- updatedAt: daysAgo(30),
143
- },
144
- {
145
- id: "notif-yugi-offer-received-001",
146
- userId: "user-yugi-muto",
147
- type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_RECEIVED,
148
- priority: "normal",
149
- title: "Counter-offer on your Burst Valkyrie bid",
150
- message: "Beyblade Arena countered your offer of ₹1,200 with ₹1,450 for Beyblade Burst Valkyrie.",
151
- actionUrl: "/user/offers",
152
- actionLabel: "View Offer",
153
- isRead: false,
154
- relatedId: "product-beyblade-burst-valkyrie",
155
- relatedType: "product",
156
- createdAt: hoursAgo(8),
157
- updatedAt: hoursAgo(8),
158
- },
159
- {
160
- id: "notif-yugi-new-listing-001",
161
- userId: "user-yugi-muto",
162
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PRODUCT_AVAILABLE,
163
- priority: "normal",
164
- title: "New listing from Beyblade Arena!",
165
- message: "Beyblade Arena just listed a Beyblade X Wizard Arrow.",
166
- actionUrl: "/products/product-beyblade-x-wizard-arrow",
167
- actionLabel: "View",
168
- isRead: false,
169
- relatedId: "product-beyblade-x-wizard-arrow",
170
- relatedType: "product",
171
- createdAt: daysAgo(1),
172
- updatedAt: daysAgo(1),
173
- },
174
- // ── Tyson's notifications (8) — seller-focused (Beyblade Arena) ───────────
175
- {
176
- id: "notif-kaiba-new-order-001",
177
- userId: "user-tyson-blader",
178
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_PLACED,
179
- priority: "high",
180
- title: "New order received!",
181
- message: "Mock User 3 ordered Beyblade Original Dranzer S. Ship within 3 business days.",
182
- actionUrl: "/store/orders",
183
- actionLabel: "View Order",
184
- isRead: false,
185
- relatedId: "order-1-20260515-abc123",
186
- relatedType: "order",
187
- createdAt: hoursAgo(4),
188
- updatedAt: hoursAgo(4),
189
- },
190
- {
191
- id: "notif-kaiba-new-review-001",
192
- userId: "user-tyson-blader",
193
- type: NOTIFICATION_FIELDS.TYPE_VALUES.REVIEW_APPROVED,
194
- priority: "normal",
195
- title: "New 5-star review!",
196
- message: "Mock User 3 left a 5-star review: 'Excellent quality and fast shipping!'",
197
- actionUrl: "/store/reviews",
198
- actionLabel: "View Review",
199
- isRead: true,
200
- readAt: daysAgo(1),
201
- relatedId: "review-1",
202
- relatedType: "review",
203
- createdAt: daysAgo(2),
204
- updatedAt: daysAgo(1),
205
- },
206
- {
207
- id: "notif-kaiba-new-bid-001",
208
- userId: "user-tyson-blader",
209
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
210
- priority: "normal",
211
- title: "New bid on your auction",
212
- message: "Mock User 3 bid ₹4,200 on Beyblade Original Dragoon Storm.",
213
- actionUrl: "/store/products/auction-beyblade-original-dragoon-storm",
214
- actionLabel: "View Auction",
215
- isRead: false,
216
- relatedId: "auction-beyblade-original-dragoon-storm",
217
- relatedType: "bid",
218
- createdAt: hoursAgo(3),
219
- updatedAt: hoursAgo(3),
220
- },
221
- {
222
- id: "notif-kaiba-payout-001",
223
- userId: "user-tyson-blader",
224
- type: NOTIFICATION_FIELDS.TYPE_VALUES.SYSTEM,
225
- priority: "normal",
226
- title: "Payout processed",
227
- message: "₹9,800 has been transferred to your UPI account for April orders.",
228
- actionUrl: "/store/payouts",
229
- actionLabel: "View Payout",
230
- isRead: true,
231
- readAt: daysAgo(3),
232
- createdAt: daysAgo(5),
233
- updatedAt: daysAgo(3),
234
- },
235
- {
236
- id: "notif-kaiba-bid-received-001",
237
- userId: "user-tyson-blader",
238
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
239
- priority: "normal",
240
- title: "New bid on Metal Lightning L-Drago",
241
- message: "Mock User 1 bid ₹5,000 on Beyblade Metal Lightning L-Drago.",
242
- actionUrl: "/store/products/auction-beyblade-metal-lightning-l-drago",
243
- actionLabel: "View",
244
- isRead: false,
245
- relatedId: "auction-beyblade-metal-lightning-l-drago",
246
- relatedType: "bid",
247
- createdAt: hoursAgo(12),
248
- updatedAt: hoursAgo(12),
249
- },
250
- {
251
- id: "notif-kaiba-offer-001",
252
- userId: "user-tyson-blader",
253
- type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_RECEIVED,
254
- priority: "normal",
255
- title: "New offer on Burst Valkyrie",
256
- message: "Mock User 3 made an offer of ₹1,200 for Beyblade Burst Valkyrie.",
257
- actionUrl: "/store/offers",
258
- actionLabel: "Respond",
259
- isRead: false,
260
- relatedId: "product-beyblade-burst-valkyrie",
261
- relatedType: "offer",
262
- createdAt: hoursAgo(10),
263
- updatedAt: hoursAgo(10),
264
- },
265
- {
266
- id: "notif-kaiba-welcome-001",
267
- userId: "user-tyson-blader",
268
- type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
269
- priority: "normal",
270
- title: "Welcome to LetItRip, Tyson!",
271
- message: "Your store Beyblade Arena is now live. Start listing beyblades.",
272
- isRead: true,
273
- readAt: daysAgo(30),
274
- createdAt: daysAgo(30),
275
- updatedAt: daysAgo(30),
276
- },
277
- {
278
- id: "notif-kaiba-order-cancelled-001",
279
- userId: "user-tyson-blader",
280
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_CANCELLED,
281
- priority: "high",
282
- title: "Order cancelled",
283
- message: "Order #order-8-20260501-xyz789 was cancelled by the buyer.",
284
- actionUrl: "/store/orders",
285
- actionLabel: "View",
286
- isRead: true,
287
- readAt: daysAgo(7),
288
- relatedId: "order-8-20260501-xyz789",
289
- relatedType: "order",
290
- createdAt: daysAgo(8),
291
- updatedAt: daysAgo(7),
292
- },
293
- // ── Admin's notifications (5) — buyer + system ────────────────────────────
294
- {
295
- id: "notif-admin-shipped-001",
296
- userId: "user-admin-letitrip",
297
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_SHIPPED,
298
- priority: "normal",
299
- title: "Your order has shipped!",
300
- message: "Order from Beyblade Arena — Beyblade Metal Flame Sagittario is on its way.",
301
- actionUrl: "/user/orders",
302
- actionLabel: "Track",
303
- isRead: false,
304
- createdAt: hoursAgo(5),
305
- updatedAt: hoursAgo(5),
306
- },
307
- {
308
- id: "notif-admin-bid-001",
309
- userId: "user-admin-letitrip",
310
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
311
- priority: "normal",
312
- title: "Your bid was placed",
313
- message: "You bid ₹5,000 on Beyblade Metal Lightning L-Drago.",
314
- isRead: true,
315
- readAt: daysAgo(1),
316
- relatedId: "auction-beyblade-metal-lightning-l-drago",
317
- relatedType: "bid",
318
- createdAt: daysAgo(1),
319
- updatedAt: daysAgo(1),
320
- },
321
- {
322
- id: "notif-admin-delivered-001",
323
- userId: "user-admin-letitrip",
324
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_DELIVERED,
325
- priority: "normal",
326
- title: "Order delivered",
327
- message: "Your order of Beyblade X Knife Shinobi has been delivered.",
328
- isRead: true,
329
- readAt: daysAgo(5),
330
- createdAt: daysAgo(6),
331
- updatedAt: daysAgo(5),
332
- },
333
- {
334
- id: "notif-admin-system-001",
335
- userId: "user-admin-letitrip",
336
- type: NOTIFICATION_FIELDS.TYPE_VALUES.SYSTEM,
337
- priority: "low",
338
- title: "Seed data loaded successfully",
339
- message: "All 26 collections seeded. Verify data in the admin panel.",
340
- actionUrl: "/admin/dashboard",
341
- actionLabel: "Admin Dashboard",
342
- isRead: true,
343
- readAt: daysAgo(10),
344
- createdAt: daysAgo(10),
345
- updatedAt: daysAgo(10),
346
- },
347
- {
348
- id: "notif-admin-welcome-001",
349
- userId: "user-admin-letitrip",
350
- type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
351
- priority: "normal",
352
- title: "Welcome to Mock User 1!",
353
- message: "Your admin account is active. Manage stores, products, and site settings.",
354
- isRead: true,
355
- readAt: daysAgo(60),
356
- createdAt: daysAgo(60),
357
- updatedAt: daysAgo(60),
358
- },
359
- // -- Coverage fixtures (16) - one per type that had none --------------------
360
- //
361
- // W19 gave every notification type a real email template and a resolved
362
- // actionUrl. 12 of the 28 types were seeded; the other 16 had NO fixture at
363
- // all, so a tester could not see 16 of those templates or verify where they
364
- // land. Each of these exists to make one template and one resolver branch
365
- // reachable.
366
- //
367
- // `actionUrl` is deliberately OMITTED on all but one: it is now resolved
368
- // from relatedType + relatedId inside sendNotification, and hardcoding one
369
- // here would seed data that no longer matches what the code produces -
370
- // which is exactly how a fixture stops being a test.
371
- {
372
- id: "notif-yugi-order-confirmed-001",
373
- userId: "user-yugi-muto",
374
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_CONFIRMED,
375
- priority: "normal",
376
- title: "Order confirmed",
377
- message: "Your order is confirmed and the seller is preparing it for dispatch.",
378
- isRead: false,
379
- relatedId: "order-2-20260819-a1b2c3",
380
- relatedType: "order",
381
- createdAt: daysAgo(3),
382
- updatedAt: daysAgo(3),
383
- },
384
- {
385
- id: "notif-yugi-bid-lost-001",
386
- userId: "user-yugi-muto",
387
- type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_LOST,
388
- priority: "normal",
389
- title: "This auction closed without you",
390
- message: "Beyblade Original Dragoon Storm sold to another bidder at Rs 5,200.",
391
- isRead: false,
392
- relatedId: "auction-beyblade-original-dragoon-storm",
393
- relatedType: "bid",
394
- createdAt: daysAgo(2),
395
- updatedAt: daysAgo(2),
396
- },
397
- {
398
- // Seller-facing - the ONE fixture proving TYPE_AUDIENCE routes auction_ended to /store rather than /user.
399
- id: "notif-tyson-auction-ended-001",
400
- userId: "user-tyson-blader",
401
- type: NOTIFICATION_FIELDS.TYPE_VALUES.AUCTION_ENDED,
402
- priority: "normal",
403
- title: "Your auction ended with no winner",
404
- message: "The highest bid did not meet your reserve price. The listing has been archived.",
405
- isRead: false,
406
- // 🛑 The real id carries `burst` — see products-auctions-seed-data.ts. Without
407
- // it this notification's "view details" link resolves to nothing, which is the
408
- // dangling-FK shape Root Cause #26 describes: the row renders perfectly and its
409
- // only affordance goes nowhere.
410
- relatedId: "auction-beyblade-burst-lord-spryzen-ended-unsold",
411
- relatedType: "product",
412
- createdAt: daysAgo(1),
413
- updatedAt: daysAgo(1),
414
- },
415
- {
416
- id: "notif-yugi-review-replied-001",
417
- userId: "user-yugi-muto",
418
- type: NOTIFICATION_FIELDS.TYPE_VALUES.REVIEW_REPLIED,
419
- priority: "low",
420
- title: "The seller replied to your review",
421
- message: "Beyblade Arena responded to your review of Beyblade X Dran Sword.",
422
- isRead: false,
423
- relatedId: "review-dran-sword-yugi-20260819",
424
- relatedType: "review",
425
- createdAt: daysAgo(5),
426
- updatedAt: daysAgo(5),
427
- },
428
- {
429
- // No relatedId on purpose - this fixture proves a promotion renders WITHOUT a CTA button rather than linking to the dashboard the reader is already on.
430
- id: "notif-yugi-promotion-001",
431
- userId: "user-yugi-muto",
432
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PROMOTION,
433
- priority: "low",
434
- title: "25% off at Beyblade Arena",
435
- message: "Use code ARENA25 on your next order. Ends Sunday.",
436
- isRead: false,
437
- createdAt: hoursAgo(20),
438
- updatedAt: hoursAgo(20),
439
- },
440
- {
441
- id: "notif-yugi-account-action-001",
442
- userId: "user-yugi-muto",
443
- type: NOTIFICATION_FIELDS.TYPE_VALUES.ACCOUNT_ACTION,
444
- priority: "high",
445
- title: "Your account details were updated",
446
- message: "Your delivery address was changed. If this wasn't you, contact support immediately.",
447
- isRead: false,
448
- relatedId: "user-yugi-muto",
449
- relatedType: "user",
450
- createdAt: daysAgo(6),
451
- updatedAt: daysAgo(6),
452
- },
453
- {
454
- id: "notif-yugi-offer-responded-001",
455
- userId: "user-yugi-muto",
456
- type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_RESPONDED,
457
- priority: "high",
458
- title: "The seller countered your offer",
459
- message: "Beyblade Arena countered at Rs 3,800 on Metal Storm Pegasus.",
460
- isRead: false,
461
- relatedId: "offer-metal-storm-pegasus-yugi-20260819-countered",
462
- relatedType: "offer",
463
- createdAt: daysAgo(2),
464
- updatedAt: daysAgo(2),
465
- },
466
- {
467
- id: "notif-yugi-offer-expired-001",
468
- userId: "user-yugi-muto",
469
- type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_EXPIRED,
470
- priority: "normal",
471
- title: "Your offer expired",
472
- message: "The seller did not respond within 48 hours. You can make a new offer.",
473
- isRead: false,
474
- relatedId: "offer-kaiba-x-wizard-arrow-expired",
475
- relatedType: "offer",
476
- createdAt: daysAgo(8),
477
- updatedAt: daysAgo(8),
478
- },
479
- {
480
- id: "notif-yugi-offer-counter-accepted-001",
481
- userId: "user-yugi-muto",
482
- type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_COUNTER_ACCEPTED,
483
- priority: "high",
484
- title: "Your counter-offer was accepted",
485
- message: "Complete checkout within 24 hours to secure it at Rs 3,500.",
486
- isRead: false,
487
- relatedId: "offer-metal-storm-pegasus-yugi-20260819-countered",
488
- relatedType: "offer",
489
- createdAt: hoursAgo(6),
490
- updatedAt: hoursAgo(6),
491
- },
492
- {
493
- id: "notif-yugi-refund-initiated-001",
494
- userId: "user-yugi-muto",
495
- type: NOTIFICATION_FIELDS.TYPE_VALUES.REFUND_INITIATED,
496
- priority: "high",
497
- title: "Refund on its way",
498
- message: "Rs 1,499 is being returned to your original payment method. Allow 5-7 working days.",
499
- isRead: false,
500
- relatedId: "order-1-20260812-r3f4nd",
501
- relatedType: "order",
502
- createdAt: daysAgo(4),
503
- updatedAt: daysAgo(4),
504
- },
505
- {
506
- id: "notif-yugi-prize-won-001",
507
- userId: "user-yugi-muto",
508
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PRIZE_WON,
509
- priority: "high",
510
- title: "You won a prize",
511
- message: "Your entry in the Beyblade Vault draw won slot #14. Reveal it within 7 days.",
512
- isRead: false,
513
- relatedId: "prizedraw-beyblade-vault-closed-pending-reveal",
514
- relatedType: "product",
515
- createdAt: daysAgo(1),
516
- updatedAt: daysAgo(1),
517
- },
518
- {
519
- id: "notif-kaiba-prize-reveal-expired-001",
520
- userId: "user-seto-kaiba",
521
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PRIZE_REVEAL_EXPIRED,
522
- priority: "normal",
523
- title: "Your prize reveal window closed",
524
- message: "The 7-day reveal window passed and your entry was refunded.",
525
- isRead: false,
526
- relatedId: "prizedraw-beyblade-vault-closed-pending-reveal",
527
- relatedType: "product",
528
- createdAt: daysAgo(10),
529
- updatedAt: daysAgo(10),
530
- },
531
- {
532
- id: "notif-yugi-emi-due-soon-001",
533
- userId: "user-yugi-muto",
534
- type: NOTIFICATION_FIELDS.TYPE_VALUES.EMI_INSTALLMENT_DUE_SOON,
535
- priority: "normal",
536
- title: "EMI installment due in 3 days",
537
- message: "Installment 2 of 6 (Rs 1,250) is due on the 29th.",
538
- isRead: false,
539
- relatedId: "order-3-20260801-em1pay",
540
- relatedType: "order",
541
- createdAt: hoursAgo(12),
542
- updatedAt: hoursAgo(12),
543
- },
544
- {
545
- id: "notif-kaiba-emi-overdue-001",
546
- userId: "user-seto-kaiba",
547
- type: NOTIFICATION_FIELDS.TYPE_VALUES.EMI_INSTALLMENT_OVERDUE,
548
- priority: "high",
549
- title: "EMI installment overdue",
550
- message: "Installment 3 of 6 (Rs 1,250) was due on the 20th. Pay now to avoid a late fee.",
551
- isRead: false,
552
- relatedId: "order-3-20260801-em1pay",
553
- relatedType: "order",
554
- createdAt: daysAgo(5),
555
- updatedAt: daysAgo(5),
556
- },
557
- {
558
- id: "notif-rohit-catalogue-stale-001",
559
- userId: "user-rohit-collector",
560
- type: NOTIFICATION_FIELDS.TYPE_VALUES.CATALOGUE_IMAGES_STALE,
561
- priority: "normal",
562
- title: "Refresh your catalogue photos",
563
- message: "Photos for your vintage Hot Wheels are getting old - refresh them within 14 days or you won't be able to list it.",
564
- isRead: false,
565
- relatedId: "mycatalog-user-rohit-collector-vintage-hotwheels-20260801-a1b2c3",
566
- relatedType: "catalogueItem",
567
- createdAt: daysAgo(2),
568
- updatedAt: daysAgo(2),
569
- },
570
- {
571
- // The ONE fixture keeping an explicit actionUrl, and it earns it: the buyer
572
- // must land on the proof-UPLOAD page, which relatedType:"order" cannot
573
- // express. This is the case the caller-wins rule exists for.
574
- id: "notif-yugi-payment-review-001",
575
- userId: "user-yugi-muto",
576
- type: NOTIFICATION_FIELDS.TYPE_VALUES.PAYMENT_REVIEW,
577
- priority: "high",
578
- title: "Please re-upload your payment proof",
579
- message: "The screenshot you uploaded was unreadable. Upload a clearer one within 2 hours.",
580
- isRead: false,
581
- actionUrl: "/user/orders/order-4-20260825-upiman/payment",
582
- actionLabel: "Re-upload proof",
583
- relatedId: "order-4-20260825-upiman",
584
- relatedType: "order",
585
- createdAt: hoursAgo(1),
586
- updatedAt: hoursAgo(1),
587
- },
588
- ];
589
- /*
590
- * `actionUrl` is DERIVED, not hand-written per fixture.
591
- *
592
- * 17 of these 39 records carried no `actionUrl` and so arrived in the bell as
593
- * text with nothing to click — the exact defect the central resolver was built
594
- * to end, reappearing here because the seed writes documents straight to
595
- * Firestore and never passes through `sendNotification`.
596
- *
597
- * Deriving it also means a fixture cannot drift from the rule: the seed and the
598
- * runtime now answer "where does this notification go" with the same function.
599
- * A record that sets its own `actionUrl` keeps it, matching `sendNotification`,
600
- * where a caller-supplied value also wins.
601
- */
602
- export const notificationsSeedData = notificationRecords.map((n) => ({
603
- ...n,
604
- actionUrl: n.actionUrl ??
605
- resolveNotificationActionUrl(n.relatedType, n.relatedId, TYPE_AUDIENCE[n.type] ?? "buyer"),
606
- }));
@@ -1,2 +0,0 @@
1
- import type { OfferPlain } from "../features/seller/schemas/firestore";
2
- export declare const offersSeedData: Partial<OfferPlain>[];