@chaibuilder/sdk 1.2.69 → 1.2.70

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.
@@ -1,151 +1,151 @@
1
- import { registerChaiBlock as p } from "@chaibuilder/runtime";
2
- import { j as n } from "./jsx-runtime-Sp0orL4X.js";
3
- import * as f from "react";
4
- import { c as C, o as m, f as I, v as E, b, T as N, y as L, u as R, r as j, d as S, q as D, e as g, h as V, G as U, g as B, S as O } from "./iconBase-zweRWSz0.js";
5
- import G from "i18next";
6
- import { ButtonIcon as H, CodeIcon as W, HeadingIcon as X, TextIcon as Y, CursorTextIcon as Z, Link1Icon as J, ImageIcon as A, RowsIcon as K, ColumnsIcon as Q, SketchLogoIcon as ee, VideoIcon as te, DividerHorizontalIcon as le, MoonIcon as oe, SpaceBetweenVerticallyIcon as z, GroupIcon as se, InputIcon as q, RadiobuttonIcon as ae, DropdownMenuIcon as ne, CheckboxIcon as re } from "@radix-ui/react-icons";
7
- import { isNull as ie, isEmpty as w, get as v, pick as ce, omit as de, map as M } from "lodash-es";
1
+ import { registerChaiBlock as u } from "@chaibuilder/runtime";
2
+ import { j as a } from "./jsx-runtime-Sp0orL4X.js";
3
+ import * as m from "react";
4
+ import { c as L, o as p, f as v, v as M, b, T as $, y as B, u as T, r as j, d as C, q as D, e as k, h as F, G as O, g as I, S as U } from "./iconBase-zweRWSz0.js";
5
+ import "i18next";
6
+ import { ButtonIcon as H, CodeIcon as V, HeadingIcon as G, TextIcon as W, CursorTextIcon as X, Link1Icon as Y, ImageIcon as A, RowsIcon as Z, ColumnsIcon as J, SketchLogoIcon as K, VideoIcon as Q, DividerHorizontalIcon as ee, MoonIcon as te, SpaceBetweenVerticallyIcon as z, GroupIcon as le, InputIcon as q, RadiobuttonIcon as oe, DropdownMenuIcon as se, CheckboxIcon as ae } from "@radix-ui/react-icons";
7
+ import { isNull as ne, isEmpty as g, get as x, pick as ce, omit as re, map as S } from "lodash-es";
8
8
  import "clsx";
9
9
  import "tailwind-merge";
10
- const ue = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("div", { className: C("pointer-events-none flex h-20 flex-col items-center justify-center p-2", e), children: /* @__PURE__ */ n.jsx("div", { className: "h-full w-full rounded bg-gray-200 p-2 dark:bg-gray-800", children: /* @__PURE__ */ n.jsx("div", { className: "flex h-full w-full items-center justify-center outline-dashed outline-1 -outline-offset-1 outline-gray-400 duration-300 dark:outline-gray-700" }) }) }) : null, _ = ue, o = (e) => G.t(e), pe = (e) => {
11
- const { blockProps: l, inBuilder: t, backgroundImage: a, children: s, tag: r = "div", styles: i } = e;
12
- let d = s;
13
- s || (d = /* @__PURE__ */ n.jsx(_, { inBuilder: t }));
14
- let c = {};
15
- return a && (c = { backgroundImage: `url(${a})` }), f.createElement(r, { ...l, ...i, style: c }, d);
16
- }, be = {
10
+ const ie = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ a.jsx("div", { className: L("pointer-events-none flex h-20 flex-col items-center justify-center p-2", e), children: /* @__PURE__ */ a.jsx("div", { className: "h-full w-full rounded bg-gray-200 p-2 dark:bg-gray-800", children: /* @__PURE__ */ a.jsx("div", { className: "flex h-full w-full items-center justify-center outline-dashed outline-1 -outline-offset-1 outline-gray-400 duration-300 dark:outline-gray-700" }) }) }) : null, _ = ie, de = (e) => {
11
+ const { blockProps: l, inBuilder: t, backgroundImage: s, children: o, tag: n = "div", styles: c } = e;
12
+ let i = o;
13
+ o || (i = /* @__PURE__ */ a.jsx(_, { inBuilder: t }));
14
+ let r = {};
15
+ return s && (r = { backgroundImage: `url(${s})` }), m.createElement(n, { ...l, ...c, style: r }, i);
16
+ }, ue = {
17
17
  type: "Box",
18
- label: o("web_blocks.box"),
18
+ label: "web_blocks.box",
19
19
  category: "core",
20
20
  group: "basic",
21
21
  props: {
22
- styles: m({ default: "" }),
23
- tag: I({
24
- title: o("web_blocks.tag"),
22
+ styles: p({ default: "" }),
23
+ tag: v({
24
+ title: "web_blocks.tag",
25
25
  default: "div",
26
26
  options: [
27
- { value: "div", title: o("web_blocks.div") },
28
- { value: "header", title: o("web_blocks.header") },
29
- { value: "footer", title: o("web_blocks.footer") },
30
- { value: "section", title: o("web_blocks.section") },
31
- { value: "article", title: o("web_blocks.article") },
32
- { value: "aside", title: o("web_blocks.aside") },
33
- { value: "main", title: o("web_blocks.main") },
34
- { value: "nav", title: o("web_blocks.nav") },
35
- { value: "figure", title: o("web_blocks.figure") },
36
- { value: "details", title: o("web_blocks.details") },
37
- { value: "summary", title: o("web_blocks.summary") },
38
- { value: "dialog", title: o("web_blocks.dialog") },
39
- { value: "strike", title: o("web_blocks.strike") },
40
- { value: "caption", title: o("web_blocks.caption") },
41
- { value: "legend", title: o("web_blocks.legend") },
42
- { value: "figcaption", title: o("web_blocks.figcaption") },
43
- { value: "mark", title: o("web_blocks.mark") }
27
+ { value: "div", title: "web_blocks.div" },
28
+ { value: "header", title: "web_blocks.header" },
29
+ { value: "footer", title: "web_blocks.footer" },
30
+ { value: "section", title: "web_blocks.section" },
31
+ { value: "article", title: "web_blocks.article" },
32
+ { value: "aside", title: "web_blocks.aside" },
33
+ { value: "main", title: "web_blocks.main" },
34
+ { value: "nav", title: "web_blocks.nav" },
35
+ { value: "figure", title: "web_blocks.figure" },
36
+ { value: "details", title: "web_blocks.details" },
37
+ { value: "summary", title: "web_blocks.summary" },
38
+ { value: "dialog", title: "web_blocks.dialog" },
39
+ { value: "strike", title: "web_blocks.strike" },
40
+ { value: "caption", title: "web_blocks.caption" },
41
+ { value: "legend", title: "web_blocks.legend" },
42
+ { value: "figcaption", title: "web_blocks.figcaption" },
43
+ { value: "mark", title: "web_blocks.mark" }
44
44
  ]
45
45
  }),
46
- backgroundImage: E({ title: o("web_blocks.background_image") })
46
+ backgroundImage: M({ title: "web_blocks.background_image" })
47
47
  },
48
48
  canAcceptBlock: () => !0
49
- }, me = (e) => {
50
- const { blockProps: l, iconSize: t, icon: a, content: s, iconPos: r, styles: i, children: d } = e, c = a, u = d || /* @__PURE__ */ n.jsxs(n.Fragment, { children: [
51
- /* @__PURE__ */ n.jsx("span", { "data-ai-key": "content", children: s }),
52
- c && /* @__PURE__ */ n.jsx(
49
+ }, be = (e) => {
50
+ const { blockProps: l, iconSize: t, icon: s, content: o, iconPos: n, styles: c, children: i } = e, r = s, d = i || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
51
+ /* @__PURE__ */ a.jsx("span", { "data-ai-key": "content", children: o }),
52
+ r && /* @__PURE__ */ a.jsx(
53
53
  "div",
54
54
  {
55
55
  style: { width: t + "px" },
56
- className: r + " " + (r === "order-first" ? "mr-2" : "ml-2") || "",
57
- dangerouslySetInnerHTML: { __html: c }
56
+ className: n + " " + (n === "order-first" ? "mr-2" : "ml-2") || "",
57
+ dangerouslySetInnerHTML: { __html: r }
58
58
  }
59
59
  )
60
60
  ] });
61
- return f.createElement(
61
+ return m.createElement(
62
62
  "button",
63
63
  {
64
64
  ...l,
65
- ...i,
65
+ ...c,
66
66
  type: "button"
67
67
  },
68
- u
68
+ d
69
69
  );
70
- }, fe = {
70
+ }, pe = {
71
71
  type: "Button",
72
- label: o("web_blocks.button"),
72
+ label: "web_blocks.button",
73
73
  category: "core",
74
74
  icon: H,
75
75
  group: "basic",
76
76
  props: {
77
- content: b({ title: o("web_blocks.label"), default: o("web_blocks.default") }),
78
- styles: m({ default: "text-white bg-primary px-4 py-2 rounded flex items-center" }),
79
- icon: N({ title: o("web_blocks.icon"), default: "" }),
80
- iconSize: L({ title: o("web_blocks.icon_size"), default: 24 }),
81
- iconPos: I({
82
- title: o("web_blocks.icon_position"),
77
+ content: b({ title: "web_blocks.label", default: "Button" }),
78
+ styles: p({ default: "text-white bg-primary px-4 py-2 rounded-global flex items-center" }),
79
+ icon: $({ title: "web_blocks.icon", default: "" }),
80
+ iconSize: B({ title: "web_blocks.icon_size", default: 24 }),
81
+ iconPos: v({
82
+ title: "web_blocks.icon_position",
83
83
  default: "order-last",
84
84
  options: [
85
- { title: o("web_blocks.start"), value: "order-first" },
86
- { title: o("web_blocks.end"), value: "order-last" }
85
+ { title: "web_blocks.start", value: "order-first" },
86
+ { title: "web_blocks.end", value: "order-last" }
87
87
  ]
88
88
  })
89
89
  }
90
- }, he = (e) => {
91
- const { blockProps: l, styles: t, htmlCode: a, inBuilder: s } = e;
92
- return s ? /* @__PURE__ */ n.jsxs("div", { className: "relative", children: [
93
- s ? /* @__PURE__ */ n.jsx("div", { ...l, ...t, className: "absolute z-20 h-full w-full" }) : null,
94
- f.createElement("div", {
90
+ }, me = (e) => {
91
+ const { blockProps: l, styles: t, htmlCode: s, inBuilder: o } = e;
92
+ return o ? /* @__PURE__ */ a.jsxs("div", { className: "relative", children: [
93
+ o ? /* @__PURE__ */ a.jsx("div", { ...l, ...t, className: "absolute z-20 h-full w-full" }) : null,
94
+ m.createElement("div", {
95
95
  ...t,
96
- dangerouslySetInnerHTML: { __html: a.replace(/<script.*?>.*?<\/script>/g, "") }
96
+ dangerouslySetInnerHTML: { __html: s.replace(/<script.*?>.*?<\/script>/g, "") }
97
97
  })
98
- ] }) : f.createElement("div", {
98
+ ] }) : m.createElement("div", {
99
99
  ...l,
100
100
  ...t,
101
- dangerouslySetInnerHTML: { __html: a }
101
+ dangerouslySetInnerHTML: { __html: s }
102
102
  });
103
- }, ye = {
103
+ }, fe = {
104
104
  type: "CustomHTML",
105
- label: o("web_blocks.custom_html"),
105
+ label: "web_blocks.custom_html",
106
106
  category: "core",
107
- icon: W,
107
+ icon: V,
108
108
  group: "advanced",
109
109
  props: {
110
- styles: m({ default: "" }),
111
- htmlCode: R({
112
- title: o("web_blocks.html_code"),
113
- default: "<div><p>" + o("web_blocks.default_snippet") + "</p></div>",
114
- placeholder: o("web_blocks.placeholder")
110
+ styles: p({ default: "" }),
111
+ htmlCode: T({
112
+ title: "web_blocks.html_code",
113
+ default: "<div><p>web_blocks.default_snippet</p></div>",
114
+ placeholder: "web_blocks.placeholder"
115
115
  })
116
116
  },
117
117
  canAcceptBlock: () => !1
118
- }, ge = f.memo(
118
+ }, he = m.memo(
119
119
  (e) => {
120
120
  const { blockProps: l, styles: t } = e;
121
- return f.createElement("div", { ...l, ...t });
121
+ return m.createElement("div", { ...l, ...t });
122
122
  }
123
123
  ), ke = {
124
124
  type: "EmptyBox",
125
- label: o("web_blocks.empty_box"),
125
+ label: "web_blocks.empty_box",
126
126
  category: "core",
127
127
  group: "basic",
128
128
  props: {
129
- styles: m({ default: "" })
129
+ styles: p({ default: "" })
130
130
  }
131
- }, we = (e) => {
132
- const { blockProps: l, styles: t, content: a, level: s = "h1", children: r = null } = e;
133
- return r ? f.createElement(s, { ...t, ...l }, r) : f.createElement(s, {
131
+ }, ye = (e) => {
132
+ const { blockProps: l, styles: t, content: s, level: o = "h1", children: n = null } = e;
133
+ return n ? m.createElement(o, { ...t, ...l }, n) : m.createElement(o, {
134
134
  ...t,
135
135
  ...l,
136
136
  "data-ai-key": "content",
137
137
  "data-ai-type": "html",
138
- dangerouslySetInnerHTML: { __html: a }
138
+ dangerouslySetInnerHTML: { __html: s }
139
139
  });
140
- }, _e = {
140
+ }, ge = {
141
141
  type: "Heading",
142
- label: o("web_blocks.heading"),
142
+ label: "web_blocks.heading",
143
143
  category: "core",
144
- icon: X,
144
+ icon: G,
145
145
  group: "typography",
146
146
  props: {
147
- level: I({
148
- title: "Level",
147
+ level: v({
148
+ title: "web_blocks.level",
149
149
  default: "h1",
150
150
  binding: !1,
151
151
  options: [
@@ -157,174 +157,174 @@ const ue = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
157
157
  { value: "h6", title: "h6" }
158
158
  ]
159
159
  }),
160
- styles: m({ default: "text-3xl" }),
161
- content: j({ title: "Content", default: "Heading goes here" })
160
+ styles: p({ default: "text-3xl" }),
161
+ content: j({ title: "web_blocks.content", default: "Heading goes here" })
162
162
  },
163
163
  canAcceptBlock: (e) => e === "Span" || e === "Text"
164
- }, xe = (e) => {
165
- const { blockProps: l, styles: t, content: a } = e;
166
- return ie(e.children) ? f.createElement("p", {
164
+ }, _e = (e) => {
165
+ const { blockProps: l, styles: t, content: s } = e;
166
+ return ne(e.children) ? m.createElement("p", {
167
167
  ...t,
168
168
  ...l,
169
169
  "data-ai-key": "content",
170
170
  "data-ai-type": "html",
171
- dangerouslySetInnerHTML: { __html: a }
172
- }) : f.createElement("p", { ...t, ...l }, e.children);
173
- }, ve = {
171
+ dangerouslySetInnerHTML: { __html: s }
172
+ }) : m.createElement("p", { ...t, ...l }, e.children);
173
+ }, we = {
174
174
  type: "Paragraph",
175
- label: o("web_blocks.paragraph"),
175
+ label: "web_blocks.paragraph",
176
176
  category: "core",
177
- icon: Y,
177
+ icon: W,
178
178
  group: "typography",
179
179
  props: {
180
- styles: m({ default: "" }),
180
+ styles: p({ default: "" }),
181
181
  content: j({
182
- title: o("web_blocks.content"),
182
+ title: "web_blocks.content",
183
183
  default: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere."
184
184
  })
185
185
  },
186
186
  canAcceptBlock: (e) => e === "Span" || e === "Link" || e === "Text"
187
- }, Ie = (e) => {
188
- const { blockProps: l, styles: t, content: a, children: s = null, tag: r } = e;
189
- return s ? f.createElement("span", { ...t, ...l }, s) : f.createElement(r || "span", {
187
+ }, xe = (e) => {
188
+ const { blockProps: l, styles: t, content: s, children: o = null, tag: n } = e;
189
+ return o ? m.createElement("span", { ...t, ...l }, o) : m.createElement(n || "span", {
190
190
  ...t,
191
191
  ...l,
192
192
  "data-ai-key": "content",
193
- dangerouslySetInnerHTML: { __html: a }
193
+ dangerouslySetInnerHTML: { __html: s }
194
194
  });
195
- }, Be = {
195
+ }, ve = {
196
196
  type: "Span",
197
- label: o("web_blocks.span"),
197
+ label: "web_blocks.span",
198
198
  category: "core",
199
199
  group: "typography",
200
200
  props: {
201
- styles: m({ default: "" }),
202
- content: j({ title: o("web_blocks.content"), default: "" })
201
+ styles: p({ default: "" }),
202
+ content: j({ title: "web_blocks.content", default: "" })
203
203
  },
204
204
  canAcceptBlock: () => !0
205
- }, Le = (e) => {
206
- const { blockProps: l, content: t, styles: a } = e;
207
- return /* @__PURE__ */ n.jsx("div", { className: "max-w-full", children: /* @__PURE__ */ n.jsx(
205
+ }, Ie = (e) => {
206
+ const { blockProps: l, content: t, styles: s } = e;
207
+ return /* @__PURE__ */ a.jsx("div", { className: "max-w-full", children: /* @__PURE__ */ a.jsx(
208
208
  "div",
209
209
  {
210
210
  "data-ai-key": "content",
211
211
  "data-ai-type": "richtext",
212
212
  ...l,
213
- ...a,
213
+ ...s,
214
214
  dangerouslySetInnerHTML: { __html: t }
215
215
  }
216
216
  ) });
217
- }, je = {
217
+ }, Be = {
218
218
  type: "RichText",
219
- label: o("web_blocks.richtext"),
219
+ label: "web_blocks.richtext",
220
220
  category: "core",
221
- icon: Z,
221
+ icon: X,
222
222
  group: "typography",
223
223
  props: {
224
- styles: m({ default: "" }),
225
- content: S({
226
- title: o("web_blocks.content"),
224
+ styles: p({ default: "" }),
225
+ content: C({
226
+ title: "web_blocks.content",
227
227
  default: "<p>This is a rich text block. You can add text, and other content here.</p>"
228
228
  })
229
229
  }
230
- }, Ce = (e) => {
231
- const { blockProps: l, link: t, children: a, styles: s, inBuilder: r, content: i } = e;
232
- return !a && w(s == null ? void 0 : s.className) && w(i) ? /* @__PURE__ */ n.jsx(_, { inBuilder: r }) : r ? a ? /* @__PURE__ */ n.jsx("span", { ...l, ...s, children: a }) : f.createElement("span", {
230
+ }, je = (e) => {
231
+ const { blockProps: l, link: t, children: s, styles: o, inBuilder: n, content: c } = e;
232
+ return !s && g(o == null ? void 0 : o.className) && g(c) ? /* @__PURE__ */ a.jsx(_, { inBuilder: n }) : n ? s ? /* @__PURE__ */ a.jsx("span", { ...l, ...o, children: s }) : m.createElement("span", {
233
233
  ...l,
234
- ...s,
235
- dangerouslySetInnerHTML: { __html: i }
236
- }) : a ? /* @__PURE__ */ n.jsx("a", { href: (t == null ? void 0 : t.href) || "#/", target: t == null ? void 0 : t.target, ...l, ...s, children: a }) : f.createElement("a", {
234
+ ...o,
235
+ dangerouslySetInnerHTML: { __html: c }
236
+ }) : s ? /* @__PURE__ */ a.jsx("a", { href: (t == null ? void 0 : t.href) || "#/", target: t == null ? void 0 : t.target, ...l, ...o, children: s }) : m.createElement("a", {
237
237
  ...l,
238
- ...s,
238
+ ...o,
239
239
  "data-ai-key": "content",
240
240
  href: (t == null ? void 0 : t.href) || "#",
241
241
  target: (t == null ? void 0 : t.target) || "_self",
242
- dangerouslySetInnerHTML: { __html: i }
242
+ dangerouslySetInnerHTML: { __html: c }
243
243
  });
244
- }, Se = {
244
+ }, Le = {
245
245
  type: "Link",
246
- label: o("web_blocks.link"),
246
+ label: "web_blocks.link",
247
247
  category: "core",
248
- icon: J,
248
+ icon: Y,
249
249
  group: "basic",
250
250
  props: {
251
- styles: m({ default: "" }),
252
- content: b({ title: o("web_blocks.content"), default: "" }),
251
+ styles: p({ default: "" }),
252
+ content: b({ title: "web_blocks.content", default: "" }),
253
253
  link: D({
254
- title: o("web_blocks.link"),
254
+ title: "web_blocks.link",
255
255
  default: { type: "page", target: "_self", href: "#" }
256
256
  })
257
257
  },
258
258
  canAcceptBlock: (e) => e !== "Link"
259
- }, F = (e, ...l) => ({
259
+ }, R = (e, ...l) => ({
260
260
  ...e,
261
- className: C(e.className, ...l)
262
- }), Me = (e) => {
263
- const { blockProps: l, children: t, styles: a, inBuilder: s, content: r, href: i } = e, { hrefType: d, autoplay: c, maxWidth: u, backdropColor: y, galleryName: h } = e, k = F(a, "cb-lightbox");
264
- if (!t && w(a == null ? void 0 : a.className) && w(r))
265
- return /* @__PURE__ */ n.jsx(_, { inBuilder: s });
266
- if (s)
267
- return t ? /* @__PURE__ */ n.jsx("span", { ...l, ...k, children: t }) : f.createElement("span", {
261
+ className: L(e.className, ...l)
262
+ }), Ce = (e) => {
263
+ const { blockProps: l, children: t, styles: s, inBuilder: o, content: n, href: c } = e, { hrefType: i, autoplay: r, maxWidth: d, backdropColor: h, galleryName: f } = e, y = R(s, "cb-lightbox");
264
+ if (!t && g(s == null ? void 0 : s.className) && g(n))
265
+ return /* @__PURE__ */ a.jsx(_, { inBuilder: o });
266
+ if (o)
267
+ return t ? /* @__PURE__ */ a.jsx("span", { ...l, ...y, children: t }) : m.createElement("span", {
268
268
  ...l,
269
- ...k,
270
- dangerouslySetInnerHTML: { __html: r }
269
+ ...y,
270
+ dangerouslySetInnerHTML: { __html: n }
271
271
  });
272
- const x = {};
273
- return x["data-vbtype"] = d, c && (x["data-autoplay"] = "true"), u && (x["data-maxwidth"] = u + "px"), y && (x["data-overlay"] = y), h && (x["data-gall"] = h), t ? /* @__PURE__ */ n.jsx("a", { ...x, href: i || "#/", ...l, ...k, children: t }) : f.createElement("a", {
272
+ const w = {};
273
+ return w["data-vbtype"] = i, r && (w["data-autoplay"] = "true"), d && (w["data-maxwidth"] = d + "px"), h && (w["data-overlay"] = h), f && (w["data-gall"] = f), t ? /* @__PURE__ */ a.jsx("a", { ...w, href: c || "#/", ...l, ...y, children: t }) : m.createElement("a", {
274
274
  ...l,
275
- ...k,
276
- ...x,
277
- href: i || "#",
278
- dangerouslySetInnerHTML: { __html: r }
275
+ ...y,
276
+ ...w,
277
+ href: c || "#",
278
+ dangerouslySetInnerHTML: { __html: n }
279
279
  });
280
- }, Ee = {
280
+ }, Se = {
281
281
  type: "LightBoxLink",
282
- label: o("web_blocks.lightbox_link"),
282
+ label: "web_blocks.lightbox_link",
283
283
  category: "core",
284
284
  icon: A,
285
285
  group: "basic",
286
286
  props: {
287
- styles: m({ default: "" }),
288
- content: b({ title: o("web_blocks.content"), default: "Link text or drop blocks inside" }),
289
- href: b({ title: o("web_blocks.href"), default: "" }),
290
- hrefType: I({
291
- title: o("web_blocks.type"),
287
+ styles: p({ default: "" }),
288
+ content: b({ title: "web_blocks.content", default: "Link text or drop blocks inside" }),
289
+ href: b({ title: "web_blocks.href", default: "" }),
290
+ hrefType: v({
291
+ title: "web_blocks.type",
292
292
  default: "video",
293
293
  options: [
294
- { value: "video", title: o("web_blocks.video") },
295
- { value: "iframe", title: o("web_blocks.iframe") },
296
- { value: "inline", title: o("web_blocks.inline") },
297
- { value: "ajax", title: o("web_blocks.ajax") }
294
+ { value: "video", title: "web_blocks.video" },
295
+ { value: "iframe", title: "web_blocks.iframe" },
296
+ { value: "inline", title: "web_blocks.inline" },
297
+ { value: "ajax", title: "web_blocks.ajax" }
298
298
  ]
299
299
  }),
300
- autoplay: g({ title: o("web_blocks.autoplay"), default: !1 }),
301
- maxWidth: L({ title: o("web_blocks.max_width"), default: "" }),
302
- backdropColor: b({ title: o("web_blocks.backdrop_color"), default: "" }),
303
- galleryName: b({ title: o("web_blocks.gallery_name"), default: "" })
300
+ autoplay: k({ title: "web_blocks.autoplay", default: !1 }),
301
+ maxWidth: B({ title: "web_blocks.max_width", default: "" }),
302
+ backdropColor: b({ title: "backdrop_color", default: "" }),
303
+ galleryName: b({ title: "web_blocks.gallery_name", default: "" })
304
304
  },
305
305
  canAcceptBlock: (e) => e !== "Link" && e !== "LightBoxLink"
306
- }, Ne = (e) => {
307
- const { blockProps: l, children: t, listType: a, styles: s, tag: r, inBuilder: i } = e, d = C(v(s, "className", ""), a);
308
- return !t && w(s == null ? void 0 : s.className) ? /* @__PURE__ */ n.jsx(_, { inBuilder: i }) : f.createElement(
309
- r || (a === "list-decimal" ? "ol" : "ul"),
310
- { ...l, ...s, className: d },
306
+ }, Me = (e) => {
307
+ const { blockProps: l, children: t, listType: s, styles: o, tag: n, inBuilder: c } = e, i = L(x(o, "className", ""), s);
308
+ return !t && g(o == null ? void 0 : o.className) ? /* @__PURE__ */ a.jsx(_, { inBuilder: c }) : m.createElement(
309
+ n || (s === "list-decimal" ? "ol" : "ul"),
310
+ { ...l, ...o, className: i },
311
311
  t
312
312
  );
313
- }, Pe = {
313
+ }, $e = {
314
314
  type: "List",
315
- label: o("web_blocks.list"),
316
- icon: K,
315
+ label: "web_blocks.list",
316
+ icon: Z,
317
317
  category: "core",
318
318
  group: "basic",
319
319
  props: {
320
- styles: m({ default: "" }),
321
- listType: I({
322
- title: o("web_blocks.list_type"),
320
+ styles: p({ default: "" }),
321
+ listType: v({
322
+ title: "web_blocks.list_type",
323
323
  default: "list-none",
324
324
  options: [
325
- { value: "list-none", title: o("web_blocks.none") },
326
- { value: "list-disc", title: o("web_blocks.disc") },
327
- { value: "list-decimal", title: o("web_blocks.number") }
325
+ { value: "list-none", title: "web_blocks.none" },
326
+ { value: "list-disc", title: "web_blocks.disc" },
327
+ { value: "list-decimal", title: "web_blocks.number" }
328
328
  ]
329
329
  })
330
330
  },
@@ -353,186 +353,186 @@ const ue = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
353
353
  content: "Item 3"
354
354
  }
355
355
  ]
356
- }, $e = (e) => {
357
- const { blockProps: l, content: t, styles: a, children: s, tag: r } = e;
358
- return s ? f.createElement(r || "li", { ...a, ...l }, s) : f.createElement(r || "li", {
359
- ...a,
356
+ }, Ee = (e) => {
357
+ const { blockProps: l, content: t, styles: s, children: o, tag: n } = e;
358
+ return o ? m.createElement(n || "li", { ...s, ...l }, o) : m.createElement(n || "li", {
359
+ ...s,
360
360
  ...l,
361
361
  "data-ai-key": "content",
362
362
  dangerouslySetInnerHTML: { __html: t }
363
363
  });
364
- }, Te = {
364
+ }, Ne = {
365
365
  type: "ListItem",
366
- label: o("web_blocks.listitem"),
367
- icon: Q,
366
+ label: "web_blocks.listitem",
367
+ icon: J,
368
368
  category: "core",
369
369
  group: "basic",
370
370
  props: {
371
- styles: m({ default: "" }),
372
- content: j({ title: o("web_blocks.content"), default: "List item" })
371
+ styles: p({ default: "" }),
372
+ content: j({ title: "web_blocks.content", default: "List item" })
373
373
  },
374
374
  canAcceptBlock: (e) => e !== "ListItem",
375
375
  canBeNested: (e) => e === "List"
376
- }, Re = (e) => {
377
- const { blockProps: l, icon: t, styles: a, width: s, inBuilder: r, height: i } = e, d = F(a, C(s ? `w-[${s}px]` : "", i ? `h-[${i}px]` : ""));
378
- if (w(t))
379
- return /* @__PURE__ */ n.jsx(_, { inBuilder: r, className: "h-8 w-14" });
380
- const c = t.replace(/<svg /g, '<svg class="w-[inherit] h-[inherit]" ');
381
- return f.createElement("span", {
376
+ }, Pe = (e) => {
377
+ const { blockProps: l, icon: t, styles: s, width: o, inBuilder: n, height: c } = e, i = R(s, L(o ? `w-[${o}px]` : "", c ? `h-[${c}px]` : ""));
378
+ if (g(t))
379
+ return /* @__PURE__ */ a.jsx(_, { inBuilder: n, className: "h-8 w-14" });
380
+ const r = t.replace(/<svg /g, '<svg class="w-[inherit] h-[inherit]" ');
381
+ return m.createElement("span", {
382
382
  ...l,
383
- ...d,
384
- dangerouslySetInnerHTML: { __html: c }
383
+ ...i,
384
+ dangerouslySetInnerHTML: { __html: r }
385
385
  });
386
- }, He = {
386
+ }, Te = {
387
387
  type: "Icon",
388
- label: o("web_blocks.icon"),
388
+ label: "web_blocks.icon",
389
389
  category: "core",
390
- icon: ee,
390
+ icon: K,
391
391
  group: "media",
392
392
  props: {
393
- styles: m({ default: "text-black" }),
394
- icon: N({
395
- title: o("web_blocks.icon"),
393
+ styles: p({ default: "text-black" }),
394
+ icon: $({
395
+ title: "web_blocks.icon",
396
396
  default: '<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M8 16c4.418 0 8-3.582 8-8s-3.582-8-8-8-8 3.582-8 8 3.582 8 8 8zM8 1.5c3.59 0 6.5 2.91 6.5 6.5s-2.91 6.5-6.5 6.5-6.5-2.91-6.5-6.5 2.91-6.5 6.5-6.5zM8 9.356c1.812 0 3.535-0.481 5-1.327-0.228 2.788-2.393 4.971-5 4.971s-4.772-2.186-5-4.973c1.465 0.845 3.188 1.329 5 1.329zM4 5.5c0-0.828 0.448-1.5 1-1.5s1 0.672 1 1.5c0 0.828-0.448 1.5-1 1.5s-1-0.672-1-1.5zM10 5.5c0-0.828 0.448-1.5 1-1.5s1 0.672 1 1.5c0 0.828-0.448 1.5-1 1.5s-1-0.672-1-1.5z"></path></svg>'
397
397
  }),
398
- width: L({ title: o("web_blocks.width"), default: "" }),
399
- height: L({ title: o("web_blocks.height"), default: "" })
398
+ width: B({ title: "web_blocks.width", default: "" }),
399
+ height: B({ title: "web_blocks.height", default: "" })
400
400
  }
401
- }, Ae = (e) => {
402
- const { blockProps: l, image: t, styles: a, alt: s, height: r, width: i } = e;
403
- return w(t) ? /* @__PURE__ */ n.jsx(_, { className: "h-36" }) : f.createElement("img", {
401
+ }, He = (e) => {
402
+ const { blockProps: l, image: t, styles: s, alt: o, height: n, width: c } = e;
403
+ return g(t) ? /* @__PURE__ */ a.jsx(_, { className: "h-36" }) : m.createElement("img", {
404
404
  ...l,
405
- ...a,
405
+ ...s,
406
406
  src: t,
407
- alt: s,
407
+ alt: o,
408
408
  loading: "lazy",
409
- height: r,
410
- width: i
409
+ height: n,
410
+ width: c
411
411
  });
412
- }, ze = {
412
+ }, Ae = {
413
413
  type: "Image",
414
- label: o("web_blocks.image"),
414
+ label: "web_blocks.image",
415
415
  category: "core",
416
416
  icon: A,
417
417
  group: "media",
418
418
  props: {
419
- styles: m({ default: "" }),
420
- image: E({
419
+ styles: p({ default: "" }),
420
+ image: M({
421
421
  title: "Image",
422
422
  default: "https://fakeimg.pl/400x200?text=Choose&font=bebas"
423
423
  }),
424
- alt: b({ title: o("web_blocks.alt"), default: "" }),
425
- width: b({ title: o("web_blocks.width"), default: "" }),
426
- height: b({ title: o("web_blocks.height"), default: "" })
424
+ alt: b({ title: "web_blocks.alt", default: "" }),
425
+ width: b({ title: "web_blocks.width", default: "" }),
426
+ height: b({ title: "web_blocks.height", default: "" })
427
427
  }
428
- }, P = /^(https?:\/\/)?(www\.)?youtube\.com\/(watch\?v=|embed\/)([a-zA-Z0-9_-]{11})/, $ = /^(https?:\/\/)?(www\.)?player.vimeo\.com/, T = /^(https?:\/\/)?(www\.)?dailymotion\.com\/(video|embed\/video)\/([a-zA-Z0-9_-]+)/, qe = (e) => {
429
- if (P.test(e)) {
430
- const l = e.match(P);
428
+ }, E = /^(https?:\/\/)?(www\.)?youtube\.com\/(watch\?v=|embed\/)([a-zA-Z0-9_-]{11})/, N = /^(https?:\/\/)?(www\.)?player.vimeo\.com/, P = /^(https?:\/\/)?(www\.)?dailymotion\.com\/(video|embed\/video)\/([a-zA-Z0-9_-]+)/, ze = (e) => {
429
+ if (E.test(e)) {
430
+ const l = e.match(E);
431
431
  return l ? `https://www.youtube.com/embed/${l[4]}` : e;
432
432
  }
433
- if ($.test(e)) {
434
- const l = e.match($);
433
+ if (N.test(e)) {
434
+ const l = e.match(N);
435
435
  return l ? `https://player.vimeo.com/video/${l[3]}` : e;
436
436
  }
437
- if (T.test(e)) {
438
- const l = e.match(T);
437
+ if (P.test(e)) {
438
+ const l = e.match(P);
439
439
  return l ? `https://www.dailymotion.com/embed/video/${l[4]}` : e;
440
440
  }
441
441
  return null;
442
- }, Fe = f.memo(
442
+ }, qe = m.memo(
443
443
  (e) => {
444
- const { blockProps: l, inBuilder: t, styles: a, url: s, controls: r } = e, i = v(r, "autoPlay", !1), d = v(r, "controls", !1), c = i || v(r, "muted", !0), u = v(r, "loop", !1);
445
- if (w(s))
446
- return /* @__PURE__ */ n.jsx(_, { inBuilder: t, className: "h-36" });
447
- let y = qe(s), h = null;
448
- if (y) {
449
- if (!w(y)) {
450
- const k = [];
451
- k.push(`autoplay=${i ? 1 : 0}`), k.push(`controls=${r ? 1 : 0}`), k.push(`mute=${c ? 1 : 0}&muted=${c ? 1 : 0}`), k.push(`loop=${u ? 1 : 0}`), y = `${y}?${k.join("&")}`;
444
+ const { blockProps: l, inBuilder: t, styles: s, url: o, controls: n } = e, c = x(n, "autoPlay", !1), i = x(n, "controls", !1), r = c || x(n, "muted", !0), d = x(n, "loop", !1);
445
+ if (g(o))
446
+ return /* @__PURE__ */ a.jsx(_, { inBuilder: t, className: "h-36" });
447
+ let h = ze(o), f = null;
448
+ if (h) {
449
+ if (!g(h)) {
450
+ const y = [];
451
+ y.push(`autoplay=${c ? 1 : 0}`), y.push(`controls=${n ? 1 : 0}`), y.push(`mute=${r ? 1 : 0}&muted=${r ? 1 : 0}`), y.push(`loop=${d ? 1 : 0}`), h = `${h}?${y.join("&")}`;
452
452
  }
453
- h = f.createElement("iframe", {
453
+ f = m.createElement("iframe", {
454
454
  ...l,
455
455
  className: "absolute inset-0 w-full h-full",
456
- src: y,
456
+ src: h,
457
457
  allow: t ? "" : "autoplay *; fullscreen *",
458
458
  allowFullScreen: !0,
459
459
  frameBorder: 0
460
460
  });
461
461
  } else
462
- h = f.createElement("video", {
462
+ f = m.createElement("video", {
463
463
  ...l,
464
464
  className: "absolute inset-0 w-full h-full",
465
- src: s,
466
- controls: d,
467
- muted: c,
468
- autoPlay: t ? !1 : i,
469
- loop: u
465
+ src: o,
466
+ controls: i,
467
+ muted: r,
468
+ autoPlay: t ? !1 : c,
469
+ loop: d
470
470
  });
471
- return /* @__PURE__ */ n.jsx("div", { ...ce(a, ["className"]), children: /* @__PURE__ */ n.jsxs("div", { className: "relative w-full overflow-hidden", style: { paddingBottom: "56.25%" }, children: [
472
- t ? /* @__PURE__ */ n.jsx("div", { ...l, ...de(a, ["className"]), className: "absolute inset-0 z-20 h-full w-full" }) : null,
473
- h
471
+ return /* @__PURE__ */ a.jsx("div", { ...ce(s, ["className"]), children: /* @__PURE__ */ a.jsxs("div", { className: "relative w-full overflow-hidden", style: { paddingBottom: "56.25%" }, children: [
472
+ t ? /* @__PURE__ */ a.jsx("div", { ...l, ...re(s, ["className"]), className: "absolute inset-0 z-20 h-full w-full" }) : null,
473
+ f
474
474
  ] }) });
475
475
  }
476
- ), De = {
476
+ ), Re = {
477
477
  type: "Video",
478
- label: o("web_blocks.video"),
478
+ label: "web_blocks.video",
479
479
  category: "core",
480
- icon: te,
480
+ icon: Q,
481
481
  group: "media",
482
482
  props: {
483
- styles: m({ default: "" }),
483
+ styles: p({ default: "" }),
484
484
  url: b({
485
- title: "Video URL",
485
+ title: "web_blocks.video_url",
486
486
  default: "https://www.youtube.com/watch?v=9xwazD5SyVg&ab_channel=MaximilianMustermann"
487
487
  }),
488
- controls: V({
489
- title: "Controls",
488
+ controls: F({
489
+ title: "web_blocks.controls",
490
490
  properties: {
491
- autoPlay: g({ title: "Autoplay", default: !0 }),
492
- controls: g({ title: "Show controls", default: !1 }),
493
- loop: g({ title: "Loop", default: !1 }),
494
- muted: g({ title: "Muted", default: !0 })
491
+ autoPlay: k({ title: "web_blocks.autoplay", default: !0 }),
492
+ controls: k({ title: "web_blocks.controls", default: !1 }),
493
+ loop: k({ title: "web_blocks.loop", default: !1 }),
494
+ muted: k({ title: "web_blocks.muted", default: !0 })
495
495
  }
496
496
  })
497
497
  }
498
498
  };
499
- function Ve(e) {
500
- return U({ tag: "svg", attr: { version: "1.1", viewBox: "0 0 32 32" }, child: [{ tag: "path", attr: { d: "M4.698 3.419l2.057 23.073 9.231 2.563 9.256-2.566 2.059-23.069h-22.604zM13.226 9.394l-0.409 4.441 9.671 0.001-0.069 0.76-0.665 7.45-0.042 0.478-5.804 1.609-5.796-1.609-0.396-4.443h2.84l0.202 2.257 3.154 0.85 3.156-0.852 0.328-3.67-9.671-0.001 0.069-0.76 0.665-7.45 0.209-2.086h11.287l0.131 1.598 0.403 4.453h-2.841l-0.262-2.922-2.889-0.174h-0.515v-0.004l-2.755 0.074z" }, child: [] }] })(e);
499
+ function De(e) {
500
+ return O({ tag: "svg", attr: { version: "1.1", viewBox: "0 0 32 32" }, child: [{ tag: "path", attr: { d: "M4.698 3.419l2.057 23.073 9.231 2.563 9.256-2.566 2.059-23.069h-22.604zM13.226 9.394l-0.409 4.441 9.671 0.001-0.069 0.76-0.665 7.45-0.042 0.478-5.804 1.609-5.796-1.609-0.396-4.443h2.84l0.202 2.257 3.154 0.85 3.156-0.852 0.328-3.67-9.671-0.001 0.069-0.76 0.665-7.45 0.209-2.086h11.287l0.131 1.598 0.403 4.453h-2.841l-0.262-2.922-2.889-0.174h-0.515v-0.004l-2.755 0.074z" }, child: [] }] })(e);
501
501
  }
502
- const Ue = (e) => {
503
- const { scripts: l, inBuilder: t, blockProps: a } = e;
504
- return t ? /* @__PURE__ */ n.jsx("div", { ...a }) : /* @__PURE__ */ n.jsx("div", { dangerouslySetInnerHTML: { __html: l } });
502
+ const Fe = (e) => {
503
+ const { scripts: l, inBuilder: t, blockProps: s } = e;
504
+ return t ? /* @__PURE__ */ a.jsx("div", { ...s }) : /* @__PURE__ */ a.jsx("div", { dangerouslySetInnerHTML: { __html: l } });
505
505
  }, Oe = {
506
506
  type: "CustomScript",
507
- label: o("web_blocks.custom_script"),
507
+ label: "web_blocks.custom_script",
508
508
  category: "core",
509
- icon: Ve,
509
+ icon: De,
510
510
  group: "advanced",
511
511
  props: {
512
- scripts: R({
512
+ scripts: T({
513
513
  title: "Script",
514
514
  default: "",
515
515
  placeholder: "<script>console.log('Hello, world!');<\/script>"
516
516
  })
517
517
  },
518
518
  canAcceptBlock: () => !1
519
- }, Ge = (e) => {
519
+ }, Ue = (e) => {
520
520
  const { blockProps: l, styles: t } = e;
521
- return f.createElement("hr", { ...t, ...l });
522
- }, We = {
521
+ return m.createElement("hr", { ...t, ...l });
522
+ }, Ve = {
523
523
  type: "Divider",
524
- label: o("web_blocks.divider"),
524
+ label: "web_blocks.divider",
525
525
  category: "core",
526
- icon: le,
526
+ icon: ee,
527
527
  group: "basic",
528
528
  props: {
529
- styles: m({ default: "bg-gray-900 h-0.5 py-2 my-1" })
529
+ styles: p({ default: "bg-gray-900 h-0.5 py-2 my-1" })
530
530
  }
531
- }, Xe = () => null, Ye = {
531
+ }, Ge = () => null, We = {
532
532
  type: "Dark Mode",
533
- label: o("web_blocks.dark_mode"),
533
+ label: "web_blocks.dark_mode",
534
534
  category: "core",
535
- icon: oe,
535
+ icon: te,
536
536
  group: "advanced",
537
537
  props: {},
538
538
  blocks: () => [
@@ -584,38 +584,38 @@ const Ue = (e) => {
584
584
  icon: "<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='4'></circle><path d='M12 2v2'></path><path d='M12 20v2'></path><path d='m4.93 4.93 1.41 1.41'></path><path d='m17.66 17.66 1.41 1.41'></path><path d='M2 12h2'></path><path d='M20 12h2'></path><path d='m6.34 17.66-1.41 1.41'></path><path d='m19.07 4.93-1.41 1.41'></path></svg>"
585
585
  }
586
586
  ]
587
- }, Ze = (e) => e.inBuilder || e.forceWrapper ? /* @__PURE__ */ n.jsx("span", { "data-ai-key": "content", ...e.blockProps, children: e.content }) : `${e.content}`, Je = {
587
+ }, Xe = (e) => e.inBuilder || e.forceWrapper ? /* @__PURE__ */ a.jsx("span", { "data-ai-key": "content", ...e.blockProps, children: e.content }) : `${e.content}`, Ye = {
588
588
  type: "Text",
589
- label: o("web_blocks.text"),
589
+ label: "web_blocks.text",
590
590
  hidden: !0,
591
591
  category: "core",
592
592
  group: "typography",
593
593
  icon: z,
594
594
  props: {
595
- content: j({ title: o("web_blocks.content"), defaultValue: "" })
595
+ content: j({ title: "web_blocks.content", defaultValue: "" })
596
596
  }
597
- }, Ke = (e) => {
598
- const { blockProps: l, backgroundImage: t, children: a, styles: s } = e;
599
- let r = {};
600
- return t && (r = { backgroundImage: `url(${t})` }), f.createElement("div", { ...l, ...s, style: r }, a);
601
- }, Qe = {
597
+ }, Ze = (e) => {
598
+ const { blockProps: l, backgroundImage: t, children: s, styles: o } = e;
599
+ let n = {};
600
+ return t && (n = { backgroundImage: `url(${t})` }), m.createElement("div", { ...l, ...o, style: n }, s);
601
+ }, Je = {
602
602
  type: "Body",
603
603
  label: "Body",
604
604
  category: "core",
605
605
  group: "basic",
606
606
  hidden: !0,
607
607
  props: {
608
- styles: m({ default: "font-body antialiased" }),
609
- backgroundImage: E({ title: "Background Image" })
608
+ styles: p({ default: "font-body antialiased" }),
609
+ backgroundImage: M({ title: "Background Image" })
610
610
  },
611
611
  canAcceptBlock: () => !0,
612
612
  canDelete: () => !1,
613
613
  canMove: () => !1,
614
614
  canDuplicate: () => !1
615
- }, et = (e) => {
615
+ }, Ke = (e) => {
616
616
  const { blockProps: l, styles: t } = e;
617
- return f.createElement("br", { ...l, ...t });
618
- }, tt = {
617
+ return m.createElement("br", { ...l, ...t });
618
+ }, Qe = {
619
619
  type: "LineBreak",
620
620
  label: "Line Break",
621
621
  category: "core",
@@ -623,151 +623,151 @@ const Ue = (e) => {
623
623
  hidden: !0,
624
624
  icon: z,
625
625
  props: {
626
- styles: m({ default: "" })
626
+ styles: p({ default: "" })
627
627
  }
628
- }, lt = (e) => {
629
- const { blockProps: l, errorMessage: t, name: a, _type: s, successMessage: r, action: i, styles: d, children: c } = e;
630
- let u = c;
631
- c || (u = /* @__PURE__ */ n.jsx(_, {}));
632
- const y = {
628
+ }, et = (e) => {
629
+ const { blockProps: l, errorMessage: t, name: s, _type: o, successMessage: n, action: c, styles: i, children: r } = e;
630
+ let d = r;
631
+ r || (d = /* @__PURE__ */ a.jsx(_, {}));
632
+ const h = {
633
633
  "x-data": "useForm",
634
634
  "x-on:submit.prevent": "post"
635
- }, h = {
635
+ }, f = {
636
636
  "x-html": "formResponse",
637
637
  ":class": "{'text-red-500': formStatus === 'ERROR', 'text-green-500': formStatus === 'SUCCESS'}"
638
638
  };
639
- return /* @__PURE__ */ n.jsxs(
639
+ return /* @__PURE__ */ a.jsxs(
640
640
  "form",
641
641
  {
642
- ...y,
642
+ ...h,
643
643
  "data-error": t,
644
- "data-success": r,
644
+ "data-success": n,
645
645
  method: "post",
646
- action: i,
646
+ action: c,
647
647
  ...l,
648
- ...d,
648
+ ...i,
649
649
  children: [
650
- /* @__PURE__ */ n.jsx("div", { ...h }),
651
- /* @__PURE__ */ n.jsx("input", { name: "formname", type: "hidden", value: a || s }),
652
- u
650
+ /* @__PURE__ */ a.jsx("div", { ...f }),
651
+ /* @__PURE__ */ a.jsx("input", { name: "formname", type: "hidden", value: s || o }),
652
+ d
653
653
  ]
654
654
  }
655
655
  );
656
- }, ot = {
656
+ }, tt = {
657
657
  type: "Form",
658
- label: "Form",
658
+ label: "web_blocks.form",
659
659
  category: "core",
660
- icon: se,
660
+ icon: le,
661
661
  group: "form",
662
662
  props: {
663
- styles: m({ default: "" }),
663
+ styles: p({ default: "" }),
664
664
  action: b({
665
- title: "Submit URL",
665
+ title: "web_blocks.submit_url",
666
666
  default: "/api/form/submit"
667
667
  }),
668
- errorMessage: S({
669
- title: "Error Message",
668
+ errorMessage: C({
669
+ title: "web_blocks.error_message",
670
670
  default: "Something went wrong. Please try again"
671
671
  }),
672
- successMessage: S({
673
- title: "Success Message",
672
+ successMessage: C({
673
+ title: "web_blocks.success_message",
674
674
  default: "Thank you for your submission."
675
675
  })
676
676
  },
677
677
  canAcceptBlock: () => !0
678
- }, st = (e) => {
679
- const { blockProps: l, inBuilder: t, label: a, styles: s, inputStyles: r, icon: i, iconPos: d } = e, c = B(), u = {
678
+ }, lt = (e) => {
679
+ const { blockProps: l, inBuilder: t, label: s, styles: o, inputStyles: n, icon: c, iconPos: i } = e, r = I(), d = {
680
680
  "x-bind:disabled": "formLoading"
681
681
  };
682
- return /* @__PURE__ */ n.jsxs(
682
+ return /* @__PURE__ */ a.jsxs(
683
683
  "button",
684
684
  {
685
- id: c,
686
- ...u,
687
- ...r,
688
- ...s,
685
+ id: r,
686
+ ...d,
687
+ ...n,
688
+ ...o,
689
689
  ...l || {},
690
690
  type: t ? "button" : "submit",
691
691
  children: [
692
- a,
693
- i && /* @__PURE__ */ n.jsx("span", { className: d, dangerouslySetInnerHTML: { __html: i } })
692
+ s,
693
+ c && /* @__PURE__ */ a.jsx("span", { className: i, dangerouslySetInnerHTML: { __html: c } })
694
694
  ]
695
695
  }
696
696
  );
697
- }, at = {
697
+ }, ot = {
698
698
  type: "FormButton",
699
- label: "Submit Button",
699
+ label: "web_blocks.submit_button",
700
700
  category: "core",
701
701
  icon: H,
702
702
  group: "form",
703
703
  props: {
704
- label: b({ title: "Label", default: "Submit" }),
705
- styles: m({
704
+ label: b({ title: "web_blocks.label", default: "Submit" }),
705
+ styles: p({
706
706
  default: "text-white bg-primary disabled:bg-gray-400 px-4 py-2 rounded-global flex items-center gap-x-2"
707
707
  }),
708
- icon: N({ title: "Icon", default: "" }),
709
- iconPos: I({
710
- title: "Icon Position",
708
+ icon: $({ title: "Icon", default: "" }),
709
+ iconPos: v({
710
+ title: "web_blocks.icon_position",
711
711
  default: "order-last",
712
712
  options: [
713
- { title: "Start", value: "order-first" },
714
- { title: "End", value: "order-last" }
713
+ { title: "web_blocks.start", value: "order-first" },
714
+ { title: "web_blocks.end", value: "order-last" }
715
715
  ]
716
716
  })
717
717
  }
718
- }, nt = (e) => {
718
+ }, st = (e) => {
719
719
  const {
720
720
  blockProps: l,
721
721
  label: t,
722
- placeholder: a,
723
- styles: s,
724
- inputStyles: r,
725
- showLabel: i,
726
- required: d,
727
- inputType: c = "text",
728
- inBuilder: u,
729
- fieldName: y
730
- } = e, h = B();
731
- return !i || c === "submit" ? (c === "submit" && (l.value = t), /* @__PURE__ */ n.jsx(
722
+ placeholder: s,
723
+ styles: o,
724
+ inputStyles: n,
725
+ showLabel: c,
726
+ required: i,
727
+ inputType: r = "text",
728
+ inBuilder: d,
729
+ fieldName: h
730
+ } = e, f = I();
731
+ return !c || r === "submit" ? (r === "submit" && (l.value = t), /* @__PURE__ */ a.jsx(
732
732
  "input",
733
733
  {
734
- id: h,
735
- name: y,
736
- readOnly: u,
734
+ id: f,
735
+ name: h,
736
+ readOnly: d,
737
737
  ...l,
738
- ...r,
739
- ...s,
740
- type: c,
741
- placeholder: a,
742
- required: d
738
+ ...n,
739
+ ...o,
740
+ type: r,
741
+ placeholder: s,
742
+ required: i
743
743
  }
744
- )) : /* @__PURE__ */ n.jsxs("div", { ...s, ...l, children: [
745
- i && /* @__PURE__ */ n.jsx("label", { htmlFor: h, children: t }),
746
- /* @__PURE__ */ n.jsx(
744
+ )) : /* @__PURE__ */ a.jsxs("div", { ...o, ...l, children: [
745
+ c && /* @__PURE__ */ a.jsx("label", { htmlFor: f, children: t }),
746
+ /* @__PURE__ */ a.jsx(
747
747
  "input",
748
748
  {
749
- name: y,
750
- readOnly: u,
751
- ...r,
752
- id: h,
753
- type: c,
754
- placeholder: a,
755
- required: d
749
+ name: h,
750
+ readOnly: d,
751
+ ...n,
752
+ id: f,
753
+ type: r,
754
+ placeholder: s,
755
+ required: i
756
756
  }
757
757
  )
758
758
  ] });
759
- }, rt = {
759
+ }, at = {
760
760
  type: "Input",
761
- label: "Input",
761
+ label: "web_blocks.input",
762
762
  category: "core",
763
763
  icon: q,
764
764
  group: "form",
765
765
  props: {
766
- styles: m({ default: "" }),
766
+ styles: p({ default: "" }),
767
767
  fieldName: b({ title: "Field Name", default: "input" }),
768
- inputType: I({
769
- title: "Type",
770
- options: M(
768
+ inputType: v({
769
+ title: "web_blocks.type",
770
+ options: S(
771
771
  ["text", "email", "password", "number", "tel", "file", "hidden", "range", "submit", "color", "date", "time"],
772
772
  (e) => ({
773
773
  value: e,
@@ -776,200 +776,200 @@ const Ue = (e) => {
776
776
  ),
777
777
  default: "text"
778
778
  }),
779
- value: b({ title: "Value", default: "" }),
780
- showLabel: g({ title: "Show label", default: !0 }),
781
- inputStyles: m({ default: "w-full p-1" }),
782
- label: b({ title: "Label", default: "Label" }),
779
+ value: b({ title: "web_blocks.value", default: "" }),
780
+ showLabel: k({ title: "web_blocks.show_label", default: !0 }),
781
+ inputStyles: p({ default: "w-full p-1" }),
782
+ label: b({ title: "web_blocks.label", default: "Label" }),
783
783
  placeholder: b({
784
- title: "Placeholder",
784
+ title: "web_blocks.placeholder",
785
785
  default: "Placeholder"
786
786
  }),
787
- required: g({ title: "Required", default: !1 })
787
+ required: k({ title: "web_blocks.required", default: !1 })
788
788
  }
789
- }, it = (e) => {
790
- const { blockProps: l, fieldName: t, label: a, styles: s, inputStyles: r, checked: i, required: d, showLabel: c = !0 } = e, u = B();
791
- return c ? /* @__PURE__ */ n.jsxs("div", { ...s, ...l, children: [
792
- /* @__PURE__ */ n.jsx("input", { ...r, name: t, id: u, type: "radio", required: d, defaultChecked: i }),
793
- a && /* @__PURE__ */ n.jsx("label", { htmlFor: u, children: a })
794
- ] }) : /* @__PURE__ */ n.jsx(
789
+ }, nt = (e) => {
790
+ const { blockProps: l, fieldName: t, label: s, styles: o, inputStyles: n, checked: c, required: i, showLabel: r = !0 } = e, d = I();
791
+ return r ? /* @__PURE__ */ a.jsxs("div", { ...o, ...l, children: [
792
+ /* @__PURE__ */ a.jsx("input", { ...n, name: t, id: d, type: "radio", required: i, defaultChecked: c }),
793
+ s && /* @__PURE__ */ a.jsx("label", { htmlFor: d, children: s })
794
+ ] }) : /* @__PURE__ */ a.jsx(
795
795
  "input",
796
796
  {
797
- id: u,
797
+ id: d,
798
798
  ...l,
799
- ...r,
800
- ...s,
799
+ ...n,
800
+ ...o,
801
801
  type: "radio",
802
- required: d,
803
- checked: i,
802
+ required: i,
803
+ checked: c,
804
804
  name: t
805
805
  }
806
806
  );
807
807
  }, ct = {
808
808
  type: "Radio",
809
- label: "Radio",
809
+ label: "web_blocks.radio",
810
810
  category: "core",
811
- icon: ae,
811
+ icon: oe,
812
812
  group: "form",
813
813
  props: {
814
- styles: m({ default: "flex items-center w-max gap-x-2" }),
815
- fieldName: b({ title: "Field Name", default: "radio" }),
816
- label: b({ title: "Label", default: "Label" }),
817
- checked: g({ title: "Checked", default: !1 }),
818
- required: g({ title: "Required", default: !1 })
814
+ styles: p({ default: "flex items-center w-max gap-x-2" }),
815
+ fieldName: b({ title: "web_blocks.field_name", default: "radio" }),
816
+ label: b({ title: "web_blocks.label", default: "Label" }),
817
+ checked: k({ title: "web_blocks.checked", default: !1 }),
818
+ required: k({ title: "web_blocks.required", default: !1 })
819
819
  }
820
- }, dt = (e) => {
820
+ }, rt = (e) => {
821
821
  const {
822
822
  blockProps: l,
823
823
  fieldName: t,
824
- label: a,
825
- placeholder: s,
826
- styles: r,
827
- inputStyles: i,
828
- required: d,
829
- showLabel: c,
830
- _multiple: u = !1
831
- } = e, y = B();
832
- return c ? /* @__PURE__ */ n.jsxs("div", { ...r, children: [
833
- c && /* @__PURE__ */ n.jsx("label", { htmlFor: y, children: a }),
834
- /* @__PURE__ */ n.jsxs("select", { ...i, id: y, required: d, multiple: u, name: t, children: [
835
- /* @__PURE__ */ n.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: s }),
836
- M(e.options, (h) => /* @__PURE__ */ n.jsx(
824
+ label: s,
825
+ placeholder: o,
826
+ styles: n,
827
+ inputStyles: c,
828
+ required: i,
829
+ showLabel: r,
830
+ _multiple: d = !1
831
+ } = e, h = I();
832
+ return r ? /* @__PURE__ */ a.jsxs("div", { ...n, children: [
833
+ r && /* @__PURE__ */ a.jsx("label", { htmlFor: h, children: s }),
834
+ /* @__PURE__ */ a.jsxs("select", { ...c, id: h, required: i, multiple: d, name: t, children: [
835
+ /* @__PURE__ */ a.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: o }),
836
+ S(e.options, (f) => /* @__PURE__ */ a.jsx(
837
837
  "option",
838
838
  {
839
- selected: v(h, "selected", !1),
840
- value: h.value,
841
- dangerouslySetInnerHTML: { __html: h.label }
839
+ selected: x(f, "selected", !1),
840
+ value: f.value,
841
+ dangerouslySetInnerHTML: { __html: f.label }
842
842
  },
843
- h.value
843
+ f.value
844
844
  ))
845
845
  ] })
846
- ] }) : /* @__PURE__ */ n.jsxs(
846
+ ] }) : /* @__PURE__ */ a.jsxs(
847
847
  "select",
848
848
  {
849
- id: y,
850
- ...r,
849
+ id: h,
850
+ ...n,
851
851
  ...l,
852
- required: d,
853
- multiple: u,
852
+ required: i,
853
+ multiple: d,
854
854
  name: t,
855
855
  children: [
856
- /* @__PURE__ */ n.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: s }),
857
- M(e.options, (h) => /* @__PURE__ */ n.jsx(
856
+ /* @__PURE__ */ a.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: o }),
857
+ S(e.options, (f) => /* @__PURE__ */ a.jsx(
858
858
  "option",
859
859
  {
860
- selected: v(h, "selected", !1),
861
- value: h.value,
862
- dangerouslySetInnerHTML: { __html: h.label }
860
+ selected: x(f, "selected", !1),
861
+ value: f.value,
862
+ dangerouslySetInnerHTML: { __html: f.label }
863
863
  },
864
- h.value
864
+ f.value
865
865
  ))
866
866
  ]
867
867
  }
868
868
  );
869
- }, ut = {
869
+ }, it = {
870
870
  type: "Select",
871
- label: "Select",
871
+ label: "web_blocks.select",
872
872
  category: "core",
873
- icon: ne,
873
+ icon: se,
874
874
  group: "form",
875
875
  props: {
876
- styles: m({ default: "" }),
877
- fieldName: b({ title: "Field Name", default: "select" }),
878
- showLabel: g({ title: "Show label", default: !0 }),
879
- inputStyles: m({ default: "w-full p-1" }),
880
- label: b({ title: "Label", default: "Label" }),
876
+ styles: p({ default: "" }),
877
+ fieldName: b({ title: "web_blocks.field_name", default: "select" }),
878
+ showLabel: k({ title: "web_blocks.show_label", default: !0 }),
879
+ inputStyles: p({ default: "w-full p-1" }),
880
+ label: b({ title: "web_blocks.label", default: "Label" }),
881
881
  placeholder: b({
882
- title: "Placeholder",
882
+ title: "web_blocks.placeholder",
883
883
  default: "Placeholder"
884
884
  }),
885
- required: g({ title: "Required", default: !1 }),
886
- _multiple: g({ title: "Multiple Choice", default: !1 }),
887
- options: O({
888
- title: "Options",
885
+ required: k({ title: "web_blocks.required", default: !1 }),
886
+ _multiple: k({ title: "web_blocks.multiple", default: !1 }),
887
+ options: U({
888
+ title: "web_blocks.options",
889
889
  itemProperties: {
890
- label: b({ title: "Label", default: "" }),
891
- value: b({ title: "Value", default: "" })
890
+ label: b({ title: "web_blocks.label", default: "" }),
891
+ value: b({ title: "web_blocks.value", default: "" })
892
892
  }
893
893
  })
894
894
  }
895
- }, pt = (e) => {
896
- const { blockProps: l, fieldName: t, label: a, placeholder: s, styles: r, inputStyles: i, _rows: d, showLabel: c } = e, u = B();
897
- return c ? /* @__PURE__ */ n.jsxs("div", { ...r, ...l, children: [
898
- c && /* @__PURE__ */ n.jsx("label", { htmlFor: u, children: a }),
899
- /* @__PURE__ */ n.jsx("textarea", { name: t, ...i, id: u, placeholder: s, rows: d })
900
- ] }) : /* @__PURE__ */ n.jsx(
895
+ }, dt = (e) => {
896
+ const { blockProps: l, fieldName: t, label: s, placeholder: o, styles: n, inputStyles: c, _rows: i, showLabel: r } = e, d = I();
897
+ return r ? /* @__PURE__ */ a.jsxs("div", { ...n, ...l, children: [
898
+ r && /* @__PURE__ */ a.jsx("label", { htmlFor: d, children: s }),
899
+ /* @__PURE__ */ a.jsx("textarea", { name: t, ...c, id: d, placeholder: o, rows: i })
900
+ ] }) : /* @__PURE__ */ a.jsx(
901
901
  "textarea",
902
902
  {
903
- id: u,
903
+ id: d,
904
904
  name: t,
905
905
  ...l,
906
- ...i,
907
- ...r,
908
- placeholder: s,
909
- rows: d
906
+ ...c,
907
+ ...n,
908
+ placeholder: o,
909
+ rows: i
910
910
  }
911
911
  );
912
- }, bt = {
912
+ }, ut = {
913
913
  type: "TextArea",
914
- label: "TextArea",
914
+ label: "web_blocks.textarea",
915
915
  category: "core",
916
916
  icon: q,
917
917
  group: "form",
918
918
  props: {
919
- fieldName: b({ title: "Field Name", default: "textarea" }),
920
- showLabel: g({ title: "Show label", default: !0 }),
921
- styles: m({ default: "" }),
922
- inputStyles: m({ default: "w-full p-1" }),
923
- label: b({ title: "Label", default: "Label" }),
919
+ fieldName: b({ title: "web_blocks.field_name", default: "textarea" }),
920
+ showLabel: k({ title: "web_blocks.show_label", default: !0 }),
921
+ styles: p({ default: "" }),
922
+ inputStyles: p({ default: "w-full p-1" }),
923
+ label: b({ title: "web_blocks.label", default: "Label" }),
924
924
  placeholder: b({
925
- title: "Placeholder",
925
+ title: "web_blocks.placeholder",
926
926
  default: "Placeholder"
927
927
  }),
928
- _rows: L({ title: "Rows", default: 3 })
928
+ _rows: B({ title: "web_blocks.rows", default: 3 })
929
929
  }
930
- }, mt = (e) => {
931
- const { blockProps: l, fieldName: t, label: a, styles: s, inputStyles: r, required: i, checked: d, showLabel: c = !0 } = e, u = B();
932
- return c ? /* @__PURE__ */ n.jsxs("div", { ...s, ...l, children: [
933
- /* @__PURE__ */ n.jsx(
930
+ }, bt = (e) => {
931
+ const { blockProps: l, fieldName: t, label: s, styles: o, inputStyles: n, required: c, checked: i, showLabel: r = !0 } = e, d = I();
932
+ return r ? /* @__PURE__ */ a.jsxs("div", { ...o, ...l, children: [
933
+ /* @__PURE__ */ a.jsx(
934
934
  "input",
935
935
  {
936
- ...r,
936
+ ...n,
937
937
  name: t,
938
- id: u,
938
+ id: d,
939
939
  type: "checkbox",
940
- required: i,
941
- defaultChecked: d
940
+ required: c,
941
+ defaultChecked: i
942
942
  }
943
943
  ),
944
- a && a !== "Label" && /* @__PURE__ */ n.jsx("label", { htmlFor: u, children: a })
945
- ] }) : /* @__PURE__ */ n.jsx(
944
+ s && s !== "Label" && /* @__PURE__ */ a.jsx("label", { htmlFor: d, children: s })
945
+ ] }) : /* @__PURE__ */ a.jsx(
946
946
  "input",
947
947
  {
948
- id: u,
948
+ id: d,
949
949
  ...l,
950
- ...r,
951
- ...s,
950
+ ...n,
951
+ ...o,
952
952
  type: "checkbox",
953
- required: i,
953
+ required: c,
954
954
  name: t
955
955
  }
956
956
  );
957
- }, ft = {
957
+ }, pt = {
958
958
  type: "Checkbox",
959
- label: "Checkbox",
959
+ label: "web_blocks.checkbox",
960
960
  category: "core",
961
- icon: re,
961
+ icon: ae,
962
962
  group: "form",
963
963
  props: {
964
964
  fieldName: b({ title: "Field Name", default: "checkbox" }),
965
- styles: m({ default: "flex items-center gap-x-2" }),
966
- label: b({ title: "Label", default: "Label" }),
967
- checked: g({ title: "Checked", default: !1 }),
968
- required: g({ title: "Required", default: !1 })
965
+ styles: p({ default: "flex items-center gap-x-2" }),
966
+ label: b({ title: "web_blocks.label", default: "Label" }),
967
+ checked: k({ title: "web_blocks.checked", default: !1 }),
968
+ required: k({ title: "web_blocks.required", default: !1 })
969
969
  }
970
- }, It = () => {
971
- p(pe, be), p(ge, ke), p(me, fe), p(we, _e), p(xe, ve), p(Ie, Be), p(Le, je), p(Ce, Se), p(Me, Ee), p(Ne, Pe), p($e, Te), p(Re, He), p(Ae, ze), p(Fe, De), p(he, ye), p(Ze, Je), p(lt, ot), p(st, at), p(nt, rt), p(mt, ft), p(it, ct), p(dt, ut), p(pt, bt), p(et, tt), p(Ke, Qe), p(Ue, Oe), p(Ge, We), p(Xe, Ye);
970
+ }, xt = () => {
971
+ u(de, ue), u(he, ke), u(be, pe), u(ye, ge), u(_e, we), u(xe, ve), u(Ie, Be), u(je, Le), u(Ce, Se), u(Me, $e), u(Ee, Ne), u(Pe, Te), u(He, Ae), u(qe, Re), u(me, fe), u(Xe, Ye), u(et, tt), u(lt, ot), u(st, at), u(bt, pt), u(nt, ct), u(rt, it), u(dt, ut), u(Ke, Qe), u(Ze, Je), u(Fe, Oe), u(Ue, Ve), u(Ge, We);
972
972
  };
973
973
  export {
974
- It as loadWebBlocks
974
+ xt as loadWebBlocks
975
975
  };