@chaibuilder/sdk 1.2.68 → 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.
Files changed (46) hide show
  1. package/dist/{CodeEditor-Jw5dt0Xj.js → CodeEditor-C78__cda.js} +20 -16
  2. package/dist/CodeEditor-k16Akvtp.cjs +1 -0
  3. package/dist/STRINGS-hZpwIZMT.cjs +1 -0
  4. package/dist/STRINGS-rPGH65PW.js +8 -0
  5. package/dist/{Topbar-J3_SbpA_.js → Topbar-RGj3h8fc.js} +32 -30
  6. package/dist/Topbar-zlpadcpA.cjs +1 -0
  7. package/dist/{UnsplashImages-7vkIHXUl.js → UnsplashImages-BEiNW8AF.js} +30 -26
  8. package/dist/UnsplashImages-PV0qzOUM.cjs +1 -0
  9. package/dist/UploadImages-0ixSH6bR.cjs +1 -0
  10. package/dist/{UploadImages-dHtEwNpW.js → UploadImages-G1FUqJ45.js} +18 -14
  11. package/dist/context-menu-Lx_MAqsu.cjs +1 -0
  12. package/dist/{context-menu-sks9vdzC.js → context-menu-zu6r7B6f.js} +298 -311
  13. package/dist/core.cjs +1 -1
  14. package/dist/core.d.ts +6 -1
  15. package/dist/core.js +88 -83
  16. package/dist/{index-CatHvcI6.cjs → index-33fJMZES.cjs} +22 -22
  17. package/dist/{index-ElwrrnPk.js → index-id8x-JN2.js} +2300 -1533
  18. package/dist/render.cjs +1 -1
  19. package/dist/render.js +1 -1
  20. package/dist/{select-JW3OMYm-.js → select-1WwjQDp6.js} +1 -1
  21. package/dist/{select-fXj5tdMX.cjs → select-FnytvxNn.cjs} +1 -1
  22. package/dist/ui.cjs +1 -1
  23. package/dist/ui.d.ts +5 -5
  24. package/dist/ui.js +251 -215
  25. package/dist/web-blocks.cjs +1 -1
  26. package/dist/web-blocks.js +410 -417
  27. package/package.json +1 -1
  28. package/dist/AddBlocks-ZpUetK5a.js +0 -123
  29. package/dist/AddBlocks-yiQ5OTLv.cjs +0 -1
  30. package/dist/CanvasArea-2cBQ9dE5.cjs +0 -1
  31. package/dist/CanvasArea-jo84KvNu.js +0 -136
  32. package/dist/CodeEditor-KGtD1Of3.cjs +0 -1
  33. package/dist/STRINGS--j49GZJP.js +0 -7
  34. package/dist/STRINGS-gPz7CUOk.cjs +0 -1
  35. package/dist/SettingsPanel-J5bAM-ug.cjs +0 -1
  36. package/dist/SettingsPanel-ukU3Ay9U.js +0 -81
  37. package/dist/SidePanels-VyoLHl0W.cjs +0 -1
  38. package/dist/SidePanels-miYmxJN0.js +0 -413
  39. package/dist/Topbar-gVd8cET_.cjs +0 -1
  40. package/dist/UnsplashImages-hYgO0rjn.cjs +0 -1
  41. package/dist/UploadImages-_t2yeuXp.cjs +0 -1
  42. package/dist/badge-7BVT3zxN.cjs +0 -1
  43. package/dist/badge-pJqQSA13.js +0 -23
  44. package/dist/context-menu-_8TFbFEJ.cjs +0 -1
  45. package/dist/separator-hT24N-xp.cjs +0 -1
  46. package/dist/separator-sgwOa1FE.js +0 -18
@@ -1,59 +1,60 @@
1
1
  import { registerChaiBlock as u } from "@chaibuilder/runtime";
2
- import { j as n } from "./jsx-runtime-Sp0orL4X.js";
2
+ import { j as a } from "./jsx-runtime-Sp0orL4X.js";
3
3
  import * as m from "react";
4
- import { c as C, o as f, f as I, v as M, b as p, T, y as B, u as $, r as _, d as S, q, e as g, h as F, G as V, g as L, S as U } from "./iconBase-zweRWSz0.js";
5
- import { ButtonIcon as H, CodeIcon as O, HeadingIcon as G, TextIcon as W, CursorTextIcon as X, Link1Icon as Y, ImageIcon as R, RowsIcon as Z, ColumnsIcon as J, SketchLogoIcon as K, VideoIcon as Q, DividerHorizontalIcon as ee, MoonIcon as te, SpaceBetweenVerticallyIcon as A, GroupIcon as le, InputIcon as z, RadiobuttonIcon as oe, DropdownMenuIcon as ae, CheckboxIcon as ne } from "@radix-ui/react-icons";
6
- import { isNull as se, isEmpty as k, get as w, pick as re, omit as ie, map as j } from "lodash-es";
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";
7
8
  import "clsx";
8
9
  import "tailwind-merge";
9
- const ce = ({ 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", 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" }) }) }) : null, x = ce, de = (e) => {
10
- const { blockProps: l, inBuilder: t, backgroundImage: a, children: o, tag: s = "div", styles: r } = e;
11
- let c = o;
12
- o || (c = /* @__PURE__ */ n.jsx(x, { inBuilder: t }));
13
- let i = {};
14
- return a && (i = { backgroundImage: `url(${a})` }), m.createElement(s, { ...l, ...r, style: i }, c);
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);
15
16
  }, ue = {
16
17
  type: "Box",
17
- label: "Box",
18
+ label: "web_blocks.box",
18
19
  category: "core",
19
20
  group: "basic",
20
21
  props: {
21
- styles: f({ default: "" }),
22
- tag: I({
23
- title: "Tag",
22
+ styles: p({ default: "" }),
23
+ tag: v({
24
+ title: "web_blocks.tag",
24
25
  default: "div",
25
26
  options: [
26
- { value: "div", title: "div" },
27
- { value: "header", title: "header" },
28
- { value: "footer", title: "footer" },
29
- { value: "section", title: "section" },
30
- { value: "article", title: "article" },
31
- { value: "aside", title: "aside" },
32
- { value: "main", title: "main" },
33
- { value: "nav", title: "nav" },
34
- { value: "figure", title: "figure" },
35
- { value: "details", title: "details" },
36
- { value: "summary", title: "summary" },
37
- { value: "dialog", title: "dialog" },
38
- { value: "strike", title: "strike" },
39
- { value: "caption", title: "caption" },
40
- { value: "legend", title: "legend" },
41
- { value: "figcaption", title: "figcaption" },
42
- { value: "mark", title: "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" }
43
44
  ]
44
45
  }),
45
- backgroundImage: M({ title: "Background Image" })
46
+ backgroundImage: M({ title: "web_blocks.background_image" })
46
47
  },
47
48
  canAcceptBlock: () => !0
48
- }, pe = (e) => {
49
- const { blockProps: l, iconSize: t, icon: a, content: o, iconPos: s, styles: r, children: c } = e, i = a, d = c || /* @__PURE__ */ n.jsxs(n.Fragment, { children: [
50
- /* @__PURE__ */ n.jsx("span", { "data-ai-key": "content", children: o }),
51
- i && /* @__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(
52
53
  "div",
53
54
  {
54
55
  style: { width: t + "px" },
55
- className: s + " " + (s === "order-first" ? "mr-2" : "ml-2") || "",
56
- dangerouslySetInnerHTML: { __html: i }
56
+ className: n + " " + (n === "order-first" ? "mr-2" : "ml-2") || "",
57
+ dangerouslySetInnerHTML: { __html: r }
57
58
  }
58
59
  )
59
60
  ] });
@@ -61,91 +62,90 @@ const ce = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
61
62
  "button",
62
63
  {
63
64
  ...l,
64
- ...r,
65
+ ...c,
65
66
  type: "button"
66
67
  },
67
68
  d
68
69
  );
69
- }, fe = {
70
+ }, pe = {
70
71
  type: "Button",
71
- label: "Button",
72
+ label: "web_blocks.button",
72
73
  category: "core",
73
74
  icon: H,
74
75
  group: "basic",
75
76
  props: {
76
- content: p({ title: "Label", default: "Button" }),
77
- styles: f({ default: "text-white bg-primary px-4 py-2 rounded-global flex items-center" }),
78
- icon: T({ title: "Icon", default: "" }),
79
- iconSize: B({ title: "Icon Size", default: 24 }),
80
- iconPos: I({
81
- title: "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",
82
83
  default: "order-last",
83
84
  options: [
84
- { title: "Start", value: "order-first" },
85
- { title: "End", value: "order-last" }
85
+ { title: "web_blocks.start", value: "order-first" },
86
+ { title: "web_blocks.end", value: "order-last" }
86
87
  ]
87
88
  })
88
89
  }
89
90
  }, me = (e) => {
90
- const { blockProps: l, styles: t, htmlCode: a, inBuilder: o } = e;
91
- return o ? /* @__PURE__ */ n.jsxs("div", { className: "relative", children: [
92
- o ? /* @__PURE__ */ n.jsx("div", { ...l, ...t, className: "absolute z-20 h-full w-full" }) : null,
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,
93
94
  m.createElement("div", {
94
95
  ...t,
95
- dangerouslySetInnerHTML: { __html: a.replace(/<script.*?>.*?<\/script>/g, "") }
96
+ dangerouslySetInnerHTML: { __html: s.replace(/<script.*?>.*?<\/script>/g, "") }
96
97
  })
97
98
  ] }) : m.createElement("div", {
98
99
  ...l,
99
100
  ...t,
100
- dangerouslySetInnerHTML: { __html: a }
101
+ dangerouslySetInnerHTML: { __html: s }
101
102
  });
102
- }, he = {
103
+ }, fe = {
103
104
  type: "CustomHTML",
104
- label: "Custom HTML",
105
+ label: "web_blocks.custom_html",
105
106
  category: "core",
106
- icon: O,
107
+ icon: V,
107
108
  group: "advanced",
108
109
  props: {
109
- styles: f({ default: "" }),
110
- htmlCode: $({
111
- title: "HTML Code",
112
- default: "<div><p>HTML Snippet goes here...</p></div>",
113
- placeholder: "Enter custom HTML code here"
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"
114
115
  })
115
116
  },
116
117
  canAcceptBlock: () => !1
117
- }, ye = m.memo(
118
+ }, he = m.memo(
118
119
  (e) => {
119
120
  const { blockProps: l, styles: t } = e;
120
121
  return m.createElement("div", { ...l, ...t });
121
122
  }
122
- ), ge = {
123
+ ), ke = {
123
124
  type: "EmptyBox",
124
- label: "Empty Box",
125
+ label: "web_blocks.empty_box",
125
126
  category: "core",
126
127
  group: "basic",
127
128
  props: {
128
- styles: f({ default: "" })
129
- },
130
- canAcceptBlock: () => !1
131
- }, be = (e) => {
132
- const { blockProps: l, styles: t, content: a, level: o = "h1", children: s = null } = e;
133
- return s ? m.createElement(o, { ...t, ...l }, s) : m.createElement(o, {
129
+ styles: p({ default: "" })
130
+ }
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
- }, ke = {
140
+ }, ge = {
141
141
  type: "Heading",
142
- label: "Heading",
142
+ label: "web_blocks.heading",
143
143
  category: "core",
144
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 ce = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
157
157
  { value: "h6", title: "h6" }
158
158
  ]
159
159
  }),
160
- styles: f({ default: "text-3xl" }),
161
- content: _({ 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 se(e.children) ? m.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 }
171
+ dangerouslySetInnerHTML: { __html: s }
172
172
  }) : m.createElement("p", { ...t, ...l }, e.children);
173
- }, ve = {
173
+ }, we = {
174
174
  type: "Paragraph",
175
- label: "Paragraph",
175
+ label: "web_blocks.paragraph",
176
176
  category: "core",
177
177
  icon: W,
178
178
  group: "typography",
179
179
  props: {
180
- styles: f({ default: "" }),
181
- content: _({
182
- title: "Content",
180
+ styles: p({ default: "" }),
181
+ content: j({
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
- }, we = (e) => {
188
- const { blockProps: l, styles: t, content: a, children: o = null, tag: s } = e;
189
- return o ? m.createElement("span", { ...t, ...l }, o) : m.createElement(s || "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
- }, Ie = {
195
+ }, ve = {
196
196
  type: "Span",
197
- label: "Span",
197
+ label: "web_blocks.span",
198
198
  category: "core",
199
199
  group: "typography",
200
200
  props: {
201
- styles: f({ default: "" }),
202
- content: _({ title: "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
217
  }, Be = {
218
218
  type: "RichText",
219
- label: "Rich Text",
219
+ label: "web_blocks.richtext",
220
220
  category: "core",
221
221
  icon: X,
222
222
  group: "typography",
223
223
  props: {
224
- styles: f({ default: "" }),
225
- content: S({
226
- title: "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
- }, _e = (e) => {
231
- const { blockProps: l, link: t, children: a, styles: o, inBuilder: s, content: r } = e;
232
- return !a && k(o == null ? void 0 : o.className) && k(r) ? /* @__PURE__ */ n.jsx(x, { inBuilder: s }) : s ? a ? /* @__PURE__ */ n.jsx("span", { ...l, ...o, children: a }) : m.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
234
  ...o,
235
- dangerouslySetInnerHTML: { __html: r }
236
- }) : a ? /* @__PURE__ */ n.jsx("a", { href: (t == null ? void 0 : t.href) || "#/", target: t == null ? void 0 : t.target, ...l, ...o, children: a }) : m.createElement("a", {
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
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: r }
242
+ dangerouslySetInnerHTML: { __html: c }
243
243
  });
244
- }, Ce = {
244
+ }, Le = {
245
245
  type: "Link",
246
- label: "Link",
246
+ label: "web_blocks.link",
247
247
  category: "core",
248
248
  icon: Y,
249
249
  group: "basic",
250
250
  props: {
251
- styles: f({ default: "" }),
252
- content: p({ title: "Content", default: "" }),
253
- link: q({
254
- title: "Link",
251
+ styles: p({ default: "" }),
252
+ content: b({ title: "web_blocks.content", default: "" }),
253
+ link: D({
254
+ title: "web_blocks.link",
255
255
  default: { type: "page", target: "_self", href: "#" }
256
256
  })
257
257
  },
258
258
  canAcceptBlock: (e) => e !== "Link"
259
- }, D = (e, ...l) => ({
259
+ }, R = (e, ...l) => ({
260
260
  ...e,
261
- className: C(e.className, ...l)
262
- }), Se = (e) => {
263
- const { blockProps: l, children: t, styles: a, inBuilder: o, content: s, href: r } = e, { hrefType: c, autoplay: i, maxWidth: d, backdropColor: y, galleryName: h } = e, b = D(a, "cb-lightbox");
264
- if (!t && k(a == null ? void 0 : a.className) && k(s))
265
- return /* @__PURE__ */ n.jsx(x, { inBuilder: o });
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
266
  if (o)
267
- return t ? /* @__PURE__ */ n.jsx("span", { ...l, ...b, children: t }) : m.createElement("span", {
267
+ return t ? /* @__PURE__ */ a.jsx("span", { ...l, ...y, children: t }) : m.createElement("span", {
268
268
  ...l,
269
- ...b,
270
- dangerouslySetInnerHTML: { __html: s }
269
+ ...y,
270
+ dangerouslySetInnerHTML: { __html: n }
271
271
  });
272
- const v = {};
273
- return v["data-vbtype"] = c, i && (v["data-autoplay"] = "true"), d && (v["data-maxwidth"] = d + "px"), y && (v["data-overlay"] = y), h && (v["data-gall"] = h), t ? /* @__PURE__ */ n.jsx("a", { ...v, href: r || "#/", ...l, ...b, children: t }) : m.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
- ...b,
276
- ...v,
277
- href: r || "#",
278
- dangerouslySetInnerHTML: { __html: s }
275
+ ...y,
276
+ ...w,
277
+ href: c || "#",
278
+ dangerouslySetInnerHTML: { __html: n }
279
279
  });
280
- }, je = {
280
+ }, Se = {
281
281
  type: "LightBoxLink",
282
- label: "LightBox Link",
282
+ label: "web_blocks.lightbox_link",
283
283
  category: "core",
284
- icon: R,
284
+ icon: A,
285
285
  group: "basic",
286
286
  props: {
287
- styles: f({ default: "" }),
288
- content: p({ title: "Content", default: "Link text or drop blocks inside" }),
289
- href: p({ title: "Href", default: "" }),
290
- hrefType: I({
291
- title: "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: "video " },
295
- { value: "iframe", title: "iframe" },
296
- { value: "inline", title: "inline" },
297
- { value: "ajax", title: "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: "Autoplay video", default: !1 }),
301
- maxWidth: B({ title: "Max Width", default: "" }),
302
- backdropColor: p({ title: "Backdrop Color", default: "" }),
303
- galleryName: p({ title: "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
306
  }, Me = (e) => {
307
- const { blockProps: l, children: t, listType: a, styles: o, tag: s, inBuilder: r } = e, c = C(w(o, "className", ""), a);
308
- return !t && k(o == null ? void 0 : o.className) ? /* @__PURE__ */ n.jsx(x, { inBuilder: r }) : m.createElement(
309
- s || (a === "list-decimal" ? "ol" : "ul"),
310
- { ...l, ...o, className: c },
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
- }, Te = {
313
+ }, $e = {
314
314
  type: "List",
315
- label: "List",
315
+ label: "web_blocks.list",
316
316
  icon: Z,
317
317
  category: "core",
318
318
  group: "basic",
319
319
  props: {
320
- styles: f({ default: "" }),
321
- listType: I({
322
- title: "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: "None" },
326
- { value: "list-disc", title: "Disc" },
327
- { value: "list-decimal", title: "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
  },
@@ -354,78 +354,78 @@ const ce = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
354
354
  }
355
355
  ]
356
356
  }, Ee = (e) => {
357
- const { blockProps: l, content: t, styles: a, children: o, tag: s } = e;
358
- return o ? m.createElement(s || "li", { ...a, ...l }, o) : m.createElement(s || "li", {
359
- ...a,
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
364
  }, Ne = {
365
365
  type: "ListItem",
366
- label: "List Item",
366
+ label: "web_blocks.listitem",
367
367
  icon: J,
368
368
  category: "core",
369
369
  group: "basic",
370
370
  props: {
371
- styles: f({ default: "" }),
372
- content: _({ title: "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
376
  }, Pe = (e) => {
377
- const { blockProps: l, icon: t, styles: a, width: o, inBuilder: s, height: r } = e, c = D(a, C(o ? `w-[${o}px]` : "", r ? `h-[${r}px]` : ""));
378
- if (k(t))
379
- return /* @__PURE__ */ n.jsx(x, { inBuilder: s, className: "h-8 w-14" });
380
- const i = t.replace(/<svg /g, '<svg class="w-[inherit] h-[inherit]" ');
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
381
  return m.createElement("span", {
382
382
  ...l,
383
- ...c,
384
- dangerouslySetInnerHTML: { __html: i }
383
+ ...i,
384
+ dangerouslySetInnerHTML: { __html: r }
385
385
  });
386
- }, $e = {
386
+ }, Te = {
387
387
  type: "Icon",
388
- label: "Icon",
388
+ label: "web_blocks.icon",
389
389
  category: "core",
390
390
  icon: K,
391
391
  group: "media",
392
392
  props: {
393
- styles: f({ default: "text-black" }),
394
- icon: T({
395
- title: "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: B({ title: "Width", default: "" }),
399
- height: B({ title: "Height", default: "" })
398
+ width: B({ title: "web_blocks.width", default: "" }),
399
+ height: B({ title: "web_blocks.height", default: "" })
400
400
  }
401
401
  }, He = (e) => {
402
- const { blockProps: l, image: t, styles: a, alt: o, height: s, width: r } = e;
403
- return k(t) ? /* @__PURE__ */ n.jsx(x, { className: "h-36" }) : m.createElement("img", {
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
407
  alt: o,
408
408
  loading: "lazy",
409
- height: s,
410
- width: r
409
+ height: n,
410
+ width: c
411
411
  });
412
- }, Re = {
412
+ }, Ae = {
413
413
  type: "Image",
414
- label: "Image",
414
+ label: "web_blocks.image",
415
415
  category: "core",
416
- icon: R,
416
+ icon: A,
417
417
  group: "media",
418
418
  props: {
419
- styles: f({ default: "" }),
419
+ styles: p({ default: "" }),
420
420
  image: M({
421
421
  title: "Image",
422
422
  default: "https://fakeimg.pl/400x200?text=Choose&font=bebas"
423
423
  }),
424
- alt: p({ title: "Alt", default: "" }),
425
- width: p({ title: "Width", default: "" }),
426
- height: p({ title: "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
- }, 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_-]+)/, Ae = (e) => {
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
429
  if (E.test(e)) {
430
430
  const l = e.match(E);
431
431
  return l ? `https://www.youtube.com/embed/${l[4]}` : e;
@@ -439,77 +439,77 @@ const ce = ({ className: e = "", inBuilder: l }) => l ? /* @__PURE__ */ n.jsx("d
439
439
  return l ? `https://www.dailymotion.com/embed/video/${l[4]}` : e;
440
440
  }
441
441
  return null;
442
- }, ze = m.memo(
442
+ }, qe = m.memo(
443
443
  (e) => {
444
- const { blockProps: l, inBuilder: t, styles: a, url: o, controls: s } = e, r = w(s, "autoPlay", !1), c = w(s, "controls", !1), i = r || w(s, "muted", !0), d = w(s, "loop", !1);
445
- if (k(o))
446
- return /* @__PURE__ */ n.jsx(x, { inBuilder: t, className: "h-36" });
447
- let y = Ae(o), h = null;
448
- if (y) {
449
- if (!k(y)) {
450
- const b = [];
451
- b.push(`autoplay=${r ? 1 : 0}`), b.push(`controls=${s ? 1 : 0}`), b.push(`mute=${i ? 1 : 0}&muted=${i ? 1 : 0}`), b.push(`loop=${d ? 1 : 0}`), y = `${y}?${b.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 = m.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 = m.createElement("video", {
462
+ f = m.createElement("video", {
463
463
  ...l,
464
464
  className: "absolute inset-0 w-full h-full",
465
465
  src: o,
466
- controls: c,
467
- muted: i,
468
- autoPlay: t ? !1 : r,
466
+ controls: i,
467
+ muted: r,
468
+ autoPlay: t ? !1 : c,
469
469
  loop: d
470
470
  });
471
- return /* @__PURE__ */ n.jsx("div", { ...re(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, ...ie(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: "Video",
478
+ label: "web_blocks.video",
479
479
  category: "core",
480
480
  icon: Q,
481
481
  group: "media",
482
482
  props: {
483
- styles: f({ default: "" }),
484
- url: p({
485
- title: "Video URL",
483
+ styles: p({ default: "" }),
484
+ url: b({
485
+ title: "web_blocks.video_url",
486
486
  default: "https://www.youtube.com/watch?v=9xwazD5SyVg&ab_channel=MaximilianMustermann"
487
487
  }),
488
488
  controls: F({
489
- title: "Controls",
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 qe(e) {
500
- return V({ 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
502
  const Fe = (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 } });
505
- }, Ve = {
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
+ }, Oe = {
506
506
  type: "CustomScript",
507
- label: "Custom Script",
507
+ label: "web_blocks.custom_script",
508
508
  category: "core",
509
- icon: qe,
509
+ icon: De,
510
510
  group: "advanced",
511
511
  props: {
512
- scripts: $({
512
+ scripts: T({
513
513
  title: "Script",
514
514
  default: "",
515
515
  placeholder: "<script>console.log('Hello, world!');<\/script>"
@@ -519,18 +519,18 @@ const Fe = (e) => {
519
519
  }, Ue = (e) => {
520
520
  const { blockProps: l, styles: t } = e;
521
521
  return m.createElement("hr", { ...t, ...l });
522
- }, Oe = {
522
+ }, Ve = {
523
523
  type: "Divider",
524
- label: "Divider",
524
+ label: "web_blocks.divider",
525
525
  category: "core",
526
526
  icon: ee,
527
527
  group: "basic",
528
528
  props: {
529
- styles: f({ 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
531
  }, Ge = () => null, We = {
532
532
  type: "Dark Mode",
533
- label: "Dark Mode",
533
+ label: "web_blocks.dark_mode",
534
534
  category: "core",
535
535
  icon: te,
536
536
  group: "advanced",
@@ -584,20 +584,20 @@ const Fe = (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
- }, Xe = (e) => e.inBuilder || e.forceWrapper ? /* @__PURE__ */ n.jsx("span", { "data-ai-key": "content", ...e.blockProps, children: e.content }) : `${e.content}`, Ye = {
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: "Text",
589
+ label: "web_blocks.text",
590
590
  hidden: !0,
591
591
  category: "core",
592
592
  group: "typography",
593
- icon: A,
593
+ icon: z,
594
594
  props: {
595
- content: _({ title: "Content", defaultValue: "" })
595
+ content: j({ title: "web_blocks.content", defaultValue: "" })
596
596
  }
597
597
  }, Ze = (e) => {
598
- const { blockProps: l, backgroundImage: t, children: a, styles: o } = e;
599
- let s = {};
600
- return t && (s = { backgroundImage: `url(${t})` }), m.createElement("div", { ...l, ...o, style: s }, a);
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
601
  }, Je = {
602
602
  type: "Body",
603
603
  label: "Body",
@@ -605,7 +605,7 @@ const Fe = (e) => {
605
605
  group: "basic",
606
606
  hidden: !0,
607
607
  props: {
608
- styles: f({ default: "font-body antialiased" }),
608
+ styles: p({ default: "font-body antialiased" }),
609
609
  backgroundImage: M({ title: "Background Image" })
610
610
  },
611
611
  canAcceptBlock: () => !0,
@@ -621,156 +621,153 @@ const Fe = (e) => {
621
621
  category: "core",
622
622
  group: "basic",
623
623
  hidden: !0,
624
- icon: A,
624
+ icon: z,
625
625
  props: {
626
- styles: f({ default: "" })
626
+ styles: p({ default: "" })
627
627
  }
628
628
  }, et = (e) => {
629
- const { blockProps: l, errorMessage: t, name: a, _type: o, successMessage: s, action: r, styles: c, children: i } = e;
630
- let d = i;
631
- i || (d = /* @__PURE__ */ n.jsx(x, {}));
632
- const y = {
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": s,
644
+ "data-success": n,
645
645
  method: "post",
646
- action: r,
646
+ action: c,
647
647
  ...l,
648
- ...c,
648
+ ...i,
649
649
  children: [
650
- /* @__PURE__ */ n.jsx("div", { ...h }),
651
- /* @__PURE__ */ n.jsx("input", { name: "formname", type: "hidden", value: a || o }),
650
+ /* @__PURE__ */ a.jsx("div", { ...f }),
651
+ /* @__PURE__ */ a.jsx("input", { name: "formname", type: "hidden", value: s || o }),
652
652
  d
653
653
  ]
654
654
  }
655
655
  );
656
656
  }, tt = {
657
657
  type: "Form",
658
- label: "Form",
658
+ label: "web_blocks.form",
659
659
  category: "core",
660
660
  icon: le,
661
661
  group: "form",
662
- hidden: !0,
663
662
  props: {
664
- styles: f({ default: "" }),
665
- action: p({
666
- title: "Submit URL",
663
+ styles: p({ default: "" }),
664
+ action: b({
665
+ title: "web_blocks.submit_url",
667
666
  default: "/api/form/submit"
668
667
  }),
669
- errorMessage: S({
670
- title: "Error Message",
668
+ errorMessage: C({
669
+ title: "web_blocks.error_message",
671
670
  default: "Something went wrong. Please try again"
672
671
  }),
673
- successMessage: S({
674
- title: "Success Message",
672
+ successMessage: C({
673
+ title: "web_blocks.success_message",
675
674
  default: "Thank you for your submission."
676
675
  })
677
676
  },
678
677
  canAcceptBlock: () => !0
679
678
  }, lt = (e) => {
680
- const { blockProps: l, inBuilder: t, label: a, styles: o, inputStyles: s, icon: r, iconPos: c } = e, i = L(), d = {
679
+ const { blockProps: l, inBuilder: t, label: s, styles: o, inputStyles: n, icon: c, iconPos: i } = e, r = I(), d = {
681
680
  "x-bind:disabled": "formLoading"
682
681
  };
683
- return /* @__PURE__ */ n.jsxs(
682
+ return /* @__PURE__ */ a.jsxs(
684
683
  "button",
685
684
  {
686
- id: i,
685
+ id: r,
687
686
  ...d,
688
- ...s,
687
+ ...n,
689
688
  ...o,
690
689
  ...l || {},
691
690
  type: t ? "button" : "submit",
692
691
  children: [
693
- a,
694
- r && /* @__PURE__ */ n.jsx("span", { className: c, dangerouslySetInnerHTML: { __html: r } })
692
+ s,
693
+ c && /* @__PURE__ */ a.jsx("span", { className: i, dangerouslySetInnerHTML: { __html: c } })
695
694
  ]
696
695
  }
697
696
  );
698
697
  }, ot = {
699
698
  type: "FormButton",
700
- label: "Submit Button",
699
+ label: "web_blocks.submit_button",
701
700
  category: "core",
702
701
  icon: H,
703
702
  group: "form",
704
- hidden: !0,
705
703
  props: {
706
- label: p({ title: "Label", default: "Submit" }),
707
- styles: f({
704
+ label: b({ title: "web_blocks.label", default: "Submit" }),
705
+ styles: p({
708
706
  default: "text-white bg-primary disabled:bg-gray-400 px-4 py-2 rounded-global flex items-center gap-x-2"
709
707
  }),
710
- icon: T({ title: "Icon", default: "" }),
711
- iconPos: I({
712
- title: "Icon Position",
708
+ icon: $({ title: "Icon", default: "" }),
709
+ iconPos: v({
710
+ title: "web_blocks.icon_position",
713
711
  default: "order-last",
714
712
  options: [
715
- { title: "Start", value: "order-first" },
716
- { title: "End", value: "order-last" }
713
+ { title: "web_blocks.start", value: "order-first" },
714
+ { title: "web_blocks.end", value: "order-last" }
717
715
  ]
718
716
  })
719
717
  }
720
- }, at = (e) => {
718
+ }, st = (e) => {
721
719
  const {
722
720
  blockProps: l,
723
721
  label: t,
724
- placeholder: a,
722
+ placeholder: s,
725
723
  styles: o,
726
- inputStyles: s,
727
- showLabel: r,
728
- required: c,
729
- inputType: i = "text",
724
+ inputStyles: n,
725
+ showLabel: c,
726
+ required: i,
727
+ inputType: r = "text",
730
728
  inBuilder: d,
731
- fieldName: y
732
- } = e, h = L();
733
- return !r || i === "submit" ? (i === "submit" && (l.value = t), /* @__PURE__ */ n.jsx(
729
+ fieldName: h
730
+ } = e, f = I();
731
+ return !c || r === "submit" ? (r === "submit" && (l.value = t), /* @__PURE__ */ a.jsx(
734
732
  "input",
735
733
  {
736
- id: h,
737
- name: y,
734
+ id: f,
735
+ name: h,
738
736
  readOnly: d,
739
737
  ...l,
740
- ...s,
738
+ ...n,
741
739
  ...o,
742
- type: i,
743
- placeholder: a,
744
- required: c
740
+ type: r,
741
+ placeholder: s,
742
+ required: i
745
743
  }
746
- )) : /* @__PURE__ */ n.jsxs("div", { ...o, ...l, children: [
747
- r && /* @__PURE__ */ n.jsx("label", { htmlFor: h, children: t }),
748
- /* @__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(
749
747
  "input",
750
748
  {
751
- name: y,
749
+ name: h,
752
750
  readOnly: d,
753
- ...s,
754
- id: h,
755
- type: i,
756
- placeholder: a,
757
- required: c
751
+ ...n,
752
+ id: f,
753
+ type: r,
754
+ placeholder: s,
755
+ required: i
758
756
  }
759
757
  )
760
758
  ] });
761
- }, nt = {
759
+ }, at = {
762
760
  type: "Input",
763
- label: "Input",
761
+ label: "web_blocks.input",
764
762
  category: "core",
765
- icon: z,
763
+ icon: q,
766
764
  group: "form",
767
- hidden: !0,
768
765
  props: {
769
- styles: f({ default: "" }),
770
- fieldName: p({ title: "Field Name", default: "input" }),
771
- inputType: I({
772
- title: "Type",
773
- options: j(
766
+ styles: p({ default: "" }),
767
+ fieldName: b({ title: "Field Name", default: "input" }),
768
+ inputType: v({
769
+ title: "web_blocks.type",
770
+ options: S(
774
771
  ["text", "email", "password", "number", "tel", "file", "hidden", "range", "submit", "color", "date", "time"],
775
772
  (e) => ({
776
773
  value: e,
@@ -779,204 +776,200 @@ const Fe = (e) => {
779
776
  ),
780
777
  default: "text"
781
778
  }),
782
- value: p({ title: "Value", default: "" }),
783
- showLabel: g({ title: "Show label", default: !0 }),
784
- inputStyles: f({ default: "w-full p-1" }),
785
- label: p({ title: "Label", default: "Label" }),
786
- placeholder: p({
787
- title: "Placeholder",
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
+ placeholder: b({
784
+ title: "web_blocks.placeholder",
788
785
  default: "Placeholder"
789
786
  }),
790
- required: g({ title: "Required", default: !1 })
787
+ required: k({ title: "web_blocks.required", default: !1 })
791
788
  }
792
- }, st = (e) => {
793
- const { blockProps: l, fieldName: t, label: a, styles: o, inputStyles: s, checked: r, required: c, showLabel: i = !0 } = e, d = L();
794
- return i ? /* @__PURE__ */ n.jsxs("div", { ...o, ...l, children: [
795
- /* @__PURE__ */ n.jsx("input", { ...s, name: t, id: d, type: "radio", required: c, defaultChecked: r }),
796
- a && /* @__PURE__ */ n.jsx("label", { htmlFor: d, children: a })
797
- ] }) : /* @__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(
798
795
  "input",
799
796
  {
800
797
  id: d,
801
798
  ...l,
802
- ...s,
799
+ ...n,
803
800
  ...o,
804
801
  type: "radio",
805
- required: c,
806
- checked: r,
802
+ required: i,
803
+ checked: c,
807
804
  name: t
808
805
  }
809
806
  );
810
- }, rt = {
807
+ }, ct = {
811
808
  type: "Radio",
812
- label: "Radio",
809
+ label: "web_blocks.radio",
813
810
  category: "core",
814
811
  icon: oe,
815
812
  group: "form",
816
- hidden: !0,
817
813
  props: {
818
- styles: f({ default: "flex items-center w-max gap-x-2" }),
819
- fieldName: p({ title: "Field Name", default: "radio" }),
820
- label: p({ title: "Label", default: "Label" }),
821
- checked: g({ title: "Checked", default: !1 }),
822
- 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 })
823
819
  }
824
- }, it = (e) => {
820
+ }, rt = (e) => {
825
821
  const {
826
822
  blockProps: l,
827
823
  fieldName: t,
828
- label: a,
824
+ label: s,
829
825
  placeholder: o,
830
- styles: s,
831
- inputStyles: r,
832
- required: c,
833
- showLabel: i,
826
+ styles: n,
827
+ inputStyles: c,
828
+ required: i,
829
+ showLabel: r,
834
830
  _multiple: d = !1
835
- } = e, y = L();
836
- return i ? /* @__PURE__ */ n.jsxs("div", { ...s, children: [
837
- i && /* @__PURE__ */ n.jsx("label", { htmlFor: y, children: a }),
838
- /* @__PURE__ */ n.jsxs("select", { ...r, id: y, required: c, multiple: d, name: t, children: [
839
- /* @__PURE__ */ n.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: o }),
840
- j(e.options, (h) => /* @__PURE__ */ n.jsx(
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(
841
837
  "option",
842
838
  {
843
- selected: w(h, "selected", !1),
844
- value: h.value,
845
- dangerouslySetInnerHTML: { __html: h.label }
839
+ selected: x(f, "selected", !1),
840
+ value: f.value,
841
+ dangerouslySetInnerHTML: { __html: f.label }
846
842
  },
847
- h.value
843
+ f.value
848
844
  ))
849
845
  ] })
850
- ] }) : /* @__PURE__ */ n.jsxs(
846
+ ] }) : /* @__PURE__ */ a.jsxs(
851
847
  "select",
852
848
  {
853
- id: y,
854
- ...s,
849
+ id: h,
850
+ ...n,
855
851
  ...l,
856
- required: c,
852
+ required: i,
857
853
  multiple: d,
858
854
  name: t,
859
855
  children: [
860
- /* @__PURE__ */ n.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: o }),
861
- j(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(
862
858
  "option",
863
859
  {
864
- selected: w(h, "selected", !1),
865
- value: h.value,
866
- dangerouslySetInnerHTML: { __html: h.label }
860
+ selected: x(f, "selected", !1),
861
+ value: f.value,
862
+ dangerouslySetInnerHTML: { __html: f.label }
867
863
  },
868
- h.value
864
+ f.value
869
865
  ))
870
866
  ]
871
867
  }
872
868
  );
873
- }, ct = {
869
+ }, it = {
874
870
  type: "Select",
875
- label: "Select",
871
+ label: "web_blocks.select",
876
872
  category: "core",
877
- icon: ae,
873
+ icon: se,
878
874
  group: "form",
879
- hidden: !0,
880
875
  props: {
881
- styles: f({ default: "" }),
882
- fieldName: p({ title: "Field Name", default: "select" }),
883
- showLabel: g({ title: "Show label", default: !0 }),
884
- inputStyles: f({ default: "w-full p-1" }),
885
- label: p({ title: "Label", default: "Label" }),
886
- placeholder: p({
887
- title: "Placeholder",
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
+ placeholder: b({
882
+ title: "web_blocks.placeholder",
888
883
  default: "Placeholder"
889
884
  }),
890
- required: g({ title: "Required", default: !1 }),
891
- _multiple: g({ title: "Multiple Choice", default: !1 }),
885
+ required: k({ title: "web_blocks.required", default: !1 }),
886
+ _multiple: k({ title: "web_blocks.multiple", default: !1 }),
892
887
  options: U({
893
- title: "Options",
888
+ title: "web_blocks.options",
894
889
  itemProperties: {
895
- label: p({ title: "Label", default: "" }),
896
- value: p({ title: "Value", default: "" })
890
+ label: b({ title: "web_blocks.label", default: "" }),
891
+ value: b({ title: "web_blocks.value", default: "" })
897
892
  }
898
893
  })
899
894
  }
900
895
  }, dt = (e) => {
901
- const { blockProps: l, fieldName: t, label: a, placeholder: o, styles: s, inputStyles: r, _rows: c, showLabel: i } = e, d = L();
902
- return i ? /* @__PURE__ */ n.jsxs("div", { ...s, ...l, children: [
903
- i && /* @__PURE__ */ n.jsx("label", { htmlFor: d, children: a }),
904
- /* @__PURE__ */ n.jsx("textarea", { name: t, ...r, id: d, placeholder: o, rows: c })
905
- ] }) : /* @__PURE__ */ n.jsx(
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(
906
901
  "textarea",
907
902
  {
908
903
  id: d,
909
904
  name: t,
910
905
  ...l,
911
- ...r,
912
- ...s,
906
+ ...c,
907
+ ...n,
913
908
  placeholder: o,
914
- rows: c
909
+ rows: i
915
910
  }
916
911
  );
917
912
  }, ut = {
918
913
  type: "TextArea",
919
- label: "TextArea",
914
+ label: "web_blocks.textarea",
920
915
  category: "core",
921
- icon: z,
916
+ icon: q,
922
917
  group: "form",
923
- hidden: !0,
924
918
  props: {
925
- fieldName: p({ title: "Field Name", default: "textarea" }),
926
- showLabel: g({ title: "Show label", default: !0 }),
927
- styles: f({ default: "" }),
928
- inputStyles: f({ default: "w-full p-1" }),
929
- label: p({ title: "Label", default: "Label" }),
930
- placeholder: p({
931
- title: "Placeholder",
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
+ placeholder: b({
925
+ title: "web_blocks.placeholder",
932
926
  default: "Placeholder"
933
927
  }),
934
- _rows: B({ title: "Rows", default: 3 })
928
+ _rows: B({ title: "web_blocks.rows", default: 3 })
935
929
  }
936
- }, pt = (e) => {
937
- const { blockProps: l, fieldName: t, label: a, styles: o, inputStyles: s, required: r, checked: c, showLabel: i = !0 } = e, d = L();
938
- return i ? /* @__PURE__ */ n.jsxs("div", { ...o, ...l, children: [
939
- /* @__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(
940
934
  "input",
941
935
  {
942
- ...s,
936
+ ...n,
943
937
  name: t,
944
938
  id: d,
945
939
  type: "checkbox",
946
- required: r,
947
- defaultChecked: c
940
+ required: c,
941
+ defaultChecked: i
948
942
  }
949
943
  ),
950
- a && a !== "Label" && /* @__PURE__ */ n.jsx("label", { htmlFor: d, children: a })
951
- ] }) : /* @__PURE__ */ n.jsx(
944
+ s && s !== "Label" && /* @__PURE__ */ a.jsx("label", { htmlFor: d, children: s })
945
+ ] }) : /* @__PURE__ */ a.jsx(
952
946
  "input",
953
947
  {
954
948
  id: d,
955
949
  ...l,
956
- ...s,
950
+ ...n,
957
951
  ...o,
958
952
  type: "checkbox",
959
- required: r,
953
+ required: c,
960
954
  name: t
961
955
  }
962
956
  );
963
- }, ft = {
957
+ }, pt = {
964
958
  type: "Checkbox",
965
- label: "Checkbox",
959
+ label: "web_blocks.checkbox",
966
960
  category: "core",
967
- icon: ne,
961
+ icon: ae,
968
962
  group: "form",
969
- hidden: !0,
970
963
  props: {
971
- fieldName: p({ title: "Field Name", default: "checkbox" }),
972
- styles: f({ default: "flex items-center gap-x-2" }),
973
- label: p({ title: "Label", default: "Label" }),
974
- checked: g({ title: "Checked", default: !1 }),
975
- required: g({ title: "Required", default: !1 })
964
+ fieldName: b({ title: "Field Name", default: "checkbox" }),
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 })
976
969
  }
977
- }, vt = () => {
978
- u(de, ue), u(ye, ge), u(pe, fe), u(be, ke), u(xe, ve), u(we, Ie), u(Le, Be), u(_e, Ce), u(Se, je), u(Me, Te), u(Ee, Ne), u(Pe, $e), u(He, Re), u(ze, De), u(me, he), u(Xe, Ye), u(et, tt), u(lt, ot), u(at, nt), u(pt, ft), u(st, rt), u(it, ct), u(dt, ut), u(Ke, Qe), u(Ze, Je), u(Fe, Ve), u(Ue, Oe), u(Ge, We);
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);
979
972
  };
980
973
  export {
981
- vt as loadWebBlocks
974
+ xt as loadWebBlocks
982
975
  };