@mohasinac/appkit 2.3.1 → 2.4.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 (771) hide show
  1. package/dist/client.d.ts +54 -18
  2. package/dist/client.js +29 -10
  3. package/dist/constants/api-endpoints.d.ts +384 -22
  4. package/dist/constants/api-endpoints.js +68 -13
  5. package/dist/constants/index.d.ts +1 -1
  6. package/dist/constants/index.js +1 -1
  7. package/dist/core/contact-submissions.repository.d.ts +32 -0
  8. package/dist/core/contact-submissions.repository.js +49 -0
  9. package/dist/core/hooks/useSyncManager.d.ts +1 -0
  10. package/dist/core/hooks/useSyncManager.js +83 -0
  11. package/dist/core/index.d.ts +2 -0
  12. package/dist/core/index.js +1 -0
  13. package/dist/core/integration-keys.d.ts +4 -0
  14. package/dist/core/integration-keys.js +8 -0
  15. package/dist/features/about/components/FAQPageView.js +9 -11
  16. package/dist/features/about/components/HowPayoutsWorkView.js +1 -1
  17. package/dist/features/about/components/PolicyPageView.js +32 -11
  18. package/dist/features/about/components/PublicProfileView.js +77 -11
  19. package/dist/features/account/components/AddressFilters.d.ts +5 -0
  20. package/dist/features/account/components/AddressFilters.js +20 -0
  21. package/dist/features/account/components/AddressesIndexListing.d.ts +6 -0
  22. package/dist/features/account/components/AddressesIndexListing.js +76 -0
  23. package/dist/features/account/components/UserOffersPanel.d.ts +8 -0
  24. package/dist/features/account/components/UserOffersPanel.js +81 -0
  25. package/dist/features/account/components/UserSettingsView.d.ts +2 -1
  26. package/dist/features/account/components/UserSettingsView.js +2 -1
  27. package/dist/features/account/components/UserSidebar.d.ts +12 -3
  28. package/dist/features/account/components/UserSidebar.js +64 -10
  29. package/dist/features/account/components/index.d.ts +2 -0
  30. package/dist/features/account/components/index.js +1 -0
  31. package/dist/features/account/hooks/useAddresses.d.ts +7 -0
  32. package/dist/features/account/hooks/useAddresses.js +12 -1
  33. package/dist/features/admin/actions/admin-actions.d.ts +1 -1
  34. package/dist/features/admin/actions/admin-actions.js +13 -3
  35. package/dist/features/admin/actions/admin-read-actions.d.ts +12 -0
  36. package/dist/features/admin/actions/admin-read-actions.js +18 -0
  37. package/dist/features/admin/components/AdminAdEditorView.js +6 -7
  38. package/dist/features/admin/components/AdminAllEventEntriesView.d.ts +4 -0
  39. package/dist/features/admin/components/AdminAllEventEntriesView.js +102 -0
  40. package/dist/features/admin/components/AdminBidsView.js +94 -8
  41. package/dist/features/admin/components/AdminBlogEditorView.d.ts +7 -0
  42. package/dist/features/admin/components/AdminBlogEditorView.js +162 -0
  43. package/dist/features/admin/components/AdminBlogView.d.ts +4 -1
  44. package/dist/features/admin/components/AdminBlogView.js +64 -10
  45. package/dist/features/admin/components/AdminBrandEditorView.d.ts +7 -0
  46. package/dist/features/admin/components/AdminBrandEditorView.js +104 -0
  47. package/dist/features/admin/components/AdminBrandsView.d.ts +4 -0
  48. package/dist/features/admin/components/AdminBrandsView.js +76 -0
  49. package/dist/features/admin/components/AdminCarouselEditorView.d.ts +8 -0
  50. package/dist/features/admin/components/AdminCarouselEditorView.js +204 -0
  51. package/dist/features/admin/components/AdminCarouselView.js +155 -20
  52. package/dist/features/admin/components/AdminCartsView.d.ts +4 -0
  53. package/dist/features/admin/components/AdminCartsView.js +82 -0
  54. package/dist/features/admin/components/AdminCategoriesView.d.ts +4 -1
  55. package/dist/features/admin/components/AdminCategoriesView.js +69 -26
  56. package/dist/features/admin/components/AdminCategoryEditorView.d.ts +7 -0
  57. package/dist/features/admin/components/AdminCategoryEditorView.js +115 -0
  58. package/dist/features/admin/components/AdminContactEditorView.d.ts +11 -0
  59. package/dist/features/admin/components/AdminContactEditorView.js +32 -0
  60. package/dist/features/admin/components/AdminContactView.d.ts +4 -0
  61. package/dist/features/admin/components/AdminContactView.js +141 -0
  62. package/dist/features/admin/components/AdminCouponEditorView.d.ts +7 -0
  63. package/dist/features/admin/components/AdminCouponEditorView.js +179 -0
  64. package/dist/features/admin/components/AdminCouponsView.d.ts +4 -1
  65. package/dist/features/admin/components/AdminCouponsView.js +57 -9
  66. package/dist/features/admin/components/AdminDashboardView.js +3 -0
  67. package/dist/features/admin/components/AdminFaqEditorView.d.ts +7 -0
  68. package/dist/features/admin/components/AdminFaqEditorView.js +128 -0
  69. package/dist/features/admin/components/AdminFaqsView.d.ts +4 -1
  70. package/dist/features/admin/components/AdminFaqsView.js +55 -6
  71. package/dist/features/admin/components/AdminFeatureFlagsView.js +33 -24
  72. package/dist/features/admin/components/AdminListingScaffold.d.ts +17 -2
  73. package/dist/features/admin/components/AdminListingScaffold.js +14 -3
  74. package/dist/features/admin/components/AdminMediaView.js +18 -8
  75. package/dist/features/admin/components/AdminNavEditorView.d.ts +20 -0
  76. package/dist/features/admin/components/AdminNavEditorView.js +84 -0
  77. package/dist/features/admin/components/AdminNavigationView.d.ts +1 -7
  78. package/dist/features/admin/components/AdminNavigationView.js +84 -72
  79. package/dist/features/admin/components/AdminNewsletterView.d.ts +4 -0
  80. package/dist/features/admin/components/AdminNewsletterView.js +132 -0
  81. package/dist/features/admin/components/AdminNotificationsView.d.ts +4 -0
  82. package/dist/features/admin/components/AdminNotificationsView.js +119 -0
  83. package/dist/features/admin/components/AdminOrderEditorView.d.ts +8 -0
  84. package/dist/features/admin/components/AdminOrderEditorView.js +74 -0
  85. package/dist/features/admin/components/AdminOrdersView.js +64 -8
  86. package/dist/features/admin/components/AdminPayoutsView.js +122 -13
  87. package/dist/features/admin/components/AdminProductEditorView.d.ts +7 -0
  88. package/dist/features/admin/components/AdminProductEditorView.js +143 -0
  89. package/dist/features/admin/components/AdminProductsView.d.ts +4 -1
  90. package/dist/features/admin/components/AdminProductsView.js +124 -7
  91. package/dist/features/admin/components/AdminReturnRequestsView.d.ts +5 -0
  92. package/dist/features/admin/components/AdminReturnRequestsView.js +101 -0
  93. package/dist/features/admin/components/AdminReviewsView.js +140 -6
  94. package/dist/features/admin/components/AdminSectionsView.js +361 -472
  95. package/dist/features/admin/components/AdminSessionsView.d.ts +4 -0
  96. package/dist/features/admin/components/AdminSessionsView.js +119 -0
  97. package/dist/features/admin/components/AdminSidebar.d.ts +18 -3
  98. package/dist/features/admin/components/AdminSidebar.js +51 -4
  99. package/dist/features/admin/components/AdminSiteSettingsView.d.ts +7 -0
  100. package/dist/features/admin/components/AdminSiteSettingsView.js +319 -0
  101. package/dist/features/admin/components/AdminStoreAddressesView.d.ts +5 -0
  102. package/dist/features/admin/components/AdminStoreAddressesView.js +52 -0
  103. package/dist/features/admin/components/AdminStoreEditorView.d.ts +9 -0
  104. package/dist/features/admin/components/AdminStoreEditorView.js +55 -0
  105. package/dist/features/admin/components/AdminStoresView.js +62 -5
  106. package/dist/features/admin/components/AdminUserEditorView.d.ts +10 -0
  107. package/dist/features/admin/components/AdminUserEditorView.js +72 -0
  108. package/dist/features/admin/components/AdminUsersView.js +73 -14
  109. package/dist/features/admin/components/AdminWishlistsView.d.ts +4 -0
  110. package/dist/features/admin/components/AdminWishlistsView.js +53 -0
  111. package/dist/features/admin/components/BrandQuickCreateForm.d.ts +5 -0
  112. package/dist/features/admin/components/BrandQuickCreateForm.js +36 -0
  113. package/dist/features/admin/components/CategoryQuickCreateForm.d.ts +5 -0
  114. package/dist/features/admin/components/CategoryQuickCreateForm.js +35 -0
  115. package/dist/features/admin/components/DataTable.d.ts +5 -2
  116. package/dist/features/admin/components/DataTable.js +38 -4
  117. package/dist/features/admin/components/index.d.ts +53 -1
  118. package/dist/features/admin/components/index.js +26 -0
  119. package/dist/features/admin/components/sections/adminSectionsBuildParse.d.ts +48 -0
  120. package/dist/features/admin/components/sections/adminSectionsBuildParse.js +653 -0
  121. package/dist/features/admin/components/sections/adminSectionsTypes.d.ts +298 -0
  122. package/dist/features/admin/components/sections/adminSectionsTypes.js +278 -0
  123. package/dist/features/admin/hooks/useAdminListingData.d.ts +3 -1
  124. package/dist/features/admin/hooks/useAdminListingData.js +12 -7
  125. package/dist/features/admin/schemas/firestore.d.ts +26 -0
  126. package/dist/features/admin/schemas/firestore.js +1 -0
  127. package/dist/features/admin/server.d.ts +3 -0
  128. package/dist/features/admin/server.js +2 -0
  129. package/dist/features/admin/types/product.types.d.ts +2 -3
  130. package/dist/features/auctions/actions/bid-actions.js +6 -2
  131. package/dist/features/auctions/components/AuctionDetailPageView.d.ts +3 -1
  132. package/dist/features/auctions/components/AuctionDetailPageView.js +125 -53
  133. package/dist/features/auctions/components/AuctionFilters.d.ts +10 -0
  134. package/dist/features/auctions/components/AuctionFilters.js +16 -0
  135. package/dist/features/auctions/components/AuctionsListView.d.ts +6 -1
  136. package/dist/features/auctions/components/AuctionsListView.js +37 -5
  137. package/dist/features/auctions/components/CollapsibleBidHistory.d.ts +7 -0
  138. package/dist/features/auctions/components/CollapsibleBidHistory.js +8 -0
  139. package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +4 -0
  140. package/dist/features/auctions/components/MarketplaceAuctionCard.js +43 -9
  141. package/dist/features/auctions/components/MarketplaceAuctionGrid.js +1 -0
  142. package/dist/features/auctions/components/PlaceBidFormClient.d.ts +18 -0
  143. package/dist/features/auctions/components/PlaceBidFormClient.js +33 -0
  144. package/dist/features/auctions/hooks/useAuctions.d.ts +1 -0
  145. package/dist/features/auctions/hooks/useAuctions.js +1 -0
  146. package/dist/features/auctions/schemas/index.d.ts +18 -8
  147. package/dist/features/auth/actions/profile-actions.d.ts +5 -3
  148. package/dist/features/auth/actions/profile-actions.js +30 -11
  149. package/dist/features/auth/auth-helpers.js +1 -0
  150. package/dist/features/auth/components/LoginForm.js +2 -1
  151. package/dist/features/auth/hooks/useAuth.js +16 -4
  152. package/dist/features/auth/permissions/constants.d.ts +63 -0
  153. package/dist/features/auth/permissions/constants.js +323 -0
  154. package/dist/features/auth/schemas/firestore.d.ts +20 -0
  155. package/dist/features/auth/schemas/index.d.ts +4 -4
  156. package/dist/features/auth/schemas/index.js +3 -2
  157. package/dist/features/auth/types/index.d.ts +1 -1
  158. package/dist/features/before-after/schemas/index.d.ts +2 -2
  159. package/dist/features/blog/actions/blog-actions.d.ts +15 -15
  160. package/dist/features/blog/components/BlogFeaturedCard.d.ts +1 -7
  161. package/dist/features/blog/components/BlogFeaturedCard.js +4 -5
  162. package/dist/features/blog/components/BlogFilters.js +2 -1
  163. package/dist/features/blog/components/BlogIndexListing.js +66 -9
  164. package/dist/features/blog/components/BlogIndexPageView.d.ts +6 -1
  165. package/dist/features/blog/components/BlogIndexPageView.js +24 -4
  166. package/dist/features/blog/components/BlogListView.d.ts +2 -1
  167. package/dist/features/blog/components/BlogListView.js +10 -3
  168. package/dist/features/blog/components/BlogPostForm.js +6 -2
  169. package/dist/features/blog/components/BlogPostView.js +2 -1
  170. package/dist/features/blog/hooks/useBlog.d.ts +2 -0
  171. package/dist/features/blog/hooks/useBlog.js +2 -0
  172. package/dist/features/blog/schemas/index.d.ts +46 -12
  173. package/dist/features/brands/actions/brand-actions.d.ts +2 -0
  174. package/dist/features/brands/actions/brand-actions.js +5 -0
  175. package/dist/features/brands/index.d.ts +3 -0
  176. package/dist/features/brands/index.js +3 -0
  177. package/dist/features/brands/repository/brands.repository.d.ts +13 -0
  178. package/dist/features/brands/repository/brands.repository.js +60 -0
  179. package/dist/features/brands/schemas/index.d.ts +33 -0
  180. package/dist/features/brands/schemas/index.js +15 -0
  181. package/dist/features/brands/server.d.ts +7 -0
  182. package/dist/features/brands/server.js +7 -0
  183. package/dist/features/cart/actions/cart-actions.js +2 -2
  184. package/dist/features/cart/components/CartDrawer.d.ts +5 -1
  185. package/dist/features/cart/components/CartDrawer.js +3 -3
  186. package/dist/features/cart/hooks/useCartCount.d.ts +3 -2
  187. package/dist/features/cart/hooks/useCartCount.js +4 -2
  188. package/dist/features/cart/hooks/useGuestCartMerge.js +1 -1
  189. package/dist/features/cart/index.d.ts +1 -0
  190. package/dist/features/cart/index.js +1 -0
  191. package/dist/features/cart/repository/cart.repository.d.ts +5 -1
  192. package/dist/features/cart/repository/cart.repository.js +36 -5
  193. package/dist/features/cart/schemas/firestore.d.ts +25 -6
  194. package/dist/features/cart/schemas/firestore.js +2 -2
  195. package/dist/features/cart/schemas/index.d.ts +9 -9
  196. package/dist/features/cart/schemas/index.js +1 -1
  197. package/dist/features/cart/types/index.d.ts +1 -1
  198. package/dist/features/cart/utils/pending-ops.d.ts +33 -0
  199. package/dist/features/cart/utils/pending-ops.js +102 -0
  200. package/dist/features/categories/components/BrandDetailPageView.d.ts +4 -0
  201. package/dist/features/categories/components/BrandDetailPageView.js +54 -0
  202. package/dist/features/categories/components/BrandDetailTabs.d.ts +10 -0
  203. package/dist/features/categories/components/BrandDetailTabs.js +22 -0
  204. package/dist/features/categories/components/CategoriesIndexListing.d.ts +3 -1
  205. package/dist/features/categories/components/CategoriesIndexListing.js +117 -38
  206. package/dist/features/categories/components/CategoriesIndexPageView.d.ts +6 -1
  207. package/dist/features/categories/components/CategoriesIndexPageView.js +41 -2
  208. package/dist/features/categories/components/CategoryDetailPageView.js +47 -19
  209. package/dist/features/categories/components/CategoryDetailTabs.d.ts +11 -0
  210. package/dist/features/categories/components/CategoryDetailTabs.js +22 -0
  211. package/dist/features/categories/components/CategoryFilters.js +2 -1
  212. package/dist/features/categories/components/CategoryForm.js +10 -4
  213. package/dist/features/categories/components/CategoryGrid.d.ts +2 -1
  214. package/dist/features/categories/components/CategoryGrid.js +8 -6
  215. package/dist/features/categories/components/CategoryProductsListing.d.ts +4 -1
  216. package/dist/features/categories/components/CategoryProductsListing.js +53 -13
  217. package/dist/features/categories/components/ConcernCard.js +1 -1
  218. package/dist/features/categories/components/index.d.ts +2 -0
  219. package/dist/features/categories/components/index.js +1 -0
  220. package/dist/features/categories/hooks/useCategories.d.ts +20 -0
  221. package/dist/features/categories/hooks/useCategories.js +52 -1
  222. package/dist/features/categories/hooks/useCategoryTree.d.ts +17 -0
  223. package/dist/features/categories/hooks/useCategoryTree.js +65 -0
  224. package/dist/features/categories/repository/categories.repository.js +2 -3
  225. package/dist/features/categories/schemas/firestore.d.ts +23 -2
  226. package/dist/features/categories/schemas/firestore.js +8 -0
  227. package/dist/features/categories/schemas/index.d.ts +8 -8
  228. package/dist/features/categories/types/index.d.ts +1 -0
  229. package/dist/features/collections/schemas/index.d.ts +2 -2
  230. package/dist/features/events/components/AdminEventEditorView.d.ts +6 -0
  231. package/dist/features/events/components/AdminEventEditorView.js +203 -0
  232. package/dist/features/events/components/AdminEventsView.d.ts +4 -1
  233. package/dist/features/events/components/AdminEventsView.js +66 -14
  234. package/dist/features/events/components/EventCard.js +4 -2
  235. package/dist/features/events/components/EventFilters.js +2 -1
  236. package/dist/features/events/components/EventPollWidget.d.ts +12 -0
  237. package/dist/features/events/components/EventPollWidget.js +62 -0
  238. package/dist/features/events/components/EventsIndexListing.js +92 -10
  239. package/dist/features/events/components/EventsListPageView.d.ts +6 -1
  240. package/dist/features/events/components/EventsListPageView.js +40 -7
  241. package/dist/features/events/components/index.d.ts +4 -0
  242. package/dist/features/events/components/index.js +2 -0
  243. package/dist/features/events/hooks/useEvents.d.ts +1 -0
  244. package/dist/features/events/hooks/useEvents.js +3 -0
  245. package/dist/features/events/repository/events.repository.js +3 -0
  246. package/dist/features/events/schemas/firestore.d.ts +1 -0
  247. package/dist/features/events/schemas/index.d.ts +44 -0
  248. package/dist/features/events/types/index.d.ts +3 -0
  249. package/dist/features/faq/actions/faq-actions.d.ts +16 -16
  250. package/dist/features/faq/hooks/useFaqList.js +1 -1
  251. package/dist/features/faq/schemas/firestore.d.ts +2 -2
  252. package/dist/features/faq/schemas/firestore.js +2 -1
  253. package/dist/features/faq/schemas/index.d.ts +4 -4
  254. package/dist/features/filters/FilterFacetSection.d.ts +1 -0
  255. package/dist/features/filters/FilterFacetSection.js +13 -1
  256. package/dist/features/filters/SwitchFilter.js +1 -1
  257. package/dist/features/grouped/schemas/firestore.d.ts +32 -0
  258. package/dist/features/grouped/schemas/firestore.js +19 -0
  259. package/dist/features/homepage/components/AdSlot.d.ts +1 -3
  260. package/dist/features/homepage/components/AdSlot.js +15 -14
  261. package/dist/features/homepage/components/BlogArticlesSection.d.ts +3 -1
  262. package/dist/features/homepage/components/BlogArticlesSection.js +3 -3
  263. package/dist/features/homepage/components/BrandsSection.d.ts +3 -1
  264. package/dist/features/homepage/components/BrandsSection.js +4 -3
  265. package/dist/features/homepage/components/CustomCardsSection.d.ts +3 -0
  266. package/dist/features/homepage/components/CustomCardsSection.js +76 -0
  267. package/dist/features/homepage/components/EventsSection.d.ts +3 -1
  268. package/dist/features/homepage/components/EventsSection.js +3 -3
  269. package/dist/features/homepage/components/FeaturedAuctionsSection.d.ts +4 -1
  270. package/dist/features/homepage/components/FeaturedAuctionsSection.js +3 -3
  271. package/dist/features/homepage/components/FeaturedPreOrdersSection.d.ts +4 -1
  272. package/dist/features/homepage/components/FeaturedPreOrdersSection.js +3 -3
  273. package/dist/features/homepage/components/FeaturedProductsSection.d.ts +4 -1
  274. package/dist/features/homepage/components/FeaturedProductsSection.js +8 -3
  275. package/dist/features/homepage/components/FeaturedStoresSection.d.ts +3 -1
  276. package/dist/features/homepage/components/FeaturedStoresSection.js +3 -3
  277. package/dist/features/homepage/components/GoogleReviewsSection.d.ts +3 -0
  278. package/dist/features/homepage/components/GoogleReviewsSection.js +65 -0
  279. package/dist/features/homepage/components/HeroCarousel.js +129 -85
  280. package/dist/features/homepage/components/MarketplaceHomepageView.d.ts +2 -20
  281. package/dist/features/homepage/components/MarketplaceHomepageView.js +73 -220
  282. package/dist/features/homepage/components/SectionCarousel.d.ts +1 -1
  283. package/dist/features/homepage/components/SectionCarousel.js +6 -4
  284. package/dist/features/homepage/components/ShopByCategorySection.d.ts +3 -1
  285. package/dist/features/homepage/components/ShopByCategorySection.js +8 -4
  286. package/dist/features/homepage/components/SocialFeedSection.d.ts +3 -0
  287. package/dist/features/homepage/components/SocialFeedSection.js +86 -0
  288. package/dist/features/homepage/components/SocialPostCard.d.ts +7 -0
  289. package/dist/features/homepage/components/SocialPostCard.js +39 -0
  290. package/dist/features/homepage/components/StatsCounterSection.js +1 -1
  291. package/dist/features/homepage/components/WelcomeSection.js +1 -1
  292. package/dist/features/homepage/components/WhatsAppCommunitySection.js +1 -1
  293. package/dist/features/homepage/hooks/useActiveAd.d.ts +23 -0
  294. package/dist/features/homepage/hooks/useActiveAd.js +20 -0
  295. package/dist/features/homepage/hooks/useBlogArticles.d.ts +1 -0
  296. package/dist/features/homepage/hooks/useBlogArticles.js +10 -0
  297. package/dist/features/homepage/hooks/useFeaturedAuctions.d.ts +4 -1
  298. package/dist/features/homepage/hooks/useFeaturedAuctions.js +8 -4
  299. package/dist/features/homepage/hooks/useFeaturedPreOrders.d.ts +4 -1
  300. package/dist/features/homepage/hooks/useFeaturedPreOrders.js +8 -4
  301. package/dist/features/homepage/hooks/useFeaturedProducts.d.ts +1 -0
  302. package/dist/features/homepage/hooks/useFeaturedProducts.js +6 -3
  303. package/dist/features/homepage/hooks/useFeaturedStores.d.ts +3 -1
  304. package/dist/features/homepage/hooks/useFeaturedStores.js +2 -1
  305. package/dist/features/homepage/hooks/useHomepageEvents.d.ts +3 -1
  306. package/dist/features/homepage/hooks/useHomepageEvents.js +2 -1
  307. package/dist/features/homepage/hooks/useTopBrands.d.ts +3 -1
  308. package/dist/features/homepage/hooks/useTopBrands.js +2 -1
  309. package/dist/features/homepage/index.d.ts +2 -0
  310. package/dist/features/homepage/index.js +1 -0
  311. package/dist/features/homepage/lib/google-reviews-fetcher.d.ts +14 -0
  312. package/dist/features/homepage/lib/google-reviews-fetcher.js +27 -0
  313. package/dist/features/homepage/lib/live-stats.d.ts +14 -0
  314. package/dist/features/homepage/lib/live-stats.js +62 -0
  315. package/dist/features/homepage/lib/section-defaults.d.ts +11 -0
  316. package/dist/features/homepage/lib/section-defaults.js +45 -0
  317. package/dist/features/homepage/lib/section-helpers.d.ts +5 -0
  318. package/dist/features/homepage/lib/section-helpers.js +25 -0
  319. package/dist/features/homepage/lib/section-renderer.d.ts +33 -0
  320. package/dist/features/homepage/lib/section-renderer.js +164 -0
  321. package/dist/features/homepage/lib/social-feed-fetcher.d.ts +5 -0
  322. package/dist/features/homepage/lib/social-feed-fetcher.js +193 -0
  323. package/dist/features/homepage/schemas/firestore.d.ts +180 -29
  324. package/dist/features/homepage/schemas/firestore.js +7 -1
  325. package/dist/features/homepage/types/index.d.ts +48 -19
  326. package/dist/features/layout/AppLayoutShell.d.ts +11 -2
  327. package/dist/features/layout/AppLayoutShell.js +30 -10
  328. package/dist/features/layout/BottomActions.js +1 -1
  329. package/dist/features/layout/BottomNavbar.d.ts +15 -1
  330. package/dist/features/layout/BottomNavbar.js +8 -2
  331. package/dist/features/layout/FooterLayout.d.ts +7 -1
  332. package/dist/features/layout/FooterLayout.js +3 -3
  333. package/dist/features/layout/ListingLayout.js +2 -2
  334. package/dist/features/layout/MainNavbar.d.ts +6 -14
  335. package/dist/features/layout/MainNavbar.js +4 -16
  336. package/dist/features/layout/NavItem.js +1 -1
  337. package/dist/features/layout/NavbarLayout.d.ts +3 -1
  338. package/dist/features/layout/NavbarLayout.js +5 -5
  339. package/dist/features/layout/TitleBar.d.ts +4 -2
  340. package/dist/features/layout/TitleBar.js +5 -3
  341. package/dist/features/layout/TitleBarLayout.d.ts +3 -1
  342. package/dist/features/layout/TitleBarLayout.js +2 -2
  343. package/dist/features/layout/index.d.ts +1 -1
  344. package/dist/features/media/MediaPickerModal.d.ts +30 -0
  345. package/dist/features/media/MediaPickerModal.js +72 -0
  346. package/dist/features/media/index.d.ts +3 -1
  347. package/dist/features/media/index.js +1 -0
  348. package/dist/features/media/types/index.d.ts +12 -0
  349. package/dist/features/media/types/index.js +4 -2
  350. package/dist/features/media/upload/MediaUploadField.d.ts +5 -1
  351. package/dist/features/media/upload/MediaUploadField.js +56 -3
  352. package/dist/features/messages/schemas/firestore.d.ts +36 -0
  353. package/dist/features/messages/schemas/firestore.js +16 -0
  354. package/dist/features/orders/repository/orders.repository.d.ts +2 -2
  355. package/dist/features/orders/repository/orders.repository.js +2 -2
  356. package/dist/features/orders/schemas/firestore.d.ts +17 -4
  357. package/dist/features/orders/schemas/firestore.js +2 -2
  358. package/dist/features/orders/schemas/index.d.ts +18 -18
  359. package/dist/features/orders/schemas/index.js +3 -3
  360. package/dist/features/orders/types/index.d.ts +1 -1
  361. package/dist/features/orders/utils/order-splitter.d.ts +1 -1
  362. package/dist/features/orders/utils/order-splitter.js +2 -2
  363. package/dist/features/payments/repository/payout.repository.d.ts +4 -4
  364. package/dist/features/payments/repository/payout.repository.js +7 -7
  365. package/dist/features/payments/schemas/firestore.d.ts +6 -6
  366. package/dist/features/payments/schemas/firestore.js +6 -6
  367. package/dist/features/pre-orders/components/MarketplacePreorderCard.d.ts +3 -1
  368. package/dist/features/pre-orders/components/MarketplacePreorderCard.js +13 -8
  369. package/dist/features/pre-orders/components/PreOrderActionsClient.d.ts +11 -0
  370. package/dist/features/pre-orders/components/PreOrderActionsClient.js +28 -0
  371. package/dist/features/pre-orders/components/PreOrderDetailPageView.d.ts +2 -1
  372. package/dist/features/pre-orders/components/PreOrderDetailPageView.js +100 -14
  373. package/dist/features/pre-orders/components/PreOrderFilters.d.ts +10 -0
  374. package/dist/features/pre-orders/components/PreOrderFilters.js +24 -0
  375. package/dist/features/pre-orders/components/PreOrdersIndexListing.d.ts +4 -1
  376. package/dist/features/pre-orders/components/PreOrdersIndexListing.js +166 -11
  377. package/dist/features/pre-orders/components/PreOrdersListView.d.ts +6 -1
  378. package/dist/features/pre-orders/components/PreOrdersListView.js +26 -7
  379. package/dist/features/pre-orders/components/PreorderCard.js +1 -1
  380. package/dist/features/pre-orders/components/index.d.ts +2 -0
  381. package/dist/features/pre-orders/components/index.js +1 -0
  382. package/dist/features/pre-orders/schemas/index.d.ts +10 -0
  383. package/dist/features/products/actions/product-actions.d.ts +2 -2
  384. package/dist/features/products/actions/product-actions.js +5 -5
  385. package/dist/features/products/api/[id]/route.js +5 -2
  386. package/dist/features/products/api/route.js +10 -14
  387. package/dist/features/products/columns/productTableColumns.js +2 -2
  388. package/dist/features/products/components/AuctionDetailView.d.ts +2 -1
  389. package/dist/features/products/components/AuctionDetailView.js +2 -2
  390. package/dist/features/products/components/AuctionsIndexListing.d.ts +4 -1
  391. package/dist/features/products/components/AuctionsIndexListing.js +124 -10
  392. package/dist/features/products/components/BidHistory.d.ts +2 -1
  393. package/dist/features/products/components/BidHistory.js +18 -2
  394. package/dist/features/products/components/InteractiveProductCard.d.ts +2 -4
  395. package/dist/features/products/components/InteractiveProductCard.js +2 -2
  396. package/dist/features/products/components/MakeOfferButton.d.ts +10 -0
  397. package/dist/features/products/components/MakeOfferButton.js +68 -0
  398. package/dist/features/products/components/ProductDetailPageView.d.ts +11 -1
  399. package/dist/features/products/components/ProductDetailPageView.js +136 -26
  400. package/dist/features/products/components/ProductFilters.d.ts +13 -12
  401. package/dist/features/products/components/ProductFilters.js +8 -4
  402. package/dist/features/products/components/ProductForm.d.ts +19 -1
  403. package/dist/features/products/components/ProductForm.js +24 -6
  404. package/dist/features/products/components/ProductGrid.d.ts +16 -2
  405. package/dist/features/products/components/ProductGrid.js +80 -18
  406. package/dist/features/products/components/ProductTabsShell.d.ts +3 -11
  407. package/dist/features/products/components/ProductTabsShell.js +14 -14
  408. package/dist/features/products/components/ProductsIndexListing.js +160 -10
  409. package/dist/features/products/components/ProductsIndexPageView.d.ts +6 -1
  410. package/dist/features/products/components/ProductsIndexPageView.js +39 -6
  411. package/dist/features/products/components/RelatedProductsCarousel.d.ts +7 -0
  412. package/dist/features/products/components/RelatedProductsCarousel.js +11 -0
  413. package/dist/features/products/components/ShareButton.d.ts +7 -0
  414. package/dist/features/products/components/ShareButton.js +22 -0
  415. package/dist/features/products/components/index.d.ts +3 -0
  416. package/dist/features/products/components/index.js +2 -0
  417. package/dist/features/products/hooks/useProducts.d.ts +7 -0
  418. package/dist/features/products/hooks/useProducts.js +20 -2
  419. package/dist/features/products/repository/products.repository.d.ts +9 -5
  420. package/dist/features/products/repository/products.repository.js +19 -50
  421. package/dist/features/products/schemas/firestore.d.ts +11 -9
  422. package/dist/features/products/schemas/firestore.js +11 -3
  423. package/dist/features/products/schemas/index.d.ts +43 -42
  424. package/dist/features/products/schemas/index.js +2 -5
  425. package/dist/features/products/types/index.d.ts +24 -4
  426. package/dist/features/promotions/actions/coupon-actions.d.ts +2 -2
  427. package/dist/features/promotions/actions/coupon-actions.js +1 -1
  428. package/dist/features/promotions/actions/seller-coupon-actions.js +11 -6
  429. package/dist/features/promotions/api/route.js +3 -3
  430. package/dist/features/promotions/components/CouponCard.js +16 -7
  431. package/dist/features/promotions/components/CouponsIndexListing.d.ts +9 -0
  432. package/dist/features/promotions/components/CouponsIndexListing.js +80 -0
  433. package/dist/features/promotions/components/PromotionsView.d.ts +11 -5
  434. package/dist/features/promotions/components/PromotionsView.js +6 -1
  435. package/dist/features/promotions/components/index.d.ts +4 -2
  436. package/dist/features/promotions/components/index.js +2 -1
  437. package/dist/features/promotions/hooks/useCouponValidate.d.ts +1 -1
  438. package/dist/features/promotions/hooks/usePromotions.js +2 -2
  439. package/dist/features/promotions/repository/coupons.repository.d.ts +21 -15
  440. package/dist/features/promotions/repository/coupons.repository.js +97 -125
  441. package/dist/features/promotions/schemas/firestore.d.ts +31 -2
  442. package/dist/features/promotions/schemas/firestore.js +29 -0
  443. package/dist/features/promotions/schemas/index.d.ts +9 -12
  444. package/dist/features/promotions/schemas/index.js +1 -2
  445. package/dist/features/promotions/types/index.d.ts +1 -2
  446. package/dist/features/reviews/actions/review-actions.js +3 -2
  447. package/dist/features/reviews/components/ReviewDetailPageView.d.ts +4 -0
  448. package/dist/features/reviews/components/ReviewDetailPageView.js +16 -0
  449. package/dist/features/reviews/components/ReviewDetailShell.d.ts +7 -0
  450. package/dist/features/reviews/components/ReviewDetailShell.js +80 -0
  451. package/dist/features/reviews/components/ReviewFilters.d.ts +3 -3
  452. package/dist/features/reviews/components/ReviewFilters.js +5 -4
  453. package/dist/features/reviews/components/ReviewsIndexListing.d.ts +4 -3
  454. package/dist/features/reviews/components/ReviewsIndexListing.js +86 -51
  455. package/dist/features/reviews/components/ReviewsIndexPageView.d.ts +6 -1
  456. package/dist/features/reviews/components/ReviewsIndexPageView.js +49 -3
  457. package/dist/features/reviews/components/ReviewsList.js +9 -1
  458. package/dist/features/reviews/components/index.d.ts +1 -0
  459. package/dist/features/reviews/hooks/useReviews.d.ts +1 -0
  460. package/dist/features/reviews/hooks/useReviews.js +16 -1
  461. package/dist/features/reviews/repository/reviews.repository.d.ts +9 -4
  462. package/dist/features/reviews/repository/reviews.repository.js +18 -7
  463. package/dist/features/reviews/schemas/firestore.d.ts +5 -2
  464. package/dist/features/reviews/schemas/firestore.js +1 -0
  465. package/dist/features/reviews/schemas/index.d.ts +19 -16
  466. package/dist/features/reviews/schemas/index.js +3 -2
  467. package/dist/features/reviews/types/index.d.ts +9 -3
  468. package/dist/features/scams/actions/scam-actions.d.ts +29 -0
  469. package/dist/features/scams/actions/scam-actions.js +62 -0
  470. package/dist/features/scams/components/ScamProfileView.d.ts +7 -0
  471. package/dist/features/scams/components/ScamProfileView.js +49 -0
  472. package/dist/features/scams/components/ScamRegistryView.d.ts +6 -0
  473. package/dist/features/scams/components/ScamRegistryView.js +41 -0
  474. package/dist/features/scams/components/index.d.ts +4 -0
  475. package/dist/features/scams/components/index.js +2 -0
  476. package/dist/features/scams/constants/scam-types.d.ts +38 -0
  477. package/dist/features/scams/constants/scam-types.js +443 -0
  478. package/dist/features/scams/repository/scammer.repository.d.ts +67 -0
  479. package/dist/features/scams/repository/scammer.repository.js +160 -0
  480. package/dist/features/scams/schemas/firestore.d.ts +362 -0
  481. package/dist/features/scams/schemas/firestore.js +233 -0
  482. package/dist/features/search/components/Search.d.ts +12 -2
  483. package/dist/features/search/components/Search.js +26 -7
  484. package/dist/features/search/components/index.d.ts +1 -1
  485. package/dist/features/search/hooks/useNavSuggestions.d.ts +1 -1
  486. package/dist/features/search/hooks/useNavSuggestions.js +2 -2
  487. package/dist/features/search/schemas/index.d.ts +7 -7
  488. package/dist/features/seller/actions/offer-actions.js +52 -36
  489. package/dist/features/seller/actions/seller-actions.js +19 -13
  490. package/dist/features/seller/api/products/route.js +9 -4
  491. package/dist/features/seller/components/SellerAddressesView.d.ts +3 -12
  492. package/dist/features/seller/components/SellerAddressesView.js +144 -4
  493. package/dist/features/seller/components/SellerAuctionsView.js +58 -5
  494. package/dist/features/seller/components/SellerBidsView.d.ts +4 -0
  495. package/dist/features/seller/components/SellerBidsView.js +131 -0
  496. package/dist/features/seller/components/SellerCouponEditorView.d.ts +19 -0
  497. package/dist/features/seller/components/SellerCouponEditorView.js +67 -0
  498. package/dist/features/seller/components/SellerCouponsView.d.ts +5 -3
  499. package/dist/features/seller/components/SellerCouponsView.js +135 -13
  500. package/dist/features/seller/components/SellerCreateProductView.d.ts +4 -10
  501. package/dist/features/seller/components/SellerCreateProductView.js +4 -3
  502. package/dist/features/seller/components/SellerEditProductView.d.ts +4 -10
  503. package/dist/features/seller/components/SellerEditProductView.js +4 -3
  504. package/dist/features/seller/components/SellerOffersPanel.d.ts +20 -0
  505. package/dist/features/seller/components/SellerOffersPanel.js +138 -0
  506. package/dist/features/seller/components/SellerOffersView.js +56 -5
  507. package/dist/features/seller/components/SellerOrdersView.d.ts +2 -1
  508. package/dist/features/seller/components/SellerOrdersView.js +185 -16
  509. package/dist/features/seller/components/SellerPayoutRequestView.d.ts +7 -0
  510. package/dist/features/seller/components/SellerPayoutRequestView.js +63 -0
  511. package/dist/features/seller/components/SellerPayoutSettingsView.d.ts +3 -10
  512. package/dist/features/seller/components/SellerPayoutSettingsView.js +89 -3
  513. package/dist/features/seller/components/SellerPayoutsView.js +56 -5
  514. package/dist/features/seller/components/SellerProductShell.d.ts +68 -0
  515. package/dist/features/seller/components/SellerProductShell.js +179 -0
  516. package/dist/features/seller/components/SellerProductsView.d.ts +2 -3
  517. package/dist/features/seller/components/SellerProductsView.js +194 -18
  518. package/dist/features/seller/components/SellerReviewsView.d.ts +5 -0
  519. package/dist/features/seller/components/SellerReviewsView.js +100 -0
  520. package/dist/features/seller/components/SellerShippingView.d.ts +3 -11
  521. package/dist/features/seller/components/SellerShippingView.js +87 -3
  522. package/dist/features/seller/components/SellerSidebar.d.ts +18 -6
  523. package/dist/features/seller/components/SellerSidebar.js +54 -8
  524. package/dist/features/seller/components/SellerStorefrontView.d.ts +26 -11
  525. package/dist/features/seller/components/SellerStorefrontView.js +45 -7
  526. package/dist/features/seller/components/index.d.ts +45 -1
  527. package/dist/features/seller/components/index.js +24 -0
  528. package/dist/features/seller/hooks/useSellerListingData.d.ts +3 -1
  529. package/dist/features/seller/hooks/useSellerListingData.js +6 -4
  530. package/dist/features/seller/hooks/useSellerStore.d.ts +2 -0
  531. package/dist/features/seller/hooks/useSellerStore.js +2 -0
  532. package/dist/features/seller/permission-map.d.ts +4 -2
  533. package/dist/features/seller/permission-map.js +16 -14
  534. package/dist/features/seller/repository/offer.repository.d.ts +3 -3
  535. package/dist/features/seller/repository/offer.repository.js +6 -6
  536. package/dist/features/seller/schemas/firestore.d.ts +7 -7
  537. package/dist/features/seller/schemas/firestore.js +4 -4
  538. package/dist/features/seller/schemas/index.d.ts +18 -18
  539. package/dist/features/shell/FormShell.d.ts +29 -0
  540. package/dist/features/shell/FormShell.js +103 -0
  541. package/dist/features/shell/QuickFormDrawer.d.ts +29 -0
  542. package/dist/features/shell/QuickFormDrawer.js +117 -0
  543. package/dist/features/shell/StepForm.d.ts +44 -0
  544. package/dist/features/shell/StepForm.js +81 -0
  545. package/dist/features/shell/index.d.ts +6 -0
  546. package/dist/features/shell/index.js +3 -0
  547. package/dist/features/stores/actions/store-query-actions.js +3 -3
  548. package/dist/features/stores/api/[storeSlug]/auctions/route.js +1 -1
  549. package/dist/features/stores/api/[storeSlug]/products/route.js +1 -1
  550. package/dist/features/stores/api/[storeSlug]/reviews/route.d.ts +1 -1
  551. package/dist/features/stores/api/[storeSlug]/reviews/route.js +25 -20
  552. package/dist/features/stores/components/InteractiveStoreCard.d.ts +2 -7
  553. package/dist/features/stores/components/InteractiveStoreCard.js +24 -10
  554. package/dist/features/stores/components/StoreAboutView.js +1 -1
  555. package/dist/features/stores/components/StoreAuctionsListing.d.ts +5 -2
  556. package/dist/features/stores/components/StoreAuctionsListing.js +103 -12
  557. package/dist/features/stores/components/StoreAuctionsPageView.js +8 -7
  558. package/dist/features/stores/components/StoreDetailLayoutView.d.ts +1 -0
  559. package/dist/features/stores/components/StoreDetailLayoutView.js +30 -4
  560. package/dist/features/stores/components/StoreFilters.d.ts +5 -0
  561. package/dist/features/stores/components/StoreFilters.js +20 -0
  562. package/dist/features/stores/components/StoreHeader.js +3 -2
  563. package/dist/features/stores/components/StorePreOrdersListing.d.ts +7 -0
  564. package/dist/features/stores/components/StorePreOrdersListing.js +92 -0
  565. package/dist/features/stores/components/StorePreOrdersPageView.d.ts +4 -0
  566. package/dist/features/stores/components/StorePreOrdersPageView.js +22 -0
  567. package/dist/features/stores/components/StoreProductsListing.d.ts +5 -2
  568. package/dist/features/stores/components/StoreProductsListing.js +113 -14
  569. package/dist/features/stores/components/StoreProductsPageView.js +8 -7
  570. package/dist/features/stores/components/StoreReviewsListing.js +4 -9
  571. package/dist/features/stores/components/StoresIndexListing.js +106 -9
  572. package/dist/features/stores/components/StoresIndexPageView.d.ts +6 -1
  573. package/dist/features/stores/components/StoresIndexPageView.js +9 -2
  574. package/dist/features/stores/components/StoresListView.js +1 -1
  575. package/dist/features/stores/components/index.d.ts +3 -0
  576. package/dist/features/stores/components/index.js +1 -0
  577. package/dist/features/stores/hooks/useStores.d.ts +8 -1
  578. package/dist/features/stores/hooks/useStores.js +17 -3
  579. package/dist/features/stores/schemas/firestore.d.ts +34 -0
  580. package/dist/features/stores/schemas/index.d.ts +10 -10
  581. package/dist/features/stores/types/index.d.ts +3 -0
  582. package/dist/features/sublisting/schemas/firestore.d.ts +30 -0
  583. package/dist/features/sublisting/schemas/firestore.js +19 -0
  584. package/dist/features/support/schemas/firestore.d.ts +113 -0
  585. package/dist/features/support/schemas/firestore.js +95 -0
  586. package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.d.ts +5 -0
  587. package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.js +143 -0
  588. package/dist/features/whatsapp-bot/components/index.d.ts +2 -0
  589. package/dist/features/whatsapp-bot/components/index.js +1 -0
  590. package/dist/features/whatsapp-bot/helpers/whatsapp.d.ts +23 -1
  591. package/dist/features/whatsapp-bot/helpers/whatsapp.js +104 -0
  592. package/dist/features/whatsapp-bot/server.d.ts +1 -0
  593. package/dist/features/whatsapp-bot/server.js +1 -0
  594. package/dist/features/whatsapp-bot/types/index.d.ts +49 -0
  595. package/dist/features/wishlist/components/WishlistView.d.ts +0 -10
  596. package/dist/features/wishlist/components/WishlistView.js +13 -6
  597. package/dist/features/wishlist/hooks/useGuestWishlist.d.ts +20 -0
  598. package/dist/features/wishlist/hooks/useGuestWishlist.js +49 -0
  599. package/dist/features/wishlist/hooks/useWishlist.js +2 -0
  600. package/dist/features/wishlist/hooks/useWishlistCount.d.ts +15 -0
  601. package/dist/features/wishlist/hooks/useWishlistCount.js +95 -0
  602. package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +56 -0
  603. package/dist/features/wishlist/hooks/useWishlistWithGuest.js +57 -0
  604. package/dist/features/wishlist/index.d.ts +3 -0
  605. package/dist/features/wishlist/index.js +3 -0
  606. package/dist/features/wishlist/schemas/index.d.ts +2 -2
  607. package/dist/features/wishlist/types/index.d.ts +16 -0
  608. package/dist/features/wishlist/utils/guest-wishlist.d.ts +22 -0
  609. package/dist/features/wishlist/utils/guest-wishlist.js +70 -0
  610. package/dist/http/api-handler.js +8 -1
  611. package/dist/index.d.ts +158 -13
  612. package/dist/index.js +188 -21
  613. package/dist/monitoring/server-logger.js +9 -3
  614. package/dist/next/routing/route-map.d.ts +184 -36
  615. package/dist/next/routing/route-map.js +81 -22
  616. package/dist/providers/db-firebase/realtime.d.ts +1 -1
  617. package/dist/react/contexts/SessionContext.js +17 -26
  618. package/dist/react/hooks/useBulkSelection.d.ts +7 -24
  619. package/dist/react/hooks/useBulkSelection.js +27 -34
  620. package/dist/react/hooks/useLongPress.d.ts +3 -16
  621. package/dist/react/hooks/useLongPress.js +6 -25
  622. package/dist/react/index.d.ts +1 -0
  623. package/dist/react/index.js +2 -0
  624. package/dist/repositories/index.d.ts +3 -0
  625. package/dist/repositories/index.js +2 -0
  626. package/dist/seed/actions/demo-seed-actions.d.ts +2 -2
  627. package/dist/seed/actions/demo-seed-actions.js +1 -1
  628. package/dist/seed/addresses-seed-data.js +62 -261
  629. package/dist/seed/anime-figures-seed-data.d.ts +8 -0
  630. package/dist/seed/anime-figures-seed-data.js +1033 -0
  631. package/dist/seed/beyblade-seed-data.d.ts +7 -0
  632. package/dist/seed/beyblade-seed-data.js +1129 -0
  633. package/dist/seed/bids-seed-data.d.ts +4 -2
  634. package/dist/seed/bids-seed-data.js +343 -1067
  635. package/dist/seed/blog-posts-seed-data.d.ts +3 -2
  636. package/dist/seed/blog-posts-seed-data.js +258 -181
  637. package/dist/seed/brands-seed-data.d.ts +7 -0
  638. package/dist/seed/brands-seed-data.js +410 -0
  639. package/dist/seed/carousel-slides-seed-data.d.ts +3 -2
  640. package/dist/seed/carousel-slides-seed-data.js +177 -216
  641. package/dist/seed/cart-seed-data.d.ts +8 -8
  642. package/dist/seed/cart-seed-data.js +73 -74
  643. package/dist/seed/categories-seed-data.d.ts +4 -2
  644. package/dist/seed/categories-seed-data.js +720 -879
  645. package/dist/seed/conversations-seed-data.d.ts +8 -0
  646. package/dist/seed/conversations-seed-data.js +388 -0
  647. package/dist/seed/cosplay-accessories-seed-data.d.ts +8 -0
  648. package/dist/seed/cosplay-accessories-seed-data.js +647 -0
  649. package/dist/seed/coupon-usage-seed-data.d.ts +25 -0
  650. package/dist/seed/coupon-usage-seed-data.js +69 -0
  651. package/dist/seed/coupons-seed-data.d.ts +4 -2
  652. package/dist/seed/coupons-seed-data.js +204 -338
  653. package/dist/seed/events-seed-data.d.ts +4 -2
  654. package/dist/seed/events-seed-data.js +125 -588
  655. package/dist/seed/factories/cart.factory.d.ts +0 -1
  656. package/dist/seed/factories/cart.factory.js +2 -2
  657. package/dist/seed/faq-seed-data.d.ts +11 -41
  658. package/dist/seed/faq-seed-data.js +833 -1977
  659. package/dist/seed/grouped-listings-seed-data.d.ts +8 -0
  660. package/dist/seed/grouped-listings-seed-data.js +201 -0
  661. package/dist/seed/homepage-sections-seed-data.d.ts +3 -13
  662. package/dist/seed/homepage-sections-seed-data.js +228 -252
  663. package/dist/seed/hot-wheels-seed-data.d.ts +7 -0
  664. package/dist/seed/hot-wheels-seed-data.js +1612 -0
  665. package/dist/seed/index.d.ts +12 -6
  666. package/dist/seed/index.js +10 -7
  667. package/dist/seed/letitrip-official-seed-data.d.ts +8 -0
  668. package/dist/seed/letitrip-official-seed-data.js +399 -0
  669. package/dist/seed/manifest.d.ts +15 -0
  670. package/dist/seed/manifest.js +140 -0
  671. package/dist/seed/notifications-seed-data.d.ts +4 -2
  672. package/dist/seed/notifications-seed-data.js +117 -440
  673. package/dist/seed/orders-seed-data.d.ts +4 -2
  674. package/dist/seed/orders-seed-data.js +1090 -521
  675. package/dist/seed/payouts-seed-data.d.ts +4 -2
  676. package/dist/seed/payouts-seed-data.js +522 -145
  677. package/dist/seed/pokemon-carousel-slides-seed-data.d.ts +4 -2
  678. package/dist/seed/pokemon-carousel-slides-seed-data.js +157 -268
  679. package/dist/seed/pokemon-categories-seed-data.d.ts +18 -21
  680. package/dist/seed/pokemon-categories-seed-data.js +445 -1025
  681. package/dist/seed/pokemon-coupons-seed-data.d.ts +6 -0
  682. package/dist/seed/pokemon-coupons-seed-data.js +465 -0
  683. package/dist/seed/pokemon-homepage-sections-seed-data.d.ts +3 -2
  684. package/dist/seed/pokemon-homepage-sections-seed-data.js +120 -249
  685. package/dist/seed/pokemon-products-seed-data.d.ts +1 -1
  686. package/dist/seed/pokemon-products-seed-data.js +720 -48
  687. package/dist/seed/pokemon-seed-bundle.d.ts +36 -11
  688. package/dist/seed/pokemon-seed-bundle.js +60 -11
  689. package/dist/seed/pokemon-stores-seed-data.d.ts +2 -3
  690. package/dist/seed/pokemon-stores-seed-data.js +135 -34
  691. package/dist/seed/pokemon-users-seed-data.d.ts +2 -2
  692. package/dist/seed/pokemon-users-seed-data.js +344 -261
  693. package/dist/seed/products-auctions-seed-data.d.ts +10 -0
  694. package/dist/seed/products-auctions-seed-data.js +689 -0
  695. package/dist/seed/products-preorders-seed-data.d.ts +9 -0
  696. package/dist/seed/products-preorders-seed-data.js +483 -0
  697. package/dist/seed/products-seed-data.js +34 -13
  698. package/dist/seed/products-standard-seed-data.d.ts +8 -0
  699. package/dist/seed/products-standard-seed-data.js +4179 -0
  700. package/dist/seed/retro-gaming-seed-data.d.ts +8 -0
  701. package/dist/seed/retro-gaming-seed-data.js +801 -0
  702. package/dist/seed/reviews-seed-data.d.ts +4 -2
  703. package/dist/seed/reviews-seed-data.js +1005 -441
  704. package/dist/seed/scammers-seed-data.d.ts +17 -0
  705. package/dist/seed/scammers-seed-data.js +118 -0
  706. package/dist/seed/site-settings-seed-data.js +39 -16
  707. package/dist/seed/store-addresses-seed-data.js +187 -65
  708. package/dist/seed/stores-seed-data.d.ts +3 -9
  709. package/dist/seed/stores-seed-data.js +212 -102
  710. package/dist/seed/sublisting-categories-seed-data.d.ts +7 -0
  711. package/dist/seed/sublisting-categories-seed-data.js +315 -0
  712. package/dist/seed/transformers-seed-data.d.ts +7 -0
  713. package/dist/seed/transformers-seed-data.js +530 -0
  714. package/dist/seed/users-seed-data.d.ts +3 -2
  715. package/dist/seed/users-seed-data.js +531 -440
  716. package/dist/seed/wishlists-seed-data.d.ts +5 -1
  717. package/dist/seed/wishlists-seed-data.js +84 -6
  718. package/dist/server.d.ts +10 -2
  719. package/dist/server.js +14 -4
  720. package/dist/tokens/index.d.ts +6 -0
  721. package/dist/tokens/index.js +2 -0
  722. package/dist/tokens/tokens.css +76 -31
  723. package/dist/ui/components/Avatar.style.css +10 -12
  724. package/dist/ui/components/BaseListingCard.d.ts +8 -3
  725. package/dist/ui/components/BaseListingCard.js +39 -30
  726. package/dist/ui/components/BaseListingCard.style.css +8 -6
  727. package/dist/ui/components/BulkActionsBar.d.ts +16 -0
  728. package/dist/ui/components/BulkActionsBar.js +22 -0
  729. package/dist/ui/components/Button.style.css +23 -23
  730. package/dist/ui/components/Card.style.css +60 -62
  731. package/dist/ui/components/Checkbox.style.css +19 -21
  732. package/dist/ui/components/DashboardStatsCard.style.css +12 -14
  733. package/dist/ui/components/Drawer.style.css +18 -14
  734. package/dist/ui/components/Dropdown.style.css +25 -27
  735. package/dist/ui/components/EmptyState.style.css +2 -4
  736. package/dist/ui/components/HorizontalScroller.d.ts +3 -1
  737. package/dist/ui/components/HorizontalScroller.js +130 -21
  738. package/dist/ui/components/HorizontalScroller.style.css +2 -2
  739. package/dist/ui/components/ImageLightbox.d.ts +0 -9
  740. package/dist/ui/components/ImageLightbox.js +43 -9
  741. package/dist/ui/components/InlineCreateSelect.d.ts +38 -0
  742. package/dist/ui/components/InlineCreateSelect.js +70 -0
  743. package/dist/ui/components/ListingLayout.style.css +41 -77
  744. package/dist/ui/components/ListingToolbar.d.ts +54 -0
  745. package/dist/ui/components/ListingToolbar.js +34 -0
  746. package/dist/ui/components/Modal.style.css +14 -10
  747. package/dist/ui/components/PageLoader.d.ts +11 -0
  748. package/dist/ui/components/PageLoader.js +21 -0
  749. package/dist/ui/components/Radio.style.css +34 -36
  750. package/dist/ui/components/RichTextEditor.js +1 -1
  751. package/dist/ui/components/RowActionMenu.d.ts +1 -0
  752. package/dist/ui/components/RowActionMenu.js +4 -2
  753. package/dist/ui/components/SectionTabs.js +1 -1
  754. package/dist/ui/components/SectionTabs.style.css +1 -0
  755. package/dist/ui/components/SideDrawer.style.css +3 -11
  756. package/dist/ui/components/SideModal.style.css +4 -8
  757. package/dist/ui/components/Slider.style.css +2 -4
  758. package/dist/ui/components/Tabs.style.css +8 -10
  759. package/dist/ui/components/Toast.style.css +22 -24
  760. package/dist/ui/components/Toggle.style.css +11 -13
  761. package/dist/ui/index.d.ts +9 -0
  762. package/dist/ui/index.js +5 -0
  763. package/dist/ui/rich-text/RichText.js +21 -2
  764. package/dist/ui/rich-text/RichText.style.css +292 -5
  765. package/dist/ui/rich-text/RichTextRenderer.d.ts +15 -0
  766. package/dist/ui/rich-text/RichTextRenderer.js +15 -0
  767. package/dist/utils/id-generators.d.ts +10 -0
  768. package/dist/utils/id-generators.js +12 -0
  769. package/dist/validation/schemas.d.ts +9 -9
  770. package/package.json +5 -1
  771. package/README.md +0 -116
@@ -1,726 +1,817 @@
1
- import { getDefaultPhonePrefix, getSeedLocale } from "./seed-market-config";
2
- const _phonePrefix = getDefaultPhonePrefix();
3
- const _locale = getSeedLocale();
4
- // Dynamic date helpers
1
+ /**
2
+ * Users Seed Data — Collectibles Marketplace
3
+ * 9 users: 1 admin, 4 sellers (one per collectibles vertical), 4 buyers.
4
+ * id === uid === slug convention. Indian market locale.
5
+ */
6
+ import { getDefaultPhonePrefix } from "./seed-market-config";
7
+ const _ph = getDefaultPhonePrefix();
5
8
  const NOW = new Date();
6
9
  const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
7
- const daysAhead = (n) => new Date(NOW.getTime() + n * 86400000);
8
10
  export const usersSeedData = [
9
- // Admin User
11
+ // ── Admin ──────────────────────────────────────────────────────────────────
10
12
  {
11
- uid: "user-admin-user-admin",
13
+ uid: "user-admin-letitrip",
12
14
  email: "admin@letitrip.in",
13
- phoneNumber: `${_phonePrefix}9876543210`,
15
+ phoneNumber: `${_ph}9876500000`,
14
16
  phoneVerified: true,
15
- displayName: "Admin User",
17
+ displayName: "LetItRip Admin",
16
18
  photoURL: null,
17
19
  avatarMetadata: null,
18
20
  role: "admin",
19
21
  emailVerified: true,
20
22
  disabled: false,
21
- createdAt: daysAgo(799),
22
- updatedAt: daysAgo(799),
23
+ storeId: "store-letitrip-official",
24
+ storeSlug: "store-letitrip-official",
25
+ storeStatus: "approved",
23
26
  publicProfile: {
24
27
  isPublic: false,
25
28
  showEmail: false,
26
29
  showPhone: false,
27
30
  showOrders: false,
28
31
  showWishlist: false,
29
- bio: "System Administrator",
32
+ bio: "LetItRip platform administrator.",
30
33
  },
31
- stats: {
32
- totalOrders: 0,
33
- auctionsWon: 0,
34
- itemsSold: 0,
35
- reviewsCount: 0,
34
+ stats: { totalOrders: 0, auctionsWon: 0, itemsSold: 0, reviewsCount: 0 },
35
+ metadata: {
36
+ lastSignInTime: daysAgo(1),
37
+ creationTime: daysAgo(400).toISOString(),
38
+ loginCount: 300,
36
39
  },
40
+ createdAt: daysAgo(400),
41
+ updatedAt: daysAgo(1),
42
+ },
43
+ // ── Sellers ────────────────────────────────────────────────────────────────
44
+ // Seller 1: Pokémon TCG specialist
45
+ {
46
+ uid: "user-aryan-kapoor",
47
+ email: "aryan@pokemonpalace.in",
48
+ phoneNumber: `${_ph}9876501001`,
49
+ phoneVerified: true,
50
+ displayName: "Aryan Kapoor",
51
+ photoURL: "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=200&h=200&fit=crop&crop=face",
52
+ avatarMetadata: null,
53
+ role: "seller",
54
+ emailVerified: true,
55
+ disabled: false,
56
+ storeId: "store-pokemon-palace",
57
+ storeSlug: "store-pokemon-palace",
58
+ storeStatus: "approved",
59
+ publicProfile: {
60
+ isPublic: true,
61
+ showEmail: false,
62
+ showPhone: false,
63
+ showOrders: false,
64
+ showWishlist: false,
65
+ bio: "Pokémon TCG enthusiast and collector since 2010. Specialising in sealed product, graded slabs, and rare vintage cards.",
66
+ location: "Mumbai, Maharashtra",
67
+ socialLinks: { instagram: "https://instagram.com/aryan.pokecollector" },
68
+ storeName: "Pokémon Palace",
69
+ storeCategory: "trading-cards",
70
+ },
71
+ stats: { totalOrders: 12, auctionsWon: 3, itemsSold: 87, reviewsCount: 42 },
37
72
  metadata: {
38
- lastSignInTime: daysAgo(29),
39
- creationTime: daysAgo(799).toISOString(),
40
- loginCount: 150,
73
+ lastSignInTime: daysAgo(2),
74
+ creationTime: daysAgo(380).toISOString(),
75
+ loginCount: 95,
41
76
  },
77
+ createdAt: daysAgo(380),
78
+ updatedAt: daysAgo(2),
42
79
  },
43
- // Regular Users
80
+ // Seller 2: Yu-Gi-Oh! & Trading Cards
44
81
  {
45
- uid: "user-john-doe-johndoe",
46
- email: "john@letitrip.in",
47
- phoneNumber: `${_phonePrefix}9876543211`,
82
+ uid: "user-nisha-reddy",
83
+ email: "nisha@cardgamehub.in",
84
+ phoneNumber: `${_ph}9876502002`,
48
85
  phoneVerified: true,
49
- displayName: "John Doe",
50
- photoURL: null,
86
+ displayName: "Nisha Reddy",
87
+ photoURL: "https://images.unsplash.com/photo-1494790108377-be9c29b29330?w=200&h=200&fit=crop&crop=face",
51
88
  avatarMetadata: null,
52
- role: "user",
89
+ role: "seller",
90
+ emailVerified: true,
91
+ disabled: false,
92
+ storeId: "store-cardgame-hub",
93
+ storeSlug: "store-cardgame-hub",
94
+ storeStatus: "approved",
95
+ publicProfile: {
96
+ isPublic: true,
97
+ showEmail: false,
98
+ showPhone: false,
99
+ showOrders: false,
100
+ showWishlist: false,
101
+ bio: "Yu-Gi-Oh! TCG player and sealed product trader. WCS 2022 qualifier. Top-grade singles and booster boxes.",
102
+ location: "Hyderabad, Telangana",
103
+ socialLinks: { instagram: "https://instagram.com/nisha.cardgamehub" },
104
+ storeName: "CardGame Hub",
105
+ storeCategory: "trading-cards",
106
+ },
107
+ stats: { totalOrders: 8, auctionsWon: 1, itemsSold: 64, reviewsCount: 31 },
108
+ metadata: {
109
+ lastSignInTime: daysAgo(3),
110
+ creationTime: daysAgo(350).toISOString(),
111
+ loginCount: 67,
112
+ },
113
+ createdAt: daysAgo(350),
114
+ updatedAt: daysAgo(3),
115
+ },
116
+ // Seller 3: Diecast cars (Hot Wheels + Tomica)
117
+ {
118
+ uid: "user-vikram-mehta",
119
+ email: "vikram@diecastdepot.in",
120
+ phoneNumber: `${_ph}9876503003`,
121
+ phoneVerified: true,
122
+ displayName: "Vikram Mehta",
123
+ photoURL: "https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?w=200&h=200&fit=crop&crop=face",
124
+ avatarMetadata: null,
125
+ role: "seller",
53
126
  emailVerified: true,
54
127
  disabled: false,
55
- createdAt: daysAgo(753),
56
- updatedAt: daysAgo(29),
128
+ storeId: "store-diecast-depot",
129
+ storeSlug: "store-diecast-depot",
130
+ storeStatus: "approved",
57
131
  publicProfile: {
58
132
  isPublic: true,
59
133
  showEmail: false,
60
134
  showPhone: false,
61
- showOrders: true,
62
- showWishlist: true,
63
- bio: "Tech enthusiast",
64
- location: `Mumbai, ${_locale.countryName}`,
65
- website: "https://johndoe.example.com",
135
+ showOrders: false,
136
+ showWishlist: false,
137
+ bio: "Hot Wheels and Tomica collector since 2005. STH hunter, Car Culture completionist, and Tomica Limited Vintage dealer.",
138
+ location: "Delhi, NCR",
66
139
  socialLinks: {
67
- twitter: "https://twitter.com/johndoe",
68
- instagram: "https://instagram.com/johndoe",
140
+ instagram: "https://instagram.com/vikram.diecastdepot",
141
+ facebook: "https://facebook.com/diecastdepot",
69
142
  },
143
+ storeName: "Diecast Depot",
144
+ storeCategory: "diecast-vehicles",
70
145
  },
71
- stats: {
72
- totalOrders: 4,
73
- auctionsWon: 0,
74
- itemsSold: 0,
75
- reviewsCount: 4,
76
- rating: 4.8,
77
- },
146
+ stats: { totalOrders: 5, auctionsWon: 2, itemsSold: 115, reviewsCount: 58 },
78
147
  metadata: {
79
- lastSignInTime: daysAgo(29),
80
- creationTime: daysAgo(753).toISOString(),
81
- loginCount: 45,
148
+ lastSignInTime: daysAgo(1),
149
+ creationTime: daysAgo(320).toISOString(),
150
+ loginCount: 140,
82
151
  },
152
+ createdAt: daysAgo(320),
153
+ updatedAt: daysAgo(1),
83
154
  },
155
+ // Seller 4: Beyblade X + Burst
84
156
  {
85
- uid: "user-jane-smith-janes",
86
- email: "jane@letitrip.in",
87
- phoneNumber: `${_phonePrefix}9876543212`,
157
+ uid: "user-rohit-joshi",
158
+ email: "rohit@beyladearena.in",
159
+ phoneNumber: `${_ph}9876504004`,
88
160
  phoneVerified: true,
89
- displayName: "Jane Smith",
90
- photoURL: null,
161
+ displayName: "Rohit Joshi",
162
+ photoURL: "https://images.unsplash.com/photo-1500648767791-00dcc994a43e?w=200&h=200&fit=crop&crop=face",
91
163
  avatarMetadata: null,
92
- role: "user",
164
+ role: "seller",
93
165
  emailVerified: true,
94
166
  disabled: false,
95
- createdAt: daysAgo(729),
96
- updatedAt: daysAgo(30),
167
+ storeId: "store-beyblade-arena",
168
+ storeSlug: "store-beyblade-arena",
169
+ storeStatus: "approved",
97
170
  publicProfile: {
98
171
  isPublic: true,
99
172
  showEmail: false,
100
173
  showPhone: false,
101
- showOrders: true,
102
- showWishlist: true,
103
- bio: "Fashion blogger",
104
- location: `Delhi, ${_locale.countryName}`,
174
+ showOrders: false,
175
+ showWishlist: false,
176
+ bio: "India's top Beyblade X and Burst supplier. Directly importing from Takara Tomy Japan. Official tops, launchers, and XStadiums.",
177
+ location: "Pune, Maharashtra",
105
178
  socialLinks: {
106
- instagram: "https://instagram.com/janesmith",
107
- facebook: "https://facebook.com/janesmith",
179
+ instagram: "https://instagram.com/rohit.beyaladearena",
108
180
  },
181
+ storeName: "Beyblade Arena",
182
+ storeCategory: "spinning-tops",
183
+ },
184
+ stats: { totalOrders: 9, auctionsWon: 0, itemsSold: 73, reviewsCount: 47 },
185
+ metadata: {
186
+ lastSignInTime: daysAgo(2),
187
+ creationTime: daysAgo(290).toISOString(),
188
+ loginCount: 88,
189
+ },
190
+ createdAt: daysAgo(290),
191
+ updatedAt: daysAgo(2),
192
+ },
193
+ // ── Buyers ─────────────────────────────────────────────────────────────────
194
+ // Buyer 1
195
+ {
196
+ uid: "user-rahul-sharma",
197
+ email: "rahul.sharma@gmail.com",
198
+ phoneNumber: `${_ph}9876511001`,
199
+ phoneVerified: false,
200
+ displayName: "Rahul Sharma",
201
+ photoURL: null,
202
+ avatarMetadata: null,
203
+ role: "user",
204
+ emailVerified: true,
205
+ disabled: false,
206
+ publicProfile: {
207
+ isPublic: false,
208
+ showEmail: false,
209
+ showPhone: false,
210
+ showOrders: false,
211
+ showWishlist: false,
212
+ bio: "Pokémon TCG collector. Chasing Base Set and Jungle holos.",
213
+ location: "Bengaluru, Karnataka",
109
214
  },
110
- stats: {
111
- totalOrders: 4,
112
- auctionsWon: 0,
113
- itemsSold: 0,
114
- reviewsCount: 6,
115
- rating: 4.9,
215
+ stats: { totalOrders: 7, auctionsWon: 2, itemsSold: 0, reviewsCount: 5 },
216
+ metadata: {
217
+ lastSignInTime: daysAgo(4),
218
+ creationTime: daysAgo(200).toISOString(),
219
+ loginCount: 24,
116
220
  },
221
+ createdAt: daysAgo(200),
222
+ updatedAt: daysAgo(4),
223
+ },
224
+ // Buyer 2
225
+ {
226
+ uid: "user-priya-patel",
227
+ email: "priya.patel@gmail.com",
228
+ phoneNumber: `${_ph}9876512002`,
229
+ phoneVerified: true,
230
+ displayName: "Priya Patel",
231
+ photoURL: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?w=200&h=200&fit=crop&crop=face",
232
+ avatarMetadata: null,
233
+ role: "user",
234
+ emailVerified: true,
235
+ disabled: false,
236
+ publicProfile: {
237
+ isPublic: false,
238
+ showEmail: false,
239
+ showPhone: false,
240
+ showOrders: false,
241
+ showWishlist: false,
242
+ bio: "Nendoroid and figma collector. Good Smile Company fan.",
243
+ location: "Ahmedabad, Gujarat",
244
+ },
245
+ stats: { totalOrders: 11, auctionsWon: 1, itemsSold: 0, reviewsCount: 8 },
117
246
  metadata: {
118
- lastSignInTime: daysAgo(30),
119
- creationTime: daysAgo(719).toISOString(),
120
- loginCount: 78,
247
+ lastSignInTime: daysAgo(2),
248
+ creationTime: daysAgo(180).toISOString(),
249
+ loginCount: 31,
121
250
  },
251
+ createdAt: daysAgo(180),
252
+ updatedAt: daysAgo(2),
122
253
  },
254
+ // Buyer 3
123
255
  {
124
- uid: "user-mike-johnson-mikejohn",
125
- email: "mike@letitrip.in",
126
- phoneNumber: `${_phonePrefix}9876543213`,
256
+ uid: "user-arjun-singh",
257
+ email: "arjun.singh@gmail.com",
258
+ phoneNumber: `${_ph}9876513003`,
127
259
  phoneVerified: false,
128
- displayName: "Mike Johnson",
260
+ displayName: "Arjun Singh",
129
261
  photoURL: null,
130
262
  avatarMetadata: null,
131
263
  role: "user",
132
264
  emailVerified: true,
133
265
  disabled: false,
134
- createdAt: daysAgo(688),
135
- updatedAt: daysAgo(32),
136
266
  publicProfile: {
137
- isPublic: true,
267
+ isPublic: false,
138
268
  showEmail: false,
139
269
  showPhone: false,
140
- showOrders: true,
270
+ showOrders: false,
141
271
  showWishlist: false,
142
- bio: "Sports enthusiast",
143
- location: `Bangalore, ${_locale.countryName}`,
272
+ bio: "Gunpla builder. Working through MG grade. Next target: PG Wing Zero.",
273
+ location: "Jaipur, Rajasthan",
144
274
  },
145
- stats: {
146
- totalOrders: 4,
147
- auctionsWon: 0,
148
- itemsSold: 0,
149
- reviewsCount: 5,
150
- rating: 4.5,
275
+ stats: { totalOrders: 4, auctionsWon: 0, itemsSold: 0, reviewsCount: 3 },
276
+ metadata: {
277
+ lastSignInTime: daysAgo(7),
278
+ creationTime: daysAgo(150).toISOString(),
279
+ loginCount: 12,
151
280
  },
281
+ createdAt: daysAgo(150),
282
+ updatedAt: daysAgo(7),
283
+ },
284
+ // Buyer 4
285
+ {
286
+ uid: "user-meera-nair",
287
+ email: "meera.nair@gmail.com",
288
+ phoneNumber: `${_ph}9876514004`,
289
+ phoneVerified: true,
290
+ displayName: "Meera Nair",
291
+ photoURL: "https://images.unsplash.com/photo-1544005313-94ddf0286df2?w=200&h=200&fit=crop&crop=face",
292
+ avatarMetadata: null,
293
+ role: "user",
294
+ emailVerified: true,
295
+ disabled: false,
296
+ publicProfile: {
297
+ isPublic: false,
298
+ showEmail: false,
299
+ showPhone: false,
300
+ showOrders: false,
301
+ showWishlist: false,
302
+ bio: "Hot Wheels STH hunter and Tomica Premium collector.",
303
+ location: "Kochi, Kerala",
304
+ },
305
+ stats: { totalOrders: 6, auctionsWon: 3, itemsSold: 0, reviewsCount: 4 },
152
306
  metadata: {
153
- lastSignInTime: daysAgo(32),
154
- creationTime: daysAgo(668).toISOString(),
155
- loginCount: 22,
307
+ lastSignInTime: daysAgo(3),
308
+ creationTime: daysAgo(120).toISOString(),
309
+ loginCount: 19,
156
310
  },
311
+ createdAt: daysAgo(120),
312
+ updatedAt: daysAgo(3),
157
313
  },
158
- // Seller Users
314
+ // ── New Sellers ────────────────────────────────────────────────────────────
315
+ // Seller 5: Anime Figures, Gundam, Funko Pop (Tokyo Toys India)
159
316
  {
160
- uid: "user-techhub-electronics-electron",
161
- email: "techhub@letitrip.in",
162
- phoneNumber: `${_phonePrefix}9876543214`,
317
+ uid: "user-priya-singh",
318
+ email: "priya@tokyotoysindia.in",
319
+ phoneNumber: `${_ph}9876505005`,
163
320
  phoneVerified: true,
164
- displayName: "FigureVault JP",
165
- photoURL: "https://images.unsplash.com/photo-1578632767115-351597cf2477?w=400&h=400&fit=crop",
321
+ displayName: "Priya Singh",
322
+ photoURL: "https://images.unsplash.com/photo-1487412720507-e7ab37603c6f?w=200&h=200&fit=crop&crop=face",
166
323
  avatarMetadata: null,
167
324
  role: "seller",
168
325
  emailVerified: true,
169
326
  disabled: false,
170
- storeId: "store-figurevault-jp-by-figurevault",
171
- storeSlug: "store-figurevault-jp-by-figurevault",
327
+ storeId: "store-tokyo-toys-india",
328
+ storeSlug: "store-tokyo-toys-india",
172
329
  storeStatus: "approved",
173
- createdAt: daysAgo(785),
174
- updatedAt: daysAgo(28),
175
330
  publicProfile: {
176
331
  isPublic: true,
177
- showEmail: true,
178
- showPhone: true,
332
+ showEmail: false,
333
+ showPhone: false,
179
334
  showOrders: false,
180
335
  showWishlist: false,
181
- bio: "Japan-based premium scale figures dealer Bandai Spirits, MegaHouse, Kotobukiya and more.",
182
- location: `Mumbai, ${_locale.countryName}`,
183
- website: "https://figurevaultjp.example.com",
184
- socialLinks: {
185
- facebook: "https://facebook.com/figurevaultjp",
186
- instagram: "https://instagram.com/figurevaultjp",
187
- },
188
- storeName: "FigureVault JP",
189
- storeDescription: "Your premier source for authentic anime scale figures, limited editions, and rare collectibles direct from Japan.",
190
- storeCategory: "electronics",
191
- storeLogoURL: "https://images.unsplash.com/photo-1578632767115-351597cf2477?w=400&h=400&fit=crop",
192
- storeBannerURL: "https://images.unsplash.com/photo-1541701494587-cb58502866ab?w=1600&h=400&fit=crop",
193
- storeReturnPolicy: "7-day hassle-free returns on all items. Figures must be in original sealed packaging for a full refund.",
194
- storeShippingPolicy: "Free shipping on orders above ₹999. Standard delivery in 3-5 business days. Express delivery available.",
195
- },
196
- stats: {
197
- totalOrders: 7,
198
- auctionsWon: 0,
199
- itemsSold: 7,
200
- reviewsCount: 13,
201
- rating: 4.7,
336
+ bio: "Anime figure collector and importer. Specialising in Nendoroids, S.H.Figuarts, scale figures, and Funko Pops. Direct sourcing from Akihabara and Good Smile Company.",
337
+ location: "Chennai, Tamil Nadu",
338
+ socialLinks: { instagram: "https://instagram.com/priya.tokyotoys" },
339
+ storeName: "Tokyo Toys India",
340
+ storeCategory: "action-figures",
202
341
  },
342
+ stats: { totalOrders: 6, auctionsWon: 1, itemsSold: 52, reviewsCount: 28 },
203
343
  metadata: {
204
- lastSignInTime: daysAgo(28),
205
- creationTime: daysAgo(647).toISOString(),
206
- loginCount: 210,
344
+ lastSignInTime: daysAgo(1),
345
+ creationTime: daysAgo(260).toISOString(),
346
+ loginCount: 74,
207
347
  },
348
+ createdAt: daysAgo(260),
349
+ updatedAt: daysAgo(1),
208
350
  },
351
+ // Seller 6: Gundam kits specialist (Gundam Galaxy)
209
352
  {
210
- uid: "user-fashion-boutique-fashionb",
211
- email: "fashion@letitrip.in",
212
- phoneNumber: `${_phonePrefix}9876543215`,
353
+ uid: "user-amit-sharma",
354
+ email: "amit@gundamgalaxy.in",
355
+ phoneNumber: `${_ph}9876506006`,
213
356
  phoneVerified: true,
214
- displayName: "AnimeCraft Apparel",
215
- photoURL: "https://images.unsplash.com/photo-1612810806695-30f7a8258391?w=400&h=400&fit=crop",
357
+ displayName: "Amit Sharma",
358
+ photoURL: "https://images.unsplash.com/photo-1552058544-f2b08422138a?w=200&h=200&fit=crop&crop=face",
216
359
  avatarMetadata: null,
217
360
  role: "seller",
218
361
  emailVerified: true,
219
362
  disabled: false,
220
- storeId: "store-animecraft-apparel-by-animecraft",
221
- storeSlug: "store-animecraft-apparel-by-animecraft",
363
+ storeId: "store-gundam-galaxy",
364
+ storeSlug: "store-gundam-galaxy",
222
365
  storeStatus: "approved",
223
- createdAt: daysAgo(768),
224
- updatedAt: daysAgo(29),
225
366
  publicProfile: {
226
367
  isPublic: true,
227
- showEmail: true,
228
- showPhone: true,
368
+ showEmail: false,
369
+ showPhone: false,
229
370
  showOrders: false,
230
371
  showWishlist: false,
231
- bio: "Handcrafted cosplay outfits and anime apparelDemon Slayer, Sailor Moon, Genshin Impact and more.",
232
- location: `Delhi, ${_locale.countryName}`,
233
- website: "https://animecraftapparel.example.com",
372
+ bio: "Master Grade builder and HG completionist. Running Gundam Galaxy since 2021. All kits are authenticated Bandai sourced from official Bandai distributors in Japan and Singapore.",
373
+ location: "Bengaluru, Karnataka",
234
374
  socialLinks: {
235
- instagram: "https://instagram.com/animecraftapparel",
236
- facebook: "https://facebook.com/animecraftapparel",
375
+ instagram: "https://instagram.com/amit.gundamgalaxy",
376
+ twitter: "https://twitter.com/gundamgalaxy",
237
377
  },
238
- storeName: "AnimeCraft Apparel",
239
- storeDescription: "Crafted cosplay costumes, anime hoodies, graphic tees, and accessories for every otaku.",
240
- storeCategory: "fashion",
241
- storeLogoURL: "https://images.unsplash.com/photo-1612810806695-30f7a8258391?w=400&h=400&fit=crop",
242
- storeBannerURL: "https://images.unsplash.com/photo-1541701494587-cb58502866ab?w=1600&h=400&fit=crop",
243
- storeReturnPolicy: "14-day returns on unworn items with original tags attached. Exchange available within 30 days.",
244
- storeShippingPolicy: "Free shipping on all orders above ₹599. Express delivery in 1-2 business days available at checkout.",
245
- },
246
- stats: {
247
- totalOrders: 5,
248
- auctionsWon: 0,
249
- itemsSold: 2,
250
- reviewsCount: 6,
251
- rating: 4.7,
378
+ storeName: "Gundam Galaxy",
379
+ storeCategory: "model-kits",
252
380
  },
381
+ stats: { totalOrders: 4, auctionsWon: 0, itemsSold: 41, reviewsCount: 22 },
253
382
  metadata: {
254
- lastSignInTime: daysAgo(29),
255
- creationTime: daysAgo(768).toISOString(),
256
- loginCount: 195,
383
+ lastSignInTime: daysAgo(2),
384
+ creationTime: daysAgo(230).toISOString(),
385
+ loginCount: 58,
257
386
  },
387
+ createdAt: daysAgo(230),
388
+ updatedAt: daysAgo(2),
258
389
  },
390
+ // Seller 7: Vintage collectibles (Vintage Vault)
259
391
  {
260
- uid: "user-home-essentials-homeesse",
261
- email: "home@letitrip.in",
262
- phoneNumber: `${_phonePrefix}9876543216`,
392
+ uid: "user-kavya-iyer",
393
+ email: "kavya@vintagevault.in",
394
+ phoneNumber: `${_ph}9876507007`,
263
395
  phoneVerified: true,
264
- displayName: "OtakuShelf Co",
265
- photoURL: "https://images.unsplash.com/photo-1607604276583-eef5d076aa5f?w=400&h=400&fit=crop",
396
+ displayName: "Kavya Iyer",
397
+ photoURL: "https://images.unsplash.com/photo-1580489944761-15a19d654956?w=200&h=200&fit=crop&crop=face",
266
398
  avatarMetadata: null,
267
399
  role: "seller",
268
400
  emailVerified: true,
269
401
  disabled: false,
270
- storeId: "store-otakushelf-co-by-otakushelf",
271
- storeSlug: "store-otakushelf-co-by-otakushelf",
402
+ storeId: "store-vintage-vault",
403
+ storeSlug: "store-vintage-vault",
272
404
  storeStatus: "approved",
273
- createdAt: daysAgo(739),
274
- updatedAt: daysAgo(29),
275
405
  publicProfile: {
276
406
  isPublic: true,
277
- showEmail: true,
278
- showPhone: true,
407
+ showEmail: false,
408
+ showPhone: false,
279
409
  showOrders: false,
280
410
  showWishlist: false,
281
- bio: "Nendoroid sets, Gunpla kits, and collectible display pieces for the serious anime collector.",
282
- location: `Pune, ${_locale.countryName}`,
283
- website: "https://otakushelfco.example.com",
284
- socialLinks: {
285
- instagram: "https://instagram.com/otakushelfco",
286
- facebook: "https://facebook.com/otakushelfco",
287
- },
288
- storeName: "OtakuShelf Co",
289
- storeDescription: "Nendoroids, Gunpla model kits, dioramas, and shelf-worthy collectibles for anime enthusiasts.",
290
- storeCategory: "home",
291
- storeLogoURL: "https://images.unsplash.com/photo-1607604276583-eef5d076aa5f?w=400&h=400&fit=crop",
292
- storeBannerURL: "https://images.unsplash.com/photo-1541701494587-cb58502866ab?w=1600&h=400&fit=crop",
293
- storeReturnPolicy: "10-day returns accepted on all products. Damaged or defective items replaced at no extra cost.",
294
- storeShippingPolicy: "Free shipping on orders above ₹1499. Fragile items packed securely. Delivery in 3-7 business days.",
295
- },
296
- stats: {
297
- totalOrders: 3,
298
- auctionsWon: 0,
299
- itemsSold: 2,
300
- reviewsCount: 7,
301
- rating: 4.4,
411
+ bio: "Vintage toy and collectibles specialist. 20+ years sourcing from estate sales, Tokyo flea markets, and private collections. Pokémon WOTC era, 80s action figures, and vintage Redlines.",
412
+ location: "Kolkata, West Bengal",
413
+ socialLinks: { instagram: "https://instagram.com/kavya.vintagevault" },
414
+ storeName: "Vintage Vault",
415
+ storeCategory: "vintage-rare",
302
416
  },
417
+ stats: { totalOrders: 3, auctionsWon: 2, itemsSold: 34, reviewsCount: 19 },
303
418
  metadata: {
304
- lastSignInTime: daysAgo(29),
305
- creationTime: daysAgo(525).toISOString(),
306
- loginCount: 142,
419
+ lastSignInTime: daysAgo(3),
420
+ creationTime: daysAgo(200).toISOString(),
421
+ loginCount: 45,
307
422
  },
423
+ createdAt: daysAgo(200),
424
+ updatedAt: daysAgo(3),
308
425
  },
309
- // --- Moderator -------------------------------------------------------------
426
+ // ── New Buyers ─────────────────────────────────────────────────────────────
427
+ // Buyer 5 (referenced in conversations seed)
310
428
  {
311
- uid: "user-moderator-mod-user",
312
- email: "moderator@letitrip.in",
313
- phoneNumber: `${_phonePrefix}9876543220`,
429
+ uid: "user-sneha-kumar",
430
+ email: "sneha.kumar@gmail.com",
431
+ phoneNumber: `${_ph}9876515005`,
314
432
  phoneVerified: true,
315
- displayName: "Riya Sharma",
316
- photoURL: null,
433
+ displayName: "Sneha Kumar",
434
+ photoURL: "https://images.unsplash.com/photo-1517841905240-472988babdf9?w=200&h=200&fit=crop&crop=face",
317
435
  avatarMetadata: null,
318
- role: "moderator",
436
+ role: "user",
319
437
  emailVerified: true,
320
438
  disabled: false,
321
- createdAt: daysAgo(739),
322
- updatedAt: daysAgo(68),
323
439
  publicProfile: {
324
440
  isPublic: false,
325
441
  showEmail: false,
326
442
  showPhone: false,
327
443
  showOrders: false,
328
444
  showWishlist: false,
329
- bio: "Content Moderator at LetItRip",
445
+ bio: "Anime figure collector — Nendoroids and scale figures. Building a Re:Zero shelf.",
446
+ location: "Bengaluru, Karnataka",
330
447
  },
331
- stats: { totalOrders: 0, auctionsWon: 0, itemsSold: 0, reviewsCount: 0 },
448
+ stats: { totalOrders: 9, auctionsWon: 1, itemsSold: 0, reviewsCount: 6 },
332
449
  metadata: {
333
- lastSignInTime: daysAgo(19),
334
- creationTime: daysAgo(739).toISOString(),
335
- loginCount: 320,
450
+ lastSignInTime: daysAgo(1),
451
+ creationTime: daysAgo(110).toISOString(),
452
+ loginCount: 28,
336
453
  },
454
+ createdAt: daysAgo(110),
455
+ updatedAt: daysAgo(1),
337
456
  },
338
- // --- Additional Regular Buyers ---------------------------------------------
457
+ // Buyer 6 (referenced in conversations seed)
339
458
  {
340
- uid: "user-priya-sharma-priya",
341
- email: "priya@letitrip.in",
342
- phoneNumber: `${_phonePrefix}9876543260`,
343
- phoneVerified: true,
344
- displayName: "Priya Sharma",
459
+ uid: "user-kartik-nair",
460
+ email: "kartik.nair@gmail.com",
461
+ phoneNumber: `${_ph}9876516006`,
462
+ phoneVerified: false,
463
+ displayName: "Kartik Nair",
345
464
  photoURL: null,
346
465
  avatarMetadata: null,
347
466
  role: "user",
348
467
  emailVerified: true,
349
468
  disabled: false,
350
- createdAt: daysAgo(360),
351
- updatedAt: daysAgo(28),
352
469
  publicProfile: {
353
- isPublic: true,
470
+ isPublic: false,
354
471
  showEmail: false,
355
472
  showPhone: false,
356
473
  showOrders: false,
357
- showWishlist: true,
358
- bio: "Shopaholic | Fashion lover",
359
- location: `Hyderabad, ${_locale.countryName}`,
360
- },
361
- stats: {
362
- totalOrders: 9,
363
- auctionsWon: 1,
364
- itemsSold: 0,
365
- reviewsCount: 6,
474
+ showWishlist: false,
475
+ bio: "Gunpla builder currently on my first MG kit. Also collecting Hot Wheels Car Culture.",
476
+ location: "Thiruvananthapuram, Kerala",
366
477
  },
478
+ stats: { totalOrders: 3, auctionsWon: 0, itemsSold: 0, reviewsCount: 2 },
367
479
  metadata: {
368
- lastSignInTime: daysAgo(18),
369
- creationTime: daysAgo(360).toISOString(),
370
- loginCount: 74,
480
+ lastSignInTime: daysAgo(5),
481
+ creationTime: daysAgo(90).toISOString(),
482
+ loginCount: 9,
371
483
  },
484
+ createdAt: daysAgo(90),
485
+ updatedAt: daysAgo(5),
372
486
  },
487
+ // Buyer 7 (referenced in conversations seed)
373
488
  {
374
- uid: "user-raj-patel-rajpatel",
375
- email: "raj@letitrip.in",
376
- phoneNumber: `${_phonePrefix}9876543270`,
489
+ uid: "user-divya-menon",
490
+ email: "divya.menon@gmail.com",
491
+ phoneNumber: `${_ph}9876517007`,
377
492
  phoneVerified: true,
378
- displayName: "Raj Patel",
379
- photoURL: null,
493
+ displayName: "Divya Menon",
494
+ photoURL: "https://images.unsplash.com/photo-1531746020798-e6953c6e8e04?w=200&h=200&fit=crop&crop=face",
380
495
  avatarMetadata: null,
381
496
  role: "user",
382
497
  emailVerified: true,
383
498
  disabled: false,
384
- createdAt: daysAgo(294),
385
- updatedAt: daysAgo(30),
386
499
  publicProfile: {
387
500
  isPublic: false,
388
501
  showEmail: false,
389
502
  showPhone: false,
390
503
  showOrders: false,
391
504
  showWishlist: false,
505
+ bio: "Pokémon fan and casual collector. Pulling packs and hoping for shiny Charizard.",
506
+ location: "Hyderabad, Telangana",
392
507
  },
393
- stats: {
394
- totalOrders: 4,
395
- auctionsWon: 0,
396
- itemsSold: 0,
397
- reviewsCount: 3,
398
- },
508
+ stats: { totalOrders: 5, auctionsWon: 0, itemsSold: 0, reviewsCount: 3 },
399
509
  metadata: {
400
- lastSignInTime: daysAgo(25),
401
- creationTime: daysAgo(294).toISOString(),
402
- loginCount: 29,
510
+ lastSignInTime: daysAgo(2),
511
+ creationTime: daysAgo(80).toISOString(),
512
+ loginCount: 15,
403
513
  },
514
+ createdAt: daysAgo(80),
515
+ updatedAt: daysAgo(2),
404
516
  },
517
+ // Buyer 8 (referenced in conversations seed)
405
518
  {
406
- uid: "user-vikram-nair-vikram",
407
- email: "vikram@letitrip.in",
408
- phoneNumber: `${_phonePrefix}9876543280`,
519
+ uid: "user-ankit-gupta",
520
+ email: "ankit.gupta@gmail.com",
521
+ phoneNumber: `${_ph}9876518008`,
409
522
  phoneVerified: false,
410
- displayName: "Vikram Nair",
523
+ displayName: "Ankit Gupta",
411
524
  photoURL: null,
412
525
  avatarMetadata: null,
413
526
  role: "user",
414
527
  emailVerified: true,
415
528
  disabled: false,
416
- createdAt: daysAgo(221),
417
- updatedAt: daysAgo(54),
418
529
  publicProfile: {
419
- isPublic: true,
530
+ isPublic: false,
420
531
  showEmail: false,
421
532
  showPhone: false,
422
533
  showOrders: false,
423
534
  showWishlist: false,
424
- bio: "Beauty & wellness enthusiast",
425
- location: `Kochi, ${_locale.countryName}`,
426
- },
427
- stats: {
428
- totalOrders: 6,
429
- auctionsWon: 0,
430
- itemsSold: 0,
431
- reviewsCount: 4,
535
+ bio: "Beyblade X tournament player. Building competitive lineup — Dran Sword is my go-to.",
536
+ location: "Lucknow, Uttar Pradesh",
432
537
  },
538
+ stats: { totalOrders: 4, auctionsWon: 0, itemsSold: 0, reviewsCount: 2 },
433
539
  metadata: {
434
- lastSignInTime: daysAgo(22),
435
- creationTime: daysAgo(221).toISOString(),
436
- loginCount: 41,
540
+ lastSignInTime: daysAgo(3),
541
+ creationTime: daysAgo(75).toISOString(),
542
+ loginCount: 11,
437
543
  },
544
+ createdAt: daysAgo(75),
545
+ updatedAt: daysAgo(3),
438
546
  },
439
- // -- Unverified User — registered but email not yet confirmed --------------
440
- // Tests: email verification flow, /api/auth/verify-email, re-send verification,
441
- // locked pages that require emailVerified: true, header badge UI
547
+ // Buyer 9
442
548
  {
443
- uid: "user-unverified-new-user",
444
- email: "newuser@letitrip.in",
445
- phoneNumber: null,
446
- phoneVerified: false,
447
- displayName: "New User",
448
- photoURL: null,
549
+ uid: "user-siddharth-rao",
550
+ email: "siddharth.rao@gmail.com",
551
+ phoneNumber: `${_ph}9876519009`,
552
+ phoneVerified: true,
553
+ displayName: "Siddharth Rao",
554
+ photoURL: "https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?w=200&h=200&fit=crop&crop=face",
449
555
  avatarMetadata: null,
450
556
  role: "user",
451
- emailVerified: false, // ← critical: email NOT verified
557
+ emailVerified: true,
452
558
  disabled: false,
453
- createdAt: daysAgo(9),
454
- updatedAt: daysAgo(9),
455
559
  publicProfile: {
456
- isPublic: true,
560
+ isPublic: false,
457
561
  showEmail: false,
458
562
  showPhone: false,
459
- showOrders: true,
460
- showWishlist: true,
461
- },
462
- stats: {
463
- totalOrders: 0,
464
- auctionsWon: 0,
465
- itemsSold: 0,
466
- reviewsCount: 0,
563
+ showOrders: false,
564
+ showWishlist: false,
565
+ bio: "Yu-Gi-Oh! TCG competitive player. Chasing Blue-Eyes and Chaos archetype singles.",
566
+ location: "Pune, Maharashtra",
467
567
  },
568
+ stats: { totalOrders: 7, auctionsWon: 1, itemsSold: 0, reviewsCount: 5 },
468
569
  metadata: {
469
- lastSignInTime: daysAgo(9),
470
- creationTime: daysAgo(9).toISOString(),
471
- loginCount: 1,
570
+ lastSignInTime: daysAgo(2),
571
+ creationTime: daysAgo(65).toISOString(),
572
+ loginCount: 22,
472
573
  },
574
+ createdAt: daysAgo(65),
575
+ updatedAt: daysAgo(2),
473
576
  },
474
- // -- Phone-Only User — signed up via phone OTP, no email -------------------
475
- // Tests: phone auth flow, profile completion prompt (missing email),
476
- // checkout flow without email address
577
+ // Buyer 10
477
578
  {
478
- uid: "user-phone-only-phoneuser",
479
- email: null, // ← no email address
480
- phoneNumber: `${_phonePrefix}9988776655`,
579
+ uid: "user-tanvi-desai",
580
+ email: "tanvi.desai@gmail.com",
581
+ phoneNumber: `${_ph}9876520010`,
481
582
  phoneVerified: true,
482
- displayName: "Phone User",
483
- photoURL: null,
583
+ displayName: "Tanvi Desai",
584
+ photoURL: "https://images.unsplash.com/photo-1487412720507-e7ab37603c6f?w=200&h=200&fit=crop&crop=face",
484
585
  avatarMetadata: null,
485
586
  role: "user",
486
- emailVerified: false,
587
+ emailVerified: true,
487
588
  disabled: false,
488
- createdAt: daysAgo(17),
489
- updatedAt: daysAgo(17),
490
589
  publicProfile: {
491
- isPublic: true,
590
+ isPublic: false,
492
591
  showEmail: false,
493
592
  showPhone: false,
494
- showOrders: true,
495
- showWishlist: true,
496
- },
497
- stats: {
498
- totalOrders: 0,
499
- auctionsWon: 0,
500
- itemsSold: 0,
501
- reviewsCount: 0,
593
+ showOrders: false,
594
+ showWishlist: false,
595
+ bio: "Funko Pop collector — over 200 on my shelf. Anime and Marvel are my favourites.",
596
+ location: "Ahmedabad, Gujarat",
502
597
  },
598
+ stats: { totalOrders: 12, auctionsWon: 0, itemsSold: 0, reviewsCount: 9 },
503
599
  metadata: {
504
- lastSignInTime: daysAgo(17),
505
- creationTime: daysAgo(17).toISOString(),
506
- loginCount: 3,
600
+ lastSignInTime: daysAgo(1),
601
+ creationTime: daysAgo(55).toISOString(),
602
+ loginCount: 35,
507
603
  },
604
+ createdAt: daysAgo(55),
605
+ updatedAt: daysAgo(1),
508
606
  },
509
- // -- Pending Seller applied via BecomeSellerView, awaiting admin approval --
510
- // Tests: admin review queue (GET /api/admin/stores?storeStatus=pending),
511
- // BecomeSellerView success state, seller application flow
607
+ // Buyer 11referenced in scammers seed as a victim reporter
512
608
  {
513
- uid: "user-pending-seller-pendingsl",
514
- email: "pending.seller@letitrip.in",
515
- phoneNumber: `${_phonePrefix}9876543282`,
609
+ uid: "user-anjali-verma",
610
+ email: "anjali.verma@gmail.com",
611
+ phoneNumber: `${_ph}9876521011`,
516
612
  phoneVerified: true,
517
- displayName: "Pending Seller",
518
- photoURL: null,
613
+ displayName: "Anjali Verma",
614
+ photoURL: "https://images.unsplash.com/photo-1494790108377-be9c29b29330?w=200&h=200&fit=crop&crop=face",
519
615
  avatarMetadata: null,
520
- role: "seller",
616
+ role: "user",
521
617
  emailVerified: true,
522
618
  disabled: false,
523
- storeStatus: "pending",
524
- createdAt: daysAhead(1),
525
- updatedAt: daysAhead(2),
526
619
  publicProfile: {
527
- isPublic: true,
620
+ isPublic: false,
528
621
  showEmail: false,
529
622
  showPhone: false,
530
623
  showOrders: false,
531
624
  showWishlist: false,
532
- bio: "Aspiring seller of handmade crafts",
533
- location: `Jaipur, ${_locale.countryName}`,
534
- },
535
- stats: {
536
- totalOrders: 2,
537
- auctionsWon: 0,
538
- itemsSold: 0,
539
- reviewsCount: 0,
625
+ bio: "Hot Wheels collector OLX veteran. Specialising in vintage Redlines and Car Culture sets.",
626
+ location: "Jaipur, Rajasthan",
540
627
  },
628
+ stats: { totalOrders: 6, auctionsWon: 0, itemsSold: 0, reviewsCount: 4 },
541
629
  metadata: {
542
- lastSignInTime: daysAhead(2),
543
- creationTime: daysAgo(190).toISOString(),
544
- loginCount: 12,
630
+ lastSignInTime: daysAgo(6),
631
+ creationTime: daysAgo(50).toISOString(),
632
+ loginCount: 14,
545
633
  },
634
+ createdAt: daysAgo(50),
635
+ updatedAt: daysAgo(6),
546
636
  },
547
- // -- Rejected Seller — application was rejected by admin -------------------
548
- // Tests: admin rejection flow (PATCH /api/admin/stores/[uid] action:"reject"),
549
- // GET /api/admin/stores?storeStatus=rejected filter
637
+ // Buyer 12
550
638
  {
551
- uid: "user-rejected-seller-rejectsl",
552
- email: "rejected.seller@letitrip.in",
553
- phoneNumber: `${_phonePrefix}9876543281`,
639
+ uid: "user-rohit-verma",
640
+ email: "rohit.verma@gmail.com",
641
+ phoneNumber: `${_ph}9876522012`,
554
642
  phoneVerified: false,
555
- displayName: "Rejected Seller",
643
+ displayName: "Rohit Verma",
556
644
  photoURL: null,
557
645
  avatarMetadata: null,
558
- role: "seller",
646
+ role: "user",
559
647
  emailVerified: true,
560
648
  disabled: false,
561
- storeStatus: "rejected",
562
- createdAt: daysAgo(36),
563
- updatedAt: daysAgo(22),
564
649
  publicProfile: {
565
650
  isPublic: false,
566
651
  showEmail: false,
567
652
  showPhone: false,
568
653
  showOrders: false,
569
654
  showWishlist: false,
655
+ bio: "One Piece TCG player and Manga collector. Always looking for OP singles at fair price.",
656
+ location: "Delhi, Delhi",
570
657
  },
571
- stats: {
572
- totalOrders: 0,
573
- auctionsWon: 0,
574
- itemsSold: 0,
575
- reviewsCount: 0,
576
- },
658
+ stats: { totalOrders: 4, auctionsWon: 0, itemsSold: 0, reviewsCount: 3 },
577
659
  metadata: {
578
- lastSignInTime: daysAgo(22),
579
- creationTime: daysAgo(36).toISOString(),
580
- loginCount: 5,
660
+ lastSignInTime: daysAgo(4),
661
+ creationTime: daysAgo(45).toISOString(),
662
+ loginCount: 12,
581
663
  },
664
+ createdAt: daysAgo(45),
665
+ updatedAt: daysAgo(4),
582
666
  },
583
- // --- New Buyers (added to reach 10 total regular users) -------------------
584
- // Buyer 6: Ananya Bose — vintage fashion collector
667
+ // Buyer 13
585
668
  {
586
- uid: "user-ananya-bose-ananya",
587
- email: "ananya@letitrip.in",
588
- phoneNumber: `${_phonePrefix}9876543231`,
669
+ uid: "user-pooja-sharma",
670
+ email: "pooja.sharma@gmail.com",
671
+ phoneNumber: `${_ph}9876523013`,
589
672
  phoneVerified: true,
590
- displayName: "Ananya Bose",
591
- photoURL: null,
673
+ displayName: "Pooja Sharma",
674
+ photoURL: "https://images.unsplash.com/photo-1534528741775-53994a69daeb?w=200&h=200&fit=crop&crop=face",
592
675
  avatarMetadata: null,
593
676
  role: "user",
594
677
  emailVerified: true,
595
678
  disabled: false,
596
- createdAt: daysAgo(272),
597
- updatedAt: daysAgo(4),
598
679
  publicProfile: {
599
- isPublic: true,
680
+ isPublic: false,
600
681
  showEmail: false,
601
682
  showPhone: false,
602
683
  showOrders: false,
603
- showWishlist: true,
604
- bio: "Vintage fashion collector and auction enthusiast.",
605
- location: "Kolkata, West Bengal",
606
- },
607
- stats: {
608
- totalOrders: 7,
609
- auctionsWon: 2,
610
- itemsSold: 0,
611
- reviewsCount: 4,
612
- rating: 4.7,
684
+ showWishlist: false,
685
+ bio: "Scale figure collector — Good Smile and Alter. Currently building a KonoSuba shelf.",
686
+ location: "Mumbai, Maharashtra",
613
687
  },
688
+ stats: { totalOrders: 8, auctionsWon: 1, itemsSold: 0, reviewsCount: 6 },
614
689
  metadata: {
615
- lastSignInTime: daysAgo(4),
616
- creationTime: daysAgo(272).toISOString(),
617
- loginCount: 55,
690
+ lastSignInTime: daysAgo(2),
691
+ creationTime: daysAgo(40).toISOString(),
692
+ loginCount: 19,
618
693
  },
694
+ createdAt: daysAgo(40),
695
+ updatedAt: daysAgo(2),
619
696
  },
620
- // Buyer 7 already covered by Vikram (uid: user-vikram-nair-vikram above)
621
- // Buyer 8: Pooja Mehta — home décor buyer
697
+ // Buyer 14
622
698
  {
623
- uid: "user-pooja-mehta-pooja",
624
- email: "pooja@letitrip.in",
625
- phoneNumber: `${_phonePrefix}9876543233`,
626
- phoneVerified: true,
627
- displayName: "Pooja Mehta",
699
+ uid: "user-kiran-reddy",
700
+ email: "kiran.reddy@gmail.com",
701
+ phoneNumber: `${_ph}9876524014`,
702
+ phoneVerified: false,
703
+ displayName: "Kiran Reddy",
628
704
  photoURL: null,
629
705
  avatarMetadata: null,
630
706
  role: "user",
631
707
  emailVerified: true,
632
708
  disabled: false,
633
- createdAt: daysAgo(207),
634
- updatedAt: daysAgo(7),
635
709
  publicProfile: {
636
- isPublic: true,
710
+ isPublic: false,
637
711
  showEmail: false,
638
712
  showPhone: false,
639
- showOrders: true,
640
- showWishlist: true,
641
- bio: "Home décor enthusiast | Minimalist kitchen.",
642
- location: "Ahmedabad, Gujarat",
643
- },
644
- stats: {
645
- totalOrders: 4,
646
- auctionsWon: 0,
647
- itemsSold: 0,
648
- reviewsCount: 3,
713
+ showOrders: false,
714
+ showWishlist: false,
715
+ bio: "Gundam model kit builder. Starting with HG, working up to Master Grade. Zeon supporter.",
716
+ location: "Hyderabad, Telangana",
649
717
  },
718
+ stats: { totalOrders: 3, auctionsWon: 0, itemsSold: 0, reviewsCount: 2 },
650
719
  metadata: {
651
720
  lastSignInTime: daysAgo(7),
652
- creationTime: daysAgo(207).toISOString(),
653
- loginCount: 24,
721
+ creationTime: daysAgo(35).toISOString(),
722
+ loginCount: 8,
654
723
  },
724
+ createdAt: daysAgo(35),
725
+ updatedAt: daysAgo(7),
655
726
  },
656
- // Buyer 9: Ravi Kumar — fitness & sports buyer
727
+ // Buyer 15
657
728
  {
658
- uid: "user-ravi-kumar-ravi",
659
- email: "ravi@letitrip.in",
660
- phoneNumber: `${_phonePrefix}9876543234`,
661
- phoneVerified: false,
662
- displayName: "Ravi Kumar",
663
- photoURL: null,
729
+ uid: "user-naman-gupta",
730
+ email: "naman.gupta@gmail.com",
731
+ phoneNumber: `${_ph}9876525015`,
732
+ phoneVerified: true,
733
+ displayName: "Naman Gupta",
734
+ photoURL: "https://images.unsplash.com/photo-1500648767791-00dcc994a43e?w=200&h=200&fit=crop&crop=face",
664
735
  avatarMetadata: null,
665
736
  role: "user",
666
737
  emailVerified: true,
667
738
  disabled: false,
668
- createdAt: daysAgo(190),
669
- updatedAt: daysAgo(6),
670
739
  publicProfile: {
671
- isPublic: true,
740
+ isPublic: false,
672
741
  showEmail: false,
673
742
  showPhone: false,
674
- showOrders: true,
743
+ showOrders: false,
675
744
  showWishlist: false,
676
- bio: "Marathon runner | Cycling & gym.",
677
- location: "Jaipur, Rajasthan",
678
- },
679
- stats: {
680
- totalOrders: 3,
681
- auctionsWon: 0,
682
- itemsSold: 0,
683
- reviewsCount: 2,
745
+ bio: "Magic: The Gathering player and Pokémon casual. Drafting Modern Horizons 3 this month.",
746
+ location: "Chandigarh, Punjab",
684
747
  },
748
+ stats: { totalOrders: 5, auctionsWon: 0, itemsSold: 0, reviewsCount: 3 },
685
749
  metadata: {
686
- lastSignInTime: daysAgo(6),
687
- creationTime: daysAgo(190).toISOString(),
688
- loginCount: 18,
750
+ lastSignInTime: daysAgo(3),
751
+ creationTime: daysAgo(30).toISOString(),
752
+ loginCount: 11,
689
753
  },
754
+ createdAt: daysAgo(30),
755
+ updatedAt: daysAgo(3),
690
756
  },
691
- // Buyer 10: Sneha Gupta — electronics buyer
757
+ // Buyer 16
692
758
  {
693
- uid: "user-sneha-gupta-sneha",
694
- email: "sneha@letitrip.in",
695
- phoneNumber: `${_phonePrefix}9876543235`,
759
+ uid: "user-preeti-joshi",
760
+ email: "preeti.joshi@gmail.com",
761
+ phoneNumber: `${_ph}9876526016`,
696
762
  phoneVerified: true,
697
- displayName: "Sneha Gupta",
698
- photoURL: null,
763
+ displayName: "Preeti Joshi",
764
+ photoURL: "https://images.unsplash.com/photo-1544005313-94ddf0286df2?w=200&h=200&fit=crop&crop=face",
699
765
  avatarMetadata: null,
700
766
  role: "user",
701
767
  emailVerified: true,
702
768
  disabled: false,
703
- createdAt: daysAgo(160),
704
- updatedAt: daysAgo(4),
705
769
  publicProfile: {
706
- isPublic: true,
770
+ isPublic: false,
707
771
  showEmail: false,
708
772
  showPhone: false,
709
- showOrders: true,
710
- showWishlist: true,
711
- bio: "Software engineer | Gadget geek.",
712
- location: "Pune, Maharashtra",
773
+ showOrders: false,
774
+ showWishlist: false,
775
+ bio: "Beyblade X casual fan. Daughter loves Hells Chain, I ended up getting addicted too.",
776
+ location: "Bhopal, Madhya Pradesh",
713
777
  },
714
- stats: {
715
- totalOrders: 2,
716
- auctionsWon: 0,
717
- itemsSold: 0,
718
- reviewsCount: 1,
778
+ stats: { totalOrders: 2, auctionsWon: 0, itemsSold: 0, reviewsCount: 1 },
779
+ metadata: {
780
+ lastSignInTime: daysAgo(8),
781
+ creationTime: daysAgo(25).toISOString(),
782
+ loginCount: 5,
719
783
  },
784
+ createdAt: daysAgo(25),
785
+ updatedAt: daysAgo(8),
786
+ },
787
+ // Buyer 17
788
+ {
789
+ uid: "user-varun-bhat",
790
+ email: "varun.bhat@gmail.com",
791
+ phoneNumber: `${_ph}9876527017`,
792
+ phoneVerified: false,
793
+ displayName: "Varun Bhat",
794
+ photoURL: null,
795
+ avatarMetadata: null,
796
+ role: "user",
797
+ emailVerified: false,
798
+ disabled: false,
799
+ publicProfile: {
800
+ isPublic: false,
801
+ showEmail: false,
802
+ showPhone: false,
803
+ showOrders: false,
804
+ showWishlist: false,
805
+ bio: "New to collecting — started with Funko Pops and now falling down the figure rabbit hole.",
806
+ location: "Mangalore, Karnataka",
807
+ },
808
+ stats: { totalOrders: 1, auctionsWon: 0, itemsSold: 0, reviewsCount: 0 },
720
809
  metadata: {
721
- lastSignInTime: daysAgo(4),
722
- creationTime: daysAgo(160).toISOString(),
723
- loginCount: 15,
810
+ lastSignInTime: daysAgo(10),
811
+ creationTime: daysAgo(20).toISOString(),
812
+ loginCount: 3,
724
813
  },
814
+ createdAt: daysAgo(20),
815
+ updatedAt: daysAgo(10),
725
816
  },
726
817
  ];