@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,442 +0,0 @@
1
- /*
2
- * WHY: Seeds 20 blog posts for LetItRip collectibles marketplace — content/SEO testing across all categories.
3
- * WHAT: 17 published + 2 draft + 1 archived. Mix of Beyblade-specific, broader collectibles (Pokémon, Hot Wheels,
4
- * Gundam, Funko), marketplace guides, and community stories.
5
- *
6
- * EXPORTS:
7
- * blogPostsSeedData — Array of Partial<BlogPostDocument> for seed runner
8
- *
9
- * @tag domain:blog
10
- * @tag layer:seed
11
- * @tag pattern:none
12
- * @tag access:server-only
13
- * @tag consumers:seed/index.ts,seed/runner.ts
14
- * @tag sideEffects:none
15
- */
16
- import { withBlogSearchTxt } from "./_helpers/search-txt-wrappers.js";
17
- import { seedPhoto } from "./_helpers/media.js";
18
- const NOW = new Date();
19
- const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
20
- const _rawblogPostsSeedData = [
21
- // ── GUIDES (6) ────────────────────────────────────────────────────────────
22
- {
23
- id: "blog-spot-genuine-takara-tomy-beyblade",
24
- title: "How to Spot a Genuine Takara-Tomy Beyblade (vs. Counterfeit Clones)",
25
- slug: "spot-genuine-takara-tomy-beyblade",
26
- excerpt: "Learn the telltale signs that distinguish a genuine Takara-Tomy Beyblade from a cheap clone — from the laser-etched logo to the weight of the metal driver.",
27
- content: `<h2>The Laser-Etched Logo</h2><p>Genuine Takara-Tomy Beyblades have a crisp, laser-etched "TAKARA TOMY" logo on the underside of the layer or base. Clones use a shallow, blurry stamp that smudges under a fingernail scratch test.</p><img src="${seedPhoto("blog-content-image-genuine-beyblade-logo-1-20260101", 1000, 600)}" alt="Close-up of the genuine Takara-Tomy laser-etched logo" /><h2>Weight and Balance</h2><p>A genuine metal-fusion driver has a consistent, dense weight — clones often use lighter zinc alloy that feels noticeably hollow. Spin the beyblade on a flat glass surface: a genuine driver spins true with almost no wobble.</p><img src="${seedPhoto("blog-content-image-genuine-beyblade-weight-2-20260101", 1000, 600)}" alt="Weighing a genuine metal-fusion driver on a digital scale" /><h2>Sticker Print Quality</h2><p>Compare the face-bolt sticker under bright light. Genuine stickers have sharp gradient printing and a slightly raised clear-coat finish. Clone stickers are flat-printed and peel at the edges within weeks.</p>`,
28
- coverImage: { type: "image", url: seedPhoto("blog-cover-genuine-beyblade-20260101", 1200, 630), alt: "Genuine Takara-Tomy Beyblade close-up" },
29
- category: "guides",
30
- tags: ["authentication", "takara-tomy", "beyblade", "counterfeit"],
31
- isFeatured: true,
32
- status: "published",
33
- publishedAt: daysAgo(30),
34
- authorId: "user-admin-letitrip",
35
- authorName: "Mock User 1",
36
- authorAvatar: seedPhoto("user-avatar-letitrip-admin-20260101", 400, 400),
37
- readTimeMinutes: 5,
38
- views: 4200,
39
- metaTitle: "How to Spot a Genuine Takara-Tomy Beyblade | LetItRip",
40
- metaDescription: "Learn how to spot genuine Takara-Tomy Beyblades — laser-etched logos, driver weight, sticker quality, and more.",
41
- createdAt: daysAgo(35),
42
- updatedAt: daysAgo(30),
43
- },
44
- {
45
- id: "blog-sealed-vs-opened-beyblade-value",
46
- title: "Sealed vs. Opened — How Condition Affects Beyblade Resale Value",
47
- slug: "sealed-vs-opened-beyblade-value",
48
- excerpt: "A head-to-head look at what actually moves the needle on Beyblade resale price — sealed box premiums, tip wear, and launcher grip condition.",
49
- content: `<h2>Sealed Box — The Investment Grade</h2><p>A factory-sealed box with an unbroken shrink-wrap seal commands the highest resale premiums, especially for discontinued original-series and Metal Fight releases. Collectors treat sealed stock the way trading-card collectors treat unopened booster boxes.</p><img src="${seedPhoto("blog-content-image-sealed-beyblade-box-1-20260101", 1000, 600)}" alt="Factory-sealed Beyblade box with intact shrink wrap" /><h2>Tip Wear — The Sub-Grade That Matters</h2><p>For opened, battled beyblades, tip wear is the single biggest value factor. A sharp, unrounded tip with visible factory grooves grades far higher than a rounded, "sanded" tip from heavy stadium use.</p><h2>Launcher Grip Condition</h2><p>Ripcord launchers with clean, unfrayed grip tape and a tight ratchet mechanism add real value to a bundle. A stripped ratchet or fraying cord is an instant discount flag.</p><h2>Our Recommendation</h2><p>For investment: chase sealed, unopened stock. For a battle-ready collection: prioritize tip sharpness and launcher condition over cosmetic sticker wear.</p>`,
50
- coverImage: { type: "image", url: seedPhoto("blog-cover-sealed-vs-opened-beyblade-20260101", 1200, 630), alt: "Sealed and opened Beyblade boxes side by side" },
51
- category: "guides",
52
- tags: ["condition", "sealed", "tip-wear", "beyblade", "investment"],
53
- isFeatured: true,
54
- status: "published",
55
- publishedAt: daysAgo(25),
56
- authorId: "user-admin-letitrip",
57
- authorName: "Mock User 1",
58
- authorAvatar: seedPhoto("user-avatar-letitrip-admin-20260101", 400, 400),
59
- readTimeMinutes: 7,
60
- views: 3800,
61
- metaTitle: "Sealed vs. Opened — Beyblade Condition & Resale Value | LetItRip",
62
- metaDescription: "What actually affects Beyblade resale value — sealed box premiums, tip wear grading, and launcher condition.",
63
- createdAt: daysAgo(28),
64
- updatedAt: daysAgo(25),
65
- },
66
- {
67
- id: "blog-complete-beyblade-x-series-guide",
68
- title: "Complete Beyblade X Series Guide — Every Wave and Value",
69
- slug: "complete-beyblade-x-series-guide",
70
- excerpt: "Every Beyblade X wave released so far — from the BX-01 starter line to the latest BX-08 wave — with current market values.",
71
- content: `<h2>The Starter Waves</h2><p>BX-01 through BX-04 introduced the core X-series parts — Blade, Ratchet, and Bit — replacing the old layer/disk/driver system entirely. Sealed starters from these early waves are already appreciating.</p><img src="${seedPhoto("blog-content-image-beyblade-x-waves-1-20260101", 1000, 600)}" alt="Beyblade X starter wave lineup" /><h2>BX-05 through BX-08 (2025-2026)</h2><p>The current generation. Each piece in sealed condition ranges from ₹500-₹1,200. A complete wave set? Over ₹8,000.</p><h2>Later Waves</h2><p>Limited convention exclusives, gold-finish promos, and various starter-set reprints. Values range from ₹300 for common reprints to ₹5,000+ for rare promotional versions.</p>`,
72
- coverImage: { type: "image", url: seedPhoto("blog-cover-beyblade-x-guide-20260101", 1200, 630), alt: "Beyblade X series wave lineup" },
73
- category: "guides",
74
- tags: ["beyblade-x", "guide", "waves", "values"],
75
- isFeatured: false,
76
- status: "draft",
77
- authorId: "user-admin-letitrip",
78
- authorName: "Mock User 1",
79
- authorAvatar: seedPhoto("user-avatar-letitrip-admin-20260101", 400, 400),
80
- readTimeMinutes: 10,
81
- views: 0,
82
- metaTitle: "Complete Beyblade X Series Guide — Every Wave & Value | LetItRip",
83
- metaDescription: "Every Beyblade X wave from BX-01 to the latest release — market values and collecting tips.",
84
- createdAt: daysAgo(5),
85
- updatedAt: daysAgo(2),
86
- },
87
- {
88
- id: "blog-beginners-guide-hot-wheels-collecting",
89
- title: "Beginner's Guide to Hot Wheels Collecting in India",
90
- slug: "beginners-guide-hot-wheels-collecting",
91
- excerpt: "From mainlines to Super Treasure Hunts — everything you need to know to start your Hot Wheels collection without breaking the bank.",
92
- content: `<h2>Understanding the Tiers</h2><p><strong>Mainlines</strong> — ₹100–₹200 retail, the backbone of any collection. <strong>Premium</strong> — ₹400–₹600, metal/metal construction with Real Riders rubber tires. <strong>Car Culture</strong> — ₹700–₹1,000, themed sets with premium details. <strong>RLC (Red Line Club)</strong> — membership exclusive, ₹2,000–₹5,000+.</p><h2>Treasure Hunts</h2><p>Regular TH cards have a flame logo. Super Treasure Hunts (STH) have Spectraflame paint + Real Riders — roughly 1 per 15 cases. STHs command ₹2,000–₹10,000+ depending on the casting.</p><h2>Storage Tips</h2><p>Keep carded cars in protector cases. Loose cars in padded compartment boxes. Never store in direct sunlight — Spectraflame paint fades permanently.</p>`,
93
- category: "guides",
94
- tags: ["hot-wheels", "diecast", "collecting", "beginners", "treasure-hunt"],
95
- isFeatured: true,
96
- status: "published",
97
- publishedAt: daysAgo(18),
98
- authorId: "user-admin-letitrip",
99
- authorName: "Mock User 1",
100
- readTimeMinutes: 8,
101
- views: 3100,
102
- metaTitle: "Beginner's Guide to Hot Wheels Collecting | LetItRip",
103
- metaDescription: "Start your Hot Wheels collection in India — mainlines, Treasure Hunts, storage, and where to find rare castings.",
104
- createdAt: daysAgo(20),
105
- updatedAt: daysAgo(18),
106
- },
107
- {
108
- id: "blog-gundam-model-kit-grades-explained",
109
- title: "Gundam Model Kit Grades Explained: HG vs RG vs MG vs PG",
110
- slug: "gundam-model-kit-grades-explained",
111
- excerpt: "Not sure which Gundam grade to start with? Here's a detailed breakdown of every Bandai grade — from the beginner-friendly HG to the massive Perfect Grade.",
112
- // audit-money-units-ok: prose HTML content — "1/144 Scale"/"1/100 Scale" are model-kit scale ratios, not paise math
113
- content: `<h2>High Grade (HG) — 1/144 Scale</h2><p>The entry point for most builders. ~100 parts, snap-fit (no glue needed), completes in 2–3 hours. ₹800–₹2,000. Great articulation for the price.</p><h2>Real Grade (RG) — 1/144 Scale</h2><p>Master Grade detail at HG size. ~200 parts, pre-colored inner frame. More fragile than HG due to small parts. ₹1,800–₹3,500. The RG Nu Gundam and RG Wing Zero are fan favorites.</p><h2>Master Grade (MG) — 1/100 Scale</h2><p>The collector's standard. ~400 parts, fully detailed inner frame, excellent poseability. ₹3,500–₹8,000. Build time: 6–12 hours. MG Barbatos and MG Freedom 2.0 are top sellers on LetItRip.</p><h2>Perfect Grade (PG) — 1/60 Scale</h2><p>The pinnacle. ~800+ parts, LED-compatible, museum-quality detail. ₹12,000–₹25,000+. Build time: 20–40 hours. A showpiece, not a toy.</p><h2>Other Grades</h2><p><strong>SD</strong> (Super Deformed) — chibi proportions, great for kids. <strong>EG</strong> (Entry Grade) — simplified build, no tools needed. <strong>MGEX</strong> — MG with extreme detail (Unicorn Gundam only). <strong>PG Unleashed</strong> — beyond PG, the ultimate kit.</p>`,
114
- category: "guides",
115
- tags: ["gundam", "bandai", "model-kits", "hg", "mg", "rg", "pg"],
116
- isFeatured: false,
117
- status: "published",
118
- publishedAt: daysAgo(12),
119
- authorId: "user-admin-letitrip",
120
- authorName: "Mock User 1",
121
- readTimeMinutes: 7,
122
- views: 2600,
123
- metaTitle: "Gundam Model Kit Grades Explained | LetItRip",
124
- metaDescription: "HG vs RG vs MG vs PG — understand every Gundam grade before you buy on LetItRip.",
125
- createdAt: daysAgo(14),
126
- updatedAt: daysAgo(12),
127
- },
128
- {
129
- id: "blog-beyblade-x-vs-burst-comparison",
130
- title: "Beyblade X vs Burst: What's Changed and Is It Worth Switching?",
131
- slug: "beyblade-x-vs-burst-comparison",
132
- excerpt: "Beyblade X brought a whole new system — Xtreme Dash rails, new launcher, and incompatible parts. Here's whether the upgrade is worth it for Indian bladers.",
133
- content: `<h2>The Big Changes</h2><p>Beyblade X introduced the <strong>Xtreme Stadium</strong> with dash rails that accelerate beyblades mid-battle. The launcher mechanism is completely redesigned — smoother pull, more consistent spin. Parts are NOT compatible with Burst.</p><h2>Performance Comparison</h2><p>X beyblades spin longer out of the box thanks to better bearing tips. Burst had more customization depth (3 parts vs X's 3-layer system). X battles are faster and more aggressive due to the rail system.</p><h2>Availability in India</h2><p>Takara-Tomy X is available through importers on LetItRip. Hasbro X (budget version) is easier to find in retail stores. For competitive play, always go Takara-Tomy.</p><h2>Verdict</h2><p>If you're starting fresh: go X. If you have a big Burst collection: keep both systems. X stadiums work fine for casual Burst battles too — just no rail acceleration.</p>`,
134
- category: "guides",
135
- tags: ["beyblade", "beyblade-x", "burst", "takara-tomy", "comparison"],
136
- isFeatured: false,
137
- status: "published",
138
- publishedAt: daysAgo(8),
139
- authorId: "user-admin-letitrip",
140
- authorName: "Mock User 1",
141
- readTimeMinutes: 6,
142
- views: 1900,
143
- metaTitle: "Beyblade X vs Burst Comparison | LetItRip",
144
- metaDescription: "Beyblade X vs Burst — what changed, part compatibility, and whether Indian bladers should switch.",
145
- createdAt: daysAgo(10),
146
- updatedAt: daysAgo(8),
147
- },
148
- // ── NEWS (4) ──────────────────────────────────────────────────────────────
149
- {
150
- id: "blog-top-10-most-valuable-vintage-beyblades",
151
- title: "Top 10 Most Valuable Vintage Beyblades",
152
- slug: "top-10-most-valuable-vintage-beyblades",
153
- excerpt: "From the legendary original-series Dragoon Storm to the elusive tournament-only L-Drago variants — these are the beyblades every collector dreams of.",
154
- content: `<h2>1. Tournament-Exclusive Gold Dragoon (2000)</h2><p>The rarest original-series beyblade ever distributed. Only handed out at the Japan national finals. Estimated value: over ₹4 lakh.</p><img src="${seedPhoto("blog-content-image-top10-tournament-gold-1-20260101", 1000, 600)}" alt="Tournament-exclusive gold Dragoon beyblade" /><h2>2. Beyblade Original Dragoon Storm, Sealed</h2><p>Tyson's signature spinner in sealed, factory condition. Sealed copies sell for ₹1.5-2.5 lakh.</p><h2>3. Beyblade Metal Lightning L-Drago, Sealed</h2><p>Kai's iconic rival spinner. A sealed Metal Lightning L-Drago commands ₹80,000-1.2 lakh.</p><h2>4. Complete Original-Series Starter Set (all 5 pieces, sealed)</h2><p>All five original-series starter beyblades still sealed — virtually impossible to assemble. Set value: over ₹6 lakh.</p><img src="${seedPhoto("blog-content-image-top10-starter-set-2-20260101", 1000, 600)}" alt="Complete original-series Beyblade starter set" /><h2>5-10</h2><p>Metal Fusion Storm Pegasus (sealed), Metal Fight Flame Sagittario (sealed), Burst Valkyrie tournament promo, Burst Regalia Genesis limited run, original-series Dranzer S first-print, and Driger V arena-exclusive gold edition.</p>`,
155
- coverImage: { type: "image", url: seedPhoto("blog-cover-top10-vintage-beyblade-20260101", 1200, 630), alt: "Vintage Beyblade collection" },
156
- category: "news",
157
- tags: ["top-10", "vintage", "investment", "rare-beyblades"],
158
- isFeatured: false,
159
- status: "published",
160
- publishedAt: daysAgo(20),
161
- authorId: "user-admin-letitrip",
162
- authorName: "Mock User 1",
163
- authorAvatar: seedPhoto("user-avatar-letitrip-admin-20260101", 400, 400),
164
- readTimeMinutes: 8,
165
- views: 6100,
166
- metaTitle: "Top 10 Most Valuable Vintage Beyblades | LetItRip",
167
- metaDescription: "The 10 most expensive vintage Beyblades from the original series to Metal Fight.",
168
- createdAt: daysAgo(22),
169
- updatedAt: daysAgo(20),
170
- },
171
- {
172
- id: "blog-pokemon-sv-prismatic-evolutions",
173
- title: "Pokémon SV Prismatic Evolutions: What Indian Collectors Need to Know",
174
- slug: "pokemon-sv-prismatic-evolutions",
175
- excerpt: "Prismatic Evolutions is the hottest Pokémon set in 2026 — here's the pull rates, chase cards, and pricing for Indian collectors.",
176
- content: `<h2>The Chase Cards</h2><p>Prismatic Evolutions features all Eeveelution illustration rares + the Eevee gold star. The <strong>Umbreon illustration rare</strong> is the #1 chase card — commanding ₹40,000+ raw and ₹1.5 lakh+ in PSA 10.</p><h2>Pull Rates</h2><p>Illustration rare: ~1 in 25 packs. Special art rare: ~1 in 50 packs. Gold star: ~1 in 200 packs. The odds are brutal — most collectors buy singles on LetItRip instead of gambling on packs.</p><h2>Indian Market Pricing</h2><p>Booster boxes import at ₹6,000–₹8,000 (vs ₹4,000 US retail). ETBs at ₹4,500–₹6,000. The premium is due to import duties + limited official distribution in India. Pre-order on LetItRip to lock in the lowest price.</p>`,
177
- category: "news",
178
- tags: ["pokemon", "prismatic-evolutions", "trading-cards", "pricing", "chase-cards"],
179
- isFeatured: true,
180
- status: "published",
181
- publishedAt: daysAgo(7),
182
- authorId: "user-admin-letitrip",
183
- authorName: "Mock User 1",
184
- readTimeMinutes: 6,
185
- views: 5200,
186
- metaTitle: "Pokémon Prismatic Evolutions — Indian Collector Guide | LetItRip",
187
- metaDescription: "Pull rates, chase cards, and Indian market pricing for Pokémon SV Prismatic Evolutions.",
188
- createdAt: daysAgo(8),
189
- updatedAt: daysAgo(7),
190
- },
191
- {
192
- id: "blog-funko-pop-india-market-2026",
193
- title: "The State of Funko Pop Collecting in India — 2026 Edition",
194
- slug: "funko-pop-india-market-2026",
195
- excerpt: "Funko Pop has exploded in India. Here's the market landscape — exclusive sourcing, pricing trends, and the most sought-after figures.",
196
- content: `<h2>Market Growth</h2><p>India's Funko Pop market has grown 3x since 2024, driven by anime Pops (Dragon Ball, Naruto, One Piece, Jujutsu Kaisen) and Marvel/Star Wars crossover appeal. LetItRip now has over 200 Funko listings across 5 verified stores.</p><h2>Exclusive Sourcing</h2><p>Convention exclusives (SDCC, NYCC) are the hardest to source. Indian collectors rely on importers who attend or have proxies at US conventions. Expect a 2–3x markup over US retail. Store exclusives (Hot Topic, BoxLunch, Target) are slightly easier via authorized resellers.</p><h2>Chase Variants</h2><p>Chase Pops (1-in-6 ratio) command a 3–5x premium. Glow-in-the-dark chases and flocked variants are the most popular in the Indian market. Always verify the chase sticker — counterfeits exist.</p><h2>Storage & Display</h2><p>Pop protectors (₹50–₹100 each) are essential. UV-filtering acrylic display cases for grails. Never store in direct sunlight — window box printing fades within months.</p>`,
197
- category: "news",
198
- tags: ["funko", "pop", "india", "market-trends", "collecting"],
199
- isFeatured: false,
200
- status: "published",
201
- publishedAt: daysAgo(14),
202
- authorId: "user-admin-letitrip",
203
- authorName: "Mock User 1",
204
- readTimeMinutes: 7,
205
- views: 2400,
206
- metaTitle: "Funko Pop Collecting in India 2026 | LetItRip",
207
- metaDescription: "The state of Funko Pop collecting in India — exclusives, chase variants, and market trends.",
208
- createdAt: daysAgo(16),
209
- updatedAt: daysAgo(14),
210
- },
211
- {
212
- id: "blog-tomica-vs-hot-wheels-india",
213
- title: "Tomica vs Hot Wheels: The Diecast Battle in India",
214
- slug: "tomica-vs-hot-wheels-india",
215
- excerpt: "Two diecast giants go head-to-head. Which one offers better value, detail, and collectibility for Indian enthusiasts?",
216
- content: `<h2>Scale & Detail</h2><p>Tomica uses variable scale (roughly 1/60–1/64) to keep each model proportionally accurate in the hand. Hot Wheels uses a fixed 1/64 scale. Result: Tomica models look proportionally better; Hot Wheels are more consistent in a display.</p><h2>Build Quality</h2><p>Tomica models have working suspension and opening doors/hoods as standard — even on mainline ₹300 models. Hot Wheels mainlines are simpler (no opening parts) but Hot Wheels Premium (₹500+) matches Tomica quality.</p><h2>JDM & India Market</h2><p>Tomica dominates for JDM collectors (GT-R, Supra, AE86, Civic Type R). Hot Wheels wins for American muscle, European exotics, and fantasy castings. For Indian vehicles, Tomica has released exclusive India models (Maruti Swift, Tata Nexon) — highly collectible.</p><h2>Verdict</h2><p>Both. Seriously — most Indian collectors collect both. Tomica for realistic detail, Hot Wheels for variety and Treasure Hunt thrill.</p>`,
217
- category: "news",
218
- tags: ["tomica", "hot-wheels", "diecast", "comparison", "jdm"],
219
- isFeatured: false,
220
- status: "published",
221
- publishedAt: daysAgo(22),
222
- authorId: "user-admin-letitrip",
223
- authorName: "Mock User 1",
224
- readTimeMinutes: 6,
225
- views: 1800,
226
- metaTitle: "Tomica vs Hot Wheels — Diecast Battle in India | LetItRip",
227
- metaDescription: "Tomica vs Hot Wheels — detail, build quality, and collecting value for Indian diecast enthusiasts.",
228
- createdAt: daysAgo(24),
229
- updatedAt: daysAgo(22),
230
- },
231
- // ── TIPS (4) ──────────────────────────────────────────────────────────────
232
- {
233
- id: "blog-metal-fight-hidden-gems",
234
- title: "Metal Fight Hidden Gems: Undervalued Beyblades from the 2009-2012 Era",
235
- slug: "metal-fight-hidden-gems",
236
- excerpt: "The Metal Fight era produced some of the most undervalued beyblades in collecting history. Here are the picks smart collectors are buying now.",
237
- content: `<h2>Why Metal Fight Beyblades Are Undervalued</h2><p>The Metal Fight era (2009-2012) coincided with peak Beyblade anime popularity but many collectors focus exclusively on the original 1999-2003 series. This creates a pricing gap.</p><img src="${seedPhoto("blog-content-image-metal-fight-gems-1-20260101", 1000, 600)}" alt="Metal Fight era Beyblade lineup" /><h2>Metal Fight Picks</h2><p><strong>Metal Storm Pegasus</strong> — the fan-favorite protagonist spinner. Sealed copies are still affordable at ₹1,500-₹2,500.</p><p><strong>Metal Flame Sagittario</strong> — one of the most competitively impactful attack types ever. Sealed condition commands ₹3,500-₹5,000.</p><p><strong>Rare 4D System variants</strong> — low print run makes these a sleeper investment.</p>`,
238
- coverImage: { type: "image", url: seedPhoto("blog-cover-metal-fight-gems-20260101", 1200, 630), alt: "Metal Fight Beyblade collection" },
239
- category: "tips",
240
- tags: ["metal-fight", "hidden-gems", "investment", "beyblade"],
241
- isFeatured: false,
242
- status: "published",
243
- publishedAt: daysAgo(15),
244
- authorId: "user-admin-letitrip",
245
- authorName: "Mock User 1",
246
- authorAvatar: seedPhoto("user-avatar-letitrip-admin-20260101", 400, 400),
247
- readTimeMinutes: 6,
248
- views: 2900,
249
- metaTitle: "Metal Fight Hidden Gems — Undervalued Beyblades | LetItRip",
250
- metaDescription: "Discover undervalued Metal Fight era Beyblades that smart collectors are buying now.",
251
- createdAt: daysAgo(18),
252
- updatedAt: daysAgo(15),
253
- },
254
- {
255
- id: "blog-protect-collectibles-indian-climate",
256
- title: "How to Protect Your Collectibles in India's Climate",
257
- slug: "protect-collectibles-indian-climate",
258
- excerpt: "Humidity, dust, and monsoon season are the biggest enemies of collectibles in India. Here's how to keep your cards, figures, and kits safe year-round.",
259
- content: `<h2>The Humidity Problem</h2><p>India's average humidity is 60–80% — far above the 40–50% ideal for collectibles. Excess moisture causes card warping, sticker lifting on Funko boxes, paint degradation on diecast, and mold growth on cardboard packaging.</p><h2>Essential Gear</h2><p><strong>Silica gel packets</strong> — ₹200 for a 20-pack. Place 2–3 in every storage box. Replace when they turn pink/clear. <strong>Dehumidifier</strong> — ₹3,000–₹8,000 for a 10L/day unit. Essential for display rooms. <strong>UV-filtering display cases</strong> — prevents sunlight fading on Spectraflame (Hot Wheels), holo cards, and figure paint.</p><h2>Monsoon Protocol</h2><p>During June–September: seal all open storage, move ground-level boxes to shelves, check silica gel weekly. If you're in a flood-prone area, consider off-site storage for high-value grails.</p><h2>Card-Specific Tips</h2><p>Double-sleeve valuable cards (penny sleeve + top-loader). Store in a binder with O-ring closure, not D-ring. Keep graded slabs in padded boxes — PSA cases crack if dropped.</p>`,
260
- category: "tips",
261
- tags: ["storage", "climate", "humidity", "india", "preservation"],
262
- isFeatured: false,
263
- status: "published",
264
- publishedAt: daysAgo(10),
265
- authorId: "user-admin-letitrip",
266
- authorName: "Mock User 1",
267
- readTimeMinutes: 7,
268
- views: 3500,
269
- metaTitle: "Protect Collectibles in India's Climate | LetItRip",
270
- metaDescription: "Humidity, dust, and monsoon tips — how to protect your collectibles in Indian weather.",
271
- createdAt: daysAgo(12),
272
- updatedAt: daysAgo(10),
273
- },
274
- {
275
- id: "blog-selling-tips-letitrip",
276
- title: "10 Tips to Sell Faster on LetItRip",
277
- slug: "selling-tips-letitrip",
278
- excerpt: "From photography to pricing to descriptions — proven tactics to make your listings sell faster on LetItRip.",
279
- content: `<h2>1. Photograph Everything</h2><p>Front, back, edges, corners, holo pattern. Natural light. White background. Minimum 4 photos per listing.</p><h2>2. Price Competitively</h2><p>Check what similar items sold for on LetItRip in the last 30 days. Price 5–10% below the lowest active listing for a fast sale.</p><h2>3. Write Honest Descriptions</h2><p>State the exact condition. Mention every flaw. Buyers trust sellers who are upfront about imperfections — they'll come back.</p><h2>4. Respond to Offers Within 2 Hours</h2><p>Quick responses convert. Buyers often make offers to multiple sellers — the first response wins.</p><h2>5. Ship the Same Day</h2><p>Buyers who receive fast shipping leave 5-star reviews. 5-star reviews bring more buyers. It's a flywheel.</p><h2>6–10</h2><p>Use accurate category tags. Add a YouTube unboxing link (see the video above). Offer bundle discounts. Cross-reference to your other listings. Keep your store description updated.</p>`,
280
- youtubeId: "dQw4w9WgXcQ",
281
- category: "tips",
282
- tags: ["selling", "tips", "photography", "pricing", "seller-guide"],
283
- isFeatured: false,
284
- status: "published",
285
- publishedAt: daysAgo(5),
286
- authorId: "user-admin-letitrip",
287
- authorName: "Mock User 1",
288
- readTimeMinutes: 5,
289
- views: 1600,
290
- metaTitle: "10 Tips to Sell Faster on LetItRip",
291
- metaDescription: "Proven selling tactics — photography, pricing, and descriptions that convert on LetItRip.",
292
- createdAt: daysAgo(6),
293
- updatedAt: daysAgo(5),
294
- },
295
- {
296
- id: "blog-one-piece-tcg-india-primer",
297
- title: "One Piece TCG in India: A Complete Primer",
298
- slug: "one-piece-tcg-india-primer",
299
- excerpt: "One Piece Card Game has arrived in India. Here's everything you need to know about the game, the sets, and which cards to collect.",
300
- content: `<h2>What Is One Piece TCG?</h2><p>Released by Bandai in 2022, the One Piece Card Game has quickly become one of the top 3 trading card games globally. It uses a leader + character + event + stage system, with DON!! cards as the energy resource.</p><h2>Sets Available in India</h2><p>Romance Dawn (OP-01) through Wings of the Captain (OP-06) are available through importers on LetItRip. Expect a 1.5–2x markup over Japanese retail due to import costs.</p><h2>Chase Cards</h2><p>Alternate art leaders and manga art special rares are the most sought-after. <strong>Luffy Gear 5 (OP-05 alt art)</strong> — ₹15,000+. <strong>Shanks alt art (OP-01)</strong> — ₹8,000+. <strong>Nami alt art (OP-01)</strong> — ₹12,000+.</p><h2>Investment Potential</h2><p>One Piece TCG is undervalued compared to Pokémon. Early sets (OP-01, OP-02) are already appreciating. Buy singles of alt art leaders now — the floor is rising.</p>`,
301
- category: "tips",
302
- tags: ["one-piece", "bandai", "trading-cards", "primer", "tcg"],
303
- isFeatured: false,
304
- status: "draft",
305
- authorId: "user-admin-letitrip",
306
- authorName: "Mock User 1",
307
- readTimeMinutes: 8,
308
- views: 0,
309
- metaTitle: "One Piece TCG in India — Complete Primer | LetItRip",
310
- metaDescription: "Everything Indian collectors need to know about One Piece Card Game — sets, chase cards, and investment.",
311
- createdAt: daysAgo(3),
312
- updatedAt: daysAgo(1),
313
- },
314
- // ── COMMUNITY (3) ─────────────────────────────────────────────────────────
315
- {
316
- id: "blog-authenticating-beyblades",
317
- title: "How a Verified Store Authenticates Every Beyblade",
318
- slug: "authenticating-beyblades",
319
- excerpt: "A behind-the-scenes look at how verified sellers on LetItRip check every beyblade before listing — logo tests, weight checks, and spin-balance inspection.",
320
- content: `<h2>The 5-Point Authentication Process</h2><p>Every beyblade listed by top verified stores goes through a rigorous 5-point check:</p><ol><li><strong>Logo Test</strong> — Genuine Takara-Tomy pieces have a specific laser-etched depth and clarity when checked under raking light.</li><li><strong>Weight Check</strong> — A genuine metal-fusion driver weighs within a tight factory tolerance verified on a digital scale.</li><li><strong>Spin-Balance Test</strong> — Each layer/driver combo is spin-tested on a flat glass surface; genuine parts spin true with minimal wobble.</li><li><strong>Sticker Print Inspection</strong> — Under 10x magnification, genuine face-bolt stickers show sharp gradient printing and a raised clear-coat.</li><li><strong>Ratchet & Grip Inspection</strong> — Check the launcher for a tight ratchet mechanism and unfrayed grip tape.</li></ol>`,
321
- coverImage: { type: "image", url: seedPhoto("blog-cover-authenticating-beyblades-20260101", 1200, 630), alt: "Beyblade authentication process" },
322
- category: "community",
323
- tags: ["authentication", "verification", "counterfeit", "beyblade"],
324
- isFeatured: false,
325
- status: "published",
326
- publishedAt: daysAgo(10),
327
- authorId: "user-admin-letitrip",
328
- authorName: "Mock User 1",
329
- readTimeMinutes: 5,
330
- views: 3400,
331
- metaTitle: "How Verified Stores Authenticate Beyblades | LetItRip",
332
- metaDescription: "The 5-point authentication process used by verified stores to check every beyblade on LetItRip.",
333
- createdAt: daysAgo(12),
334
- updatedAt: daysAgo(10),
335
- },
336
- {
337
- id: "blog-collector-spotlight-mumbai-gundam",
338
- title: "Collector Spotlight: Building India's Largest Gundam Collection in Mumbai",
339
- slug: "collector-spotlight-mumbai-gundam",
340
- excerpt: "Meet Arjun — a Mumbai software engineer with 200+ Gundam kits, a dedicated build room, and a mission to grow India's Gunpla community.",
341
- content: `<h2>The Collection</h2><p>Arjun started with a single HG RX-78-2 in 2019. Seven years later, his Mumbai apartment has a dedicated room with 200+ built kits across HG, RG, MG, and 3 Perfect Grades. The crown jewel: a painted and weathered PG Unleashed RX-78-2.</p><h2>The Build Process</h2><p>"I spend 2–3 hours every evening after work. It's meditation. The snap-fit assembly, the panel lining, the decals — there's something deeply satisfying about transforming a box of runners into a finished kit."</p><h2>Growing the Community</h2><p>Arjun runs a monthly Mumbai Gunpla meetup with 30+ regular attendees. "When I started, there were maybe 5 Gunpla builders I knew in all of Mumbai. Now there's a real community. LetItRip has helped — having a dedicated marketplace means people can actually find kits without paying 3x import markup."</p><h2>Advice for New Builders</h2><p>"Start with an HG. Don't buy a PG as your first kit — you'll get overwhelmed. Build 10–15 HGs, then try an RG. The skills transfer. And always — always — use a nipper, not scissors."</p>`,
342
- category: "community",
343
- tags: ["gundam", "spotlight", "mumbai", "gunpla", "community"],
344
- isFeatured: true,
345
- status: "published",
346
- publishedAt: daysAgo(3),
347
- authorId: "user-admin-letitrip",
348
- authorName: "Mock User 1",
349
- readTimeMinutes: 6,
350
- views: 1200,
351
- metaTitle: "Collector Spotlight: Mumbai Gundam Collection | LetItRip",
352
- metaDescription: "Meet the Mumbai engineer building India's largest Gundam collection — 200+ kits and growing.",
353
- createdAt: daysAgo(4),
354
- updatedAt: daysAgo(3),
355
- },
356
- {
357
- id: "blog-india-collectibles-market-overview",
358
- title: "The Indian Collectibles Market in 2026: Where We Stand",
359
- slug: "india-collectibles-market-overview",
360
- excerpt: "From trading cards to action figures — a data-driven look at India's growing collectibles scene and what's driving the boom.",
361
- content: `<h2>The Numbers</h2><p>India's organized collectibles market is estimated at ₹2,500 crore in 2026, up from ₹800 crore in 2022. Trading cards (Pokémon, One Piece) account for ~40%, followed by action figures (~25%), diecast (~15%), and model kits/spinning tops (~10%).</p><h2>What's Driving Growth</h2><p><strong>Anime streaming</strong> — India is now the #3 market for anime streaming (Crunchyroll, Netflix anime). Fans who watch Dragon Ball, Naruto, and One Piece naturally become collectors. <strong>Social media</strong> — Instagram and YouTube unboxing/pull content drives awareness. <strong>Verified platforms</strong> — LetItRip and similar platforms have made it safe to buy collectibles online, reducing the counterfeit risk that previously kept buyers away.</p><h2>What's Hot in 2026</h2><p>Pokémon cards remain #1 by volume. Beyblade X is the fastest-growing category by transaction value. Gundam is niche but intensely loyal. Hot Wheels Super Treasure Hunts are the "gateway drug" for new collectors.</p><h2>What's Next</h2><p>Sports cards (cricket, specifically) are the next frontier. Digital collectibles (graded item NFTs backed by physical) are being explored. LetItRip is building infrastructure for both.</p>`,
362
- category: "community",
363
- tags: ["india", "market", "overview", "trends", "2026"],
364
- isFeatured: false,
365
- status: "published",
366
- publishedAt: daysAgo(16),
367
- authorId: "user-admin-letitrip",
368
- authorName: "Mock User 1",
369
- readTimeMinutes: 8,
370
- views: 4100,
371
- metaTitle: "Indian Collectibles Market 2026 | LetItRip",
372
- metaDescription: "Data-driven overview of India's collectibles market — trading cards, figures, diecast, and what's driving growth.",
373
- createdAt: daysAgo(18),
374
- updatedAt: daysAgo(16),
375
- },
376
- // ── UPDATES (3) ───────────────────────────────────────────────────────────
377
- {
378
- id: "blog-letitrip-escrow-launch",
379
- title: "LetItRip Now Has Full Escrow Protection — Here's How It Works",
380
- slug: "letitrip-escrow-launch",
381
- excerpt: "Every purchase on LetItRip is now protected by escrow. Your payment is held securely until you confirm delivery. Here's what that means for you.",
382
- content: `<h2>What Changed</h2><p>All payments on LetItRip now go through escrow via Razorpay. This means your money is held by LetItRip — not sent directly to the seller. The seller only gets paid after you confirm delivery (or 7 days pass without a dispute).</p><h2>How It Protects Buyers</h2><p>If the item doesn't arrive, isn't as described, or is counterfeit — you open a dispute and your money is returned. No chasing sellers. No "send money first, trust me bro." Professional marketplace standards.</p><h2>How It Protects Sellers</h2><p>Sellers are protected from fraudulent chargebacks. Once the buyer confirms delivery, the payment is released. If a buyer tries to scam a seller, our mediation team reviews the evidence and rules fairly.</p><h2>UPI / Card / Net Banking</h2><p>Escrow works with all payment methods — UPI (GPay, PhonePe, Paytm), credit/debit cards, and net banking. The checkout experience is the same; the protection is invisible but always active.</p>`,
383
- category: "updates",
384
- tags: ["escrow", "launch", "buyer-protection", "razorpay", "feature"],
385
- isFeatured: false,
386
- status: "published",
387
- publishedAt: daysAgo(45),
388
- authorId: "user-admin-letitrip",
389
- authorName: "Mock User 1",
390
- readTimeMinutes: 4,
391
- views: 7200,
392
- metaTitle: "Escrow Protection Now Live on LetItRip",
393
- metaDescription: "LetItRip's escrow payment system — how it protects buyers and sellers on every transaction.",
394
- createdAt: daysAgo(48),
395
- updatedAt: daysAgo(45),
396
- },
397
- {
398
- id: "blog-seller-verification-program",
399
- title: "Meet Our Verified Seller Program — What It Means for You",
400
- slug: "seller-verification-program",
401
- excerpt: "Every seller on LetItRip goes through manual verification. Here's what we check, why it matters, and how to get verified yourself.",
402
- content: `<h2>What We Verify</h2><p>Every seller application is manually reviewed by our team. We check: government ID (PAN/Aadhaar), store photos (inventory + packaging setup), previous selling history (if any), and a live video call to verify identity.</p><h2>Why It Matters</h2><p>Verified sellers have a 98% positive feedback rate on LetItRip. Unverified platforms see 15–20% dispute rates. Our verification eliminates the vast majority of scams before they happen.</p><h2>The Verified Badge</h2><p>Once approved, your store gets a ✓ Verified badge visible on every listing. Buyers filter by "Verified only" — which means verified sellers get more visibility and more sales.</p><h2>Become a Seller</h2><p>Go to Account → Become a Seller. The process takes ~48 hours. No listing fees, no monthly subscription. You only pay a commission when you make a sale.</p>`,
403
- category: "updates",
404
- tags: ["verification", "seller", "trust", "badge", "program"],
405
- isFeatured: false,
406
- status: "published",
407
- publishedAt: daysAgo(35),
408
- authorId: "user-admin-letitrip",
409
- authorName: "Mock User 1",
410
- readTimeMinutes: 5,
411
- views: 4800,
412
- metaTitle: "Verified Seller Program | LetItRip",
413
- metaDescription: "How LetItRip's seller verification program works — and how to get verified.",
414
- createdAt: daysAgo(38),
415
- updatedAt: daysAgo(35),
416
- },
417
- {
418
- id: "blog-auction-feature-launch",
419
- title: "Live Auctions Are Here — Bid on Rare Collectibles",
420
- slug: "auction-feature-launch",
421
- excerpt: "LetItRip now supports live auctions with auto-extend, real-time bidding, and escrow-protected payments. Start bidding today.",
422
- content: `<h2>How Auctions Work</h2><p>Sellers list items as auctions with a starting bid and optional reserve price. Bidders place bids in real-time. The highest bidder when the auction ends wins the item.</p><h2>Anti-Sniping Protection</h2><p>If a bid is placed in the final 2 minutes, the auction auto-extends by 2 minutes. This prevents last-second sniping and gives every bidder a fair chance.</p><h2>Escrow Protection</h2><p>Won auctions go through the same escrow system as fixed-price purchases. Your money is held until you confirm delivery.</p><h2>What's Being Auctioned</h2><p>Rare 1st Edition cards, convention exclusive figures, vintage Beyblades, limited edition Hot Wheels, and more. Browse the Auctions page to see what's live now.</p>`,
423
- category: "updates",
424
- tags: ["auctions", "launch", "feature", "bidding", "auto-extend"],
425
- isFeatured: false,
426
- status: "archived",
427
- publishedAt: daysAgo(60),
428
- authorId: "user-admin-letitrip",
429
- authorName: "Mock User 1",
430
- readTimeMinutes: 4,
431
- views: 5600,
432
- metaTitle: "Live Auctions Now on LetItRip",
433
- metaDescription: "Bid on rare collectibles with auto-extend protection and escrow payments on LetItRip.",
434
- createdAt: daysAgo(65),
435
- updatedAt: daysAgo(60),
436
- },
437
- ];
438
- /**
439
- * Tokens derived here, not per record — see _helpers/search-txt-wrappers.ts for
440
- * why the wrapper form is what makes omission impossible.
441
- */
442
- export const blogPostsSeedData = _rawblogPostsSeedData.map(withBlogSearchTxt);
@@ -1,2 +0,0 @@
1
- import type { CarouselSlideDocument } from "../features/homepage/schemas";
2
- export declare const carouselSlidesSeedData: Partial<CarouselSlideDocument>[];