@mohasinac/appkit 2.3.1 → 2.3.2

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 (253) hide show
  1. package/dist/client.d.ts +12 -8
  2. package/dist/client.js +7 -4
  3. package/dist/constants/api-endpoints.d.ts +4 -0
  4. package/dist/constants/api-endpoints.js +2 -0
  5. package/dist/core/contact-submissions.repository.d.ts +32 -0
  6. package/dist/core/contact-submissions.repository.js +49 -0
  7. package/dist/core/index.d.ts +2 -0
  8. package/dist/core/index.js +1 -0
  9. package/dist/features/about/components/HowPayoutsWorkView.js +1 -1
  10. package/dist/features/account/components/AddressFilters.d.ts +5 -0
  11. package/dist/features/account/components/AddressFilters.js +20 -0
  12. package/dist/features/account/components/AddressesIndexListing.d.ts +6 -0
  13. package/dist/features/account/components/AddressesIndexListing.js +51 -0
  14. package/dist/features/account/components/UserSidebar.d.ts +7 -3
  15. package/dist/features/account/components/UserSidebar.js +55 -7
  16. package/dist/features/account/hooks/useAddresses.d.ts +7 -0
  17. package/dist/features/account/hooks/useAddresses.js +12 -1
  18. package/dist/features/admin/actions/admin-read-actions.d.ts +12 -0
  19. package/dist/features/admin/actions/admin-read-actions.js +18 -0
  20. package/dist/features/admin/components/AdminBlogView.js +26 -2
  21. package/dist/features/admin/components/AdminCarouselView.js +18 -2
  22. package/dist/features/admin/components/AdminCategoriesView.js +27 -2
  23. package/dist/features/admin/components/AdminContactView.d.ts +4 -0
  24. package/dist/features/admin/components/AdminContactView.js +50 -0
  25. package/dist/features/admin/components/AdminFaqsView.js +19 -2
  26. package/dist/features/admin/components/AdminListingScaffold.d.ts +11 -2
  27. package/dist/features/admin/components/AdminListingScaffold.js +14 -3
  28. package/dist/features/admin/components/AdminNewsletterView.d.ts +4 -0
  29. package/dist/features/admin/components/AdminNewsletterView.js +50 -0
  30. package/dist/features/admin/components/AdminProductsView.js +30 -2
  31. package/dist/features/admin/components/AdminReviewsView.js +26 -2
  32. package/dist/features/admin/components/AdminStoresView.js +17 -2
  33. package/dist/features/admin/components/AdminUsersView.js +27 -2
  34. package/dist/features/admin/components/DataTable.d.ts +2 -1
  35. package/dist/features/admin/components/DataTable.js +18 -4
  36. package/dist/features/admin/components/index.d.ts +6 -0
  37. package/dist/features/admin/components/index.js +3 -0
  38. package/dist/features/admin/hooks/useAdminListingData.d.ts +3 -1
  39. package/dist/features/admin/hooks/useAdminListingData.js +12 -7
  40. package/dist/features/admin/server.d.ts +3 -0
  41. package/dist/features/admin/server.js +2 -0
  42. package/dist/features/auctions/components/AuctionDetailPageView.js +93 -47
  43. package/dist/features/auctions/components/AuctionFilters.d.ts +8 -0
  44. package/dist/features/auctions/components/AuctionFilters.js +12 -0
  45. package/dist/features/auctions/components/AuctionsListView.d.ts +6 -1
  46. package/dist/features/auctions/components/AuctionsListView.js +37 -5
  47. package/dist/features/auctions/schemas/index.d.ts +4 -4
  48. package/dist/features/blog/components/BlogFeaturedCard.d.ts +1 -7
  49. package/dist/features/blog/components/BlogFeaturedCard.js +4 -5
  50. package/dist/features/blog/components/BlogFilters.js +2 -1
  51. package/dist/features/blog/components/BlogIndexListing.js +14 -9
  52. package/dist/features/blog/components/BlogIndexPageView.d.ts +6 -1
  53. package/dist/features/blog/components/BlogIndexPageView.js +10 -2
  54. package/dist/features/blog/components/BlogListView.d.ts +2 -1
  55. package/dist/features/blog/components/BlogListView.js +10 -3
  56. package/dist/features/categories/components/CategoriesIndexListing.d.ts +1 -1
  57. package/dist/features/categories/components/CategoriesIndexListing.js +41 -38
  58. package/dist/features/categories/components/CategoriesIndexPageView.d.ts +6 -1
  59. package/dist/features/categories/components/CategoriesIndexPageView.js +41 -2
  60. package/dist/features/categories/components/CategoryDetailPageView.js +13 -6
  61. package/dist/features/categories/components/CategoryDetailTabs.d.ts +5 -0
  62. package/dist/features/categories/components/CategoryDetailTabs.js +17 -0
  63. package/dist/features/categories/components/CategoryFilters.js +2 -1
  64. package/dist/features/categories/components/CategoryGrid.d.ts +2 -1
  65. package/dist/features/categories/components/CategoryGrid.js +8 -6
  66. package/dist/features/categories/components/CategoryProductsListing.js +22 -11
  67. package/dist/features/categories/components/index.d.ts +2 -0
  68. package/dist/features/categories/components/index.js +1 -0
  69. package/dist/features/categories/hooks/useCategories.d.ts +20 -0
  70. package/dist/features/categories/hooks/useCategories.js +50 -1
  71. package/dist/features/categories/hooks/useCategoryTree.d.ts +17 -0
  72. package/dist/features/categories/hooks/useCategoryTree.js +65 -0
  73. package/dist/features/events/components/AdminEventEditorView.d.ts +6 -0
  74. package/dist/features/events/components/AdminEventEditorView.js +203 -0
  75. package/dist/features/events/components/AdminEventsView.js +28 -2
  76. package/dist/features/events/components/EventCard.js +4 -2
  77. package/dist/features/events/components/EventFilters.js +2 -1
  78. package/dist/features/events/components/EventsIndexListing.js +40 -10
  79. package/dist/features/events/components/EventsListPageView.d.ts +6 -1
  80. package/dist/features/events/components/EventsListPageView.js +40 -7
  81. package/dist/features/events/components/index.d.ts +2 -0
  82. package/dist/features/events/components/index.js +1 -0
  83. package/dist/features/events/hooks/useEvents.js +2 -0
  84. package/dist/features/events/types/index.d.ts +1 -0
  85. package/dist/features/homepage/components/BlogArticlesSection.js +1 -1
  86. package/dist/features/homepage/components/EventsSection.js +1 -1
  87. package/dist/features/homepage/components/FeaturedAuctionsSection.js +1 -1
  88. package/dist/features/homepage/components/FeaturedPreOrdersSection.js +1 -1
  89. package/dist/features/homepage/components/FeaturedProductsSection.js +1 -1
  90. package/dist/features/homepage/components/FeaturedStoresSection.js +1 -1
  91. package/dist/features/homepage/components/HeroCarousel.js +1 -1
  92. package/dist/features/homepage/components/MarketplaceHomepageView.js +27 -17
  93. package/dist/features/homepage/components/SectionCarousel.js +4 -4
  94. package/dist/features/homepage/components/ShopByCategorySection.js +2 -2
  95. package/dist/features/homepage/schemas/firestore.d.ts +1 -1
  96. package/dist/features/homepage/schemas/firestore.js +2 -1
  97. package/dist/features/layout/AppLayoutShell.d.ts +6 -2
  98. package/dist/features/layout/AppLayoutShell.js +7 -3
  99. package/dist/features/pre-orders/components/MarketplacePreorderCard.d.ts +3 -1
  100. package/dist/features/pre-orders/components/MarketplacePreorderCard.js +6 -2
  101. package/dist/features/pre-orders/components/PreOrderDetailPageView.js +80 -12
  102. package/dist/features/pre-orders/components/PreOrderFilters.d.ts +8 -0
  103. package/dist/features/pre-orders/components/PreOrderFilters.js +21 -0
  104. package/dist/features/pre-orders/components/PreOrdersIndexListing.d.ts +2 -1
  105. package/dist/features/pre-orders/components/PreOrdersIndexListing.js +69 -10
  106. package/dist/features/pre-orders/components/PreOrdersListView.d.ts +6 -1
  107. package/dist/features/pre-orders/components/PreOrdersListView.js +26 -7
  108. package/dist/features/pre-orders/components/index.d.ts +2 -0
  109. package/dist/features/pre-orders/components/index.js +1 -0
  110. package/dist/features/products/components/AuctionsIndexListing.d.ts +2 -1
  111. package/dist/features/products/components/AuctionsIndexListing.js +61 -9
  112. package/dist/features/products/components/InteractiveProductCard.d.ts +2 -4
  113. package/dist/features/products/components/InteractiveProductCard.js +2 -2
  114. package/dist/features/products/components/ProductDetailPageView.d.ts +1 -1
  115. package/dist/features/products/components/ProductDetailPageView.js +116 -25
  116. package/dist/features/products/components/ProductFilters.d.ts +6 -11
  117. package/dist/features/products/components/ProductFilters.js +5 -3
  118. package/dist/features/products/components/ProductGrid.d.ts +8 -2
  119. package/dist/features/products/components/ProductGrid.js +20 -5
  120. package/dist/features/products/components/ProductTabsShell.d.ts +3 -11
  121. package/dist/features/products/components/ProductTabsShell.js +14 -14
  122. package/dist/features/products/components/ProductsIndexListing.js +73 -9
  123. package/dist/features/products/components/ProductsIndexPageView.d.ts +6 -1
  124. package/dist/features/products/components/ProductsIndexPageView.js +39 -6
  125. package/dist/features/products/components/RelatedProductsCarousel.d.ts +7 -0
  126. package/dist/features/products/components/RelatedProductsCarousel.js +11 -0
  127. package/dist/features/products/components/index.d.ts +1 -0
  128. package/dist/features/products/components/index.js +1 -0
  129. package/dist/features/products/hooks/useProducts.js +16 -0
  130. package/dist/features/products/repository/products.repository.d.ts +8 -0
  131. package/dist/features/products/repository/products.repository.js +2 -0
  132. package/dist/features/products/schemas/index.d.ts +8 -8
  133. package/dist/features/products/types/index.d.ts +12 -0
  134. package/dist/features/promotions/components/CouponsIndexListing.d.ts +9 -0
  135. package/dist/features/promotions/components/CouponsIndexListing.js +86 -0
  136. package/dist/features/promotions/components/PromotionsView.d.ts +11 -5
  137. package/dist/features/promotions/components/PromotionsView.js +6 -1
  138. package/dist/features/promotions/components/index.d.ts +4 -2
  139. package/dist/features/promotions/components/index.js +2 -1
  140. package/dist/features/reviews/components/ReviewDetailPageView.d.ts +4 -0
  141. package/dist/features/reviews/components/ReviewDetailPageView.js +20 -0
  142. package/dist/features/reviews/components/ReviewDetailShell.d.ts +7 -0
  143. package/dist/features/reviews/components/ReviewDetailShell.js +80 -0
  144. package/dist/features/reviews/components/ReviewFilters.d.ts +3 -3
  145. package/dist/features/reviews/components/ReviewFilters.js +5 -4
  146. package/dist/features/reviews/components/ReviewsIndexListing.d.ts +4 -3
  147. package/dist/features/reviews/components/ReviewsIndexListing.js +35 -51
  148. package/dist/features/reviews/components/ReviewsIndexPageView.d.ts +6 -1
  149. package/dist/features/reviews/components/ReviewsIndexPageView.js +49 -3
  150. package/dist/features/reviews/components/ReviewsList.js +9 -1
  151. package/dist/features/reviews/components/index.d.ts +1 -0
  152. package/dist/features/reviews/hooks/useReviews.js +15 -1
  153. package/dist/features/reviews/types/index.d.ts +6 -1
  154. package/dist/features/seller/components/SellerSidebar.d.ts +8 -4
  155. package/dist/features/seller/components/SellerSidebar.js +6 -4
  156. package/dist/features/seller/components/index.d.ts +30 -0
  157. package/dist/features/seller/components/index.js +17 -0
  158. package/dist/features/seller/hooks/useSellerStore.d.ts +2 -0
  159. package/dist/features/seller/hooks/useSellerStore.js +2 -0
  160. package/dist/features/seller/permission-map.d.ts +4 -2
  161. package/dist/features/seller/permission-map.js +16 -14
  162. package/dist/features/seller/schemas/index.d.ts +2 -2
  163. package/dist/features/stores/api/[storeSlug]/reviews/route.d.ts +1 -1
  164. package/dist/features/stores/api/[storeSlug]/reviews/route.js +24 -19
  165. package/dist/features/stores/components/InteractiveStoreCard.d.ts +0 -5
  166. package/dist/features/stores/components/InteractiveStoreCard.js +9 -9
  167. package/dist/features/stores/components/StoreAuctionsListing.js +27 -9
  168. package/dist/features/stores/components/StoreDetailLayoutView.js +2 -0
  169. package/dist/features/stores/components/StoreFilters.d.ts +5 -0
  170. package/dist/features/stores/components/StoreFilters.js +20 -0
  171. package/dist/features/stores/components/StoreHeader.js +2 -2
  172. package/dist/features/stores/components/StorePreOrdersListing.d.ts +5 -0
  173. package/dist/features/stores/components/StorePreOrdersListing.js +40 -0
  174. package/dist/features/stores/components/StorePreOrdersPageView.d.ts +4 -0
  175. package/dist/features/stores/components/StorePreOrdersPageView.js +21 -0
  176. package/dist/features/stores/components/StoreProductsListing.js +21 -11
  177. package/dist/features/stores/components/StoreReviewsListing.js +2 -7
  178. package/dist/features/stores/components/StoresIndexListing.js +42 -8
  179. package/dist/features/stores/components/StoresIndexPageView.d.ts +6 -1
  180. package/dist/features/stores/components/StoresIndexPageView.js +9 -2
  181. package/dist/features/stores/components/index.d.ts +3 -0
  182. package/dist/features/stores/components/index.js +1 -0
  183. package/dist/features/stores/hooks/useStores.d.ts +7 -1
  184. package/dist/features/stores/hooks/useStores.js +16 -3
  185. package/dist/features/stores/schemas/index.d.ts +2 -2
  186. package/dist/features/stores/types/index.d.ts +3 -0
  187. package/dist/features/wishlist/hooks/useGuestWishlist.d.ts +20 -0
  188. package/dist/features/wishlist/hooks/useGuestWishlist.js +49 -0
  189. package/dist/features/wishlist/hooks/useWishlistCount.d.ts +7 -0
  190. package/dist/features/wishlist/hooks/useWishlistCount.js +31 -0
  191. package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +56 -0
  192. package/dist/features/wishlist/hooks/useWishlistWithGuest.js +57 -0
  193. package/dist/features/wishlist/index.d.ts +3 -0
  194. package/dist/features/wishlist/index.js +3 -0
  195. package/dist/features/wishlist/utils/guest-wishlist.d.ts +22 -0
  196. package/dist/features/wishlist/utils/guest-wishlist.js +70 -0
  197. package/dist/index.d.ts +50 -1
  198. package/dist/index.js +63 -1
  199. package/dist/next/routing/route-map.d.ts +70 -36
  200. package/dist/next/routing/route-map.js +30 -22
  201. package/dist/seed/addresses-seed-data.js +62 -261
  202. package/dist/seed/beyblade-seed-data.d.ts +7 -0
  203. package/dist/seed/beyblade-seed-data.js +947 -0
  204. package/dist/seed/bids-seed-data.d.ts +10 -2
  205. package/dist/seed/bids-seed-data.js +220 -1071
  206. package/dist/seed/blog-posts-seed-data.d.ts +2 -2
  207. package/dist/seed/blog-posts-seed-data.js +455 -117
  208. package/dist/seed/cart-seed-data.d.ts +9 -9
  209. package/dist/seed/cart-seed-data.js +73 -74
  210. package/dist/seed/coupons-seed-data.d.ts +3 -4
  211. package/dist/seed/coupons-seed-data.js +3 -509
  212. package/dist/seed/events-seed-data.d.ts +2 -2
  213. package/dist/seed/events-seed-data.js +315 -476
  214. package/dist/seed/faq-seed-data.d.ts +18 -41
  215. package/dist/seed/faq-seed-data.js +1059 -1172
  216. package/dist/seed/hot-wheels-seed-data.d.ts +7 -0
  217. package/dist/seed/hot-wheels-seed-data.js +1365 -0
  218. package/dist/seed/index.d.ts +6 -1
  219. package/dist/seed/index.js +6 -1
  220. package/dist/seed/pokemon-carousel-slides-seed-data.d.ts +4 -2
  221. package/dist/seed/pokemon-carousel-slides-seed-data.js +152 -268
  222. package/dist/seed/pokemon-categories-seed-data.d.ts +18 -21
  223. package/dist/seed/pokemon-categories-seed-data.js +424 -1004
  224. package/dist/seed/pokemon-coupons-seed-data.d.ts +6 -0
  225. package/dist/seed/pokemon-coupons-seed-data.js +465 -0
  226. package/dist/seed/pokemon-homepage-sections-seed-data.d.ts +3 -2
  227. package/dist/seed/pokemon-homepage-sections-seed-data.js +67 -289
  228. package/dist/seed/pokemon-products-seed-data.js +662 -0
  229. package/dist/seed/pokemon-seed-bundle.d.ts +32 -11
  230. package/dist/seed/pokemon-seed-bundle.js +41 -11
  231. package/dist/seed/pokemon-stores-seed-data.d.ts +2 -3
  232. package/dist/seed/pokemon-stores-seed-data.js +56 -31
  233. package/dist/seed/pokemon-users-seed-data.d.ts +2 -2
  234. package/dist/seed/pokemon-users-seed-data.js +245 -261
  235. package/dist/seed/reviews-seed-data.d.ts +17 -2
  236. package/dist/seed/reviews-seed-data.js +519 -483
  237. package/dist/seed/site-settings-seed-data.js +14 -14
  238. package/dist/seed/store-addresses-seed-data.js +68 -50
  239. package/dist/seed/transformers-seed-data.d.ts +7 -0
  240. package/dist/seed/transformers-seed-data.js +510 -0
  241. package/dist/seed/wishlists-seed-data.d.ts +5 -1
  242. package/dist/seed/wishlists-seed-data.js +82 -4
  243. package/dist/server.d.ts +1 -0
  244. package/dist/server.js +2 -0
  245. package/dist/tokens/index.d.ts +6 -0
  246. package/dist/tokens/index.js +2 -0
  247. package/dist/ui/components/BaseListingCard.js +24 -26
  248. package/dist/ui/components/BaseListingCard.style.css +5 -5
  249. package/dist/ui/components/HorizontalScroller.d.ts +1 -1
  250. package/dist/ui/components/HorizontalScroller.js +19 -5
  251. package/dist/ui/components/SideDrawer.style.css +3 -11
  252. package/dist/ui/rich-text/RichText.js +19 -1
  253. package/package.json +1 -1
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Pokemon TCG — Coupons Seed Data
3
+ * Platform-wide and event-linked discount coupons themed around the Pokemon Base Set.
4
+ */
5
+ import type { CouponDocument } from "../features/promotions/schemas";
6
+ export declare const pokemonCouponsSeedData: Partial<CouponDocument>[];
@@ -0,0 +1,465 @@
1
+ /**
2
+ * Pokemon TCG — Coupons Seed Data
3
+ * Platform-wide and event-linked discount coupons themed around the Pokemon Base Set.
4
+ */
5
+ const NOW = new Date();
6
+ const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
7
+ const daysAhead = (n) => new Date(NOW.getTime() + n * 86400000);
8
+ export const pokemonCouponsSeedData = [
9
+ // Platform welcome coupon — first-time Pokemon TCG buyer
10
+ {
11
+ id: "coupon-CATCHEM10",
12
+ code: "CATCHEM10",
13
+ name: "Gotta Catch 'Em — First Order",
14
+ description: "10% off your first Pokemon card order. Welcome to the LetItRip community!",
15
+ type: "percentage",
16
+ discount: {
17
+ value: 10,
18
+ maxDiscount: 1500,
19
+ minPurchase: 500,
20
+ },
21
+ usage: {
22
+ totalLimit: 2000,
23
+ perUserLimit: 1,
24
+ currentUsage: 387,
25
+ },
26
+ validity: {
27
+ startDate: daysAgo(180),
28
+ endDate: daysAhead(365),
29
+ isActive: true,
30
+ },
31
+ restrictions: {
32
+ firstTimeUserOnly: true,
33
+ combineWithSellerCoupons: false,
34
+ },
35
+ createdBy: "user-admin-user-admin",
36
+ createdAt: daysAgo(180),
37
+ updatedAt: daysAgo(2),
38
+ stats: {
39
+ totalUses: 387,
40
+ totalRevenue: 1935000,
41
+ totalDiscount: 193500,
42
+ },
43
+ },
44
+ // Charizard hunt — large-order discount
45
+ {
46
+ id: "coupon-CHARIZARD25",
47
+ code: "CHARIZARD25",
48
+ name: "Charizard Hunt Discount",
49
+ description: "₹2500 off graded and high-value Pokemon singles above ₹20,000",
50
+ type: "fixed",
51
+ discount: {
52
+ value: 2500,
53
+ minPurchase: 20000,
54
+ },
55
+ usage: {
56
+ totalLimit: 100,
57
+ perUserLimit: 1,
58
+ currentUsage: 43,
59
+ },
60
+ validity: {
61
+ startDate: daysAgo(45),
62
+ endDate: daysAhead(30),
63
+ isActive: true,
64
+ },
65
+ restrictions: {
66
+ firstTimeUserOnly: false,
67
+ combineWithSellerCoupons: false,
68
+ },
69
+ createdBy: "user-admin-user-admin",
70
+ createdAt: daysAgo(50),
71
+ updatedAt: daysAgo(1),
72
+ stats: {
73
+ totalUses: 43,
74
+ totalRevenue: 1290000,
75
+ totalDiscount: 107500,
76
+ },
77
+ },
78
+ // Free shipping for any sealed product
79
+ {
80
+ id: "coupon-POKESHIP",
81
+ code: "POKESHIP",
82
+ name: "Free Shipping — Sealed Pokemon Product",
83
+ description: "Free shipping on all sealed Pokemon booster boxes and ETBs — no minimum",
84
+ type: "free_shipping",
85
+ discount: {
86
+ value: 0,
87
+ minPurchase: 0,
88
+ },
89
+ usage: {
90
+ totalLimit: 3000,
91
+ perUserLimit: 5,
92
+ currentUsage: 892,
93
+ },
94
+ validity: {
95
+ startDate: daysAgo(90),
96
+ endDate: daysAhead(180),
97
+ isActive: true,
98
+ },
99
+ restrictions: {
100
+ firstTimeUserOnly: false,
101
+ combineWithSellerCoupons: true,
102
+ },
103
+ createdBy: "user-admin-user-admin",
104
+ createdAt: daysAgo(90),
105
+ updatedAt: daysAgo(3),
106
+ stats: {
107
+ totalUses: 892,
108
+ totalRevenue: 8920000,
109
+ totalDiscount: 89200,
110
+ },
111
+ },
112
+ // Pikachu Day — 20% off Pikachu cards (category-specific)
113
+ {
114
+ id: "coupon-PIKADAY20",
115
+ code: "PIKADAY20",
116
+ name: "Pikachu Day Flash Sale",
117
+ description: "20% off all Pikachu cards and variants — 72-hour flash deal",
118
+ type: "percentage",
119
+ discount: {
120
+ value: 20,
121
+ maxDiscount: 3000,
122
+ minPurchase: 1000,
123
+ },
124
+ usage: {
125
+ totalLimit: 500,
126
+ perUserLimit: 2,
127
+ currentUsage: 234,
128
+ },
129
+ validity: {
130
+ startDate: daysAgo(5),
131
+ endDate: daysAgo(2),
132
+ isActive: false,
133
+ },
134
+ restrictions: {
135
+ firstTimeUserOnly: false,
136
+ combineWithSellerCoupons: false,
137
+ },
138
+ createdBy: "user-admin-user-admin",
139
+ createdAt: daysAgo(10),
140
+ updatedAt: daysAgo(2),
141
+ stats: {
142
+ totalUses: 234,
143
+ totalRevenue: 4680000,
144
+ totalDiscount: 936000,
145
+ },
146
+ },
147
+ // Misty's Water Cards store-specific coupon
148
+ {
149
+ id: "coupon-MISTYS15",
150
+ code: "MISTYS15",
151
+ name: "Misty's Water Cards Special",
152
+ description: "15% off all Misty's Water Cards store — Water-type and Aqua-set cards",
153
+ type: "percentage",
154
+ discount: {
155
+ value: 15,
156
+ maxDiscount: 2000,
157
+ minPurchase: 1500,
158
+ },
159
+ usage: {
160
+ totalLimit: 200,
161
+ perUserLimit: 2,
162
+ currentUsage: 67,
163
+ },
164
+ validity: {
165
+ startDate: daysAgo(14),
166
+ endDate: daysAhead(14),
167
+ isActive: true,
168
+ },
169
+ restrictions: {
170
+ applicableSellers: ["store-mistys-water-cards"],
171
+ firstTimeUserOnly: false,
172
+ combineWithSellerCoupons: false,
173
+ },
174
+ createdBy: "user-admin-user-admin",
175
+ createdAt: daysAgo(15),
176
+ updatedAt: daysAgo(14),
177
+ stats: {
178
+ totalUses: 67,
179
+ totalRevenue: 1005000,
180
+ totalDiscount: 150750,
181
+ },
182
+ },
183
+ // Poke-Auctions — buy-now discount
184
+ {
185
+ id: "coupon-BUYNOW500",
186
+ code: "BUYNOW500",
187
+ name: "Auction Buy Now Saver",
188
+ description: "₹500 off when you use Buy Now on any auction — skip the bidding war",
189
+ type: "fixed",
190
+ discount: {
191
+ value: 500,
192
+ minPurchase: 3000,
193
+ },
194
+ usage: {
195
+ totalLimit: 300,
196
+ perUserLimit: 3,
197
+ currentUsage: 121,
198
+ },
199
+ validity: {
200
+ startDate: daysAgo(20),
201
+ endDate: daysAhead(40),
202
+ isActive: true,
203
+ },
204
+ restrictions: {
205
+ firstTimeUserOnly: false,
206
+ combineWithSellerCoupons: true,
207
+ },
208
+ createdBy: "user-admin-user-admin",
209
+ createdAt: daysAgo(22),
210
+ updatedAt: daysAgo(20),
211
+ stats: {
212
+ totalUses: 121,
213
+ totalRevenue: 1210000,
214
+ totalDiscount: 60500,
215
+ },
216
+ },
217
+ // PSA graded cards — loyalty discount
218
+ {
219
+ id: "coupon-GRADE10",
220
+ code: "GRADE10",
221
+ name: "Graded Collector Loyalty",
222
+ description: "10% off PSA, BGS, and CGC graded cards sitewide — for the serious collector",
223
+ type: "percentage",
224
+ discount: {
225
+ value: 10,
226
+ maxDiscount: 5000,
227
+ minPurchase: 2000,
228
+ },
229
+ usage: {
230
+ totalLimit: 1000,
231
+ perUserLimit: 3,
232
+ currentUsage: 156,
233
+ },
234
+ validity: {
235
+ startDate: daysAgo(30),
236
+ endDate: daysAhead(60),
237
+ isActive: true,
238
+ },
239
+ restrictions: {
240
+ firstTimeUserOnly: false,
241
+ combineWithSellerCoupons: false,
242
+ },
243
+ createdBy: "user-admin-user-admin",
244
+ createdAt: daysAgo(32),
245
+ updatedAt: daysAgo(30),
246
+ stats: {
247
+ totalUses: 156,
248
+ totalRevenue: 3120000,
249
+ totalDiscount: 312000,
250
+ },
251
+ },
252
+ // New Year 2026 — expired
253
+ {
254
+ id: "coupon-POKE2026",
255
+ code: "POKE2026",
256
+ name: "New Year 2026 Pokemon Sale",
257
+ description: "25% off all Base Set singles — ring in 2026 with the OG set",
258
+ type: "percentage",
259
+ discount: {
260
+ value: 25,
261
+ maxDiscount: 8000,
262
+ minPurchase: 1000,
263
+ },
264
+ usage: {
265
+ totalLimit: 1000,
266
+ perUserLimit: 1,
267
+ currentUsage: 947,
268
+ },
269
+ validity: {
270
+ startDate: daysAgo(120),
271
+ endDate: daysAgo(113),
272
+ isActive: false,
273
+ },
274
+ restrictions: {
275
+ firstTimeUserOnly: false,
276
+ combineWithSellerCoupons: false,
277
+ },
278
+ createdBy: "user-admin-user-admin",
279
+ createdAt: daysAgo(125),
280
+ updatedAt: daysAgo(113),
281
+ stats: {
282
+ totalUses: 947,
283
+ totalRevenue: 18940000,
284
+ totalDiscount: 4735000,
285
+ },
286
+ },
287
+ // Blaine's Fire Shoppe — store exclusive
288
+ {
289
+ id: "coupon-FIRESALE12",
290
+ code: "FIRESALE12",
291
+ name: "Blaine's Fire Shoppe Flash Deal",
292
+ description: "12% off all Fire-type cards at Blaine's Fire Shoppe",
293
+ type: "percentage",
294
+ discount: {
295
+ value: 12,
296
+ maxDiscount: 1800,
297
+ minPurchase: 800,
298
+ },
299
+ usage: {
300
+ totalLimit: 150,
301
+ perUserLimit: 2,
302
+ currentUsage: 0,
303
+ },
304
+ validity: {
305
+ startDate: daysAhead(2),
306
+ endDate: daysAhead(9),
307
+ isActive: true,
308
+ },
309
+ restrictions: {
310
+ applicableSellers: ["store-blaines-fire-shoppe"],
311
+ firstTimeUserOnly: false,
312
+ combineWithSellerCoupons: false,
313
+ },
314
+ createdBy: "user-admin-user-admin",
315
+ createdAt: daysAgo(1),
316
+ updatedAt: daysAgo(1),
317
+ stats: {
318
+ totalUses: 0,
319
+ totalRevenue: 0,
320
+ totalDiscount: 0,
321
+ },
322
+ },
323
+ // Hot Wheels — Treasure Hunt bundle deal
324
+ {
325
+ id: "coupon-HWTHBUNDLE",
326
+ code: "HWTHBUNDLE",
327
+ name: "Hot Wheels TH Bundle Discount",
328
+ description: "Buy 3 or more Hot Wheels cars and get 12% off — includes THs and STHs.",
329
+ type: "percentage",
330
+ discount: {
331
+ value: 12,
332
+ maxDiscount: 3000,
333
+ minPurchase: 2000,
334
+ },
335
+ usage: {
336
+ totalLimit: 500,
337
+ perUserLimit: 3,
338
+ currentUsage: 87,
339
+ },
340
+ validity: {
341
+ startDate: daysAgo(30),
342
+ endDate: daysAhead(60),
343
+ isActive: true,
344
+ },
345
+ restrictions: {
346
+ applicableSellers: ["store-speed-king-diecast"],
347
+ firstTimeUserOnly: false,
348
+ combineWithSellerCoupons: false,
349
+ },
350
+ createdBy: "user-admin-user-admin",
351
+ createdAt: daysAgo(30),
352
+ updatedAt: daysAgo(5),
353
+ stats: {
354
+ totalUses: 87,
355
+ totalRevenue: 435000,
356
+ totalDiscount: 52200,
357
+ },
358
+ },
359
+ // Beyblade — Bundle event coupon (referenced in event seed)
360
+ {
361
+ id: "coupon-bbbundle2",
362
+ code: "BBBUNDLE2",
363
+ name: "Bladers Paradise — Buy 2 Tops, Get Free Stadium",
364
+ description: "Order 2+ Beyblade Burst tops from Bladers Paradise and receive a free standard battle stadium (auto-added at checkout).",
365
+ type: "buy_x_get_y",
366
+ discount: {
367
+ value: 0,
368
+ maxDiscount: 1299,
369
+ minPurchase: 2000,
370
+ },
371
+ usage: {
372
+ totalLimit: 100,
373
+ perUserLimit: 2,
374
+ currentUsage: 23,
375
+ },
376
+ validity: {
377
+ startDate: daysAgo(1),
378
+ endDate: daysAhead(13),
379
+ isActive: true,
380
+ },
381
+ restrictions: {
382
+ applicableSellers: ["store-bladers-paradise"],
383
+ firstTimeUserOnly: false,
384
+ combineWithSellerCoupons: false,
385
+ },
386
+ createdBy: "user-admin-user-admin",
387
+ createdAt: daysAgo(2),
388
+ updatedAt: daysAgo(1),
389
+ stats: {
390
+ totalUses: 23,
391
+ totalRevenue: 115000,
392
+ totalDiscount: 29877,
393
+ },
394
+ },
395
+ // Transformers — cancelled event compensation coupon
396
+ {
397
+ id: "coupon-tfmeet-cancelled",
398
+ code: "TFMEET500",
399
+ name: "Transformers Convention Cancellation Compensation",
400
+ description: "₹500 store credit for registered participants of the cancelled Transformers Convention Mumbai 2026.",
401
+ type: "fixed",
402
+ discount: {
403
+ value: 500,
404
+ maxDiscount: 500,
405
+ minPurchase: 0,
406
+ },
407
+ usage: {
408
+ totalLimit: 500,
409
+ perUserLimit: 1,
410
+ currentUsage: 0,
411
+ },
412
+ validity: {
413
+ startDate: daysAgo(1),
414
+ endDate: daysAhead(90),
415
+ isActive: true,
416
+ },
417
+ restrictions: {
418
+ firstTimeUserOnly: false,
419
+ combineWithSellerCoupons: true,
420
+ },
421
+ createdBy: "user-admin-user-admin",
422
+ createdAt: daysAgo(1),
423
+ updatedAt: daysAgo(1),
424
+ stats: {
425
+ totalUses: 0,
426
+ totalRevenue: 0,
427
+ totalDiscount: 0,
428
+ },
429
+ },
430
+ // New user welcome coupon — all franchises
431
+ {
432
+ id: "coupon-newtrainer10",
433
+ code: "NEWTRAINER10",
434
+ name: "New Collector Welcome — 10% Off First Order",
435
+ description: "Welcome to LetItRip! Get 10% off your first order across any franchise — Pokémon, Hot Wheels, Beyblade, or Transformers.",
436
+ type: "percentage",
437
+ discount: {
438
+ value: 10,
439
+ maxDiscount: 2000,
440
+ minPurchase: 500,
441
+ },
442
+ usage: {
443
+ totalLimit: 5000,
444
+ perUserLimit: 1,
445
+ currentUsage: 1240,
446
+ },
447
+ validity: {
448
+ startDate: daysAgo(60),
449
+ endDate: daysAhead(365),
450
+ isActive: false,
451
+ },
452
+ restrictions: {
453
+ firstTimeUserOnly: true,
454
+ combineWithSellerCoupons: false,
455
+ },
456
+ createdBy: "user-admin-user-admin",
457
+ createdAt: daysAgo(65),
458
+ updatedAt: daysAgo(30),
459
+ stats: {
460
+ totalUses: 1240,
461
+ totalRevenue: 6200000,
462
+ totalDiscount: 620000,
463
+ },
464
+ },
465
+ ];
@@ -1,6 +1,7 @@
1
1
  /**
2
- * Pokemon Base Set 151 — Homepage Sections Seed Data
3
- * All 15 section slots configured for a Pokémon TCG marketplace
2
+ * Multi-Franchise Collectibles — Homepage Sections Seed Data (5 sections)
3
+ *
4
+ * Covers Pokémon TCG · Hot Wheels · Beyblade Burst · Transformers
4
5
  */
5
6
  import type { HomepageSectionDocument } from "../features/homepage/schemas";
6
7
  export declare const pokemonHomepageSectionsSeedData: Partial<HomepageSectionDocument>[];