simplycms 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +26 -0
- package/dist/admin/components/AddProductToOrder.d.ts +12 -0
- package/dist/admin/components/AddProductToOrder.js +4 -0
- package/dist/admin/components/AddProductToOrder.js.map +1 -0
- package/dist/admin/components/AllProductProperties.d.ts +6 -0
- package/dist/admin/components/AllProductProperties.js +4 -0
- package/dist/admin/components/AllProductProperties.js.map +1 -0
- package/dist/admin/components/ImageUpload.d.ts +10 -0
- package/dist/admin/components/ImageUpload.js +4 -0
- package/dist/admin/components/ImageUpload.js.map +1 -0
- package/dist/admin/components/ProductModifications.d.ts +6 -0
- package/dist/admin/components/ProductModifications.js +9 -0
- package/dist/admin/components/ProductModifications.js.map +1 -0
- package/dist/admin/components/ProductPricesEditor.d.ts +6 -0
- package/dist/admin/components/ProductPricesEditor.js +4 -0
- package/dist/admin/components/ProductPricesEditor.js.map +1 -0
- package/dist/admin/components/ProductPropertyValues.d.ts +7 -0
- package/dist/admin/components/ProductPropertyValues.js +4 -0
- package/dist/admin/components/ProductPropertyValues.js.map +1 -0
- package/dist/admin/components/RichTextEditor.d.ts +8 -0
- package/dist/admin/components/RichTextEditor.js +4 -0
- package/dist/admin/components/RichTextEditor.js.map +1 -0
- package/dist/admin/components/SectionPropertiesManager.d.ts +5 -0
- package/dist/admin/components/SectionPropertiesManager.js +4 -0
- package/dist/admin/components/SectionPropertiesManager.js.map +1 -0
- package/dist/admin/components/SectionPropertiesTable.d.ts +5 -0
- package/dist/admin/components/SectionPropertiesTable.js +4 -0
- package/dist/admin/components/SectionPropertiesTable.js.map +1 -0
- package/dist/admin/components/SimpleProductFields.d.ts +10 -0
- package/dist/admin/components/SimpleProductFields.js +7 -0
- package/dist/admin/components/SimpleProductFields.js.map +1 -0
- package/dist/admin/components/StockByPointManager.d.ts +7 -0
- package/dist/admin/components/StockByPointManager.js +4 -0
- package/dist/admin/components/StockByPointManager.js.map +1 -0
- package/dist/admin/components/StockStatusSelect.d.ts +9 -0
- package/dist/admin/components/StockStatusSelect.js +4 -0
- package/dist/admin/components/StockStatusSelect.js.map +1 -0
- package/dist/admin/components/ThemeActivateDialog.d.ts +14 -0
- package/dist/admin/components/ThemeActivateDialog.js +4 -0
- package/dist/admin/components/ThemeActivateDialog.js.map +1 -0
- package/dist/admin/components/ThemeCard.d.ts +29 -0
- package/dist/admin/components/ThemeCard.js +5 -0
- package/dist/admin/components/ThemeCard.js.map +1 -0
- package/dist/admin/hooks/usePluginToggle.d.ts +21 -0
- package/dist/admin/hooks/useThemeActivate.d.ts +15 -0
- package/dist/admin/index.d.ts +54 -0
- package/dist/admin/index.js +62 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/layouts/AdminLayout.d.ts +3 -0
- package/dist/admin/layouts/AdminLayout.js +6 -0
- package/dist/admin/layouts/AdminLayout.js.map +1 -0
- package/dist/admin/layouts/AdminSidebar.d.ts +1 -0
- package/dist/admin/layouts/AdminSidebar.js +5 -0
- package/dist/admin/layouts/AdminSidebar.js.map +1 -0
- package/dist/admin/lib/adminLinks.d.ts +10 -0
- package/dist/admin/lib/pluginSettingsFields.d.ts +21 -0
- package/dist/admin/lib/revalidateTheme.d.ts +30 -0
- package/dist/admin/pages/BannerEdit.d.ts +1 -0
- package/dist/admin/pages/BannerEdit.js +6 -0
- package/dist/admin/pages/BannerEdit.js.map +1 -0
- package/dist/admin/pages/Banners.d.ts +1 -0
- package/dist/admin/pages/Banners.js +5 -0
- package/dist/admin/pages/Banners.js.map +1 -0
- package/dist/admin/pages/Dashboard.d.ts +1 -0
- package/dist/admin/pages/Dashboard.js +5 -0
- package/dist/admin/pages/Dashboard.js.map +1 -0
- package/dist/admin/pages/DiscountEdit.d.ts +1 -0
- package/dist/admin/pages/DiscountEdit.js +5 -0
- package/dist/admin/pages/DiscountEdit.js.map +1 -0
- package/dist/admin/pages/DiscountGroupEdit.d.ts +1 -0
- package/dist/admin/pages/DiscountGroupEdit.js +5 -0
- package/dist/admin/pages/DiscountGroupEdit.js.map +1 -0
- package/dist/admin/pages/Discounts.d.ts +1 -0
- package/dist/admin/pages/Discounts.js +5 -0
- package/dist/admin/pages/Discounts.js.map +1 -0
- package/dist/admin/pages/OrderDetail.d.ts +1 -0
- package/dist/admin/pages/OrderDetail.js +6 -0
- package/dist/admin/pages/OrderDetail.js.map +1 -0
- package/dist/admin/pages/OrderStatuses.d.ts +1 -0
- package/dist/admin/pages/OrderStatuses.js +4 -0
- package/dist/admin/pages/OrderStatuses.js.map +1 -0
- package/dist/admin/pages/Orders.d.ts +1 -0
- package/dist/admin/pages/Orders.js +5 -0
- package/dist/admin/pages/Orders.js.map +1 -0
- package/dist/admin/pages/PickupPointEdit.d.ts +1 -0
- package/dist/admin/pages/PickupPointEdit.js +5 -0
- package/dist/admin/pages/PickupPointEdit.js.map +1 -0
- package/dist/admin/pages/PickupPoints.d.ts +1 -0
- package/dist/admin/pages/PickupPoints.js +5 -0
- package/dist/admin/pages/PickupPoints.js.map +1 -0
- package/dist/admin/pages/PlaceholderPage.d.ts +1 -0
- package/dist/admin/pages/PlaceholderPage.js +4 -0
- package/dist/admin/pages/PlaceholderPage.js.map +1 -0
- package/dist/admin/pages/PluginSettings.d.ts +1 -0
- package/dist/admin/pages/PluginSettings.js +6 -0
- package/dist/admin/pages/PluginSettings.js.map +1 -0
- package/dist/admin/pages/Plugins.d.ts +1 -0
- package/dist/admin/pages/Plugins.js +6 -0
- package/dist/admin/pages/Plugins.js.map +1 -0
- package/dist/admin/pages/PriceTypeEdit.d.ts +1 -0
- package/dist/admin/pages/PriceTypeEdit.js +5 -0
- package/dist/admin/pages/PriceTypeEdit.js.map +1 -0
- package/dist/admin/pages/PriceTypes.d.ts +1 -0
- package/dist/admin/pages/PriceTypes.js +5 -0
- package/dist/admin/pages/PriceTypes.js.map +1 -0
- package/dist/admin/pages/PriceValidator.d.ts +1 -0
- package/dist/admin/pages/PriceValidator.js +4 -0
- package/dist/admin/pages/PriceValidator.js.map +1 -0
- package/dist/admin/pages/ProductEdit.d.ts +1 -0
- package/dist/admin/pages/ProductEdit.js +14 -0
- package/dist/admin/pages/ProductEdit.js.map +1 -0
- package/dist/admin/pages/Products.d.ts +1 -0
- package/dist/admin/pages/Products.js +5 -0
- package/dist/admin/pages/Products.js.map +1 -0
- package/dist/admin/pages/Properties.d.ts +1 -0
- package/dist/admin/pages/Properties.js +5 -0
- package/dist/admin/pages/Properties.js.map +1 -0
- package/dist/admin/pages/PropertyEdit.d.ts +1 -0
- package/dist/admin/pages/PropertyEdit.js +5 -0
- package/dist/admin/pages/PropertyEdit.js.map +1 -0
- package/dist/admin/pages/PropertyOptionEdit.d.ts +1 -0
- package/dist/admin/pages/PropertyOptionEdit.js +7 -0
- package/dist/admin/pages/PropertyOptionEdit.js.map +1 -0
- package/dist/admin/pages/ReviewDetail.d.ts +1 -0
- package/dist/admin/pages/ReviewDetail.js +5 -0
- package/dist/admin/pages/ReviewDetail.js.map +1 -0
- package/dist/admin/pages/Reviews.d.ts +1 -0
- package/dist/admin/pages/Reviews.js +5 -0
- package/dist/admin/pages/Reviews.js.map +1 -0
- package/dist/admin/pages/SectionEdit.d.ts +1 -0
- package/dist/admin/pages/SectionEdit.js +8 -0
- package/dist/admin/pages/SectionEdit.js.map +1 -0
- package/dist/admin/pages/Sections.d.ts +1 -0
- package/dist/admin/pages/Sections.js +5 -0
- package/dist/admin/pages/Sections.js.map +1 -0
- package/dist/admin/pages/Settings.d.ts +1 -0
- package/dist/admin/pages/Settings.js +4 -0
- package/dist/admin/pages/Settings.js.map +1 -0
- package/dist/admin/pages/Shipping.d.ts +1 -0
- package/dist/admin/pages/Shipping.js +5 -0
- package/dist/admin/pages/Shipping.js.map +1 -0
- package/dist/admin/pages/ShippingMethodEdit.d.ts +1 -0
- package/dist/admin/pages/ShippingMethodEdit.js +5 -0
- package/dist/admin/pages/ShippingMethodEdit.js.map +1 -0
- package/dist/admin/pages/ShippingMethods.d.ts +1 -0
- package/dist/admin/pages/ShippingMethods.js +5 -0
- package/dist/admin/pages/ShippingMethods.js.map +1 -0
- package/dist/admin/pages/ShippingZoneEdit.d.ts +1 -0
- package/dist/admin/pages/ShippingZoneEdit.js +5 -0
- package/dist/admin/pages/ShippingZoneEdit.js.map +1 -0
- package/dist/admin/pages/ShippingZones.d.ts +1 -0
- package/dist/admin/pages/ShippingZones.js +5 -0
- package/dist/admin/pages/ShippingZones.js.map +1 -0
- package/dist/admin/pages/ThemeSettings.d.ts +1 -0
- package/dist/admin/pages/ThemeSettings.js +6 -0
- package/dist/admin/pages/ThemeSettings.js.map +1 -0
- package/dist/admin/pages/Themes.d.ts +1 -0
- package/dist/admin/pages/Themes.js +8 -0
- package/dist/admin/pages/Themes.js.map +1 -0
- package/dist/admin/pages/UserCategories.d.ts +1 -0
- package/dist/admin/pages/UserCategories.js +5 -0
- package/dist/admin/pages/UserCategories.js.map +1 -0
- package/dist/admin/pages/UserCategoryEdit.d.ts +1 -0
- package/dist/admin/pages/UserCategoryEdit.js +5 -0
- package/dist/admin/pages/UserCategoryEdit.js.map +1 -0
- package/dist/admin/pages/UserCategoryRuleEdit.d.ts +1 -0
- package/dist/admin/pages/UserCategoryRuleEdit.js +5 -0
- package/dist/admin/pages/UserCategoryRuleEdit.js.map +1 -0
- package/dist/admin/pages/UserCategoryRules.d.ts +1 -0
- package/dist/admin/pages/UserCategoryRules.js +5 -0
- package/dist/admin/pages/UserCategoryRules.js.map +1 -0
- package/dist/admin/pages/UserEdit.d.ts +1 -0
- package/dist/admin/pages/UserEdit.js +5 -0
- package/dist/admin/pages/UserEdit.js.map +1 -0
- package/dist/admin/pages/Users.d.ts +1 -0
- package/dist/admin/pages/Users.js +5 -0
- package/dist/admin/pages/Users.js.map +1 -0
- package/dist/auth/accept-invite.d.ts +38 -0
- package/dist/auth/authz.d.ts +79 -0
- package/dist/auth/drizzle-proxy.d.ts +13 -0
- package/dist/auth/env.d.ts +31 -0
- package/dist/auth/hooks.d.ts +63 -0
- package/dist/auth/index.d.ts +33 -0
- package/dist/auth/index.js +348 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/instance.d.ts +60 -0
- package/dist/auth/invite-email.d.ts +38 -0
- package/dist/auth/invite-store.d.ts +11 -0
- package/dist/auth/invite.d.ts +83 -0
- package/dist/auth/provision.d.ts +10 -0
- package/dist/auth/send-email.d.ts +19 -0
- package/dist/auth/session.d.ts +33 -0
- package/dist/cart-ui/CartButton.d.ts +1 -0
- package/dist/cart-ui/CartButton.js +4 -0
- package/dist/cart-ui/CartButton.js.map +1 -0
- package/dist/cart-ui/CartDrawer.d.ts +1 -0
- package/dist/cart-ui/CartDrawer.js +6 -0
- package/dist/cart-ui/CartDrawer.js.map +1 -0
- package/dist/cart-ui/CartItem.d.ts +6 -0
- package/dist/cart-ui/CartItem.js +5 -0
- package/dist/cart-ui/CartItem.js.map +1 -0
- package/dist/cart-ui/CartItemView.d.ts +7 -0
- package/dist/cart-ui/CartItemView.js +4 -0
- package/dist/cart-ui/CartItemView.js.map +1 -0
- package/dist/cart-ui/index.d.ts +5 -0
- package/dist/cart-ui/index.js +7 -0
- package/dist/cart-ui/index.js.map +1 -0
- package/dist/catalog-ui/ActiveFilters.d.ts +28 -0
- package/dist/catalog-ui/ActiveFilters.js +4 -0
- package/dist/catalog-ui/ActiveFilters.js.map +1 -0
- package/dist/catalog-ui/FilterSidebar.d.ts +31 -0
- package/dist/catalog-ui/FilterSidebar.js +4 -0
- package/dist/catalog-ui/FilterSidebar.js.map +1 -0
- package/dist/catalog-ui/ModificationSelector.d.ts +25 -0
- package/dist/catalog-ui/ModificationSelector.js +4 -0
- package/dist/catalog-ui/ModificationSelector.js.map +1 -0
- package/dist/catalog-ui/ProductCard.d.ts +22 -0
- package/dist/catalog-ui/ProductCard.js +4 -0
- package/dist/catalog-ui/ProductCard.js.map +1 -0
- package/dist/catalog-ui/ProductCharacteristics.d.ts +22 -0
- package/dist/catalog-ui/ProductCharacteristics.js +4 -0
- package/dist/catalog-ui/ProductCharacteristics.js.map +1 -0
- package/dist/catalog-ui/ProductGallery.d.ts +6 -0
- package/dist/catalog-ui/ProductGallery.js +4 -0
- package/dist/catalog-ui/ProductGallery.js.map +1 -0
- package/dist/catalog-ui/StockDisplay.d.ts +13 -0
- package/dist/catalog-ui/StockDisplay.js +4 -0
- package/dist/catalog-ui/StockDisplay.js.map +1 -0
- package/dist/catalog-ui/index.d.ts +7 -0
- package/dist/catalog-ui/index.js +10 -0
- package/dist/catalog-ui/index.js.map +1 -0
- package/dist/checkout-ui/AddressCard.d.ts +11 -0
- package/dist/checkout-ui/AddressCard.js +4 -0
- package/dist/checkout-ui/AddressCard.js.map +1 -0
- package/dist/checkout-ui/AddressSaveDialog.d.ts +10 -0
- package/dist/checkout-ui/AddressSaveDialog.js +4 -0
- package/dist/checkout-ui/AddressSaveDialog.js.map +1 -0
- package/dist/checkout-ui/AddressSelectorPopup.d.ts +17 -0
- package/dist/checkout-ui/AddressSelectorPopup.js +4 -0
- package/dist/checkout-ui/AddressSelectorPopup.js.map +1 -0
- package/dist/checkout-ui/CheckoutAuthBlock.d.ts +7 -0
- package/dist/checkout-ui/CheckoutAuthBlock.js +4 -0
- package/dist/checkout-ui/CheckoutAuthBlock.js.map +1 -0
- package/dist/checkout-ui/CheckoutContactForm.d.ts +11 -0
- package/dist/checkout-ui/CheckoutContactForm.js +4 -0
- package/dist/checkout-ui/CheckoutContactForm.js.map +1 -0
- package/dist/checkout-ui/CheckoutDeliveryForm.d.ts +16 -0
- package/dist/checkout-ui/CheckoutDeliveryForm.js +7 -0
- package/dist/checkout-ui/CheckoutDeliveryForm.js.map +1 -0
- package/dist/checkout-ui/CheckoutOrderSummary.d.ts +11 -0
- package/dist/checkout-ui/CheckoutOrderSummary.js +4 -0
- package/dist/checkout-ui/CheckoutOrderSummary.js.map +1 -0
- package/dist/checkout-ui/CheckoutPaymentForm.d.ts +6 -0
- package/dist/checkout-ui/CheckoutPaymentForm.js +4 -0
- package/dist/checkout-ui/CheckoutPaymentForm.js.map +1 -0
- package/dist/checkout-ui/CheckoutRecipientForm.d.ts +13 -0
- package/dist/checkout-ui/CheckoutRecipientForm.js +7 -0
- package/dist/checkout-ui/CheckoutRecipientForm.js.map +1 -0
- package/dist/checkout-ui/RecipientCard.d.ts +12 -0
- package/dist/checkout-ui/RecipientCard.js +4 -0
- package/dist/checkout-ui/RecipientCard.js.map +1 -0
- package/dist/checkout-ui/RecipientSaveDialog.d.ts +10 -0
- package/dist/checkout-ui/RecipientSaveDialog.js +4 -0
- package/dist/checkout-ui/RecipientSaveDialog.js.map +1 -0
- package/dist/checkout-ui/RecipientSelectorPopup.d.ts +20 -0
- package/dist/checkout-ui/RecipientSelectorPopup.js +4 -0
- package/dist/checkout-ui/RecipientSelectorPopup.js.map +1 -0
- package/dist/checkout-ui/index.d.ts +12 -0
- package/dist/checkout-ui/index.js +15 -0
- package/dist/checkout-ui/index.js.map +1 -0
- package/dist/chunk-23G3T7E3.js +26 -0
- package/dist/chunk-23G3T7E3.js.map +1 -0
- package/dist/chunk-23KPFM3P.js +47 -0
- package/dist/chunk-23KPFM3P.js.map +1 -0
- package/dist/chunk-26OAKQPA.js +83 -0
- package/dist/chunk-26OAKQPA.js.map +1 -0
- package/dist/chunk-2AZMVBJI.js +58 -0
- package/dist/chunk-2AZMVBJI.js.map +1 -0
- package/dist/chunk-2C5VTSRE.js +85 -0
- package/dist/chunk-2C5VTSRE.js.map +1 -0
- package/dist/chunk-2FX2C6KG.js +3 -0
- package/dist/chunk-2FX2C6KG.js.map +1 -0
- package/dist/chunk-2K6FGG5B.js +78 -0
- package/dist/chunk-2K6FGG5B.js.map +1 -0
- package/dist/chunk-2KKQO57H.js +3 -0
- package/dist/chunk-2KKQO57H.js.map +1 -0
- package/dist/chunk-2Q3JIBH2.js +85 -0
- package/dist/chunk-2Q3JIBH2.js.map +1 -0
- package/dist/chunk-2VKURKLN.js +10 -0
- package/dist/chunk-2VKURKLN.js.map +1 -0
- package/dist/chunk-2ZFFIRA7.js +94 -0
- package/dist/chunk-2ZFFIRA7.js.map +1 -0
- package/dist/chunk-2ZMYMDWX.js +506 -0
- package/dist/chunk-2ZMYMDWX.js.map +1 -0
- package/dist/chunk-2ZOJ3BRO.js +101 -0
- package/dist/chunk-2ZOJ3BRO.js.map +1 -0
- package/dist/chunk-34RUH5Q5.js +56 -0
- package/dist/chunk-34RUH5Q5.js.map +1 -0
- package/dist/chunk-36KE54CI.js +138 -0
- package/dist/chunk-36KE54CI.js.map +1 -0
- package/dist/chunk-36N7MZUX.js +49 -0
- package/dist/chunk-36N7MZUX.js.map +1 -0
- package/dist/chunk-3AESWXJD.js +398 -0
- package/dist/chunk-3AESWXJD.js.map +1 -0
- package/dist/chunk-3AJKXVPJ.js +68 -0
- package/dist/chunk-3AJKXVPJ.js.map +1 -0
- package/dist/chunk-3DJRL4IK.js +292 -0
- package/dist/chunk-3DJRL4IK.js.map +1 -0
- package/dist/chunk-3IGJUUBL.js +60 -0
- package/dist/chunk-3IGJUUBL.js.map +1 -0
- package/dist/chunk-3LFRV3X6.js +237 -0
- package/dist/chunk-3LFRV3X6.js.map +1 -0
- package/dist/chunk-3MK6QUQK.js +24 -0
- package/dist/chunk-3MK6QUQK.js.map +1 -0
- package/dist/chunk-3SW2KIUN.js +103 -0
- package/dist/chunk-3SW2KIUN.js.map +1 -0
- package/dist/chunk-3WTEL7HT.js +18 -0
- package/dist/chunk-3WTEL7HT.js.map +1 -0
- package/dist/chunk-3XVESNZC.js +77 -0
- package/dist/chunk-3XVESNZC.js.map +1 -0
- package/dist/chunk-43LZRWRG.js +57 -0
- package/dist/chunk-43LZRWRG.js.map +1 -0
- package/dist/chunk-45B5PZRY.js +460 -0
- package/dist/chunk-45B5PZRY.js.map +1 -0
- package/dist/chunk-45QHWHQX.js +26 -0
- package/dist/chunk-45QHWHQX.js.map +1 -0
- package/dist/chunk-473Q4TND.js +35 -0
- package/dist/chunk-473Q4TND.js.map +1 -0
- package/dist/chunk-4DRH2QKU.js +123 -0
- package/dist/chunk-4DRH2QKU.js.map +1 -0
- package/dist/chunk-4DVL46A2.js +42 -0
- package/dist/chunk-4DVL46A2.js.map +1 -0
- package/dist/chunk-4FV5KTST.js +49 -0
- package/dist/chunk-4FV5KTST.js.map +1 -0
- package/dist/chunk-4KSSZJB6.js +717 -0
- package/dist/chunk-4KSSZJB6.js.map +1 -0
- package/dist/chunk-4LNEHCYO.js +62 -0
- package/dist/chunk-4LNEHCYO.js.map +1 -0
- package/dist/chunk-4LWRNI4H.js +109 -0
- package/dist/chunk-4LWRNI4H.js.map +1 -0
- package/dist/chunk-4N7CLW6Y.js +72 -0
- package/dist/chunk-4N7CLW6Y.js.map +1 -0
- package/dist/chunk-4YRIIXCU.js +70 -0
- package/dist/chunk-4YRIIXCU.js.map +1 -0
- package/dist/chunk-5A2ANDF7.js +368 -0
- package/dist/chunk-5A2ANDF7.js.map +1 -0
- package/dist/chunk-5BSNLAZG.js +98 -0
- package/dist/chunk-5BSNLAZG.js.map +1 -0
- package/dist/chunk-5C2YI56N.js +38 -0
- package/dist/chunk-5C2YI56N.js.map +1 -0
- package/dist/chunk-5DAAQK77.js +264 -0
- package/dist/chunk-5DAAQK77.js.map +1 -0
- package/dist/chunk-5GOKOB4W.js +121 -0
- package/dist/chunk-5GOKOB4W.js.map +1 -0
- package/dist/chunk-5JTWID4O.js +3 -0
- package/dist/chunk-5JTWID4O.js.map +1 -0
- package/dist/chunk-5O4GVI37.js +18 -0
- package/dist/chunk-5O4GVI37.js.map +1 -0
- package/dist/chunk-5QDPW3VW.js +3 -0
- package/dist/chunk-5QDPW3VW.js.map +1 -0
- package/dist/chunk-5UP3MCBC.js +118 -0
- package/dist/chunk-5UP3MCBC.js.map +1 -0
- package/dist/chunk-5XW3TCGE.js +132 -0
- package/dist/chunk-5XW3TCGE.js.map +1 -0
- package/dist/chunk-64LMUHDA.js +122 -0
- package/dist/chunk-64LMUHDA.js.map +1 -0
- package/dist/chunk-6CF3TA4X.js +23 -0
- package/dist/chunk-6CF3TA4X.js.map +1 -0
- package/dist/chunk-6D2UAQNA.js +36 -0
- package/dist/chunk-6D2UAQNA.js.map +1 -0
- package/dist/chunk-6EQJNNCU.js +39 -0
- package/dist/chunk-6EQJNNCU.js.map +1 -0
- package/dist/chunk-6J52Y6TD.js +38 -0
- package/dist/chunk-6J52Y6TD.js.map +1 -0
- package/dist/chunk-6SGVGV62.js +24 -0
- package/dist/chunk-6SGVGV62.js.map +1 -0
- package/dist/chunk-6ZC3GWAR.js +37 -0
- package/dist/chunk-6ZC3GWAR.js.map +1 -0
- package/dist/chunk-77RQYFQK.js +23 -0
- package/dist/chunk-77RQYFQK.js.map +1 -0
- package/dist/chunk-7JQNN4AX.js +64 -0
- package/dist/chunk-7JQNN4AX.js.map +1 -0
- package/dist/chunk-7RYIOR2A.js +183 -0
- package/dist/chunk-7RYIOR2A.js.map +1 -0
- package/dist/chunk-7S3MSMHE.js +90 -0
- package/dist/chunk-7S3MSMHE.js.map +1 -0
- package/dist/chunk-7ZS5RS5Z.js +172 -0
- package/dist/chunk-7ZS5RS5Z.js.map +1 -0
- package/dist/chunk-AFTVAKEC.js +25 -0
- package/dist/chunk-AFTVAKEC.js.map +1 -0
- package/dist/chunk-ALVECZR7.js +8 -0
- package/dist/chunk-ALVECZR7.js.map +1 -0
- package/dist/chunk-AN54YETW.js +20 -0
- package/dist/chunk-AN54YETW.js.map +1 -0
- package/dist/chunk-ARVI27TR.js +324 -0
- package/dist/chunk-ARVI27TR.js.map +1 -0
- package/dist/chunk-ASFG2LKM.js +10 -0
- package/dist/chunk-ASFG2LKM.js.map +1 -0
- package/dist/chunk-AVHWYNGC.js +502 -0
- package/dist/chunk-AVHWYNGC.js.map +1 -0
- package/dist/chunk-B6ZJSQ4P.js +30 -0
- package/dist/chunk-B6ZJSQ4P.js.map +1 -0
- package/dist/chunk-BDKJ3ITL.js +1311 -0
- package/dist/chunk-BDKJ3ITL.js.map +1 -0
- package/dist/chunk-BDR6DRJX.js +47 -0
- package/dist/chunk-BDR6DRJX.js.map +1 -0
- package/dist/chunk-BSISQVY4.js +36 -0
- package/dist/chunk-BSISQVY4.js.map +1 -0
- package/dist/chunk-BTOPIWDA.js +144 -0
- package/dist/chunk-BTOPIWDA.js.map +1 -0
- package/dist/chunk-BWECTMUZ.js +101 -0
- package/dist/chunk-BWECTMUZ.js.map +1 -0
- package/dist/chunk-BZAWFPGX.js +91 -0
- package/dist/chunk-BZAWFPGX.js.map +1 -0
- package/dist/chunk-CETG5B3V.js +154 -0
- package/dist/chunk-CETG5B3V.js.map +1 -0
- package/dist/chunk-CFE2YHHY.js +52 -0
- package/dist/chunk-CFE2YHHY.js.map +1 -0
- package/dist/chunk-CKD5KAD2.js +179 -0
- package/dist/chunk-CKD5KAD2.js.map +1 -0
- package/dist/chunk-CMLIVKLK.js +319 -0
- package/dist/chunk-CMLIVKLK.js.map +1 -0
- package/dist/chunk-CRAH3NMI.js +96 -0
- package/dist/chunk-CRAH3NMI.js.map +1 -0
- package/dist/chunk-CTFOP3GR.js +3 -0
- package/dist/chunk-CTFOP3GR.js.map +1 -0
- package/dist/chunk-CZJWLCK7.js +3 -0
- package/dist/chunk-CZJWLCK7.js.map +1 -0
- package/dist/chunk-D3G6XGKV.js +82 -0
- package/dist/chunk-D3G6XGKV.js.map +1 -0
- package/dist/chunk-D55EEFVJ.js +48 -0
- package/dist/chunk-D55EEFVJ.js.map +1 -0
- package/dist/chunk-DOAFQERM.js +15 -0
- package/dist/chunk-DOAFQERM.js.map +1 -0
- package/dist/chunk-DR5R3J76.js +154 -0
- package/dist/chunk-DR5R3J76.js.map +1 -0
- package/dist/chunk-DRWZUYAN.js +15 -0
- package/dist/chunk-DRWZUYAN.js.map +1 -0
- package/dist/chunk-DW64EGU4.js +300 -0
- package/dist/chunk-DW64EGU4.js.map +1 -0
- package/dist/chunk-DWO7VQQT.js +253 -0
- package/dist/chunk-DWO7VQQT.js.map +1 -0
- package/dist/chunk-DZDZ6SSB.js +54 -0
- package/dist/chunk-DZDZ6SSB.js.map +1 -0
- package/dist/chunk-E6TWPPJC.js +21 -0
- package/dist/chunk-E6TWPPJC.js.map +1 -0
- package/dist/chunk-EFLUQ3O7.js +29 -0
- package/dist/chunk-EFLUQ3O7.js.map +1 -0
- package/dist/chunk-ELAU7VSL.js +157 -0
- package/dist/chunk-ELAU7VSL.js.map +1 -0
- package/dist/chunk-EQDFU2YI.js +228 -0
- package/dist/chunk-EQDFU2YI.js.map +1 -0
- package/dist/chunk-ETDZDO35.js +30 -0
- package/dist/chunk-ETDZDO35.js.map +1 -0
- package/dist/chunk-EZFEM6WJ.js +26 -0
- package/dist/chunk-EZFEM6WJ.js.map +1 -0
- package/dist/chunk-F2N5BY57.js +513 -0
- package/dist/chunk-F2N5BY57.js.map +1 -0
- package/dist/chunk-FBCWGQCA.js +38 -0
- package/dist/chunk-FBCWGQCA.js.map +1 -0
- package/dist/chunk-FETHDFGX.js +28 -0
- package/dist/chunk-FETHDFGX.js.map +1 -0
- package/dist/chunk-FFOYJA7C.js +52 -0
- package/dist/chunk-FFOYJA7C.js.map +1 -0
- package/dist/chunk-FJN35H2F.js +23 -0
- package/dist/chunk-FJN35H2F.js.map +1 -0
- package/dist/chunk-FSWFG3W5.js +434 -0
- package/dist/chunk-FSWFG3W5.js.map +1 -0
- package/dist/chunk-FVUVJDMM.js +302 -0
- package/dist/chunk-FVUVJDMM.js.map +1 -0
- package/dist/chunk-GA3G4WSB.js +43 -0
- package/dist/chunk-GA3G4WSB.js.map +1 -0
- package/dist/chunk-GBX3EEET.js +50 -0
- package/dist/chunk-GBX3EEET.js.map +1 -0
- package/dist/chunk-GCV75UWZ.js +146 -0
- package/dist/chunk-GCV75UWZ.js.map +1 -0
- package/dist/chunk-GDMEC2JX.js +261 -0
- package/dist/chunk-GDMEC2JX.js.map +1 -0
- package/dist/chunk-GDOSHZKL.js +26 -0
- package/dist/chunk-GDOSHZKL.js.map +1 -0
- package/dist/chunk-GEFYA744.js +218 -0
- package/dist/chunk-GEFYA744.js.map +1 -0
- package/dist/chunk-GNPMPJBU.js +148 -0
- package/dist/chunk-GNPMPJBU.js.map +1 -0
- package/dist/chunk-GU4OCP5D.js +3 -0
- package/dist/chunk-GU4OCP5D.js.map +1 -0
- package/dist/chunk-GZWE2546.js +65 -0
- package/dist/chunk-GZWE2546.js.map +1 -0
- package/dist/chunk-HDKJLZP5.js +90 -0
- package/dist/chunk-HDKJLZP5.js.map +1 -0
- package/dist/chunk-HDZ2KCVD.js +118 -0
- package/dist/chunk-HDZ2KCVD.js.map +1 -0
- package/dist/chunk-HFELN34F.js +24 -0
- package/dist/chunk-HFELN34F.js.map +1 -0
- package/dist/chunk-HG5KZVG2.js +254 -0
- package/dist/chunk-HG5KZVG2.js.map +1 -0
- package/dist/chunk-HGKPFE57.js +302 -0
- package/dist/chunk-HGKPFE57.js.map +1 -0
- package/dist/chunk-HIAANCKI.js +367 -0
- package/dist/chunk-HIAANCKI.js.map +1 -0
- package/dist/chunk-HV3QOXWS.js +94 -0
- package/dist/chunk-HV3QOXWS.js.map +1 -0
- package/dist/chunk-HW3CZJDX.js +26 -0
- package/dist/chunk-HW3CZJDX.js.map +1 -0
- package/dist/chunk-HYLFXHZ4.js +39 -0
- package/dist/chunk-HYLFXHZ4.js.map +1 -0
- package/dist/chunk-I3U4TB4H.js +323 -0
- package/dist/chunk-I3U4TB4H.js.map +1 -0
- package/dist/chunk-I4LPT6E5.js +163 -0
- package/dist/chunk-I4LPT6E5.js.map +1 -0
- package/dist/chunk-I65ATTOO.js +97 -0
- package/dist/chunk-I65ATTOO.js.map +1 -0
- package/dist/chunk-I7WLAPVP.js +3 -0
- package/dist/chunk-I7WLAPVP.js.map +1 -0
- package/dist/chunk-IBKHUHET.js +13 -0
- package/dist/chunk-IBKHUHET.js.map +1 -0
- package/dist/chunk-IFL7XD6B.js +32 -0
- package/dist/chunk-IFL7XD6B.js.map +1 -0
- package/dist/chunk-IMVSNS6Y.js +72 -0
- package/dist/chunk-IMVSNS6Y.js.map +1 -0
- package/dist/chunk-INYK2AFU.js +309 -0
- package/dist/chunk-INYK2AFU.js.map +1 -0
- package/dist/chunk-IODBINZ4.js +20 -0
- package/dist/chunk-IODBINZ4.js.map +1 -0
- package/dist/chunk-IP2II4EJ.js +170 -0
- package/dist/chunk-IP2II4EJ.js.map +1 -0
- package/dist/chunk-IPQRYSSD.js +3 -0
- package/dist/chunk-IPQRYSSD.js.map +1 -0
- package/dist/chunk-IRR2UMIH.js +13 -0
- package/dist/chunk-IRR2UMIH.js.map +1 -0
- package/dist/chunk-ISBZVXFF.js +108 -0
- package/dist/chunk-ISBZVXFF.js.map +1 -0
- package/dist/chunk-IULIXR7J.js +37 -0
- package/dist/chunk-IULIXR7J.js.map +1 -0
- package/dist/chunk-J4DP2OAU.js +142 -0
- package/dist/chunk-J4DP2OAU.js.map +1 -0
- package/dist/chunk-JG3KDN6H.js +26 -0
- package/dist/chunk-JG3KDN6H.js.map +1 -0
- package/dist/chunk-JGO2CL3O.js +43 -0
- package/dist/chunk-JGO2CL3O.js.map +1 -0
- package/dist/chunk-JO63AJJG.js +226 -0
- package/dist/chunk-JO63AJJG.js.map +1 -0
- package/dist/chunk-JORMRKZX.js +50 -0
- package/dist/chunk-JORMRKZX.js.map +1 -0
- package/dist/chunk-JRX5ACKU.js +20 -0
- package/dist/chunk-JRX5ACKU.js.map +1 -0
- package/dist/chunk-JUT26UJC.js +141 -0
- package/dist/chunk-JUT26UJC.js.map +1 -0
- package/dist/chunk-K53S2TG5.js +218 -0
- package/dist/chunk-K53S2TG5.js.map +1 -0
- package/dist/chunk-KLRI2TQ3.js +15 -0
- package/dist/chunk-KLRI2TQ3.js.map +1 -0
- package/dist/chunk-KLU72IVW.js +120 -0
- package/dist/chunk-KLU72IVW.js.map +1 -0
- package/dist/chunk-KXGQVXV5.js +3 -0
- package/dist/chunk-KXGQVXV5.js.map +1 -0
- package/dist/chunk-KYQQL3WB.js +3 -0
- package/dist/chunk-KYQQL3WB.js.map +1 -0
- package/dist/chunk-L3CXS3RA.js +20 -0
- package/dist/chunk-L3CXS3RA.js.map +1 -0
- package/dist/chunk-L3MIV7VH.js +47 -0
- package/dist/chunk-L3MIV7VH.js.map +1 -0
- package/dist/chunk-L7DU5MY7.js +285 -0
- package/dist/chunk-L7DU5MY7.js.map +1 -0
- package/dist/chunk-LL3IE3SI.js +26 -0
- package/dist/chunk-LL3IE3SI.js.map +1 -0
- package/dist/chunk-LL6RMSEC.js +53 -0
- package/dist/chunk-LL6RMSEC.js.map +1 -0
- package/dist/chunk-LNEHQXYC.js +159 -0
- package/dist/chunk-LNEHQXYC.js.map +1 -0
- package/dist/chunk-LRZSDJS7.js +27 -0
- package/dist/chunk-LRZSDJS7.js.map +1 -0
- package/dist/chunk-LS3LMIS4.js +87 -0
- package/dist/chunk-LS3LMIS4.js.map +1 -0
- package/dist/chunk-LUOSFQD5.js +28 -0
- package/dist/chunk-LUOSFQD5.js.map +1 -0
- package/dist/chunk-LVIY3WV5.js +102 -0
- package/dist/chunk-LVIY3WV5.js.map +1 -0
- package/dist/chunk-LZYG4G4X.js +43 -0
- package/dist/chunk-LZYG4G4X.js.map +1 -0
- package/dist/chunk-M2OQPMVT.js +3 -0
- package/dist/chunk-M2OQPMVT.js.map +1 -0
- package/dist/chunk-M3G257NG.js +29 -0
- package/dist/chunk-M3G257NG.js.map +1 -0
- package/dist/chunk-MBDMH57M.js +307 -0
- package/dist/chunk-MBDMH57M.js.map +1 -0
- package/dist/chunk-MCXTDDUI.js +62 -0
- package/dist/chunk-MCXTDDUI.js.map +1 -0
- package/dist/chunk-MJ7TXDR6.js +11 -0
- package/dist/chunk-MJ7TXDR6.js.map +1 -0
- package/dist/chunk-MLJ2I5US.js +108 -0
- package/dist/chunk-MLJ2I5US.js.map +1 -0
- package/dist/chunk-MQ422VVU.js +45 -0
- package/dist/chunk-MQ422VVU.js.map +1 -0
- package/dist/chunk-MTGH4EXD.js +27 -0
- package/dist/chunk-MTGH4EXD.js.map +1 -0
- package/dist/chunk-MX2JHIZP.js +29 -0
- package/dist/chunk-MX2JHIZP.js.map +1 -0
- package/dist/chunk-MYNYNET3.js +71 -0
- package/dist/chunk-MYNYNET3.js.map +1 -0
- package/dist/chunk-NBND7WAT.js +33 -0
- package/dist/chunk-NBND7WAT.js.map +1 -0
- package/dist/chunk-NEUEOUZA.js +62 -0
- package/dist/chunk-NEUEOUZA.js.map +1 -0
- package/dist/chunk-NLK2FJGF.js +52 -0
- package/dist/chunk-NLK2FJGF.js.map +1 -0
- package/dist/chunk-NOGEBCZM.js +38 -0
- package/dist/chunk-NOGEBCZM.js.map +1 -0
- package/dist/chunk-NRZS2NEG.js +213 -0
- package/dist/chunk-NRZS2NEG.js.map +1 -0
- package/dist/chunk-NSKMDSE7.js +63 -0
- package/dist/chunk-NSKMDSE7.js.map +1 -0
- package/dist/chunk-NZI53CGC.js +45 -0
- package/dist/chunk-NZI53CGC.js.map +1 -0
- package/dist/chunk-O5EHX5YI.js +3 -0
- package/dist/chunk-O5EHX5YI.js.map +1 -0
- package/dist/chunk-OAYDU5TD.js +104 -0
- package/dist/chunk-OAYDU5TD.js.map +1 -0
- package/dist/chunk-ODV2GIRU.js +63 -0
- package/dist/chunk-ODV2GIRU.js.map +1 -0
- package/dist/chunk-OEV4FPTR.js +140 -0
- package/dist/chunk-OEV4FPTR.js.map +1 -0
- package/dist/chunk-OMPF7GTV.js +63 -0
- package/dist/chunk-OMPF7GTV.js.map +1 -0
- package/dist/chunk-OWHK34K6.js +3 -0
- package/dist/chunk-OWHK34K6.js.map +1 -0
- package/dist/chunk-OYSLI33V.js +192 -0
- package/dist/chunk-OYSLI33V.js.map +1 -0
- package/dist/chunk-P6OAVA6S.js +301 -0
- package/dist/chunk-P6OAVA6S.js.map +1 -0
- package/dist/chunk-PKPSEUTH.js +416 -0
- package/dist/chunk-PKPSEUTH.js.map +1 -0
- package/dist/chunk-PKSF2WRO.js +20 -0
- package/dist/chunk-PKSF2WRO.js.map +1 -0
- package/dist/chunk-PO4IZSDA.js +79 -0
- package/dist/chunk-PO4IZSDA.js.map +1 -0
- package/dist/chunk-PUHHIN2C.js +476 -0
- package/dist/chunk-PUHHIN2C.js.map +1 -0
- package/dist/chunk-PXWQPR5U.js +166 -0
- package/dist/chunk-PXWQPR5U.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +9 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/chunk-Q6LPYDSV.js +313 -0
- package/dist/chunk-Q6LPYDSV.js.map +1 -0
- package/dist/chunk-Q7AOMRRU.js +43 -0
- package/dist/chunk-Q7AOMRRU.js.map +1 -0
- package/dist/chunk-QCTPHFFT.js +21 -0
- package/dist/chunk-QCTPHFFT.js.map +1 -0
- package/dist/chunk-QDSHCGZP.js +33 -0
- package/dist/chunk-QDSHCGZP.js.map +1 -0
- package/dist/chunk-QGI7PAOJ.js +30 -0
- package/dist/chunk-QGI7PAOJ.js.map +1 -0
- package/dist/chunk-QPHGCZ22.js +22 -0
- package/dist/chunk-QPHGCZ22.js.map +1 -0
- package/dist/chunk-QQDFDCU7.js +93 -0
- package/dist/chunk-QQDFDCU7.js.map +1 -0
- package/dist/chunk-QXJIUF4T.js +15 -0
- package/dist/chunk-QXJIUF4T.js.map +1 -0
- package/dist/chunk-RFQAQV3K.js +118 -0
- package/dist/chunk-RFQAQV3K.js.map +1 -0
- package/dist/chunk-RJLDWZ2W.js +28 -0
- package/dist/chunk-RJLDWZ2W.js.map +1 -0
- package/dist/chunk-RMPQOZUE.js +3 -0
- package/dist/chunk-RMPQOZUE.js.map +1 -0
- package/dist/chunk-RSL3DLME.js +256 -0
- package/dist/chunk-RSL3DLME.js.map +1 -0
- package/dist/chunk-RXDCW5CH.js +38 -0
- package/dist/chunk-RXDCW5CH.js.map +1 -0
- package/dist/chunk-SACNJKU5.js +95 -0
- package/dist/chunk-SACNJKU5.js.map +1 -0
- package/dist/chunk-SECPVOGP.js +11 -0
- package/dist/chunk-SECPVOGP.js.map +1 -0
- package/dist/chunk-SFVHV7R3.js +311 -0
- package/dist/chunk-SFVHV7R3.js.map +1 -0
- package/dist/chunk-SG2BHFVT.js +134 -0
- package/dist/chunk-SG2BHFVT.js.map +1 -0
- package/dist/chunk-SGUAXELO.js +27 -0
- package/dist/chunk-SGUAXELO.js.map +1 -0
- package/dist/chunk-SHMJRRUY.js +3 -0
- package/dist/chunk-SHMJRRUY.js.map +1 -0
- package/dist/chunk-SQIVVHWN.js +23 -0
- package/dist/chunk-SQIVVHWN.js.map +1 -0
- package/dist/chunk-SU3R36OS.js +169 -0
- package/dist/chunk-SU3R36OS.js.map +1 -0
- package/dist/chunk-T2UW5EWA.js +327 -0
- package/dist/chunk-T2UW5EWA.js.map +1 -0
- package/dist/chunk-TKJXSSVT.js +94 -0
- package/dist/chunk-TKJXSSVT.js.map +1 -0
- package/dist/chunk-TS3EGKET.js +38 -0
- package/dist/chunk-TS3EGKET.js.map +1 -0
- package/dist/chunk-TTCWYWQU.js +31 -0
- package/dist/chunk-TTCWYWQU.js.map +1 -0
- package/dist/chunk-TY7P22ZE.js +334 -0
- package/dist/chunk-TY7P22ZE.js.map +1 -0
- package/dist/chunk-TZMNJIAU.js +50 -0
- package/dist/chunk-TZMNJIAU.js.map +1 -0
- package/dist/chunk-UBLERNL3.js +595 -0
- package/dist/chunk-UBLERNL3.js.map +1 -0
- package/dist/chunk-UCZQWXCW.js +216 -0
- package/dist/chunk-UCZQWXCW.js.map +1 -0
- package/dist/chunk-UIKJ4EUT.js +65 -0
- package/dist/chunk-UIKJ4EUT.js.map +1 -0
- package/dist/chunk-UJNINZMO.js +40 -0
- package/dist/chunk-UJNINZMO.js.map +1 -0
- package/dist/chunk-ULHJAUDC.js +78 -0
- package/dist/chunk-ULHJAUDC.js.map +1 -0
- package/dist/chunk-UVQZ4IPW.js +96 -0
- package/dist/chunk-UVQZ4IPW.js.map +1 -0
- package/dist/chunk-V23ZBHSL.js +69 -0
- package/dist/chunk-V23ZBHSL.js.map +1 -0
- package/dist/chunk-V2Q67K4F.js +32 -0
- package/dist/chunk-V2Q67K4F.js.map +1 -0
- package/dist/chunk-V5N6TAJC.js +395 -0
- package/dist/chunk-V5N6TAJC.js.map +1 -0
- package/dist/chunk-V6OUDHXW.js +31 -0
- package/dist/chunk-V6OUDHXW.js.map +1 -0
- package/dist/chunk-VHO66UIW.js +29 -0
- package/dist/chunk-VHO66UIW.js.map +1 -0
- package/dist/chunk-VMMM2RIG.js +8 -0
- package/dist/chunk-VMMM2RIG.js.map +1 -0
- package/dist/chunk-VNIVHR4Z.js +327 -0
- package/dist/chunk-VNIVHR4Z.js.map +1 -0
- package/dist/chunk-VQYOEDXN.js +3 -0
- package/dist/chunk-VQYOEDXN.js.map +1 -0
- package/dist/chunk-VSXW336V.js +13 -0
- package/dist/chunk-VSXW336V.js.map +1 -0
- package/dist/chunk-VT3TJVSJ.js +118 -0
- package/dist/chunk-VT3TJVSJ.js.map +1 -0
- package/dist/chunk-WCKHXPYN.js +68 -0
- package/dist/chunk-WCKHXPYN.js.map +1 -0
- package/dist/chunk-WCSVGTBO.js +3 -0
- package/dist/chunk-WCSVGTBO.js.map +1 -0
- package/dist/chunk-WGJTOHEA.js +3 -0
- package/dist/chunk-WGJTOHEA.js.map +1 -0
- package/dist/chunk-WUXO6KCX.js +40 -0
- package/dist/chunk-WUXO6KCX.js.map +1 -0
- package/dist/chunk-XBHNK4ER.js +92 -0
- package/dist/chunk-XBHNK4ER.js.map +1 -0
- package/dist/chunk-XBXHWNNS.js +44 -0
- package/dist/chunk-XBXHWNNS.js.map +1 -0
- package/dist/chunk-XHM4DSKW.js +17 -0
- package/dist/chunk-XHM4DSKW.js.map +1 -0
- package/dist/chunk-XU3QEACK.js +3 -0
- package/dist/chunk-XU3QEACK.js.map +1 -0
- package/dist/chunk-YAAGMUI6.js +29 -0
- package/dist/chunk-YAAGMUI6.js.map +1 -0
- package/dist/chunk-YAVF46NP.js +103 -0
- package/dist/chunk-YAVF46NP.js.map +1 -0
- package/dist/chunk-YDSW4PMT.js +3 -0
- package/dist/chunk-YDSW4PMT.js.map +1 -0
- package/dist/chunk-YJSUFOSO.js +27 -0
- package/dist/chunk-YJSUFOSO.js.map +1 -0
- package/dist/chunk-YL2AW5T6.js +3 -0
- package/dist/chunk-YL2AW5T6.js.map +1 -0
- package/dist/chunk-YLVDMRLC.js +40 -0
- package/dist/chunk-YLVDMRLC.js.map +1 -0
- package/dist/chunk-YMAXW25I.js +587 -0
- package/dist/chunk-YMAXW25I.js.map +1 -0
- package/dist/chunk-YMT764VJ.js +81 -0
- package/dist/chunk-YMT764VJ.js.map +1 -0
- package/dist/chunk-YRBASM6H.js +160 -0
- package/dist/chunk-YRBASM6H.js.map +1 -0
- package/dist/chunk-Z3EJA3GJ.js +3 -0
- package/dist/chunk-Z3EJA3GJ.js.map +1 -0
- package/dist/chunk-Z5W5Q64K.js +3 -0
- package/dist/chunk-Z5W5Q64K.js.map +1 -0
- package/dist/chunk-Z7XTHXGI.js +87 -0
- package/dist/chunk-Z7XTHXGI.js.map +1 -0
- package/dist/chunk-ZNKTJGLV.js +183 -0
- package/dist/chunk-ZNKTJGLV.js.map +1 -0
- package/dist/chunk-ZO5HCIKL.js +11 -0
- package/dist/chunk-ZO5HCIKL.js.map +1 -0
- package/dist/chunk-ZQN6MC2O.js +90 -0
- package/dist/chunk-ZQN6MC2O.js.map +1 -0
- package/dist/chunk-ZS26TLLE.js +19 -0
- package/dist/chunk-ZS26TLLE.js.map +1 -0
- package/dist/chunk-ZSQQH3P2.js +96 -0
- package/dist/chunk-ZSQQH3P2.js.map +1 -0
- package/dist/contracts/index.d.ts +2 -0
- package/dist/contracts/index.js +3 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/objects/banner.d.ts +31 -0
- package/dist/contracts/objects/catalog.d.ts +65 -0
- package/dist/contracts/objects/common.d.ts +21 -0
- package/dist/contracts/objects/config.d.ts +14 -0
- package/dist/contracts/objects/discount.d.ts +79 -0
- package/dist/contracts/objects/identity.d.ts +8 -0
- package/dist/contracts/objects/index.d.ts +10 -0
- package/dist/contracts/objects/index.js +3 -0
- package/dist/contracts/objects/index.js.map +1 -0
- package/dist/contracts/objects/inventory.d.ts +34 -0
- package/dist/contracts/objects/order.d.ts +48 -0
- package/dist/contracts/objects/pricing.d.ts +18 -0
- package/dist/contracts/objects/shipping.d.ts +112 -0
- package/dist/contracts/ports/index.d.ts +83 -0
- package/dist/contracts/ports/index.js +3 -0
- package/dist/contracts/ports/index.js.map +1 -0
- package/dist/contracts/semver/index.d.ts +13 -0
- package/dist/contracts/semver/index.js +43 -0
- package/dist/contracts/semver/index.js.map +1 -0
- package/dist/contracts/semver/version.d.ts +15 -0
- package/dist/contracts/views/cart.d.ts +18 -0
- package/dist/contracts/views/catalog.d.ts +38 -0
- package/dist/contracts/views/common.d.ts +32 -0
- package/dist/contracts/views/fixtures/cart.d.ts +6 -0
- package/dist/contracts/views/fixtures/catalog.d.ts +10 -0
- package/dist/contracts/views/fixtures/home.d.ts +6 -0
- package/dist/contracts/views/fixtures/index.d.ts +30 -0
- package/dist/contracts/views/fixtures/index.js +184 -0
- package/dist/contracts/views/fixtures/index.js.map +1 -0
- package/dist/contracts/views/fixtures/product-detail.d.ts +6 -0
- package/dist/contracts/views/home.d.ts +43 -0
- package/dist/contracts/views/index.d.ts +7 -0
- package/dist/contracts/views/index.js +45 -0
- package/dist/contracts/views/index.js.map +1 -0
- package/dist/contracts/views/product-detail.d.ts +70 -0
- package/dist/contracts/views/requisites.d.ts +75 -0
- package/dist/contracts/views/slots.d.ts +15 -0
- package/dist/core/components/NavLink.d.ts +12 -0
- package/dist/core/components/NavLink.js +27 -0
- package/dist/core/components/NavLink.js.map +1 -0
- package/dist/core/components/ThemeToggle.d.ts +1 -0
- package/dist/core/components/ThemeToggle.js +34 -0
- package/dist/core/components/ThemeToggle.js.map +1 -0
- package/dist/core/components/cart/CartDrawer.d.ts +1 -0
- package/dist/core/components/cart/CartDrawer.js +4 -0
- package/dist/core/components/cart/CartDrawer.js.map +1 -0
- package/dist/core/components/cart/CartItem.d.ts +1 -0
- package/dist/core/components/cart/CartItem.js +4 -0
- package/dist/core/components/cart/CartItem.js.map +1 -0
- package/dist/core/components/catalog/ActiveFilters.d.ts +2 -0
- package/dist/core/components/catalog/ActiveFilters.js +4 -0
- package/dist/core/components/catalog/ActiveFilters.js.map +1 -0
- package/dist/core/components/catalog/FilterSidebar.d.ts +2 -0
- package/dist/core/components/catalog/FilterSidebar.js +4 -0
- package/dist/core/components/catalog/FilterSidebar.js.map +1 -0
- package/dist/core/components/catalog/ModificationSelector.d.ts +2 -0
- package/dist/core/components/catalog/ModificationSelector.js +4 -0
- package/dist/core/components/catalog/ModificationSelector.js.map +1 -0
- package/dist/core/components/catalog/ProductCard.d.ts +1 -0
- package/dist/core/components/catalog/ProductCard.js +4 -0
- package/dist/core/components/catalog/ProductCard.js.map +1 -0
- package/dist/core/components/catalog/ProductCharacteristics.d.ts +1 -0
- package/dist/core/components/catalog/ProductCharacteristics.js +4 -0
- package/dist/core/components/catalog/ProductCharacteristics.js.map +1 -0
- package/dist/core/components/catalog/ProductGallery.d.ts +1 -0
- package/dist/core/components/catalog/ProductGallery.js +4 -0
- package/dist/core/components/catalog/ProductGallery.js.map +1 -0
- package/dist/core/components/catalog/StockDisplay.d.ts +1 -0
- package/dist/core/components/catalog/StockDisplay.js +4 -0
- package/dist/core/components/catalog/StockDisplay.js.map +1 -0
- package/dist/core/components/checkout/CheckoutAuthBlock.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutAuthBlock.js +4 -0
- package/dist/core/components/checkout/CheckoutAuthBlock.js.map +1 -0
- package/dist/core/components/checkout/CheckoutContactForm.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutContactForm.js +4 -0
- package/dist/core/components/checkout/CheckoutContactForm.js.map +1 -0
- package/dist/core/components/checkout/CheckoutDeliveryForm.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutDeliveryForm.js +4 -0
- package/dist/core/components/checkout/CheckoutDeliveryForm.js.map +1 -0
- package/dist/core/components/checkout/CheckoutOrderSummary.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutOrderSummary.js +4 -0
- package/dist/core/components/checkout/CheckoutOrderSummary.js.map +1 -0
- package/dist/core/components/checkout/CheckoutPaymentForm.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutPaymentForm.js +4 -0
- package/dist/core/components/checkout/CheckoutPaymentForm.js.map +1 -0
- package/dist/core/components/checkout/CheckoutRecipientForm.d.ts +1 -0
- package/dist/core/components/checkout/CheckoutRecipientForm.js +4 -0
- package/dist/core/components/checkout/CheckoutRecipientForm.js.map +1 -0
- package/dist/core/components/profile/AddressesList.d.ts +1 -0
- package/dist/core/components/profile/AddressesList.js +4 -0
- package/dist/core/components/profile/AddressesList.js.map +1 -0
- package/dist/core/components/profile/AvatarUpload.d.ts +1 -0
- package/dist/core/components/profile/AvatarUpload.js +4 -0
- package/dist/core/components/profile/AvatarUpload.js.map +1 -0
- package/dist/core/components/profile/RecipientsList.d.ts +1 -0
- package/dist/core/components/profile/RecipientsList.js +4 -0
- package/dist/core/components/profile/RecipientsList.js.map +1 -0
- package/dist/core/components/reviews/ProductReviews.d.ts +1 -0
- package/dist/core/components/reviews/ProductReviews.js +4 -0
- package/dist/core/components/reviews/ProductReviews.js.map +1 -0
- package/dist/core/components/reviews/StarRating.d.ts +1 -0
- package/dist/core/components/reviews/StarRating.js +4 -0
- package/dist/core/components/reviews/StarRating.js.map +1 -0
- package/dist/core/hooks/use-toast.d.ts +2 -0
- package/dist/core/hooks/use-toast.js +4 -0
- package/dist/core/hooks/use-toast.js.map +1 -0
- package/dist/core/hooks/useAddressBook.d.ts +32 -0
- package/dist/core/hooks/useAddressBook.js +27 -0
- package/dist/core/hooks/useAddressBook.js.map +1 -0
- package/dist/core/hooks/useAuth.d.ts +21 -0
- package/dist/core/hooks/useAuth.js +6 -0
- package/dist/core/hooks/useAuth.js.map +1 -0
- package/dist/core/hooks/useBanners.d.ts +14 -0
- package/dist/core/hooks/useBanners.js +5 -0
- package/dist/core/hooks/useBanners.js.map +1 -0
- package/dist/core/hooks/useCart.d.ts +2 -0
- package/dist/core/hooks/useCart.js +4 -0
- package/dist/core/hooks/useCart.js.map +1 -0
- package/dist/core/hooks/useDiscountedPrice.d.ts +24 -0
- package/dist/core/hooks/useDiscountedPrice.js +5 -0
- package/dist/core/hooks/useDiscountedPrice.js.map +1 -0
- package/dist/core/hooks/usePriceType.d.ts +11 -0
- package/dist/core/hooks/usePriceType.js +8 -0
- package/dist/core/hooks/usePriceType.js.map +1 -0
- package/dist/core/hooks/useProductReviews.d.ts +36 -0
- package/dist/core/hooks/useProductReviews.js +9 -0
- package/dist/core/hooks/useProductReviews.js.map +1 -0
- package/dist/core/hooks/useProductsWithStock.d.ts +2 -0
- package/dist/core/hooks/useProductsWithStock.js +4 -0
- package/dist/core/hooks/useProductsWithStock.js.map +1 -0
- package/dist/core/hooks/useRecipientBook.d.ts +27 -0
- package/dist/core/hooks/useRecipientBook.js +27 -0
- package/dist/core/hooks/useRecipientBook.js.map +1 -0
- package/dist/core/hooks/useShippingDirectory.d.ts +23 -0
- package/dist/core/hooks/useShippingDirectory.js +40 -0
- package/dist/core/hooks/useShippingDirectory.js.map +1 -0
- package/dist/core/hooks/useStock.d.ts +20 -0
- package/dist/core/hooks/useStock.js +5 -0
- package/dist/core/hooks/useStock.js.map +1 -0
- package/dist/core/index.d.ts +39 -0
- package/dist/core/index.js +41 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/lib/auth-client.d.ts +18 -0
- package/dist/core/lib/auth-client.js +4 -0
- package/dist/core/lib/auth-client.js.map +1 -0
- package/dist/core/lib/auth-session.d.ts +14 -0
- package/dist/core/lib/auth-session.js +4 -0
- package/dist/core/lib/auth-session.js.map +1 -0
- package/dist/core/lib/banners.d.ts +18 -0
- package/dist/core/lib/banners.js +4 -0
- package/dist/core/lib/banners.js.map +1 -0
- package/dist/core/lib/discounts.d.ts +30 -0
- package/dist/core/lib/discounts.js +4 -0
- package/dist/core/lib/discounts.js.map +1 -0
- package/dist/core/lib/price-type.d.ts +19 -0
- package/dist/core/lib/price-type.js +4 -0
- package/dist/core/lib/price-type.js.map +1 -0
- package/dist/core/lib/review-form.d.ts +20 -0
- package/dist/core/lib/review-form.js +4 -0
- package/dist/core/lib/review-form.js.map +1 -0
- package/dist/core/lib/reviews.d.ts +28 -0
- package/dist/core/lib/reviews.js +4 -0
- package/dist/core/lib/reviews.js.map +1 -0
- package/dist/core/lib/section-filters.d.ts +17 -0
- package/dist/core/lib/section-filters.js +13 -0
- package/dist/core/lib/section-filters.js.map +1 -0
- package/dist/core/lib/shipping-directory.d.ts +24 -0
- package/dist/core/lib/shipping-directory.js +4 -0
- package/dist/core/lib/shipping-directory.js.map +1 -0
- package/dist/core/lib/stock.d.ts +19 -0
- package/dist/core/lib/stock.js +4 -0
- package/dist/core/lib/stock.js.map +1 -0
- package/dist/core/lib/user-addresses.d.ts +30 -0
- package/dist/core/lib/user-addresses.js +4 -0
- package/dist/core/lib/user-addresses.js.map +1 -0
- package/dist/core/lib/user-recipients.d.ts +30 -0
- package/dist/core/lib/user-recipients.js +4 -0
- package/dist/core/lib/user-recipients.js.map +1 -0
- package/dist/core/providers/CMSProvider.d.ts +9 -0
- package/dist/core/providers/CMSProvider.js +8 -0
- package/dist/core/providers/CMSProvider.js.map +1 -0
- package/dist/data-supabase/catalogRepository.d.ts +3 -0
- package/dist/data-supabase/identityProvider.d.ts +3 -0
- package/dist/data-supabase/index.d.ts +5 -0
- package/dist/data-supabase/index.js +497 -0
- package/dist/data-supabase/index.js.map +1 -0
- package/dist/data-supabase/mappers.d.ts +17 -0
- package/dist/data-supabase/orderRepository.d.ts +3 -0
- package/dist/data-supabase/scope.d.ts +7 -0
- package/dist/db/actor.d.ts +57 -0
- package/dist/db/client.d.ts +46 -0
- package/dist/db/index.d.ts +12 -0
- package/dist/db/index.js +88 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/with-actor.d.ts +37 -0
- package/dist/domain/discounts.d.ts +3 -0
- package/dist/domain/discounts.js +4 -0
- package/dist/domain/discounts.js.map +1 -0
- package/dist/domain/index.d.ts +6 -0
- package/dist/domain/index.js +9 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/inventory.d.ts +13 -0
- package/dist/domain/inventory.js +4 -0
- package/dist/domain/inventory.js.map +1 -0
- package/dist/domain/money.d.ts +30 -0
- package/dist/domain/money.js +4 -0
- package/dist/domain/money.js.map +1 -0
- package/dist/domain/pricing.d.ts +7 -0
- package/dist/domain/pricing.js +4 -0
- package/dist/domain/pricing.js.map +1 -0
- package/dist/domain/shipping.d.ts +68 -0
- package/dist/domain/shipping.js +5 -0
- package/dist/domain/shipping.js.map +1 -0
- package/dist/domain/user-categories/conditions.d.ts +14 -0
- package/dist/domain/user-categories/engine.d.ts +13 -0
- package/dist/domain/user-categories/index.d.ts +2 -0
- package/dist/domain/user-categories/index.js +4 -0
- package/dist/domain/user-categories/index.js.map +1 -0
- package/dist/domain/user-categories/types.d.ts +50 -0
- package/dist/i18n/I18nProvider.d.ts +23 -0
- package/dist/i18n/catalogs/en/admin/banners.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/common.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/dashboard.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/discounts.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/index.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/nav.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/orders.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/plugins.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/prices.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/products.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/properties.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/reviews.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/sections.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/settings.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/shipping.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/themes.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/users.d.ts +3 -0
- package/dist/i18n/catalogs/en/admin/validator.d.ts +3 -0
- package/dist/i18n/catalogs/en/app.d.ts +14 -0
- package/dist/i18n/catalogs/en/auth.d.ts +3 -0
- package/dist/i18n/catalogs/en/breadcrumbs.d.ts +3 -0
- package/dist/i18n/catalogs/en/cart.d.ts +3 -0
- package/dist/i18n/catalogs/en/catalog.d.ts +3 -0
- package/dist/i18n/catalogs/en/checkout.d.ts +3 -0
- package/dist/i18n/catalogs/en/common.d.ts +3 -0
- package/dist/i18n/catalogs/en/home.d.ts +3 -0
- package/dist/i18n/catalogs/en/index.d.ts +12 -0
- package/dist/i18n/catalogs/en/nav.d.ts +3 -0
- package/dist/i18n/catalogs/en/product.d.ts +3 -0
- package/dist/i18n/catalogs/en/profile.d.ts +3 -0
- package/dist/i18n/catalogs/en/properties.d.ts +3 -0
- package/dist/i18n/catalogs/en/reviews.d.ts +3 -0
- package/dist/i18n/catalogs/en/validation.d.ts +3 -0
- package/dist/i18n/catalogs/uk/admin/banners.d.ts +57 -0
- package/dist/i18n/catalogs/uk/admin/common.d.ts +16 -0
- package/dist/i18n/catalogs/uk/admin/dashboard.d.ts +18 -0
- package/dist/i18n/catalogs/uk/admin/discounts.d.ts +67 -0
- package/dist/i18n/catalogs/uk/admin/index.d.ts +710 -0
- package/dist/i18n/catalogs/uk/admin/nav.d.ts +32 -0
- package/dist/i18n/catalogs/uk/admin/orders.d.ts +67 -0
- package/dist/i18n/catalogs/uk/admin/plugins.d.ts +53 -0
- package/dist/i18n/catalogs/uk/admin/prices.d.ts +16 -0
- package/dist/i18n/catalogs/uk/admin/products.d.ts +74 -0
- package/dist/i18n/catalogs/uk/admin/properties.d.ts +63 -0
- package/dist/i18n/catalogs/uk/admin/reviews.d.ts +24 -0
- package/dist/i18n/catalogs/uk/admin/sections.d.ts +18 -0
- package/dist/i18n/catalogs/uk/admin/settings.d.ts +11 -0
- package/dist/i18n/catalogs/uk/admin/shipping.d.ts +96 -0
- package/dist/i18n/catalogs/uk/admin/themes.d.ts +21 -0
- package/dist/i18n/catalogs/uk/admin/users.d.ts +96 -0
- package/dist/i18n/catalogs/uk/admin/validator.d.ts +30 -0
- package/dist/i18n/catalogs/uk/app.d.ts +15 -0
- package/dist/i18n/catalogs/uk/auth.d.ts +51 -0
- package/dist/i18n/catalogs/uk/breadcrumbs.d.ts +4 -0
- package/dist/i18n/catalogs/uk/cart.d.ts +21 -0
- package/dist/i18n/catalogs/uk/catalog.d.ts +22 -0
- package/dist/i18n/catalogs/uk/checkout.d.ts +96 -0
- package/dist/i18n/catalogs/uk/common.d.ts +83 -0
- package/dist/i18n/catalogs/uk/home.d.ts +5 -0
- package/dist/i18n/catalogs/uk/index.d.ts +1139 -0
- package/dist/i18n/catalogs/uk/nav.d.ts +7 -0
- package/dist/i18n/catalogs/uk/product.d.ts +25 -0
- package/dist/i18n/catalogs/uk/profile.d.ts +87 -0
- package/dist/i18n/catalogs/uk/properties.d.ts +16 -0
- package/dist/i18n/catalogs/uk/reviews.d.ts +26 -0
- package/dist/i18n/catalogs/uk/validation.d.ts +33 -0
- package/dist/i18n/index.d.ts +3 -0
- package/dist/i18n/index.js +2779 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/translator.d.ts +19 -0
- package/dist/i18n/types.d.ts +14 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin-sdk/definePlugin.d.ts +9 -0
- package/dist/plugin-sdk/index.d.ts +6 -0
- package/dist/plugin-sdk/index.js +266 -0
- package/dist/plugin-sdk/index.js.map +1 -0
- package/dist/plugin-sdk/server/config-db.d.ts +22 -0
- package/dist/plugin-sdk/server/guard.d.ts +17 -0
- package/dist/plugin-sdk/server/index.d.ts +42 -0
- package/dist/plugin-sdk/server/index.js +191 -0
- package/dist/plugin-sdk/server/index.js.map +1 -0
- package/dist/plugin-sdk/server/table-db.d.ts +36 -0
- package/dist/plugin-sdk/types.d.ts +66 -0
- package/dist/plugin-sdk/usePluginConfig.d.ts +22 -0
- package/dist/plugin-sdk/usePluginT.d.ts +19 -0
- package/dist/plugin-sdk/usePluginTable.d.ts +12 -0
- package/dist/plugins/HookRegistry.d.ts +29 -0
- package/dist/plugins/PluginLoader.d.ts +19 -0
- package/dist/plugins/PluginSlot.d.ts +21 -0
- package/dist/plugins/PluginSlot.js +5 -0
- package/dist/plugins/PluginSlot.js.map +1 -0
- package/dist/plugins/adminLifecycle.d.ts +27 -0
- package/dist/plugins/bootstrap.d.ts +16 -0
- package/dist/plugins/bootstrap.js +5 -0
- package/dist/plugins/bootstrap.js.map +1 -0
- package/dist/plugins/hooks.d.ts +67 -0
- package/dist/plugins/index.d.ts +12 -0
- package/dist/plugins/index.js +171 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/pluginRepository.d.ts +19 -0
- package/dist/plugins/server/index.d.ts +25 -0
- package/dist/plugins/server/index.js +95 -0
- package/dist/plugins/server/index.js.map +1 -0
- package/dist/plugins/server/registry-db.d.ts +19 -0
- package/dist/plugins/types.d.ts +126 -0
- package/dist/plugins/types.js +4 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/plugins/validatePluginModule.d.ts +13 -0
- package/dist/profile-ui/AddressesList.d.ts +9 -0
- package/dist/profile-ui/AddressesList.js +4 -0
- package/dist/profile-ui/AddressesList.js.map +1 -0
- package/dist/profile-ui/AvatarUpload.d.ts +28 -0
- package/dist/profile-ui/AvatarUpload.js +4 -0
- package/dist/profile-ui/AvatarUpload.js.map +1 -0
- package/dist/profile-ui/RecipientsList.d.ts +9 -0
- package/dist/profile-ui/RecipientsList.js +4 -0
- package/dist/profile-ui/RecipientsList.js.map +1 -0
- package/dist/profile-ui/index.d.ts +3 -0
- package/dist/profile-ui/index.js +6 -0
- package/dist/profile-ui/index.js.map +1 -0
- package/dist/react-query/EngineProvider.d.ts +9 -0
- package/dist/react-query/hooks.d.ts +8 -0
- package/dist/react-query/index.d.ts +7 -0
- package/dist/react-query/index.js +173 -0
- package/dist/react-query/index.js.map +1 -0
- package/dist/react-query/queries.d.ts +31 -0
- package/dist/react-query/queries.js +4 -0
- package/dist/react-query/queries.js.map +1 -0
- package/dist/react-query/useCart.d.ts +32 -0
- package/dist/react-query/useFormatPrice.d.ts +12 -0
- package/dist/reviews-ui/ProductReviews.d.ts +18 -0
- package/dist/reviews-ui/ProductReviews.js +7 -0
- package/dist/reviews-ui/ProductReviews.js.map +1 -0
- package/dist/reviews-ui/ReviewCard.d.ts +7 -0
- package/dist/reviews-ui/ReviewCard.js +5 -0
- package/dist/reviews-ui/ReviewCard.js.map +1 -0
- package/dist/reviews-ui/ReviewForm.d.ts +25 -0
- package/dist/reviews-ui/ReviewForm.js +5 -0
- package/dist/reviews-ui/ReviewForm.js.map +1 -0
- package/dist/reviews-ui/ReviewRichTextEditor.d.ts +8 -0
- package/dist/reviews-ui/ReviewRichTextEditor.js +4 -0
- package/dist/reviews-ui/ReviewRichTextEditor.js.map +1 -0
- package/dist/reviews-ui/StarRating.d.ts +8 -0
- package/dist/reviews-ui/StarRating.js +4 -0
- package/dist/reviews-ui/StarRating.js.map +1 -0
- package/dist/reviews-ui/index.d.ts +5 -0
- package/dist/reviews-ui/index.js +8 -0
- package/dist/reviews-ui/index.js.map +1 -0
- package/dist/runtime/config.d.ts +42 -0
- package/dist/runtime/index.d.ts +36 -0
- package/dist/runtime/index.js +36 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/schema/auth.d.ts +623 -0
- package/dist/schema/index.d.ts +17 -0
- package/dist/schema/media.d.ts +143 -0
- package/dist/schema/relations.d.ts +202 -0
- package/dist/schema/relations.js +1494 -0
- package/dist/schema/relations.js.map +1 -0
- package/dist/schema/schema.d.ts +7224 -0
- package/dist/schema/schema.js +1085 -0
- package/dist/schema/schema.js.map +1 -0
- package/dist/schema/types.d.ts +74 -0
- package/dist/schema/types.js +3 -0
- package/dist/schema/types.js.map +1 -0
- package/dist/storefront/client.d.ts +7 -0
- package/dist/storefront/index.d.ts +3 -0
- package/dist/storefront/index.js +5 -0
- package/dist/storefront/index.js.map +1 -0
- package/dist/storefront/loaders/addresses.d.ts +47 -0
- package/dist/storefront/loaders/banners.d.ts +19 -0
- package/dist/storefront/loaders/catalog-filters.d.ts +56 -0
- package/dist/storefront/loaders/catalog-products.d.ts +27 -0
- package/dist/storefront/loaders/categories.d.ts +19 -0
- package/dist/storefront/loaders/db.d.ts +42 -0
- package/dist/storefront/loaders/discounts.d.ts +15 -0
- package/dist/storefront/loaders/entities/banner.d.ts +449 -0
- package/dist/storefront/loaders/entities/catalog-product.d.ts +135 -0
- package/dist/storefront/loaders/entities/discount.d.ts +17 -0
- package/dist/storefront/loaders/entities/home-product.d.ts +130 -0
- package/dist/storefront/loaders/entities/modification.d.ts +259 -0
- package/dist/storefront/loaders/entities/order.d.ts +616 -0
- package/dist/storefront/loaders/entities/price.d.ts +108 -0
- package/dist/storefront/loaders/entities/product.d.ts +313 -0
- package/dist/storefront/loaders/entities/property.d.ts +414 -0
- package/dist/storefront/loaders/entities/section.d.ts +293 -0
- package/dist/storefront/loaders/home-sections.d.ts +20 -0
- package/dist/storefront/loaders/home.d.ts +31 -0
- package/dist/storefront/loaders/index.d.ts +48 -0
- package/dist/storefront/loaders/index.js +4 -0
- package/dist/storefront/loaders/index.js.map +1 -0
- package/dist/storefront/loaders/modification-values.d.ts +23 -0
- package/dist/storefront/loaders/order-create.d.ts +52 -0
- package/dist/storefront/loaders/order-statuses.d.ts +8 -0
- package/dist/storefront/loaders/orders.d.ts +27 -0
- package/dist/storefront/loaders/pickup-points.d.ts +6 -0
- package/dist/storefront/loaders/pricing.d.ts +10 -0
- package/dist/storefront/loaders/product-detail.d.ts +22 -0
- package/dist/storefront/loaders/products.d.ts +38 -0
- package/dist/storefront/loaders/profile.d.ts +37 -0
- package/dist/storefront/loaders/properties.d.ts +16 -0
- package/dist/storefront/loaders/property-option.d.ts +18 -0
- package/dist/storefront/loaders/property-values.d.ts +256 -0
- package/dist/storefront/loaders/recipients.d.ts +52 -0
- package/dist/storefront/loaders/reviews-write.d.ts +26 -0
- package/dist/storefront/loaders/reviews.d.ts +57 -0
- package/dist/storefront/loaders/sections.d.ts +13 -0
- package/dist/storefront/loaders/session.d.ts +28 -0
- package/dist/storefront/loaders/shipping.d.ts +57 -0
- package/dist/storefront/loaders/sitemap.d.ts +38 -0
- package/dist/storefront/loaders/stock-info.d.ts +38 -0
- package/dist/storefront/loaders/stock.d.ts +24 -0
- package/dist/storefront/seo/index.d.ts +2 -0
- package/dist/storefront/seo/index.js +4 -0
- package/dist/storefront/seo/index.js.map +1 -0
- package/dist/storefront/seo/robots.d.ts +2 -0
- package/dist/storefront/seo/sitemap.d.ts +11 -0
- package/dist/storefront-routes/active-theme.d.ts +14 -0
- package/dist/storefront-routes/active-theme.js +13 -0
- package/dist/storefront-routes/active-theme.js.map +1 -0
- package/dist/storefront-routes/components/BannerSlider.d.ts +8 -0
- package/dist/storefront-routes/components/BannerSlider.js +3 -0
- package/dist/storefront-routes/components/BannerSlider.js.map +1 -0
- package/dist/storefront-routes/components/ProductCarousel.d.ts +20 -0
- package/dist/storefront-routes/components/ProductCarousel.js +3 -0
- package/dist/storefront-routes/components/ProductCarousel.js.map +1 -0
- package/dist/storefront-routes/components/SetPasswordForm.d.ts +8 -0
- package/dist/storefront-routes/components/SetPasswordForm.js +3 -0
- package/dist/storefront-routes/components/SetPasswordForm.js.map +1 -0
- package/dist/storefront-routes/components/SsrProductGrid.d.ts +12 -0
- package/dist/storefront-routes/components/SsrProductGrid.js +3 -0
- package/dist/storefront-routes/components/SsrProductGrid.js.map +1 -0
- package/dist/storefront-routes/index.d.ts +6 -0
- package/dist/storefront-routes/index.js +14 -0
- package/dist/storefront-routes/index.js.map +1 -0
- package/dist/storefront-routes/pages/Auth.d.ts +2 -0
- package/dist/storefront-routes/pages/Auth.js +400 -0
- package/dist/storefront-routes/pages/Auth.js.map +1 -0
- package/dist/storefront-routes/pages/AuthInvite.d.ts +1 -0
- package/dist/storefront-routes/pages/AuthInvite.js +56 -0
- package/dist/storefront-routes/pages/AuthInvite.js.map +1 -0
- package/dist/storefront-routes/pages/AuthSetPassword.d.ts +12 -0
- package/dist/storefront-routes/pages/AuthSetPassword.js +40 -0
- package/dist/storefront-routes/pages/AuthSetPassword.js.map +1 -0
- package/dist/storefront-routes/pages/Cart.d.ts +5 -0
- package/dist/storefront-routes/pages/Cart.js +42 -0
- package/dist/storefront-routes/pages/Cart.js.map +1 -0
- package/dist/storefront-routes/pages/Catalog.d.ts +12 -0
- package/dist/storefront-routes/pages/Catalog.js +40 -0
- package/dist/storefront-routes/pages/Catalog.js.map +1 -0
- package/dist/storefront-routes/pages/CatalogSection.d.ts +13 -0
- package/dist/storefront-routes/pages/CatalogSection.js +65 -0
- package/dist/storefront-routes/pages/CatalogSection.js.map +1 -0
- package/dist/storefront-routes/pages/Checkout.d.ts +1 -0
- package/dist/storefront-routes/pages/Checkout.js +281 -0
- package/dist/storefront-routes/pages/Checkout.js.map +1 -0
- package/dist/storefront-routes/pages/Home.d.ts +15 -0
- package/dist/storefront-routes/pages/Home.js +10 -0
- package/dist/storefront-routes/pages/Home.js.map +1 -0
- package/dist/storefront-routes/pages/OrderSuccess.d.ts +1 -0
- package/dist/storefront-routes/pages/OrderSuccess.js +186 -0
- package/dist/storefront-routes/pages/OrderSuccess.js.map +1 -0
- package/dist/storefront-routes/pages/ProductDetail.d.ts +11 -0
- package/dist/storefront-routes/pages/ProductDetail.js +475 -0
- package/dist/storefront-routes/pages/ProductDetail.js.map +1 -0
- package/dist/storefront-routes/pages/Profile.d.ts +1 -0
- package/dist/storefront-routes/pages/Profile.js +133 -0
- package/dist/storefront-routes/pages/Profile.js.map +1 -0
- package/dist/storefront-routes/pages/ProfileOrderDetail.d.ts +1 -0
- package/dist/storefront-routes/pages/ProfileOrderDetail.js +280 -0
- package/dist/storefront-routes/pages/ProfileOrderDetail.js.map +1 -0
- package/dist/storefront-routes/pages/ProfileOrders.d.ts +1 -0
- package/dist/storefront-routes/pages/ProfileOrders.js +131 -0
- package/dist/storefront-routes/pages/ProfileOrders.js.map +1 -0
- package/dist/storefront-routes/pages/ProfileSettings.d.ts +1 -0
- package/dist/storefront-routes/pages/ProfileSettings.js +344 -0
- package/dist/storefront-routes/pages/ProfileSettings.js.map +1 -0
- package/dist/storefront-routes/pages/Properties.d.ts +5 -0
- package/dist/storefront-routes/pages/Properties.js +53 -0
- package/dist/storefront-routes/pages/Properties.js.map +1 -0
- package/dist/storefront-routes/pages/PropertyDetail.d.ts +6 -0
- package/dist/storefront-routes/pages/PropertyDetail.js +78 -0
- package/dist/storefront-routes/pages/PropertyDetail.js.map +1 -0
- package/dist/storefront-routes/pages/PropertyPage.d.ts +7 -0
- package/dist/storefront-routes/pages/PropertyPage.js +131 -0
- package/dist/storefront-routes/pages/PropertyPage.js.map +1 -0
- package/dist/storefront-routes/pages/cart/breadcrumbs.d.ts +4 -0
- package/dist/storefront-routes/pages/cart/slots.d.ts +2 -0
- package/dist/storefront-routes/pages/catalog/active-filter-chips.d.ts +20 -0
- package/dist/storefront-routes/pages/catalog/breadcrumbs.d.ts +6 -0
- package/dist/storefront-routes/pages/catalog/filter-predicates.d.ts +21 -0
- package/dist/storefront-routes/pages/catalog/filtering.d.ts +25 -0
- package/dist/storefront-routes/pages/catalog/slot-context.d.ts +34 -0
- package/dist/storefront-routes/pages/catalog/slots.d.ts +3 -0
- package/dist/storefront-routes/pages/catalog/types.d.ts +33 -0
- package/dist/storefront-routes/pages/catalog/useActiveFilters.d.ts +17 -0
- package/dist/storefront-routes/pages/catalog/useCatalogController.d.ts +19 -0
- package/dist/storefront-routes/pages/catalog/useCatalogProductsQuery.d.ts +18 -0
- package/dist/storefront-routes/pages/catalog/useCatalogQueries.d.ts +17 -0
- package/dist/storefront-routes/pages/catalog/usePricedProducts.d.ts +38 -0
- package/dist/storefront-routes/pages/home/SectionProductCarousel.d.ts +11 -0
- package/dist/storefront-routes/pages/home/queries.d.ts +26 -0
- package/dist/storefront-routes/pages/home/slot-context.d.ts +26 -0
- package/dist/storefront-routes/pages/home/slots.d.ts +3 -0
- package/dist/storefront-routes/pages/home/toCardViewModel.d.ts +9 -0
- package/dist/storefront-routes/pages/home/types.d.ts +18 -0
- package/dist/storefront-routes/pages/product-detail/breadcrumbs.d.ts +10 -0
- package/dist/storefront-routes/pages/product-detail/cart-item.d.ts +18 -0
- package/dist/storefront-routes/pages/product-detail/pricing.d.ts +20 -0
- package/dist/storefront-routes/pages/product-detail/slot-context.d.ts +39 -0
- package/dist/storefront-routes/pages/product-detail/slots.d.ts +3 -0
- package/dist/storefront-routes/pages/product-detail/types.d.ts +51 -0
- package/dist/storefront-routes/pages/product-detail/useModificationData.d.ts +18 -0
- package/dist/storefront-routes/pages/product-detail/useModificationSelection.d.ts +12 -0
- package/dist/storefront-routes/pages/product-detail/useProductContent.d.ts +15 -0
- package/dist/storefront-routes/pages/product-detail/useProductPricing.d.ts +14 -0
- package/dist/storefront-routes/pages/product-detail/useProductQuery.d.ts +10 -0
- package/dist/storefront-routes/seo/interceptor.d.ts +28 -0
- package/dist/storefront-routes/seo/interceptor.js +45 -0
- package/dist/storefront-routes/seo/interceptor.js.map +1 -0
- package/dist/storefront-routes/seo/robots.d.ts +2 -0
- package/dist/storefront-routes/seo/robots.js +13 -0
- package/dist/storefront-routes/seo/robots.js.map +1 -0
- package/dist/storefront-routes/seo/sitemap.d.ts +7 -0
- package/dist/storefront-routes/seo/sitemap.js +17 -0
- package/dist/storefront-routes/seo/sitemap.js.map +1 -0
- package/dist/storefront-routes/server/auth.d.ts +24 -0
- package/dist/storefront-routes/server/auth.js +24 -0
- package/dist/storefront-routes/server/auth.js.map +1 -0
- package/dist/storefront-routes/server/catalog.d.ts +50 -0
- package/dist/storefront-routes/server/catalog.js +4 -0
- package/dist/storefront-routes/server/catalog.js.map +1 -0
- package/dist/storefront-routes/server/checkout-input.d.ts +67 -0
- package/dist/storefront-routes/server/checkout-input.js +3 -0
- package/dist/storefront-routes/server/checkout-input.js.map +1 -0
- package/dist/storefront-routes/server/checkout.d.ts +51 -0
- package/dist/storefront-routes/server/checkout.js +4 -0
- package/dist/storefront-routes/server/checkout.js.map +1 -0
- package/dist/storefront-routes/server/home.d.ts +21 -0
- package/dist/storefront-routes/server/home.js +3 -0
- package/dist/storefront-routes/server/home.js.map +1 -0
- package/dist/storefront-routes/server/invite.d.ts +11 -0
- package/dist/storefront-routes/server/invite.js +3 -0
- package/dist/storefront-routes/server/invite.js.map +1 -0
- package/dist/storefront-routes/server/is-admin.d.ts +22 -0
- package/dist/storefront-routes/server/is-admin.js +3 -0
- package/dist/storefront-routes/server/is-admin.js.map +1 -0
- package/dist/storefront-routes/server/order-view.d.ts +18 -0
- package/dist/storefront-routes/server/order-view.js +3 -0
- package/dist/storefront-routes/server/order-view.js.map +1 -0
- package/dist/storefront-routes/server/product-list-item.d.ts +33 -0
- package/dist/storefront-routes/server/product-list-item.js +3 -0
- package/dist/storefront-routes/server/product-list-item.js.map +1 -0
- package/dist/storefront-routes/server/products.d.ts +23 -0
- package/dist/storefront-routes/server/products.js +3 -0
- package/dist/storefront-routes/server/products.js.map +1 -0
- package/dist/storefront-routes/server/profile-orders.d.ts +41 -0
- package/dist/storefront-routes/server/profile-orders.js +3 -0
- package/dist/storefront-routes/server/profile-orders.js.map +1 -0
- package/dist/storefront-routes/server/profile.d.ts +23 -0
- package/dist/storefront-routes/server/profile.js +3 -0
- package/dist/storefront-routes/server/profile.js.map +1 -0
- package/dist/storefront-routes/server/properties.d.ts +12 -0
- package/dist/storefront-routes/server/properties.js +3 -0
- package/dist/storefront-routes/server/properties.js.map +1 -0
- package/dist/storefront-routes/server/revalidate-theme.d.ts +13 -0
- package/dist/storefront-routes/server/revalidate-theme.js +15 -0
- package/dist/storefront-routes/server/revalidate-theme.js.map +1 -0
- package/dist/storefront-routes/server/theme-record.d.ts +32 -0
- package/dist/storefront-routes/server/theme-record.js +3 -0
- package/dist/storefront-routes/server/theme-record.js.map +1 -0
- package/dist/storefront-routes/server/themes.d.ts +9 -0
- package/dist/storefront-routes/server/themes.js +10 -0
- package/dist/storefront-routes/server/themes.js.map +1 -0
- package/dist/storefront-routes/shells/ProtectedShell.d.ts +10 -0
- package/dist/storefront-routes/shells/ProtectedShell.js +6 -0
- package/dist/storefront-routes/shells/ProtectedShell.js.map +1 -0
- package/dist/storefront-routes/shells/StorefrontShell.d.ts +10 -0
- package/dist/storefront-routes/shells/StorefrontShell.js +6 -0
- package/dist/storefront-routes/shells/StorefrontShell.js.map +1 -0
- package/dist/storefront-routes/shells/ThemeFonts.d.ts +18 -0
- package/dist/storefront-routes/shells/ThemeFonts.js +3 -0
- package/dist/storefront-routes/shells/ThemeFonts.js.map +1 -0
- package/dist/storefront-routes/shells/ThemeTokens.d.ts +12 -0
- package/dist/storefront-routes/shells/ThemeTokens.js +3 -0
- package/dist/storefront-routes/shells/ThemeTokens.js.map +1 -0
- package/dist/storefront-routes/shells/useActiveThemeModule.d.ts +9 -0
- package/dist/storefront-routes/shells/useActiveThemeModule.js +3 -0
- package/dist/storefront-routes/shells/useActiveThemeModule.js.map +1 -0
- package/dist/storefront-routes/views/CartView.d.ts +10 -0
- package/dist/storefront-routes/views/CartView.js +4 -0
- package/dist/storefront-routes/views/CartView.js.map +1 -0
- package/dist/storefront-routes/views/CatalogLayout.d.ts +16 -0
- package/dist/storefront-routes/views/CatalogLayout.js +4 -0
- package/dist/storefront-routes/views/CatalogLayout.js.map +1 -0
- package/dist/storefront-routes/views/CatalogSectionView.d.ts +7 -0
- package/dist/storefront-routes/views/CatalogSectionView.js +6 -0
- package/dist/storefront-routes/views/CatalogSectionView.js.map +1 -0
- package/dist/storefront-routes/views/CatalogToolbar.d.ts +9 -0
- package/dist/storefront-routes/views/CatalogToolbar.js +3 -0
- package/dist/storefront-routes/views/CatalogToolbar.js.map +1 -0
- package/dist/storefront-routes/views/CatalogView.d.ts +9 -0
- package/dist/storefront-routes/views/CatalogView.js +6 -0
- package/dist/storefront-routes/views/CatalogView.js.map +1 -0
- package/dist/storefront-routes/views/HomeView.d.ts +14 -0
- package/dist/storefront-routes/views/HomeView.js +6 -0
- package/dist/storefront-routes/views/HomeView.js.map +1 -0
- package/dist/storefront-routes/views/ProductDetailInfo.d.ts +9 -0
- package/dist/storefront-routes/views/ProductDetailInfo.js +3 -0
- package/dist/storefront-routes/views/ProductDetailInfo.js.map +1 -0
- package/dist/storefront-routes/views/ProductDetailSections.d.ts +10 -0
- package/dist/storefront-routes/views/ProductDetailSections.js +3 -0
- package/dist/storefront-routes/views/ProductDetailSections.js.map +1 -0
- package/dist/storefront-routes/views/ProductDetailView.d.ts +10 -0
- package/dist/storefront-routes/views/ProductDetailView.js +6 -0
- package/dist/storefront-routes/views/ProductDetailView.js.map +1 -0
- package/dist/storefront-routes/views/StorefrontBreadcrumbs.d.ts +9 -0
- package/dist/storefront-routes/views/StorefrontBreadcrumbs.js +3 -0
- package/dist/storefront-routes/views/StorefrontBreadcrumbs.js.map +1 -0
- package/dist/storefront-routes/views/slots/CartSlots.d.ts +15 -0
- package/dist/storefront-routes/views/slots/CartSlots.js +3 -0
- package/dist/storefront-routes/views/slots/CartSlots.js.map +1 -0
- package/dist/storefront-routes/views/slots/CartSummary.d.ts +11 -0
- package/dist/storefront-routes/views/slots/CartSummary.js +3 -0
- package/dist/storefront-routes/views/slots/CartSummary.js.map +1 -0
- package/dist/storefront-routes/views/slots/CatalogFilters.d.ts +11 -0
- package/dist/storefront-routes/views/slots/CatalogFilters.js +3 -0
- package/dist/storefront-routes/views/slots/CatalogFilters.js.map +1 -0
- package/dist/storefront-routes/views/slots/CatalogProductGrid.d.ts +26 -0
- package/dist/storefront-routes/views/slots/CatalogProductGrid.js +4 -0
- package/dist/storefront-routes/views/slots/CatalogProductGrid.js.map +1 -0
- package/dist/storefront-routes/views/slots/CatalogSectionChips.d.ts +24 -0
- package/dist/storefront-routes/views/slots/CatalogSectionChips.js +3 -0
- package/dist/storefront-routes/views/slots/CatalogSectionChips.js.map +1 -0
- package/dist/storefront-routes/views/slots/CatalogToolbarSlots.d.ts +32 -0
- package/dist/storefront-routes/views/slots/CatalogToolbarSlots.js +3 -0
- package/dist/storefront-routes/views/slots/CatalogToolbarSlots.js.map +1 -0
- package/dist/storefront-routes/views/slots/HomeSectionCarousel.d.ts +10 -0
- package/dist/storefront-routes/views/slots/HomeSectionCarousel.js +5 -0
- package/dist/storefront-routes/views/slots/HomeSectionCarousel.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductAddToCart.d.ts +16 -0
- package/dist/storefront-routes/views/slots/ProductAddToCart.js +3 -0
- package/dist/storefront-routes/views/slots/ProductAddToCart.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductContentSlots.d.ts +19 -0
- package/dist/storefront-routes/views/slots/ProductContentSlots.js +3 -0
- package/dist/storefront-routes/views/slots/ProductContentSlots.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductModificationPicker.d.ts +16 -0
- package/dist/storefront-routes/views/slots/ProductModificationPicker.js +3 -0
- package/dist/storefront-routes/views/slots/ProductModificationPicker.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductPluginSlots.d.ts +16 -0
- package/dist/storefront-routes/views/slots/ProductPluginSlots.js +3 -0
- package/dist/storefront-routes/views/slots/ProductPluginSlots.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductPriceBlock.d.ts +13 -0
- package/dist/storefront-routes/views/slots/ProductPriceBlock.js +3 -0
- package/dist/storefront-routes/views/slots/ProductPriceBlock.js.map +1 -0
- package/dist/storefront-routes/views/slots/ProductStockBadge.d.ts +14 -0
- package/dist/storefront-routes/views/slots/ProductStockBadge.js +3 -0
- package/dist/storefront-routes/views/slots/ProductStockBadge.js.map +1 -0
- package/dist/storefront-routes/views/useStorefrontViews.d.ts +17 -0
- package/dist/storefront-routes/views/useStorefrontViews.js +4 -0
- package/dist/storefront-routes/views/useStorefrontViews.js.map +1 -0
- package/dist/supabase/SupabaseProvider.d.ts +16 -0
- package/dist/supabase/SupabaseProvider.js +27 -0
- package/dist/supabase/SupabaseProvider.js.map +1 -0
- package/dist/supabase/anon-client.d.ts +73 -0
- package/dist/supabase/anon-client.js +12 -0
- package/dist/supabase/anon-client.js.map +1 -0
- package/dist/supabase/browser-client.d.ts +65 -0
- package/dist/supabase/browser-client.js +5 -0
- package/dist/supabase/browser-client.js.map +1 -0
- package/dist/supabase/database.d.ts +2121 -0
- package/dist/supabase/index.d.ts +4 -0
- package/dist/supabase/index.js +36 -0
- package/dist/supabase/index.js.map +1 -0
- package/dist/supabase/keys.d.ts +24 -0
- package/dist/supabase/keys.js +4 -0
- package/dist/supabase/keys.js.map +1 -0
- package/dist/supabase/server-client.d.ts +76 -0
- package/dist/supabase/server-client.js +28 -0
- package/dist/supabase/server-client.js.map +1 -0
- package/dist/themes/ThemeContext.d.ts +19 -0
- package/dist/themes/ThemeContext.js +7 -0
- package/dist/themes/ThemeContext.js.map +1 -0
- package/dist/themes/ThemeRegistry.d.ts +40 -0
- package/dist/themes/ThemeRegistry.js +5 -0
- package/dist/themes/ThemeRegistry.js.map +1 -0
- package/dist/themes/applyTokens.d.ts +9 -0
- package/dist/themes/applyTokens.js +4 -0
- package/dist/themes/applyTokens.js.map +1 -0
- package/dist/themes/bootstrapThemes.d.ts +23 -0
- package/dist/themes/bootstrapThemes.js +6 -0
- package/dist/themes/bootstrapThemes.js.map +1 -0
- package/dist/themes/conformance/assertThemeViewsConformance.d.ts +41 -0
- package/dist/themes/conformance/boundary.d.ts +24 -0
- package/dist/themes/conformance/cases.d.ts +15 -0
- package/dist/themes/conformance/index.d.ts +2 -0
- package/dist/themes/conformance/index.js +235 -0
- package/dist/themes/conformance/index.js.map +1 -0
- package/dist/themes/conformance/render.d.ts +21 -0
- package/dist/themes/conformance/stubs.d.ts +5 -0
- package/dist/themes/index.d.ts +7 -0
- package/dist/themes/index.js +11 -0
- package/dist/themes/index.js.map +1 -0
- package/dist/themes/safeFontStylesheets.d.ts +16 -0
- package/dist/themes/safeFontStylesheets.js +36 -0
- package/dist/themes/safeFontStylesheets.js.map +1 -0
- package/dist/themes/server/index.d.ts +19 -0
- package/dist/themes/server/index.js +62 -0
- package/dist/themes/server/index.js.map +1 -0
- package/dist/themes/server/registry-db.d.ts +25 -0
- package/dist/themes/theme-context.d.ts +13 -0
- package/dist/themes/theme-settings.d.ts +10 -0
- package/dist/themes/types.d.ts +203 -0
- package/dist/themes/types.js +3 -0
- package/dist/themes/types.js.map +1 -0
- package/dist/themes/useThemeT.d.ts +29 -0
- package/dist/themes/useThemeT.js +8 -0
- package/dist/themes/useThemeT.js.map +1 -0
- package/dist/themes/validateThemeModule.d.ts +10 -0
- package/dist/themes/validateThemeModule.js +4 -0
- package/dist/themes/validateThemeModule.js.map +1 -0
- package/dist/themes/validateThemeViews.d.ts +11 -0
- package/dist/ui/accordion.d.ts +7 -0
- package/dist/ui/accordion.js +4 -0
- package/dist/ui/accordion.js.map +1 -0
- package/dist/ui/alert-dialog.d.ts +20 -0
- package/dist/ui/alert-dialog.js +5 -0
- package/dist/ui/alert-dialog.js.map +1 -0
- package/dist/ui/alert.d.ts +8 -0
- package/dist/ui/alert.js +4 -0
- package/dist/ui/alert.js.map +1 -0
- package/dist/ui/aspect-ratio.d.ts +3 -0
- package/dist/ui/aspect-ratio.js +4 -0
- package/dist/ui/aspect-ratio.js.map +1 -0
- package/dist/ui/avatar.d.ts +6 -0
- package/dist/ui/avatar.js +4 -0
- package/dist/ui/avatar.js.map +1 -0
- package/dist/ui/badge.d.ts +9 -0
- package/dist/ui/badge.js +4 -0
- package/dist/ui/badge.js.map +1 -0
- package/dist/ui/breadcrumb.d.ts +19 -0
- package/dist/ui/breadcrumb.js +4 -0
- package/dist/ui/breadcrumb.js.map +1 -0
- package/dist/ui/button.d.ts +11 -0
- package/dist/ui/button.js +4 -0
- package/dist/ui/button.js.map +1 -0
- package/dist/ui/calendar.d.ts +8 -0
- package/dist/ui/calendar.js +5 -0
- package/dist/ui/calendar.js.map +1 -0
- package/dist/ui/card.d.ts +8 -0
- package/dist/ui/card.js +4 -0
- package/dist/ui/card.js.map +1 -0
- package/dist/ui/carousel.d.ts +18 -0
- package/dist/ui/carousel.js +5 -0
- package/dist/ui/carousel.js.map +1 -0
- package/dist/ui/chart.d.ts +59 -0
- package/dist/ui/chart.js +4 -0
- package/dist/ui/chart.js.map +1 -0
- package/dist/ui/checkbox.d.ts +4 -0
- package/dist/ui/checkbox.js +4 -0
- package/dist/ui/checkbox.js.map +1 -0
- package/dist/ui/collapsible.d.ts +5 -0
- package/dist/ui/collapsible.js +4 -0
- package/dist/ui/collapsible.js.map +1 -0
- package/dist/ui/command.d.ts +82 -0
- package/dist/ui/command.js +5 -0
- package/dist/ui/command.js.map +1 -0
- package/dist/ui/context-menu.d.ts +27 -0
- package/dist/ui/context-menu.js +4 -0
- package/dist/ui/context-menu.js.map +1 -0
- package/dist/ui/dialog.d.ts +19 -0
- package/dist/ui/dialog.js +4 -0
- package/dist/ui/dialog.js.map +1 -0
- package/dist/ui/drawer.d.ts +22 -0
- package/dist/ui/drawer.js +4 -0
- package/dist/ui/drawer.js.map +1 -0
- package/dist/ui/dropdown-menu.d.ts +27 -0
- package/dist/ui/dropdown-menu.js +4 -0
- package/dist/ui/dropdown-menu.js.map +1 -0
- package/dist/ui/form.d.ts +25 -0
- package/dist/ui/form.js +5 -0
- package/dist/ui/form.js.map +1 -0
- package/dist/ui/hover-card.d.ts +6 -0
- package/dist/ui/hover-card.js +4 -0
- package/dist/ui/hover-card.js.map +1 -0
- package/dist/ui/index.d.ts +52 -0
- package/dist/ui/index.js +54 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/input-otp.d.ts +34 -0
- package/dist/ui/input-otp.js +4 -0
- package/dist/ui/input-otp.js.map +1 -0
- package/dist/ui/input.d.ts +3 -0
- package/dist/ui/input.js +4 -0
- package/dist/ui/input.js.map +1 -0
- package/dist/ui/label.d.ts +5 -0
- package/dist/ui/label.js +4 -0
- package/dist/ui/label.js.map +1 -0
- package/dist/ui/menubar.d.ts +28 -0
- package/dist/ui/menubar.js +4 -0
- package/dist/ui/menubar.js.map +1 -0
- package/dist/ui/navigation-menu.d.ts +12 -0
- package/dist/ui/navigation-menu.js +4 -0
- package/dist/ui/navigation-menu.js.map +1 -0
- package/dist/ui/pagination.d.ts +28 -0
- package/dist/ui/pagination.js +5 -0
- package/dist/ui/pagination.js.map +1 -0
- package/dist/ui/popover.d.ts +6 -0
- package/dist/ui/popover.js +4 -0
- package/dist/ui/popover.js.map +1 -0
- package/dist/ui/progress.d.ts +4 -0
- package/dist/ui/progress.js +4 -0
- package/dist/ui/progress.js.map +1 -0
- package/dist/ui/radio-group.d.ts +5 -0
- package/dist/ui/radio-group.js +4 -0
- package/dist/ui/radio-group.js.map +1 -0
- package/dist/ui/resizable.d.ts +7 -0
- package/dist/ui/resizable.js +4 -0
- package/dist/ui/resizable.js.map +1 -0
- package/dist/ui/scroll-area.d.ts +5 -0
- package/dist/ui/scroll-area.js +4 -0
- package/dist/ui/scroll-area.js.map +1 -0
- package/dist/ui/select.d.ts +13 -0
- package/dist/ui/select.js +4 -0
- package/dist/ui/select.js.map +1 -0
- package/dist/ui/separator.d.ts +4 -0
- package/dist/ui/separator.js +4 -0
- package/dist/ui/separator.js.map +1 -0
- package/dist/ui/sheet.d.ts +25 -0
- package/dist/ui/sheet.js +4 -0
- package/dist/ui/sheet.js.map +1 -0
- package/dist/ui/sidebar.d.ts +66 -0
- package/dist/ui/sidebar.js +10 -0
- package/dist/ui/sidebar.js.map +1 -0
- package/dist/ui/skeleton.d.ts +2 -0
- package/dist/ui/skeleton.js +4 -0
- package/dist/ui/skeleton.js.map +1 -0
- package/dist/ui/slider.d.ts +4 -0
- package/dist/ui/slider.js +4 -0
- package/dist/ui/slider.js.map +1 -0
- package/dist/ui/sonner.d.ts +4 -0
- package/dist/ui/sonner.js +4 -0
- package/dist/ui/sonner.js.map +1 -0
- package/dist/ui/switch.d.ts +4 -0
- package/dist/ui/switch.js +4 -0
- package/dist/ui/switch.js.map +1 -0
- package/dist/ui/table.d.ts +10 -0
- package/dist/ui/table.js +4 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/tabs.d.ts +7 -0
- package/dist/ui/tabs.js +4 -0
- package/dist/ui/tabs.js.map +1 -0
- package/dist/ui/textarea.d.ts +5 -0
- package/dist/ui/textarea.js +4 -0
- package/dist/ui/textarea.js.map +1 -0
- package/dist/ui/toast.d.ts +15 -0
- package/dist/ui/toast.js +4 -0
- package/dist/ui/toast.js.map +1 -0
- package/dist/ui/toaster.d.ts +1 -0
- package/dist/ui/toaster.js +5 -0
- package/dist/ui/toaster.js.map +1 -0
- package/dist/ui/toggle-group.d.ts +12 -0
- package/dist/ui/toggle-group.js +5 -0
- package/dist/ui/toggle-group.js.map +1 -0
- package/dist/ui/toggle.d.ts +12 -0
- package/dist/ui/toggle.js +4 -0
- package/dist/ui/toggle.js.map +1 -0
- package/dist/ui/tooltip.d.ts +7 -0
- package/dist/ui/tooltip.js +4 -0
- package/dist/ui/tooltip.js.map +1 -0
- package/dist/ui/use-mobile.d.ts +1 -0
- package/dist/ui/use-mobile.js +4 -0
- package/dist/ui/use-mobile.js.map +1 -0
- package/dist/ui/use-toast.d.ts +49 -0
- package/dist/ui/use-toast.js +4 -0
- package/dist/ui/use-toast.js.map +1 -0
- package/dist/ui/utils.d.ts +2 -0
- package/dist/ui/utils.js +4 -0
- package/dist/ui/utils.js.map +1 -0
- package/migrations/0000_prelude.sql +100 -0
- package/migrations/0001_init.sql +790 -0
- package/migrations/0002_grants.sql +190 -0
- package/migrations/0003_seed.sql +74 -0
- package/migrations/README.md +71 -0
- package/migrations/demo/demo-seed.sql +240 -0
- package/package.json +551 -0
- package/routes/admin/.gitkeep +0 -0
- package/routes/admin/admin/banners/$bannerId.tsx +6 -0
- package/routes/admin/admin/banners/index.tsx +6 -0
- package/routes/admin/admin/discounts/$discountId.tsx +9 -0
- package/routes/admin/admin/discounts/groups/$groupId.tsx +9 -0
- package/routes/admin/admin/discounts/index.tsx +6 -0
- package/routes/admin/admin/index.tsx +6 -0
- package/routes/admin/admin/languages/index.tsx +6 -0
- package/routes/admin/admin/order-statuses/index.tsx +6 -0
- package/routes/admin/admin/orders/$orderId.tsx +6 -0
- package/routes/admin/admin/orders/index.tsx +6 -0
- package/routes/admin/admin/plugins/$pluginId/settings.tsx +6 -0
- package/routes/admin/admin/plugins/index.tsx +6 -0
- package/routes/admin/admin/price-types/$priceTypeId.tsx +6 -0
- package/routes/admin/admin/price-types/index.tsx +6 -0
- package/routes/admin/admin/price-validator/index.tsx +6 -0
- package/routes/admin/admin/products/$productId.tsx +6 -0
- package/routes/admin/admin/products/index.tsx +6 -0
- package/routes/admin/admin/properties/$propertyId/index.tsx +6 -0
- package/routes/admin/admin/properties/$propertyId/options/$optionId.tsx +8 -0
- package/routes/admin/admin/properties/index.tsx +6 -0
- package/routes/admin/admin/reviews/$reviewId.tsx +6 -0
- package/routes/admin/admin/reviews/index.tsx +6 -0
- package/routes/admin/admin/sections/$sectionId.tsx +6 -0
- package/routes/admin/admin/sections/index.tsx +6 -0
- package/routes/admin/admin/service-requests/index.tsx +6 -0
- package/routes/admin/admin/services/index.tsx +6 -0
- package/routes/admin/admin/settings/index.tsx +6 -0
- package/routes/admin/admin/shipping/index.tsx +6 -0
- package/routes/admin/admin/shipping/methods/$methodId.tsx +6 -0
- package/routes/admin/admin/shipping/methods/index.tsx +6 -0
- package/routes/admin/admin/shipping/pickup-points/$pointId.tsx +6 -0
- package/routes/admin/admin/shipping/pickup-points/index.tsx +6 -0
- package/routes/admin/admin/shipping/zones/$zoneId.tsx +6 -0
- package/routes/admin/admin/shipping/zones/index.tsx +6 -0
- package/routes/admin/admin/themes/$themeId/settings.tsx +6 -0
- package/routes/admin/admin/themes/index.tsx +6 -0
- package/routes/admin/admin/user-categories/$categoryId.tsx +6 -0
- package/routes/admin/admin/user-categories/index.tsx +6 -0
- package/routes/admin/admin/user-categories/rules/$ruleId.tsx +6 -0
- package/routes/admin/admin/user-categories/rules/index.tsx +6 -0
- package/routes/admin/admin/users/$userId.tsx +6 -0
- package/routes/admin/admin/users/index.tsx +6 -0
- package/routes/admin/admin.tsx +59 -0
- package/routes/storefront/_protected/profile/index.tsx +9 -0
- package/routes/storefront/_protected/profile/orders/$orderId.tsx +9 -0
- package/routes/storefront/_protected/profile/orders/index.tsx +9 -0
- package/routes/storefront/_protected/profile/settings.tsx +9 -0
- package/routes/storefront/_protected.tsx +45 -0
- package/routes/storefront/_storefront/cart.tsx +10 -0
- package/routes/storefront/_storefront/catalog/$sectionSlug/$productSlug.tsx +92 -0
- package/routes/storefront/_storefront/catalog/$sectionSlug/index.tsx +49 -0
- package/routes/storefront/_storefront/catalog/index.tsx +36 -0
- package/routes/storefront/_storefront/checkout.tsx +10 -0
- package/routes/storefront/_storefront/index.tsx +34 -0
- package/routes/storefront/_storefront/order-success/$orderId.tsx +13 -0
- package/routes/storefront/_storefront/properties/$propertySlug/$optionSlug.tsx +45 -0
- package/routes/storefront/_storefront/properties/$propertySlug/index.tsx +32 -0
- package/routes/storefront/_storefront/properties/index.tsx +27 -0
- package/routes/storefront/_storefront.tsx +32 -0
- package/routes/storefront/api/auth/$.tsx +28 -0
- package/routes/storefront/api/guest-order.tsx +102 -0
- package/routes/storefront/api/health.tsx +59 -0
- package/routes/storefront/api/revalidate-theme.tsx +20 -0
- package/routes/storefront/auth/index.tsx +30 -0
- package/routes/storefront/auth/invite.tsx +18 -0
- package/routes/storefront/auth/set-password.tsx +16 -0
- package/skills/redesign-from-reference/SKILL.md +648 -0
- package/skills/redesign-from-reference/scripts/discover.mjs +122 -0
- package/skills/redesign-from-reference/scripts/inspect.mjs +116 -0
- package/skills/redesign-from-reference/scripts/lib/browser-fonts.mjs +83 -0
- package/skills/redesign-from-reference/scripts/lib/browser-hover.mjs +68 -0
- package/skills/redesign-from-reference/scripts/lib/browser-keyframes.mjs +62 -0
- package/skills/redesign-from-reference/scripts/lib/browser-motion.mjs +104 -0
- package/skills/redesign-from-reference/scripts/lib/browser-reveal.mjs +78 -0
- package/skills/redesign-from-reference/scripts/lib/browser-sample.mjs +123 -0
- package/skills/redesign-from-reference/scripts/lib/browser.mjs +145 -0
- package/skills/redesign-from-reference/scripts/lib/classify-pairs.mjs +88 -0
- package/skills/redesign-from-reference/scripts/lib/classify-structure.mjs +109 -0
- package/skills/redesign-from-reference/scripts/lib/classify-terms.mjs +126 -0
- package/skills/redesign-from-reference/scripts/lib/classify.mjs +126 -0
- package/skills/redesign-from-reference/scripts/lib/cli-entry.mjs +22 -0
- package/skills/redesign-from-reference/scripts/lib/cluster.mjs +95 -0
- package/skills/redesign-from-reference/scripts/lib/collect-links.mjs +57 -0
- package/skills/redesign-from-reference/scripts/lib/color-tokens.mjs +135 -0
- package/skills/redesign-from-reference/scripts/lib/color.mjs +150 -0
- package/skills/redesign-from-reference/scripts/lib/contrast.mjs +57 -0
- package/skills/redesign-from-reference/scripts/lib/fonts.mjs +67 -0
- package/skills/redesign-from-reference/scripts/lib/hover-sweep.mjs +150 -0
- package/skills/redesign-from-reference/scripts/lib/inspect-page.mjs +110 -0
- package/skills/redesign-from-reference/scripts/lib/inspection-version.mjs +38 -0
- package/skills/redesign-from-reference/scripts/lib/map.mjs +69 -0
- package/skills/redesign-from-reference/scripts/lib/merge.mjs +150 -0
- package/skills/redesign-from-reference/scripts/lib/motion-detect.mjs +128 -0
- package/skills/redesign-from-reference/scripts/lib/motion.mjs +126 -0
- package/skills/redesign-from-reference/scripts/lib/sample.mjs +66 -0
- package/skills/redesign-from-reference/scripts/lib/sitemap-links.mjs +24 -0
- package/skills/redesign-from-reference/scripts/lib/sitemap.mjs +144 -0
- package/skills/redesign-from-reference/scripts/lib/unmapped.mjs +97 -0
- package/skills/redesign-from-reference/scripts/lib/visit-candidate.mjs +53 -0
- package/skills/redesign-from-reference/scripts/lib/visit-probe.mjs +159 -0
- package/skills/redesign-from-reference/scripts/map-tokens.mjs +142 -0
- package/src/admin/components/AddProductToOrder.tsx +314 -0
- package/src/admin/components/AllProductProperties.tsx +442 -0
- package/src/admin/components/ImageUpload.tsx +295 -0
- package/src/admin/components/ProductModifications.tsx +669 -0
- package/src/admin/components/ProductPricesEditor.tsx +232 -0
- package/src/admin/components/ProductPropertyValues.tsx +475 -0
- package/src/admin/components/RichTextEditor.tsx +326 -0
- package/src/admin/components/SectionPropertiesManager.tsx +380 -0
- package/src/admin/components/SectionPropertiesTable.tsx +312 -0
- package/src/admin/components/SimpleProductFields.tsx +57 -0
- package/src/admin/components/StockByPointManager.tsx +301 -0
- package/src/admin/components/StockStatusSelect.tsx +88 -0
- package/src/admin/components/ThemeActivateDialog.tsx +51 -0
- package/src/admin/components/ThemeCard.tsx +143 -0
- package/src/admin/hooks/usePluginToggle.ts +87 -0
- package/src/admin/hooks/useThemeActivate.ts +73 -0
- package/src/admin/index.ts +59 -0
- package/src/admin/layouts/AdminLayout.tsx +64 -0
- package/src/admin/layouts/AdminSidebar.tsx +356 -0
- package/src/admin/lib/adminLinks.ts +19 -0
- package/src/admin/lib/pluginSettingsFields.ts +40 -0
- package/src/admin/lib/revalidateTheme.ts +57 -0
- package/src/admin/pages/BannerEdit.tsx +664 -0
- package/src/admin/pages/Banners.tsx +201 -0
- package/src/admin/pages/Dashboard.tsx +234 -0
- package/src/admin/pages/DiscountEdit.tsx +872 -0
- package/src/admin/pages/DiscountGroupEdit.tsx +371 -0
- package/src/admin/pages/Discounts.tsx +423 -0
- package/src/admin/pages/OrderDetail.tsx +736 -0
- package/src/admin/pages/OrderStatuses.tsx +537 -0
- package/src/admin/pages/Orders.tsx +126 -0
- package/src/admin/pages/PickupPointEdit.tsx +407 -0
- package/src/admin/pages/PickupPoints.tsx +204 -0
- package/src/admin/pages/PlaceholderPage.tsx +50 -0
- package/src/admin/pages/PluginSettings.tsx +459 -0
- package/src/admin/pages/Plugins.tsx +263 -0
- package/src/admin/pages/PriceTypeEdit.tsx +301 -0
- package/src/admin/pages/PriceTypes.tsx +152 -0
- package/src/admin/pages/PriceValidator.tsx +549 -0
- package/src/admin/pages/ProductEdit.tsx +512 -0
- package/src/admin/pages/Products.tsx +202 -0
- package/src/admin/pages/Properties.tsx +347 -0
- package/src/admin/pages/PropertyEdit.tsx +433 -0
- package/src/admin/pages/PropertyOptionEdit.tsx +359 -0
- package/src/admin/pages/ReviewDetail.tsx +353 -0
- package/src/admin/pages/Reviews.tsx +226 -0
- package/src/admin/pages/SectionEdit.tsx +301 -0
- package/src/admin/pages/Sections.tsx +184 -0
- package/src/admin/pages/Settings.tsx +136 -0
- package/src/admin/pages/Shipping.tsx +209 -0
- package/src/admin/pages/ShippingMethodEdit.tsx +397 -0
- package/src/admin/pages/ShippingMethods.tsx +243 -0
- package/src/admin/pages/ShippingZoneEdit.tsx +579 -0
- package/src/admin/pages/ShippingZones.tsx +218 -0
- package/src/admin/pages/ThemeSettings.tsx +234 -0
- package/src/admin/pages/Themes.tsx +102 -0
- package/src/admin/pages/UserCategories.tsx +165 -0
- package/src/admin/pages/UserCategoryEdit.tsx +390 -0
- package/src/admin/pages/UserCategoryRuleEdit.tsx +665 -0
- package/src/admin/pages/UserCategoryRules.tsx +327 -0
- package/src/admin/pages/UserEdit.tsx +556 -0
- package/src/admin/pages/Users.tsx +322 -0
- package/src/auth/accept-invite.ts +81 -0
- package/src/auth/authz.ts +144 -0
- package/src/auth/drizzle-proxy.ts +71 -0
- package/src/auth/env.ts +48 -0
- package/src/auth/hooks.ts +94 -0
- package/src/auth/index.ts +75 -0
- package/src/auth/instance.ts +116 -0
- package/src/auth/invite-email.ts +84 -0
- package/src/auth/invite-store.ts +89 -0
- package/src/auth/invite.ts +144 -0
- package/src/auth/provision.ts +34 -0
- package/src/auth/send-email.ts +26 -0
- package/src/auth/session.ts +67 -0
- package/src/cart-ui/CartButton.tsx +23 -0
- package/src/cart-ui/CartDrawer.tsx +119 -0
- package/src/cart-ui/CartItem.tsx +21 -0
- package/src/cart-ui/CartItemView.tsx +109 -0
- package/src/cart-ui/index.ts +6 -0
- package/src/catalog-ui/ActiveFilters.tsx +123 -0
- package/src/catalog-ui/FilterSidebar.tsx +382 -0
- package/src/catalog-ui/ModificationSelector.tsx +171 -0
- package/src/catalog-ui/ProductCard.tsx +104 -0
- package/src/catalog-ui/ProductCharacteristics.tsx +82 -0
- package/src/catalog-ui/ProductGallery.tsx +95 -0
- package/src/catalog-ui/StockDisplay.tsx +146 -0
- package/src/catalog-ui/index.ts +8 -0
- package/src/checkout-ui/AddressCard.tsx +62 -0
- package/src/checkout-ui/AddressSaveDialog.tsx +96 -0
- package/src/checkout-ui/AddressSelectorPopup.tsx +177 -0
- package/src/checkout-ui/CheckoutAuthBlock.tsx +339 -0
- package/src/checkout-ui/CheckoutContactForm.tsx +85 -0
- package/src/checkout-ui/CheckoutDeliveryForm.tsx +399 -0
- package/src/checkout-ui/CheckoutOrderSummary.tsx +135 -0
- package/src/checkout-ui/CheckoutPaymentForm.tsx +76 -0
- package/src/checkout-ui/CheckoutRecipientForm.tsx +427 -0
- package/src/checkout-ui/RecipientCard.tsx +66 -0
- package/src/checkout-ui/RecipientSaveDialog.tsx +96 -0
- package/src/checkout-ui/RecipientSelectorPopup.tsx +187 -0
- package/src/checkout-ui/index.ts +13 -0
- package/src/contracts/README.md +60 -0
- package/src/contracts/index.ts +12 -0
- package/src/contracts/objects/banner.ts +34 -0
- package/src/contracts/objects/catalog.ts +76 -0
- package/src/contracts/objects/common.ts +27 -0
- package/src/contracts/objects/config.ts +17 -0
- package/src/contracts/objects/discount.ts +92 -0
- package/src/contracts/objects/identity.ts +10 -0
- package/src/contracts/objects/index.ts +12 -0
- package/src/contracts/objects/inventory.ts +38 -0
- package/src/contracts/objects/order.ts +55 -0
- package/src/contracts/objects/pricing.ts +22 -0
- package/src/contracts/objects/shipping.ts +127 -0
- package/src/contracts/ports/index.ts +95 -0
- package/src/contracts/semver/index.ts +62 -0
- package/src/contracts/semver/version.ts +15 -0
- package/src/contracts/views/cart.ts +24 -0
- package/src/contracts/views/catalog.ts +47 -0
- package/src/contracts/views/common.ts +39 -0
- package/src/contracts/views/fixtures/cart.ts +17 -0
- package/src/contracts/views/fixtures/catalog.ts +52 -0
- package/src/contracts/views/fixtures/home.ts +81 -0
- package/src/contracts/views/fixtures/index.ts +39 -0
- package/src/contracts/views/fixtures/product-detail.ts +60 -0
- package/src/contracts/views/home.ts +53 -0
- package/src/contracts/views/index.ts +11 -0
- package/src/contracts/views/product-detail.ts +78 -0
- package/src/contracts/views/requisites.ts +112 -0
- package/src/contracts/views/slots.ts +28 -0
- package/src/core/components/NavLink.tsx +37 -0
- package/src/core/components/ThemeToggle.tsx +42 -0
- package/src/core/components/cart/CartDrawer.tsx +2 -0
- package/src/core/components/cart/CartItem.tsx +2 -0
- package/src/core/components/catalog/ActiveFilters.tsx +6 -0
- package/src/core/components/catalog/FilterSidebar.tsx +6 -0
- package/src/core/components/catalog/ModificationSelector.tsx +6 -0
- package/src/core/components/catalog/ProductCard.tsx +5 -0
- package/src/core/components/catalog/ProductCharacteristics.tsx +5 -0
- package/src/core/components/catalog/ProductGallery.tsx +5 -0
- package/src/core/components/catalog/StockDisplay.tsx +5 -0
- package/src/core/components/checkout/CheckoutAuthBlock.tsx +5 -0
- package/src/core/components/checkout/CheckoutContactForm.tsx +5 -0
- package/src/core/components/checkout/CheckoutDeliveryForm.tsx +5 -0
- package/src/core/components/checkout/CheckoutOrderSummary.tsx +5 -0
- package/src/core/components/checkout/CheckoutPaymentForm.tsx +5 -0
- package/src/core/components/checkout/CheckoutRecipientForm.tsx +5 -0
- package/src/core/components/profile/AddressesList.tsx +5 -0
- package/src/core/components/profile/AvatarUpload.tsx +5 -0
- package/src/core/components/profile/RecipientsList.tsx +5 -0
- package/src/core/components/reviews/ProductReviews.tsx +2 -0
- package/src/core/components/reviews/StarRating.tsx +2 -0
- package/src/core/hooks/use-toast.ts +6 -0
- package/src/core/hooks/useAddressBook.ts +61 -0
- package/src/core/hooks/useAuth.tsx +75 -0
- package/src/core/hooks/useBanners.ts +27 -0
- package/src/core/hooks/useCart.tsx +3 -0
- package/src/core/hooks/useDiscountedPrice.ts +83 -0
- package/src/core/hooks/usePriceType.ts +25 -0
- package/src/core/hooks/useProductReviews.ts +141 -0
- package/src/core/hooks/useProductsWithStock.ts +11 -0
- package/src/core/hooks/useRecipientBook.ts +56 -0
- package/src/core/hooks/useShippingDirectory.ts +61 -0
- package/src/core/hooks/useStock.ts +102 -0
- package/src/core/index.ts +83 -0
- package/src/core/lib/auth-client.ts +22 -0
- package/src/core/lib/auth-session.ts +23 -0
- package/src/core/lib/banners.ts +28 -0
- package/src/core/lib/discounts.ts +78 -0
- package/src/core/lib/price-type.ts +48 -0
- package/src/core/lib/review-form.ts +68 -0
- package/src/core/lib/reviews.ts +64 -0
- package/src/core/lib/section-filters.ts +26 -0
- package/src/core/lib/shipping-directory.ts +34 -0
- package/src/core/lib/stock.ts +48 -0
- package/src/core/lib/user-addresses.ts +94 -0
- package/src/core/lib/user-recipients.ts +83 -0
- package/src/core/providers/CMSProvider.tsx +36 -0
- package/src/data-supabase/README.md +70 -0
- package/src/data-supabase/catalogRepository.ts +263 -0
- package/src/data-supabase/identityProvider.ts +73 -0
- package/src/data-supabase/index.ts +7 -0
- package/src/data-supabase/mappers.ts +229 -0
- package/src/data-supabase/orderRepository.ts +138 -0
- package/src/data-supabase/scope.ts +17 -0
- package/src/db/actor.ts +96 -0
- package/src/db/client.ts +85 -0
- package/src/db/index.ts +12 -0
- package/src/db/with-actor.ts +87 -0
- package/src/domain/README.md +57 -0
- package/src/domain/discounts.ts +435 -0
- package/src/domain/index.ts +10 -0
- package/src/domain/inventory.ts +54 -0
- package/src/domain/money.ts +80 -0
- package/src/domain/pricing.ts +40 -0
- package/src/domain/shipping.ts +218 -0
- package/src/domain/user-categories/conditions.ts +112 -0
- package/src/domain/user-categories/engine.ts +80 -0
- package/src/domain/user-categories/index.ts +11 -0
- package/src/domain/user-categories/types.ts +64 -0
- package/src/i18n/I18nProvider.tsx +60 -0
- package/src/i18n/README.md +63 -0
- package/src/i18n/catalogs/en/admin/banners.ts +66 -0
- package/src/i18n/catalogs/en/admin/common.ts +21 -0
- package/src/i18n/catalogs/en/admin/dashboard.ts +24 -0
- package/src/i18n/catalogs/en/admin/discounts.ts +74 -0
- package/src/i18n/catalogs/en/admin/index.ts +39 -0
- package/src/i18n/catalogs/en/admin/nav.ts +35 -0
- package/src/i18n/catalogs/en/admin/orders.ts +74 -0
- package/src/i18n/catalogs/en/admin/plugins.ts +64 -0
- package/src/i18n/catalogs/en/admin/prices.ts +19 -0
- package/src/i18n/catalogs/en/admin/products.ts +84 -0
- package/src/i18n/catalogs/en/admin/properties.ts +74 -0
- package/src/i18n/catalogs/en/admin/reviews.ts +29 -0
- package/src/i18n/catalogs/en/admin/sections.ts +21 -0
- package/src/i18n/catalogs/en/admin/settings.ts +17 -0
- package/src/i18n/catalogs/en/admin/shipping.ts +112 -0
- package/src/i18n/catalogs/en/admin/themes.ts +28 -0
- package/src/i18n/catalogs/en/admin/users.ts +104 -0
- package/src/i18n/catalogs/en/admin/validator.ts +35 -0
- package/src/i18n/catalogs/en/app.ts +14 -0
- package/src/i18n/catalogs/en/auth.ts +65 -0
- package/src/i18n/catalogs/en/breadcrumbs.ts +6 -0
- package/src/i18n/catalogs/en/cart.ts +25 -0
- package/src/i18n/catalogs/en/catalog.ts +26 -0
- package/src/i18n/catalogs/en/checkout.ts +126 -0
- package/src/i18n/catalogs/en/common.ts +94 -0
- package/src/i18n/catalogs/en/home.ts +7 -0
- package/src/i18n/catalogs/en/index.ts +44 -0
- package/src/i18n/catalogs/en/nav.ts +9 -0
- package/src/i18n/catalogs/en/product.ts +31 -0
- package/src/i18n/catalogs/en/profile.ts +109 -0
- package/src/i18n/catalogs/en/properties.ts +20 -0
- package/src/i18n/catalogs/en/reviews.ts +32 -0
- package/src/i18n/catalogs/en/validation.ts +33 -0
- package/src/i18n/catalogs/uk/admin/banners.ts +67 -0
- package/src/i18n/catalogs/uk/admin/common.ts +21 -0
- package/src/i18n/catalogs/uk/admin/dashboard.ts +22 -0
- package/src/i18n/catalogs/uk/admin/discounts.ts +73 -0
- package/src/i18n/catalogs/uk/admin/index.ts +45 -0
- package/src/i18n/catalogs/uk/admin/nav.ts +35 -0
- package/src/i18n/catalogs/uk/admin/orders.ts +76 -0
- package/src/i18n/catalogs/uk/admin/plugins.ts +68 -0
- package/src/i18n/catalogs/uk/admin/prices.ts +17 -0
- package/src/i18n/catalogs/uk/admin/products.ts +87 -0
- package/src/i18n/catalogs/uk/admin/properties.ts +77 -0
- package/src/i18n/catalogs/uk/admin/reviews.ts +27 -0
- package/src/i18n/catalogs/uk/admin/sections.ts +19 -0
- package/src/i18n/catalogs/uk/admin/settings.ts +17 -0
- package/src/i18n/catalogs/uk/admin/shipping.ts +119 -0
- package/src/i18n/catalogs/uk/admin/themes.ts +24 -0
- package/src/i18n/catalogs/uk/admin/users.ts +106 -0
- package/src/i18n/catalogs/uk/admin/validator.ts +34 -0
- package/src/i18n/catalogs/uk/app.ts +15 -0
- package/src/i18n/catalogs/uk/auth.ts +77 -0
- package/src/i18n/catalogs/uk/breadcrumbs.ts +4 -0
- package/src/i18n/catalogs/uk/cart.ts +24 -0
- package/src/i18n/catalogs/uk/catalog.ts +26 -0
- package/src/i18n/catalogs/uk/checkout.ts +137 -0
- package/src/i18n/catalogs/uk/common.ts +114 -0
- package/src/i18n/catalogs/uk/home.ts +5 -0
- package/src/i18n/catalogs/uk/index.ts +44 -0
- package/src/i18n/catalogs/uk/nav.ts +8 -0
- package/src/i18n/catalogs/uk/product.ts +36 -0
- package/src/i18n/catalogs/uk/profile.ts +117 -0
- package/src/i18n/catalogs/uk/properties.ts +18 -0
- package/src/i18n/catalogs/uk/reviews.ts +34 -0
- package/src/i18n/catalogs/uk/validation.ts +38 -0
- package/src/i18n/index.ts +14 -0
- package/src/i18n/translator.ts +53 -0
- package/src/i18n/types.ts +19 -0
- package/src/index.ts +12 -0
- package/src/plugin-sdk/definePlugin.ts +80 -0
- package/src/plugin-sdk/index.ts +22 -0
- package/src/plugin-sdk/server/config-db.ts +57 -0
- package/src/plugin-sdk/server/guard.ts +77 -0
- package/src/plugin-sdk/server/index.ts +118 -0
- package/src/plugin-sdk/server/table-db.ts +149 -0
- package/src/plugin-sdk/types.ts +70 -0
- package/src/plugin-sdk/usePluginConfig.ts +105 -0
- package/src/plugin-sdk/usePluginT.ts +33 -0
- package/src/plugin-sdk/usePluginTable.ts +90 -0
- package/src/plugins/HookRegistry.ts +125 -0
- package/src/plugins/PluginLoader.ts +69 -0
- package/src/plugins/PluginSlot.tsx +135 -0
- package/src/plugins/adminLifecycle.ts +83 -0
- package/src/plugins/bootstrap.ts +108 -0
- package/src/plugins/hooks.ts +155 -0
- package/src/plugins/index.ts +90 -0
- package/src/plugins/pluginRepository.ts +138 -0
- package/src/plugins/server/index.ts +53 -0
- package/src/plugins/server/registry-db.ts +105 -0
- package/src/plugins/types.ts +224 -0
- package/src/plugins/validatePluginModule.ts +114 -0
- package/src/profile-ui/AddressesList.tsx +358 -0
- package/src/profile-ui/AvatarUpload.tsx +215 -0
- package/src/profile-ui/RecipientsList.tsx +448 -0
- package/src/profile-ui/index.ts +4 -0
- package/src/react-query/EngineProvider.tsx +30 -0
- package/src/react-query/README.md +54 -0
- package/src/react-query/hooks.ts +49 -0
- package/src/react-query/index.ts +9 -0
- package/src/react-query/queries.ts +95 -0
- package/src/react-query/useCart.tsx +172 -0
- package/src/react-query/useFormatPrice.ts +39 -0
- package/src/reviews-ui/ProductReviews.tsx +172 -0
- package/src/reviews-ui/ReviewCard.tsx +165 -0
- package/src/reviews-ui/ReviewForm.tsx +136 -0
- package/src/reviews-ui/ReviewRichTextEditor.tsx +168 -0
- package/src/reviews-ui/StarRating.tsx +69 -0
- package/src/reviews-ui/index.ts +6 -0
- package/src/runtime/README.md +60 -0
- package/src/runtime/config.ts +45 -0
- package/src/runtime/index.ts +87 -0
- package/src/schema/README.md +114 -0
- package/src/schema/auth.ts +150 -0
- package/src/schema/index.ts +17 -0
- package/src/schema/media.ts +69 -0
- package/src/schema/relations.ts +449 -0
- package/src/schema/schema.ts +1049 -0
- package/src/schema/types.ts +164 -0
- package/src/storefront/README.md +68 -0
- package/src/storefront/client.ts +8 -0
- package/src/storefront/index.ts +6 -0
- package/src/storefront/loaders/addresses.ts +131 -0
- package/src/storefront/loaders/banners.ts +44 -0
- package/src/storefront/loaders/catalog-filters.ts +174 -0
- package/src/storefront/loaders/catalog-products.ts +145 -0
- package/src/storefront/loaders/categories.ts +44 -0
- package/src/storefront/loaders/db.ts +65 -0
- package/src/storefront/loaders/discounts.ts +110 -0
- package/src/storefront/loaders/entities/banner.ts +99 -0
- package/src/storefront/loaders/entities/catalog-product.ts +75 -0
- package/src/storefront/loaders/entities/discount.ts +81 -0
- package/src/storefront/loaders/entities/home-product.ts +49 -0
- package/src/storefront/loaders/entities/modification.ts +55 -0
- package/src/storefront/loaders/entities/order.ts +126 -0
- package/src/storefront/loaders/entities/price.ts +48 -0
- package/src/storefront/loaders/entities/product.ts +60 -0
- package/src/storefront/loaders/entities/property.ts +82 -0
- package/src/storefront/loaders/entities/section.ts +54 -0
- package/src/storefront/loaders/home-sections.ts +81 -0
- package/src/storefront/loaders/home.ts +81 -0
- package/src/storefront/loaders/index.ts +76 -0
- package/src/storefront/loaders/modification-values.ts +113 -0
- package/src/storefront/loaders/order-create.ts +134 -0
- package/src/storefront/loaders/order-statuses.ts +39 -0
- package/src/storefront/loaders/orders.ts +113 -0
- package/src/storefront/loaders/pickup-points.ts +36 -0
- package/src/storefront/loaders/pricing.ts +23 -0
- package/src/storefront/loaders/product-detail.ts +90 -0
- package/src/storefront/loaders/products.ts +106 -0
- package/src/storefront/loaders/profile.ts +96 -0
- package/src/storefront/loaders/properties.ts +91 -0
- package/src/storefront/loaders/property-option.ts +112 -0
- package/src/storefront/loaders/property-values.ts +101 -0
- package/src/storefront/loaders/recipients.ts +145 -0
- package/src/storefront/loaders/reviews-write.ts +58 -0
- package/src/storefront/loaders/reviews.ts +142 -0
- package/src/storefront/loaders/sections.ts +46 -0
- package/src/storefront/loaders/session.ts +53 -0
- package/src/storefront/loaders/shipping.ts +163 -0
- package/src/storefront/loaders/sitemap.ts +67 -0
- package/src/storefront/loaders/stock-info.ts +127 -0
- package/src/storefront/loaders/stock.ts +101 -0
- package/src/storefront/seo/index.ts +2 -0
- package/src/storefront/seo/robots.ts +16 -0
- package/src/storefront/seo/sitemap.ts +73 -0
- package/src/storefront-routes/active-theme.ts +23 -0
- package/src/storefront-routes/components/BannerSlider.tsx +196 -0
- package/src/storefront-routes/components/ProductCarousel.tsx +93 -0
- package/src/storefront-routes/components/SetPasswordForm.tsx +94 -0
- package/src/storefront-routes/components/SsrProductGrid.tsx +38 -0
- package/src/storefront-routes/index.ts +7 -0
- package/src/storefront-routes/pages/Auth.tsx +508 -0
- package/src/storefront-routes/pages/AuthInvite.tsx +101 -0
- package/src/storefront-routes/pages/AuthSetPassword.tsx +78 -0
- package/src/storefront-routes/pages/Cart.tsx +24 -0
- package/src/storefront-routes/pages/Catalog.tsx +41 -0
- package/src/storefront-routes/pages/CatalogSection.tsx +83 -0
- package/src/storefront-routes/pages/Checkout.tsx +353 -0
- package/src/storefront-routes/pages/Home.tsx +61 -0
- package/src/storefront-routes/pages/OrderSuccess.tsx +305 -0
- package/src/storefront-routes/pages/ProductDetail.tsx +135 -0
- package/src/storefront-routes/pages/Profile.tsx +195 -0
- package/src/storefront-routes/pages/ProfileOrderDetail.tsx +430 -0
- package/src/storefront-routes/pages/ProfileOrders.tsx +199 -0
- package/src/storefront-routes/pages/ProfileSettings.tsx +431 -0
- package/src/storefront-routes/pages/Properties.tsx +90 -0
- package/src/storefront-routes/pages/PropertyDetail.tsx +127 -0
- package/src/storefront-routes/pages/PropertyPage.tsx +203 -0
- package/src/storefront-routes/pages/cart/breadcrumbs.ts +12 -0
- package/src/storefront-routes/pages/cart/slots.ts +20 -0
- package/src/storefront-routes/pages/catalog/active-filter-chips.ts +103 -0
- package/src/storefront-routes/pages/catalog/breadcrumbs.ts +24 -0
- package/src/storefront-routes/pages/catalog/filter-predicates.ts +80 -0
- package/src/storefront-routes/pages/catalog/filtering.ts +118 -0
- package/src/storefront-routes/pages/catalog/slot-context.tsx +64 -0
- package/src/storefront-routes/pages/catalog/slots.tsx +80 -0
- package/src/storefront-routes/pages/catalog/types.ts +46 -0
- package/src/storefront-routes/pages/catalog/useActiveFilters.ts +69 -0
- package/src/storefront-routes/pages/catalog/useCatalogController.ts +149 -0
- package/src/storefront-routes/pages/catalog/useCatalogProductsQuery.ts +36 -0
- package/src/storefront-routes/pages/catalog/useCatalogQueries.ts +67 -0
- package/src/storefront-routes/pages/catalog/usePricedProducts.ts +87 -0
- package/src/storefront-routes/pages/home/SectionProductCarousel.tsx +30 -0
- package/src/storefront-routes/pages/home/queries.ts +72 -0
- package/src/storefront-routes/pages/home/slot-context.tsx +49 -0
- package/src/storefront-routes/pages/home/slots.tsx +30 -0
- package/src/storefront-routes/pages/home/toCardViewModel.ts +26 -0
- package/src/storefront-routes/pages/home/types.ts +17 -0
- package/src/storefront-routes/pages/product-detail/breadcrumbs.ts +29 -0
- package/src/storefront-routes/pages/product-detail/cart-item.ts +57 -0
- package/src/storefront-routes/pages/product-detail/pricing.ts +123 -0
- package/src/storefront-routes/pages/product-detail/slot-context.tsx +63 -0
- package/src/storefront-routes/pages/product-detail/slots.tsx +112 -0
- package/src/storefront-routes/pages/product-detail/types.ts +59 -0
- package/src/storefront-routes/pages/product-detail/useModificationData.ts +53 -0
- package/src/storefront-routes/pages/product-detail/useModificationSelection.ts +70 -0
- package/src/storefront-routes/pages/product-detail/useProductContent.ts +88 -0
- package/src/storefront-routes/pages/product-detail/useProductPricing.ts +88 -0
- package/src/storefront-routes/pages/product-detail/useProductQuery.ts +26 -0
- package/src/storefront-routes/seo/interceptor.ts +89 -0
- package/src/storefront-routes/seo/robots.ts +15 -0
- package/src/storefront-routes/seo/sitemap.ts +27 -0
- package/src/storefront-routes/server/auth.ts +45 -0
- package/src/storefront-routes/server/catalog.ts +120 -0
- package/src/storefront-routes/server/checkout-input.ts +67 -0
- package/src/storefront-routes/server/checkout.ts +133 -0
- package/src/storefront-routes/server/home.ts +49 -0
- package/src/storefront-routes/server/invite.ts +55 -0
- package/src/storefront-routes/server/is-admin.ts +27 -0
- package/src/storefront-routes/server/order-view.ts +41 -0
- package/src/storefront-routes/server/product-list-item.ts +87 -0
- package/src/storefront-routes/server/products.ts +47 -0
- package/src/storefront-routes/server/profile-orders.ts +91 -0
- package/src/storefront-routes/server/profile.ts +58 -0
- package/src/storefront-routes/server/properties.ts +39 -0
- package/src/storefront-routes/server/revalidate-theme.ts +27 -0
- package/src/storefront-routes/server/theme-record.ts +89 -0
- package/src/storefront-routes/server/themes.ts +14 -0
- package/src/storefront-routes/shells/ProtectedShell.tsx +83 -0
- package/src/storefront-routes/shells/StorefrontShell.tsx +25 -0
- package/src/storefront-routes/shells/ThemeFonts.tsx +31 -0
- package/src/storefront-routes/shells/ThemeTokens.tsx +17 -0
- package/src/storefront-routes/shells/useActiveThemeModule.ts +16 -0
- package/src/storefront-routes/views/CartView.tsx +86 -0
- package/src/storefront-routes/views/CatalogLayout.tsx +60 -0
- package/src/storefront-routes/views/CatalogSectionView.tsx +39 -0
- package/src/storefront-routes/views/CatalogToolbar.tsx +48 -0
- package/src/storefront-routes/views/CatalogView.tsx +30 -0
- package/src/storefront-routes/views/HomeView.tsx +62 -0
- package/src/storefront-routes/views/ProductDetailInfo.tsx +77 -0
- package/src/storefront-routes/views/ProductDetailSections.tsx +107 -0
- package/src/storefront-routes/views/ProductDetailView.tsx +47 -0
- package/src/storefront-routes/views/StorefrontBreadcrumbs.tsx +31 -0
- package/src/storefront-routes/views/slots/CartSlots.tsx +72 -0
- package/src/storefront-routes/views/slots/CartSummary.tsx +49 -0
- package/src/storefront-routes/views/slots/CatalogFilters.tsx +26 -0
- package/src/storefront-routes/views/slots/CatalogProductGrid.tsx +80 -0
- package/src/storefront-routes/views/slots/CatalogSectionChips.tsx +136 -0
- package/src/storefront-routes/views/slots/CatalogToolbarSlots.tsx +125 -0
- package/src/storefront-routes/views/slots/HomeSectionCarousel.tsx +29 -0
- package/src/storefront-routes/views/slots/ProductAddToCart.tsx +58 -0
- package/src/storefront-routes/views/slots/ProductContentSlots.tsx +52 -0
- package/src/storefront-routes/views/slots/ProductModificationPicker.tsx +44 -0
- package/src/storefront-routes/views/slots/ProductPluginSlots.tsx +63 -0
- package/src/storefront-routes/views/slots/ProductPriceBlock.tsx +42 -0
- package/src/storefront-routes/views/slots/ProductStockBadge.tsx +45 -0
- package/src/storefront-routes/views/useStorefrontViews.ts +34 -0
- package/src/storefront-routes/vite-env.d.ts +12 -0
- package/src/supabase/README.md +73 -0
- package/src/supabase/SupabaseProvider.tsx +53 -0
- package/src/supabase/anon-client.ts +27 -0
- package/src/supabase/browser-client.ts +33 -0
- package/src/supabase/database.ts +2204 -0
- package/src/supabase/index.ts +21 -0
- package/src/supabase/keys.ts +42 -0
- package/src/supabase/server-client.ts +49 -0
- package/src/supabase/vite-env.d.ts +16 -0
- package/src/themes/ThemeContext.tsx +109 -0
- package/src/themes/ThemeRegistry.ts +126 -0
- package/src/themes/applyTokens.ts +79 -0
- package/src/themes/bootstrapThemes.ts +117 -0
- package/src/themes/conformance/assertThemeViewsConformance.ts +123 -0
- package/src/themes/conformance/boundary.tsx +38 -0
- package/src/themes/conformance/cases.tsx +103 -0
- package/src/themes/conformance/index.ts +13 -0
- package/src/themes/conformance/render.tsx +97 -0
- package/src/themes/conformance/stubs.tsx +67 -0
- package/src/themes/index.ts +8 -0
- package/src/themes/safeFontStylesheets.ts +62 -0
- package/src/themes/server/index.ts +47 -0
- package/src/themes/server/registry-db.ts +67 -0
- package/src/themes/theme-context.ts +26 -0
- package/src/themes/theme-settings.ts +21 -0
- package/src/themes/types.ts +214 -0
- package/src/themes/useThemeT.ts +49 -0
- package/src/themes/validateThemeModule.ts +126 -0
- package/src/themes/validateThemeViews.ts +46 -0
- package/src/ui/accordion.tsx +56 -0
- package/src/ui/alert-dialog.tsx +139 -0
- package/src/ui/alert.tsx +59 -0
- package/src/ui/aspect-ratio.tsx +5 -0
- package/src/ui/avatar.tsx +48 -0
- package/src/ui/badge.tsx +37 -0
- package/src/ui/breadcrumb.tsx +115 -0
- package/src/ui/button.tsx +57 -0
- package/src/ui/calendar.tsx +67 -0
- package/src/ui/card.tsx +86 -0
- package/src/ui/carousel.tsx +260 -0
- package/src/ui/chart.tsx +390 -0
- package/src/ui/checkbox.tsx +28 -0
- package/src/ui/collapsible.tsx +9 -0
- package/src/ui/command.tsx +153 -0
- package/src/ui/context-menu.tsx +198 -0
- package/src/ui/dialog.tsx +120 -0
- package/src/ui/drawer.tsx +116 -0
- package/src/ui/dropdown-menu.tsx +198 -0
- package/src/ui/form.tsx +177 -0
- package/src/ui/hover-card.tsx +27 -0
- package/src/ui/index.ts +53 -0
- package/src/ui/input-otp.tsx +69 -0
- package/src/ui/input.tsx +22 -0
- package/src/ui/label.tsx +24 -0
- package/src/ui/menubar.tsx +237 -0
- package/src/ui/navigation-menu.tsx +128 -0
- package/src/ui/pagination.tsx +117 -0
- package/src/ui/popover.tsx +29 -0
- package/src/ui/progress.tsx +26 -0
- package/src/ui/radio-group.tsx +42 -0
- package/src/ui/resizable.tsx +43 -0
- package/src/ui/scroll-area.tsx +46 -0
- package/src/ui/select.tsx +158 -0
- package/src/ui/separator.tsx +29 -0
- package/src/ui/sheet.tsx +139 -0
- package/src/ui/sidebar.tsx +771 -0
- package/src/ui/skeleton.tsx +15 -0
- package/src/ui/slider.tsx +26 -0
- package/src/ui/sonner.tsx +29 -0
- package/src/ui/switch.tsx +27 -0
- package/src/ui/table.tsx +117 -0
- package/src/ui/tabs.tsx +53 -0
- package/src/ui/textarea.tsx +23 -0
- package/src/ui/toast.tsx +127 -0
- package/src/ui/toaster.tsx +33 -0
- package/src/ui/toggle-group.tsx +59 -0
- package/src/ui/toggle.tsx +43 -0
- package/src/ui/tooltip.tsx +28 -0
- package/src/ui/use-mobile.tsx +21 -0
- package/src/ui/use-toast.ts +191 -0
- package/src/ui/utils.ts +6 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/storefront-routes/pages/Properties.tsx"],"names":[],"mappings":"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","file":"Properties.js","sourcesContent":["import { Link } from '@tanstack/react-router';\nimport { useQuery } from '@tanstack/react-query';\nimport { useT } from 'simplycms/i18n';\nimport { Card, CardContent, CardHeader, CardTitle } from 'simplycms/ui/card';\nimport { Loader2, ChevronRight, Tag } from 'lucide-react';\nimport type { PropertyWithOptions } from 'simplycms/storefront/loaders';\nimport { getProperties } from '../server/properties';\n\nexport interface PropertiesPageProps {\n properties?: PropertyWithOptions[];\n}\n\nexport default function PropertiesPage({\n properties: initialProperties,\n}: PropertiesPageProps = {}) {\n const t = useT();\n\n /**\n * 🔴 Один запит замість двох. Кількість значень більше не окремий похід у\n * БД по ВСІХ опціях магазину: серверний лоадер віддає характеристику разом\n * з її опціями, тож лічильник — це довжина вже наявного масиву.\n */\n const { data: properties, isLoading } = useQuery({\n queryKey: ['public-properties-with-pages'],\n queryFn: (): Promise<PropertyWithOptions[]> => getProperties(),\n initialData: initialProperties,\n });\n\n if (isLoading) {\n return (\n <div className=\"min-h-[50vh] flex items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n }\n\n return (\n <div className=\"container mx-auto px-4 py-8\">\n {/* Breadcrumbs */}\n <nav className=\"flex items-center gap-2 text-sm text-muted-foreground mb-6\">\n <Link to=\"/\" className=\"hover:text-foreground transition-colors\">\n {t('breadcrumbs.home')}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <span className=\"text-foreground\">{t('properties.title')}</span>\n </nav>\n\n {/* Header */}\n <div className=\"mb-8\">\n <h1 className=\"text-4xl font-bold mb-2\">{t('properties.pageTitle')}</h1>\n <p className=\"text-muted-foreground\">{t('properties.subtitle')}</p>\n </div>\n\n {/* Properties grid */}\n {properties && properties.length > 0 ? (\n <div className=\"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4\">\n {properties.map((property) => (\n <Link\n key={property.id}\n to=\"/properties/$propertySlug\"\n params={{ propertySlug: property.slug }}\n >\n <Card className=\"h-full hover:shadow-lg transition-shadow cursor-pointer group\">\n <CardHeader className=\"pb-2\">\n <div className=\"flex items-center gap-3\">\n <div className=\"p-2 bg-primary/10 rounded-lg group-hover:bg-primary/20 transition-colors\">\n <Tag className=\"h-5 w-5 text-primary\" />\n </div>\n <CardTitle className=\"text-lg\">{property.name}</CardTitle>\n </div>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm text-muted-foreground\">\n {t('properties.optionCount', {\n count: property.property_options.length,\n })}\n </p>\n </CardContent>\n </Card>\n </Link>\n ))}\n </div>\n ) : (\n <div className=\"text-center py-12 bg-muted/30 rounded-lg\">\n <p className=\"text-muted-foreground\">{t('properties.empty')}</p>\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { OptionRow, PropertyWithOptions } from 'simplycms/storefront/loaders';
|
|
2
|
+
export interface PropertyDetailPageProps {
|
|
3
|
+
property?: PropertyWithOptions;
|
|
4
|
+
options?: OptionRow[];
|
|
5
|
+
}
|
|
6
|
+
export default function PropertyDetailPage({ property: initialProperty, options: initialOptions, }?: PropertyDetailPageProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { getPropertyBySlug } from '../../chunk-MTGH4EXD.js';
|
|
2
|
+
import { useParams, Link } from '@tanstack/react-router';
|
|
3
|
+
import { useQuery } from '@tanstack/react-query';
|
|
4
|
+
import { useT } from 'simplycms/i18n';
|
|
5
|
+
import { Card, CardContent } from 'simplycms/ui/card';
|
|
6
|
+
import { Button } from 'simplycms/ui/button';
|
|
7
|
+
import { Loader2, ChevronRight } from 'lucide-react';
|
|
8
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
function PropertyDetailPage({
|
|
11
|
+
property: initialProperty,
|
|
12
|
+
options: initialOptions
|
|
13
|
+
} = {}) {
|
|
14
|
+
const t = useT();
|
|
15
|
+
const params = useParams({ strict: false });
|
|
16
|
+
const propertySlug = params?.propertySlug;
|
|
17
|
+
const { data: property, isLoading: propertyLoading } = useQuery({
|
|
18
|
+
queryKey: ["property-by-slug-detail", propertySlug],
|
|
19
|
+
queryFn: () => getPropertyBySlug({ data: { slug: propertySlug } }),
|
|
20
|
+
enabled: !!propertySlug,
|
|
21
|
+
initialData: initialProperty
|
|
22
|
+
});
|
|
23
|
+
const options = property?.property_options ?? initialOptions ?? [];
|
|
24
|
+
if (propertyLoading) {
|
|
25
|
+
return /* @__PURE__ */ jsx("div", { className: "min-h-[50vh] flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-primary" }) });
|
|
26
|
+
}
|
|
27
|
+
if (!property) {
|
|
28
|
+
return /* @__PURE__ */ jsxs("div", { className: "min-h-[50vh] flex flex-col items-center justify-center", children: [
|
|
29
|
+
/* @__PURE__ */ jsx("h1", { className: "text-2xl font-bold mb-4", children: t("properties.notFound") }),
|
|
30
|
+
/* @__PURE__ */ jsx(Link, { to: "/properties", children: /* @__PURE__ */ jsx(Button, { children: t("properties.backToProperties") }) })
|
|
31
|
+
] });
|
|
32
|
+
}
|
|
33
|
+
return /* @__PURE__ */ jsxs("div", { className: "container mx-auto px-4 py-8", children: [
|
|
34
|
+
/* @__PURE__ */ jsxs("nav", { className: "flex items-center gap-2 text-sm text-muted-foreground mb-6", children: [
|
|
35
|
+
/* @__PURE__ */ jsx(Link, { to: "/", className: "hover:text-foreground transition-colors", children: t("breadcrumbs.home") }),
|
|
36
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }),
|
|
37
|
+
/* @__PURE__ */ jsx(
|
|
38
|
+
Link,
|
|
39
|
+
{
|
|
40
|
+
to: "/properties",
|
|
41
|
+
className: "hover:text-foreground transition-colors",
|
|
42
|
+
children: t("properties.title")
|
|
43
|
+
}
|
|
44
|
+
),
|
|
45
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }),
|
|
46
|
+
/* @__PURE__ */ jsx("span", { className: "text-foreground", children: property.name })
|
|
47
|
+
] }),
|
|
48
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-8", children: [
|
|
49
|
+
/* @__PURE__ */ jsx("h1", { className: "text-4xl font-bold mb-2", children: property.name }),
|
|
50
|
+
/* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("properties.chooseValue") })
|
|
51
|
+
] }),
|
|
52
|
+
options.length > 0 ? /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-4", children: options.map((option) => /* @__PURE__ */ jsx(
|
|
53
|
+
Link,
|
|
54
|
+
{
|
|
55
|
+
to: "/properties/$propertySlug/$optionSlug",
|
|
56
|
+
params: { propertySlug: property.slug, optionSlug: option.slug },
|
|
57
|
+
children: /* @__PURE__ */ jsxs(Card, { className: "h-full hover:shadow-lg transition-shadow cursor-pointer group overflow-hidden", children: [
|
|
58
|
+
option.image_url && /* @__PURE__ */ jsx("div", { className: "relative aspect-square overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
59
|
+
"img",
|
|
60
|
+
{
|
|
61
|
+
src: option.image_url,
|
|
62
|
+
alt: option.name,
|
|
63
|
+
className: "absolute inset-0 w-full h-full object-cover group-hover:scale-105 transition-transform duration-300",
|
|
64
|
+
loading: "lazy",
|
|
65
|
+
decoding: "async"
|
|
66
|
+
}
|
|
67
|
+
) }),
|
|
68
|
+
/* @__PURE__ */ jsx(CardContent, { className: option.image_url ? "pt-3" : "pt-6", children: /* @__PURE__ */ jsx("p", { className: "font-medium text-center group-hover:text-primary transition-colors", children: option.name }) })
|
|
69
|
+
] })
|
|
70
|
+
},
|
|
71
|
+
option.id
|
|
72
|
+
)) }) : /* @__PURE__ */ jsx("div", { className: "text-center py-12 bg-muted/30 rounded-lg", children: /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("properties.optionsEmpty") }) })
|
|
73
|
+
] });
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export { PropertyDetailPage as default };
|
|
77
|
+
//# sourceMappingURL=PropertyDetail.js.map
|
|
78
|
+
//# sourceMappingURL=PropertyDetail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/storefront-routes/pages/PropertyDetail.tsx"],"names":[],"mappings":";;;;;;;;;AAiBe,SAAR,kBAAA,CAAoC;AAAA,EACzC,QAAA,EAAU,eAAA;AAAA,EACV,OAAA,EAAS;AACX,CAAA,GAA6B,EAAC,EAAG;AAC/B,EAAA,MAAM,IAAI,IAAA,EAAK;AACf,EAAA,MAAM,MAAA,GAAS,SAAA,CAAU,EAAE,MAAA,EAAQ,OAAO,CAAA;AAI1C,EAAA,MAAM,eAAe,MAAA,EAAQ,YAAA;AAO7B,EAAA,MAAM,EAAE,IAAA,EAAM,QAAA,EAAU,SAAA,EAAW,eAAA,KAAoB,QAAA,CAAS;AAAA,IAC9D,QAAA,EAAU,CAAC,yBAAA,EAA2B,YAAY,CAAA;AAAA,IAClD,OAAA,EAAS,MACP,iBAAA,CAAkB,EAAE,MAAM,EAAE,IAAA,EAAM,YAAA,EAAuB,EAAG,CAAA;AAAA,IAC9D,OAAA,EAAS,CAAC,CAAC,YAAA;AAAA,IACX,WAAA,EAAa;AAAA,GACd,CAAA;AAED,EAAA,MAAM,OAAA,GACJ,QAAA,EAAU,gBAAA,IAAoB,cAAA,IAAkB,EAAC;AAEnD,EAAA,IAAI,eAAA,EAAiB;AACnB,IAAA,uBACE,GAAA,CAAC,SAAI,SAAA,EAAU,+CAAA,EACb,8BAAC,OAAA,EAAA,EAAQ,SAAA,EAAU,qCAAoC,CAAA,EACzD,CAAA;AAAA,EAEJ;AAEA,EAAA,IAAI,CAAC,QAAA,EAAU;AACb,IAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,wDAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,yBAAA,EAA2B,QAAA,EAAA,CAAA,CAAE,qBAAqB,CAAA,EAAE,CAAA;AAAA,sBAClE,GAAA,CAAC,QAAK,EAAA,EAAG,aAAA,EACP,8BAAC,MAAA,EAAA,EAAQ,QAAA,EAAA,CAAA,CAAE,6BAA6B,CAAA,EAAE,CAAA,EAC5C;AAAA,KAAA,EACF,CAAA;AAAA,EAEJ;AAEA,EAAA,uBACE,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,6BAAA,EAEb,QAAA,EAAA;AAAA,oBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,4DAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,QAAK,EAAA,EAAG,GAAA,EAAI,WAAU,yCAAA,EACpB,QAAA,EAAA,CAAA,CAAE,kBAAkB,CAAA,EACvB,CAAA;AAAA,sBACA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,SAAA,EAAU,CAAA;AAAA,sBAClC,GAAA;AAAA,QAAC,IAAA;AAAA,QAAA;AAAA,UACC,EAAA,EAAG,aAAA;AAAA,UACH,SAAA,EAAU,yCAAA;AAAA,UAET,YAAE,kBAAkB;AAAA;AAAA,OACvB;AAAA,sBACA,GAAA,CAAC,YAAA,EAAA,EAAa,SAAA,EAAU,SAAA,EAAU,CAAA;AAAA,sBAClC,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,iBAAA,EAAmB,mBAAS,IAAA,EAAK;AAAA,KAAA,EACnD,CAAA;AAAA,oBAGA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EACb,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,yBAAA,EAA2B,QAAA,EAAA,QAAA,CAAS,IAAA,EAAK,CAAA;AAAA,0BACtD,GAAA,EAAA,EAAE,SAAA,EAAU,uBAAA,EAAyB,QAAA,EAAA,CAAA,CAAE,wBAAwB,CAAA,EAAE;AAAA,KAAA,EACpE,CAAA;AAAA,IAGC,OAAA,CAAQ,MAAA,GAAS,CAAA,mBAChB,GAAA,CAAC,KAAA,EAAA,EAAI,WAAU,oFAAA,EACZ,QAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAA,qBACZ,GAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QAEC,EAAA,EAAG,uCAAA;AAAA,QACH,QAAQ,EAAE,YAAA,EAAc,SAAS,IAAA,EAAM,UAAA,EAAY,OAAO,IAAA,EAAK;AAAA,QAE/D,QAAA,kBAAA,IAAA,CAAC,IAAA,EAAA,EAAK,SAAA,EAAU,+EAAA,EACb,QAAA,EAAA;AAAA,UAAA,MAAA,CAAO,SAAA,oBACN,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,wCAAA,EACb,QAAA,kBAAA,GAAA;AAAA,YAAC,KAAA;AAAA,YAAA;AAAA,cACC,KAAK,MAAA,CAAO,SAAA;AAAA,cACZ,KAAK,MAAA,CAAO,IAAA;AAAA,cACZ,SAAA,EAAU,qGAAA;AAAA,cACV,OAAA,EAAQ,MAAA;AAAA,cACR,QAAA,EAAS;AAAA;AAAA,WACX,EACF,CAAA;AAAA,0BAEF,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAW,MAAA,CAAO,SAAA,GAAY,MAAA,GAAS,MAAA,EAClD,QAAA,kBAAA,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,oEAAA,EACV,QAAA,EAAA,MAAA,CAAO,MACV,CAAA,EACF;AAAA,SAAA,EACF;AAAA,OAAA;AAAA,MArBK,MAAA,CAAO;AAAA,KAuBf,CAAA,EACH,CAAA,mBAEA,GAAA,CAAC,SAAI,SAAA,EAAU,0CAAA,EACb,QAAA,kBAAA,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,uBAAA,EACV,QAAA,EAAA,CAAA,CAAE,yBAAyB,GAC9B,CAAA,EACF;AAAA,GAAA,EAEJ,CAAA;AAEJ","file":"PropertyDetail.js","sourcesContent":["import { useParams, Link } from '@tanstack/react-router';\nimport { useQuery } from '@tanstack/react-query';\nimport { useT } from 'simplycms/i18n';\nimport { Card, CardContent } from 'simplycms/ui/card';\nimport { Button } from 'simplycms/ui/button';\nimport { Loader2, ChevronRight } from 'lucide-react';\nimport type {\n OptionRow,\n PropertyWithOptions,\n} from 'simplycms/storefront/loaders';\nimport { getPropertyBySlug } from '../server/properties';\n\nexport interface PropertyDetailPageProps {\n property?: PropertyWithOptions;\n options?: OptionRow[];\n}\n\nexport default function PropertyDetailPage({\n property: initialProperty,\n options: initialOptions,\n}: PropertyDetailPageProps = {}) {\n const t = useT();\n const params = useParams({ strict: false }) as Record<\n string,\n string | undefined\n >;\n const propertySlug = params?.propertySlug as string | undefined;\n\n /**\n * 🔴 Один запит замість двох: характеристика приїжджає разом з опціями, а\n * не другим походом за `property_options` після того, як приїхав її id.\n * Заодно зникає стан «характеристика вже є, опції ще ні».\n */\n const { data: property, isLoading: propertyLoading } = useQuery({\n queryKey: ['property-by-slug-detail', propertySlug],\n queryFn: (): Promise<PropertyWithOptions | null> =>\n getPropertyBySlug({ data: { slug: propertySlug as string } }),\n enabled: !!propertySlug,\n initialData: initialProperty,\n });\n\n const options: OptionRow[] =\n property?.property_options ?? initialOptions ?? [];\n\n if (propertyLoading) {\n return (\n <div className=\"min-h-[50vh] flex items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n }\n\n if (!property) {\n return (\n <div className=\"min-h-[50vh] flex flex-col items-center justify-center\">\n <h1 className=\"text-2xl font-bold mb-4\">{t('properties.notFound')}</h1>\n <Link to=\"/properties\">\n <Button>{t('properties.backToProperties')}</Button>\n </Link>\n </div>\n );\n }\n\n return (\n <div className=\"container mx-auto px-4 py-8\">\n {/* Breadcrumbs */}\n <nav className=\"flex items-center gap-2 text-sm text-muted-foreground mb-6\">\n <Link to=\"/\" className=\"hover:text-foreground transition-colors\">\n {t('breadcrumbs.home')}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <Link\n to=\"/properties\"\n className=\"hover:text-foreground transition-colors\"\n >\n {t('properties.title')}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <span className=\"text-foreground\">{property.name}</span>\n </nav>\n\n {/* Header */}\n <div className=\"mb-8\">\n <h1 className=\"text-4xl font-bold mb-2\">{property.name}</h1>\n <p className=\"text-muted-foreground\">{t('properties.chooseValue')}</p>\n </div>\n\n {/* Options grid */}\n {options.length > 0 ? (\n <div className=\"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-4\">\n {options.map((option) => (\n <Link\n key={option.id}\n to=\"/properties/$propertySlug/$optionSlug\"\n params={{ propertySlug: property.slug, optionSlug: option.slug }}\n >\n <Card className=\"h-full hover:shadow-lg transition-shadow cursor-pointer group overflow-hidden\">\n {option.image_url && (\n <div className=\"relative aspect-square overflow-hidden\">\n <img\n src={option.image_url}\n alt={option.name}\n className=\"absolute inset-0 w-full h-full object-cover group-hover:scale-105 transition-transform duration-300\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n </div>\n )}\n <CardContent className={option.image_url ? 'pt-3' : 'pt-6'}>\n <p className=\"font-medium text-center group-hover:text-primary transition-colors\">\n {option.name}\n </p>\n </CardContent>\n </Card>\n </Link>\n ))}\n </div>\n ) : (\n <div className=\"text-center py-12 bg-muted/30 rounded-lg\">\n <p className=\"text-muted-foreground\">\n {t('properties.optionsEmpty')}\n </p>\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CatalogProductRow, OptionRow, PropertyRow } from 'simplycms/storefront/loaders';
|
|
2
|
+
export interface PropertyOptionPageProps {
|
|
3
|
+
property?: PropertyRow;
|
|
4
|
+
option?: OptionRow;
|
|
5
|
+
products?: CatalogProductRow[];
|
|
6
|
+
}
|
|
7
|
+
export default function PropertyPage({ property: initialProperty, option: initialOption, products: initialProducts, }?: PropertyOptionPageProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { getPropertyOption } from '../../chunk-MTGH4EXD.js';
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useParams, Link } from '@tanstack/react-router';
|
|
4
|
+
import { useQuery } from '@tanstack/react-query';
|
|
5
|
+
import { useT } from 'simplycms/i18n';
|
|
6
|
+
import { ProductCard } from 'simplycms/core/components/catalog/ProductCard';
|
|
7
|
+
import { Loader2, ChevronRight } from 'lucide-react';
|
|
8
|
+
import { Button } from 'simplycms/ui/button';
|
|
9
|
+
import { usePriceType } from 'simplycms/core/hooks/usePriceType';
|
|
10
|
+
import { resolvePrice } from 'simplycms/domain/pricing';
|
|
11
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
12
|
+
|
|
13
|
+
function PropertyPage({
|
|
14
|
+
property: initialProperty,
|
|
15
|
+
option: initialOption,
|
|
16
|
+
products: initialProducts
|
|
17
|
+
} = {}) {
|
|
18
|
+
const t = useT();
|
|
19
|
+
const params = useParams({ strict: false });
|
|
20
|
+
const propertySlug = params?.propertySlug;
|
|
21
|
+
const optionSlug = params?.optionSlug;
|
|
22
|
+
const { priceTypeId, defaultPriceTypeId } = usePriceType();
|
|
23
|
+
const initialData = initialProperty && initialOption ? {
|
|
24
|
+
property: initialProperty,
|
|
25
|
+
option: initialOption,
|
|
26
|
+
products: initialProducts ?? []
|
|
27
|
+
} : void 0;
|
|
28
|
+
const { data, isLoading } = useQuery({
|
|
29
|
+
queryKey: ["property-option-page", propertySlug, optionSlug],
|
|
30
|
+
queryFn: () => getPropertyOption({
|
|
31
|
+
data: {
|
|
32
|
+
propertySlug,
|
|
33
|
+
optionSlug
|
|
34
|
+
}
|
|
35
|
+
}),
|
|
36
|
+
enabled: !!propertySlug && !!optionSlug,
|
|
37
|
+
initialData
|
|
38
|
+
});
|
|
39
|
+
const property = data?.property ?? null;
|
|
40
|
+
const option = data?.option ?? null;
|
|
41
|
+
const optionLoading = isLoading;
|
|
42
|
+
const productsLoading = isLoading;
|
|
43
|
+
const products = useMemo(() => {
|
|
44
|
+
if (!data) return void 0;
|
|
45
|
+
return data.products.map((p) => {
|
|
46
|
+
const hasModifications = p.has_modifications ?? true;
|
|
47
|
+
const defaultMod = hasModifications ? p.modifications[0] ?? null : null;
|
|
48
|
+
const resolved = resolvePrice(
|
|
49
|
+
p.product_prices,
|
|
50
|
+
priceTypeId,
|
|
51
|
+
defaultPriceTypeId,
|
|
52
|
+
defaultMod?.id ?? null
|
|
53
|
+
);
|
|
54
|
+
return {
|
|
55
|
+
...p,
|
|
56
|
+
price: resolved.price,
|
|
57
|
+
old_price: resolved.oldPrice,
|
|
58
|
+
stock_status: defaultMod ? defaultMod.stock_status ?? "in_stock" : p.stock_status ?? "in_stock"
|
|
59
|
+
};
|
|
60
|
+
});
|
|
61
|
+
}, [data, priceTypeId, defaultPriceTypeId]);
|
|
62
|
+
if (optionLoading) {
|
|
63
|
+
return /* @__PURE__ */ jsx("div", { className: "min-h-[50vh] flex items-center justify-center", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-primary" }) });
|
|
64
|
+
}
|
|
65
|
+
if (!option) {
|
|
66
|
+
return /* @__PURE__ */ jsxs("div", { className: "min-h-[50vh] flex flex-col items-center justify-center", children: [
|
|
67
|
+
/* @__PURE__ */ jsx("h1", { className: "text-2xl font-bold mb-4", children: t("properties.pageNotFound") }),
|
|
68
|
+
/* @__PURE__ */ jsx(Link, { to: "/catalog", children: /* @__PURE__ */ jsx(Button, { children: t("catalog.back") }) })
|
|
69
|
+
] });
|
|
70
|
+
}
|
|
71
|
+
const displayName = option.name;
|
|
72
|
+
const description = option.description;
|
|
73
|
+
const imageUrl = option.image_url;
|
|
74
|
+
return /* @__PURE__ */ jsxs("div", { className: "container mx-auto px-4 py-8", children: [
|
|
75
|
+
/* @__PURE__ */ jsxs("nav", { className: "flex items-center gap-2 text-sm text-muted-foreground mb-6", children: [
|
|
76
|
+
/* @__PURE__ */ jsx(Link, { to: "/", className: "hover:text-foreground transition-colors", children: t("breadcrumbs.home") }),
|
|
77
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }),
|
|
78
|
+
/* @__PURE__ */ jsx(
|
|
79
|
+
Link,
|
|
80
|
+
{
|
|
81
|
+
to: "/properties",
|
|
82
|
+
className: "hover:text-foreground transition-colors",
|
|
83
|
+
children: t("properties.title")
|
|
84
|
+
}
|
|
85
|
+
),
|
|
86
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }),
|
|
87
|
+
/* @__PURE__ */ jsx(
|
|
88
|
+
Link,
|
|
89
|
+
{
|
|
90
|
+
to: "/properties/$propertySlug",
|
|
91
|
+
params: { propertySlug: property?.slug ?? "" },
|
|
92
|
+
className: "hover:text-foreground transition-colors",
|
|
93
|
+
children: property?.name
|
|
94
|
+
}
|
|
95
|
+
),
|
|
96
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "h-4 w-4" }),
|
|
97
|
+
/* @__PURE__ */ jsx("span", { className: "text-foreground", children: displayName })
|
|
98
|
+
] }),
|
|
99
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-8", children: [
|
|
100
|
+
imageUrl && /* @__PURE__ */ jsx("div", { className: "relative w-full h-48 md:h-64 mb-6 rounded-xl overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
101
|
+
"img",
|
|
102
|
+
{
|
|
103
|
+
src: imageUrl,
|
|
104
|
+
alt: displayName,
|
|
105
|
+
className: "absolute inset-0 w-full h-full object-cover",
|
|
106
|
+
loading: "lazy",
|
|
107
|
+
decoding: "async"
|
|
108
|
+
}
|
|
109
|
+
) }),
|
|
110
|
+
/* @__PURE__ */ jsx("h1", { className: "text-4xl font-bold mb-4", children: displayName }),
|
|
111
|
+
description && /* @__PURE__ */ jsx(
|
|
112
|
+
"div",
|
|
113
|
+
{
|
|
114
|
+
className: "prose prose-lg max-w-none text-muted-foreground dark:prose-invert",
|
|
115
|
+
dangerouslySetInnerHTML: { __html: description }
|
|
116
|
+
}
|
|
117
|
+
)
|
|
118
|
+
] }),
|
|
119
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
120
|
+
/* @__PURE__ */ jsx("h2", { className: "text-2xl font-bold mb-6", children: property?.name ? t("properties.productsFiltered", {
|
|
121
|
+
property: property.name,
|
|
122
|
+
option: option.name
|
|
123
|
+
}) : t("properties.products") }),
|
|
124
|
+
productsLoading ? /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center py-12", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin text-primary" }) }) : products && products.length > 0 ? /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 gap-4", children: products.map((product) => /* @__PURE__ */ jsx(ProductCard, { product }, product.id)) }) : /* @__PURE__ */ jsx("div", { className: "text-center py-12 bg-muted/30 rounded-lg", children: /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("properties.productsEmpty") }) })
|
|
125
|
+
] })
|
|
126
|
+
] });
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export { PropertyPage as default };
|
|
130
|
+
//# sourceMappingURL=PropertyPage.js.map
|
|
131
|
+
//# sourceMappingURL=PropertyPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/storefront-routes/pages/PropertyPage.tsx"],"names":[],"mappings":"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","file":"PropertyPage.js","sourcesContent":["import { useMemo } from 'react';\nimport { useParams, Link } from '@tanstack/react-router';\nimport { useQuery } from '@tanstack/react-query';\nimport { useT } from 'simplycms/i18n';\nimport { ProductCard } from 'simplycms/core/components/catalog/ProductCard';\nimport { Loader2, ChevronRight } from 'lucide-react';\nimport { Button } from 'simplycms/ui/button';\nimport { usePriceType } from 'simplycms/core/hooks/usePriceType';\nimport { resolvePrice } from 'simplycms/domain/pricing';\nimport type {\n CatalogProductRow,\n OptionRow,\n PropertyOptionPageData,\n PropertyRow,\n} from 'simplycms/storefront/loaders';\nimport { getPropertyOption } from '../server/properties';\n\nexport interface PropertyOptionPageProps {\n property?: PropertyRow;\n option?: OptionRow;\n products?: CatalogProductRow[];\n}\n\nexport default function PropertyPage({\n property: initialProperty,\n option: initialOption,\n products: initialProducts,\n}: PropertyOptionPageProps = {}) {\n const t = useT();\n const params = useParams({ strict: false }) as Record<\n string,\n string | undefined\n >;\n const propertySlug = params?.propertySlug as string | undefined;\n const optionSlug = params?.optionSlug as string | undefined;\n\n const { priceTypeId, defaultPriceTypeId } = usePriceType();\n\n /**\n * 🔴 Один серверний виклик замість чотирьох клієнтських запитів\n * (характеристика → опція → id товарів двома вибірками → самі товари).\n * Обидва рівні характеристики — товар і модифікація — обʼєднані в SQL, тож\n * список більше не залежить від того, скільки id влізе в `in (…)`.\n */\n const initialData: PropertyOptionPageData | undefined =\n initialProperty && initialOption\n ? {\n property: initialProperty,\n option: initialOption,\n products: initialProducts ?? [],\n }\n : undefined;\n\n const { data, isLoading } = useQuery({\n queryKey: ['property-option-page', propertySlug, optionSlug],\n queryFn: (): Promise<PropertyOptionPageData | null> =>\n getPropertyOption({\n data: {\n propertySlug: propertySlug as string,\n optionSlug: optionSlug as string,\n },\n }),\n enabled: !!propertySlug && !!optionSlug,\n initialData,\n });\n\n const property = data?.property ?? null;\n const option = data?.option ?? null;\n const optionLoading = isLoading;\n const productsLoading = isLoading;\n\n // Резолв цін під тип ціни покупця — форма картки лишилась незмінною.\n const products = useMemo(() => {\n if (!data) return undefined;\n return data.products.map((p) => {\n const hasModifications = p.has_modifications ?? true;\n const defaultMod = hasModifications ? (p.modifications[0] ?? null) : null;\n const resolved = resolvePrice(\n p.product_prices,\n priceTypeId,\n defaultPriceTypeId,\n defaultMod?.id ?? null,\n );\n\n return {\n ...p,\n price: resolved.price,\n old_price: resolved.oldPrice,\n stock_status: defaultMod\n ? (defaultMod.stock_status ?? 'in_stock')\n : (p.stock_status ?? 'in_stock'),\n };\n });\n }, [data, priceTypeId, defaultPriceTypeId]);\n\n if (optionLoading) {\n return (\n <div className=\"min-h-[50vh] flex items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n }\n\n if (!option) {\n return (\n <div className=\"min-h-[50vh] flex flex-col items-center justify-center\">\n <h1 className=\"text-2xl font-bold mb-4\">\n {t('properties.pageNotFound')}\n </h1>\n <Link to=\"/catalog\">\n <Button>{t('catalog.back')}</Button>\n </Link>\n </div>\n );\n }\n\n // Page data is now directly on the option\n const displayName = option.name;\n const description = option.description;\n const imageUrl = option.image_url;\n\n return (\n <div className=\"container mx-auto px-4 py-8\">\n {/* Breadcrumbs */}\n <nav className=\"flex items-center gap-2 text-sm text-muted-foreground mb-6\">\n <Link to=\"/\" className=\"hover:text-foreground transition-colors\">\n {t('breadcrumbs.home')}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <Link\n to=\"/properties\"\n className=\"hover:text-foreground transition-colors\"\n >\n {t('properties.title')}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <Link\n to=\"/properties/$propertySlug\"\n params={{ propertySlug: property?.slug ?? '' }}\n className=\"hover:text-foreground transition-colors\"\n >\n {property?.name}\n </Link>\n <ChevronRight className=\"h-4 w-4\" />\n <span className=\"text-foreground\">{displayName}</span>\n </nav>\n\n {/* Hero section */}\n <div className=\"mb-8\">\n {imageUrl && (\n <div className=\"relative w-full h-48 md:h-64 mb-6 rounded-xl overflow-hidden\">\n <img\n src={imageUrl}\n alt={displayName}\n className=\"absolute inset-0 w-full h-full object-cover\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n </div>\n )}\n\n <h1 className=\"text-4xl font-bold mb-4\">{displayName}</h1>\n\n {description && (\n <div\n className=\"prose prose-lg max-w-none text-muted-foreground dark:prose-invert\"\n dangerouslySetInnerHTML={{ __html: description }}\n />\n )}\n </div>\n\n {/* Products section */}\n <div>\n <h2 className=\"text-2xl font-bold mb-6\">\n {property?.name\n ? t('properties.productsFiltered', {\n property: property.name,\n option: option.name,\n })\n : t('properties.products')}\n </h2>\n\n {productsLoading ? (\n <div className=\"flex items-center justify-center py-12\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n ) : products && products.length > 0 ? (\n <div className=\"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 gap-4\">\n {products.map((product) => (\n <ProductCard key={product.id} product={product} />\n ))}\n </div>\n ) : (\n <div className=\"text-center py-12 bg-muted/30 rounded-lg\">\n <p className=\"text-muted-foreground\">\n {t('properties.productsEmpty')}\n </p>\n </div>\n )}\n </div>\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Translator } from 'simplycms/i18n';
|
|
2
|
+
import type { BreadcrumbItem } from 'simplycms/contracts/views';
|
|
3
|
+
/** Головна → сам кошик (остання ланка без `href` — рендериться текстом). */
|
|
4
|
+
export declare function buildCartBreadcrumbs(t: Translator): BreadcrumbItem[];
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Translator } from 'simplycms/i18n';
|
|
2
|
+
import type { ActiveFilterChip, CatalogFiltersState, NumericProperty, NumericRange, NumericRanges } from './types';
|
|
3
|
+
/** Опція характеристики; назву групи читаємо з приєднаної гілки. */
|
|
4
|
+
export interface PropertyOptionRow {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
section_properties: unknown;
|
|
8
|
+
}
|
|
9
|
+
export interface ChipSources {
|
|
10
|
+
priceRange: NumericRange | undefined;
|
|
11
|
+
numericRanges: NumericRanges;
|
|
12
|
+
numericProperties: NumericProperty[] | undefined;
|
|
13
|
+
propertyOptions: PropertyOptionRow[] | undefined;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Порядок бейджів — ціна, діапазони, опції; до спліту він повторював порядок
|
|
17
|
+
* ключів у стані фільтрів. Різниця суто косметична (склад бейджів той самий),
|
|
18
|
+
* зате зникає дедуплікація пар `…Min`/`…Max` пошуком по вже зібраному списку.
|
|
19
|
+
*/
|
|
20
|
+
export declare function buildActiveFilterChips(filters: CatalogFiltersState, t: Translator, sources: ChipSources): ActiveFilterChip[];
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Translator } from 'simplycms/i18n';
|
|
2
|
+
import type { BreadcrumbItem } from 'simplycms/contracts/views';
|
|
3
|
+
/** Головна → каталог (остання ланка без `href` — рендериться текстом). */
|
|
4
|
+
export declare function buildCatalogBreadcrumbs(t: Translator): BreadcrumbItem[];
|
|
5
|
+
/** Головна → каталог → розділ. */
|
|
6
|
+
export declare function buildSectionBreadcrumbs(t: Translator, sectionName: string): BreadcrumbItem[];
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { CatalogFiltersState, NumericProperty } from './types';
|
|
2
|
+
/** Мінімум полів товару, потрібний фільтрам і сортуванню. */
|
|
3
|
+
export interface FilterableProduct {
|
|
4
|
+
price: number | null;
|
|
5
|
+
created_at: string;
|
|
6
|
+
isAvailable: boolean;
|
|
7
|
+
section: {
|
|
8
|
+
id: string;
|
|
9
|
+
} | null;
|
|
10
|
+
propertyValues: Array<{
|
|
11
|
+
property_id: string;
|
|
12
|
+
numeric_value: number | null;
|
|
13
|
+
option_id: string | null;
|
|
14
|
+
}>;
|
|
15
|
+
}
|
|
16
|
+
/** Фільтри-діапазони числових характеристик. */
|
|
17
|
+
export declare function matchesNumericFilters(product: FilterableProduct, filters: CatalogFiltersState, numericProperties: NumericProperty[] | undefined): boolean;
|
|
18
|
+
/** Фільтри-опції (мультивибір за `option_id`). */
|
|
19
|
+
export declare function matchesOptionFilters(product: FilterableProduct, filters: CatalogFiltersState): boolean;
|
|
20
|
+
/** Фільтр ціни; товар без ціни ним не відсіюється. */
|
|
21
|
+
export declare function matchesPriceFilter(product: FilterableProduct, filters: CatalogFiltersState): boolean;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CatalogSortOption } from '../../views/slots/CatalogToolbarSlots';
|
|
2
|
+
import { type FilterableProduct } from './filter-predicates';
|
|
3
|
+
import type { CatalogFiltersState, NumericProperty, NumericRange, NumericRanges } from './types';
|
|
4
|
+
export type { FilterableProduct };
|
|
5
|
+
export interface FilterAndSortOptions {
|
|
6
|
+
filters: CatalogFiltersState;
|
|
7
|
+
sortBy: CatalogSortOption;
|
|
8
|
+
/** Розділ поточної вибірки; `null` — усі товари. */
|
|
9
|
+
sectionId: string | null;
|
|
10
|
+
numericProperties: NumericProperty[] | undefined;
|
|
11
|
+
}
|
|
12
|
+
/** Межі цін вибірки — початкові значення слайдера фільтра. */
|
|
13
|
+
export declare function computePriceRange<T extends {
|
|
14
|
+
price: number | null;
|
|
15
|
+
}>(products: T[] | undefined): NumericRange | undefined;
|
|
16
|
+
/** Товари поточного розділу; без розділу — вибірка цілком. */
|
|
17
|
+
export declare function filterBySection<T extends {
|
|
18
|
+
section: {
|
|
19
|
+
id: string;
|
|
20
|
+
} | null;
|
|
21
|
+
}>(products: T[] | undefined, sectionId: string | null): T[] | undefined;
|
|
22
|
+
/** Межі числових характеристик по товарах поточного розділу. */
|
|
23
|
+
export declare function computeNumericRanges<T extends FilterableProduct>(products: T[] | undefined, numericProperties: NumericProperty[] | undefined, sectionId: string | null): NumericRanges;
|
|
24
|
+
/** Вибірка після всіх фільтрів і сортування. */
|
|
25
|
+
export declare function filterAndSortProducts<T extends FilterableProduct>(products: T[] | undefined, { filters, sortBy, sectionId, numericProperties }: FilterAndSortOptions): T[];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { CatalogFiltersProps } from '../../views/slots/CatalogFilters';
|
|
3
|
+
import type { CatalogProductGridProps } from '../../views/slots/CatalogProductGrid';
|
|
4
|
+
import type { CatalogFilterChipsProps, CatalogLinkChipsProps } from '../../views/slots/CatalogSectionChips';
|
|
5
|
+
import type { CatalogActiveFiltersProps, CatalogSortSelectProps, CatalogViewModeToggleProps } from '../../views/slots/CatalogToolbarSlots';
|
|
6
|
+
/**
|
|
7
|
+
* Чипси розділів — один реквізит із двома поведінками: у каталозі вони
|
|
8
|
+
* перемикають вибірку на місці, на сторінці розділу ведуть лінками. Вибір
|
|
9
|
+
* робить контейнер, тема лише ставить слот у свій лейаут.
|
|
10
|
+
*/
|
|
11
|
+
export type CatalogChipsBinding = ({
|
|
12
|
+
mode: 'filter';
|
|
13
|
+
} & Omit<CatalogFilterChipsProps, 'className'>) | ({
|
|
14
|
+
mode: 'link';
|
|
15
|
+
} & Omit<CatalogLinkChipsProps, 'className'>);
|
|
16
|
+
/** Усе, що контейнер прибінджує до реквізитів каталогу. */
|
|
17
|
+
export interface CatalogBindings {
|
|
18
|
+
chips: CatalogChipsBinding;
|
|
19
|
+
filters: Omit<CatalogFiltersProps, 'className'>;
|
|
20
|
+
sort: Omit<CatalogSortSelectProps, 'className'>;
|
|
21
|
+
viewMode: Omit<CatalogViewModeToggleProps, 'className'>;
|
|
22
|
+
activeFilters: Omit<CatalogActiveFiltersProps, 'className'>;
|
|
23
|
+
grid: Omit<CatalogProductGridProps, 'className'>;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* 🔴 Прив'язки їдуть контекстом, а не замиканнями: компоненти слотів мають
|
|
27
|
+
* бути модуль-рівневими й сталими, інакше React перемонтовував би піддерева
|
|
28
|
+
* реквізитів (фільтри з власними запитами, сітку товарів) щорендеру.
|
|
29
|
+
*/
|
|
30
|
+
export declare function CatalogSlotBindings({ value, children, }: {
|
|
31
|
+
value: CatalogBindings;
|
|
32
|
+
children: ReactNode;
|
|
33
|
+
}): import("react").JSX.Element;
|
|
34
|
+
export declare function useCatalogBindings(): CatalogBindings;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { FilterValue } from 'simplycms/core/components/catalog/FilterSidebar';
|
|
2
|
+
export type { FilterValue };
|
|
3
|
+
/** Стан панелі фільтрів: ключ характеристики → обране значення. */
|
|
4
|
+
export type CatalogFiltersState = Record<string, FilterValue>;
|
|
5
|
+
/** Значення характеристики товару у вибірці каталогу. */
|
|
6
|
+
export interface CatalogPropertyValue {
|
|
7
|
+
property_id: string;
|
|
8
|
+
value: string | null;
|
|
9
|
+
numeric_value: number | null;
|
|
10
|
+
option_id: string | null;
|
|
11
|
+
}
|
|
12
|
+
/** Числова характеристика розділу, придатна для фільтра-діапазону. */
|
|
13
|
+
export interface NumericProperty {
|
|
14
|
+
id: string;
|
|
15
|
+
slug: string;
|
|
16
|
+
property_type: string;
|
|
17
|
+
is_filterable: boolean;
|
|
18
|
+
}
|
|
19
|
+
/** Межі числового діапазону поточної вибірки. */
|
|
20
|
+
export interface NumericRange {
|
|
21
|
+
min: number;
|
|
22
|
+
max: number;
|
|
23
|
+
}
|
|
24
|
+
/** Діапазони числових характеристик: slug характеристики → межі. */
|
|
25
|
+
export type NumericRanges = Record<string, NumericRange>;
|
|
26
|
+
/** Бейдж активного фільтра — форма `ActiveFilters` ядра. */
|
|
27
|
+
export interface ActiveFilterChip {
|
|
28
|
+
key: string;
|
|
29
|
+
label: string;
|
|
30
|
+
value: string;
|
|
31
|
+
type: 'option' | 'range' | 'price';
|
|
32
|
+
optionId?: string;
|
|
33
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type ChipSources, type PropertyOptionRow } from './active-filter-chips';
|
|
2
|
+
import type { CatalogFiltersState } from './types';
|
|
3
|
+
export type { PropertyOptionRow };
|
|
4
|
+
interface UseActiveFiltersOptions extends ChipSources {
|
|
5
|
+
filters: CatalogFiltersState;
|
|
6
|
+
setFilters: (filters: CatalogFiltersState) => void;
|
|
7
|
+
}
|
|
8
|
+
/** Список бейджів активних фільтрів + обробники їх зняття. */
|
|
9
|
+
export declare function useActiveFilters({ filters, setFilters, priceRange, numericRanges, numericProperties, propertyOptions, }: UseActiveFiltersOptions): {
|
|
10
|
+
chips: import("./types").ActiveFilterChip[];
|
|
11
|
+
onRemoveFilter: (filter: {
|
|
12
|
+
key: string;
|
|
13
|
+
type: string;
|
|
14
|
+
optionId?: string;
|
|
15
|
+
}) => void;
|
|
16
|
+
onClearAll: () => void;
|
|
17
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ProductListItem } from '../../server/product-list-item';
|
|
2
|
+
import type { CatalogBindings } from './slot-context';
|
|
3
|
+
import { type CatalogSectionRow } from './useCatalogQueries';
|
|
4
|
+
export interface CatalogControllerOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Сторінка розділу: вибірка звужена запитом. `undefined` — сторінка
|
|
7
|
+
* каталогу (розділ обирається чипсами на клієнті), `null` — сторінка
|
|
8
|
+
* розділу, розділ якої ще не приїхав.
|
|
9
|
+
*/
|
|
10
|
+
sectionId?: string | null;
|
|
11
|
+
initialSections?: CatalogSectionRow[];
|
|
12
|
+
initialProducts?: ProductListItem[];
|
|
13
|
+
}
|
|
14
|
+
export interface CatalogController {
|
|
15
|
+
/** Підпис панелі інструментів: скільки товарів у поточній вибірці. */
|
|
16
|
+
productCount: number;
|
|
17
|
+
bindings: CatalogBindings;
|
|
18
|
+
}
|
|
19
|
+
export declare function useCatalogController({ sectionId, initialSections, initialProducts, }?: CatalogControllerOptions): CatalogController;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { CatalogProductRow } from 'simplycms/storefront/loaders';
|
|
2
|
+
/**
|
|
3
|
+
* Вибірка товарів із модифікаціями, цінами, характеристиками й наявністю.
|
|
4
|
+
*
|
|
5
|
+
* `sectionId`:
|
|
6
|
+
* - `undefined` — сторінка каталогу: беруться ВСІ активні товари, розділ
|
|
7
|
+
* потім фільтрується на клієнті (чипси перемикають вибірку без запиту);
|
|
8
|
+
* - рядок — сторінка розділу: вибірка звужена запитом;
|
|
9
|
+
* - `null` — сторінка розділу, розділ ще не приїхав: запит чекає.
|
|
10
|
+
*
|
|
11
|
+
* 🔴 Три колишні запити браузера (модифікації, характеристики модифікацій,
|
|
12
|
+
* залишки по точках видачі) склеєні в один серверний виклик. Наявність
|
|
13
|
+
* приходить готовим прапорцем `isAvailable`: складські рядки клієнту не
|
|
14
|
+
* потрібні й назовні більше не їдуть.
|
|
15
|
+
*/
|
|
16
|
+
export declare function useCatalogProductsQuery(sectionId: string | null | undefined): import("@tanstack/react-query").UseQueryResult<NoInfer<CatalogProductRow[]>, Error>;
|
|
17
|
+
/** Товар вибірки до резолву ціни. */
|
|
18
|
+
export type RawCatalogProduct = CatalogProductRow;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SectionRow } from 'simplycms/storefront/loaders';
|
|
2
|
+
/** Рядок розділу у формі, яку віддає SSR-лоадер і споживають чипси. */
|
|
3
|
+
export type CatalogSectionRow = SectionRow;
|
|
4
|
+
/** Усі активні розділи — чипси над списком товарів. */
|
|
5
|
+
export declare function useSectionsQuery(initialSections?: CatalogSectionRow[]): import("@tanstack/react-query").UseQueryResult<NoInfer<SectionRow[]>, Error>;
|
|
6
|
+
/** Розділ поточної сторінки за slug-ом. */
|
|
7
|
+
export declare function useSectionQuery(sectionSlug: string | undefined, initialSection?: CatalogSectionRow): import("@tanstack/react-query").UseQueryResult<NoInfer<SectionRow | null>, Error>;
|
|
8
|
+
/** Числові характеристики розділу, за якими можна фільтрувати. */
|
|
9
|
+
export declare function useNumericPropertiesQuery(sectionId: string | null): import("@tanstack/react-query").UseQueryResult<NoInfer<import("simplycms/storefront/loaders").NumericPropertyRow[]>, Error>;
|
|
10
|
+
/**
|
|
11
|
+
* Опції характеристик — назви для бейджів активних фільтрів.
|
|
12
|
+
*
|
|
13
|
+
* 🔴 Ключ без розділу навмисно: запит вибирає опції ЦІЛКОМ і розділу не
|
|
14
|
+
* знає, тож розділ у ключі давав би зайвий рефетч тих самих даних на кожне
|
|
15
|
+
* перемикання чипсів (так було до спліту, окремими ключами на двох сторінках).
|
|
16
|
+
*/
|
|
17
|
+
export declare function usePropertyOptionsQuery(): import("@tanstack/react-query").UseQueryResult<NoInfer<import("simplycms/storefront/loaders").FilterOptionRow[]>, Error>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type PriceEntry } from 'simplycms/domain/pricing';
|
|
2
|
+
import type { RawCatalogProduct } from './useCatalogProductsQuery';
|
|
3
|
+
/**
|
|
4
|
+
* Ціна за замовчуванням береться з модифікації-дефолту (товар із
|
|
5
|
+
* модифікаціями) або з самого товару. Знижка, якщо спрацювала, стає
|
|
6
|
+
* поточною ціною, а вихідна показується як «стара».
|
|
7
|
+
*
|
|
8
|
+
* 🔴 Три хуки цінового контуру викликаються безумовно — інакше їхні запити
|
|
9
|
+
* серіалізувалися б після вибірки товарів замість того, щоб іти паралельно.
|
|
10
|
+
*/
|
|
11
|
+
export declare function usePricedProducts(rawProducts: RawCatalogProduct[] | undefined): {
|
|
12
|
+
price: number | null;
|
|
13
|
+
old_price: number | null;
|
|
14
|
+
stock_status: "in_stock" | "out_of_stock" | "on_order";
|
|
15
|
+
has_modifications: boolean;
|
|
16
|
+
section: import("../../../storefront").SectionRef | null;
|
|
17
|
+
product_modifications: import("../../../storefront").CatalogModificationRow[];
|
|
18
|
+
modifications: import("../../../storefront").CatalogModificationRow[];
|
|
19
|
+
product_prices: PriceEntry[];
|
|
20
|
+
propertyValues: import("../../../storefront").CatalogPropertyValueRow[];
|
|
21
|
+
isAvailable: boolean;
|
|
22
|
+
name: import("../../../schema/types").Product["name"];
|
|
23
|
+
id: import("../../../schema/types").Product["id"];
|
|
24
|
+
images: string[];
|
|
25
|
+
description: import("../../../schema/types").Product["description"];
|
|
26
|
+
is_active: import("../../../schema/types").Product["isActive"];
|
|
27
|
+
updated_at: import("../../../schema/types").Product["updatedAt"];
|
|
28
|
+
created_at: import("../../../schema/types").Product["createdAt"];
|
|
29
|
+
slug: import("../../../schema/types").Product["slug"];
|
|
30
|
+
meta_title: import("../../../schema/types").Product["metaTitle"];
|
|
31
|
+
meta_description: import("../../../schema/types").Product["metaDescription"];
|
|
32
|
+
section_id: import("../../../schema/types").Product["sectionId"];
|
|
33
|
+
short_description: import("../../../schema/types").Product["shortDescription"];
|
|
34
|
+
is_featured: import("../../../schema/types").Product["isFeatured"];
|
|
35
|
+
sku: import("../../../schema/types").Product["sku"];
|
|
36
|
+
}[] | undefined;
|
|
37
|
+
/** Товар вибірки з резолвленою ціною — саме він їде у фільтри й у сітку. */
|
|
38
|
+
export type PricedProduct = NonNullable<ReturnType<typeof usePricedProducts>>[number];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { HomeProduct, HomeSection } from './types';
|
|
2
|
+
export interface SectionProductCarouselProps {
|
|
3
|
+
section: HomeSection;
|
|
4
|
+
/** Товари секції з SSR-лоадера — без них карусель зробила б власний запит */
|
|
5
|
+
initialData?: HomeProduct[];
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Канонічна секція головної: товарна добірка однієї кореневої категорії.
|
|
9
|
+
* Порожні категорії не рендеряться.
|
|
10
|
+
*/
|
|
11
|
+
export declare function SectionProductCarousel({ section, initialData, }: SectionProductCarouselProps): import("react").JSX.Element | null;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { HomeProduct, HomeSection } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Запити головної.
|
|
4
|
+
*
|
|
5
|
+
* 🔴 Усі чотири ходять через `createServerFn`, а не в БД із браузера: на
|
|
6
|
+
* чистому Postgres PostgREST не існує, тож будь-який `supabase.from(...)`
|
|
7
|
+
* після гідрації просто нікуди не потрапляє. Форма даних збережена
|
|
8
|
+
* дослівно — сторінка й картки не переписувались.
|
|
9
|
+
*/
|
|
10
|
+
/** Популярні товари (`is_featured`) — канонічна добірка головної */
|
|
11
|
+
export declare function useFeaturedProducts(initialData?: HomeProduct[]): import("@tanstack/react-query").UseQueryResult<NoInfer<HomeProduct[]>, Error>;
|
|
12
|
+
/** Новинки — канонічна добірка головної */
|
|
13
|
+
export declare function useNewProducts(initialData?: HomeProduct[]): import("@tanstack/react-query").UseQueryResult<NoInfer<HomeProduct[]>, Error>;
|
|
14
|
+
/** Кореневі категорії каталогу */
|
|
15
|
+
export declare function useRootSections(initialData?: HomeSection[]): import("@tanstack/react-query").UseQueryResult<NoInfer<HomeSection[]>, Error>;
|
|
16
|
+
/** Опції посекційної добірки: `initialData` приходить із SSR-лоадера */
|
|
17
|
+
export interface SectionProductsOptions {
|
|
18
|
+
initialData?: HomeProduct[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Товари однієї категорії — для посекційної добірки.
|
|
22
|
+
*
|
|
23
|
+
* Дані префетчить SSR-лоадер головної й передає через `initialData`: разом зі
|
|
24
|
+
* `staleTime` це прибирає N+1 — карусель не ходить на сервер під час рендеру.
|
|
25
|
+
*/
|
|
26
|
+
export declare function useSectionProducts(section: HomeSection, options?: SectionProductsOptions): import("@tanstack/react-query").UseQueryResult<NoInfer<HomeProduct[]>, Error>;
|