@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,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* WHY: Seeds notifications for
|
|
3
|
-
* WHAT: 23 notifications (10
|
|
2
|
+
* WHY: Seeds notifications for the Beyblade collectibles marketplace — covers all notification types across 3 users.
|
|
3
|
+
* WHAT: 23 notifications (10 Rehan, 8 Tyson, 5 Admin). Mix of read/unread, all notification types.
|
|
4
4
|
*
|
|
5
5
|
* EXPORTS:
|
|
6
6
|
* notificationsSeedData — Array of Partial<NotificationDocument> for seed runner
|
|
@@ -18,18 +18,18 @@ const NOW = new Date();
|
|
|
18
18
|
const hoursAgo = (n) => new Date(NOW.getTime() - n * 3600000);
|
|
19
19
|
const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
|
|
20
20
|
export const notificationsSeedData = [
|
|
21
|
-
// ──
|
|
21
|
+
// ── Rehan's notifications (10) — buyer-focused ────────────────────────────
|
|
22
22
|
{
|
|
23
23
|
id: "notif-yugi-outbid-001",
|
|
24
24
|
userId: "user-yugi-muto",
|
|
25
25
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_OUTBID,
|
|
26
26
|
priority: "high",
|
|
27
27
|
title: "You've been outbid!",
|
|
28
|
-
message: "Someone placed a higher bid on
|
|
29
|
-
actionUrl: "/auctions/auction-
|
|
28
|
+
message: "Someone placed a higher bid on Beyblade Original Dragoon Storm. Current bid: ₹4,500.",
|
|
29
|
+
actionUrl: "/auctions/auction-beyblade-original-dragoon-storm",
|
|
30
30
|
actionLabel: "Place New Bid",
|
|
31
31
|
isRead: false,
|
|
32
|
-
relatedId: "auction-
|
|
32
|
+
relatedId: "auction-beyblade-original-dragoon-storm",
|
|
33
33
|
relatedType: "product",
|
|
34
34
|
createdAt: hoursAgo(2),
|
|
35
35
|
updatedAt: hoursAgo(2),
|
|
@@ -40,7 +40,7 @@ export const notificationsSeedData = [
|
|
|
40
40
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_SHIPPED,
|
|
41
41
|
priority: "normal",
|
|
42
42
|
title: "Your order has shipped!",
|
|
43
|
-
message: "Order #order-1-20260515-abc123 —
|
|
43
|
+
message: "Order #order-1-20260515-abc123 — Beyblade Original Dranzer S is on its way. Track your shipment.",
|
|
44
44
|
actionUrl: "/user/orders/order-1-20260515-abc123",
|
|
45
45
|
actionLabel: "Track Order",
|
|
46
46
|
isRead: false,
|
|
@@ -71,11 +71,11 @@ export const notificationsSeedData = [
|
|
|
71
71
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.PRODUCT_AVAILABLE,
|
|
72
72
|
priority: "normal",
|
|
73
73
|
title: "Price drop on your wishlist item!",
|
|
74
|
-
message: "
|
|
75
|
-
actionUrl: "/products/product-
|
|
74
|
+
message: "Beyblade Metal Storm Pegasus dropped from ₹1,999 to ₹1,699. Get it before it's gone.",
|
|
75
|
+
actionUrl: "/products/product-beyblade-metal-storm-pegasus",
|
|
76
76
|
actionLabel: "View Product",
|
|
77
77
|
isRead: false,
|
|
78
|
-
relatedId: "product-
|
|
78
|
+
relatedId: "product-beyblade-metal-storm-pegasus",
|
|
79
79
|
relatedType: "product",
|
|
80
80
|
createdAt: daysAgo(1),
|
|
81
81
|
updatedAt: daysAgo(1),
|
|
@@ -86,12 +86,12 @@ export const notificationsSeedData = [
|
|
|
86
86
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_WON,
|
|
87
87
|
priority: "high",
|
|
88
88
|
title: "Congratulations! You won the auction!",
|
|
89
|
-
message: "You won the
|
|
90
|
-
actionUrl: "/auctions/auction-
|
|
89
|
+
message: "You won the Beyblade Metal Lightning L-Drago auction for ₹5,200. Complete payment within 48 hours.",
|
|
90
|
+
actionUrl: "/auctions/auction-beyblade-metal-lightning-l-drago",
|
|
91
91
|
actionLabel: "Pay Now",
|
|
92
92
|
isRead: true,
|
|
93
93
|
readAt: daysAgo(3),
|
|
94
|
-
relatedId: "auction-
|
|
94
|
+
relatedId: "auction-beyblade-metal-lightning-l-drago",
|
|
95
95
|
relatedType: "product",
|
|
96
96
|
createdAt: daysAgo(5),
|
|
97
97
|
updatedAt: daysAgo(3),
|
|
@@ -101,13 +101,13 @@ export const notificationsSeedData = [
|
|
|
101
101
|
userId: "user-yugi-muto",
|
|
102
102
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.SYSTEM,
|
|
103
103
|
priority: "high",
|
|
104
|
-
title: "You won the
|
|
105
|
-
message: "Congratulations! You've been selected as the winner of the Complete
|
|
106
|
-
actionUrl: "/events/event-won-
|
|
104
|
+
title: "You won the Original Series Raffle!",
|
|
105
|
+
message: "Congratulations! You've been selected as the winner of the Complete Original Series Collectors Set raffle.",
|
|
106
|
+
actionUrl: "/events/event-won-original-set-raffle",
|
|
107
107
|
actionLabel: "View Details",
|
|
108
108
|
isRead: true,
|
|
109
109
|
readAt: daysAgo(4),
|
|
110
|
-
relatedId: "event-won-
|
|
110
|
+
relatedId: "event-won-original-set-raffle",
|
|
111
111
|
relatedType: "product",
|
|
112
112
|
createdAt: daysAgo(5),
|
|
113
113
|
updatedAt: daysAgo(4),
|
|
@@ -118,7 +118,7 @@ export const notificationsSeedData = [
|
|
|
118
118
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.REVIEW_APPROVED,
|
|
119
119
|
priority: "low",
|
|
120
120
|
title: "Your review was published",
|
|
121
|
-
message: "Your review for
|
|
121
|
+
message: "Your review for Beyblade Original Dranzer S has been approved and is now live.",
|
|
122
122
|
isRead: true,
|
|
123
123
|
readAt: daysAgo(6),
|
|
124
124
|
relatedId: "review-1",
|
|
@@ -131,8 +131,8 @@ export const notificationsSeedData = [
|
|
|
131
131
|
userId: "user-yugi-muto",
|
|
132
132
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
|
|
133
133
|
priority: "normal",
|
|
134
|
-
title: "Welcome to LetItRip,
|
|
135
|
-
message: "Your account is ready. Start browsing verified
|
|
134
|
+
title: "Welcome to LetItRip, Rehan!",
|
|
135
|
+
message: "Your account is ready. Start browsing verified Beyblade collectibles from sellers across India.",
|
|
136
136
|
actionUrl: String(ROUTES.PUBLIC.PRODUCTS),
|
|
137
137
|
actionLabel: "Start Shopping",
|
|
138
138
|
isRead: true,
|
|
@@ -145,12 +145,12 @@ export const notificationsSeedData = [
|
|
|
145
145
|
userId: "user-yugi-muto",
|
|
146
146
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_RECEIVED,
|
|
147
147
|
priority: "normal",
|
|
148
|
-
title: "Counter-offer on your
|
|
149
|
-
message: "
|
|
148
|
+
title: "Counter-offer on your Burst Valkyrie bid",
|
|
149
|
+
message: "Beyblade Arena countered your offer of ₹1,200 with ₹1,450 for Beyblade Burst Valkyrie.",
|
|
150
150
|
actionUrl: "/user/offers",
|
|
151
151
|
actionLabel: "View Offer",
|
|
152
152
|
isRead: false,
|
|
153
|
-
relatedId: "product-
|
|
153
|
+
relatedId: "product-beyblade-burst-valkyrie",
|
|
154
154
|
relatedType: "product",
|
|
155
155
|
createdAt: hoursAgo(8),
|
|
156
156
|
updatedAt: hoursAgo(8),
|
|
@@ -160,24 +160,24 @@ export const notificationsSeedData = [
|
|
|
160
160
|
userId: "user-yugi-muto",
|
|
161
161
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.PRODUCT_AVAILABLE,
|
|
162
162
|
priority: "normal",
|
|
163
|
-
title: "New listing from
|
|
164
|
-
message: "
|
|
165
|
-
actionUrl: "/products/product-
|
|
163
|
+
title: "New listing from Beyblade Arena!",
|
|
164
|
+
message: "Beyblade Arena just listed a Beyblade X Wizard Arrow.",
|
|
165
|
+
actionUrl: "/products/product-beyblade-x-wizard-arrow",
|
|
166
166
|
actionLabel: "View",
|
|
167
167
|
isRead: false,
|
|
168
|
-
relatedId: "product-
|
|
168
|
+
relatedId: "product-beyblade-x-wizard-arrow",
|
|
169
169
|
relatedType: "product",
|
|
170
170
|
createdAt: daysAgo(1),
|
|
171
171
|
updatedAt: daysAgo(1),
|
|
172
172
|
},
|
|
173
|
-
// ──
|
|
173
|
+
// ── Tyson's notifications (8) — seller-focused (Beyblade Arena) ───────────
|
|
174
174
|
{
|
|
175
175
|
id: "notif-kaiba-new-order-001",
|
|
176
|
-
userId: "user-
|
|
176
|
+
userId: "user-tyson-blader",
|
|
177
177
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_PLACED,
|
|
178
178
|
priority: "high",
|
|
179
179
|
title: "New order received!",
|
|
180
|
-
message: "
|
|
180
|
+
message: "Mock User 3 ordered Beyblade Original Dranzer S. Ship within 3 business days.",
|
|
181
181
|
actionUrl: "/store/orders",
|
|
182
182
|
actionLabel: "View Order",
|
|
183
183
|
isRead: false,
|
|
@@ -188,11 +188,11 @@ export const notificationsSeedData = [
|
|
|
188
188
|
},
|
|
189
189
|
{
|
|
190
190
|
id: "notif-kaiba-new-review-001",
|
|
191
|
-
userId: "user-
|
|
191
|
+
userId: "user-tyson-blader",
|
|
192
192
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.REVIEW_APPROVED,
|
|
193
193
|
priority: "normal",
|
|
194
194
|
title: "New 5-star review!",
|
|
195
|
-
message: "
|
|
195
|
+
message: "Mock User 3 left a 5-star review: 'Excellent quality and fast shipping!'",
|
|
196
196
|
actionUrl: "/store/reviews",
|
|
197
197
|
actionLabel: "View Review",
|
|
198
198
|
isRead: true,
|
|
@@ -204,26 +204,26 @@ export const notificationsSeedData = [
|
|
|
204
204
|
},
|
|
205
205
|
{
|
|
206
206
|
id: "notif-kaiba-new-bid-001",
|
|
207
|
-
userId: "user-
|
|
207
|
+
userId: "user-tyson-blader",
|
|
208
208
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
|
|
209
209
|
priority: "normal",
|
|
210
210
|
title: "New bid on your auction",
|
|
211
|
-
message: "
|
|
212
|
-
actionUrl: "/store/products/auction-
|
|
211
|
+
message: "Mock User 3 bid ₹4,200 on Beyblade Original Dragoon Storm.",
|
|
212
|
+
actionUrl: "/store/products/auction-beyblade-original-dragoon-storm",
|
|
213
213
|
actionLabel: "View Auction",
|
|
214
214
|
isRead: false,
|
|
215
|
-
relatedId: "auction-
|
|
215
|
+
relatedId: "auction-beyblade-original-dragoon-storm",
|
|
216
216
|
relatedType: "bid",
|
|
217
217
|
createdAt: hoursAgo(3),
|
|
218
218
|
updatedAt: hoursAgo(3),
|
|
219
219
|
},
|
|
220
220
|
{
|
|
221
221
|
id: "notif-kaiba-payout-001",
|
|
222
|
-
userId: "user-
|
|
222
|
+
userId: "user-tyson-blader",
|
|
223
223
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.SYSTEM,
|
|
224
224
|
priority: "normal",
|
|
225
225
|
title: "Payout processed",
|
|
226
|
-
message: "₹
|
|
226
|
+
message: "₹9,800 has been transferred to your UPI account for April orders.",
|
|
227
227
|
actionUrl: "/store/payouts",
|
|
228
228
|
actionLabel: "View Payout",
|
|
229
229
|
isRead: true,
|
|
@@ -233,41 +233,41 @@ export const notificationsSeedData = [
|
|
|
233
233
|
},
|
|
234
234
|
{
|
|
235
235
|
id: "notif-kaiba-bid-received-001",
|
|
236
|
-
userId: "user-
|
|
236
|
+
userId: "user-tyson-blader",
|
|
237
237
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
|
|
238
238
|
priority: "normal",
|
|
239
|
-
title: "New bid on
|
|
240
|
-
message: "
|
|
241
|
-
actionUrl: "/store/products/auction-
|
|
239
|
+
title: "New bid on Metal Lightning L-Drago",
|
|
240
|
+
message: "Mock User 1 bid ₹5,000 on Beyblade Metal Lightning L-Drago.",
|
|
241
|
+
actionUrl: "/store/products/auction-beyblade-metal-lightning-l-drago",
|
|
242
242
|
actionLabel: "View",
|
|
243
243
|
isRead: false,
|
|
244
|
-
relatedId: "auction-
|
|
244
|
+
relatedId: "auction-beyblade-metal-lightning-l-drago",
|
|
245
245
|
relatedType: "bid",
|
|
246
246
|
createdAt: hoursAgo(12),
|
|
247
247
|
updatedAt: hoursAgo(12),
|
|
248
248
|
},
|
|
249
249
|
{
|
|
250
250
|
id: "notif-kaiba-offer-001",
|
|
251
|
-
userId: "user-
|
|
251
|
+
userId: "user-tyson-blader",
|
|
252
252
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.OFFER_RECEIVED,
|
|
253
253
|
priority: "normal",
|
|
254
|
-
title: "New offer on
|
|
255
|
-
message: "
|
|
254
|
+
title: "New offer on Burst Valkyrie",
|
|
255
|
+
message: "Mock User 3 made an offer of ₹1,200 for Beyblade Burst Valkyrie.",
|
|
256
256
|
actionUrl: "/store/offers",
|
|
257
257
|
actionLabel: "Respond",
|
|
258
258
|
isRead: false,
|
|
259
|
-
relatedId: "product-
|
|
259
|
+
relatedId: "product-beyblade-burst-valkyrie",
|
|
260
260
|
relatedType: "offer",
|
|
261
261
|
createdAt: hoursAgo(10),
|
|
262
262
|
updatedAt: hoursAgo(10),
|
|
263
263
|
},
|
|
264
264
|
{
|
|
265
265
|
id: "notif-kaiba-welcome-001",
|
|
266
|
-
userId: "user-
|
|
266
|
+
userId: "user-tyson-blader",
|
|
267
267
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
|
|
268
268
|
priority: "normal",
|
|
269
|
-
title: "Welcome to LetItRip,
|
|
270
|
-
message: "Your store
|
|
269
|
+
title: "Welcome to LetItRip, Tyson!",
|
|
270
|
+
message: "Your store Beyblade Arena is now live. Start listing beyblades.",
|
|
271
271
|
isRead: true,
|
|
272
272
|
readAt: daysAgo(30),
|
|
273
273
|
createdAt: daysAgo(30),
|
|
@@ -275,7 +275,7 @@ export const notificationsSeedData = [
|
|
|
275
275
|
},
|
|
276
276
|
{
|
|
277
277
|
id: "notif-kaiba-order-cancelled-001",
|
|
278
|
-
userId: "user-
|
|
278
|
+
userId: "user-tyson-blader",
|
|
279
279
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_CANCELLED,
|
|
280
280
|
priority: "high",
|
|
281
281
|
title: "Order cancelled",
|
|
@@ -296,7 +296,7 @@ export const notificationsSeedData = [
|
|
|
296
296
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_SHIPPED,
|
|
297
297
|
priority: "normal",
|
|
298
298
|
title: "Your order has shipped!",
|
|
299
|
-
message: "Order from
|
|
299
|
+
message: "Order from Beyblade Arena — Beyblade Metal Flame Sagittario is on its way.",
|
|
300
300
|
actionUrl: "/user/orders",
|
|
301
301
|
actionLabel: "Track",
|
|
302
302
|
isRead: false,
|
|
@@ -309,10 +309,10 @@ export const notificationsSeedData = [
|
|
|
309
309
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.BID_PLACED,
|
|
310
310
|
priority: "normal",
|
|
311
311
|
title: "Your bid was placed",
|
|
312
|
-
message: "You bid ₹
|
|
312
|
+
message: "You bid ₹5,000 on Beyblade Metal Lightning L-Drago.",
|
|
313
313
|
isRead: true,
|
|
314
314
|
readAt: daysAgo(1),
|
|
315
|
-
relatedId: "auction-
|
|
315
|
+
relatedId: "auction-beyblade-metal-lightning-l-drago",
|
|
316
316
|
relatedType: "bid",
|
|
317
317
|
createdAt: daysAgo(1),
|
|
318
318
|
updatedAt: daysAgo(1),
|
|
@@ -323,7 +323,7 @@ export const notificationsSeedData = [
|
|
|
323
323
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.ORDER_DELIVERED,
|
|
324
324
|
priority: "normal",
|
|
325
325
|
title: "Order delivered",
|
|
326
|
-
message: "Your order of
|
|
326
|
+
message: "Your order of Beyblade X Knife Shinobi has been delivered.",
|
|
327
327
|
isRead: true,
|
|
328
328
|
readAt: daysAgo(5),
|
|
329
329
|
createdAt: daysAgo(6),
|
|
@@ -348,7 +348,7 @@ export const notificationsSeedData = [
|
|
|
348
348
|
userId: "user-admin-letitrip",
|
|
349
349
|
type: NOTIFICATION_FIELDS.TYPE_VALUES.WELCOME,
|
|
350
350
|
priority: "normal",
|
|
351
|
-
title: "Welcome to
|
|
351
|
+
title: "Welcome to Mock User 1!",
|
|
352
352
|
message: "Your admin account is active. Manage stores, products, and site settings.",
|
|
353
353
|
isRead: true,
|
|
354
354
|
readAt: daysAgo(60),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* WHY: Seeds offers for
|
|
2
|
+
* WHY: Seeds offers for the Beyblade marketplace — 8 offers across all statuses.
|
|
3
3
|
* WHAT: pending (2), accepted (1), declined (1), countered (1), expired (1), withdrawn (1), paid (1).
|
|
4
4
|
*
|
|
5
5
|
* EXPORTS:
|
|
@@ -17,63 +17,63 @@ const NOW = new Date();
|
|
|
17
17
|
const daysAgo = (n) => new Date(NOW.getTime() - n * 86400000);
|
|
18
18
|
const daysFromNow = (n) => new Date(NOW.getTime() + n * 86400000);
|
|
19
19
|
export const offersSeedData = [
|
|
20
|
-
// ── 1. PENDING —
|
|
20
|
+
// ── 1. PENDING — Rehan → Beyblade Arena — Burst Valkyrie ────────────────
|
|
21
21
|
{
|
|
22
|
-
id: "offer-yugi-
|
|
23
|
-
productId: "product-
|
|
24
|
-
productTitle: "
|
|
25
|
-
storeId: "store-
|
|
26
|
-
storeName: "
|
|
22
|
+
id: "offer-yugi-burst-valkyrie-pending",
|
|
23
|
+
productId: "product-beyblade-burst-valkyrie",
|
|
24
|
+
productTitle: "Beyblade Burst Valkyrie",
|
|
25
|
+
storeId: "store-beyblade-arena",
|
|
26
|
+
storeName: "Beyblade Arena",
|
|
27
27
|
buyerUid: "user-yugi-muto",
|
|
28
|
-
buyerName: "
|
|
29
|
-
buyerEmail: "
|
|
30
|
-
listedPrice:
|
|
31
|
-
offerAmount:
|
|
28
|
+
buyerName: "Mock User 3",
|
|
29
|
+
buyerEmail: "rehan.sheikh@gmail.com",
|
|
30
|
+
listedPrice: 1899,
|
|
31
|
+
offerAmount: 1500,
|
|
32
32
|
currency: "INR",
|
|
33
33
|
status: OfferStatusValues.PENDING,
|
|
34
|
-
buyerNote: "Would you accept ₹
|
|
34
|
+
buyerNote: "Would you accept ₹1,500 for the Burst Valkyrie?",
|
|
35
35
|
expiresAt: daysFromNow(3),
|
|
36
36
|
createdAt: daysAgo(0),
|
|
37
37
|
updatedAt: daysAgo(0),
|
|
38
38
|
},
|
|
39
|
-
// ── 2. COUNTERED —
|
|
39
|
+
// ── 2. COUNTERED — Rehan → Beyblade Arena — Metal Storm Pegasus ─────────
|
|
40
40
|
{
|
|
41
|
-
id: "offer-yugi-
|
|
42
|
-
productId: "product-
|
|
43
|
-
productTitle: "
|
|
44
|
-
storeId: "store-
|
|
45
|
-
storeName: "
|
|
41
|
+
id: "offer-yugi-metal-storm-pegasus-countered",
|
|
42
|
+
productId: "product-beyblade-metal-storm-pegasus",
|
|
43
|
+
productTitle: "Beyblade Metal Storm Pegasus",
|
|
44
|
+
storeId: "store-beyblade-arena",
|
|
45
|
+
storeName: "Beyblade Arena",
|
|
46
46
|
buyerUid: "user-yugi-muto",
|
|
47
|
-
buyerName: "
|
|
48
|
-
buyerEmail: "
|
|
49
|
-
listedPrice:
|
|
50
|
-
offerAmount:
|
|
51
|
-
counterAmount:
|
|
47
|
+
buyerName: "Mock User 3",
|
|
48
|
+
buyerEmail: "rehan.sheikh@gmail.com",
|
|
49
|
+
listedPrice: 2499,
|
|
50
|
+
offerAmount: 2000,
|
|
51
|
+
counterAmount: 2250,
|
|
52
52
|
currency: "INR",
|
|
53
53
|
status: OfferStatusValues.COUNTERED,
|
|
54
|
-
buyerNote: "₹
|
|
55
|
-
sellerNote: "Best I can do is ₹
|
|
54
|
+
buyerNote: "₹2,000 — will you take it?",
|
|
55
|
+
sellerNote: "Best I can do is ₹2,250.",
|
|
56
56
|
expiresAt: daysFromNow(2),
|
|
57
57
|
respondedAt: daysAgo(1),
|
|
58
58
|
createdAt: daysAgo(3),
|
|
59
59
|
updatedAt: daysAgo(1),
|
|
60
60
|
},
|
|
61
|
-
// ── 3. PAID — Admin →
|
|
61
|
+
// ── 3. PAID — Admin → Beyblade Arena — X Knife Shinobi (order placed) ───
|
|
62
62
|
{
|
|
63
|
-
id: "offer-admin-
|
|
64
|
-
productId: "product-
|
|
65
|
-
productTitle: "
|
|
66
|
-
storeId: "store-
|
|
67
|
-
storeName: "
|
|
63
|
+
id: "offer-admin-x-knife-shinobi-paid",
|
|
64
|
+
productId: "product-beyblade-x-knife-shinobi",
|
|
65
|
+
productTitle: "Beyblade X Knife Shinobi",
|
|
66
|
+
storeId: "store-beyblade-arena",
|
|
67
|
+
storeName: "Beyblade Arena",
|
|
68
68
|
buyerUid: "user-admin-letitrip",
|
|
69
|
-
buyerName: "
|
|
69
|
+
buyerName: "Mock User 1",
|
|
70
70
|
buyerEmail: "admin@letitrip.in",
|
|
71
|
-
listedPrice:
|
|
72
|
-
offerAmount:
|
|
73
|
-
lockedPrice:
|
|
71
|
+
listedPrice: 2999,
|
|
72
|
+
offerAmount: 2600,
|
|
73
|
+
lockedPrice: 2600,
|
|
74
74
|
currency: "INR",
|
|
75
75
|
status: OfferStatusValues.PAID,
|
|
76
|
-
buyerNote: "Would you accept ₹
|
|
76
|
+
buyerNote: "Would you accept ₹2,600 for the X Knife Shinobi?",
|
|
77
77
|
sellerNote: "Accepted. Thank you!",
|
|
78
78
|
expiresAt: daysAgo(3),
|
|
79
79
|
acceptedAt: daysAgo(12),
|
|
@@ -81,81 +81,81 @@ export const offersSeedData = [
|
|
|
81
81
|
createdAt: daysAgo(14),
|
|
82
82
|
updatedAt: daysAgo(11),
|
|
83
83
|
},
|
|
84
|
-
// ── 4. DECLINED —
|
|
84
|
+
// ── 4. DECLINED — Rehan → Beyblade Arena — Burst Regalia Genesis ────────
|
|
85
85
|
{
|
|
86
|
-
id: "offer-yugi-
|
|
87
|
-
productId: "product-
|
|
88
|
-
productTitle: "
|
|
89
|
-
storeId: "store-
|
|
90
|
-
storeName: "
|
|
86
|
+
id: "offer-yugi-regalia-genesis-declined",
|
|
87
|
+
productId: "product-beyblade-burst-regalia-genesis",
|
|
88
|
+
productTitle: "Beyblade Burst Regalia Genesis",
|
|
89
|
+
storeId: "store-beyblade-arena",
|
|
90
|
+
storeName: "Beyblade Arena",
|
|
91
91
|
buyerUid: "user-yugi-muto",
|
|
92
|
-
buyerName: "
|
|
93
|
-
buyerEmail: "
|
|
94
|
-
listedPrice:
|
|
95
|
-
offerAmount:
|
|
92
|
+
buyerName: "Mock User 3",
|
|
93
|
+
buyerEmail: "rehan.sheikh@gmail.com",
|
|
94
|
+
listedPrice: 3499,
|
|
95
|
+
offerAmount: 2500,
|
|
96
96
|
currency: "INR",
|
|
97
97
|
status: OfferStatusValues.DECLINED,
|
|
98
|
-
buyerNote: "Offering ₹
|
|
99
|
-
sellerNote: "Sorry, we cannot go below ₹
|
|
98
|
+
buyerNote: "Offering ₹2,500 — slightly above my budget.",
|
|
99
|
+
sellerNote: "Sorry, we cannot go below ₹3,200 for this piece.",
|
|
100
100
|
expiresAt: daysAgo(5),
|
|
101
101
|
respondedAt: daysAgo(8),
|
|
102
102
|
createdAt: daysAgo(10),
|
|
103
103
|
updatedAt: daysAgo(8),
|
|
104
104
|
},
|
|
105
|
-
// ── 5. EXPIRED —
|
|
105
|
+
// ── 5. EXPIRED — Vivaan → Beyblade Arena — X Wizard Arrow ───────────────
|
|
106
106
|
{
|
|
107
|
-
id: "offer-kaiba-
|
|
108
|
-
productId: "product-
|
|
109
|
-
productTitle: "
|
|
110
|
-
storeId: "store-
|
|
111
|
-
storeName: "
|
|
107
|
+
id: "offer-kaiba-x-wizard-arrow-expired",
|
|
108
|
+
productId: "product-beyblade-x-wizard-arrow",
|
|
109
|
+
productTitle: "Beyblade X Wizard Arrow",
|
|
110
|
+
storeId: "store-beyblade-arena",
|
|
111
|
+
storeName: "Beyblade Arena",
|
|
112
112
|
buyerUid: "user-seto-kaiba",
|
|
113
|
-
buyerName: "
|
|
114
|
-
buyerEmail: "
|
|
115
|
-
listedPrice:
|
|
116
|
-
offerAmount:
|
|
113
|
+
buyerName: "Mock User 2",
|
|
114
|
+
buyerEmail: "vivaan.kapoor@gmail.com",
|
|
115
|
+
listedPrice: 1699,
|
|
116
|
+
offerAmount: 1300,
|
|
117
117
|
currency: "INR",
|
|
118
118
|
status: OfferStatusValues.EXPIRED,
|
|
119
|
-
buyerNote: "₹
|
|
119
|
+
buyerNote: "₹1,300 — let me know.",
|
|
120
120
|
expiresAt: daysAgo(2),
|
|
121
121
|
createdAt: daysAgo(9),
|
|
122
122
|
updatedAt: daysAgo(2),
|
|
123
123
|
},
|
|
124
|
-
// ── 6. WITHDRAWN — Admin →
|
|
124
|
+
// ── 6. WITHDRAWN — Admin → Beyblade Arena — Original Driger V ───────────
|
|
125
125
|
{
|
|
126
|
-
id: "offer-admin-
|
|
127
|
-
productId: "product-
|
|
128
|
-
productTitle: "
|
|
129
|
-
storeId: "store-
|
|
130
|
-
storeName: "
|
|
126
|
+
id: "offer-admin-driger-v-withdrawn",
|
|
127
|
+
productId: "product-beyblade-original-driger-v",
|
|
128
|
+
productTitle: "Beyblade Original Driger V",
|
|
129
|
+
storeId: "store-beyblade-arena",
|
|
130
|
+
storeName: "Beyblade Arena",
|
|
131
131
|
buyerUid: "user-admin-letitrip",
|
|
132
|
-
buyerName: "
|
|
132
|
+
buyerName: "Mock User 1",
|
|
133
133
|
buyerEmail: "admin@letitrip.in",
|
|
134
|
-
listedPrice:
|
|
135
|
-
offerAmount:
|
|
134
|
+
listedPrice: 1999,
|
|
135
|
+
offerAmount: 1600,
|
|
136
136
|
currency: "INR",
|
|
137
137
|
status: OfferStatusValues.WITHDRAWN,
|
|
138
|
-
buyerNote: "Offering ₹
|
|
138
|
+
buyerNote: "Offering ₹1,600 for the Driger V.",
|
|
139
139
|
expiresAt: daysAgo(3),
|
|
140
140
|
createdAt: daysAgo(7),
|
|
141
141
|
updatedAt: daysAgo(5),
|
|
142
142
|
},
|
|
143
|
-
// ── 7. ACCEPTED —
|
|
143
|
+
// ── 7. ACCEPTED — Vivaan → Beyblade Arena — Original Dranzer S (pending payment) ──
|
|
144
144
|
{
|
|
145
|
-
id: "offer-kaiba-
|
|
146
|
-
productId: "product-
|
|
147
|
-
productTitle: "
|
|
148
|
-
storeId: "store-
|
|
149
|
-
storeName: "
|
|
145
|
+
id: "offer-kaiba-dranzer-s-accepted",
|
|
146
|
+
productId: "product-beyblade-original-dranzer-s",
|
|
147
|
+
productTitle: "Beyblade Original Dranzer S",
|
|
148
|
+
storeId: "store-beyblade-arena",
|
|
149
|
+
storeName: "Beyblade Arena",
|
|
150
150
|
buyerUid: "user-seto-kaiba",
|
|
151
|
-
buyerName: "
|
|
152
|
-
buyerEmail: "
|
|
153
|
-
listedPrice:
|
|
154
|
-
offerAmount:
|
|
155
|
-
lockedPrice:
|
|
151
|
+
buyerName: "Mock User 2",
|
|
152
|
+
buyerEmail: "vivaan.kapoor@gmail.com",
|
|
153
|
+
listedPrice: 1799,
|
|
154
|
+
offerAmount: 1500,
|
|
155
|
+
lockedPrice: 1500,
|
|
156
156
|
currency: "INR",
|
|
157
157
|
status: OfferStatusValues.ACCEPTED,
|
|
158
|
-
buyerNote: "₹
|
|
158
|
+
buyerNote: "₹1,500 final offer on the sealed Dranzer S.",
|
|
159
159
|
sellerNote: "Accepted! Please complete payment within 24 hours.",
|
|
160
160
|
expiresAt: daysFromNow(1),
|
|
161
161
|
acceptedAt: daysAgo(0),
|
|
@@ -163,21 +163,21 @@ export const offersSeedData = [
|
|
|
163
163
|
createdAt: daysAgo(1),
|
|
164
164
|
updatedAt: daysAgo(0),
|
|
165
165
|
},
|
|
166
|
-
// ── 8. PENDING — Admin →
|
|
166
|
+
// ── 8. PENDING — Admin → Beyblade Arena — Metal Lightning L-Drago ───────
|
|
167
167
|
{
|
|
168
|
-
id: "offer-admin-
|
|
169
|
-
productId: "
|
|
170
|
-
productTitle: "
|
|
171
|
-
storeId: "store-
|
|
172
|
-
storeName: "
|
|
168
|
+
id: "offer-admin-l-drago-pending",
|
|
169
|
+
productId: "auction-beyblade-metal-lightning-l-drago",
|
|
170
|
+
productTitle: "Beyblade Metal Lightning L-Drago",
|
|
171
|
+
storeId: "store-beyblade-arena",
|
|
172
|
+
storeName: "Beyblade Arena",
|
|
173
173
|
buyerUid: "user-admin-letitrip",
|
|
174
|
-
buyerName: "
|
|
174
|
+
buyerName: "Mock User 1",
|
|
175
175
|
buyerEmail: "admin@letitrip.in",
|
|
176
|
-
listedPrice:
|
|
177
|
-
offerAmount:
|
|
176
|
+
listedPrice: 5200,
|
|
177
|
+
offerAmount: 4700,
|
|
178
178
|
currency: "INR",
|
|
179
179
|
status: OfferStatusValues.PENDING,
|
|
180
|
-
buyerNote: "Interested in this piece. Would you accept ₹
|
|
180
|
+
buyerNote: "Interested in this piece. Would you accept ₹4,700?",
|
|
181
181
|
expiresAt: daysFromNow(3),
|
|
182
182
|
createdAt: daysAgo(1),
|
|
183
183
|
updatedAt: daysAgo(1),
|