@brunoalz/smartgesti-site-editor 1.5.2 → 1.7.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/LandingPageEditor.d.ts.map +1 -1
- package/dist/editor/LandingPageEditor.js +199 -185
- package/dist/editor/LandingPageEditor.js.map +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.d.ts +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.d.ts.map +1 -1
- package/dist/editor/PropertyEditor/VariationSelector.js +262 -93
- package/dist/editor/PropertyEditor/VariationSelector.js.map +1 -1
- package/dist/engine/export/exporters/layout/GridExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/layout/GridExporter.js +47 -31
- package/dist/engine/export/exporters/layout/GridExporter.js.map +1 -1
- package/dist/engine/export/exporters/layout/StackExporter.d.ts.map +1 -1
- package/dist/engine/export/exporters/layout/StackExporter.js +17 -16
- package/dist/engine/export/exporters/layout/StackExporter.js.map +1 -1
- package/dist/engine/export/exporters/sections/BlogPostExporters.d.ts.map +1 -1
- package/dist/engine/export/exporters/sections/BlogPostExporters.js +246 -186
- package/dist/engine/export/exporters/sections/BlogPostExporters.js.map +1 -1
- package/dist/engine/plugins/builtin/blog/manifest.d.ts.map +1 -1
- package/dist/engine/plugins/builtin/blog/manifest.js +65 -47
- package/dist/engine/plugins/builtin/blog/manifest.js.map +1 -1
- package/dist/engine/presets/blogVariations.d.ts +51 -0
- package/dist/engine/presets/blogVariations.d.ts.map +1 -0
- package/dist/engine/presets/blogVariations.js +267 -0
- package/dist/engine/presets/blogVariations.js.map +1 -0
- package/dist/engine/registry/blocks/layout/grid.d.ts.map +1 -1
- package/dist/engine/registry/blocks/layout/grid.js +84 -42
- package/dist/engine/registry/blocks/layout/grid.js.map +1 -1
- package/dist/engine/registry/blocks/layout/stack.d.ts.map +1 -1
- package/dist/engine/registry/blocks/layout/stack.js +14 -13
- package/dist/engine/registry/blocks/layout/stack.js.map +1 -1
- package/dist/engine/registry/blocks/sections/blogCategoryFilter.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/blogCategoryFilter.js +62 -5
- package/dist/engine/registry/blocks/sections/blogCategoryFilter.js.map +1 -1
- package/dist/engine/registry/blocks/sections/blogPostDetail.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/blogPostDetail.js +16 -4
- package/dist/engine/registry/blocks/sections/blogPostDetail.js.map +1 -1
- package/dist/engine/registry/blocks/sections/blogRecentPosts.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/blogRecentPosts.js +62 -5
- package/dist/engine/registry/blocks/sections/blogRecentPosts.js.map +1 -1
- package/dist/engine/registry/blocks/sections/blogSearchBar.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/blogSearchBar.js +23 -1
- package/dist/engine/registry/blocks/sections/blogSearchBar.js.map +1 -1
- package/dist/engine/registry/blocks/sections/blogTagCloud.d.ts.map +1 -1
- package/dist/engine/registry/blocks/sections/blogTagCloud.js +63 -6
- package/dist/engine/registry/blocks/sections/blogTagCloud.js.map +1 -1
- package/dist/engine/render/renderers/layout/GridRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/layout/GridRenderer.js +51 -18
- package/dist/engine/render/renderers/layout/GridRenderer.js.map +1 -1
- package/dist/engine/render/renderers/layout/StackRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/layout/StackRenderer.js +30 -25
- package/dist/engine/render/renderers/layout/StackRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/BlogCategoryFilterRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/BlogCategoryFilterRenderer.js +157 -132
- package/dist/engine/render/renderers/sections/BlogCategoryFilterRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js +17 -17
- package/dist/engine/render/renderers/sections/BlogPostDetailRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/BlogRecentPostsRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/BlogRecentPostsRenderer.js +168 -136
- package/dist/engine/render/renderers/sections/BlogRecentPostsRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/BlogSearchBarRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/BlogSearchBarRenderer.js +59 -102
- package/dist/engine/render/renderers/sections/BlogSearchBarRenderer.js.map +1 -1
- package/dist/engine/render/renderers/sections/BlogTagCloudRenderer.d.ts.map +1 -1
- package/dist/engine/render/renderers/sections/BlogTagCloudRenderer.js +158 -122
- package/dist/engine/render/renderers/sections/BlogTagCloudRenderer.js.map +1 -1
- package/dist/engine/schema/siteDocument.d.ts +57 -1
- package/dist/engine/schema/siteDocument.d.ts.map +1 -1
- package/dist/engine/schema/siteDocument.js.map +1 -1
- package/dist/engine/shared/hoverEffects/colorUtils.d.ts +2 -1
- package/dist/engine/shared/hoverEffects/colorUtils.d.ts.map +1 -1
- package/dist/engine/shared/hoverEffects/colorUtils.js +16 -12
- package/dist/engine/shared/hoverEffects/colorUtils.js.map +1 -1
- package/dist/engine/shared/widgetStyles.d.ts +9 -0
- package/dist/engine/shared/widgetStyles.d.ts.map +1 -0
- package/dist/engine/shared/widgetStyles.js +13 -0
- package/dist/engine/shared/widgetStyles.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +84 -71
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlogRecentPostsRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogRecentPostsRenderer.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"BlogRecentPostsRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogRecentPostsRenderer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CAkLjE"}
|
|
@@ -1,148 +1,180 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
|
|
1
|
+
import { jsxs as o, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import $ from "react";
|
|
3
|
+
import { resolveWidgetShadow as C } from "../../../shared/widgetStyles.js";
|
|
4
|
+
import { generateLinkHoverStyles as H } from "../../../shared/hoverEffects/linkHover.js";
|
|
5
|
+
function z(n) {
|
|
3
6
|
const {
|
|
4
|
-
title:
|
|
5
|
-
posts:
|
|
6
|
-
showThumbnail:
|
|
7
|
-
showDate:
|
|
8
|
-
showCategory:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
{
|
|
57
|
-
href: `/site/p/blog/${e.slug}`,
|
|
58
|
-
style: {
|
|
59
|
-
display: "flex",
|
|
60
|
-
alignItems: "center",
|
|
61
|
-
gap: "0.75rem",
|
|
62
|
-
padding: "0.75rem 1.25rem",
|
|
63
|
-
textDecoration: "none",
|
|
64
|
-
color: "inherit",
|
|
65
|
-
transition: "background-color 0.15s"
|
|
66
|
-
},
|
|
67
|
-
children: [
|
|
68
|
-
l && e.image && /* @__PURE__ */ r(
|
|
69
|
-
"img",
|
|
7
|
+
title: a = "Posts Recentes",
|
|
8
|
+
posts: c = [],
|
|
9
|
+
showThumbnail: m = !0,
|
|
10
|
+
showDate: h = !0,
|
|
11
|
+
showCategory: v = !1,
|
|
12
|
+
borderRadius: d = "0.75rem",
|
|
13
|
+
shadow: p = "none",
|
|
14
|
+
linkColor: f,
|
|
15
|
+
linkHoverColor: y,
|
|
16
|
+
linkHoverEffect: b,
|
|
17
|
+
linkHoverIntensity: x
|
|
18
|
+
} = n.props, k = f || "", i = y || "", u = b || "background", w = x ?? 50, t = `widget-recent-${n.id}`, g = C(p);
|
|
19
|
+
let s = "";
|
|
20
|
+
if (i) {
|
|
21
|
+
const e = H({
|
|
22
|
+
effect: u,
|
|
23
|
+
intensity: w,
|
|
24
|
+
hoverColor: i
|
|
25
|
+
}), l = e.base ? `#${t} .sg-recent-post { ${e.base}; transition: all 0.3s ease; }` : `#${t} .sg-recent-post { transition: all 0.3s ease; }`, S = `#${t} .sg-recent-post:hover { ${e.hover}; transition: all 0.3s ease; }
|
|
26
|
+
#${t} .sg-recent-post:hover .sg-recent-title { color: ${i}; }`;
|
|
27
|
+
s = l + `
|
|
28
|
+
` + S;
|
|
29
|
+
} else
|
|
30
|
+
s = `
|
|
31
|
+
#${t} .sg-recent-post { transition: background-color 0.2s; }
|
|
32
|
+
#${t} .sg-recent-post:hover { background-color: rgba(0,0,0,0.04); }
|
|
33
|
+
#${t} .sg-recent-post:hover .sg-recent-title { color: var(--sg-primary); }
|
|
34
|
+
`;
|
|
35
|
+
return /* @__PURE__ */ o($.Fragment, { children: [
|
|
36
|
+
/* @__PURE__ */ r("style", { children: s }),
|
|
37
|
+
/* @__PURE__ */ o(
|
|
38
|
+
"div",
|
|
39
|
+
{
|
|
40
|
+
id: t,
|
|
41
|
+
"data-block-group": "Conteúdo",
|
|
42
|
+
style: {
|
|
43
|
+
backgroundColor: "var(--sg-surface, var(--sg-bg))",
|
|
44
|
+
borderRadius: d,
|
|
45
|
+
border: "1px solid var(--sg-border, #e5e7eb)",
|
|
46
|
+
boxShadow: g !== "none" ? g : void 0,
|
|
47
|
+
overflow: "hidden"
|
|
48
|
+
},
|
|
49
|
+
children: [
|
|
50
|
+
a && /* @__PURE__ */ r(
|
|
51
|
+
"div",
|
|
52
|
+
{
|
|
53
|
+
style: {
|
|
54
|
+
padding: "1rem 1.25rem",
|
|
55
|
+
borderBottom: "1px solid var(--sg-border, #e5e7eb)"
|
|
56
|
+
},
|
|
57
|
+
children: /* @__PURE__ */ r(
|
|
58
|
+
"h3",
|
|
70
59
|
{
|
|
71
|
-
src: e.image,
|
|
72
|
-
alt: e.title,
|
|
73
60
|
style: {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
61
|
+
fontSize: "1rem",
|
|
62
|
+
fontWeight: 600,
|
|
63
|
+
margin: 0,
|
|
64
|
+
color: "var(--sg-text)"
|
|
65
|
+
},
|
|
66
|
+
children: a
|
|
80
67
|
}
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
68
|
+
)
|
|
69
|
+
}
|
|
70
|
+
),
|
|
71
|
+
/* @__PURE__ */ r("div", { style: { padding: "0.5rem 0" }, children: c.length === 0 ? /* @__PURE__ */ r(
|
|
72
|
+
"p",
|
|
73
|
+
{
|
|
74
|
+
style: {
|
|
75
|
+
padding: "1.5rem 1.25rem",
|
|
76
|
+
color: "var(--sg-muted-text)",
|
|
77
|
+
fontSize: "0.875rem",
|
|
78
|
+
textAlign: "center",
|
|
79
|
+
margin: 0
|
|
80
|
+
},
|
|
81
|
+
children: "Nenhum post recente"
|
|
82
|
+
}
|
|
83
|
+
) : c.map((e, l) => /* @__PURE__ */ o(
|
|
84
|
+
"a",
|
|
85
|
+
{
|
|
86
|
+
href: `/site/p/blog/${e.slug}`,
|
|
87
|
+
className: "sg-recent-post",
|
|
88
|
+
style: {
|
|
89
|
+
display: "flex",
|
|
90
|
+
alignItems: "center",
|
|
91
|
+
gap: "0.75rem",
|
|
92
|
+
padding: "0.75rem 1.25rem",
|
|
93
|
+
textDecoration: "none",
|
|
94
|
+
color: "inherit",
|
|
95
|
+
transition: "background-color 0.2s"
|
|
96
|
+
},
|
|
97
|
+
children: [
|
|
98
|
+
m && e.image && /* @__PURE__ */ r(
|
|
99
|
+
"img",
|
|
85
100
|
{
|
|
101
|
+
src: e.image,
|
|
102
|
+
alt: e.title,
|
|
86
103
|
style: {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
WebkitBoxOrient: "vertical",
|
|
94
|
-
overflow: "hidden"
|
|
95
|
-
},
|
|
96
|
-
children: e.title
|
|
104
|
+
width: "64px",
|
|
105
|
+
height: "64px",
|
|
106
|
+
objectFit: "cover",
|
|
107
|
+
borderRadius: `calc(${d} * 0.5)`,
|
|
108
|
+
flexShrink: 0
|
|
109
|
+
}
|
|
97
110
|
}
|
|
98
111
|
),
|
|
99
|
-
/* @__PURE__ */
|
|
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
|
-
|
|
112
|
+
/* @__PURE__ */ o("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
113
|
+
/* @__PURE__ */ r(
|
|
114
|
+
"div",
|
|
115
|
+
{
|
|
116
|
+
className: "sg-recent-title",
|
|
117
|
+
style: {
|
|
118
|
+
fontSize: "0.875rem",
|
|
119
|
+
fontWeight: 500,
|
|
120
|
+
color: k || "var(--sg-text)",
|
|
121
|
+
lineHeight: 1.4,
|
|
122
|
+
display: "-webkit-box",
|
|
123
|
+
WebkitLineClamp: 2,
|
|
124
|
+
WebkitBoxOrient: "vertical",
|
|
125
|
+
overflow: "hidden",
|
|
126
|
+
transition: "color 0.2s"
|
|
127
|
+
},
|
|
128
|
+
children: e.title
|
|
129
|
+
}
|
|
130
|
+
),
|
|
131
|
+
/* @__PURE__ */ o(
|
|
132
|
+
"div",
|
|
133
|
+
{
|
|
134
|
+
style: {
|
|
135
|
+
display: "flex",
|
|
136
|
+
alignItems: "center",
|
|
137
|
+
gap: "0.5rem",
|
|
138
|
+
marginTop: "0.25rem"
|
|
139
|
+
},
|
|
140
|
+
children: [
|
|
141
|
+
h && e.date && /* @__PURE__ */ r(
|
|
142
|
+
"span",
|
|
143
|
+
{
|
|
144
|
+
style: {
|
|
145
|
+
fontSize: "0.75rem",
|
|
146
|
+
color: "var(--sg-muted-text)"
|
|
147
|
+
},
|
|
148
|
+
children: e.date
|
|
149
|
+
}
|
|
150
|
+
),
|
|
151
|
+
v && e.category && /* @__PURE__ */ r(
|
|
152
|
+
"span",
|
|
153
|
+
{
|
|
154
|
+
style: {
|
|
155
|
+
fontSize: "0.6875rem",
|
|
156
|
+
color: "var(--sg-primary)",
|
|
157
|
+
fontWeight: 600,
|
|
158
|
+
textTransform: "uppercase",
|
|
159
|
+
letterSpacing: "0.03em"
|
|
160
|
+
},
|
|
161
|
+
children: e.category
|
|
162
|
+
}
|
|
163
|
+
)
|
|
164
|
+
]
|
|
165
|
+
}
|
|
166
|
+
)
|
|
167
|
+
] })
|
|
168
|
+
]
|
|
169
|
+
},
|
|
170
|
+
l
|
|
171
|
+
)) })
|
|
172
|
+
]
|
|
173
|
+
}
|
|
174
|
+
)
|
|
175
|
+
] }, n.id);
|
|
144
176
|
}
|
|
145
177
|
export {
|
|
146
|
-
|
|
178
|
+
z as renderBlogRecentPosts
|
|
147
179
|
};
|
|
148
180
|
//# sourceMappingURL=BlogRecentPostsRenderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlogRecentPostsRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/BlogRecentPostsRenderer.tsx"],"sourcesContent":["/**\n * BlogRecentPosts Renderer\n * Widget de sidebar com lista dos posts mais recentes\n */\n\nimport React from \"react\";\n\ninterface RecentPost {\n title: string;\n slug: string;\n date?: string;\n image?: string;\n category?: string;\n}\n\nexport function renderBlogRecentPosts(block: any): React.ReactNode {\n const {\n title = \"Posts Recentes\",\n posts = [],\n showThumbnail = true,\n showDate = true,\n showCategory = false,\n } = block.props;\n\n return (\n <div\n key={block.id}\n data-block-group=\"Conteúdo\"\n style={{\n backgroundColor: \"var(--sg-bg)\",\n borderRadius: \"var(--sg-card-radius, 0.75rem)\",\n border: \"1px solid var(--sg-border, #e5e7eb)\",\n overflow: \"hidden\",\n }}\n >\n {title && (\n <div\n style={{\n padding: \"1rem 1.25rem\",\n borderBottom: \"1px solid var(--sg-border, #e5e7eb)\",\n }}\n >\n <h3\n style={{\n fontSize: \"1rem\",\n fontWeight: 600,\n margin: 0,\n color: \"var(--sg-text)\",\n }}\n >\n {title}\n </h3>\n </div>\n )}\n\n <div style={{ padding: \"0.5rem 0\" }}>\n {posts.length === 0 ? (\n <p\n style={{\n padding: \"1.5rem 1.25rem\",\n color: \"var(--sg-muted-text)\",\n fontSize: \"0.875rem\",\n textAlign: \"center\",\n margin: 0,\n }}\n >\n Nenhum post recente\n </p>\n ) : (\n posts.map((post: RecentPost, index: number) => (\n <a\n key={index}\n href={`/site/p/blog/${post.slug}`}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"0.75rem\",\n padding: \"0.75rem 1.25rem\",\n textDecoration: \"none\",\n color: \"inherit\",\n transition: \"background-color 0.15s\",\n }}\n >\n {showThumbnail && post.image && (\n <img\n src={post.image}\n alt={post.title}\n style={{\n width: \"64px\",\n height: \"64px\",\n objectFit: \"cover\",\n borderRadius: \"var(--sg-card-radius, 0.5rem)\",\n flexShrink: 0,\n }}\n />\n )}\n <div style={{ flex: 1, minWidth: 0 }}>\n <div\n style={{\n fontSize: \"0.875rem\",\n fontWeight: 500,\n color: \"var(--sg-text)\",\n lineHeight: 1.4,\n display: \"-webkit-box\",\n WebkitLineClamp: 2,\n WebkitBoxOrient: \"vertical\",\n overflow: \"hidden\",\n }}\n >\n {post.title}\n </div>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"0.5rem\",\n marginTop: \"0.25rem\",\n }}\n >\n {showDate && post.date && (\n <span\n style={{\n fontSize: \"0.75rem\",\n color: \"var(--sg-muted-text)\",\n }}\n >\n {post.date}\n </span>\n )}\n {showCategory && post.category && (\n <span\n style={{\n fontSize: \"0.6875rem\",\n color: \"var(--sg-primary)\",\n fontWeight: 600,\n textTransform: \"uppercase\",\n letterSpacing: \"0.03em\",\n }}\n >\n {post.category}\n </span>\n )}\n </div>\n </div>\n </a>\n ))\n )}\n </div>\n </div>\n );\n}\n"],"names":["renderBlogRecentPosts","block","title","posts","showThumbnail","showDate","showCategory","jsxs","jsx","post","index"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BlogRecentPostsRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/BlogRecentPostsRenderer.tsx"],"sourcesContent":["/**\n * BlogRecentPosts Renderer\n * Card widget de sidebar com lista dos posts mais recentes\n * Background: var(--sg-surface) para contraste com layout\n * Hover effects nos links de posts\n */\n\nimport React from \"react\";\nimport { resolveWidgetShadow } from \"../../../shared/widgetStyles\";\nimport { generateLinkHoverStyles } from \"../../../shared/hoverEffects\";\n\ninterface RecentPost {\n title: string;\n slug: string;\n date?: string;\n image?: string;\n category?: string;\n}\n\nexport function renderBlogRecentPosts(block: any): React.ReactNode {\n const {\n title = \"Posts Recentes\",\n posts = [],\n showThumbnail = true,\n showDate = true,\n showCategory = false,\n borderRadius = \"0.75rem\",\n shadow = \"none\",\n linkColor: linkColorProp,\n linkHoverColor: linkHoverColorProp,\n linkHoverEffect: linkHoverEffectProp,\n linkHoverIntensity: linkHoverIntensityProp,\n } = block.props;\n\n const linkColor = linkColorProp || \"\";\n const linkHoverColor = linkHoverColorProp || \"\";\n const linkHoverEffect = linkHoverEffectProp || \"background\";\n const linkHoverIntensity = linkHoverIntensityProp ?? 50;\n\n const widgetId = `widget-recent-${block.id}`;\n const boxShadow = resolveWidgetShadow(shadow);\n\n // Hover CSS for post items\n let hoverCSS = \"\";\n if (linkHoverColor) {\n const styles = generateLinkHoverStyles({\n effect: linkHoverEffect as any,\n intensity: linkHoverIntensity,\n hoverColor: linkHoverColor,\n });\n const baseRule = styles.base\n ? `#${widgetId} .sg-recent-post { ${styles.base}; transition: all 0.3s ease; }`\n : `#${widgetId} .sg-recent-post { transition: all 0.3s ease; }`;\n const hoverRule = `#${widgetId} .sg-recent-post:hover { ${styles.hover}; transition: all 0.3s ease; }\n #${widgetId} .sg-recent-post:hover .sg-recent-title { color: ${linkHoverColor}; }`;\n hoverCSS = baseRule + \"\\n\" + hoverRule;\n } else {\n hoverCSS = `\n #${widgetId} .sg-recent-post { transition: background-color 0.2s; }\n #${widgetId} .sg-recent-post:hover { background-color: rgba(0,0,0,0.04); }\n #${widgetId} .sg-recent-post:hover .sg-recent-title { color: var(--sg-primary); }\n `;\n }\n\n return (\n <React.Fragment key={block.id}>\n <style>{hoverCSS}</style>\n <div\n id={widgetId}\n data-block-group=\"Conteúdo\"\n style={{\n backgroundColor: \"var(--sg-surface, var(--sg-bg))\",\n borderRadius,\n border: \"1px solid var(--sg-border, #e5e7eb)\",\n boxShadow: boxShadow !== \"none\" ? boxShadow : undefined,\n overflow: \"hidden\",\n }}\n >\n {title && (\n <div\n style={{\n padding: \"1rem 1.25rem\",\n borderBottom: \"1px solid var(--sg-border, #e5e7eb)\",\n }}\n >\n <h3\n style={{\n fontSize: \"1rem\",\n fontWeight: 600,\n margin: 0,\n color: \"var(--sg-text)\",\n }}\n >\n {title}\n </h3>\n </div>\n )}\n\n <div style={{ padding: \"0.5rem 0\" }}>\n {posts.length === 0 ? (\n <p\n style={{\n padding: \"1.5rem 1.25rem\",\n color: \"var(--sg-muted-text)\",\n fontSize: \"0.875rem\",\n textAlign: \"center\",\n margin: 0,\n }}\n >\n Nenhum post recente\n </p>\n ) : (\n posts.map((post: RecentPost, index: number) => (\n <a\n key={index}\n href={`/site/p/blog/${post.slug}`}\n className=\"sg-recent-post\"\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"0.75rem\",\n padding: \"0.75rem 1.25rem\",\n textDecoration: \"none\",\n color: \"inherit\",\n transition: \"background-color 0.2s\",\n }}\n >\n {showThumbnail && post.image && (\n <img\n src={post.image}\n alt={post.title}\n style={{\n width: \"64px\",\n height: \"64px\",\n objectFit: \"cover\",\n borderRadius: `calc(${borderRadius} * 0.5)`,\n flexShrink: 0,\n }}\n />\n )}\n <div style={{ flex: 1, minWidth: 0 }}>\n <div\n className=\"sg-recent-title\"\n style={{\n fontSize: \"0.875rem\",\n fontWeight: 500,\n color: linkColor || \"var(--sg-text)\",\n lineHeight: 1.4,\n display: \"-webkit-box\",\n WebkitLineClamp: 2,\n WebkitBoxOrient: \"vertical\",\n overflow: \"hidden\",\n transition: \"color 0.2s\",\n }}\n >\n {post.title}\n </div>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"0.5rem\",\n marginTop: \"0.25rem\",\n }}\n >\n {showDate && post.date && (\n <span\n style={{\n fontSize: \"0.75rem\",\n color: \"var(--sg-muted-text)\",\n }}\n >\n {post.date}\n </span>\n )}\n {showCategory && post.category && (\n <span\n style={{\n fontSize: \"0.6875rem\",\n color: \"var(--sg-primary)\",\n fontWeight: 600,\n textTransform: \"uppercase\",\n letterSpacing: \"0.03em\",\n }}\n >\n {post.category}\n </span>\n )}\n </div>\n </div>\n </a>\n ))\n )}\n </div>\n </div>\n </React.Fragment>\n );\n}\n"],"names":["renderBlogRecentPosts","block","title","posts","showThumbnail","showDate","showCategory","borderRadius","shadow","linkColorProp","linkHoverColorProp","linkHoverEffectProp","linkHoverIntensityProp","linkColor","linkHoverColor","linkHoverEffect","linkHoverIntensity","widgetId","boxShadow","resolveWidgetShadow","hoverCSS","styles","generateLinkHoverStyles","baseRule","hoverRule","jsxs","React","jsx","post","index"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlogSearchBarRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogSearchBarRenderer.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"BlogSearchBarRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogSearchBarRenderer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAyB1B,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CA+G/D"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { jsx as e,
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { jsxs as r, jsx as e, Fragment as S } from "react/jsx-runtime";
|
|
2
|
+
import u from "react";
|
|
3
|
+
import { resolveWidgetShadow as C } from "../../../shared/widgetStyles.js";
|
|
4
|
+
function b() {
|
|
5
|
+
return /* @__PURE__ */ r(
|
|
4
6
|
"svg",
|
|
5
7
|
{
|
|
6
8
|
style: {
|
|
@@ -22,117 +24,72 @@ function s() {
|
|
|
22
24
|
}
|
|
23
25
|
);
|
|
24
26
|
}
|
|
25
|
-
function
|
|
27
|
+
function F(t) {
|
|
26
28
|
const {
|
|
27
|
-
placeholder:
|
|
28
|
-
variant:
|
|
29
|
+
placeholder: n = "Buscar posts...",
|
|
30
|
+
variant: o = "simple",
|
|
29
31
|
showIcon: i = !0,
|
|
30
|
-
searchUrl:
|
|
31
|
-
filterCategories:
|
|
32
|
-
filterTags:
|
|
33
|
-
filterDate:
|
|
34
|
-
|
|
32
|
+
searchUrl: s = "#",
|
|
33
|
+
filterCategories: v = !1,
|
|
34
|
+
filterTags: f = !1,
|
|
35
|
+
filterDate: y = !1,
|
|
36
|
+
borderRadius: l = "0.75rem",
|
|
37
|
+
shadow: x = "none"
|
|
38
|
+
} = t.props, d = `widget-search-${t.id}`, c = C(x), p = {
|
|
39
|
+
backgroundColor: "var(--sg-surface, var(--sg-bg))",
|
|
40
|
+
border: "1px solid var(--sg-border, #e5e7eb)",
|
|
41
|
+
borderRadius: l,
|
|
42
|
+
boxShadow: c !== "none" ? c : void 0,
|
|
43
|
+
overflow: "hidden"
|
|
44
|
+
}, g = `calc(${l} * 0.6)`, m = {
|
|
35
45
|
width: "100%",
|
|
36
46
|
paddingLeft: i ? "2.5rem" : "0.75rem",
|
|
37
47
|
paddingRight: "1rem",
|
|
38
|
-
paddingTop:
|
|
39
|
-
paddingBottom:
|
|
40
|
-
fontSize:
|
|
41
|
-
border:
|
|
42
|
-
borderRadius:
|
|
48
|
+
paddingTop: o === "expanded" ? "0.875rem" : "0.625rem",
|
|
49
|
+
paddingBottom: o === "expanded" ? "0.875rem" : "0.625rem",
|
|
50
|
+
fontSize: o === "expanded" ? "1.0625rem" : "0.875rem",
|
|
51
|
+
border: o === "expanded" ? "2px solid var(--sg-border, #e5e7eb)" : "1px solid var(--sg-border, #e5e7eb)",
|
|
52
|
+
borderRadius: g,
|
|
43
53
|
backgroundColor: "var(--sg-bg)",
|
|
44
54
|
color: "var(--sg-text)",
|
|
45
|
-
outline: "none"
|
|
46
|
-
|
|
55
|
+
outline: "none",
|
|
56
|
+
transition: "border-color 0.2s, box-shadow 0.2s"
|
|
57
|
+
}, a = {
|
|
47
58
|
padding: "0.625rem 0.75rem",
|
|
48
59
|
fontSize: "0.875rem",
|
|
49
60
|
border: "1px solid var(--sg-border, #e5e7eb)",
|
|
50
|
-
borderRadius:
|
|
61
|
+
borderRadius: g,
|
|
51
62
|
backgroundColor: "var(--sg-bg)",
|
|
52
|
-
color: "var(--sg-text)"
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
},
|
|
81
|
-
a.id
|
|
82
|
-
) : r === "with-filters" ? /* @__PURE__ */ e(
|
|
83
|
-
"form",
|
|
84
|
-
{
|
|
85
|
-
"data-block-group": "Conteúdo",
|
|
86
|
-
action: o,
|
|
87
|
-
method: "get",
|
|
88
|
-
style: {
|
|
89
|
-
padding: "1.5rem 0",
|
|
90
|
-
backgroundColor: "var(--sg-bg)"
|
|
91
|
-
},
|
|
92
|
-
children: /* @__PURE__ */ t(
|
|
93
|
-
"div",
|
|
94
|
-
{
|
|
95
|
-
style: {
|
|
96
|
-
maxWidth: "1200px",
|
|
97
|
-
margin: "0 auto",
|
|
98
|
-
padding: "0 1rem",
|
|
99
|
-
display: "flex",
|
|
100
|
-
flexWrap: "wrap",
|
|
101
|
-
gap: "0.75rem",
|
|
102
|
-
alignItems: "center"
|
|
103
|
-
},
|
|
104
|
-
children: [
|
|
105
|
-
/* @__PURE__ */ t("div", { style: { position: "relative", flex: 1, minWidth: "200px" }, children: [
|
|
106
|
-
i && /* @__PURE__ */ e(s, {}),
|
|
107
|
-
/* @__PURE__ */ e("input", { type: "search", name: "busca", placeholder: d, style: n })
|
|
108
|
-
] }),
|
|
109
|
-
c && /* @__PURE__ */ e("select", { name: "categoria", style: l, children: /* @__PURE__ */ e("option", { value: "", children: "Categoria" }) }),
|
|
110
|
-
p && /* @__PURE__ */ e("select", { name: "tag", style: l, children: /* @__PURE__ */ e("option", { value: "", children: "Tag" }) }),
|
|
111
|
-
g && /* @__PURE__ */ e("select", { name: "periodo", style: l, children: /* @__PURE__ */ e("option", { value: "", children: "Período" }) })
|
|
112
|
-
]
|
|
113
|
-
}
|
|
114
|
-
)
|
|
115
|
-
},
|
|
116
|
-
a.id
|
|
117
|
-
) : /* @__PURE__ */ e(
|
|
118
|
-
"form",
|
|
119
|
-
{
|
|
120
|
-
"data-block-group": "Conteúdo",
|
|
121
|
-
action: o,
|
|
122
|
-
method: "get",
|
|
123
|
-
style: {
|
|
124
|
-
padding: "1.5rem 0",
|
|
125
|
-
backgroundColor: "var(--sg-bg)"
|
|
126
|
-
},
|
|
127
|
-
children: /* @__PURE__ */ e("div", { style: { maxWidth: "1200px", margin: "0 auto", padding: "0 1rem" }, children: /* @__PURE__ */ t("div", { style: { position: "relative", width: "100%", maxWidth: "400px" }, children: [
|
|
128
|
-
i && /* @__PURE__ */ e(s, {}),
|
|
129
|
-
/* @__PURE__ */ e("input", { type: "search", name: "busca", placeholder: d, style: n })
|
|
130
|
-
] }) })
|
|
131
|
-
},
|
|
132
|
-
a.id
|
|
133
|
-
);
|
|
63
|
+
color: "var(--sg-text)",
|
|
64
|
+
transition: "border-color 0.2s"
|
|
65
|
+
}, h = `
|
|
66
|
+
#${d} input:focus, #${d} select:focus {
|
|
67
|
+
border-color: var(--sg-primary);
|
|
68
|
+
box-shadow: 0 0 0 3px rgba(var(--sg-primary-rgb, 59, 130, 246), 0.15);
|
|
69
|
+
}
|
|
70
|
+
`, w = () => /* @__PURE__ */ r(S, { children: [
|
|
71
|
+
v && /* @__PURE__ */ e("select", { name: "categoria", style: a, children: /* @__PURE__ */ e("option", { value: "", children: "Categoria" }) }),
|
|
72
|
+
f && /* @__PURE__ */ e("select", { name: "tag", style: a, children: /* @__PURE__ */ e("option", { value: "", children: "Tag" }) }),
|
|
73
|
+
y && /* @__PURE__ */ e("select", { name: "periodo", style: a, children: /* @__PURE__ */ e("option", { value: "", children: "Período" }) })
|
|
74
|
+
] });
|
|
75
|
+
return o === "with-filters" ? /* @__PURE__ */ r(u.Fragment, { children: [
|
|
76
|
+
/* @__PURE__ */ e("style", { children: h }),
|
|
77
|
+
/* @__PURE__ */ e("div", { id: d, "data-block-group": "Conteúdo", style: p, children: /* @__PURE__ */ r("form", { action: s, method: "get", style: { padding: "1.25rem" }, children: [
|
|
78
|
+
/* @__PURE__ */ r("div", { style: { position: "relative", marginBottom: "0.75rem" }, children: [
|
|
79
|
+
i && /* @__PURE__ */ e(b, {}),
|
|
80
|
+
/* @__PURE__ */ e("input", { type: "search", name: "busca", placeholder: n, style: m })
|
|
81
|
+
] }),
|
|
82
|
+
/* @__PURE__ */ e("div", { style: { display: "flex", flexWrap: "wrap", gap: "0.5rem" }, children: w() })
|
|
83
|
+
] }) })
|
|
84
|
+
] }, t.id) : /* @__PURE__ */ r(u.Fragment, { children: [
|
|
85
|
+
/* @__PURE__ */ e("style", { children: h }),
|
|
86
|
+
/* @__PURE__ */ e("div", { id: d, "data-block-group": "Conteúdo", style: p, children: /* @__PURE__ */ e("form", { action: s, method: "get", style: { padding: "1.25rem" }, children: /* @__PURE__ */ r("div", { style: { position: "relative" }, children: [
|
|
87
|
+
i && /* @__PURE__ */ e(b, {}),
|
|
88
|
+
/* @__PURE__ */ e("input", { type: "search", name: "busca", placeholder: n, style: m })
|
|
89
|
+
] }) }) })
|
|
90
|
+
] }, t.id);
|
|
134
91
|
}
|
|
135
92
|
export {
|
|
136
|
-
|
|
93
|
+
F as renderBlogSearchBar
|
|
137
94
|
};
|
|
138
95
|
//# sourceMappingURL=BlogSearchBarRenderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlogSearchBarRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/BlogSearchBarRenderer.tsx"],"sourcesContent":["/**\n * BlogSearchBar Renderer\n *
|
|
1
|
+
{"version":3,"file":"BlogSearchBarRenderer.js","sources":["../../../../../src/engine/render/renderers/sections/BlogSearchBarRenderer.tsx"],"sourcesContent":["/**\n * BlogSearchBar Renderer\n * Card widget com barra de busca — 3 variantes: simple, expanded, with-filters\n * Background: var(--sg-surface) para contraste com layout\n * Hover: focus ring no input\n */\n\nimport React from \"react\";\nimport { resolveWidgetShadow } from \"../../../shared/widgetStyles\";\n\nfunction SearchIcon() {\n return (\n <svg\n style={{\n position: \"absolute\",\n left: \"0.75rem\",\n top: \"50%\",\n transform: \"translateY(-50%)\",\n width: \"1.25rem\",\n height: \"1.25rem\",\n color: \"var(--sg-muted-text)\",\n }}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"m21 21-4.35-4.35\" strokeLinecap=\"round\" />\n </svg>\n );\n}\n\nexport function renderBlogSearchBar(block: any): React.ReactNode {\n const {\n placeholder = \"Buscar posts...\",\n variant = \"simple\",\n showIcon = true,\n searchUrl = \"#\",\n filterCategories = false,\n filterTags = false,\n filterDate = false,\n borderRadius = \"0.75rem\",\n shadow = \"none\",\n } = block.props;\n\n const widgetId = `widget-search-${block.id}`;\n const boxShadow = resolveWidgetShadow(shadow);\n\n const cardStyle: React.CSSProperties = {\n backgroundColor: \"var(--sg-surface, var(--sg-bg))\",\n border: \"1px solid var(--sg-border, #e5e7eb)\",\n borderRadius,\n boxShadow: boxShadow !== \"none\" ? boxShadow : undefined,\n overflow: \"hidden\",\n };\n\n const inputRadius = `calc(${borderRadius} * 0.6)`;\n\n const inputStyle: React.CSSProperties = {\n width: \"100%\",\n paddingLeft: showIcon ? \"2.5rem\" : \"0.75rem\",\n paddingRight: \"1rem\",\n paddingTop: variant === \"expanded\" ? \"0.875rem\" : \"0.625rem\",\n paddingBottom: variant === \"expanded\" ? \"0.875rem\" : \"0.625rem\",\n fontSize: variant === \"expanded\" ? \"1.0625rem\" : \"0.875rem\",\n border: variant === \"expanded\" ? \"2px solid var(--sg-border, #e5e7eb)\" : \"1px solid var(--sg-border, #e5e7eb)\",\n borderRadius: inputRadius,\n backgroundColor: \"var(--sg-bg)\",\n color: \"var(--sg-text)\",\n outline: \"none\",\n transition: \"border-color 0.2s, box-shadow 0.2s\",\n };\n\n const selectStyle: React.CSSProperties = {\n padding: \"0.625rem 0.75rem\",\n fontSize: \"0.875rem\",\n border: \"1px solid var(--sg-border, #e5e7eb)\",\n borderRadius: inputRadius,\n backgroundColor: \"var(--sg-bg)\",\n color: \"var(--sg-text)\",\n transition: \"border-color 0.2s\",\n };\n\n // Focus ring CSS\n const focusCSS = `\n #${widgetId} input:focus, #${widgetId} select:focus {\n border-color: var(--sg-primary);\n box-shadow: 0 0 0 3px rgba(var(--sg-primary-rgb, 59, 130, 246), 0.15);\n }\n `;\n\n const renderFilters = () => (\n <>\n {filterCategories && (\n <select name=\"categoria\" style={selectStyle}>\n <option value=\"\">Categoria</option>\n </select>\n )}\n {filterTags && (\n <select name=\"tag\" style={selectStyle}>\n <option value=\"\">Tag</option>\n </select>\n )}\n {filterDate && (\n <select name=\"periodo\" style={selectStyle}>\n <option value=\"\">Período</option>\n </select>\n )}\n </>\n );\n\n if (variant === \"with-filters\") {\n return (\n <React.Fragment key={block.id}>\n <style>{focusCSS}</style>\n <div id={widgetId} data-block-group=\"Conteúdo\" style={cardStyle}>\n <form action={searchUrl} method=\"get\" style={{ padding: \"1.25rem\" }}>\n <div style={{ position: \"relative\", marginBottom: \"0.75rem\" }}>\n {showIcon && <SearchIcon />}\n <input type=\"search\" name=\"busca\" placeholder={placeholder} style={inputStyle} />\n </div>\n <div style={{ display: \"flex\", flexWrap: \"wrap\", gap: \"0.5rem\" }}>\n {renderFilters()}\n </div>\n </form>\n </div>\n </React.Fragment>\n );\n }\n\n return (\n <React.Fragment key={block.id}>\n <style>{focusCSS}</style>\n <div id={widgetId} data-block-group=\"Conteúdo\" style={cardStyle}>\n <form action={searchUrl} method=\"get\" style={{ padding: \"1.25rem\" }}>\n <div style={{ position: \"relative\" }}>\n {showIcon && <SearchIcon />}\n <input type=\"search\" name=\"busca\" placeholder={placeholder} style={inputStyle} />\n </div>\n </form>\n </div>\n </React.Fragment>\n );\n}\n"],"names":["SearchIcon","jsxs","jsx","renderBlogSearchBar","block","placeholder","variant","showIcon","searchUrl","filterCategories","filterTags","filterDate","borderRadius","shadow","widgetId","boxShadow","resolveWidgetShadow","cardStyle","inputRadius","inputStyle","selectStyle","focusCSS","renderFilters","Fragment","React"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlogTagCloudRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogTagCloudRenderer.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"BlogTagCloudRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/engine/render/renderers/sections/BlogTagCloudRenderer.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,SAAS,CAuK9D"}
|