@brunoalz/smartgesti-site-editor 1.0.0 → 1.2.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.map +1 -1
- package/dist/editor/BlockSelector.js +60 -57
- package/dist/editor/BlockSelector.js.map +1 -1
- package/dist/editor/LandingPageEditor.d.ts.map +1 -1
- package/dist/editor/LandingPageEditor.js +145 -128
- package/dist/editor/LandingPageEditor.js.map +1 -1
- 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 +2 -0
- package/dist/editor/PropertyEditor/BlockPropertyEditor.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/BlockPropertyEditor.js +53 -45
- package/dist/editor/PropertyEditor/BlockPropertyEditor.js.map +1 -1
- package/dist/editor/PropertyEditor/CollapsiblePropertyGroup.d.ts +2 -0
- 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/VariationSelector.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.js +10 -6
- package/dist/editor/PropertyEditor/VariationSelector.js.map +1 -1
- package/dist/editor/PropertyEditor/index.js +20 -18
- package/dist/editor/PropertyEditor/index.js.map +1 -1
- 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.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/index.d.ts +1 -0
- package/dist/editor/PropertyEditor/inputs/index.d.ts.map +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 +9 -1
- package/dist/editor/components/CenterPanel.d.ts.map +1 -1
- package/dist/editor/components/CenterPanel.js +24 -14
- package/dist/editor/components/CenterPanel.js.map +1 -1
- package/dist/editor/components/RightPanel.d.ts +5 -0
- package/dist/editor/components/RightPanel.d.ts.map +1 -1
- package/dist/editor/components/RightPanel.js +18 -12
- package/dist/editor/components/RightPanel.js.map +1 -1
- package/dist/editor/components/Toolbar.d.ts +3 -0
- package/dist/editor/components/Toolbar.d.ts.map +1 -1
- package/dist/editor/components/Toolbar.js +54 -35
- package/dist/editor/components/Toolbar.js.map +1 -1
- package/dist/engine/export/exportHtml.d.ts.map +1 -1
- package/dist/engine/export/exportHtml.js +50 -50
- package/dist/engine/export/exportHtml.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.js +22 -22
- 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 -205
- 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/index.d.ts +3 -0
- package/dist/engine/index.d.ts.map +1 -1
- package/dist/engine/index.js +99 -87
- package/dist/engine/index.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 +6 -2
- package/dist/engine/preview/Preview.d.ts.map +1 -1
- package/dist/engine/preview/Preview.js +295 -125
- package/dist/engine/preview/Preview.js.map +1 -1
- 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 +16 -12
- package/dist/engine/registry/registry.js.map +1 -1
- package/dist/engine/registry/types.d.ts +10 -6
- package/dist/engine/registry/types.d.ts.map +1 -1
- 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 +8 -7
- 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 +295 -218
- 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 +104 -3
- package/dist/engine/schema/siteDocument.d.ts.map +1 -1
- package/dist/engine/schema/siteDocument.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/types.d.ts +2 -0
- package/dist/engine/shared/imageGrid/types.d.ts.map +1 -1
- 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/hooks/useEditorState.d.ts +3 -0
- package/dist/hooks/useEditorState.d.ts.map +1 -1
- package/dist/hooks/useEditorState.js +106 -84
- package/dist/hooks/useEditorState.js.map +1 -1
- package/dist/index.d.ts +13 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +109 -93
- package/dist/index.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/index.d.ts +2 -0
- 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/utils/changeDetector.d.ts +2 -1
- 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/sharedTemplateToEngine.d.ts +4 -5
- 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 +13 -6
- package/dist/viewer/LandingPageViewer.d.ts.map +1 -1
- package/dist/viewer/LandingPageViewer.js +220 -122
- package/dist/viewer/LandingPageViewer.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
2
|
-
import { renderFaqItem as
|
|
1
|
+
import { jsx as e, jsxs as d } from "react/jsx-runtime";
|
|
2
|
+
import { renderFaqItem as m } from "./FaqItemRenderer.js";
|
|
3
3
|
function l(r) {
|
|
4
|
-
const { title: t, subtitle: i, items:
|
|
4
|
+
const { title: t, subtitle: i, items: n = [] } = r.props;
|
|
5
5
|
return /* @__PURE__ */ e(
|
|
6
6
|
"section",
|
|
7
7
|
{
|
|
@@ -9,8 +9,8 @@ function l(r) {
|
|
|
9
9
|
padding: "var(--sg-section-padding-md)",
|
|
10
10
|
backgroundColor: "var(--sg-bg)"
|
|
11
11
|
},
|
|
12
|
-
children: /* @__PURE__ */
|
|
13
|
-
(t || i) && /* @__PURE__ */
|
|
12
|
+
children: /* @__PURE__ */ d("div", { style: { maxWidth: "800px", margin: "0 auto", padding: "0 1rem" }, children: [
|
|
13
|
+
(t || i) && /* @__PURE__ */ d("div", { "data-block-group": "Conteúdo", style: { textAlign: "center", marginBottom: "3rem" }, children: [
|
|
14
14
|
t && /* @__PURE__ */ e(
|
|
15
15
|
"h2",
|
|
16
16
|
{
|
|
@@ -29,8 +29,8 @@ function l(r) {
|
|
|
29
29
|
}
|
|
30
30
|
)
|
|
31
31
|
] }),
|
|
32
|
-
/* @__PURE__ */ e("div", { children:
|
|
33
|
-
(o,
|
|
32
|
+
/* @__PURE__ */ e("div", { children: n.map(
|
|
33
|
+
(o, a) => m({ id: `${r.id}-faq-${a}`, props: o })
|
|
34
34
|
) })
|
|
35
35
|
] })
|
|
36
36
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FaqRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FaqRenderer.tsx"],"sourcesContent":["/**\n * Faq Renderer\n * Renderiza seção de FAQ com título e lista de itens\n */\n\nimport React from \"react\";\nimport { renderFaqItem } from \"./FaqItemRenderer\";\n\nexport function renderFaq(block: any): React.ReactNode {\n const { title, subtitle, items = [] } = block.props;\n\n return (\n <section\n key={block.id}\n style={{\n padding: \"var(--sg-section-padding-md)\",\n backgroundColor: \"var(--sg-bg)\",\n }}\n >\n <div style={{ maxWidth: \"800px\", margin: \"0 auto\", padding: \"0 1rem\" }}>\n {(title || subtitle) && (\n <div style={{ textAlign: \"center\", marginBottom: \"3rem\" }}>\n {title && (\n <h2\n style={{\n fontSize: \"var(--sg-heading-h2)\",\n marginBottom: \"0.5rem\",\n }}\n >\n {title}\n </h2>\n )}\n {subtitle && (\n <p\n style={{ color: \"var(--sg-muted-text)\", fontSize: \"1.125rem\" }}\n >\n {subtitle}\n </p>\n )}\n </div>\n )}\n <div>\n {items.map((item: any, index: number) =>\n renderFaqItem({ id: `${block.id}-faq-${index}`, props: item }),\n )}\n </div>\n </div>\n </section>\n );\n}\n"],"names":["renderFaq","block","title","subtitle","items","jsx","jsxs","item","index","renderFaqItem"],"mappings":";;AAQO,SAASA,EAAUC,GAA6B;AACrD,QAAM,EAAE,OAAAC,GAAO,UAAAC,GAAU,OAAAC,IAAQ,CAAA,EAAC,IAAMH,EAAM;AAE9C,SACE,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,OAAO;AAAA,QACL,SAAS;AAAA,QACT,iBAAiB;AAAA,MAAA;AAAA,MAGnB,UAAA,gBAAAC,EAAC,OAAA,EAAI,OAAO,EAAE,UAAU,SAAS,QAAQ,UAAU,SAAS,SAAA,GACxD,UAAA;AAAA,SAAAJ,KAASC,
|
|
1
|
+
{"version":3,"file":"FaqRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FaqRenderer.tsx"],"sourcesContent":["/**\n * Faq Renderer\n * Renderiza seção de FAQ com título e lista de itens\n */\n\nimport React from \"react\";\nimport { renderFaqItem } from \"./FaqItemRenderer\";\n\nexport function renderFaq(block: any): React.ReactNode {\n const { title, subtitle, items = [] } = block.props;\n\n return (\n <section\n key={block.id}\n style={{\n padding: \"var(--sg-section-padding-md)\",\n backgroundColor: \"var(--sg-bg)\",\n }}\n >\n <div style={{ maxWidth: \"800px\", margin: \"0 auto\", padding: \"0 1rem\" }}>\n {(title || subtitle) && (\n <div data-block-group=\"Conteúdo\" style={{ textAlign: \"center\", marginBottom: \"3rem\" }}>\n {title && (\n <h2\n style={{\n fontSize: \"var(--sg-heading-h2)\",\n marginBottom: \"0.5rem\",\n }}\n >\n {title}\n </h2>\n )}\n {subtitle && (\n <p\n style={{ color: \"var(--sg-muted-text)\", fontSize: \"1.125rem\" }}\n >\n {subtitle}\n </p>\n )}\n </div>\n )}\n <div>\n {items.map((item: any, index: number) =>\n renderFaqItem({ id: `${block.id}-faq-${index}`, props: item }),\n )}\n </div>\n </div>\n </section>\n );\n}\n"],"names":["renderFaq","block","title","subtitle","items","jsx","jsxs","item","index","renderFaqItem"],"mappings":";;AAQO,SAASA,EAAUC,GAA6B;AACrD,QAAM,EAAE,OAAAC,GAAO,UAAAC,GAAU,OAAAC,IAAQ,CAAA,EAAC,IAAMH,EAAM;AAE9C,SACE,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,OAAO;AAAA,QACL,SAAS;AAAA,QACT,iBAAiB;AAAA,MAAA;AAAA,MAGnB,UAAA,gBAAAC,EAAC,OAAA,EAAI,OAAO,EAAE,UAAU,SAAS,QAAQ,UAAU,SAAS,SAAA,GACxD,UAAA;AAAA,SAAAJ,KAASC,MACT,gBAAAG,EAAC,OAAA,EAAI,oBAAiB,YAAW,OAAO,EAAE,WAAW,UAAU,cAAc,OAAA,GAC1E,UAAA;AAAA,UAAAJ,KACC,gBAAAG;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,OAAO;AAAA,gBACL,UAAU;AAAA,gBACV,cAAc;AAAA,cAAA;AAAA,cAGf,UAAAH;AAAA,YAAA;AAAA,UAAA;AAAA,UAGJC,KACC,gBAAAE;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,OAAO,EAAE,OAAO,wBAAwB,UAAU,WAAA;AAAA,cAEjD,UAAAF;AAAA,YAAA;AAAA,UAAA;AAAA,QACH,GAEJ;AAAA,QAEF,gBAAAE,EAAC,SACE,UAAAD,EAAM;AAAA,UAAI,CAACG,GAAWC,MACrBC,EAAc,EAAE,IAAI,GAAGR,EAAM,EAAE,QAAQO,CAAK,IAAI,OAAOD,GAAM;AAAA,QAAA,EAC/D,CACF;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,IAjCKN,EAAM;AAAA,EAAA;AAoCjB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureGridRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FeatureGridRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"FeatureGridRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FeatureGridRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CAkI7D"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
1
|
+
import { jsx as e, jsxs as o } from "react/jsx-runtime";
|
|
2
2
|
import { renderIcon as g } from "../content/IconRenderer.js";
|
|
3
|
-
function
|
|
3
|
+
function h(d) {
|
|
4
4
|
const {
|
|
5
|
-
title:
|
|
6
|
-
subtitle:
|
|
5
|
+
title: t,
|
|
6
|
+
subtitle: n,
|
|
7
7
|
columns: s = 3,
|
|
8
|
-
variant:
|
|
9
|
-
features:
|
|
10
|
-
} =
|
|
8
|
+
variant: l = "default",
|
|
9
|
+
features: m = []
|
|
10
|
+
} = d.props, i = l === "image-cards";
|
|
11
11
|
return /* @__PURE__ */ e(
|
|
12
12
|
"section",
|
|
13
13
|
{
|
|
@@ -15,35 +15,36 @@ function p(n) {
|
|
|
15
15
|
padding: "var(--sg-section-padding-md, 4rem 0)",
|
|
16
16
|
backgroundColor: "var(--sg-surface)"
|
|
17
17
|
},
|
|
18
|
-
children: /* @__PURE__ */
|
|
19
|
-
(
|
|
20
|
-
|
|
18
|
+
children: /* @__PURE__ */ o("div", { style: { maxWidth: "1200px", margin: "0 auto", padding: "0 1rem" }, children: [
|
|
19
|
+
(t || n) && /* @__PURE__ */ o("div", { "data-block-group": "Conteúdo", style: { textAlign: "center", marginBottom: "3rem" }, children: [
|
|
20
|
+
t && /* @__PURE__ */ e(
|
|
21
21
|
"h2",
|
|
22
22
|
{
|
|
23
23
|
style: {
|
|
24
24
|
fontSize: "var(--sg-heading-h2)",
|
|
25
25
|
marginBottom: "0.5rem"
|
|
26
26
|
},
|
|
27
|
-
children:
|
|
27
|
+
children: t
|
|
28
28
|
}
|
|
29
29
|
),
|
|
30
|
-
|
|
30
|
+
n && /* @__PURE__ */ e(
|
|
31
31
|
"p",
|
|
32
32
|
{
|
|
33
33
|
style: { color: "var(--sg-muted-text)", fontSize: "1.125rem" },
|
|
34
|
-
children:
|
|
34
|
+
children: n
|
|
35
35
|
}
|
|
36
36
|
)
|
|
37
37
|
] }),
|
|
38
38
|
/* @__PURE__ */ e(
|
|
39
39
|
"div",
|
|
40
40
|
{
|
|
41
|
+
"data-block-group": "Layout",
|
|
41
42
|
style: {
|
|
42
43
|
display: "grid",
|
|
43
44
|
gridTemplateColumns: `repeat(${s}, 1fr)`,
|
|
44
45
|
gap: "2rem"
|
|
45
46
|
},
|
|
46
|
-
children:
|
|
47
|
+
children: m.map((r, a) => /* @__PURE__ */ o(
|
|
47
48
|
"div",
|
|
48
49
|
{
|
|
49
50
|
style: {
|
|
@@ -66,7 +67,7 @@ function p(n) {
|
|
|
66
67
|
}
|
|
67
68
|
}
|
|
68
69
|
),
|
|
69
|
-
/* @__PURE__ */
|
|
70
|
+
/* @__PURE__ */ o(
|
|
70
71
|
"div",
|
|
71
72
|
{
|
|
72
73
|
style: {
|
|
@@ -87,7 +88,7 @@ function p(n) {
|
|
|
87
88
|
marginBottom: "1rem"
|
|
88
89
|
},
|
|
89
90
|
children: g({
|
|
90
|
-
id: `${
|
|
91
|
+
id: `${d.id}-feat-${a}-icon`,
|
|
91
92
|
props: { name: r.icon, color: "#fff" }
|
|
92
93
|
})
|
|
93
94
|
}
|
|
@@ -132,10 +133,10 @@ function p(n) {
|
|
|
132
133
|
)
|
|
133
134
|
] })
|
|
134
135
|
},
|
|
135
|
-
|
|
136
|
+
d.id
|
|
136
137
|
);
|
|
137
138
|
}
|
|
138
139
|
export {
|
|
139
|
-
|
|
140
|
+
h as renderFeatureGrid
|
|
140
141
|
};
|
|
141
142
|
//# sourceMappingURL=FeatureGridRenderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureGridRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FeatureGridRenderer.tsx"],"sourcesContent":["/**\n * FeatureGrid Renderer\n * Renderiza grid de features com título, subtítulo e cards\n */\n\nimport React from \"react\";\nimport { renderIcon } from \"../content/IconRenderer\";\n\nexport function renderFeatureGrid(block: any): React.ReactNode {\n const {\n title,\n subtitle,\n columns = 3,\n variant = \"default\",\n features = [],\n } = block.props;\n const isImageCards = variant === \"image-cards\";\n\n return (\n <section\n key={block.id}\n style={{\n padding: \"var(--sg-section-padding-md, 4rem 0)\",\n backgroundColor: \"var(--sg-surface)\",\n }}\n >\n <div style={{ maxWidth: \"1200px\", margin: \"0 auto\", padding: \"0 1rem\" }}>\n {(title || subtitle) && (\n <div style={{ textAlign: \"center\", marginBottom: \"3rem\" }}>\n {title && (\n <h2\n style={{\n fontSize: \"var(--sg-heading-h2)\",\n marginBottom: \"0.5rem\",\n }}\n >\n {title}\n </h2>\n )}\n {subtitle && (\n <p\n style={{ color: \"var(--sg-muted-text)\", fontSize: \"1.125rem\" }}\n >\n {subtitle}\n </p>\n )}\n </div>\n )}\n <div\n style={{\n display: \"grid\",\n gridTemplateColumns: `repeat(${columns}, 1fr)`,\n gap: \"2rem\",\n }}\n >\n {features.map((feature: any, index: number) => (\n <div\n key={index}\n style={{\n backgroundColor: \"var(--sg-bg)\",\n borderRadius: \"var(--sg-card-radius, 0.75rem)\",\n padding: isImageCards && feature.image ? 0 : \"2rem\",\n boxShadow: \"var(--sg-card-shadow)\",\n overflow: \"hidden\",\n }}\n >\n {isImageCards && feature.image && (\n <div\n style={{\n width: \"100%\",\n height: \"200px\",\n backgroundImage: `url(${feature.image})`,\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n }}\n />\n )}\n <div\n style={{\n padding: isImageCards && feature.image ? \"1.5rem\" : 0,\n }}\n >\n {!isImageCards && feature.icon && (\n <div\n style={{\n width: \"3rem\",\n height: \"3rem\",\n backgroundColor: \"var(--sg-primary)\",\n borderRadius: \"0.75rem\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: \"1rem\",\n }}\n >\n {renderIcon({\n id: `${block.id}-feat-${index}-icon`,\n props: { name: feature.icon, color: \"#fff\" },\n })}\n </div>\n )}\n <h3\n style={{\n fontSize: \"1.25rem\",\n fontWeight: 600,\n marginBottom: \"0.5rem\",\n }}\n >\n {feature.title}\n </h3>\n <p style={{ color: \"var(--sg-muted-text)\" }}>\n {feature.description}\n </p>\n {feature.link && (\n <a\n href={feature.link.href || \"#\"}\n style={{\n display: \"inline-block\",\n marginTop: \"0.75rem\",\n color: \"var(--sg-primary)\",\n fontWeight: 500,\n textDecoration: \"none\",\n border: \"1px solid var(--sg-primary)\",\n padding: \"0.5rem 1rem\",\n borderRadius: \"var(--sg-button-radius, 0.5rem)\",\n }}\n >\n {feature.link.text}\n </a>\n )}\n </div>\n </div>\n ))}\n </div>\n </div>\n </section>\n );\n}\n"],"names":["renderFeatureGrid","block","title","subtitle","columns","variant","features","isImageCards","jsx","jsxs","feature","index","renderIcon"],"mappings":";;AAQO,SAASA,EAAkBC,GAA6B;AAC7D,QAAM;AAAA,IACJ,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,SAAAC,IAAU;AAAA,IACV,UAAAC,IAAW,CAAA;AAAA,EAAC,IACVL,EAAM,OACJM,IAAeF,MAAY;AAEjC,SACE,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,OAAO;AAAA,QACL,SAAS;AAAA,QACT,iBAAiB;AAAA,MAAA;AAAA,MAGnB,UAAA,gBAAAC,EAAC,OAAA,EAAI,OAAO,EAAE,UAAU,UAAU,QAAQ,UAAU,SAAS,SAAA,GACzD,UAAA;AAAA,SAAAP,KAASC,
|
|
1
|
+
{"version":3,"file":"FeatureGridRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FeatureGridRenderer.tsx"],"sourcesContent":["/**\n * FeatureGrid Renderer\n * Renderiza grid de features com título, subtítulo e cards\n */\n\nimport React from \"react\";\nimport { renderIcon } from \"../content/IconRenderer\";\n\nexport function renderFeatureGrid(block: any): React.ReactNode {\n const {\n title,\n subtitle,\n columns = 3,\n variant = \"default\",\n features = [],\n } = block.props;\n const isImageCards = variant === \"image-cards\";\n\n return (\n <section\n key={block.id}\n style={{\n padding: \"var(--sg-section-padding-md, 4rem 0)\",\n backgroundColor: \"var(--sg-surface)\",\n }}\n >\n <div style={{ maxWidth: \"1200px\", margin: \"0 auto\", padding: \"0 1rem\" }}>\n {(title || subtitle) && (\n <div data-block-group=\"Conteúdo\" style={{ textAlign: \"center\", marginBottom: \"3rem\" }}>\n {title && (\n <h2\n style={{\n fontSize: \"var(--sg-heading-h2)\",\n marginBottom: \"0.5rem\",\n }}\n >\n {title}\n </h2>\n )}\n {subtitle && (\n <p\n style={{ color: \"var(--sg-muted-text)\", fontSize: \"1.125rem\" }}\n >\n {subtitle}\n </p>\n )}\n </div>\n )}\n <div\n data-block-group=\"Layout\"\n style={{\n display: \"grid\",\n gridTemplateColumns: `repeat(${columns}, 1fr)`,\n gap: \"2rem\",\n }}\n >\n {features.map((feature: any, index: number) => (\n <div\n key={index}\n style={{\n backgroundColor: \"var(--sg-bg)\",\n borderRadius: \"var(--sg-card-radius, 0.75rem)\",\n padding: isImageCards && feature.image ? 0 : \"2rem\",\n boxShadow: \"var(--sg-card-shadow)\",\n overflow: \"hidden\",\n }}\n >\n {isImageCards && feature.image && (\n <div\n style={{\n width: \"100%\",\n height: \"200px\",\n backgroundImage: `url(${feature.image})`,\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n }}\n />\n )}\n <div\n style={{\n padding: isImageCards && feature.image ? \"1.5rem\" : 0,\n }}\n >\n {!isImageCards && feature.icon && (\n <div\n style={{\n width: \"3rem\",\n height: \"3rem\",\n backgroundColor: \"var(--sg-primary)\",\n borderRadius: \"0.75rem\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: \"1rem\",\n }}\n >\n {renderIcon({\n id: `${block.id}-feat-${index}-icon`,\n props: { name: feature.icon, color: \"#fff\" },\n })}\n </div>\n )}\n <h3\n style={{\n fontSize: \"1.25rem\",\n fontWeight: 600,\n marginBottom: \"0.5rem\",\n }}\n >\n {feature.title}\n </h3>\n <p style={{ color: \"var(--sg-muted-text)\" }}>\n {feature.description}\n </p>\n {feature.link && (\n <a\n href={feature.link.href || \"#\"}\n style={{\n display: \"inline-block\",\n marginTop: \"0.75rem\",\n color: \"var(--sg-primary)\",\n fontWeight: 500,\n textDecoration: \"none\",\n border: \"1px solid var(--sg-primary)\",\n padding: \"0.5rem 1rem\",\n borderRadius: \"var(--sg-button-radius, 0.5rem)\",\n }}\n >\n {feature.link.text}\n </a>\n )}\n </div>\n </div>\n ))}\n </div>\n </div>\n </section>\n );\n}\n"],"names":["renderFeatureGrid","block","title","subtitle","columns","variant","features","isImageCards","jsx","jsxs","feature","index","renderIcon"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FeatureRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"FeatureRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FeatureRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CA0CzD"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as n, jsx as r } from "react/jsx-runtime";
|
|
2
2
|
import { renderIcon as d } from "../content/IconRenderer.js";
|
|
3
3
|
function a(e) {
|
|
4
|
-
const { icon: t, title: i, description:
|
|
5
|
-
return /* @__PURE__ */
|
|
4
|
+
const { icon: t, title: i, description: o } = e.props;
|
|
5
|
+
return /* @__PURE__ */ n(
|
|
6
6
|
"div",
|
|
7
7
|
{
|
|
8
|
+
"data-block-group": "Conteúdo",
|
|
8
9
|
style: {
|
|
9
10
|
padding: "1.5rem",
|
|
10
11
|
textAlign: "center"
|
|
@@ -37,7 +38,7 @@ function a(e) {
|
|
|
37
38
|
children: i
|
|
38
39
|
}
|
|
39
40
|
),
|
|
40
|
-
/* @__PURE__ */ r("p", { style: { color: "var(--sg-muted-text)", fontSize: "0.875rem" }, children:
|
|
41
|
+
/* @__PURE__ */ r("p", { style: { color: "var(--sg-muted-text)", fontSize: "0.875rem" }, children: o })
|
|
41
42
|
]
|
|
42
43
|
},
|
|
43
44
|
e.id
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FeatureRenderer.tsx"],"sourcesContent":["/**\n * Feature Renderer\n * Renderiza um item de feature com ícone, título e descrição\n */\n\nimport React from \"react\";\nimport { renderIcon } from \"../content/IconRenderer\";\n\nexport function renderFeature(block: any): React.ReactNode {\n const { icon, title, description } = block.props;\n\n return (\n <div\n key={block.id}\n style={{\n padding: \"1.5rem\",\n textAlign: \"center\",\n }}\n >\n {icon && (\n <div\n style={{\n width: \"3rem\",\n height: \"3rem\",\n backgroundColor: \"var(--sg-primary)\",\n borderRadius: \"0.75rem\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n margin: \"0 auto 1rem\",\n color: \"var(--sg-primary-text)\",\n }}\n >\n {renderIcon({\n id: `${block.id}-icon`,\n props: { name: icon, size: \"md\", color: \"#fff\" },\n })}\n </div>\n )}\n <h3\n style={{ fontSize: \"1.25rem\", fontWeight: 600, marginBottom: \"0.5rem\" }}\n >\n {title}\n </h3>\n <p style={{ color: \"var(--sg-muted-text)\", fontSize: \"0.875rem\" }}>\n {description}\n </p>\n </div>\n );\n}\n"],"names":["renderFeature","block","icon","title","description","jsxs","jsx","renderIcon"],"mappings":";;AAQO,SAASA,EAAcC,GAA6B;AACzD,QAAM,EAAE,MAAAC,GAAM,OAAAC,GAAO,aAAAC,EAAA,IAAgBH,EAAM;AAE3C,SACE,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,OAAO;AAAA,QACL,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAGZ,UAAA;AAAA,QAAAH,KACC,gBAAAI;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAO;AAAA,cACL,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,iBAAiB;AAAA,cACjB,cAAc;AAAA,cACd,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,cAChB,QAAQ;AAAA,cACR,OAAO;AAAA,YAAA;AAAA,YAGR,UAAAC,EAAW;AAAA,cACV,IAAI,GAAGN,EAAM,EAAE;AAAA,cACf,OAAO,EAAE,MAAMC,GAAM,MAAM,MAAM,OAAO,OAAA;AAAA,YAAO,CAChD;AAAA,UAAA;AAAA,QAAA;AAAA,QAGL,gBAAAI;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAO,EAAE,UAAU,WAAW,YAAY,KAAK,cAAc,SAAA;AAAA,YAE5D,UAAAH;AAAA,UAAA;AAAA,QAAA;AAAA,QAEH,gBAAAG,EAAC,OAAE,OAAO,EAAE,OAAO,wBAAwB,UAAU,WAAA,GAClD,UAAAF,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"FeatureRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FeatureRenderer.tsx"],"sourcesContent":["/**\n * Feature Renderer\n * Renderiza um item de feature com ícone, título e descrição\n */\n\nimport React from \"react\";\nimport { renderIcon } from \"../content/IconRenderer\";\n\nexport function renderFeature(block: any): React.ReactNode {\n const { icon, title, description } = block.props;\n\n return (\n <div\n key={block.id}\n data-block-group=\"Conteúdo\"\n style={{\n padding: \"1.5rem\",\n textAlign: \"center\",\n }}\n >\n {icon && (\n <div\n style={{\n width: \"3rem\",\n height: \"3rem\",\n backgroundColor: \"var(--sg-primary)\",\n borderRadius: \"0.75rem\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n margin: \"0 auto 1rem\",\n color: \"var(--sg-primary-text)\",\n }}\n >\n {renderIcon({\n id: `${block.id}-icon`,\n props: { name: icon, size: \"md\", color: \"#fff\" },\n })}\n </div>\n )}\n <h3\n style={{ fontSize: \"1.25rem\", fontWeight: 600, marginBottom: \"0.5rem\" }}\n >\n {title}\n </h3>\n <p style={{ color: \"var(--sg-muted-text)\", fontSize: \"0.875rem\" }}>\n {description}\n </p>\n </div>\n );\n}\n"],"names":["renderFeature","block","icon","title","description","jsxs","jsx","renderIcon"],"mappings":";;AAQO,SAASA,EAAcC,GAA6B;AACzD,QAAM,EAAE,MAAAC,GAAM,OAAAC,GAAO,aAAAC,EAAA,IAAgBH,EAAM;AAE3C,SACE,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,oBAAiB;AAAA,MACjB,OAAO;AAAA,QACL,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,MAGZ,UAAA;AAAA,QAAAH,KACC,gBAAAI;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAO;AAAA,cACL,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,iBAAiB;AAAA,cACjB,cAAc;AAAA,cACd,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,cAChB,QAAQ;AAAA,cACR,OAAO;AAAA,YAAA;AAAA,YAGR,UAAAC,EAAW;AAAA,cACV,IAAI,GAAGN,EAAM,EAAE;AAAA,cACf,OAAO,EAAE,MAAMC,GAAM,MAAM,MAAM,OAAO,OAAA;AAAA,YAAO,CAChD;AAAA,UAAA;AAAA,QAAA;AAAA,QAGL,gBAAAI;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,OAAO,EAAE,UAAU,WAAW,YAAY,KAAK,cAAc,SAAA;AAAA,YAE5D,UAAAH;AAAA,UAAA;AAAA,QAAA;AAAA,QAEH,gBAAAG,EAAC,OAAE,OAAO,EAAE,OAAO,wBAAwB,UAAU,WAAA,GAClD,UAAAF,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,IAlCKH,EAAM;AAAA,EAAA;AAqCjB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FooterRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FooterRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"FooterRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/FooterRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CAwOxD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e, jsxs as i } from "react/jsx-runtime";
|
|
2
2
|
import { socialIconPaths as d } from "../../../shared/socialIcons.js";
|
|
3
|
-
function v(
|
|
3
|
+
function v(g) {
|
|
4
4
|
const {
|
|
5
5
|
logo: t,
|
|
6
6
|
description: n,
|
|
@@ -8,7 +8,7 @@ function v(m) {
|
|
|
8
8
|
social: l = [],
|
|
9
9
|
copyright: c,
|
|
10
10
|
variant: p = "simple"
|
|
11
|
-
} =
|
|
11
|
+
} = g.props, a = typeof t == "string" ? t : t?.src ?? "", m = typeof t == "string" ? "Logo" : t?.alt ?? "Logo", f = p === "multi-column" && s.length > 0;
|
|
12
12
|
return /* @__PURE__ */ e(
|
|
13
13
|
"footer",
|
|
14
14
|
{
|
|
@@ -36,12 +36,12 @@ function v(m) {
|
|
|
36
36
|
marginBottom: "2rem"
|
|
37
37
|
},
|
|
38
38
|
children: [
|
|
39
|
-
/* @__PURE__ */ i("div", { children: [
|
|
39
|
+
/* @__PURE__ */ i("div", { "data-block-group": "Logo", children: [
|
|
40
40
|
a && /* @__PURE__ */ e(
|
|
41
41
|
"img",
|
|
42
42
|
{
|
|
43
43
|
src: a,
|
|
44
|
-
alt:
|
|
44
|
+
alt: m,
|
|
45
45
|
style: {
|
|
46
46
|
height: "2.5rem",
|
|
47
47
|
objectFit: "contain",
|
|
@@ -94,7 +94,7 @@ function v(m) {
|
|
|
94
94
|
o
|
|
95
95
|
)) })
|
|
96
96
|
] }),
|
|
97
|
-
s.map((r, o) => /* @__PURE__ */ i("div", { children: [
|
|
97
|
+
s.map((r, o) => /* @__PURE__ */ i("div", { "data-block-group": "🔗 Links", children: [
|
|
98
98
|
/* @__PURE__ */ e(
|
|
99
99
|
"h4",
|
|
100
100
|
{
|
|
@@ -137,6 +137,7 @@ function v(m) {
|
|
|
137
137
|
) : /* @__PURE__ */ i(
|
|
138
138
|
"div",
|
|
139
139
|
{
|
|
140
|
+
"data-block-group": "Logo",
|
|
140
141
|
style: {
|
|
141
142
|
textAlign: "center",
|
|
142
143
|
marginBottom: "1.5rem"
|
|
@@ -146,7 +147,7 @@ function v(m) {
|
|
|
146
147
|
"img",
|
|
147
148
|
{
|
|
148
149
|
src: a,
|
|
149
|
-
alt:
|
|
150
|
+
alt: m,
|
|
150
151
|
style: {
|
|
151
152
|
height: "2.5rem",
|
|
152
153
|
objectFit: "contain",
|
|
@@ -236,7 +237,7 @@ function v(m) {
|
|
|
236
237
|
}
|
|
237
238
|
)
|
|
238
239
|
},
|
|
239
|
-
|
|
240
|
+
g.id
|
|
240
241
|
);
|
|
241
242
|
}
|
|
242
243
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FooterRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FooterRenderer.tsx"],"sourcesContent":["/**\n * Footer Renderer\n * Renderiza rodapé com logo, descrição, colunas de links e redes sociais\n */\n\nimport React from \"react\";\nimport { socialIconPaths } from \"../../../shared/socialIcons\";\n\nexport function renderFooter(block: any): React.ReactNode {\n const {\n logo,\n description,\n columns = [],\n social = [],\n copyright,\n variant = \"simple\",\n } = block.props;\n\n const logoUrl = typeof logo === \"string\" ? logo : (logo?.src ?? \"\");\n const logoAlt = typeof logo === \"string\" ? \"Logo\" : (logo?.alt ?? \"Logo\");\n\n const isMultiColumn = variant === \"multi-column\" && columns.length > 0;\n\n return (\n <footer\n key={block.id}\n style={{\n backgroundColor: \"var(--sg-surface, #f8fafc)\",\n borderTop: \"1px solid var(--sg-border, #e5e7eb)\",\n padding: \"3rem 0 1.5rem\",\n }}\n >\n <div\n style={{\n maxWidth: \"1200px\",\n margin: \"0 auto\",\n padding: \"0 1rem\",\n }}\n >\n {isMultiColumn ? (\n <div\n style={{\n display: \"grid\",\n gridTemplateColumns: `2fr repeat(${columns.length}, 1fr)`,\n gap: \"2rem\",\n marginBottom: \"2rem\",\n }}\n >\n {/* Brand column */}\n <div>\n {logoUrl && (\n <img\n src={logoUrl}\n alt={logoAlt}\n style={{\n height: \"2.5rem\",\n objectFit: \"contain\",\n marginBottom: \"1rem\",\n }}\n />\n )}\n {description && (\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n lineHeight: 1.6,\n marginBottom: \"1rem\",\n }}\n >\n {description}\n </p>\n )}\n {social.length > 0 && (\n <div style={{ display: \"flex\", gap: \"0.75rem\" }}>\n {social.map((item: any, index: number) => (\n <a\n key={index}\n href={item.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path\n d={socialIconPaths[item.platform] || socialIconPaths.github}\n />\n </svg>\n </a>\n ))}\n </div>\n )}\n </div>\n\n {/* Link columns */}\n {columns.map((column: any, index: number) => (\n <div key={index}>\n <h4\n style={{\n fontWeight: 600,\n marginBottom: \"1rem\",\n color: \"var(--sg-text, #0f172a)\",\n }}\n >\n {column.title}\n </h4>\n <ul\n style={{\n listStyle: \"none\",\n padding: 0,\n margin: 0,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"0.5rem\",\n }}\n >\n {column.links?.map((link: any, linkIndex: number) => (\n <li key={linkIndex}>\n <a\n href={link.href}\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n fontSize: \"0.875rem\",\n }}\n >\n {link.text}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n ) : (\n <div\n style={{\n textAlign: \"center\",\n marginBottom: \"1.5rem\",\n }}\n >\n {logoUrl && (\n <img\n src={logoUrl}\n alt={logoAlt}\n style={{\n height: \"2.5rem\",\n objectFit: \"contain\",\n marginBottom: \"1rem\",\n }}\n />\n )}\n {description && (\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n maxWidth: \"400px\",\n margin: \"0 auto 1rem\",\n }}\n >\n {description}\n </p>\n )}\n {social.length > 0 && (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n gap: \"1rem\",\n }}\n >\n {social.map((item: any, index: number) => (\n <a\n key={index}\n href={item.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path\n d={socialIconPaths[item.platform] || socialIconPaths.github}\n />\n </svg>\n </a>\n ))}\n </div>\n )}\n </div>\n )}\n\n {/* Copyright */}\n {copyright && (\n <div\n style={{\n borderTop: \"1px solid var(--sg-border, #e5e7eb)\",\n paddingTop: \"1.5rem\",\n textAlign: \"center\",\n }}\n >\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n margin: 0,\n }}\n >\n {copyright}\n </p>\n </div>\n )}\n </div>\n </footer>\n );\n}\n"],"names":["renderFooter","block","logo","description","columns","social","copyright","variant","logoUrl","logoAlt","isMultiColumn","jsx","jsxs","item","index","socialIconPaths","column","link","linkIndex"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FooterRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/FooterRenderer.tsx"],"sourcesContent":["/**\n * Footer Renderer\n * Renderiza rodapé com logo, descrição, colunas de links e redes sociais\n */\n\nimport React from \"react\";\nimport { socialIconPaths } from \"../../../shared/socialIcons\";\n\nexport function renderFooter(block: any): React.ReactNode {\n const {\n logo,\n description,\n columns = [],\n social = [],\n copyright,\n variant = \"simple\",\n } = block.props;\n\n const logoUrl = typeof logo === \"string\" ? logo : (logo?.src ?? \"\");\n const logoAlt = typeof logo === \"string\" ? \"Logo\" : (logo?.alt ?? \"Logo\");\n\n const isMultiColumn = variant === \"multi-column\" && columns.length > 0;\n\n return (\n <footer\n key={block.id}\n style={{\n backgroundColor: \"var(--sg-surface, #f8fafc)\",\n borderTop: \"1px solid var(--sg-border, #e5e7eb)\",\n padding: \"3rem 0 1.5rem\",\n }}\n >\n <div\n style={{\n maxWidth: \"1200px\",\n margin: \"0 auto\",\n padding: \"0 1rem\",\n }}\n >\n {isMultiColumn ? (\n <div\n style={{\n display: \"grid\",\n gridTemplateColumns: `2fr repeat(${columns.length}, 1fr)`,\n gap: \"2rem\",\n marginBottom: \"2rem\",\n }}\n >\n {/* Brand column */}\n <div data-block-group=\"Logo\">\n {logoUrl && (\n <img\n src={logoUrl}\n alt={logoAlt}\n style={{\n height: \"2.5rem\",\n objectFit: \"contain\",\n marginBottom: \"1rem\",\n }}\n />\n )}\n {description && (\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n lineHeight: 1.6,\n marginBottom: \"1rem\",\n }}\n >\n {description}\n </p>\n )}\n {social.length > 0 && (\n <div style={{ display: \"flex\", gap: \"0.75rem\" }}>\n {social.map((item: any, index: number) => (\n <a\n key={index}\n href={item.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path\n d={socialIconPaths[item.platform] || socialIconPaths.github}\n />\n </svg>\n </a>\n ))}\n </div>\n )}\n </div>\n\n {/* Link columns */}\n {columns.map((column: any, index: number) => (\n <div key={index} data-block-group=\"🔗 Links\">\n <h4\n style={{\n fontWeight: 600,\n marginBottom: \"1rem\",\n color: \"var(--sg-text, #0f172a)\",\n }}\n >\n {column.title}\n </h4>\n <ul\n style={{\n listStyle: \"none\",\n padding: 0,\n margin: 0,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"0.5rem\",\n }}\n >\n {column.links?.map((link: any, linkIndex: number) => (\n <li key={linkIndex}>\n <a\n href={link.href}\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n fontSize: \"0.875rem\",\n }}\n >\n {link.text}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n ) : (\n <div\n data-block-group=\"Logo\"\n style={{\n textAlign: \"center\",\n marginBottom: \"1.5rem\",\n }}\n >\n {logoUrl && (\n <img\n src={logoUrl}\n alt={logoAlt}\n style={{\n height: \"2.5rem\",\n objectFit: \"contain\",\n marginBottom: \"1rem\",\n }}\n />\n )}\n {description && (\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n maxWidth: \"400px\",\n margin: \"0 auto 1rem\",\n }}\n >\n {description}\n </p>\n )}\n {social.length > 0 && (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n gap: \"1rem\",\n }}\n >\n {social.map((item: any, index: number) => (\n <a\n key={index}\n href={item.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n textDecoration: \"none\",\n }}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path\n d={socialIconPaths[item.platform] || socialIconPaths.github}\n />\n </svg>\n </a>\n ))}\n </div>\n )}\n </div>\n )}\n\n {/* Copyright */}\n {copyright && (\n <div\n style={{\n borderTop: \"1px solid var(--sg-border, #e5e7eb)\",\n paddingTop: \"1.5rem\",\n textAlign: \"center\",\n }}\n >\n <p\n style={{\n color: \"var(--sg-muted-text, #64748b)\",\n fontSize: \"0.875rem\",\n margin: 0,\n }}\n >\n {copyright}\n </p>\n </div>\n )}\n </div>\n </footer>\n );\n}\n"],"names":["renderFooter","block","logo","description","columns","social","copyright","variant","logoUrl","logoAlt","isMultiColumn","jsx","jsxs","item","index","socialIconPaths","column","link","linkIndex"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeroRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/HeroRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"HeroRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/HeroRenderer.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAe1B,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CAsxBtD"}
|