@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
@@ -24,8 +24,8 @@ export const homepageSectionsSeedData = [
24
24
  enabled: true,
25
25
  config: {
26
26
  h1: "India's Largest Collectibles Marketplace",
27
- subtitle: "Trading Cards · Action Figures · Diecast · Beyblades · Model Kits · Vintage Rare",
28
- description: "Buy, sell, and auction collectibles from verified sellers across India. Pokémon, Yu-Gi-Oh!, Hot Wheels, Gundam, Beyblade, Funko Pop, and thousands more — all with secure escrow payments and authenticity guarantees.",
27
+ subtitle: "Trading Cards · Action Figures · Diecast · Spinning Tops · Model Kits · Vintage Rare",
28
+ description: "Buy, sell, and auction collectibles from verified sellers across India action figures, trading cards, spinning tops, model kits, and thousands more — all with secure escrow payments and authenticity guarantees.",
29
29
  showCTA: true,
30
30
  ctaText: "Start Shopping",
31
31
  ctaLink: String(ROUTES.PUBLIC.PRODUCTS),
@@ -97,7 +97,7 @@ export const homepageSectionsSeedData = [
97
97
  enabled: true,
98
98
  config: {
99
99
  title: "Top Collectibles Brands",
100
- subtitle: "Bandai, Hasbro, Takara-Tomy, Mattel, Konami, Funko, Good Smile, and more",
100
+ subtitle: "Takara-Tomy, Beyblade, and more",
101
101
  maxBrands: 13,
102
102
  autoScroll: true,
103
103
  scrollInterval: 3000,
@@ -166,15 +166,15 @@ export const homepageSectionsSeedData = [
166
166
  enabled: true,
167
167
  config: {
168
168
  height: "md",
169
- backgroundImage: seedExtMedia("https://images.ygoprodeck.com/images/cards/cropped/33396948.jpg"),
169
+ backgroundImage: seedExtMedia("https://picsum.photos/seed/section-banner-beyblade-collection-20260101/1600/500"),
170
170
  content: {
171
- title: "Complete Your Exodia Set",
172
- subtitle: "All 5 pieces available — LOB 1st Edition to modern reprints",
173
- description: "The ultimate Yu-Gi-Oh! flex. Find every Exodia printing on LetItRip.",
171
+ title: "Complete Your Beyblade Collection",
172
+ subtitle: "All 4 generations available — Original to Beyblade X",
173
+ description: "From the original 1999 series to the latest Xtreme Gear generation, find every era of Beyblade on LetItRip.",
174
174
  },
175
175
  buttons: [
176
- { text: "Shop Exodia", link: `${String(ROUTES.PUBLIC.PRODUCTS)}?q=exodia`, variant: "primary" },
177
- { text: "Exodia Guide", link: "/blog/complete-exodia-guide", variant: "outline" },
176
+ { text: "Shop Beyblade", link: `${String(ROUTES.PUBLIC.PRODUCTS)}?q=beyblade`, variant: "primary" },
177
+ { text: "Beyblade Guide", link: "/blog/beyblade-x-vs-burst-comparison", variant: "outline" },
178
178
  ],
179
179
  clickable: false,
180
180
  },
@@ -1,11 +1,2 @@
1
- /**
2
- * Art Products Seed Data (EMI/art-stickers session)
3
- *
4
- * Stored as ProductDocument with listingType: "art". Printed-only fan art —
5
- * standard cart/checkout flow, distinguished by `printMeta` (size, material,
6
- * 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 productsArtSeedData: Partial<ProductDocument>[];
@@ -1,125 +1,16 @@
1
- /**
2
- * Art Products Seed Data (EMI/art-stickers session)
1
+ /*
2
+ * WHY: Art 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: "art". Printed-only fan art —
5
- * standard cart/checkout flow, distinguished by `printMeta` (size, material,
6
- * finish, edition size).
6
+ * EXPORTS:
7
+ * productsArtSeedData empty array
7
8
  *
8
- * Prices in INR paise (₹1 = 100 paise).
9
+ * @tag domain:products,art
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 _rawArtSeedData = [
24
- {
25
- id: "art-charizard-fan-print-a3",
26
- slug: "art-charizard-fan-print-a3",
27
- title: "Charizard Fan Art Print — A3 Matte",
28
- description: "Hand-drawn fan art print of Charizard, digitally reproduced on matte photo paper. Unofficial fan work — not affiliated with or endorsed by the Pokémon Company. Ships flat in a rigid mailer.",
29
- categorySlugs: ["category-trading-cards"],
30
- categoryNames: ["Trading Cards"],
31
- brand: "Independent Artist",
32
- price: 89900,
33
- currency: "INR",
34
- stockQuantity: 25,
35
- availableQuantity: 25,
36
- mainImage: seedExtMedia("https://picsum.photos/seed/art-charizard-print/800/1000"),
37
- images: [seedExtMedia("https://picsum.photos/seed/art-charizard-print/800/1000")],
38
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
39
- storeId: "store-tokyo-toys-india",
40
- storeName: "Tokyo Toys India",
41
- tags: ["art", "fan-art", "charizard", "print", "a3"],
42
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
43
- printMeta: { size: "A3 (297x420mm)", material: "Matte photo paper", finish: "Matte", editionSize: 100 },
44
- allowOffers: false,
45
- createdAt: daysAgo(6),
46
- updatedAt: daysAgo(2),
47
- },
48
- {
49
- id: "art-gundam-rx78-poster-12x18",
50
- slug: "art-gundam-rx78-poster-12x18",
51
- title: "RX-78-2 Gundam Illustration Poster — 12x18 Glossy",
52
- description: "Original illustration of the RX-78-2 Gundam in dynamic pose, printed glossy on 200gsm poster stock. Great for a model-kit display shelf backdrop.",
53
- categorySlugs: ["category-model-kits"],
54
- categoryNames: ["Model Kits"],
55
- brand: "Independent Artist",
56
- price: 129900,
57
- currency: "INR",
58
- stockQuantity: 15,
59
- availableQuantity: 15,
60
- mainImage: seedExtMedia("https://picsum.photos/seed/art-gundam-poster/800/1200"),
61
- images: [seedExtMedia("https://picsum.photos/seed/art-gundam-poster/800/1200")],
62
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
63
- storeId: "store-gundam-galaxy",
64
- storeName: "Gundam Galaxy",
65
- tags: ["art", "gundam", "poster", "illustration"],
66
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
67
- printMeta: { size: "12x18 in", material: "200gsm poster paper", finish: "Glossy" },
68
- allowOffers: false,
69
- createdAt: daysAgo(4),
70
- updatedAt: daysAgo(1),
71
- },
72
- {
73
- id: "art-beyblade-burst-canvas-square",
74
- slug: "art-beyblade-burst-canvas-square",
75
- title: "Beyblade Burst Arena Canvas Print — 12x12 Square",
76
- description: "Stretched canvas print of a Beyblade Burst arena battle scene. Ready to hang, no framing needed. Limited run of 50 numbered canvases.",
77
- categorySlugs: ["category-spinning-tops"],
78
- categoryNames: ["Spinning Tops"],
79
- brand: "Independent Artist",
80
- price: 249900,
81
- currency: "INR",
82
- stockQuantity: 8,
83
- availableQuantity: 8,
84
- mainImage: seedExtMedia("https://picsum.photos/seed/art-beyblade-canvas/900/900"),
85
- images: [seedExtMedia("https://picsum.photos/seed/art-beyblade-canvas/900/900")],
86
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
87
- storeId: "store-beyblade-arena",
88
- storeName: "Beyblade Arena",
89
- tags: ["art", "beyblade", "canvas", "limited-edition"],
90
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
91
- printMeta: { size: "12x12 in", material: "Stretched canvas", finish: "Matte", editionSize: 50 },
92
- isPromoted: true,
93
- allowOffers: false,
94
- createdAt: daysAgo(9),
95
- updatedAt: daysAgo(3),
96
- },
97
- {
98
- id: "art-hotwheels-redline-mini-print",
99
- slug: "art-hotwheels-redline-mini-print",
100
- title: "Hot Wheels Redline Vintage Ad Art — Mini Print Set (3)",
101
- description: "Set of 3 mini prints (5x7 in each) recreating vintage Hot Wheels Redline-era print ads in a retro poster style. Perfect for a collector's display case.",
102
- categorySlugs: ["category-diecast-vehicles"],
103
- categoryNames: ["Diecast Vehicles"],
104
- brand: "Independent Artist",
105
- price: 69900,
106
- currency: "INR",
107
- stockQuantity: 30,
108
- availableQuantity: 30,
109
- mainImage: seedExtMedia("https://picsum.photos/seed/art-hotwheels-print/700/900"),
110
- images: [seedExtMedia("https://picsum.photos/seed/art-hotwheels-print/700/900")],
111
- status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
112
- storeId: "store-diecast-depot",
113
- storeName: "Diecast Depot",
114
- tags: ["art", "hot-wheels", "retro", "print-set"],
115
- condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
116
- printMeta: { size: "5x7 in (x3)", material: "Matte cardstock", finish: "Matte" },
117
- allowOffers: false,
118
- createdAt: daysAgo(2),
119
- updatedAt: daysAgo(1),
120
- },
121
- ];
122
- export const productsArtSeedData = _rawArtSeedData.map((p) => withTokens({
123
- ...p,
124
- listingType: "art",
125
- }));
16
+ export const productsArtSeedData = [];