@templatical/editor 0.10.4 → 0.11.1

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