@mohasinac/appkit 4.13.1 → 4.15.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/layout/DashboardLayoutClient.js +14 -5
- package/dist/_internal/client/features/lottery/LotteryAdminEditView.d.ts +3 -0
- package/dist/_internal/client/features/lottery/LotteryAdminEditView.js +6 -0
- package/dist/_internal/client/features/lottery/LotteryDetailView.d.ts +8 -0
- package/dist/_internal/client/features/lottery/LotteryDetailView.js +4 -1
- package/dist/_internal/client/features/lottery/LotteryListView.d.ts +7 -0
- package/dist/_internal/client/features/lottery/LotteryListView.js +1 -1
- package/dist/_internal/client/features/lottery/PrizeDrawLotteryDetailView.js +4 -1
- package/dist/_internal/client/features/lottery/slot-collage-items.d.ts +15 -0
- package/dist/_internal/client/features/lottery/slot-collage-items.js +13 -0
- package/dist/_internal/server/features/auctions/actions.js +8 -2
- package/dist/_internal/server/features/bundles/data.d.ts +16 -0
- package/dist/_internal/server/features/bundles/data.js +26 -0
- package/dist/_internal/server/features/bundles/index.d.ts +1 -1
- package/dist/_internal/server/features/bundles/index.js +1 -1
- package/dist/_internal/server/features/cart/service.d.ts +3 -3
- package/dist/_internal/server/features/checkout/actions.js +25 -0
- package/dist/_internal/server/features/checkout/locked-lines.d.ts +38 -0
- package/dist/_internal/server/features/checkout/locked-lines.js +171 -0
- package/dist/_internal/server/features/checkout/source-context.d.ts +5 -0
- package/dist/_internal/server/features/checkout/source-context.js +157 -0
- package/dist/_internal/server/features/homepage/index.d.ts +0 -1
- package/dist/_internal/server/features/homepage/index.js +7 -1
- package/dist/_internal/server/features/lottery/adapters.js +4 -0
- package/dist/_internal/server/features/offers/adapters.d.ts +103 -0
- package/dist/_internal/server/features/offers/adapters.js +88 -0
- package/dist/_internal/server/features/offers/index.d.ts +2 -0
- package/dist/_internal/server/features/offers/index.js +1 -0
- package/dist/_internal/server/features/orders/adapters.js +24 -0
- package/dist/_internal/server/features/products/data.js +15 -37
- package/dist/_internal/server/features/products/index.d.ts +1 -1
- package/dist/_internal/server/features/products/index.js +1 -1
- package/dist/_internal/server/features/products/list-public.d.ts +46 -20
- package/dist/_internal/server/features/products/list-public.js +266 -90
- package/dist/_internal/server/features/products/listing-tab-counts.d.ts +44 -0
- package/dist/_internal/server/features/products/listing-tab-counts.js +97 -0
- package/dist/_internal/server/features/site-settings/adapters.d.ts +51 -0
- package/dist/_internal/server/features/site-settings/adapters.js +75 -0
- package/dist/_internal/server/features/site-settings/index.d.ts +1 -0
- package/dist/_internal/server/features/site-settings/index.js +1 -0
- package/dist/_internal/server/features/stores/adapters.d.ts +56 -0
- package/dist/_internal/server/features/stores/adapters.js +91 -0
- package/dist/_internal/server/features/stores/index.d.ts +1 -0
- package/dist/_internal/server/features/stores/index.js +1 -0
- package/dist/_internal/server/jobs/core/auctionSettlement.js +56 -2
- package/dist/_internal/server/jobs/core/offerExpiry.js +55 -19
- package/dist/_internal/server/jobs/core/paymentReviewAutoApprove.d.ts +5 -0
- package/dist/_internal/server/jobs/core/paymentReviewAutoApprove.js +33 -1
- package/dist/_internal/server/jobs/handlers/messages.d.ts +7 -0
- package/dist/_internal/server/jobs/handlers/messages.js +10 -0
- package/dist/_internal/shared/actions/action-registry.js +17 -1
- package/dist/_internal/shared/checkout/lanes.d.ts +25 -0
- package/dist/_internal/shared/checkout/lanes.js +26 -0
- package/dist/_internal/shared/features/auctions/config.d.ts +27 -0
- package/dist/_internal/shared/features/auctions/config.js +27 -0
- package/dist/_internal/shared/features/auctions/schema.d.ts +14 -2
- package/dist/_internal/shared/features/auctions/schema.js +13 -1
- package/dist/_internal/shared/features/blog/schema.d.ts +2 -2
- package/dist/_internal/shared/features/cart/schema.d.ts +20 -15
- package/dist/_internal/shared/features/cart/schema.js +15 -0
- package/dist/_internal/shared/features/categories/bundle-schemas.d.ts +32 -32
- package/dist/_internal/shared/features/emi/schedule.d.ts +24 -3
- package/dist/_internal/shared/features/emi/schedule.js +20 -5
- package/dist/_internal/shared/features/events/schema.d.ts +2 -2
- package/dist/_internal/shared/features/homepage/section-gate.d.ts +14 -0
- package/dist/_internal/shared/features/homepage/section-gate.js +51 -0
- package/dist/_internal/shared/features/offers/config.d.ts +30 -0
- package/dist/_internal/shared/features/offers/config.js +59 -0
- package/dist/_internal/shared/features/orders/schema.d.ts +8 -8
- package/dist/_internal/shared/features/products/schema.d.ts +30 -30
- package/dist/_internal/shared/features/products/to-product-item.js +6 -0
- package/dist/_internal/shared/features/reviews/schema.d.ts +2 -2
- package/dist/_internal/shared/features/site-settings/fees.d.ts +60 -0
- package/dist/_internal/shared/features/site-settings/fees.js +39 -0
- package/dist/_internal/shared/features/site-settings/types.d.ts +40 -0
- package/dist/_internal/shared/features/site-settings/types.js +1 -0
- package/dist/_internal/shared/history/history.d.ts +88 -0
- package/dist/_internal/shared/history/history.js +198 -0
- package/dist/_internal/shared/history/index.d.ts +4 -0
- package/dist/_internal/shared/history/index.js +2 -0
- package/dist/_internal/shared/history/types.d.ts +61 -0
- package/dist/_internal/shared/history/types.js +6 -0
- package/dist/_internal/shared/listing-types/_registry.d.ts +54 -1
- package/dist/_internal/shared/listing-types/_registry.js +67 -0
- package/dist/_internal/shared/listing-types/art/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/art/config.js +5 -0
- package/dist/_internal/shared/listing-types/auction/config.d.ts +13 -0
- package/dist/_internal/shared/listing-types/auction/config.js +21 -0
- package/dist/_internal/shared/listing-types/availability.d.ts +79 -0
- package/dist/_internal/shared/listing-types/availability.js +104 -0
- package/dist/_internal/shared/listing-types/capabilities.d.ts +15 -0
- package/dist/_internal/shared/listing-types/capabilities.js +12 -0
- package/dist/_internal/shared/listing-types/classified/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/classified/config.js +5 -0
- package/dist/_internal/shared/listing-types/digital-code/config.d.ts +11 -0
- package/dist/_internal/shared/listing-types/digital-code/config.js +22 -2
- package/dist/_internal/shared/listing-types/live/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/live/config.js +5 -0
- package/dist/_internal/shared/listing-types/pre-order/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/pre-order/config.js +19 -0
- package/dist/_internal/shared/listing-types/prize-draw/config.d.ts +11 -0
- package/dist/_internal/shared/listing-types/prize-draw/config.js +15 -0
- package/dist/_internal/shared/listing-types/standard/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/standard/config.js +5 -0
- package/dist/_internal/shared/listing-types/stickers/config.d.ts +3 -0
- package/dist/_internal/shared/listing-types/stickers/config.js +5 -0
- package/dist/client.d.ts +20 -7
- package/dist/client.js +22 -4
- package/dist/constants/api-endpoints.d.ts +6 -0
- package/dist/constants/api-endpoints.js +2 -0
- package/dist/constants/field-names.d.ts +57 -8
- package/dist/constants/field-names.js +101 -8
- package/dist/constants/table-keys.d.ts +17 -0
- package/dist/constants/table-keys.js +17 -0
- package/dist/errors/error-codes.d.ts +13 -1
- package/dist/errors/error-codes.js +13 -1
- package/dist/errors/error-display-map.js +12 -3
- package/dist/errors/messages.d.ts +10 -2
- package/dist/errors/messages.js +10 -2
- package/dist/features/about/components/AboutView.d.ts +3 -0
- package/dist/features/about/components/AboutView.js +3 -2
- package/dist/features/about/components/PolicyPageView.d.ts +2 -1
- package/dist/features/about/components/PolicyPageView.js +61 -23
- package/dist/features/about/components/PublicProfileView.js +5 -0
- package/dist/features/about/schemas/firestore.d.ts +3 -0
- package/dist/features/account/components/UserBidsView.js +12 -4
- package/dist/features/account/components/UserOrdersView.js +7 -0
- package/dist/features/account/components/UserReturnsView.d.ts +3 -0
- package/dist/features/account/components/UserReturnsView.js +17 -1
- package/dist/features/account/components/index.d.ts +0 -2
- package/dist/features/account/components/index.js +0 -1
- package/dist/features/account/schemas/index.d.ts +2 -2
- package/dist/features/account/types/index.d.ts +21 -2
- package/dist/features/addresses/schemas/index.d.ts +4 -4
- package/dist/features/admin/components/AdminArtView.js +8 -3
- package/dist/features/admin/components/AdminAuditLogView.js +1 -0
- package/dist/features/admin/components/AdminBidsView.js +15 -2
- package/dist/features/admin/components/AdminBlogEditorView.js +65 -33
- package/dist/features/admin/components/AdminClassifiedView.js +8 -3
- package/dist/features/admin/components/AdminDigitalCodesView.js +8 -3
- package/dist/features/admin/components/AdminFeatureEditorView.js +35 -6
- package/dist/features/admin/components/AdminFeatureFlagsView.js +1 -0
- package/dist/features/admin/components/AdminLiveView.js +8 -3
- package/dist/features/admin/components/AdminNavEditorView.js +15 -5
- package/dist/features/admin/components/AdminNewsletterView.js +18 -2
- package/dist/features/admin/components/AdminOffersView.d.ts +4 -0
- package/dist/features/admin/components/AdminOffersView.js +230 -0
- package/dist/features/admin/components/AdminOrdersView.js +10 -1
- package/dist/features/admin/components/AdminPaymentMethodsView.js +24 -4
- package/dist/features/admin/components/AdminPrizeDrawsView.js +5 -0
- package/dist/features/admin/components/AdminProductsView.js +16 -29
- package/dist/features/admin/components/AdminScammerEditorView.d.ts +2 -1
- package/dist/features/admin/components/AdminScammerEditorView.js +3 -13
- package/dist/features/admin/components/AdminScammersView.js +3 -8
- package/dist/features/admin/components/AdminSectionsView.js +32 -23
- package/dist/features/admin/components/AdminSessionsView.js +17 -2
- package/dist/features/admin/components/AdminSiteSettingsView.js +31 -13
- package/dist/features/admin/components/AdminSiteView.js +6 -2
- package/dist/features/admin/components/AdminStickersView.js +8 -3
- package/dist/features/admin/components/ViewAuditLogEntryModal.js +1 -0
- package/dist/features/admin/components/index.d.ts +2 -0
- package/dist/features/admin/components/index.js +1 -0
- package/dist/features/admin/components/sections/adminSectionsTypes.d.ts +4 -2
- package/dist/features/admin/components/sections/adminSectionsTypes.js +45 -27
- package/dist/features/admin/constants/filter-tabs.d.ts +89 -0
- package/dist/features/admin/constants/filter-tabs.js +56 -0
- package/dist/features/admin/schemas/firestore.d.ts +122 -3
- package/dist/features/admin/schemas/firestore.js +1 -0
- package/dist/features/admin/schemas/homepage-section-form.d.ts +22 -0
- package/dist/features/admin/schemas/homepage-section-form.js +68 -0
- package/dist/features/admin/schemas/nav-item-form.d.ts +74 -0
- package/dist/features/admin/schemas/nav-item-form.js +72 -0
- package/dist/features/auctions/actions/bid-actions.d.ts +20 -5
- package/dist/features/auctions/actions/bid-actions.js +93 -20
- package/dist/features/auctions/components/AuctionBidsTable.d.ts +10 -1
- package/dist/features/auctions/components/AuctionBidsTable.js +22 -4
- package/dist/features/auctions/components/AuctionDetailPageView.js +11 -6
- package/dist/features/auctions/components/AuctionsListView.js +5 -6
- package/dist/features/auctions/components/MarketplaceAuctionCard.d.ts +7 -0
- package/dist/features/auctions/components/MarketplaceAuctionCard.js +19 -2
- package/dist/features/auctions/components/PlaceBidFormClient.d.ts +1 -2
- package/dist/features/auctions/components/PlaceBidFormClient.js +8 -4
- package/dist/features/auctions/components/bid-detail-fields.d.ts +29 -0
- package/dist/features/auctions/components/bid-detail-fields.js +103 -0
- package/dist/features/auctions/repository/bid.repository.d.ts +13 -0
- package/dist/features/auctions/repository/bid.repository.js +23 -0
- package/dist/features/auctions/schemas/firestore.d.ts +17 -0
- package/dist/features/auctions/schemas/index.d.ts +12 -12
- package/dist/features/audit-log/schemas/firestore.d.ts +14 -0
- package/dist/features/audit-log/schemas/firestore.js +7 -0
- package/dist/features/auth/permissions/constants.d.ts +1 -1
- package/dist/features/auth/permissions/constants.js +10 -1
- package/dist/features/blog/actions/blog-actions.d.ts +7 -7
- package/dist/features/blog/schemas/blog-form.d.ts +80 -0
- package/dist/features/blog/schemas/blog-form.js +100 -0
- package/dist/features/blog/schemas/index.d.ts +6 -6
- package/dist/features/cart/repository/cart.repository.js +1 -0
- package/dist/features/cart/schemas/firestore.d.ts +15 -0
- package/dist/features/catalogue/schemas/validation.d.ts +4 -4
- package/dist/features/categories/components/BrandDetailPageView.js +23 -40
- package/dist/features/categories/components/BrandDetailTabs.d.ts +7 -7
- package/dist/features/categories/components/BrandDetailTabs.js +8 -12
- package/dist/features/categories/components/BundleCollage.js +1 -1
- package/dist/features/categories/components/CategoryDetailPageView.js +53 -57
- package/dist/features/categories/components/CategoryDetailTabs.d.ts +10 -8
- package/dist/features/categories/components/CategoryDetailTabs.js +11 -16
- package/dist/features/categories/components/CategoryProductsListing.js +11 -1
- package/dist/features/categories/components/ConcernCard.js +7 -1
- package/dist/features/categories/schemas/firestore.d.ts +13 -0
- package/dist/features/categories/schemas/index.d.ts +26 -26
- package/dist/features/classified/components/ClassifiedDetailPageView.d.ts +16 -1
- package/dist/features/classified/components/ClassifiedDetailPageView.js +23 -3
- package/dist/features/events/components/AdminEventEditorView.js +32 -54
- package/dist/features/events/components/AdminEventEntriesView.js +22 -3
- package/dist/features/events/components/AdminEventsView.js +15 -11
- package/dist/features/events/components/EventFilters.d.ts +9 -1
- package/dist/features/events/components/EventFilters.js +45 -21
- package/dist/features/events/components/EventsIndexListing.d.ts +6 -1
- package/dist/features/events/components/EventsIndexListing.js +2 -2
- package/dist/features/events/components/EventsListPageView.js +13 -4
- package/dist/features/events/repository/events.repository.d.ts +17 -0
- package/dist/features/events/repository/events.repository.js +27 -0
- package/dist/features/events/schemas/event-form.d.ts +113 -0
- package/dist/features/events/schemas/event-form.js +82 -0
- package/dist/features/events/schemas/firestore.d.ts +12 -0
- package/dist/features/events/schemas/firestore.js +12 -0
- package/dist/features/events/schemas/index.d.ts +50 -50
- package/dist/features/events/types/index.d.ts +11 -0
- package/dist/features/events/types/index.js +57 -1
- package/dist/features/faq/actions/faq-actions.d.ts +12 -12
- package/dist/features/faq/schemas/index.d.ts +8 -8
- package/dist/features/filters/FilterFacetSection.d.ts +7 -1
- package/dist/features/filters/FilterFacetSection.js +11 -3
- package/dist/features/grouped/schemas/grouped-listing-form.d.ts +101 -0
- package/dist/features/grouped/schemas/grouped-listing-form.js +89 -0
- package/dist/features/grouped/schemas/index.d.ts +4 -4
- package/dist/features/homepage/actions/homepage-section-actions.d.ts +11 -3
- package/dist/features/homepage/actions/homepage-section-actions.js +33 -1
- package/dist/features/homepage/components/AnnouncementBar.d.ts +7 -1
- package/dist/features/homepage/components/AnnouncementBar.js +3 -3
- package/dist/features/homepage/components/MarketplaceHomepageView.js +20 -6
- package/dist/features/homepage/hooks/homepage-query.d.ts +16 -0
- package/dist/features/homepage/hooks/homepage-query.js +45 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.d.ts +10 -0
- package/dist/features/homepage/hooks/useFeaturedAuctions.js +28 -8
- package/dist/features/homepage/hooks/useFeaturedPreOrders.js +17 -8
- package/dist/features/homepage/hooks/useFeaturedProducts.js +15 -8
- package/dist/features/homepage/schemas/index.d.ts +33 -2
- package/dist/features/homepage/schemas/index.js +24 -0
- package/dist/features/layout/AppLayoutShell.d.ts +11 -1
- package/dist/features/layout/AppLayoutShell.js +15 -14
- package/dist/features/layout/BackToTop.d.ts +9 -0
- package/dist/features/layout/BackToTop.js +10 -1
- package/dist/features/layout/BottomActions.js +28 -25
- package/dist/features/layout/BottomChrome.d.ts +34 -0
- package/dist/features/layout/BottomChrome.js +55 -0
- package/dist/features/layout/BottomNavLayout.d.ts +6 -0
- package/dist/features/layout/BottomNavLayout.js +7 -1
- package/dist/features/layout/BottomNavbar.js +15 -2
- package/dist/features/layout/FooterLayout.js +11 -1
- package/dist/features/layout/NavbarLayout.js +1 -1
- package/dist/features/layout/TitleBarLayout.d.ts +7 -0
- package/dist/features/layout/TitleBarLayout.js +28 -5
- package/dist/features/layout/index.d.ts +2 -0
- package/dist/features/layout/index.js +1 -0
- package/dist/features/lottery/types/index.d.ts +3 -0
- package/dist/features/media/MediaPickerModal.js +5 -1
- package/dist/features/messages/schemas/index.d.ts +2 -2
- package/dist/features/orders/components/OrderScopeTabs.d.ts +20 -0
- package/dist/features/orders/components/OrderScopeTabs.js +31 -0
- package/dist/features/orders/components/OrderStatusTimeline.d.ts +5 -1
- package/dist/features/orders/components/OrderStatusTimeline.js +39 -20
- package/dist/features/orders/constants/order-scope.d.ts +48 -0
- package/dist/features/orders/constants/order-scope.js +111 -0
- package/dist/features/orders/repository/orders.repository.d.ts +54 -7
- package/dist/features/orders/repository/orders.repository.js +121 -22
- package/dist/features/orders/schemas/firestore.d.ts +152 -0
- package/dist/features/orders/schemas/firestore.js +30 -0
- package/dist/features/orders/schemas/index.d.ts +18 -18
- package/dist/features/orders/types/index.d.ts +35 -7
- package/dist/features/pre-orders/components/PreOrdersIndexListing.js +14 -9
- package/dist/features/pre-orders/components/PreOrdersListView.js +6 -5
- package/dist/features/pre-orders/schemas/index.d.ts +1 -1
- package/dist/features/products/actions/product-actions.d.ts +14 -0
- package/dist/features/products/actions/product-actions.js +49 -11
- package/dist/features/products/api/route.d.ts +12 -0
- package/dist/features/products/api/route.js +42 -100
- package/dist/features/products/components/ArtStickersListView.js +2 -2
- package/dist/features/products/components/AuctionsIndexListing.js +13 -11
- package/dist/features/products/components/AvailabilityTabs.d.ts +11 -0
- package/dist/features/products/components/AvailabilityTabs.js +47 -0
- package/dist/features/products/components/GroupSettingsPanel.js +5 -1
- package/dist/features/products/components/MakeOfferButton.js +48 -49
- package/dist/features/products/components/PrizeDrawCollage.d.ts +20 -4
- package/dist/features/products/components/PrizeDrawCollage.js +9 -1
- package/dist/features/products/components/PrizeDrawsIndexListing.js +14 -12
- package/dist/features/products/components/PrizeDrawsListingView.js +2 -2
- package/dist/features/products/components/PrizeDrawsSection.d.ts +7 -1
- package/dist/features/products/components/PrizeDrawsSection.js +23 -18
- package/dist/features/products/components/ProductDetailPageView.d.ts +4 -1
- package/dist/features/products/components/ProductDetailPageView.js +18 -4
- package/dist/features/products/components/ProductForm.js +5 -2
- package/dist/features/products/components/ProductGrid.js +6 -1
- package/dist/features/products/components/ProductsIndexListing.js +22 -32
- package/dist/features/products/components/ProductsIndexPageView.js +6 -9
- package/dist/features/products/components/index.d.ts +2 -2
- package/dist/features/products/components/index.js +1 -1
- package/dist/features/products/config/listing-type-listing-config.d.ts +20 -0
- package/dist/features/products/config/listing-type-listing-config.js +22 -10
- package/dist/features/products/constants/action-defs.d.ts +2 -0
- package/dist/features/products/constants/action-defs.js +6 -0
- package/dist/features/products/hooks/useAvailabilityScope.d.ts +13 -0
- package/dist/features/products/hooks/useAvailabilityScope.js +19 -0
- package/dist/features/products/hooks/useProducts.d.ts +5 -0
- package/dist/features/products/hooks/useProducts.js +13 -2
- package/dist/features/products/repository/products.repository.d.ts +31 -2
- package/dist/features/products/repository/products.repository.js +53 -21
- package/dist/features/products/schemas/firestore.d.ts +17 -3
- package/dist/features/products/schemas/firestore.js +7 -2
- package/dist/features/products/schemas/index.d.ts +64 -64
- package/dist/features/products/schemas/product-features.validators.d.ts +79 -6
- package/dist/features/products/schemas/product-features.validators.js +63 -0
- package/dist/features/products/types/index.d.ts +16 -1
- package/dist/features/promotions/schemas/index.d.ts +2 -2
- package/dist/features/reviews/schemas/index.d.ts +16 -16
- package/dist/features/scams/constants/scammer-status-display.d.ts +28 -0
- package/dist/features/scams/constants/scammer-status-display.js +79 -0
- package/dist/features/search/schemas/index.d.ts +4 -4
- package/dist/features/seller/actions/offer-actions.js +57 -4
- package/dist/features/seller/components/OfferPhaseTimeline.d.ts +59 -0
- package/dist/features/seller/components/OfferPhaseTimeline.js +107 -0
- package/dist/features/seller/components/SellerArtView.js +5 -0
- package/dist/features/seller/components/SellerAuctionsView.js +13 -15
- package/dist/features/seller/components/SellerBidsView.js +11 -4
- package/dist/features/seller/components/SellerClassifiedView.js +5 -0
- package/dist/features/seller/components/SellerCouponEditorView.js +17 -17
- package/dist/features/seller/components/SellerDigitalCodesView.js +5 -0
- package/dist/features/seller/components/SellerLiveView.js +5 -0
- package/dist/features/seller/components/SellerOffersView.js +2 -1
- package/dist/features/seller/components/SellerOrdersView.js +31 -9
- package/dist/features/seller/components/SellerPayoutSettingsView.js +56 -31
- package/dist/features/seller/components/SellerPreOrdersView.js +5 -0
- package/dist/features/seller/components/SellerPrizeDrawsView.js +14 -16
- package/dist/features/seller/components/SellerProductShell.js +7 -1
- package/dist/features/seller/components/SellerProductsView.js +11 -8
- package/dist/features/seller/components/SellerStickersView.js +5 -0
- package/dist/features/seller/components/index.d.ts +0 -2
- package/dist/features/seller/components/index.js +0 -1
- package/dist/features/seller/repository/offer.repository.d.ts +142 -24
- package/dist/features/seller/repository/offer.repository.js +165 -26
- package/dist/features/seller/schemas/coupon-form.d.ts +72 -0
- package/dist/features/seller/schemas/coupon-form.js +116 -0
- package/dist/features/seller/schemas/firestore.d.ts +56 -2
- package/dist/features/seller/schemas/firestore.js +27 -0
- package/dist/features/seller/schemas/index.d.ts +2 -2
- package/dist/features/seller/schemas/offer-forms.d.ts +46 -0
- package/dist/features/seller/schemas/offer-forms.js +42 -0
- package/dist/features/seller/server.d.ts +0 -1
- package/dist/features/seller/server.js +0 -1
- package/dist/features/shell/SectionForm.d.ts +99 -0
- package/dist/features/shell/SectionForm.js +128 -0
- package/dist/features/shell/build-sections.d.ts +63 -0
- package/dist/features/shell/build-sections.js +207 -0
- package/dist/features/shell/entity-form.d.ts +109 -0
- package/dist/features/shell/entity-form.js +96 -0
- package/dist/features/shell/field-ui-meta.d.ts +115 -0
- package/dist/features/shell/field-ui-meta.js +324 -0
- package/dist/features/shell/index.d.ts +8 -0
- package/dist/features/shell/index.js +4 -0
- package/dist/features/status-history/components/StatusTimeline.d.ts +74 -0
- package/dist/features/status-history/components/StatusTimeline.js +46 -0
- package/dist/features/status-history/index.d.ts +11 -0
- package/dist/features/status-history/index.js +10 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.d.ts +27 -0
- package/dist/features/store-extensions/components/ReviewDecisionModal.js +82 -0
- package/dist/features/store-extensions/index.d.ts +12 -0
- package/dist/features/store-extensions/index.js +12 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.d.ts +36 -0
- package/dist/features/store-extensions/schemas/admin-notification-form.js +114 -0
- package/dist/features/store-extensions/schemas/analytics-forms.d.ts +57 -0
- package/dist/features/store-extensions/schemas/analytics-forms.js +158 -0
- package/dist/features/store-extensions/schemas/custom-role-form.d.ts +85 -0
- package/dist/features/store-extensions/schemas/custom-role-form.js +118 -0
- package/dist/features/store-extensions/schemas/firestore.d.ts +21 -1
- package/dist/features/store-extensions/schemas/firestore.js +60 -0
- package/dist/features/store-extensions/schemas/google-config-form.d.ts +53 -0
- package/dist/features/store-extensions/schemas/google-config-form.js +105 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.d.ts +28 -0
- package/dist/features/store-extensions/schemas/item-request-create-form.js +80 -0
- package/dist/features/store-extensions/schemas/listing-template-form.d.ts +78 -0
- package/dist/features/store-extensions/schemas/listing-template-form.js +87 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.d.ts +49 -0
- package/dist/features/store-extensions/schemas/moderation-review-form.js +101 -0
- package/dist/features/store-extensions/schemas/payout-method-form.d.ts +153 -0
- package/dist/features/store-extensions/schemas/payout-method-form.js +155 -0
- package/dist/features/store-extensions/schemas/report-create-form.d.ts +25 -0
- package/dist/features/store-extensions/schemas/report-create-form.js +79 -0
- package/dist/features/store-extensions/schemas/report-review-form.d.ts +47 -0
- package/dist/features/store-extensions/schemas/report-review-form.js +111 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.d.ts +148 -0
- package/dist/features/store-extensions/schemas/shipping-config-form.js +104 -0
- package/dist/features/store-extensions/schemas/store-category-form.d.ts +54 -0
- package/dist/features/store-extensions/schemas/store-category-form.js +73 -0
- package/dist/features/stores/api/[storeSlug]/route.js +2 -25
- package/dist/features/stores/components/StoreAuctionsListing.js +15 -1
- package/dist/features/stores/components/StoreClassifiedsListing.js +12 -2
- package/dist/features/stores/components/StoreDetailLayoutView.js +24 -71
- package/dist/features/stores/components/StoreDigitalCodesListing.js +12 -2
- package/dist/features/stores/components/StoreLiveItemsListing.js +12 -2
- package/dist/features/stores/components/StorePreOrdersListing.js +12 -1
- package/dist/features/stores/components/StoreProductsListing.js +11 -1
- package/dist/features/stores/repository/store.repository.js +6 -0
- package/dist/features/stores/schemas/index.d.ts +6 -6
- package/dist/features/support/schemas/index.d.ts +4 -4
- package/dist/features/tester/actions/checklist-item-actions.d.ts +4 -4
- package/dist/features/tester/seed-data/offers-tester-seed-data.js +119 -3
- package/dist/features/tester/seed-data/products-tester-seed-data.js +131 -1
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +431 -1
- package/dist/features/wishlist/hooks/useWishlistWithGuest.d.ts +1 -1
- package/dist/index.d.ts +25 -12
- package/dist/index.js +26 -11
- package/dist/next/routing/route-map.d.ts +23 -3
- package/dist/next/routing/route-map.js +14 -2
- package/dist/providers/db-firebase/base.repository.d.ts +30 -0
- package/dist/providers/db-firebase/base.repository.js +50 -1
- package/dist/providers/db-firebase/index.d.ts +1 -1
- package/dist/providers/db-firebase/index.js +1 -1
- package/dist/providers/db-firebase/sieve.d.ts +25 -0
- package/dist/providers/db-firebase/sieve.js +52 -18
- package/dist/react/hooks/useUrlTable.js +10 -1
- package/dist/schemas/firestore-value.d.ts +8 -0
- package/dist/schemas/firestore-value.js +44 -0
- package/dist/schemas/index.d.ts +1 -1
- package/dist/schemas/index.js +1 -1
- package/dist/schemas/registry.d.ts +702 -69
- package/dist/schemas/registry.js +64 -1
- package/dist/seed/_helpers/category-forest.d.ts +2 -0
- package/dist/seed/_helpers/category-forest.js +309 -0
- package/dist/seed/_helpers/category-tree.d.ts +27 -0
- package/dist/seed/_helpers/category-tree.js +103 -0
- package/dist/seed/bids-seed-data.js +30 -0
- package/dist/seed/catalogue-seed-data.js +12 -12
- package/dist/seed/categories-seed-data.js +177 -162
- package/dist/seed/events-seed-data.js +61 -10
- package/dist/seed/homepage-sections-seed-data.js +5 -1
- package/dist/seed/offers-seed-data.js +244 -34
- package/dist/seed/orders-seed-data.js +336 -1
- package/dist/seed/products-art-seed-data.js +50 -12
- package/dist/seed/products-auctions-seed-data.js +138 -18
- package/dist/seed/products-classifieds-seed-data.js +80 -16
- package/dist/seed/products-digital-codes-seed-data.js +66 -18
- package/dist/seed/products-live-items-seed-data.js +64 -13
- package/dist/seed/products-preorders-seed-data.d.ts +0 -1
- package/dist/seed/products-preorders-seed-data.js +52 -13
- package/dist/seed/products-prize-draws-seed-data.js +63 -14
- package/dist/seed/products-standard-seed-data.js +99 -26
- package/dist/seed/products-stickers-seed-data.js +47 -12
- package/dist/seed/reviews-seed-data.js +6 -1
- package/dist/seed/site-settings-seed-data.d.ts +1 -38
- package/dist/seed/site-settings-seed-data.js +38 -76
- package/dist/seed/stores-seed-data.js +71 -1
- package/dist/seed/users-seed-data.js +15 -5
- package/dist/server-entry.d.ts +1 -2
- package/dist/server-entry.js +4 -3
- package/dist/server.d.ts +6 -3
- package/dist/server.js +13 -4
- package/dist/styles.css +78 -12
- package/dist/tailwind-utilities.css +1 -1
- package/dist/ui/components/Button.style.css +19 -4
- package/dist/ui/components/CollapsibleSection.d.ts +17 -1
- package/dist/ui/components/CollapsibleSection.js +6 -2
- package/dist/ui/components/FilterChipGroup.d.ts +25 -1
- package/dist/ui/components/FilterChipGroup.js +21 -4
- package/dist/ui/components/HandMode.style.css +47 -0
- package/dist/ui/components/Layout.d.ts +9 -2
- package/dist/ui/components/Layout.js +1 -1
- package/dist/ui/components/ListingLayout.js +8 -8
- package/dist/ui/components/ListingLayout.style.css +8 -7
- package/dist/ui/components/RecordDetailModal.d.ts +10 -1
- package/dist/ui/components/RecordDetailModal.js +2 -2
- package/dist/ui/components/StickyToolbar.d.ts +3 -1
- package/dist/ui/components/StickyToolbar.js +62 -20
- package/dist/ui/components/bottom-chrome-slot.d.ts +21 -0
- package/dist/ui/components/bottom-chrome-slot.js +29 -0
- package/dist/ui/components/index.style.css +3 -0
- package/dist/ui/forms/FormShell.d.ts +43 -13
- package/dist/ui/forms/FormShell.js +22 -11
- package/dist/ui/forms/index.d.ts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/package.json +2 -1
- package/scripts/node-esm-loader.mjs +65 -0
- package/scripts/seed-cli-loader.mjs +6 -49
- package/scripts/seed-cli.mjs +1 -1
|
@@ -1,19 +1,37 @@
|
|
|
1
1
|
import React, { type ReactNode } from "react";
|
|
2
2
|
import type { FormValues } from "../../schemas/types";
|
|
3
3
|
/**
|
|
4
|
-
* A
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
4
|
+
* A navigable form segment — a wizard step historically, a `<SectionForm>`
|
|
5
|
+
* section today. `FormShellContextValue.steps` carries these purely so
|
|
6
|
+
* `<FormErrorSummary>` can name the segment that owns an error and offer a
|
|
7
|
+
* jump link.
|
|
8
|
+
*
|
|
9
|
+
* `content` is optional because the common producer (`useSectionFormNav`)
|
|
10
|
+
* builds descriptors from section metadata alone — it has an id and a label
|
|
11
|
+
* to render in the summary, and no node to hand over. Requiring a node here
|
|
12
|
+
* is what previously forced both context producers to give up and populate
|
|
13
|
+
* `steps: []`, which silently disabled the jump link everywhere.
|
|
10
14
|
*/
|
|
11
15
|
export interface FormShellStep {
|
|
12
16
|
id: string;
|
|
13
17
|
label: string;
|
|
14
18
|
/** Field names required in this step — drives publish gate + error badge */
|
|
15
19
|
requiredFields?: string[];
|
|
16
|
-
content
|
|
20
|
+
content?: React.ReactNode;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Navigation wiring for a form split into steps or collapsible sections.
|
|
24
|
+
*
|
|
25
|
+
* Supplying this is what makes `<FormErrorSummary>`'s "jump to section" link
|
|
26
|
+
* work: it needs `sections` to name the owning segment and `onGoToSection` to
|
|
27
|
+
* actually move there. Omit it for single-segment forms — the summary then
|
|
28
|
+
* renders a flat list, which is correct for them.
|
|
29
|
+
*/
|
|
30
|
+
export interface FormShellNav {
|
|
31
|
+
sections?: FormShellStep[];
|
|
32
|
+
onGoToSection?: (index: number) => void;
|
|
33
|
+
/** Maps a (dotted) error key to the index of the section that owns it. */
|
|
34
|
+
fieldToSectionIndex?: Record<string, number>;
|
|
17
35
|
}
|
|
18
36
|
export interface FormShellContextValue {
|
|
19
37
|
errors: Record<string, string>;
|
|
@@ -73,12 +91,17 @@ export declare function applyZodIssues(issues: ReadonlyArray<{
|
|
|
73
91
|
message: string;
|
|
74
92
|
}>, setFieldError: (name: string, error: string | null) => void): void;
|
|
75
93
|
/**
|
|
76
|
-
* `useFormShellState(schema?)` — caller-owned form state with optional
|
|
77
|
-
* validation. When a schema is supplied, `validate(values)` runs it and
|
|
78
|
-
* issues into the FormShellContext error map. `audit-form-schema`
|
|
79
|
-
* every callsite to pass a schema.
|
|
94
|
+
* `useFormShellState(schema?, nav?)` — caller-owned form state with optional
|
|
95
|
+
* Zod validation. When a schema is supplied, `validate(values)` runs it and
|
|
96
|
+
* pipes issues into the FormShellContext error map. `audit-form-schema`
|
|
97
|
+
* requires every callsite to pass a schema.
|
|
98
|
+
*
|
|
99
|
+
* Pass `nav` when the form is split into sections (see `useSectionFormNav`)
|
|
100
|
+
* so `<FormErrorSummary>` can name the owning section and jump to it. Omit it
|
|
101
|
+
* for single-segment forms; the summary renders a flat list, which is right
|
|
102
|
+
* for them.
|
|
80
103
|
*/
|
|
81
|
-
export declare function useFormShellState<TSchema extends import("zod").ZodTypeAny = import("zod").ZodTypeAny>(schema?: TSchema): UseFormShellStateResult;
|
|
104
|
+
export declare function useFormShellState<TSchema extends import("zod").ZodTypeAny = import("zod").ZodTypeAny>(schema?: TSchema, nav?: FormShellNav): UseFormShellStateResult;
|
|
82
105
|
export interface FormShellProviderProps {
|
|
83
106
|
children: ReactNode;
|
|
84
107
|
/** Called on debounced auto-save when isDirty changes */
|
|
@@ -105,5 +128,12 @@ export interface FormShellProviderProps {
|
|
|
105
128
|
fieldToStepIndex?: Record<string, number>;
|
|
106
129
|
/** Wired into `FormShellContextValue.goToStep` when the caller has real step navigation to drive (e.g. a step-wizard's `setCurrentStep`). */
|
|
107
130
|
onGoToStep?: (n: number) => void;
|
|
131
|
+
/**
|
|
132
|
+
* The navigable segments this form is split into, in order. Without these
|
|
133
|
+
* `<FormErrorSummary>` can call `goToStep(i)` but has no label to render for
|
|
134
|
+
* segment `i`, so it silently falls back to a flat list — which is why this
|
|
135
|
+
* used to be hardcoded `[]`. Supply alongside `fieldToStepIndex`.
|
|
136
|
+
*/
|
|
137
|
+
sections?: FormShellStep[];
|
|
108
138
|
}
|
|
109
|
-
export declare function FormShellProvider({ children, onSaveDraft, isDirty, autoSaveDelayMs, values, schema, fieldToStepIndex, onGoToStep, }: FormShellProviderProps): React.JSX.Element;
|
|
139
|
+
export declare function FormShellProvider({ children, onSaveDraft, isDirty, autoSaveDelayMs, values, schema, fieldToStepIndex, onGoToStep, sections, }: FormShellProviderProps): React.JSX.Element;
|
|
@@ -33,12 +33,17 @@ export function applyZodIssues(issues, setFieldError) {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
|
-
* `useFormShellState(schema?)` — caller-owned form state with optional
|
|
37
|
-
* validation. When a schema is supplied, `validate(values)` runs it and
|
|
38
|
-
* issues into the FormShellContext error map. `audit-form-schema`
|
|
39
|
-
* every callsite to pass a schema.
|
|
36
|
+
* `useFormShellState(schema?, nav?)` — caller-owned form state with optional
|
|
37
|
+
* Zod validation. When a schema is supplied, `validate(values)` runs it and
|
|
38
|
+
* pipes issues into the FormShellContext error map. `audit-form-schema`
|
|
39
|
+
* requires every callsite to pass a schema.
|
|
40
|
+
*
|
|
41
|
+
* Pass `nav` when the form is split into sections (see `useSectionFormNav`)
|
|
42
|
+
* so `<FormErrorSummary>` can name the owning section and jump to it. Omit it
|
|
43
|
+
* for single-segment forms; the summary renders a flat list, which is right
|
|
44
|
+
* for them.
|
|
40
45
|
*/
|
|
41
|
-
export function useFormShellState(schema) {
|
|
46
|
+
export function useFormShellState(schema, nav) {
|
|
42
47
|
const [errors, setErrors] = useState({});
|
|
43
48
|
const setFieldError = useCallback((name, error) => {
|
|
44
49
|
setErrors((prev) => {
|
|
@@ -64,25 +69,31 @@ export function useFormShellState(schema) {
|
|
|
64
69
|
applyZodIssues(parsed.error.issues, setFieldError);
|
|
65
70
|
return null;
|
|
66
71
|
}, [schema, setFieldError]);
|
|
72
|
+
const navSections = nav?.sections;
|
|
73
|
+
const navGoTo = nav?.onGoToSection;
|
|
74
|
+
const navFieldMap = nav?.fieldToSectionIndex;
|
|
67
75
|
const shellCtx = useMemo(() => ({
|
|
68
76
|
errors,
|
|
69
77
|
touched: Object.fromEntries(Object.keys(errors).map((k) => [k, true])),
|
|
70
78
|
setFieldError,
|
|
71
79
|
setFieldTouched: () => { },
|
|
72
80
|
clearFieldError: (name) => setFieldError(name, null),
|
|
73
|
-
|
|
81
|
+
// Real sections when the caller supplied nav — this is what makes
|
|
82
|
+
// <FormErrorSummary>'s jump link resolve a label instead of `undefined`.
|
|
83
|
+
steps: navSections ?? [],
|
|
74
84
|
currentStep: 0,
|
|
75
|
-
goToStep: () => { },
|
|
85
|
+
goToStep: navGoTo ?? (() => { }),
|
|
76
86
|
nextStep: () => { },
|
|
77
87
|
prevStep: () => { },
|
|
78
88
|
isPublishReady: Object.keys(errors).length === 0,
|
|
79
89
|
isDirty: false,
|
|
80
90
|
isSubmitting: false,
|
|
81
91
|
stepErrorCounts: [],
|
|
82
|
-
|
|
92
|
+
fieldToStepIndex: navFieldMap,
|
|
93
|
+
}), [errors, setFieldError, navSections, navGoTo, navFieldMap]);
|
|
83
94
|
return { shellCtx, setFieldError, clearErrors, hasErrors: Object.keys(errors).length > 0, validate };
|
|
84
95
|
}
|
|
85
|
-
export function FormShellProvider({ children, onSaveDraft, isDirty = false, autoSaveDelayMs = 2000, values = {}, schema, fieldToStepIndex, onGoToStep, }) {
|
|
96
|
+
export function FormShellProvider({ children, onSaveDraft, isDirty = false, autoSaveDelayMs = 2000, values = {}, schema, fieldToStepIndex, onGoToStep, sections, }) {
|
|
86
97
|
const [errors, setErrors] = useState({});
|
|
87
98
|
const [touched, setTouched] = useState({});
|
|
88
99
|
const autoSaveTimer = useRef(null);
|
|
@@ -148,7 +159,7 @@ export function FormShellProvider({ children, onSaveDraft, isDirty = false, auto
|
|
|
148
159
|
setFieldError,
|
|
149
160
|
setFieldTouched,
|
|
150
161
|
clearFieldError,
|
|
151
|
-
steps: [],
|
|
162
|
+
steps: sections ?? [],
|
|
152
163
|
currentStep: 0,
|
|
153
164
|
goToStep: onGoToStep ?? (() => { }),
|
|
154
165
|
nextStep: () => { },
|
|
@@ -158,6 +169,6 @@ export function FormShellProvider({ children, onSaveDraft, isDirty = false, auto
|
|
|
158
169
|
isSubmitting: false,
|
|
159
170
|
stepErrorCounts: [],
|
|
160
171
|
fieldToStepIndex,
|
|
161
|
-
}), [errors, touched, setFieldError, setFieldTouched, clearFieldError, isDirty, onGoToStep, fieldToStepIndex]);
|
|
172
|
+
}), [errors, touched, setFieldError, setFieldTouched, clearFieldError, isDirty, onGoToStep, fieldToStepIndex, sections]);
|
|
162
173
|
return _jsx(FormShellContext.Provider, { value: ctx, children: children });
|
|
163
174
|
}
|
package/dist/ui/forms/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { FormShellProviderProps, FormShellStep, FormShellContextValue, UseFormShellStateResult, } from "./FormShell";
|
|
1
|
+
export type { FormShellProviderProps, FormShellStep, FormShellNav, FormShellContextValue, UseFormShellStateResult, } from "./FormShell";
|
|
2
2
|
export { FormShellProvider, FormShellContext, useFormShell, useFormShellState, applyZodIssues } from "./FormShell";
|
|
3
3
|
export type { FieldInputProps } from "./FieldInput";
|
|
4
4
|
export { FieldInput } from "./FieldInput";
|
package/dist/ui/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "./components/index.style.css";
|
|
2
2
|
import "./forms/FormShell.style.css";
|
|
3
|
-
export type { FormShellStep, FormShellContextValue, } from "./forms";
|
|
3
|
+
export type { FormShellStep, FormShellNav, FormShellContextValue, } from "./forms";
|
|
4
4
|
export { FormShellProvider, useFormShell } from "./forms";
|
|
5
5
|
export type { FieldInputProps } from "./forms";
|
|
6
6
|
export { FieldInput } from "./forms";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mohasinac/appkit",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.15.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -128,6 +128,7 @@
|
|
|
128
128
|
"scripts/init-config.mjs",
|
|
129
129
|
"scripts/labels-extract.mjs",
|
|
130
130
|
"scripts/seed-cli.mjs",
|
|
131
|
+
"scripts/node-esm-loader.mjs",
|
|
131
132
|
"scripts/seed-cli-loader.mjs",
|
|
132
133
|
"scripts/dedupe-peer-deps.mjs",
|
|
133
134
|
"scripts/copy-assets.mjs",
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ESM resolver hook — makes `import("@mohasinac/appkit")` work from ANY
|
|
3
|
+
* standalone Node script.
|
|
4
|
+
*
|
|
5
|
+
* appkit is `"type": "module"` built by plain `tsc`, and tsc does not rewrite
|
|
6
|
+
* import specifiers — so all ~2,190 emitted `.js` files carry bare relative
|
|
7
|
+
* imports with no `.js` extension. Bundlers (Next/Turbopack, tsup, vite)
|
|
8
|
+
* resolve those happily; Node's ESM resolver refuses them outright. This hook
|
|
9
|
+
* retries with `.js` and then `/index.js` on ERR_MODULE_NOT_FOUND, and stubs
|
|
10
|
+
* the two other things that make a raw Node import of appkit explode.
|
|
11
|
+
*
|
|
12
|
+
* Registered by:
|
|
13
|
+
* - `appkit/scripts/seed-cli.mjs` (the appkit-seed CLI)
|
|
14
|
+
* - `scripts/qa/roundtrip-diff.mjs` (the schema field-loss gate)
|
|
15
|
+
*
|
|
16
|
+
* **Renamed from `seed-cli-loader.mjs`** — it was never seed-specific, and
|
|
17
|
+
* that name was why a later session diagnosed the same ESM failure from
|
|
18
|
+
* scratch and concluded the fix was to rewrite every specifier at build time.
|
|
19
|
+
* It is not: it is this file, registered in three lines. `seed-cli-loader.mjs`
|
|
20
|
+
* remains as a re-export so any pinned path keeps working.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
// Stub out non-JS asset imports (CSS, etc.) — appkit's dist contains
|
|
24
|
+
// `import "./foo.css"` side-effect statements that Node ESM can't load.
|
|
25
|
+
const STUB_EXTENSIONS = [".css", ".scss", ".sass", ".png", ".jpg", ".jpeg", ".svg", ".webp", ".gif"];
|
|
26
|
+
|
|
27
|
+
// server-only / client-only are Next.js-specific sentinel packages — their
|
|
28
|
+
// entire module body unconditionally throws, because their whole purpose is
|
|
29
|
+
// a Next.js-compiler-time + Next.js-runtime guard against importing a
|
|
30
|
+
// server-only (or client-only) module from the wrong side of the boundary.
|
|
31
|
+
// A raw Node script (this CLI) is neither a Next.js Server Component nor a
|
|
32
|
+
// Client Component, so the guard is meaningless here — the main
|
|
33
|
+
// @mohasinac/appkit barrel transitively reaches a module (e.g.
|
|
34
|
+
// features/contact/email.tsx) that imports "server-only" at the top level,
|
|
35
|
+
// which crashes the whole CLI on load. Stub both to a no-op module. Found
|
|
36
|
+
// 2026-08-17 debugging the CLI seed tool being unable to import appkit at all.
|
|
37
|
+
const SENTINEL_SPECIFIERS = new Set(["server-only", "client-only"]);
|
|
38
|
+
|
|
39
|
+
export async function load(url, context, nextLoad) {
|
|
40
|
+
if (STUB_EXTENSIONS.some((ext) => url.endsWith(ext))) {
|
|
41
|
+
return { format: "module", shortCircuit: true, source: "export default undefined;" };
|
|
42
|
+
}
|
|
43
|
+
return nextLoad(url, context);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export async function resolve(specifier, context, nextResolve) {
|
|
47
|
+
if (SENTINEL_SPECIFIERS.has(specifier)) {
|
|
48
|
+
return { url: `data:text/javascript,export default undefined;`, shortCircuit: true };
|
|
49
|
+
}
|
|
50
|
+
try {
|
|
51
|
+
return await nextResolve(specifier, context);
|
|
52
|
+
} catch (err) {
|
|
53
|
+
if (err?.code !== "ERR_MODULE_NOT_FOUND" && err?.code !== "ERR_UNSUPPORTED_DIR_IMPORT") throw err;
|
|
54
|
+
if (specifier.endsWith(".js") || specifier.endsWith(".mjs") || specifier.endsWith(".cjs")) throw err;
|
|
55
|
+
// Try with .js suffix (most common case)
|
|
56
|
+
try {
|
|
57
|
+
return await nextResolve(`${specifier}.js`, context);
|
|
58
|
+
} catch {}
|
|
59
|
+
// Try as a directory index
|
|
60
|
+
try {
|
|
61
|
+
return await nextResolve(`${specifier}/index.js`, context);
|
|
62
|
+
} catch {}
|
|
63
|
+
throw err;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -1,52 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Back-compat shim. The real implementation is `node-esm-loader.mjs`.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* The hook was never seed-specific — it makes a bare `import("@mohasinac/appkit")`
|
|
5
|
+
* resolve from any standalone Node script — so it was renamed. This file stays
|
|
6
|
+
* so a pinned path (a published tarball, a script outside this repo) keeps
|
|
7
|
+
* working. Register `node-esm-loader.mjs` directly in anything new.
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
|
-
// Stub out non-JS asset imports (CSS, etc.) — appkit's dist contains
|
|
11
|
-
// `import "./foo.css"` side-effect statements that Node ESM can't load.
|
|
12
|
-
const STUB_EXTENSIONS = [".css", ".scss", ".sass", ".png", ".jpg", ".jpeg", ".svg", ".webp", ".gif"];
|
|
13
|
-
|
|
14
|
-
// server-only / client-only are Next.js-specific sentinel packages — their
|
|
15
|
-
// entire module body unconditionally throws, because their whole purpose is
|
|
16
|
-
// a Next.js-compiler-time + Next.js-runtime guard against importing a
|
|
17
|
-
// server-only (or client-only) module from the wrong side of the boundary.
|
|
18
|
-
// A raw Node script (this CLI) is neither a Next.js Server Component nor a
|
|
19
|
-
// Client Component, so the guard is meaningless here — the main
|
|
20
|
-
// @mohasinac/appkit barrel transitively reaches a module (e.g.
|
|
21
|
-
// features/contact/email.tsx) that imports "server-only" at the top level,
|
|
22
|
-
// which crashes the whole CLI on load. Stub both to a no-op module. Found
|
|
23
|
-
// 2026-08-17 debugging the CLI seed tool being unable to import appkit at all.
|
|
24
|
-
const SENTINEL_SPECIFIERS = new Set(["server-only", "client-only"]);
|
|
25
|
-
|
|
26
|
-
export async function load(url, context, nextLoad) {
|
|
27
|
-
if (STUB_EXTENSIONS.some((ext) => url.endsWith(ext))) {
|
|
28
|
-
return { format: "module", shortCircuit: true, source: "export default undefined;" };
|
|
29
|
-
}
|
|
30
|
-
return nextLoad(url, context);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export async function resolve(specifier, context, nextResolve) {
|
|
34
|
-
if (SENTINEL_SPECIFIERS.has(specifier)) {
|
|
35
|
-
return { url: `data:text/javascript,export default undefined;`, shortCircuit: true };
|
|
36
|
-
}
|
|
37
|
-
try {
|
|
38
|
-
return await nextResolve(specifier, context);
|
|
39
|
-
} catch (err) {
|
|
40
|
-
if (err?.code !== "ERR_MODULE_NOT_FOUND" && err?.code !== "ERR_UNSUPPORTED_DIR_IMPORT") throw err;
|
|
41
|
-
if (specifier.endsWith(".js") || specifier.endsWith(".mjs") || specifier.endsWith(".cjs")) throw err;
|
|
42
|
-
// Try with .js suffix (most common case)
|
|
43
|
-
try {
|
|
44
|
-
return await nextResolve(`${specifier}.js`, context);
|
|
45
|
-
} catch {}
|
|
46
|
-
// Try as a directory index
|
|
47
|
-
try {
|
|
48
|
-
return await nextResolve(`${specifier}/index.js`, context);
|
|
49
|
-
} catch {}
|
|
50
|
-
throw err;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
9
|
+
export { load, resolve } from "./node-esm-loader.mjs";
|
package/scripts/seed-cli.mjs
CHANGED
|
@@ -34,7 +34,7 @@ import readline from "node:readline";
|
|
|
34
34
|
// Register an ESM resolver hook that retries with `.js` / `/index.js` when
|
|
35
35
|
// appkit's bundler-target dist emits extension-less relative imports.
|
|
36
36
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
37
|
-
register("./
|
|
37
|
+
register("./node-esm-loader.mjs", pathToFileURL(__dirname + "/"));
|
|
38
38
|
|
|
39
39
|
// ---------------------------------------------------------------------------
|
|
40
40
|
// CLI parsing — entry point detects bin name so the same script powers
|