@mohasinac/appkit 4.1.1 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_internal/client/features/maintenance/index.d.ts +2 -0
- package/dist/_internal/client/features/maintenance/index.js +1 -0
- package/dist/_internal/client/features/maintenance/views/CloudLogsListView.d.ts +9 -0
- package/dist/_internal/client/features/maintenance/views/CloudLogsListView.js +55 -0
- package/dist/_internal/server/features/auctions/index.d.ts +1 -1
- package/dist/_internal/server/features/auctions/index.js +1 -1
- package/dist/_internal/server/features/auctions/service.js +2 -2
- package/dist/_internal/server/features/checkout/actions.d.ts +15 -0
- package/dist/_internal/server/features/checkout/actions.js +245 -182
- package/dist/_internal/server/features/maintenance/cloud-logs-data.d.ts +50 -0
- package/dist/_internal/server/features/maintenance/cloud-logs-data.js +152 -0
- package/dist/_internal/server/functions/scheduled.d.ts +2 -1
- package/dist/_internal/server/functions/scheduled.js +9 -1
- package/dist/_internal/server/jobs/core/jobRunners.js +10 -0
- package/dist/_internal/server/jobs/core/newsletterExport.d.ts +15 -0
- package/dist/_internal/server/jobs/core/newsletterExport.js +43 -0
- package/dist/_internal/server/jobs/core/onOrderCreate.d.ts +4 -12
- package/dist/_internal/server/jobs/core/onOrderCreate.js +3 -3
- package/dist/_internal/server/jobs/core/onOrderStatusChange.d.ts +2 -0
- package/dist/_internal/server/jobs/core/onOrderStatusChange.js +1 -0
- package/dist/_internal/server/jobs/core/onProductWrite.js +14 -2
- package/dist/_internal/server/jobs/core/paymentWindowTimeout.js +1 -0
- package/dist/_internal/server/jobs/core/pendingOrderTimeout.js +1 -0
- package/dist/_internal/server/jobs/core/revenueRollup.d.ts +13 -0
- package/dist/_internal/server/jobs/core/revenueRollup.js +22 -0
- package/dist/_internal/server/jobs/core/whatsappNotify.d.ts +35 -0
- package/dist/_internal/server/jobs/core/whatsappNotify.js +82 -0
- package/dist/_internal/server/jobs/handlers/index.d.ts +1 -0
- package/dist/_internal/server/jobs/handlers/index.js +1 -0
- package/dist/_internal/server/jobs/handlers/revenueRollup.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/revenueRollup.js +2 -0
- package/dist/_internal/shared/features/auctions/config.d.ts +1 -1
- package/dist/_internal/shared/features/auctions/config.js +1 -1
- package/dist/_internal/shared/features/auctions/schema.js +1 -1
- package/dist/_internal/shared/features/cart/schema.js +2 -2
- package/dist/_internal/shared/features/checkout/config.d.ts +7 -0
- package/dist/_internal/shared/features/checkout/config.js +7 -0
- package/dist/_internal/shared/features/events/schema.js +1 -1
- package/dist/_internal/shared/features/orders/schema.js +1 -1
- package/dist/_internal/shared/features/products/schema.js +3 -3
- package/dist/_internal/shared/features/promotions/schema.js +3 -3
- package/dist/_internal/shared/fees/calculator.d.ts +32 -7
- package/dist/_internal/shared/fees/calculator.js +25 -0
- package/dist/client.d.ts +4 -4
- package/dist/client.js +4 -2
- package/dist/constants/api-endpoints.d.ts +9 -6
- package/dist/constants/api-endpoints.js +3 -2
- package/dist/contracts/client-payment-gateway.d.ts +1 -2
- package/dist/features/about/components/AboutView.d.ts +6 -16
- package/dist/features/about/components/AboutView.js +3 -3
- package/dist/features/about/components/FeesView.js +18 -0
- package/dist/features/about/index.d.ts +2 -1
- package/dist/features/about/schemas/firestore.d.ts +47 -0
- package/dist/features/about/schemas/firestore.js +6 -0
- package/dist/features/about/schemas/index.d.ts +210 -0
- package/dist/features/about/schemas/index.js +45 -0
- package/dist/features/account/hooks/useProfile.js +3 -0
- package/dist/features/admin/actions/notification-actions.d.ts +4 -1
- package/dist/features/admin/actions/notification-actions.js +56 -10
- package/dist/features/admin/components/AdminAdsView.js +1 -1
- package/dist/features/admin/components/AdminCarouselGroupEditorView.d.ts +6 -0
- package/dist/features/admin/components/AdminCarouselGroupEditorView.js +50 -0
- package/dist/features/admin/components/AdminCartsView.js +16 -3
- package/dist/features/admin/components/AdminCouponEditorView.js +2 -2
- package/dist/features/admin/components/AdminCouponsView.js +14 -4
- package/dist/features/admin/components/AdminEmployeeEditorView.js +1 -42
- package/dist/features/admin/components/AdminMediaView.js +1 -1
- package/dist/features/admin/components/AdminNewsletterView.js +42 -11
- package/dist/features/admin/components/AdminNotificationsView.js +31 -19
- package/dist/features/admin/components/AdminOrdersView.js +7 -0
- package/dist/features/admin/components/AdminPayoutsView.js +18 -3
- package/dist/features/admin/components/AdminProductsView.js +17 -2
- package/dist/features/admin/components/AdminReviewsView.js +16 -2
- package/dist/features/admin/components/AdminScammersView.js +7 -0
- package/dist/features/admin/components/AdminSectionsView.js +4 -0
- package/dist/features/admin/components/AdminSiteConfigGuideView.js +1 -1
- package/dist/features/admin/components/AdminSiteSettingsView.js +127 -8
- package/dist/features/admin/components/AdminStoreEditorView.d.ts +2 -1
- package/dist/features/admin/components/AdminStoreEditorView.js +4 -4
- package/dist/features/admin/components/AdminStoresView.js +1 -1
- package/dist/features/admin/components/AdminSupportTicketDetailView.js +23 -5
- package/dist/features/admin/components/AdminSupportTicketsView.js +20 -2
- package/dist/features/admin/components/AdminTesterChecklistItemEditorView.js +4 -1
- package/dist/features/admin/components/AdminTesterChecklistView.js +8 -0
- package/dist/features/admin/components/index.d.ts +2 -0
- package/dist/features/admin/components/index.js +1 -0
- package/dist/features/admin/constants/filter-tabs.d.ts +55 -41
- package/dist/features/admin/constants/filter-tabs.js +55 -27
- package/dist/features/admin/repository/analytics-rollup.repository.d.ts +25 -0
- package/dist/features/admin/repository/analytics-rollup.repository.js +31 -0
- package/dist/features/admin/repository/site-settings.repository.js +8 -1
- package/dist/features/admin/schemas/firestore.d.ts +46 -0
- package/dist/features/admin/schemas/firestore.js +62 -24
- package/dist/features/auctions/actions/bid-actions.js +1 -1
- package/dist/features/auctions/components/AuctionDetailPageView.js +2 -2
- package/dist/features/auctions/components/AuctionsListView.js +8 -1
- package/dist/features/auth/components/LoginForm.js +2 -2
- package/dist/features/auth/components/RegisterForm.js +2 -2
- package/dist/features/auth/permissions/constants.d.ts +16 -0
- package/dist/features/auth/permissions/constants.js +53 -0
- package/dist/features/auth/schemas/firestore.js +1 -0
- package/dist/features/blog/components/BlogFilters.js +1 -1
- package/dist/features/cart/schemas/firestore.d.ts +1 -1
- package/dist/features/categories/schemas/firestore.d.ts +1 -1
- package/dist/features/consultation/components/ConsultationForm.js +1 -1
- package/dist/features/events/components/EventFilters.js +2 -0
- package/dist/features/homepage/components/WelcomeSection.js +2 -2
- package/dist/features/layout/BackToTop.d.ts +9 -5
- package/dist/features/layout/BackToTop.js +17 -21
- package/dist/features/layout/TitleBarLayout.d.ts +2 -2
- package/dist/features/layout/TitleBarLayout.js +4 -4
- package/dist/features/media/AvatarUpload.js +7 -3
- package/dist/features/media/MediaVideo.js +1 -1
- package/dist/features/media/finalize.d.ts +9 -13
- package/dist/features/media/finalize.js +23 -74
- package/dist/features/media/server.d.ts +1 -1
- package/dist/features/media/server.js +1 -1
- package/dist/features/orders/actions/refund-actions.js +1 -0
- package/dist/features/orders/hooks/useOrders.js +16 -4
- package/dist/features/orders/schemas/firestore.d.ts +19 -5
- package/dist/features/payments/schemas/firestore.d.ts +2 -2
- package/dist/features/pre-orders/components/PreOrdersListView.js +7 -0
- package/dist/features/products/components/ArtStickersListView.js +5 -0
- package/dist/features/products/components/ProductDetailPageView.d.ts +7 -1
- package/dist/features/products/components/ProductForm.js +14 -1
- package/dist/features/products/components/ProductsIndexPageView.js +7 -0
- package/dist/features/products/constants/action-defs.d.ts +29 -3
- package/dist/features/products/constants/action-defs.js +77 -1
- package/dist/features/products/schemas/firestore.d.ts +1 -1
- package/dist/features/products/schemas/product-templates.d.ts +1 -1
- package/dist/features/products/types/index.d.ts +4 -0
- package/dist/features/scams/schemas/index.js +2 -2
- package/dist/features/search/components/Search.js +3 -3
- package/dist/features/seller/components/SellerAuctionsView.js +27 -2
- package/dist/features/seller/components/SellerOrdersView.js +2 -2
- package/dist/features/seller/components/SellerPayoutsView.js +24 -10
- package/dist/features/seller/components/SellerPreOrdersView.js +12 -4
- package/dist/features/seller/components/SellerPrizeDrawsView.js +23 -5
- package/dist/features/seller/components/SellerProductShell.d.ts +2 -0
- package/dist/features/seller/components/SellerProductShell.js +1 -1
- package/dist/features/seller/components/SellerProductsView.js +8 -6
- package/dist/features/seller/components/SellerReviewsView.js +27 -6
- package/dist/features/seller/components/index.d.ts +0 -2
- package/dist/features/seller/components/index.js +0 -1
- package/dist/features/stores/components/StoreListingsGuideView.js +2 -1
- package/dist/features/stores/components/StoreProductsView.js +1 -1
- package/dist/features/stores/schemas/firestore.d.ts +11 -0
- package/dist/features/stores/schemas/firestore.js +5 -0
- package/dist/features/stores/schemas/index.d.ts +2 -2
- package/dist/features/tester/actions/checklist-item-actions.d.ts +6 -0
- package/dist/features/tester/actions/checklist-item-actions.js +2 -0
- package/dist/features/tester/components/AdminTesterFeedbackIssuesView.js +13 -2
- package/dist/features/tester/components/AdminTesterFeedbackListView.js +2 -1
- package/dist/features/tester/components/AdminTesterFeedbackReportView.js +9 -5
- package/dist/features/tester/components/TesterHubView.js +34 -21
- package/dist/features/tester/repository/tester-checklist-item.repository.js +1 -0
- package/dist/features/tester/repository/tester-checklist-response.repository.d.ts +18 -4
- package/dist/features/tester/repository/tester-checklist-response.repository.js +43 -8
- package/dist/features/tester/schemas/firestore.d.ts +8 -3
- package/dist/features/tester/schemas/firestore.js +6 -0
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +21 -9
- package/dist/features/tester/utils/phases.d.ts +31 -0
- package/dist/features/tester/utils/phases.js +46 -0
- package/dist/features/whatsapp-bot/components/SellerWhatsAppSettingsView.js +1 -1
- package/dist/features/whatsapp-bot/helpers/whatsapp.d.ts +10 -1
- package/dist/features/whatsapp-bot/helpers/whatsapp.js +47 -0
- package/dist/features/whatsapp-bot/types/index.d.ts +20 -1
- package/dist/features/wishlist/types/index.d.ts +3 -0
- package/dist/index.d.ts +15 -6
- package/dist/index.js +19 -9
- package/dist/next/components/NotFoundView.js +2 -1
- package/dist/next/routing/route-map.d.ts +6 -12
- package/dist/next/routing/route-map.js +3 -4
- package/dist/providers/db-firebase/admin.d.ts +1 -0
- package/dist/providers/db-firebase/admin.js +1 -1
- package/dist/repositories/index.d.ts +2 -0
- package/dist/repositories/index.js +1 -0
- package/dist/schemas/registry.d.ts +2 -2
- package/dist/seed/addresses-seed-data.js +18 -18
- package/dist/seed/bids-seed-data.js +4 -4
- package/dist/seed/blog-posts-seed-data.js +82 -82
- package/dist/seed/carousel-slides-seed-data.js +14 -10
- package/dist/seed/carousels-seed-data.js +3 -3
- package/dist/seed/cart-seed-data.js +92 -92
- package/dist/seed/claimed-coupons-seed-data.js +10 -10
- package/dist/seed/conversations-seed-data.js +75 -75
- package/dist/seed/coupon-usage-seed-data.js +12 -12
- package/dist/seed/coupons-seed-data.js +41 -41
- package/dist/seed/events-seed-data.js +105 -105
- package/dist/seed/grouped-listings-seed-data.d.ts +2 -137
- package/dist/seed/grouped-listings-seed-data.js +79 -143
- package/dist/seed/history-seed-data.js +38 -38
- package/dist/seed/homepage-sections-seed-data.js +9 -9
- package/dist/seed/notifications-seed-data.js +56 -56
- package/dist/seed/offers-seed-data.js +91 -91
- package/dist/seed/orders-seed-data.js +121 -106
- package/dist/seed/payouts-seed-data.js +42 -42
- package/dist/seed/products-auctions-seed-data.js +10 -2
- package/dist/seed/products-standard-seed-data.js +40 -8
- package/dist/seed/reviews-seed-data.js +42 -23
- package/dist/seed/scammers-seed-data.js +22 -22
- package/dist/seed/sessions-seed-data.js +7 -7
- package/dist/seed/shipments-seed-data.js +10 -10
- package/dist/seed/site-settings-seed-data.js +89 -0
- package/dist/seed/store-addresses-seed-data.js +2 -2
- package/dist/seed/store-extensions-seed-data.js +93 -93
- package/dist/seed/stores-seed-data.js +2 -0
- package/dist/seed/support-tickets-seed-data.js +47 -47
- package/dist/seed/users-seed-data.js +55 -89
- package/dist/seed/wishlists-seed-data.js +22 -22
- package/dist/server.d.ts +4 -3
- package/dist/server.js +7 -7
- package/dist/styles.css +1 -1
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/components/PageLoader.js +8 -3
- package/dist/ui/components/Select.d.ts +8 -1
- package/dist/ui/components/Select.js +2 -2
- package/dist/ui/components/SiteMark.d.ts +23 -0
- package/dist/ui/components/SiteMark.js +76 -0
- package/dist/ui/index.d.ts +2 -0
- package/dist/ui/index.js +1 -0
- package/dist/validation/schemas.d.ts +0 -2
- package/dist/validation/schemas.js +0 -2
- package/package.json +1 -1
- package/scripts/seed-cli.mjs +17 -15
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* WHY: Seeds purchase orders representing completed transactions across
|
|
2
|
+
* WHY: Seeds purchase orders representing completed transactions across Beyblade marketplace buyers and sellers.
|
|
3
3
|
* WHAT: Exports 50 orders across 3 buyer/store combos. All statuses distributed. Order IDs: order-{itemCount}-{YYYYMMDD}-{rand6}.
|
|
4
4
|
*
|
|
5
5
|
* EXPORTS:
|
|
@@ -14,63 +14,77 @@
|
|
|
14
14
|
*/
|
|
15
15
|
const NOW = new Date();
|
|
16
16
|
const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
|
|
17
|
-
|
|
17
|
+
// Deterministic 6-char base36 suffix derived from a seed string — replaces the
|
|
18
|
+
// previous Math.random() suffix, which regenerated a fresh id on every module
|
|
19
|
+
// import (every `load`/`status`/`delete` CLI invocation), so re-running `load`
|
|
20
|
+
// never actually updated existing docs and `status`/`delete` could never find
|
|
21
|
+
// what a previous `load` had written. A simple string hash keeps ids stable
|
|
22
|
+
// across runs on the same day while remaining unique per (itemCount, daysBack, seed).
|
|
23
|
+
function seededSuffix(seed) {
|
|
24
|
+
let hash = 0;
|
|
25
|
+
for (let i = 0; i < seed.length; i++) {
|
|
26
|
+
hash = (Math.imul(31, hash) + seed.charCodeAt(i)) | 0;
|
|
27
|
+
}
|
|
28
|
+
// Force unsigned before base36 so the suffix is always 6 lowercase alnum chars.
|
|
29
|
+
return (hash >>> 0).toString(36).padStart(6, "0").slice(0, 6);
|
|
30
|
+
}
|
|
31
|
+
const generateOrderId = (itemCount, daysBack, seed) => {
|
|
18
32
|
const date = new Date(NOW.getTime() - daysBack * 86400000);
|
|
19
33
|
const yyyymmdd = date.toISOString().split("T")[0].replace(/-/g, "");
|
|
20
|
-
const rand =
|
|
34
|
+
const rand = seededSuffix(`${itemCount}-${daysBack}-${seed}`);
|
|
21
35
|
return `order-${itemCount}-${yyyymmdd}-${rand}`;
|
|
22
36
|
};
|
|
23
37
|
const USER_NAMES = {
|
|
24
|
-
"user-yugi-muto": "
|
|
25
|
-
"user-admin-letitrip": "
|
|
26
|
-
"user-seto-kaiba": "
|
|
38
|
+
"user-yugi-muto": "Mock User 3",
|
|
39
|
+
"user-admin-letitrip": "Mock User 1",
|
|
40
|
+
"user-seto-kaiba": "Mock User 2",
|
|
27
41
|
};
|
|
28
42
|
const USER_EMAILS = {
|
|
29
|
-
"user-yugi-muto": "
|
|
43
|
+
"user-yugi-muto": "rehan.sheikh@gmail.com",
|
|
30
44
|
"user-admin-letitrip": "admin@letitrip.in",
|
|
31
|
-
"user-seto-kaiba": "
|
|
45
|
+
"user-seto-kaiba": "vivaan.kapoor@gmail.com",
|
|
32
46
|
};
|
|
33
47
|
const _rawOrdersSeedData = [
|
|
34
48
|
// ────────────────────────────────────────────────────────────────────────────
|
|
35
|
-
//
|
|
49
|
+
// Rehan buying from Beyblade Arena — 4 explicit orders
|
|
36
50
|
// ────────────────────────────────────────────────────────────────────────────
|
|
37
51
|
{
|
|
38
|
-
id: generateOrderId(2, 45),
|
|
39
|
-
productId: "product-
|
|
40
|
-
productTitle: "
|
|
52
|
+
id: generateOrderId(2, 45, "yugi-dranzer-pegasus"),
|
|
53
|
+
productId: "product-beyblade-original-dranzer-s",
|
|
54
|
+
productTitle: "Beyblade Original Dranzer S",
|
|
41
55
|
userId: "user-yugi-muto",
|
|
42
|
-
userName: "
|
|
43
|
-
userEmail: "
|
|
44
|
-
storeId: "store-
|
|
56
|
+
userName: "Mock User 3",
|
|
57
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
58
|
+
storeId: "store-beyblade-arena",
|
|
45
59
|
items: [
|
|
46
60
|
{
|
|
47
|
-
productId: "product-
|
|
48
|
-
productTitle: "
|
|
61
|
+
productId: "product-beyblade-original-dranzer-s",
|
|
62
|
+
productTitle: "Beyblade Original Dranzer S",
|
|
49
63
|
listingType: "standard",
|
|
50
64
|
quantity: 1,
|
|
51
|
-
unitPrice:
|
|
52
|
-
totalPrice:
|
|
65
|
+
unitPrice: 1799,
|
|
66
|
+
totalPrice: 1799,
|
|
53
67
|
},
|
|
54
68
|
{
|
|
55
|
-
productId: "
|
|
56
|
-
productTitle: "
|
|
69
|
+
productId: "product-beyblade-metal-storm-pegasus",
|
|
70
|
+
productTitle: "Beyblade Metal Storm Pegasus",
|
|
57
71
|
listingType: "standard",
|
|
58
72
|
quantity: 1,
|
|
59
|
-
unitPrice:
|
|
60
|
-
totalPrice:
|
|
73
|
+
unitPrice: 2499,
|
|
74
|
+
totalPrice: 2499,
|
|
61
75
|
},
|
|
62
76
|
],
|
|
63
77
|
quantity: 2,
|
|
64
|
-
unitPrice:
|
|
65
|
-
totalPrice:
|
|
78
|
+
unitPrice: 1799,
|
|
79
|
+
totalPrice: 4298,
|
|
66
80
|
currency: "INR",
|
|
67
81
|
status: "delivered",
|
|
68
82
|
paymentStatus: "paid",
|
|
69
83
|
paymentMethod: "cash",
|
|
70
84
|
paymentId: "pay-yugi-kaiba-001",
|
|
71
85
|
shippingAddress: "addr-yugi-home",
|
|
72
|
-
trackingNumber: "
|
|
73
|
-
shippingCarrier: "
|
|
86
|
+
trackingNumber: "IN-0001-ARENA-DELIVERED",
|
|
87
|
+
shippingCarrier: "India Post",
|
|
74
88
|
shippingDate: daysAgo(30),
|
|
75
89
|
deliveryDate: daysAgo(20),
|
|
76
90
|
orderDate: daysAgo(45),
|
|
@@ -78,40 +92,40 @@ const _rawOrdersSeedData = [
|
|
|
78
92
|
updatedAt: daysAgo(20),
|
|
79
93
|
},
|
|
80
94
|
{
|
|
81
|
-
id: generateOrderId(1, 40),
|
|
82
|
-
productId: "
|
|
83
|
-
productTitle: "
|
|
95
|
+
id: generateOrderId(1, 40, "yugi-metal-flame-sagittario"),
|
|
96
|
+
productId: "product-beyblade-metal-flame-sagittario",
|
|
97
|
+
productTitle: "Beyblade Metal Flame Sagittario",
|
|
84
98
|
userId: "user-yugi-muto",
|
|
85
|
-
userName: "
|
|
86
|
-
userEmail: "
|
|
87
|
-
storeId: "store-
|
|
99
|
+
userName: "Mock User 3",
|
|
100
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
101
|
+
storeId: "store-beyblade-arena",
|
|
88
102
|
quantity: 1,
|
|
89
|
-
unitPrice:
|
|
90
|
-
totalPrice:
|
|
103
|
+
unitPrice: 2299,
|
|
104
|
+
totalPrice: 2299,
|
|
91
105
|
currency: "INR",
|
|
92
106
|
status: "shipped",
|
|
93
107
|
paymentStatus: "paid",
|
|
94
108
|
paymentMethod: "cash",
|
|
95
109
|
paymentId: "pay-yugi-kaiba-002",
|
|
96
110
|
shippingAddress: "addr-yugi-home",
|
|
97
|
-
trackingNumber: "
|
|
98
|
-
shippingCarrier: "
|
|
111
|
+
trackingNumber: "IN-0002-ARENA-SHIPPED",
|
|
112
|
+
shippingCarrier: "India Post",
|
|
99
113
|
shippingDate: daysAgo(8),
|
|
100
114
|
orderDate: daysAgo(40),
|
|
101
115
|
createdAt: daysAgo(40),
|
|
102
116
|
updatedAt: daysAgo(8),
|
|
103
117
|
},
|
|
104
118
|
{
|
|
105
|
-
id: generateOrderId(3, 35),
|
|
106
|
-
productId: "
|
|
107
|
-
productTitle: "
|
|
119
|
+
id: generateOrderId(3, 35, "yugi-x-bx08-wave"),
|
|
120
|
+
productId: "preorder-beyblade-x-bx-08-wave",
|
|
121
|
+
productTitle: "Beyblade X BX-08 Wave",
|
|
108
122
|
userId: "user-yugi-muto",
|
|
109
|
-
userName: "
|
|
110
|
-
userEmail: "
|
|
111
|
-
storeId: "store-
|
|
123
|
+
userName: "Mock User 3",
|
|
124
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
125
|
+
storeId: "store-beyblade-arena",
|
|
112
126
|
quantity: 3,
|
|
113
|
-
unitPrice:
|
|
114
|
-
totalPrice:
|
|
127
|
+
unitPrice: 899,
|
|
128
|
+
totalPrice: 2697,
|
|
115
129
|
currency: "INR",
|
|
116
130
|
status: "processing",
|
|
117
131
|
paymentStatus: "paid",
|
|
@@ -123,16 +137,16 @@ const _rawOrdersSeedData = [
|
|
|
123
137
|
updatedAt: daysAgo(2),
|
|
124
138
|
},
|
|
125
139
|
{
|
|
126
|
-
id: generateOrderId(1, 30),
|
|
127
|
-
productId: "
|
|
128
|
-
productTitle: "
|
|
140
|
+
id: generateOrderId(1, 30, "yugi-burst-valkyrie"),
|
|
141
|
+
productId: "product-beyblade-burst-valkyrie",
|
|
142
|
+
productTitle: "Beyblade Burst Valkyrie",
|
|
129
143
|
userId: "user-yugi-muto",
|
|
130
|
-
userName: "
|
|
131
|
-
userEmail: "
|
|
132
|
-
storeId: "store-
|
|
144
|
+
userName: "Mock User 3",
|
|
145
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
146
|
+
storeId: "store-beyblade-arena",
|
|
133
147
|
quantity: 1,
|
|
134
|
-
unitPrice:
|
|
135
|
-
totalPrice:
|
|
148
|
+
unitPrice: 1899,
|
|
149
|
+
totalPrice: 1899,
|
|
136
150
|
currency: "INR",
|
|
137
151
|
status: "pending",
|
|
138
152
|
paymentStatus: "pending",
|
|
@@ -144,19 +158,19 @@ const _rawOrdersSeedData = [
|
|
|
144
158
|
updatedAt: daysAgo(30),
|
|
145
159
|
},
|
|
146
160
|
// ────────────────────────────────────────────────────────────────────────────
|
|
147
|
-
//
|
|
161
|
+
// Rehan buying from LetItRip Official
|
|
148
162
|
// ────────────────────────────────────────────────────────────────────────────
|
|
149
163
|
{
|
|
150
|
-
id: generateOrderId(1, 28),
|
|
151
|
-
productId: "
|
|
152
|
-
productTitle: "
|
|
164
|
+
id: generateOrderId(1, 28, "yugi-mystery-box"),
|
|
165
|
+
productId: "prizedraw-beyblade-mystery-box",
|
|
166
|
+
productTitle: "Beyblade Mystery Box",
|
|
153
167
|
userId: "user-yugi-muto",
|
|
154
|
-
userName: "
|
|
155
|
-
userEmail: "
|
|
168
|
+
userName: "Mock User 3",
|
|
169
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
156
170
|
storeId: "store-letitrip-official",
|
|
157
171
|
quantity: 1,
|
|
158
|
-
unitPrice:
|
|
159
|
-
totalPrice:
|
|
172
|
+
unitPrice: 499,
|
|
173
|
+
totalPrice: 499,
|
|
160
174
|
currency: "INR",
|
|
161
175
|
status: "delivered",
|
|
162
176
|
paymentStatus: "paid",
|
|
@@ -172,27 +186,27 @@ const _rawOrdersSeedData = [
|
|
|
172
186
|
updatedAt: daysAgo(8),
|
|
173
187
|
},
|
|
174
188
|
// ────────────────────────────────────────────────────────────────────────────
|
|
175
|
-
// Admin buying from
|
|
189
|
+
// Admin buying from Beyblade Arena
|
|
176
190
|
// ────────────────────────────────────────────────────────────────────────────
|
|
177
191
|
{
|
|
178
|
-
id: generateOrderId(1, 50),
|
|
179
|
-
productId: "product-
|
|
180
|
-
productTitle: "
|
|
192
|
+
id: generateOrderId(1, 50, "admin-x-knife-shinobi"),
|
|
193
|
+
productId: "product-beyblade-x-knife-shinobi",
|
|
194
|
+
productTitle: "Beyblade X Knife Shinobi",
|
|
181
195
|
userId: "user-admin-letitrip",
|
|
182
|
-
userName: "
|
|
196
|
+
userName: "Mock User 1",
|
|
183
197
|
userEmail: "admin@letitrip.in",
|
|
184
|
-
storeId: "store-
|
|
198
|
+
storeId: "store-beyblade-arena",
|
|
185
199
|
quantity: 1,
|
|
186
|
-
unitPrice:
|
|
187
|
-
totalPrice:
|
|
200
|
+
unitPrice: 2999,
|
|
201
|
+
totalPrice: 2999,
|
|
188
202
|
currency: "INR",
|
|
189
203
|
status: "delivered",
|
|
190
204
|
paymentStatus: "paid",
|
|
191
205
|
paymentMethod: "cash",
|
|
192
206
|
paymentId: "pay-admin-kaiba-001",
|
|
193
207
|
shippingAddress: "addr-letitrip-hq",
|
|
194
|
-
trackingNumber: "
|
|
195
|
-
shippingCarrier: "DHL
|
|
208
|
+
trackingNumber: "IN-0010-ARENA-DELIVERED",
|
|
209
|
+
shippingCarrier: "DHL India",
|
|
196
210
|
shippingDate: daysAgo(40),
|
|
197
211
|
deliveryDate: daysAgo(30),
|
|
198
212
|
orderDate: daysAgo(50),
|
|
@@ -200,26 +214,26 @@ const _rawOrdersSeedData = [
|
|
|
200
214
|
updatedAt: daysAgo(30),
|
|
201
215
|
},
|
|
202
216
|
// ────────────────────────────────────────────────────────────────────────────
|
|
203
|
-
//
|
|
217
|
+
// Vivaan buying from Beyblade Arena
|
|
204
218
|
// ────────────────────────────────────────────────────────────────────────────
|
|
205
219
|
{
|
|
206
|
-
id: generateOrderId(1, 55),
|
|
207
|
-
productId: "product-
|
|
208
|
-
productTitle: "
|
|
220
|
+
id: generateOrderId(1, 55, "kaiba-driger-v"),
|
|
221
|
+
productId: "product-beyblade-original-driger-v",
|
|
222
|
+
productTitle: "Beyblade Original Driger V",
|
|
209
223
|
userId: "user-seto-kaiba",
|
|
210
|
-
userName: "
|
|
211
|
-
userEmail: "
|
|
212
|
-
storeId: "store-
|
|
224
|
+
userName: "Mock User 2",
|
|
225
|
+
userEmail: "vivaan.kapoor@gmail.com",
|
|
226
|
+
storeId: "store-beyblade-arena",
|
|
213
227
|
quantity: 1,
|
|
214
|
-
unitPrice:
|
|
215
|
-
totalPrice:
|
|
228
|
+
unitPrice: 1999,
|
|
229
|
+
totalPrice: 1999,
|
|
216
230
|
currency: "INR",
|
|
217
231
|
status: "delivered",
|
|
218
232
|
paymentStatus: "paid",
|
|
219
233
|
paymentMethod: "cash",
|
|
220
234
|
paymentId: "pay-kaiba-admin-001",
|
|
221
235
|
shippingAddress: "addr-kaiba-mansion",
|
|
222
|
-
trackingNumber: "IN-0005-
|
|
236
|
+
trackingNumber: "IN-0005-ARENA-DELIVERED",
|
|
223
237
|
shippingCarrier: "India Post",
|
|
224
238
|
shippingDate: daysAgo(12),
|
|
225
239
|
deliveryDate: daysAgo(5),
|
|
@@ -229,13 +243,14 @@ const _rawOrdersSeedData = [
|
|
|
229
243
|
},
|
|
230
244
|
];
|
|
231
245
|
const productPool = [
|
|
232
|
-
{ productId: "product-
|
|
233
|
-
{ productId: "
|
|
234
|
-
{ productId: "product-
|
|
235
|
-
{ productId: "product-
|
|
236
|
-
{ productId: "product-
|
|
237
|
-
{ productId: "
|
|
238
|
-
{ productId: "product-
|
|
246
|
+
{ productId: "product-beyblade-original-dranzer-s", productTitle: "Beyblade Original Dranzer S", unitPrice: 1799 },
|
|
247
|
+
{ productId: "product-beyblade-original-driger-v", productTitle: "Beyblade Original Driger V", unitPrice: 1999 },
|
|
248
|
+
{ productId: "product-beyblade-metal-storm-pegasus", productTitle: "Beyblade Metal Storm Pegasus", unitPrice: 2499 },
|
|
249
|
+
{ productId: "product-beyblade-metal-flame-sagittario", productTitle: "Beyblade Metal Flame Sagittario", unitPrice: 2299 },
|
|
250
|
+
{ productId: "product-beyblade-burst-valkyrie", productTitle: "Beyblade Burst Valkyrie", unitPrice: 1899 },
|
|
251
|
+
{ productId: "product-beyblade-burst-regalia-genesis", productTitle: "Beyblade Burst Regalia Genesis", unitPrice: 3499 },
|
|
252
|
+
{ productId: "product-beyblade-x-wizard-arrow", productTitle: "Beyblade X Wizard Arrow", unitPrice: 1699 },
|
|
253
|
+
{ productId: "product-beyblade-x-knife-shinobi", productTitle: "Beyblade X Knife Shinobi", unitPrice: 2999 },
|
|
239
254
|
];
|
|
240
255
|
const statuses = [
|
|
241
256
|
"pending",
|
|
@@ -260,10 +275,10 @@ const paymentStatuses = {
|
|
|
260
275
|
returned: "refunded",
|
|
261
276
|
};
|
|
262
277
|
const buyerStoreMatrix = [
|
|
263
|
-
{ userId: "user-yugi-muto", storeId: "store-
|
|
278
|
+
{ userId: "user-yugi-muto", storeId: "store-beyblade-arena", addressId: "addr-yugi-home" },
|
|
264
279
|
{ userId: "user-yugi-muto", storeId: "store-letitrip-official", addressId: "addr-yugi-home" },
|
|
265
|
-
{ userId: "user-admin-letitrip", storeId: "store-
|
|
266
|
-
{ userId: "user-seto-kaiba", storeId: "store-
|
|
280
|
+
{ userId: "user-admin-letitrip", storeId: "store-beyblade-arena", addressId: "addr-letitrip-hq" },
|
|
281
|
+
{ userId: "user-seto-kaiba", storeId: "store-beyblade-arena", addressId: "addr-kaiba-mansion" },
|
|
267
282
|
];
|
|
268
283
|
const expandedOrders = [];
|
|
269
284
|
for (let i = _rawOrdersSeedData.length; i < 50; i++) {
|
|
@@ -273,7 +288,7 @@ for (let i = _rawOrdersSeedData.length; i < 50; i++) {
|
|
|
273
288
|
const daysBack = 70 - i;
|
|
274
289
|
const qty = (i % 3) + 1;
|
|
275
290
|
expandedOrders.push({
|
|
276
|
-
id: generateOrderId(qty, daysBack),
|
|
291
|
+
id: generateOrderId(qty, daysBack, `${combo.userId}-${product.productId}-${i}`),
|
|
277
292
|
productId: product.productId,
|
|
278
293
|
productTitle: product.productTitle,
|
|
279
294
|
userId: combo.userId,
|
|
@@ -299,15 +314,15 @@ for (let i = _rawOrdersSeedData.length; i < 50; i++) {
|
|
|
299
314
|
// cashOrderPendingProof: buyer submitted proof, admin has NOT yet verified.
|
|
300
315
|
const cashOrderPendingProof = {
|
|
301
316
|
id: "order-1-20260729-cash01",
|
|
302
|
-
productId: "product-
|
|
303
|
-
productTitle: "
|
|
317
|
+
productId: "product-beyblade-original-dranzer-s",
|
|
318
|
+
productTitle: "Beyblade Original Dranzer S",
|
|
304
319
|
userId: "user-yugi-muto",
|
|
305
|
-
userName: "
|
|
306
|
-
userEmail: "
|
|
307
|
-
storeId: "store-
|
|
320
|
+
userName: "Mock User 3",
|
|
321
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
322
|
+
storeId: "store-beyblade-arena",
|
|
308
323
|
quantity: 1,
|
|
309
|
-
unitPrice:
|
|
310
|
-
totalPrice:
|
|
324
|
+
unitPrice: 1799,
|
|
325
|
+
totalPrice: 1799,
|
|
311
326
|
currency: "INR",
|
|
312
327
|
status: "pending",
|
|
313
328
|
paymentStatus: "pending",
|
|
@@ -323,15 +338,15 @@ const cashOrderPendingProof = {
|
|
|
323
338
|
};
|
|
324
339
|
const cashOrderVerified = {
|
|
325
340
|
id: "order-1-20260729-cash02",
|
|
326
|
-
productId: "product-
|
|
327
|
-
productTitle: "
|
|
341
|
+
productId: "product-beyblade-metal-storm-pegasus",
|
|
342
|
+
productTitle: "Beyblade Metal Storm Pegasus",
|
|
328
343
|
userId: "user-yugi-muto",
|
|
329
|
-
userName: "
|
|
330
|
-
userEmail: "
|
|
331
|
-
storeId: "store-
|
|
344
|
+
userName: "Mock User 3",
|
|
345
|
+
userEmail: "rehan.sheikh@gmail.com",
|
|
346
|
+
storeId: "store-beyblade-arena",
|
|
332
347
|
quantity: 1,
|
|
333
|
-
unitPrice:
|
|
334
|
-
totalPrice:
|
|
348
|
+
unitPrice: 2499,
|
|
349
|
+
totalPrice: 2499,
|
|
335
350
|
currency: "INR",
|
|
336
351
|
status: "processing",
|
|
337
352
|
paymentStatus: "paid",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* WHY: Seeds payouts for
|
|
2
|
+
* WHY: Seeds payouts for the Beyblade marketplace — 2 stores, all status states.
|
|
3
3
|
* WHAT: 10 payouts: COMPLETED (5), PROCESSING (1), PENDING (2 — one with refund deduction), FAILED (2).
|
|
4
4
|
*
|
|
5
5
|
* EXPORTS:
|
|
@@ -29,24 +29,24 @@ function seedDeduction(orderId, refundId, refundedAmount, reason, daysAgoN) {
|
|
|
29
29
|
}
|
|
30
30
|
export const payoutsSeedData = [
|
|
31
31
|
// ── COMPLETED (×5) ──────────────────────────────────────────────────────
|
|
32
|
-
// 1.
|
|
32
|
+
// 1. Beyblade Arena — Jan 2026
|
|
33
33
|
{
|
|
34
|
-
id: "payout-
|
|
35
|
-
storeId: "store-
|
|
36
|
-
sellerName: "
|
|
37
|
-
sellerEmail: "
|
|
34
|
+
id: "payout-beyblade-arena-jan-2026-completed",
|
|
35
|
+
storeId: "store-beyblade-arena",
|
|
36
|
+
sellerName: "Beyblade Arena",
|
|
37
|
+
sellerEmail: "tyson@beybladearena.in",
|
|
38
38
|
...payoutAmounts(15000),
|
|
39
39
|
platformFeeRate: DEFAULT_PLATFORM_FEE_RATE,
|
|
40
40
|
currency: _CURRENCY,
|
|
41
41
|
status: PAYOUT_FIELDS.STATUS_VALUES.PAID,
|
|
42
42
|
paymentMethod: "bank_transfer",
|
|
43
43
|
bankAccount: {
|
|
44
|
-
accountHolderName: "
|
|
44
|
+
accountHolderName: "Mock User 6",
|
|
45
45
|
accountNumberMasked: "****3724",
|
|
46
46
|
ifscCode: "HDFC0001122",
|
|
47
47
|
bankName: "HDFC Bank",
|
|
48
48
|
},
|
|
49
|
-
notes: "January 2026 payout —
|
|
49
|
+
notes: "January 2026 payout — Original series singles + Metal Fight lot delivered",
|
|
50
50
|
adminNote: "Bank transfer successful. Ref: TXN-2026-01-4521",
|
|
51
51
|
orderIds: ["order-1-20260115-a1b2c3"],
|
|
52
52
|
requestedAt: daysAgo(95),
|
|
@@ -66,7 +66,7 @@ export const payoutsSeedData = [
|
|
|
66
66
|
status: PAYOUT_FIELDS.STATUS_VALUES.PAID,
|
|
67
67
|
paymentMethod: "upi",
|
|
68
68
|
upiId: "letitrip@upi",
|
|
69
|
-
notes: "January 2026 payout —
|
|
69
|
+
notes: "January 2026 payout — Mystery box + pre-order deposit orders",
|
|
70
70
|
adminNote: "UPI credited. Ref: UPI-2026-01-9983",
|
|
71
71
|
orderIds: ["order-2-20260120-d4e5f6"],
|
|
72
72
|
requestedAt: daysAgo(90),
|
|
@@ -74,24 +74,24 @@ export const payoutsSeedData = [
|
|
|
74
74
|
createdAt: daysAgo(90),
|
|
75
75
|
updatedAt: daysAgo(88),
|
|
76
76
|
},
|
|
77
|
-
// 3.
|
|
77
|
+
// 3. Beyblade Arena — Mar 2026
|
|
78
78
|
{
|
|
79
|
-
id: "payout-
|
|
80
|
-
storeId: "store-
|
|
81
|
-
sellerName: "
|
|
82
|
-
sellerEmail: "
|
|
79
|
+
id: "payout-beyblade-arena-mar-2026-completed",
|
|
80
|
+
storeId: "store-beyblade-arena",
|
|
81
|
+
sellerName: "Beyblade Arena",
|
|
82
|
+
sellerEmail: "tyson@beybladearena.in",
|
|
83
83
|
...payoutAmounts(22000),
|
|
84
84
|
platformFeeRate: DEFAULT_PLATFORM_FEE_RATE,
|
|
85
85
|
currency: _CURRENCY,
|
|
86
86
|
status: PAYOUT_FIELDS.STATUS_VALUES.PAID,
|
|
87
87
|
paymentMethod: "bank_transfer",
|
|
88
88
|
bankAccount: {
|
|
89
|
-
accountHolderName: "
|
|
89
|
+
accountHolderName: "Mock User 6",
|
|
90
90
|
accountNumberMasked: "****3724",
|
|
91
91
|
ifscCode: "HDFC0001122",
|
|
92
92
|
bankName: "HDFC Bank",
|
|
93
93
|
},
|
|
94
|
-
notes: "March 2026 payout —
|
|
94
|
+
notes: "March 2026 payout — Metal Lightning L-Drago auction settlement + Burst lot",
|
|
95
95
|
adminNote: "Bank transfer successful. Ref: TXN-2026-03-8874",
|
|
96
96
|
orderIds: ["order-3-20260310-g7h8i9"],
|
|
97
97
|
requestedAt: daysAgo(50),
|
|
@@ -111,7 +111,7 @@ export const payoutsSeedData = [
|
|
|
111
111
|
status: PAYOUT_FIELDS.STATUS_VALUES.PAID,
|
|
112
112
|
paymentMethod: "upi",
|
|
113
113
|
upiId: "letitrip@upi",
|
|
114
|
-
notes: "March 2026 payout —
|
|
114
|
+
notes: "March 2026 payout — Accessory orders",
|
|
115
115
|
adminNote: "UPI credited. Ref: UPI-2026-03-7765",
|
|
116
116
|
orderIds: ["order-4-20260315-j1k2l3"],
|
|
117
117
|
requestedAt: daysAgo(40),
|
|
@@ -119,19 +119,19 @@ export const payoutsSeedData = [
|
|
|
119
119
|
createdAt: daysAgo(40),
|
|
120
120
|
updatedAt: daysAgo(38),
|
|
121
121
|
},
|
|
122
|
-
// 5.
|
|
122
|
+
// 5. Beyblade Arena — Apr 2026
|
|
123
123
|
{
|
|
124
|
-
id: "payout-
|
|
125
|
-
storeId: "store-
|
|
126
|
-
sellerName: "
|
|
127
|
-
sellerEmail: "
|
|
124
|
+
id: "payout-beyblade-arena-apr-2026-completed",
|
|
125
|
+
storeId: "store-beyblade-arena",
|
|
126
|
+
sellerName: "Beyblade Arena",
|
|
127
|
+
sellerEmail: "tyson@beybladearena.in",
|
|
128
128
|
...payoutAmounts(9800),
|
|
129
129
|
platformFeeRate: DEFAULT_PLATFORM_FEE_RATE,
|
|
130
130
|
currency: _CURRENCY,
|
|
131
131
|
status: PAYOUT_FIELDS.STATUS_VALUES.PAID,
|
|
132
132
|
paymentMethod: "upi",
|
|
133
|
-
upiId: "
|
|
134
|
-
notes: "April 2026 payout —
|
|
133
|
+
upiId: "beybladearena@upi",
|
|
134
|
+
notes: "April 2026 payout — X-series wave lot + starter singles batch",
|
|
135
135
|
adminNote: "UPI credited. Ref: UPI-2026-04-3341",
|
|
136
136
|
orderIds: ["order-5-20260420-m4n5o6"],
|
|
137
137
|
requestedAt: daysAgo(20),
|
|
@@ -152,7 +152,7 @@ export const payoutsSeedData = [
|
|
|
152
152
|
status: PAYOUT_FIELDS.STATUS_VALUES.PROCESSING,
|
|
153
153
|
paymentMethod: "upi",
|
|
154
154
|
upiId: "letitrip@upi",
|
|
155
|
-
notes: "May 2026 payout —
|
|
155
|
+
notes: "May 2026 payout — Mystery box sealed batch + accessories batch",
|
|
156
156
|
adminNote: "UPI transfer queued. Processing batch run.",
|
|
157
157
|
orderIds: ["order-6-20260510-p7q8r9"],
|
|
158
158
|
requestedAt: daysAgo(3),
|
|
@@ -161,27 +161,27 @@ export const payoutsSeedData = [
|
|
|
161
161
|
updatedAt: daysAgo(1),
|
|
162
162
|
},
|
|
163
163
|
// ── PENDING (×2) ────────────────────────────────────────────────────────
|
|
164
|
-
// 7.
|
|
164
|
+
// 7. Beyblade Arena — May 2026 — with partial refund deduction
|
|
165
165
|
{
|
|
166
|
-
id: "payout-
|
|
167
|
-
storeId: "store-
|
|
168
|
-
sellerName: "
|
|
169
|
-
sellerEmail: "
|
|
166
|
+
id: "payout-beyblade-arena-may-2026-pending",
|
|
167
|
+
storeId: "store-beyblade-arena",
|
|
168
|
+
sellerName: "Beyblade Arena",
|
|
169
|
+
sellerEmail: "tyson@beybladearena.in",
|
|
170
170
|
...payoutAmounts(12000),
|
|
171
171
|
platformFeeRate: DEFAULT_PLATFORM_FEE_RATE,
|
|
172
172
|
currency: _CURRENCY,
|
|
173
173
|
status: PAYOUT_FIELDS.STATUS_VALUES.PENDING,
|
|
174
174
|
paymentMethod: "bank_transfer",
|
|
175
175
|
bankAccount: {
|
|
176
|
-
accountHolderName: "
|
|
176
|
+
accountHolderName: "Mock User 6",
|
|
177
177
|
accountNumberMasked: "****3724",
|
|
178
178
|
ifscCode: "HDFC0001122",
|
|
179
179
|
bankName: "HDFC Bank",
|
|
180
180
|
},
|
|
181
|
-
notes: "May 2026 payout —
|
|
181
|
+
notes: "May 2026 payout — Burst Valkyrie + Metal Storm Pegasus batch",
|
|
182
182
|
orderIds: ["order-7-20260515-s1t2u3"],
|
|
183
183
|
refundDeductions: [
|
|
184
|
-
seedDeduction("order-7-20260515-s1t2u3", "refund-order-7-partial-001", 500, "
|
|
184
|
+
seedDeduction("order-7-20260515-s1t2u3", "refund-order-7-partial-001", 500, "Piece arrived with a chipped bit — buyer requested partial refund", 1),
|
|
185
185
|
],
|
|
186
186
|
netAmount: payoutAmounts(12000).amount - 475,
|
|
187
187
|
requestedAt: daysAgo(1),
|
|
@@ -200,7 +200,7 @@ export const payoutsSeedData = [
|
|
|
200
200
|
status: PAYOUT_FIELDS.STATUS_VALUES.PENDING,
|
|
201
201
|
paymentMethod: "upi",
|
|
202
202
|
upiId: "letitrip@upi",
|
|
203
|
-
notes: "May 2026 payout — Pre-order deposits +
|
|
203
|
+
notes: "May 2026 payout — Pre-order deposits + accessories",
|
|
204
204
|
orderIds: ["order-8-20260518-v4w5x6"],
|
|
205
205
|
requestedAt: daysAgo(1),
|
|
206
206
|
createdAt: daysAgo(1),
|
|
@@ -219,7 +219,7 @@ export const payoutsSeedData = [
|
|
|
219
219
|
status: PAYOUT_FIELDS.STATUS_VALUES.FAILED,
|
|
220
220
|
paymentMethod: "bank_transfer",
|
|
221
221
|
bankAccount: {
|
|
222
|
-
accountHolderName: "
|
|
222
|
+
accountHolderName: "Mock User 1",
|
|
223
223
|
accountNumberMasked: "****1234",
|
|
224
224
|
ifscCode: "SBIN0001234",
|
|
225
225
|
bankName: "State Bank of India",
|
|
@@ -232,19 +232,19 @@ export const payoutsSeedData = [
|
|
|
232
232
|
createdAt: daysAgo(155),
|
|
233
233
|
updatedAt: daysAgo(153),
|
|
234
234
|
},
|
|
235
|
-
// 10.
|
|
235
|
+
// 10. Beyblade Arena — Jan 2026 — UPI limit exceeded
|
|
236
236
|
{
|
|
237
|
-
id: "payout-
|
|
238
|
-
storeId: "store-
|
|
239
|
-
sellerName: "
|
|
240
|
-
sellerEmail: "
|
|
237
|
+
id: "payout-beyblade-arena-jan-2026-failed",
|
|
238
|
+
storeId: "store-beyblade-arena",
|
|
239
|
+
sellerName: "Beyblade Arena",
|
|
240
|
+
sellerEmail: "tyson@beybladearena.in",
|
|
241
241
|
...payoutAmounts(14499),
|
|
242
242
|
platformFeeRate: DEFAULT_PLATFORM_FEE_RATE,
|
|
243
243
|
currency: _CURRENCY,
|
|
244
244
|
status: PAYOUT_FIELDS.STATUS_VALUES.FAILED,
|
|
245
245
|
paymentMethod: "upi",
|
|
246
|
-
upiId: "
|
|
247
|
-
notes: "January 2026 payout —
|
|
246
|
+
upiId: "beybladearena@upi",
|
|
247
|
+
notes: "January 2026 payout — Original Dragoon Storm auction settlement",
|
|
248
248
|
adminNote: "UPI transaction failed — daily limit of ₹1,00,000 exceeded. Switched to bank transfer for resubmission.",
|
|
249
249
|
orderIds: ["order-10-20260125-b1c2d3"],
|
|
250
250
|
requestedAt: daysAgo(110),
|
|
@@ -46,7 +46,11 @@ const _rawProductsAuctionsSeedData = [
|
|
|
46
46
|
bidsHaveStarted: true,
|
|
47
47
|
isSold: false,
|
|
48
48
|
mainImage: seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-original-dragoon-storm-1-20260101/900/900"),
|
|
49
|
-
images: [
|
|
49
|
+
images: [
|
|
50
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-original-dragoon-storm-1-20260101/900/900"),
|
|
51
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-original-dragoon-storm-2-20260101/900/900"),
|
|
52
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-original-dragoon-storm-3-20260101/900/900"),
|
|
53
|
+
],
|
|
50
54
|
status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
|
|
51
55
|
condition: PRODUCT_FIELDS.CONDITION_VALUES.NEW,
|
|
52
56
|
storeId: "store-beyblade-arena",
|
|
@@ -72,7 +76,11 @@ const _rawProductsAuctionsSeedData = [
|
|
|
72
76
|
bidsHaveStarted: true,
|
|
73
77
|
isSold: false,
|
|
74
78
|
mainImage: seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-metal-lightning-l-drago-1-20260101/900/900"),
|
|
75
|
-
images: [
|
|
79
|
+
images: [
|
|
80
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-metal-lightning-l-drago-1-20260101/900/900"),
|
|
81
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-metal-lightning-l-drago-2-20260101/900/900"),
|
|
82
|
+
seedExtMedia("https://picsum.photos/seed/auction-image-beyblade-metal-lightning-l-drago-3-20260101/900/900"),
|
|
83
|
+
],
|
|
76
84
|
status: PRODUCT_FIELDS.STATUS_VALUES.PUBLISHED,
|
|
77
85
|
condition: PRODUCT_FIELDS.CONDITION_VALUES.GOOD,
|
|
78
86
|
storeId: "store-beyblade-arena",
|