@mohasinac/appkit 3.5.2 → 3.5.4

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 (70) hide show
  1. package/dist/features/homepage/components/CustomCardsSection.js +1 -1
  2. package/dist/features/homepage/components/SectionCarousel.js +1 -1
  3. package/dist/features/seller/components/CategoryInlineSelect.d.ts +1 -1
  4. package/dist/features/seller/components/CategoryInlineSelect.js +1 -1
  5. package/dist/react/hooks/useBulkSelection.js +12 -3
  6. package/dist/react/hooks/useGesture.js +48 -4
  7. package/dist/react/hooks/useLongPress.d.ts +1 -0
  8. package/dist/react/hooks/useLongPress.js +5 -0
  9. package/dist/react/hooks/usePullToRefresh.js +12 -1
  10. package/dist/react/hooks/useRealtimeEvent.js +18 -1
  11. package/dist/react/hooks/useSwipe.js +14 -0
  12. package/dist/seed/addresses-seed-data.js +8 -99
  13. package/dist/seed/categories-seed-data.js +103 -2082
  14. package/dist/seed/homepage-sections-seed-data.js +9 -9
  15. package/dist/seed/products-art-seed-data.d.ts +1 -10
  16. package/dist/seed/products-art-seed-data.js +13 -122
  17. package/dist/seed/products-auctions-seed-data.js +39 -747
  18. package/dist/seed/products-classifieds-seed-data.d.ts +1 -9
  19. package/dist/seed/products-classifieds-seed-data.js +13 -195
  20. package/dist/seed/products-digital-codes-seed-data.d.ts +1 -9
  21. package/dist/seed/products-digital-codes-seed-data.js +13 -202
  22. package/dist/seed/products-live-items-seed-data.d.ts +1 -12
  23. package/dist/seed/products-live-items-seed-data.js +13 -188
  24. package/dist/seed/products-preorders-seed-data.js +18 -149
  25. package/dist/seed/products-prize-draws-seed-data.d.ts +1 -16
  26. package/dist/seed/products-prize-draws-seed-data.js +13 -385
  27. package/dist/seed/products-standard-seed-data.js +152 -1331
  28. package/dist/seed/products-stickers-seed-data.d.ts +1 -10
  29. package/dist/seed/products-stickers-seed-data.js +13 -122
  30. package/dist/seed/site-settings-seed-data.js +106 -108
  31. package/dist/seed/store-addresses-seed-data.js +14 -46
  32. package/dist/seed/stores-seed-data.js +13 -205
  33. package/dist/styles.css +19 -18
  34. package/dist/tailwind-utilities.css +1 -1
  35. package/dist/ui/components/BaseListingCard.d.ts +2 -1
  36. package/dist/ui/components/BaseListingCard.js +4 -5
  37. package/dist/ui/components/BulkActionBar.style.css +4 -4
  38. package/dist/ui/components/Button.js +52 -22
  39. package/dist/ui/components/Button.style.css +14 -13
  40. package/dist/ui/components/DateInput.js +1 -0
  41. package/dist/ui/components/DynamicBgDiv.js +8 -6
  42. package/dist/ui/components/FormField.js +1 -1
  43. package/dist/ui/components/HorizontalScroller.js +35 -16
  44. package/dist/ui/components/Iframe.d.ts +8 -1
  45. package/dist/ui/components/Layout.d.ts +4 -4
  46. package/dist/ui/components/Layout.js +8 -8
  47. package/dist/ui/components/ListingToolbar.js +4 -4
  48. package/dist/ui/components/Motion.js +4 -1
  49. package/dist/ui/components/OtpInput.js +1 -1
  50. package/dist/ui/components/PaginatedSelect.js +29 -3
  51. package/dist/ui/components/Pagination.js +10 -5
  52. package/dist/ui/components/RichTextEditor.js +64 -3
  53. package/dist/ui/components/Select.js +1 -0
  54. package/dist/ui/components/Semantic.d.ts +10 -10
  55. package/dist/ui/components/Semantic.js +25 -25
  56. package/dist/ui/components/SideDrawer.js +13 -11
  57. package/dist/ui/components/SideModal.js +9 -7
  58. package/dist/ui/components/SlottedListingView.d.ts +13 -2
  59. package/dist/ui/components/StickyToolbar.js +9 -5
  60. package/dist/ui/components/TagInput.js +15 -2
  61. package/dist/ui/components/Textarea.js +1 -0
  62. package/dist/ui/components/Toggle.js +8 -1
  63. package/dist/ui/components/UnsavedChangesModal.js +12 -1
  64. package/dist/ui/forms/ColorPickerField.js +7 -0
  65. package/dist/ui/forms/FieldCheckbox.js +1 -1
  66. package/dist/utils/id-generators.d.ts +7 -4
  67. package/dist/utils/id-generators.js +53 -31
  68. package/dist/utils/number.formatter.js +19 -6
  69. package/dist/utils/string.formatter.js +4 -1
  70. package/package.json +1 -1
@@ -1,11 +1,2 @@
1
- /**
2
- * Stickers Products Seed Data (EMI/art-stickers session)
3
- *
4
- * Stored as ProductDocument with listingType: "stickers". Printed-only
5
- * sticker sheets/packs — standard cart/checkout flow, distinguished by
6
- * `printMeta` (size, material, finish, edition size).
7
- *
8
- * Prices in INR paise (₹1 = 100 paise).
9
- */
10
- import type { ProductDocument } from "../features/products/schemas/firestore";
1
+ import { ProductDocument } from "../features/products/schemas/firestore";
11
2
  export declare const productsStickersSeedData: Partial<ProductDocument>[];
@@ -1,125 +1,16 @@
1
- /**
2
- * Stickers Products Seed Data (EMI/art-stickers session)
1
+ /*
2
+ * WHY: Sticker listings are out of scope for the minimal Beyblade-focused demo catalog.
3
+ * WHAT: Exports an empty array — kept as a stub so seed/index.ts and the seed API route's
4
+ * SEED_DATA_MAP.products concatenation keep working without a code change elsewhere.
3
5
  *
4
- * Stored as ProductDocument with listingType: "stickers". Printed-only
5
- * sticker sheets/packs standard cart/checkout flow, distinguished by
6
- * `printMeta` (size, material, finish, edition size).
6
+ * EXPORTS:
7
+ * productsStickersSeedDataempty array
7
8
  *
8
- * Prices in INR paise (₹1 = 100 paise).
9
+ * @tag domain:products,stickers
10
+ * @tag layer:seed
11
+ * @tag pattern:none
12
+ * @tag access:server-only
13
+ * @tag consumers:seed/index.ts,seed/runner.ts,SeedPanel
14
+ * @tag sideEffects:none
9
15
  */
10
- import { PRODUCT_FIELDS } from "../constants/field-names";
11
- import { buildSearchTokens } from "../utils/search-tokens";
12
- import { seedExtMedia } from "./_helpers/media";
13
- function withTokens(p) {
14
- return {
15
- tags: [],
16
- featured: false,
17
- ...p,
18
- searchTokens: buildSearchTokens(p.title, p.description, p.brand, p.brandSlug, p.categoryNames, p.tags, p.features, p.condition),
19
- };
20
- }
21
- const NOW = new Date();
22
- const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
23
- const _rawStickersSeedData = [
24
- {
25
- id: "sticker-pokemon-starter-vinyl-sheet",
26
- slug: "sticker-pokemon-starter-vinyl-sheet",
27
- title: "Pokémon Starters Vinyl Sticker Sheet — Waterproof",
28
- description: "Die-cut waterproof vinyl sticker sheet featuring the classic starter trio. Fan art, unofficial. Great for water bottles, laptops, and binders.",
29
- categorySlugs: ["category-trading-cards"],
30
- categoryNames: ["Trading Cards"],
31
- brand: "Independent Artist",
32
- price: 19900,
33
- currency: "INR",
34
- stockQuantity: 80,
35
- availableQuantity: 80,
36
- mainImage: seedExtMedia("https://picsum.photos/seed/sticker-pokemon-sheet/800/800"),
37
- images: [seedExtMedia("https://picsum.photos/seed/sticker-pokemon-sheet/800/800")],
38
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
39
- storeId: "store-pokemon-palace",
40
- storeName: "Pokemon Palace",
41
- tags: ["stickers", "pokemon", "vinyl", "waterproof"],
42
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
43
- printMeta: { size: "10x15 cm sheet", material: "Vinyl", finish: "Glossy" },
44
- allowOffers: false,
45
- createdAt: daysAgo(5),
46
- updatedAt: daysAgo(1),
47
- },
48
- {
49
- id: "sticker-gundam-mech-holographic-pack",
50
- slug: "sticker-gundam-mech-holographic-pack",
51
- title: "Gundam Mech Squad Holographic Sticker Pack (10 pcs)",
52
- description: "Pack of 10 individual holographic stickers featuring iconic Gundam mech silhouettes. Weatherproof, laptop and helmet safe.",
53
- categorySlugs: ["category-model-kits"],
54
- categoryNames: ["Model Kits"],
55
- brand: "Independent Artist",
56
- price: 29900,
57
- currency: "INR",
58
- stockQuantity: 60,
59
- availableQuantity: 60,
60
- mainImage: seedExtMedia("https://picsum.photos/seed/sticker-gundam-pack/800/800"),
61
- images: [seedExtMedia("https://picsum.photos/seed/sticker-gundam-pack/800/800")],
62
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
63
- storeId: "store-gundam-galaxy",
64
- storeName: "Gundam Galaxy",
65
- tags: ["stickers", "gundam", "holographic", "pack"],
66
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
67
- printMeta: { size: "5x5 cm each (x10)", material: "Vinyl", finish: "Holographic" },
68
- isPromoted: true,
69
- allowOffers: false,
70
- createdAt: daysAgo(3),
71
- updatedAt: daysAgo(1),
72
- },
73
- {
74
- id: "sticker-beyblade-burst-die-cut-set",
75
- slug: "sticker-beyblade-burst-die-cut-set",
76
- title: "Beyblade Burst Die-Cut Sticker Set (6 pcs)",
77
- description: "Set of 6 die-cut matte stickers of fan-favorite Beyblade Burst tops. Perfect for notebooks and arena cases.",
78
- categorySlugs: ["category-spinning-tops"],
79
- categoryNames: ["Spinning Tops"],
80
- brand: "Independent Artist",
81
- price: 14900,
82
- currency: "INR",
83
- stockQuantity: 100,
84
- availableQuantity: 100,
85
- mainImage: seedExtMedia("https://picsum.photos/seed/sticker-beyblade-set/800/800"),
86
- images: [seedExtMedia("https://picsum.photos/seed/sticker-beyblade-set/800/800")],
87
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
88
- storeId: "store-beyblade-arena",
89
- storeName: "Beyblade Arena",
90
- tags: ["stickers", "beyblade", "die-cut", "set"],
91
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
92
- printMeta: { size: "4x4 cm each (x6)", material: "Matte vinyl", finish: "Matte" },
93
- allowOffers: false,
94
- createdAt: daysAgo(7),
95
- updatedAt: daysAgo(2),
96
- },
97
- {
98
- id: "sticker-hotwheels-retro-logo-pack",
99
- slug: "sticker-hotwheels-retro-logo-pack",
100
- title: "Hot Wheels Retro Logo Sticker Pack (5 pcs)",
101
- description: "Retro-style Hot Wheels-inspired logo stickers, glossy finish, weatherproof for toolboxes and diecast display cases.",
102
- categorySlugs: ["category-diecast-vehicles"],
103
- categoryNames: ["Diecast Vehicles"],
104
- brand: "Independent Artist",
105
- price: 12900,
106
- currency: "INR",
107
- stockQuantity: 120,
108
- availableQuantity: 120,
109
- mainImage: seedExtMedia("https://picsum.photos/seed/sticker-hotwheels-pack/800/800"),
110
- images: [seedExtMedia("https://picsum.photos/seed/sticker-hotwheels-pack/800/800")],
111
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
112
- storeId: "store-diecast-depot",
113
- storeName: "Diecast Depot",
114
- tags: ["stickers", "hot-wheels", "retro", "pack"],
115
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
116
- printMeta: { size: "6x4 cm each (x5)", material: "Vinyl", finish: "Glossy" },
117
- allowOffers: false,
118
- createdAt: daysAgo(1),
119
- updatedAt: daysAgo(1),
120
- },
121
- ];
122
- export const productsStickersSeedData = _rawStickersSeedData.map((p) => withTokens({
123
- ...p,
124
- listingType: "stickers",
125
- }));
16
+ export const productsStickersSeedData = [];
@@ -1,5 +1,5 @@
1
1
  /*
2
- * WHY: Seeds the singleton site-settings doc for YGO marketplace.
2
+ * WHY: Seeds the singleton site-settings doc for a generic collectibles marketplace.
3
3
  * WHAT: 1 document — branding, SEO, features, legal, commissions, credentials, ad inventory.
4
4
  *
5
5
  * EXPORTS:
@@ -48,10 +48,10 @@ const adPlacementsSeed = [
48
48
  export const siteSettingsSeedData = {
49
49
  id: "global",
50
50
  siteName: "LetItRip",
51
- motto: "India's #1 Yu-Gi-Oh! Collectibles Marketplace Singles · Sealed · Graded Slabs · Accessories",
51
+ motto: "India's Marketplace for Collectibles — Action Figures, Trading Cards, Spinning Tops & More",
52
52
  announcementBar: {
53
53
  enabled: true,
54
- message: "🎉 Up to 25% off LOB singles + Free deck box with 2 sealed booster boxes — See Events for codes",
54
+ message: "🎉 Up to 25% off select listings + free shipping on orders above ₹999 — See Events for codes",
55
55
  },
56
56
  watermark: {
57
57
  type: "text",
@@ -118,29 +118,27 @@ export const siteSettingsSeedData = {
118
118
  replyTo: "support@letitrip.in",
119
119
  },
120
120
  seo: {
121
- defaultTitle: "LetItRip — Yu-Gi-Oh! Singles, Sealed Booster Boxes, PSA Graded Slabs | India's YGO Marketplace",
122
- defaultDescription: "Buy, sell, and auction Yu-Gi-Oh! trading cards on India's premier Duel Monsters marketplace. LOB 1st Edition, Blue-Eyes White Dragon, Dark Magician, Exodia — singles, sealed products, PSA/BGS/CGC graded slabs from verified sellers.",
121
+ defaultTitle: "LetItRip — Buy, Sell & Auction Collectibles | India's Collectibles Marketplace",
122
+ defaultDescription: "Buy, sell, and auction collectibles on India's marketplace for enthusiasts action figures, trading cards, spinning tops, model kits, and more from verified sellers.",
123
123
  keywords: [
124
- "yugioh cards india",
125
- "yu-gi-oh tcg india",
126
- "blue-eyes white dragon",
127
- "dark magician",
128
- "exodia the forbidden one",
129
- "lob 1st edition",
130
- "psa graded slabs",
131
- "sealed booster box",
132
124
  "collectibles marketplace india",
133
- "live auction yugioh",
134
- "pre-order konami",
135
- "duel monsters cards",
125
+ "action figures india",
126
+ "trading cards india",
127
+ "spinning tops collectibles",
128
+ "model kits india",
129
+ "vintage collectibles",
130
+ "live auction collectibles",
131
+ "pre-order collectibles",
132
+ "verified sellers india",
133
+ "buy sell collectibles online",
136
134
  ],
137
- ogImage: seedExtMedia("https://images.ygoprodeck.com/images/cards/cropped/46986414.jpg"),
135
+ ogImage: seedExtMedia("https://picsum.photos/seed/site-og-image-collectibles-20260101/1200/630"),
138
136
  },
139
137
  features: [
140
138
  {
141
139
  id: "feature_001",
142
140
  name: "Huge Catalogue",
143
- description: "200+ Yu-Gi-Oh! Cards & Sealed Products",
141
+ description: "Curated Collectibles Across Every Category",
144
142
  icon: "📦",
145
143
  enabled: true,
146
144
  },
@@ -154,7 +152,7 @@ export const siteSettingsSeedData = {
154
152
  {
155
153
  id: "feature_003",
156
154
  name: "Authentic Only",
157
- description: "Verified Genuine Konami Products",
155
+ description: "Verified Sellers, Verified Products",
158
156
  icon: "✅",
159
157
  enabled: true,
160
158
  },
@@ -168,14 +166,14 @@ export const siteSettingsSeedData = {
168
166
  {
169
167
  id: "feature_005",
170
168
  name: "Live Auctions",
171
- description: "Bid on Rare & Graded YGO Cards",
169
+ description: "Bid on Rare & Collectible Items",
172
170
  icon: "🏆",
173
171
  enabled: true,
174
172
  },
175
173
  {
176
174
  id: "feature_006",
177
175
  name: "Pre-Orders",
178
- description: "Reserve Upcoming Konami Set Releases",
176
+ description: "Reserve Upcoming Releases Early",
179
177
  icon: "⏳",
180
178
  enabled: true,
181
179
  },
@@ -302,8 +300,8 @@ export const siteSettingsSeedData = {
302
300
  },
303
301
  inventory: [
304
302
  {
305
- id: "ad-homepage-hero-ygo-drop",
306
- name: "YGO Card Drop Hero Banner",
303
+ id: "ad-homepage-hero-new-arrivals",
304
+ name: "New Arrivals Hero Banner",
307
305
  provider: "manual",
308
306
  status: "active",
309
307
  placementIds: ["homepage-hero-banner"],
@@ -313,9 +311,9 @@ export const siteSettingsSeedData = {
313
311
  updatedAt: daysAgo(2).toISOString(),
314
312
  updatedBy: "user-admin-letitrip",
315
313
  creative: {
316
- title: "LOB 1st Edition Mega Drop",
317
- body: "Limited Legend of Blue Eyes singles and sealed packs — this weekend only.",
318
- imageUrl: seedExtMedia("https://images.ygoprodeck.com/images/cards/cropped/89631139.jpg"),
314
+ title: "New Arrivals Mega Drop",
315
+ body: "Limited new arrivals across every category — this weekend only.",
316
+ imageUrl: seedExtMedia("https://picsum.photos/seed/ad-homepage-hero-new-arrivals-20260101/1200/400"),
319
317
  ctaLabel: "Explore Deals",
320
318
  ctaHref: "/promotions/deals",
321
319
  },
@@ -332,16 +330,16 @@ export const siteSettingsSeedData = {
332
330
  updatedAt: daysAgo(1).toISOString(),
333
331
  updatedBy: "user-admin-letitrip",
334
332
  creative: {
335
- title: "Graded Slab Auctions",
336
- body: "PSA 10 Blue-Eyes and Dark Magician auctions ending this week.",
337
- imageUrl: seedExtMedia("https://images.ygoprodeck.com/images/cards/cropped/46986414.jpg"),
333
+ title: "Live Auctions",
334
+ body: "Rare and collectible items auctions ending this week.",
335
+ imageUrl: seedExtMedia("https://picsum.photos/seed/ad-listing-sidebar-auction-boost-20260101/600/600"),
338
336
  ctaLabel: "View Auctions",
339
337
  ctaHref: String(ROUTES.PUBLIC.AUCTIONS),
340
338
  },
341
339
  },
342
340
  {
343
- id: "ad-search-inline-exodia",
344
- name: "Search Spotlight — Exodia",
341
+ id: "ad-search-inline-spotlight",
342
+ name: "Search Spotlight — Featured Picks",
345
343
  provider: "manual",
346
344
  status: "scheduled",
347
345
  placementIds: ["search-inline"],
@@ -353,11 +351,11 @@ export const siteSettingsSeedData = {
353
351
  updatedAt: daysAgo(1).toISOString(),
354
352
  updatedBy: "user-admin-letitrip",
355
353
  creative: {
356
- title: "Complete Your Exodia",
357
- body: "All 5 Forbidden One pieces available LOB to modern reprints.",
358
- imageUrl: seedExtMedia("https://images.ygoprodeck.com/images/cards/cropped/33396948.jpg"),
359
- ctaLabel: "Browse Exodia",
360
- ctaHref: `${String(ROUTES.PUBLIC.PRODUCTS)}?q=exodia`,
354
+ title: "Complete Your Collection",
355
+ body: "Find the pieces you're missingnew listings added daily.",
356
+ imageUrl: seedExtMedia("https://picsum.photos/seed/ad-search-inline-spotlight-20260101/600/600"),
357
+ ctaLabel: "Browse All",
358
+ ctaHref: String(ROUTES.PUBLIC.PRODUCTS),
361
359
  },
362
360
  },
363
361
  ],
@@ -441,34 +439,34 @@ export const siteSettingsSeedData = {
441
439
  /* ── LIGHT THEMES ──────────────────────────────────────── */
442
440
  {
443
441
  id: "crimson-warrior",
444
- name: "Crimson Warrior",
442
+ name: "Teal Tide",
445
443
  mode: "light",
446
444
  builtIn: false,
447
445
  tokens: {
448
- "appkit-color-primary": "#dc2626",
449
- "appkit-color-primary-50": "#fef2f2",
450
- "appkit-color-primary-100": "#fee2e2",
451
- "appkit-color-primary-200": "#fecaca",
452
- "appkit-color-primary-300": "#fca5a5",
453
- "appkit-color-primary-400": "#f87171",
454
- "appkit-color-primary-500": "#ef4444",
455
- "appkit-color-primary-600": "#dc2626",
456
- "appkit-color-primary-700": "#b91c1c",
457
- "appkit-color-primary-800": "#991b1b",
458
- "appkit-color-primary-900": "#7f1d1d",
459
- "appkit-color-primary-950": "#450a0a",
460
- "appkit-color-secondary": "#d97706",
461
- "appkit-color-secondary-50": "#fffbeb",
462
- "appkit-color-secondary-100": "#fef3c7",
463
- "appkit-color-secondary-200": "#fde68a",
464
- "appkit-color-secondary-300": "#fcd34d",
465
- "appkit-color-secondary-400": "#fbbf24",
466
- "appkit-color-secondary-500": "#f59e0b",
467
- "appkit-color-secondary-600": "#d97706",
468
- "appkit-color-secondary-700": "#b45309",
469
- "appkit-color-secondary-800": "#92400e",
470
- "appkit-color-secondary-900": "#78350f",
471
- "appkit-color-secondary-950": "#451a03",
446
+ "appkit-color-primary": "#0d9488",
447
+ "appkit-color-primary-50": "#f0fdfa",
448
+ "appkit-color-primary-100": "#ccfbf1",
449
+ "appkit-color-primary-200": "#99f6e4",
450
+ "appkit-color-primary-300": "#5eead4",
451
+ "appkit-color-primary-400": "#2dd4bf",
452
+ "appkit-color-primary-500": "#14b8a6",
453
+ "appkit-color-primary-600": "#0d9488",
454
+ "appkit-color-primary-700": "#0f766e",
455
+ "appkit-color-primary-800": "#115e59",
456
+ "appkit-color-primary-900": "#134e4a",
457
+ "appkit-color-primary-950": "#042f2e",
458
+ "appkit-color-secondary": "#1a55f2",
459
+ "appkit-color-secondary-50": "#eef5ff",
460
+ "appkit-color-secondary-100": "#d9e8ff",
461
+ "appkit-color-secondary-200": "#bcd4ff",
462
+ "appkit-color-secondary-300": "#8eb9ff",
463
+ "appkit-color-secondary-400": "#5992ff",
464
+ "appkit-color-secondary-500": "#3570fc",
465
+ "appkit-color-secondary-600": "#1a55f2",
466
+ "appkit-color-secondary-700": "#1343de",
467
+ "appkit-color-secondary-800": "#1536b4",
468
+ "appkit-color-secondary-900": "#18318e",
469
+ "appkit-color-secondary-950": "#111e58",
472
470
  "appkit-color-bg": "#fafaf9",
473
471
  "appkit-color-surface": "#ffffff",
474
472
  "appkit-color-surface-elevated": "#ffffff",
@@ -487,9 +485,9 @@ export const siteSettingsSeedData = {
487
485
  "appkit-color-error-surface": "#fef2f2",
488
486
  "appkit-color-info": "#0284c7",
489
487
  "appkit-color-info-surface": "#f0f9ff",
490
- "appkit-color-focus-ring": "#dc2626",
491
- "appkit-shadow-glow": "0 0 0 1px rgba(220,38,38,0.10), 0 4px 16px -4px rgba(220,38,38,0.20)",
492
- "appkit-shadow-glow-pink": "0 0 0 1px rgba(220,38,38,0.12), 0 4px 16px -4px rgba(220,38,38,0.22)",
488
+ "appkit-color-focus-ring": "#0d9488",
489
+ "appkit-shadow-glow": "0 0 0 1px rgba(13,148,136,0.10), 0 4px 16px -4px rgba(13,148,136,0.20)",
490
+ "appkit-shadow-glow-pink": "0 0 0 1px rgba(26,85,242,0.12), 0 4px 16px -4px rgba(26,85,242,0.22)",
493
491
  "appkit-font-display": "var(--font-display), \"Poppins\", ui-sans-serif, system-ui, sans-serif",
494
492
  "appkit-font-sans": "var(--font-body), ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif",
495
493
  "appkit-font-editorial": "var(--font-editorial), \"Georgia\", serif",
@@ -497,7 +495,7 @@ export const siteSettingsSeedData = {
497
495
  },
498
496
  gradients: {
499
497
  brand: "linear-gradient(to right, var(--appkit-color-primary), var(--appkit-color-secondary))",
500
- "brand-tri": "linear-gradient(to right, #dc2626, #d97706, #0284c7)",
498
+ "brand-tri": "linear-gradient(to right, #0d9488, #1a55f2, #2dd4bf)",
501
499
  accent: "linear-gradient(to right, var(--appkit-color-primary-600), var(--appkit-color-secondary-500))",
502
500
  "accent-divider": "linear-gradient(to right, transparent, var(--appkit-color-primary), transparent)",
503
501
  "page-header": "linear-gradient(to bottom right, var(--appkit-color-primary-50), transparent 60%, transparent)",
@@ -676,43 +674,43 @@ export const siteSettingsSeedData = {
676
674
  /* ── DARK THEMES ───────────────────────────────────────── */
677
675
  {
678
676
  id: "shadow-abyss",
679
- name: "Shadow Abyss",
677
+ name: "Teal Depths",
680
678
  mode: "dark",
681
679
  builtIn: false,
682
680
  tokens: {
683
- "appkit-color-primary": "#7c3aed",
684
- "appkit-color-primary-50": "#f5f3ff",
685
- "appkit-color-primary-100": "#ede9fe",
686
- "appkit-color-primary-200": "#ddd6fe",
687
- "appkit-color-primary-300": "#c4b5fd",
688
- "appkit-color-primary-400": "#a78bfa",
689
- "appkit-color-primary-500": "#8b5cf6",
690
- "appkit-color-primary-600": "#7c3aed",
691
- "appkit-color-primary-700": "#6d28d9",
692
- "appkit-color-primary-800": "#5b21b6",
693
- "appkit-color-primary-900": "#4c1d95",
694
- "appkit-color-primary-950": "#2e1065",
695
- "appkit-color-secondary": "#a21caf",
696
- "appkit-color-secondary-50": "#fdf4ff",
697
- "appkit-color-secondary-100": "#fae8ff",
698
- "appkit-color-secondary-200": "#f5d0fe",
699
- "appkit-color-secondary-300": "#f0abfc",
700
- "appkit-color-secondary-400": "#e879f9",
701
- "appkit-color-secondary-500": "#d946ef",
702
- "appkit-color-secondary-600": "#c026d3",
703
- "appkit-color-secondary-700": "#a21caf",
704
- "appkit-color-secondary-800": "#86198f",
705
- "appkit-color-secondary-900": "#701a75",
706
- "appkit-color-secondary-950": "#4a044e",
707
- "appkit-color-bg": "#0a000f",
708
- "appkit-color-surface": "#12001e",
709
- "appkit-color-surface-elevated": "rgba(18,0,30,0.9)",
710
- "appkit-color-surface-input": "rgba(30,0,46,0.6)",
711
- "appkit-color-border": "#2d1b4e",
712
- "appkit-color-border-subtle": "rgba(45,27,78,0.6)",
713
- "appkit-color-text": "#fafafa",
714
- "appkit-color-text-muted": "#c4b5fd",
715
- "appkit-color-text-faint": "#a78bfa",
681
+ "appkit-color-primary": "#14b8a6",
682
+ "appkit-color-primary-50": "#f0fdfa",
683
+ "appkit-color-primary-100": "#ccfbf1",
684
+ "appkit-color-primary-200": "#99f6e4",
685
+ "appkit-color-primary-300": "#5eead4",
686
+ "appkit-color-primary-400": "#2dd4bf",
687
+ "appkit-color-primary-500": "#14b8a6",
688
+ "appkit-color-primary-600": "#0d9488",
689
+ "appkit-color-primary-700": "#0f766e",
690
+ "appkit-color-primary-800": "#115e59",
691
+ "appkit-color-primary-900": "#134e4a",
692
+ "appkit-color-primary-950": "#042f2e",
693
+ "appkit-color-secondary": "#3570fc",
694
+ "appkit-color-secondary-50": "#eef5ff",
695
+ "appkit-color-secondary-100": "#d9e8ff",
696
+ "appkit-color-secondary-200": "#bcd4ff",
697
+ "appkit-color-secondary-300": "#8eb9ff",
698
+ "appkit-color-secondary-400": "#5992ff",
699
+ "appkit-color-secondary-500": "#3570fc",
700
+ "appkit-color-secondary-600": "#1a55f2",
701
+ "appkit-color-secondary-700": "#1343de",
702
+ "appkit-color-secondary-800": "#1536b4",
703
+ "appkit-color-secondary-900": "#18318e",
704
+ "appkit-color-secondary-950": "#111e58",
705
+ "appkit-color-bg": "#042f2e",
706
+ "appkit-color-surface": "#115e59",
707
+ "appkit-color-surface-elevated": "rgba(17,94,89,0.9)",
708
+ "appkit-color-surface-input": "rgba(19,78,74,0.6)",
709
+ "appkit-color-border": "#0f766e",
710
+ "appkit-color-border-subtle": "rgba(19,78,74,0.6)",
711
+ "appkit-color-text": "#f0fdfa",
712
+ "appkit-color-text-muted": "#99f6e4",
713
+ "appkit-color-text-faint": "#5eead4",
716
714
  "appkit-color-text-on-primary": "#ffffff",
717
715
  "appkit-color-success": "#34d399",
718
716
  "appkit-color-success-surface": "rgba(6,78,59,0.25)",
@@ -722,9 +720,9 @@ export const siteSettingsSeedData = {
722
720
  "appkit-color-error-surface": "rgba(127,29,29,0.25)",
723
721
  "appkit-color-info": "#38bdf8",
724
722
  "appkit-color-info-surface": "rgba(12,74,110,0.25)",
725
- "appkit-color-focus-ring": "#a78bfa",
726
- "appkit-shadow-glow": "0 0 0 1px rgba(124,58,237,0.20), 0 4px 16px -4px rgba(124,58,237,0.40)",
727
- "appkit-shadow-glow-pink": "0 0 0 1px rgba(162,28,175,0.20), 0 4px 20px -4px rgba(162,28,175,0.35)",
723
+ "appkit-color-focus-ring": "#5eead4",
724
+ "appkit-shadow-glow": "0 0 0 1px rgba(20,184,166,0.20), 0 4px 16px -4px rgba(20,184,166,0.40)",
725
+ "appkit-shadow-glow-pink": "0 0 0 1px rgba(53,112,252,0.20), 0 4px 20px -4px rgba(53,112,252,0.35)",
728
726
  "appkit-font-display": "var(--font-display), \"Poppins\", ui-sans-serif, system-ui, sans-serif",
729
727
  "appkit-font-sans": "var(--font-body), ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif",
730
728
  "appkit-font-editorial": "var(--font-editorial), \"Georgia\", serif",
@@ -732,19 +730,19 @@ export const siteSettingsSeedData = {
732
730
  },
733
731
  gradients: {
734
732
  brand: "linear-gradient(to right, var(--appkit-color-primary), var(--appkit-color-secondary))",
735
- "brand-tri": "linear-gradient(to right, #7c3aed, #a21caf, #38bdf8)",
733
+ "brand-tri": "linear-gradient(to right, #14b8a6, #3570fc, #38bdf8)",
736
734
  accent: "linear-gradient(to right, var(--appkit-color-info), var(--appkit-color-primary))",
737
735
  "accent-divider": "linear-gradient(to right, transparent, var(--appkit-color-primary), transparent)",
738
- "page-header": "linear-gradient(to bottom right, rgba(124,58,237,0.15), transparent 60%, transparent)",
739
- "section-warm": "linear-gradient(to bottom right, rgba(162,28,175,0.10), transparent)",
736
+ "page-header": "linear-gradient(to bottom right, rgba(20,184,166,0.15), transparent 60%, transparent)",
737
+ "section-warm": "linear-gradient(to bottom right, rgba(53,112,252,0.10), transparent)",
740
738
  "section-cool": "linear-gradient(to bottom right, rgba(56,189,248,0.10), transparent)",
741
- "section-mesh": "radial-gradient(ellipse at top, rgba(124,58,237,0.15), var(--appkit-color-surface), rgba(56,189,248,0.08))",
739
+ "section-mesh": "radial-gradient(ellipse at top, rgba(20,184,166,0.15), var(--appkit-color-surface), rgba(56,189,248,0.08))",
742
740
  "accent-banner": "linear-gradient(to right, var(--appkit-color-primary), var(--appkit-color-secondary))",
743
741
  promotion: "linear-gradient(to bottom right, var(--appkit-color-error), var(--appkit-color-primary), var(--appkit-color-warning))",
744
- spotlight: "linear-gradient(to bottom right, rgba(124,58,237,0.12), var(--appkit-color-bg), rgba(56,189,248,0.10))",
742
+ spotlight: "linear-gradient(to bottom right, rgba(20,184,166,0.12), var(--appkit-color-bg), rgba(56,189,248,0.10))",
745
743
  "whatsapp-card": "linear-gradient(to bottom right, var(--appkit-color-success), var(--appkit-color-success))",
746
744
  glass: "linear-gradient(to bottom right, color-mix(in srgb, var(--appkit-color-surface) 85%, transparent), color-mix(in srgb, var(--appkit-color-surface) 65%, transparent))",
747
- "card-indigo": "linear-gradient(to bottom right, rgba(124,58,237,0.12), var(--appkit-color-surface), var(--appkit-color-surface))",
745
+ "card-indigo": "linear-gradient(to bottom right, rgba(20,184,166,0.12), var(--appkit-color-surface), var(--appkit-color-surface))",
748
746
  "card-teal": "linear-gradient(to bottom right, rgba(56,189,248,0.10), var(--appkit-color-surface), var(--appkit-color-surface))",
749
747
  "card-amber": "linear-gradient(to bottom right, var(--appkit-color-warning-surface), var(--appkit-color-surface), var(--appkit-color-surface))",
750
748
  "card-rose": "linear-gradient(to bottom right, var(--appkit-color-error-surface), var(--appkit-color-surface), var(--appkit-color-surface))",
@@ -1,6 +1,6 @@
1
1
  /*
2
- * WHY: Seeds store pickup/warehouse addresses for YGO marketplace — 2 stores.
3
- * WHAT: 5 addresses: 2 LetItRip Official (HQ + warehouse), 3 Kaiba Corp (HQ + pickup + storage).
2
+ * WHY: Seeds store pickup/warehouse addresses for the minimal Beyblade-focused demo — 2 stores.
3
+ * WHAT: 3 addresses: 2 LetItRip Official (HQ + warehouse), 1 Beyblade Arena (pickup point).
4
4
  *
5
5
  * EXPORTS:
6
6
  * StoreAddressSeedData (interface)
@@ -52,52 +52,20 @@ export const storeAddressesSeedData = [
52
52
  createdAt: daysAgo(350),
53
53
  updatedAt: daysAgo(30),
54
54
  },
55
- // ── store-kaiba-corp-cards ────────────────────────────────────────────────
55
+ // ── store-beyblade-arena ─────────────────────────────────────────────────
56
56
  {
57
- id: "saddr-kaiba-corp-main-001",
58
- storeSlug: "store-kaiba-corp-cards",
59
- label: "Kaiba Corp Card Vault HQ",
60
- fullName: "Seto Kaiba",
61
- phone: `${_phonePrefix}9876501001`,
62
- addressLine1: "Flat 4B, Andheri Collectibles Centre, Link Road",
63
- addressLine2: "Andheri West",
64
- landmark: "Near Andheri Metro Station",
65
- city: "Mumbai",
66
- state: "Maharashtra",
67
- postalCode: "400053",
57
+ id: "saddr-beyblade-arena-main-001",
58
+ storeSlug: "store-beyblade-arena",
59
+ label: "Beyblade Arena Pickup Point",
60
+ fullName: "Tyson Blader",
61
+ phone: `${_phonePrefix}9876502001`,
62
+ addressLine1: "Shop 9, T Nagar Collectibles Market, Pondy Bazaar",
63
+ city: "Chennai",
64
+ state: "Tamil Nadu",
65
+ postalCode: "600017",
68
66
  country: _locale.countryName,
69
67
  isDefault: true,
70
- createdAt: daysAgo(380),
71
- updatedAt: daysAgo(5),
72
- },
73
- {
74
- id: "saddr-kaiba-corp-pickup-002",
75
- storeSlug: "store-kaiba-corp-cards",
76
- label: "Local Pickup Point",
77
- fullName: "Seto Kaiba",
78
- phone: `${_phonePrefix}9876501001`,
79
- addressLine1: "Shop 12, Juhu Card Market, Juhu Tara Road",
80
- city: "Mumbai",
81
- state: "Maharashtra",
82
- postalCode: "400049",
83
- country: _locale.countryName,
84
- isDefault: false,
85
- createdAt: daysAgo(300),
86
- updatedAt: daysAgo(10),
87
- },
88
- {
89
- id: "saddr-kaiba-corp-storage-003",
90
- storeSlug: "store-kaiba-corp-cards",
91
- label: "Climate-Controlled Storage",
92
- fullName: "Seto Kaiba",
93
- phone: `${_phonePrefix}9876501001`,
94
- addressLine1: "Unit 14, Noida Industrial Estate, Sector 63",
95
- city: "Noida",
96
- state: "Uttar Pradesh",
97
- postalCode: "201301",
98
- country: _locale.countryName,
99
- isDefault: false,
100
- createdAt: daysAgo(280),
101
- updatedAt: daysAgo(15),
68
+ createdAt: daysAgo(150),
69
+ updatedAt: daysAgo(4),
102
70
  },
103
71
  ];