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,261 @@
|
|
|
1
|
+
import { adminPath } from './chunk-2VKURKLN.js';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { useNavigate } from '@tanstack/react-router';
|
|
4
|
+
import { useQueryClient, useQuery, useMutation } from '@tanstack/react-query';
|
|
5
|
+
import { useSupabaseClient } from 'simplycms/supabase/SupabaseProvider';
|
|
6
|
+
import { Button } from 'simplycms/ui/button';
|
|
7
|
+
import { Input } from 'simplycms/ui/input';
|
|
8
|
+
import { Card, CardHeader, CardTitle, CardContent } from 'simplycms/ui/card';
|
|
9
|
+
import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from 'simplycms/ui/table';
|
|
10
|
+
import { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle } from 'simplycms/ui/dialog';
|
|
11
|
+
import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from 'simplycms/ui/select';
|
|
12
|
+
import { Label } from 'simplycms/ui/label';
|
|
13
|
+
import { Switch } from 'simplycms/ui/switch';
|
|
14
|
+
import { useToast } from 'simplycms/core/hooks/use-toast';
|
|
15
|
+
import { Loader2, Plus, Trash2 } from 'lucide-react';
|
|
16
|
+
import { useT } from 'simplycms/i18n';
|
|
17
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
18
|
+
|
|
19
|
+
var propertyTypes = [
|
|
20
|
+
{ value: "text", labelKey: "admin.properties.type.text" },
|
|
21
|
+
{ value: "number", labelKey: "admin.properties.type.number" },
|
|
22
|
+
{ value: "select", labelKey: "admin.properties.type.select" },
|
|
23
|
+
{ value: "multiselect", labelKey: "admin.properties.type.multiselect" },
|
|
24
|
+
{ value: "range", labelKey: "admin.properties.type.range" },
|
|
25
|
+
{ value: "color", labelKey: "admin.properties.type.color" },
|
|
26
|
+
{ value: "boolean", labelKey: "admin.properties.type.boolean" }
|
|
27
|
+
];
|
|
28
|
+
function Properties() {
|
|
29
|
+
const t = useT();
|
|
30
|
+
const supabase = useSupabaseClient();
|
|
31
|
+
const navigate = useNavigate();
|
|
32
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
33
|
+
const [propertyType, setPropertyType] = useState("text");
|
|
34
|
+
const { toast } = useToast();
|
|
35
|
+
const queryClient = useQueryClient();
|
|
36
|
+
const { data: properties, isLoading } = useQuery({
|
|
37
|
+
queryKey: ["all-properties"],
|
|
38
|
+
queryFn: async () => {
|
|
39
|
+
const { data, error } = await supabase.from("section_properties").select("*").order("name", { ascending: true });
|
|
40
|
+
if (error) throw error;
|
|
41
|
+
return data;
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
const createMutation = useMutation({
|
|
45
|
+
mutationFn: async (data) => {
|
|
46
|
+
const { error } = await supabase.from("section_properties").insert([data]);
|
|
47
|
+
if (error) throw error;
|
|
48
|
+
},
|
|
49
|
+
onSuccess: () => {
|
|
50
|
+
queryClient.invalidateQueries({ queryKey: ["all-properties"] });
|
|
51
|
+
closeDialog();
|
|
52
|
+
toast({ title: t("admin.properties.created") });
|
|
53
|
+
},
|
|
54
|
+
onError: (error) => {
|
|
55
|
+
toast({
|
|
56
|
+
variant: "destructive",
|
|
57
|
+
title: t("common.error"),
|
|
58
|
+
description: error.message
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
const deleteMutation = useMutation({
|
|
63
|
+
mutationFn: async (id) => {
|
|
64
|
+
const { error } = await supabase.from("section_properties").delete().eq("id", id);
|
|
65
|
+
if (error) throw error;
|
|
66
|
+
},
|
|
67
|
+
onSuccess: () => {
|
|
68
|
+
queryClient.invalidateQueries({ queryKey: ["all-properties"] });
|
|
69
|
+
toast({ title: t("admin.properties.deleted") });
|
|
70
|
+
},
|
|
71
|
+
onError: (error) => {
|
|
72
|
+
toast({
|
|
73
|
+
variant: "destructive",
|
|
74
|
+
title: t("common.error"),
|
|
75
|
+
description: error.message
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
const handleSubmit = (e) => {
|
|
80
|
+
e.preventDefault();
|
|
81
|
+
const formData = new FormData(e.currentTarget);
|
|
82
|
+
const data = {
|
|
83
|
+
name: formData.get("name"),
|
|
84
|
+
slug: formData.get("slug"),
|
|
85
|
+
property_type: propertyType,
|
|
86
|
+
is_required: formData.get("is_required") === "on",
|
|
87
|
+
is_filterable: formData.get("is_filterable") === "on",
|
|
88
|
+
has_page: formData.get("has_page") === "on",
|
|
89
|
+
sort_order: parseInt(formData.get("sort_order")) || 0,
|
|
90
|
+
section_id: null
|
|
91
|
+
// Global property
|
|
92
|
+
};
|
|
93
|
+
createMutation.mutate(data);
|
|
94
|
+
};
|
|
95
|
+
const closeDialog = () => {
|
|
96
|
+
setIsOpen(false);
|
|
97
|
+
setPropertyType("text");
|
|
98
|
+
};
|
|
99
|
+
const openCreate = () => {
|
|
100
|
+
setPropertyType("text");
|
|
101
|
+
setIsOpen(true);
|
|
102
|
+
};
|
|
103
|
+
if (isLoading) {
|
|
104
|
+
return /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx(Loader2, { className: "h-8 w-8 animate-spin" }) });
|
|
105
|
+
}
|
|
106
|
+
return /* @__PURE__ */ jsxs("div", { className: "space-y-6", children: [
|
|
107
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
108
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
109
|
+
/* @__PURE__ */ jsx("h1", { className: "text-3xl font-bold", children: t("admin.nav.properties") }),
|
|
110
|
+
/* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("admin.properties.subtitle") })
|
|
111
|
+
] }),
|
|
112
|
+
/* @__PURE__ */ jsxs(Dialog, { open: isOpen, onOpenChange: setIsOpen, children: [
|
|
113
|
+
/* @__PURE__ */ jsx(DialogTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(Button, { onClick: openCreate, children: [
|
|
114
|
+
/* @__PURE__ */ jsx(Plus, { className: "h-4 w-4 mr-2" }),
|
|
115
|
+
t("admin.properties.add")
|
|
116
|
+
] }) }),
|
|
117
|
+
/* @__PURE__ */ jsxs(DialogContent, { className: "max-w-lg max-h-[90vh] overflow-y-auto", children: [
|
|
118
|
+
/* @__PURE__ */ jsx(DialogHeader, { children: /* @__PURE__ */ jsx(DialogTitle, { children: t("admin.properties.new") }) }),
|
|
119
|
+
/* @__PURE__ */ jsxs("form", { onSubmit: handleSubmit, className: "space-y-4", children: [
|
|
120
|
+
/* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
|
|
121
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
122
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "name", children: t("common.name") }),
|
|
123
|
+
/* @__PURE__ */ jsx(
|
|
124
|
+
Input,
|
|
125
|
+
{
|
|
126
|
+
id: "name",
|
|
127
|
+
name: "name",
|
|
128
|
+
placeholder: t("admin.properties.namePlaceholder"),
|
|
129
|
+
required: true
|
|
130
|
+
}
|
|
131
|
+
)
|
|
132
|
+
] }),
|
|
133
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
134
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "slug", children: "Slug" }),
|
|
135
|
+
/* @__PURE__ */ jsx(
|
|
136
|
+
Input,
|
|
137
|
+
{
|
|
138
|
+
id: "slug",
|
|
139
|
+
name: "slug",
|
|
140
|
+
placeholder: "manufacturer",
|
|
141
|
+
required: true
|
|
142
|
+
}
|
|
143
|
+
)
|
|
144
|
+
] })
|
|
145
|
+
] }),
|
|
146
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
147
|
+
/* @__PURE__ */ jsx(Label, { children: t("admin.properties.typeLabel") }),
|
|
148
|
+
/* @__PURE__ */ jsxs(
|
|
149
|
+
Select,
|
|
150
|
+
{
|
|
151
|
+
value: propertyType,
|
|
152
|
+
onValueChange: (v) => setPropertyType(v),
|
|
153
|
+
children: [
|
|
154
|
+
/* @__PURE__ */ jsx(SelectTrigger, { children: /* @__PURE__ */ jsx(SelectValue, {}) }),
|
|
155
|
+
/* @__PURE__ */ jsx(SelectContent, { children: propertyTypes.map((type) => /* @__PURE__ */ jsx(SelectItem, { value: type.value, children: t(type.labelKey) }, type.value)) })
|
|
156
|
+
]
|
|
157
|
+
}
|
|
158
|
+
)
|
|
159
|
+
] }),
|
|
160
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
|
|
161
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "sort_order", children: t("common.sortOrder") }),
|
|
162
|
+
/* @__PURE__ */ jsx(
|
|
163
|
+
Input,
|
|
164
|
+
{
|
|
165
|
+
id: "sort_order",
|
|
166
|
+
name: "sort_order",
|
|
167
|
+
type: "number",
|
|
168
|
+
defaultValue: 0
|
|
169
|
+
}
|
|
170
|
+
)
|
|
171
|
+
] }),
|
|
172
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
|
|
173
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
174
|
+
/* @__PURE__ */ jsx(Switch, { id: "is_required", name: "is_required" }),
|
|
175
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "is_required", children: t("admin.properties.required") })
|
|
176
|
+
] }),
|
|
177
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
178
|
+
/* @__PURE__ */ jsx(Switch, { id: "is_filterable", name: "is_filterable" }),
|
|
179
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "is_filterable", children: t("admin.properties.showInFilters") })
|
|
180
|
+
] }),
|
|
181
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
182
|
+
/* @__PURE__ */ jsx(Switch, { id: "has_page", name: "has_page" }),
|
|
183
|
+
/* @__PURE__ */ jsx(Label, { htmlFor: "has_page", children: t("admin.properties.hasPage") })
|
|
184
|
+
] })
|
|
185
|
+
] }),
|
|
186
|
+
/* @__PURE__ */ jsxs("div", { className: "flex justify-end gap-2 pt-4", children: [
|
|
187
|
+
/* @__PURE__ */ jsx(Button, { type: "button", variant: "outline", onClick: closeDialog, children: t("common.cancel") }),
|
|
188
|
+
/* @__PURE__ */ jsxs(Button, { type: "submit", disabled: createMutation.isPending, children: [
|
|
189
|
+
createMutation.isPending && /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 mr-2 animate-spin" }),
|
|
190
|
+
t("common.create")
|
|
191
|
+
] })
|
|
192
|
+
] })
|
|
193
|
+
] })
|
|
194
|
+
] })
|
|
195
|
+
] })
|
|
196
|
+
] }),
|
|
197
|
+
/* @__PURE__ */ jsxs(Card, { children: [
|
|
198
|
+
/* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { children: t("admin.properties.all") }) }),
|
|
199
|
+
/* @__PURE__ */ jsx(CardContent, { children: /* @__PURE__ */ jsxs(Table, { children: [
|
|
200
|
+
/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
201
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("common.name") }),
|
|
202
|
+
/* @__PURE__ */ jsx(TableHead, { children: "Slug" }),
|
|
203
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("common.type") }),
|
|
204
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("common.filter") }),
|
|
205
|
+
/* @__PURE__ */ jsx(TableHead, { className: "text-right", children: t("common.actions") })
|
|
206
|
+
] }) }),
|
|
207
|
+
/* @__PURE__ */ jsxs(TableBody, { children: [
|
|
208
|
+
properties?.map((property) => /* @__PURE__ */ jsxs(
|
|
209
|
+
TableRow,
|
|
210
|
+
{
|
|
211
|
+
className: "cursor-pointer hover:bg-muted/50",
|
|
212
|
+
onClick: () => navigate({ to: adminPath(`properties/${property.id}`) }),
|
|
213
|
+
children: [
|
|
214
|
+
/* @__PURE__ */ jsxs(TableCell, { className: "font-medium", children: [
|
|
215
|
+
property.name,
|
|
216
|
+
property.is_required && /* @__PURE__ */ jsx("span", { className: "text-destructive ml-1", children: "*" })
|
|
217
|
+
] }),
|
|
218
|
+
/* @__PURE__ */ jsx(TableCell, { className: "text-muted-foreground font-mono text-sm", children: property.slug }),
|
|
219
|
+
/* @__PURE__ */ jsx(TableCell, { children: (() => {
|
|
220
|
+
const type = propertyTypes.find(
|
|
221
|
+
(candidate) => candidate.value === property.property_type
|
|
222
|
+
);
|
|
223
|
+
return type ? t(type.labelKey) : null;
|
|
224
|
+
})() }),
|
|
225
|
+
/* @__PURE__ */ jsx(TableCell, { children: property.is_filterable ? /* @__PURE__ */ jsx("span", { className: "text-green-600", children: t("common.yes") }) : /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: t("common.no") }) }),
|
|
226
|
+
/* @__PURE__ */ jsx(TableCell, { className: "text-right", children: /* @__PURE__ */ jsx(
|
|
227
|
+
Button,
|
|
228
|
+
{
|
|
229
|
+
variant: "ghost",
|
|
230
|
+
size: "icon",
|
|
231
|
+
onClick: (e) => {
|
|
232
|
+
e.stopPropagation();
|
|
233
|
+
if (confirm(t("admin.properties.confirmDelete"))) {
|
|
234
|
+
deleteMutation.mutate(property.id);
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
disabled: deleteMutation.isPending,
|
|
238
|
+
children: /* @__PURE__ */ jsx(Trash2, { className: "h-4 w-4 text-destructive" })
|
|
239
|
+
}
|
|
240
|
+
) })
|
|
241
|
+
]
|
|
242
|
+
},
|
|
243
|
+
property.id
|
|
244
|
+
)),
|
|
245
|
+
properties?.length === 0 && /* @__PURE__ */ jsx(TableRow, { children: /* @__PURE__ */ jsx(
|
|
246
|
+
TableCell,
|
|
247
|
+
{
|
|
248
|
+
colSpan: 5,
|
|
249
|
+
className: "text-center text-muted-foreground",
|
|
250
|
+
children: t("admin.properties.empty")
|
|
251
|
+
}
|
|
252
|
+
) })
|
|
253
|
+
] })
|
|
254
|
+
] }) })
|
|
255
|
+
] })
|
|
256
|
+
] });
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
export { Properties };
|
|
260
|
+
//# sourceMappingURL=chunk-GDMEC2JX.js.map
|
|
261
|
+
//# sourceMappingURL=chunk-GDMEC2JX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin/pages/Properties.tsx"],"names":[],"mappings":"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","file":"chunk-GDMEC2JX.js","sourcesContent":["import { useState } from 'react';\nimport { useNavigate } from '@tanstack/react-router';\nimport { useQuery, useMutation, useQueryClient } from '@tanstack/react-query';\nimport { adminPath } from '../lib/adminLinks';\nimport { useSupabaseClient } from 'simplycms/supabase/SupabaseProvider';\nimport { Button } from 'simplycms/ui/button';\nimport { Input } from 'simplycms/ui/input';\nimport { Card, CardContent, CardHeader, CardTitle } from 'simplycms/ui/card';\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from 'simplycms/ui/table';\nimport {\n Dialog,\n DialogContent,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from 'simplycms/ui/dialog';\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from 'simplycms/ui/select';\nimport { Label } from 'simplycms/ui/label';\nimport { Switch } from 'simplycms/ui/switch';\nimport { useToast } from 'simplycms/core/hooks/use-toast';\nimport { Plus, Trash2, Loader2 } from 'lucide-react';\nimport type { TablesInsert, Enums } from 'simplycms/supabase';\nimport { useT, type MessageKey } from 'simplycms/i18n';\n\n// Код типу приходить із БД (enum `property_type`), тож мапа лишається на рівні\n// модуля й тримає КЛЮЧІ — підпис резолвиться в рендері.\nconst propertyTypes: { value: string; labelKey: MessageKey }[] = [\n { value: 'text', labelKey: 'admin.properties.type.text' },\n { value: 'number', labelKey: 'admin.properties.type.number' },\n { value: 'select', labelKey: 'admin.properties.type.select' },\n { value: 'multiselect', labelKey: 'admin.properties.type.multiselect' },\n { value: 'range', labelKey: 'admin.properties.type.range' },\n { value: 'color', labelKey: 'admin.properties.type.color' },\n { value: 'boolean', labelKey: 'admin.properties.type.boolean' },\n];\n\nexport default function Properties() {\n const t = useT();\n const supabase = useSupabaseClient();\n const navigate = useNavigate();\n const [isOpen, setIsOpen] = useState(false);\n const [propertyType, setPropertyType] =\n useState<Enums<'property_type'>>('text');\n const { toast } = useToast();\n const queryClient = useQueryClient();\n\n // Fetch all properties (global, not section-specific)\n const { data: properties, isLoading } = useQuery({\n queryKey: ['all-properties'],\n queryFn: async () => {\n const { data, error } = await supabase\n .from('section_properties')\n .select('*')\n .order('name', { ascending: true });\n if (error) throw error;\n return data;\n },\n });\n\n const createMutation = useMutation({\n mutationFn: async (data: TablesInsert<'section_properties'>) => {\n const { error } = await supabase\n .from('section_properties')\n .insert([data]);\n if (error) throw error;\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['all-properties'] });\n closeDialog();\n toast({ title: t('admin.properties.created') });\n },\n onError: (error) => {\n toast({\n variant: 'destructive',\n title: t('common.error'),\n description: error.message,\n });\n },\n });\n\n const deleteMutation = useMutation({\n mutationFn: async (id: string) => {\n const { error } = await supabase\n .from('section_properties')\n .delete()\n .eq('id', id);\n if (error) throw error;\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['all-properties'] });\n toast({ title: t('admin.properties.deleted') });\n },\n onError: (error) => {\n toast({\n variant: 'destructive',\n title: t('common.error'),\n description: error.message,\n });\n },\n });\n\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n const formData = new FormData(e.currentTarget);\n\n const data = {\n name: formData.get('name') as string,\n slug: formData.get('slug') as string,\n property_type: propertyType,\n is_required: formData.get('is_required') === 'on',\n is_filterable: formData.get('is_filterable') === 'on',\n has_page: formData.get('has_page') === 'on',\n sort_order: parseInt(formData.get('sort_order') as string) || 0,\n section_id: null, // Global property\n };\n\n createMutation.mutate(data);\n };\n\n const closeDialog = () => {\n setIsOpen(false);\n setPropertyType('text');\n };\n\n const openCreate = () => {\n setPropertyType('text');\n setIsOpen(true);\n };\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center h-64\">\n <Loader2 className=\"h-8 w-8 animate-spin\" />\n </div>\n );\n }\n\n return (\n <div className=\"space-y-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-3xl font-bold\">{t('admin.nav.properties')}</h1>\n <p className=\"text-muted-foreground\">\n {t('admin.properties.subtitle')}\n </p>\n </div>\n <Dialog open={isOpen} onOpenChange={setIsOpen}>\n <DialogTrigger asChild>\n <Button onClick={openCreate}>\n <Plus className=\"h-4 w-4 mr-2\" />\n {t('admin.properties.add')}\n </Button>\n </DialogTrigger>\n <DialogContent className=\"max-w-lg max-h-[90vh] overflow-y-auto\">\n <DialogHeader>\n <DialogTitle>{t('admin.properties.new')}</DialogTitle>\n </DialogHeader>\n <form onSubmit={handleSubmit} className=\"space-y-4\">\n <div className=\"grid grid-cols-2 gap-4\">\n <div className=\"space-y-2\">\n <Label htmlFor=\"name\">{t('common.name')}</Label>\n <Input\n id=\"name\"\n name=\"name\"\n placeholder={t('admin.properties.namePlaceholder')}\n required\n />\n </div>\n <div className=\"space-y-2\">\n <Label htmlFor=\"slug\">Slug</Label>\n <Input\n id=\"slug\"\n name=\"slug\"\n placeholder=\"manufacturer\"\n required\n />\n </div>\n </div>\n\n <div className=\"space-y-2\">\n <Label>{t('admin.properties.typeLabel')}</Label>\n <Select\n value={propertyType}\n onValueChange={(v) =>\n setPropertyType(v as Enums<'property_type'>)\n }\n >\n <SelectTrigger>\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {propertyTypes.map((type) => (\n <SelectItem key={type.value} value={type.value}>\n {t(type.labelKey)}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div className=\"space-y-2\">\n <Label htmlFor=\"sort_order\">{t('common.sortOrder')}</Label>\n <Input\n id=\"sort_order\"\n name=\"sort_order\"\n type=\"number\"\n defaultValue={0}\n />\n </div>\n\n <div className=\"space-y-3\">\n <div className=\"flex items-center gap-2\">\n <Switch id=\"is_required\" name=\"is_required\" />\n <Label htmlFor=\"is_required\">\n {t('admin.properties.required')}\n </Label>\n </div>\n <div className=\"flex items-center gap-2\">\n <Switch id=\"is_filterable\" name=\"is_filterable\" />\n <Label htmlFor=\"is_filterable\">\n {t('admin.properties.showInFilters')}\n </Label>\n </div>\n <div className=\"flex items-center gap-2\">\n <Switch id=\"has_page\" name=\"has_page\" />\n <Label htmlFor=\"has_page\">\n {t('admin.properties.hasPage')}\n </Label>\n </div>\n </div>\n\n <div className=\"flex justify-end gap-2 pt-4\">\n <Button type=\"button\" variant=\"outline\" onClick={closeDialog}>\n {t('common.cancel')}\n </Button>\n <Button type=\"submit\" disabled={createMutation.isPending}>\n {createMutation.isPending && (\n <Loader2 className=\"h-4 w-4 mr-2 animate-spin\" />\n )}\n {t('common.create')}\n </Button>\n </div>\n </form>\n </DialogContent>\n </Dialog>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>{t('admin.properties.all')}</CardTitle>\n </CardHeader>\n <CardContent>\n <Table>\n <TableHeader>\n <TableRow>\n <TableHead>{t('common.name')}</TableHead>\n <TableHead>Slug</TableHead>\n <TableHead>{t('common.type')}</TableHead>\n <TableHead>{t('common.filter')}</TableHead>\n <TableHead className=\"text-right\">\n {t('common.actions')}\n </TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {properties?.map((property) => (\n <TableRow\n key={property.id}\n className=\"cursor-pointer hover:bg-muted/50\"\n onClick={() =>\n navigate({ to: adminPath(`properties/${property.id}`) })\n }\n >\n <TableCell className=\"font-medium\">\n {property.name}\n {property.is_required && (\n <span className=\"text-destructive ml-1\">*</span>\n )}\n </TableCell>\n <TableCell className=\"text-muted-foreground font-mono text-sm\">\n {property.slug}\n </TableCell>\n <TableCell>\n {(() => {\n const type = propertyTypes.find(\n (candidate) =>\n candidate.value === property.property_type,\n );\n return type ? t(type.labelKey) : null;\n })()}\n </TableCell>\n <TableCell>\n {property.is_filterable ? (\n <span className=\"text-green-600\">{t('common.yes')}</span>\n ) : (\n <span className=\"text-muted-foreground\">\n {t('common.no')}\n </span>\n )}\n </TableCell>\n <TableCell className=\"text-right\">\n <Button\n variant=\"ghost\"\n size=\"icon\"\n onClick={(e) => {\n e.stopPropagation();\n if (confirm(t('admin.properties.confirmDelete'))) {\n deleteMutation.mutate(property.id);\n }\n }}\n disabled={deleteMutation.isPending}\n >\n <Trash2 className=\"h-4 w-4 text-destructive\" />\n </Button>\n </TableCell>\n </TableRow>\n ))}\n {properties?.length === 0 && (\n <TableRow>\n <TableCell\n colSpan={5}\n className=\"text-center text-muted-foreground\"\n >\n {t('admin.properties.empty')}\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n </CardContent>\n </Card>\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
3
|
+
import { cn } from 'simplycms/ui/utils';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
// src/ui/tooltip.tsx
|
|
7
|
+
var TooltipProvider = TooltipPrimitive.Provider;
|
|
8
|
+
var Tooltip = TooltipPrimitive.Root;
|
|
9
|
+
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
10
|
+
var TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
11
|
+
TooltipPrimitive.Content,
|
|
12
|
+
{
|
|
13
|
+
ref,
|
|
14
|
+
sideOffset,
|
|
15
|
+
className: cn(
|
|
16
|
+
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
17
|
+
className
|
|
18
|
+
),
|
|
19
|
+
...props
|
|
20
|
+
}
|
|
21
|
+
));
|
|
22
|
+
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
23
|
+
|
|
24
|
+
export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
|
|
25
|
+
//# sourceMappingURL=chunk-GDOSHZKL.js.map
|
|
26
|
+
//# sourceMappingURL=chunk-GDOSHZKL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ui/tooltip.tsx"],"names":[],"mappings":";;;;;;AAKA,IAAM,eAAA,GAAmC,gBAAA,CAAA;AAEzC,IAAM,OAAA,GAA2B,gBAAA,CAAA;AAEjC,IAAM,cAAA,GAAkC,gBAAA,CAAA;AAExC,IAAM,cAAA,GAAuB,KAAA,CAAA,UAAA,CAG3B,CAAC,EAAE,SAAA,EAAW,aAAa,CAAA,EAAG,GAAG,KAAA,EAAM,EAAG,GAAA,qBAC1C,GAAA;AAAA,EAAkB,gBAAA,CAAA,OAAA;AAAA,EAAjB;AAAA,IACC,GAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA,EAAW,EAAA;AAAA,MACT,oYAAA;AAAA,MACA;AAAA,KACF;AAAA,IACC,GAAG;AAAA;AACN,CACD;AACD,cAAA,CAAe,cAA+B,gBAAA,CAAA,OAAA,CAAQ,WAAA","file":"chunk-GDOSHZKL.js","sourcesContent":["import * as React from 'react';\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip';\n\nimport { cn } from 'simplycms/ui/utils';\n\nconst TooltipProvider = TooltipPrimitive.Provider;\n\nconst Tooltip = TooltipPrimitive.Root;\n\nconst TooltipTrigger = TooltipPrimitive.Trigger;\n\nconst TooltipContent = React.forwardRef<\n React.ElementRef<typeof TooltipPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <TooltipPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n 'z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n className,\n )}\n {...props}\n />\n));\nTooltipContent.displayName = TooltipPrimitive.Content.displayName;\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"]}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { adminPath } from './chunk-2VKURKLN.js';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { useQueryClient, useQuery, useMutation } from '@tanstack/react-query';
|
|
4
|
+
import { useNavigate, Link } from '@tanstack/react-router';
|
|
5
|
+
import { useSupabaseClient } from 'simplycms/supabase/SupabaseProvider';
|
|
6
|
+
import { useT } from 'simplycms/i18n';
|
|
7
|
+
import { Button } from 'simplycms/ui/button';
|
|
8
|
+
import { Badge } from 'simplycms/ui/badge';
|
|
9
|
+
import { Switch } from 'simplycms/ui/switch';
|
|
10
|
+
import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from 'simplycms/ui/table';
|
|
11
|
+
import { ArrowLeft, Loader2, Play, Plus, ChevronUp, ChevronDown, ArrowRight } from 'lucide-react';
|
|
12
|
+
import { toast } from 'simplycms/core/hooks/use-toast';
|
|
13
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
14
|
+
|
|
15
|
+
var fieldLabels = {
|
|
16
|
+
total_purchases: "admin.users.totalSpent",
|
|
17
|
+
registration_days: "admin.users.daysSince",
|
|
18
|
+
orders_count: "admin.users.rules.field.ordersCount",
|
|
19
|
+
email_domain: "admin.users.emailDomain",
|
|
20
|
+
auth_provider: "admin.users.rules.field.authProvider",
|
|
21
|
+
utm_source: "UTM Source",
|
|
22
|
+
utm_campaign: "UTM Campaign"
|
|
23
|
+
};
|
|
24
|
+
function UserCategoryRules() {
|
|
25
|
+
const t = useT();
|
|
26
|
+
const supabase = useSupabaseClient();
|
|
27
|
+
const navigate = useNavigate();
|
|
28
|
+
const queryClient = useQueryClient();
|
|
29
|
+
const [isRunning, setIsRunning] = useState(false);
|
|
30
|
+
const { data: rules, isLoading } = useQuery({
|
|
31
|
+
queryKey: ["category-rules"],
|
|
32
|
+
queryFn: async () => {
|
|
33
|
+
const { data, error } = await supabase.from("category_rules").select(
|
|
34
|
+
`
|
|
35
|
+
*,
|
|
36
|
+
from_category:user_categories!category_rules_from_category_id_fkey(name),
|
|
37
|
+
to_category:user_categories!category_rules_to_category_id_fkey(name)
|
|
38
|
+
`
|
|
39
|
+
).order("priority", { ascending: false });
|
|
40
|
+
if (error) throw error;
|
|
41
|
+
return data;
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
const toggleMutation = useMutation({
|
|
45
|
+
mutationFn: async ({
|
|
46
|
+
id,
|
|
47
|
+
is_active
|
|
48
|
+
}) => {
|
|
49
|
+
const { error } = await supabase.from("category_rules").update({ is_active }).eq("id", id);
|
|
50
|
+
if (error) throw error;
|
|
51
|
+
},
|
|
52
|
+
onSuccess: () => {
|
|
53
|
+
queryClient.invalidateQueries({ queryKey: ["category-rules"] });
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
const priorityMutation = useMutation({
|
|
57
|
+
mutationFn: async ({ id, priority }) => {
|
|
58
|
+
const { error } = await supabase.from("category_rules").update({ priority }).eq("id", id);
|
|
59
|
+
if (error) throw error;
|
|
60
|
+
},
|
|
61
|
+
onSuccess: () => {
|
|
62
|
+
queryClient.invalidateQueries({ queryKey: ["category-rules"] });
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
const runAllRules = async () => {
|
|
66
|
+
setIsRunning(true);
|
|
67
|
+
try {
|
|
68
|
+
const { data, error } = await supabase.rpc(
|
|
69
|
+
"check_all_users_category_rules"
|
|
70
|
+
);
|
|
71
|
+
if (error) throw error;
|
|
72
|
+
toast({
|
|
73
|
+
title: t("admin.users.rules.checkDone"),
|
|
74
|
+
description: t("admin.users.rules.checkResult", {
|
|
75
|
+
count: data || 0
|
|
76
|
+
})
|
|
77
|
+
});
|
|
78
|
+
queryClient.invalidateQueries({ queryKey: ["admin-users"] });
|
|
79
|
+
} catch (error) {
|
|
80
|
+
toast({
|
|
81
|
+
title: t("common.error"),
|
|
82
|
+
description: error instanceof Error ? error.message : t("admin.users.rules.unknownError"),
|
|
83
|
+
variant: "destructive"
|
|
84
|
+
});
|
|
85
|
+
} finally {
|
|
86
|
+
setIsRunning(false);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
const formatConditions = (conditions) => {
|
|
90
|
+
if (!conditions?.rules?.length) return "\u2014";
|
|
91
|
+
return conditions.rules.map((r, i) => /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-1", children: [
|
|
92
|
+
i > 0 && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground mx-1", children: conditions.type === "all" ? t("admin.users.rules.and") : t("admin.users.rules.or") }),
|
|
93
|
+
/* @__PURE__ */ jsxs(Badge, { variant: "outline", className: "font-normal", children: [
|
|
94
|
+
fieldLabels[r.field] ? t(fieldLabels[r.field]) : r.field,
|
|
95
|
+
" ",
|
|
96
|
+
r.operator,
|
|
97
|
+
" ",
|
|
98
|
+
r.value
|
|
99
|
+
] })
|
|
100
|
+
] }, i));
|
|
101
|
+
};
|
|
102
|
+
const movePriority = (ruleId, currentPriority, direction) => {
|
|
103
|
+
const newPriority = direction === "up" ? currentPriority + 1 : currentPriority - 1;
|
|
104
|
+
priorityMutation.mutate({ id: ruleId, priority: newPriority });
|
|
105
|
+
};
|
|
106
|
+
return /* @__PURE__ */ jsxs("div", { className: "space-y-6", children: [
|
|
107
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
108
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-4", children: [
|
|
109
|
+
/* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon", asChild: true, children: /* @__PURE__ */ jsx(Link, { to: adminPath("user-categories"), children: /* @__PURE__ */ jsx(ArrowLeft, { className: "h-5 w-5" }) }) }),
|
|
110
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
111
|
+
/* @__PURE__ */ jsx("h1", { className: "text-3xl font-bold", children: t("admin.users.categories.rules") }),
|
|
112
|
+
/* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: t("admin.users.rules.subtitle") })
|
|
113
|
+
] })
|
|
114
|
+
] }),
|
|
115
|
+
/* @__PURE__ */ jsxs("div", { className: "flex gap-2", children: [
|
|
116
|
+
/* @__PURE__ */ jsxs(Button, { variant: "outline", onClick: runAllRules, disabled: isRunning, children: [
|
|
117
|
+
isRunning ? /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 mr-2 animate-spin" }) : /* @__PURE__ */ jsx(Play, { className: "h-4 w-4 mr-2" }),
|
|
118
|
+
t("admin.users.rules.run")
|
|
119
|
+
] }),
|
|
120
|
+
/* @__PURE__ */ jsx(Button, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
121
|
+
Link,
|
|
122
|
+
{
|
|
123
|
+
to: adminPath("user-categories/rules/$ruleId"),
|
|
124
|
+
params: { ruleId: "new" },
|
|
125
|
+
children: [
|
|
126
|
+
/* @__PURE__ */ jsx(Plus, { className: "h-4 w-4 mr-2" }),
|
|
127
|
+
t("admin.users.rules.add")
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
) })
|
|
131
|
+
] })
|
|
132
|
+
] }),
|
|
133
|
+
/* @__PURE__ */ jsx("div", { className: "border rounded-lg", children: /* @__PURE__ */ jsxs(Table, { children: [
|
|
134
|
+
/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
135
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-16", children: t("common.priority") }),
|
|
136
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("common.name") }),
|
|
137
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("admin.users.rules.transition") }),
|
|
138
|
+
/* @__PURE__ */ jsx(TableHead, { children: t("admin.users.rules.conditions") }),
|
|
139
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-24 text-center", children: t("common.activeN") })
|
|
140
|
+
] }) }),
|
|
141
|
+
/* @__PURE__ */ jsx(TableBody, { children: isLoading ? /* @__PURE__ */ jsx(TableRow, { children: /* @__PURE__ */ jsx(TableCell, { colSpan: 5, className: "text-center py-8", children: t("common.loading") }) }) : rules?.length === 0 ? /* @__PURE__ */ jsx(TableRow, { children: /* @__PURE__ */ jsx(TableCell, { colSpan: 5, className: "text-center py-8", children: t("admin.users.rules.empty") }) }) : rules?.map((rule) => /* @__PURE__ */ jsxs(
|
|
142
|
+
TableRow,
|
|
143
|
+
{
|
|
144
|
+
className: "cursor-pointer hover:bg-muted/50",
|
|
145
|
+
onClick: () => navigate({
|
|
146
|
+
to: adminPath(`user-categories/rules/${rule.id}`)
|
|
147
|
+
}),
|
|
148
|
+
children: [
|
|
149
|
+
/* @__PURE__ */ jsx(TableCell, { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
150
|
+
/* @__PURE__ */ jsx("span", { className: "font-mono text-sm", children: rule.priority }),
|
|
151
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col", children: [
|
|
152
|
+
/* @__PURE__ */ jsx(
|
|
153
|
+
Button,
|
|
154
|
+
{
|
|
155
|
+
variant: "ghost",
|
|
156
|
+
size: "icon",
|
|
157
|
+
className: "h-5 w-5",
|
|
158
|
+
onClick: () => movePriority(rule.id, rule.priority, "up"),
|
|
159
|
+
children: /* @__PURE__ */ jsx(ChevronUp, { className: "h-3 w-3" })
|
|
160
|
+
}
|
|
161
|
+
),
|
|
162
|
+
/* @__PURE__ */ jsx(
|
|
163
|
+
Button,
|
|
164
|
+
{
|
|
165
|
+
variant: "ghost",
|
|
166
|
+
size: "icon",
|
|
167
|
+
className: "h-5 w-5",
|
|
168
|
+
onClick: () => movePriority(rule.id, rule.priority, "down"),
|
|
169
|
+
children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-3 w-3" })
|
|
170
|
+
}
|
|
171
|
+
)
|
|
172
|
+
] })
|
|
173
|
+
] }) }),
|
|
174
|
+
/* @__PURE__ */ jsxs(TableCell, { children: [
|
|
175
|
+
/* @__PURE__ */ jsx("div", { className: "font-medium", children: rule.name }),
|
|
176
|
+
rule.description && /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: rule.description })
|
|
177
|
+
] }),
|
|
178
|
+
/* @__PURE__ */ jsx(TableCell, { children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
179
|
+
/* @__PURE__ */ jsx(Badge, { variant: "secondary", children: rule.from_category?.name || t("admin.users.rules.any") }),
|
|
180
|
+
/* @__PURE__ */ jsx(ArrowRight, { className: "h-4 w-4 text-muted-foreground" }),
|
|
181
|
+
/* @__PURE__ */ jsx(Badge, { children: rule.to_category?.name })
|
|
182
|
+
] }) }),
|
|
183
|
+
/* @__PURE__ */ jsx(TableCell, { children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1", children: formatConditions(
|
|
184
|
+
rule.conditions
|
|
185
|
+
) }) }),
|
|
186
|
+
/* @__PURE__ */ jsx(
|
|
187
|
+
TableCell,
|
|
188
|
+
{
|
|
189
|
+
className: "text-center",
|
|
190
|
+
onClick: (e) => e.stopPropagation(),
|
|
191
|
+
children: /* @__PURE__ */ jsx(
|
|
192
|
+
Switch,
|
|
193
|
+
{
|
|
194
|
+
checked: rule.is_active,
|
|
195
|
+
onCheckedChange: (checked) => toggleMutation.mutate({
|
|
196
|
+
id: rule.id,
|
|
197
|
+
is_active: checked
|
|
198
|
+
})
|
|
199
|
+
}
|
|
200
|
+
)
|
|
201
|
+
}
|
|
202
|
+
)
|
|
203
|
+
]
|
|
204
|
+
},
|
|
205
|
+
rule.id
|
|
206
|
+
)) })
|
|
207
|
+
] }) }),
|
|
208
|
+
/* @__PURE__ */ jsx("div", { className: "text-sm text-muted-foreground", children: /* @__PURE__ */ jsxs("p", { children: [
|
|
209
|
+
/* @__PURE__ */ jsx("strong", { children: t("common.howItWorks") }),
|
|
210
|
+
" ",
|
|
211
|
+
t("admin.users.rules.howItWorksText")
|
|
212
|
+
] }) })
|
|
213
|
+
] });
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
export { UserCategoryRules };
|
|
217
|
+
//# sourceMappingURL=chunk-GEFYA744.js.map
|
|
218
|
+
//# sourceMappingURL=chunk-GEFYA744.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin/pages/UserCategoryRules.tsx"],"names":[],"mappings":"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","file":"chunk-GEFYA744.js","sourcesContent":["import { useState } from 'react';\nimport { useQuery, useMutation, useQueryClient } from '@tanstack/react-query';\nimport { useNavigate, Link } from '@tanstack/react-router';\nimport { useSupabaseClient } from 'simplycms/supabase/SupabaseProvider';\nimport { useT, type MessageKey } from 'simplycms/i18n';\nimport { Button } from 'simplycms/ui/button';\nimport { Badge } from 'simplycms/ui/badge';\nimport { Switch } from 'simplycms/ui/switch';\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from 'simplycms/ui/table';\nimport {\n ArrowLeft,\n Plus,\n Play,\n ArrowRight,\n Loader2,\n ChevronUp,\n ChevronDown,\n} from 'lucide-react';\nimport { toast } from 'simplycms/core/hooks/use-toast';\nimport { adminPath } from '../lib/adminLinks';\n\ninterface RuleCondition {\n field: string;\n operator: string;\n value: string | number;\n}\n\ninterface RuleConditions {\n type: 'all' | 'any';\n rules: RuleCondition[];\n}\n\n// Мапа КЛЮЧІВ: код поля умови зберігається в БД.\nconst fieldLabels: Record<string, MessageKey | string> = {\n total_purchases: 'admin.users.totalSpent',\n registration_days: 'admin.users.daysSince',\n orders_count: 'admin.users.rules.field.ordersCount',\n email_domain: 'admin.users.emailDomain',\n auth_provider: 'admin.users.rules.field.authProvider',\n utm_source: 'UTM Source',\n utm_campaign: 'UTM Campaign',\n};\n\nexport default function UserCategoryRules() {\n const t = useT();\n const supabase = useSupabaseClient();\n const navigate = useNavigate();\n const queryClient = useQueryClient();\n const [isRunning, setIsRunning] = useState(false);\n\n // Fetch rules with categories\n const { data: rules, isLoading } = useQuery({\n queryKey: ['category-rules'],\n queryFn: async () => {\n const { data, error } = await supabase\n .from('category_rules')\n .select(\n `\n *,\n from_category:user_categories!category_rules_from_category_id_fkey(name),\n to_category:user_categories!category_rules_to_category_id_fkey(name)\n `,\n )\n .order('priority', { ascending: false });\n if (error) throw error;\n return data;\n },\n });\n\n // Toggle active mutation\n const toggleMutation = useMutation({\n mutationFn: async ({\n id,\n is_active,\n }: {\n id: string;\n is_active: boolean;\n }) => {\n const { error } = await supabase\n .from('category_rules')\n .update({ is_active })\n .eq('id', id);\n if (error) throw error;\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['category-rules'] });\n },\n });\n\n // Update priority mutation\n const priorityMutation = useMutation({\n mutationFn: async ({ id, priority }: { id: string; priority: number }) => {\n const { error } = await supabase\n .from('category_rules')\n .update({ priority })\n .eq('id', id);\n if (error) throw error;\n },\n onSuccess: () => {\n queryClient.invalidateQueries({ queryKey: ['category-rules'] });\n },\n });\n\n // Run all rules manually\n const runAllRules = async () => {\n setIsRunning(true);\n try {\n const { data, error } = await supabase.rpc(\n 'check_all_users_category_rules',\n );\n if (error) throw error;\n toast({\n title: t('admin.users.rules.checkDone'),\n description: t('admin.users.rules.checkResult', {\n count: data || 0,\n }),\n });\n queryClient.invalidateQueries({ queryKey: ['admin-users'] });\n } catch (error: unknown) {\n toast({\n title: t('common.error'),\n description:\n error instanceof Error\n ? error.message\n : t('admin.users.rules.unknownError'),\n variant: 'destructive',\n });\n } finally {\n setIsRunning(false);\n }\n };\n\n const formatConditions = (conditions: RuleConditions) => {\n if (!conditions?.rules?.length) return '—';\n return conditions.rules.map((r, i) => (\n <span key={i} className=\"inline-flex items-center gap-1\">\n {i > 0 && (\n <span className=\"text-muted-foreground mx-1\">\n {conditions.type === 'all'\n ? t('admin.users.rules.and')\n : t('admin.users.rules.or')}\n </span>\n )}\n <Badge variant=\"outline\" className=\"font-normal\">\n {fieldLabels[r.field]\n ? t(fieldLabels[r.field] as MessageKey)\n : r.field}{' '}\n {r.operator} {r.value}\n </Badge>\n </span>\n ));\n };\n\n const movePriority = (\n ruleId: string,\n currentPriority: number,\n direction: 'up' | 'down',\n ) => {\n const newPriority =\n direction === 'up' ? currentPriority + 1 : currentPriority - 1;\n priorityMutation.mutate({ id: ruleId, priority: newPriority });\n };\n\n return (\n <div className=\"space-y-6\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-4\">\n <Button variant=\"ghost\" size=\"icon\" asChild>\n <Link to={adminPath('user-categories')}>\n <ArrowLeft className=\"h-5 w-5\" />\n </Link>\n </Button>\n <div>\n <h1 className=\"text-3xl font-bold\">\n {t('admin.users.categories.rules')}\n </h1>\n <p className=\"text-muted-foreground\">\n {t('admin.users.rules.subtitle')}\n </p>\n </div>\n </div>\n <div className=\"flex gap-2\">\n <Button variant=\"outline\" onClick={runAllRules} disabled={isRunning}>\n {isRunning ? (\n <Loader2 className=\"h-4 w-4 mr-2 animate-spin\" />\n ) : (\n <Play className=\"h-4 w-4 mr-2\" />\n )}\n {t('admin.users.rules.run')}\n </Button>\n <Button asChild>\n <Link\n to={adminPath('user-categories/rules/$ruleId')}\n params={{ ruleId: 'new' }}\n >\n <Plus className=\"h-4 w-4 mr-2\" />\n {t('admin.users.rules.add')}\n </Link>\n </Button>\n </div>\n </div>\n\n <div className=\"border rounded-lg\">\n <Table>\n <TableHeader>\n <TableRow>\n <TableHead className=\"w-16\">{t('common.priority')}</TableHead>\n <TableHead>{t('common.name')}</TableHead>\n <TableHead>{t('admin.users.rules.transition')}</TableHead>\n <TableHead>{t('admin.users.rules.conditions')}</TableHead>\n <TableHead className=\"w-24 text-center\">\n {t('common.activeN')}\n </TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {isLoading ? (\n <TableRow>\n <TableCell colSpan={5} className=\"text-center py-8\">\n {t('common.loading')}\n </TableCell>\n </TableRow>\n ) : rules?.length === 0 ? (\n <TableRow>\n <TableCell colSpan={5} className=\"text-center py-8\">\n {t('admin.users.rules.empty')}\n </TableCell>\n </TableRow>\n ) : (\n rules?.map((rule) => (\n <TableRow\n key={rule.id}\n className=\"cursor-pointer hover:bg-muted/50\"\n onClick={() =>\n navigate({\n to: adminPath(`user-categories/rules/${rule.id}`),\n })\n }\n >\n <TableCell onClick={(e) => e.stopPropagation()}>\n <div className=\"flex items-center gap-1\">\n <span className=\"font-mono text-sm\">{rule.priority}</span>\n <div className=\"flex flex-col\">\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-5 w-5\"\n onClick={() =>\n movePriority(rule.id, rule.priority, 'up')\n }\n >\n <ChevronUp className=\"h-3 w-3\" />\n </Button>\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-5 w-5\"\n onClick={() =>\n movePriority(rule.id, rule.priority, 'down')\n }\n >\n <ChevronDown className=\"h-3 w-3\" />\n </Button>\n </div>\n </div>\n </TableCell>\n <TableCell>\n <div className=\"font-medium\">{rule.name}</div>\n {rule.description && (\n <p className=\"text-sm text-muted-foreground\">\n {rule.description}\n </p>\n )}\n </TableCell>\n <TableCell>\n <div className=\"flex items-center gap-2\">\n <Badge variant=\"secondary\">\n {rule.from_category?.name || t('admin.users.rules.any')}\n </Badge>\n <ArrowRight className=\"h-4 w-4 text-muted-foreground\" />\n <Badge>{rule.to_category?.name}</Badge>\n </div>\n </TableCell>\n <TableCell>\n <div className=\"flex flex-wrap gap-1\">\n {formatConditions(\n rule.conditions as unknown as RuleConditions,\n )}\n </div>\n </TableCell>\n <TableCell\n className=\"text-center\"\n onClick={(e) => e.stopPropagation()}\n >\n <Switch\n checked={rule.is_active}\n onCheckedChange={(checked) =>\n toggleMutation.mutate({\n id: rule.id,\n is_active: checked,\n })\n }\n />\n </TableCell>\n </TableRow>\n ))\n )}\n </TableBody>\n </Table>\n </div>\n\n <div className=\"text-sm text-muted-foreground\">\n <p>\n <strong>{t('common.howItWorks')}</strong>{' '}\n {t('admin.users.rules.howItWorksText')}\n </p>\n </div>\n </div>\n );\n}\n"]}
|