@mohasinac/appkit 4.59.0 → 4.60.1
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/.build-stamp.json +3 -3
- package/dist/_internal/client/features/layout/DashboardLayoutClient.js +62 -5
- package/dist/_internal/client/features/maintenance/views/MaintenanceDashboardView.js +2 -2
- package/dist/_internal/server/features/brands/actions.js +78 -4
- package/dist/_internal/server/features/checkout/actions.d.ts +36 -13
- package/dist/_internal/server/features/checkout/actions.js +668 -183
- package/dist/_internal/server/features/checkout/supplier-identity.js +18 -1
- package/dist/_internal/server/features/gateway-events/index.d.ts +10 -0
- package/dist/_internal/server/features/gateway-events/index.js +10 -0
- package/dist/_internal/server/features/gateway-events/ingest.d.ts +127 -0
- package/dist/_internal/server/features/gateway-events/ingest.js +188 -0
- package/dist/_internal/server/features/gateway-events/redact.d.ts +66 -0
- package/dist/_internal/server/features/gateway-events/redact.js +151 -0
- package/dist/_internal/server/features/grievance/actions.d.ts +63 -0
- package/dist/_internal/server/features/grievance/actions.js +173 -0
- package/dist/_internal/server/features/grievance/index.d.ts +8 -0
- package/dist/_internal/server/features/grievance/index.js +8 -0
- package/dist/_internal/server/features/grouped/data.js +28 -3
- package/dist/_internal/server/features/lottery/actions.js +99 -4
- package/dist/_internal/server/features/order-completion/actions.d.ts +92 -0
- package/dist/_internal/server/features/order-completion/actions.js +336 -0
- package/dist/_internal/server/features/order-completion/index.d.ts +7 -0
- package/dist/_internal/server/features/order-completion/index.js +7 -0
- package/dist/_internal/server/features/orders/actions.d.ts +13 -0
- package/dist/_internal/server/features/orders/actions.js +56 -2
- package/dist/_internal/server/features/orders/adapters.d.ts +20 -2
- package/dist/_internal/server/features/orders/adapters.js +44 -0
- package/dist/_internal/server/features/orders/cancellation-refund.d.ts +116 -0
- package/dist/_internal/server/features/orders/cancellation-refund.js +466 -0
- package/dist/_internal/server/features/orders/index.d.ts +2 -1
- package/dist/_internal/server/features/orders/index.js +1 -1
- package/dist/_internal/server/features/orders/service.d.ts +60 -0
- package/dist/_internal/server/features/orders/service.js +74 -0
- package/dist/_internal/server/features/payment-cases/disputes.d.ts +76 -0
- package/dist/_internal/server/features/payment-cases/disputes.js +241 -0
- package/dist/_internal/server/features/payment-cases/index.d.ts +9 -0
- package/dist/_internal/server/features/payment-cases/index.js +9 -0
- package/dist/_internal/server/features/payouts/actions.d.ts +28 -3
- package/dist/_internal/server/features/payouts/actions.js +84 -10
- package/dist/_internal/server/features/points/adjust.d.ts +61 -0
- package/dist/_internal/server/features/points/adjust.js +121 -0
- package/dist/_internal/server/features/points/award.d.ts +65 -0
- package/dist/_internal/server/features/points/award.js +145 -0
- package/dist/_internal/server/features/price-index/market.d.ts +33 -0
- package/dist/_internal/server/features/price-index/market.js +54 -1
- package/dist/_internal/server/features/products/data.js +40 -22
- package/dist/_internal/server/features/protection-claims/actions.d.ts +72 -0
- package/dist/_internal/server/features/protection-claims/actions.js +228 -0
- package/dist/_internal/server/features/protection-claims/index.d.ts +8 -0
- package/dist/_internal/server/features/protection-claims/index.js +8 -0
- package/dist/_internal/server/features/refunds/actions.d.ts +20 -0
- package/dist/_internal/server/features/refunds/actions.js +259 -17
- package/dist/_internal/server/features/refunds/capacity.d.ts +29 -0
- package/dist/_internal/server/features/refunds/capacity.js +37 -0
- package/dist/_internal/server/features/reviews/actions.js +3 -2
- package/dist/_internal/server/features/search/index-build/sources.js +20 -1
- package/dist/_internal/server/features/shipping/reconcile.d.ts +10 -1
- package/dist/_internal/server/features/shipping/reconcile.js +34 -3
- package/dist/_internal/server/features/shipping/reimbursement.d.ts +117 -0
- package/dist/_internal/server/features/shipping/reimbursement.js +223 -0
- package/dist/_internal/server/features/stores/tabs.d.ts +19 -4
- package/dist/_internal/server/features/stores/tabs.js +24 -4
- package/dist/_internal/server/functions/https.d.ts +31 -1
- package/dist/_internal/server/functions/https.js +52 -1
- package/dist/_internal/server/functions/scheduled.d.ts +72 -1
- package/dist/_internal/server/functions/scheduled.js +124 -1
- package/dist/_internal/server/jobs/core/autoPayoutEligibility.js +62 -16
- package/dist/_internal/server/jobs/core/boxRollupReconcile.d.ts +46 -0
- package/dist/_internal/server/jobs/core/boxRollupReconcile.js +142 -0
- package/dist/_internal/server/jobs/core/dailyDataCleanup.js +149 -1
- package/dist/_internal/server/jobs/core/dailyStatusDigest.d.ts +14 -0
- package/dist/_internal/server/jobs/core/dailyStatusDigest.js +79 -1
- package/dist/_internal/server/jobs/core/index.d.ts +2 -0
- package/dist/_internal/server/jobs/core/index.js +2 -0
- package/dist/_internal/server/jobs/core/marketPriceRollup.d.ts +64 -0
- package/dist/_internal/server/jobs/core/marketPriceRollup.js +153 -0
- package/dist/_internal/server/jobs/core/obligationSweep.d.ts +36 -0
- package/dist/_internal/server/jobs/core/obligationSweep.js +503 -0
- package/dist/_internal/server/jobs/core/paymentReconcile.d.ts +79 -0
- package/dist/_internal/server/jobs/core/paymentReconcile.js +614 -0
- package/dist/_internal/server/jobs/core/paymentWindowTimeout.js +34 -0
- package/dist/_internal/server/jobs/core/weeklyPayoutEligibility.js +35 -4
- package/dist/_internal/server/jobs/handlers/boxRollupReconcile.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/boxRollupReconcile.js +15 -0
- package/dist/_internal/server/jobs/handlers/countersReconcileNow.d.ts +65 -0
- package/dist/_internal/server/jobs/handlers/countersReconcileNow.js +89 -0
- package/dist/_internal/server/jobs/handlers/index.d.ts +5 -0
- package/dist/_internal/server/jobs/handlers/index.js +5 -0
- package/dist/_internal/server/jobs/handlers/marketPriceRollup.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/marketPriceRollup.js +2 -0
- package/dist/_internal/server/jobs/handlers/obligationSweep.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/obligationSweep.js +15 -0
- package/dist/_internal/server/jobs/handlers/onShipmentAllocationSync.js +30 -1
- package/dist/_internal/server/jobs/handlers/paymentReconcile.d.ts +2 -0
- package/dist/_internal/server/jobs/handlers/paymentReconcile.js +6 -0
- package/dist/_internal/shared/actions/action-registry.d.ts +1 -1
- package/dist/_internal/shared/actions/action-registry.js +71 -0
- package/dist/_internal/shared/checkout/coupon-discount.d.ts +73 -0
- package/dist/_internal/shared/checkout/coupon-discount.js +103 -0
- package/dist/_internal/shared/checkout/lanes.d.ts +42 -0
- package/dist/_internal/shared/checkout/lanes.js +46 -0
- package/dist/_internal/shared/checkout/order-math.d.ts +149 -1
- package/dist/_internal/shared/checkout/order-math.js +251 -3
- package/dist/_internal/shared/checkout/refundable-base.d.ts +116 -0
- package/dist/_internal/shared/checkout/refundable-base.js +122 -0
- package/dist/_internal/shared/features/auctions/config.d.ts +14 -1
- package/dist/_internal/shared/features/auctions/config.js +30 -1
- package/dist/_internal/shared/features/brands/schema.d.ts +42 -0
- package/dist/_internal/shared/features/brands/schema.js +18 -0
- package/dist/_internal/shared/features/orders/refund-copy.d.ts +22 -0
- package/dist/_internal/shared/features/orders/refund-copy.js +34 -0
- package/dist/_internal/shared/features/print/label-profiles.d.ts +198 -0
- package/dist/_internal/shared/features/print/label-profiles.js +350 -0
- package/dist/_internal/shared/features/products/to-product-item.js +33 -5
- package/dist/_internal/shared/fees/calculator.d.ts +31 -2
- package/dist/_internal/shared/fees/calculator.js +103 -5
- package/dist/_internal/shared/fees/india-states.d.ts +195 -0
- package/dist/_internal/shared/fees/india-states.js +190 -0
- package/dist/_internal/shared/fees/payout-hold.d.ts +80 -0
- package/dist/_internal/shared/fees/payout-hold.js +74 -0
- package/dist/_internal/shared/obligations/deadlines.d.ts +94 -0
- package/dist/_internal/shared/obligations/deadlines.js +155 -0
- package/dist/_internal/shared/shipping/quote.d.ts +96 -0
- package/dist/_internal/shared/shipping/quote.js +67 -0
- package/dist/_internal/shared/time/business-days.d.ts +91 -0
- package/dist/_internal/shared/time/business-days.js +185 -0
- package/dist/cli/index.js +0 -2
- package/dist/client.d.ts +10 -4
- package/dist/client.js +29 -3
- package/dist/configs/tailwind.d.ts +0 -12
- package/dist/configs/tailwind.js +28 -15
- package/dist/constants/api-endpoints.d.ts +51 -9
- package/dist/constants/api-endpoints.js +23 -7
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/payment.d.ts +131 -0
- package/dist/features/about/components/AboutView.js +1 -1
- package/dist/features/about/components/DeveloperView.js +5 -2
- package/dist/features/about/components/FAQPageView.js +2 -1
- package/dist/features/about/components/FeesView.js +2 -1
- package/dist/features/about/components/HelpPageView.js +2 -1
- package/dist/features/about/components/HowAuctionsWorkView.js +2 -1
- package/dist/features/about/components/HowCheckoutWorksView.js +2 -1
- package/dist/features/about/components/HowEmiWorksView.js +2 -1
- package/dist/features/about/components/HowOffersWorkView.js +2 -1
- package/dist/features/about/components/HowOrdersWorkView.js +2 -1
- package/dist/features/about/components/HowPayoutsWorkView.js +2 -1
- package/dist/features/about/components/HowPreOrdersWorkView.js +2 -1
- package/dist/features/about/components/HowReviewsWorkView.js +2 -1
- package/dist/features/about/components/PolicyPageView.js +2 -1
- package/dist/features/about/components/ProseHero.d.ts +73 -0
- package/dist/features/about/components/ProseHero.js +18 -0
- package/dist/features/about/components/SecurityPrivacyView.js +2 -1
- package/dist/features/about/components/ShippingPolicyView.js +2 -1
- package/dist/features/about/components/TrackOrderView.js +2 -1
- package/dist/features/about/components/UnauthorizedView.js +1 -1
- package/dist/features/about/index.d.ts +2 -0
- package/dist/features/about/index.js +5 -0
- package/dist/features/account/actions/address-actions.d.ts +26 -2
- package/dist/features/account/actions/address-actions.js +25 -1
- package/dist/features/account/components/BuyerShoppingGuideView.js +1 -1
- package/dist/features/account/components/NotificationPreferencesPanel.js +1 -1
- package/dist/features/account/components/UserOrdersView.js +17 -0
- package/dist/features/account/components/UserSidebar.js +1 -1
- package/dist/features/account/hooks/useNotifications.js +29 -0
- package/dist/features/admin/actions/admin-coupon-actions.js +36 -0
- package/dist/features/admin/components/AdminBeysView.js +2 -2
- package/dist/features/admin/components/AdminBlogEditorView.js +2 -2
- package/dist/features/admin/components/AdminBrandEditorView.js +32 -2
- package/dist/features/admin/components/AdminBundleEditorView.js +1 -1
- package/dist/features/admin/components/AdminCarouselEditorView.js +1 -1
- package/dist/features/admin/components/AdminCategoriesView.js +1 -1
- package/dist/features/admin/components/AdminCategoryEditorView.js +73 -17
- package/dist/features/admin/components/AdminContactEditorView.js +1 -1
- package/dist/features/admin/components/AdminCouponEditorView.js +26 -1
- package/dist/features/admin/components/AdminFaqEditorView.js +1 -1
- package/dist/features/admin/components/AdminFaqsView.js +2 -2
- package/dist/features/admin/components/AdminGatewayEventsView.d.ts +54 -0
- package/dist/features/admin/components/AdminGatewayEventsView.js +209 -0
- package/dist/features/admin/components/AdminGuideHubView.js +1 -1
- package/dist/features/admin/components/AdminMoneyCasesView.d.ts +60 -0
- package/dist/features/admin/components/AdminMoneyCasesView.js +287 -0
- package/dist/features/admin/components/AdminPartsView.js +2 -2
- package/dist/features/admin/components/AdminProductsView.js +75 -4
- package/dist/features/admin/components/AdminSidebar.js +2 -2
- package/dist/features/admin/components/AdminSiteSettingsView.js +65 -7
- package/dist/features/admin/components/AdminSublistingCategoriesView.js +2 -0
- package/dist/features/admin/components/AdminSupportTicketDetailView.js +1 -1
- package/dist/features/admin/components/AdminSupportTicketsView.js +2 -2
- package/dist/features/admin/components/AdminTesterChecklistView.js +2 -2
- package/dist/features/admin/components/AdminUsersView.js +72 -1
- package/dist/features/admin/components/AdminViewCards.d.ts +3 -1
- package/dist/features/admin/components/AdminViewCards.js +4 -4
- package/dist/features/admin/components/DataListingView.d.ts +28 -0
- package/dist/features/admin/components/DataListingView.js +175 -14
- package/dist/features/admin/components/DataTable.d.ts +12 -1
- package/dist/features/admin/components/DataTable.js +3 -3
- package/dist/features/admin/components/OwnerQuickActions.d.ts +1 -1
- package/dist/features/admin/components/OwnerQuickActions.js +60 -2
- package/dist/features/admin/components/RecordOwnerQuickActions.d.ts +1 -1
- package/dist/features/admin/components/RecordOwnerQuickActions.js +61 -14
- package/dist/features/admin/components/analytics/AdminStatCard.d.ts +35 -1
- package/dist/features/admin/components/analytics/AdminStatCard.js +77 -2
- package/dist/features/admin/components/index.d.ts +4 -0
- package/dist/features/admin/components/index.js +6 -0
- package/dist/features/admin/constants/filter-tabs.d.ts +156 -0
- package/dist/features/admin/constants/filter-tabs.js +106 -0
- package/dist/features/admin/repository/site-settings.repository.d.ts +22 -0
- package/dist/features/admin/repository/site-settings.repository.js +82 -1
- package/dist/features/admin/schemas/admin-editor-forms.d.ts +21 -0
- package/dist/features/admin/schemas/admin-editor-forms.js +44 -0
- package/dist/features/admin/schemas/firestore.js +5 -1
- package/dist/features/admin/schemas/site-settings-form.js +30 -1
- package/dist/features/auctions/actions/bid-actions.js +13 -1
- package/dist/features/auctions/components/AuctionBottomActions.js +2 -2
- package/dist/features/auctions/components/AuctionDetailPageView.js +3 -1
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +11 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +5 -3
- package/dist/features/auctions/components/PlaceBidFormClient.d.ts +8 -1
- package/dist/features/auctions/components/PlaceBidFormClient.js +2 -2
- package/dist/features/audit-log/schemas/firestore.d.ts +28 -0
- package/dist/features/audit-log/schemas/firestore.js +14 -0
- package/dist/features/auth/permissions/constants.d.ts +17 -1
- package/dist/features/auth/permissions/constants.js +18 -0
- package/dist/features/blog/components/BlogPostView.js +1 -1
- package/dist/features/catalogue/components/AdminCatalogueApprovalsView.js +1 -1
- package/dist/features/categories/api/[id]/description-template/route.js +107 -1
- package/dist/features/categories/components/BrandDetailPageView.js +2 -2
- package/dist/features/categories/components/BreadcrumbTrail.js +7 -1
- package/dist/features/categories/components/BundleDetailView.js +1 -1
- package/dist/features/categories/components/CategoryDetailPageView.js +2 -2
- package/dist/features/categories/components/CategoryForm.js +12 -1
- package/dist/features/categories/components/CategoryTemplatePicker.js +38 -5
- package/dist/features/categories/repository/market-price-index.repository.d.ts +123 -0
- package/dist/features/categories/repository/market-price-index.repository.js +105 -0
- package/dist/features/categories/repository/price-observation.repository.d.ts +166 -0
- package/dist/features/categories/repository/price-observation.repository.js +132 -0
- package/dist/features/events/components/EventSaleBanner.js +1 -1
- package/dist/features/events/components/EventStatusBadge.js +1 -1
- package/dist/features/faq/components/FAQAccordion.js +2 -1
- package/dist/features/faq/components/FAQCategorySidebar.js +2 -2
- package/dist/features/faq/components/FAQHelpfulButtons.js +4 -4
- package/dist/features/faq/components/RelatedFAQs.js +1 -1
- package/dist/features/filters/FilterFacetSection.js +1 -1
- package/dist/features/filters/SwitchFilter.js +1 -1
- package/dist/features/gateway-events/repository/gateway-events.repository.d.ts +117 -0
- package/dist/features/gateway-events/repository/gateway-events.repository.js +274 -0
- package/dist/features/gateway-events/schemas/firestore.d.ts +217 -0
- package/dist/features/gateway-events/schemas/firestore.js +125 -0
- package/dist/features/gateway-events/schemas/index.d.ts +81 -0
- package/dist/features/gateway-events/schemas/index.js +79 -0
- package/dist/features/grouped/components/GroupedListingDetailView.js +1 -1
- package/dist/features/homepage/components/AnnouncementBar.js +37 -1
- package/dist/features/homepage/components/AnnouncementBar.style.css +30 -0
- package/dist/features/homepage/components/BrandsSection.js +1 -1
- package/dist/features/homepage/components/CTABannerSection.js +1 -1
- package/dist/features/homepage/components/FeaturedBundlesSection.js +14 -24
- package/dist/features/homepage/components/HeroCarousel.js +2 -2
- package/dist/features/homepage/components/SocialPostCard.js +1 -1
- package/dist/features/inventory/components/AdminMoveLedgerView.d.ts +7 -0
- package/dist/features/inventory/components/AdminMoveLedgerView.js +157 -0
- package/dist/features/inventory/components/AdminStorageBoxesView.d.ts +11 -0
- package/dist/features/inventory/components/AdminStorageBoxesView.js +168 -0
- package/dist/features/inventory/components/ReceiveStationView.d.ts +39 -0
- package/dist/features/inventory/components/ReceiveStationView.js +413 -0
- package/dist/features/inventory/components/operator-message.d.ts +29 -0
- package/dist/features/inventory/components/operator-message.js +41 -0
- package/dist/features/inventory/index.d.ts +13 -0
- package/dist/features/inventory/index.js +28 -0
- package/dist/features/inventory/repository/inventory-movements.repository.d.ts +97 -0
- package/dist/features/inventory/repository/inventory-movements.repository.js +186 -0
- package/dist/features/inventory/repository/inventory-placements.repository.d.ts +179 -0
- package/dist/features/inventory/repository/inventory-placements.repository.js +345 -0
- package/dist/features/inventory/repository/storage-boxes.repository.d.ts +83 -0
- package/dist/features/inventory/repository/storage-boxes.repository.js +127 -0
- package/dist/features/inventory/schemas/firestore.d.ts +197 -0
- package/dist/features/inventory/schemas/firestore.js +159 -0
- package/dist/features/layout/AppLayoutShell.d.ts +12 -1
- package/dist/features/layout/AppLayoutShell.js +25 -12
- package/dist/features/layout/AutoBreadcrumbs.js +162 -3
- package/dist/features/layout/AutoBreadcrumbs.style.css +45 -0
- package/dist/features/layout/BottomNavbar.d.ts +1 -1
- package/dist/features/layout/BottomNavbar.js +2 -2
- package/dist/features/media/MediaAvatar.js +1 -1
- package/dist/features/media/MediaImage.d.ts +24 -4
- package/dist/features/media/MediaImage.js +44 -4
- package/dist/features/media/MediaLightbox.js +1 -1
- package/dist/features/media/modals/ImageCropModal.js +1 -1
- package/dist/features/media/modals/ImageEditor.js +1 -1
- package/dist/features/media/upload/MediaUploadField.js +91 -3
- package/dist/features/obligations/constants/policies.d.ts +92 -0
- package/dist/features/obligations/constants/policies.js +378 -0
- package/dist/features/obligations/repository/obligations.repository.d.ts +68 -0
- package/dist/features/obligations/repository/obligations.repository.js +158 -0
- package/dist/features/obligations/schemas/firestore.d.ts +160 -0
- package/dist/features/obligations/schemas/firestore.js +87 -0
- package/dist/features/orders/actions/order-actions.d.ts +43 -4
- package/dist/features/orders/actions/order-actions.js +60 -3
- package/dist/features/orders/actions/refund-actions.js +70 -10
- package/dist/features/orders/components/OrderCompletionPanel.d.ts +27 -0
- package/dist/features/orders/components/OrderCompletionPanel.js +192 -0
- package/dist/features/orders/components/OrdersList.js +2 -2
- package/dist/features/orders/components/RefundHistoryTable.js +3 -1
- package/dist/features/orders/components/index.d.ts +2 -0
- package/dist/features/orders/components/index.js +6 -0
- package/dist/features/orders/constants/transitions.d.ts +59 -0
- package/dist/features/orders/constants/transitions.js +104 -0
- package/dist/features/orders/repository/orders.repository.d.ts +109 -6
- package/dist/features/orders/repository/orders.repository.js +464 -21
- package/dist/features/orders/schemas/firestore.d.ts +270 -0
- package/dist/features/orders/schemas/firestore.js +24 -0
- package/dist/features/orders/schemas/index.d.ts +61 -0
- package/dist/features/orders/schemas/index.js +22 -0
- package/dist/features/orders/types/index.d.ts +79 -0
- package/dist/features/parts/components/PartsIndexPageView.js +8 -1
- package/dist/features/payment-cases/repository/payment-cases.repository.d.ts +170 -0
- package/dist/features/payment-cases/repository/payment-cases.repository.js +342 -0
- package/dist/features/payment-cases/schemas/firestore.d.ts +229 -0
- package/dist/features/payment-cases/schemas/firestore.js +105 -0
- package/dist/features/payment-cases/schemas/resolve-form.d.ts +97 -0
- package/dist/features/payment-cases/schemas/resolve-form.js +114 -0
- package/dist/features/payments/repository/payout.repository.d.ts +0 -1
- package/dist/features/payments/repository/payout.repository.js +0 -1
- package/dist/features/points/repository/points.repository.d.ts +122 -0
- package/dist/features/points/repository/points.repository.js +304 -1
- package/dist/features/points/schemas/adjust-form.d.ts +58 -0
- package/dist/features/points/schemas/adjust-form.js +63 -0
- package/dist/features/points/schemas/firestore.d.ts +108 -1
- package/dist/features/points/schemas/firestore.js +84 -0
- package/dist/features/pre-orders/components/MarketplacePreorderCard.js +3 -3
- package/dist/features/pre-orders/components/PreOrderBadge.js +1 -1
- package/dist/features/pre-orders/components/PreOrderDetailPageView.js +1 -1
- package/dist/features/price-index/components/PriceIndexToolView.d.ts +23 -4
- package/dist/features/price-index/components/PriceIndexToolView.js +71 -6
- package/dist/features/price-index/market-stats.d.ts +82 -0
- package/dist/features/price-index/market-stats.js +230 -0
- package/dist/features/print/components/BoxLabelPrintView.d.ts +25 -0
- package/dist/features/print/components/BoxLabelPrintView.js +66 -0
- package/dist/features/print/components/LabelProfilePicker.d.ts +13 -0
- package/dist/features/print/components/LabelProfilePicker.js +38 -0
- package/dist/features/print/components/labels.d.ts +117 -0
- package/dist/features/print/components/labels.js +258 -0
- package/dist/features/print/components/labels.style.css +46 -0
- package/dist/features/print/index.d.ts +6 -0
- package/dist/features/print/index.js +16 -0
- package/dist/features/products/columns/productTableColumns.js +5 -4
- package/dist/features/products/components/MarketplaceBundleCard.js +2 -2
- package/dist/features/products/components/MarketplacePrizeDrawCard.js +6 -6
- package/dist/features/products/components/PrizeDrawCollage.js +1 -1
- package/dist/features/products/components/PrizeDrawItemsEditor.js +1 -1
- package/dist/features/products/components/PrizeRevealModal.js +2 -2
- package/dist/features/products/components/ProductDetailPageView.js +18 -4
- package/dist/features/products/components/ProductForm.js +34 -23
- package/dist/features/products/components/ProductGrid.js +86 -62
- package/dist/features/products/constants/card-badges.d.ts +97 -0
- package/dist/features/products/constants/card-badges.js +100 -0
- package/dist/features/products/repository/products.repository.js +34 -1
- package/dist/features/products/schemas/firestore.d.ts +46 -3
- package/dist/features/products/schemas/firestore.js +21 -0
- package/dist/features/promotions/components/PromotionsView.js +1 -1
- package/dist/features/promotions/repository/claimed-coupons.repository.d.ts +32 -0
- package/dist/features/promotions/repository/claimed-coupons.repository.js +58 -0
- package/dist/features/promotions/schemas/firestore.js +30 -3
- package/dist/features/promotions/schemas/index.d.ts +6 -6
- package/dist/features/protection-claims/repository/protection-claims.repository.d.ts +54 -0
- package/dist/features/protection-claims/repository/protection-claims.repository.js +174 -0
- package/dist/features/protection-claims/schemas/firestore.d.ts +168 -0
- package/dist/features/protection-claims/schemas/firestore.js +130 -0
- package/dist/features/reviews/actions/review-actions.js +3 -2
- package/dist/features/reviews/components/ReviewModal.js +1 -1
- package/dist/features/reviews/components/ReviewsList.js +1 -1
- package/dist/features/reviews/schemas/firestore.d.ts +20 -1
- package/dist/features/scams/constants/scam-types.d.ts +2 -0
- package/dist/features/scams/constants/scam-types.js +18 -0
- package/dist/features/scams/schemas/report-form.d.ts +3 -3
- package/dist/features/scams/schemas/report-form.js +26 -1
- package/dist/features/search/components/Search.js +9 -9
- package/dist/features/search/components/SearchResultsClient.js +18 -3
- package/dist/features/search/components/SearchResultsPageView.d.ts +1 -6
- package/dist/features/search/components/SearchResultsPageView.js +2 -2
- package/dist/features/seller/actions/offer-actions.js +16 -1
- package/dist/features/seller/actions/seller-actions.js +14 -3
- package/dist/features/seller/components/CategoryInlineSelect.js +75 -11
- package/dist/features/seller/components/PrintCenterView.d.ts +5 -0
- package/dist/features/seller/components/PrintCenterView.js +41 -30
- package/dist/features/seller/components/SellerOrdersView.js +1 -1
- package/dist/features/seller/components/SellerPayoutRequestView.js +16 -5
- package/dist/features/seller/components/SellerPayoutSettingsView.js +1 -1
- package/dist/features/seller/components/SellerProductShell.d.ts +16 -0
- package/dist/features/seller/components/SellerProductShell.js +123 -13
- package/dist/features/seller/components/SellerReviewsView.js +4 -2
- package/dist/features/seller/components/SellerSidebar.js +1 -1
- package/dist/features/seller/schemas/coupon-form.d.ts +26 -0
- package/dist/features/seller/schemas/coupon-form.js +27 -0
- package/dist/features/seller/schemas/product-form.d.ts +3 -0
- package/dist/features/seller/schemas/product-form.js +5 -0
- package/dist/features/shell/FormShell.js +2 -2
- package/dist/features/shell/QuickFormDrawer.js +14 -0
- package/dist/features/shell/SectionForm.d.ts +19 -0
- package/dist/features/shell/SectionForm.js +133 -9
- package/dist/features/shell/SectionForm.style.css +54 -0
- package/dist/features/shipments/components/AdminShipmentsView.js +16 -1
- package/dist/features/shipments/repository/shipment-items.repository.d.ts +9 -0
- package/dist/features/shipments/repository/shipment-items.repository.js +14 -0
- package/dist/features/site-settings/components/ActionPermissionsManager.js +1 -1
- package/dist/features/sticker-trace/components/StickerCommitPanel.js +1 -1
- package/dist/features/store-extensions/schemas/report-review-form.d.ts +8 -8
- package/dist/features/stores/components/StoreGuideHubView.js +1 -1
- package/dist/features/stores/components/StoreHeader.js +1 -1
- package/dist/features/support/schemas/firestore.d.ts +73 -2
- package/dist/features/support/schemas/firestore.js +59 -0
- package/dist/index.d.ts +16 -24
- package/dist/index.js +38 -47
- package/dist/next/ErrorBoundary.js +1 -1
- package/dist/next/routing/route-map.d.ts +24 -0
- package/dist/next/routing/route-map.js +40 -0
- package/dist/providers/payment-manual/index.d.ts +15 -1
- package/dist/providers/payment-manual/index.js +37 -0
- package/dist/providers/payment-phonepe/index.d.ts +14 -1
- package/dist/providers/payment-phonepe/index.js +36 -0
- package/dist/providers/payment-razorpay/index.d.ts +44 -1
- package/dist/providers/payment-razorpay/index.js +99 -0
- package/dist/providers/shipping-shiprocket/index.d.ts +18 -0
- package/dist/providers/shipping-shiprocket/index.js +18 -0
- package/dist/schemas/registry.d.ts +44 -11
- package/dist/server-entry.d.ts +2 -0
- package/dist/server-entry.js +27 -0
- package/dist/server.d.ts +43 -0
- package/dist/server.js +98 -0
- package/dist/styles.css +418 -149
- package/dist/tailwind-utilities.css +1 -1
- package/dist/tokens/themes/default-dark.js +15 -12
- package/dist/tokens/themes/default-light.js +14 -11
- package/dist/tokens/tokens.css +106 -23
- package/dist/ui/DataTable.style.css +4 -4
- package/dist/ui/columns/cell-renderers.d.ts +20 -0
- package/dist/ui/columns/cell-renderers.js +26 -1
- package/dist/ui/columns/index.d.ts +1 -1
- package/dist/ui/columns/index.js +4 -1
- package/dist/ui/components/Badge.style.css +1 -1
- package/dist/ui/components/Breadcrumb.js +19 -1
- package/dist/ui/components/BulkActionBar.style.css +4 -4
- package/dist/ui/components/Button.style.css +1 -1
- package/dist/ui/components/Checkbox.style.css +1 -1
- package/dist/ui/components/FallbackShell.js +1 -1
- package/dist/ui/components/Form.d.ts +14 -1
- package/dist/ui/components/Form.js +2 -2
- package/dist/ui/components/FormField.js +18 -4
- package/dist/ui/components/FormField.style.css +43 -3
- package/dist/ui/components/GatedPrice.style.css +1 -1
- package/dist/ui/components/IconButton.style.css +1 -1
- package/dist/ui/components/Input.js +22 -1
- package/dist/ui/components/Input.style.css +38 -22
- package/dist/ui/components/ListingFilterDrawer.js +1 -1
- package/dist/ui/components/ListingToolbar.js +1 -1
- package/dist/ui/components/PaginatedSelect.js +0 -0
- package/dist/ui/components/Radio.style.css +1 -1
- package/dist/ui/components/Repeater.d.ts +53 -0
- package/dist/ui/components/Repeater.js +7 -0
- package/dist/ui/components/RichTextEditor.d.ts +20 -1
- package/dist/ui/components/RichTextEditor.js +23 -2
- package/dist/ui/components/Select.style.css +7 -21
- package/dist/ui/components/Semantic.js +27 -3
- package/dist/ui/components/TagInput.style.css +4 -9
- package/dist/ui/components/Textarea.style.css +4 -18
- package/dist/ui/components/Toggle.style.css +1 -1
- package/dist/ui/components/Typography.d.ts +3 -3
- package/dist/ui/components/Typography.js +15 -15
- package/dist/ui/components/ViewToggle.style.css +4 -4
- package/dist/ui/forms/AddAnotherToggle.d.ts +16 -0
- package/dist/ui/forms/AddAnotherToggle.js +56 -0
- package/dist/ui/forms/ColorPickerField.js +15 -2
- package/dist/ui/forms/FieldCheckbox.js +15 -2
- package/dist/ui/forms/FieldInput.d.ts +22 -1
- package/dist/ui/forms/FieldInput.js +19 -5
- package/dist/ui/forms/FieldLabel.d.ts +35 -0
- package/dist/ui/forms/FieldLabel.js +70 -0
- package/dist/ui/forms/FieldSelect.d.ts +4 -1
- package/dist/ui/forms/FieldSelect.js +27 -5
- package/dist/ui/forms/FieldTextarea.d.ts +4 -1
- package/dist/ui/forms/FieldTextarea.js +22 -5
- package/dist/ui/forms/FormShell.d.ts +17 -1
- package/dist/ui/forms/FormShell.js +36 -2
- package/dist/ui/forms/FormShell.style.css +41 -33
- package/dist/ui/forms/index.d.ts +5 -1
- package/dist/ui/forms/index.js +2 -0
- package/dist/ui/icons/icon-registry.d.ts +1 -0
- package/dist/ui/icons/icon-registry.js +17 -1
- package/dist/utils/id-generators.d.ts +80 -0
- package/dist/utils/id-generators.js +93 -0
- package/dist/utils/search-txt-builders.d.ts +12 -0
- package/dist/utils/search-txt-builders.js +17 -0
- package/package.json +1 -1
- package/scripts/seed-cli.mjs +106 -5
- package/dist/features/loyalty/api/admin/loyalty/grant/route.d.ts +0 -12
- package/dist/features/loyalty/api/admin/loyalty/grant/route.js +0 -38
- package/dist/features/loyalty/api/balance/route.d.ts +0 -12
- package/dist/features/loyalty/api/balance/route.js +0 -41
- package/dist/features/loyalty/api/earn/route.d.ts +0 -12
- package/dist/features/loyalty/api/earn/route.js +0 -38
- package/dist/features/loyalty/api/history/route.d.ts +0 -12
- package/dist/features/loyalty/api/history/route.js +0 -58
- package/dist/features/loyalty/api/redeem/route.d.ts +0 -12
- package/dist/features/loyalty/api/redeem/route.js +0 -38
- package/dist/features/loyalty/columns/index.d.ts +0 -17
- package/dist/features/loyalty/columns/index.js +0 -40
- package/dist/features/loyalty/components/CoinsDisplay.d.ts +0 -12
- package/dist/features/loyalty/components/CoinsDisplay.js +0 -10
- package/dist/features/loyalty/components/index.d.ts +0 -1
- package/dist/features/loyalty/components/index.js +0 -1
- package/dist/features/loyalty/hooks/useLoyaltyBalance.d.ts +0 -4
- package/dist/features/loyalty/hooks/useLoyaltyBalance.js +0 -25
- package/dist/features/loyalty/index.d.ts +0 -6
- package/dist/features/loyalty/index.js +0 -6
- package/dist/features/loyalty/manifest.d.ts +0 -2
- package/dist/features/loyalty/manifest.js +0 -16
- package/dist/features/loyalty/messages/en.json +0 -19
- package/dist/features/loyalty/repository/loyalty.repository.d.ts +0 -8
- package/dist/features/loyalty/repository/loyalty.repository.js +0 -22
- package/dist/features/loyalty/schemas/index.d.ts +0 -85
- package/dist/features/loyalty/schemas/index.js +0 -40
- package/dist/features/loyalty/server.d.ts +0 -6
- package/dist/features/loyalty/server.js +0 -6
- package/dist/features/loyalty/types/index.d.ts +0 -31
- package/dist/features/loyalty/types/index.js +0 -1
- package/dist/features/loyalty/types/loyalty-config.d.ts +0 -7
- package/dist/features/loyalty/types/loyalty-config.js +0 -1
- package/dist/features/loyalty/types/loyalty-math.d.ts +0 -9
- package/dist/features/loyalty/types/loyalty-math.js +0 -27
- package/dist/features/products/components/ProductOwnerQuickActions.d.ts +0 -11
- package/dist/features/products/components/ProductOwnerQuickActions.js +0 -120
package/dist/client.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export { BUILT_IN_THEMES, DEFAULT_DARK_THEME, DEFAULT_LIGHT_THEME, REQUIRED_GRAD
|
|
|
31
31
|
export type { GradientKey, RequiredThemeToken, ThemeMode, ThemeRecord, } from "./tokens/themes";
|
|
32
32
|
export { ConfirmDeleteModal } from "./ui/components/ConfirmDeleteModal";
|
|
33
33
|
export { EmptyState } from "./ui/components/EmptyState";
|
|
34
|
+
export { FilterChipGroup } from "./ui/components/FilterChipGroup";
|
|
34
35
|
export { Skeleton } from "./ui/components/Skeleton";
|
|
35
36
|
export { IconBox } from "./ui/components/IconBox";
|
|
36
37
|
export type { IconBoxProps, IconBoxRounded, IconBoxSize, IconBoxTone, } from "./ui/components/IconBox";
|
|
@@ -132,6 +133,7 @@ export { useMediaCrop } from "./features/media/index";
|
|
|
132
133
|
export { useMediaTrim } from "./features/media/index";
|
|
133
134
|
export { useMediaUpload } from "./features/media/index";
|
|
134
135
|
export { SessionProvider, useSession } from "./react/contexts/SessionContext";
|
|
136
|
+
export { useOptionalSession } from "./react/contexts/SessionContext";
|
|
135
137
|
export type { SessionProviderProps } from "./react/contexts/SessionContext";
|
|
136
138
|
export { useUrlTable } from "./react/hooks/useUrlTable";
|
|
137
139
|
export { useTabParam } from "./react/hooks/useTabParam";
|
|
@@ -387,6 +389,10 @@ export type { UserAccountHubViewProps, UserAccountHubViewLabels, UserOrdersViewP
|
|
|
387
389
|
export { useOrders, useOrder, OrdersList } from "./features/orders/index";
|
|
388
390
|
export { OrderStatusTimeline } from "./features/orders/components/OrderStatusTimeline";
|
|
389
391
|
export type { OrderStatusTimelineProps } from "./features/orders/components/OrderStatusTimeline";
|
|
392
|
+
export { PROTECTION_CLAIM_REASON_LABEL } from "./features/protection-claims/schemas/firestore";
|
|
393
|
+
export type { ProtectionClaimReason } from "./features/protection-claims/schemas/firestore";
|
|
394
|
+
export { OrderCompletionPanel } from "./features/orders/components/OrderCompletionPanel";
|
|
395
|
+
export type { OrderCompletionPanelProps, RateableLine } from "./features/orders/components/OrderCompletionPanel";
|
|
390
396
|
export { EmiInstallmentsPanel } from "./features/orders/components/EmiInstallmentsPanel";
|
|
391
397
|
export type { EmiInstallmentsPanelProps } from "./features/orders/components/EmiInstallmentsPanel";
|
|
392
398
|
export { CountdownDisplay } from "./ui/components/CountdownDisplay";
|
|
@@ -411,7 +417,7 @@ export type { PromotionsViewProductSectionProps } from "./features/promotions/co
|
|
|
411
417
|
export { RichText } from "./ui/rich-text/RichText";
|
|
412
418
|
export { RichTextRenderer } from "./ui/rich-text/RichTextRenderer";
|
|
413
419
|
export type { RichTextRendererProps } from "./ui/rich-text/RichTextRenderer";
|
|
414
|
-
export { SCAM_TYPES, SCAM_CATEGORIES, SCAM_TYPE_LABELS, SCAM_CATEGORY_LABELS, getScamType, getScamTypesByCategory, } from "./features/scams/constants/scam-types";
|
|
420
|
+
export { SCAM_TYPES, SCAM_CATEGORIES, SCAM_TYPE_LABELS, SCAM_CATEGORY_LABELS, getScamType, getScamTypesByCategory, isScamType, } from "./features/scams/constants/scam-types";
|
|
415
421
|
export type { ScamType, ScamCategory, ScamTypeDefinition, ScamCategoryDefinition } from "./features/scams/constants/scam-types";
|
|
416
422
|
export { SCAM_PLATFORM_LABELS, ScamPlatformValues, } from "./features/scams/schemas/firestore";
|
|
417
423
|
export type { ScamPlatform } from "./features/scams/schemas/firestore";
|
|
@@ -498,8 +504,8 @@ export type { PaymentProofReviewMessageInput } from "./features/orders/utils/pay
|
|
|
498
504
|
export type { AdminNotificationDocument, ItemRequestDocument, ModerationQueueDocument, ReportDocument, CustomRoleDocument, AnalyticsCardDocument, ListingTemplateDocument, } from "./features/store-extensions/index";
|
|
499
505
|
export { CommandPalette, useCommandPaletteHotkey } from "./features/shell/index";
|
|
500
506
|
export type { CommandPaletteGroup } from "./features/shell/index";
|
|
501
|
-
export { AdminBlogEditorView, AdminBundleEditorView, AdminCarouselEditorView, AdminCategoryEditorView, AdminCouponEditorView, AdminFaqEditorView, AdminFeatureEditorView, AdminOrderEditorView, AdminPayoutMarkPaidModal, AdminAuditLogView, ViewAuditLogEntryModal, AdminProductEditorView, AdminScammerEditorView, AdminEmployeeEditorView, AdminNavEditorView, AdminUserEditorView, AdminStoreEditorView, AdminSublistingCategoryEditorView, AdminSupportTicketDetailView, } from "./features/admin/index";
|
|
502
|
-
export type { AdminStoreEditorViewProps, AdminPayoutMarkPaidModalProps, AdminAuditLogViewProps, AuditLogEntryDetail, ViewAuditLogEntryModalProps } from "./features/admin/index";
|
|
507
|
+
export { AdminBlogEditorView, AdminBundleEditorView, AdminCarouselEditorView, AdminCategoryEditorView, AdminCouponEditorView, AdminFaqEditorView, AdminFeatureEditorView, AdminOrderEditorView, AdminPayoutMarkPaidModal, AdminAuditLogView, AdminMoneyCasesView, AdminGatewayEventsView, ViewAuditLogEntryModal, AdminProductEditorView, AdminScammerEditorView, AdminEmployeeEditorView, AdminNavEditorView, AdminUserEditorView, AdminStoreEditorView, AdminSublistingCategoryEditorView, AdminSupportTicketDetailView, } from "./features/admin/index";
|
|
508
|
+
export type { AdminStoreEditorViewProps, AdminPayoutMarkPaidModalProps, AdminAuditLogViewProps, AdminMoneyCasesViewProps, AuditLogEntryDetail, ViewAuditLogEntryModalProps } from "./features/admin/index";
|
|
503
509
|
export type { NavItemData } from "./features/admin/index";
|
|
504
510
|
export { PageLoader } from "./ui/index";
|
|
505
511
|
export { ADMIN_CHECKOUT_BYPASS_FLAG_KEY } from "./features/admin/schemas/firestore";
|
|
@@ -535,7 +541,7 @@ export type { PriceGuidanceHintProps } from "./features/categories/components/Pr
|
|
|
535
541
|
export { BrandInlineSelect } from "./features/seller/components/BrandInlineSelect";
|
|
536
542
|
export { API_ENDPOINTS } from "./constants/index";
|
|
537
543
|
export { SELLER_LISTING_TABS, type SellerListingTabId, } from "./features/products/constants/listing-tabs";
|
|
538
|
-
export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs";
|
|
544
|
+
export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_PROTECTION_CLAIM_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs";
|
|
539
545
|
export { PRODUCT_FIELDS, PRODUCT_STATUS_TRANSITIONS, ORDER_FIELDS, REVIEW_FIELDS, BID_FIELDS, AD_FIELDS, EVENT_FIELDS, EVENT_ENTRY_FIELDS, PAYOUT_FIELDS, STORE_FIELDS, CATEGORY_FIELDS, BLOG_FIELDS, USER_FIELDS, ADDRESS_FIELDS, BRAND_FIELDS, CART_FIELDS, WISHLIST_FIELDS, HISTORY_FIELDS, NOTIFICATION_FIELDS, SESSION_FIELDS, COUPON_USAGE_FIELDS, SCAMMER_FIELDS, SUPPORT_TICKET_FIELDS, CAROUSEL_FIELDS, COUPON_FIELDS, FAQ_FIELDS, HOMEPAGE_SECTION_FIELDS, SITE_SETTINGS_FIELDS, COMMON_FIELDS, OAUTH_STATE_VALUES, SCHEMA_DEFAULTS, } from "./constants/field-names";
|
|
540
546
|
export { CART_LANE, CART_LANE_PRIORITY, CART_LANE_LABELS, laneOf, activeLane, laneItems, laneCounts, isLaneCheckoutable, laneBlockReason, isLockedLane, canAddNewItems, type CartLane, type LaneAssignable, } from "./_internal/shared/checkout/lanes";
|
|
541
547
|
export { roundShippingUp, toQuoteOptions, reconcileShipping, SHIPPING_ROUND_UP_TO, type ShippingQuoteOption, type SelectedShippingQuote, type ActualShipmentCost, type ShippingReconciliation, } from "./_internal/shared/shipping/quote";
|
package/dist/client.js
CHANGED
|
@@ -52,6 +52,9 @@ export { BUILT_IN_THEMES, DEFAULT_DARK_THEME, DEFAULT_LIGHT_THEME, REQUIRED_GRAD
|
|
|
52
52
|
export { ConfirmDeleteModal } from "./ui/components/ConfirmDeleteModal.js";
|
|
53
53
|
// S-STORE — pure-UI primitives + Seller view consumed by new dashboard pages
|
|
54
54
|
export { EmptyState } from "./ui/components/EmptyState.js";
|
|
55
|
+
/* FilterChipGroup — a client UI primitive that existed, was used by
|
|
56
|
+
`ProtectionClaimsClient`, and was never exported here. */
|
|
57
|
+
export { FilterChipGroup } from "./ui/components/FilterChipGroup.js";
|
|
55
58
|
export { Skeleton } from "./ui/components/Skeleton.js";
|
|
56
59
|
// IconBox — square-icon container primitive; was exported from index.ts only,
|
|
57
60
|
// missing here even though CLAUDE.md documents it as a client-usable pattern.
|
|
@@ -199,6 +202,14 @@ export { useMediaTrim } from "./features/media/index.js";
|
|
|
199
202
|
export { useMediaUpload } from "./features/media/index.js";
|
|
200
203
|
// Client-side context providers
|
|
201
204
|
export { SessionProvider, useSession } from "./react/contexts/SessionContext.js";
|
|
205
|
+
/*
|
|
206
|
+
* 🛑 `useOptionalSession` — returns null instead of throwing when no provider
|
|
207
|
+
* is mounted. Required by anything that renders on a PUBLIC page and adjusts
|
|
208
|
+
* for the viewer: library code must not demand a provider (Root Cause #20),
|
|
209
|
+
* and the no-provider path has to fail CLOSED. `useCanSeePrices` already
|
|
210
|
+
* depends on it; the grievance form on /grievance is the second consumer.
|
|
211
|
+
*/
|
|
212
|
+
export { useOptionalSession } from "./react/contexts/SessionContext.js";
|
|
202
213
|
// ThemeProvider — exported above alongside the registry-aware variant.
|
|
203
214
|
export { useUrlTable } from "./react/hooks/useUrlTable.js";
|
|
204
215
|
export { useTabParam } from "./react/hooks/useTabParam.js";
|
|
@@ -405,6 +416,21 @@ export { couponDraftToPayload } from "./features/seller/schemas/coupon-form.js";
|
|
|
405
416
|
export { UserAccountHubView, UserOrdersView, UserBidsView, OrderDetailView, UserReturnsView, useNotifications } from "./features/account/index.js";
|
|
406
417
|
export { useOrders, useOrder, OrdersList } from "./features/orders/index.js";
|
|
407
418
|
export { OrderStatusTimeline } from "./features/orders/components/OrderStatusTimeline.js";
|
|
419
|
+
/*
|
|
420
|
+
* The buyer's completion surface. Client entry only — it fetches and posts.
|
|
421
|
+
*/
|
|
422
|
+
/*
|
|
423
|
+
* Buyer-facing claim reason labels. A pure `Record<Reason, string>` — no
|
|
424
|
+
* firebase-admin anywhere in its chain, so it is client-safe.
|
|
425
|
+
*
|
|
426
|
+
* 🛑 CLIENT entry only, not also `index.ts`. The buyer's claim form is the only
|
|
427
|
+
* consumer and it is a `"use client"` module; adding it to the main barrel
|
|
428
|
+
* would widen the graph the build-weight work is unwinding for no reader. The
|
|
429
|
+
* admin queue reads the same map through `/server`, which already exports the
|
|
430
|
+
* schema module.
|
|
431
|
+
*/
|
|
432
|
+
export { PROTECTION_CLAIM_REASON_LABEL } from "./features/protection-claims/schemas/firestore.js";
|
|
433
|
+
export { OrderCompletionPanel } from "./features/orders/components/OrderCompletionPanel.js";
|
|
408
434
|
// Buyer-facing EMI schedule with a pay-any-instalment action.
|
|
409
435
|
export { EmiInstallmentsPanel } from "./features/orders/components/EmiInstallmentsPanel.js";
|
|
410
436
|
export { CountdownDisplay } from "./ui/components/CountdownDisplay.js";
|
|
@@ -422,7 +448,7 @@ export { PromotionsViewProductSection, PromotionsHero, PromotionsView } from "./
|
|
|
422
448
|
export { RichText } from "./ui/rich-text/RichText.js";
|
|
423
449
|
export { RichTextRenderer } from "./ui/rich-text/RichTextRenderer.js";
|
|
424
450
|
// Scam registry — pure data constants safe for client bundle
|
|
425
|
-
export { SCAM_TYPES, SCAM_CATEGORIES, SCAM_TYPE_LABELS, SCAM_CATEGORY_LABELS, getScamType, getScamTypesByCategory, } from "./features/scams/constants/scam-types.js";
|
|
451
|
+
export { SCAM_TYPES, SCAM_CATEGORIES, SCAM_TYPE_LABELS, SCAM_CATEGORY_LABELS, getScamType, getScamTypesByCategory, isScamType, } from "./features/scams/constants/scam-types.js";
|
|
426
452
|
export { SCAM_PLATFORM_LABELS, ScamPlatformValues, } from "./features/scams/schemas/firestore.js";
|
|
427
453
|
// History (recently-viewed) — client hook + guest util + cap constants
|
|
428
454
|
export { useHistory, useHistoryMergeOnLogin, getGuestHistory, trackGuestHistory, removeGuestHistoryItem, clearGuestHistory, getGuestHistoryCount, HistoryTracker, } from "./features/history/index.js";
|
|
@@ -515,7 +541,7 @@ export { normalizeError, getErrorMessage, isApiNormalized, isAppNormalized, isFi
|
|
|
515
541
|
*/
|
|
516
542
|
export { buildPaymentProofReviewMessage } from "./features/orders/utils/payment-proof-message.js";
|
|
517
543
|
export { CommandPalette, useCommandPaletteHotkey } from "./features/shell/index.js";
|
|
518
|
-
export { AdminBlogEditorView, AdminBundleEditorView, AdminCarouselEditorView, AdminCategoryEditorView, AdminCouponEditorView, AdminFaqEditorView, AdminFeatureEditorView, AdminOrderEditorView, AdminPayoutMarkPaidModal, AdminAuditLogView, ViewAuditLogEntryModal, AdminProductEditorView, AdminScammerEditorView,
|
|
544
|
+
export { AdminBlogEditorView, AdminBundleEditorView, AdminCarouselEditorView, AdminCategoryEditorView, AdminCouponEditorView, AdminFaqEditorView, AdminFeatureEditorView, AdminOrderEditorView, AdminPayoutMarkPaidModal, AdminAuditLogView, AdminMoneyCasesView, AdminGatewayEventsView, ViewAuditLogEntryModal, AdminProductEditorView, AdminScammerEditorView,
|
|
519
545
|
// Client-exported for the W22 /admin/team/{new,[id]/edit} pages. It was
|
|
520
546
|
// reachable only from `index.ts` (the SERVER entry), which a "use client"
|
|
521
547
|
// page must never import — that is the Turbopack client-bundle trap.
|
|
@@ -544,7 +570,7 @@ export { API_ENDPOINTS } from "./constants/index.js";
|
|
|
544
570
|
// [CLIENT-SAFE] Pure, zero-import constant files — dashboard filter-tab
|
|
545
571
|
// sets and Firestore field-name maps. No server dependency of any kind.
|
|
546
572
|
export { SELLER_LISTING_TABS, } from "./features/products/constants/listing-tabs.js";
|
|
547
|
-
export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs.js";
|
|
573
|
+
export { ALL_TAB, EMPTY_TAB, ADMIN_PRODUCT_STATUS_TABS, ADMIN_PRODUCT_LISTING_TYPE_TABS, ADMIN_BLOG_STATUS_TABS, ADMIN_USER_STATUS_TABS, ADMIN_USER_ROLE_TABS, ADMIN_STORE_STATUS_TABS, ADMIN_PAYOUT_STATUS_TABS, ADMIN_ORDER_STATUS_TABS, ADMIN_PROTECTION_CLAIM_STATUS_TABS, ADMIN_REVIEW_STATUS_TABS, ADMIN_REVIEW_RATING_TABS, ADMIN_BID_STATUS_TABS, ADMIN_CONTACT_STATUS_TABS, ADMIN_NEWSLETTER_STATUS_TABS, ADMIN_EVENT_ENTRY_STATUS_TABS, ADMIN_EVENT_STATUS_TABS, ADMIN_CART_OWNERSHIP_TABS, ADMIN_COUPON_TYPE_TABS, SELLER_PRODUCT_STATUS_TABS, SELLER_AUCTION_STATUS_TABS, SELLER_ORDER_STATUS_TABS, SELLER_OFFER_STATUS_TABS, SELLER_BID_STATUS_TABS, } from "./features/admin/constants/filter-tabs.js";
|
|
548
574
|
export { PRODUCT_FIELDS, PRODUCT_STATUS_TRANSITIONS, ORDER_FIELDS, REVIEW_FIELDS, BID_FIELDS, AD_FIELDS, EVENT_FIELDS, EVENT_ENTRY_FIELDS, PAYOUT_FIELDS, STORE_FIELDS, CATEGORY_FIELDS, BLOG_FIELDS, USER_FIELDS, ADDRESS_FIELDS, BRAND_FIELDS, CART_FIELDS, WISHLIST_FIELDS, HISTORY_FIELDS, NOTIFICATION_FIELDS, SESSION_FIELDS, COUPON_USAGE_FIELDS, SCAMMER_FIELDS, SUPPORT_TICKET_FIELDS, CAROUSEL_FIELDS, COUPON_FIELDS, FAQ_FIELDS, HOMEPAGE_SECTION_FIELDS, SITE_SETTINGS_FIELDS, COMMON_FIELDS, OAUTH_STATE_VALUES, SCHEMA_DEFAULTS, } from "./constants/field-names.js";
|
|
549
575
|
// Checkout lanes — the derived auction > offer > standard partition of the
|
|
550
576
|
// cart, and the priority rule that decides which one may be checked out.
|
|
@@ -42,20 +42,8 @@ export declare function defineTailwindConfig(override?: TailwindConfigOverride):
|
|
|
42
42
|
secondary: string;
|
|
43
43
|
accent: string;
|
|
44
44
|
surface: string;
|
|
45
|
-
"surface-muted": string;
|
|
46
45
|
"surface-elevated": string;
|
|
47
|
-
"on-surface": string;
|
|
48
|
-
"on-surface-muted": string;
|
|
49
46
|
border: string;
|
|
50
|
-
"border-strong": string;
|
|
51
|
-
divider: string;
|
|
52
|
-
"text-primary": string;
|
|
53
|
-
"text-secondary": string;
|
|
54
|
-
"text-tertiary": string;
|
|
55
|
-
"text-disabled": string;
|
|
56
|
-
"text-inverse": string;
|
|
57
|
-
link: string;
|
|
58
|
-
"link-hover": string;
|
|
59
47
|
success: {
|
|
60
48
|
DEFAULT: string;
|
|
61
49
|
surface: string;
|
package/dist/configs/tailwind.js
CHANGED
|
@@ -38,23 +38,36 @@ export function defineTailwindConfig(override = {}) {
|
|
|
38
38
|
primary: "var(--appkit-color-primary)",
|
|
39
39
|
secondary: "var(--appkit-color-secondary)",
|
|
40
40
|
accent: "var(--appkit-color-accent)",
|
|
41
|
-
|
|
41
|
+
/*
|
|
42
|
+
* Surface
|
|
43
|
+
*
|
|
44
|
+
* 🛑 THIRTEEN ENTRIES WERE DELETED FROM HERE, and every one of them
|
|
45
|
+
* generated an invalid declaration.
|
|
46
|
+
*
|
|
47
|
+
* They mapped to camelCase custom properties — `--appkit-color-surfaceMuted`,
|
|
48
|
+
* `--appkit-color-textPrimary`, `--appkit-color-borderStrong`,
|
|
49
|
+
* `--appkit-color-linkHover` and nine more — and **not one of those
|
|
50
|
+
* names is declared anywhere**. The real tokens are kebab-case. So
|
|
51
|
+
* `bg-surface-muted` compiled to
|
|
52
|
+
* `background-color: var(--appkit-color-surfaceMuted)`, which is
|
|
53
|
+
* undefined with no fallback, which drops the declaration at
|
|
54
|
+
* computed-value time: the utility existed, was documented by its
|
|
55
|
+
* presence here, and did nothing.
|
|
56
|
+
*
|
|
57
|
+
* Deleted rather than renamed because all ten named utilities have
|
|
58
|
+
* ZERO uses across both repos (measured), and once corrected most
|
|
59
|
+
* would have been redundant aliases of utilities that already work
|
|
60
|
+
* — `text-text-primary` for `text-[var(--appkit-color-text)]`. A
|
|
61
|
+
* config entry that advertises a utility which silently no-ops is a
|
|
62
|
+
* trap for whoever writes the natural-looking class next; an absent
|
|
63
|
+
* entry is a compile-time nothing they will notice immediately.
|
|
64
|
+
*
|
|
65
|
+
* `surface-elevated` is kept because it names a real, distinct token
|
|
66
|
+
* that no other utility reaches — with its var spelled correctly.
|
|
67
|
+
*/
|
|
42
68
|
surface: "var(--appkit-color-surface)",
|
|
43
|
-
"surface-
|
|
44
|
-
"surface-elevated": "var(--appkit-color-surfaceElevated)",
|
|
45
|
-
"on-surface": "var(--appkit-color-onSurface)",
|
|
46
|
-
"on-surface-muted": "var(--appkit-color-onSurfaceMuted)",
|
|
69
|
+
"surface-elevated": "var(--appkit-color-surface-elevated)",
|
|
47
70
|
border: "var(--appkit-color-border)",
|
|
48
|
-
"border-strong": "var(--appkit-color-borderStrong)",
|
|
49
|
-
divider: "var(--appkit-color-divider)",
|
|
50
|
-
// Text
|
|
51
|
-
"text-primary": "var(--appkit-color-textPrimary)",
|
|
52
|
-
"text-secondary": "var(--appkit-color-textSecondary)",
|
|
53
|
-
"text-tertiary": "var(--appkit-color-textTertiary)",
|
|
54
|
-
"text-disabled": "var(--appkit-color-textDisabled)",
|
|
55
|
-
"text-inverse": "var(--appkit-color-textInverse)",
|
|
56
|
-
link: "var(--appkit-color-link)",
|
|
57
|
-
"link-hover": "var(--appkit-color-linkHover)",
|
|
58
71
|
// State — semantic colors with surface sub-keys
|
|
59
72
|
success: {
|
|
60
73
|
DEFAULT: "var(--appkit-color-success)",
|
|
@@ -150,6 +150,18 @@ export declare const ADMIN_ENDPOINTS: {
|
|
|
150
150
|
readonly PAYOUTS_EXPORT: "/api/admin/payouts/export";
|
|
151
151
|
readonly AUDIT_LOG: "/api/admin/audit-log";
|
|
152
152
|
readonly AUDIT_LOG_BY_ID: (id: string) => string;
|
|
153
|
+
readonly PAYMENT_CASES: "/api/admin/payment-cases";
|
|
154
|
+
readonly PAYMENT_CASE_BY_ID: (id: string) => string;
|
|
155
|
+
readonly PROTECTION_CLAIMS: "/api/admin/protection-claims";
|
|
156
|
+
readonly PROTECTION_CLAIM_BY_ID: (id: string) => string;
|
|
157
|
+
/**
|
|
158
|
+
* Credit or debit a buyer's points by hand — `admin_adjustment`'s first human
|
|
159
|
+
* writer (D48). POST only; the balance and ledger are already readable from
|
|
160
|
+
* the user detail surfaces, so there is no matching GET.
|
|
161
|
+
*/
|
|
162
|
+
readonly POINTS: "/api/admin/points";
|
|
163
|
+
readonly MAINTENANCE_GATEWAY_EVENTS: "/api/admin/maintenance/gateway-events";
|
|
164
|
+
readonly MAINTENANCE_OBLIGATIONS: "/api/admin/maintenance/obligations";
|
|
153
165
|
readonly SHIPMENTS: "/api/admin/shipments";
|
|
154
166
|
readonly SHIPMENT_BY_ID: (id: string) => string;
|
|
155
167
|
readonly SHIPMENT_LOTS: (id: string) => string;
|
|
@@ -159,6 +171,11 @@ export declare const ADMIN_ENDPOINTS: {
|
|
|
159
171
|
readonly SHIPMENT_LOT_ITEMS_BULK: (id: string, lotId: string) => string;
|
|
160
172
|
readonly SHIPMENT_LOT_ITEM_LINK: (id: string, lotId: string, itemId: string) => string;
|
|
161
173
|
readonly SHIPMENTS_PROJECTIONS: "/api/admin/shipments/projections";
|
|
174
|
+
readonly INVENTORY_BOXES: "/api/admin/inventory/boxes";
|
|
175
|
+
readonly INVENTORY_BOX_BY_ID: (id: string) => string;
|
|
176
|
+
readonly INVENTORY_PLACEMENTS: "/api/admin/inventory/placements";
|
|
177
|
+
readonly INVENTORY_MOVEMENTS: "/api/admin/inventory/movements";
|
|
178
|
+
readonly INVENTORY_RECEIVE: "/api/admin/inventory/receive";
|
|
162
179
|
readonly CATALOGUE_APPROVALS: "/api/admin/catalogue";
|
|
163
180
|
readonly CATALOGUE_APPROVE: (id: string) => string;
|
|
164
181
|
readonly CATALOGUE_REJECT: (id: string) => string;
|
|
@@ -411,9 +428,6 @@ export declare const HOMEPAGE_ENDPOINTS: {
|
|
|
411
428
|
readonly CAROUSEL: "/api/carousel";
|
|
412
429
|
readonly NEWSLETTER_SUBSCRIBE: "/api/newsletter/subscribe";
|
|
413
430
|
};
|
|
414
|
-
export declare const LOYALTY_ENDPOINTS: {
|
|
415
|
-
readonly BALANCE: (uid: string) => string;
|
|
416
|
-
};
|
|
417
431
|
export declare const ANALYTICS_ENDPOINTS: {
|
|
418
432
|
readonly PAGE_VIEW: "/api/analytics/pageview";
|
|
419
433
|
};
|
|
@@ -718,6 +732,18 @@ export declare const API_ENDPOINTS: {
|
|
|
718
732
|
readonly PAYOUTS_EXPORT: "/api/admin/payouts/export";
|
|
719
733
|
readonly AUDIT_LOG: "/api/admin/audit-log";
|
|
720
734
|
readonly AUDIT_LOG_BY_ID: (id: string) => string;
|
|
735
|
+
readonly PAYMENT_CASES: "/api/admin/payment-cases";
|
|
736
|
+
readonly PAYMENT_CASE_BY_ID: (id: string) => string;
|
|
737
|
+
readonly PROTECTION_CLAIMS: "/api/admin/protection-claims";
|
|
738
|
+
readonly PROTECTION_CLAIM_BY_ID: (id: string) => string;
|
|
739
|
+
/**
|
|
740
|
+
* Credit or debit a buyer's points by hand — `admin_adjustment`'s first human
|
|
741
|
+
* writer (D48). POST only; the balance and ledger are already readable from
|
|
742
|
+
* the user detail surfaces, so there is no matching GET.
|
|
743
|
+
*/
|
|
744
|
+
readonly POINTS: "/api/admin/points";
|
|
745
|
+
readonly MAINTENANCE_GATEWAY_EVENTS: "/api/admin/maintenance/gateway-events";
|
|
746
|
+
readonly MAINTENANCE_OBLIGATIONS: "/api/admin/maintenance/obligations";
|
|
721
747
|
readonly SHIPMENTS: "/api/admin/shipments";
|
|
722
748
|
readonly SHIPMENT_BY_ID: (id: string) => string;
|
|
723
749
|
readonly SHIPMENT_LOTS: (id: string) => string;
|
|
@@ -727,6 +753,11 @@ export declare const API_ENDPOINTS: {
|
|
|
727
753
|
readonly SHIPMENT_LOT_ITEMS_BULK: (id: string, lotId: string) => string;
|
|
728
754
|
readonly SHIPMENT_LOT_ITEM_LINK: (id: string, lotId: string, itemId: string) => string;
|
|
729
755
|
readonly SHIPMENTS_PROJECTIONS: "/api/admin/shipments/projections";
|
|
756
|
+
readonly INVENTORY_BOXES: "/api/admin/inventory/boxes";
|
|
757
|
+
readonly INVENTORY_BOX_BY_ID: (id: string) => string;
|
|
758
|
+
readonly INVENTORY_PLACEMENTS: "/api/admin/inventory/placements";
|
|
759
|
+
readonly INVENTORY_MOVEMENTS: "/api/admin/inventory/movements";
|
|
760
|
+
readonly INVENTORY_RECEIVE: "/api/admin/inventory/receive";
|
|
730
761
|
readonly CATALOGUE_APPROVALS: "/api/admin/catalogue";
|
|
731
762
|
readonly CATALOGUE_APPROVE: (id: string) => string;
|
|
732
763
|
readonly CATALOGUE_REJECT: (id: string) => string;
|
|
@@ -926,9 +957,6 @@ export declare const API_ENDPOINTS: {
|
|
|
926
957
|
readonly CAROUSEL: "/api/carousel";
|
|
927
958
|
readonly NEWSLETTER_SUBSCRIBE: "/api/newsletter/subscribe";
|
|
928
959
|
};
|
|
929
|
-
readonly LOYALTY: {
|
|
930
|
-
readonly BALANCE: (uid: string) => string;
|
|
931
|
-
};
|
|
932
960
|
readonly ANALYTICS: {
|
|
933
961
|
readonly PAGE_VIEW: "/api/analytics/pageview";
|
|
934
962
|
};
|
|
@@ -1251,6 +1279,18 @@ export declare const API_ROUTES: {
|
|
|
1251
1279
|
readonly PAYOUTS_EXPORT: "/api/admin/payouts/export";
|
|
1252
1280
|
readonly AUDIT_LOG: "/api/admin/audit-log";
|
|
1253
1281
|
readonly AUDIT_LOG_BY_ID: (id: string) => string;
|
|
1282
|
+
readonly PAYMENT_CASES: "/api/admin/payment-cases";
|
|
1283
|
+
readonly PAYMENT_CASE_BY_ID: (id: string) => string;
|
|
1284
|
+
readonly PROTECTION_CLAIMS: "/api/admin/protection-claims";
|
|
1285
|
+
readonly PROTECTION_CLAIM_BY_ID: (id: string) => string;
|
|
1286
|
+
/**
|
|
1287
|
+
* Credit or debit a buyer's points by hand — `admin_adjustment`'s first human
|
|
1288
|
+
* writer (D48). POST only; the balance and ledger are already readable from
|
|
1289
|
+
* the user detail surfaces, so there is no matching GET.
|
|
1290
|
+
*/
|
|
1291
|
+
readonly POINTS: "/api/admin/points";
|
|
1292
|
+
readonly MAINTENANCE_GATEWAY_EVENTS: "/api/admin/maintenance/gateway-events";
|
|
1293
|
+
readonly MAINTENANCE_OBLIGATIONS: "/api/admin/maintenance/obligations";
|
|
1254
1294
|
readonly SHIPMENTS: "/api/admin/shipments";
|
|
1255
1295
|
readonly SHIPMENT_BY_ID: (id: string) => string;
|
|
1256
1296
|
readonly SHIPMENT_LOTS: (id: string) => string;
|
|
@@ -1260,6 +1300,11 @@ export declare const API_ROUTES: {
|
|
|
1260
1300
|
readonly SHIPMENT_LOT_ITEMS_BULK: (id: string, lotId: string) => string;
|
|
1261
1301
|
readonly SHIPMENT_LOT_ITEM_LINK: (id: string, lotId: string, itemId: string) => string;
|
|
1262
1302
|
readonly SHIPMENTS_PROJECTIONS: "/api/admin/shipments/projections";
|
|
1303
|
+
readonly INVENTORY_BOXES: "/api/admin/inventory/boxes";
|
|
1304
|
+
readonly INVENTORY_BOX_BY_ID: (id: string) => string;
|
|
1305
|
+
readonly INVENTORY_PLACEMENTS: "/api/admin/inventory/placements";
|
|
1306
|
+
readonly INVENTORY_MOVEMENTS: "/api/admin/inventory/movements";
|
|
1307
|
+
readonly INVENTORY_RECEIVE: "/api/admin/inventory/receive";
|
|
1263
1308
|
readonly CATALOGUE_APPROVALS: "/api/admin/catalogue";
|
|
1264
1309
|
readonly CATALOGUE_APPROVE: (id: string) => string;
|
|
1265
1310
|
readonly CATALOGUE_REJECT: (id: string) => string;
|
|
@@ -1459,9 +1504,6 @@ export declare const API_ROUTES: {
|
|
|
1459
1504
|
readonly CAROUSEL: "/api/carousel";
|
|
1460
1505
|
readonly NEWSLETTER_SUBSCRIBE: "/api/newsletter/subscribe";
|
|
1461
1506
|
};
|
|
1462
|
-
readonly LOYALTY: {
|
|
1463
|
-
readonly BALANCE: (uid: string) => string;
|
|
1464
|
-
};
|
|
1465
1507
|
readonly ANALYTICS: {
|
|
1466
1508
|
readonly PAGE_VIEW: "/api/analytics/pageview";
|
|
1467
1509
|
};
|
|
@@ -187,6 +187,23 @@ export const ADMIN_ENDPOINTS = {
|
|
|
187
187
|
PAYOUTS_EXPORT: "/api/admin/payouts/export",
|
|
188
188
|
AUDIT_LOG: "/api/admin/audit-log",
|
|
189
189
|
AUDIT_LOG_BY_ID: (id) => `/api/admin/audit-log/${id}`,
|
|
190
|
+
/*
|
|
191
|
+
* Payment protection. `payment-cases` is NOT under `maintenance/` — see the
|
|
192
|
+
* route-map entry for why: maintenance means "something broke, look when you
|
|
193
|
+
* can", and a chargeback has a clock and real money.
|
|
194
|
+
*/
|
|
195
|
+
PAYMENT_CASES: "/api/admin/payment-cases",
|
|
196
|
+
PAYMENT_CASE_BY_ID: (id) => `/api/admin/payment-cases/${id}`,
|
|
197
|
+
PROTECTION_CLAIMS: "/api/admin/protection-claims",
|
|
198
|
+
PROTECTION_CLAIM_BY_ID: (id) => `/api/admin/protection-claims/${id}`,
|
|
199
|
+
/**
|
|
200
|
+
* Credit or debit a buyer's points by hand — `admin_adjustment`'s first human
|
|
201
|
+
* writer (D48). POST only; the balance and ledger are already readable from
|
|
202
|
+
* the user detail surfaces, so there is no matching GET.
|
|
203
|
+
*/
|
|
204
|
+
POINTS: "/api/admin/points",
|
|
205
|
+
MAINTENANCE_GATEWAY_EVENTS: "/api/admin/maintenance/gateway-events",
|
|
206
|
+
MAINTENANCE_OBLIGATIONS: "/api/admin/maintenance/obligations",
|
|
190
207
|
SHIPMENTS: "/api/admin/shipments",
|
|
191
208
|
SHIPMENT_BY_ID: (id) => `/api/admin/shipments/${id}`,
|
|
192
209
|
SHIPMENT_LOTS: (id) => `/api/admin/shipments/${id}/lots`,
|
|
@@ -196,6 +213,12 @@ export const ADMIN_ENDPOINTS = {
|
|
|
196
213
|
SHIPMENT_LOT_ITEMS_BULK: (id, lotId) => `/api/admin/shipments/${id}/lots/${lotId}/items/bulk`,
|
|
197
214
|
SHIPMENT_LOT_ITEM_LINK: (id, lotId, itemId) => `/api/admin/shipments/${id}/lots/${lotId}/items/${itemId}/link`,
|
|
198
215
|
SHIPMENTS_PROJECTIONS: "/api/admin/shipments/projections",
|
|
216
|
+
// Inventory — the box registry, placements and the move ledger.
|
|
217
|
+
INVENTORY_BOXES: "/api/admin/inventory/boxes",
|
|
218
|
+
INVENTORY_BOX_BY_ID: (id) => `/api/admin/inventory/boxes/${id}`,
|
|
219
|
+
INVENTORY_PLACEMENTS: "/api/admin/inventory/placements",
|
|
220
|
+
INVENTORY_MOVEMENTS: "/api/admin/inventory/movements",
|
|
221
|
+
INVENTORY_RECEIVE: "/api/admin/inventory/receive",
|
|
199
222
|
CATALOGUE_APPROVALS: "/api/admin/catalogue",
|
|
200
223
|
CATALOGUE_APPROVE: (id) => `/api/admin/catalogue/${id}/approve`,
|
|
201
224
|
CATALOGUE_REJECT: (id) => `/api/admin/catalogue/${id}/reject`,
|
|
@@ -525,12 +548,6 @@ export const HOMEPAGE_ENDPOINTS = {
|
|
|
525
548
|
NEWSLETTER_SUBSCRIBE: "/api/newsletter/subscribe",
|
|
526
549
|
};
|
|
527
550
|
// ---------------------------------------------------------------------------
|
|
528
|
-
// Loyalty
|
|
529
|
-
// ---------------------------------------------------------------------------
|
|
530
|
-
export const LOYALTY_ENDPOINTS = {
|
|
531
|
-
BALANCE: (uid) => `/api/loyalty/balance?uid=${uid}`,
|
|
532
|
-
};
|
|
533
|
-
// ---------------------------------------------------------------------------
|
|
534
551
|
// Analytics — page-view tracking (public pages only)
|
|
535
552
|
// ---------------------------------------------------------------------------
|
|
536
553
|
export const ANALYTICS_ENDPOINTS = {
|
|
@@ -785,7 +802,6 @@ export const API_ENDPOINTS = {
|
|
|
785
802
|
LOTTERY: LOTTERY_ENDPOINTS,
|
|
786
803
|
FAQS: FAQ_ENDPOINTS,
|
|
787
804
|
HOMEPAGE: HOMEPAGE_ENDPOINTS,
|
|
788
|
-
LOYALTY: LOYALTY_ENDPOINTS,
|
|
789
805
|
ANALYTICS: ANALYTICS_ENDPOINTS,
|
|
790
806
|
MEDIA: MEDIA_ENDPOINTS,
|
|
791
807
|
ORDERS: ORDER_ENDPOINTS,
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* import { COLLECTION_CACHE_PATHS } from "@mohasinac/appkit/constants";
|
|
10
10
|
* import { resolveEndpoint } from "@mohasinac/appkit/constants";
|
|
11
11
|
*/
|
|
12
|
-
export { API_ENDPOINTS, API_ROUTES, LOGS_ENDPOINTS, AUTH_ENDPOINTS, ACCOUNT_ENDPOINTS, NOTIFICATIONS_ENDPOINTS, SITE_SETTINGS_ENDPOINTS, ADMIN_ENDPOINTS, AUCTION_ENDPOINTS, BID_ENDPOINTS, CART_ENDPOINTS, CATEGORY_ENDPOINTS, CHECKOUT_ENDPOINTS, PAYMENT_ENDPOINTS, COLLECTION_ENDPOINTS, CONSULTATION_ENDPOINTS, CORPORATE_ENDPOINTS, EVENT_ENDPOINTS, FAQ_ENDPOINTS, HOMEPAGE_ENDPOINTS,
|
|
12
|
+
export { API_ENDPOINTS, API_ROUTES, LOGS_ENDPOINTS, AUTH_ENDPOINTS, ACCOUNT_ENDPOINTS, NOTIFICATIONS_ENDPOINTS, SITE_SETTINGS_ENDPOINTS, ADMIN_ENDPOINTS, AUCTION_ENDPOINTS, BID_ENDPOINTS, CART_ENDPOINTS, CATEGORY_ENDPOINTS, CHECKOUT_ENDPOINTS, PAYMENT_ENDPOINTS, COLLECTION_ENDPOINTS, CONSULTATION_ENDPOINTS, CORPORATE_ENDPOINTS, EVENT_ENDPOINTS, FAQ_ENDPOINTS, HOMEPAGE_ENDPOINTS, ANALYTICS_ENDPOINTS, MEDIA_ENDPOINTS, ORDER_ENDPOINTS, PREORDER_ENDPOINTS, PRODUCT_ENDPOINTS, PROMOTION_ENDPOINTS, REVIEW_ENDPOINTS, SEARCH_ENDPOINTS, SELLER_ENDPOINTS, BLOG_ENDPOINTS, STORE_ENDPOINTS, WISHLIST_ENDPOINTS, PROFILE_STATS_ENDPOINTS, } from "./api-endpoints";
|
|
13
13
|
export { COLLECTION_CACHE_PATHS } from "./cache-invalidation";
|
|
14
14
|
export { PAGE_SIZES, MAX_PAGE_SIZE, FEATURED_LIMITS, SITEMAP_LIMITS, } from "./pagination-presets";
|
|
15
15
|
export type { PageSizeKey } from "./pagination-presets";
|
package/dist/constants/index.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* import { COLLECTION_CACHE_PATHS } from "@mohasinac/appkit/constants";
|
|
10
10
|
* import { resolveEndpoint } from "@mohasinac/appkit/constants";
|
|
11
11
|
*/
|
|
12
|
-
export { API_ENDPOINTS, API_ROUTES, LOGS_ENDPOINTS, AUTH_ENDPOINTS, ACCOUNT_ENDPOINTS, NOTIFICATIONS_ENDPOINTS, SITE_SETTINGS_ENDPOINTS, ADMIN_ENDPOINTS, AUCTION_ENDPOINTS, BID_ENDPOINTS, CART_ENDPOINTS, CATEGORY_ENDPOINTS, CHECKOUT_ENDPOINTS, PAYMENT_ENDPOINTS, COLLECTION_ENDPOINTS, CONSULTATION_ENDPOINTS, CORPORATE_ENDPOINTS, EVENT_ENDPOINTS, FAQ_ENDPOINTS, HOMEPAGE_ENDPOINTS,
|
|
12
|
+
export { API_ENDPOINTS, API_ROUTES, LOGS_ENDPOINTS, AUTH_ENDPOINTS, ACCOUNT_ENDPOINTS, NOTIFICATIONS_ENDPOINTS, SITE_SETTINGS_ENDPOINTS, ADMIN_ENDPOINTS, AUCTION_ENDPOINTS, BID_ENDPOINTS, CART_ENDPOINTS, CATEGORY_ENDPOINTS, CHECKOUT_ENDPOINTS, PAYMENT_ENDPOINTS, COLLECTION_ENDPOINTS, CONSULTATION_ENDPOINTS, CORPORATE_ENDPOINTS, EVENT_ENDPOINTS, FAQ_ENDPOINTS, HOMEPAGE_ENDPOINTS, ANALYTICS_ENDPOINTS, MEDIA_ENDPOINTS, ORDER_ENDPOINTS, PREORDER_ENDPOINTS, PRODUCT_ENDPOINTS, PROMOTION_ENDPOINTS, REVIEW_ENDPOINTS, SEARCH_ENDPOINTS, SELLER_ENDPOINTS, BLOG_ENDPOINTS, STORE_ENDPOINTS, WISHLIST_ENDPOINTS, PROFILE_STATS_ENDPOINTS, } from "./api-endpoints.js";
|
|
13
13
|
export { COLLECTION_CACHE_PATHS } from "./cache-invalidation.js";
|
|
14
14
|
export { PAGE_SIZES, MAX_PAGE_SIZE, FEATURED_LIMITS, SITEMAP_LIMITS, } from "./pagination-presets.js";
|
|
15
15
|
export { NOTIFICATION_TYPES, NOTIFICATION_TYPE_TABS, } from "./notification-types.js";
|
|
@@ -2,7 +2,7 @@ export type { WhereOp, SieveQuery, PagedResult, IReadRepository, IWriteRepositor
|
|
|
2
2
|
export type { AuthPayload, AuthUser, CreateUserInput, IAuthProvider, ISessionProvider, } from "./auth";
|
|
3
3
|
export type { EmailAttachment, EmailOptions, EmailResult, IEmailProvider, } from "./email";
|
|
4
4
|
export type { UploadOptions, StorageFile, IStorageProvider } from "./storage";
|
|
5
|
-
export type { PaymentOrder, PaymentCapture, Refund } from "./payment";
|
|
5
|
+
export type { PaymentOrder, PaymentCapture, Refund, Dispute, GatewayPaymentRecord, } from "./payment";
|
|
6
6
|
export { IPaymentProvider } from "./payment";
|
|
7
7
|
export type { ShippingAddress, CreateShipmentInput, Shipment, TrackingEvent, TrackingInfo, ServiceabilityResult, } from "./shipping";
|
|
8
8
|
export { IShippingProvider } from "./shipping";
|
|
@@ -36,6 +36,102 @@ export interface Refund {
|
|
|
36
36
|
reason?: string;
|
|
37
37
|
createdAt: string;
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* A chargeback / dispute, normalised at the provider boundary.
|
|
41
|
+
*
|
|
42
|
+
* ## Units
|
|
43
|
+
*
|
|
44
|
+
* 🛑 `amount` and `amountDeducted` are **decimal rupees**. Razorpay's own
|
|
45
|
+
* entity reports both in currency SUBUNITS (`RazorpayDispute.amount`), so the
|
|
46
|
+
* adapter converts with `paiseToRupees` and nothing downstream ever sees the
|
|
47
|
+
* subunit figure — `audit-money-units` blocks both the raw `/100` and the word
|
|
48
|
+
* for the subunit in a comment or label.
|
|
49
|
+
*
|
|
50
|
+
* 🛑 **This deliberately differs from `Refund` above, which is in SUBUNITS**,
|
|
51
|
+
* and the inconsistency is real rather than an oversight here: `refund()` takes
|
|
52
|
+
* `rupeesToPaise(input.amount)` from its one call site and returns
|
|
53
|
+
* `Number(result.amount)` unconverted. That is pre-existing and is NOT changed
|
|
54
|
+
* by this type — flipping it would silently alter what every refund consumer
|
|
55
|
+
* reads, which is the money-unit migration's whole cautionary tale. A new
|
|
56
|
+
* surface gets the correct convention; an existing one gets a measured
|
|
57
|
+
* migration or nothing. If you are here because the two look inconsistent:
|
|
58
|
+
* they are, `Dispute` is the right one, and `Refund` is a separate job.
|
|
59
|
+
*
|
|
60
|
+
* 🛑 `respondBy` and `createdAt` are `Date`. Razorpay reports both as **Unix
|
|
61
|
+
* timestamps in SECONDS**, so `new Date(respond_by)` yields 1970 and reads as
|
|
62
|
+
* corrupt data rather than as a unit error — the same trap the Vercel token's
|
|
63
|
+
* `expiresAt` sets. Multiply by 1000 at the boundary, once.
|
|
64
|
+
*
|
|
65
|
+
* ## `status` and `phase` are strings, not unions, on purpose
|
|
66
|
+
*
|
|
67
|
+
* The SDK declares both as `string` (`disputes.d.ts`), and the value set is
|
|
68
|
+
* Razorpay's to change. Inventing a union here would mean a real dispute in a
|
|
69
|
+
* state we did not anticipate either fails a parse or gets asserted into the
|
|
70
|
+
* wrong member — and a dispute is the one record where being wrong has a
|
|
71
|
+
* deadline attached. Treat them as opaque, compare against known values where
|
|
72
|
+
* a decision depends on it, and never exhaustively switch.
|
|
73
|
+
*/
|
|
74
|
+
export interface Dispute {
|
|
75
|
+
/** The gateway's own dispute id. */
|
|
76
|
+
id: string;
|
|
77
|
+
/** The payment this dispute is against — the join key to our orders. */
|
|
78
|
+
paymentId: string;
|
|
79
|
+
/** Decimal rupees. */
|
|
80
|
+
amount: number;
|
|
81
|
+
currency: string;
|
|
82
|
+
/** Decimal rupees. What the gateway takes from our balance if we lose. */
|
|
83
|
+
amountDeducted: number;
|
|
84
|
+
/** The gateway's reason code, verbatim. */
|
|
85
|
+
reasonCode: string;
|
|
86
|
+
/**
|
|
87
|
+
* The gateway's own deadline for a response. **An external, hard date** — not
|
|
88
|
+
* an SLA we invented — which is why a `paymentCases` row built from a dispute
|
|
89
|
+
* takes its `dueAt` from here and from nowhere else.
|
|
90
|
+
*/
|
|
91
|
+
respondBy: Date;
|
|
92
|
+
/** Opaque — see the docstring. */
|
|
93
|
+
status: string;
|
|
94
|
+
/** Opaque — see the docstring. */
|
|
95
|
+
phase: string;
|
|
96
|
+
createdAt: Date;
|
|
97
|
+
/** The provider's short name, so a mixed-gateway queue stays attributable. */
|
|
98
|
+
gateway: string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* One payment as the GATEWAY sees it — the input to reconciliation.
|
|
102
|
+
*
|
|
103
|
+
* 🛑 This type exists so a reconciler can compare the gateway's view against
|
|
104
|
+
* ours **in the direction that needs no trust in our own code.** Every other
|
|
105
|
+
* check in this system starts from our records and asks whether they are
|
|
106
|
+
* consistent; this one starts from the gateway's and asks whether we have an
|
|
107
|
+
* order at all. That is the only direction that could have detected the
|
|
108
|
+
* 2026-10-21 incident, where our side had nothing to be inconsistent with.
|
|
109
|
+
*
|
|
110
|
+
* `amount`, `amountRefunded` — decimal rupees, converted at the boundary.
|
|
111
|
+
* `capturedAt` — a Date; the gateway reports Unix SECONDS.
|
|
112
|
+
*/
|
|
113
|
+
export interface GatewayPaymentRecord {
|
|
114
|
+
/** The gateway's payment id. */
|
|
115
|
+
id: string;
|
|
116
|
+
/** The gateway's order id, when the payment is attached to one. */
|
|
117
|
+
orderId?: string;
|
|
118
|
+
/** Decimal rupees. */
|
|
119
|
+
amount: number;
|
|
120
|
+
currency: string;
|
|
121
|
+
/**
|
|
122
|
+
* The gateway's own status string, verbatim and opaque. Razorpay uses
|
|
123
|
+
* `created | authorized | captured | refunded | failed`; treat anything
|
|
124
|
+
* unrecognised as "not captured", which fails toward not drawing a
|
|
125
|
+
* conclusion.
|
|
126
|
+
*/
|
|
127
|
+
status: string;
|
|
128
|
+
/** Decimal rupees already refunded against this payment, per the gateway. */
|
|
129
|
+
amountRefunded: number;
|
|
130
|
+
/** `null` | `partial` | `full`, as the gateway reports it. */
|
|
131
|
+
refundStatus?: string;
|
|
132
|
+
capturedAt?: Date;
|
|
133
|
+
gateway: string;
|
|
134
|
+
}
|
|
39
135
|
/**
|
|
40
136
|
* Payment gateway adapter contract. An abstract base class rather than a
|
|
41
137
|
* plain interface so every provider (manual, PhonePe, and any future
|
|
@@ -53,4 +149,39 @@ export declare abstract class IPaymentProvider {
|
|
|
53
149
|
abstract capturePayment(orderId: string): Promise<PaymentCapture>;
|
|
54
150
|
abstract refund(paymentId: string, amount?: number): Promise<Refund>;
|
|
55
151
|
abstract getOrder(orderId: string): Promise<PaymentOrder>;
|
|
152
|
+
/**
|
|
153
|
+
* Every payment the gateway recorded in a window — the reconciliation feed.
|
|
154
|
+
*
|
|
155
|
+
* 🛑 A provider that cannot enumerate payments returns `[]`, and the caller
|
|
156
|
+
* MUST treat an empty list as "no information", never as "no payments".
|
|
157
|
+
* Concluding "nothing is missing" from a provider that cannot answer is the
|
|
158
|
+
* false-clean a reconciler exists to avoid.
|
|
159
|
+
*/
|
|
160
|
+
abstract listPayments(opts: {
|
|
161
|
+
from: Date;
|
|
162
|
+
to: Date;
|
|
163
|
+
limit?: number;
|
|
164
|
+
}): Promise<GatewayPaymentRecord[]>;
|
|
165
|
+
/** Fetch one dispute by the gateway's id. */
|
|
166
|
+
abstract getDispute(disputeId: string): Promise<Dispute>;
|
|
167
|
+
/**
|
|
168
|
+
* Every dispute the gateway knows about.
|
|
169
|
+
*
|
|
170
|
+
* 🛑 A gateway with no dispute concept returns `[]`, and that is the CORRECT
|
|
171
|
+
* documented answer rather than a silent degrade: "this provider cannot have
|
|
172
|
+
* chargebacks" is a true statement about manual bank transfers, not a
|
|
173
|
+
* swallowed failure. `audit-silent-degrade` draws that line, and the
|
|
174
|
+
* difference is that an empty array here is a fact while a `.catch(() => [])`
|
|
175
|
+
* would be a guess.
|
|
176
|
+
*/
|
|
177
|
+
abstract listDisputes(): Promise<Dispute[]>;
|
|
178
|
+
/**
|
|
179
|
+
* Accept liability. **Irreversible** — the gateway debits us and the dispute
|
|
180
|
+
* is closed in the buyer's favour.
|
|
181
|
+
*
|
|
182
|
+
* `confirmIrrevocable` is a required literal `true`, so the call cannot be
|
|
183
|
+
* made by a caller who has not read what it does; a boolean parameter that
|
|
184
|
+
* could be `false` would be a flag, and this is a gate.
|
|
185
|
+
*/
|
|
186
|
+
abstract acceptDispute(disputeId: string, confirmIrrevocable: true): Promise<Dispute>;
|
|
56
187
|
}
|
|
@@ -2,5 +2,5 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Anchor, Avatar, Badge, Card, Div, Heading, Row, Section, Span, Stack, Text, TextLink } from "../../../ui/index.js";
|
|
3
3
|
import { ROUTES } from "../../../constants/index.js";
|
|
4
4
|
export function AboutView({ labels = {}, howItems = [], valueItems = [], milestones = [], teamMembers = [], ctaBannerClass = "", renderCtaButtons, }) {
|
|
5
|
-
return (_jsxs(Div, { className: "-mx-4 md:-mx-6 lg:-mx-8 -mt-6 sm:-mt-8 lg:-mt-10", children: [_jsx(Section, { color: "inverse", tone: "accent-banner", padding: "y-4xl", children: _jsxs(Div, { paddingX: "x-page", className: "max-w-4xl mx-auto text-center", children: [_jsx(Heading, { color: "inverse", level: 1, variant: "none", className: "mb-6", mdSize: "5xl", size: "4xl", weight: "bold", children: labels.title }), _jsx(Text, { color: "inverse", variant: "none", className: "
|
|
5
|
+
return (_jsxs(Div, { className: "-mx-4 md:-mx-6 lg:-mx-8 -mt-6 sm:-mt-8 lg:-mt-10", children: [_jsx(Section, { color: "inverse", tone: "accent-banner", padding: "y-4xl", children: _jsxs(Div, { paddingX: "x-page", className: "max-w-4xl mx-auto text-center", children: [_jsx(Heading, { color: "inverse", level: 1, variant: "none", className: "mb-6", mdSize: "5xl", size: "4xl", weight: "bold", children: labels.title }), _jsx(Text, { color: "inverse-muted", variant: "none", className: "max-w-2xl mx-auto", size: "xl", children: labels.subtitle })] }) }), _jsxs(Div, { paddingX: "x-page", className: "max-w-5xl mx-auto", padding: "y-4xl", children: [_jsxs(Section, { className: "text-center max-w-3xl mx-auto", children: [_jsx(Heading, { level: 2, className: "mb-4", children: labels.missionTitle }), _jsx(Text, { size: "lg", variant: "secondary", className: "leading-relaxed", children: labels.missionText })] }), _jsxs(Section, { children: [_jsx(Heading, { level: 2, className: "mb-12", align: "center", children: labels.howItWorksTitle }), _jsx(Div, { className: "grid md:grid-cols-3", gap: "6", children: howItems.map(({ title, text, icon, tone }) => (_jsxs(Card, { variant: `gradient-${tone ?? "indigo"}`, padding: "md", spacing: "sm", children: [_jsx(Div, { children: _jsx(Span, { size: "4xl", children: icon }) }), _jsx(Heading, { level: 3, children: title }), _jsx(Text, { size: "sm", variant: "secondary", className: "leading-relaxed", children: text })] }, title))) })] }), _jsxs(Section, { children: [_jsx(Heading, { level: 2, className: labels.valuesSubtitle ? "mb-3" : "mb-12", align: "center", children: labels.valuesTitle }), labels.valuesSubtitle && (_jsx(Text, { size: "base", variant: "secondary", align: "center", className: "mb-12 max-w-2xl mx-auto leading-relaxed", children: labels.valuesSubtitle })), _jsx(Div, { className: "grid md:grid-cols-3", gap: "5", children: valueItems.map(({ title, text, icon, detail }) => (_jsxs(Stack, { gap: "3", surface: "default", padding: "lg", rounded: "xl", border: "default", children: [_jsx(Div, { children: _jsx(Span, { size: "3xl", children: icon }) }), _jsx(Heading, { level: 3, children: title }), _jsx(Text, { size: "sm", variant: "secondary", className: "leading-relaxed", children: text }), detail && (_jsx(Text, { size: "sm", color: "muted", className: "leading-relaxed", children: detail }))] }, title))) }), labels.valuesLinkLabel && (_jsx(Div, { className: "mt-8 text-center", children: _jsx(TextLink, { href: String(ROUTES.PUBLIC.ETHICS), size: "sm", children: labels.valuesLinkLabel }) }))] }), _jsxs(Section, { children: [_jsx(Heading, { level: 2, className: "mb-10", align: "center", children: labels.milestonesTitle }), _jsx(Stack, { className: "relative border-l-2 border-primary/30 max-w-2xl mx-auto pl-[2rem]", gap: "xl", children: milestones.map(({ year, text }) => (_jsxs(Div, { className: "relative", children: [_jsx(Div, { className: "absolute -left-10 top-1 w-4 h-4 bg-primary border-2 border-white", rounded: "full" }), _jsx(Span, { size: "xs", weight: "bold", className: "text-primary tracking-wide", transform: "uppercase", children: year }), _jsx(Text, { className: "mt-1", children: text })] }, year))) })] }), teamMembers.length > 0 && (_jsxs(Section, { children: [_jsx(Heading, { level: 2, className: "mb-2", align: "center", children: labels.teamTitle }), labels.teamSubtitle && (_jsx(Text, { size: "lg", variant: "secondary", align: "center", className: "mb-12 max-w-2xl mx-auto", children: labels.teamSubtitle })), _jsx(Div, { className: "grid md:grid-cols-3", gap: "6", children: teamMembers.map((member) => (_jsxs(Stack, { gap: "3", surface: "default", padding: "lg", rounded: "xl", border: "default", align: "center", className: "text-center", children: [_jsx(Avatar, { src: member.photoUrl, name: member.name, alt: member.name, size: "lg" }), _jsx(Heading, { level: 3, children: member.name }), _jsxs(Row, { gap: "xs", wrap: true, justify: "center", children: [_jsx(Span, { size: "xs", weight: "bold", className: "text-primary tracking-wide", transform: "uppercase", children: member.role }), member.isFounder && _jsx(Badge, { variant: "primary", size: "xs", children: "Founder" }), member.isDeveloper && _jsx(Badge, { variant: "secondary", size: "xs", children: "Developer" })] }), _jsx(Text, { size: "sm", variant: "secondary", className: "leading-relaxed", children: member.bio }), member.githubUrl && (_jsx(Anchor, { href: member.githubUrl, tone: "muted", size: "sm", underline: "hover", children: "GitHub \u2197" }))] }, member.name))) })] })), _jsxs(Section, { color: "inverse", tone: "accent-banner", className: `text-center ${ctaBannerClass}`, padding: "xl", rounded: "2xl", children: [_jsx(Heading, { color: "inverse", level: 2, variant: "none", className: "mb-8", size: "3xl", weight: "bold", children: labels.ctaTitle }), renderCtaButtons ? (renderCtaButtons()) : (_jsx(Row, { justify: "center", gap: "3", wrap: true, children: _jsxs(Span, { color: "inverse-muted", size: "sm", children: [labels.ctaSell, " \u00B7 ", labels.ctaShop] }) }))] })] })] }));
|
|
6
6
|
}
|