@templatical/editor 0.10.4 → 0.11.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 (125) hide show
  1. package/dist/{AiChatSidebar-Djjqrmoh.js → AiChatSidebar-Cm5RM5Qh.js} +8 -8
  2. package/dist/{AiFeatureMenu-DR56EYbL.js → AiFeatureMenu-D4D2Sqfk.js} +6 -6
  3. package/dist/{BlockIssueBadge-ySMhwDRR.js → BlockIssueBadge-BF4sdsr4.js} +4 -4
  4. package/dist/{CloudEditor-BLlRKq5D.js → CloudEditor-CLwyq3kf.js} +18 -17
  5. package/dist/{CollaboratorBar-BlXmZrIj.js → CollaboratorBar-DjX-o5Pi.js} +3 -3
  6. package/dist/{CommentsSidebar-XcYtqAn8.js → CommentsSidebar-BQJzyCc6.js} +11 -11
  7. package/dist/{CountdownBlock-sAAv3BHE.js → CountdownBlock-D_AsF4F3.js} +1 -1
  8. package/dist/{CountdownToolbar-CUvqPILZ.js → CountdownToolbar-BGTkFky9.js} +2 -2
  9. package/dist/{DesignReferenceSidebar-B0Upq2MY.js → DesignReferenceSidebar-O3epZMXD.js} +6 -6
  10. package/dist/{IssuesPanel-BvcqQ0ec.js → IssuesPanel-CPBbR8yp.js} +7 -7
  11. package/dist/{ModuleBrowserModal-BdOB1Lbt.js → ModuleBrowserModal-CVS4Sf7H.js} +9 -9
  12. package/dist/{ModulePreviewCanvas-BeglLfBF.js → ModulePreviewCanvas-C10YXsL_.js} +2 -2
  13. package/dist/{NumberWithSuffix-Cb7HI_yW.js → NumberWithSuffix-eI9pPDWT.js} +1 -1
  14. package/dist/{ParagraphEditor-4Wrd3nnB.js → ParagraphEditor-BKoqcKIt.js} +22 -22
  15. package/dist/{RichTextEditorContent-D-uKzBDa.js → RichTextEditorContent-Dvn4woIt.js} +6 -6
  16. package/dist/{SaveModuleDialog-ueFhCVWN.js → SaveModuleDialog-BMuIjxVn.js} +6 -6
  17. package/dist/{SnapshotHistory-DNuw_gCY.js → SnapshotHistory-DZ5_W7e4.js} +7 -7
  18. package/dist/{TemplateScoringPanel-bkIhEokb.js → TemplateScoringPanel-Bt5Rsgen.js} +12 -12
  19. package/dist/{TestEmailModal-Tg30-itu.js → TestEmailModal-EjpH-F-W.js} +4 -4
  20. package/dist/{TitleEditor-CY8QWbEw.js → TitleEditor-Rv1deuV7.js} +12 -12
  21. package/dist/{TplModal-D338Vv9U.js → TplModal-DSmCQIm4.js} +3 -3
  22. package/dist/{blockTypeIcons-CYoPwoH9.js → blockTypeIcons-OhEkQhYj.js} +2 -2
  23. package/dist/bundle-stats.json +6 -6
  24. package/dist/cdn/chunks/{AiFeatureMenu-DRWRoPdh.js → AiFeatureMenu-Dm9CL3u0.js} +4 -4
  25. package/dist/cdn/chunks/{AiFeatureMenu-DRWRoPdh.js.map → AiFeatureMenu-Dm9CL3u0.js.map} +1 -1
  26. package/dist/cdn/chunks/{BlockIssueBadge-D2ApLp61.js → BlockIssueBadge-DjnFAeWq.js} +4 -4
  27. package/dist/cdn/chunks/{BlockIssueBadge-D2ApLp61.js.map → BlockIssueBadge-DjnFAeWq.js.map} +1 -1
  28. package/dist/cdn/chunks/{CloudEditor-gvOOuXac.js → CloudEditor-XSmLmdgp.js} +157 -156
  29. package/dist/cdn/chunks/CloudEditor-XSmLmdgp.js.map +1 -0
  30. package/dist/cdn/chunks/{CollaboratorBar-BZK3R383.js → CollaboratorBar-BfoGJhns.js} +3 -3
  31. package/dist/cdn/chunks/{CollaboratorBar-BZK3R383.js.map → CollaboratorBar-BfoGJhns.js.map} +1 -1
  32. package/dist/cdn/chunks/{CountdownBlock-DU5YmjFP.js → CountdownBlock-GRio55a1.js} +2 -2
  33. package/dist/cdn/chunks/{CountdownBlock-DU5YmjFP.js.map → CountdownBlock-GRio55a1.js.map} +1 -1
  34. package/dist/cdn/chunks/{CountdownToolbar-C1nlFm4e.js → CountdownToolbar-Cd1oEopw.js} +3 -3
  35. package/dist/cdn/chunks/{CountdownToolbar-C1nlFm4e.js.map → CountdownToolbar-Cd1oEopw.js.map} +1 -1
  36. package/dist/cdn/chunks/{IssuesPanel-R3M60NTk.js → IssuesPanel-C-BiFQDQ.js} +5 -5
  37. package/dist/cdn/chunks/{IssuesPanel-R3M60NTk.js.map → IssuesPanel-C-BiFQDQ.js.map} +1 -1
  38. package/dist/cdn/chunks/{ModuleBrowserModal-DMithQu8.js → ModuleBrowserModal-Dj7gRT4Q.js} +8 -8
  39. package/dist/cdn/chunks/{ModuleBrowserModal-DMithQu8.js.map → ModuleBrowserModal-Dj7gRT4Q.js.map} +1 -1
  40. package/dist/cdn/chunks/{ModulePreviewCanvas-BNKbV_c2.js → ModulePreviewCanvas-hwdveKb0.js} +2 -2
  41. package/dist/cdn/chunks/{ModulePreviewCanvas-BNKbV_c2.js.map → ModulePreviewCanvas-hwdveKb0.js.map} +1 -1
  42. package/dist/cdn/chunks/{NumberWithSuffix-C5zNn3Oc.js → NumberWithSuffix-bE_6cfiA.js} +2 -2
  43. package/dist/cdn/chunks/{NumberWithSuffix-C5zNn3Oc.js.map → NumberWithSuffix-bE_6cfiA.js.map} +1 -1
  44. package/dist/cdn/chunks/{ParagraphEditor-H136qVNI.js → ParagraphEditor-y1kGJRBX.js} +48 -48
  45. package/dist/cdn/chunks/{ParagraphEditor-H136qVNI.js.map → ParagraphEditor-y1kGJRBX.js.map} +1 -1
  46. package/dist/cdn/chunks/{RichTextEditorContent-BxW6vSck.js → RichTextEditorContent-DPy9D4hc.js} +3 -3
  47. package/dist/cdn/chunks/{RichTextEditorContent-BxW6vSck.js.map → RichTextEditorContent-DPy9D4hc.js.map} +1 -1
  48. package/dist/cdn/chunks/{SaveModuleDialog-BaiynUWb.js → SaveModuleDialog-CPu5e2VG.js} +4 -4
  49. package/dist/cdn/chunks/{SaveModuleDialog-BaiynUWb.js.map → SaveModuleDialog-CPu5e2VG.js.map} +1 -1
  50. package/dist/cdn/chunks/{TitleEditor-BBsR46vE.js → TitleEditor-CMzzOPye.js} +9 -9
  51. package/dist/cdn/chunks/{TitleEditor-BBsR46vE.js.map → TitleEditor-CMzzOPye.js.map} +1 -1
  52. package/dist/cdn/chunks/{blockTypeIcons-CX05RINM.js → blockTypeIcons-BC5qpvuV.js} +3 -3
  53. package/dist/cdn/chunks/{blockTypeIcons-CX05RINM.js.map → blockTypeIcons-BC5qpvuV.js.map} +1 -1
  54. package/dist/cdn/chunks/{extensions-2LuW8PHB.js → extensions-DH7ESsaz.js} +22 -22
  55. package/dist/cdn/chunks/{extensions-2LuW8PHB.js.map → extensions-DH7ESsaz.js.map} +1 -1
  56. package/dist/cdn/chunks/{features-CxHQG9xr.js → features-DmUOSthI.js} +647 -678
  57. package/dist/cdn/chunks/features-DmUOSthI.js.map +1 -0
  58. package/dist/cdn/chunks/{icons-DrsFvnNP.js → icons-DguD4x_X.js} +2 -2
  59. package/dist/cdn/chunks/{icons-DrsFvnNP.js.map → icons-DguD4x_X.js.map} +1 -1
  60. package/dist/cdn/chunks/{media-library-CDXkfBa7.js → media-library-ClQUPxRM.js} +71 -71
  61. package/dist/cdn/chunks/{media-library-CDXkfBa7.js.map → media-library-ClQUPxRM.js.map} +1 -1
  62. package/dist/cdn/chunks/{quality-HR87TCZc.js → quality-CIw_7cXv.js} +479 -479
  63. package/dist/cdn/chunks/{quality-HR87TCZc.js.map → quality-CIw_7cXv.js.map} +1 -1
  64. package/dist/cdn/chunks/{renderer-Dh5WdraW.js → renderer-Bx8I7_Rb.js} +19 -19
  65. package/dist/cdn/chunks/{renderer-Dh5WdraW.js.map → renderer-Bx8I7_Rb.js.map} +1 -1
  66. package/dist/cdn/chunks/{src-fyYLC_tY.js → src-C-GlM149.js} +4 -4
  67. package/dist/cdn/chunks/{src-fyYLC_tY.js.map → src-C-GlM149.js.map} +1 -1
  68. package/dist/cdn/chunks/{styles-NhU45rEI.js → styles-CfqCvq0Z.js} +666 -635
  69. package/dist/cdn/chunks/styles-CfqCvq0Z.js.map +1 -0
  70. package/dist/cdn/chunks/{tiptap-CfnwT9a8.js → tiptap-BAwu9VcJ.js} +4454 -3328
  71. package/dist/cdn/chunks/tiptap-BAwu9VcJ.js.map +1 -0
  72. package/dist/cdn/editor.css +1 -1
  73. package/dist/cdn/editor.js +11 -10
  74. package/dist/cdn/editor.js.map +1 -1
  75. package/dist/{check-B4oiQEsJ.js → check-BsNM6BDs.js} +1 -1
  76. package/dist/{chevron-down-BrL7CDST.js → chevron-down-fcsZ5DU7.js} +1 -1
  77. package/dist/{circle-alert-Ddf06I0D.js → circle-alert-BZTbwc-B.js} +1 -1
  78. package/dist/{clock-CbIkIHL5.js → clock-B7iQRubC.js} +1 -1
  79. package/dist/{createLucideIcon-Bn5l6hkC.js → createLucideIcon-C_fetdGM.js} +2 -2
  80. package/dist/{dist-BRvZBY6r.js → dist-B4NkMBYc.js} +2 -2
  81. package/dist/{dist-DDB4TfTY.js → dist-BLcYl_de.js} +2 -2
  82. package/dist/{dist-DS9NXb20.js → dist-BOHAk4zI.js} +2 -2
  83. package/dist/dist-BsB4nPJD.js +5 -0
  84. package/dist/{dist-B6B8IO1W.js → dist-ByBVNmRN.js} +2 -2
  85. package/dist/dist-CD3wbUoR.js +5 -0
  86. package/dist/{dist-DbGsZrPu.js → dist-Cwl7XXr4.js} +806 -601
  87. package/dist/{dist-BShwEwPy.js → dist-Dem8ODLh.js} +1512 -1501
  88. package/dist/{dist-BdIM5Jt8.js → dist-Dhs3W2WW.js} +2 -2
  89. package/dist/{dist-ZiEahccA.js → dist-XdF11ZkX.js} +2 -2
  90. package/dist/{dist-BhZo8-eC.js → dist-c2sj5PQ5.js} +2 -2
  91. package/dist/{dist-Ctv43HTN.js → dist-eVlXvuKI.js} +3 -3
  92. package/dist/extensions-B2lSGCA8.js +1720 -0
  93. package/dist/{image-up-D3KvvHLf.js → image-up-1xrPPJYH.js} +1 -1
  94. package/dist/index.d.ts +29 -0
  95. package/dist/{info-RwcI2EUD.js → info-ByAFxArD.js} +1 -1
  96. package/dist/keys-DsRdOmg3.js +10 -0
  97. package/dist/{list-checks-ruqK9lCo.js → list-checks-CKUP4UZU.js} +1 -1
  98. package/dist/{loader-circle-D4SXJ8eQ.js → loader-circle-BuxX338d.js} +1 -1
  99. package/dist/{message-circle-p9UiFyS7.js → message-circle-nLwqegRi.js} +1 -1
  100. package/dist/{refresh-cw-C8HbO4hg.js → refresh-cw-DAkD6iDI.js} +1 -1
  101. package/dist/{scan-line-CmPIMm63.js → scan-line-DEELRJJ5.js} +1 -1
  102. package/dist/{send-DacXlri3.js → send-DCMgrNT4.js} +1 -1
  103. package/dist/{shield-check-BdrHnTnJ.js → shield-check-BFtVr_ov.js} +1 -1
  104. package/dist/{sparkles-tT7wcus5.js → sparkles-CeYIQ5RJ.js} +1 -1
  105. package/dist/style.css +1 -1
  106. package/dist/{styles-BmZWc8sc.js → styles-D_ztiOsh.js} +768 -737
  107. package/dist/templatical-editor.js +6 -5
  108. package/dist/{text-align-start-DaSSBZVi.js → text-align-start-BsmIoqLS.js} +1 -1
  109. package/dist/{trash-2-B0uIJOwX.js → trash-2-C2S4-CIH.js} +1 -1
  110. package/dist/{triangle-alert-FLQWRf-c.js → triangle-alert-DMdedF6W.js} +1 -1
  111. package/dist/{useCloudI18n-Lh0xWlQ4.js → useCloudI18n-BEuiZdzs.js} +1 -1
  112. package/dist/{useEditorCore-CMukR8kX.js → useEditorCore-tZGAVvNz.js} +649 -680
  113. package/dist/{useI18n-CNEz8RK7.js → useI18n-DNspT6uw.js} +1 -1
  114. package/dist/{useMergeTag-C54tabTK.js → useMergeTag-abutjUud.js} +1 -1
  115. package/dist/{usePopoverRoot-dvg2XFmj.js → usePopoverRoot-DG3mlvd1.js} +1 -1
  116. package/dist/{x-BROzFhGs.js → x-_9jw816B.js} +1 -1
  117. package/package.json +24 -24
  118. package/dist/cdn/chunks/CloudEditor-gvOOuXac.js.map +0 -1
  119. package/dist/cdn/chunks/features-CxHQG9xr.js.map +0 -1
  120. package/dist/cdn/chunks/styles-NhU45rEI.js.map +0 -1
  121. package/dist/cdn/chunks/tiptap-CfnwT9a8.js.map +0 -1
  122. package/dist/dist-BVKpiz3S.js +0 -5
  123. package/dist/dist-BzeOnbU8.js +0 -5
  124. package/dist/extensions-CqrSpX_i.js +0 -806
  125. package/dist/keys-DSm2p8zn.js +0 -10
@@ -1,13 +1,13 @@
1
1
  import { C as e, F as t, G as n, H as r, J as i, L as a, M as o, O as s, P as c, T as l, V as u, Y as d, Z as f, b as p, c as m, ct as h, f as g, g as _, h as v, it as y, l as b, m as x, n as S, o as C, ot as w, p as T, s as E, st as D, t as ee, u as O, v as k, x as A, y as j, z as M } from "./draggable-iAb7QVJo.js";
2
- import { $ as N, Bt as P, Ct as te, Dt as ne, En as F, F as I, Ft as L, G as R, Gt as z, H as re, I as ie, J as ae, Jt as oe, K as se, Kt as ce, L as le, Lt as ue, M as de, Mt as fe, N as pe, O as me, P as he, Pt as B, Qt as ge, R as _e, St as ve, Tn as ye, Tt as be, U as xe, V as Se, Vt as Ce, W as we, Wt as Te, Xt as Ee, Yt as De, Zt as Oe, _n as ke, at as Ae, bt as je, ct as Me, dn as Ne, et as Pe, hn as Fe, in as Ie, it as Le, j as Re, kn as ze, kt as Be, mn as Ve, mt as He, nn as Ue, q as We, qt as Ge, rn as Ke, rt as V, tn as qe, ut as Je, vn as Ye, wn as Xe, wt as Ze, xn as Qe, xt as $e, yn as et, yt as tt, z as nt, zt as rt } from "./features-CxHQG9xr.js";
3
- import { A as it, F as at, G as ot, I as st, M as ct, N as lt, O as ut, P as dt, T as H, V as ft, Y as pt, _ as mt, b as ht, c as gt, h as _t, m as vt, o as yt, s as bt, u as xt, v as St, y as Ct, z as wt } from "./icons-DrsFvnNP.js";
4
- import { t as Tt } from "./readableTextColor-f8Kykfnh.js";
5
- import { t as Et } from "./CountdownBlock-DU5YmjFP.js";
6
- import { t as Dt } from "./blockTypeIcons-CX05RINM.js";
7
- import { _ as Ot, c as kt, f as U, g as At, h as W, l as jt, m as G, p as K, t as Mt } from "./styleConstants-lGobwiLH.js";
8
- import { i as q, n as J, r as Y, t as Nt } from "./NumberWithSuffix-C5zNn3Oc.js";
2
+ import { $ as N, $t as P, An as te, Bt as ne, Ct as F, Dn as I, Dt as L, En as re, F as ie, Ft as R, G as z, Gt as B, H as ae, I as oe, J as se, Jt as ce, K as le, Kt as ue, L as de, Lt as V, M as fe, Mt as pe, N as me, Nt as he, O as ge, P as _e, Pt as ve, Qt as ye, R as be, Sn as xe, St as Se, Tn as Ce, Tt as we, U as Te, V as Ee, Vt as De, W as Oe, Wt as ke, Xt as Ae, Yt as je, Zt as Me, an as Ne, at as Pe, bn as Fe, bt as Ie, ct as Le, et as Re, fn as ze, gn as Be, hn as Ve, in as He, it as Ue, j as We, kt as Ge, mt as Ke, nn as qe, q as Je, qt as Ye, rn as Xe, rt as Ze, ut as Qe, vn as $e, wt as et, xt as tt, yn as nt, yt as rt, z as it, zt as at } from "./features-DmUOSthI.js";
3
+ import { A as ot, F as st, G as ct, I as lt, M as ut, N as dt, O as ft, P as pt, T as H, V as mt, Y as ht, _ as gt, b as _t, c as vt, h as yt, m as bt, o as xt, s as St, u as Ct, v as wt, y as Tt, z as Et } from "./icons-DguD4x_X.js";
4
+ import { t as Dt } from "./readableTextColor-f8Kykfnh.js";
5
+ import { t as Ot } from "./CountdownBlock-GRio55a1.js";
6
+ import { t as kt } from "./blockTypeIcons-BC5qpvuV.js";
7
+ import { _ as At, c as jt, f as U, g as Mt, h as W, l as Nt, m as G, p as K, t as Pt } from "./styleConstants-lGobwiLH.js";
8
+ import { i as q, n as J, r as Y, t as Ft } from "./NumberWithSuffix-bE_6cfiA.js";
9
9
  //#region src/utils/resolveLintOptions.ts
10
- function Pt(e) {
10
+ function It(e) {
11
11
  return {
12
12
  ...e.lint,
13
13
  locale: e.locale
@@ -15,19 +15,19 @@ function Pt(e) {
15
15
  }
16
16
  //#endregion
17
17
  //#region src/components/Canvas.vue?vue&type=script&setup=true&lang.ts
18
- var Ft = ["aria-label"], It = {
18
+ var Lt = ["aria-label"], Rt = {
19
19
  key: 0,
20
20
  class: "tpl-canvas-empty-content tpl:flex tpl:flex-col tpl:items-center"
21
- }, Lt = { class: "tpl-canvas-empty-icon tpl:mb-4 tpl:text-[var(--tpl-primary)]" }, Rt = { class: "tpl-canvas-empty-title tpl:m-0 tpl:mb-2 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-primary)]" }, zt = { class: "tpl-canvas-empty-text tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-dim)]" }, Bt = {
21
+ }, zt = { class: "tpl-canvas-empty-icon tpl:mb-4 tpl:text-[var(--tpl-primary)]" }, Bt = { class: "tpl-canvas-empty-title tpl:m-0 tpl:mb-2 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-primary)]" }, Vt = { class: "tpl-canvas-empty-text tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-dim)]" }, Ht = {
22
22
  key: 0,
23
23
  class: "tpl:m-0 tpl:mt-2 tpl:flex tpl:flex-wrap tpl:items-center tpl:justify-center tpl:gap-x-1 tpl:gap-y-0.5 tpl:text-sm tpl:text-[var(--tpl-text-dim)]"
24
- }, Vt = {
24
+ }, Ut = {
25
25
  key: 1,
26
26
  class: "tpl:m-0 tpl:mt-4 tpl:flex tpl:flex-wrap tpl:items-center tpl:justify-center tpl:gap-x-1 tpl:gap-y-0.5 tpl:text-sm tpl:text-[var(--tpl-text-dim)]"
27
- }, Ht = { class: "tpl:relative" }, Ut = {
27
+ }, Wt = { class: "tpl:relative" }, Gt = {
28
28
  class: "tpl:inline-flex tpl:size-3 tpl:items-center tpl:justify-center tpl:rounded-full tpl:text-[8px] tpl:font-bold",
29
- style: { "background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 30%,\n transparent\n )" }
30
- }, Wt = /*#__PURE__*/ V(/* @__PURE__ */ A({
29
+ style: { "background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 30%,\n transparent\n )" }
30
+ }, Kt = 96, qt = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
31
31
  __name: "Canvas",
32
32
  props: {
33
33
  viewport: {},
@@ -44,21 +44,21 @@ var Ft = ["aria-label"], It = {
44
44
  ],
45
45
  setup(e, { emit: t }) {
46
46
  let n = {
47
- section: le,
48
- title: _e,
49
- paragraph: re,
50
- image: we,
51
- button: fe,
52
- divider: We,
53
- spacer: pe,
54
- html: se,
55
- social: he,
56
- menu: xe,
57
- table: de,
58
- video: Re,
59
- countdown: Et,
60
- custom: ae
61
- }, i = e, s = t, { t: d } = L(), { t: p } = Pe(), m = Ie(oe, "Canvas"), b = l(Te, null), S = l(P, null), C = l(Ce, {}), A = g(() => (C.plan?.hasFeature("ai_generation") ?? !1) && (C.ai?.isFeatureEnabled("chat") ?? !1)), M = g(() => (C.plan?.hasFeature("ai_generation") ?? !1) && (C.ai?.isFeatureEnabled("designToTemplate") ?? !1)), N = g({
47
+ section: de,
48
+ title: be,
49
+ paragraph: ae,
50
+ image: Oe,
51
+ button: pe,
52
+ divider: Je,
53
+ spacer: me,
54
+ html: le,
55
+ social: _e,
56
+ menu: Te,
57
+ table: fe,
58
+ video: We,
59
+ countdown: Ot,
60
+ custom: se
61
+ }, i = e, s = t, { t: d } = R(), { t: p } = Re(), m = Ne(ce, "Canvas"), b = l(ke, null), S = l(ne, null), C = l(De, {}), A = g(() => (C.plan?.hasFeature("ai_generation") ?? !1) && (C.ai?.isFeatureEnabled("chat") ?? !1)), M = g(() => (C.plan?.hasFeature("ai_generation") ?? !1) && (C.ai?.isFeatureEnabled("designToTemplate") ?? !1)), N = g({
62
62
  get: () => i.content.blocks,
63
63
  set: (e) => {
64
64
  m.setContent({
@@ -66,41 +66,38 @@ var Ft = ["aria-label"], It = {
66
66
  blocks: e
67
67
  });
68
68
  }
69
- }), te = g(() => {
69
+ }), P = g(() => {
70
70
  switch (i.viewport) {
71
71
  case "mobile": return 375;
72
72
  default: return i.content.settings.width;
73
73
  }
74
- }), ne = g(() => ({ fontFamily: i.content.settings.fontFamily })), F = g(() => N.value.length === 0 && !i.previewMode), I = f(0), R = g(() => F.value && I.value > 0);
75
- function z() {
76
- F.value && (I.value += 1);
77
- }
74
+ }), te = g(() => P.value + Kt * 2), F = g(() => ({ fontFamily: i.content.settings.fontFamily })), I = g(() => N.value.length === 0 && !i.previewMode), L = f(0), re = g(() => I.value && L.value > 0);
78
75
  function ie() {
79
- F.value && (I.value = Math.max(0, I.value - 1));
76
+ I.value && (L.value += 1);
77
+ }
78
+ function z() {
79
+ I.value && (L.value = Math.max(0, L.value - 1));
80
80
  }
81
- function ce() {
82
- I.value = 0;
81
+ function B() {
82
+ L.value = 0;
83
83
  }
84
- function ue(e) {
84
+ function oe(e) {
85
85
  i.previewMode || e.target === e.currentTarget && s("select-block", null);
86
86
  }
87
- function me(e) {
88
- return Se(e, S, n);
87
+ function ue(e) {
88
+ return Ee(e, S, n);
89
89
  }
90
- function B(e) {
90
+ function V(e) {
91
91
  return i.lockedBlocks?.get(e) ?? null;
92
92
  }
93
- function ge(e, t) {
93
+ function he(e, t) {
94
94
  e.type === "custom" && m.updateBlock(e.id, {
95
95
  fieldValues: t.fieldValues,
96
96
  dataSourceFetched: t.dataSourceFetched
97
97
  });
98
98
  }
99
99
  return (t, n) => (o(), _("div", {
100
- "data-testid": "canvas-wrapper",
101
- role: "region",
102
- "aria-label": y(d).landmarks.canvas,
103
- class: "tpl-canvas-wrapper tpl:relative tpl:rounded-lg",
100
+ class: "tpl-canvas-stage tpl:relative tpl:flex tpl:justify-center tpl:rounded-lg",
104
101
  style: D({
105
102
  width: `${te.value}px`,
106
103
  boxShadow: e.darkMode ? "none" : "var(--tpl-shadow-xl)",
@@ -114,12 +111,21 @@ var Ft = ["aria-label"], It = {
114
111
  transition: "filter 300ms ease"
115
112
  })
116
113
  }, null, 4), T("div", {
114
+ "data-testid": "canvas-wrapper",
115
+ role: "region",
116
+ "aria-label": y(d).landmarks.canvas,
117
+ class: "tpl-canvas-wrapper tpl:relative",
118
+ style: D({
119
+ width: `${P.value}px`,
120
+ transition: "width 300ms cubic-bezier(0.34, 1.56, 0.64, 1)"
121
+ })
122
+ }, [T("div", {
117
123
  class: w(["tpl-canvas tpl:relative tpl:rounded-lg", {
118
124
  "tpl-canvas--dark-mode": e.darkMode,
119
125
  "tpl-preview-mode": e.previewMode
120
126
  }]),
121
- style: D(ne.value),
122
- onClick: ue
127
+ style: D(F.value),
128
+ onClick: oe
123
129
  }, [j(y(ee), {
124
130
  modelValue: N.value,
125
131
  "onUpdate:modelValue": n[2] ||= (e) => N.value = e,
@@ -135,38 +141,38 @@ var Ft = ["aria-label"], It = {
135
141
  "force-fallback": !0,
136
142
  class: w([
137
143
  "tpl-canvas-blocks",
138
- F.value ? "tpl-canvas-empty tpl:m-6 tpl:flex tpl:min-h-[400px] tpl:flex-col tpl:items-center tpl:justify-center tpl:rounded-xl tpl:border-2 tpl:border-dashed tpl:px-10 tpl:py-12 tpl:text-center tpl:bg-[var(--tpl-bg-elevated)] tpl:font-[var(--tpl-font-family)] tpl:transition-colors tpl:duration-150" : "",
139
- F.value && R.value ? "tpl-canvas-empty--drag-over tpl:border-[var(--tpl-primary-hover)] tpl:bg-[var(--tpl-primary-light)]" : "",
140
- F.value && !R.value ? "tpl:border-[var(--tpl-primary)]" : ""
144
+ I.value ? "tpl-canvas-empty tpl:m-6 tpl:flex tpl:min-h-[400px] tpl:flex-col tpl:items-center tpl:justify-center tpl:rounded-xl tpl:border-2 tpl:border-dashed tpl:px-10 tpl:py-12 tpl:text-center tpl:bg-[var(--tpl-bg-elevated)] tpl:font-[var(--tpl-font-family)] tpl:transition-colors tpl:duration-150" : "",
145
+ I.value && re.value ? "tpl-canvas-empty--drag-over tpl:border-[var(--tpl-primary-hover)] tpl:bg-[var(--tpl-primary-light)]" : "",
146
+ I.value && !re.value ? "tpl:border-[var(--tpl-primary)]" : ""
141
147
  ]),
142
- onDragenter: z,
143
- onDragleave: ie,
144
- onDrop: ce
148
+ onDragenter: ie,
149
+ onDragleave: z,
150
+ onDrop: B
145
151
  }, {
146
- default: u(() => [F.value ? (o(), _("div", It, [
147
- T("div", Lt, [j(y(_t), {
152
+ default: u(() => [I.value ? (o(), _("div", Rt, [
153
+ T("div", zt, [j(y(yt), {
148
154
  size: 48,
149
155
  "stroke-width": 1
150
156
  })]),
151
- T("p", Rt, h(y(d).canvas.noBlocks), 1),
152
- T("p", zt, h(y(d).canvas.dragHint), 1),
153
- A.value && y(p) ? (o(), _("p", Bt, [
157
+ T("p", Bt, h(y(d).canvas.noBlocks), 1),
158
+ T("p", Vt, h(y(d).canvas.dragHint), 1),
159
+ A.value && y(p) ? (o(), _("p", Ht, [
154
160
  k(h(y(d).canvas.aiHintChat) + " ", 1),
155
161
  T("button", {
156
162
  class: "tpl:inline-flex tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:gap-1 tpl:whitespace-nowrap tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-2 tpl:py-0.5 tpl:text-sm tpl:font-semibold tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary-hover)]",
157
163
  onClick: n[0] ||= (e) => s("open-ai-chat")
158
- }, [j(y(Je), {
164
+ }, [j(y(Qe), {
159
165
  size: 14,
160
166
  "stroke-width": 2
161
167
  }), k(" " + h(y(p).aiMenu.aiAssistant), 1)]),
162
168
  k(" " + h(y(d).canvas.aiHintChatSuffix), 1)
163
169
  ])) : v("", !0),
164
- M.value && y(p) ? (o(), _("p", Vt, [
170
+ M.value && y(p) ? (o(), _("p", Ut, [
165
171
  k(h(y(d).canvas.aiHintDesign) + " ", 1),
166
172
  T("button", {
167
173
  class: "tpl:inline-flex tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:gap-1 tpl:whitespace-nowrap tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-2 tpl:py-0.5 tpl:text-sm tpl:font-semibold tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary-hover)]",
168
174
  onClick: n[1] ||= (e) => s("open-design-reference")
169
- }, [j(y($e), {
175
+ }, [j(y(tt), {
170
176
  size: 14,
171
177
  "stroke-width": 2
172
178
  }), k(" " + h(y(p).aiMenu.designToTemplate), 1)]),
@@ -175,30 +181,30 @@ var Ft = ["aria-label"], It = {
175
181
  ])) : v("", !0), (o(!0), _(O, null, c(N.value, (t) => r((o(), _("div", {
176
182
  key: t.id,
177
183
  class: "tpl-block-item"
178
- }, [T("div", Ht, [B(t.id) ? (o(), _("div", {
184
+ }, [T("div", Wt, [V(t.id) ? (o(), _("div", {
179
185
  key: 0,
180
186
  class: "tpl-collab-lock tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:z-[4] tpl:rounded-sm",
181
187
  style: D({
182
- outline: `2px solid ${B(t.id).color}`,
188
+ outline: `2px solid ${V(t.id).color}`,
183
189
  outlineOffset: "-1px"
184
190
  })
185
191
  }, [T("span", {
186
192
  class: "tpl:absolute tpl:-top-0.5 tpl:left-1/2 tpl:z-[5] tpl:flex tpl:-translate-x-1/2 tpl:-translate-y-full tpl:items-center tpl:gap-1 tpl:rounded-full tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-medium tpl:whitespace-nowrap",
187
193
  style: D({
188
- backgroundColor: B(t.id).color,
189
- color: y(Tt)(B(t.id).color)
194
+ backgroundColor: V(t.id).color,
195
+ color: y(Dt)(V(t.id).color)
190
196
  })
191
- }, [T("span", Ut, h(B(t.id).name.charAt(0)), 1), k(" " + h(B(t.id).name), 1)], 4)], 4)) : v("", !0), j(nt, {
197
+ }, [T("span", Gt, h(V(t.id).name.charAt(0)), 1), k(" " + h(V(t.id).name), 1)], 4)], 4)) : v("", !0), j(it, {
192
198
  block: t,
193
- "is-selected": !e.previewMode && e.selectedBlockId === t.id && !B(t.id),
199
+ "is-selected": !e.previewMode && e.selectedBlockId === t.id && !V(t.id),
194
200
  viewport: e.viewport,
195
201
  "preview-mode": e.previewMode,
196
- onSelect: (n) => e.previewMode || B(t.id) ? void 0 : s("select-block", t.id)
202
+ onSelect: (n) => e.previewMode || V(t.id) ? void 0 : s("select-block", t.id)
197
203
  }, {
198
- default: u(() => [(o(), x(a(me(t)), {
204
+ default: u(() => [(o(), x(a(ue(t)), {
199
205
  block: t,
200
206
  viewport: e.viewport,
201
- onFetchData: (e) => ge(t, e),
207
+ onFetchData: (e) => he(t, e),
202
208
  onUpdate: (e) => y(m).updateBlock(t.id, e)
203
209
  }, null, 40, [
204
210
  "block",
@@ -219,49 +225,71 @@ var Ft = ["aria-label"], It = {
219
225
  "modelValue",
220
226
  "disabled",
221
227
  "class"
222
- ])], 6)], 12, Ft));
228
+ ])], 6)], 12, Lt)], 4));
223
229
  }
224
- }), [["__scopeId", "data-v-1aed1727"]]), Gt = A({
230
+ }), [["__scopeId", "data-v-a9a1158b"]]), Jt = A({
225
231
  name: "CustomBlockStylesheets",
226
232
  setup() {
227
- let t = l(ce, null);
233
+ let t = l(ue, null);
228
234
  return () => t ? t.value.map((t, n) => e("style", {
229
235
  key: n,
230
236
  "data-tpl-custom-block-stylesheet": "",
231
237
  innerHTML: t
232
238
  })) : null;
233
239
  }
234
- }), Kt = ["aria-label"], qt = {
240
+ });
241
+ //#endregion
242
+ //#region src/utils/resolvePaletteBlocks.ts
243
+ function Yt(e, t) {
244
+ if (!t || t.length === 0) return {
245
+ items: e,
246
+ unknown: []
247
+ };
248
+ let n = new Map(e.map((e) => [e.type, e])), r = [], i = [], a = /* @__PURE__ */ new Set();
249
+ for (let e of t) {
250
+ if (a.has(e)) continue;
251
+ a.add(e);
252
+ let t = n.get(e);
253
+ t ? r.push(t) : i.push(e);
254
+ }
255
+ return {
256
+ items: r,
257
+ unknown: i
258
+ };
259
+ }
260
+ //#endregion
261
+ //#region src/components/Sidebar.vue?vue&type=script&setup=true&lang.ts
262
+ var Xt = ["aria-label"], Zt = {
235
263
  key: 0,
236
264
  class: "tpl:border-b tpl:px-1 tpl:pb-1 tpl:border-[var(--tpl-border)]"
237
- }, Jt = ["aria-label"], Yt = {
265
+ }, Qt = ["aria-label"], $t = {
238
266
  key: 0,
239
267
  class: "tpl:flex-1 tpl:truncate tpl:text-sm tpl:font-medium"
240
- }, Xt = {
268
+ }, en = {
241
269
  key: 1,
242
270
  class: "tpl:shrink-0 tpl:rounded-full tpl:px-1.5 tpl:py-0.5 tpl:text-[10px] tpl:font-medium tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)]"
243
- }, Zt = [
271
+ }, tn = [
244
272
  "data-palette-type",
245
273
  "aria-label",
246
274
  "onClick",
247
275
  "onKeydown"
248
- ], Qt = { class: "tpl:flex tpl:shrink-0 tpl:items-center tpl:justify-center tpl:transition-transform tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:scale-105" }, $t = {
276
+ ], nn = { class: "tpl:flex tpl:shrink-0 tpl:items-center tpl:justify-center tpl:transition-transform tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:scale-105" }, rn = {
249
277
  key: 0,
250
278
  class: "tpl:truncate tpl:text-sm tpl:font-medium"
251
- }, en = /* @__PURE__ */ A({
279
+ }, an = /* @__PURE__ */ A({
252
280
  __name: "Sidebar",
253
281
  setup(e) {
254
- let { t, format: n } = L(), { t: r } = Pe(), i = l(z, []), s = l(rt, void 0), d = l(oe, null), p = l(Ce, {}), m = g(() => (p.savedModules?.moduleCount.value ?? 0) > 0), b = f(!1), S = f(!1);
255
- function C() {
256
- S.value || (b.value = !1);
257
- }
282
+ let { t, format: n } = R(), { t: r } = Re(), i = l(B, []), s = l(P, void 0), d = l(at, void 0), p = l(ce, null), m = l(De, {}), b = g(() => (m.savedModules?.moduleCount.value ?? 0) > 0), S = f(!1), C = f(!1);
258
283
  function w() {
259
- S.value = !0;
284
+ C.value || (S.value = !1);
260
285
  }
261
286
  function E() {
262
- S.value = !1;
287
+ C.value = !0;
263
288
  }
264
- let k = [
289
+ function k() {
290
+ C.value = !1;
291
+ }
292
+ let A = [
265
293
  "section",
266
294
  "image",
267
295
  "title",
@@ -274,105 +302,108 @@ var Ft = ["aria-label"], It = {
274
302
  "table",
275
303
  "spacer",
276
304
  "html"
277
- ], A = g(() => {
278
- let e = k.map((e) => ({
305
+ ], N = g(() => {
306
+ let e = A.map((e) => ({
279
307
  type: e,
280
- label: B(e, t)
308
+ label: ve(e, t)
281
309
  }));
282
- return p.plan && e.splice(-1, 0, {
310
+ return m.plan && e.splice(-1, 0, {
283
311
  type: "countdown",
284
- label: B("countdown", t)
312
+ label: ve("countdown", t)
285
313
  }), e;
286
- }), M = g(() => i.map((e) => ({
314
+ }), te = g(() => i.map((e) => ({
287
315
  type: `custom:${e.type}`,
288
316
  label: e.name,
289
317
  isCustom: !0,
290
318
  icon: e.icon
291
- }))), N = g(() => [...A.value, ...M.value]);
292
- function P(e) {
319
+ }))), ne = g(() => [...N.value, ...te.value]), F = g(() => Yt(ne.value, s)), I = g(() => F.value.items), L = /* @__PURE__ */ new Set();
320
+ M(() => F.value.unknown, (e) => {
321
+ for (let t of e) L.has(t) || (L.add(t), he.warn(`config.paletteBlocks: "${t}" is not a built-in or registered custom block (use the "custom:" prefix for custom blocks) — skipping it in the palette.`));
322
+ }, { immediate: !0 });
323
+ function ie(e) {
293
324
  if (e.isCustom) {
294
325
  let t = e.type.replace("custom:", ""), n = i.find((e) => e.type === t);
295
- if (n) return ye(n);
326
+ if (n) return re(n);
296
327
  }
297
- return Xe(e.type, s);
328
+ return Ce(e.type, d);
298
329
  }
299
- function te(e) {
300
- if (!d) return;
301
- let t = P(e);
302
- d.addBlock(t), d.selectBlock(t.id);
330
+ function z(e) {
331
+ if (!p) return;
332
+ let t = ie(e);
333
+ p.addBlock(t), p.selectBlock(t.id);
303
334
  }
304
- function ne(e, t) {
305
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), te(t));
335
+ function ae(e, t) {
336
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), z(t));
306
337
  }
307
338
  return (e, i) => (o(), _("aside", {
308
339
  "aria-label": y(t).sidebarNav.palette,
309
- class: "tpl-sidebar-rail tpl:absolute tpl:top-14 tpl:bottom-0 tpl:left-0 tpl:z-40 tpl:overflow-hidden",
340
+ class: "tpl-sidebar-rail tpl:absolute tpl:top-14 tpl:bottom-0 tpl:left-0 tpl:z-40 tpl:flex tpl:flex-col tpl:overflow-hidden",
310
341
  style: D({
311
- width: b.value ? "200px" : "48px",
342
+ width: S.value ? "200px" : "48px",
312
343
  backgroundColor: "var(--tpl-bg-elevated)",
313
344
  borderRight: "1px solid var(--tpl-border)",
314
- boxShadow: b.value ? "var(--tpl-shadow-lg)" : "none",
345
+ boxShadow: S.value ? "var(--tpl-shadow-lg)" : "none",
315
346
  transition: "width 200ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 200ms cubic-bezier(0.16, 1, 0.3, 1)"
316
347
  }),
317
- onMouseenter: i[1] ||= (e) => b.value = !0,
318
- onMouseleave: C,
319
- onFocusin: i[2] ||= (e) => b.value = !0,
320
- onFocusout: i[3] ||= (e) => b.value = !1
321
- }, [m.value && y(r) ? (o(), _("div", qt, [T("button", {
348
+ onMouseenter: i[1] ||= (e) => S.value = !0,
349
+ onMouseleave: w,
350
+ onFocusin: i[2] ||= (e) => S.value = !0,
351
+ onFocusout: i[3] ||= (e) => S.value = !1
352
+ }, [b.value && y(r) ? (o(), _("div", Zt, [T("button", {
322
353
  type: "button",
323
354
  "aria-label": y(t).sidebarNav.browseModules,
324
355
  class: "tpl:flex tpl:h-10 tpl:w-full tpl:cursor-pointer tpl:items-center tpl:gap-3 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:px-3 tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-[120ms] hover:tpl:bg-[var(--tpl-primary-light)] hover:tpl:text-[var(--tpl-primary)]",
325
- style: D({ justifyContent: b.value ? "flex-start" : "center" }),
326
- onClick: i[0] ||= (e) => y(p).savedModules?.openBrowser()
356
+ style: D({ justifyContent: S.value ? "flex-start" : "center" }),
357
+ onClick: i[0] ||= (e) => y(m).savedModules?.openBrowser()
327
358
  }, [
328
- j(y(it), {
359
+ j(y(ot), {
329
360
  size: 20,
330
361
  "stroke-width": 1.5,
331
362
  class: "tpl:shrink-0"
332
363
  }),
333
- b.value ? (o(), _("span", Yt, h(y(r).modules.title), 1)) : v("", !0),
334
- b.value ? (o(), _("span", Xt, h(y(p).savedModules?.moduleCount.value ?? 0), 1)) : v("", !0)
335
- ], 12, Jt)])) : v("", !0), j(y(ee), {
336
- "model-value": N.value,
364
+ S.value ? (o(), _("span", $t, h(y(r).modules.title), 1)) : v("", !0),
365
+ S.value ? (o(), _("span", en, h(y(m).savedModules?.moduleCount.value ?? 0), 1)) : v("", !0)
366
+ ], 12, Qt)])) : v("", !0), j(y(ee), {
367
+ "model-value": I.value,
337
368
  group: {
338
369
  name: "blocks",
339
370
  pull: "clone",
340
371
  put: !1
341
372
  },
342
- clone: P,
373
+ clone: ie,
343
374
  sort: !1,
344
375
  animation: 150,
345
376
  "ghost-class": "tpl-ghost",
346
377
  "force-fallback": !0,
347
- class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:p-1",
348
- onChoose: w,
349
- onEnd: E
378
+ class: "tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col tpl:gap-0.5 tpl:overflow-y-auto tpl:p-1",
379
+ onChoose: E,
380
+ onEnd: k
350
381
  }, {
351
- default: u(() => [(o(!0), _(O, null, c(N.value, (e) => (o(), _("button", {
382
+ default: u(() => [(o(!0), _(O, null, c(I.value, (e) => (o(), _("button", {
352
383
  key: e.type,
353
384
  type: "button",
354
385
  "data-palette-type": e.type,
355
386
  "aria-label": y(n)(y(t).sidebarNav.insertBlock, { block: e.label }),
356
- class: "tpl:flex tpl:h-10 tpl:w-full tpl:cursor-grab tpl:items-center tpl:gap-3 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:px-3 tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:bg-[var(--tpl-primary-light)] hover:tpl:text-[var(--tpl-primary)] active:tpl:cursor-grabbing",
357
- style: D({ justifyContent: b.value ? "flex-start" : "center" }),
358
- onClick: (t) => te(e),
359
- onKeydown: (t) => ne(t, e)
360
- }, [T("div", Qt, [y(Dt)[e.type] ? (o(), x(a(y(Dt)[e.type]), {
387
+ class: "tpl:flex tpl:h-10 tpl:w-full tpl:shrink-0 tpl:cursor-grab tpl:items-center tpl:gap-3 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:px-3 tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:bg-[var(--tpl-primary-light)] hover:tpl:text-[var(--tpl-primary)] active:tpl:cursor-grabbing",
388
+ style: D({ justifyContent: S.value ? "flex-start" : "center" }),
389
+ onClick: (t) => z(e),
390
+ onKeydown: (t) => ae(t, e)
391
+ }, [T("div", nn, [y(kt)[e.type] ? (o(), x(a(y(kt)[e.type]), {
361
392
  key: 0,
362
393
  size: 20,
363
394
  "stroke-width": 1.5
364
- })) : e.isCustom ? (o(), x(Le, {
395
+ })) : e.isCustom ? (o(), x(Ue, {
365
396
  key: 1,
366
397
  icon: e.icon,
367
398
  size: 20
368
- }, null, 8, ["icon"])) : v("", !0)]), b.value ? (o(), _("span", $t, h(e.label), 1)) : v("", !0)], 44, Zt))), 128))]),
399
+ }, null, 8, ["icon"])) : v("", !0)]), S.value ? (o(), _("span", rn, h(e.label), 1)) : v("", !0)], 44, tn))), 128))]),
369
400
  _: 1
370
- }, 8, ["model-value"])], 44, Kt));
401
+ }, 8, ["model-value"])], 44, Xt));
371
402
  }
372
403
  });
373
404
  //#endregion
374
405
  //#region src/composables/useMergeTagField.ts
375
- function tn(e) {
406
+ function on(e) {
376
407
  let { modelValue: t, emit: r, elementRef: a } = e, { canRequestMergeTag: o, isRequesting: c, isMergeTagValue: l, getMergeTagLabel: u, requestMergeTag: d, syntax: p } = N(), m = f(!1), h = !1, _ = !1;
377
408
  n() && i(() => {
378
409
  _ = !0;
@@ -391,10 +422,10 @@ function tn(e) {
391
422
  type: "mergeTag",
392
423
  value: t,
393
424
  label: u(t)
394
- }) : Qe(t, p) ? n.push({
425
+ }) : xe(t, p) ? n.push({
395
426
  type: "logicMergeTag",
396
427
  value: t,
397
- keyword: et(t, p)
428
+ keyword: Fe(t, p)
398
429
  }) : n.push({
399
430
  type: "text",
400
431
  value: t
@@ -454,10 +485,10 @@ function tn(e) {
454
485
  }
455
486
  //#endregion
456
487
  //#region src/components/MergeTagSegments.vue?vue&type=script&setup=true&lang.ts
457
- var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip"], on = {
488
+ var sn = ["aria-label", "onKeydown"], cn = ["data-tooltip"], ln = ["data-tooltip"], un = {
458
489
  key: 2,
459
490
  class: "tpl:text-sm tpl:text-[var(--tpl-text)]"
460
- }, sn = ["aria-label", "title"], cn = /* @__PURE__ */ A({
491
+ }, dn = ["aria-label", "title"], fn = /* @__PURE__ */ A({
461
492
  __name: "MergeTagSegments",
462
493
  props: {
463
494
  segments: {},
@@ -466,7 +497,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
466
497
  },
467
498
  emits: ["edit", "clear"],
468
499
  setup(e, { emit: t }) {
469
- let n = t, { t: r } = L();
500
+ let n = t, { t: r } = R();
470
501
  function i() {
471
502
  n("edit");
472
503
  }
@@ -485,7 +516,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
485
516
  "background-color": "color-mix(\n in srgb,\n var(--tpl-primary) 20%,\n transparent\n )",
486
517
  color: "var(--tpl-primary)"
487
518
  }
488
- }, h(e.label), 9, rn)) : e.type === "logicMergeTag" ? (o(), _("span", {
519
+ }, h(e.label), 9, cn)) : e.type === "logicMergeTag" ? (o(), _("span", {
489
520
  key: 1,
490
521
  class: "tpl-tooltip tpl:inline-flex tpl:items-center tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[0.8em] tpl:font-bold tpl:tracking-wide tpl:uppercase",
491
522
  "data-tooltip": e.value,
@@ -494,44 +525,44 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
494
525
  border: "1.5px solid\n color-mix(in srgb, var(--tpl-primary) 50%, transparent)",
495
526
  color: "var(--tpl-primary)"
496
527
  }
497
- }, h(e.keyword), 9, an)) : (o(), _("span", on, h(e.value), 1))], 64))), 128)), T("button", {
528
+ }, h(e.keyword), 9, ln)) : (o(), _("span", un, h(e.value), 1))], 64))), 128)), T("button", {
498
529
  type: "button",
499
530
  class: "tpl:ml-auto tpl:flex tpl:size-6 tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-full tpl:border-none tpl:bg-transparent tpl:p-0 tpl:text-[var(--tpl-text-dim)] tpl:opacity-60 tpl:transition-all hover:tpl:text-[var(--tpl-danger)] hover:tpl:opacity-100",
500
531
  "aria-label": y(r).mergeTag.remove,
501
532
  title: y(r).mergeTag.remove,
502
533
  onClick: a[0] ||= b((e) => n("clear"), ["stop"])
503
- }, [j(y(Ae), {
534
+ }, [j(y(Pe), {
504
535
  size: 12,
505
536
  "stroke-width": 2.5
506
- })], 8, sn)], 42, nn));
537
+ })], 8, dn)], 42, sn));
507
538
  }
508
- }), ln = [
539
+ }), pn = [
509
540
  "aria-label",
510
541
  "title",
511
542
  "disabled"
512
- ], un = "tpl:flex tpl:items-center tpl:justify-center tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:px-2 tpl:py-1 tpl:text-xs tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-[120ms] hover:tpl:bg-[var(--tpl-primary-light)] hover:tpl:text-[var(--tpl-primary)] hover:tpl:border-[var(--tpl-primary)]", dn = /* @__PURE__ */ A({
543
+ ], mn = "tpl:flex tpl:items-center tpl:justify-center tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:px-2 tpl:py-1 tpl:text-xs tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-[120ms] hover:tpl:bg-[var(--tpl-primary-light)] hover:tpl:text-[var(--tpl-primary)] hover:tpl:border-[var(--tpl-primary)]", hn = /* @__PURE__ */ A({
513
544
  __name: "MergeTagInsertButton",
514
545
  props: { disabled: { type: Boolean } },
515
546
  emits: ["insert"],
516
547
  setup(e) {
517
- let { t } = L();
548
+ let { t } = R();
518
549
  return (n, r) => (o(), _("button", {
519
550
  type: "button",
520
- class: w([un, "tpl:mt-1.5"]),
551
+ class: w([mn, "tpl:mt-1.5"]),
521
552
  "aria-label": y(t).mergeTag.insert,
522
553
  title: y(t).mergeTag.insert,
523
554
  disabled: e.disabled,
524
555
  onClick: r[0] ||= (e) => n.$emit("insert")
525
- }, [j(y(ht), {
556
+ }, [j(y(_t), {
526
557
  size: 12,
527
558
  "stroke-width": 2
528
- }), k(" " + h(y(t).mergeTag.insert), 1)], 10, ln));
559
+ }), k(" " + h(y(t).mergeTag.insert), 1)], 10, pn));
529
560
  }
530
- }), fn = { key: 0 }, pn = { key: 1 }, mn = [
561
+ }), gn = { key: 0 }, _n = { key: 1 }, vn = [
531
562
  "value",
532
563
  "placeholder",
533
564
  "rows"
534
- ], hn = "tpl:w-full tpl:resize-y tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-2 tpl:text-sm tpl:text-[var(--tpl-text)] tpl:outline-none tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] tpl:placeholder:text-[var(--tpl-text-dim)] tpl:focus:border-[var(--tpl-primary)] tpl:focus:shadow-[var(--tpl-ring)]", gn = "tpl:flex tpl:w-full tpl:min-h-20 tpl:cursor-pointer tpl:items-start tpl:flex-wrap tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:bg-[var(--tpl-bg)] tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2 tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", _n = /* @__PURE__ */ A({
565
+ ], yn = "tpl:w-full tpl:resize-y tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-2 tpl:text-sm tpl:text-[var(--tpl-text)] tpl:outline-none tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] tpl:placeholder:text-[var(--tpl-text-dim)] tpl:focus:border-[var(--tpl-primary)] tpl:focus:shadow-[var(--tpl-ring)]", bn = "tpl:flex tpl:w-full tpl:min-h-20 tpl:cursor-pointer tpl:items-start tpl:flex-wrap tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:bg-[var(--tpl-bg)] tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2 tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", xn = /* @__PURE__ */ A({
535
566
  __name: "MergeTagTextarea",
536
567
  props: {
537
568
  modelValue: {},
@@ -540,46 +571,46 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
540
571
  },
541
572
  emits: ["update:modelValue"],
542
573
  setup(e, { emit: t }) {
543
- let n = e, r = t, i = f(null), { segments: a, hasMergeTags: s, canRequestMergeTag: c, isRequestingMergeTag: l, isEditing: u, startEditing: d, stopEditing: p, handleInput: h, clearValue: g, insertMergeTag: b } = tn({
574
+ let n = e, r = t, i = f(null), { segments: a, hasMergeTags: s, canRequestMergeTag: c, isRequestingMergeTag: l, isEditing: u, startEditing: d, stopEditing: p, handleInput: h, clearValue: g, insertMergeTag: b } = on({
544
575
  modelValue: () => n.modelValue,
545
576
  emit: (e) => r("update:modelValue", e),
546
577
  elementRef: i
547
578
  });
548
- return (t, n) => y(s) && !y(u) ? (o(), _("div", fn, [j(cn, {
579
+ return (t, n) => y(s) && !y(u) ? (o(), _("div", gn, [j(fn, {
549
580
  segments: y(a),
550
- "display-class": gn,
581
+ "display-class": bn,
551
582
  onEdit: y(d),
552
583
  onClear: y(g)
553
584
  }, null, 8, [
554
585
  "segments",
555
586
  "onEdit",
556
587
  "onClear"
557
- ]), y(c) ? (o(), x(dn, {
588
+ ]), y(c) ? (o(), x(hn, {
558
589
  key: 0,
559
590
  disabled: y(l),
560
591
  onInsert: y(b)
561
- }, null, 8, ["disabled", "onInsert"])) : v("", !0)])) : (o(), _("div", pn, [T("textarea", {
592
+ }, null, 8, ["disabled", "onInsert"])) : v("", !0)])) : (o(), _("div", _n, [T("textarea", {
562
593
  ref_key: "textareaRef",
563
594
  ref: i,
564
- class: w(hn),
595
+ class: w(yn),
565
596
  value: e.modelValue,
566
597
  placeholder: e.placeholder,
567
598
  rows: e.rows,
568
599
  onInput: n[0] ||= (...e) => y(h) && y(h)(...e),
569
600
  onBlur: n[1] ||= (...e) => y(p) && y(p)(...e),
570
601
  onKeydown: n[2] ||= m((...e) => y(p) && y(p)(...e), ["escape"])
571
- }, null, 40, mn), y(c) ? (o(), x(dn, {
602
+ }, null, 40, vn), y(c) ? (o(), x(hn, {
572
603
  key: 0,
573
604
  disabled: y(l),
574
605
  onInsert: y(b)
575
606
  }, null, 8, ["disabled", "onInsert"])) : v("", !0)]));
576
607
  }
577
- }), vn = { class: "tpl:flex tpl:w-full tpl:flex-1 tpl:flex-col tpl:bg-[var(--tpl-bg-elevated)]" }, yn = { class: "tpl:flex tpl:flex-1 tpl:flex-col tpl:gap-3 tpl:overflow-y-auto tpl:p-4" }, bn = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, xn = { class: "tpl:mb-3.5" }, Sn = { class: "tpl:grid tpl:grid-cols-4 tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, Cn = ["onClick"], wn = { class: "tpl:flex tpl:items-stretch" }, Tn = ["value"], En = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Dn = { class: "tpl:mb-3.5" }, On = ["value"], kn = ["value"], An = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, jn = ["value"], Mn = { class: "tpl:mt-1 tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, Nn = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Pn = { class: "tpl:mt-1 tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, Fn = { class: "tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, In = { class: "tpl:shrink-0 tpl:text-xs tpl:tabular-nums tpl:text-[var(--tpl-text-dim)]" }, Ln = { class: "tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:p-3" }, Rn = { class: "tpl:mb-2.5 tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text-muted)]" }, zn = { class: "tpl:m-0 tpl:pl-[18px] tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, Bn = { class: "tpl:mb-1 tpl:last:mb-0" }, Vn = { class: "tpl:mb-1 tpl:last:mb-0" }, Hn = { class: "tpl:mb-1 tpl:last:mb-0" }, Un = 150, Wn = /* @__PURE__ */ A({
608
+ }), Sn = { class: "tpl:flex tpl:w-full tpl:flex-1 tpl:flex-col tpl:bg-[var(--tpl-bg-elevated)]" }, Cn = { class: "tpl:flex tpl:flex-1 tpl:flex-col tpl:gap-3 tpl:overflow-y-auto tpl:p-4" }, wn = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Tn = { class: "tpl:mb-3.5" }, En = { class: "tpl:grid tpl:grid-cols-4 tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, Dn = ["onClick"], On = { class: "tpl:flex tpl:items-stretch" }, kn = ["value"], An = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, jn = { class: "tpl:mb-3.5" }, Mn = ["value"], Nn = ["value"], Pn = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Fn = ["value"], In = { class: "tpl:mt-1 tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, Ln = { class: "tpl:mb-3.5 tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Rn = { class: "tpl:mt-1 tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, zn = { class: "tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, Bn = { class: "tpl:shrink-0 tpl:text-xs tpl:tabular-nums tpl:text-[var(--tpl-text-dim)]" }, Vn = { class: "tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:p-3" }, Hn = { class: "tpl:mb-2.5 tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text-muted)]" }, Un = { class: "tpl:m-0 tpl:pl-[18px] tpl:text-xs tpl:leading-relaxed tpl:text-[var(--tpl-text-dim)]" }, Wn = { class: "tpl:mb-1 tpl:last:mb-0" }, Gn = { class: "tpl:mb-1 tpl:last:mb-0" }, Kn = { class: "tpl:mb-1 tpl:last:mb-0" }, qn = 150, Jn = /* @__PURE__ */ A({
578
609
  __name: "TemplateSettings",
579
610
  props: { settings: {} },
580
611
  emits: ["update"],
581
612
  setup(e, { emit: t }) {
582
- let n = e, r = t, { t: i } = L(), a = Ie(De, "TemplateSettings"), s = g(() => a.fonts.value), l = g(() => s.value.some((e) => e.value === n.settings.fontFamily) ? n.settings.fontFamily : a.defaultFont.value), u = [
613
+ let n = e, r = t, { t: i } = R(), a = Ne(je, "TemplateSettings"), s = g(() => a.fonts.value), l = g(() => s.value.some((e) => e.value === n.settings.fontFamily) ? n.settings.fontFamily : a.defaultFont.value), u = [
583
614
  {
584
615
  value: 480,
585
616
  label: "480px"
@@ -597,14 +628,14 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
597
628
  label: "800px"
598
629
  }
599
630
  ];
600
- return (t, n) => (o(), _("aside", vn, [T("div", yn, [
601
- T("div", { class: w(y(jt)) }, [
602
- T("div", bn, [j(y(vt), {
631
+ return (t, n) => (o(), _("aside", Sn, [T("div", Cn, [
632
+ T("div", { class: w(y(Nt)) }, [
633
+ T("div", wn, [j(y(bt), {
603
634
  class: "tpl:text-[var(--tpl-text-muted)]",
604
635
  size: 14,
605
636
  "stroke-width": 2
606
637
  }), T("span", null, h(y(i).templateSettings.layout), 1)]),
607
- T("div", xn, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.widthPreset), 3), T("div", Sn, [(o(), _(O, null, c(u, (t) => T("button", {
638
+ T("div", Tn, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.widthPreset), 3), T("div", En, [(o(), _(O, null, c(u, (t) => T("button", {
608
639
  key: t.value,
609
640
  class: "tpl:cursor-pointer tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-2 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]",
610
641
  style: D({
@@ -613,25 +644,25 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
613
644
  boxShadow: e.settings.width === t.value ? "var(--tpl-shadow)" : "none"
614
645
  }),
615
646
  onClick: (e) => r("update", { width: t.value })
616
- }, h(t.label), 13, Cn)), 64))])]),
617
- T("div", null, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.customWidth), 3), T("div", wn, [T("input", {
647
+ }, h(t.label), 13, Dn)), 64))])]),
648
+ T("div", null, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.customWidth), 3), T("div", On, [T("input", {
618
649
  type: "number",
619
650
  class: w(y(K)),
620
651
  value: e.settings.width,
621
652
  min: "300",
622
653
  max: "900",
623
654
  onInput: n[0] ||= (e) => r("update", { width: Number(e.target.value) })
624
- }, null, 42, Tn), T("span", { class: w(y(G)) }, "px", 2)])])
655
+ }, null, 42, kn), T("span", { class: w(y(G)) }, "px", 2)])])
625
656
  ], 2),
626
- T("div", { class: w(y(jt)) }, [
627
- T("div", En, [j(y(pt), {
657
+ T("div", { class: w(y(Nt)) }, [
658
+ T("div", An, [j(y(ht), {
628
659
  class: "tpl:text-[var(--tpl-text-muted)]",
629
660
  size: 14,
630
661
  "stroke-width": 2
631
662
  }), T("span", null, h(y(i).templateSettings.appearance), 1)]),
632
- T("div", Dn, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.backgroundColor), 3), j(q, {
663
+ T("div", jn, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.backgroundColor), 3), j(q, {
633
664
  "model-value": e.settings.backgroundColor,
634
- placeholder: y(Mt),
665
+ placeholder: y(Pt),
635
666
  "onUpdate:modelValue": n[1] ||= (e) => r("update", { backgroundColor: e })
636
667
  }, null, 8, ["model-value", "placeholder"])]),
637
668
  T("div", null, [T("label", { class: w(y(W)) }, h(y(i).templateSettings.fontFamily), 3), T("select", {
@@ -641,9 +672,9 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
641
672
  }, [(o(!0), _(O, null, c(s.value, (e) => (o(), _("option", {
642
673
  key: e.value,
643
674
  value: e.value
644
- }, h(e.label), 9, kn))), 128))], 42, On)])
675
+ }, h(e.label), 9, Nn))), 128))], 42, Mn)])
645
676
  ], 2),
646
- T("div", { class: w(y(jt)) }, [T("div", An, [j(y(ot), {
677
+ T("div", { class: w(y(Nt)) }, [T("div", Pn, [j(y(ct), {
647
678
  class: "tpl:text-[var(--tpl-text-muted)]",
648
679
  size: 14,
649
680
  "stroke-width": 2
@@ -658,34 +689,34 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
658
689
  autocapitalize: "off",
659
690
  autocomplete: "off",
660
691
  onInput: n[3] ||= (e) => r("update", { locale: e.target.value.trim() || void 0 })
661
- }, null, 42, jn),
662
- T("p", Mn, h(y(i).templateSettings.contentLocaleHint), 1)
692
+ }, null, 42, Fn),
693
+ T("p", In, h(y(i).templateSettings.contentLocaleHint), 1)
663
694
  ])], 2),
664
- T("div", { class: w(y(jt)) }, [T("div", Nn, [j(y(ve), {
695
+ T("div", { class: w(y(Nt)) }, [T("div", Ln, [j(y(Se), {
665
696
  class: "tpl:text-[var(--tpl-text-muted)]",
666
697
  size: 14,
667
698
  "stroke-width": 2
668
- }), T("span", null, h(y(i).templateSettings.preheaderText), 1)]), T("div", null, [j(_n, {
699
+ }), T("span", null, h(y(i).templateSettings.preheaderText), 1)]), T("div", null, [j(xn, {
669
700
  "model-value": e.settings.preheaderText ?? "",
670
701
  placeholder: y(i).templateSettings.preheaderTextPlaceholder,
671
702
  rows: 2,
672
703
  "onUpdate:modelValue": n[4] ||= (e) => r("update", { preheaderText: e.replace(/[\r\n]/g, " ") || void 0 })
673
- }, null, 8, ["model-value", "placeholder"]), T("div", Pn, [T("span", Fn, h(y(i).templateSettings.preheaderTextHint), 1), T("span", In, h((e.settings.preheaderText ?? "").length) + "/" + h(Un), 1)])])], 2),
674
- T("div", Ln, [T("div", Rn, [j(y(tt), {
704
+ }, null, 8, ["model-value", "placeholder"]), T("div", Rn, [T("span", zn, h(y(i).templateSettings.preheaderTextHint), 1), T("span", Bn, h((e.settings.preheaderText ?? "").length) + "/" + h(qn), 1)])])], 2),
705
+ T("div", Vn, [T("div", Hn, [j(y(rt), {
675
706
  size: 14,
676
707
  "stroke-width": 2
677
- }), T("span", null, h(y(i).templateSettings.tips), 1)]), T("ul", zn, [
678
- T("li", Bn, h(y(i).templateSettings.tip1), 1),
679
- T("li", Vn, h(y(i).templateSettings.tip2), 1),
680
- T("li", Hn, h(y(i).templateSettings.tip3), 1)
708
+ }), T("span", null, h(y(i).templateSettings.tips), 1)]), T("ul", Un, [
709
+ T("li", Wn, h(y(i).templateSettings.tip1), 1),
710
+ T("li", Gn, h(y(i).templateSettings.tip2), 1),
711
+ T("li", Kn, h(y(i).templateSettings.tip3), 1)
681
712
  ])])
682
713
  ])]));
683
714
  }
684
- }), Gn = { key: 0 }, Kn = { key: 1 }, qn = [
715
+ }), Yn = { key: 0 }, Xn = { key: 1 }, Zn = [
685
716
  "type",
686
717
  "value",
687
718
  "placeholder"
688
- ], Jn = "tpl:flex tpl:w-full tpl:min-h-10 tpl:cursor-pointer tpl:items-center tpl:flex-wrap tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:bg-[var(--tpl-bg)] tpl:border-[var(--tpl-border)] tpl:px-3.5 tpl:py-1.5 tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", X = /*#__PURE__*/ V(/* @__PURE__ */ A({
719
+ ], Qn = "tpl:flex tpl:w-full tpl:min-h-10 tpl:cursor-pointer tpl:items-center tpl:flex-wrap tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:shadow-xs tpl:bg-[var(--tpl-bg)] tpl:border-[var(--tpl-border)] tpl:px-3.5 tpl:py-1.5 tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", X = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
689
720
  __name: "MergeTagInput",
690
721
  props: {
691
722
  modelValue: {},
@@ -698,14 +729,14 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
698
729
  },
699
730
  emits: ["update:modelValue"],
700
731
  setup(e, { emit: t }) {
701
- let n = e, r = t, i = f(null), { segments: a, hasMergeTags: s, canRequestMergeTag: c, isRequestingMergeTag: l, isEditing: u, startEditing: d, stopEditing: p, handleInput: h, clearValue: g, insertMergeTag: b } = tn({
732
+ let n = e, r = t, i = f(null), { segments: a, hasMergeTags: s, canRequestMergeTag: c, isRequestingMergeTag: l, isEditing: u, startEditing: d, stopEditing: p, handleInput: h, clearValue: g, insertMergeTag: b } = on({
702
733
  modelValue: () => n.modelValue,
703
734
  emit: (e) => r("update:modelValue", e),
704
735
  elementRef: i
705
736
  });
706
- return (t, n) => y(s) && !y(u) ? (o(), _("div", Gn, [j(cn, {
737
+ return (t, n) => y(s) && !y(u) ? (o(), _("div", Yn, [j(fn, {
707
738
  segments: y(a),
708
- "display-class": Jn,
739
+ "display-class": Qn,
709
740
  pulse: e.pulse,
710
741
  onEdit: y(d),
711
742
  onClear: y(g)
@@ -714,11 +745,11 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
714
745
  "pulse",
715
746
  "onEdit",
716
747
  "onClear"
717
- ]), y(c) ? (o(), x(dn, {
748
+ ]), y(c) ? (o(), x(hn, {
718
749
  key: 0,
719
750
  disabled: y(l),
720
751
  onInsert: y(b)
721
- }, null, 8, ["disabled", "onInsert"])) : v("", !0)])) : (o(), _("div", Kn, [T("input", {
752
+ }, null, 8, ["disabled", "onInsert"])) : v("", !0)])) : (o(), _("div", Xn, [T("input", {
722
753
  ref_key: "inputRef",
723
754
  ref: i,
724
755
  type: e.type,
@@ -728,16 +759,16 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
728
759
  onInput: n[0] ||= (...e) => y(h) && y(h)(...e),
729
760
  onBlur: n[1] ||= (...e) => y(p) && y(p)(...e),
730
761
  onKeydown: n[2] ||= m((...e) => y(p) && y(p)(...e), ["escape"])
731
- }, null, 42, qn), y(c) ? (o(), x(dn, {
762
+ }, null, 42, Zn), y(c) ? (o(), x(hn, {
732
763
  key: 0,
733
764
  disabled: y(l),
734
765
  onInsert: y(b)
735
766
  }, null, 8, ["disabled", "onInsert"])) : v("", !0)]));
736
767
  }
737
- }), [["__scopeId", "data-v-358207dd"]]), Yn = { class: "tpl:mb-3.5" }, Xn = ["value"], Zn = { value: "" }, Qn = ["value"], $n = { class: "tpl:mb-3.5" }, er = { class: "tpl:mb-3.5" }, tr = {
768
+ }), [["__scopeId", "data-v-358207dd"]]), $n = { class: "tpl:mb-3.5" }, er = ["value"], tr = { value: "" }, nr = ["value"], rr = { class: "tpl:mb-3.5" }, ir = { class: "tpl:mb-3.5" }, ar = {
738
769
  key: 0,
739
770
  class: "tpl:mt-2 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-[12px] tpl:text-[var(--tpl-text-muted)]"
740
- }, nr = ["checked"], rr = { class: "tpl:grid tpl:grid-cols-2 tpl:gap-3" }, ir = { class: "tpl:mb-3.5" }, ar = { class: "tpl:mb-3.5" }, or = { class: "tpl:grid tpl:grid-cols-2 tpl:gap-3" }, sr = { class: "tpl:mb-3.5" }, cr = { class: "tpl:flex tpl:items-stretch" }, lr = ["value"], ur = { class: "tpl:mb-3.5" }, dr = { class: "tpl:flex tpl:items-stretch" }, fr = ["value"], pr = /* @__PURE__ */ A({
771
+ }, or = ["checked"], sr = { class: "tpl:grid tpl:grid-cols-2 tpl:gap-3" }, cr = { class: "tpl:mb-3.5" }, lr = { class: "tpl:mb-3.5" }, ur = { class: "tpl:grid tpl:grid-cols-2 tpl:gap-3" }, dr = { class: "tpl:mb-3.5" }, fr = { class: "tpl:flex tpl:items-stretch" }, pr = ["value"], mr = { class: "tpl:mb-3.5" }, hr = { class: "tpl:flex tpl:items-stretch" }, gr = ["value"], _r = /* @__PURE__ */ A({
741
772
  __name: "ButtonToolbar",
742
773
  props: {
743
774
  block: {},
@@ -745,25 +776,25 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
745
776
  },
746
777
  emits: ["update"],
747
778
  setup(e, { emit: t }) {
748
- let n = t, { t: r } = L();
779
+ let n = t, { t: r } = R();
749
780
  function i(e, t) {
750
781
  n("update", { [e]: t });
751
782
  }
752
783
  return (t, n) => (o(), _(O, null, [
753
- T("div", Yn, [T("label", { class: w(y(W)) }, h(y(r).button.fontFamily), 3), T("select", {
784
+ T("div", $n, [T("label", { class: w(y(W)) }, h(y(r).button.fontFamily), 3), T("select", {
754
785
  class: w(y(U)),
755
786
  value: e.block.fontFamily || "",
756
787
  onChange: n[0] ||= (e) => i("fontFamily", e.target.value || void 0)
757
- }, [T("option", Zn, h(y(r).button.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
788
+ }, [T("option", tr, h(y(r).button.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
758
789
  key: e.value,
759
790
  value: e.value
760
- }, h(e.label), 9, Qn))), 128))], 42, Xn)]),
761
- T("div", $n, [T("label", { class: w(y(W)) }, h(y(r).button.text), 3), j(X, {
791
+ }, h(e.label), 9, nr))), 128))], 42, er)]),
792
+ T("div", rr, [T("label", { class: w(y(W)) }, h(y(r).button.text), 3), j(X, {
762
793
  "model-value": e.block.text,
763
794
  type: "text",
764
795
  "onUpdate:modelValue": n[1] ||= (e) => i("text", e)
765
796
  }, null, 8, ["model-value"])]),
766
- T("div", er, [
797
+ T("div", ir, [
767
798
  T("label", { class: w(y(W)) }, h(y(r).button.url), 3),
768
799
  j(X, {
769
800
  "model-value": e.block.url,
@@ -771,38 +802,38 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
771
802
  placeholder: y(r).button.urlPlaceholder,
772
803
  "onUpdate:modelValue": n[2] ||= (e) => i("url", e)
773
804
  }, null, 8, ["model-value", "placeholder"]),
774
- e.block.url ? (o(), _("label", tr, [T("input", {
805
+ e.block.url ? (o(), _("label", ar, [T("input", {
775
806
  type: "checkbox",
776
807
  class: "tpl:size-3.5 tpl:cursor-pointer tpl:accent-[var(--tpl-primary)]",
777
808
  checked: e.block.openInNewTab ?? !1,
778
809
  onChange: n[3] ||= (e) => i("openInNewTab", e.target.checked)
779
- }, null, 40, nr), k(" " + h(y(r).button.openInNewTab), 1)])) : v("", !0)
810
+ }, null, 40, or), k(" " + h(y(r).button.openInNewTab), 1)])) : v("", !0)
780
811
  ]),
781
- T("div", rr, [T("div", ir, [T("label", { class: w(y(W)) }, h(y(r).button.background), 3), j(q, {
812
+ T("div", sr, [T("div", cr, [T("label", { class: w(y(W)) }, h(y(r).button.background), 3), j(q, {
782
813
  "model-value": e.block.backgroundColor,
783
814
  "onUpdate:modelValue": n[4] ||= (e) => i("backgroundColor", e)
784
- }, null, 8, ["model-value"])]), T("div", ar, [T("label", { class: w(y(W)) }, h(y(r).button.textColor), 3), j(q, {
815
+ }, null, 8, ["model-value"])]), T("div", lr, [T("label", { class: w(y(W)) }, h(y(r).button.textColor), 3), j(q, {
785
816
  "model-value": e.block.textColor,
786
817
  "onUpdate:modelValue": n[5] ||= (e) => i("textColor", e)
787
818
  }, null, 8, ["model-value"])])]),
788
- T("div", or, [T("div", sr, [T("label", { class: w(y(W)) }, h(y(r).button.borderRadius), 3), T("div", cr, [T("input", {
819
+ T("div", ur, [T("div", dr, [T("label", { class: w(y(W)) }, h(y(r).button.borderRadius), 3), T("div", fr, [T("input", {
789
820
  type: "number",
790
821
  class: w(y(K)),
791
822
  value: e.block.borderRadius,
792
823
  min: "0",
793
824
  max: "50",
794
825
  onInput: n[6] ||= (e) => i("borderRadius", Number(e.target.value))
795
- }, null, 42, lr), T("span", { class: w(y(G)) }, "px", 2)])]), T("div", ur, [T("label", { class: w(y(W)) }, h(y(r).button.fontSize), 3), T("div", dr, [T("input", {
826
+ }, null, 42, pr), T("span", { class: w(y(G)) }, "px", 2)])]), T("div", mr, [T("label", { class: w(y(W)) }, h(y(r).button.fontSize), 3), T("div", hr, [T("input", {
796
827
  type: "number",
797
828
  class: w(y(K)),
798
829
  value: e.block.fontSize,
799
830
  min: "10",
800
831
  max: "36",
801
832
  onInput: n[7] ||= (e) => i("fontSize", Number(e.target.value))
802
- }, null, 42, fr), T("span", { class: w(y(G)) }, "px", 2)])])])
833
+ }, null, 42, gr), T("span", { class: w(y(G)) }, "px", 2)])])])
803
834
  ], 64));
804
835
  }
805
- }), mr = { class: "spacing-control" }, hr = { class: "tpl:mb-2 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, gr = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-1.5" }, _r = { class: "tpl:flex tpl:items-center" }, vr = ["aria-label"], yr = ["value", "aria-label"], br = ["aria-label"], xr = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Sr = { class: "tpl:flex tpl:items-center" }, Cr = ["aria-label"], wr = ["value", "aria-label"], Tr = ["aria-label"], Er = ["aria-label", "title"], Dr = { class: "tpl:flex tpl:items-center" }, Or = ["aria-label"], kr = ["value", "aria-label"], Ar = ["aria-label"], jr = { class: "tpl:flex tpl:items-center" }, Mr = ["aria-label"], Nr = ["value", "aria-label"], Pr = ["aria-label"], Z = "tpl:flex tpl:items-center tpl:justify-center tpl:w-8 tpl:h-8 tpl:text-[var(--tpl-text-muted)] tpl:bg-[var(--tpl-bg)] tpl:border tpl:border-[var(--tpl-border)] tpl:cursor-pointer tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:bg-[var(--tpl-bg-hover)] hover:tpl:text-[var(--tpl-text)] active:tpl:bg-[var(--tpl-bg-active)]", Fr = "tpl:w-10 tpl:h-8 tpl:text-center tpl:text-xs tpl:font-medium tpl:border-y tpl:border-x-0 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)] tpl:outline-none tpl:transition-all tpl:duration-[120ms] focus:tpl:border-[var(--tpl-primary)] focus:tpl:shadow-[var(--tpl-ring)]", Ir = /*#__PURE__*/ V(/* @__PURE__ */ A({
836
+ }), vr = { class: "spacing-control" }, yr = { class: "tpl:mb-2 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, br = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-1.5" }, xr = { class: "tpl:flex tpl:items-center" }, Sr = ["aria-label"], Cr = ["value", "aria-label"], wr = ["aria-label"], Tr = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Er = { class: "tpl:flex tpl:items-center" }, Dr = ["aria-label"], Or = ["value", "aria-label"], kr = ["aria-label"], Ar = ["aria-label", "title"], jr = { class: "tpl:flex tpl:items-center" }, Mr = ["aria-label"], Nr = ["value", "aria-label"], Pr = ["aria-label"], Fr = { class: "tpl:flex tpl:items-center" }, Ir = ["aria-label"], Lr = ["value", "aria-label"], Rr = ["aria-label"], Z = "tpl:flex tpl:items-center tpl:justify-center tpl:w-8 tpl:h-8 tpl:text-[var(--tpl-text-muted)] tpl:bg-[var(--tpl-bg)] tpl:border tpl:border-[var(--tpl-border)] tpl:cursor-pointer tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)] hover:tpl:bg-[var(--tpl-bg-hover)] hover:tpl:text-[var(--tpl-text)] active:tpl:bg-[var(--tpl-bg-active)]", zr = "tpl:w-10 tpl:h-8 tpl:text-center tpl:text-xs tpl:font-medium tpl:border-y tpl:border-x-0 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)] tpl:outline-none tpl:transition-all tpl:duration-[120ms] focus:tpl:border-[var(--tpl-primary)] focus:tpl:shadow-[var(--tpl-ring)]", Br = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
806
837
  __name: "SpacingControl",
807
838
  props: {
808
839
  modelValue: {},
@@ -810,7 +841,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
810
841
  },
811
842
  emits: ["update:modelValue"],
812
843
  setup(e, { emit: t }) {
813
- let n = e, r = t, { t: i } = L(), a = g(() => n.modelValue.top === n.modelValue.right && n.modelValue.right === n.modelValue.bottom && n.modelValue.bottom === n.modelValue.left), s = f(a.value);
844
+ let n = e, r = t, { t: i } = R(), a = g(() => n.modelValue.top === n.modelValue.right && n.modelValue.right === n.modelValue.bottom && n.modelValue.bottom === n.modelValue.left), s = f(a.value);
814
845
  M(a, (e) => {
815
846
  !e && s.value && (s.value = !1);
816
847
  });
@@ -849,24 +880,24 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
849
880
  });
850
881
  }
851
882
  }
852
- return (t, n) => (o(), _("div", mr, [T("label", hr, h(e.label), 1), T("div", gr, [
853
- T("div", _r, [
883
+ return (t, n) => (o(), _("div", vr, [T("label", yr, h(e.label), 1), T("div", br, [
884
+ T("div", xr, [
854
885
  T("button", {
855
886
  "aria-label": y(i).spacingControl.decreaseTop,
856
887
  class: w([Z, "tpl:rounded-l-[var(--tpl-radius-sm)]"]),
857
888
  onClick: n[0] ||= (e) => c("top", -1)
858
- }, [j(y(dt), {
889
+ }, [j(y(pt), {
859
890
  size: 12,
860
891
  "stroke-width": 2
861
- })], 10, vr),
892
+ })], 10, Sr),
862
893
  T("input", {
863
894
  type: "number",
864
- class: w(Fr),
895
+ class: w(zr),
865
896
  value: e.modelValue.top,
866
897
  "aria-label": y(i).spacingControl.top,
867
898
  min: "0",
868
899
  onInput: n[1] ||= (e) => l("top", Number(e.target.value))
869
- }, null, 40, yr),
900
+ }, null, 40, Cr),
870
901
  T("button", {
871
902
  "aria-label": y(i).spacingControl.increaseTop,
872
903
  class: w([Z, "tpl:rounded-r-[var(--tpl-radius-sm)]"]),
@@ -874,26 +905,26 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
874
905
  }, [j(y(H), {
875
906
  size: 12,
876
907
  "stroke-width": 2
877
- })], 10, br)
908
+ })], 10, wr)
878
909
  ]),
879
- T("div", xr, [
880
- T("div", Sr, [
910
+ T("div", Tr, [
911
+ T("div", Er, [
881
912
  T("button", {
882
913
  "aria-label": y(i).spacingControl.decreaseLeft,
883
914
  class: w([Z, "tpl:rounded-l-[var(--tpl-radius-sm)]"]),
884
915
  onClick: n[3] ||= (e) => c("left", -1)
885
- }, [j(y(dt), {
916
+ }, [j(y(pt), {
886
917
  size: 12,
887
918
  "stroke-width": 2
888
- })], 10, Cr),
919
+ })], 10, Dr),
889
920
  T("input", {
890
921
  type: "number",
891
- class: w(Fr),
922
+ class: w(zr),
892
923
  value: e.modelValue.left,
893
924
  "aria-label": y(i).spacingControl.left,
894
925
  min: "0",
895
926
  onInput: n[4] ||= (e) => l("left", Number(e.target.value))
896
- }, null, 40, wr),
927
+ }, null, 40, Or),
897
928
  T("button", {
898
929
  "aria-label": y(i).spacingControl.increaseLeft,
899
930
  class: w([Z, "tpl:rounded-r-[var(--tpl-radius-sm)]"]),
@@ -901,39 +932,39 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
901
932
  }, [j(y(H), {
902
933
  size: 12,
903
934
  "stroke-width": 2
904
- })], 10, Tr)
935
+ })], 10, kr)
905
936
  ]),
906
937
  T("button", {
907
938
  class: w(["tpl:flex tpl:h-8 tpl:w-8 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", s.value ? "tpl:border-[var(--tpl-primary)] tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary)]" : "tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text-muted)] hover:tpl:bg-[var(--tpl-bg-hover)]"]),
908
939
  "aria-label": s.value ? y(i).spacingControl.unlock : y(i).spacingControl.lockAll,
909
940
  title: s.value ? y(i).spacingControl.unlock : y(i).spacingControl.lockAll,
910
941
  onClick: u
911
- }, [s.value ? (o(), x(y(at), {
942
+ }, [s.value ? (o(), x(y(st), {
912
943
  key: 0,
913
944
  size: 14,
914
945
  "stroke-width": 2
915
- })) : (o(), x(y(st), {
946
+ })) : (o(), x(y(lt), {
916
947
  key: 1,
917
948
  size: 14,
918
949
  "stroke-width": 2
919
- }))], 10, Er),
920
- T("div", Dr, [
950
+ }))], 10, Ar),
951
+ T("div", jr, [
921
952
  T("button", {
922
953
  "aria-label": y(i).spacingControl.decreaseRight,
923
954
  class: w([Z, "tpl:rounded-l-[var(--tpl-radius-sm)]"]),
924
955
  onClick: n[6] ||= (e) => c("right", -1)
925
- }, [j(y(dt), {
956
+ }, [j(y(pt), {
926
957
  size: 12,
927
958
  "stroke-width": 2
928
- })], 10, Or),
959
+ })], 10, Mr),
929
960
  T("input", {
930
961
  type: "number",
931
- class: w(Fr),
962
+ class: w(zr),
932
963
  value: e.modelValue.right,
933
964
  "aria-label": y(i).spacingControl.right,
934
965
  min: "0",
935
966
  onInput: n[7] ||= (e) => l("right", Number(e.target.value))
936
- }, null, 40, kr),
967
+ }, null, 40, Nr),
937
968
  T("button", {
938
969
  "aria-label": y(i).spacingControl.increaseRight,
939
970
  class: w([Z, "tpl:rounded-r-[var(--tpl-radius-sm)]"]),
@@ -941,26 +972,26 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
941
972
  }, [j(y(H), {
942
973
  size: 12,
943
974
  "stroke-width": 2
944
- })], 10, Ar)
975
+ })], 10, Pr)
945
976
  ])
946
977
  ]),
947
- T("div", jr, [
978
+ T("div", Fr, [
948
979
  T("button", {
949
980
  "aria-label": y(i).spacingControl.decreaseBottom,
950
981
  class: w([Z, "tpl:rounded-l-[var(--tpl-radius-sm)]"]),
951
982
  onClick: n[9] ||= (e) => c("bottom", -1)
952
- }, [j(y(dt), {
983
+ }, [j(y(pt), {
953
984
  size: 12,
954
985
  "stroke-width": 2
955
- })], 10, Mr),
986
+ })], 10, Ir),
956
987
  T("input", {
957
988
  type: "number",
958
- class: w(Fr),
989
+ class: w(zr),
959
990
  value: e.modelValue.bottom,
960
991
  "aria-label": y(i).spacingControl.bottom,
961
992
  min: "0",
962
993
  onInput: n[10] ||= (e) => l("bottom", Number(e.target.value))
963
- }, null, 40, Nr),
994
+ }, null, 40, Lr),
964
995
  T("button", {
965
996
  "aria-label": y(i).spacingControl.increaseBottom,
966
997
  class: w([Z, "tpl:rounded-r-[var(--tpl-radius-sm)]"]),
@@ -968,11 +999,11 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
968
999
  }, [j(y(H), {
969
1000
  size: 12,
970
1001
  "stroke-width": 2
971
- })], 10, Pr)
1002
+ })], 10, Rr)
972
1003
  ])
973
1004
  ])]));
974
1005
  }
975
- }), [["__scopeId", "data-v-9a9c8a07"]]), Lr = { class: "tpl:mt-3" }, Rr = /* @__PURE__ */ A({
1006
+ }), [["__scopeId", "data-v-9a9c8a07"]]), Vr = { class: "tpl:mt-3" }, Hr = /* @__PURE__ */ A({
976
1007
  __name: "CollapsibleSection",
977
1008
  props: {
978
1009
  title: {},
@@ -985,25 +1016,25 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
985
1016
  type: "button",
986
1017
  class: "tpl:flex tpl:w-full tpl:cursor-pointer tpl:items-center tpl:gap-1.5 tpl:border-none tpl:bg-transparent tpl:p-0 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
987
1018
  onClick: i[0] ||= (e) => n.$emit("toggle")
988
- }, [j(y(Be), {
1019
+ }, [j(y(Ge), {
989
1020
  class: w(["tpl:transition-transform tpl:duration-200", e.open ? "tpl:rotate-0" : "tpl:-rotate-90"]),
990
1021
  size: 12,
991
1022
  "stroke-width": 2
992
- }, null, 8, ["class"]), T("span", null, h(e.title), 1)]), r(T("div", Lr, [t(n.$slots, "default")], 512), [[E, e.open]])], 2));
1023
+ }, null, 8, ["class"]), T("span", null, h(e.title), 1)]), r(T("div", Vr, [t(n.$slots, "default")], 512), [[E, e.open]])], 2));
993
1024
  }
994
- }), zr = { class: "tpl:space-y-2" }, Br = ["checked", "onChange"], Vr = { class: "tpl:space-y-2" }, Hr = ["value"], Ur = { value: "" }, Wr = ["label"], Gr = ["value"], Kr = ["value"], qr = {
1025
+ }), Ur = { class: "tpl:space-y-2" }, Wr = ["checked", "onChange"], Gr = { class: "tpl:space-y-2" }, Kr = ["value"], qr = { value: "" }, Jr = ["label"], Yr = ["value"], Xr = ["value"], Zr = {
995
1026
  key: 0,
996
1027
  value: "__custom__"
997
- }, Jr = {
1028
+ }, Qr = {
998
1029
  key: 0,
999
1030
  class: "tpl:space-y-2"
1000
- }, Yr = { class: "tpl:mb-1 tpl:block tpl:text-[11px] tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Xr = { class: "tpl:mb-1 tpl:block tpl:text-[11px] tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Zr = { class: "tpl:flex tpl:justify-end" }, Qr = ["disabled"], $r = {
1031
+ }, $r = { class: "tpl:mb-1 tpl:block tpl:text-[11px] tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, ei = { class: "tpl:mb-1 tpl:block tpl:text-[11px] tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, ti = { class: "tpl:flex tpl:justify-end" }, ni = ["disabled"], ri = {
1001
1032
  key: 0,
1002
1033
  class: "tpl:text-[11px] tpl:text-[var(--tpl-text-muted)]"
1003
- }, ei = { class: "tpl:space-y-1" }, ti = { class: "tpl:m-0 tpl:overflow-x-auto tpl:rounded tpl:bg-[var(--tpl-bg)] tpl:p-2 tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-muted)]" }, ni = {
1034
+ }, ii = { class: "tpl:space-y-1" }, ai = { class: "tpl:m-0 tpl:overflow-x-auto tpl:rounded tpl:bg-[var(--tpl-bg)] tpl:p-2 tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-muted)]" }, oi = {
1004
1035
  key: 0,
1005
1036
  class: "tpl:m-0 tpl:overflow-x-auto tpl:rounded tpl:bg-[var(--tpl-bg)] tpl:p-2 tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-muted)]"
1006
- }, ri = /* @__PURE__ */ A({
1037
+ }, si = /* @__PURE__ */ A({
1007
1038
  __name: "CommonBlockSettings",
1008
1039
  props: {
1009
1040
  block: {},
@@ -1011,13 +1042,13 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1011
1042
  },
1012
1043
  emits: ["update"],
1013
1044
  setup(e, { emit: t }) {
1014
- let n = e, i = t, { t: s } = L(), p = l(Ge, []), m = l(ue, !1), b = d(/* @__PURE__ */ new Set()), S = f(!1), E = f(""), D = f(""), ee = [{
1045
+ let n = e, i = t, { t: s } = R(), p = l(Ye, []), m = l(V, !1), b = d(/* @__PURE__ */ new Set()), S = f(!1), E = f(""), D = f(""), ee = [{
1015
1046
  key: "desktop",
1016
- icon: lt,
1047
+ icon: dt,
1017
1048
  labelKey: "showOnDesktop"
1018
1049
  }, {
1019
1050
  key: "mobile",
1020
- icon: mt,
1051
+ icon: gt,
1021
1052
  labelKey: "showOnMobile"
1022
1053
  }];
1023
1054
  function A(e) {
@@ -1055,24 +1086,24 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1055
1086
  [e]: t
1056
1087
  } });
1057
1088
  }
1058
- function R(e) {
1089
+ function L(e) {
1059
1090
  return n.block.visibility?.[e] !== !1;
1060
1091
  }
1061
- function z(e) {
1092
+ function re(e) {
1062
1093
  let t = {
1063
- desktop: R("desktop"),
1064
- mobile: R("mobile")
1094
+ desktop: L("desktop"),
1095
+ mobile: L("mobile")
1065
1096
  };
1066
1097
  t[e] = !t[e], i("update", { visibility: t });
1067
1098
  }
1068
1099
  return (t, n) => (o(), _("div", { class: w(["tpl:flex tpl:flex-col", e.isFirstSection ? "" : "tpl:mt-4"]) }, [
1069
- j(Rr, {
1100
+ j(Hr, {
1070
1101
  title: y(s).blockSettings.spacing,
1071
1102
  open: b.has("spacing"),
1072
1103
  "no-border": e.isFirstSection,
1073
1104
  onToggle: n[1] ||= (e) => A("spacing")
1074
1105
  }, {
1075
- default: u(() => [j(Ir, {
1106
+ default: u(() => [j(Br, {
1076
1107
  label: y(s).blockSettings.padding,
1077
1108
  "model-value": e.block.styles.padding,
1078
1109
  "onUpdate:modelValue": n[0] ||= (e) => I("padding", e)
@@ -1083,7 +1114,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1083
1114
  "open",
1084
1115
  "no-border"
1085
1116
  ]),
1086
- j(Rr, {
1117
+ j(Hr, {
1087
1118
  title: y(s).blockSettings.background,
1088
1119
  open: b.has("bg"),
1089
1120
  onToggle: n[3] ||= (e) => A("bg")
@@ -1095,21 +1126,21 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1095
1126
  }, null, 8, ["model-value"])]),
1096
1127
  _: 1
1097
1128
  }, 8, ["title", "open"]),
1098
- j(Rr, {
1129
+ j(Hr, {
1099
1130
  title: y(s).blockSettings.display,
1100
1131
  open: b.has("display"),
1101
1132
  onToggle: n[4] ||= (e) => A("display")
1102
1133
  }, {
1103
- default: u(() => [T("div", zr, [(o(), _(O, null, c(ee, (e) => T("label", {
1134
+ default: u(() => [T("div", Ur, [(o(), _(O, null, c(ee, (e) => T("label", {
1104
1135
  key: e.key,
1105
1136
  class: "tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-xs tpl:text-[var(--tpl-text)]"
1106
1137
  }, [
1107
1138
  T("input", {
1108
1139
  type: "checkbox",
1109
1140
  class: "tpl:accent-[var(--tpl-primary)]",
1110
- checked: R(e.key),
1111
- onChange: (t) => z(e.key)
1112
- }, null, 40, Br),
1141
+ checked: L(e.key),
1142
+ onChange: (t) => re(e.key)
1143
+ }, null, 40, Wr),
1113
1144
  (o(), x(a(e.icon), {
1114
1145
  size: 14,
1115
1146
  "stroke-width": 1.5
@@ -1118,13 +1149,13 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1118
1149
  ])), 64))])]),
1119
1150
  _: 1
1120
1151
  }, 8, ["title", "open"]),
1121
- N.value ? (o(), x(Rr, {
1152
+ N.value ? (o(), x(Hr, {
1122
1153
  key: 0,
1123
1154
  title: y(s).blockSettings.displayCondition,
1124
1155
  open: b.has("condition"),
1125
1156
  onToggle: n[8] ||= (e) => A("condition")
1126
1157
  }, {
1127
- default: u(() => [T("div", Vr, [T("select", {
1158
+ default: u(() => [T("div", Gr, [T("select", {
1128
1159
  class: w(["tpl:w-full tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-2 tpl:text-xs tpl:outline-none tpl:transition-all tpl:duration-150 tpl:focus:border-[var(--tpl-primary)] tpl:focus:shadow-[0_0_0_3px_var(--tpl-primary-light)]", e.block.displayCondition ? "tpl:border-[var(--tpl-primary)] tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-text)]" : "tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]"]),
1129
1160
  value: S.value || P.value ? "__custom__" : e.block.displayCondition?.label ?? "",
1130
1161
  onChange: n[5] ||= (e) => {
@@ -1141,48 +1172,48 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1141
1172
  n && i("update", { displayCondition: n });
1142
1173
  }
1143
1174
  }, [
1144
- T("option", Ur, h(y(s).blockSettings.noCondition), 1),
1175
+ T("option", qr, h(y(s).blockSettings.noCondition), 1),
1145
1176
  (o(!0), _(O, null, c(F.value, (e, t) => (o(), _(O, { key: t }, [t ? (o(), _("optgroup", {
1146
1177
  key: 0,
1147
1178
  label: String(t)
1148
1179
  }, [(o(!0), _(O, null, c(e, (e) => (o(), _("option", {
1149
1180
  key: e.label,
1150
1181
  value: e.label
1151
- }, h(e.label), 9, Gr))), 128))], 8, Wr)) : (o(!0), _(O, { key: 1 }, c(e, (e) => (o(), _("option", {
1182
+ }, h(e.label), 9, Yr))), 128))], 8, Jr)) : (o(!0), _(O, { key: 1 }, c(e, (e) => (o(), _("option", {
1152
1183
  key: e.label,
1153
1184
  value: e.label
1154
- }, h(e.label), 9, Kr))), 128))], 64))), 128)),
1155
- y(m) ? (o(), _("option", qr, h(y(s).blockSettings.customCondition), 1)) : v("", !0)
1156
- ], 42, Hr), S.value || P.value ? (o(), _("div", Jr, [
1157
- T("div", null, [T("label", Yr, h(y(s).blockSettings.customConditionBefore), 1), r(T("textarea", {
1185
+ }, h(e.label), 9, Xr))), 128))], 64))), 128)),
1186
+ y(m) ? (o(), _("option", Zr, h(y(s).blockSettings.customCondition), 1)) : v("", !0)
1187
+ ], 42, Kr), S.value || P.value ? (o(), _("div", Qr, [
1188
+ T("div", null, [T("label", $r, h(y(s).blockSettings.customConditionBefore), 1), r(T("textarea", {
1158
1189
  "onUpdate:modelValue": n[6] ||= (e) => E.value = e,
1159
1190
  rows: "2",
1160
- class: w(y(At))
1191
+ class: w(y(Mt))
1161
1192
  }, null, 2), [[C, E.value]])]),
1162
- T("div", null, [T("label", Xr, h(y(s).blockSettings.customConditionAfter), 1), r(T("textarea", {
1193
+ T("div", null, [T("label", ei, h(y(s).blockSettings.customConditionAfter), 1), r(T("textarea", {
1163
1194
  "onUpdate:modelValue": n[7] ||= (e) => D.value = e,
1164
1195
  rows: "2",
1165
- class: w(y(At))
1196
+ class: w(y(Mt))
1166
1197
  }, null, 2), [[C, D.value]])]),
1167
- T("div", Zr, [T("button", {
1198
+ T("div", ti, [T("button", {
1168
1199
  type: "button",
1169
1200
  class: "tpl:cursor-pointer tpl:rounded-md tpl:border-none tpl:bg-[var(--tpl-primary)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-bg)] tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:disabled:opacity-50",
1170
1201
  disabled: !E.value.trim(),
1171
1202
  onClick: ne
1172
- }, h(y(s).blockSettings.applyCondition), 9, Qr)])
1173
- ])) : e.block.displayCondition && !P.value ? (o(), _(O, { key: 1 }, [e.block.displayCondition.description ? (o(), _("p", $r, h(e.block.displayCondition.description), 1)) : v("", !0), T("div", ei, [T("pre", ti, h(e.block.displayCondition.before), 1), e.block.displayCondition.after ? (o(), _("pre", ni, h(e.block.displayCondition.after), 1)) : v("", !0)])], 64)) : v("", !0)])]),
1203
+ }, h(y(s).blockSettings.applyCondition), 9, ni)])
1204
+ ])) : e.block.displayCondition && !P.value ? (o(), _(O, { key: 1 }, [e.block.displayCondition.description ? (o(), _("p", ri, h(e.block.displayCondition.description), 1)) : v("", !0), T("div", ii, [T("pre", ai, h(e.block.displayCondition.before), 1), e.block.displayCondition.after ? (o(), _("pre", oi, h(e.block.displayCondition.after), 1)) : v("", !0)])], 64)) : v("", !0)])]),
1174
1205
  _: 1
1175
1206
  }, 8, ["title", "open"])) : v("", !0)
1176
1207
  ], 2));
1177
1208
  }
1178
- }), ii = ["title"], ai = { class: "tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, oi = {
1209
+ }), ci = ["title"], li = { class: "tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, ui = {
1179
1210
  key: 1,
1180
1211
  class: "tpl:text-[var(--tpl-danger)]"
1181
- }, si = [
1212
+ }, di = [
1182
1213
  "aria-checked",
1183
1214
  "aria-label",
1184
1215
  "disabled"
1185
- ], ci = /* @__PURE__ */ A({
1216
+ ], fi = /* @__PURE__ */ A({
1186
1217
  __name: "BooleanField",
1187
1218
  props: {
1188
1219
  field: {},
@@ -1191,18 +1222,18 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1191
1222
  },
1192
1223
  emits: ["update:modelValue"],
1193
1224
  setup(e, { emit: t }) {
1194
- let n = t, { t: r } = L();
1225
+ let n = t, { t: r } = R();
1195
1226
  return (t, i) => (o(), _("div", {
1196
1227
  class: "tpl:mb-3.5",
1197
1228
  title: e.readOnly ? y(r).customBlocks.dataSource.readOnlyTooltip : void 0
1198
- }, [T("label", { class: w(["tpl:flex tpl:items-center tpl:justify-between tpl:gap-2", e.readOnly ? "tpl:cursor-not-allowed" : "tpl:cursor-pointer"]) }, [T("span", ai, [
1229
+ }, [T("label", { class: w(["tpl:flex tpl:items-center tpl:justify-between tpl:gap-2", e.readOnly ? "tpl:cursor-not-allowed" : "tpl:cursor-pointer"]) }, [T("span", li, [
1199
1230
  k(h(e.field.label) + " ", 1),
1200
- e.readOnly ? (o(), x(y(at), {
1231
+ e.readOnly ? (o(), x(y(st), {
1201
1232
  key: 0,
1202
1233
  size: 12,
1203
1234
  class: "tpl:inline tpl:text-[var(--tpl-text-dim)]"
1204
1235
  })) : v("", !0),
1205
- e.field.required ? (o(), _("span", oi, " * ")) : v("", !0)
1236
+ e.field.required ? (o(), _("span", ui, " * ")) : v("", !0)
1206
1237
  ]), T("button", {
1207
1238
  type: "button",
1208
1239
  role: "switch",
@@ -1215,9 +1246,9 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1215
1246
  ]),
1216
1247
  disabled: e.readOnly,
1217
1248
  onClick: i[0] ||= (t) => !e.readOnly && n("update:modelValue", !e.modelValue)
1218
- }, [T("span", { class: w(["tpl:pointer-events-none tpl:inline-block tpl:size-4 tpl:rounded-full tpl:bg-[var(--tpl-bg)] tpl:shadow tpl:transition-transform tpl:duration-200", e.modelValue ? "tpl:translate-x-4" : "tpl:translate-x-0"]) }, null, 2)], 10, si)], 2)], 8, ii));
1249
+ }, [T("span", { class: w(["tpl:pointer-events-none tpl:inline-block tpl:size-4 tpl:rounded-full tpl:bg-[var(--tpl-bg)] tpl:shadow tpl:transition-transform tpl:duration-200", e.modelValue ? "tpl:translate-x-4" : "tpl:translate-x-0"]) }, null, 2)], 10, di)], 2)], 8, ci));
1219
1250
  }
1220
- }), li = { class: "tpl:mb-3.5" }, ui = {
1251
+ }), pi = { class: "tpl:mb-3.5" }, mi = {
1221
1252
  key: 1,
1222
1253
  class: "tpl:text-[var(--tpl-danger)]"
1223
1254
  }, Q = /* @__PURE__ */ A({
@@ -1228,17 +1259,17 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1228
1259
  readOnly: { type: Boolean }
1229
1260
  },
1230
1261
  setup(e) {
1231
- return (n, r) => (o(), _("div", li, [T("label", { class: w(y(W)) }, [
1262
+ return (n, r) => (o(), _("div", pi, [T("label", { class: w(y(W)) }, [
1232
1263
  k(h(e.label) + " ", 1),
1233
- e.readOnly ? (o(), x(y(at), {
1264
+ e.readOnly ? (o(), x(y(st), {
1234
1265
  key: 0,
1235
1266
  size: 12,
1236
1267
  class: "tpl:inline tpl:text-[var(--tpl-text-dim)]"
1237
1268
  })) : v("", !0),
1238
- e.required ? (o(), _("span", ui, "*")) : v("", !0)
1269
+ e.required ? (o(), _("span", mi, "*")) : v("", !0)
1239
1270
  ], 2), t(n.$slots, "default")]));
1240
1271
  }
1241
- }), di = /* @__PURE__ */ A({
1272
+ }), hi = /* @__PURE__ */ A({
1242
1273
  __name: "ColorField",
1243
1274
  props: {
1244
1275
  field: {},
@@ -1247,7 +1278,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1247
1278
  },
1248
1279
  emits: ["update:modelValue"],
1249
1280
  setup(e, { emit: t }) {
1250
- let n = t, { t: r } = L();
1281
+ let n = t, { t: r } = R();
1251
1282
  return (t, i) => (o(), x(Q, {
1252
1283
  label: e.field.label,
1253
1284
  required: e.field.required,
@@ -1272,11 +1303,11 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1272
1303
  "read-only"
1273
1304
  ]));
1274
1305
  }
1275
- }), fi = [
1306
+ }), gi = [
1276
1307
  "value",
1277
1308
  "placeholder",
1278
1309
  "title"
1279
- ], pi = ["value", "placeholder"], mi = /* @__PURE__ */ A({
1310
+ ], _i = ["value", "placeholder"], vi = /* @__PURE__ */ A({
1280
1311
  __name: "ImageField",
1281
1312
  props: {
1282
1313
  field: {},
@@ -1285,7 +1316,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1285
1316
  },
1286
1317
  emits: ["update:modelValue"],
1287
1318
  setup(e, { emit: t }) {
1288
- let n = t, { t: r } = L(), i = l(ge, null), a = R(), s = g(() => !!i);
1319
+ let n = t, { t: r } = R(), i = l(ye, null), a = z(), s = g(() => !!i);
1289
1320
  async function c() {
1290
1321
  let e = await i?.({ accept: ["images"] });
1291
1322
  a.alive && e && n("update:modelValue", e.url);
@@ -1303,18 +1334,18 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1303
1334
  placeholder: e.field.placeholder || "https://...",
1304
1335
  disabled: "",
1305
1336
  title: y(r).customBlocks.dataSource.readOnlyTooltip
1306
- }, null, 10, fi)) : (o(), _("input", {
1337
+ }, null, 10, gi)) : (o(), _("input", {
1307
1338
  key: 1,
1308
1339
  type: "url",
1309
1340
  class: w(y(U)),
1310
1341
  value: e.modelValue,
1311
1342
  placeholder: e.field.placeholder || "https://...",
1312
1343
  onInput: i[0] ||= (e) => n("update:modelValue", e.target.value)
1313
- }, null, 42, pi)), s.value && !e.readOnly ? (o(), _("button", {
1344
+ }, null, 42, _i)), s.value && !e.readOnly ? (o(), _("button", {
1314
1345
  key: 2,
1315
1346
  class: "tpl:mt-2 tpl:flex tpl:w-full tpl:items-center tpl:justify-center tpl:gap-1.5 tpl:rounded-md tpl:border tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-primary)] tpl:bg-[var(--tpl-bg)]",
1316
1347
  onClick: i[1] ||= (e) => c()
1317
- }, [j(y(je), {
1348
+ }, [j(y(Ie), {
1318
1349
  size: 14,
1319
1350
  "stroke-width": 1.5
1320
1351
  }), k(" " + h(y(r).image.browseMedia), 1)])) : v("", !0)]),
@@ -1325,7 +1356,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1325
1356
  "read-only"
1326
1357
  ]));
1327
1358
  }
1328
- }), hi = [
1359
+ }), yi = [
1329
1360
  "value",
1330
1361
  "placeholder",
1331
1362
  "min",
@@ -1333,7 +1364,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1333
1364
  "step",
1334
1365
  "disabled",
1335
1366
  "title"
1336
- ], gi = /* @__PURE__ */ A({
1367
+ ], bi = /* @__PURE__ */ A({
1337
1368
  __name: "NumberField",
1338
1369
  props: {
1339
1370
  field: {},
@@ -1342,7 +1373,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1342
1373
  },
1343
1374
  emits: ["update:modelValue"],
1344
1375
  setup(e, { emit: t }) {
1345
- let n = t, { t: r } = L();
1376
+ let n = t, { t: r } = R();
1346
1377
  return (t, i) => (o(), x(Q, {
1347
1378
  label: e.field.label,
1348
1379
  required: e.field.required,
@@ -1359,7 +1390,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1359
1390
  disabled: e.readOnly,
1360
1391
  title: e.readOnly ? y(r).customBlocks.dataSource.readOnlyTooltip : void 0,
1361
1392
  onInput: i[0] ||= (t) => !e.readOnly && n("update:modelValue", Number(t.target.value))
1362
- }, null, 42, hi)]),
1393
+ }, null, 42, yi)]),
1363
1394
  _: 1
1364
1395
  }, 8, [
1365
1396
  "label",
@@ -1367,10 +1398,10 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1367
1398
  "read-only"
1368
1399
  ]));
1369
1400
  }
1370
- }), _i = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, vi = { class: "tpl:mb-2 tpl:flex tpl:items-center tpl:justify-between" }, yi = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-dim)]" }, bi = ["title", "onClick"], xi = {
1401
+ }), xi = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, Si = { class: "tpl:mb-2 tpl:flex tpl:items-center tpl:justify-between" }, Ci = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-dim)]" }, wi = ["title", "onClick"], Ti = {
1371
1402
  key: 1,
1372
1403
  class: "tpl:m-0 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
1373
- }, Si = /* @__PURE__ */ A({
1404
+ }, Ei = /* @__PURE__ */ A({
1374
1405
  __name: "RepeatableField",
1375
1406
  props: {
1376
1407
  field: {},
@@ -1379,7 +1410,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1379
1410
  },
1380
1411
  emits: ["update:modelValue"],
1381
1412
  setup(e, { emit: t }) {
1382
- let n = e, r = t, { t: i } = L(), s = g(() => n.modelValue || []), l = g(() => !n.field.maxItems || s.value.length < n.field.maxItems), d = g(() => !n.field.minItems || s.value.length > n.field.minItems);
1413
+ let n = e, r = t, { t: i } = R(), s = g(() => n.modelValue || []), l = g(() => !n.field.maxItems || s.value.length < n.field.maxItems), d = g(() => !n.field.minItems || s.value.length > n.field.minItems);
1383
1414
  function f() {
1384
1415
  if (!l.value || n.readOnly) return;
1385
1416
  let e = {};
@@ -1402,20 +1433,20 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1402
1433
  required: e.field.required,
1403
1434
  "read-only": e.readOnly
1404
1435
  }, {
1405
- default: u(() => [T("div", _i, [
1436
+ default: u(() => [T("div", xi, [
1406
1437
  (o(!0), _(O, null, c(s.value, (t, n) => (o(), _("div", {
1407
1438
  key: `${e.field.key}-${n}`,
1408
1439
  class: "tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:p-3"
1409
- }, [T("div", vi, [T("span", yi, " #" + h(n + 1), 1), d.value && !e.readOnly ? (o(), _("button", {
1440
+ }, [T("div", Si, [T("span", Ci, " #" + h(n + 1), 1), d.value && !e.readOnly ? (o(), _("button", {
1410
1441
  key: 0,
1411
1442
  type: "button",
1412
1443
  class: "tpl:flex tpl:size-6 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-150 tpl:hover:border-[var(--tpl-danger)] tpl:hover:bg-[var(--tpl-danger-light)] tpl:hover:text-[var(--tpl-danger)]",
1413
1444
  title: y(i).customBlocks.fields.removeItem,
1414
1445
  onClick: (e) => p(n)
1415
- }, [j(y(Me), {
1446
+ }, [j(y(Le), {
1416
1447
  size: 12,
1417
1448
  "stroke-width": 2
1418
- })], 8, bi)) : v("", !0)]), (o(!0), _(O, null, c(e.field.fields, (r) => (o(), x(a(y(ji)(r.type)), {
1449
+ })], 8, wi)) : v("", !0)]), (o(!0), _(O, null, c(e.field.fields, (r) => (o(), x(a(y(Fi)(r.type)), {
1419
1450
  key: r.key,
1420
1451
  field: r,
1421
1452
  "model-value": t[r.key],
@@ -1430,13 +1461,13 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1430
1461
  l.value && !e.readOnly ? (o(), _("button", {
1431
1462
  key: 0,
1432
1463
  type: "button",
1433
- class: w(y(kt)),
1464
+ class: w(y(jt)),
1434
1465
  onClick: f
1435
1466
  }, [j(y(H), {
1436
1467
  size: 14,
1437
1468
  "stroke-width": 2
1438
1469
  }), k(" " + h(y(i).customBlocks.fields.addItem), 1)], 2)) : v("", !0),
1439
- !l.value && !e.readOnly ? (o(), _("p", xi, h(y(i).customBlocks.fields.maxItemsReached), 1)) : v("", !0)
1470
+ !l.value && !e.readOnly ? (o(), _("p", Ti, h(y(i).customBlocks.fields.maxItemsReached), 1)) : v("", !0)
1440
1471
  ])]),
1441
1472
  _: 1
1442
1473
  }, 8, [
@@ -1445,11 +1476,11 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1445
1476
  "read-only"
1446
1477
  ]));
1447
1478
  }
1448
- }), Ci = [
1479
+ }), Di = [
1449
1480
  "value",
1450
1481
  "disabled",
1451
1482
  "title"
1452
- ], wi = ["value"], Ti = /* @__PURE__ */ A({
1483
+ ], Oi = ["value"], ki = /* @__PURE__ */ A({
1453
1484
  __name: "SelectField",
1454
1485
  props: {
1455
1486
  field: {},
@@ -1458,7 +1489,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1458
1489
  },
1459
1490
  emits: ["update:modelValue"],
1460
1491
  setup(e, { emit: t }) {
1461
- let n = t, { t: r } = L();
1492
+ let n = t, { t: r } = R();
1462
1493
  return (t, i) => (o(), x(Q, {
1463
1494
  label: e.field.label,
1464
1495
  required: e.field.required,
@@ -1473,7 +1504,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1473
1504
  }, [(o(!0), _(O, null, c(e.field.options, (e) => (o(), _("option", {
1474
1505
  key: e.value,
1475
1506
  value: e.value
1476
- }, h(e.label), 9, wi))), 128))], 42, Ci)]),
1507
+ }, h(e.label), 9, Oi))), 128))], 42, Di)]),
1477
1508
  _: 1
1478
1509
  }, 8, [
1479
1510
  "label",
@@ -1481,11 +1512,11 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1481
1512
  "read-only"
1482
1513
  ]));
1483
1514
  }
1484
- }), Ei = [
1515
+ }), Ai = [
1485
1516
  "value",
1486
1517
  "placeholder",
1487
1518
  "title"
1488
- ], Di = /* @__PURE__ */ A({
1519
+ ], ji = /* @__PURE__ */ A({
1489
1520
  __name: "TextField",
1490
1521
  props: {
1491
1522
  field: {},
@@ -1494,7 +1525,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1494
1525
  },
1495
1526
  emits: ["update:modelValue"],
1496
1527
  setup(e, { emit: t }) {
1497
- let n = t, { t: r } = L();
1528
+ let n = t, { t: r } = R();
1498
1529
  return (t, i) => (o(), x(Q, {
1499
1530
  label: e.field.label,
1500
1531
  required: e.field.required,
@@ -1508,7 +1539,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1508
1539
  placeholder: e.field.placeholder,
1509
1540
  disabled: "",
1510
1541
  title: y(r).customBlocks.dataSource.readOnlyTooltip
1511
- }, null, 10, Ei)) : (o(), x(X, {
1542
+ }, null, 10, Ai)) : (o(), x(X, {
1512
1543
  key: 1,
1513
1544
  "model-value": e.modelValue,
1514
1545
  placeholder: e.field.placeholder,
@@ -1521,12 +1552,12 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1521
1552
  "read-only"
1522
1553
  ]));
1523
1554
  }
1524
- }), Oi = [
1555
+ }), Mi = [
1525
1556
  "value",
1526
1557
  "placeholder",
1527
1558
  "title"
1528
- ], ki = "tpl:w-full tpl:resize-y tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-2 tpl:text-sm tpl:text-[var(--tpl-text)] tpl:outline-none tpl:opacity-60 tpl:cursor-not-allowed", Ai = {
1529
- text: Di,
1559
+ ], Ni = "tpl:w-full tpl:resize-y tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-2 tpl:text-sm tpl:text-[var(--tpl-text)] tpl:outline-none tpl:opacity-60 tpl:cursor-not-allowed", Pi = {
1560
+ text: ji,
1530
1561
  textarea: /* @__PURE__ */ A({
1531
1562
  __name: "TextareaField",
1532
1563
  props: {
@@ -1536,7 +1567,7 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1536
1567
  },
1537
1568
  emits: ["update:modelValue"],
1538
1569
  setup(e, { emit: t }) {
1539
- let n = t, { t: r } = L();
1570
+ let n = t, { t: r } = R();
1540
1571
  return (t, i) => (o(), x(Q, {
1541
1572
  label: e.field.label,
1542
1573
  required: e.field.required,
@@ -1549,8 +1580,8 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1549
1580
  rows: "3",
1550
1581
  disabled: "",
1551
1582
  title: y(r).customBlocks.dataSource.readOnlyTooltip,
1552
- class: w(ki)
1553
- }, null, 8, Oi)) : (o(), x(_n, {
1583
+ class: w(Ni)
1584
+ }, null, 8, Mi)) : (o(), x(xn, {
1554
1585
  key: 1,
1555
1586
  "model-value": e.modelValue,
1556
1587
  placeholder: e.field.placeholder,
@@ -1564,42 +1595,42 @@ var nn = ["aria-label", "onKeydown"], rn = ["data-tooltip"], an = ["data-tooltip
1564
1595
  ]));
1565
1596
  }
1566
1597
  }),
1567
- image: mi,
1568
- color: di,
1569
- number: gi,
1570
- select: Ti,
1571
- boolean: ci,
1572
- repeatable: Si
1598
+ image: vi,
1599
+ color: hi,
1600
+ number: bi,
1601
+ select: ki,
1602
+ boolean: fi,
1603
+ repeatable: Ei
1573
1604
  };
1574
- function ji(e) {
1575
- return Ai[e] ?? Di;
1605
+ function Fi(e) {
1606
+ return Pi[e] ?? ji;
1576
1607
  }
1577
1608
  //#endregion
1578
1609
  //#region src/components/toolbar/CustomBlockToolbar.vue?vue&type=script&setup=true&lang.ts
1579
- var Mi = {
1610
+ var Ii = {
1580
1611
  key: 0,
1581
1612
  class: "tpl:p-4"
1582
- }, Ni = { class: "tpl:m-0 tpl:text-center tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Pi = { key: 1 }, Fi = {
1613
+ }, Li = { class: "tpl:m-0 tpl:text-center tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ri = { key: 1 }, zi = {
1583
1614
  key: 0,
1584
1615
  class: "tpl:m-0 tpl:mb-3 tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
1585
- }, Ii = {
1616
+ }, Bi = {
1586
1617
  key: 1,
1587
1618
  class: "tpl:mb-4"
1588
- }, Li = {
1619
+ }, Vi = {
1589
1620
  key: 1,
1590
1621
  class: "tpl:flex tpl:h-[32px] tpl:items-center"
1591
- }, Ri = {
1622
+ }, Hi = {
1592
1623
  key: 0,
1593
1624
  class: "tpl:w-full tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
1594
- }, zi = {
1625
+ }, Ui = {
1595
1626
  key: 2,
1596
1627
  class: "tpl:m-0 tpl:mt-2 tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]"
1597
- }, Bi = /* @__PURE__ */ A({
1628
+ }, Wi = /* @__PURE__ */ A({
1598
1629
  __name: "CustomBlockToolbar",
1599
1630
  props: { block: {} },
1600
1631
  emits: ["updateFieldValues", "updateDataSourceFetched"],
1601
1632
  setup(e, { emit: t }) {
1602
- let n = e, r = t, { t: i } = L(), s = l(z, []), u = g(() => s.find((e) => e.type === n.block.customType)), { isFetching: d, fetchError: f, fetch: p, hasDataSource: m, needsFetch: b } = Fe({
1633
+ let n = e, r = t, { t: i } = R(), s = l(B, []), u = g(() => s.find((e) => e.type === n.block.customType)), { isFetching: d, fetchError: f, fetch: p, hasDataSource: m, needsFetch: b } = Be({
1603
1634
  definition: u,
1604
1635
  block: g(() => n.block),
1605
1636
  onUpdate: (e, t) => {
@@ -1615,23 +1646,23 @@ var Mi = {
1615
1646
  [e]: t
1616
1647
  });
1617
1648
  }
1618
- return (t, n) => u.value ? (o(), _("div", Pi, [
1619
- u.value.description ? (o(), _("p", Fi, h(u.value.description), 1)) : v("", !0),
1620
- y(m) ? (o(), _("div", Ii, [y(b) && !y(d) ? (o(), _("button", {
1649
+ return (t, n) => u.value ? (o(), _("div", Ri, [
1650
+ u.value.description ? (o(), _("p", zi, h(u.value.description), 1)) : v("", !0),
1651
+ y(m) ? (o(), _("div", Bi, [y(b) && !y(d) ? (o(), _("button", {
1621
1652
  key: 0,
1622
1653
  type: "button",
1623
1654
  class: "tpl:flex tpl:w-full tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded-md tpl:px-3 tpl:py-2.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-bg)] tpl:transition-all tpl:duration-150 tpl:bg-[var(--tpl-primary)]",
1624
1655
  onClick: n[0] ||= (...e) => y(p) && y(p)(...e)
1625
- }, h(u.value?.dataSource?.label || y(i).customBlocks.dataSource.fetchButton), 1)) : (o(), _("div", Li, [y(d) ? (o(), _("div", Ri, h(y(i).customBlocks.dataSource.fetching), 1)) : (o(), _("button", {
1656
+ }, h(u.value?.dataSource?.label || y(i).customBlocks.dataSource.fetchButton), 1)) : (o(), _("div", Vi, [y(d) ? (o(), _("div", Hi, h(y(i).customBlocks.dataSource.fetching), 1)) : (o(), _("button", {
1626
1657
  key: 1,
1627
1658
  type: "button",
1628
1659
  class: "tpl:flex tpl:w-full tpl:items-center tpl:justify-center tpl:gap-1.5 tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-150 tpl:hover:border-[var(--tpl-primary)] tpl:hover:text-[var(--tpl-primary)]",
1629
1660
  onClick: n[1] ||= (...e) => y(p) && y(p)(...e)
1630
- }, [j(y(He), { size: 12 }), k(" " + h(y(i).customBlocks.dataSource.changeButton), 1)]))])), y(f) ? (o(), _("p", zi, [j(y(ne), {
1661
+ }, [j(y(Ke), { size: 12 }), k(" " + h(y(i).customBlocks.dataSource.changeButton), 1)]))])), y(f) ? (o(), _("p", Ui, [j(y(L), {
1631
1662
  size: 14,
1632
1663
  class: "tpl:shrink-0"
1633
1664
  }), k(" " + h(y(i).customBlocks.dataSource.fetchError), 1)])) : v("", !0)])) : v("", !0),
1634
- (o(!0), _(O, null, c(u.value.fields, (t) => (o(), x(a(y(ji)(t.type)), {
1665
+ (o(!0), _(O, null, c(u.value.fields, (t) => (o(), x(a(y(Fi)(t.type)), {
1635
1666
  key: t.key,
1636
1667
  field: t,
1637
1668
  "model-value": e.block.fieldValues[t.key],
@@ -1643,19 +1674,19 @@ var Mi = {
1643
1674
  "read-only",
1644
1675
  "onUpdate:modelValue"
1645
1676
  ]))), 128))
1646
- ])) : (o(), _("div", Mi, [T("p", Ni, h(y(i).customBlocks.toolbar.noDefinition), 1)]));
1677
+ ])) : (o(), _("div", Ii, [T("p", Li, h(y(i).customBlocks.toolbar.noDefinition), 1)]));
1647
1678
  }
1648
- }), Vi = { class: "tpl:mb-3.5" }, Hi = { class: "tpl:mb-3.5" }, Ui = { class: "tpl:mb-3.5" }, Wi = { class: "tpl:flex tpl:items-stretch" }, Gi = ["value"], Ki = /* @__PURE__ */ A({
1679
+ }), Gi = { class: "tpl:mb-3.5" }, Ki = { class: "tpl:mb-3.5" }, qi = { class: "tpl:mb-3.5" }, Ji = { class: "tpl:flex tpl:items-stretch" }, Yi = ["value"], Xi = /* @__PURE__ */ A({
1649
1680
  __name: "DividerToolbar",
1650
1681
  props: { block: {} },
1651
1682
  emits: ["update"],
1652
1683
  setup(e, { emit: t }) {
1653
- let n = t, { t: r } = L();
1684
+ let n = t, { t: r } = R();
1654
1685
  function i(e, t) {
1655
1686
  n("update", { [e]: t });
1656
1687
  }
1657
1688
  return (t, n) => (o(), _(O, null, [
1658
- T("div", Vi, [T("label", { class: w(y(W)) }, h(y(r).divider.style), 3), j(Y, {
1689
+ T("div", Gi, [T("label", { class: w(y(W)) }, h(y(r).divider.style), 3), j(Y, {
1659
1690
  options: [
1660
1691
  {
1661
1692
  value: "solid",
@@ -1673,53 +1704,53 @@ var Mi = {
1673
1704
  "model-value": e.block.lineStyle,
1674
1705
  "onUpdate:modelValue": n[0] ||= (e) => i("lineStyle", e)
1675
1706
  }, null, 8, ["options", "model-value"])]),
1676
- T("div", Hi, [T("label", { class: w(y(W)) }, h(y(r).divider.color), 3), j(q, {
1707
+ T("div", Ki, [T("label", { class: w(y(W)) }, h(y(r).divider.color), 3), j(q, {
1677
1708
  "model-value": e.block.color,
1678
1709
  "onUpdate:modelValue": n[1] ||= (e) => i("color", e)
1679
1710
  }, null, 8, ["model-value"])]),
1680
- T("div", Ui, [T("label", { class: w(y(W)) }, h(y(r).divider.thickness), 3), T("div", Wi, [T("input", {
1711
+ T("div", qi, [T("label", { class: w(y(W)) }, h(y(r).divider.thickness), 3), T("div", Ji, [T("input", {
1681
1712
  type: "number",
1682
1713
  class: w(y(K)),
1683
1714
  value: e.block.thickness,
1684
1715
  min: "1",
1685
1716
  max: "10",
1686
1717
  onInput: n[2] ||= (e) => i("thickness", Number(e.target.value))
1687
- }, null, 42, Gi), T("span", { class: w(y(G)) }, "px", 2)])])
1718
+ }, null, 42, Yi), T("span", { class: w(y(G)) }, "px", 2)])])
1688
1719
  ], 64));
1689
1720
  }
1690
- }), qi = { class: "tpl:mb-3.5" }, Ji = ["value"], Yi = { class: "tpl:mt-1.5 tpl:flex tpl:items-start tpl:gap-1.5 tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Xi = /* @__PURE__ */ A({
1721
+ }), Zi = { class: "tpl:mb-3.5" }, Qi = ["value"], $i = { class: "tpl:mt-1.5 tpl:flex tpl:items-start tpl:gap-1.5 tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, ea = /* @__PURE__ */ A({
1691
1722
  __name: "HtmlToolbar",
1692
1723
  props: { block: {} },
1693
1724
  emits: ["update"],
1694
1725
  setup(e, { emit: t }) {
1695
- let n = t, { t: r } = L();
1696
- return (t, i) => (o(), _("div", qi, [
1726
+ let n = t, { t: r } = R();
1727
+ return (t, i) => (o(), _("div", Zi, [
1697
1728
  T("label", { class: w(y(W)) }, h(y(r).html.content), 3),
1698
1729
  T("textarea", {
1699
1730
  value: e.block.content,
1700
1731
  placeholder: "<div>...</div>",
1701
1732
  rows: "10",
1702
- class: w(y(At)),
1733
+ class: w(y(Mt)),
1703
1734
  onInput: i[0] ||= (e) => n("update", { content: e.target.value })
1704
- }, null, 42, Ji),
1705
- T("p", Yi, [j(y(tt), {
1735
+ }, null, 42, Qi),
1736
+ T("p", $i, [j(y(rt), {
1706
1737
  size: 12,
1707
1738
  class: "tpl:mt-0.5 tpl:shrink-0"
1708
1739
  }), k(" " + h(y(r).html.sanitizationHint), 1)])
1709
1740
  ]));
1710
1741
  }
1711
- }), Zi = { class: "tpl:mb-3.5" }, Qi = {
1742
+ }), ta = { class: "tpl:mb-3.5" }, na = {
1712
1743
  key: 0,
1713
1744
  class: "tpl:mb-3.5"
1714
- }, $i = ["value", "placeholder"], ea = { class: "tpl:mb-3.5" }, ta = { class: "tpl:mt-2 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-[12px] tpl:text-[var(--tpl-text-muted)]" }, na = ["checked"], ra = { class: "tpl:block tpl:text-[var(--tpl-text-dim)]" }, ia = { class: "tpl:mb-3.5" }, aa = ["value"], oa = { value: "full" }, sa = { class: "tpl:mb-3.5" }, ca = { class: "tpl:mb-3.5" }, la = {
1745
+ }, ra = ["value", "placeholder"], ia = { class: "tpl:mb-3.5" }, aa = { class: "tpl:mt-2 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-[12px] tpl:text-[var(--tpl-text-muted)]" }, oa = ["checked"], sa = { class: "tpl:block tpl:text-[var(--tpl-text-dim)]" }, ca = { class: "tpl:mb-3.5" }, la = ["value"], ua = { value: "full" }, da = { class: "tpl:mb-3.5" }, fa = { class: "tpl:mb-3.5" }, pa = {
1715
1746
  key: 0,
1716
1747
  class: "tpl:mt-2 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-[12px] tpl:text-[var(--tpl-text-muted)]"
1717
- }, ua = ["checked"], da = /* @__PURE__ */ A({
1748
+ }, ma = ["checked"], ha = /* @__PURE__ */ A({
1718
1749
  __name: "ImageToolbar",
1719
1750
  props: { block: {} },
1720
1751
  emits: ["update"],
1721
1752
  setup(e, { emit: t }) {
1722
- let n = t, { t: r } = L(), i = l(ge, null), a = l(Oe, ke.liquid), s = R(), c = g(() => !!i), u = f(!1), d = f(!1), { start: p } = Ve(() => {
1753
+ let n = t, { t: r } = R(), i = l(ye, null), a = l(Me, $e.liquid), s = z(), c = g(() => !!i), u = f(!1), d = f(!1), { start: p } = Ve(() => {
1723
1754
  u.value = !1;
1724
1755
  }, 1e3, { immediate: !1 });
1725
1756
  function m(e, t) {
@@ -1730,7 +1761,7 @@ var Mi = {
1730
1761
  s.alive && e && (m("src", e.url), e.alt && (m("alt", e.alt), d.value = !0), u.value = !0, p());
1731
1762
  }
1732
1763
  return (t, n) => (o(), _(O, null, [
1733
- T("div", Zi, [
1764
+ T("div", ta, [
1734
1765
  T("label", { class: w(y(W)) }, h(y(r).image.imageUrl), 3),
1735
1766
  j(X, {
1736
1767
  "model-value": e.block.src,
@@ -1752,19 +1783,19 @@ var Mi = {
1752
1783
  "background-color": "var(--tpl-bg)"
1753
1784
  },
1754
1785
  onClick: b
1755
- }, [j(y(je), {
1786
+ }, [j(y(Ie), {
1756
1787
  size: 14,
1757
1788
  "stroke-width": 1.5
1758
1789
  }), k(" " + h(y(r).image.browseMedia), 1)])) : v("", !0)
1759
1790
  ]),
1760
- y(Ye)(e.block.src, y(a)) ? (o(), _("div", Qi, [T("label", { class: w(y(W)) }, [k(h(y(r).image.placeholderUrl) + " ", 1), n[8] ||= T("span", { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, h("(optional)"), -1)], 2), T("input", {
1791
+ y(nt)(e.block.src, y(a)) ? (o(), _("div", na, [T("label", { class: w(y(W)) }, [k(h(y(r).image.placeholderUrl) + " ", 1), n[8] ||= T("span", { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, h("(optional)"), -1)], 2), T("input", {
1761
1792
  type: "url",
1762
1793
  class: w(y(U)),
1763
1794
  value: e.block.placeholderUrl || "",
1764
1795
  placeholder: y(r).image.placeholderUrlPlaceholder,
1765
1796
  onInput: n[1] ||= (e) => m("placeholderUrl", e.target.value)
1766
- }, null, 42, $i)])) : v("", !0),
1767
- T("div", ea, [
1797
+ }, null, 42, ra)])) : v("", !0),
1798
+ T("div", ia, [
1768
1799
  T("label", { class: w(y(W)) }, h(y(r).image.altText), 3),
1769
1800
  j(X, {
1770
1801
  "model-value": e.block.alt,
@@ -1779,24 +1810,24 @@ var Mi = {
1779
1810
  "pulse",
1780
1811
  "disabled"
1781
1812
  ]),
1782
- T("label", ta, [T("input", {
1813
+ T("label", aa, [T("input", {
1783
1814
  type: "checkbox",
1784
1815
  class: "tpl:size-3.5 tpl:cursor-pointer tpl:accent-[var(--tpl-primary)]",
1785
1816
  checked: e.block.decorative === !0,
1786
1817
  onChange: n[3] ||= (e) => m("decorative", e.target.checked)
1787
- }, null, 40, na), T("span", null, [k(h(y(r).image.decorative) + " ", 1), T("span", ra, h(y(r).image.decorativeHint), 1)])])
1818
+ }, null, 40, oa), T("span", null, [k(h(y(r).image.decorative) + " ", 1), T("span", sa, h(y(r).image.decorativeHint), 1)])])
1788
1819
  ]),
1789
- T("div", ia, [T("label", { class: w(y(W)) }, h(y(r).image.width), 3), T("select", {
1820
+ T("div", ca, [T("label", { class: w(y(W)) }, h(y(r).image.width), 3), T("select", {
1790
1821
  class: w(y(U)),
1791
1822
  value: e.block.width,
1792
1823
  onChange: n[4] ||= (e) => m("width", e.target.value === "full" ? "full" : Number(e.target.value))
1793
1824
  }, [
1794
- T("option", oa, h(y(r).image.fullWidth), 1),
1825
+ T("option", ua, h(y(r).image.fullWidth), 1),
1795
1826
  n[9] ||= T("option", { value: "300" }, "300px", -1),
1796
1827
  n[10] ||= T("option", { value: "400" }, "400px", -1),
1797
1828
  n[11] ||= T("option", { value: "500" }, "500px", -1)
1798
- ], 42, aa)]),
1799
- T("div", sa, [T("label", { class: w(y(W)) }, h(y(r).title.align), 3), j(Y, {
1829
+ ], 42, la)]),
1830
+ T("div", da, [T("label", { class: w(y(W)) }, h(y(r).title.align), 3), j(Y, {
1800
1831
  options: [
1801
1832
  {
1802
1833
  value: "left",
@@ -1814,7 +1845,7 @@ var Mi = {
1814
1845
  "model-value": e.block.align,
1815
1846
  "onUpdate:modelValue": n[5] ||= (e) => m("align", e)
1816
1847
  }, null, 8, ["options", "model-value"])]),
1817
- T("div", ca, [
1848
+ T("div", fa, [
1818
1849
  T("label", { class: w(y(W)) }, h(y(r).image.linkUrl), 3),
1819
1850
  j(X, {
1820
1851
  "model-value": e.block.linkUrl || "",
@@ -1822,20 +1853,20 @@ var Mi = {
1822
1853
  placeholder: y(r).image.imageUrlPlaceholder,
1823
1854
  "onUpdate:modelValue": n[6] ||= (e) => m("linkUrl", e)
1824
1855
  }, null, 8, ["model-value", "placeholder"]),
1825
- e.block.linkUrl ? (o(), _("label", la, [T("input", {
1856
+ e.block.linkUrl ? (o(), _("label", pa, [T("input", {
1826
1857
  type: "checkbox",
1827
1858
  class: "tpl:size-3.5 tpl:cursor-pointer tpl:accent-[var(--tpl-primary)]",
1828
1859
  checked: e.block.linkOpenInNewTab ?? !1,
1829
1860
  onChange: n[7] ||= (e) => m("linkOpenInNewTab", e.target.checked)
1830
- }, null, 40, ua), k(" " + h(y(r).image.openInNewTab), 1)])) : v("", !0)
1861
+ }, null, 40, ma), k(" " + h(y(r).image.openInNewTab), 1)])) : v("", !0)
1831
1862
  ])
1832
1863
  ], 64));
1833
1864
  }
1834
- }), fa = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, pa = { class: "tpl:flex tpl:items-center tpl:gap-2" }, ma = [
1865
+ }), ga = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, _a = { class: "tpl:flex tpl:items-center tpl:gap-2" }, va = [
1835
1866
  "value",
1836
1867
  "placeholder",
1837
1868
  "onInput"
1838
- ], ha = ["title", "onClick"], ga = { class: "tpl:flex tpl:items-center tpl:gap-3 tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, _a = ["checked", "onChange"], va = { class: "tpl:flex tpl:items-center tpl:gap-2" }, ya = ["value"], ba = { value: "" }, xa = ["value"], Sa = ["value"], Ca = /* @__PURE__ */ A({
1869
+ ], ya = ["title", "onClick"], ba = { class: "tpl:flex tpl:items-center tpl:gap-3 tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, xa = ["checked", "onChange"], Sa = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Ca = ["value"], wa = { value: "" }, Ta = ["value"], Ea = ["value"], Da = /* @__PURE__ */ A({
1839
1870
  __name: "MenuToolbar",
1840
1871
  props: {
1841
1872
  block: {},
@@ -1843,7 +1874,7 @@ var Mi = {
1843
1874
  },
1844
1875
  emits: ["update"],
1845
1876
  setup(e, { emit: t }) {
1846
- let n = e, r = t, { t: i } = L(), a = g(() => [
1877
+ let n = e, r = t, { t: i } = R(), a = g(() => [
1847
1878
  {
1848
1879
  key: "openInNewTab",
1849
1880
  label: i.menu.openInNewTab
@@ -1860,17 +1891,17 @@ var Mi = {
1860
1891
  {
1861
1892
  value: "left",
1862
1893
  label: i.title.alignLeft,
1863
- icon: yt
1894
+ icon: xt
1864
1895
  },
1865
1896
  {
1866
1897
  value: "center",
1867
1898
  label: i.title.alignCenter,
1868
- icon: gt
1899
+ icon: vt
1869
1900
  },
1870
1901
  {
1871
1902
  value: "right",
1872
1903
  label: i.title.alignRight,
1873
- icon: bt
1904
+ icon: St
1874
1905
  }
1875
1906
  ]);
1876
1907
  function l(e, t) {
@@ -1878,7 +1909,7 @@ var Mi = {
1878
1909
  }
1879
1910
  function d() {
1880
1911
  let e = {
1881
- id: F(),
1912
+ id: I(),
1882
1913
  text: "",
1883
1914
  url: "",
1884
1915
  openInNewTab: !1,
@@ -1898,24 +1929,24 @@ var Mi = {
1898
1929
  }
1899
1930
  return (t, n) => (o(), _(O, null, [
1900
1931
  j(J, { label: y(i).menu.items }, {
1901
- default: u(() => [T("div", fa, [(o(!0), _(O, null, c(e.block.items, (t) => (o(), _("div", {
1932
+ default: u(() => [T("div", ga, [(o(!0), _(O, null, c(e.block.items, (t) => (o(), _("div", {
1902
1933
  key: t.id,
1903
1934
  class: "tpl:flex tpl:flex-col tpl:gap-1.5 tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:p-2"
1904
1935
  }, [
1905
- T("div", pa, [T("input", {
1936
+ T("div", _a, [T("input", {
1906
1937
  type: "text",
1907
1938
  class: w([y(U), "tpl:flex-1"]),
1908
1939
  value: t.text,
1909
1940
  placeholder: y(i).menu.text,
1910
1941
  onInput: (e) => f(t.id, "text", e.target.value)
1911
- }, null, 42, ma), T("button", {
1912
- class: w(y(Ot)),
1942
+ }, null, 42, va), T("button", {
1943
+ class: w(y(At)),
1913
1944
  title: y(i).menu.removeItem,
1914
1945
  onClick: (e) => p(t.id)
1915
- }, [j(y(Ae), {
1946
+ }, [j(y(Pe), {
1916
1947
  size: 14,
1917
1948
  "stroke-width": 2
1918
- })], 10, ha)]),
1949
+ })], 10, ya)]),
1919
1950
  j(X, {
1920
1951
  "model-value": t.url,
1921
1952
  type: "url",
@@ -1926,7 +1957,7 @@ var Mi = {
1926
1957
  "placeholder",
1927
1958
  "onUpdate:modelValue"
1928
1959
  ]),
1929
- T("div", ga, [(o(!0), _(O, null, c(a.value, (e) => (o(), _("label", {
1960
+ T("div", ba, [(o(!0), _(O, null, c(a.value, (e) => (o(), _("label", {
1930
1961
  key: e.key,
1931
1962
  class: "tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-1"
1932
1963
  }, [T("input", {
@@ -1934,14 +1965,14 @@ var Mi = {
1934
1965
  checked: t[e.key],
1935
1966
  class: "tpl:accent-[var(--tpl-primary)]",
1936
1967
  onChange: (n) => f(t.id, e.key, n.target.checked)
1937
- }, null, 40, _a), k(" " + h(e.label), 1)]))), 128))]),
1938
- T("div", va, [T("label", { class: w([y(W), "tpl:!mb-0"]) }, h(y(i).menu.color), 3), j(q, {
1968
+ }, null, 40, xa), k(" " + h(e.label), 1)]))), 128))]),
1969
+ T("div", Sa, [T("label", { class: w([y(W), "tpl:!mb-0"]) }, h(y(i).menu.color), 3), j(q, {
1939
1970
  "swatch-only": "",
1940
1971
  "model-value": t.color || e.block.linkColor || e.block.color,
1941
1972
  "onUpdate:modelValue": (e) => f(t.id, "color", e)
1942
1973
  }, null, 8, ["model-value", "onUpdate:modelValue"])])
1943
1974
  ]))), 128)), T("button", {
1944
- class: w(y(kt)),
1975
+ class: w(y(jt)),
1945
1976
  onClick: d
1946
1977
  }, [j(y(H), {
1947
1978
  size: 14,
@@ -1954,14 +1985,14 @@ var Mi = {
1954
1985
  class: w(y(U)),
1955
1986
  value: e.block.fontFamily || "",
1956
1987
  onChange: n[0] ||= (e) => l("fontFamily", e.target.value || void 0)
1957
- }, [T("option", ba, h(y(i).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
1988
+ }, [T("option", wa, h(y(i).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
1958
1989
  key: e.value,
1959
1990
  value: e.value
1960
- }, h(e.label), 9, xa))), 128))], 42, ya)]),
1991
+ }, h(e.label), 9, Ta))), 128))], 42, Ca)]),
1961
1992
  _: 1
1962
1993
  }, 8, ["label"]),
1963
1994
  j(J, { label: y(i).menu.fontSize }, {
1964
- default: u(() => [j(Nt, {
1995
+ default: u(() => [j(Ft, {
1965
1996
  "model-value": e.block.fontSize,
1966
1997
  min: 8,
1967
1998
  max: 48,
@@ -1998,7 +2029,7 @@ var Mi = {
1998
2029
  class: w(y(U)),
1999
2030
  value: e.block.separator,
2000
2031
  onInput: n[5] ||= (e) => l("separator", e.target.value)
2001
- }, null, 42, Sa)]),
2032
+ }, null, 42, Ea)]),
2002
2033
  _: 1
2003
2034
  }, 8, ["label"]),
2004
2035
  j(J, { label: y(i).menu.separatorColor }, {
@@ -2009,7 +2040,7 @@ var Mi = {
2009
2040
  _: 1
2010
2041
  }, 8, ["label"]),
2011
2042
  j(J, { label: y(i).menu.spacing }, {
2012
- default: u(() => [j(Nt, {
2043
+ default: u(() => [j(Ft, {
2013
2044
  "model-value": e.block.spacing,
2014
2045
  min: 0,
2015
2046
  max: 50,
@@ -2023,11 +2054,11 @@ var Mi = {
2023
2054
  });
2024
2055
  //#endregion
2025
2056
  //#region src/utils/rebalanceColumnChildren.ts
2026
- function wa(e) {
2057
+ function Oa(e) {
2027
2058
  return e === "1" ? 1 : e === "3" ? 3 : 2;
2028
2059
  }
2029
- function Ta(e, t) {
2030
- let n = wa(t);
2060
+ function ka(e, t) {
2061
+ let n = Oa(t);
2031
2062
  if (e.length === n) return e;
2032
2063
  if (e.length < n) {
2033
2064
  let t = Array.from({ length: n - e.length }, () => []);
@@ -2038,12 +2069,12 @@ function Ta(e, t) {
2038
2069
  }
2039
2070
  //#endregion
2040
2071
  //#region src/components/toolbar/SectionToolbar.vue?vue&type=script&setup=true&lang.ts
2041
- var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PURE__ */ A({
2072
+ var Aa = { class: "tpl:mb-3.5" }, ja = ["value"], Ma = ["value"], Na = /* @__PURE__ */ A({
2042
2073
  __name: "SectionToolbar",
2043
2074
  props: { block: {} },
2044
2075
  emits: ["update"],
2045
2076
  setup(e, { emit: t }) {
2046
- let n = e, r = t, { t: i } = L(), a = g(() => [
2077
+ let n = e, r = t, { t: i } = R(), a = g(() => [
2047
2078
  {
2048
2079
  value: "1",
2049
2080
  label: i.section.column1
@@ -2069,30 +2100,30 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2069
2100
  let t = e.target.value;
2070
2101
  r("update", {
2071
2102
  columns: t,
2072
- children: Ta(n.block.children, t)
2103
+ children: ka(n.block.children, t)
2073
2104
  });
2074
2105
  }
2075
- return (t, n) => (o(), _("div", Ea, [T("label", { class: w(y(W)) }, h(y(i).section.columns), 3), T("select", {
2106
+ return (t, n) => (o(), _("div", Aa, [T("label", { class: w(y(W)) }, h(y(i).section.columns), 3), T("select", {
2076
2107
  class: w(y(U)),
2077
2108
  value: e.block.columns,
2078
2109
  onChange: s
2079
2110
  }, [(o(!0), _(O, null, c(a.value, (e) => (o(), _("option", {
2080
2111
  key: e.value,
2081
2112
  value: e.value
2082
- }, h(e.label), 9, Oa))), 128))], 42, Da)]));
2113
+ }, h(e.label), 9, Ma))), 128))], 42, ja)]));
2083
2114
  }
2084
- }), Aa = { class: "tpl:mb-3.5" }, ja = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, Ma = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Na = ["value", "onChange"], Pa = ["value"], Fa = ["title", "onClick"], Ia = { class: "tpl:mb-3.5" }, La = ["value"], Ra = { value: "solid" }, za = { value: "outlined" }, Ba = { value: "rounded" }, Va = { value: "square" }, Ha = { value: "circle" }, Ua = { class: "tpl:mb-3.5" }, Wa = { class: "tpl:mb-3.5" }, Ga = { class: "tpl:flex tpl:items-stretch" }, Ka = ["value"], qa = { class: "tpl:mb-3.5" }, Ja = /* @__PURE__ */ A({
2115
+ }), Pa = { class: "tpl:mb-3.5" }, Fa = { class: "tpl:flex tpl:flex-col tpl:gap-2" }, Ia = { class: "tpl:flex tpl:items-center tpl:gap-2" }, La = ["value", "onChange"], Ra = ["value"], za = ["title", "onClick"], Ba = { class: "tpl:mb-3.5" }, Va = ["value"], Ha = { value: "solid" }, Ua = { value: "outlined" }, Wa = { value: "rounded" }, Ga = { value: "square" }, Ka = { value: "circle" }, qa = { class: "tpl:mb-3.5" }, Ja = { class: "tpl:mb-3.5" }, Ya = { class: "tpl:flex tpl:items-stretch" }, Xa = ["value"], Za = { class: "tpl:mb-3.5" }, Qa = /* @__PURE__ */ A({
2085
2116
  __name: "SocialToolbar",
2086
2117
  props: { block: {} },
2087
2118
  emits: ["update"],
2088
2119
  setup(e, { emit: t }) {
2089
- let n = e, r = t, { t: i } = L();
2120
+ let n = e, r = t, { t: i } = R();
2090
2121
  function a(e, t) {
2091
2122
  r("update", { [e]: t });
2092
2123
  }
2093
2124
  function s() {
2094
2125
  let e = {
2095
- id: F(),
2126
+ id: I(),
2096
2127
  platform: "facebook",
2097
2128
  url: ""
2098
2129
  };
@@ -2108,25 +2139,25 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2108
2139
  r("update", { icons: n.block.icons.filter((t) => t.id !== e) });
2109
2140
  }
2110
2141
  return (t, n) => (o(), _(O, null, [
2111
- T("div", Aa, [T("label", { class: w(y(W)) }, h(y(i).social.icons), 3), T("div", ja, [(o(!0), _(O, null, c(e.block.icons, (e) => (o(), _("div", {
2142
+ T("div", Pa, [T("label", { class: w(y(W)) }, h(y(i).social.icons), 3), T("div", Fa, [(o(!0), _(O, null, c(e.block.icons, (e) => (o(), _("div", {
2112
2143
  key: e.id,
2113
2144
  class: "tpl:flex tpl:flex-col tpl:gap-1.5 tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:p-2"
2114
- }, [T("div", Ma, [T("select", {
2145
+ }, [T("div", Ia, [T("select", {
2115
2146
  "data-testid": "social-platform-select",
2116
2147
  class: w([y(U), "tpl:flex-1"]),
2117
2148
  value: e.platform,
2118
2149
  onChange: (t) => l(e.id, "platform", t.target.value)
2119
- }, [(o(!0), _(O, null, c(y(ie), (e) => (o(), _("option", {
2150
+ }, [(o(!0), _(O, null, c(y(oe), (e) => (o(), _("option", {
2120
2151
  key: e,
2121
2152
  value: e
2122
- }, h(y(I)[e].name), 9, Pa))), 128))], 42, Na), T("button", {
2123
- class: w(y(Ot)),
2153
+ }, h(y(ie)[e].name), 9, Ra))), 128))], 42, La), T("button", {
2154
+ class: w(y(At)),
2124
2155
  title: y(i).social.removeIcon,
2125
2156
  onClick: (t) => u(e.id)
2126
- }, [j(y(Ae), {
2157
+ }, [j(y(Pe), {
2127
2158
  size: 14,
2128
2159
  "stroke-width": 2
2129
- })], 10, Fa)]), j(X, {
2160
+ })], 10, za)]), j(X, {
2130
2161
  "model-value": e.url,
2131
2162
  type: "url",
2132
2163
  placeholder: y(i).social.urlPlaceholder,
@@ -2136,24 +2167,24 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2136
2167
  "placeholder",
2137
2168
  "onUpdate:modelValue"
2138
2169
  ])]))), 128)), T("button", {
2139
- class: w(y(kt)),
2170
+ class: w(y(jt)),
2140
2171
  onClick: s
2141
2172
  }, [j(y(H), {
2142
2173
  size: 14,
2143
2174
  "stroke-width": 2
2144
2175
  }), k(" " + h(y(i).social.addIcon), 1)], 2)])]),
2145
- T("div", Ia, [T("label", { class: w(y(W)) }, h(y(i).social.style), 3), T("select", {
2176
+ T("div", Ba, [T("label", { class: w(y(W)) }, h(y(i).social.style), 3), T("select", {
2146
2177
  class: w(y(U)),
2147
2178
  value: e.block.iconStyle,
2148
2179
  onChange: n[0] ||= (e) => a("iconStyle", e.target.value)
2149
2180
  }, [
2150
- T("option", Ra, h(y(i).social.styleSolid), 1),
2151
- T("option", za, h(y(i).social.styleOutlined), 1),
2152
- T("option", Ba, h(y(i).social.styleRounded), 1),
2153
- T("option", Va, h(y(i).social.styleSquare), 1),
2154
- T("option", Ha, h(y(i).social.styleCircle), 1)
2155
- ], 42, La)]),
2156
- T("div", Ua, [T("label", { class: w(y(W)) }, h(y(i).social.size), 3), j(Y, {
2181
+ T("option", Ha, h(y(i).social.styleSolid), 1),
2182
+ T("option", Ua, h(y(i).social.styleOutlined), 1),
2183
+ T("option", Wa, h(y(i).social.styleRounded), 1),
2184
+ T("option", Ga, h(y(i).social.styleSquare), 1),
2185
+ T("option", Ka, h(y(i).social.styleCircle), 1)
2186
+ ], 42, Va)]),
2187
+ T("div", qa, [T("label", { class: w(y(W)) }, h(y(i).social.size), 3), j(Y, {
2157
2188
  options: [
2158
2189
  {
2159
2190
  value: "small",
@@ -2171,30 +2202,30 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2171
2202
  "model-value": e.block.iconSize,
2172
2203
  "onUpdate:modelValue": n[1] ||= (e) => a("iconSize", e)
2173
2204
  }, null, 8, ["options", "model-value"])]),
2174
- T("div", Wa, [T("label", { class: w(y(W)) }, h(y(i).social.spacing), 3), T("div", Ga, [T("input", {
2205
+ T("div", Ja, [T("label", { class: w(y(W)) }, h(y(i).social.spacing), 3), T("div", Ya, [T("input", {
2175
2206
  type: "number",
2176
2207
  class: w(y(K)),
2177
2208
  value: e.block.spacing,
2178
2209
  min: "0",
2179
2210
  max: "50",
2180
2211
  onInput: n[2] ||= (e) => a("spacing", Number(e.target.value))
2181
- }, null, 42, Ka), T("span", { class: w(y(G)) }, "px", 2)])]),
2182
- T("div", qa, [T("label", { class: w(y(W)) }, h(y(i).social.align), 3), j(Y, {
2212
+ }, null, 42, Xa), T("span", { class: w(y(G)) }, "px", 2)])]),
2213
+ T("div", Za, [T("label", { class: w(y(W)) }, h(y(i).social.align), 3), j(Y, {
2183
2214
  options: [
2184
2215
  {
2185
2216
  value: "left",
2186
2217
  label: y(i).title.alignLeft,
2187
- icon: y(yt)
2218
+ icon: y(xt)
2188
2219
  },
2189
2220
  {
2190
2221
  value: "center",
2191
2222
  label: y(i).title.alignCenter,
2192
- icon: y(gt)
2223
+ icon: y(vt)
2193
2224
  },
2194
2225
  {
2195
2226
  value: "right",
2196
2227
  label: y(i).title.alignRight,
2197
- icon: y(bt)
2228
+ icon: y(St)
2198
2229
  }
2199
2230
  ],
2200
2231
  "model-value": e.block.align,
@@ -2202,22 +2233,22 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2202
2233
  }, null, 8, ["options", "model-value"])])
2203
2234
  ], 64));
2204
2235
  }
2205
- }), Ya = { class: "tpl:mb-3.5" }, Xa = { class: "tpl:flex tpl:items-stretch" }, Za = ["value"], Qa = ["value"], $a = /* @__PURE__ */ A({
2236
+ }), $a = { class: "tpl:mb-3.5" }, eo = { class: "tpl:flex tpl:items-stretch" }, to = ["value"], no = ["value"], ro = /* @__PURE__ */ A({
2206
2237
  __name: "SpacerToolbar",
2207
2238
  props: { block: {} },
2208
2239
  emits: ["update"],
2209
2240
  setup(e, { emit: t }) {
2210
- let n = t, { t: r } = L();
2211
- return (t, i) => (o(), _("div", Ya, [
2241
+ let n = t, { t: r } = R();
2242
+ return (t, i) => (o(), _("div", $a, [
2212
2243
  T("label", { class: w(y(W)) }, h(y(r).spacer.height), 3),
2213
- T("div", Xa, [T("input", {
2244
+ T("div", eo, [T("input", {
2214
2245
  type: "number",
2215
2246
  class: w(y(K)),
2216
2247
  value: e.block.height,
2217
2248
  min: "10",
2218
2249
  max: "100",
2219
2250
  onInput: i[0] ||= (e) => n("update", { height: Number(e.target.value) })
2220
- }, null, 42, Za), T("span", { class: w(y(G)) }, "px", 2)]),
2251
+ }, null, 42, to), T("span", { class: w(y(G)) }, "px", 2)]),
2221
2252
  T("input", {
2222
2253
  type: "range",
2223
2254
  class: "tpl:mt-2 tpl:w-full tpl:accent-[var(--tpl-primary)]",
@@ -2225,13 +2256,13 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2225
2256
  min: "10",
2226
2257
  max: "100",
2227
2258
  onInput: i[1] ||= (e) => n("update", { height: Number(e.target.value) })
2228
- }, null, 40, Qa)
2259
+ }, null, 40, no)
2229
2260
  ]));
2230
2261
  }
2231
- }), eo = { class: "tpl:mb-3.5" }, to = { class: "tpl:flex tpl:items-center tpl:gap-3" }, no = { class: "tpl:flex tpl:flex-1 tpl:items-center tpl:gap-1.5" }, ro = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, io = { class: "tpl:flex tpl:items-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, ao = ["disabled"], oo = { class: "tpl:min-w-[20px] tpl:text-center tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, so = { class: "tpl:flex tpl:flex-1 tpl:items-center tpl:gap-1.5" }, co = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, lo = { class: "tpl:flex tpl:items-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, uo = ["disabled"], fo = { class: "tpl:min-w-[20px] tpl:text-center tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, po = { class: "tpl:mb-3.5" }, mo = { class: "tpl:mb-1.5 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, ho = ["checked"], go = {
2262
+ }), io = { class: "tpl:mb-3.5" }, ao = { class: "tpl:flex tpl:items-center tpl:gap-3" }, oo = { class: "tpl:flex tpl:flex-1 tpl:items-center tpl:gap-1.5" }, so = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, co = { class: "tpl:flex tpl:items-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, lo = ["disabled"], uo = { class: "tpl:min-w-[20px] tpl:text-center tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, fo = { class: "tpl:flex tpl:flex-1 tpl:items-center tpl:gap-1.5" }, po = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, mo = { class: "tpl:flex tpl:items-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, ho = ["disabled"], go = { class: "tpl:min-w-[20px] tpl:text-center tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, _o = { class: "tpl:mb-3.5" }, vo = { class: "tpl:mb-1.5 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, yo = ["checked"], bo = {
2232
2263
  key: 0,
2233
2264
  class: "tpl:mb-3.5"
2234
- }, _o = { class: "tpl:mb-3.5" }, vo = { class: "tpl:mb-3.5" }, yo = { class: "tpl:flex tpl:items-stretch" }, bo = ["value"], xo = { class: "tpl:mb-3.5" }, So = { class: "tpl:flex tpl:items-stretch" }, Co = ["value"], wo = { class: "tpl:mb-3.5" }, To = ["value"], Eo = { value: "" }, Do = ["value"], Oo = { class: "tpl:mb-3.5" }, ko = { class: "tpl:flex tpl:items-stretch" }, Ao = ["value"], jo = { class: "tpl:mb-3.5" }, Mo = { class: "tpl:mb-3.5" }, No = /* @__PURE__ */ A({
2265
+ }, xo = { class: "tpl:mb-3.5" }, So = { class: "tpl:mb-3.5" }, Co = { class: "tpl:flex tpl:items-stretch" }, wo = ["value"], To = { class: "tpl:mb-3.5" }, Eo = { class: "tpl:flex tpl:items-stretch" }, Do = ["value"], Oo = { class: "tpl:mb-3.5" }, ko = ["value"], Ao = { value: "" }, jo = ["value"], Mo = { class: "tpl:mb-3.5" }, No = { class: "tpl:flex tpl:items-stretch" }, Po = ["value"], Fo = { class: "tpl:mb-3.5" }, Io = { class: "tpl:mb-3.5" }, Lo = /* @__PURE__ */ A({
2235
2266
  __name: "TableToolbar",
2236
2267
  props: {
2237
2268
  block: {},
@@ -2239,15 +2270,15 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2239
2270
  },
2240
2271
  emits: ["update"],
2241
2272
  setup(e, { emit: t }) {
2242
- let n = e, r = t, { t: i } = L(), a = g(() => n.block.rows.length > 0 ? n.block.rows[0].cells.length : 0);
2273
+ let n = e, r = t, { t: i } = R(), a = g(() => n.block.rows.length > 0 ? n.block.rows[0].cells.length : 0);
2243
2274
  function s(e, t) {
2244
2275
  r("update", { [e]: t });
2245
2276
  }
2246
2277
  function l() {
2247
2278
  let e = n.block.rows.length > 0 ? n.block.rows[0].cells.length : 3, t = {
2248
- id: F(),
2279
+ id: I(),
2249
2280
  cells: Array.from({ length: e }, () => ({
2250
- id: F(),
2281
+ id: I(),
2251
2282
  content: ""
2252
2283
  }))
2253
2284
  };
@@ -2260,7 +2291,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2260
2291
  r("update", { rows: n.block.rows.map((e) => ({
2261
2292
  ...e,
2262
2293
  cells: [...e.cells, {
2263
- id: F(),
2294
+ id: I(),
2264
2295
  content: ""
2265
2296
  }]
2266
2297
  })) });
@@ -2272,16 +2303,16 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2272
2303
  })) });
2273
2304
  }
2274
2305
  return (t, n) => (o(), _(O, null, [
2275
- T("div", eo, [T("label", { class: w(y(W)) }, h(y(i).table.dimensions), 3), T("div", to, [T("div", no, [T("span", ro, h(y(i).table.rows), 1), T("div", io, [
2306
+ T("div", io, [T("label", { class: w(y(W)) }, h(y(i).table.dimensions), 3), T("div", ao, [T("div", oo, [T("span", so, h(y(i).table.rows), 1), T("div", co, [
2276
2307
  T("button", {
2277
2308
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:px-1.5 tpl:py-1 tpl:text-[var(--tpl-text-muted)] tpl:transition-colors tpl:duration-150 tpl:hover:text-[var(--tpl-primary)] tpl:disabled:opacity-30",
2278
2309
  disabled: e.block.rows.length <= 1,
2279
2310
  onClick: n[0] ||= (t) => u(e.block.rows[e.block.rows.length - 1].id)
2280
- }, [j(y(dt), {
2311
+ }, [j(y(pt), {
2281
2312
  size: 12,
2282
2313
  "stroke-width": 2
2283
- })], 8, ao),
2284
- T("span", oo, h(e.block.rows.length), 1),
2314
+ })], 8, lo),
2315
+ T("span", uo, h(e.block.rows.length), 1),
2285
2316
  T("button", {
2286
2317
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:px-1.5 tpl:py-1 tpl:text-[var(--tpl-text-muted)] tpl:transition-colors tpl:duration-150 tpl:hover:text-[var(--tpl-primary)]",
2287
2318
  onClick: l
@@ -2289,16 +2320,16 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2289
2320
  size: 12,
2290
2321
  "stroke-width": 2
2291
2322
  })])
2292
- ])]), T("div", so, [T("span", co, h(y(i).table.columns), 1), T("div", lo, [
2323
+ ])]), T("div", fo, [T("span", po, h(y(i).table.columns), 1), T("div", mo, [
2293
2324
  T("button", {
2294
2325
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:px-1.5 tpl:py-1 tpl:text-[var(--tpl-text-muted)] tpl:transition-colors tpl:duration-150 tpl:hover:text-[var(--tpl-primary)] tpl:disabled:opacity-30",
2295
2326
  disabled: a.value <= 1,
2296
2327
  onClick: n[1] ||= (e) => f(a.value - 1)
2297
- }, [j(y(dt), {
2328
+ }, [j(y(pt), {
2298
2329
  size: 12,
2299
2330
  "stroke-width": 2
2300
- })], 8, uo),
2301
- T("span", fo, h(a.value), 1),
2331
+ })], 8, ho),
2332
+ T("span", go, h(a.value), 1),
2302
2333
  T("button", {
2303
2334
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:px-1.5 tpl:py-1 tpl:text-[var(--tpl-text-muted)] tpl:transition-colors tpl:duration-150 tpl:hover:text-[var(--tpl-primary)]",
2304
2335
  onClick: d
@@ -2307,73 +2338,73 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2307
2338
  "stroke-width": 2
2308
2339
  })])
2309
2340
  ])])])]),
2310
- T("div", po, [T("label", mo, [T("input", {
2341
+ T("div", _o, [T("label", vo, [T("input", {
2311
2342
  type: "checkbox",
2312
2343
  checked: e.block.hasHeaderRow,
2313
2344
  class: "tpl:accent-[var(--tpl-primary)]",
2314
2345
  onChange: n[2] ||= (e) => s("hasHeaderRow", e.target.checked)
2315
- }, null, 40, ho), k(" " + h(y(i).table.hasHeaderRow), 1)])]),
2316
- e.block.hasHeaderRow ? (o(), _("div", go, [T("label", { class: w(y(W)) }, h(y(i).table.headerBackgroundColor), 3), j(q, {
2346
+ }, null, 40, yo), k(" " + h(y(i).table.hasHeaderRow), 1)])]),
2347
+ e.block.hasHeaderRow ? (o(), _("div", bo, [T("label", { class: w(y(W)) }, h(y(i).table.headerBackgroundColor), 3), j(q, {
2317
2348
  "model-value": e.block.headerBackgroundColor || y("#f2f2f2"),
2318
2349
  placeholder: y(i).table.noHeaderBg,
2319
2350
  "onUpdate:modelValue": n[3] ||= (e) => s("headerBackgroundColor", e || null)
2320
2351
  }, null, 8, ["model-value", "placeholder"])])) : v("", !0),
2321
- T("div", _o, [T("label", { class: w(y(W)) }, h(y(i).table.borderColor), 3), j(q, {
2352
+ T("div", xo, [T("label", { class: w(y(W)) }, h(y(i).table.borderColor), 3), j(q, {
2322
2353
  "model-value": e.block.borderColor,
2323
2354
  "onUpdate:modelValue": n[4] ||= (e) => s("borderColor", e)
2324
2355
  }, null, 8, ["model-value"])]),
2325
- T("div", vo, [T("label", { class: w(y(W)) }, h(y(i).table.borderWidth), 3), T("div", yo, [T("input", {
2356
+ T("div", So, [T("label", { class: w(y(W)) }, h(y(i).table.borderWidth), 3), T("div", Co, [T("input", {
2326
2357
  type: "number",
2327
2358
  class: w(y(K)),
2328
2359
  value: e.block.borderWidth,
2329
2360
  min: "0",
2330
2361
  max: "10",
2331
2362
  onInput: n[5] ||= (e) => s("borderWidth", Number(e.target.value))
2332
- }, null, 42, bo), T("span", { class: w(y(G)) }, "px", 2)])]),
2333
- T("div", xo, [T("label", { class: w(y(W)) }, h(y(i).table.cellPadding), 3), T("div", So, [T("input", {
2363
+ }, null, 42, wo), T("span", { class: w(y(G)) }, "px", 2)])]),
2364
+ T("div", To, [T("label", { class: w(y(W)) }, h(y(i).table.cellPadding), 3), T("div", Eo, [T("input", {
2334
2365
  type: "number",
2335
2366
  class: w(y(K)),
2336
2367
  value: e.block.cellPadding,
2337
2368
  min: "0",
2338
2369
  max: "30",
2339
2370
  onInput: n[6] ||= (e) => s("cellPadding", Number(e.target.value))
2340
- }, null, 42, Co), T("span", { class: w(y(G)) }, "px", 2)])]),
2341
- T("div", wo, [T("label", { class: w(y(W)) }, h(y(i).table.fontFamily), 3), T("select", {
2371
+ }, null, 42, Do), T("span", { class: w(y(G)) }, "px", 2)])]),
2372
+ T("div", Oo, [T("label", { class: w(y(W)) }, h(y(i).table.fontFamily), 3), T("select", {
2342
2373
  class: w(y(U)),
2343
2374
  value: e.block.fontFamily || "",
2344
2375
  onChange: n[7] ||= (e) => s("fontFamily", e.target.value || void 0)
2345
- }, [T("option", Eo, h(y(i).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
2376
+ }, [T("option", Ao, h(y(i).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
2346
2377
  key: e.value,
2347
2378
  value: e.value
2348
- }, h(e.label), 9, Do))), 128))], 42, To)]),
2349
- T("div", Oo, [T("label", { class: w(y(W)) }, h(y(i).table.fontSize), 3), T("div", ko, [T("input", {
2379
+ }, h(e.label), 9, jo))), 128))], 42, ko)]),
2380
+ T("div", Mo, [T("label", { class: w(y(W)) }, h(y(i).table.fontSize), 3), T("div", No, [T("input", {
2350
2381
  type: "number",
2351
2382
  class: w(y(K)),
2352
2383
  value: e.block.fontSize,
2353
2384
  min: "10",
2354
2385
  max: "32",
2355
2386
  onInput: n[8] ||= (e) => s("fontSize", Number(e.target.value))
2356
- }, null, 42, Ao), T("span", { class: w(y(G)) }, "px", 2)])]),
2357
- T("div", jo, [T("label", { class: w(y(W)) }, h(y(i).table.color), 3), j(q, {
2387
+ }, null, 42, Po), T("span", { class: w(y(G)) }, "px", 2)])]),
2388
+ T("div", Fo, [T("label", { class: w(y(W)) }, h(y(i).table.color), 3), j(q, {
2358
2389
  "model-value": e.block.color,
2359
2390
  "onUpdate:modelValue": n[9] ||= (e) => s("color", e)
2360
2391
  }, null, 8, ["model-value"])]),
2361
- T("div", Mo, [T("label", { class: w(y(W)) }, h(y(i).table.textAlign), 3), j(Y, {
2392
+ T("div", Io, [T("label", { class: w(y(W)) }, h(y(i).table.textAlign), 3), j(Y, {
2362
2393
  options: [
2363
2394
  {
2364
2395
  value: "left",
2365
2396
  label: y(i).title.alignLeft,
2366
- icon: y(yt)
2397
+ icon: y(xt)
2367
2398
  },
2368
2399
  {
2369
2400
  value: "center",
2370
2401
  label: y(i).title.alignCenter,
2371
- icon: y(gt)
2402
+ icon: y(vt)
2372
2403
  },
2373
2404
  {
2374
2405
  value: "right",
2375
2406
  label: y(i).title.alignRight,
2376
- icon: y(bt)
2407
+ icon: y(St)
2377
2408
  }
2378
2409
  ],
2379
2410
  "model-value": e.block.textAlign,
@@ -2381,7 +2412,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2381
2412
  }, null, 8, ["options", "model-value"])])
2382
2413
  ], 64));
2383
2414
  }
2384
- }), Po = { class: "tpl:mb-3.5" }, Fo = ["value"], Io = { value: 1 }, Lo = { value: 2 }, Ro = { value: 3 }, zo = { value: 4 }, Bo = { class: "tpl:mb-3.5" }, Vo = ["value"], Ho = { value: "" }, Uo = ["value"], Wo = { class: "tpl:mb-3.5" }, Go = { class: "tpl:mb-3.5" }, Ko = /* @__PURE__ */ A({
2415
+ }), Ro = { class: "tpl:mb-3.5" }, zo = ["value"], Bo = { value: 1 }, Vo = { value: 2 }, Ho = { value: 3 }, Uo = { value: 4 }, Wo = { class: "tpl:mb-3.5" }, Go = ["value"], Ko = { value: "" }, qo = ["value"], Jo = { class: "tpl:mb-3.5" }, Yo = { class: "tpl:mb-3.5" }, Xo = /* @__PURE__ */ A({
2385
2416
  __name: "TitleToolbar",
2386
2417
  props: {
2387
2418
  block: {},
@@ -2389,49 +2420,49 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2389
2420
  },
2390
2421
  emits: ["update"],
2391
2422
  setup(e, { emit: t }) {
2392
- let n = t, { t: r } = L();
2423
+ let n = t, { t: r } = R();
2393
2424
  function i(e, t) {
2394
2425
  n("update", { [e]: t });
2395
2426
  }
2396
2427
  return (t, n) => (o(), _(O, null, [
2397
- T("div", Po, [T("label", { class: w(y(W)) }, h(y(r).title.level), 3), T("select", {
2428
+ T("div", Ro, [T("label", { class: w(y(W)) }, h(y(r).title.level), 3), T("select", {
2398
2429
  class: w(y(U)),
2399
2430
  value: e.block.level,
2400
2431
  onChange: n[0] ||= (e) => i("level", Number(e.target.value))
2401
2432
  }, [
2402
- T("option", Io, h(y(r).title.heading1), 1),
2403
- T("option", Lo, h(y(r).title.heading2), 1),
2404
- T("option", Ro, h(y(r).title.heading3), 1),
2405
- T("option", zo, h(y(r).title.heading4), 1)
2406
- ], 42, Fo)]),
2407
- T("div", Bo, [T("label", { class: w(y(W)) }, h(y(r).title.fontFamily), 3), T("select", {
2433
+ T("option", Bo, h(y(r).title.heading1), 1),
2434
+ T("option", Vo, h(y(r).title.heading2), 1),
2435
+ T("option", Ho, h(y(r).title.heading3), 1),
2436
+ T("option", Uo, h(y(r).title.heading4), 1)
2437
+ ], 42, zo)]),
2438
+ T("div", Wo, [T("label", { class: w(y(W)) }, h(y(r).title.fontFamily), 3), T("select", {
2408
2439
  class: w(y(U)),
2409
2440
  value: e.block.fontFamily || "",
2410
2441
  onChange: n[1] ||= (e) => i("fontFamily", e.target.value || void 0)
2411
- }, [T("option", Ho, h(y(r).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
2442
+ }, [T("option", Ko, h(y(r).title.inheritFont), 1), (o(!0), _(O, null, c(e.fontFamilies, (e) => (o(), _("option", {
2412
2443
  key: e.value,
2413
2444
  value: e.value
2414
- }, h(e.label), 9, Uo))), 128))], 42, Vo)]),
2415
- T("div", Wo, [T("label", { class: w(y(W)) }, h(y(r).title.color), 3), j(q, {
2445
+ }, h(e.label), 9, qo))), 128))], 42, Go)]),
2446
+ T("div", Jo, [T("label", { class: w(y(W)) }, h(y(r).title.color), 3), j(q, {
2416
2447
  "model-value": e.block.color,
2417
2448
  "onUpdate:modelValue": n[2] ||= (e) => i("color", e)
2418
2449
  }, null, 8, ["model-value"])]),
2419
- T("div", Go, [T("label", { class: w(y(W)) }, h(y(r).title.align), 3), j(Y, {
2450
+ T("div", Yo, [T("label", { class: w(y(W)) }, h(y(r).title.align), 3), j(Y, {
2420
2451
  options: [
2421
2452
  {
2422
2453
  value: "left",
2423
2454
  label: y(r).title.alignLeft,
2424
- icon: y(yt)
2455
+ icon: y(xt)
2425
2456
  },
2426
2457
  {
2427
2458
  value: "center",
2428
2459
  label: y(r).title.alignCenter,
2429
- icon: y(gt)
2460
+ icon: y(vt)
2430
2461
  },
2431
2462
  {
2432
2463
  value: "right",
2433
2464
  label: y(r).title.alignRight,
2434
- icon: y(bt)
2465
+ icon: y(St)
2435
2466
  }
2436
2467
  ],
2437
2468
  "model-value": e.block.textAlign,
@@ -2439,22 +2470,22 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2439
2470
  }, null, 8, ["options", "model-value"])])
2440
2471
  ], 64));
2441
2472
  }
2442
- }), qo = { class: "tpl:mb-3.5" }, Jo = {
2473
+ }), Zo = { class: "tpl:mb-3.5" }, Qo = {
2443
2474
  key: 0,
2444
2475
  class: "tpl:mt-2 tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:text-[12px] tpl:text-[var(--tpl-text-muted)]"
2445
- }, Yo = ["checked"], Xo = {
2476
+ }, $o = ["checked"], es = {
2446
2477
  key: 0,
2447
2478
  class: "tpl:mb-3.5"
2448
- }, Zo = { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, Qo = [
2479
+ }, ts = { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, ns = [
2449
2480
  "value",
2450
2481
  "placeholder",
2451
2482
  "title"
2452
- ], $o = { class: "tpl:mb-3.5" }, es = { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, ts = { class: "tpl:mb-3.5" }, ns = { class: "tpl:mb-3.5" }, rs = ["value"], is = { value: "full" }, as = { class: "tpl:mb-3.5" }, os = /* @__PURE__ */ A({
2483
+ ], rs = { class: "tpl:mb-3.5" }, is = { class: "tpl:font-normal tpl:text-[var(--tpl-text-dim)]" }, as = { class: "tpl:mb-3.5" }, os = { class: "tpl:mb-3.5" }, ss = ["value"], cs = { value: "full" }, ls = { class: "tpl:mb-3.5" }, us = /* @__PURE__ */ A({
2453
2484
  __name: "VideoToolbar",
2454
2485
  props: { block: {} },
2455
2486
  emits: ["update"],
2456
2487
  setup(e, { emit: t }) {
2457
- let n = e, r = t, { t: i } = L(), a = l(ge, null), s = l(Oe, ke.liquid), c = R(), u = g(() => !!a), d = g(() => Ye(n.block.url, s)), p = f(!1), { start: m } = Ve(() => {
2488
+ let n = e, r = t, { t: i } = R(), a = l(ye, null), s = l(Me, $e.liquid), c = z(), u = g(() => !!a), d = g(() => nt(n.block.url, s)), p = f(!1), { start: m } = Ve(() => {
2458
2489
  p.value = !1;
2459
2490
  }, 1e3, { immediate: !1 });
2460
2491
  function b(e, t) {
@@ -2465,7 +2496,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2465
2496
  c.alive && e && (b("thumbnailUrl", e.url), p.value = !0, m());
2466
2497
  }
2467
2498
  return (t, n) => (o(), _(O, null, [
2468
- T("div", qo, [
2499
+ T("div", Zo, [
2469
2500
  T("label", { class: w(y(W)) }, h(y(i).video.videoUrl), 3),
2470
2501
  j(X, {
2471
2502
  "model-value": e.block.url,
@@ -2473,23 +2504,23 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2473
2504
  placeholder: y(i).video.videoUrlPlaceholder,
2474
2505
  "onUpdate:modelValue": n[0] ||= (e) => b("url", e)
2475
2506
  }, null, 8, ["model-value", "placeholder"]),
2476
- e.block.url ? (o(), _("label", Jo, [T("input", {
2507
+ e.block.url ? (o(), _("label", Qo, [T("input", {
2477
2508
  type: "checkbox",
2478
2509
  class: "tpl:size-3.5 tpl:cursor-pointer tpl:accent-[var(--tpl-primary)]",
2479
2510
  checked: e.block.openInNewTab ?? !1,
2480
2511
  onChange: n[1] ||= (e) => b("openInNewTab", e.target.checked)
2481
- }, null, 40, Yo), k(" " + h(y(i).video.openInNewTab), 1)])) : v("", !0)
2512
+ }, null, 40, $o), k(" " + h(y(i).video.openInNewTab), 1)])) : v("", !0)
2482
2513
  ]),
2483
- d.value ? (o(), _("div", Xo, [T("label", { class: w(y(W)) }, [k(h(y(i).video.placeholderUrl) + " ", 1), T("span", Zo, h(y(i).video.optional), 1)], 2), T("input", {
2514
+ d.value ? (o(), _("div", es, [T("label", { class: w(y(W)) }, [k(h(y(i).video.placeholderUrl) + " ", 1), T("span", ts, h(y(i).video.optional), 1)], 2), T("input", {
2484
2515
  type: "url",
2485
2516
  class: w(y(U)),
2486
2517
  value: e.block.placeholderUrl || "",
2487
2518
  placeholder: y(i).video.placeholderUrlPlaceholder,
2488
2519
  title: y(i).video.placeholderUrlTooltip,
2489
2520
  onInput: n[2] ||= (e) => b("placeholderUrl", e.target.value)
2490
- }, null, 42, Qo)])) : v("", !0),
2491
- T("div", $o, [
2492
- T("label", { class: w(y(W)) }, [k(h(y(i).video.customThumbnail) + " ", 1), T("span", es, h(y(i).video.optional), 1)], 2),
2521
+ }, null, 42, ns)])) : v("", !0),
2522
+ T("div", rs, [
2523
+ T("label", { class: w(y(W)) }, [k(h(y(i).video.customThumbnail) + " ", 1), T("span", is, h(y(i).video.optional), 1)], 2),
2493
2524
  j(X, {
2494
2525
  "model-value": e.block.thumbnailUrl,
2495
2526
  type: "url",
@@ -2510,28 +2541,28 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2510
2541
  "background-color": "var(--tpl-bg)"
2511
2542
  },
2512
2543
  onClick: x
2513
- }, [j(y(je), {
2544
+ }, [j(y(Ie), {
2514
2545
  size: 14,
2515
2546
  "stroke-width": 1.5
2516
2547
  }), k(" " + h(y(i).image.browseMedia), 1)])) : v("", !0)
2517
2548
  ]),
2518
- T("div", ts, [T("label", { class: w(y(W)) }, h(y(i).video.altText), 3), j(X, {
2549
+ T("div", as, [T("label", { class: w(y(W)) }, h(y(i).video.altText), 3), j(X, {
2519
2550
  "model-value": e.block.alt,
2520
2551
  type: "text",
2521
2552
  placeholder: y(i).video.altTextPlaceholder,
2522
2553
  "onUpdate:modelValue": n[4] ||= (e) => b("alt", e)
2523
2554
  }, null, 8, ["model-value", "placeholder"])]),
2524
- T("div", ns, [T("label", { class: w(y(W)) }, h(y(i).video.width), 3), T("select", {
2555
+ T("div", os, [T("label", { class: w(y(W)) }, h(y(i).video.width), 3), T("select", {
2525
2556
  class: w(y(U)),
2526
2557
  value: e.block.width,
2527
2558
  onChange: n[5] ||= (e) => b("width", e.target.value === "full" ? "full" : Number(e.target.value))
2528
2559
  }, [
2529
- T("option", is, h(y(i).video.fullWidth), 1),
2560
+ T("option", cs, h(y(i).video.fullWidth), 1),
2530
2561
  n[7] ||= T("option", { value: "300" }, "300px", -1),
2531
2562
  n[8] ||= T("option", { value: "400" }, "400px", -1),
2532
2563
  n[9] ||= T("option", { value: "500" }, "500px", -1)
2533
- ], 42, rs)]),
2534
- T("div", as, [T("label", { class: w(y(W)) }, h(y(i).title.align), 3), j(Y, {
2564
+ ], 42, ss)]),
2565
+ T("div", ls, [T("label", { class: w(y(W)) }, h(y(i).title.align), 3), j(Y, {
2535
2566
  options: [
2536
2567
  {
2537
2568
  value: "left",
@@ -2551,7 +2582,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2551
2582
  }, null, 8, ["options", "model-value"])])
2552
2583
  ], 64));
2553
2584
  }
2554
- }), ss = ["aria-label"], cs = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3.5" }, ls = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-[var(--tpl-primary)]" }, us = { class: "tpl:m-0 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, ds = { class: "tpl:flex tpl:gap-1" }, fs = ["title"], ps = ["title"], ms = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, hs = /*#__PURE__*/ V(/* @__PURE__ */ A({
2585
+ }), ds = ["aria-label"], fs = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3.5" }, ps = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-[var(--tpl-primary)]" }, ms = { class: "tpl:m-0 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, hs = { class: "tpl:flex tpl:gap-1" }, gs = ["title"], _s = ["title"], vs = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, ys = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
2555
2586
  __name: "Toolbar",
2556
2587
  props: { block: {} },
2557
2588
  emits: [
@@ -2560,87 +2591,87 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2560
2591
  "duplicate"
2561
2592
  ],
2562
2593
  setup(e, { emit: t }) {
2563
- let n = p(() => import("./CountdownToolbar-C1nlFm4e.js")), r = e, i = t, { t: s } = L(), c = Ie(De, "Toolbar"), u = l(z, []), d = g(() => r.block.type), f = g(() => ze(r.block)), m = g(() => {
2594
+ let n = p(() => import("./CountdownToolbar-Cd1oEopw.js")), r = e, i = t, { t: s } = R(), c = Ne(je, "Toolbar"), u = l(B, []), d = g(() => r.block.type), f = g(() => te(r.block)), m = g(() => {
2564
2595
  if (f.value) return u.find((e) => e.type === r.block.customType);
2565
- }), b = g(() => f.value ? m.value?.name ?? r.block.customType : B(d.value, s)), S = c.fonts;
2596
+ }), b = g(() => f.value ? m.value?.name ?? r.block.customType : ve(d.value, s)), S = c.fonts;
2566
2597
  function C(e) {
2567
2598
  i("update", e);
2568
2599
  }
2569
2600
  return (t, r) => (o(), _("aside", {
2570
2601
  "aria-label": y(s).landmarks.blockToolbar,
2571
2602
  class: "tpl:flex tpl:w-full tpl:flex-1 tpl:flex-col tpl:bg-[var(--tpl-bg-elevated)]"
2572
- }, [T("div", cs, [T("div", ls, [y(Dt)[d.value] ? (o(), x(a(y(Dt)[d.value]), {
2603
+ }, [T("div", fs, [T("div", ps, [y(kt)[d.value] ? (o(), x(a(y(kt)[d.value]), {
2573
2604
  key: 0,
2574
2605
  size: 16,
2575
2606
  "stroke-width": 1.5
2576
- })) : f.value ? (o(), x(y(be), {
2607
+ })) : f.value ? (o(), x(y(we), {
2577
2608
  key: 1,
2578
2609
  size: 16,
2579
2610
  "stroke-width": 1.5
2580
- })) : v("", !0), T("h3", us, h(b.value), 1)]), T("div", ds, [T("button", {
2611
+ })) : v("", !0), T("h3", ms, h(b.value), 1)]), T("div", hs, [T("button", {
2581
2612
  class: "tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-150 tpl:hover:bg-[var(--tpl-bg-active)] tpl:hover:text-[var(--tpl-text)]",
2582
2613
  title: y(s).toolbar.duplicate,
2583
2614
  onClick: r[0] ||= (e) => i("duplicate")
2584
- }, [j(y(Ze), {
2615
+ }, [j(y(et), {
2585
2616
  size: 14,
2586
2617
  "stroke-width": 2
2587
- })], 8, fs), T("button", {
2618
+ })], 8, gs), T("button", {
2588
2619
  class: "tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)] tpl:transition-all tpl:duration-150 tpl:hover:border-[var(--tpl-danger)] tpl:hover:bg-[var(--tpl-danger-light)] tpl:hover:text-[var(--tpl-danger)]",
2589
2620
  title: y(s).toolbar.delete,
2590
2621
  onClick: r[1] ||= (e) => i("delete")
2591
- }, [j(y(Me), {
2622
+ }, [j(y(Le), {
2592
2623
  size: 14,
2593
2624
  "stroke-width": 2
2594
- })], 8, ps)])]), T("div", ms, [f.value ? (o(), x(Bi, {
2625
+ })], 8, _s)])]), T("div", vs, [f.value ? (o(), x(Wi, {
2595
2626
  key: 0,
2596
2627
  block: e.block,
2597
2628
  onUpdateFieldValues: r[2] ||= (e) => i("update", { fieldValues: e }),
2598
2629
  onUpdateDataSourceFetched: r[3] ||= (e) => i("update", { dataSourceFetched: e })
2599
- }, null, 8, ["block"])) : d.value === "section" ? (o(), x(ka, {
2630
+ }, null, 8, ["block"])) : d.value === "section" ? (o(), x(Na, {
2600
2631
  key: 1,
2601
2632
  block: e.block,
2602
2633
  onUpdate: C
2603
- }, null, 8, ["block"])) : d.value === "title" ? (o(), x(Ko, {
2634
+ }, null, 8, ["block"])) : d.value === "title" ? (o(), x(Xo, {
2604
2635
  key: 2,
2605
2636
  block: e.block,
2606
2637
  "font-families": y(S),
2607
2638
  onUpdate: C
2608
- }, null, 8, ["block", "font-families"])) : d.value === "paragraph" ? (o(), _(O, { key: 3 }, [], 64)) : d.value === "image" ? (o(), x(da, {
2639
+ }, null, 8, ["block", "font-families"])) : d.value === "paragraph" ? (o(), _(O, { key: 3 }, [], 64)) : d.value === "image" ? (o(), x(ha, {
2609
2640
  key: 4,
2610
2641
  block: e.block,
2611
2642
  onUpdate: C
2612
- }, null, 8, ["block"])) : d.value === "video" ? (o(), x(os, {
2643
+ }, null, 8, ["block"])) : d.value === "video" ? (o(), x(us, {
2613
2644
  key: 5,
2614
2645
  block: e.block,
2615
2646
  onUpdate: C
2616
- }, null, 8, ["block"])) : d.value === "button" ? (o(), x(pr, {
2647
+ }, null, 8, ["block"])) : d.value === "button" ? (o(), x(_r, {
2617
2648
  key: 6,
2618
2649
  block: e.block,
2619
2650
  "font-families": y(S),
2620
2651
  onUpdate: C
2621
- }, null, 8, ["block", "font-families"])) : d.value === "divider" ? (o(), x(Ki, {
2652
+ }, null, 8, ["block", "font-families"])) : d.value === "divider" ? (o(), x(Xi, {
2622
2653
  key: 7,
2623
2654
  block: e.block,
2624
2655
  onUpdate: C
2625
- }, null, 8, ["block"])) : d.value === "social" ? (o(), x(Ja, {
2656
+ }, null, 8, ["block"])) : d.value === "social" ? (o(), x(Qa, {
2626
2657
  key: 8,
2627
2658
  block: e.block,
2628
2659
  onUpdate: C
2629
- }, null, 8, ["block"])) : d.value === "menu" ? (o(), x(Ca, {
2660
+ }, null, 8, ["block"])) : d.value === "menu" ? (o(), x(Da, {
2630
2661
  key: 9,
2631
2662
  block: e.block,
2632
2663
  "font-families": y(S),
2633
2664
  onUpdate: C
2634
- }, null, 8, ["block", "font-families"])) : d.value === "table" ? (o(), x(No, {
2665
+ }, null, 8, ["block", "font-families"])) : d.value === "table" ? (o(), x(Lo, {
2635
2666
  key: 10,
2636
2667
  block: e.block,
2637
2668
  "font-families": y(S),
2638
2669
  onUpdate: C
2639
- }, null, 8, ["block", "font-families"])) : d.value === "spacer" ? (o(), x($a, {
2670
+ }, null, 8, ["block", "font-families"])) : d.value === "spacer" ? (o(), x(ro, {
2640
2671
  key: 11,
2641
2672
  block: e.block,
2642
2673
  onUpdate: C
2643
- }, null, 8, ["block"])) : d.value === "html" ? (o(), x(Xi, {
2674
+ }, null, 8, ["block"])) : d.value === "html" ? (o(), x(ea, {
2644
2675
  key: 12,
2645
2676
  block: e.block,
2646
2677
  onUpdate: C
@@ -2649,52 +2680,52 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2649
2680
  block: e.block,
2650
2681
  "font-families": y(S),
2651
2682
  onUpdate: C
2652
- }, null, 8, ["block", "font-families"])) : v("", !0), j(ri, {
2683
+ }, null, 8, ["block", "font-families"])) : v("", !0), j(si, {
2653
2684
  block: e.block,
2654
2685
  "is-first-section": d.value === "paragraph",
2655
2686
  onUpdate: C
2656
- }, null, 8, ["block", "is-first-section"])])], 8, ss));
2687
+ }, null, 8, ["block", "is-first-section"])])], 8, ds));
2657
2688
  }
2658
- }), [["__scopeId", "data-v-2ac88283"]]), gs = ["aria-label"], _s = {
2689
+ }), [["__scopeId", "data-v-2ac88283"]]), bs = ["aria-label"], xs = {
2659
2690
  role: "tablist",
2660
2691
  class: "tpl:relative tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-active)] tpl:p-1.5"
2661
- }, vs = [
2692
+ }, Ss = [
2662
2693
  "aria-selected",
2663
2694
  "aria-label",
2664
2695
  "title"
2665
- ], ys = { key: 0 }, bs = [
2696
+ ], Cs = { key: 0 }, ws = [
2666
2697
  "aria-selected",
2667
2698
  "aria-label",
2668
2699
  "title"
2669
- ], xs = { key: 0 }, Ss = [
2700
+ ], Ts = { key: 0 }, Es = [
2670
2701
  "aria-selected",
2671
2702
  "aria-label",
2672
2703
  "title"
2673
- ], Cs = { key: 0 }, ws = {
2704
+ ], Ds = { key: 0 }, Os = {
2674
2705
  key: 1,
2675
2706
  class: "tpl:ml-1 tpl:rounded-full tpl:bg-[var(--tpl-bg-hover)] tpl:px-1.5 tpl:text-[10px]"
2676
- }, Ts = {
2707
+ }, ks = {
2677
2708
  key: 0,
2678
2709
  id: "tpl-tabpanel-content",
2679
2710
  role: "tabpanel",
2680
2711
  "aria-labelledby": "tpl-tab-content",
2681
2712
  class: "tpl:flex tpl:flex-1 tpl:flex-col tpl:overflow-y-auto"
2682
- }, Es = {
2713
+ }, As = {
2683
2714
  key: 1,
2684
2715
  class: "tpl:flex tpl:flex-col tpl:items-center tpl:justify-center tpl:px-6 tpl:py-10 tpl:text-center tpl:text-[var(--tpl-text-muted)]"
2685
- }, Ds = { class: "tpl:mb-4 tpl:text-[var(--tpl-text-dim)]" }, Os = { class: "tpl:m-0 tpl:mb-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, ks = { class: "tpl:m-0 tpl:text-sm tpl:leading-normal" }, As = {
2716
+ }, js = { class: "tpl:mb-4 tpl:text-[var(--tpl-text-dim)]" }, Ms = { class: "tpl:m-0 tpl:mb-2 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Ns = { class: "tpl:m-0 tpl:text-sm tpl:leading-normal" }, Ps = {
2686
2717
  key: 1,
2687
2718
  id: "tpl-tabpanel-settings",
2688
2719
  role: "tabpanel",
2689
2720
  "aria-labelledby": "tpl-tab-settings",
2690
2721
  class: "tpl:flex tpl:flex-1 tpl:flex-col tpl:overflow-y-auto"
2691
- }, js = {
2722
+ }, Fs = {
2692
2723
  key: 2,
2693
2724
  id: "tpl-tabpanel-issues",
2694
2725
  role: "tabpanel",
2695
2726
  "aria-labelledby": "tpl-tab-issues",
2696
2727
  class: "tpl:flex tpl:flex-1 tpl:flex-col tpl:overflow-y-auto"
2697
- }, Ms = /* @__PURE__ */ A({
2728
+ }, Is = /* @__PURE__ */ A({
2698
2729
  __name: "RightSidebar",
2699
2730
  props: {
2700
2731
  selectedBlock: {},
@@ -2708,7 +2739,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2708
2739
  "update-settings"
2709
2740
  ],
2710
2741
  setup(e, { emit: t }) {
2711
- let n = p(() => import("./IssuesPanel-R3M60NTk.js")), r = e, i = t, { t: a } = L(), s = f("content"), c = l(qe, null), u = g(() => c !== null), d = g(() => c?.issues.value.length ?? 0);
2742
+ let n = p(() => import("./IssuesPanel-C-BiFQDQ.js")), r = e, i = t, { t: a } = R(), s = f("content"), c = l(qe, null), u = g(() => c !== null), d = g(() => c?.issues.value.length ?? 0);
2712
2743
  function m(e) {
2713
2744
  return s.value === e ? "tpl:flex-1 tpl:text-[var(--tpl-primary)]" : "tpl:shrink-0 tpl:text-[var(--tpl-text-muted)] hover:tpl:text-[var(--tpl-text)]";
2714
2745
  }
@@ -2724,7 +2755,7 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2724
2755
  "aria-label": y(a).landmarks.rightSidebar,
2725
2756
  class: w(["tpl-right-sidebar tpl:absolute tpl:top-14 tpl:bottom-0 tpl:z-40 tpl:flex tpl:w-[320px] tpl:flex-col tpl:bg-[var(--tpl-bg-elevated)] tpl:transition-all tpl:duration-200 tpl:border-l tpl:border-[var(--tpl-border)]", e.shiftedLeft ? "tpl:right-[360px]" : "tpl:right-0"])
2726
2757
  }, [
2727
- T("div", _s, [
2758
+ T("div", xs, [
2728
2759
  T("button", {
2729
2760
  id: "tpl-tab-content",
2730
2761
  role: "tab",
@@ -2735,10 +2766,10 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2735
2766
  class: w(["tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", m("content")]),
2736
2767
  style: D(b("content")),
2737
2768
  onClick: r[0] ||= (e) => s.value = "content"
2738
- }, [j(y(ut), {
2769
+ }, [j(y(ft), {
2739
2770
  size: 14,
2740
2771
  "stroke-width": 2
2741
- }), s.value === "content" ? (o(), _("span", ys, h(y(a).sidebar.content), 1)) : v("", !0)], 14, vs),
2772
+ }), s.value === "content" ? (o(), _("span", Cs, h(y(a).sidebar.content), 1)) : v("", !0)], 14, Ss),
2742
2773
  T("button", {
2743
2774
  id: "tpl-tab-settings",
2744
2775
  role: "tab",
@@ -2749,10 +2780,10 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2749
2780
  class: w(["tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-[120ms] tpl:ease-[cubic-bezier(0.16,1,0.3,1)]", m("settings")]),
2750
2781
  style: D(b("settings")),
2751
2782
  onClick: r[1] ||= (e) => s.value = "settings"
2752
- }, [j(y(St), {
2783
+ }, [j(y(wt), {
2753
2784
  size: 14,
2754
2785
  "stroke-width": 1.5
2755
- }), s.value === "settings" ? (o(), _("span", xs, h(y(a).sidebar.settings), 1)) : v("", !0)], 14, bs),
2786
+ }), s.value === "settings" ? (o(), _("span", Ts, h(y(a).sidebar.settings), 1)) : v("", !0)], 14, ws),
2756
2787
  u.value ? (o(), _("button", {
2757
2788
  key: 0,
2758
2789
  id: "tpl-tab-issues",
@@ -2765,46 +2796,46 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2765
2796
  style: D(b("issues")),
2766
2797
  onClick: r[2] ||= (e) => s.value = "issues"
2767
2798
  }, [
2768
- j(y(wt), {
2799
+ j(y(Et), {
2769
2800
  size: 14,
2770
2801
  "stroke-width": 1.5
2771
2802
  }),
2772
- s.value === "issues" ? (o(), _("span", Cs, h(y(a).issues.panelTabLabel), 1)) : v("", !0),
2773
- d.value > 0 ? (o(), _("span", ws, h(d.value), 1)) : v("", !0)
2774
- ], 14, Ss)) : v("", !0)
2803
+ s.value === "issues" ? (o(), _("span", Ds, h(y(a).issues.panelTabLabel), 1)) : v("", !0),
2804
+ d.value > 0 ? (o(), _("span", Os, h(d.value), 1)) : v("", !0)
2805
+ ], 14, Es)) : v("", !0)
2775
2806
  ]),
2776
- s.value === "content" ? (o(), _("div", Ts, [e.selectedBlock ? (o(), x(hs, {
2807
+ s.value === "content" ? (o(), _("div", ks, [e.selectedBlock ? (o(), x(ys, {
2777
2808
  key: 0,
2778
2809
  block: e.selectedBlock,
2779
2810
  onUpdate: r[3] ||= (e) => i("update-block", e),
2780
2811
  onDelete: r[4] ||= (e) => i("delete-block"),
2781
2812
  onDuplicate: r[5] ||= (e) => i("duplicate-block")
2782
- }, null, 8, ["block"])) : (o(), _("div", Es, [
2783
- T("div", Ds, [j(y(ft), {
2813
+ }, null, 8, ["block"])) : (o(), _("div", As, [
2814
+ T("div", js, [j(y(mt), {
2784
2815
  size: 40,
2785
2816
  "stroke-width": 1.5
2786
2817
  })]),
2787
- T("h3", Os, h(y(a).sidebar.noSelection), 1),
2788
- T("p", ks, h(y(a).sidebar.noSelectionHint), 1)
2818
+ T("h3", Ms, h(y(a).sidebar.noSelection), 1),
2819
+ T("p", Ns, h(y(a).sidebar.noSelectionHint), 1)
2789
2820
  ]))])) : v("", !0),
2790
- s.value === "settings" ? (o(), _("div", As, [j(Wn, {
2821
+ s.value === "settings" ? (o(), _("div", Ps, [j(Jn, {
2791
2822
  settings: e.settings,
2792
2823
  onUpdate: r[6] ||= (e) => i("update-settings", e)
2793
2824
  }, null, 8, ["settings"])])) : v("", !0),
2794
- s.value === "issues" && u.value ? (o(), _("div", js, [j(y(n))])) : v("", !0)
2795
- ], 10, gs));
2825
+ s.value === "issues" && u.value ? (o(), _("div", Fs, [j(y(n))])) : v("", !0)
2826
+ ], 10, bs));
2796
2827
  }
2797
- }), Ns = ["aria-label"], Ps = [
2828
+ }), Ls = ["aria-label"], Rs = [
2798
2829
  "aria-checked",
2799
2830
  "aria-label",
2800
2831
  "title",
2801
2832
  "onClick"
2802
- ], Fs = /* @__PURE__ */ A({
2833
+ ], zs = /* @__PURE__ */ A({
2803
2834
  __name: "ViewportToggle",
2804
2835
  props: { viewport: {} },
2805
2836
  emits: ["change"],
2806
2837
  setup(e, { emit: t }) {
2807
- let n = e, r = t, { t: i } = L(), a = g(() => [{
2838
+ let n = e, r = t, { t: i } = R(), a = g(() => [{
2808
2839
  value: "desktop",
2809
2840
  label: i.viewport.desktop
2810
2841
  }, {
@@ -2841,26 +2872,26 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2841
2872
  }),
2842
2873
  title: t.label,
2843
2874
  onClick: (e) => r("change", t.value)
2844
- }, [t.value === "desktop" ? (o(), x(y(lt), {
2875
+ }, [t.value === "desktop" ? (o(), x(y(dt), {
2845
2876
  key: 0,
2846
2877
  size: 18,
2847
2878
  "stroke-width": 1.5
2848
- })) : (o(), x(y(mt), {
2879
+ })) : (o(), x(y(gt), {
2849
2880
  key: 1,
2850
2881
  size: 18,
2851
2882
  "stroke-width": 1.5
2852
- })), T("span", null, h(t.label), 1)], 12, Ps))), 128))], 12, Ns));
2883
+ })), T("span", null, h(t.label), 1)], 12, Rs))), 128))], 12, Ls));
2853
2884
  }
2854
- }), Is = [
2885
+ }), Bs = [
2855
2886
  "aria-label",
2856
2887
  "title",
2857
2888
  "aria-pressed"
2858
- ], Ls = /*#__PURE__*/ V(/* @__PURE__ */ A({
2889
+ ], Vs = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
2859
2890
  __name: "PreviewToggle",
2860
2891
  props: { previewMode: { type: Boolean } },
2861
2892
  emits: ["change"],
2862
2893
  setup(e, { emit: t }) {
2863
- let n = t, { t: r } = L();
2894
+ let n = t, { t: r } = R();
2864
2895
  return (t, i) => (o(), _("button", {
2865
2896
  class: "tpl-preview-toggle tpl:relative tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:p-2 tpl:transition-all tpl:duration-150",
2866
2897
  style: D({
@@ -2878,28 +2909,28 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2878
2909
  "leave-to-class": "tpl-icon-leave-to",
2879
2910
  mode: "out-in"
2880
2911
  }, {
2881
- default: u(() => [e.previewMode ? (o(), x(y(ve), {
2912
+ default: u(() => [e.previewMode ? (o(), x(y(Se), {
2882
2913
  key: "eye",
2883
2914
  size: 18,
2884
2915
  "stroke-width": 1.5
2885
- })) : (o(), x(y(te), {
2916
+ })) : (o(), x(y(F), {
2886
2917
  key: "eye-off",
2887
2918
  size: 18,
2888
2919
  "stroke-width": 1.5
2889
2920
  }))]),
2890
2921
  _: 1
2891
- })], 12, Is));
2922
+ })], 12, Bs));
2892
2923
  }
2893
- }), [["__scopeId", "data-v-af87d02a"]]), Rs = [
2924
+ }), [["__scopeId", "data-v-af87d02a"]]), Hs = [
2894
2925
  "aria-label",
2895
2926
  "title",
2896
2927
  "aria-pressed"
2897
- ], zs = /*#__PURE__*/ V(/* @__PURE__ */ A({
2928
+ ], Us = /*#__PURE__*/ Ze(/* @__PURE__ */ A({
2898
2929
  __name: "DarkModeToggle",
2899
2930
  props: { darkMode: { type: Boolean } },
2900
2931
  emits: ["change"],
2901
2932
  setup(e, { emit: t }) {
2902
- let n = t, { t: r } = L();
2933
+ let n = t, { t: r } = R();
2903
2934
  return (t, i) => (o(), _("button", {
2904
2935
  class: "tpl-dark-mode-toggle tpl:relative tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:p-2 tpl:transition-all tpl:duration-150",
2905
2936
  style: D({
@@ -2917,37 +2948,37 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2917
2948
  "leave-to-class": "tpl-icon-leave-to",
2918
2949
  mode: "out-in"
2919
2950
  }, {
2920
- default: u(() => [e.darkMode ? (o(), x(y(ct), {
2951
+ default: u(() => [e.darkMode ? (o(), x(y(ut), {
2921
2952
  key: "moon",
2922
2953
  size: 18,
2923
2954
  "stroke-width": 1.5
2924
- })) : (o(), x(y(xt), {
2955
+ })) : (o(), x(y(Ct), {
2925
2956
  key: "sun",
2926
2957
  size: 18,
2927
2958
  "stroke-width": 1.5
2928
2959
  }))]),
2929
2960
  _: 1
2930
- })], 12, Rs));
2961
+ })], 12, Hs));
2931
2962
  }
2932
- }), [["__scopeId", "data-v-f8694f76"]]), Bs = {
2963
+ }), [["__scopeId", "data-v-f8694f76"]]), Ws = {
2933
2964
  class: "tpl:pointer-events-auto tpl:flex tpl:items-center tpl:gap-1.5 tpl:rounded-tl-lg tpl:p-1",
2934
2965
  style: {
2935
2966
  "background-color": "color-mix(\n in srgb,\n var(--tpl-canvas-bg) 85%,\n transparent\n )",
2936
2967
  "backdrop-filter": "blur(8px)",
2937
2968
  "-webkit-backdrop-filter": "blur(8px)"
2938
2969
  }
2939
- }, Vs = {
2970
+ }, Gs = {
2940
2971
  href: "https://github.com/templatical/sdk",
2941
2972
  target: "_blank",
2942
2973
  rel: "noopener noreferrer",
2943
2974
  class: "tpl:transition-colors tpl:duration-150 hover:tpl:opacity-80 tpl:text-[var(--tpl-text-dim)]",
2944
2975
  style: { "text-decoration": "none" }
2945
- }, Hs = /* @__PURE__ */ A({
2976
+ }, Ks = /* @__PURE__ */ A({
2946
2977
  __name: "EditorFooter",
2947
2978
  props: { positionClass: {} },
2948
2979
  setup(e) {
2949
- let { t } = L();
2950
- return (n, r) => (o(), _("footer", { class: w(["tpl:pointer-events-none tpl:absolute tpl:bottom-0 tpl:z-50 tpl:flex tpl:h-8 tpl:items-center tpl:justify-end tpl:pr-4 tpl:text-[9px] tpl:opacity-90 tpl:transition-all tpl:duration-300 tpl:text-[var(--tpl-text-dim)]", e.positionClass]) }, [T("div", Bs, [
2980
+ let { t } = R();
2981
+ return (n, r) => (o(), _("footer", { class: w(["tpl:pointer-events-none tpl:absolute tpl:bottom-0 tpl:z-50 tpl:flex tpl:h-8 tpl:items-center tpl:justify-end tpl:pr-4 tpl:text-[9px] tpl:opacity-90 tpl:transition-all tpl:duration-300 tpl:text-[var(--tpl-text-dim)]", e.positionClass]) }, [T("div", Ws, [
2951
2982
  T("span", null, h(y(t).footer.poweredBy), 1),
2952
2983
  r[0] ||= T("a", {
2953
2984
  href: "https://templatical.com",
@@ -2962,32 +2993,32 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2962
2993
  alt: ""
2963
2994
  }), k(" Templatical ")], -1),
2964
2995
  r[1] ||= T("span", { class: "tpl:text-[var(--tpl-border)]" }, "·", -1),
2965
- T("a", Vs, h(y(t).footer.openSource), 1)
2996
+ T("a", Gs, h(y(t).footer.openSource), 1)
2966
2997
  ])], 2));
2967
2998
  }
2968
- }), Us = ["aria-labelledby", "data-tpl-theme"], Ws = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:gap-3 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2.5" }, Gs = ["id"], Ks = ["aria-label"], qs = { class: "tpl:relative tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2.5" }, Js = [
2999
+ }), qs = ["aria-labelledby", "data-tpl-theme"], Js = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:gap-3 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2.5" }, Ys = ["id"], Xs = ["aria-label"], Zs = { class: "tpl:relative tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2.5" }, Qs = [
2969
3000
  "id",
2970
3001
  "placeholder",
2971
3002
  "aria-label",
2972
3003
  "aria-activedescendant"
2973
- ], Ys = {
3004
+ ], $s = {
2974
3005
  key: 0,
2975
3006
  class: "tpl:flex tpl:gap-1.5 tpl:overflow-x-auto tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-3 tpl:py-2",
2976
3007
  "data-testid": "merge-tag-picker-group-pills"
2977
- }, Xs = ["data-group-name", "onClick"], Zs = ["aria-label"], Qs = {
3008
+ }, ec = ["data-group-name", "onClick"], tc = ["aria-label"], nc = {
2978
3009
  key: 0,
2979
3010
  class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]",
2980
3011
  "data-testid": "merge-tag-picker-empty"
2981
- }, $s = {
3012
+ }, rc = {
2982
3013
  key: 1,
2983
3014
  class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]",
2984
3015
  "data-testid": "merge-tag-picker-empty"
2985
- }, ec = [
3016
+ }, ic = [
2986
3017
  "aria-expanded",
2987
3018
  "data-group-name",
2988
3019
  "data-group-collapsed",
2989
3020
  "onClick"
2990
- ], tc = { class: "tpl:ml-1 tpl:font-normal" }, nc = [
3021
+ ], ac = { class: "tpl:ml-1 tpl:font-normal" }, oc = [
2991
3022
  "id",
2992
3023
  "aria-selected",
2993
3024
  "data-selected",
@@ -2996,13 +3027,13 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
2996
3027
  "title",
2997
3028
  "onMousemove",
2998
3029
  "onClick"
2999
- ], rc = { class: "tpl:text-sm tpl:font-medium" }, ic = { class: "tpl:line-clamp-2 tpl:font-mono tpl:text-xs tpl:text-ellipsis tpl:break-all tpl:text-[var(--tpl-text-dim)]" }, ac = {
3030
+ ], sc = { class: "tpl:text-sm tpl:font-medium" }, cc = { class: "tpl:line-clamp-2 tpl:font-mono tpl:text-xs tpl:text-ellipsis tpl:break-all tpl:text-[var(--tpl-text-dim)]" }, lc = {
3000
3031
  key: 0,
3001
3032
  class: "tpl:line-clamp-2 tpl:text-xs tpl:text-ellipsis tpl:text-[var(--tpl-text-dim)]"
3002
- }, $ = "tpl-merge-tag-picker-list", oc = /* @__PURE__ */ A({
3033
+ }, $ = "tpl-merge-tag-picker-list", uc = /* @__PURE__ */ A({
3003
3034
  __name: "MergeTagPickerModal",
3004
3035
  setup(e) {
3005
- let t = Ie(Ee, "MergeTagPickerModal"), { t: n, format: i } = L(), a = l(Ue, null), d = l(Ke, null), p = f(""), S = Ne(p, 200), E = f(null), ee = g(() => S.value.trim().length > 0), k = f(0), A = g(() => t.tags.value.some((e) => !!e.group)), N = f(/* @__PURE__ */ new Set());
3036
+ let t = Ne(Ae, "MergeTagPickerModal"), { t: n, format: i } = R(), a = l(Xe, null), d = l(He, null), p = f(""), S = ze(p, 200), E = f(null), ee = g(() => S.value.trim().length > 0), k = f(0), A = g(() => t.tags.value.some((e) => !!e.group)), N = f(/* @__PURE__ */ new Set());
3006
3037
  function P(e) {
3007
3038
  return N.value.has(e);
3008
3039
  }
@@ -3051,42 +3082,42 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3051
3082
  }), o++;
3052
3083
  }
3053
3084
  return a;
3054
- }), R = g(() => I.value.flatMap((e) => e.kind === "tag" ? [e.tag] : []));
3085
+ }), L = g(() => I.value.flatMap((e) => e.kind === "tag" ? [e.tag] : []));
3055
3086
  M(() => t.isOpen.value, (e) => {
3056
3087
  e && (p.value = "", k.value = 0, N.value = /* @__PURE__ */ new Set(), s(() => {
3057
3088
  E.value?.focus();
3058
3089
  }));
3059
- }), M(R, (e) => {
3090
+ }), M(L, (e) => {
3060
3091
  k.value >= e.length && (k.value = Math.max(0, e.length - 1));
3061
3092
  });
3062
- function z(e) {
3093
+ function re(e) {
3063
3094
  t.resolve(e);
3064
3095
  }
3065
- function re() {
3096
+ function ie() {
3066
3097
  t.resolve(null);
3067
3098
  }
3068
- function ie(e) {
3069
- if (R.value.length === 0) return;
3099
+ function z(e) {
3100
+ if (L.value.length === 0) return;
3070
3101
  let t = k.value + e;
3071
- k.value = Math.max(0, Math.min(R.value.length - 1, t)), ce();
3102
+ k.value = Math.max(0, Math.min(L.value.length - 1, t)), se();
3072
3103
  }
3073
- let ae = f(null), oe = f({});
3074
- function se(e, t) {
3075
- oe.value[e] = t ?? null;
3104
+ let B = f(null), ae = f({});
3105
+ function oe(e, t) {
3106
+ ae.value[e] = t ?? null;
3076
3107
  }
3077
- function ce() {
3108
+ function se() {
3078
3109
  s(() => {
3079
- let e = ae.value;
3110
+ let e = B.value;
3080
3111
  e && e.querySelector(`[data-merge-tag-index="${k.value}"]`)?.scrollIntoView({ block: "nearest" });
3081
3112
  });
3082
3113
  }
3083
- function le(e) {
3114
+ function ce(e) {
3084
3115
  if (N.value.has(e)) {
3085
3116
  let t = new Set(N.value);
3086
3117
  t.delete(e), N.value = t;
3087
3118
  }
3088
3119
  s(() => {
3089
- let t = ae.value;
3120
+ let t = B.value;
3090
3121
  if (!t) return;
3091
3122
  let n = 0, r = !1;
3092
3123
  for (let i of Array.from(t.children)) {
@@ -3102,26 +3133,26 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3102
3133
  });
3103
3134
  });
3104
3135
  }
3105
- function ue(e) {
3106
- if (e.key === "ArrowDown") e.preventDefault(), ie(1);
3107
- else if (e.key === "ArrowUp") e.preventDefault(), ie(-1);
3136
+ function le(e) {
3137
+ if (e.key === "ArrowDown") e.preventDefault(), z(1);
3138
+ else if (e.key === "ArrowUp") e.preventDefault(), z(-1);
3108
3139
  else if (e.key === "Enter") {
3109
3140
  e.preventDefault();
3110
- let t = R.value[k.value];
3111
- t && z(t);
3141
+ let t = L.value[k.value];
3142
+ t && re(t);
3112
3143
  }
3113
3144
  }
3114
- function de() {
3115
- if (R.value.length !== 0) return `${$}-opt-${k.value}`;
3145
+ function ue() {
3146
+ if (L.value.length !== 0) return `${$}-opt-${k.value}`;
3116
3147
  }
3117
- function fe(e) {
3148
+ function de(e) {
3118
3149
  return `${$}-opt-${e}`;
3119
3150
  }
3120
- let pe = g(() => t.tags.value.length === 0), he = g(() => !pe.value && ne.value.length === 0), B = g(() => A.value && F.value.length > 1 && !ee.value);
3121
- return (e, s) => (o(), x(me, {
3151
+ let V = g(() => t.tags.value.length === 0), fe = g(() => !V.value && ne.value.length === 0), pe = g(() => A.value && F.value.length > 1 && !ee.value);
3152
+ return (e, s) => (o(), x(ge, {
3122
3153
  visible: y(t).isOpen.value,
3123
- onClose: re,
3124
- onKeydown: ue
3154
+ onClose: ie,
3155
+ onKeydown: le
3125
3156
  }, {
3126
3157
  default: u(() => [T("div", {
3127
3158
  role: "dialog",
@@ -3132,20 +3163,20 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3132
3163
  class: "tpl tpl:flex tpl:max-h-[80vh] tpl:w-[min(420px,92vw)] tpl:flex-col tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)] tpl:shadow-[var(--tpl-shadow-lg)]",
3133
3164
  style: D(y(a))
3134
3165
  }, [
3135
- T("header", Ws, [T("h2", {
3166
+ T("header", Js, [T("h2", {
3136
3167
  id: `${$}-title`,
3137
3168
  class: "tpl:m-0 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
3138
- }, h(y(n).mergeTag.picker.title), 9, Gs), T("button", {
3169
+ }, h(y(n).mergeTag.picker.title), 9, Ys), T("button", {
3139
3170
  type: "button",
3140
3171
  class: "tpl:flex tpl:h-7 tpl:w-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:text-[var(--tpl-text-dim)] tpl:transition-colors tpl:hover:bg-[var(--tpl-bg-hover)] tpl:hover:text-[var(--tpl-text)]",
3141
3172
  "aria-label": y(n).mergeTag.picker.close,
3142
3173
  "data-testid": "merge-tag-picker-close",
3143
- onClick: re
3144
- }, [j(y(Ae), {
3174
+ onClick: ie
3175
+ }, [j(y(Pe), {
3145
3176
  size: 16,
3146
3177
  "stroke-width": 2
3147
- })], 8, Ks)]),
3148
- T("div", qs, [j(y(Ct), {
3178
+ })], 8, Xs)]),
3179
+ T("div", Zs, [j(y(Tt), {
3149
3180
  class: "tpl:pointer-events-none tpl:absolute tpl:top-1/2 tpl:left-5 tpl:-translate-y-1/2 tpl:text-[var(--tpl-text-dim)]",
3150
3181
  size: 14,
3151
3182
  "stroke-width": 2
@@ -3159,30 +3190,30 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3159
3190
  placeholder: y(n).mergeTag.picker.searchPlaceholder,
3160
3191
  "aria-label": y(n).mergeTag.picker.searchAriaLabel,
3161
3192
  "aria-controls": $,
3162
- "aria-activedescendant": de(),
3193
+ "aria-activedescendant": ue(),
3163
3194
  "data-testid": "merge-tag-picker-search",
3164
3195
  onKeydown: s[1] ||= m(b(() => {}, ["prevent"]), ["enter"])
3165
- }, null, 40, Js), [[C, p.value]])]),
3166
- B.value ? (o(), _("div", Ys, [(o(!0), _(O, null, c(F.value, (e) => (o(), _("button", {
3196
+ }, null, 40, Qs), [[C, p.value]])]),
3197
+ pe.value ? (o(), _("div", $s, [(o(!0), _(O, null, c(F.value, (e) => (o(), _("button", {
3167
3198
  key: e,
3168
3199
  type: "button",
3169
3200
  class: "tpl:flex tpl:flex-shrink-0 tpl:cursor-pointer tpl:items-center tpl:rounded-full tpl:border tpl:border-[var(--tpl-border)] tpl:bg-transparent tpl:px-2.5 tpl:py-0.5 tpl:text-[11px] tpl:font-medium tpl:text-[var(--tpl-text-dim)] tpl:transition-colors tpl:hover:bg-[var(--tpl-bg-hover)] tpl:hover:text-[var(--tpl-text)]",
3170
3201
  "data-testid": "merge-tag-picker-group-pill",
3171
3202
  "data-group-name": e,
3172
- onClick: (t) => le(e)
3173
- }, h(e), 9, Xs))), 128))])) : v("", !0),
3203
+ onClick: (t) => ce(e)
3204
+ }, h(e), 9, ec))), 128))])) : v("", !0),
3174
3205
  T("div", {
3175
3206
  id: $,
3176
3207
  ref_key: "listRef",
3177
- ref: ae,
3208
+ ref: B,
3178
3209
  class: "tpl:relative tpl:max-h-[60vh] tpl:flex-1 tpl:overflow-y-auto",
3179
3210
  role: "listbox",
3180
3211
  "aria-label": y(n).mergeTag.picker.title,
3181
3212
  "data-testid": "merge-tag-picker-list"
3182
- }, [pe.value ? (o(), _("div", Qs, h(y(n).mergeTag.picker.empty), 1)) : he.value ? (o(), _("div", $s, h(y(n).mergeTag.picker.noResults), 1)) : (o(!0), _(O, { key: 2 }, c(I.value, (e, t) => (o(), _(O, { key: t }, [e.kind === "header" ? (o(), _("button", {
3213
+ }, [V.value ? (o(), _("div", nc, h(y(n).mergeTag.picker.empty), 1)) : fe.value ? (o(), _("div", rc, h(y(n).mergeTag.picker.noResults), 1)) : (o(!0), _(O, { key: 2 }, c(I.value, (e, t) => (o(), _(O, { key: t }, [e.kind === "header" ? (o(), _("button", {
3183
3214
  key: 0,
3184
3215
  ref_for: !0,
3185
- ref: (t) => se(e.group, t),
3216
+ ref: (t) => oe(e.group, t),
3186
3217
  type: "button",
3187
3218
  "aria-expanded": !P(e.group),
3188
3219
  "aria-controls": $,
@@ -3192,16 +3223,16 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3192
3223
  "data-group-collapsed": P(e.group) ? "true" : "false",
3193
3224
  onClick: (t) => te(e.group)
3194
3225
  }, [
3195
- j(y(Be), {
3226
+ j(y(Ge), {
3196
3227
  size: 12,
3197
3228
  "stroke-width": 2,
3198
3229
  class: w(["tpl:transition-transform", P(e.group) ? "tpl:-rotate-90" : ""])
3199
3230
  }, null, 8, ["class"]),
3200
3231
  T("span", null, h(e.group), 1),
3201
- T("span", tc, " (" + h(y(i)(y(n).mergeTag.picker.groupCount, { count: e.count })) + ") ", 1)
3202
- ], 8, ec)) : (o(), _("button", {
3232
+ T("span", ac, " (" + h(y(i)(y(n).mergeTag.picker.groupCount, { count: e.count })) + ") ", 1)
3233
+ ], 8, ic)) : (o(), _("button", {
3203
3234
  key: 1,
3204
- id: fe(e.index),
3235
+ id: de(e.index),
3205
3236
  type: "button",
3206
3237
  role: "option",
3207
3238
  "aria-selected": e.index === k.value,
@@ -3212,18 +3243,18 @@ var Ea = { class: "tpl:mb-3.5" }, Da = ["value"], Oa = ["value"], ka = /* @__PUR
3212
3243
  class: w(["tpl:flex tpl:w-full tpl:cursor-pointer tpl:flex-col tpl:items-start tpl:gap-0.5 tpl:border-none tpl:px-3 tpl:py-1.5 tpl:text-left tpl:transition-colors", e.index === k.value ? "tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary)]" : "tpl:bg-transparent tpl:text-[var(--tpl-text)] tpl:hover:bg-[var(--tpl-bg-hover)]"]),
3213
3244
  "data-testid": "merge-tag-picker-item",
3214
3245
  onMousemove: (t) => k.value = e.index,
3215
- onClick: (t) => z(e.tag)
3246
+ onClick: (t) => re(e.tag)
3216
3247
  }, [
3217
- T("span", rc, h(e.tag.label), 1),
3218
- T("span", ic, h(e.tag.value), 1),
3219
- e.tag.description ? (o(), _("span", ac, h(e.tag.description), 1)) : v("", !0)
3220
- ], 42, nc))], 64))), 128))], 8, Zs)
3221
- ], 12, Us)]),
3248
+ T("span", sc, h(e.tag.label), 1),
3249
+ T("span", cc, h(e.tag.value), 1),
3250
+ e.tag.description ? (o(), _("span", lc, h(e.tag.description), 1)) : v("", !0)
3251
+ ], 42, oc))], 64))), 128))], 8, tc)
3252
+ ], 12, qs)]),
3222
3253
  _: 1
3223
3254
  }, 8, ["visible"]));
3224
3255
  }
3225
3256
  });
3226
3257
  //#endregion
3227
- export { Fs as a, Gt as c, Ls as i, Wt as l, Hs as n, Ms as o, zs as r, en as s, oc as t, Pt as u };
3258
+ export { zs as a, Jt as c, Vs as i, qt as l, Ks as n, Is as o, Us as r, an as s, uc as t, It as u };
3228
3259
 
3229
- //# sourceMappingURL=styles-NhU45rEI.js.map
3260
+ //# sourceMappingURL=styles-CfqCvq0Z.js.map