@brunoalz/smartgesti-site-editor 0.2.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/editor/BlockSelector.d.ts +2 -1
- package/dist/editor/BlockSelector.d.ts.map +1 -1
- package/dist/editor/BlockSelector.js +55 -64
- package/dist/editor/BlockSelector.js.map +1 -1
- package/dist/editor/LandingPageEditor.d.ts +19 -0
- package/dist/editor/LandingPageEditor.d.ts.map +1 -0
- package/dist/editor/LandingPageEditor.js +239 -0
- package/dist/editor/LandingPageEditor.js.map +1 -0
- package/dist/editor/PageTabBar.d.ts +4 -1
- package/dist/editor/PageTabBar.d.ts.map +1 -1
- package/dist/editor/PageTabBar.js +179 -41
- package/dist/editor/PageTabBar.js.map +1 -1
- package/dist/editor/PropertyEditor/BlockPropertyEditor.d.ts +5 -3
- package/dist/editor/PropertyEditor/BlockPropertyEditor.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/BlockPropertyEditor.js +60 -113
- package/dist/editor/PropertyEditor/BlockPropertyEditor.js.map +1 -1
- package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.d.ts +3 -1
- package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.js +47 -33
- package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.js.map +1 -1
- package/dist/editor/PropertyEditor/PropertyGroup.d.ts +1 -1
- package/dist/editor/PropertyEditor/PropertyGroup.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.d.ts +2 -1
- package/dist/editor/PropertyEditor/VariationSelector.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.js +35 -31
- package/dist/editor/PropertyEditor/VariationSelector.js.map +1 -1
- package/dist/editor/PropertyEditor/index.js +30 -28
- package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.d.ts +16 -0
- package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.d.ts.map +1 -0
- package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.js +170 -0
- package/dist/editor/PropertyEditor/inputs/CarouselImagesInput.js.map +1 -0
- package/dist/editor/PropertyEditor/inputs/ImageGridInput.d.ts +1 -1
- package/dist/editor/PropertyEditor/inputs/ImageGridInput.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/inputs/ImageGridInput.js +148 -121
- package/dist/editor/PropertyEditor/inputs/ImageGridInput.js.map +1 -1
- package/dist/editor/PropertyEditor/inputs/ImageInput.d.ts.map +1 -0
- package/dist/{components → editor/PropertyEditor}/inputs/ImageInput.js +41 -39
- package/dist/editor/PropertyEditor/inputs/ImageInput.js.map +1 -0
- package/dist/editor/PropertyEditor/inputs/TypographyInput.js +41 -44
- package/dist/editor/PropertyEditor/inputs/TypographyInput.js.map +1 -1
- package/dist/editor/PropertyEditor/inputs/index.d.ts +2 -0
- package/dist/editor/PropertyEditor/inputs/index.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/renderPropertyInput.d.ts +1 -1
- package/dist/editor/PropertyEditor/renderPropertyInput.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/renderPropertyInput.js +167 -139
- package/dist/editor/PropertyEditor/renderPropertyInput.js.map +1 -1
- package/dist/editor/components/CenterPanel.d.ts +13 -4
- package/dist/editor/components/CenterPanel.d.ts.map +1 -1
- package/dist/editor/components/CenterPanel.js +40 -31
- package/dist/editor/components/CenterPanel.js.map +1 -1
- package/dist/editor/components/LeftPanel.d.ts +2 -1
- package/dist/editor/components/LeftPanel.d.ts.map +1 -1
- package/dist/editor/components/LeftPanel.js +13 -12
- package/dist/editor/components/LeftPanel.js.map +1 -1
- package/dist/editor/components/LoadingSpinner.d.ts.map +1 -0
- package/dist/editor/components/LoadingSpinner.js.map +1 -0
- package/dist/editor/components/RightPanel.d.ts +8 -2
- package/dist/editor/components/RightPanel.d.ts.map +1 -1
- package/dist/editor/components/RightPanel.js +24 -19
- package/dist/editor/components/RightPanel.js.map +1 -1
- package/dist/editor/components/Toolbar.d.ts +5 -1
- package/dist/editor/components/Toolbar.d.ts.map +1 -1
- package/dist/editor/components/Toolbar.js +56 -40
- package/dist/editor/components/Toolbar.js.map +1 -1
- package/dist/engine/export/exportHtml.d.ts +10 -5
- package/dist/engine/export/exportHtml.d.ts.map +1 -1
- package/dist/engine/export/exportHtml.js +38 -40
- package/dist/engine/export/exportHtml.js.map +1 -1
- package/dist/engine/export/exporters/content/HeadingExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/content/HeadingExporter.js +6 -6
- package/dist/engine/export/exporters/content/HeadingExporter.js.map +1 -1
- package/dist/engine/export/exporters/content/LinkExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/content/LinkExporter.js +6 -6
- package/dist/engine/export/exporters/content/LinkExporter.js.map +1 -1
- package/dist/engine/export/exporters/content/TextExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/content/TextExporter.js +7 -7
- package/dist/engine/export/exporters/content/TextExporter.js.map +1 -1
- package/dist/engine/export/exporters/sections/BlogPostExporters.d.ts +6 -0
- package/dist/engine/export/exporters/sections/BlogPostExporters.d.ts.map +1 -0
- package/dist/engine/export/exporters/sections/BlogPostExporters.js +101 -0
- package/dist/engine/export/exporters/sections/BlogPostExporters.js.map +1 -0
- package/dist/engine/export/exporters/sections/FooterExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/sections/FooterExporter.js +33 -40
- package/dist/engine/export/exporters/sections/FooterExporter.js.map +1 -1
- package/dist/engine/export/exporters/sections/HeroExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/sections/HeroExporter.js +222 -218
- package/dist/engine/export/exporters/sections/HeroExporter.js.map +1 -1
- package/dist/engine/export/exporters/sections/MarketingExporters.js +88 -88
- package/dist/engine/export/exporters/sections/MarketingExporters.js.map +1 -1
- package/dist/engine/export/exporters/sections/NavbarExporter.js +34 -34
- package/dist/engine/export/exporters/sections/NavbarExporter.js.map +1 -1
- package/dist/engine/export/exporters/sections/index.d.ts.map +1 -1
- package/dist/engine/export/exporters/sections/index.js +29 -22
- package/dist/engine/export/exporters/sections/index.js.map +1 -1
- package/dist/engine/export/sanitizeHtml.d.ts.map +1 -1
- package/dist/engine/export/sanitizeHtml.js +65 -18
- package/dist/engine/export/sanitizeHtml.js.map +1 -1
- package/dist/engine/export/styleResolver.d.ts.map +1 -1
- package/dist/engine/export/styleResolver.js +33 -33
- package/dist/engine/export/styleResolver.js.map +1 -1
- package/dist/engine/generators/generateLandingPage.d.ts +4 -4
- package/dist/engine/generators/generateLandingPage.d.ts.map +1 -1
- package/dist/engine/generators/generateLandingPage.js.map +1 -1
- package/dist/engine/index.d.ts +6 -3
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +99 -89
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/patch/PatchBuilder.d.ts +11 -11
- package/dist/engine/patch/PatchBuilder.d.ts.map +1 -1
- package/dist/engine/patch/PatchBuilder.js +92 -93
- package/dist/engine/patch/PatchBuilder.js.map +1 -1
- package/dist/engine/patch/applyPatch.js.map +1 -1
- package/dist/engine/plugins/builtin/blog/index.d.ts +3 -0
- package/dist/engine/plugins/builtin/blog/index.d.ts.map +1 -0
- package/dist/engine/plugins/builtin/blog/manifest.d.ts +3 -0
- package/dist/engine/plugins/builtin/blog/manifest.d.ts.map +1 -0
- package/dist/engine/plugins/builtin/blog/manifest.js +273 -0
- package/dist/engine/plugins/builtin/blog/manifest.js.map +1 -0
- package/dist/engine/plugins/builtin/blog/mockContentProvider.d.ts +7 -0
- package/dist/engine/plugins/builtin/blog/mockContentProvider.d.ts.map +1 -0
- package/dist/engine/plugins/builtin/blog/mockContentProvider.js +135 -0
- package/dist/engine/plugins/builtin/blog/mockContentProvider.js.map +1 -0
- package/dist/engine/plugins/contentHydration.d.ts +17 -0
- package/dist/engine/plugins/contentHydration.d.ts.map +1 -0
- package/dist/engine/plugins/contentHydration.js +121 -0
- package/dist/engine/plugins/contentHydration.js.map +1 -0
- package/dist/engine/plugins/dynamicPageResolver.d.ts +25 -0
- package/dist/engine/plugins/dynamicPageResolver.d.ts.map +1 -0
- package/dist/engine/plugins/dynamicPageResolver.js +32 -0
- package/dist/engine/plugins/dynamicPageResolver.js.map +1 -0
- package/dist/engine/plugins/index.d.ts +11 -0
- package/dist/engine/plugins/index.d.ts.map +1 -0
- package/dist/engine/plugins/pluginRegistry.d.ts +37 -0
- package/dist/engine/plugins/pluginRegistry.d.ts.map +1 -0
- package/dist/engine/plugins/pluginRegistry.js +134 -0
- package/dist/engine/plugins/pluginRegistry.js.map +1 -0
- package/dist/engine/plugins/types.d.ts +180 -0
- package/dist/engine/plugins/types.d.ts.map +1 -0
- package/dist/engine/presets/heroVariations.d.ts +5 -0
- package/dist/engine/presets/heroVariations.d.ts.map +1 -1
- package/dist/engine/presets/heroVariations.js +50 -6
- package/dist/engine/presets/heroVariations.js.map +1 -1
- package/dist/engine/preview/Preview.d.ts +19 -0
- package/dist/engine/preview/Preview.d.ts.map +1 -0
- package/dist/engine/preview/Preview.js +418 -0
- package/dist/engine/preview/Preview.js.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostCard.d.ts +3 -0
- package/dist/engine/registry/blocks/sections/blogPostCard.d.ts.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostCard.js +53 -0
- package/dist/engine/registry/blocks/sections/blogPostCard.js.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostDetail.d.ts +3 -0
- package/dist/engine/registry/blocks/sections/blogPostDetail.d.ts.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostDetail.js +49 -0
- package/dist/engine/registry/blocks/sections/blogPostDetail.js.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostGrid.d.ts +3 -0
- package/dist/engine/registry/blocks/sections/blogPostGrid.d.ts.map +1 -0
- package/dist/engine/registry/blocks/sections/blogPostGrid.js +89 -0
- package/dist/engine/registry/blocks/sections/blogPostGrid.js.map +1 -0
- package/dist/engine/registry/blocks/sections/hero.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/hero.js +67 -14
- package/dist/engine/registry/blocks/sections/hero.js.map +1 -1
- package/dist/engine/registry/blocks/sections/index.d.ts +3 -0
- package/dist/engine/registry/blocks/sections/index.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/navbar.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/navbar.js +2 -1
- package/dist/engine/registry/blocks/sections/navbar.js.map +1 -1
- package/dist/engine/registry/registry.d.ts.map +1 -1
- package/dist/engine/registry/registry.js +39 -36
- package/dist/engine/registry/registry.js.map +1 -1
- package/dist/engine/registry/types.d.ts +17 -13
- package/dist/engine/registry/types.d.ts.map +1 -1
- package/dist/engine/render/renderNodeImpl.js +85 -85
- package/dist/engine/render/renderNodeImpl.js.map +1 -1
- package/dist/engine/render/renderPage.d.ts +3 -3
- package/dist/engine/render/renderPage.d.ts.map +1 -1
- package/dist/engine/render/renderPage.js.map +1 -1
- package/dist/engine/render/renderers/composition/CardRenderer.js +4 -4
- package/dist/engine/render/renderers/content/LinkRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/content/LinkRenderer.js +41 -16
- package/dist/engine/render/renderers/content/LinkRenderer.js.map +1 -1
- package/dist/engine/render/renderers/content/SocialLinksRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/content/SocialLinksRenderer.js +16 -23
- package/dist/engine/render/renderers/content/SocialLinksRenderer.js.map +1 -1
- package/dist/engine/render/renderers/forms/FormRenderer.js +6 -6
- package/dist/engine/render/renderers/layout/GridRenderer.js +3 -3
- package/dist/engine/render/renderers/sections/BlogPostCardRenderer.d.ts +3 -0
- package/dist/engine/render/renderers/sections/BlogPostCardRenderer.d.ts.map +1 -0
- package/dist/engine/render/renderers/sections/BlogPostCardRenderer.js +199 -0
- package/dist/engine/render/renderers/sections/BlogPostCardRenderer.js.map +1 -0
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.d.ts +3 -0
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.d.ts.map +1 -0
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js +293 -0
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js.map +1 -0
- package/dist/engine/render/renderers/sections/BlogPostGridRenderer.d.ts +3 -0
- package/dist/engine/render/renderers/sections/BlogPostGridRenderer.d.ts.map +1 -0
- package/dist/engine/render/renderers/sections/BlogPostGridRenderer.js +101 -0
- package/dist/engine/render/renderers/sections/BlogPostGridRenderer.js.map +1 -0
- package/dist/engine/render/renderers/sections/CtaRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/CtaRenderer.js +33 -31
- package/dist/engine/render/renderers/sections/CtaRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/FaqItemRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/FaqItemRenderer.js +7 -6
- package/dist/engine/render/renderers/sections/FaqItemRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/FaqRenderer.js +7 -7
- package/dist/engine/render/renderers/sections/FaqRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/FeatureGridRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/FeatureGridRenderer.js +19 -18
- package/dist/engine/render/renderers/sections/FeatureGridRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/FeatureRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/FeatureRenderer.js +5 -4
- package/dist/engine/render/renderers/sections/FeatureRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/FooterRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/FooterRenderer.js +25 -30
- package/dist/engine/render/renderers/sections/FooterRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/HeroRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/HeroRenderer.js +293 -229
- package/dist/engine/render/renderers/sections/HeroRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/NavbarRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/NavbarRenderer.js +23 -22
- package/dist/engine/render/renderers/sections/NavbarRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/PricingCardRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/PricingCardRenderer.js +7 -6
- package/dist/engine/render/renderers/sections/PricingCardRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/PricingRenderer.js +9 -9
- package/dist/engine/render/renderers/sections/PricingRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/TestimonialGridRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/TestimonialGridRenderer.js +17 -16
- package/dist/engine/render/renderers/sections/TestimonialGridRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/TestimonialRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/TestimonialRenderer.js +11 -10
- package/dist/engine/render/renderers/sections/TestimonialRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/index.js +24 -18
- package/dist/engine/render/renderers/sections/index.js.map +1 -1
- package/dist/engine/schema/siteDocument.d.ts +118 -7
- package/dist/engine/schema/siteDocument.d.ts.map +1 -1
- package/dist/engine/schema/siteDocument.js +1 -1
- package/dist/engine/schema/siteDocument.js.map +1 -1
- package/dist/engine/schema/themeTokens.d.ts +1 -1
- package/dist/engine/schema/themeTokens.js.map +1 -1
- package/dist/engine/shared/carouselAnimation.d.ts +20 -0
- package/dist/engine/shared/carouselAnimation.d.ts.map +1 -0
- package/dist/engine/shared/carouselAnimation.js +62 -0
- package/dist/engine/shared/carouselAnimation.js.map +1 -0
- package/dist/engine/shared/imageGrid/presets.js +4 -12
- package/dist/engine/shared/imageGrid/presets.js.map +1 -1
- package/dist/engine/shared/imageGrid/types.d.ts +2 -0
- package/dist/engine/shared/imageGrid/types.d.ts.map +1 -1
- package/dist/engine/shared/layoutConstants.d.ts +13 -0
- package/dist/engine/shared/layoutConstants.d.ts.map +1 -0
- package/dist/engine/shared/layoutConstants.js +14 -0
- package/dist/engine/shared/layoutConstants.js.map +1 -0
- package/dist/engine/shared/shadowConstants.d.ts +5 -0
- package/dist/engine/shared/shadowConstants.d.ts.map +1 -0
- package/dist/engine/shared/shadowConstants.js +11 -0
- package/dist/engine/shared/shadowConstants.js.map +1 -0
- package/dist/engine/shared/showWhen.d.ts +44 -0
- package/dist/engine/shared/showWhen.d.ts.map +1 -0
- package/dist/engine/shared/showWhen.js +33 -0
- package/dist/engine/shared/showWhen.js.map +1 -0
- package/dist/engine/shared/socialIcons.d.ts +6 -0
- package/dist/engine/shared/socialIcons.d.ts.map +1 -0
- package/dist/engine/shared/socialIcons.js +13 -0
- package/dist/engine/shared/socialIcons.js.map +1 -0
- package/dist/engine/shared/typeGuards.d.ts +11 -0
- package/dist/engine/shared/typeGuards.d.ts.map +1 -0
- package/dist/hooks/useEditorState.d.ts +8 -5
- package/dist/hooks/useEditorState.d.ts.map +1 -1
- package/dist/hooks/useEditorState.js +150 -194
- package/dist/hooks/useEditorState.js.map +1 -1
- package/dist/hooks/useNavbarAutoSync.d.ts +2 -2
- package/dist/hooks/useNavbarAutoSync.d.ts.map +1 -1
- package/dist/hooks/useNavbarAutoSync.js.map +1 -1
- package/dist/index.d.ts +60 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +109 -124
- package/dist/index.js.map +1 -1
- package/dist/shared/index.d.ts +2 -2
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/schema.d.ts +4 -4
- package/dist/shared/schema.d.ts.map +1 -1
- package/dist/shared/schema.js.map +1 -1
- package/dist/shared/templates/escola-blog.d.ts +3 -0
- package/dist/shared/templates/escola-blog.d.ts.map +1 -0
- package/dist/shared/templates/escola-blog.js +160 -0
- package/dist/shared/templates/escola-blog.js.map +1 -0
- package/dist/shared/templates/escola-edvi.d.ts +2 -2
- package/dist/shared/templates/escola-edvi.d.ts.map +1 -1
- package/dist/shared/templates/escola-edvi.js.map +1 -1
- package/dist/shared/templates/escola-premium.d.ts +2 -2
- package/dist/shared/templates/escola-premium.d.ts.map +1 -1
- package/dist/shared/templates/escola-premium.js.map +1 -1
- package/dist/shared/templates/escola-zilom.d.ts +2 -2
- package/dist/shared/templates/escola-zilom.d.ts.map +1 -1
- package/dist/shared/templates/escola-zilom.js.map +1 -1
- package/dist/shared/templates/index.d.ts +7 -5
- package/dist/shared/templates/index.d.ts.map +1 -1
- package/dist/shared/templates/index.js +30 -12
- package/dist/shared/templates/index.js.map +1 -1
- package/dist/shared/validators.d.ts +3 -3
- package/dist/shared/validators.d.ts.map +1 -1
- package/dist/shared/validators.js.map +1 -1
- package/dist/site/BlockRenderer.d.ts +1 -1
- package/dist/site/BlockRenderer.d.ts.map +1 -1
- package/dist/site/BlockRenderer.js +22 -26
- package/dist/site/BlockRenderer.js.map +1 -1
- package/dist/site/blocks/Button.js +15 -17
- package/dist/site/blocks/Button.js.map +1 -1
- package/dist/site/blocks/Card.js +13 -15
- package/dist/site/blocks/Card.js.map +1 -1
- package/dist/site/blocks/Features.js +15 -17
- package/dist/site/blocks/Features.js.map +1 -1
- package/dist/site/blocks/Footer.js +10 -12
- package/dist/site/blocks/Footer.js.map +1 -1
- package/dist/site/blocks/Hero.js +12 -14
- package/dist/site/blocks/Hero.js.map +1 -1
- package/dist/site/blocks/Navbar.js +13 -15
- package/dist/site/blocks/Navbar.js.map +1 -1
- package/dist/site/blocks/Section.js +9 -11
- package/dist/site/blocks/Section.js.map +1 -1
- package/dist/site/blocks/SectionHeader.js +9 -11
- package/dist/site/blocks/SectionHeader.js.map +1 -1
- package/dist/site/blocks/SiteRoot.js +9 -12
- package/dist/site/blocks/SiteRoot.js.map +1 -1
- package/dist/site/index.js +73 -73
- package/dist/styles/site/sections.css.d.ts +1 -1
- package/dist/utils/blockUtils.d.ts +2 -2
- package/dist/utils/blockUtils.d.ts.map +1 -1
- package/dist/utils/blockUtils.js.map +1 -1
- package/dist/utils/changeDetector.d.ts +3 -2
- package/dist/utils/changeDetector.d.ts.map +1 -1
- package/dist/utils/changeDetector.js +39 -39
- package/dist/utils/changeDetector.js.map +1 -1
- package/dist/utils/cn.js +2 -2
- package/dist/utils/dataURLUtils.d.ts +24 -0
- package/dist/utils/dataURLUtils.d.ts.map +1 -0
- package/dist/utils/dataURLUtils.js +47 -0
- package/dist/utils/dataURLUtils.js.map +1 -0
- package/dist/utils/documentHash.d.ts +2 -2
- package/dist/utils/documentHash.d.ts.map +1 -1
- package/dist/utils/documentHash.js +8 -7
- package/dist/utils/documentHash.js.map +1 -1
- package/dist/utils/logger.d.ts +13 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +13 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/navbarSync.d.ts +3 -3
- package/dist/utils/navbarSync.d.ts.map +1 -1
- package/dist/utils/navbarSync.js +25 -24
- package/dist/utils/navbarSync.js.map +1 -1
- package/dist/utils/sharedTemplateToEngine.d.ts +7 -8
- package/dist/utils/sharedTemplateToEngine.d.ts.map +1 -1
- package/dist/utils/sharedTemplateToEngine.js +14 -87
- package/dist/utils/sharedTemplateToEngine.js.map +1 -1
- package/dist/viewer/LandingPageViewer.d.ts +32 -0
- package/dist/viewer/LandingPageViewer.d.ts.map +1 -0
- package/dist/viewer/LandingPageViewer.js +300 -0
- package/dist/viewer/LandingPageViewer.js.map +1 -0
- package/package.json +10 -5
- package/dist/components/ComponentPalette/definitions.d.ts +0 -3
- package/dist/components/ComponentPalette/definitions.d.ts.map +0 -1
- package/dist/components/ComponentPalette/definitions.js +0 -206
- package/dist/components/ComponentPalette/definitions.js.map +0 -1
- package/dist/components/ComponentPalette/index.d.ts +0 -7
- package/dist/components/ComponentPalette/index.d.ts.map +0 -1
- package/dist/components/ComponentPalette/index.js +0 -86
- package/dist/components/ComponentPalette/index.js.map +0 -1
- package/dist/components/LoadingSpinner.d.ts.map +0 -1
- package/dist/components/LoadingSpinner.js.map +0 -1
- package/dist/components/PreviewPanel/index.d.ts +0 -12
- package/dist/components/PreviewPanel/index.d.ts.map +0 -1
- package/dist/components/PreviewPanel/index.js +0 -140
- package/dist/components/PreviewPanel/index.js.map +0 -1
- package/dist/components/PropertyPanel/index.d.ts +0 -8
- package/dist/components/PropertyPanel/index.d.ts.map +0 -1
- package/dist/components/PropertyPanel/index.js +0 -223
- package/dist/components/PropertyPanel/index.js.map +0 -1
- package/dist/components/SiteEditor/index.d.ts +0 -3
- package/dist/components/SiteEditor/index.d.ts.map +0 -1
- package/dist/components/SiteEditor/index.js +0 -251
- package/dist/components/SiteEditor/index.js.map +0 -1
- package/dist/components/SiteViewer/index.d.ts +0 -3
- package/dist/components/SiteViewer/index.d.ts.map +0 -1
- package/dist/components/SiteViewer/index.js +0 -55
- package/dist/components/SiteViewer/index.js.map +0 -1
- package/dist/components/TemplateSelector/index.d.ts +0 -7
- package/dist/components/TemplateSelector/index.d.ts.map +0 -1
- package/dist/components/TemplateSelector/index.js +0 -109
- package/dist/components/TemplateSelector/index.js.map +0 -1
- package/dist/components/Toolbar/index.d.ts +0 -15
- package/dist/components/Toolbar/index.d.ts.map +0 -1
- package/dist/components/Toolbar/index.js +0 -113
- package/dist/components/Toolbar/index.js.map +0 -1
- package/dist/components/editors/PaletteSelector.d.ts +0 -14
- package/dist/components/editors/PaletteSelector.d.ts.map +0 -1
- package/dist/components/editors/PaletteSelector.js +0 -175
- package/dist/components/editors/PaletteSelector.js.map +0 -1
- package/dist/components/effects/SectionGlow.d.ts +0 -12
- package/dist/components/effects/SectionGlow.d.ts.map +0 -1
- package/dist/components/effects/SectionGlow.js +0 -139
- package/dist/components/effects/SectionGlow.js.map +0 -1
- package/dist/components/inputs/CheckboxInput.d.ts +0 -3
- package/dist/components/inputs/CheckboxInput.d.ts.map +0 -1
- package/dist/components/inputs/CheckboxInput.js +0 -46
- package/dist/components/inputs/CheckboxInput.js.map +0 -1
- package/dist/components/inputs/ColorInput.d.ts +0 -7
- package/dist/components/inputs/ColorInput.d.ts.map +0 -1
- package/dist/components/inputs/ColorInput.js +0 -180
- package/dist/components/inputs/ColorInput.js.map +0 -1
- package/dist/components/inputs/GradientInput.d.ts +0 -7
- package/dist/components/inputs/GradientInput.d.ts.map +0 -1
- package/dist/components/inputs/GradientInput.js +0 -78
- package/dist/components/inputs/GradientInput.js.map +0 -1
- package/dist/components/inputs/ImageInput.d.ts.map +0 -1
- package/dist/components/inputs/ImageInput.js.map +0 -1
- package/dist/components/inputs/SelectInput.d.ts +0 -7
- package/dist/components/inputs/SelectInput.d.ts.map +0 -1
- package/dist/components/inputs/SelectInput.js +0 -97
- package/dist/components/inputs/SelectInput.js.map +0 -1
- package/dist/components/inputs/SliderInput.d.ts +0 -8
- package/dist/components/inputs/SliderInput.d.ts.map +0 -1
- package/dist/components/inputs/SliderInput.js +0 -77
- package/dist/components/inputs/SliderInput.js.map +0 -1
- package/dist/components/inputs/index.d.ts +0 -11
- package/dist/components/inputs/index.d.ts.map +0 -1
- package/dist/components/inputs/types.d.ts +0 -48
- package/dist/components/inputs/types.d.ts.map +0 -1
- package/dist/components/inputs/types.js +0 -9
- package/dist/components/inputs/types.js.map +0 -1
- package/dist/components/renderers/ComponentRenderer.d.ts +0 -8
- package/dist/components/renderers/ComponentRenderer.d.ts.map +0 -1
- package/dist/components/renderers/ComponentRenderer.js +0 -13
- package/dist/components/renderers/ComponentRenderer.js.map +0 -1
- package/dist/components/renderers/HeroRenderer.d.ts +0 -3
- package/dist/components/renderers/HeroRenderer.d.ts.map +0 -1
- package/dist/components/renderers/HeroRenderer.js +0 -10
- package/dist/components/renderers/HeroRenderer.js.map +0 -1
- package/dist/components/renderers/hero/HeroBanner.d.ts +0 -3
- package/dist/components/renderers/hero/HeroBanner.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroBanner.js +0 -122
- package/dist/components/renderers/hero/HeroBanner.js.map +0 -1
- package/dist/components/renderers/hero/HeroCinematic.d.ts +0 -3
- package/dist/components/renderers/hero/HeroCinematic.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroCinematic.js +0 -141
- package/dist/components/renderers/hero/HeroCinematic.js.map +0 -1
- package/dist/components/renderers/hero/HeroClassic.d.ts +0 -3
- package/dist/components/renderers/hero/HeroClassic.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroClassic.js +0 -241
- package/dist/components/renderers/hero/HeroClassic.js.map +0 -1
- package/dist/components/renderers/hero/HeroCollage.d.ts +0 -3
- package/dist/components/renderers/hero/HeroCollage.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroCollage.js +0 -131
- package/dist/components/renderers/hero/HeroCollage.js.map +0 -1
- package/dist/components/renderers/hero/HeroColumns.d.ts +0 -3
- package/dist/components/renderers/hero/HeroColumns.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroColumns.js +0 -114
- package/dist/components/renderers/hero/HeroColumns.js.map +0 -1
- package/dist/components/renderers/hero/HeroGlass.d.ts +0 -3
- package/dist/components/renderers/hero/HeroGlass.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroGlass.js +0 -119
- package/dist/components/renderers/hero/HeroGlass.js.map +0 -1
- package/dist/components/renderers/hero/HeroNeon.d.ts +0 -3
- package/dist/components/renderers/hero/HeroNeon.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroNeon.js +0 -136
- package/dist/components/renderers/hero/HeroNeon.js.map +0 -1
- package/dist/components/renderers/hero/HeroParallax.d.ts +0 -3
- package/dist/components/renderers/hero/HeroParallax.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroParallax.js +0 -99
- package/dist/components/renderers/hero/HeroParallax.js.map +0 -1
- package/dist/components/renderers/hero/HeroSplit.d.ts +0 -3
- package/dist/components/renderers/hero/HeroSplit.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroSplit.js +0 -142
- package/dist/components/renderers/hero/HeroSplit.js.map +0 -1
- package/dist/components/renderers/hero/HeroSpotlight.d.ts +0 -3
- package/dist/components/renderers/hero/HeroSpotlight.d.ts.map +0 -1
- package/dist/components/renderers/hero/HeroSpotlight.js +0 -213
- package/dist/components/renderers/hero/HeroSpotlight.js.map +0 -1
- package/dist/components/renderers/hero/index.d.ts +0 -14
- package/dist/components/renderers/hero/index.d.ts.map +0 -1
- package/dist/components/renderers/index.d.ts +0 -8
- package/dist/components/renderers/index.d.ts.map +0 -1
- package/dist/components/renderers/index.js +0 -89
- package/dist/components/renderers/index.js.map +0 -1
- package/dist/components/renderers/types.d.ts +0 -11
- package/dist/components/renderers/types.d.ts.map +0 -1
- package/dist/editor/LandingPageEditorV2.d.ts +0 -19
- package/dist/editor/LandingPageEditorV2.d.ts.map +0 -1
- package/dist/editor/LandingPageEditorV2.js +0 -311
- package/dist/editor/LandingPageEditorV2.js.map +0 -1
- package/dist/editor/PropertyEditor/PropertyGroup.js +0 -23
- package/dist/editor/PropertyEditor/PropertyGroup.js.map +0 -1
- package/dist/engine/preview/PreviewV2.d.ts +0 -15
- package/dist/engine/preview/PreviewV2.d.ts.map +0 -1
- package/dist/engine/preview/PreviewV2.js +0 -242
- package/dist/engine/preview/PreviewV2.js.map +0 -1
- package/dist/modules/registry.d.ts +0 -31
- package/dist/modules/registry.d.ts.map +0 -1
- package/dist/modules/registry.js +0 -67
- package/dist/modules/registry.js.map +0 -1
- package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js +0 -57
- package/dist/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/core/dist/core.esm.js +0 -2345
- package/dist/node_modules/@dnd-kit/core/dist/core.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js +0 -440
- package/dist/node_modules/@dnd-kit/sortable/dist/sortable.esm.js.map +0 -1
- package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js +0 -236
- package/dist/node_modules/@dnd-kit/utilities/dist/utilities.esm.js.map +0 -1
- package/dist/node_modules/clsx/dist/clsx.js +0 -17
- package/dist/node_modules/clsx/dist/clsx.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/Icon.js +0 -35
- package/dist/node_modules/lucide-react/dist/esm/Icon.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js +0 -18
- package/dist/node_modules/lucide-react/dist/esm/createLucideIcon.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js +0 -15
- package/dist/node_modules/lucide-react/dist/esm/defaultAttributes.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/arrow-right.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/arrow-right.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/briefcase.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/check.js +0 -6
- package/dist/node_modules/lucide-react/dist/esm/icons/check.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.js +0 -8
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-down.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.js +0 -8
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-right.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js +0 -6
- package/dist/node_modules/lucide-react/dist/esm/icons/chevron-up.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/eye.js +0 -15
- package/dist/node_modules/lucide-react/dist/esm/icons/eye.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js +0 -12
- package/dist/node_modules/lucide-react/dist/esm/icons/file-text.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/globe.js +0 -10
- package/dist/node_modules/lucide-react/dist/esm/icons/globe.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/grid-3x3.js +0 -12
- package/dist/node_modules/lucide-react/dist/esm/icons/grid-3x3.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/grip-vertical.js +0 -13
- package/dist/node_modules/lucide-react/dist/esm/icons/grip-vertical.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/heading.js +0 -10
- package/dist/node_modules/lucide-react/dist/esm/icons/heading.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/image.js +0 -10
- package/dist/node_modules/lucide-react/dist/esm/icons/image.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/images.js +0 -11
- package/dist/node_modules/lucide-react/dist/esm/icons/images.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/list.js +0 -13
- package/dist/node_modules/lucide-react/dist/esm/icons/list.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/loader-circle.js +0 -8
- package/dist/node_modules/lucide-react/dist/esm/icons/loader-circle.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/minus.js +0 -6
- package/dist/node_modules/lucide-react/dist/esm/icons/minus.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/mouse-pointer-click.js +0 -18
- package/dist/node_modules/lucide-react/dist/esm/icons/mouse-pointer-click.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/navigation.js +0 -8
- package/dist/node_modules/lucide-react/dist/esm/icons/navigation.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/panels-top-left.js +0 -10
- package/dist/node_modules/lucide-react/dist/esm/icons/panels-top-left.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/phone.js +0 -14
- package/dist/node_modules/lucide-react/dist/esm/icons/phone.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/plus.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/plus.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/redo-2.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/redo-2.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/redo.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/redo.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/rotate-ccw.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/save.js +0 -16
- package/dist/node_modules/lucide-react/dist/esm/icons/save.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/square.js +0 -8
- package/dist/node_modules/lucide-react/dist/esm/icons/square.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/star.js +0 -14
- package/dist/node_modules/lucide-react/dist/esm/icons/star.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/trash-2.js +0 -12
- package/dist/node_modules/lucide-react/dist/esm/icons/trash-2.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/type.js +0 -10
- package/dist/node_modules/lucide-react/dist/esm/icons/type.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/undo-2.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/undo-2.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/undo.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/undo.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/icons/user.js +0 -9
- package/dist/node_modules/lucide-react/dist/esm/icons/user.js.map +0 -1
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js +0 -6
- package/dist/node_modules/lucide-react/dist/esm/shared/src/utils.js.map +0 -1
- package/dist/node_modules/react-colorful/dist/index.js +0 -167
- package/dist/node_modules/react-colorful/dist/index.js.map +0 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +0 -2266
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +0 -1
- package/dist/types/index.d.ts +0 -99
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/module.d.ts +0 -25
- package/dist/types/module.d.ts.map +0 -1
- package/dist/utils/htmlExporter.d.ts +0 -6
- package/dist/utils/htmlExporter.d.ts.map +0 -1
- package/dist/utils/htmlExporter.js +0 -92
- package/dist/utils/htmlExporter.js.map +0 -1
- package/dist/utils/themeApplier.d.ts +0 -11
- package/dist/utils/themeApplier.d.ts.map +0 -1
- package/dist/utils/themeApplier.js +0 -29
- package/dist/utils/themeApplier.js.map +0 -1
- package/dist/utils/useDebounce.d.ts +0 -12
- package/dist/utils/useDebounce.d.ts.map +0 -1
- package/dist/viewer/LandingPageViewerV2.d.ts +0 -25
- package/dist/viewer/LandingPageViewerV2.d.ts.map +0 -1
- package/dist/viewer/LandingPageViewerV2.js +0 -253
- package/dist/viewer/LandingPageViewerV2.js.map +0 -1
- /package/dist/{components → editor/PropertyEditor}/inputs/ImageInput.d.ts +0 -0
- /package/dist/{components → editor/components}/LoadingSpinner.d.ts +0 -0
- /package/dist/{components → editor/components}/LoadingSpinner.js +0 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { jsxs as s, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as y } from "react";
|
|
3
|
+
import { cn as m } from "../../../utils/cn.js";
|
|
4
|
+
const x = 2, f = 5;
|
|
5
|
+
function k({
|
|
6
|
+
index: t,
|
|
7
|
+
src: a,
|
|
8
|
+
onChange: c,
|
|
9
|
+
onRemove: d,
|
|
10
|
+
canRemove: i
|
|
11
|
+
}) {
|
|
12
|
+
const n = y(null), u = (l) => {
|
|
13
|
+
const e = l.target.files?.[0];
|
|
14
|
+
if (!e || !e.type.startsWith("image/") || e.size > 10 * 1024 * 1024) return;
|
|
15
|
+
const o = new FileReader();
|
|
16
|
+
o.onload = (b) => {
|
|
17
|
+
const p = b.target?.result;
|
|
18
|
+
c(p);
|
|
19
|
+
}, o.readAsDataURL(e);
|
|
20
|
+
}, h = () => {
|
|
21
|
+
n.current && (n.current.value = "", n.current.click());
|
|
22
|
+
}, g = !!a && !a.includes("placehold.co");
|
|
23
|
+
return /* @__PURE__ */ s("div", { className: "relative group", children: [
|
|
24
|
+
/* @__PURE__ */ r(
|
|
25
|
+
"input",
|
|
26
|
+
{
|
|
27
|
+
ref: n,
|
|
28
|
+
type: "file",
|
|
29
|
+
accept: "image/*",
|
|
30
|
+
onChange: u,
|
|
31
|
+
className: "hidden"
|
|
32
|
+
}
|
|
33
|
+
),
|
|
34
|
+
/* @__PURE__ */ r(
|
|
35
|
+
"button",
|
|
36
|
+
{
|
|
37
|
+
type: "button",
|
|
38
|
+
onClick: h,
|
|
39
|
+
className: m(
|
|
40
|
+
"w-20 h-12 rounded-lg overflow-hidden border-2 transition-all",
|
|
41
|
+
"flex items-center justify-center",
|
|
42
|
+
"bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700",
|
|
43
|
+
g ? "border-blue-400 dark:border-blue-500" : "border-dashed border-gray-300 dark:border-gray-600 hover:border-blue-400"
|
|
44
|
+
),
|
|
45
|
+
children: a ? /* @__PURE__ */ r(
|
|
46
|
+
"img",
|
|
47
|
+
{
|
|
48
|
+
src: a,
|
|
49
|
+
alt: `Slide ${t + 1}`,
|
|
50
|
+
className: "w-full h-full object-cover"
|
|
51
|
+
}
|
|
52
|
+
) : /* @__PURE__ */ r(
|
|
53
|
+
"svg",
|
|
54
|
+
{
|
|
55
|
+
className: "w-5 h-5 text-gray-400",
|
|
56
|
+
fill: "none",
|
|
57
|
+
stroke: "currentColor",
|
|
58
|
+
viewBox: "0 0 24 24",
|
|
59
|
+
children: /* @__PURE__ */ r(
|
|
60
|
+
"path",
|
|
61
|
+
{
|
|
62
|
+
strokeLinecap: "round",
|
|
63
|
+
strokeLinejoin: "round",
|
|
64
|
+
strokeWidth: 2,
|
|
65
|
+
d: "M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z"
|
|
66
|
+
}
|
|
67
|
+
)
|
|
68
|
+
}
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
),
|
|
72
|
+
i && /* @__PURE__ */ r(
|
|
73
|
+
"button",
|
|
74
|
+
{
|
|
75
|
+
type: "button",
|
|
76
|
+
onClick: d,
|
|
77
|
+
className: m(
|
|
78
|
+
"absolute -top-1 -right-1 w-5 h-5 rounded-full",
|
|
79
|
+
"bg-red-500 text-white",
|
|
80
|
+
"flex items-center justify-center",
|
|
81
|
+
"opacity-0 group-hover:opacity-100 transition-opacity",
|
|
82
|
+
"text-xs font-bold"
|
|
83
|
+
),
|
|
84
|
+
children: "×"
|
|
85
|
+
}
|
|
86
|
+
),
|
|
87
|
+
/* @__PURE__ */ r("div", { className: "absolute bottom-0 left-0 right-0 bg-black/50 text-white text-[10px] text-center py-0.5", children: t + 1 })
|
|
88
|
+
] });
|
|
89
|
+
}
|
|
90
|
+
function C({
|
|
91
|
+
images: t,
|
|
92
|
+
onImagesChange: a,
|
|
93
|
+
label: c,
|
|
94
|
+
description: d
|
|
95
|
+
}) {
|
|
96
|
+
const i = t.length < f, n = t.length > x, u = (l, e) => {
|
|
97
|
+
const o = [...t];
|
|
98
|
+
o[l] = e, a(o);
|
|
99
|
+
}, h = (l) => {
|
|
100
|
+
if (!n) return;
|
|
101
|
+
const e = t.filter((o, b) => b !== l);
|
|
102
|
+
a(e);
|
|
103
|
+
}, g = () => {
|
|
104
|
+
i && a([...t, ""]);
|
|
105
|
+
};
|
|
106
|
+
return /* @__PURE__ */ s("div", { className: "space-y-2", children: [
|
|
107
|
+
c && /* @__PURE__ */ s("label", { className: "block text-xs font-medium text-gray-800 dark:text-gray-100", children: [
|
|
108
|
+
c,
|
|
109
|
+
d && /* @__PURE__ */ r("span", { className: "text-gray-500 dark:text-gray-400 text-xs font-normal ml-1", children: d })
|
|
110
|
+
] }),
|
|
111
|
+
/* @__PURE__ */ s("div", { className: "space-y-1", children: [
|
|
112
|
+
/* @__PURE__ */ s("span", { className: "text-[10px] text-gray-500 dark:text-gray-400 uppercase tracking-wide", children: [
|
|
113
|
+
"Slides (",
|
|
114
|
+
t.length,
|
|
115
|
+
"/",
|
|
116
|
+
f,
|
|
117
|
+
")"
|
|
118
|
+
] }),
|
|
119
|
+
/* @__PURE__ */ s("div", { className: "flex flex-wrap gap-2 items-center", children: [
|
|
120
|
+
t.map((l, e) => /* @__PURE__ */ r(
|
|
121
|
+
k,
|
|
122
|
+
{
|
|
123
|
+
index: e,
|
|
124
|
+
src: l,
|
|
125
|
+
onChange: (o) => u(e, o),
|
|
126
|
+
onRemove: () => h(e),
|
|
127
|
+
canRemove: n
|
|
128
|
+
},
|
|
129
|
+
e
|
|
130
|
+
)),
|
|
131
|
+
i && /* @__PURE__ */ r(
|
|
132
|
+
"button",
|
|
133
|
+
{
|
|
134
|
+
type: "button",
|
|
135
|
+
onClick: g,
|
|
136
|
+
className: m(
|
|
137
|
+
"w-20 h-12 rounded-lg border-2 border-dashed",
|
|
138
|
+
"border-gray-300 dark:border-gray-600",
|
|
139
|
+
"hover:border-blue-400 dark:hover:border-blue-500",
|
|
140
|
+
"flex items-center justify-center transition-colors",
|
|
141
|
+
"bg-gray-50 dark:bg-gray-800"
|
|
142
|
+
),
|
|
143
|
+
children: /* @__PURE__ */ r(
|
|
144
|
+
"svg",
|
|
145
|
+
{
|
|
146
|
+
className: "w-5 h-5 text-gray-400",
|
|
147
|
+
fill: "none",
|
|
148
|
+
stroke: "currentColor",
|
|
149
|
+
viewBox: "0 0 24 24",
|
|
150
|
+
children: /* @__PURE__ */ r(
|
|
151
|
+
"path",
|
|
152
|
+
{
|
|
153
|
+
strokeLinecap: "round",
|
|
154
|
+
strokeLinejoin: "round",
|
|
155
|
+
strokeWidth: 2,
|
|
156
|
+
d: "M12 4v16m8-8H4"
|
|
157
|
+
}
|
|
158
|
+
)
|
|
159
|
+
}
|
|
160
|
+
)
|
|
161
|
+
}
|
|
162
|
+
)
|
|
163
|
+
] })
|
|
164
|
+
] })
|
|
165
|
+
] });
|
|
166
|
+
}
|
|
167
|
+
export {
|
|
168
|
+
C as CarouselImagesInput
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=CarouselImagesInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CarouselImagesInput.js","sources":["../../../../src/editor/PropertyEditor/inputs/CarouselImagesInput.tsx"],"sourcesContent":["/**\n * CarouselImagesInput\n * Componente para editar array de imagens do carrossel hero (2-5 imagens)\n */\n\nimport { useRef } from \"react\";\nimport { cn } from \"../../../utils/cn\";\nimport type { UploadConfig } from \"../../LandingPageEditor\";\n\ninterface CarouselImagesInputProps {\n /** Array de URLs de imagens */\n images: string[];\n /** Callback ao atualizar imagens */\n onImagesChange: (images: string[]) => void;\n /** Label do componente */\n label?: string;\n /** Descrição */\n description?: string;\n /** Configuração de upload */\n uploadConfig?: UploadConfig;\n}\n\nconst MIN_IMAGES = 2;\nconst MAX_IMAGES = 5;\n\n/**\n * Slot individual de imagem do carrossel\n */\nfunction CarouselSlot({\n index,\n src,\n onChange,\n onRemove,\n canRemove,\n}: {\n index: number;\n src: string;\n onChange: (src: string) => void;\n onRemove: () => void;\n canRemove: boolean;\n}) {\n const inputRef = useRef<HTMLInputElement>(null);\n\n const handleFileChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const file = e.target.files?.[0];\n if (!file) return;\n\n if (!file.type.startsWith(\"image/\")) return;\n if (file.size > 10 * 1024 * 1024) return;\n\n const reader = new FileReader();\n reader.onload = (evt) => {\n const dataUrl = evt.target?.result as string;\n onChange(dataUrl);\n };\n reader.readAsDataURL(file);\n };\n\n const handleClick = () => {\n if (inputRef.current) {\n inputRef.current.value = \"\";\n inputRef.current.click();\n }\n };\n\n const hasImage = !!src && !src.includes(\"placehold.co\");\n\n return (\n <div className=\"relative group\">\n <input\n ref={inputRef}\n type=\"file\"\n accept=\"image/*\"\n onChange={handleFileChange}\n className=\"hidden\"\n />\n\n <button\n type=\"button\"\n onClick={handleClick}\n className={cn(\n \"w-20 h-12 rounded-lg overflow-hidden border-2 transition-all\",\n \"flex items-center justify-center\",\n \"bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700\",\n hasImage\n ? \"border-blue-400 dark:border-blue-500\"\n : \"border-dashed border-gray-300 dark:border-gray-600 hover:border-blue-400\"\n )}\n >\n {src ? (\n <img\n src={src}\n alt={`Slide ${index + 1}`}\n className=\"w-full h-full object-cover\"\n />\n ) : (\n <svg\n className=\"w-5 h-5 text-gray-400\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\"\n />\n </svg>\n )}\n </button>\n\n {/* Botão de remover */}\n {canRemove && (\n <button\n type=\"button\"\n onClick={onRemove}\n className={cn(\n \"absolute -top-1 -right-1 w-5 h-5 rounded-full\",\n \"bg-red-500 text-white\",\n \"flex items-center justify-center\",\n \"opacity-0 group-hover:opacity-100 transition-opacity\",\n \"text-xs font-bold\"\n )}\n >\n ×\n </button>\n )}\n\n {/* Número do slide */}\n <div className=\"absolute bottom-0 left-0 right-0 bg-black/50 text-white text-[10px] text-center py-0.5\">\n {index + 1}\n </div>\n </div>\n );\n}\n\nexport function CarouselImagesInput({\n images,\n onImagesChange,\n label,\n description,\n}: CarouselImagesInputProps) {\n const canAdd = images.length < MAX_IMAGES;\n const canRemove = images.length > MIN_IMAGES;\n\n const handleImageChange = (index: number, src: string) => {\n const newImages = [...images];\n newImages[index] = src;\n onImagesChange(newImages);\n };\n\n const handleImageRemove = (index: number) => {\n if (!canRemove) return;\n const newImages = images.filter((_, i) => i !== index);\n onImagesChange(newImages);\n };\n\n const handleAddImage = () => {\n if (!canAdd) return;\n onImagesChange([...images, \"\"]);\n };\n\n return (\n <div className=\"space-y-2\">\n {label && (\n <label className=\"block text-xs font-medium text-gray-800 dark:text-gray-100\">\n {label}\n {description && (\n <span className=\"text-gray-500 dark:text-gray-400 text-xs font-normal ml-1\">\n {description}\n </span>\n )}\n </label>\n )}\n\n <div className=\"space-y-1\">\n <span className=\"text-[10px] text-gray-500 dark:text-gray-400 uppercase tracking-wide\">\n Slides ({images.length}/{MAX_IMAGES})\n </span>\n <div className=\"flex flex-wrap gap-2 items-center\">\n {images.map((src, index) => (\n <CarouselSlot\n key={index}\n index={index}\n src={src}\n onChange={(newSrc) => handleImageChange(index, newSrc)}\n onRemove={() => handleImageRemove(index)}\n canRemove={canRemove}\n />\n ))}\n {canAdd && (\n <button\n type=\"button\"\n onClick={handleAddImage}\n className={cn(\n \"w-20 h-12 rounded-lg border-2 border-dashed\",\n \"border-gray-300 dark:border-gray-600\",\n \"hover:border-blue-400 dark:hover:border-blue-500\",\n \"flex items-center justify-center transition-colors\",\n \"bg-gray-50 dark:bg-gray-800\"\n )}\n >\n <svg\n className=\"w-5 h-5 text-gray-400\"\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M12 4v16m8-8H4\"\n />\n </svg>\n </button>\n )}\n </div>\n </div>\n </div>\n );\n}\n"],"names":["MIN_IMAGES","MAX_IMAGES","CarouselSlot","index","src","onChange","onRemove","canRemove","inputRef","useRef","handleFileChange","e","file","reader","evt","dataUrl","handleClick","hasImage","jsxs","jsx","cn","CarouselImagesInput","images","onImagesChange","label","description","canAdd","handleImageChange","newImages","handleImageRemove","_","i","handleAddImage","newSrc"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ImageGridItem, ImageGridPreset } from '../../../engine/shared/imageGrid';
|
|
2
|
-
import { UploadConfig } from '../../
|
|
2
|
+
import { UploadConfig } from '../../LandingPageEditor';
|
|
3
3
|
interface ImageGridInputProps {
|
|
4
4
|
/** Preset atual */
|
|
5
5
|
preset?: ImageGridPreset;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImageGridInput.d.ts","sourceRoot":"","sources":["../../../../src/editor/PropertyEditor/inputs/ImageGridInput.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,eAAe,EAGrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ImageGridInput.d.ts","sourceRoot":"","sources":["../../../../src/editor/PropertyEditor/inputs/ImageGridInput.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,eAAe,EAGrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,UAAU,mBAAmB;IAC3B,mBAAmB;IACnB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,uBAAuB;IACvB,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,oBAAoB;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,cAAc,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAClD,sCAAsC;IACtC,cAAc,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,IAAI,CAAC;IAClD,kCAAkC;IAClC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAiOD,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,OAAO,EACZ,cAAc,EACd,cAAc,EACd,WAAW,EACX,KAAK,EACL,WAAW,GACZ,EAAE,mBAAmB,2CA6HrB"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { useRef as
|
|
3
|
-
import { cn as
|
|
4
|
-
import { gridPresetMap as
|
|
5
|
-
function
|
|
6
|
-
const
|
|
2
|
+
import { useRef as C } from "react";
|
|
3
|
+
import { cn as v } from "../../../utils/cn.js";
|
|
4
|
+
import { gridPresetMap as y, imageGridPresetIds as I } from "../../../engine/shared/imageGrid/presets.js";
|
|
5
|
+
function j({ preset: d, isActive: n }) {
|
|
6
|
+
const u = y[d], m = () => {
|
|
7
7
|
switch (d) {
|
|
8
8
|
case "single":
|
|
9
9
|
return /* @__PURE__ */ e("div", { className: "w-full h-full bg-current rounded-sm" });
|
|
@@ -49,146 +49,172 @@ function I({ preset: d, isActive: s }) {
|
|
|
49
49
|
return /* @__PURE__ */ e(
|
|
50
50
|
"div",
|
|
51
51
|
{
|
|
52
|
-
className:
|
|
52
|
+
className: v(
|
|
53
53
|
"w-8 h-8 p-1",
|
|
54
|
-
|
|
54
|
+
n ? "text-blue-500" : "text-gray-400 dark:text-gray-500"
|
|
55
55
|
),
|
|
56
|
-
title:
|
|
57
|
-
children:
|
|
56
|
+
title: u.name,
|
|
57
|
+
children: m()
|
|
58
58
|
}
|
|
59
59
|
);
|
|
60
60
|
}
|
|
61
|
-
function
|
|
61
|
+
function R({
|
|
62
62
|
index: d,
|
|
63
|
-
image:
|
|
64
|
-
onChange:
|
|
65
|
-
onRemove:
|
|
63
|
+
image: n,
|
|
64
|
+
onChange: u,
|
|
65
|
+
onRemove: m,
|
|
66
|
+
onScaleChange: i
|
|
66
67
|
}) {
|
|
67
|
-
const
|
|
68
|
-
|
|
68
|
+
const o = C(null), f = async (g) => {
|
|
69
|
+
const h = g.target.files?.[0];
|
|
70
|
+
if (!h) return;
|
|
71
|
+
if (!h.type.startsWith("image/")) {
|
|
72
|
+
alert("Apenas imagens são permitidas");
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (h.size > 10 * 1024 * 1024) {
|
|
76
|
+
alert("Arquivo muito grande. Máximo: 10MB");
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const p = new FileReader();
|
|
80
|
+
p.onload = (x) => {
|
|
81
|
+
const N = x.target?.result;
|
|
82
|
+
u({ src: N, alt: n?.alt || "", scale: n?.scale });
|
|
83
|
+
}, p.readAsDataURL(h);
|
|
84
|
+
}, b = () => {
|
|
85
|
+
o.current && (o.current.value = "", o.current.click());
|
|
86
|
+
}, c = !!n?.src, l = n?.scale ?? 1;
|
|
87
|
+
return /* @__PURE__ */ a("div", { className: "flex items-center gap-3 group", children: [
|
|
69
88
|
/* @__PURE__ */ e(
|
|
70
89
|
"input",
|
|
71
90
|
{
|
|
72
|
-
ref:
|
|
91
|
+
ref: o,
|
|
73
92
|
type: "file",
|
|
74
93
|
accept: "image/*",
|
|
75
|
-
onChange:
|
|
76
|
-
const c = u.target.files?.[0];
|
|
77
|
-
if (!c) return;
|
|
78
|
-
if (!c.type.startsWith("image/")) {
|
|
79
|
-
alert("Apenas imagens são permitidas");
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
if (c.size > 10 * 1024 * 1024) {
|
|
83
|
-
alert("Arquivo muito grande. Máximo: 10MB");
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
const l = new FileReader();
|
|
87
|
-
l.onload = (m) => {
|
|
88
|
-
const v = m.target?.result;
|
|
89
|
-
o({ src: v, alt: s?.alt || "" });
|
|
90
|
-
}, l.readAsDataURL(c);
|
|
91
|
-
},
|
|
94
|
+
onChange: f,
|
|
92
95
|
className: "hidden"
|
|
93
96
|
}
|
|
94
97
|
),
|
|
95
|
-
/* @__PURE__ */
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
98
|
+
/* @__PURE__ */ a("div", { className: "relative flex-shrink-0", children: [
|
|
99
|
+
/* @__PURE__ */ e(
|
|
100
|
+
"button",
|
|
101
|
+
{
|
|
102
|
+
type: "button",
|
|
103
|
+
onClick: b,
|
|
104
|
+
className: v(
|
|
105
|
+
"w-12 h-12 rounded-lg overflow-hidden border-2 transition-all",
|
|
106
|
+
"flex items-center justify-center",
|
|
107
|
+
"bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700",
|
|
108
|
+
c ? "border-blue-400 dark:border-blue-500" : "border-dashed border-gray-300 dark:border-gray-600 hover:border-blue-400"
|
|
109
|
+
),
|
|
110
|
+
children: c ? /* @__PURE__ */ e(
|
|
111
|
+
"img",
|
|
112
|
+
{
|
|
113
|
+
src: n.src,
|
|
114
|
+
alt: n.alt || `Imagem ${d + 1}`,
|
|
115
|
+
className: "w-full h-full object-cover"
|
|
116
|
+
}
|
|
117
|
+
) : /* @__PURE__ */ e(
|
|
118
|
+
"svg",
|
|
119
|
+
{
|
|
120
|
+
className: "w-5 h-5 text-gray-400",
|
|
121
|
+
fill: "none",
|
|
122
|
+
stroke: "currentColor",
|
|
123
|
+
viewBox: "0 0 24 24",
|
|
124
|
+
children: /* @__PURE__ */ e(
|
|
125
|
+
"path",
|
|
126
|
+
{
|
|
127
|
+
strokeLinecap: "round",
|
|
128
|
+
strokeLinejoin: "round",
|
|
129
|
+
strokeWidth: 2,
|
|
130
|
+
d: "M12 4v16m8-8H4"
|
|
131
|
+
}
|
|
132
|
+
)
|
|
133
|
+
}
|
|
134
|
+
)
|
|
135
|
+
}
|
|
136
|
+
),
|
|
137
|
+
c && /* @__PURE__ */ e(
|
|
138
|
+
"button",
|
|
139
|
+
{
|
|
140
|
+
type: "button",
|
|
141
|
+
onClick: m,
|
|
142
|
+
className: v(
|
|
143
|
+
"absolute -top-1 -right-1 w-4 h-4 rounded-full",
|
|
144
|
+
"bg-red-500 text-white",
|
|
145
|
+
"flex items-center justify-center",
|
|
146
|
+
"opacity-0 group-hover:opacity-100 transition-opacity",
|
|
147
|
+
"text-[10px] font-bold leading-none"
|
|
148
|
+
),
|
|
149
|
+
children: "×"
|
|
150
|
+
}
|
|
151
|
+
),
|
|
152
|
+
/* @__PURE__ */ e("div", { className: "absolute bottom-0 left-0 right-0 bg-black/50 text-white text-[8px] text-center", children: d + 1 })
|
|
153
|
+
] }),
|
|
154
|
+
c && /* @__PURE__ */ a("div", { className: "flex-1 flex items-center gap-2 min-w-0", children: [
|
|
155
|
+
/* @__PURE__ */ e(
|
|
156
|
+
"input",
|
|
157
|
+
{
|
|
158
|
+
type: "range",
|
|
159
|
+
value: l,
|
|
160
|
+
onChange: (g) => i(Number(g.target.value)),
|
|
161
|
+
min: 1,
|
|
162
|
+
max: 3,
|
|
163
|
+
step: 0.1,
|
|
164
|
+
className: "flex-1 h-1.5 bg-gray-200 dark:bg-gray-700 rounded-lg appearance-none cursor-pointer"
|
|
165
|
+
}
|
|
166
|
+
),
|
|
167
|
+
/* @__PURE__ */ a("span", { className: "text-[10px] text-gray-500 dark:text-gray-400 w-8 text-right tabular-nums flex-shrink-0", children: [
|
|
168
|
+
Math.round(l * 100),
|
|
169
|
+
"%"
|
|
170
|
+
] })
|
|
171
|
+
] })
|
|
151
172
|
] });
|
|
152
173
|
}
|
|
153
|
-
function
|
|
174
|
+
function q({
|
|
154
175
|
preset: d,
|
|
155
|
-
images:
|
|
156
|
-
gap:
|
|
157
|
-
onPresetChange:
|
|
158
|
-
onImagesChange:
|
|
159
|
-
onGapChange:
|
|
160
|
-
label:
|
|
161
|
-
description:
|
|
176
|
+
images: n,
|
|
177
|
+
gap: u,
|
|
178
|
+
onPresetChange: m,
|
|
179
|
+
onImagesChange: i,
|
|
180
|
+
onGapChange: o,
|
|
181
|
+
label: f,
|
|
182
|
+
description: b
|
|
162
183
|
}) {
|
|
163
|
-
const c = d || "four-equal", l =
|
|
164
|
-
const t =
|
|
165
|
-
l.length > t.maxImages &&
|
|
166
|
-
},
|
|
167
|
-
const
|
|
168
|
-
for (;
|
|
169
|
-
|
|
170
|
-
|
|
184
|
+
const c = d || "four-equal", l = n || [], g = u ?? 8, p = y[c].maxImages, x = (r) => {
|
|
185
|
+
const t = y[r];
|
|
186
|
+
l.length > t.maxImages && i(l.slice(0, t.maxImages)), m(r);
|
|
187
|
+
}, N = (r, t) => {
|
|
188
|
+
const s = [...l];
|
|
189
|
+
for (; s.length <= r; )
|
|
190
|
+
s.push({ src: "", alt: "" });
|
|
191
|
+
s[r] = t, i(s);
|
|
171
192
|
}, w = (r) => {
|
|
172
193
|
const t = [...l];
|
|
173
|
-
t[r] = { src: "", alt: "" },
|
|
194
|
+
t[r] = { src: "", alt: "" }, i(t);
|
|
195
|
+
}, k = (r, t) => {
|
|
196
|
+
const s = [...l];
|
|
197
|
+
for (; s.length <= r; )
|
|
198
|
+
s.push({ src: "", alt: "" });
|
|
199
|
+
s[r] = { ...s[r], scale: t }, i(s);
|
|
174
200
|
};
|
|
175
201
|
return /* @__PURE__ */ a("div", { className: "space-y-3", children: [
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
202
|
+
f && /* @__PURE__ */ a("label", { className: "block text-xs font-medium text-gray-800 dark:text-gray-100", children: [
|
|
203
|
+
f,
|
|
204
|
+
b && /* @__PURE__ */ e("span", { className: "text-gray-500 dark:text-gray-400 text-xs font-normal ml-1", children: b })
|
|
179
205
|
] }),
|
|
180
206
|
/* @__PURE__ */ a("div", { className: "space-y-1", children: [
|
|
181
207
|
/* @__PURE__ */ e("span", { className: "text-[10px] text-gray-500 dark:text-gray-400 uppercase tracking-wide", children: "Layout" }),
|
|
182
|
-
/* @__PURE__ */ e("div", { className: "flex flex-wrap gap-1 p-1 bg-gray-100 dark:bg-gray-800 rounded-lg", children:
|
|
208
|
+
/* @__PURE__ */ e("div", { className: "flex flex-wrap gap-1 p-1 bg-gray-100 dark:bg-gray-800 rounded-lg", children: I.map((r) => /* @__PURE__ */ e(
|
|
183
209
|
"button",
|
|
184
210
|
{
|
|
185
211
|
type: "button",
|
|
186
212
|
onClick: () => x(r),
|
|
187
|
-
className:
|
|
213
|
+
className: v(
|
|
188
214
|
"rounded-md transition-all",
|
|
189
215
|
c === r ? "bg-white dark:bg-gray-700 shadow-sm" : "hover:bg-white/50 dark:hover:bg-gray-700/50"
|
|
190
216
|
),
|
|
191
|
-
children: /* @__PURE__ */ e(
|
|
217
|
+
children: /* @__PURE__ */ e(j, { preset: r, isActive: c === r })
|
|
192
218
|
},
|
|
193
219
|
r
|
|
194
220
|
)) })
|
|
@@ -198,16 +224,17 @@ function P({
|
|
|
198
224
|
"Imagens (",
|
|
199
225
|
l.filter((r) => r?.src).length,
|
|
200
226
|
"/",
|
|
201
|
-
|
|
227
|
+
p,
|
|
202
228
|
")"
|
|
203
229
|
] }),
|
|
204
|
-
/* @__PURE__ */ e("div", { className: "flex flex-
|
|
205
|
-
|
|
230
|
+
/* @__PURE__ */ e("div", { className: "flex flex-col gap-2", children: Array.from({ length: p }).map((r, t) => /* @__PURE__ */ e(
|
|
231
|
+
R,
|
|
206
232
|
{
|
|
207
233
|
index: t,
|
|
208
234
|
image: l[t],
|
|
209
|
-
onChange: (
|
|
210
|
-
onRemove: () => w(t)
|
|
235
|
+
onChange: (s) => N(t, s),
|
|
236
|
+
onRemove: () => w(t),
|
|
237
|
+
onScaleChange: (s) => k(t, s)
|
|
211
238
|
},
|
|
212
239
|
t
|
|
213
240
|
)) })
|
|
@@ -216,7 +243,7 @@ function P({
|
|
|
216
243
|
/* @__PURE__ */ a("div", { className: "flex items-center justify-between", children: [
|
|
217
244
|
/* @__PURE__ */ e("span", { className: "text-[10px] text-gray-500 dark:text-gray-400 uppercase tracking-wide", children: "Espaçamento" }),
|
|
218
245
|
/* @__PURE__ */ a("span", { className: "text-xs text-gray-600 dark:text-gray-400", children: [
|
|
219
|
-
|
|
246
|
+
g,
|
|
220
247
|
"px"
|
|
221
248
|
] })
|
|
222
249
|
] }),
|
|
@@ -224,8 +251,8 @@ function P({
|
|
|
224
251
|
"input",
|
|
225
252
|
{
|
|
226
253
|
type: "range",
|
|
227
|
-
value:
|
|
228
|
-
onChange: (r) =>
|
|
254
|
+
value: g,
|
|
255
|
+
onChange: (r) => o(Number(r.target.value)),
|
|
229
256
|
min: 0,
|
|
230
257
|
max: 24,
|
|
231
258
|
step: 2,
|
|
@@ -236,6 +263,6 @@ function P({
|
|
|
236
263
|
] });
|
|
237
264
|
}
|
|
238
265
|
export {
|
|
239
|
-
|
|
266
|
+
q as ImageGridInput
|
|
240
267
|
};
|
|
241
268
|
//# sourceMappingURL=ImageGridInput.js.map
|