@chaibuilder/sdk 1.1.18 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/dist/AddBlocks-57-vroWk.cjs +1 -0
  2. package/dist/AddBlocks-QvCc-oag.js +225 -0
  3. package/dist/BrandingOptions-arKT1zCy.cjs +1 -0
  4. package/dist/{BrandingOptions-zFJ28xmJ.js → BrandingOptions-mZXO7thQ.js} +27 -25
  5. package/dist/{CanvasArea-vTV3O27-.js → CanvasArea-59Gm0EZx.js} +581 -598
  6. package/dist/CanvasArea-jRg53jrS.cjs +59 -0
  7. package/dist/CurrentPage-MLObvs0K.cjs +1 -0
  8. package/dist/{CurrentPage-Ay7X9h9y.js → CurrentPage-YPI5QTjk.js} +17 -14
  9. package/dist/Functions-7jnEwJyw.js +15 -0
  10. package/dist/Functions-N3yhPYKY.cjs +1 -0
  11. package/dist/{Layers-CWnzKXMo.js → Layers-no2keK4N.js} +149 -146
  12. package/dist/Layers-x_mWeT_q.cjs +1 -0
  13. package/dist/MODIFIERS-2FeVfZQ9.cjs +1 -0
  14. package/dist/{MODIFIERS-MLfpKQY1.js → MODIFIERS-RiXS5Mn1.js} +7 -13
  15. package/dist/MarkAsGlobalBlock-S2BhHTsK.cjs +1 -0
  16. package/dist/{MarkAsGlobalBlock-uhj0kGZo.js → MarkAsGlobalBlock-SPWd6Flk.js} +9 -7
  17. package/dist/{PagesPanel-ALbBHaO3.js → PagesPanel-Q08uN4X3.js} +12 -9
  18. package/dist/PagesPanel-pOIuFPOA.cjs +1 -0
  19. package/dist/ProjectPanel-4bN_GyNm.cjs +1 -0
  20. package/dist/{ProjectPanel-tIDarI9R.js → ProjectPanel-zzYV9yrV.js} +25 -22
  21. package/dist/{Settings-5uDMY9SU.js → Settings-28A7R61i.js} +334 -331
  22. package/dist/Settings-KlTtgu3w.cjs +1 -0
  23. package/dist/{SidePanels-D6U95ur1.js → SidePanels--ZK6Iqou.js} +80 -77
  24. package/dist/SidePanels-eJBA_cUu.cjs +1 -0
  25. package/dist/{Topbar-_-1HX-EE.js → Topbar-ks1ckGLz.js} +15 -13
  26. package/dist/Topbar-u5XKdWgQ.cjs +1 -0
  27. package/dist/{UnsplashImages-mqK09h8E.js → UnsplashImages-8vJPuqrF.js} +25 -23
  28. package/dist/UnsplashImages-V8oKEHfi.cjs +1 -0
  29. package/dist/{UploadImages-IDkkRuhx.js → UploadImages-6N6UrjLo.js} +26 -24
  30. package/dist/UploadImages-eHYxwWAp.cjs +1 -0
  31. package/dist/_commonjsHelpers-UyOWmZb0.js +8 -0
  32. package/dist/_commonjsHelpers-wDK0ZLPo.cjs +1 -0
  33. package/dist/{add-page-modal-C1UGoRkw.js → add-page-modal-EHIYTW4T.js} +27 -24
  34. package/dist/add-page-modal-OvNXLGf0.cjs +1 -0
  35. package/dist/{confirm-alert-ea5xpncD.js → confirm-alert-biqvaLT-.js} +9 -7
  36. package/dist/confirm-alert-f3DYO5Hj.cjs +1 -0
  37. package/dist/controls-Dy1qa8Dc.cjs +1 -0
  38. package/dist/controls-XPXGHKht.js +182 -0
  39. package/dist/core.cjs +1 -1
  40. package/dist/core.d.ts +10 -1
  41. package/dist/core.js +60 -57
  42. package/dist/delete-page-modal-U4yiuhx0.cjs +1 -0
  43. package/dist/{delete-page-modal-0GxR128b.js → delete-page-modal-qZJCk_JH.js} +15 -12
  44. package/dist/email-blocks.cjs +1 -0
  45. package/dist/email-blocks.d.ts +3 -0
  46. package/dist/email-blocks.js +35 -0
  47. package/dist/{form-irY39wvJ.js → form-Moz_psOw.js} +16 -16
  48. package/dist/form-lJhy9DEC.cjs +1 -0
  49. package/dist/functions-Ox_svtKm.cjs +1 -0
  50. package/dist/functions-xIebp8Aw.js +23 -0
  51. package/dist/html-to-json-dfALTAdG.cjs +1 -0
  52. package/dist/{html-to-json-wmbV9eZP.js → html-to-json-xKBERAI1.js} +47 -46
  53. package/dist/index-IIJ_o44s.cjs +1 -0
  54. package/dist/{index-qEix1meh.js → index-QEchoZ98.js} +8 -8
  55. package/dist/{index-0OqmBgqo.js → index-_OgCuSUz.js} +528 -533
  56. package/dist/{index-npVo1wi3.cjs → index-hMoPNZVn.cjs} +2 -2
  57. package/dist/{jsx-runtime-NV737rRe.js → jsx-runtime-WbnYoNE9.js} +1 -1
  58. package/dist/{jsx-runtime-WUGKV8jN.cjs → jsx-runtime-Z_BpKhVy.cjs} +7 -7
  59. package/dist/lib.cjs +2 -2
  60. package/dist/lib.d.ts +1 -1
  61. package/dist/lib.js +47 -44
  62. package/dist/page-viewer-WhM1FSU0.cjs +1 -0
  63. package/dist/{page-viewer-mgnZt6nO.js → page-viewer-zFLkUu2I.js} +17 -14
  64. package/dist/{project-general-setting-M52W-vUp.js → project-general-setting-MWGOOurD.js} +16 -13
  65. package/dist/project-general-setting-y8daY7V9.cjs +1 -0
  66. package/dist/project-seo-setting-9JGBPzcA.cjs +1 -0
  67. package/dist/{project-seo-setting-EhqUcTKy.js → project-seo-setting-dXclexQW.js} +15 -13
  68. package/dist/render.cjs +1 -1
  69. package/dist/render.d.ts +1 -1
  70. package/dist/render.js +50 -49
  71. package/dist/server.cjs +1 -1
  72. package/dist/server.d.ts +1 -1
  73. package/dist/server.js +11 -11
  74. package/dist/single-page-detail--xPv74bX.cjs +1 -0
  75. package/dist/{single-page-detail-61UDUgWG.js → single-page-detail-C48IPzbd.js} +77 -74
  76. package/dist/studio.cjs +1 -1
  77. package/dist/studio.js +11 -8
  78. package/dist/ui.cjs +1 -1
  79. package/dist/ui.d.ts +3 -3
  80. package/dist/ui.js +144 -142
  81. package/dist/useAddBlockByDrop-_nd8yZBa.cjs +1 -0
  82. package/dist/useAddBlockByDrop-uPXvrg4G.js +20 -0
  83. package/dist/{utils-XsPKXMVo.js → utils-AvyFzbPC.js} +26 -35
  84. package/dist/utils-PTxFk6qT.cjs +1 -0
  85. package/dist/web-blocks.cjs +9 -0
  86. package/dist/web-blocks.d.ts +3 -0
  87. package/dist/web-blocks.js +1033 -0
  88. package/package.json +5 -2
  89. package/dist/AddBlocks-sKF4ti68.js +0 -222
  90. package/dist/AddBlocks-yPovJXtD.cjs +0 -1
  91. package/dist/BrandingOptions-TRVyCvVq.cjs +0 -1
  92. package/dist/CanvasArea-xxqOiENt.cjs +0 -59
  93. package/dist/CurrentPage-ju6otPNk.cjs +0 -1
  94. package/dist/Layers-d9OU0HRE.cjs +0 -1
  95. package/dist/MODIFIERS-WFzDQfiT.cjs +0 -1
  96. package/dist/MarkAsGlobalBlock-CDmEHNx7.cjs +0 -1
  97. package/dist/PagesPanel-F9Cdi4Pf.cjs +0 -1
  98. package/dist/ProjectPanel-T49RUDyt.cjs +0 -1
  99. package/dist/Settings-eZnusNbR.cjs +0 -1
  100. package/dist/SidePanels-BVM5JwGC.cjs +0 -1
  101. package/dist/Topbar-gQxbcPtG.cjs +0 -1
  102. package/dist/UnsplashImages-PNp5fYCc.cjs +0 -1
  103. package/dist/UploadImages-BoSSsLtD.cjs +0 -1
  104. package/dist/add-page-modal-HP1yv9yJ.cjs +0 -1
  105. package/dist/confirm-alert-dHRDZrA1.cjs +0 -1
  106. package/dist/controls-QnyBNkXG.cjs +0 -36
  107. package/dist/controls-kEuiMMDf.js +0 -4600
  108. package/dist/delete-page-modal-yOgfPcHr.cjs +0 -1
  109. package/dist/form-6qGAOYI3.cjs +0 -1
  110. package/dist/functions-86L6n983.js +0 -23
  111. package/dist/functions-Jr7gX_RX.cjs +0 -1
  112. package/dist/html-to-json-AqLy6ye-.cjs +0 -1
  113. package/dist/index-d55M5MRz.cjs +0 -1
  114. package/dist/lodash-2us0VT8I.cjs +0 -36
  115. package/dist/lodash-3gkdNK5u.js +0 -4538
  116. package/dist/page-viewer-G2YIKVSt.cjs +0 -1
  117. package/dist/project-general-setting-sinIiBKe.cjs +0 -1
  118. package/dist/project-seo-setting-N0OnBCvh.cjs +0 -1
  119. package/dist/single-page-detail-oa-yTXhQ.cjs +0 -1
  120. package/dist/useAddBlockByDrop-5QW86HjG.js +0 -20
  121. package/dist/useAddBlockByDrop-Ckzuvu-s.cjs +0 -1
  122. package/dist/utils-37UXq2O5.cjs +0 -1
@@ -0,0 +1,1033 @@
1
+ import { j as a } from "./jsx-runtime-WbnYoNE9.js";
2
+ import * as d from "react";
3
+ import { S as c, f as v, o as C, g as I, m as T, u as f, q as M, T as j, c as H, b as A, r as h, h as D } from "./controls-XPXGHKht.js";
4
+ import { registerChaiBlock as u } from "@chaibuilder/runtime";
5
+ import { omit as q, isEmpty as k, isNull as $, get as _, map as S, noop as O } from "lodash-es";
6
+ import { c as w, g as x } from "./Functions-7jnEwJyw.js";
7
+ import { HeadingIcon as V, TextIcon as U, CursorTextIcon as W, ButtonIcon as R, Link1Icon as G, RowsIcon as Y, ColumnsIcon as X, SketchLogoIcon as Z, ImageIcon as J, VideoIcon as K, CodeIcon as Q, DividerHorizontalIcon as ee, SpaceBetweenVerticallyIcon as F, TableIcon as te, BorderTopIcon as le, BorderAllIcon as oe, ViewHorizontalIcon as re, DragHandleHorizontalIcon as se, GroupIcon as ae, LetterCaseToggleIcon as ne, InputIcon as z, DropdownMenuIcon as ie, CheckboxIcon as ce, RadiobuttonIcon as de } from "@radix-ui/react-icons";
8
+ import "./_commonjsHelpers-UyOWmZb0.js";
9
+ import "clsx";
10
+ import "tailwind-merge";
11
+ const g = ({ blockProps: l, className: e = "", styles: t = {} }) => /* @__PURE__ */ a.jsx(
12
+ "div",
13
+ {
14
+ ...l,
15
+ className: w("flex h-20 flex-col items-center justify-center", e),
16
+ ...q(t, ["className"]),
17
+ 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", children: /* @__PURE__ */ a.jsx("span", { className: "opacit flex items-center gap-x-1.5 text-xs font-semibold text-gray-400" }) })
18
+ }
19
+ ), ue = d.memo(
20
+ (l) => {
21
+ const { blockProps: e, backgroundImage: t, children: o, tag: r = "div", styles: s } = l;
22
+ if (!o && k(s == null ? void 0 : s.className))
23
+ return /* @__PURE__ */ a.jsx(g, { blockProps: e, styles: s });
24
+ let n = {};
25
+ return t && (n = { backgroundImage: `url(${t})` }), d.createElement(r, { ...e, ...s, style: n }, o);
26
+ }
27
+ );
28
+ u(ue, {
29
+ type: "Box",
30
+ label: "Box",
31
+ category: "core",
32
+ group: "basic",
33
+ props: {
34
+ styles: c({ default: "" }),
35
+ tag: v({
36
+ title: "Tag",
37
+ default: "div",
38
+ options: [
39
+ { value: "div", title: "div" },
40
+ { value: "header", title: "header" },
41
+ { value: "footer", title: "footer" },
42
+ { value: "section", title: "section" },
43
+ { value: "article", title: "article" },
44
+ { value: "aside", title: "aside" },
45
+ { value: "main", title: "main" },
46
+ { value: "nav", title: "nav" },
47
+ { value: "figure", title: "figure" },
48
+ { value: "details", title: "details" },
49
+ { value: "summary", title: "summary" },
50
+ { value: "dialog", title: "dialog" },
51
+ { value: "strike", title: "strike" },
52
+ { value: "caption", title: "caption" },
53
+ { value: "legend", title: "legend" },
54
+ { value: "figcaption", title: "figcaption" },
55
+ { value: "mark", title: "mark" }
56
+ ]
57
+ }),
58
+ backgroundImage: C({ title: "Background Image" })
59
+ }
60
+ });
61
+ const pe = (l) => {
62
+ const { blockProps: e, styles: t, content: o, level: r = "h1", children: s = null } = l;
63
+ return s ? d.createElement(r, { ...t, ...e }, s) : d.createElement(r, {
64
+ ...t,
65
+ ...e,
66
+ dangerouslySetInnerHTML: { __html: o }
67
+ });
68
+ };
69
+ u(pe, {
70
+ type: "Heading",
71
+ label: "Heading",
72
+ category: "core",
73
+ icon: V,
74
+ group: "basic",
75
+ props: {
76
+ level: v({
77
+ title: "Level",
78
+ default: "h1",
79
+ binding: !1,
80
+ options: [
81
+ { value: "h1", title: "h1" },
82
+ { value: "h2", title: "h2" },
83
+ { value: "h3", title: "h3" },
84
+ { value: "h4", title: "h4" },
85
+ { value: "h5", title: "h5" },
86
+ { value: "h6", title: "h6" }
87
+ ]
88
+ }),
89
+ styles: c({ default: "text-3xl" }),
90
+ content: I({ title: "Content", default: "Heading goes here" })
91
+ }
92
+ });
93
+ const me = (l) => {
94
+ const { blockProps: e, styles: t, content: o } = l;
95
+ return $(l.children) ? d.createElement("div", {
96
+ ...t,
97
+ ...e,
98
+ dangerouslySetInnerHTML: { __html: o }
99
+ }) : d.createElement("p", { ...t, ...e }, l.children);
100
+ };
101
+ u(me, {
102
+ type: "Paragraph",
103
+ label: "Paragraph",
104
+ category: "core",
105
+ icon: U,
106
+ group: "basic",
107
+ props: {
108
+ styles: c({ default: "" }),
109
+ content: I({
110
+ title: "Content",
111
+ 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."
112
+ })
113
+ }
114
+ });
115
+ const fe = (l) => {
116
+ const { blockProps: e, content: t, styles: o } = l;
117
+ return /* @__PURE__ */ a.jsx("div", { className: "prose max-w-full", children: /* @__PURE__ */ a.jsx("div", { ...e, ...o, dangerouslySetInnerHTML: { __html: t } }) });
118
+ };
119
+ u(fe, {
120
+ type: "RichText",
121
+ label: "Rich Text",
122
+ category: "core",
123
+ icon: W,
124
+ group: "basic",
125
+ props: {
126
+ styles: c({ default: "" }),
127
+ content: T({
128
+ title: "Content",
129
+ default: `Lorem Ipsum Rich Text Editor Demo
130
+
131
+ Welcome to our rich text editor demo! With our powerful editor, you can create stunning documents with ease. Let's explore some of its features:
132
+
133
+ Text Formatting: You can make text bold, italic, or underline it.
134
+ Lists:
135
+ Create ordered lists.
136
+ Craft unordered lists.
137
+ Utilize nested lists for organization.`
138
+ })
139
+ }
140
+ });
141
+ const be = (l) => {
142
+ const { blockProps: e, iconSize: t, icon: o, content: r, iconPos: s, styles: n, children: i } = l, p = o, m = i || /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
143
+ r,
144
+ p && /* @__PURE__ */ a.jsx(
145
+ "div",
146
+ {
147
+ style: { width: t + "px" },
148
+ className: s + (s === "order-first" ? " mr-2" : "ml-2") || "",
149
+ dangerouslySetInnerHTML: { __html: p }
150
+ }
151
+ )
152
+ ] });
153
+ return d.createElement("button", { ...e, ...n, type: "button" }, m);
154
+ };
155
+ u(be, {
156
+ type: "Button",
157
+ label: "Button",
158
+ category: "core",
159
+ icon: R,
160
+ group: "basic",
161
+ props: {
162
+ content: f({ title: "Label", default: "Button", multiLingual: !0 }),
163
+ styles: c({ default: "text-white bg-primary px-4 py-2 rounded-global flex items-center" }),
164
+ link: M({ title: "Link", default: { type: "page", href: "", target: "_blank" } }),
165
+ icon: j({ title: "Icon", default: "" }),
166
+ iconSize: H({ title: "Icon Size", default: 24 }),
167
+ iconPos: v({
168
+ title: "Icon Position",
169
+ default: "order-last",
170
+ options: [
171
+ { title: "Start", value: "order-first" },
172
+ { title: "End", value: "order-last" }
173
+ ]
174
+ })
175
+ }
176
+ });
177
+ const ye = (l) => {
178
+ const { blockProps: e, link: t, children: o, styles: r, inBuilder: s, content: n } = l;
179
+ return !o && k(r == null ? void 0 : r.className) && k(n) ? /* @__PURE__ */ a.jsx(g, { blockProps: e }) : s ? o ? /* @__PURE__ */ a.jsx("span", { "data-simulate": "a", ...e, ...r, children: o }) : d.createElement("span", {
180
+ ...e,
181
+ ...r,
182
+ href: t.href || "#",
183
+ target: t.target || "_self",
184
+ dangerouslySetInnerHTML: { __html: n },
185
+ "data-simulate": "a"
186
+ }) : o ? /* @__PURE__ */ a.jsx("a", { href: t.href || "#/", target: t.target, ...e, ...r, children: o }) : d.createElement("a", {
187
+ ...e,
188
+ ...r,
189
+ href: t.href || "#",
190
+ target: t.target || "_self",
191
+ dangerouslySetInnerHTML: { __html: n }
192
+ });
193
+ };
194
+ u(ye, {
195
+ type: "Link",
196
+ label: "Link",
197
+ category: "core",
198
+ icon: G,
199
+ group: "basic",
200
+ props: {
201
+ styles: c({ default: "" }),
202
+ content: f({ title: "Content", default: "" }),
203
+ link: M({
204
+ title: "Link",
205
+ default: { type: "page", target: "_self", href: "" }
206
+ })
207
+ }
208
+ });
209
+ const he = (l) => {
210
+ const { blockProps: e, children: t, listType: o, styles: r, tag: s } = l, n = w(_(r, "className", ""), o);
211
+ return !t && k(r == null ? void 0 : r.className) ? /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "LIST ITEM" }) : d.createElement(
212
+ s || (o === "list-decimal" ? "ol" : "ul"),
213
+ { ...e, ...r, className: n },
214
+ t
215
+ );
216
+ };
217
+ u(he, {
218
+ type: "List",
219
+ label: "List",
220
+ icon: Y,
221
+ category: "core",
222
+ group: "basic",
223
+ props: {
224
+ styles: c({ default: "" }),
225
+ listType: v({
226
+ title: "List type",
227
+ default: "list-disc",
228
+ options: [
229
+ { value: "list-none", title: "None" },
230
+ { value: "list-disc", title: "Disc" },
231
+ { value: "list-decimal", title: "Number" }
232
+ ]
233
+ })
234
+ },
235
+ blocks: [
236
+ { _type: "List", _id: "a", listType: "list-none", styles: "#styles:," },
237
+ {
238
+ _type: "ListItem",
239
+ _id: "b",
240
+ _parent: "a",
241
+ styles: "#styles:,",
242
+ content: "Item 1"
243
+ },
244
+ {
245
+ _type: "ListItem",
246
+ _id: "c",
247
+ _parent: "a",
248
+ styles: "#styles:,",
249
+ content: "Item 2"
250
+ },
251
+ {
252
+ _type: "ListItem",
253
+ _id: "d",
254
+ _parent: "a",
255
+ styles: "#styles:,",
256
+ content: "Item 3"
257
+ }
258
+ ]
259
+ });
260
+ const ge = (l) => {
261
+ const { blockProps: e, content: t, styles: o, children: r, tag: s } = l;
262
+ return r ? d.createElement(s || "li", { ...o, ...e }, r) : d.createElement(s || "li", {
263
+ ...o,
264
+ ...e,
265
+ dangerouslySetInnerHTML: { __html: t }
266
+ });
267
+ };
268
+ u(ge, {
269
+ type: "ListItem",
270
+ label: "List Item",
271
+ icon: X,
272
+ category: "core",
273
+ group: "basic",
274
+ props: {
275
+ styles: c({ default: "" }),
276
+ content: I({ title: "Content", default: "List item" })
277
+ }
278
+ });
279
+ const xe = (l) => {
280
+ const { blockProps: e, icon: t, styles: o } = l, r = {
281
+ ...o,
282
+ className: w(o.className, "inline-block c-inline-block")
283
+ };
284
+ return k(t) ? /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "", className: "h-8 w-14" }) : d.createElement("span", {
285
+ ...e,
286
+ ...r,
287
+ dangerouslySetInnerHTML: { __html: t }
288
+ });
289
+ };
290
+ u(xe, {
291
+ type: "Icon",
292
+ label: "Icon",
293
+ category: "core",
294
+ icon: Z,
295
+ group: "basic",
296
+ props: {
297
+ styles: c({ default: "text-black" }),
298
+ icon: j({
299
+ title: "Icon",
300
+ default: '<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16" height="1em" width="1em" 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>'
301
+ })
302
+ }
303
+ });
304
+ const ke = (l) => {
305
+ const { blockProps: e, image: t, styles: o, alt: r, height: s = 200, width: n = 200 } = l;
306
+ return k(t) ? /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "IMAGE URL", className: "h-36" }) : d.createElement("img", {
307
+ ...e,
308
+ ...o,
309
+ src: t,
310
+ alt: r,
311
+ height: s,
312
+ width: n
313
+ });
314
+ };
315
+ u(ke, {
316
+ type: "Image",
317
+ label: "Image",
318
+ category: "core",
319
+ icon: J,
320
+ group: "basic",
321
+ props: {
322
+ styles: c({ default: "" }),
323
+ image: C({
324
+ title: "Image",
325
+ default: "https://fakeimg.pl/400x200?text=Choose&font=bebas"
326
+ }),
327
+ alt: f({ title: "Alt", default: "" }),
328
+ width: f({ title: "Width", default: "" }),
329
+ height: f({ title: "Height", default: "" })
330
+ }
331
+ });
332
+ const ve = (l) => {
333
+ var s;
334
+ const { blockProps: e, styles: t, children: o } = l;
335
+ let r = null;
336
+ return o || (r = // @ts-ignore
337
+ /* @__PURE__ */ a.jsx("div", { className: w("flex flex-col items-center justify-center", (s = l.emptyStyles) == null ? void 0 : s.className), children: /* @__PURE__ */ a.jsx("div", { className: "h-full w-full rounded-md border-4 border-dashed", children: /* @__PURE__ */ a.jsxs("p", { className: "truncate p-1 text-left text-xs text-gray-400", children: [
338
+ "Slot: ",
339
+ l.name
340
+ ] }) }) })), d.createElement("div", { ...t, ...e, droppable: "yes" }, o || r);
341
+ };
342
+ u(ve, {
343
+ type: "Slot",
344
+ label: "Slot",
345
+ group: "basic",
346
+ category: "core",
347
+ hidden: !0,
348
+ props: {
349
+ styles: c({ default: "" }),
350
+ emptyStyles: c({ default: "" })
351
+ }
352
+ });
353
+ const E = /^(https?:\/\/)?(www\.)?youtube\.com\/(watch\?v=|embed\/)([a-zA-Z0-9_-]{11})/, P = /^(https?:\/\/)?(www\.)?vimeo\.com\/(\d+)/, N = /^(https?:\/\/)?(www\.)?dailymotion\.com\/(video|embed\/video)\/([a-zA-Z0-9_-]+)/, Ie = (l) => {
354
+ if (E.test(l)) {
355
+ const e = l.match(E);
356
+ return e ? `https://www.youtube.com/embed/${e[4]}` : l;
357
+ }
358
+ if (P.test(l)) {
359
+ const e = l.match(P);
360
+ return e ? `https://player.vimeo.com/video/${e[3]}` : l;
361
+ }
362
+ if (N.test(l)) {
363
+ const e = l.match(N);
364
+ return e ? `https://www.dailymotion.com/embed/video/${e[4]}` : l;
365
+ }
366
+ return null;
367
+ }, Le = d.memo(
368
+ (l) => {
369
+ const { blockProps: e, inBuilder: t, styles: o, url: r, controls: s } = l, n = s.autoPlay, i = s.controls, p = n || s.muted, m = s.loop;
370
+ if (k(r))
371
+ return /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "VIDEO URL", className: "h-36" });
372
+ let y = Ie(r), b = null;
373
+ if (y) {
374
+ if (!k(y)) {
375
+ const L = [];
376
+ L.push(`autoplay=${n ? 1 : 0}`), L.push(`controls=${s ? 1 : 0}`), L.push(`mute=${p ? 1 : 0}&muted=${p ? 1 : 0}`), L.push(`loop=${m ? 1 : 0}`), y = `${y}?${L.join("&")}`;
377
+ }
378
+ b = d.createElement("iframe", {
379
+ ...e,
380
+ ...o,
381
+ src: y,
382
+ allow: t ? "" : "autoplay *; fullscreen *",
383
+ allowFullScreen: !0,
384
+ frameBorder: 0
385
+ });
386
+ } else
387
+ b = d.createElement("video", {
388
+ ...e,
389
+ ...o,
390
+ src: r,
391
+ controls: i,
392
+ muted: p,
393
+ autoPlay: t ? !1 : n,
394
+ loop: m
395
+ });
396
+ return /* @__PURE__ */ a.jsxs("div", { className: "relative overflow-hidden", style: { paddingBottom: "56.25%" }, children: [
397
+ t ? /* @__PURE__ */ a.jsx("div", { ...e, ...o, className: "absolute h-full w-full z-20" }) : null,
398
+ b
399
+ ] });
400
+ }
401
+ );
402
+ u(Le, {
403
+ type: "Video",
404
+ label: "Video",
405
+ category: "core",
406
+ icon: K,
407
+ group: "basic",
408
+ props: {
409
+ styles: c({ default: "absolute top-0 left-0 w-full h-full" }),
410
+ url: f({
411
+ title: "Video URL",
412
+ default: "https://www.youtube.com/watch?v=9xwazD5SyVg&ab_channel=MaximilianMustermann"
413
+ }),
414
+ controls: A({
415
+ title: "Controls",
416
+ properties: {
417
+ autoPlay: h({ title: "Autoplay", default: !0 }),
418
+ controls: h({ title: "Show widgets", default: !1 }),
419
+ loop: h({ title: "Loop", default: !1 }),
420
+ muted: h({ title: "Muted", default: !0 })
421
+ }
422
+ })
423
+ }
424
+ });
425
+ const Te = d.memo(
426
+ (l) => {
427
+ const { blockProps: e, styles: t, content: o, inBuilder: r } = l;
428
+ return /* @__PURE__ */ a.jsxs("div", { className: "relative", children: [
429
+ r ? /* @__PURE__ */ a.jsx("div", { ...e, ...t, className: "absolute h-full w-full z-20" }) : null,
430
+ d.createElement("div", {
431
+ ...t,
432
+ dangerouslySetInnerHTML: { __html: o }
433
+ })
434
+ ] });
435
+ }
436
+ );
437
+ u(Te, {
438
+ type: "CustomHTML",
439
+ label: "CustomHTML",
440
+ category: "core",
441
+ icon: Q,
442
+ group: "basic",
443
+ props: {
444
+ styles: c({ default: "" }),
445
+ content: I({
446
+ title: "HTML Content",
447
+ default: "<div><p>HTML Snippet goes here...</p></div>",
448
+ placeholder: "Enter custom HTML code here"
449
+ })
450
+ }
451
+ });
452
+ const we = (l) => {
453
+ const { blockProps: e, styles: t, content: o, children: r = null, tag: s } = l;
454
+ return r ? d.createElement("span", { ...t, ...e }, r) : d.createElement(s || "span", {
455
+ ...t,
456
+ ...e,
457
+ dangerouslySetInnerHTML: { __html: o }
458
+ });
459
+ };
460
+ u(we, {
461
+ type: "Span",
462
+ label: "Span",
463
+ category: "core",
464
+ group: "basic",
465
+ props: {
466
+ styles: c({ default: "" }),
467
+ content: I({ title: "Content", default: "Enter your content" })
468
+ }
469
+ });
470
+ const Be = (l) => {
471
+ const { blockProps: e, styles: t } = l;
472
+ return d.createElement("hr", { ...t, ...e });
473
+ };
474
+ u(Be, {
475
+ type: "Divider",
476
+ label: "Divider",
477
+ category: "core",
478
+ icon: ee,
479
+ group: "basic",
480
+ props: {
481
+ styles: c({ default: "bg-gray-900 h-0.5 py-2 my-1" })
482
+ }
483
+ });
484
+ const _e = (l) => {
485
+ const { blockProps: e, styles: t } = l;
486
+ return d.createElement("br", { ...e, ...t });
487
+ };
488
+ u(_e, {
489
+ type: "LineBreak",
490
+ label: "Line Break",
491
+ category: "core",
492
+ group: "basic",
493
+ icon: F,
494
+ props: {
495
+ styles: c({ default: "" })
496
+ }
497
+ });
498
+ const Se = (l) => l.inBuilder ? /* @__PURE__ */ a.jsx("span", { className: "inline", ...l.blockProps, children: l.content }) : `${l.content}`;
499
+ u(Se, {
500
+ type: "Text",
501
+ label: "Text",
502
+ hidden: !0,
503
+ category: "core",
504
+ group: "basic",
505
+ icon: F,
506
+ props: {
507
+ content: I({ title: "Content", defaultValue: "" })
508
+ }
509
+ });
510
+ const B = (l) => {
511
+ const e = (s, n) => ({
512
+ _id: x(),
513
+ _parent: s,
514
+ _type: "TableCell",
515
+ styles: "#styles:,",
516
+ content: `${l === "TableHead" ? "Table Head" : "Table Cell " + n}`
517
+ }), t = (s) => {
518
+ const n = x(), i = {
519
+ _type: "TableRow",
520
+ _id: n,
521
+ styles: "#styles:,border-b"
522
+ };
523
+ return s && (i._parent = s), [i, e(n, "1"), e(n, "2"), e(n, "3")];
524
+ }, o = (s) => {
525
+ const n = x(), i = {
526
+ _id: n,
527
+ _type: "TableHead",
528
+ styles: "#styles:,font-medium"
529
+ };
530
+ return s && (i._parent = s), [i, ...t(n)];
531
+ }, r = (s) => {
532
+ const n = x(), i = {
533
+ _id: n,
534
+ _type: "TableBody",
535
+ styles: "#styles:,"
536
+ };
537
+ return s && (i._parent = s), [i, ...t(n), ...t(n)];
538
+ };
539
+ if (l === "Table") {
540
+ const s = x();
541
+ return [
542
+ {
543
+ _id: s,
544
+ _type: "Table",
545
+ styles: "#styles:,w-full text-left text-gray-500 dark:text-gray-400"
546
+ },
547
+ ...o(s),
548
+ ...r(s)
549
+ ];
550
+ }
551
+ return l === "TableRow" ? t() : l === "TableHead" ? o() : l === "TableBody" ? r() : [];
552
+ }, je = (l) => {
553
+ const { blockProps: e, children: t, styles: o } = l;
554
+ return t ? d.createElement("table", { ...e, ...o }, t) : /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "TABLE HEAD / BODY" });
555
+ };
556
+ u(je, {
557
+ type: "Table",
558
+ label: "Table",
559
+ category: "core",
560
+ group: "table",
561
+ hidden: !0,
562
+ icon: te,
563
+ props: {
564
+ styles: c({ default: "" })
565
+ },
566
+ blocks: B("Table")
567
+ });
568
+ const Ee = (l) => {
569
+ const { blockProps: e, children: t, styles: o } = l;
570
+ return t ? d.createElement("thead", { ...e, ...o }, t) : /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "TABLE ROW" });
571
+ };
572
+ u(Ee, {
573
+ type: "TableHead",
574
+ label: "Table Head",
575
+ category: "core",
576
+ group: "table",
577
+ hidden: !0,
578
+ icon: le,
579
+ props: {
580
+ styles: c({ default: "" })
581
+ },
582
+ blocks: B("TableHead")
583
+ });
584
+ const Pe = (l) => {
585
+ const { blockProps: e, children: t, styles: o } = l;
586
+ return t ? d.createElement("tbody", { ...e, ...o }, t) : /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "TABLE ROW" });
587
+ };
588
+ u(Pe, {
589
+ type: "TableBody",
590
+ label: "Table Body",
591
+ category: "core",
592
+ group: "table",
593
+ hidden: !0,
594
+ icon: oe,
595
+ props: {
596
+ styles: c({ default: "" })
597
+ },
598
+ blocks: B("TableBody")
599
+ });
600
+ const Ne = (l) => {
601
+ const { blockProps: e, children: t, styles: o } = l;
602
+ return t ? d.createElement("tr", { ...e, ...o }, t) : /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "TABLE CELL" });
603
+ };
604
+ u(Ne, {
605
+ type: "TableRow",
606
+ label: "Table Row",
607
+ category: "core",
608
+ group: "table",
609
+ hidden: !0,
610
+ icon: re,
611
+ props: {
612
+ styles: c({ default: "w-full" })
613
+ },
614
+ blocks: B("TableRow")
615
+ });
616
+ const Ce = (l) => {
617
+ const { blockProps: e, children: t, content: o, styles: r } = l;
618
+ return !t && k(o) ? /* @__PURE__ */ a.jsx(g, { blockProps: e }) : t ? d.createElement("td", { ...e, ...r }, t) : d.createElement("td", {
619
+ ...e,
620
+ ...r,
621
+ dangerouslySetInnerHTML: { __html: o }
622
+ });
623
+ };
624
+ u(Ce, {
625
+ type: "TableCell",
626
+ label: "Table Cell",
627
+ category: "core",
628
+ group: "table",
629
+ hidden: !0,
630
+ icon: se,
631
+ props: {
632
+ styles: c({ default: "" }),
633
+ content: T({ title: "Content", default: "Table cell item" })
634
+ }
635
+ });
636
+ const Me = (l) => {
637
+ const { blockProps: e, errorMessage: t, name: o, _type: r, successMessage: s, action: n, styles: i, children: p } = l;
638
+ if (!p && k(i == null ? void 0 : i.className))
639
+ return /* @__PURE__ */ a.jsx(g, { blockProps: e, text: "FORM FIELDS" });
640
+ const m = {
641
+ "x-data": "useForm",
642
+ "x-on:submit.prevent": "post"
643
+ }, y = {
644
+ "x-html": "formResponse",
645
+ ":class": "{'text-red-500': formStatus === 'ERROR', 'text-green-500': formStatus === 'SUCCESS'}"
646
+ };
647
+ return /* @__PURE__ */ a.jsxs(
648
+ "form",
649
+ {
650
+ ...m,
651
+ "data-error": t,
652
+ "data-success": s,
653
+ method: "post",
654
+ action: n,
655
+ ...e,
656
+ ...i,
657
+ children: [
658
+ /* @__PURE__ */ a.jsx("div", { ...y }),
659
+ /* @__PURE__ */ a.jsx("input", { name: "formname", type: "hidden", value: o || r }),
660
+ p
661
+ ]
662
+ }
663
+ );
664
+ };
665
+ u(Me, {
666
+ type: "Form",
667
+ label: "Form",
668
+ category: "core",
669
+ icon: ae,
670
+ group: "form",
671
+ hidden: !0,
672
+ props: {
673
+ styles: c({ default: "" }),
674
+ action: f({
675
+ title: "Submit URL",
676
+ default: "/api/form/submit"
677
+ }),
678
+ errorMessage: T({
679
+ title: "Error Message",
680
+ default: "Something went wrong. Please try again"
681
+ }),
682
+ successMessage: T({
683
+ title: "Success Message",
684
+ default: "Thank you for your submission."
685
+ })
686
+ }
687
+ });
688
+ const He = (l) => {
689
+ const { blockProps: e, content: t, styles: o, children: r } = l, s = { ...o, ...e };
690
+ return r ? d.createElement("label", s, r) : d.createElement("label", {
691
+ ...s,
692
+ dangerouslySetInnerHTML: { __html: t }
693
+ });
694
+ };
695
+ u(He, {
696
+ type: "Label",
697
+ label: "Label",
698
+ category: "core",
699
+ icon: ne,
700
+ group: "form",
701
+ hidden: !0,
702
+ props: {
703
+ styles: c({ default: "" }),
704
+ content: f({ title: "Content", default: "Label" })
705
+ }
706
+ });
707
+ const Re = (l) => {
708
+ const {
709
+ blockProps: e,
710
+ label: t,
711
+ placeholder: o,
712
+ styles: r,
713
+ inputStyles: s,
714
+ showLabel: n,
715
+ required: i,
716
+ inputType: p = "text",
717
+ inBuilder: m,
718
+ fieldName: y
719
+ } = l, b = x();
720
+ return !n || p === "submit" ? (p === "submit" && (e.value = t), /* @__PURE__ */ a.jsx(
721
+ "input",
722
+ {
723
+ id: b,
724
+ name: y,
725
+ readOnly: m,
726
+ ...e,
727
+ ...s,
728
+ ...r,
729
+ type: p,
730
+ placeholder: o,
731
+ required: i
732
+ }
733
+ )) : /* @__PURE__ */ a.jsxs("div", { ...r, ...e, children: [
734
+ n && /* @__PURE__ */ a.jsx("label", { htmlFor: b, children: t }),
735
+ /* @__PURE__ */ a.jsx(
736
+ "input",
737
+ {
738
+ name: y,
739
+ readOnly: m,
740
+ ...s,
741
+ id: b,
742
+ type: p,
743
+ placeholder: o,
744
+ required: i
745
+ }
746
+ )
747
+ ] });
748
+ };
749
+ u(Re, {
750
+ type: "Input",
751
+ label: "Input",
752
+ category: "core",
753
+ icon: z,
754
+ group: "form",
755
+ hidden: !0,
756
+ props: {
757
+ styles: c({ default: "" }),
758
+ fieldName: f({ title: "Field Name", default: "input" }),
759
+ inputType: v({
760
+ title: "Type",
761
+ options: S(
762
+ ["text", "email", "password", "number", "tel", "file", "hidden", "range", "submit", "color", "date", "time"],
763
+ (l) => ({
764
+ value: l,
765
+ title: l
766
+ })
767
+ ),
768
+ default: "text"
769
+ }),
770
+ value: f({ title: "Value", default: "" }),
771
+ showLabel: h({ title: "Show label", default: !0 }),
772
+ inputStyles: c({ default: "w-full p-1" }),
773
+ label: f({ title: "Label", default: "Label" }),
774
+ placeholder: f({
775
+ title: "Placeholder",
776
+ default: "Placeholder"
777
+ }),
778
+ required: h({ title: "Required", default: !1 })
779
+ }
780
+ });
781
+ const Fe = (l) => {
782
+ const { blockProps: e, fieldName: t, label: o, placeholder: r, styles: s, inputStyles: n, _rows: i, showLabel: p } = l, m = x();
783
+ return p ? /* @__PURE__ */ a.jsxs("div", { ...s, ...e, children: [
784
+ p && /* @__PURE__ */ a.jsx("label", { htmlFor: m, children: o }),
785
+ /* @__PURE__ */ a.jsx("textarea", { name: t, ...n, id: m, placeholder: r, rows: i })
786
+ ] }) : /* @__PURE__ */ a.jsx(
787
+ "textarea",
788
+ {
789
+ id: m,
790
+ name: t,
791
+ ...e,
792
+ ...n,
793
+ ...s,
794
+ placeholder: r,
795
+ rows: i
796
+ }
797
+ );
798
+ };
799
+ u(Fe, {
800
+ type: "TextArea",
801
+ label: "TextArea",
802
+ category: "core",
803
+ icon: z,
804
+ group: "form",
805
+ hidden: !0,
806
+ props: {
807
+ fieldName: f({ title: "Field Name", default: "textarea" }),
808
+ showLabel: h({ title: "Show label", default: !0 }),
809
+ styles: c({ default: "" }),
810
+ inputStyles: c({ default: "w-full p-1" }),
811
+ label: f({ title: "Label", default: "Label" }),
812
+ placeholder: f({
813
+ title: "Placeholder",
814
+ default: "Placeholder"
815
+ }),
816
+ _rows: H({ title: "Rows", default: 3 })
817
+ }
818
+ });
819
+ const ze = (l) => {
820
+ const {
821
+ blockProps: e,
822
+ fieldName: t,
823
+ label: o,
824
+ placeholder: r,
825
+ styles: s,
826
+ inputStyles: n,
827
+ required: i,
828
+ showLabel: p,
829
+ _multiple: m = !1
830
+ } = l, y = x();
831
+ return p ? /* @__PURE__ */ a.jsxs("div", { ...s, children: [
832
+ p && /* @__PURE__ */ a.jsx("label", { htmlFor: y, children: o }),
833
+ /* @__PURE__ */ a.jsxs(
834
+ "select",
835
+ {
836
+ ...n,
837
+ id: y,
838
+ placeholder: r,
839
+ required: i,
840
+ multiple: m,
841
+ name: t,
842
+ children: [
843
+ /* @__PURE__ */ a.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: r }),
844
+ S(l.options, (b) => /* @__PURE__ */ a.jsx(
845
+ "option",
846
+ {
847
+ selected: _(b, "selected", !1),
848
+ value: b.value,
849
+ dangerouslySetInnerHTML: { __html: b.label }
850
+ },
851
+ b.value
852
+ ))
853
+ ]
854
+ }
855
+ )
856
+ ] }) : /* @__PURE__ */ a.jsxs(
857
+ "select",
858
+ {
859
+ id: y,
860
+ ...s,
861
+ ...e,
862
+ placeholder: r,
863
+ required: i,
864
+ multiple: m,
865
+ name: t,
866
+ children: [
867
+ /* @__PURE__ */ a.jsx("option", { value: "", disabled: !0, selected: !0, hidden: !0, children: r }),
868
+ S(l.options, (b) => /* @__PURE__ */ a.jsx(
869
+ "option",
870
+ {
871
+ selected: _(b, "selected", !1),
872
+ value: b.value,
873
+ dangerouslySetInnerHTML: { __html: b.label }
874
+ },
875
+ b.value
876
+ ))
877
+ ]
878
+ }
879
+ );
880
+ };
881
+ u(ze, {
882
+ type: "Select",
883
+ label: "Select",
884
+ category: "core",
885
+ icon: ie,
886
+ group: "form",
887
+ hidden: !0,
888
+ props: {
889
+ styles: c({ default: "" }),
890
+ fieldName: f({ title: "Field Name", default: "select" }),
891
+ showLabel: h({ title: "Show label", default: !0 }),
892
+ inputStyles: c({ default: "w-full p-1" }),
893
+ label: f({ title: "Label", default: "Label" }),
894
+ placeholder: f({
895
+ title: "Placeholder",
896
+ default: "Placeholder"
897
+ }),
898
+ required: h({ title: "Required", default: !1 }),
899
+ _multiple: h({ title: "Multiple Choice", default: !1 }),
900
+ options: D({
901
+ title: "Options",
902
+ itemProperties: {
903
+ label: f({ title: "Label", default: "" }),
904
+ value: f({ title: "Value", default: "" })
905
+ }
906
+ })
907
+ }
908
+ });
909
+ const Ae = (l) => {
910
+ const { blockProps: e, fieldName: t, label: o, styles: r, inputStyles: s, required: n, checked: i, showLabel: p = !0 } = l, m = x();
911
+ return p ? /* @__PURE__ */ a.jsxs("div", { ...r, ...e, children: [
912
+ /* @__PURE__ */ a.jsx(
913
+ "input",
914
+ {
915
+ ...s,
916
+ name: t,
917
+ id: m,
918
+ type: "checkbox",
919
+ required: n,
920
+ defaultChecked: i
921
+ }
922
+ ),
923
+ o && o !== "Label" && /* @__PURE__ */ a.jsx("label", { htmlFor: m, children: o })
924
+ ] }) : /* @__PURE__ */ a.jsx(
925
+ "input",
926
+ {
927
+ id: m,
928
+ ...e,
929
+ ...s,
930
+ ...r,
931
+ type: "checkbox",
932
+ required: n,
933
+ name: t
934
+ }
935
+ );
936
+ };
937
+ u(Ae, {
938
+ type: "Checkbox",
939
+ label: "Checkbox",
940
+ category: "core",
941
+ icon: ce,
942
+ group: "form",
943
+ hidden: !0,
944
+ props: {
945
+ fieldName: f({ title: "Field Name", default: "checkbox" }),
946
+ styles: c({ default: "flex items-center gap-x-2" }),
947
+ label: f({ title: "Label", default: "Label" }),
948
+ checked: h({ title: "Checked", default: !1 }),
949
+ required: h({ title: "Required", default: !1 })
950
+ }
951
+ });
952
+ const De = (l) => {
953
+ const { blockProps: e, fieldName: t, label: o, styles: r, inputStyles: s, checked: n, required: i, showLabel: p = !0 } = l, m = x();
954
+ return p ? /* @__PURE__ */ a.jsxs("div", { ...r, ...e, children: [
955
+ /* @__PURE__ */ a.jsx("input", { ...s, name: t, id: m, type: "radio", required: i, defaultChecked: n }),
956
+ o && /* @__PURE__ */ a.jsx("label", { htmlFor: m, children: o })
957
+ ] }) : /* @__PURE__ */ a.jsx(
958
+ "input",
959
+ {
960
+ id: m,
961
+ ...e,
962
+ ...s,
963
+ ...r,
964
+ type: "radio",
965
+ required: i,
966
+ checked: n,
967
+ name: t
968
+ }
969
+ );
970
+ };
971
+ u(De, {
972
+ type: "Radio",
973
+ label: "Radio",
974
+ category: "core",
975
+ icon: de,
976
+ group: "form",
977
+ hidden: !0,
978
+ props: {
979
+ styles: c({ default: "flex items-center w-max gap-x-2" }),
980
+ fieldName: f({ title: "Field Name", default: "radio" }),
981
+ label: f({ title: "Label", default: "Label" }),
982
+ checked: h({ title: "Checked", default: !1 }),
983
+ required: h({ title: "Required", default: !1 })
984
+ }
985
+ });
986
+ const qe = (l) => {
987
+ const { blockProps: e, inBuilder: t, label: o, placeholder: r, styles: s, inputStyles: n, icon: i, iconPos: p } = l, m = x(), y = {
988
+ "x-bind:disabled": "formLoading"
989
+ };
990
+ return /* @__PURE__ */ a.jsxs(
991
+ "button",
992
+ {
993
+ id: m,
994
+ ...y,
995
+ ...n,
996
+ ...s,
997
+ ...e || {},
998
+ type: t ? "button" : "submit",
999
+ placeholder: r,
1000
+ children: [
1001
+ o,
1002
+ i && /* @__PURE__ */ a.jsx("span", { className: p, dangerouslySetInnerHTML: { __html: i } })
1003
+ ]
1004
+ }
1005
+ );
1006
+ };
1007
+ u(qe, {
1008
+ type: "FormButton",
1009
+ label: "Submit Button",
1010
+ category: "core",
1011
+ icon: R,
1012
+ group: "form",
1013
+ hidden: !0,
1014
+ props: {
1015
+ label: f({ title: "Label", default: "Submit" }),
1016
+ styles: c({
1017
+ default: "text-white bg-primary disabled:bg-gray-400 px-4 py-2 rounded-global flex items-center gap-x-2"
1018
+ }),
1019
+ icon: j({ title: "Icon", default: "" }),
1020
+ iconPos: v({
1021
+ title: "Icon Position",
1022
+ default: "order-last",
1023
+ options: [
1024
+ { title: "Start", value: "order-first" },
1025
+ { title: "End", value: "order-last" }
1026
+ ]
1027
+ })
1028
+ }
1029
+ });
1030
+ const Je = O;
1031
+ export {
1032
+ Je as loadWebBlocks
1033
+ };