storefront-layouts 1.0.5 → 1.0.6
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/components/auth/LoginForm.d.ts +1 -1
- package/dist/components/auth/LoginForm.d.ts.map +1 -1
- package/dist/components/auth/LoginForm.js +1 -1
- package/dist/components/auth/LoginSheet.d.ts +2 -2
- package/dist/components/auth/LoginSheet.d.ts.map +1 -1
- package/dist/components/auth/LoginSheet.js +1 -1
- package/dist/components/auth/login-form-core.d.ts +2 -2
- package/dist/components/auth/login-form-core.d.ts.map +1 -1
- package/dist/components/auth/login-form-core.js +1 -1
- package/dist/components/auth/login-sheet-header.d.ts +2 -2
- package/dist/components/auth/login-sheet-header.d.ts.map +1 -1
- package/dist/components/auth/login-sheet-header.js +3 -3
- package/dist/components/auth/login-sheet-registry.d.ts +2 -2
- package/dist/components/auth/login-sheet-registry.d.ts.map +1 -1
- package/dist/components/auth/login-sheet-theme.types.d.ts +1 -1
- package/dist/components/auth/login-sheet-themes/index.d.ts +1 -1
- package/dist/components/auth/login-sheet-themes/index.d.ts.map +1 -1
- package/dist/components/auth/login-sheet-themes/index.js +0 -2
- package/dist/components/auth/login-sheets/StoreLoginSheetShell.d.ts +2 -2
- package/dist/components/auth/login-sheets/StoreLoginSheetShell.d.ts.map +1 -1
- package/dist/components/auth/login-sheets/StoreLoginSheetShell.js +2 -2
- package/dist/components/auth/use-login-submit.js +3 -3
- package/dist/components/cart/InventoryHoldCountdown.d.ts +1 -1
- package/dist/components/cart/InventoryHoldCountdown.d.ts.map +1 -1
- package/dist/components/cart/InventoryHoldCountdown.js +2 -2
- package/dist/components/categories/category-masonry-grid.d.ts +1 -1
- package/dist/components/categories/category-masonry-grid.d.ts.map +1 -1
- package/dist/components/checkout/CheckoutFeeLines.d.ts +2 -2
- package/dist/components/checkout/CheckoutFeeLines.d.ts.map +1 -1
- package/dist/components/checkout/CheckoutFeeLines.js +1 -1
- package/dist/components/checkout/ShippingOptionsPanel.d.ts +2 -2
- package/dist/components/checkout/ShippingOptionsPanel.d.ts.map +1 -1
- package/dist/components/checkout/ShippingOptionsPanel.js +3 -3
- package/dist/components/learning/CertificateTemplates.d.ts +2 -2
- package/dist/components/learning/CertificateTemplates.d.ts.map +1 -1
- package/dist/components/learning/CertificateTemplates.js +2 -2
- package/dist/components/learning/CertificateViewer.d.ts +1 -1
- package/dist/components/learning/CertificateViewer.d.ts.map +1 -1
- package/dist/components/learning/CertificateViewer.js +2 -2
- package/dist/components/learning/MentorshipProgress.d.ts +1 -1
- package/dist/components/learning/MentorshipProgress.d.ts.map +1 -1
- package/dist/components/learning/MentorshipProgress.js +3 -3
- package/dist/components/product/ProductVariationSelectors.d.ts +2 -2
- package/dist/components/product/ProductVariationSelectors.d.ts.map +1 -1
- package/dist/components/product/ProductVariationSelectors.js +1 -1
- package/dist/components/rich-text/CategoryDescription.d.ts +2 -1
- package/dist/components/rich-text/CategoryDescription.d.ts.map +1 -1
- package/dist/components/rich-text/ProductDescription.d.ts +2 -1
- package/dist/components/rich-text/ProductDescription.d.ts.map +1 -1
- package/dist/components/shipping/MerchantHandledDeliveryNotice.d.ts +1 -1
- package/dist/components/shipping/MerchantHandledDeliveryNotice.d.ts.map +1 -1
- package/dist/components/shipping/ProductDeliveryInfoSection.d.ts +4 -4
- package/dist/components/shipping/ProductDeliveryInfoSection.d.ts.map +1 -1
- package/dist/components/shipping/ProductDeliveryInfoSection.js +2 -2
- package/dist/components/shipping/ShippingQuoteAddressForm.d.ts +2 -2
- package/dist/components/shipping/ShippingQuoteAddressForm.d.ts.map +1 -1
- package/dist/components/shipping/ShippingQuoteAddressForm.js +3 -3
- package/dist/components/ui/address-selector.d.ts +2 -2
- package/dist/components/ui/address-selector.d.ts.map +1 -1
- package/dist/components/ui/alert-modal.d.ts +1 -1
- package/dist/components/ui/alert-modal.d.ts.map +1 -1
- package/dist/components/ui/alert-modal.js +1 -1
- package/dist/components/ui/avatar-image.d.ts +1 -1
- package/dist/components/ui/avatar-image.d.ts.map +1 -1
- package/dist/components/ui/avatar-image.js +1 -1
- package/dist/components/ui/background-patterns.d.ts +4 -4
- package/dist/components/ui/background-patterns.d.ts.map +1 -1
- package/dist/components/ui/badge.d.ts +1 -1
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/badge.js +1 -1
- package/dist/components/ui/breadcrumbs.d.ts +2 -1
- package/dist/components/ui/breadcrumbs.d.ts.map +1 -1
- package/dist/components/ui/breadcrumbs.js +1 -1
- package/dist/components/ui/button.d.ts +1 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +1 -1
- package/dist/components/ui/card.d.ts +7 -7
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/card.js +1 -1
- package/dist/components/ui/category-tree.d.ts +2 -2
- package/dist/components/ui/category-tree.d.ts.map +1 -1
- package/dist/components/ui/category-tree.js +2 -2
- package/dist/components/ui/checkout-button.d.ts +2 -2
- package/dist/components/ui/checkout-button.d.ts.map +1 -1
- package/dist/components/ui/checkout-button.js +4 -4
- package/dist/components/ui/guest-checkout-modal.d.ts +2 -1
- package/dist/components/ui/guest-checkout-modal.d.ts.map +1 -1
- package/dist/components/ui/guest-checkout-modal.js +1 -1
- package/dist/components/ui/image-skeleton.d.ts +1 -1
- package/dist/components/ui/image-skeleton.d.ts.map +1 -1
- package/dist/components/ui/image-skeleton.js +1 -1
- package/dist/components/ui/image-with-fallback.d.ts +1 -1
- package/dist/components/ui/image-with-fallback.d.ts.map +1 -1
- package/dist/components/ui/image-with-fallback.js +1 -1
- package/dist/components/ui/input.js +1 -1
- package/dist/components/ui/limited-time-offer-badge.d.ts +1 -1
- package/dist/components/ui/limited-time-offer-badge.d.ts.map +1 -1
- package/dist/components/ui/limited-time-offer-badge.js +2 -2
- package/dist/components/ui/loading-skeleton-wrapper.d.ts +1 -1
- package/dist/components/ui/loading-skeleton-wrapper.d.ts.map +1 -1
- package/dist/components/ui/modal.d.ts +1 -1
- package/dist/components/ui/modal.d.ts.map +1 -1
- package/dist/components/ui/modal.js +1 -1
- package/dist/components/ui/otp-input.d.ts +2 -1
- package/dist/components/ui/otp-input.d.ts.map +1 -1
- package/dist/components/ui/otp-input.js +1 -1
- package/dist/components/ui/out-of-stock-overlay.d.ts +1 -1
- package/dist/components/ui/out-of-stock-overlay.d.ts.map +1 -1
- package/dist/components/ui/out-of-stock-overlay.js +1 -1
- package/dist/components/ui/page-animate-wrapper.d.ts +1 -1
- package/dist/components/ui/page-animate-wrapper.d.ts.map +1 -1
- package/dist/components/ui/page-animate-wrapper.js +2 -2
- package/dist/components/ui/page-content-loader.d.ts +1 -1
- package/dist/components/ui/page-content-loader.d.ts.map +1 -1
- package/dist/components/ui/page-content-loader.js +1 -1
- package/dist/components/ui/page-loader.d.ts +3 -3
- package/dist/components/ui/page-loader.d.ts.map +1 -1
- package/dist/components/ui/page-loader.js +1 -1
- package/dist/components/ui/product-card.d.ts +2 -2
- package/dist/components/ui/product-card.d.ts.map +1 -1
- package/dist/components/ui/product-card.js +17 -17
- package/dist/components/ui/product-rating.d.ts +1 -1
- package/dist/components/ui/product-rating.d.ts.map +1 -1
- package/dist/components/ui/product-rating.js +1 -1
- package/dist/components/ui/product-stock-badge.d.ts +2 -2
- package/dist/components/ui/product-stock-badge.d.ts.map +1 -1
- package/dist/components/ui/product-stock-badge.js +2 -2
- package/dist/components/ui/review-form.d.ts +2 -2
- package/dist/components/ui/review-form.d.ts.map +1 -1
- package/dist/components/ui/review-form.js +2 -2
- package/dist/components/ui/route-skeleton-loader.d.ts +1 -1
- package/dist/components/ui/route-skeleton-loader.d.ts.map +1 -1
- package/dist/components/ui/route-skeleton-loader.js +1 -1
- package/dist/components/ui/sheet.d.ts +1 -1
- package/dist/components/ui/sheet.d.ts.map +1 -1
- package/dist/components/ui/sheet.js +1 -1
- package/dist/components/ui/skeleton.d.ts +1 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeleton.js +1 -1
- package/dist/components/ui/skeletons/category-grid-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/category-grid-skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeletons/checkout-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/checkout-skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeletons/page-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/page-skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeletons/product-card-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/product-card-skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeletons/product-detail-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/product-detail-skeleton.d.ts.map +1 -1
- package/dist/components/ui/skeletons/product-grid-skeleton.d.ts +1 -1
- package/dist/components/ui/skeletons/product-grid-skeleton.d.ts.map +1 -1
- package/dist/components/ui/store-logos.d.ts +13 -13
- package/dist/components/ui/store-logos.d.ts.map +1 -1
- package/dist/components/ui/store-logos.js +2 -2
- package/dist/components/ui/toast.d.ts +1 -1
- package/dist/components/ui/toast.d.ts.map +1 -1
- package/dist/components/ui/toast.js +1 -1
- package/dist/components/ui/video-player.d.ts +1 -1
- package/dist/components/ui/video-player.d.ts.map +1 -1
- package/dist/components/ui/video-player.js +2 -2
- package/dist/editor/payaza-form/ActiveArrayFocusContext.d.ts +1 -1
- package/dist/editor/payaza-form/ActiveArrayFocusContext.d.ts.map +1 -1
- package/dist/editor/payaza-form/EditorCanvasPreview.d.ts +1 -1
- package/dist/editor/payaza-form/EditorCanvasPreview.d.ts.map +1 -1
- package/dist/editor/payaza-form/EditorCanvasPreview.js +1 -1
- package/dist/editor/payaza-form/PayazaFormEditor.d.ts.map +1 -1
- package/dist/editor/payaza-form/PayazaFormEditor.js +4 -2
- package/dist/editor/payaza-form/SliderArrayEditor.js +1 -1
- package/dist/editor/payaza-form/components/BlocksField.js +1 -1
- package/dist/editor/payaza-form/components/SectionField.js +1 -1
- package/dist/editor/payaza-form/components/StarRatingField.js +1 -1
- package/dist/editor/payaza-form/data-transformer.d.ts.map +1 -1
- package/dist/editor/payaza-form/data-transformer.js +8 -1
- package/dist/editor/payaza-form/examples/custom-widgets.example.d.ts +2 -1
- package/dist/editor/payaza-form/examples/custom-widgets.example.d.ts.map +1 -1
- package/dist/editor/shared/BlockOutlineTree.d.ts +2 -1
- package/dist/editor/shared/BlockOutlineTree.d.ts.map +1 -1
- package/dist/editor/shared/BlockOutlineTree.js +1 -1
- package/dist/editor/shared/EditorHeader.js +1 -1
- package/dist/editor/shared/EditorNavigator.js +1 -1
- package/dist/editor/shared/InlineCanvasPreview.js +1 -1
- package/dist/editor/shared/useEditorChromeMetrics.js +2 -1
- package/dist/hooks/use-analytics.d.ts +1 -1
- package/dist/hooks/use-analytics.js +3 -3
- package/dist/hooks/use-api.js +1 -1
- package/dist/hooks/use-cart-api.d.ts +1 -1
- package/dist/hooks/use-cart-api.js +3 -3
- package/dist/hooks/use-catalog-loader.d.ts +1 -1
- package/dist/hooks/use-catalog-loader.js +6 -6
- package/dist/hooks/use-catalog-price-range.d.ts +2 -2
- package/dist/hooks/use-catalog-price-range.js +1 -1
- package/dist/hooks/use-category-products.d.ts +1 -1
- package/dist/hooks/use-category-products.js +2 -2
- package/dist/hooks/use-checkout-fees.d.ts +4 -3
- package/dist/hooks/use-checkout-fees.d.ts.map +1 -1
- package/dist/hooks/use-checkout-fees.js +1 -1
- package/dist/hooks/use-content-ready.js +1 -1
- package/dist/hooks/use-featured-products.d.ts +1 -1
- package/dist/hooks/use-featured-products.js +2 -2
- package/dist/hooks/use-multi-store-checkout-fees.d.ts +4 -3
- package/dist/hooks/use-multi-store-checkout-fees.d.ts.map +1 -1
- package/dist/hooks/use-multi-store-checkout-fees.js +1 -1
- package/dist/hooks/use-navigation-loading.js +1 -1
- package/dist/hooks/use-payaza-checkout.d.ts +1 -1
- package/dist/hooks/use-payaza-checkout.js +2 -2
- package/dist/hooks/use-product-brands.js +1 -1
- package/dist/hooks/use-product-by-slug.d.ts +1 -1
- package/dist/hooks/use-product-by-slug.js +2 -2
- package/dist/hooks/use-product-variation-selection.d.ts +7 -1
- package/dist/hooks/use-product-variation-selection.d.ts.map +1 -1
- package/dist/hooks/use-product-variation-selection.js +1 -1
- package/dist/hooks/use-products-api.d.ts +2 -2
- package/dist/hooks/use-products-api.js +3 -3
- package/dist/hooks/use-shipping-quote.d.ts +2 -2
- package/dist/hooks/use-shipping-quote.js +2 -2
- package/dist/hooks/use-store-api.d.ts +2 -2
- package/dist/hooks/use-store-api.js +4 -4
- package/dist/index.d.ts +10 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -6
- package/dist/layouts/booking/components/BookingHomePage.d.ts +2 -2
- package/dist/layouts/booking/components/BookingHomePage.d.ts.map +1 -1
- package/dist/layouts/booking/components/BookingHomePage.js +4 -4
- package/dist/layouts/booking/components/BookingMultilineHeading.d.ts +2 -1
- package/dist/layouts/booking/components/BookingMultilineHeading.d.ts.map +1 -1
- package/dist/layouts/booking/components/BookingTestimonialCard.d.ts +3 -2
- package/dist/layouts/booking/components/BookingTestimonialCard.d.ts.map +1 -1
- package/dist/layouts/booking/components/BookingTestimonialCard.js +1 -1
- package/dist/layouts/booking/components/BookingTestimonialsEmptyState.d.ts +2 -1
- package/dist/layouts/booking/components/BookingTestimonialsEmptyState.d.ts.map +1 -1
- package/dist/layouts/booking/components/BookingTestimonialsEmptyState.js +1 -1
- package/dist/layouts/booking/components/booking-footer-defaults.d.ts +1 -1
- package/dist/layouts/booking/components/booking-testimonial-defaults.d.ts +1 -1
- package/dist/layouts/booking/index.d.ts +5 -5
- package/dist/layouts/booking/index.d.ts.map +1 -1
- package/dist/layouts/booking/index.js +5 -5
- package/dist/layouts/booking/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/booking/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/AboutPage.js +3 -3
- package/dist/layouts/booking/pages/BookPage.d.ts +2 -2
- package/dist/layouts/booking/pages/BookPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/BookPage.js +14 -14
- package/dist/layouts/booking/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/booking/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/CategoriesPage.js +4 -4
- package/dist/layouts/booking/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/booking/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/CategoryPage.js +6 -6
- package/dist/layouts/booking/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/booking/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/ContactPage.js +3 -3
- package/dist/layouts/booking/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/booking/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/booking/pages/ServicesPage.d.ts +2 -2
- package/dist/layouts/booking/pages/ServicesPage.d.ts.map +1 -1
- package/dist/layouts/booking/pages/ServicesPage.js +3 -3
- package/dist/layouts/booking-agenda/components/BookingHomePageAgenda.d.ts +2 -2
- package/dist/layouts/booking-agenda/components/BookingHomePageAgenda.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/components/BookingHomePageAgenda.js +17 -17
- package/dist/layouts/booking-agenda/index.d.ts +5 -5
- package/dist/layouts/booking-agenda/index.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/index.js +5 -5
- package/dist/layouts/booking-agenda/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/AboutPage.js +3 -3
- package/dist/layouts/booking-agenda/pages/BookPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/BookPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/BookPage.js +14 -14
- package/dist/layouts/booking-agenda/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/CategoriesPage.js +4 -4
- package/dist/layouts/booking-agenda/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/CategoryPage.js +6 -6
- package/dist/layouts/booking-agenda/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/ContactPage.js +3 -3
- package/dist/layouts/booking-agenda/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/booking-agenda/pages/ServicesPage.d.ts +2 -2
- package/dist/layouts/booking-agenda/pages/ServicesPage.d.ts.map +1 -1
- package/dist/layouts/booking-agenda/pages/ServicesPage.js +2 -2
- package/dist/layouts/clothing/components/ClothingHomePage.d.ts +1 -1
- package/dist/layouts/clothing/components/ClothingHomePage.d.ts.map +1 -1
- package/dist/layouts/clothing/components/ClothingHomePage.js +2 -2
- package/dist/layouts/clothing/index.d.ts +5 -5
- package/dist/layouts/clothing/index.d.ts.map +1 -1
- package/dist/layouts/clothing/index.js +5 -5
- package/dist/layouts/clothing/pages/AboutPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/CategoriesPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/CategoryPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/CategoryPage.js +1 -1
- package/dist/layouts/clothing/pages/ContactPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/ProductDetailPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/ProductDetailPage.js +3 -3
- package/dist/layouts/clothing/pages/ProductsPage.d.ts +1 -1
- package/dist/layouts/clothing/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/clothing/pages/ProductsPage.js +7 -7
- package/dist/layouts/clothing-minimal/components/ClothingHomePageMinimal.d.ts +1 -1
- package/dist/layouts/clothing-minimal/components/ClothingHomePageMinimal.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/components/ClothingHomePageMinimal.js +2 -2
- package/dist/layouts/clothing-minimal/components/clothing-minimal-block-render.d.ts +6 -5
- package/dist/layouts/clothing-minimal/components/clothing-minimal-block-render.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/index.d.ts +5 -5
- package/dist/layouts/clothing-minimal/index.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/index.js +5 -5
- package/dist/layouts/clothing-minimal/pages/AboutPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/CategoriesPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/CategoryPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/CategoryPage.js +1 -1
- package/dist/layouts/clothing-minimal/pages/ContactPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/ProductDetailPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/ProductDetailPage.js +3 -3
- package/dist/layouts/clothing-minimal/pages/ProductsPage.d.ts +1 -1
- package/dist/layouts/clothing-minimal/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/clothing-minimal/pages/ProductsPage.js +7 -7
- package/dist/layouts/electronics/components/ElectronicsCategoriesPage.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsCategoriesPage.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsCategoriesPage.js +4 -4
- package/dist/layouts/electronics/components/ElectronicsGridProductCard.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsGridProductCard.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsGridProductCard.js +14 -14
- package/dist/layouts/electronics/components/ElectronicsHomePage.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsHomePage.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsHomePage.js +8 -8
- package/dist/layouts/electronics/components/ElectronicsPageWrapper.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsPageWrapper.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsPageWrapper.js +2 -2
- package/dist/layouts/electronics/components/ElectronicsProductsPage.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsProductsPage.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsProductsPage.js +12 -12
- package/dist/layouts/electronics/components/ElectronicsStoreFooter.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsStoreFooter.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsStoreFooter.js +2 -2
- package/dist/layouts/electronics/components/ElectronicsStoreHeader.d.ts +2 -2
- package/dist/layouts/electronics/components/ElectronicsStoreHeader.d.ts.map +1 -1
- package/dist/layouts/electronics/components/ElectronicsStoreHeader.js +6 -6
- package/dist/layouts/electronics/index.d.ts +5 -5
- package/dist/layouts/electronics/index.d.ts.map +1 -1
- package/dist/layouts/electronics/index.js +5 -5
- package/dist/layouts/electronics/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/AboutPage.js +3 -3
- package/dist/layouts/electronics/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/CategoryPage.js +7 -7
- package/dist/layouts/electronics/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/ContactPage.js +3 -3
- package/dist/layouts/electronics/pages/HelpCenterPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/HelpCenterPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/HelpCenterPage.js +1 -1
- package/dist/layouts/electronics/pages/PrivacyPolicyPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/PrivacyPolicyPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/PrivacyPolicyPage.js +1 -1
- package/dist/layouts/electronics/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/electronics/pages/ProductsPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/ProductsPage.js +22 -22
- package/dist/layouts/electronics/pages/ShippingReturnsPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/ShippingReturnsPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/TermsPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/TermsPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/TermsPage.js +1 -1
- package/dist/layouts/electronics/pages/TrackOrderPage.d.ts +2 -2
- package/dist/layouts/electronics/pages/TrackOrderPage.d.ts.map +1 -1
- package/dist/layouts/electronics/pages/TrackOrderPage.js +4 -4
- package/dist/layouts/electronics-grid/components/ElectronicsGridProductCard.d.ts +2 -2
- package/dist/layouts/electronics-grid/components/ElectronicsGridProductCard.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/components/ElectronicsGridProductCard.js +14 -14
- package/dist/layouts/electronics-grid/components/ElectronicsHomePageGrid.d.ts +2 -2
- package/dist/layouts/electronics-grid/components/ElectronicsHomePageGrid.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/components/ElectronicsHomePageGrid.js +14 -14
- package/dist/layouts/electronics-grid/index.d.ts +5 -5
- package/dist/layouts/electronics-grid/index.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/index.js +5 -5
- package/dist/layouts/electronics-grid/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/AboutPage.js +3 -3
- package/dist/layouts/electronics-grid/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/CategoryPage.js +7 -7
- package/dist/layouts/electronics-grid/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/ContactPage.js +3 -3
- package/dist/layouts/electronics-grid/pages/ElectronicsGridCategoriesPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/ElectronicsGridCategoriesPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/ElectronicsGridCategoriesPage.js +6 -6
- package/dist/layouts/electronics-grid/pages/HelpCenterPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/HelpCenterPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/HelpCenterPage.js +1 -1
- package/dist/layouts/electronics-grid/pages/PrivacyPolicyPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/PrivacyPolicyPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/PrivacyPolicyPage.js +1 -1
- package/dist/layouts/electronics-grid/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/electronics-grid/pages/ProductsPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/ProductsPage.js +22 -22
- package/dist/layouts/electronics-grid/pages/ShippingReturnsPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/ShippingReturnsPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/TermsPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/TermsPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/TermsPage.js +1 -1
- package/dist/layouts/electronics-grid/pages/TrackOrderPage.d.ts +2 -2
- package/dist/layouts/electronics-grid/pages/TrackOrderPage.d.ts.map +1 -1
- package/dist/layouts/electronics-grid/pages/TrackOrderPage.js +4 -4
- package/dist/layouts/food/components/FoodHomePage.d.ts +2 -2
- package/dist/layouts/food/components/FoodHomePage.d.ts.map +1 -1
- package/dist/layouts/food/components/FoodHomePage.js +7 -7
- package/dist/layouts/food/index.d.ts +6 -6
- package/dist/layouts/food/index.d.ts.map +1 -1
- package/dist/layouts/food/index.js +6 -6
- package/dist/layouts/food/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/food/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/AboutPage.js +3 -3
- package/dist/layouts/food/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/food/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/CategoriesPage.js +4 -4
- package/dist/layouts/food/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/food/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/CategoryPage.js +7 -7
- package/dist/layouts/food/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/food/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/ContactPage.js +3 -3
- package/dist/layouts/food/pages/MenuPage.d.ts +2 -2
- package/dist/layouts/food/pages/MenuPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/MenuPage.js +7 -7
- package/dist/layouts/food/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/food/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/food/pages/ProductsPage.d.ts +2 -2
- package/dist/layouts/food/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/food/pages/ProductsPage.js +16 -16
- package/dist/layouts/food-modern/components/FoodHomePageModern.d.ts +2 -2
- package/dist/layouts/food-modern/components/FoodHomePageModern.d.ts.map +1 -1
- package/dist/layouts/food-modern/components/FoodHomePageModern.js +8 -8
- package/dist/layouts/food-modern/index.d.ts +6 -6
- package/dist/layouts/food-modern/index.d.ts.map +1 -1
- package/dist/layouts/food-modern/index.js +6 -6
- package/dist/layouts/food-modern/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/AboutPage.js +3 -3
- package/dist/layouts/food-modern/pages/CategoriesPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/CategoriesPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/CategoriesPage.js +4 -4
- package/dist/layouts/food-modern/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/CategoryPage.js +7 -7
- package/dist/layouts/food-modern/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/ContactPage.js +3 -3
- package/dist/layouts/food-modern/pages/MenuPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/MenuPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/MenuPage.js +7 -7
- package/dist/layouts/food-modern/pages/ProductDetailPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/ProductDetailPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/ProductDetailPage.js +23 -22
- package/dist/layouts/food-modern/pages/ProductsPage.d.ts +2 -2
- package/dist/layouts/food-modern/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/food-modern/pages/ProductsPage.js +16 -16
- package/dist/layouts/motivational-speaker/components/MotivationalHomePage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/components/MotivationalHomePage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/components/MotivationalHomePage.js +6 -6
- package/dist/layouts/motivational-speaker/components/MotivationalSpeakerPageWrapper.d.ts +2 -1
- package/dist/layouts/motivational-speaker/components/MotivationalSpeakerPageWrapper.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/index.d.ts +6 -6
- package/dist/layouts/motivational-speaker/index.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/index.js +6 -6
- package/dist/layouts/motivational-speaker/pages/AboutPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/AboutPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/AboutPage.js +3 -3
- package/dist/layouts/motivational-speaker/pages/CategoryPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/CategoryPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/CategoryPage.js +9 -9
- package/dist/layouts/motivational-speaker/pages/ContactPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/ContactPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/ContactPage.js +3 -3
- package/dist/layouts/motivational-speaker/pages/ProductsPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/ProductsPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/ProductsPage.js +22 -22
- package/dist/layouts/motivational-speaker/pages/ServiceDetailPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/ServiceDetailPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/ServiceDetailPage.js +8 -8
- package/dist/layouts/motivational-speaker/pages/ServicesPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/ServicesPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/ServicesPage.js +2 -2
- package/dist/layouts/motivational-speaker/pages/SubscriptionPage.d.ts +2 -2
- package/dist/layouts/motivational-speaker/pages/SubscriptionPage.d.ts.map +1 -1
- package/dist/layouts/motivational-speaker/pages/SubscriptionPage.js +7 -7
- package/dist/layouts/shared/components/BaseStoreLayout.d.ts +1 -1
- package/dist/layouts/shared/components/BaseStoreLayout.d.ts.map +1 -1
- package/dist/layouts/shared/components/CartLineQuantityControl.d.ts +2 -2
- package/dist/layouts/shared/components/CartLineQuantityControl.d.ts.map +1 -1
- package/dist/layouts/shared/components/CartLineQuantityControl.js +1 -1
- package/dist/layouts/shared/components/GenericPageWrapper.d.ts +1 -1
- package/dist/layouts/shared/components/GenericPageWrapper.d.ts.map +1 -1
- package/dist/layouts/shared/components/ProductPriceFilterSection.d.ts +1 -1
- package/dist/layouts/shared/components/ProductPriceFilterSection.d.ts.map +1 -1
- package/dist/layouts/shared/components/ProductPriceFilterSection.js +1 -1
- package/dist/layouts/shared/components/PromoBanner.d.ts +2 -1
- package/dist/layouts/shared/components/PromoBanner.d.ts.map +1 -1
- package/dist/layouts/shared/components/StoreFooter.d.ts +1 -1
- package/dist/layouts/shared/components/StoreFooter.d.ts.map +1 -1
- package/dist/layouts/shared/components/StoreFooter.js +3 -3
- package/dist/layouts/shared/components/StoreHeader.d.ts +1 -1
- package/dist/layouts/shared/components/StoreHeader.d.ts.map +1 -1
- package/dist/layouts/shared/components/StoreHeader.js +4 -4
- package/dist/layouts/shared/components/TestimonialCard.d.ts +3 -2
- package/dist/layouts/shared/components/TestimonialCard.d.ts.map +1 -1
- package/dist/layouts/shared/components/TestimonialCard.js +1 -1
- package/dist/layouts/shared/components/headers/BookingAgendaSidebar.d.ts +1 -1
- package/dist/layouts/shared/components/headers/BookingAgendaSidebar.d.ts.map +1 -1
- package/dist/layouts/shared/components/headers/ClothingMinimalHeader.d.ts +1 -1
- package/dist/layouts/shared/components/headers/ClothingMinimalHeader.d.ts.map +1 -1
- package/dist/layouts/shared/components/headers/FoodModernHeader.d.ts +1 -1
- package/dist/layouts/shared/components/headers/FoodModernHeader.d.ts.map +1 -1
- package/dist/layouts/shared/pages/AccountPage.d.ts +2 -2
- package/dist/layouts/shared/pages/AccountPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/AccountPage.js +15 -15
- package/dist/layouts/shared/pages/CartPage.d.ts +2 -2
- package/dist/layouts/shared/pages/CartPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/CartPage.js +4 -4
- package/dist/layouts/shared/pages/CheckoutPage.d.ts +2 -2
- package/dist/layouts/shared/pages/CheckoutPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/CheckoutPage.js +19 -19
- package/dist/layouts/shared/pages/CookiePolicyPage.d.ts +2 -2
- package/dist/layouts/shared/pages/CookiePolicyPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/CookiePolicyPage.js +1 -1
- package/dist/layouts/shared/pages/FeatureDisabledPage.d.ts +2 -2
- package/dist/layouts/shared/pages/FeatureDisabledPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/FeatureDisabledPage.js +1 -1
- package/dist/layouts/shared/pages/HelpCenterPage.d.ts +2 -2
- package/dist/layouts/shared/pages/HelpCenterPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/HelpCenterPage.js +1 -1
- package/dist/layouts/shared/pages/MaintenancePage.d.ts +2 -2
- package/dist/layouts/shared/pages/MaintenancePage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/MaintenancePage.js +2 -2
- package/dist/layouts/shared/pages/PortfolioPage.d.ts +2 -2
- package/dist/layouts/shared/pages/PortfolioPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/PortfolioPage.js +1 -1
- package/dist/layouts/shared/pages/PrivacyPolicyPage.d.ts +2 -2
- package/dist/layouts/shared/pages/PrivacyPolicyPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/PrivacyPolicyPage.js +1 -1
- package/dist/layouts/shared/pages/ShippingReturnsPage.d.ts +2 -2
- package/dist/layouts/shared/pages/ShippingReturnsPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/SizeGuidePage.d.ts +2 -2
- package/dist/layouts/shared/pages/SizeGuidePage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/SizeGuidePage.js +1 -1
- package/dist/layouts/shared/pages/StyleGuidePage.d.ts +2 -2
- package/dist/layouts/shared/pages/StyleGuidePage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/StyleGuidePage.js +3 -3
- package/dist/layouts/shared/pages/TeamPage.d.ts +2 -2
- package/dist/layouts/shared/pages/TeamPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/TermsPage.d.ts +2 -2
- package/dist/layouts/shared/pages/TermsPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/TermsPage.js +1 -1
- package/dist/layouts/shared/pages/TrackOrderPage.d.ts +2 -2
- package/dist/layouts/shared/pages/TrackOrderPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/TrackOrderPage.js +4 -4
- package/dist/layouts/shared/pages/WishlistPage.d.ts +2 -2
- package/dist/layouts/shared/pages/WishlistPage.d.ts.map +1 -1
- package/dist/layouts/shared/pages/WishlistPage.js +11 -11
- package/dist/layouts/shared/wrappers/BookingAgendaLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/BookingAgendaLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/BookingAgendaLayout.js +1 -1
- package/dist/layouts/shared/wrappers/ClothingLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/ClothingLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/ClothingLayout.js +5 -5
- package/dist/layouts/shared/wrappers/ClothingMinimalLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/ClothingMinimalLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/ClothingMinimalLayout.js +4 -4
- package/dist/layouts/shared/wrappers/ElectronicsLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/ElectronicsLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/ElectronicsLayout.js +4 -4
- package/dist/layouts/shared/wrappers/FoodModernLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/FoodModernLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/FoodModernLayout.js +4 -4
- package/dist/layouts/shared/wrappers/MotivationalLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/MotivationalLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/MotivationalLayout.js +4 -4
- package/dist/layouts/shared/wrappers/StandardLayout.d.ts +1 -1
- package/dist/layouts/shared/wrappers/StandardLayout.d.ts.map +1 -1
- package/dist/layouts/shared/wrappers/StandardLayout.js +4 -4
- package/dist/lib/auth-context.d.ts +1 -1
- package/dist/lib/auth-context.d.ts.map +1 -1
- package/dist/lib/loading-context.d.ts +1 -1
- package/dist/lib/loading-context.d.ts.map +1 -1
- package/dist/lib/loading-context.js +4 -4
- package/dist/lib/payaza-checkout.js +1 -1
- package/dist/lib/payaza-public-key.d.ts +1 -1
- package/dist/lib/preview-data.d.ts.map +1 -1
- package/dist/lib/preview-data.js +0 -2
- package/dist/lib/rich-html.d.ts +8 -0
- package/dist/lib/rich-html.d.ts.map +1 -1
- package/dist/lib/services/fees.service.d.ts +63 -17
- package/dist/lib/services/fees.service.d.ts.map +1 -1
- package/dist/lib/services/fees.service.js +137 -3
- package/dist/lib/store-context.d.ts +1 -1
- package/dist/lib/store-context.d.ts.map +1 -1
- package/dist/lib/store-types.d.ts +32 -0
- package/dist/lib/store-types.d.ts.map +1 -1
- package/dist/lib/utils/asset-helpers.d.ts +1 -1
- package/dist/lib/utils/category-tree.d.ts +1 -1
- package/dist/lib/utils/index.js +1 -1
- package/dist/preview/LayoutPreview.d.ts +1 -1
- package/dist/preview/LayoutPreview.d.ts.map +1 -1
- package/dist/preview/LayoutPreview.js +23 -6
- package/dist/preview/PreviewRouter.d.ts +3 -2
- package/dist/preview/PreviewRouter.d.ts.map +1 -1
- package/dist/preview/PreviewRouter.js +2 -2
- package/dist/preview/ShadowDOMWrapper.d.ts +1 -1
- package/dist/preview/ShadowDOMWrapper.d.ts.map +1 -1
- package/dist/preview/canvas/PreviewCanvasEnhancer.d.ts +1 -1
- package/dist/preview/canvas/PreviewCanvasEnhancer.d.ts.map +1 -1
- package/dist/preview/canvas/PreviewCanvasStyles.d.ts +1 -1
- package/dist/preview/canvas/PreviewCanvasStyles.d.ts.map +1 -1
- package/dist/preview/index.d.ts +1 -1
- package/dist/preview/index.js +1 -1
- package/dist/styles/index.css +1577 -3274
- package/package.json +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CategoryPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/CategoryPage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8B,MAAM,0BAA0B,CAAC;AAcnF,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,iBAAiB
|
|
1
|
+
{"version":3,"file":"CategoryPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/CategoryPage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8B,MAAM,0BAA0B,CAAC;AAcnF,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,iBAAiB,+BA6H3F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useCategoryProducts } from '../../../hooks/use-category-products';
|
|
3
|
+
import { useCategoryProducts } from '../../../hooks/use-category-products.js';
|
|
4
4
|
import { Button } from '../../../components/ui/button';
|
|
5
5
|
import { ImageWithFallback } from '../../../components/ui/image-with-fallback';
|
|
6
6
|
import { useStore } from '../../../lib/store-context';
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface ContactPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ContactPage({ storeConfig: initialConfig }: ContactPageProps): import("react
|
|
5
|
+
export declare function ContactPage({ storeConfig: initialConfig }: ContactPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ContactPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ContactPage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,gBAAgB;IACtB,WAAW,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,gBAAgB
|
|
1
|
+
{"version":3,"file":"ContactPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ContactPage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,gBAAgB;IACtB,WAAW,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,gBAAgB,+BA2T3E"}
|
|
@@ -3,6 +3,6 @@ interface ProductDetailPageProps {
|
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
productSlug: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function ProductDetailPage({ storeConfig: initialConfig, productSlug }: ProductDetailPageProps): import("react
|
|
6
|
+
export declare function ProductDetailPage({ storeConfig: initialConfig, productSlug }: ProductDetailPageProps): import("react").JSX.Element;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=ProductDetailPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ProductDetailPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAA8C,MAAM,0BAA0B,CAAC;AA4BnG,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAsHD,wBAAgB,iBAAiB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,sBAAsB
|
|
1
|
+
{"version":3,"file":"ProductDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ProductDetailPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAA8C,MAAM,0BAA0B,CAAC;AA4BnG,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAsHD,wBAAgB,iBAAiB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,sBAAsB,+BAwiCpG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useProductBySlug } from '../../../hooks/use-product-by-slug';
|
|
4
|
-
import { useProductReviews } from '../../../hooks/use-product-reviews';
|
|
3
|
+
import { useProductBySlug } from '../../../hooks/use-product-by-slug.js';
|
|
4
|
+
import { useProductReviews } from '../../../hooks/use-product-reviews.js';
|
|
5
5
|
import { Button } from '../../../components/ui/button';
|
|
6
6
|
import { Breadcrumbs } from '../../../components/ui/breadcrumbs';
|
|
7
7
|
import { Modal } from '../../../components/ui/modal';
|
|
@@ -475,7 +475,7 @@ export function ProductDetailPage({ storeConfig: initialConfig, productSlug }) {
|
|
|
475
475
|
: 'border-gray-200 hover:border-gray-300'}`, children: _jsx(ImageWithFallback, { src: image, alt: `${product.name} view ${index + 1}`, className: cn("w-full h-full object-cover", isOutOfStock && "grayscale"), skeletonAspectRatio: "square" }) }, index))), hasMoreImages && (_jsxs("div", { className: "aspect-square rounded-lg border-2 border-gray-200 bg-gray-50 flex items-center justify-center text-xs text-gray-500 font-medium", children: ["+", productImages.length - 5, " more"] }))] }))] }), _jsxs("div", { className: "flex flex-col", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsx("span", { className: "text-sm font-semibold text-gray-700 uppercase tracking-wide", children: (() => {
|
|
476
476
|
const brandMatch = product.name.match(/\b(Nike|Adidas|Puma|Reebok|New Balance|Vans|Converse|Zara|H&M|Gucci|Prada|Levi's|Calvin Klein)\b/i);
|
|
477
477
|
return brandMatch ? brandMatch[1] : storeConfig.name;
|
|
478
|
-
})() }), _jsx("button", { onClick: handleShare, className: "text-gray-400 hover:text-gray-900 transition-colors p-2 rounded-full hover:bg-gray-100", title: "Share this product", children: _jsx(Share2, { className: "h-5 w-5" }) })] }), _jsx("h1", { "data-product-name": true, className: "text-3xl sm:text-4xl lg:text-5xl font-bold text-gray-900 mb-3 leading-tight tracking-tight", children: product.name }), _jsxs("p", { className: "text-sm text-gray-500 mb-6 font-mono", children: ["SKU: ", displaySKU] }), _jsx("div", { className: "mb-4 flex items-center gap-2", children: product.inStock ? (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800", children: [_jsx(CheckCircle, { className: "w-3 h-3 mr-1" }), "In Stock"] })) : (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-red-100 text-red-800", children: [_jsx(Info, { className: "w-3 h-3 mr-1" }), "Out of Stock"] })) }), _jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-baseline gap-4", children: [_jsx("span", { "data-product-price": true, className: "text-4xl lg:text-5xl font-bold text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice && (_jsx("span", { className: "text-2xl text-gray-500 line-through", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] }), product.compareAtPrice && (_jsxs("span", { className: "inline-block mt-2 bg-red-100 text-red-700 text-xs font-bold px-2 py-1 rounded", children: ["SAVE ", Math.round(((product.compareAtPrice - product.price) / product.compareAtPrice) * 100), "%"] }))] }), colorVariants.length > 0 && (_jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-center gap-2 mb-4", children: [_jsx("span", { className: "text-sm font-semibold text-gray-900", children: "Color:" }), _jsx("span", { className: "text-sm text-gray-600 capitalize", children: selectedColor || colorVariants[0]?.value })] }), _jsx("div", { className: "flex gap-3", children: colorVariants.map((variant) => {
|
|
478
|
+
})() }), _jsx("button", { onClick: handleShare, className: "text-gray-400 hover:text-gray-900 transition-colors p-2 rounded-full hover:bg-gray-100", title: "Share this product", children: _jsx(Share2, { className: "h-5 w-5" }) })] }), _jsx("h1", { "data-product-name": true, className: "text-3xl sm:text-4xl lg:text-5xl font-bold text-gray-900 mb-3 leading-tight tracking-tight", children: product.name }), _jsxs("p", { className: "text-sm text-gray-500 mb-6 font-mono", children: ["SKU: ", displaySKU] }), _jsx("div", { className: "mb-4 flex items-center gap-2", children: product.inStock ? (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800", children: [_jsx(CheckCircle, { className: "w-3 h-3 mr-1" }), "In Stock"] })) : (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-red-100 text-red-800", children: [_jsx(Info, { className: "w-3 h-3 mr-1" }), "Out of Stock"] })) }), _jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-baseline gap-4", children: [_jsx("span", { "data-product-price": true, className: "text-4xl lg:text-5xl font-bold text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsx("span", { className: "text-2xl text-gray-500 line-through", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsxs("span", { className: "inline-block mt-2 bg-red-100 text-red-700 text-xs font-bold px-2 py-1 rounded", children: ["SAVE ", Math.round(((product.compareAtPrice - product.price) / product.compareAtPrice) * 100), "%"] }))] }), colorVariants.length > 0 && (_jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-center gap-2 mb-4", children: [_jsx("span", { className: "text-sm font-semibold text-gray-900", children: "Color:" }), _jsx("span", { className: "text-sm text-gray-600 capitalize", children: selectedColor || colorVariants[0]?.value })] }), _jsx("div", { className: "flex gap-3", children: colorVariants.map((variant) => {
|
|
479
479
|
const colorValue = variant.value;
|
|
480
480
|
const swatchColor = colorSwatches[colorValue] || '#CCCCCC';
|
|
481
481
|
const isSelected = selectedColor === colorValue;
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface ProductsPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ProductsPage(props: ProductsPageProps): import("react
|
|
5
|
+
export declare function ProductsPage(props: ProductsPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ProductsPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductsPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ProductsPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AAyBrE,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAowBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB
|
|
1
|
+
{"version":3,"file":"ProductsPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing/pages/ProductsPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AAyBrE,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAowBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAMpD"}
|
|
@@ -14,13 +14,13 @@ import { useAnalytics } from '../../../hooks/use-analytics';
|
|
|
14
14
|
import { ChevronDown, ChevronUp, Star, Check, Search, RotateCcw, SlidersHorizontal } from 'lucide-react';
|
|
15
15
|
import { useSearchParams } from 'next/navigation';
|
|
16
16
|
import { useState, useMemo, useEffect, useRef, Suspense } from 'react';
|
|
17
|
-
import { useProductBrands } from '../../../hooks/use-product-brands';
|
|
17
|
+
import { useProductBrands } from '../../../hooks/use-product-brands.js';
|
|
18
18
|
import { filterActiveProducts } from '../../../lib/utils';
|
|
19
19
|
import { getAllCategoryIds, flattenCategoryTree, buildCategoryTree } from '../../../lib/utils/category-tree';
|
|
20
20
|
import { getBannerImage, getLayoutText } from '../../../lib/utils/asset-helpers';
|
|
21
21
|
import { shouldUseAPI } from '../../../lib/utils/demo-detection';
|
|
22
|
-
import { useCatalogPriceRange } from '../../../hooks/use-catalog-price-range';
|
|
23
|
-
import { isWithinActivePriceRange } from '../../../lib/utils/catalog-price-bounds';
|
|
22
|
+
import { useCatalogPriceRange } from '../../../hooks/use-catalog-price-range.js';
|
|
23
|
+
import { isWithinActivePriceRange } from '../../../lib/utils/catalog-price-bounds.js';
|
|
24
24
|
import { ProductPriceFilterSection } from '../../shared/components/ProductPriceFilterSection';
|
|
25
25
|
function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
26
26
|
const { store, addToCart } = useStore();
|
|
@@ -217,8 +217,8 @@ function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
|
217
217
|
skipBootstrapRefetch.current = false;
|
|
218
218
|
setIsLoadingProducts(true);
|
|
219
219
|
try {
|
|
220
|
-
const { productService } = await import('../../../lib/services/product.service');
|
|
221
|
-
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils');
|
|
220
|
+
const { productService } = await import('../../../lib/services/product.service.js');
|
|
221
|
+
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils.js');
|
|
222
222
|
const response = await productService.getProducts({ ...productQuery, page: 1, limit: 12 });
|
|
223
223
|
if (cancelled)
|
|
224
224
|
return;
|
|
@@ -246,8 +246,8 @@ function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
|
246
246
|
return;
|
|
247
247
|
setIsLoadingProducts(true);
|
|
248
248
|
try {
|
|
249
|
-
const { productService } = await import('../../../lib/services/product.service');
|
|
250
|
-
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils');
|
|
249
|
+
const { productService } = await import('../../../lib/services/product.service.js');
|
|
250
|
+
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils.js');
|
|
251
251
|
const nextPage = currentPage + 1;
|
|
252
252
|
const response = await productService.getProducts({ ...productQuery, page: nextPage, limit: 12 });
|
|
253
253
|
setProducts((current) => [...current, ...response.data.map(transformProductToStoreProduct)]);
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface ClothingHomePageMinimalProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ClothingHomePageMinimal({ storeConfig: initialConfig }: ClothingHomePageMinimalProps): import("react
|
|
5
|
+
export declare function ClothingHomePageMinimal({ storeConfig: initialConfig }: ClothingHomePageMinimalProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ClothingHomePageMinimal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClothingHomePageMinimal.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/components/ClothingHomePageMinimal.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AAiBrE,UAAU,4BAA4B;IACpC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,uBAAuB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,4BAA4B
|
|
1
|
+
{"version":3,"file":"ClothingHomePageMinimal.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/components/ClothingHomePageMinimal.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AAiBrE,UAAU,4BAA4B;IACpC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,uBAAuB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,4BAA4B,+BAsVnG"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useFeaturedProducts } from '../../../hooks/use-featured-products';
|
|
3
|
+
import { useFeaturedProducts } from '../../../hooks/use-featured-products.js';
|
|
4
4
|
import { Button } from '../../../components/ui/button';
|
|
5
5
|
import { useStore } from '../../../lib/store-context';
|
|
6
6
|
import { ImageWithFallback } from '../../../components/ui/image-with-fallback';
|
|
@@ -64,6 +64,6 @@ export function ClothingHomePageMinimal({ storeConfig: initialConfig }) {
|
|
|
64
64
|
}, className: "bg-white text-black px-8 py-3 rounded-full text-sm font-bold shadow-lg transform translate-y-4 group-hover:translate-y-0 transition-all duration-300 hover:bg-black hover:text-white", children: "Quick Add" }) }), _jsx("button", { onClick: (e) => {
|
|
65
65
|
e.preventDefault();
|
|
66
66
|
handleAddToCart(product);
|
|
67
|
-
}, className: "lg:hidden absolute bottom-3 right-3 bg-white text-black h-10 w-10 flex items-center justify-center rounded-full shadow-lg z-10 active:scale-95 transition-transform", children: _jsx(Plus, { className: "h-5 w-5" }) }), product.compareAtPrice && (_jsx("span", { className: "absolute top-2 left-2 text-[10px] font-bold uppercase tracking-wider bg-black text-white px-2 py-1", children: getLayoutText(storeConfig, 'common.sale', 'Sale') }))] }), _jsxs("div", { className: "flex justify-between items-start", children: [_jsxs("div", { children: [_jsx("h3", { className: "font-medium text-base mb-1 group-hover:underline decoration-1 underline-offset-4", children: product.name }), _jsx("div", { className: "flex gap-2 mb-2", children: ['#D4D4D4', '#171717', '#737373'].map((color, i) => (_jsx("div", { className: "w-3 h-3 rounded-full border border-gray-200", style: { backgroundColor: color } }, i))) })] }), _jsx("span", { className: "font-medium text-sm", children: formatCurrency(product.price, product.currency || 'USD') })] })] }) }, product.id))) })] }) })), layoutConfig?.sections?.about?.show !== false && (_jsx("section", { "data-section": "about", className: "py-16 md:py-24 px-4 md:px-8 border-t border-gray-100", children: _jsx("div", { className: "container mx-auto", children: _jsxs("div", { className: "grid grid-cols-1 lg:grid-cols-2 gap-10 md:gap-16 items-center", children: [_jsxs("div", { className: "relative aspect-[4/5] bg-gray-100 group overflow-hidden", children: [_jsx(ImageWithFallback, { src: "https://images.unsplash.com/photo-1483985988355-763728e1935b?q=80&w=2070&auto=format&fit=crop", alt: "Shop the look", className: "w-full h-full object-cover" }), _jsxs("div", { className: "absolute top-[30%] left-[45%] group/spot", children: [_jsx("div", { className: "w-4 h-4 bg-white rounded-full animate-pulse cursor-pointer relative z-10 hover:scale-125 transition-transform" }), _jsxs("div", { className: "absolute left-6 top-1/2 -translate-y-1/2 bg-white p-3 rounded shadow-lg w-48 opacity-0 group-hover/spot:opacity-100 transition-opacity pointer-events-none group-hover/spot:pointer-events-auto", children: [_jsx("p", { className: "font-bold text-xs mb-1", children: "Oversized Wool Coat" }), _jsx("p", { className: "text-xs text-gray-500", children: "$299.00" })] })] }), _jsxs("div", { className: "absolute bottom-[25%] right-[40%] group/spot", children: [_jsx("div", { className: "w-4 h-4 bg-white rounded-full animate-pulse cursor-pointer relative z-10 hover:scale-125 transition-transform" }), _jsxs("div", { className: "absolute right-6 top-1/2 -translate-y-1/2 bg-white p-3 rounded shadow-lg w-48 opacity-0 group-hover/spot:opacity-100 transition-opacity pointer-events-none group-hover/spot:pointer-events-auto", children: [_jsx("p", { className: "font-bold text-xs mb-1", children: "Leather Ankle Boots" }), _jsx("p", { className: "text-xs text-gray-500", children: "$189.00" })] })] })] }), _jsxs("div", { className: "space-y-8", children: [_jsx("h2", { className: "text-4xl font-light", children: layoutConfig?.sections?.about?.title || (_jsxs(_Fragment, { children: ["Winter ", _jsx("span", { className: "font-serif italic", children: "Layering" })] })) }), _jsx("div", { className: "text-gray-600 leading-relaxed max-w-md [&_p]:mb-3 [&_p:last-child]:mb-0", children: _jsx(SafeRichHtml, { value: layoutConfig?.sections?.about?.description ||
|
|
67
|
+
}, className: "lg:hidden absolute bottom-3 right-3 bg-white text-black h-10 w-10 flex items-center justify-center rounded-full shadow-lg z-10 active:scale-95 transition-transform", children: _jsx(Plus, { className: "h-5 w-5" }) }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsx("span", { className: "absolute top-2 left-2 text-[10px] font-bold uppercase tracking-wider bg-black text-white px-2 py-1", children: getLayoutText(storeConfig, 'common.sale', 'Sale') }))] }), _jsxs("div", { className: "flex justify-between items-start", children: [_jsxs("div", { children: [_jsx("h3", { className: "font-medium text-base mb-1 group-hover:underline decoration-1 underline-offset-4", children: product.name }), _jsx("div", { className: "flex gap-2 mb-2", children: ['#D4D4D4', '#171717', '#737373'].map((color, i) => (_jsx("div", { className: "w-3 h-3 rounded-full border border-gray-200", style: { backgroundColor: color } }, i))) })] }), _jsx("span", { className: "font-medium text-sm", children: formatCurrency(product.price, product.currency || 'USD') })] })] }) }, product.id))) })] }) })), layoutConfig?.sections?.about?.show !== false && (_jsx("section", { "data-section": "about", className: "py-16 md:py-24 px-4 md:px-8 border-t border-gray-100", children: _jsx("div", { className: "container mx-auto", children: _jsxs("div", { className: "grid grid-cols-1 lg:grid-cols-2 gap-10 md:gap-16 items-center", children: [_jsxs("div", { className: "relative aspect-[4/5] bg-gray-100 group overflow-hidden", children: [_jsx(ImageWithFallback, { src: "https://images.unsplash.com/photo-1483985988355-763728e1935b?q=80&w=2070&auto=format&fit=crop", alt: "Shop the look", className: "w-full h-full object-cover" }), _jsxs("div", { className: "absolute top-[30%] left-[45%] group/spot", children: [_jsx("div", { className: "w-4 h-4 bg-white rounded-full animate-pulse cursor-pointer relative z-10 hover:scale-125 transition-transform" }), _jsxs("div", { className: "absolute left-6 top-1/2 -translate-y-1/2 bg-white p-3 rounded shadow-lg w-48 opacity-0 group-hover/spot:opacity-100 transition-opacity pointer-events-none group-hover/spot:pointer-events-auto", children: [_jsx("p", { className: "font-bold text-xs mb-1", children: "Oversized Wool Coat" }), _jsx("p", { className: "text-xs text-gray-500", children: "$299.00" })] })] }), _jsxs("div", { className: "absolute bottom-[25%] right-[40%] group/spot", children: [_jsx("div", { className: "w-4 h-4 bg-white rounded-full animate-pulse cursor-pointer relative z-10 hover:scale-125 transition-transform" }), _jsxs("div", { className: "absolute right-6 top-1/2 -translate-y-1/2 bg-white p-3 rounded shadow-lg w-48 opacity-0 group-hover/spot:opacity-100 transition-opacity pointer-events-none group-hover/spot:pointer-events-auto", children: [_jsx("p", { className: "font-bold text-xs mb-1", children: "Leather Ankle Boots" }), _jsx("p", { className: "text-xs text-gray-500", children: "$189.00" })] })] })] }), _jsxs("div", { className: "space-y-8", children: [_jsx("h2", { className: "text-4xl font-light", children: layoutConfig?.sections?.about?.title || (_jsxs(_Fragment, { children: ["Winter ", _jsx("span", { className: "font-serif italic", children: "Layering" })] })) }), _jsx("div", { className: "text-gray-600 leading-relaxed max-w-md [&_p]:mb-3 [&_p:last-child]:mb-0", children: _jsx(SafeRichHtml, { value: layoutConfig?.sections?.about?.description ||
|
|
68
68
|
'Master the art of layering with our winter collection. Combining warmth with style, these pieces are designed to work together seamlessly.', fallbackPlain: "Master the art of layering with our winter collection. Combining warmth with style, these pieces are designed to work together seamlessly." }) }), _jsx("div", { className: "space-y-4", children: products.slice(0, 3).map((item, i) => (_jsxs("div", { className: "flex gap-4 items-center p-2 hover:bg-gray-50 rounded-lg transition-colors group cursor-pointer", children: [_jsx("div", { className: "w-16 h-20 bg-white relative", children: _jsx(ImageWithFallback, { src: item.images[0], alt: item.name, className: "w-full h-full object-cover" }) }), _jsxs("div", { className: "flex-1", children: [_jsx("h4", { className: "font-medium text-sm mb-1", children: item.name }), _jsx("p", { className: "text-xs text-gray-500", children: formatCurrency(item.price, item.currency || storeConfig.settings?.currency || 'USD') })] }), _jsx(Button, { variant: "ghost", size: "icon", onClick: () => handleAddToCart(item), className: "opacity-0 group-hover:opacity-100 transition-opacity", children: _jsx(Plus, { className: "h-4 w-4" }) })] }, i))) }), _jsx(Link, { href: `/${storeConfig.slug}/products`, children: _jsx(Button, { className: "w-full bg-black text-white hover:bg-gray-800 h-12 rounded-none uppercase tracking-widest text-xs font-bold", children: getLayoutText(storeConfig, 'common.shopNow', 'Shop The Edit') }) })] })] }) }) })), _jsx(PromoBanner, { config: layoutConfig?.sections?.promoBanner, layoutStyle: "clothing" })] }));
|
|
69
69
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CSSProperties } from 'react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import type { PayazaSerializedBlock } from '../../../editor/blocks/types';
|
|
3
4
|
import type { StoreConfig, StoreProduct } from '../../../lib/store-types';
|
|
4
5
|
/** Preview/mock products omit fields; storefront grid only uses a subset. */
|
|
@@ -22,14 +23,14 @@ export declare function renderHeroBlocks(section: Record<string, unknown>, ctx:
|
|
|
22
23
|
getLayoutText: (c: StoreConfig, k: string, d: string) => string;
|
|
23
24
|
getTextContent: (c: StoreConfig, k: string, d: string) => string;
|
|
24
25
|
heroSectionStyle?: CSSProperties;
|
|
25
|
-
}):
|
|
26
|
-
export declare function renderFeaturesBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx):
|
|
27
|
-
export declare function renderCategoriesHeaderBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx):
|
|
28
|
-
export declare function renderFeaturedIntroBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx):
|
|
26
|
+
}): React.JSX.Element;
|
|
27
|
+
export declare function renderFeaturesBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx): React.JSX.Element;
|
|
28
|
+
export declare function renderCategoriesHeaderBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx): React.JSX.Element;
|
|
29
|
+
export declare function renderFeaturedIntroBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx): React.JSX.Element;
|
|
29
30
|
export declare function renderShopTheLookBlocks(sec: Record<string, unknown>, ctx: MinimalBlockPreviewCtx & {
|
|
30
31
|
products: MinimalGridProduct[];
|
|
31
32
|
onQuickAdd?: (product: MinimalGridProduct) => void;
|
|
32
|
-
}):
|
|
33
|
+
}): React.JSX.Element;
|
|
33
34
|
/** Map serialized promo blocks → PromoBanner-compatible config. */
|
|
34
35
|
export declare function promoConfigFromBlocks(sec: Record<string, unknown>): {
|
|
35
36
|
show: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clothing-minimal-block-render.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/components/clothing-minimal-block-render.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"clothing-minimal-block-render.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/components/clothing-minimal-block-render.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE1E,6EAA6E;AAC7E,MAAM,MAAM,kBAAkB,GAC1B,YAAY,GACZ;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAOnG,wBAAgB,OAAO,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAI7E;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAEvF;AAOD,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AA8BF,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,GAAG,EAAE,sBAAsB,GAAG;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAChE,cAAc,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACjE,gBAAgB,CAAC,EAAE,aAAa,CAAC;CAClC,qBA+IF;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,sBAAsB,qBAsC7F;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,sBAAsB,qBA+BrG;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,sBAAsB,qBAyBlG;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,GAAG,EAAE,sBAAsB,GAAG;IAC5B,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACpD,qBA8HF;AAED,mEAAmE;AACnE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACnE,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,CAwBP"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { ClothingHomePageMinimal } from './components/ClothingHomePageMinimal';
|
|
2
|
-
export { ClothingMinimalProductsPage } from './pages/ProductsPage';
|
|
3
|
-
export { ClothingMinimalProductDetailPage } from './pages/ProductDetailPage';
|
|
4
|
-
export { ClothingMinimalCategoryPage } from './pages/CategoryPage';
|
|
2
|
+
export { ProductsPage as ClothingMinimalProductsPage } from './pages/ProductsPage';
|
|
3
|
+
export { ProductDetailPage as ClothingMinimalProductDetailPage } from './pages/ProductDetailPage';
|
|
4
|
+
export { CategoryPage as ClothingMinimalCategoryPage } from './pages/CategoryPage';
|
|
5
5
|
export { ClothingMinimalCategoriesPage } from './pages/CategoriesPage';
|
|
6
|
-
export { ClothingMinimalAboutPage } from './pages/AboutPage';
|
|
7
|
-
export { ClothingMinimalContactPage } from './pages/ContactPage';
|
|
6
|
+
export { AboutPage as ClothingMinimalAboutPage } from './pages/AboutPage';
|
|
7
|
+
export { ContactPage as ClothingMinimalContactPage } from './pages/ContactPage';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/clothing-minimal/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/clothing-minimal/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,YAAY,IAAI,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,iBAAiB,IAAI,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAClG,OAAO,EAAE,YAAY,IAAI,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,SAAS,IAAI,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,WAAW,IAAI,0BAA0B,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// Fashion Minimal (clothing-minimal) layout — fully sandboxed exports
|
|
2
2
|
export { ClothingHomePageMinimal } from './components/ClothingHomePageMinimal';
|
|
3
|
-
export { ClothingMinimalProductsPage } from './pages/ProductsPage';
|
|
4
|
-
export { ClothingMinimalProductDetailPage } from './pages/ProductDetailPage';
|
|
5
|
-
export { ClothingMinimalCategoryPage } from './pages/CategoryPage';
|
|
3
|
+
export { ProductsPage as ClothingMinimalProductsPage } from './pages/ProductsPage';
|
|
4
|
+
export { ProductDetailPage as ClothingMinimalProductDetailPage } from './pages/ProductDetailPage';
|
|
5
|
+
export { CategoryPage as ClothingMinimalCategoryPage } from './pages/CategoryPage';
|
|
6
6
|
export { ClothingMinimalCategoriesPage } from './pages/CategoriesPage';
|
|
7
|
-
export { ClothingMinimalAboutPage } from './pages/AboutPage';
|
|
8
|
-
export { ClothingMinimalContactPage } from './pages/ContactPage';
|
|
7
|
+
export { AboutPage as ClothingMinimalAboutPage } from './pages/AboutPage';
|
|
8
|
+
export { ContactPage as ClothingMinimalContactPage } from './pages/ContactPage';
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface AboutPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function AboutPage({ storeConfig: initialConfig }: AboutPageProps): import("react
|
|
5
|
+
export declare function AboutPage({ storeConfig: initialConfig }: AboutPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=AboutPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AboutPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/AboutPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,cAAc;IACtB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,SAAS,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,cAAc
|
|
1
|
+
{"version":3,"file":"AboutPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/AboutPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,cAAc;IACtB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,SAAS,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,cAAc,+BA8OvE"}
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface CategoriesPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ClothingMinimalCategoriesPage({ storeConfig: initialConfig }: CategoriesPageProps): import("react
|
|
5
|
+
export declare function ClothingMinimalCategoriesPage({ storeConfig: initialConfig }: CategoriesPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=CategoriesPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CategoriesPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/CategoriesPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AASvD,UAAU,mBAAmB;IAC3B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,6BAA6B,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,mBAAmB
|
|
1
|
+
{"version":3,"file":"CategoriesPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/CategoriesPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AASvD,UAAU,mBAAmB;IAC3B,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,wBAAgB,6BAA6B,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,mBAAmB,+BA8GhG"}
|
|
@@ -3,6 +3,6 @@ interface CategoryPageProps {
|
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
categorySlug: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function CategoryPage({ storeConfig: initialConfig, categorySlug }: CategoryPageProps): import("react
|
|
6
|
+
export declare function CategoryPage({ storeConfig: initialConfig, categorySlug }: CategoryPageProps): import("react").JSX.Element;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=CategoryPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CategoryPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/CategoryPage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8B,MAAM,0BAA0B,CAAC;AAcnF,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,iBAAiB
|
|
1
|
+
{"version":3,"file":"CategoryPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/CategoryPage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8B,MAAM,0BAA0B,CAAC;AAcnF,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,iBAAiB,+BAyI3F"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useCategoryProducts } from '../../../hooks/use-category-products';
|
|
3
|
+
import { useCategoryProducts } from '../../../hooks/use-category-products.js';
|
|
4
4
|
import { Button } from '../../../components/ui/button';
|
|
5
5
|
import { ImageWithFallback } from '../../../components/ui/image-with-fallback';
|
|
6
6
|
import { useStore } from '../../../lib/store-context';
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface ContactPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ContactPage({ storeConfig: initialConfig }: ContactPageProps): import("react
|
|
5
|
+
export declare function ContactPage({ storeConfig: initialConfig }: ContactPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ContactPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ContactPage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,gBAAgB;IACtB,WAAW,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,gBAAgB
|
|
1
|
+
{"version":3,"file":"ContactPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ContactPage.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,UAAU,gBAAgB;IACtB,WAAW,EAAE,WAAW,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,gBAAgB,+BAmS3E"}
|
|
@@ -3,6 +3,6 @@ interface ProductDetailPageProps {
|
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
productSlug: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function ProductDetailPage({ storeConfig: initialConfig, productSlug }: ProductDetailPageProps): import("react
|
|
6
|
+
export declare function ProductDetailPage({ storeConfig: initialConfig, productSlug }: ProductDetailPageProps): import("react").JSX.Element;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=ProductDetailPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ProductDetailPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAA8C,MAAM,0BAA0B,CAAC;AA4BnG,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAsHD,wBAAgB,iBAAiB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,sBAAsB
|
|
1
|
+
{"version":3,"file":"ProductDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ProductDetailPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAA8C,MAAM,0BAA0B,CAAC;AA4BnG,UAAU,sBAAsB;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAsHD,wBAAgB,iBAAiB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,sBAAsB,+BAojCpG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useProductBySlug } from '../../../hooks/use-product-by-slug';
|
|
4
|
-
import { useProductReviews } from '../../../hooks/use-product-reviews';
|
|
3
|
+
import { useProductBySlug } from '../../../hooks/use-product-by-slug.js';
|
|
4
|
+
import { useProductReviews } from '../../../hooks/use-product-reviews.js';
|
|
5
5
|
import { Button } from '../../../components/ui/button';
|
|
6
6
|
import { Breadcrumbs } from '../../../components/ui/breadcrumbs';
|
|
7
7
|
import { Modal } from '../../../components/ui/modal';
|
|
@@ -496,7 +496,7 @@ export function ProductDetailPage({ storeConfig: initialConfig, productSlug }) {
|
|
|
496
496
|
: 'border-gray-200 hover:border-gray-300'}`, children: _jsx(ImageWithFallback, { src: image, alt: `${product.name} view ${index + 1}`, className: cn("w-full h-full object-cover", isOutOfStock && "grayscale"), skeletonAspectRatio: "square" }) }, index))), hasMoreImages && (_jsxs("div", { className: "aspect-square rounded-lg border-2 border-gray-200 bg-gray-50 flex items-center justify-center text-xs text-gray-500 font-medium", children: ["+", productImages.length - 5, " more"] }))] }))] }), _jsxs("div", { className: "flex flex-col", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsx("span", { className: "text-sm font-semibold text-gray-700 uppercase tracking-wide", children: (() => {
|
|
497
497
|
const brandMatch = product.name.match(/\b(Reebok|Nike|Adidas|Puma|New Balance|Vans|Converse)\b/i);
|
|
498
498
|
return brandMatch ? brandMatch[1] : storeConfig.name;
|
|
499
|
-
})() }), _jsx("button", { onClick: handleShare, className: "text-gray-400 hover:text-gray-900 transition-colors p-2 rounded-full hover:bg-gray-100", title: "Share this product", children: _jsx(Share2, { className: "h-5 w-5" }) })] }), _jsx("h1", { "data-product-name": true, className: "text-3xl sm:text-4xl lg:text-5xl font-bold text-gray-900 mb-3 leading-tight tracking-tight", children: product.name }), _jsxs("p", { className: "text-sm text-gray-500 mb-6 font-mono", children: ["SKU: ", displaySKU] }), _jsx("div", { className: "mb-4 flex items-center gap-2", children: product.inStock ? (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800", children: [_jsx(CheckCircle, { className: "w-3 h-3 mr-1" }), "In Stock"] })) : (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-red-100 text-red-800", children: [_jsx(Info, { className: "w-3 h-3 mr-1" }), "Out of Stock"] })) }), _jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-baseline gap-4", children: [_jsx("span", { "data-product-price": true, className: "text-4xl lg:text-5xl font-bold text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice && (_jsx("span", { className: "text-2xl text-gray-500 line-through", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] }), product.compareAtPrice && (_jsxs("span", { className: "inline-block mt-2 bg-red-100 text-red-700 text-xs font-bold px-2 py-1 rounded", children: ["SAVE ", Math.round(((product.compareAtPrice - product.price) / product.compareAtPrice) * 100), "%"] }))] }), colorVariants.length > 0 && (_jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-center gap-2 mb-4", children: [_jsx("span", { className: "text-sm font-semibold text-gray-900", children: "Color:" }), _jsx("span", { className: "text-sm text-gray-600 capitalize", children: selectedColor || colorVariants[0]?.value })] }), _jsx("div", { className: "flex gap-3", children: colorVariants.map((variant) => {
|
|
499
|
+
})() }), _jsx("button", { onClick: handleShare, className: "text-gray-400 hover:text-gray-900 transition-colors p-2 rounded-full hover:bg-gray-100", title: "Share this product", children: _jsx(Share2, { className: "h-5 w-5" }) })] }), _jsx("h1", { "data-product-name": true, className: "text-3xl sm:text-4xl lg:text-5xl font-bold text-gray-900 mb-3 leading-tight tracking-tight", children: product.name }), _jsxs("p", { className: "text-sm text-gray-500 mb-6 font-mono", children: ["SKU: ", displaySKU] }), _jsx("div", { className: "mb-4 flex items-center gap-2", children: product.inStock ? (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-green-100 text-green-800", children: [_jsx(CheckCircle, { className: "w-3 h-3 mr-1" }), "In Stock"] })) : (_jsxs("span", { className: "inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium bg-red-100 text-red-800", children: [_jsx(Info, { className: "w-3 h-3 mr-1" }), "Out of Stock"] })) }), _jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-baseline gap-4", children: [_jsx("span", { "data-product-price": true, className: "text-4xl lg:text-5xl font-bold text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsx("span", { className: "text-2xl text-gray-500 line-through", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsxs("span", { className: "inline-block mt-2 bg-red-100 text-red-700 text-xs font-bold px-2 py-1 rounded", children: ["SAVE ", Math.round(((product.compareAtPrice - product.price) / product.compareAtPrice) * 100), "%"] }))] }), colorVariants.length > 0 && (_jsxs("div", { className: "mb-8", children: [_jsxs("div", { className: "flex items-center gap-2 mb-4", children: [_jsx("span", { className: "text-sm font-semibold text-gray-900", children: "Color:" }), _jsx("span", { className: "text-sm text-gray-600 capitalize", children: selectedColor || colorVariants[0]?.value })] }), _jsx("div", { className: "flex gap-3", children: colorVariants.map((variant) => {
|
|
500
500
|
const colorValue = variant.value;
|
|
501
501
|
const swatchColor = colorSwatches[colorValue] || '#CCCCCC';
|
|
502
502
|
const isSelected = selectedColor === colorValue;
|
|
@@ -2,6 +2,6 @@ import { StoreConfig } from '../../../lib/store-types';
|
|
|
2
2
|
interface ProductsPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ProductsPage(props: ProductsPageProps): import("react
|
|
5
|
+
export declare function ProductsPage(props: ProductsPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ProductsPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductsPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ProductsPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AA0BrE,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAyxBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB
|
|
1
|
+
{"version":3,"file":"ProductsPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/clothing-minimal/pages/ProductsPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAgB,MAAM,0BAA0B,CAAC;AA0BrE,UAAU,iBAAiB;IACzB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAyxBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAMpD"}
|
|
@@ -14,14 +14,14 @@ import { useAnalytics } from '../../../hooks/use-analytics';
|
|
|
14
14
|
import { ChevronDown, ChevronUp, Star, Check, Search, RotateCcw, SlidersHorizontal } from 'lucide-react';
|
|
15
15
|
import { useSearchParams } from 'next/navigation';
|
|
16
16
|
import { useState, useMemo, useEffect, useRef, Suspense } from 'react';
|
|
17
|
-
import { useProductBrands } from '../../../hooks/use-product-brands';
|
|
17
|
+
import { useProductBrands } from '../../../hooks/use-product-brands.js';
|
|
18
18
|
import { filterActiveProducts } from '../../../lib/utils';
|
|
19
19
|
import { getAllCategoryIds, flattenCategoryTree, buildCategoryTree } from '../../../lib/utils/category-tree';
|
|
20
20
|
import { getBannerImage, getLayoutText } from '../../../lib/utils/asset-helpers';
|
|
21
21
|
import { SafeRichHtml } from '../../../components/rich-text/SafeRichHtml';
|
|
22
22
|
import { shouldUseAPI } from '../../../lib/utils/demo-detection';
|
|
23
|
-
import { useCatalogPriceRange } from '../../../hooks/use-catalog-price-range';
|
|
24
|
-
import { isWithinActivePriceRange } from '../../../lib/utils/catalog-price-bounds';
|
|
23
|
+
import { useCatalogPriceRange } from '../../../hooks/use-catalog-price-range.js';
|
|
24
|
+
import { isWithinActivePriceRange } from '../../../lib/utils/catalog-price-bounds.js';
|
|
25
25
|
import { ProductPriceFilterSection } from '../../shared/components/ProductPriceFilterSection';
|
|
26
26
|
function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
27
27
|
const { store, addToCart } = useStore();
|
|
@@ -218,8 +218,8 @@ function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
|
218
218
|
skipBootstrapRefetch.current = false;
|
|
219
219
|
setIsLoadingProducts(true);
|
|
220
220
|
try {
|
|
221
|
-
const { productService } = await import('../../../lib/services/product.service');
|
|
222
|
-
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils');
|
|
221
|
+
const { productService } = await import('../../../lib/services/product.service.js');
|
|
222
|
+
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils.js');
|
|
223
223
|
const response = await productService.getProducts({ ...productQuery, page: 1, limit: 12 });
|
|
224
224
|
if (cancelled)
|
|
225
225
|
return;
|
|
@@ -247,8 +247,8 @@ function ProductsPageContent({ storeConfig: initialConfig }) {
|
|
|
247
247
|
return;
|
|
248
248
|
setIsLoadingProducts(true);
|
|
249
249
|
try {
|
|
250
|
-
const { productService } = await import('../../../lib/services/product.service');
|
|
251
|
-
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils');
|
|
250
|
+
const { productService } = await import('../../../lib/services/product.service.js');
|
|
251
|
+
const { transformProductToStoreProduct } = await import('../../../lib/store-config-utils.js');
|
|
252
252
|
const nextPage = currentPage + 1;
|
|
253
253
|
const response = await productService.getProducts({ ...productQuery, page: nextPage, limit: 12 });
|
|
254
254
|
setProducts((current) => [...current, ...response.data.map(transformProductToStoreProduct)]);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { StoreConfig } from '../../../lib/store-types';
|
|
1
|
+
import { StoreConfig } from '../../../lib/store-types.js';
|
|
2
2
|
interface ElectronicsCategoriesPageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ElectronicsCategoriesPage({ storeConfig: initialConfig }: ElectronicsCategoriesPageProps): import("react
|
|
5
|
+
export declare function ElectronicsCategoriesPage({ storeConfig: initialConfig }: ElectronicsCategoriesPageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ElectronicsCategoriesPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElectronicsCategoriesPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsCategoriesPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWhD,UAAU,8BAA8B;IACtC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAWD,wBAAgB,yBAAyB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,8BAA8B
|
|
1
|
+
{"version":3,"file":"ElectronicsCategoriesPage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsCategoriesPage.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWhD,UAAU,8BAA8B;IACtC,WAAW,EAAE,WAAW,CAAC;CAC1B;AAWD,wBAAgB,yBAAyB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,8BAA8B,+BAgFvG"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { Zap, Smartphone, Laptop, Headphones, Watch, Camera } from 'lucide-react';
|
|
4
|
-
import { Breadcrumbs } from '../../../components/ui/breadcrumbs';
|
|
5
|
-
import { useStore } from '../../../lib/store-context';
|
|
6
|
-
import { useCatalogLoader } from '../../../hooks/use-catalog-loader';
|
|
7
|
-
import { isEditorPreviewMode, resolveStoreCategoriesForDisplay } from '../../../lib/utils';
|
|
4
|
+
import { Breadcrumbs } from '../../../components/ui/breadcrumbs.js';
|
|
5
|
+
import { useStore } from '../../../lib/store-context.js';
|
|
6
|
+
import { useCatalogLoader } from '../../../hooks/use-catalog-loader.js';
|
|
7
|
+
import { isEditorPreviewMode, resolveStoreCategoriesForDisplay } from '../../../lib/utils/index.js';
|
|
8
8
|
import { ElectronicsStoreHeader } from './ElectronicsStoreHeader';
|
|
9
9
|
import { ElectronicsStoreFooter } from './ElectronicsStoreFooter';
|
|
10
10
|
import { motion } from 'framer-motion';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { StoreProduct } from '../../../lib/store-types';
|
|
1
|
+
import { StoreProduct } from '../../../lib/store-types.js';
|
|
2
2
|
interface ElectronicsGridProductCardProps {
|
|
3
3
|
product: StoreProduct;
|
|
4
4
|
storeSlug: string;
|
|
5
5
|
onAddToCart: (product: StoreProduct) => void;
|
|
6
6
|
index: number;
|
|
7
7
|
}
|
|
8
|
-
export declare function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, index }: ElectronicsGridProductCardProps): import("react
|
|
8
|
+
export declare function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, index }: ElectronicsGridProductCardProps): import("react").JSX.Element;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=ElectronicsGridProductCard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElectronicsGridProductCard.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsGridProductCard.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAgBjD,UAAU,+BAA+B;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,0BAA0B,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,+BAA+B
|
|
1
|
+
{"version":3,"file":"ElectronicsGridProductCard.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsGridProductCard.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAgBjD,UAAU,+BAA+B;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,0BAA0B,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,+BAA+B,+BA+QrH"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { Button } from '../../../components/ui/button';
|
|
4
|
-
import { ImageWithFallback } from '../../../components/ui/image-with-fallback';
|
|
5
|
-
import { ProductRating } from '../../../components/ui/product-rating';
|
|
3
|
+
import { Button } from '../../../components/ui/button.js';
|
|
4
|
+
import { ImageWithFallback } from '../../../components/ui/image-with-fallback.js';
|
|
5
|
+
import { ProductRating } from '../../../components/ui/product-rating.js';
|
|
6
6
|
import { Heart, Plus } from 'lucide-react';
|
|
7
7
|
import Link from 'next/link';
|
|
8
8
|
import { motion } from 'framer-motion';
|
|
9
9
|
import { useState } from 'react';
|
|
10
|
-
import { useStore } from '../../../lib/store-context';
|
|
11
|
-
import { useToast } from '../../../components/ui/toast';
|
|
12
|
-
import { ButtonLoader } from '../../../components/ui/page-loader';
|
|
13
|
-
import { useLoading } from '../../../lib/loading-context';
|
|
14
|
-
import { cn, formatCurrency } from '../../../lib/utils';
|
|
15
|
-
import { OutOfStockOverlay } from '../../../components/ui/out-of-stock-overlay';
|
|
16
|
-
import { trackStorefrontEvent } from '../../../lib/mixpanel';
|
|
10
|
+
import { useStore } from '../../../lib/store-context.js';
|
|
11
|
+
import { useToast } from '../../../components/ui/toast.js';
|
|
12
|
+
import { ButtonLoader } from '../../../components/ui/page-loader.js';
|
|
13
|
+
import { useLoading } from '../../../lib/loading-context.js';
|
|
14
|
+
import { cn, formatCurrency } from '../../../lib/utils/index.js';
|
|
15
|
+
import { OutOfStockOverlay } from '../../../components/ui/out-of-stock-overlay.js';
|
|
16
|
+
import { trackStorefrontEvent } from '../../../lib/mixpanel.js';
|
|
17
17
|
export function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, index }) {
|
|
18
18
|
const [isHovered, setIsHovered] = useState(false);
|
|
19
19
|
const { toggleWishlist, isInWishlist, isWishlistLoading, store } = useStore();
|
|
@@ -35,8 +35,8 @@ export function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, in
|
|
|
35
35
|
trackProductClick();
|
|
36
36
|
startPageLoading(`/${storeSlug}/products/${product.slug}`);
|
|
37
37
|
};
|
|
38
|
-
// Discount calculation
|
|
39
|
-
const discountPercentage = product.compareAtPrice
|
|
38
|
+
// Discount calculation — only when compare-at is a real “was” price
|
|
39
|
+
const discountPercentage = product.compareAtPrice != null && product.compareAtPrice > product.price
|
|
40
40
|
? Math.round(((product.compareAtPrice - product.price) / product.compareAtPrice) * 100)
|
|
41
41
|
: 0;
|
|
42
42
|
const handleWishlistClick = async (e) => {
|
|
@@ -105,7 +105,7 @@ export function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, in
|
|
|
105
105
|
: "text-gray-400 bg-white/95 hover:text-red-500 hover:bg-red-50/50 hover:scale-110"), title: inWishlist ? "Remove from wishlist" : "Add to wishlist", "aria-label": inWishlist ? "Remove from wishlist" : "Add to wishlist", children: isLoading ? (_jsx(ButtonLoader, { className: inWishlist ? "text-red-500" : "text-gray-400" })) : (_jsx(motion.div, { animate: {
|
|
106
106
|
scale: justAdded ? [1, 1.2, 1] : 1,
|
|
107
107
|
rotate: justAdded ? [0, 10, -10, 0] : 0
|
|
108
|
-
}, transition: { duration: 0.4, ease: "easeOut" }, children: _jsx(Heart, { className: cn("w-5 h-5 transition-all", inWishlist && "fill-current", justAdded && "text-red-500 fill-current") }) })) }), _jsx("div", { className: "absolute top-4 left-4 z-20 flex flex-col gap-2", children:
|
|
108
|
+
}, transition: { duration: 0.4, ease: "easeOut" }, children: _jsx(Heart, { className: cn("w-5 h-5 transition-all", inWishlist && "fill-current", justAdded && "text-red-500 fill-current") }) })) }), _jsx("div", { className: "absolute top-4 left-4 z-20 flex flex-col gap-2", children: discountPercentage > 0 && (_jsxs("span", { className: "bg-slate-900 text-white text-[10px] font-bold px-3 py-1.5 rounded-full tracking-wide", children: ["-", discountPercentage, "%"] })) }), _jsx("div", { className: "hidden lg:block absolute inset-x-4 bottom-4 z-20 translate-y-full group-hover:translate-y-0 transition-transform duration-300 ease-out opacity-0 group-hover:opacity-100", children: _jsxs(Button, { onClick: (e) => {
|
|
109
109
|
e.preventDefault();
|
|
110
110
|
if (!isOutOfStock) {
|
|
111
111
|
onAddToCart(product);
|
|
@@ -118,5 +118,5 @@ export function ElectronicsGridProductCard({ product, storeSlug, onAddToCart, in
|
|
|
118
118
|
}, children: _jsx(Plus, { className: "w-5 h-5" }) })] }), _jsxs("div", { className: "p-6 flex flex-col gap-2", children: [_jsxs("div", { className: "flex justify-between items-start gap-2", children: [_jsxs("div", { children: [_jsx("p", { className: "text-xs font-normal text-gray-400 uppercase tracking-wide mb-1.5", children: product.specifications?.Brand || 'Brand' }), _jsx(Link, { href: `/${storeSlug}/products/${product.slug}`, className: "group/title", onClick: () => {
|
|
119
119
|
trackProductClick();
|
|
120
120
|
startPageLoading(`/${storeSlug}/products/${product.slug}`);
|
|
121
|
-
}, children: _jsx("h3", { className: "font-normal text-gray-900 text-base leading-tight hover:text-gray-600 transition-colors line-clamp-1", children: product.name }) })] }), _jsx(ProductRating, { rating: product.rating, reviewCount: product.reviewCount, size: "sm", showReviewCount: false, className: "shrink-0" })] }), _jsxs("div", { className: "flex items-baseline gap-2 mt-2", children: [_jsx("span", { className: "text-lg font-medium text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice && (_jsx("span", { className: "text-sm text-gray-400 line-through font-normal", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] })] })] }));
|
|
121
|
+
}, children: _jsx("h3", { className: "font-normal text-gray-900 text-base leading-tight hover:text-gray-600 transition-colors line-clamp-1", children: product.name }) })] }), _jsx(ProductRating, { rating: product.rating, reviewCount: product.reviewCount, size: "sm", showReviewCount: false, className: "shrink-0" })] }), _jsxs("div", { className: "flex items-baseline gap-2 mt-2", children: [_jsx("span", { className: "text-lg font-medium text-gray-900", children: formatCurrency(product.price, product.currency || 'USD') }), product.compareAtPrice != null && product.compareAtPrice > product.price && (_jsx("span", { className: "text-sm text-gray-400 line-through font-normal", children: formatCurrency(product.compareAtPrice, product.currency || 'USD') }))] })] })] }));
|
|
122
122
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { StoreConfig } from '../../../lib/store-types';
|
|
1
|
+
import { StoreConfig } from '../../../lib/store-types.js';
|
|
2
2
|
interface ElectronicsHomePageProps {
|
|
3
3
|
storeConfig: StoreConfig;
|
|
4
4
|
}
|
|
5
|
-
export declare function ElectronicsHomePage({ storeConfig: initialConfig }: ElectronicsHomePageProps): import("react
|
|
5
|
+
export declare function ElectronicsHomePage({ storeConfig: initialConfig }: ElectronicsHomePageProps): import("react").JSX.Element;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=ElectronicsHomePage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElectronicsHomePage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsHomePage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAe9D,UAAU,wBAAwB;IAC/B,WAAW,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,wBAAwB
|
|
1
|
+
{"version":3,"file":"ElectronicsHomePage.d.ts","sourceRoot":"","sources":["../../../../src/layouts/electronics/components/ElectronicsHomePage.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAe9D,UAAU,wBAAwB;IAC/B,WAAW,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,wBAAwB,+BA8c3F"}
|