@mohasinac/appkit 2.7.11 → 2.7.12
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.
- package/dist/_internal/server/jobs/core/assignSpinPrize.js +8 -7
- package/dist/_internal/server/jobs/core/bundleStockSync.js +11 -6
- package/dist/_internal/server/jobs/core/countersReconcile.js +3 -2
- package/dist/_internal/server/jobs/core/onProductStockChange.js +12 -7
- package/dist/_internal/server/jobs/core/onProductWrite.js +3 -2
- package/dist/_internal/server/jobs/core/prizeRevealClose.js +7 -5
- package/dist/_internal/server/jobs/core/prizeRevealExpiry.js +11 -6
- package/dist/_internal/server/jobs/core/prizeRevealOpen.js +13 -7
- package/dist/_internal/server/jobs/core/prizeRevealReminder.js +9 -4
- package/dist/_internal/server/jobs/core/triggerEventRaffle.js +3 -2
- package/dist/_internal/shared/features/blog/schema.d.ts +4 -4
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +32 -32
- package/dist/_internal/shared/features/events/schema.d.ts +4 -4
- package/dist/_internal/shared/features/products/schema.d.ts +20 -20
- package/dist/_internal/shared/features/promotions/schema.d.ts +2 -2
- package/dist/_internal/shared/features/reviews/schema.d.ts +1 -1
- package/dist/constants/field-names.d.ts +813 -0
- package/dist/constants/field-names.js +918 -0
- package/dist/constants/sort.d.ts +7 -0
- package/dist/constants/sort.js +5 -0
- package/dist/constants/table-keys.d.ts +48 -0
- package/dist/constants/table-keys.js +46 -0
- package/dist/features/account/components/AddressesIndexListing.js +9 -6
- package/dist/features/admin/components/AdminAllEventEntriesView.js +4 -1
- package/dist/features/admin/components/AdminBidsView.js +4 -1
- package/dist/features/admin/components/AdminBlogView.js +9 -2
- package/dist/features/admin/components/AdminBrandsView.js +9 -2
- package/dist/features/admin/components/AdminCarouselView.js +4 -1
- package/dist/features/admin/components/AdminCartsView.js +4 -1
- package/dist/features/admin/components/AdminCategoriesView.js +9 -2
- package/dist/features/admin/components/AdminContactView.js +4 -1
- package/dist/features/admin/components/AdminCouponsView.js +4 -1
- package/dist/features/admin/components/AdminFaqsView.js +5 -1
- package/dist/features/admin/components/AdminFeaturesView.js +5 -2
- package/dist/features/admin/components/AdminHistoryView.js +5 -1
- package/dist/features/admin/components/AdminNewsletterView.js +4 -1
- package/dist/features/admin/components/AdminNotificationsView.js +4 -1
- package/dist/features/admin/components/AdminOrdersView.js +14 -12
- package/dist/features/admin/components/AdminPayoutsView.js +4 -1
- package/dist/features/admin/components/AdminPrizeDrawsView.js +4 -1
- package/dist/features/admin/components/AdminProductsView.js +14 -3
- package/dist/features/admin/components/AdminReturnRequestsView.js +4 -1
- package/dist/features/admin/components/AdminReviewsView.js +4 -1
- package/dist/features/admin/components/AdminScammersView.js +4 -1
- package/dist/features/admin/components/AdminSessionsView.js +4 -1
- package/dist/features/admin/components/AdminStoreAddressesView.js +5 -1
- package/dist/features/admin/components/AdminStoresView.js +10 -3
- package/dist/features/admin/components/AdminSublistingCategoriesView.js +4 -1
- package/dist/features/admin/components/AdminSupportTicketsView.js +4 -1
- package/dist/features/admin/components/AdminTeamView.js +4 -1
- package/dist/features/admin/components/AdminUsersView.js +9 -12
- package/dist/features/admin/components/AdminViewCards.d.ts +12 -0
- package/dist/features/admin/components/AdminViewCards.js +53 -0
- package/dist/features/admin/components/AdminWishlistsView.js +4 -1
- package/dist/features/auctions/repository/bid.repository.js +1 -6
- package/dist/features/auctions/schemas/index.d.ts +4 -4
- package/dist/features/blog/actions/blog-actions.d.ts +16 -16
- package/dist/features/blog/components/BlogFilters.d.ts +28 -28
- package/dist/features/blog/components/BlogFilters.js +18 -15
- package/dist/features/blog/components/BlogIndexListing.js +20 -16
- package/dist/features/blog/schemas/index.d.ts +10 -10
- package/dist/features/categories/components/CategoriesIndexListing.js +25 -21
- package/dist/features/categories/schemas/index.d.ts +2 -2
- package/dist/features/events/components/AdminEventsView.js +5 -1
- package/dist/features/events/components/EventFilters.d.ts +24 -24
- package/dist/features/events/components/EventFilters.js +16 -13
- package/dist/features/events/components/EventStatusBadge.js +1 -0
- package/dist/features/events/components/EventsIndexListing.js +31 -26
- package/dist/features/events/components/EventsListPageView.js +13 -10
- package/dist/features/events/schemas/firestore.d.ts +1 -0
- package/dist/features/events/schemas/firestore.js +1 -0
- package/dist/features/events/schemas/index.d.ts +1 -1
- package/dist/features/events/types/index.d.ts +1 -1
- package/dist/features/faq/actions/faq-actions.d.ts +10 -10
- package/dist/features/faq/schemas/index.d.ts +4 -4
- package/dist/features/orders/components/OrderFilters.d.ts +20 -20
- package/dist/features/orders/components/OrderFilters.js +33 -30
- package/dist/features/orders/repository/orders.repository.js +1 -15
- package/dist/features/orders/schemas/index.d.ts +2 -2
- package/dist/features/pre-orders/components/PreOrdersIndexListing.js +35 -31
- package/dist/features/pre-orders/schemas/index.d.ts +3 -3
- package/dist/features/products/components/AuctionsIndexListing.js +34 -30
- package/dist/features/products/components/BidHistory.d.ts +0 -1
- package/dist/features/products/components/BidHistory.js +1 -1
- package/dist/features/products/components/PrizeDrawsIndexListing.js +44 -40
- package/dist/features/products/components/ProductDetailPageView.js +1 -1
- package/dist/features/products/components/ProductFilters.d.ts +20 -20
- package/dist/features/products/components/ProductFilters.js +62 -59
- package/dist/features/products/components/ProductsIndexListing.js +28 -24
- package/dist/features/products/components/ProductsIndexPageView.js +18 -10
- package/dist/features/products/hooks/useProducts.js +2 -0
- package/dist/features/products/repository/products.repository.js +2 -22
- package/dist/features/products/schemas/index.d.ts +28 -28
- package/dist/features/products/schemas/product-features.validators.d.ts +12 -12
- package/dist/features/products/types/index.d.ts +2 -0
- package/dist/features/promotions/components/CouponsIndexListing.js +21 -17
- package/dist/features/promotions/schemas/index.d.ts +4 -4
- package/dist/features/reviews/components/ReviewDetailShell.js +6 -5
- package/dist/features/reviews/components/ReviewFilters.d.ts +16 -16
- package/dist/features/reviews/components/ReviewFilters.js +10 -7
- package/dist/features/reviews/components/ReviewsIndexListing.js +21 -17
- package/dist/features/reviews/components/ReviewsList.d.ts +5 -2
- package/dist/features/reviews/components/ReviewsList.js +11 -5
- package/dist/features/reviews/schemas/firestore.d.ts +1 -0
- package/dist/features/reviews/schemas/index.d.ts +8 -8
- package/dist/features/reviews/types/index.d.ts +1 -0
- package/dist/features/search/schemas/index.d.ts +2 -2
- package/dist/features/seller/components/SellerAuctionsView.js +5 -1
- package/dist/features/seller/components/SellerBidsView.js +4 -1
- package/dist/features/seller/components/SellerCouponsView.js +4 -1
- package/dist/features/seller/components/SellerOffersView.js +5 -1
- package/dist/features/seller/components/SellerOrdersView.js +4 -1
- package/dist/features/seller/components/SellerPayoutsView.js +5 -1
- package/dist/features/seller/components/SellerPreOrdersView.js +4 -1
- package/dist/features/seller/components/SellerPrizeDrawsView.js +4 -1
- package/dist/features/seller/components/SellerProductsView.js +4 -1
- package/dist/features/seller/schemas/index.d.ts +10 -10
- package/dist/features/stores/api/route.js +10 -1
- package/dist/features/stores/components/StoreReviewsListing.js +1 -1
- package/dist/features/stores/components/StoresIndexListing.js +24 -20
- package/dist/features/stores/schemas/firestore.d.ts +1 -0
- package/dist/features/stores/schemas/index.d.ts +4 -4
- package/dist/index.d.ts +8 -1
- package/dist/index.js +12 -1
- package/dist/react/hooks/useUrlTable.js +2 -1
- package/dist/seed/bids-seed-data.js +45 -44
- package/dist/seed/categories-seed-data.js +41 -40
- package/dist/seed/coupons-seed-data.js +41 -40
- package/dist/seed/products-auctions-seed-data.js +54 -53
- package/dist/seed/products-preorders-seed-data.js +25 -24
- package/dist/seed/products-prize-draws-seed-data.js +24 -23
- package/dist/seed/products-standard-seed-data.js +294 -293
- package/dist/seed/reviews-seed-data.js +61 -60
- package/dist/seed/scammers-seed-data.js +3 -2
- package/dist/seed/stores-seed-data.js +9 -8
- package/dist/seed/support-tickets-seed-data.js +13 -12
- package/dist/seed/users-seed-data.js +28 -27
- package/dist/tailwind-utilities.css +1 -1
- package/dist/utils/sieve-builder.d.ts +41 -0
- package/dist/utils/sieve-builder.js +66 -0
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Verticals: action figures, trading cards, diecast, spinning tops, model kits + vintage/rare.
|
|
5
5
|
* id === slug convention enforced throughout.
|
|
6
6
|
*/
|
|
7
|
+
import { CATEGORY_FIELDS } from "../constants/field-names";
|
|
7
8
|
const NOW = new Date();
|
|
8
9
|
const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
|
|
9
10
|
const emptyMetrics = {
|
|
@@ -1225,7 +1226,7 @@ const sublistingRows = [
|
|
|
1225
1226
|
id: "sublisting-pokemon-base-set",
|
|
1226
1227
|
slug: "sublisting-pokemon-base-set",
|
|
1227
1228
|
name: "Base Set (102/102)",
|
|
1228
|
-
categoryType:
|
|
1229
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1229
1230
|
itemCode: "BS-102",
|
|
1230
1231
|
description: "All 102 Base Set Pokémon TCG cards — Shadowless, 1st Edition, and Unlimited.",
|
|
1231
1232
|
rootId: "category-trading-cards",
|
|
@@ -1249,7 +1250,7 @@ const sublistingRows = [
|
|
|
1249
1250
|
id: "sublisting-pokemon-psa-graded",
|
|
1250
1251
|
slug: "sublisting-pokemon-psa-graded",
|
|
1251
1252
|
name: "PSA Graded Pokémon Cards",
|
|
1252
|
-
categoryType:
|
|
1253
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1253
1254
|
itemCode: "PSA",
|
|
1254
1255
|
description: "Investment-grade Pokémon cards authenticated by PSA.",
|
|
1255
1256
|
rootId: "category-trading-cards",
|
|
@@ -1273,7 +1274,7 @@ const sublistingRows = [
|
|
|
1273
1274
|
id: "sublisting-pokemon-sealed-boxes",
|
|
1274
1275
|
slug: "sublisting-pokemon-sealed-boxes",
|
|
1275
1276
|
name: "Sealed Pokémon Booster Boxes",
|
|
1276
|
-
categoryType:
|
|
1277
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1277
1278
|
description: "Factory-sealed Pokémon TCG booster boxes — current, vintage, Japanese.",
|
|
1278
1279
|
rootId: "category-trading-cards",
|
|
1279
1280
|
parentIds: ["category-trading-cards"],
|
|
@@ -1296,7 +1297,7 @@ const sublistingRows = [
|
|
|
1296
1297
|
id: "sublisting-vintage-wotc-era",
|
|
1297
1298
|
slug: "sublisting-vintage-wotc-era",
|
|
1298
1299
|
name: "WOTC Era Pokémon (1999–2003)",
|
|
1299
|
-
categoryType:
|
|
1300
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1300
1301
|
itemCode: "WOTC",
|
|
1301
1302
|
description: "All Wizards of the Coast era Pokémon TCG sets: Base Set through Legendary Collection.",
|
|
1302
1303
|
rootId: "category-vintage-rare",
|
|
@@ -1320,7 +1321,7 @@ const sublistingRows = [
|
|
|
1320
1321
|
id: "sublisting-yugioh-lob-1st-edition",
|
|
1321
1322
|
slug: "sublisting-yugioh-lob-1st-edition",
|
|
1322
1323
|
name: "Yu-Gi-Oh! LOB 1st Edition",
|
|
1323
|
-
categoryType:
|
|
1324
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1324
1325
|
itemCode: "LOB-1E",
|
|
1325
1326
|
description: "Legend of Blue-Eyes White Dragon 1st Edition singles — iconic 2002 WOTC-era Yu-Gi-Oh!.",
|
|
1326
1327
|
rootId: "category-trading-cards",
|
|
@@ -1345,7 +1346,7 @@ const sublistingRows = [
|
|
|
1345
1346
|
id: "sublisting-hotwheels-redlines",
|
|
1346
1347
|
slug: "sublisting-hotwheels-redlines",
|
|
1347
1348
|
name: "Hot Wheels Vintage Redlines (1968–1977)",
|
|
1348
|
-
categoryType:
|
|
1349
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1349
1350
|
itemCode: "Redline",
|
|
1350
1351
|
description: "Original Hot Wheels Redline-era cars (1968–1977).",
|
|
1351
1352
|
rootId: "category-diecast-vehicles",
|
|
@@ -1369,7 +1370,7 @@ const sublistingRows = [
|
|
|
1369
1370
|
id: "sublisting-hotwheels-super-treasure-hunts",
|
|
1370
1371
|
slug: "sublisting-hotwheels-super-treasure-hunts",
|
|
1371
1372
|
name: "Hot Wheels Super Treasure Hunts",
|
|
1372
|
-
categoryType:
|
|
1373
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1373
1374
|
itemCode: "STH",
|
|
1374
1375
|
description: "Rare Hot Wheels regular-production releases with Real Riders tyres.",
|
|
1375
1376
|
rootId: "category-diecast-vehicles",
|
|
@@ -1394,7 +1395,7 @@ const sublistingRows = [
|
|
|
1394
1395
|
id: "sublisting-beyblade-x-series",
|
|
1395
1396
|
slug: "sublisting-beyblade-x-series",
|
|
1396
1397
|
name: "Beyblade X Series (2023+)",
|
|
1397
|
-
categoryType:
|
|
1398
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1398
1399
|
itemCode: "BX",
|
|
1399
1400
|
description: "All Beyblade X generation products — xtreme dash ratchet system.",
|
|
1400
1401
|
rootId: "category-spinning-tops",
|
|
@@ -1419,7 +1420,7 @@ const sublistingRows = [
|
|
|
1419
1420
|
id: "sublisting-gundam-master-grade",
|
|
1420
1421
|
slug: "sublisting-gundam-master-grade",
|
|
1421
1422
|
name: "Gundam Master Grade (MG) 1/100",
|
|
1422
|
-
categoryType:
|
|
1423
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1423
1424
|
itemCode: "MG",
|
|
1424
1425
|
description: "Bandai Gundam MG 1/100 kits with full inner frame.",
|
|
1425
1426
|
rootId: "category-model-kits",
|
|
@@ -1443,7 +1444,7 @@ const sublistingRows = [
|
|
|
1443
1444
|
id: "sublisting-gundam-high-grade",
|
|
1444
1445
|
slug: "sublisting-gundam-high-grade",
|
|
1445
1446
|
name: "Gundam High Grade (HG) 1/144",
|
|
1446
|
-
categoryType:
|
|
1447
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1447
1448
|
itemCode: "HG",
|
|
1448
1449
|
description: "Entry-level Bandai Gundam HG 1/144 kits across all series.",
|
|
1449
1450
|
rootId: "category-model-kits",
|
|
@@ -1468,7 +1469,7 @@ const sublistingRows = [
|
|
|
1468
1469
|
id: "sublisting-nendoroid-early-series",
|
|
1469
1470
|
slug: "sublisting-nendoroid-early-series",
|
|
1470
1471
|
name: "Nendoroid Early Series (#001–#100)",
|
|
1471
|
-
categoryType:
|
|
1472
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1472
1473
|
itemCode: "GSC-001-100",
|
|
1473
1474
|
description: "Discontinued Good Smile Company Nendoroid figures #001–#100.",
|
|
1474
1475
|
rootId: "category-action-figures",
|
|
@@ -1492,7 +1493,7 @@ const sublistingRows = [
|
|
|
1492
1493
|
id: "sublisting-shf-dragonball",
|
|
1493
1494
|
slug: "sublisting-shf-dragonball",
|
|
1494
1495
|
name: "S.H.Figuarts Dragon Ball Series",
|
|
1495
|
-
categoryType:
|
|
1496
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.SUBLISTING,
|
|
1496
1497
|
itemCode: "SHF-DBZ",
|
|
1497
1498
|
description: "Bandai S.H.Figuarts Dragon Ball Z and Super articulated figures.",
|
|
1498
1499
|
rootId: "category-action-figures",
|
|
@@ -1519,7 +1520,7 @@ const brandRows = [
|
|
|
1519
1520
|
id: "brand-bandai",
|
|
1520
1521
|
slug: "brand-bandai",
|
|
1521
1522
|
name: "Bandai",
|
|
1522
|
-
categoryType:
|
|
1523
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1523
1524
|
description: "Japan's leading toy and hobby manufacturer. Home to Gundam plastic model kits (Gunpla), SH Figuarts, Dragon Ball figures, Digimon, Power Rangers, and premium collectibles.",
|
|
1524
1525
|
brandWebsite: "https://www.bandai.co.jp",
|
|
1525
1526
|
brandCountry: "Japan",
|
|
@@ -1545,7 +1546,7 @@ const brandRows = [
|
|
|
1545
1546
|
id: "brand-hasbro",
|
|
1546
1547
|
slug: "brand-hasbro",
|
|
1547
1548
|
name: "Hasbro",
|
|
1548
|
-
categoryType:
|
|
1549
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1549
1550
|
description: "American multinational toy and entertainment company. Makes Transformers, Marvel Legends, Star Wars Black Series, My Little Pony, Nerf, and G.I. Joe collectibles.",
|
|
1550
1551
|
brandWebsite: "https://www.hasbro.com",
|
|
1551
1552
|
brandCountry: "USA",
|
|
@@ -1571,7 +1572,7 @@ const brandRows = [
|
|
|
1571
1572
|
id: "brand-takara-tomy",
|
|
1572
1573
|
slug: "brand-takara-tomy",
|
|
1573
1574
|
name: "Takara Tomy",
|
|
1574
|
-
categoryType:
|
|
1575
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1575
1576
|
description: "Iconic Japanese toy manufacturer formed by the merger of Takara and Tomy in 2006. Creates Beyblade Burst, Tomica diecast cars, Transformers (Japan), and Zoids.",
|
|
1576
1577
|
brandWebsite: "https://www.takaratomy.co.jp",
|
|
1577
1578
|
brandCountry: "Japan",
|
|
@@ -1597,7 +1598,7 @@ const brandRows = [
|
|
|
1597
1598
|
id: "brand-mattel",
|
|
1598
1599
|
slug: "brand-mattel",
|
|
1599
1600
|
name: "Mattel",
|
|
1600
|
-
categoryType:
|
|
1601
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1601
1602
|
description: "American toy giant behind Hot Wheels, Barbie, Masters of the Universe, UNO, and Fisher-Price. Hot Wheels alone has over 900 vehicle models released annually.",
|
|
1602
1603
|
brandWebsite: "https://www.mattel.com",
|
|
1603
1604
|
brandCountry: "USA",
|
|
@@ -1623,7 +1624,7 @@ const brandRows = [
|
|
|
1623
1624
|
id: "brand-pokemon-company",
|
|
1624
1625
|
slug: "brand-pokemon-company",
|
|
1625
1626
|
name: "The Pokémon Company",
|
|
1626
|
-
categoryType:
|
|
1627
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1627
1628
|
description: "Japanese consortium managing the Pokémon intellectual property. Publishes the Pokémon Trading Card Game (TCG), video games, anime merchandise, and official licensed collectibles worldwide.",
|
|
1628
1629
|
brandWebsite: "https://www.pokemon.com",
|
|
1629
1630
|
brandCountry: "Japan",
|
|
@@ -1649,7 +1650,7 @@ const brandRows = [
|
|
|
1649
1650
|
id: "brand-konami",
|
|
1650
1651
|
slug: "brand-konami",
|
|
1651
1652
|
name: "Konami",
|
|
1652
|
-
categoryType:
|
|
1653
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1653
1654
|
description: "Japanese entertainment conglomerate best known for the Yu-Gi-Oh! Trading Card Game. Also produces Metal Gear, Silent Hill, and Castlevania merchandise and figures.",
|
|
1654
1655
|
brandWebsite: "https://www.konami.com",
|
|
1655
1656
|
brandCountry: "Japan",
|
|
@@ -1675,7 +1676,7 @@ const brandRows = [
|
|
|
1675
1676
|
id: "brand-funko",
|
|
1676
1677
|
slug: "brand-funko",
|
|
1677
1678
|
name: "Funko",
|
|
1678
|
-
categoryType:
|
|
1679
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1679
1680
|
description: "American pop-culture collectibles company. Iconic for Funko Pop! vinyl figures spanning thousands of licenses including Marvel, DC, anime, Disney, gaming, sports, and music.",
|
|
1680
1681
|
brandWebsite: "https://funko.com",
|
|
1681
1682
|
brandCountry: "USA",
|
|
@@ -1701,7 +1702,7 @@ const brandRows = [
|
|
|
1701
1702
|
id: "brand-neca",
|
|
1702
1703
|
slug: "brand-neca",
|
|
1703
1704
|
name: "NECA",
|
|
1704
|
-
categoryType:
|
|
1705
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1705
1706
|
description: "National Entertainment Collectibles Association — American designer and manufacturer of highly detailed action figures. Known for horror icons, Teenage Mutant Ninja Turtles, and video game characters.",
|
|
1706
1707
|
brandWebsite: "https://www.necaonline.com",
|
|
1707
1708
|
brandCountry: "USA",
|
|
@@ -1727,7 +1728,7 @@ const brandRows = [
|
|
|
1727
1728
|
id: "brand-mcfarlane",
|
|
1728
1729
|
slug: "brand-mcfarlane",
|
|
1729
1730
|
name: "McFarlane Toys",
|
|
1730
|
-
categoryType:
|
|
1731
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1731
1732
|
description: "American action figure company founded by comic artist Todd McFarlane. Official DC Multiverse figures, Warhammer, Spawn, and premium collector statuettes with extraordinary detail.",
|
|
1732
1733
|
brandWebsite: "https://www.mcfarlane.com",
|
|
1733
1734
|
brandCountry: "USA",
|
|
@@ -1753,7 +1754,7 @@ const brandRows = [
|
|
|
1753
1754
|
id: "brand-good-smile",
|
|
1754
1755
|
slug: "brand-good-smile",
|
|
1755
1756
|
name: "Good Smile Company",
|
|
1756
|
-
categoryType:
|
|
1757
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1757
1758
|
description: "Japan's premier figure manufacturer. Producer of Nendoroids, figma, and high-end scale PVC figures. Official partner for Fate, Hatsune Miku, Sword Art Online, Re:Zero, and hundreds of anime series.",
|
|
1758
1759
|
brandWebsite: "https://www.goodsmile.info",
|
|
1759
1760
|
brandCountry: "Japan",
|
|
@@ -1779,7 +1780,7 @@ const brandRows = [
|
|
|
1779
1780
|
id: "brand-hot-wheels",
|
|
1780
1781
|
slug: "brand-hot-wheels",
|
|
1781
1782
|
name: "Hot Wheels",
|
|
1782
|
-
categoryType:
|
|
1783
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1783
1784
|
description: "Mattel's iconic 1:64 scale die-cast vehicle brand since 1968. Treasure Hunt, Super Treasure Hunt, Car Culture, RLC exclusives, and track sets. Over 6 billion cars sold worldwide.",
|
|
1784
1785
|
brandWebsite: "https://hotwheels.mattel.com",
|
|
1785
1786
|
brandCountry: "USA",
|
|
@@ -1805,7 +1806,7 @@ const brandRows = [
|
|
|
1805
1806
|
id: "brand-tomica",
|
|
1806
1807
|
slug: "brand-tomica",
|
|
1807
1808
|
name: "Tomica",
|
|
1808
|
-
categoryType:
|
|
1809
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1809
1810
|
description: "Takara Tomy's 1:64 scale Japanese diecast car series since 1970. Features authentic Japanese vehicles (Toyota, Honda, Nissan), emergency vehicles, and licensed premium Tomica Premium line.",
|
|
1810
1811
|
brandWebsite: "https://www.takaratomy.co.jp/products/tomica",
|
|
1811
1812
|
brandCountry: "Japan",
|
|
@@ -1831,7 +1832,7 @@ const brandRows = [
|
|
|
1831
1832
|
id: "brand-beyblade",
|
|
1832
1833
|
slug: "brand-beyblade",
|
|
1833
1834
|
name: "Beyblade",
|
|
1834
|
-
categoryType:
|
|
1835
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1835
1836
|
description: "Takara Tomy's competitive spinning top battle franchise. Covers classic Metal Fight, Beyblade Burst, Beyblade X, and Hasbro-localized versions. Official tournaments held worldwide including India.",
|
|
1836
1837
|
brandWebsite: "https://beyblade.takaratomy.co.jp",
|
|
1837
1838
|
brandCountry: "Japan",
|
|
@@ -1857,7 +1858,7 @@ const brandRows = [
|
|
|
1857
1858
|
id: "brand-kotobukiya",
|
|
1858
1859
|
slug: "brand-kotobukiya",
|
|
1859
1860
|
name: "Kotobukiya",
|
|
1860
|
-
categoryType:
|
|
1861
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1861
1862
|
description: "Premium Japanese model kit and figure manufacturer. Famous for Frame Arms Girl, Megami Device, ARTFX statues, and licensed kits from Star Wars, Marvel, and DC. Known for detailed snap-fit kits requiring no glue.",
|
|
1862
1863
|
brandWebsite: "https://www.kotobukiya.co.jp",
|
|
1863
1864
|
brandCountry: "Japan",
|
|
@@ -1883,7 +1884,7 @@ const brandRows = [
|
|
|
1883
1884
|
id: "brand-alter",
|
|
1884
1885
|
slug: "brand-alter",
|
|
1885
1886
|
name: "Alter",
|
|
1886
|
-
categoryType:
|
|
1887
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1887
1888
|
description: "High-end Japanese scale figure manufacturer under A+ Corporation. Renowned for exceptional paint quality and sculpt accuracy. Specialises in 1/7 and 1/8 scale anime figures from Re:Zero, Fate, and other popular IPs.",
|
|
1888
1889
|
brandWebsite: "https://alter-web.jp",
|
|
1889
1890
|
brandCountry: "Japan",
|
|
@@ -1909,7 +1910,7 @@ const brandRows = [
|
|
|
1909
1910
|
id: "brand-max-factory",
|
|
1910
1911
|
slug: "brand-max-factory",
|
|
1911
1912
|
name: "Max Factory",
|
|
1912
|
-
categoryType:
|
|
1913
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1913
1914
|
description: "Japanese figure manufacturer known for the figma articulated figure line and figFIX static figures. Partners with Good Smile Company. figma figures are prized for their wide articulation range and interchangeable parts.",
|
|
1914
1915
|
brandWebsite: "https://www.maxfactory.jp",
|
|
1915
1916
|
brandCountry: "Japan",
|
|
@@ -1935,7 +1936,7 @@ const brandRows = [
|
|
|
1935
1936
|
id: "brand-medicom-toy",
|
|
1936
1937
|
slug: "brand-medicom-toy",
|
|
1937
1938
|
name: "Medicom Toy",
|
|
1938
|
-
categoryType:
|
|
1939
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1939
1940
|
description: "Japanese designer toy and collectible figure company. Creator of MAFEX (Miracle Action Figure EX) — highly articulated figures with film-accurate sculpts covering Batman, Spider-Man, and Star Wars. Also produces BE@RBRICK designer toys.",
|
|
1940
1941
|
brandWebsite: "https://www.medicomtoy.co.jp",
|
|
1941
1942
|
brandCountry: "Japan",
|
|
@@ -1961,7 +1962,7 @@ const brandRows = [
|
|
|
1961
1962
|
id: "brand-bushiroad",
|
|
1962
1963
|
slug: "brand-bushiroad",
|
|
1963
1964
|
name: "Bushiroad",
|
|
1964
|
-
categoryType:
|
|
1965
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1965
1966
|
description: "Japanese trading card game publisher. Home to One Piece Card Game, Cardfight!! Vanguard, Weiß Schwarz, and Sword Art Online TCG. Growing fast in India's TCG community alongside Pokémon and Yu-Gi-Oh.",
|
|
1966
1967
|
brandWebsite: "https://www.bushiroad.com",
|
|
1967
1968
|
brandCountry: "Japan",
|
|
@@ -1987,7 +1988,7 @@ const brandRows = [
|
|
|
1987
1988
|
id: "brand-panini",
|
|
1988
1989
|
slug: "brand-panini",
|
|
1989
1990
|
name: "Panini",
|
|
1990
|
-
categoryType:
|
|
1991
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
1991
1992
|
description: "Italian sticker and trading card company with global reach. Official partner for FIFA, NBA, NFL, ICC Cricket, and IPL trading cards. Popular in India for cricket and football card collections.",
|
|
1992
1993
|
brandWebsite: "https://www.paniniamerica.net",
|
|
1993
1994
|
brandCountry: "Italy",
|
|
@@ -2013,7 +2014,7 @@ const brandRows = [
|
|
|
2013
2014
|
id: "brand-spin-master",
|
|
2014
2015
|
slug: "brand-spin-master",
|
|
2015
2016
|
name: "Spin Master",
|
|
2016
|
-
categoryType:
|
|
2017
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2017
2018
|
description: "Canadian toy company known for Bakugan battle planet, Air Hogs, Paw Patrol, and Tech Deck. Bakugan has a dedicated competitive community in India with official tournaments.",
|
|
2018
2019
|
brandWebsite: "https://www.spinmaster.com",
|
|
2019
2020
|
brandCountry: "Canada",
|
|
@@ -2039,7 +2040,7 @@ const brandRows = [
|
|
|
2039
2040
|
id: "brand-jakks-pacific",
|
|
2040
2041
|
slug: "brand-jakks-pacific",
|
|
2041
2042
|
name: "JAKKS Pacific",
|
|
2042
|
-
categoryType:
|
|
2043
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2043
2044
|
description: "American toy manufacturer producing licensed action figures for Nintendo (World of Nintendo), Disney, and WWE. Affordable 4-inch figure lines popular among budget collectors.",
|
|
2044
2045
|
brandWebsite: "https://www.jakkspacific.com",
|
|
2045
2046
|
brandCountry: "USA",
|
|
@@ -2065,7 +2066,7 @@ const brandRows = [
|
|
|
2065
2066
|
id: "brand-corgi",
|
|
2066
2067
|
slug: "brand-corgi",
|
|
2067
2068
|
name: "Corgi",
|
|
2068
|
-
categoryType:
|
|
2069
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2069
2070
|
description: "British diecast vehicle manufacturer with a 70-year heritage. Iconic for James Bond DB5 in gold, aviation models, and classic British cars. Collector grade quality with opening parts and realistic detail.",
|
|
2070
2071
|
brandWebsite: "https://www.corgi.co.uk",
|
|
2071
2072
|
brandCountry: "UK",
|
|
@@ -2091,7 +2092,7 @@ const brandRows = [
|
|
|
2091
2092
|
id: "brand-matchbox",
|
|
2092
2093
|
slug: "brand-matchbox",
|
|
2093
2094
|
name: "Matchbox",
|
|
2094
|
-
categoryType:
|
|
2095
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2095
2096
|
description: "Iconic British diecast toy car brand since 1953, now owned by Mattel. Known for 1:64 scale realistic vehicles. The Moving Parts line features opening hoods and doors. Beloved by Indian collectors for nostalgia value.",
|
|
2096
2097
|
brandWebsite: "https://www.matchbox.com",
|
|
2097
2098
|
brandCountry: "UK",
|
|
@@ -2117,7 +2118,7 @@ const brandRows = [
|
|
|
2117
2118
|
id: "brand-mega-construx",
|
|
2118
2119
|
slug: "brand-mega-construx",
|
|
2119
2120
|
name: "Mega Construx",
|
|
2120
|
-
categoryType:
|
|
2121
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2121
2122
|
description: "Mattel's construction toy brand (now marketed as MEGA). Produces detailed building sets for Pokémon, Halo, Call of Duty, and Masters of the Universe. Pokémon MEGA sets are popular gift items for young collectors.",
|
|
2122
2123
|
brandWebsite: "https://www.mega.us",
|
|
2123
2124
|
brandCountry: "USA",
|
|
@@ -2143,7 +2144,7 @@ const brandRows = [
|
|
|
2143
2144
|
id: "brand-sideshow-collectibles",
|
|
2144
2145
|
slug: "brand-sideshow-collectibles",
|
|
2145
2146
|
name: "Sideshow Collectibles",
|
|
2146
|
-
categoryType:
|
|
2147
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BRAND,
|
|
2147
2148
|
description: "Premium American collectible statue and figure manufacturer. Known for 1/4 scale and 1/6 scale premium statues for Marvel, DC, Star Wars, and horror franchises. Limited edition runs make these highly sought-after.",
|
|
2148
2149
|
brandWebsite: "https://www.sideshowtoy.com",
|
|
2149
2150
|
brandCountry: "USA",
|
|
@@ -2172,7 +2173,7 @@ const bundleRows = [
|
|
|
2172
2173
|
id: "bundle-pokemon-tcg-starter-pack-2026",
|
|
2173
2174
|
slug: "bundle-pokemon-tcg-starter-pack-2026",
|
|
2174
2175
|
name: "Pokémon TCG Starter Pack 2026",
|
|
2175
|
-
categoryType:
|
|
2176
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BUNDLE,
|
|
2176
2177
|
description: "A curated 3-item bundle for new Pokémon TCG collectors — a Paldean Fates ETB, a tin of Stellar Crown boosters, and a deck box. Save ₹650 vs buying separately.",
|
|
2177
2178
|
rootId: "bundle-pokemon-tcg-starter-pack-2026",
|
|
2178
2179
|
parentIds: [],
|
|
@@ -2218,7 +2219,7 @@ const bundleRows = [
|
|
|
2218
2219
|
id: "bundle-gunpla-pg-arrivals-2026",
|
|
2219
2220
|
slug: "bundle-gunpla-pg-arrivals-2026",
|
|
2220
2221
|
name: "Gundam PG Arrivals 2026",
|
|
2221
|
-
categoryType:
|
|
2222
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BUNDLE,
|
|
2222
2223
|
description: "Pre-order bundle — three premium PG/RG kits + S.H.Figuarts Broly Super Hero. Save ₹1200.",
|
|
2223
2224
|
rootId: "bundle-gunpla-pg-arrivals-2026",
|
|
2224
2225
|
parentIds: [],
|
|
@@ -2264,7 +2265,7 @@ const bundleRows = [
|
|
|
2264
2265
|
id: "bundle-beyblade-x-launch-pack-2025",
|
|
2265
2266
|
slug: "bundle-beyblade-x-launch-pack-2025",
|
|
2266
2267
|
name: "Beyblade X Launch Pack 2025 (SOLD OUT)",
|
|
2267
|
-
categoryType:
|
|
2268
|
+
categoryType: CATEGORY_FIELDS.CATEGORY_TYPE_VALUES.BUNDLE,
|
|
2268
2269
|
description: "Four-item Beyblade X launch pack — original 2025 release. One of the four items has sold; bundle marked OOS until restock.",
|
|
2269
2270
|
rootId: "bundle-beyblade-x-launch-pack-2025",
|
|
2270
2271
|
parentIds: [],
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* partially-used, and exhausted (limit reached).
|
|
5
5
|
* coupon- prefix, id === code-based slug.
|
|
6
6
|
*/
|
|
7
|
+
import { COUPON_FIELDS } from "../constants/field-names";
|
|
7
8
|
const NOW = new Date();
|
|
8
9
|
const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
|
|
9
10
|
const daysAhead = (n) => new Date(NOW.getTime() + n * 86400000);
|
|
@@ -14,8 +15,8 @@ export const couponsSeedData = [
|
|
|
14
15
|
code: "WELCOME10",
|
|
15
16
|
name: "Welcome Discount — 10% Off Your First Order",
|
|
16
17
|
description: "10% off your first order on LetItRip. Valid on all categories. Maximum discount ₹200. First-time buyers only.",
|
|
17
|
-
type:
|
|
18
|
-
scope:
|
|
18
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
19
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
19
20
|
discount: {
|
|
20
21
|
value: 10,
|
|
21
22
|
maxDiscount: 20000,
|
|
@@ -50,8 +51,8 @@ export const couponsSeedData = [
|
|
|
50
51
|
code: "POKEMON25",
|
|
51
52
|
name: "Pokémon Collector's Discount — ₹250 Off",
|
|
52
53
|
description: "₹250 off on any Pokémon TCG category purchase. Minimum order ₹1,000. Valid on trading cards, sealed products, and vintage Pokémon. Can be combined with seller coupons.",
|
|
53
|
-
type:
|
|
54
|
-
scope:
|
|
54
|
+
type: COUPON_FIELDS.TYPE_VALUES.FIXED,
|
|
55
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
55
56
|
discount: {
|
|
56
57
|
value: 25000,
|
|
57
58
|
maxDiscount: 25000,
|
|
@@ -87,8 +88,8 @@ export const couponsSeedData = [
|
|
|
87
88
|
code: "FREESHIP999",
|
|
88
89
|
name: "Free Shipping on Orders ₹999+",
|
|
89
90
|
description: "Free standard shipping on any order above ₹999. No category restriction. Note: free shipping is already automatic above ₹999 — this coupon extends the same benefit and can be applied to orders that were manually discounted below ₹999.",
|
|
90
|
-
type:
|
|
91
|
-
scope:
|
|
91
|
+
type: COUPON_FIELDS.TYPE_VALUES.FREE_SHIPPING,
|
|
92
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
92
93
|
discount: {
|
|
93
94
|
value: 100,
|
|
94
95
|
minPurchase: 99900,
|
|
@@ -122,8 +123,8 @@ export const couponsSeedData = [
|
|
|
122
123
|
code: "BLADER20",
|
|
123
124
|
name: "Blader's Discount — 20% Off All Beyblade Products",
|
|
124
125
|
description: "20% off all Beyblade X and Burst products. Maximum discount ₹500 per order. Limited to 50 uses total — 30 used so far. Created for the India launch promotion.",
|
|
125
|
-
type:
|
|
126
|
-
scope:
|
|
126
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
127
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
127
128
|
discount: {
|
|
128
129
|
value: 20,
|
|
129
130
|
maxDiscount: 50000,
|
|
@@ -159,8 +160,8 @@ export const couponsSeedData = [
|
|
|
159
160
|
code: "VIP2026",
|
|
160
161
|
name: "VIP Collector's Exclusive — 25% Off (Limit Reached)",
|
|
161
162
|
description: "25% off any order — exclusive to LetItRip VIP program members. Limited to 10 uses total. This coupon is now exhausted. Watch for VIP2026B in the next newsletter.",
|
|
162
|
-
type:
|
|
163
|
-
scope:
|
|
163
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
164
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
164
165
|
discount: {
|
|
165
166
|
value: 25,
|
|
166
167
|
maxDiscount: 250000,
|
|
@@ -195,8 +196,8 @@ export const couponsSeedData = [
|
|
|
195
196
|
code: "PALACE15",
|
|
196
197
|
name: "Pokémon Palace — 15% Loyalty Discount",
|
|
197
198
|
description: "15% off your next order at Pokémon Palace. Exclusively for repeat customers. Min order ₹1,500. Max discount ₹750.",
|
|
198
|
-
type:
|
|
199
|
-
scope:
|
|
199
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
200
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
200
201
|
storeId: "store-pokemon-palace",
|
|
201
202
|
discount: {
|
|
202
203
|
value: 15,
|
|
@@ -232,8 +233,8 @@ export const couponsSeedData = [
|
|
|
232
233
|
code: "DIECAST10",
|
|
233
234
|
name: "Diecast Depot — ₹100 Off Your Next Order",
|
|
234
235
|
description: "₹100 flat off any order at Diecast Depot. Works on all Hot Wheels and Tomica cars. Min order ₹500.",
|
|
235
|
-
type:
|
|
236
|
-
scope:
|
|
236
|
+
type: COUPON_FIELDS.TYPE_VALUES.FIXED,
|
|
237
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
237
238
|
storeId: "store-diecast-depot",
|
|
238
239
|
discount: {
|
|
239
240
|
value: 10000,
|
|
@@ -269,8 +270,8 @@ export const couponsSeedData = [
|
|
|
269
270
|
code: "BEYARENA20",
|
|
270
271
|
name: "Beyblade Arena Launch Special — 20% Off",
|
|
271
272
|
description: "20% off all Beyblade X products at Beyblade Arena. Limited launch promotion. Max discount ₹500. One use per customer.",
|
|
272
|
-
type:
|
|
273
|
-
scope:
|
|
273
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
274
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
274
275
|
storeId: "store-beyblade-arena",
|
|
275
276
|
discount: {
|
|
276
277
|
value: 20,
|
|
@@ -307,8 +308,8 @@ export const couponsSeedData = [
|
|
|
307
308
|
code: "CARDGAME5",
|
|
308
309
|
name: "CardGame Hub — Free Shipping",
|
|
309
310
|
description: "Free shipping on any order from CardGame Hub. No minimum order. Available to all buyers.",
|
|
310
|
-
type:
|
|
311
|
-
scope:
|
|
311
|
+
type: COUPON_FIELDS.TYPE_VALUES.FREE_SHIPPING,
|
|
312
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
312
313
|
storeId: "store-cardgame-hub",
|
|
313
314
|
discount: {
|
|
314
315
|
value: 100,
|
|
@@ -343,8 +344,8 @@ export const couponsSeedData = [
|
|
|
343
344
|
code: "TOKYOTOYS10",
|
|
344
345
|
name: "Tokyo Toys India — 10% New Customer Discount",
|
|
345
346
|
description: "10% off your first order at Tokyo Toys India. Valid on all anime figures, Gundam kits, and Funko Pops. Min order ₹2,000. Max discount ₹500.",
|
|
346
|
-
type:
|
|
347
|
-
scope:
|
|
347
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
348
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
348
349
|
storeId: "store-tokyo-toys-india",
|
|
349
350
|
discount: {
|
|
350
351
|
value: 10,
|
|
@@ -381,8 +382,8 @@ export const couponsSeedData = [
|
|
|
381
382
|
code: "NEWUSER5",
|
|
382
383
|
name: "₹50 Off First Order",
|
|
383
384
|
description: "Flat ₹50 off your first order on LetItRip. No minimum purchase.",
|
|
384
|
-
type:
|
|
385
|
-
scope:
|
|
385
|
+
type: COUPON_FIELDS.TYPE_VALUES.FIXED,
|
|
386
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
386
387
|
discount: { value: 5000, minPurchase: 0 },
|
|
387
388
|
usage: { totalLimit: undefined, perUserLimit: 1, currentUsage: 312 },
|
|
388
389
|
validity: { startDate: daysAgo(90), endDate: daysAhead(180), isActive: true },
|
|
@@ -398,8 +399,8 @@ export const couponsSeedData = [
|
|
|
398
399
|
code: "FLASH24",
|
|
399
400
|
name: "24-Hour Flash Sale — 30% Off",
|
|
400
401
|
description: "30% off everything for 24 hours only. Maximum discount ₹500.",
|
|
401
|
-
type:
|
|
402
|
-
scope:
|
|
402
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
403
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
403
404
|
discount: { value: 30, maxDiscount: 50000, minPurchase: 100000 },
|
|
404
405
|
usage: { totalLimit: 200, perUserLimit: 1, currentUsage: 187 },
|
|
405
406
|
validity: { startDate: daysAgo(40), endDate: daysAgo(39), isActive: false },
|
|
@@ -415,8 +416,8 @@ export const couponsSeedData = [
|
|
|
415
416
|
code: "REFERRAL200",
|
|
416
417
|
name: "Referral Reward — ₹200 Off",
|
|
417
418
|
description: "Refer a friend, both get ₹200 off the next order. Min ₹1,000.",
|
|
418
|
-
type:
|
|
419
|
-
scope:
|
|
419
|
+
type: COUPON_FIELDS.TYPE_VALUES.FIXED,
|
|
420
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
420
421
|
discount: { value: 20000, minPurchase: 100000 },
|
|
421
422
|
usage: { totalLimit: undefined, perUserLimit: 5, currentUsage: 89 },
|
|
422
423
|
validity: { startDate: daysAgo(180), endDate: daysAhead(180), isActive: true },
|
|
@@ -432,8 +433,8 @@ export const couponsSeedData = [
|
|
|
432
433
|
code: "PREPAID5",
|
|
433
434
|
name: "5% Off Prepaid Orders",
|
|
434
435
|
description: "Pay online (UPI/card) and get an extra 5% off. Max ₹300 discount.",
|
|
435
|
-
type:
|
|
436
|
-
scope:
|
|
436
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
437
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
437
438
|
discount: { value: 5, maxDiscount: 30000, minPurchase: 50000 },
|
|
438
439
|
usage: { totalLimit: undefined, perUserLimit: undefined, currentUsage: 1024 },
|
|
439
440
|
validity: { startDate: daysAgo(150), endDate: daysAhead(150), isActive: true },
|
|
@@ -449,8 +450,8 @@ export const couponsSeedData = [
|
|
|
449
450
|
code: "GUNDAMGALAXY12",
|
|
450
451
|
name: "Gundam Galaxy 12% Off",
|
|
451
452
|
description: "12% off everything at Gundam Galaxy store. Max ₹400.",
|
|
452
|
-
type:
|
|
453
|
-
scope:
|
|
453
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
454
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
454
455
|
storeId: "store-gundam-galaxy",
|
|
455
456
|
discount: { value: 12, maxDiscount: 40000, minPurchase: 250000 },
|
|
456
457
|
usage: { totalLimit: 100, perUserLimit: 2, currentUsage: 24 },
|
|
@@ -467,8 +468,8 @@ export const couponsSeedData = [
|
|
|
467
468
|
code: "VINTAGEVAULT8",
|
|
468
469
|
name: "Vintage Vault 8% Off — Diwali Special",
|
|
469
470
|
description: "Diwali special — 8% off vintage collectibles. Expired Nov 2025.",
|
|
470
|
-
type:
|
|
471
|
-
scope:
|
|
471
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
472
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
472
473
|
storeId: "store-vintage-vault",
|
|
473
474
|
discount: { value: 8, maxDiscount: 50000, minPurchase: 500000 },
|
|
474
475
|
usage: { totalLimit: 50, perUserLimit: 1, currentUsage: 28 },
|
|
@@ -485,8 +486,8 @@ export const couponsSeedData = [
|
|
|
485
486
|
code: "AUCTION25",
|
|
486
487
|
name: "25% Off Auction Wins (Shipping)",
|
|
487
488
|
description: "Auction winners get 25% off shipping. Max ₹250 discount.",
|
|
488
|
-
type:
|
|
489
|
-
scope:
|
|
489
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
490
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
490
491
|
discount: { value: 25, maxDiscount: 25000, minPurchase: 0 },
|
|
491
492
|
usage: { totalLimit: undefined, perUserLimit: undefined, currentUsage: 56 },
|
|
492
493
|
validity: { startDate: daysAgo(60), endDate: daysAhead(120), isActive: true },
|
|
@@ -502,8 +503,8 @@ export const couponsSeedData = [
|
|
|
502
503
|
code: "SUMMER15",
|
|
503
504
|
name: "Summer Sale 15% Off",
|
|
504
505
|
description: "15% off summer 2026 collectibles. Max ₹600. Starts in 2 weeks.",
|
|
505
|
-
type:
|
|
506
|
-
scope:
|
|
506
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
507
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
507
508
|
discount: { value: 15, maxDiscount: 60000, minPurchase: 200000 },
|
|
508
509
|
usage: { totalLimit: 500, perUserLimit: 1, currentUsage: 0 },
|
|
509
510
|
validity: { startDate: daysAhead(14), endDate: daysAhead(45), isActive: true },
|
|
@@ -519,8 +520,8 @@ export const couponsSeedData = [
|
|
|
519
520
|
code: "RETROVAULT10",
|
|
520
521
|
name: "Retro Vault 10% Off",
|
|
521
522
|
description: "10% off retro collectibles at Vintage Vault. Max ₹350.",
|
|
522
|
-
type:
|
|
523
|
-
scope:
|
|
523
|
+
type: COUPON_FIELDS.TYPE_VALUES.PERCENTAGE,
|
|
524
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.SELLER,
|
|
524
525
|
storeId: "store-vintage-vault",
|
|
525
526
|
discount: { value: 10, maxDiscount: 35000, minPurchase: 200000 },
|
|
526
527
|
usage: { totalLimit: 75, perUserLimit: 1, currentUsage: 19 },
|
|
@@ -537,8 +538,8 @@ export const couponsSeedData = [
|
|
|
537
538
|
code: "BIGBANG2026",
|
|
538
539
|
name: "₹1,000 Off Orders Above ₹10,000",
|
|
539
540
|
description: "Flat ₹1,000 off orders ₹10,000+. Big-ticket promo. Once per user.",
|
|
540
|
-
type:
|
|
541
|
-
scope:
|
|
541
|
+
type: COUPON_FIELDS.TYPE_VALUES.FIXED,
|
|
542
|
+
scope: COUPON_FIELDS.SCOPE_VALUES.ADMIN,
|
|
542
543
|
discount: { value: 100000, minPurchase: 1000000 },
|
|
543
544
|
usage: { totalLimit: 1000, perUserLimit: 1, currentUsage: 142 },
|
|
544
545
|
validity: { startDate: daysAgo(75), endDate: daysAhead(90), isActive: true },
|