@templatical/editor 0.11.1 → 0.12.0

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