@templatical/editor 0.27.3 → 0.27.4

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 (128) hide show
  1. package/dist/{AiChatSidebar-inzMb2Vi.js → AiChatSidebar-LstHjwBU.js} +7 -7
  2. package/dist/{AiFeatureMenu-BTdgjwdx.js → AiFeatureMenu-DVQrznsN.js} +4 -4
  3. package/dist/{BlockIssueBadge-a7jENlL4.js → BlockIssueBadge-DKaFQNxW.js} +2 -2
  4. package/dist/{BlockPreviewCanvas-CMuRmhQg.js → BlockPreviewCanvas-D9eC04OA.js} +1 -1
  5. package/dist/{CloudHeaderExtras-Bgr-Ox9M.js → CloudHeaderExtras-DX0j3CJ3.js} +2 -2
  6. package/dist/{CloudPanels-oFNlTOO5.js → CloudPanels-DCeNSwXy.js} +3 -3
  7. package/dist/{CollaboratorBar-BHja900c.js → CollaboratorBar-BZ-JCjdM.js} +2 -2
  8. package/dist/{ColorPicker-ClUa_hMj.js → ColorPicker-j0TQu5lE.js} +1 -1
  9. package/dist/{CommentsPanel-CB1-poNb.js → CommentsPanel-c5LmzlNN.js} +1 -1
  10. package/dist/{CommentsSidebar-B6mV8ft4.js → CommentsSidebar-Bm1DxFb5.js} +10 -10
  11. package/dist/{CountdownToolbar-BpnKUXN_.js → CountdownToolbar-UPdwNvVI.js} +1 -1
  12. package/dist/{DesignReferenceSidebar-BC5UxrJl.js → DesignReferenceSidebar-C8WTApc5.js} +5 -5
  13. package/dist/{IssuesPanel-BFczwZkL.js → IssuesPanel-D49aJjLS.js} +5 -5
  14. package/dist/{MergeTagModeToggle-koHNtEJe.js → MergeTagModeToggle-CVzJY9b2.js} +2 -2
  15. package/dist/{ParagraphEditor-cKosDi_l.js → ParagraphEditor-C9-jQ5zP.js} +7 -7
  16. package/dist/{RestoreVersionDialog-DpZmcFuf.js → RestoreVersionDialog-Ds6gEF5u.js} +3 -3
  17. package/dist/{RichTextEditorContent-Br3WBNOs.js → RichTextEditorContent-CO1se6ln.js} +3 -3
  18. package/dist/{SaveBlockDialog-C7mSGScN.js → SaveBlockDialog-DJIcncsU.js} +6 -6
  19. package/dist/{SavedBlocksBrowserModal-D7MYzuVP.js → SavedBlocksBrowserModal-BUhhkGEb.js} +7 -7
  20. package/dist/{SavedBlocksPanels-D5T63WyR.js → SavedBlocksPanels-DBfPz4iB.js} +1 -1
  21. package/dist/{SavedBlocksPickBar-BluJS58M.js → SavedBlocksPickBar-D9NsfzCB.js} +2 -2
  22. package/dist/{TemplateScoringPanel-C0z27t2p.js → TemplateScoringPanel-BFsUqnXR.js} +10 -10
  23. package/dist/{TestEmailModal-DoSIuHXe.js → TestEmailModal-DARwBqpV.js} +6 -6
  24. package/dist/{TestEmailPanel-3Y6uUX3Z.js → TestEmailPanel-BkgAew1S.js} +1 -1
  25. package/dist/{TitleEditor-D9IWtoH3.js → TitleEditor-BWLwZh84.js} +4 -4
  26. package/dist/{TplModal-CyBCFn5s.js → TplModal-CJLs8as_.js} +1 -1
  27. package/dist/{VersionHistoryMenu-8nd_aOnh.js → VersionHistoryMenu-CrIVG_SN.js} +10 -10
  28. package/dist/{VersionHistoryPanels-Cm7MxfrI.js → VersionHistoryPanels-s45U7XY-.js} +1 -1
  29. package/dist/{VersionPreviewBanner-B9w773jz.js → VersionPreviewBanner-BIy95B34.js} +1 -1
  30. package/dist/{blockTypeIcons-BRCuWioG.js → blockTypeIcons-BjUkQsAe.js} +2 -2
  31. package/dist/bundle-stats.json +5 -5
  32. package/dist/cdn/chunks/{AiChatSidebar-BIvQg9Q5.js → AiChatSidebar-tZqbhmuJ.js} +2 -2
  33. package/dist/cdn/chunks/{AiChatSidebar-BIvQg9Q5.js.map → AiChatSidebar-tZqbhmuJ.js.map} +1 -1
  34. package/dist/cdn/chunks/{AiFeatureMenu-BMvcmvDZ.js → AiFeatureMenu-BhtNkpIq.js} +3 -3
  35. package/dist/cdn/chunks/{AiFeatureMenu-BMvcmvDZ.js.map → AiFeatureMenu-BhtNkpIq.js.map} +1 -1
  36. package/dist/cdn/chunks/{BlockIssueBadge-Drrmjqd7.js → BlockIssueBadge-D9L8j7Db.js} +2 -2
  37. package/dist/cdn/chunks/{BlockIssueBadge-Drrmjqd7.js.map → BlockIssueBadge-D9L8j7Db.js.map} +1 -1
  38. package/dist/cdn/chunks/{BlockPreviewCanvas-CuWJLv8h.js → BlockPreviewCanvas-Bt7fFzIQ.js} +2 -2
  39. package/dist/cdn/chunks/{BlockPreviewCanvas-CuWJLv8h.js.map → BlockPreviewCanvas-Bt7fFzIQ.js.map} +1 -1
  40. package/dist/cdn/chunks/{CloudHeaderExtras-Ctat5U0M.js → CloudHeaderExtras-CScGpeLl.js} +3 -3
  41. package/dist/cdn/chunks/{CloudHeaderExtras-Ctat5U0M.js.map → CloudHeaderExtras-CScGpeLl.js.map} +1 -1
  42. package/dist/cdn/chunks/{CloudPanels-YRYmXE9O.js → CloudPanels-DVtJkWsj.js} +4 -4
  43. package/dist/cdn/chunks/{CloudPanels-YRYmXE9O.js.map → CloudPanels-DVtJkWsj.js.map} +1 -1
  44. package/dist/cdn/chunks/{CollaboratorBar-DgdxBCkN.js → CollaboratorBar-BH1lM_Ta.js} +3 -3
  45. package/dist/cdn/chunks/{CollaboratorBar-DgdxBCkN.js.map → CollaboratorBar-BH1lM_Ta.js.map} +1 -1
  46. package/dist/cdn/chunks/{ColorPicker-B-we7_bC.js → ColorPicker-d4kY7WWd.js} +2 -2
  47. package/dist/cdn/chunks/{ColorPicker-B-we7_bC.js.map → ColorPicker-d4kY7WWd.js.map} +1 -1
  48. package/dist/cdn/chunks/{CommentsPanel-D7Y-74Nj.js → CommentsPanel-COhQMagD.js} +2 -2
  49. package/dist/cdn/chunks/{CommentsPanel-D7Y-74Nj.js.map → CommentsPanel-COhQMagD.js.map} +1 -1
  50. package/dist/cdn/chunks/{CommentsSidebar-DxTobvYS.js → CommentsSidebar-vzLX-_h3.js} +2 -2
  51. package/dist/cdn/chunks/{CommentsSidebar-DxTobvYS.js.map → CommentsSidebar-vzLX-_h3.js.map} +1 -1
  52. package/dist/cdn/chunks/{CountdownToolbar-D8QWL-jK.js → CountdownToolbar-BRDbI1mM.js} +2 -2
  53. package/dist/cdn/chunks/{CountdownToolbar-D8QWL-jK.js.map → CountdownToolbar-BRDbI1mM.js.map} +1 -1
  54. package/dist/cdn/chunks/{DesignReferenceSidebar-D9Lm4Al0.js → DesignReferenceSidebar-npLxDRJI.js} +2 -2
  55. package/dist/cdn/chunks/{DesignReferenceSidebar-D9Lm4Al0.js.map → DesignReferenceSidebar-npLxDRJI.js.map} +1 -1
  56. package/dist/cdn/chunks/{IssuesPanel-Dz90c1C6.js → IssuesPanel-CTGlv7HF.js} +2 -2
  57. package/dist/cdn/chunks/{IssuesPanel-Dz90c1C6.js.map → IssuesPanel-CTGlv7HF.js.map} +1 -1
  58. package/dist/cdn/chunks/{MergeTagModeToggle-CfFrfYNC.js → MergeTagModeToggle-CkpKFx9N.js} +2 -2
  59. package/dist/cdn/chunks/{MergeTagModeToggle-CfFrfYNC.js.map → MergeTagModeToggle-CkpKFx9N.js.map} +1 -1
  60. package/dist/cdn/chunks/{ParagraphEditor-Be-BO5hD.js → ParagraphEditor-BgeeE0Gj.js} +5 -5
  61. package/dist/cdn/chunks/{ParagraphEditor-Be-BO5hD.js.map → ParagraphEditor-BgeeE0Gj.js.map} +1 -1
  62. package/dist/cdn/chunks/{RestoreVersionDialog-CKtz_FEz.js → RestoreVersionDialog-tfoAQAeP.js} +3 -3
  63. package/dist/cdn/chunks/{RestoreVersionDialog-CKtz_FEz.js.map → RestoreVersionDialog-tfoAQAeP.js.map} +1 -1
  64. package/dist/cdn/chunks/{RichTextEditorContent-D3eWZ793.js → RichTextEditorContent-DvLBtUcW.js} +3 -3
  65. package/dist/cdn/chunks/{RichTextEditorContent-D3eWZ793.js.map → RichTextEditorContent-DvLBtUcW.js.map} +1 -1
  66. package/dist/cdn/chunks/{SaveBlockDialog-C5nT7Fxi.js → SaveBlockDialog-D67K2lHn.js} +5 -5
  67. package/dist/cdn/chunks/{SaveBlockDialog-C5nT7Fxi.js.map → SaveBlockDialog-D67K2lHn.js.map} +1 -1
  68. package/dist/cdn/chunks/{SavedBlocksBrowserModal-Cvyewimb.js → SavedBlocksBrowserModal-BxVR-yDt.js} +6 -6
  69. package/dist/cdn/chunks/{SavedBlocksBrowserModal-Cvyewimb.js.map → SavedBlocksBrowserModal-BxVR-yDt.js.map} +1 -1
  70. package/dist/cdn/chunks/{SavedBlocksPanels-B7aBlxKW.js → SavedBlocksPanels-VkKCO0uY.js} +2 -2
  71. package/dist/cdn/chunks/{SavedBlocksPanels-B7aBlxKW.js.map → SavedBlocksPanels-VkKCO0uY.js.map} +1 -1
  72. package/dist/cdn/chunks/{SavedBlocksPickBar-D0opM9P9.js → SavedBlocksPickBar-BJHQDgUT.js} +3 -3
  73. package/dist/cdn/chunks/{SavedBlocksPickBar-D0opM9P9.js.map → SavedBlocksPickBar-BJHQDgUT.js.map} +1 -1
  74. package/dist/cdn/chunks/{TemplateScoringPanel-DEsNZlHe.js → TemplateScoringPanel-MvdrkgqL.js} +2 -2
  75. package/dist/cdn/chunks/{TemplateScoringPanel-DEsNZlHe.js.map → TemplateScoringPanel-MvdrkgqL.js.map} +1 -1
  76. package/dist/cdn/chunks/{TestEmailModal-BANpGbEP.js → TestEmailModal-CEBFCevy.js} +6 -6
  77. package/dist/cdn/chunks/{TestEmailModal-BANpGbEP.js.map → TestEmailModal-CEBFCevy.js.map} +1 -1
  78. package/dist/cdn/chunks/{TestEmailPanel-DItZMP3B.js → TestEmailPanel-C35nqIIl.js} +2 -2
  79. package/dist/cdn/chunks/{TestEmailPanel-DItZMP3B.js.map → TestEmailPanel-C35nqIIl.js.map} +1 -1
  80. package/dist/cdn/chunks/{TitleEditor-D_NJ4Ww8.js → TitleEditor-c2aQCyds.js} +4 -4
  81. package/dist/cdn/chunks/{TitleEditor-D_NJ4Ww8.js.map → TitleEditor-c2aQCyds.js.map} +1 -1
  82. package/dist/cdn/chunks/{TplModal-C51W8LTn.js → TplModal-DSTVZKuI.js} +2 -2
  83. package/dist/cdn/chunks/{TplModal-C51W8LTn.js.map → TplModal-DSTVZKuI.js.map} +1 -1
  84. package/dist/cdn/chunks/{VersionHistoryMenu-Cv23A0uu.js → VersionHistoryMenu-BNYSIjVj.js} +4 -4
  85. package/dist/cdn/chunks/{VersionHistoryMenu-Cv23A0uu.js.map → VersionHistoryMenu-BNYSIjVj.js.map} +1 -1
  86. package/dist/cdn/chunks/{VersionHistoryPanels-DHDN1owI.js → VersionHistoryPanels-CvWySHUE.js} +2 -2
  87. package/dist/cdn/chunks/{VersionHistoryPanels-DHDN1owI.js.map → VersionHistoryPanels-CvWySHUE.js.map} +1 -1
  88. package/dist/cdn/chunks/{VersionPreviewBanner-Dw4kFkrh.js → VersionPreviewBanner-CBVDWnhq.js} +2 -2
  89. package/dist/cdn/chunks/{VersionPreviewBanner-Dw4kFkrh.js.map → VersionPreviewBanner-CBVDWnhq.js.map} +1 -1
  90. package/dist/cdn/chunks/{blockTypeIcons-hX_W4dqo.js → blockTypeIcons-A9qFb1cR.js} +2 -2
  91. package/dist/cdn/chunks/{blockTypeIcons-hX_W4dqo.js.map → blockTypeIcons-A9qFb1cR.js.map} +1 -1
  92. package/dist/cdn/chunks/{createCloudRuntime-D75oJ9j-.js → createCloudRuntime-DYDf_-rN.js} +2 -2
  93. package/dist/cdn/chunks/{createCloudRuntime-D75oJ9j-.js.map → createCloudRuntime-DYDf_-rN.js.map} +1 -1
  94. package/dist/cdn/chunks/{icons-C36Ha5VU.js → icons-Dl5bcXmT.js} +7 -7
  95. package/dist/cdn/chunks/{icons-C36Ha5VU.js.map → icons-Dl5bcXmT.js.map} +1 -1
  96. package/dist/cdn/chunks/{src-B_pCqXyM.js → src-BAWlZu4B.js} +3 -3
  97. package/dist/cdn/chunks/{src-B_pCqXyM.js.map → src-BAWlZu4B.js.map} +1 -1
  98. package/dist/cdn/chunks/{src-CoHDh8Ua.js → src-BDUi-9js.js} +15 -15
  99. package/dist/cdn/chunks/{src-CoHDh8Ua.js.map → src-BDUi-9js.js.map} +1 -1
  100. package/dist/cdn/chunks/{useEditorCore-BtEO1qms.js → useEditorCore-D84laTMj.js} +5 -5
  101. package/dist/cdn/chunks/{useEditorCore-BtEO1qms.js.map → useEditorCore-D84laTMj.js.map} +1 -1
  102. package/dist/cdn/editor.js +638 -625
  103. package/dist/cdn/editor.js.map +1 -1
  104. package/dist/{check-DZbmkMQe.js → check-GRcTaHlZ.js} +1 -1
  105. package/dist/{chevron-down-nYScOLeZ.js → chevron-down-NUIAa2Qf.js} +1 -1
  106. package/dist/{chevron-up-CpYpDLnc.js → chevron-up-Bjf2BQtL.js} +1 -1
  107. package/dist/{circle-alert-CuuK6thq.js → circle-alert-FpQ8ykQL.js} +1 -1
  108. package/dist/{clock-DxkrtqOr.js → clock-CaOM1DC-.js} +1 -1
  109. package/dist/{createLucideIcon-L-wQXW_R.js → createLucideIcon-CAmDKr5Z.js} +2 -2
  110. package/dist/{image-up-DouZRGVt.js → image-up-CIGT4cSb.js} +1 -1
  111. package/dist/{info-puX5V6Iq.js → info-9YwKinXj.js} +1 -1
  112. package/dist/{loader-circle-DqTxB7Kr.js → loader-circle-QyURl47g.js} +1 -1
  113. package/dist/{message-circle-BZ7YpB22.js → message-circle-C9pycEzV.js} +1 -1
  114. package/dist/{pencil-DmbRhTJu.js → pencil-BvW86jVn.js} +1 -1
  115. package/dist/{refresh-cw-OK_O-cL0.js → refresh-cw-BDAUomac.js} +1 -1
  116. package/dist/{scan-line-DyaSTsJ5.js → scan-line-B5EvAPSG.js} +1 -1
  117. package/dist/{send-B-wasJJC.js → send-BAUn7DLp.js} +1 -1
  118. package/dist/{shield-check-DUIyRrTo.js → shield-check-CLGywlg0.js} +1 -1
  119. package/dist/{sparkles-DYEMATWC.js → sparkles-X6C0spo6.js} +1 -1
  120. package/dist/templatical-editor.js +131 -118
  121. package/dist/{text-align-start-CzjLeBLe.js → text-align-start-C6FXOoEj.js} +1 -1
  122. package/dist/{trash-2-C0shEPry.js → trash-2-balHkQP4.js} +1 -1
  123. package/dist/{triangle-alert-Fw0ce8oQ.js → triangle-alert-D2JBEr6k.js} +1 -1
  124. package/dist/{upload-D69C2CBx.js → upload-D70OYprI.js} +1 -1
  125. package/dist/{useEditorCore-DoKDh27o.js → useEditorCore-D7Gz7_CW.js} +9 -9
  126. package/dist/{useScrollToBlock-KA65jhQ_.js → useScrollToBlock-DcImB73T.js} +1 -1
  127. package/dist/{x-BjTlFqRv.js → x-DTUPbuwx.js} +1 -1
  128. package/package.json +9 -9
@@ -1,32 +1,32 @@
1
1
  import { A as e, B as t, D as n, Dt as r, G as i, J as a, L as o, M as s, O as c, Ot as l, P as u, S as d, T as f, U as p, X as m, _ as h, b as g, c as _, d as v, g as y, h as b, j as x, k as S, kt as C, l as w, p as T, q as E, r as D, rt as O, s as k, u as A, v as j, z as M } from "./vue.runtime.esm-bundler-DzEsDRtY.js";
2
- import { a as N, c as P, n as F, o as I, s as L, t as R } from "./runtime-dom.esm-bundler-BgKXIPLV.js";
3
- import { A as z, D as B, E as V, M as ee, N as H, R as U, T as W, a as G, c as te, f as ne, k as K, l as re, p as ie, s as ae, z as oe } from "./dist-B1kLn1rs.js";
4
- import { F as se, G as ce, I as le, J as ue, K as de, M as fe, O as pe, P as me, R as he, T as ge, V as _e, W as ve, X as ye, Y as be, _ as xe, a as Se, b as Ce, c as we, f as Te, g as Ee, h as De, i as Oe, l as ke, m as Ae, n as je, o as Me, p as Ne, q as Pe, r as Fe, s as Ie, t as Le, u as Re, v as ze, w as Be, x as Ve, y as He, z as Ue } from "./useEditorCore-DoKDh27o.js";
2
+ import { a as N, c as P, n as F, o as I, s as L, t as ee } from "./runtime-dom.esm-bundler-BgKXIPLV.js";
3
+ import { A as R, D as z, E as B, M as V, N as H, R as U, T as W, a as G, c as te, f as ne, k as K, l as re, p as ie, s as ae, z as oe } from "./dist-B1kLn1rs.js";
4
+ import { F as se, G as ce, I as le, J as ue, K as de, M as fe, O as pe, P as me, R as he, T as ge, V as _e, W as ve, X as ye, Y as be, _ as xe, a as Se, b as Ce, c as we, f as Te, g as Ee, h as De, i as Oe, l as ke, m as Ae, n as je, o as Me, p as Ne, q as Pe, r as Fe, s as Ie, t as Le, u as Re, v as ze, w as Be, x as Ve, y as He, z as Ue } from "./useEditorCore-D7Gz7_CW.js";
5
5
  import { c as We, m as Ge, p as Ke } from "./dist-CqcGTIiX.js";
6
6
  import { i as qe } from "./dist-B5iReTtK.js";
7
7
  import { B as Je, D as Ye, F as Xe, H as Ze, L as Qe, N as $e, O as et, U as tt, V as nt, W as rt, _ as it, c as at, d as ot, f as st, h as ct, j as lt, k as ut, m as dt, n as ft, o as pt, p as mt, r as ht, s as gt, u as _t, w as vt, z as yt } from "./keys-CVpi8xCT.js";
8
8
  import { t as q } from "./useI18n-CvYvat9_.js";
9
9
  import { t as bt } from "./logger-BBlvSn6q.js";
10
10
  import { a as xt, n as St } from "./usePopoverPosition-WslxM_PU.js";
11
- import { t as J } from "./createLucideIcon-L-wQXW_R.js";
12
- import { n as Ct, t as wt } from "./scan-line-DyaSTsJ5.js";
13
- import { t as Tt } from "./check-DZbmkMQe.js";
14
- import { t as Et } from "./chevron-down-nYScOLeZ.js";
15
- import { t as Dt } from "./circle-alert-CuuK6thq.js";
16
- import { i as Ot, n as kt, r as At, t as jt } from "./blockTypeIcons-BRCuWioG.js";
17
- import { n as Mt, t as Nt } from "./refresh-cw-OK_O-cL0.js";
18
- import { t as Pt } from "./image-up-DouZRGVt.js";
19
- import { t as Ft } from "./info-puX5V6Iq.js";
20
- import { n as It, t as Lt } from "./useScrollToBlock-KA65jhQ_.js";
21
- import { t as Rt } from "./loader-circle-DqTxB7Kr.js";
22
- import { t as zt } from "./message-circle-BZ7YpB22.js";
23
- import { i as Bt, n as Vt, r as Ht, t as Ut } from "./MergeTagModeToggle-koHNtEJe.js";
24
- import { t as Wt } from "./send-B-wasJJC.js";
25
- import { t as Gt } from "./sparkles-DYEMATWC.js";
26
- import { n as Kt, r as qt, t as Jt } from "./text-align-start-CzjLeBLe.js";
27
- import { t as Yt } from "./trash-2-C0shEPry.js";
28
- import { t as Xt } from "./upload-D69C2CBx.js";
29
- import { t as Zt } from "./x-BjTlFqRv.js";
11
+ import { t as J } from "./createLucideIcon-CAmDKr5Z.js";
12
+ import { n as Ct, t as wt } from "./scan-line-B5EvAPSG.js";
13
+ import { t as Tt } from "./check-GRcTaHlZ.js";
14
+ import { t as Et } from "./chevron-down-NUIAa2Qf.js";
15
+ import { t as Dt } from "./circle-alert-FpQ8ykQL.js";
16
+ import { i as Ot, n as kt, r as At, t as jt } from "./blockTypeIcons-BjUkQsAe.js";
17
+ import { n as Mt, t as Nt } from "./refresh-cw-BDAUomac.js";
18
+ import { t as Pt } from "./image-up-CIGT4cSb.js";
19
+ import { t as Ft } from "./info-9YwKinXj.js";
20
+ import { n as It, t as Lt } from "./useScrollToBlock-DcImB73T.js";
21
+ import { t as Rt } from "./loader-circle-QyURl47g.js";
22
+ import { t as zt } from "./message-circle-C9pycEzV.js";
23
+ import { i as Bt, n as Vt, r as Ht, t as Ut } from "./MergeTagModeToggle-CVzJY9b2.js";
24
+ import { t as Wt } from "./send-BAUn7DLp.js";
25
+ import { t as Gt } from "./sparkles-X6C0spo6.js";
26
+ import { n as Kt, r as qt, t as Jt } from "./text-align-start-C6FXOoEj.js";
27
+ import { t as Yt } from "./trash-2-balHkQP4.js";
28
+ import { t as Xt } from "./upload-D70OYprI.js";
29
+ import { t as Zt } from "./x-DTUPbuwx.js";
30
30
  import { t as Qt } from "./_plugin-vue_export-helper-B3ysoDQm.js";
31
31
  import { t as $t } from "./useCloudI18n-DmWo4nzs.js";
32
32
  import { t as en } from "./useMergeTag-D6Z6cyDa.js";
@@ -35,11 +35,11 @@ import { t as nn } from "./preRenderCustomBlocks-BebjKtmw.js";
35
35
  import { n as rn, t as an } from "./emailFrameWidth-BmFCN2dp.js";
36
36
  import { t as on } from "./readableTextColor-f8Kykfnh.js";
37
37
  import { S as sn, _ as cn, b as ln, c as un, g as Y, h as X, l as dn, m as Z, p as Q, r as fn, t as pn, y as mn } from "./styleConstants-9oK5kn21.js";
38
- import { t as $ } from "./ColorPicker-ClUa_hMj.js";
38
+ import { t as $ } from "./ColorPicker-j0TQu5lE.js";
39
39
  import { n as hn, r as gn } from "./MergeTagSuggestion-DGha0WRp.js";
40
40
  import { i as _n, n as vn, r as yn, t as bn } from "./NumberWithSuffix-D9mPtMJB.js";
41
41
  import { t as xn } from "./formatRelativeTime-CtUU-QZ8.js";
42
- import { t as Sn } from "./TplModal-CyBCFn5s.js";
42
+ import { t as Sn } from "./TplModal-CJLs8as_.js";
43
43
  var Cn = J("circle", [["circle", {
44
44
  cx: "12",
45
45
  cy: "12",
@@ -747,7 +747,7 @@ function Qn(e, t, n) {
747
747
  }), o = a.exec(e);
748
748
  }
749
749
  };
750
- return i(n.logic, "data-logic-merge-tag", (e) => V(e, n)), i(n.value, "data-merge-tag", (e) => B(e, t)), r.sort((e, t) => e.start - t.start);
750
+ return i(n.logic, "data-logic-merge-tag", (e) => B(e, n)), i(n.value, "data-merge-tag", (e) => z(e, t)), r.sort((e, t) => e.start - t.start);
751
751
  }
752
752
  function $n(e) {
753
753
  let t = e.createTreeWalker(e.body, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT, { acceptNode(e) {
@@ -899,15 +899,15 @@ var or = ["aria-label"], sr = {
899
899
  blocks: e
900
900
  });
901
901
  }
902
- }), R = k(() => rn(o.content.settings, o.viewport)), z = k(() => R.value + 192), B = k(() => Te(o.content.settings)), V = k(() => L.value.length === 0 && !o.previewMode), ee = m(0), H = k(() => V.value && ee.value > 0);
902
+ }), ee = k(() => rn(o.content.settings, o.viewport)), R = k(() => ee.value + 192), z = k(() => Te(o.content.settings)), B = k(() => L.value.length === 0 && !o.previewMode), V = m(0), H = k(() => B.value && V.value > 0);
903
903
  function U() {
904
- V.value && (ee.value += 1);
904
+ B.value && (V.value += 1);
905
905
  }
906
906
  function W() {
907
- V.value && (ee.value = Math.max(0, ee.value - 1));
907
+ B.value && (V.value = Math.max(0, V.value - 1));
908
908
  }
909
909
  function G() {
910
- ee.value = 0;
910
+ V.value = 0;
911
911
  }
912
912
  function te(e) {
913
913
  o.previewMode || T.savedBlocks?.isPicking.value || e.target === e.currentTarget && s("select-block", null);
@@ -940,7 +940,7 @@ var or = ["aria-label"], sr = {
940
940
  return (e, i) => (S(), v("div", {
941
941
  class: "tpl-canvas-stage tpl:relative tpl:flex tpl:justify-center tpl:rounded-lg",
942
942
  style: l({
943
- width: `${z.value}px`,
943
+ width: `${R.value}px`,
944
944
  boxShadow: n.darkMode ? "none" : "var(--tpl-shadow-xl)",
945
945
  transition: O(an)
946
946
  })
@@ -957,7 +957,7 @@ var or = ["aria-label"], sr = {
957
957
  "aria-label": O(c).landmarks.canvas,
958
958
  class: "tpl-canvas-wrapper tpl:relative",
959
959
  style: l({
960
- width: `${R.value}px`,
960
+ width: `${ee.value}px`,
961
961
  transition: O(an)
962
962
  })
963
963
  }, [_("div", {
@@ -965,7 +965,7 @@ var or = ["aria-label"], sr = {
965
965
  "tpl-canvas--dark-mode": n.darkMode,
966
966
  "tpl-preview-mode": n.previewMode
967
967
  }]),
968
- style: l(B.value),
968
+ style: l(z.value),
969
969
  onClick: te
970
970
  }, [O(j)?.isInitialResolve.value ? (S(), v("div", sr, [_("span", cr, C(O(c).previewResolution.resolving), 1), (S(), v(D, null, x(3, (e) => _("div", {
971
971
  key: e,
@@ -986,15 +986,15 @@ var or = ["aria-label"], sr = {
986
986
  "force-fallback": !0,
987
987
  class: r([
988
988
  "tpl-canvas-blocks",
989
- V.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" : "",
990
- V.value && H.value ? "tpl-canvas-empty--drag-over tpl:border-[var(--tpl-primary-hover)] tpl:bg-[var(--tpl-primary-light)]" : "",
991
- V.value && !H.value ? "tpl:border-[var(--tpl-primary)]" : ""
989
+ B.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" : "",
990
+ B.value && H.value ? "tpl-canvas-empty--drag-over tpl:border-[var(--tpl-primary-hover)] tpl:bg-[var(--tpl-primary-light)]" : "",
991
+ B.value && !H.value ? "tpl:border-[var(--tpl-primary)]" : ""
992
992
  ]),
993
993
  onDragenter: U,
994
994
  onDragleave: W,
995
995
  onDrop: G
996
996
  }, {
997
- default: M(() => [V.value ? (S(), v("div", ur, [
997
+ default: M(() => [B.value ? (S(), v("div", ur, [
998
998
  _("div", dr, [y(O(Pn), {
999
999
  size: 48,
1000
1000
  "stroke-width": 1
@@ -1141,17 +1141,27 @@ var Sr = ["aria-label"], Cr = {
1141
1141
  }, kr = /* @__PURE__ */ j({
1142
1142
  __name: "Sidebar",
1143
1143
  setup(e) {
1144
- let { t, format: n } = q(), r = d(st, []), i = d($e, void 0), a = d(pt, void 0), s = d(ct, null), c = Lt(), f = d(at, {}), p = k(() => f.savedBlocks?.isAvailable.value === !0), h = m(!1), g = m(!1);
1145
- function b() {
1146
- g.value || (h.value = !1);
1147
- }
1144
+ let { t, format: n } = q(), r = d(st, []), i = d($e, void 0), a = d(pt, void 0), s = d(ct, null), c = Lt(), f = d(at, {}), p = k(() => f.savedBlocks?.isAvailable.value === !0), h = m(!1), g = m(!1), b = m(null);
1148
1145
  function T() {
1149
- g.value = !0;
1146
+ try {
1147
+ return b.value?.querySelector(":focus-visible") != null;
1148
+ } catch {
1149
+ return !1;
1150
+ }
1150
1151
  }
1151
1152
  function E() {
1153
+ g.value || T() || (h.value = !1);
1154
+ }
1155
+ function j() {
1156
+ g.value = !0;
1157
+ }
1158
+ function N() {
1159
+ g.value = !1;
1160
+ }
1161
+ function P() {
1152
1162
  g.value = !1, h.value = !1;
1153
1163
  }
1154
- let j = [
1164
+ let F = [
1155
1165
  "section",
1156
1166
  "image",
1157
1167
  "title",
@@ -1164,8 +1174,8 @@ var Sr = ["aria-label"], Cr = {
1164
1174
  "table",
1165
1175
  "spacer",
1166
1176
  "html"
1167
- ], N = k(() => {
1168
- let e = j.map((e) => ({
1177
+ ], I = k(() => {
1178
+ let e = F.map((e) => ({
1169
1179
  type: e,
1170
1180
  label: _e(e, t)
1171
1181
  }));
@@ -1173,25 +1183,25 @@ var Sr = ["aria-label"], Cr = {
1173
1183
  type: "countdown",
1174
1184
  label: _e("countdown", t)
1175
1185
  }), e;
1176
- }), P = k(() => r.map((e) => ({
1186
+ }), L = k(() => r.map((e) => ({
1177
1187
  type: `custom:${e.type}`,
1178
1188
  label: e.name,
1179
1189
  isCustom: !0,
1180
1190
  icon: e.icon
1181
- }))), F = k(() => [...N.value, ...P.value]), I = k(() => br(F.value, i)), L = k(() => I.value.items), R = /* @__PURE__ */ new Set();
1182
- o(() => I.value.unknown, (e) => {
1183
- for (let t of e) R.has(t) || (R.add(t), bt.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.`));
1191
+ }))), ee = k(() => [...I.value, ...L.value]), R = k(() => br(ee.value, i)), z = k(() => R.value.items), B = /* @__PURE__ */ new Set();
1192
+ o(() => R.value.unknown, (e) => {
1193
+ for (let t of e) B.has(t) || (B.add(t), bt.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.`));
1184
1194
  }, { immediate: !0 });
1185
- function z(e) {
1195
+ function V(e) {
1186
1196
  if (e.isCustom) {
1187
1197
  let t = e.type.replace("custom:", ""), n = r.find((e) => e.type === t);
1188
1198
  if (n) return ne(n);
1189
1199
  }
1190
1200
  return re(e.type, a);
1191
1201
  }
1192
- function B(e) {
1202
+ function H(e) {
1193
1203
  if (!s) return;
1194
- let t = z(e), { targetSectionId: n, columnIndex: r, index: i } = xr({
1204
+ let t = V(e), { targetSectionId: n, columnIndex: r, index: i } = xr({
1195
1205
  blockType: e.type,
1196
1206
  selectedBlockId: s.state.selectedBlockId,
1197
1207
  findBlockLocation: s.findBlockLocation,
@@ -1199,10 +1209,12 @@ var Sr = ["aria-label"], Cr = {
1199
1209
  });
1200
1210
  s.addBlock(t, n, r, i), s.selectBlock(t.id), c(t.id);
1201
1211
  }
1202
- function V(e, t) {
1203
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), B(t));
1212
+ function U(e, t) {
1213
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), H(t));
1204
1214
  }
1205
1215
  return (e, r) => (S(), v("aside", {
1216
+ ref_key: "railEl",
1217
+ ref: b,
1206
1218
  "aria-label": O(t).sidebarNav.palette,
1207
1219
  class: "tpl-sidebar-rail tpl:absolute tpl:top-14 tpl:bottom-0 tpl:left-0 tpl:z-40 tpl:flex tpl:flex-col tpl:overflow-hidden",
1208
1220
  style: l({
@@ -1213,7 +1225,7 @@ var Sr = ["aria-label"], Cr = {
1213
1225
  transition: "width 200ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 200ms cubic-bezier(0.16, 1, 0.3, 1)"
1214
1226
  }),
1215
1227
  onMouseenter: r[1] ||= (e) => h.value = !0,
1216
- onMouseleave: b,
1228
+ onMouseleave: E,
1217
1229
  onFocusin: r[2] ||= (e) => h.value = !0,
1218
1230
  onFocusout: r[3] ||= (e) => h.value = !1
1219
1231
  }, [p.value ? (S(), v("div", Cr, [_("button", {
@@ -1227,29 +1239,30 @@ var Sr = ["aria-label"], Cr = {
1227
1239
  "stroke-width": 1.5,
1228
1240
  class: "tpl:shrink-0"
1229
1241
  }), h.value ? (S(), v("span", Tr, C(O(t).savedBlocks.title), 1)) : A("", !0)], 12, wr)])) : A("", !0), y(O(we), {
1230
- "model-value": L.value,
1242
+ "model-value": z.value,
1231
1243
  group: {
1232
1244
  name: "blocks",
1233
1245
  pull: "clone",
1234
1246
  put: !1
1235
1247
  },
1236
- clone: z,
1248
+ clone: V,
1237
1249
  sort: !1,
1238
1250
  animation: 150,
1239
1251
  "force-fallback": !0,
1240
1252
  class: "tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col tpl:gap-0.5 tpl:overflow-y-auto tpl:p-1",
1241
- onChoose: T,
1242
- onEnd: E
1253
+ onChoose: j,
1254
+ onUnchoose: N,
1255
+ onEnd: P
1243
1256
  }, {
1244
- default: M(() => [(S(!0), v(D, null, x(L.value, (e) => (S(), v("button", {
1257
+ default: M(() => [(S(!0), v(D, null, x(z.value, (e) => (S(), v("button", {
1245
1258
  key: e.type,
1246
1259
  type: "button",
1247
1260
  "data-palette-type": e.type,
1248
1261
  "aria-label": O(n)(O(t).sidebarNav.insertBlock, { block: e.label }),
1249
1262
  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)] tpl:hover:bg-[var(--tpl-primary-light)] tpl:hover:text-[var(--tpl-primary)] tpl:active:cursor-grabbing",
1250
1263
  style: l({ justifyContent: h.value ? "flex-start" : "center" }),
1251
- onClick: (t) => B(e),
1252
- onKeydown: (t) => V(t, e)
1264
+ onClick: (t) => H(e),
1265
+ onKeydown: (t) => U(t, e)
1253
1266
  }, [_("div", Dr, [O(jt)[e.type] ? (S(), w(u(O(jt)[e.type]), {
1254
1267
  key: 0,
1255
1268
  size: 20,
@@ -1322,7 +1335,7 @@ var Pr = /* @__PURE__ */ new Set([
1322
1335
  "End"
1323
1336
  ]);
1324
1337
  function Fr(e) {
1325
- let { elementRef: t, modelValue: n, emit: r, mergeTags: a, syntax: o, enabled: s, onInsert: c } = e, l = z(o), u = K(o), m = s && l !== null && a.length > 0, h = d(nt, null), g = (i(h) ? h.value : h)?.mergeTag?.suggestionEmpty ?? "No matching merge tags", _ = St(), v = hn(g, _), y = !1;
1338
+ let { elementRef: t, modelValue: n, emit: r, mergeTags: a, syntax: o, enabled: s, onInsert: c } = e, l = R(o), u = K(o), m = s && l !== null && a.length > 0, h = d(nt, null), g = (i(h) ? h.value : h)?.mergeTag?.suggestionEmpty ?? "No matching merge tags", _ = St(), v = hn(g, _), y = !1;
1326
1339
  p() && E(() => {
1327
1340
  y = !0, v.close();
1328
1341
  });
@@ -1407,7 +1420,7 @@ function Ir(e) {
1407
1420
  }) : H(t, u) ? n.push({
1408
1421
  type: "logicMergeTag",
1409
1422
  value: t,
1410
- keyword: V(t, u)
1423
+ keyword: B(t, u)
1411
1424
  }) : n.push({
1412
1425
  type: "text",
1413
1426
  value: t
@@ -2216,7 +2229,7 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2216
2229
  }
2217
2230
  F.value && (g.value = e.before, T.value = e.after ?? "");
2218
2231
  }, { immediate: !0 });
2219
- let R = k(() => {
2232
+ let ee = k(() => {
2220
2233
  let e = {};
2221
2234
  for (let t of l) {
2222
2235
  let n = t.group ?? "";
@@ -2224,19 +2237,19 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2224
2237
  }
2225
2238
  return e;
2226
2239
  });
2227
- function z(e, t) {
2240
+ function R(e, t) {
2228
2241
  s("update", { styles: {
2229
2242
  ...i.block.styles,
2230
2243
  [e]: t
2231
2244
  } });
2232
2245
  }
2233
- function B(e) {
2246
+ function z(e) {
2234
2247
  return i.block.visibility?.[e] !== !1;
2235
2248
  }
2236
- function V(e) {
2249
+ function B(e) {
2237
2250
  let t = {
2238
- desktop: B("desktop"),
2239
- mobile: B("mobile")
2251
+ desktop: z("desktop"),
2252
+ mobile: z("mobile")
2240
2253
  };
2241
2254
  t[e] = !t[e], s("update", { visibility: t });
2242
2255
  }
@@ -2250,7 +2263,7 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2250
2263
  default: M(() => [y(Pa, {
2251
2264
  label: O(c).blockSettings.padding,
2252
2265
  "model-value": e.block.styles.padding,
2253
- "onUpdate:modelValue": i[0] ||= (e) => z("padding", e)
2266
+ "onUpdate:modelValue": i[0] ||= (e) => R("padding", e)
2254
2267
  }, null, 8, ["label", "model-value"])]),
2255
2268
  _: 1
2256
2269
  }, 8, [
@@ -2265,7 +2278,7 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2265
2278
  }, {
2266
2279
  default: M(() => [_("label", { class: r(O(Y)) }, C(O(c).blockSettings.color), 3), y($, {
2267
2280
  "model-value": e.block.styles.backgroundColor ?? "",
2268
- "onUpdate:modelValue": i[2] ||= (e) => z("backgroundColor", e)
2281
+ "onUpdate:modelValue": i[2] ||= (e) => R("backgroundColor", e)
2269
2282
  }, null, 8, ["model-value"])]),
2270
2283
  _: 1
2271
2284
  }, 8, ["title", "open"]),
@@ -2277,9 +2290,9 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2277
2290
  default: M(() => [_("div", Ra, [(S(), v(D, null, x(E, (e) => y(_n, {
2278
2291
  key: e.key,
2279
2292
  class: "tpl:text-xs tpl:text-[var(--tpl-text)]",
2280
- "model-value": B(e.key),
2293
+ "model-value": z(e.key),
2281
2294
  label: O(c).blockSettings[e.labelKey],
2282
- "onUpdate:modelValue": (t) => V(e.key)
2295
+ "onUpdate:modelValue": (t) => B(e.key)
2283
2296
  }, {
2284
2297
  default: M(() => [_("span", za, [(S(), w(u(e.icon), {
2285
2298
  size: 14,
@@ -2319,7 +2332,7 @@ var Lr = ["aria-label", "onKeydown"], Rr = ["data-tooltip"], zr = ["data-tooltip
2319
2332
  }
2320
2333
  }, [
2321
2334
  _("option", Ha, C(O(c).blockSettings.noCondition), 1),
2322
- (S(!0), v(D, null, x(R.value, (e, t) => (S(), v(D, { key: t }, [t ? (S(), v("optgroup", {
2335
+ (S(!0), v(D, null, x(ee.value, (e, t) => (S(), v(D, { key: t }, [t ? (S(), v("optgroup", {
2323
2336
  key: 0,
2324
2337
  label: String(t)
2325
2338
  }, [(S(!0), v(D, null, x(e, (e) => (S(), v("option", {
@@ -2995,7 +3008,7 @@ var Fo = {
2995
3008
  }
2996
3009
  }
2997
3010
  }
2998
- let { isOver: R } = xe({
3011
+ let { isOver: ee } = xe({
2999
3012
  target: N,
3000
3013
  enabled: I,
3001
3014
  onFiles: L
@@ -3006,7 +3019,7 @@ var Fo = {
3006
3019
  ref: N,
3007
3020
  class: "tpl:relative"
3008
3021
  }, [
3009
- I.value && (O(R) || P.value) ? (S(), v("div", ts, [P.value ? (S(), v(D, { key: 0 }, [y(O(Rt), {
3022
+ I.value && (O(ee) || P.value) ? (S(), v("div", ts, [P.value ? (S(), v(D, { key: 0 }, [y(O(Rt), {
3010
3023
  class: "tpl-spinner",
3011
3024
  size: 18,
3012
3025
  "stroke-width": 2
@@ -3944,7 +3957,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
3944
3957
  "duplicate"
3945
3958
  ],
3946
3959
  setup(e, { emit: t }) {
3947
- let n = h(() => import("./CountdownToolbar-BpnKUXN_.js")), r = e, i = t, { t: a } = q(), o = rt(it, "Toolbar"), s = d(st, []), c = k(() => r.block.type), l = k(() => ee(r.block)), f = k(() => {
3960
+ let n = h(() => import("./CountdownToolbar-UPdwNvVI.js")), r = e, i = t, { t: a } = q(), o = rt(it, "Toolbar"), s = d(st, []), c = k(() => r.block.type), l = k(() => V(r.block)), f = k(() => {
3948
3961
  if (l.value) return s.find((e) => e.type === r.block.customType);
3949
3962
  }), p = k(() => l.value ? f.value?.name ?? r.block.customType : _e(c.value, a)), m = o.fonts;
3950
3963
  function g(e) {
@@ -4092,7 +4105,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4092
4105
  "update-settings"
4093
4106
  ],
4094
4107
  setup(e, { emit: t }) {
4095
- let n = h(() => import("./IssuesPanel-BFczwZkL.js")), i = e, a = t, { t: s } = q(), c = m("content"), u = d(yt, null), f = k(() => u !== null), p = k(() => u?.issues.value.length ?? 0);
4108
+ let n = h(() => import("./IssuesPanel-D49aJjLS.js")), i = e, a = t, { t: s } = q(), c = m("content"), u = d(yt, null), f = k(() => u !== null), p = k(() => u?.issues.value.length ?? 0);
4096
4109
  function g(e) {
4097
4110
  return c.value === e ? "tpl:flex-1 tpl:text-[var(--tpl-primary)]" : "tpl:shrink-0 tpl:text-[var(--tpl-text-muted)] tpl:hover:text-[var(--tpl-text)]";
4098
4111
  }
@@ -4252,7 +4265,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4252
4265
  title: e.darkMode ? O(r).darkMode.disable : O(r).darkMode.enable,
4253
4266
  "aria-pressed": e.darkMode,
4254
4267
  onClick: i[0] ||= (t) => n("change", !e.darkMode)
4255
- }, [y(R, {
4268
+ }, [y(ee, {
4256
4269
  "enter-active-class": "tpl-icon-enter-active",
4257
4270
  "leave-active-class": "tpl-icon-leave-active",
4258
4271
  "enter-from-class": "tpl-icon-enter-from",
@@ -4291,7 +4304,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4291
4304
  title: e.previewMode ? O(r).previewMode.disable : O(r).previewMode.enable,
4292
4305
  "aria-pressed": e.previewMode,
4293
4306
  onClick: i[0] ||= (t) => n("change", !e.previewMode)
4294
- }, [y(R, {
4307
+ }, [y(ee, {
4295
4308
  "enter-active-class": "tpl-icon-enter-active",
4296
4309
  "leave-active-class": "tpl-icon-leave-active",
4297
4310
  "enter-from-class": "tpl-icon-enter-from",
@@ -4436,7 +4449,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4436
4449
  comments: {}
4437
4450
  },
4438
4451
  setup(e) {
4439
- let t = h(() => import("./VersionHistoryMenu-8nd_aOnh.js"));
4452
+ let t = h(() => import("./VersionHistoryMenu-CrIVG_SN.js"));
4440
4453
  return (n, i) => (S(), v("header", su, [
4441
4454
  _("div", cu, [e.templates?.isAvailable.value && e.templates.hasTemplate.value && (e.showTemplateName || e.templates.timestamp.value) ? (S(), v("div", {
4442
4455
  key: 0,
@@ -4618,7 +4631,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4618
4631
  t.value,
4619
4632
  t.description ?? ""
4620
4633
  ].join(" ").toLowerCase().includes(e)) : n.tags.value;
4621
- }), R = k(() => {
4634
+ }), ee = k(() => {
4622
4635
  if (!T.value) return [];
4623
4636
  let e = i.mergeTag.picker.otherGroup, t = /* @__PURE__ */ new Set(), r = [];
4624
4637
  for (let i of n.tags.value) {
@@ -4626,7 +4639,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4626
4639
  t.has(n) || (t.add(n), r.push(n));
4627
4640
  }
4628
4641
  return r;
4629
- }), z = k(() => {
4642
+ }), R = k(() => {
4630
4643
  let e = I.value;
4631
4644
  if (!T.value || g.value) return e.map((e, t) => ({
4632
4645
  kind: "tag",
@@ -4652,24 +4665,24 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4652
4665
  }), o++;
4653
4666
  }
4654
4667
  return a;
4655
- }), B = k(() => z.value.flatMap((e) => e.kind === "tag" ? [e.tag] : []));
4668
+ }), z = k(() => R.value.flatMap((e) => e.kind === "tag" ? [e.tag] : []));
4656
4669
  o(() => n.isOpen.value, (e) => {
4657
4670
  e && (u.value = "", b.value = 0, E.value = /* @__PURE__ */ new Set(), f(() => {
4658
4671
  h.value?.focus();
4659
4672
  }));
4660
- }), o(B, (e) => {
4673
+ }), o(z, (e) => {
4661
4674
  b.value >= e.length && (b.value = Math.max(0, e.length - 1));
4662
4675
  });
4663
- function V(e) {
4676
+ function B(e) {
4664
4677
  n.resolve(e);
4665
4678
  }
4666
- function ee() {
4679
+ function V() {
4667
4680
  n.resolve(null);
4668
4681
  }
4669
4682
  function H(e) {
4670
- if (B.value.length === 0) return;
4683
+ if (z.value.length === 0) return;
4671
4684
  let t = b.value + e;
4672
- b.value = Math.max(0, Math.min(B.value.length - 1, t)), te();
4685
+ b.value = Math.max(0, Math.min(z.value.length - 1, t)), te();
4673
4686
  }
4674
4687
  let U = m(null), W = m({});
4675
4688
  function G(e, t) {
@@ -4708,20 +4721,20 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4708
4721
  else if (e.key === "ArrowUp") e.preventDefault(), H(-1);
4709
4722
  else if (e.key === "Enter") {
4710
4723
  e.preventDefault();
4711
- let t = B.value[b.value];
4712
- t && V(t);
4724
+ let t = z.value[b.value];
4725
+ t && B(t);
4713
4726
  }
4714
4727
  }
4715
4728
  function re() {
4716
- if (B.value.length !== 0) return `${Pu}-opt-${b.value}`;
4729
+ if (z.value.length !== 0) return `${Pu}-opt-${b.value}`;
4717
4730
  }
4718
4731
  function ie(e) {
4719
4732
  return `${Pu}-opt-${e}`;
4720
4733
  }
4721
- let ae = k(() => n.tags.value.length === 0), oe = k(() => !ae.value && I.value.length === 0), se = k(() => T.value && R.value.length > 1 && !g.value);
4734
+ let ae = k(() => n.tags.value.length === 0), oe = k(() => !ae.value && I.value.length === 0), se = k(() => T.value && ee.value.length > 1 && !g.value);
4722
4735
  return (e, o) => (S(), w(Sn, {
4723
4736
  visible: O(n).isOpen.value,
4724
- onClose: ee,
4737
+ onClose: V,
4725
4738
  onKeydown: K
4726
4739
  }, {
4727
4740
  default: M(() => [_("div", {
@@ -4741,7 +4754,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4741
4754
  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)]",
4742
4755
  "aria-label": O(i).mergeTag.picker.close,
4743
4756
  "data-testid": "merge-tag-picker-close",
4744
- onClick: ee
4757
+ onClick: V
4745
4758
  }, [y(O(Zt), {
4746
4759
  size: 16,
4747
4760
  "stroke-width": 2
@@ -4764,7 +4777,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4764
4777
  "data-testid": "merge-tag-picker-search",
4765
4778
  onKeydown: o[1] ||= L(P(() => {}, ["prevent"]), ["enter"])
4766
4779
  }, null, 40, xu), [[N, u.value]])]),
4767
- se.value ? (S(), v("div", Su, [(S(!0), v(D, null, x(R.value, (e) => (S(), v("button", {
4780
+ se.value ? (S(), v("div", Su, [(S(!0), v(D, null, x(ee.value, (e) => (S(), v("button", {
4768
4781
  key: e,
4769
4782
  type: "button",
4770
4783
  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)]",
@@ -4780,7 +4793,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4780
4793
  role: "listbox",
4781
4794
  "aria-label": O(i).mergeTag.picker.title,
4782
4795
  "data-testid": "merge-tag-picker-list"
4783
- }, [ae.value ? (S(), v("div", Tu, C(O(i).mergeTag.picker.empty), 1)) : oe.value ? (S(), v("div", Eu, C(O(i).mergeTag.picker.noResults), 1)) : (S(!0), v(D, { key: 2 }, x(z.value, (e, t) => (S(), v(D, { key: t }, [e.kind === "header" ? (S(), v("button", {
4796
+ }, [ae.value ? (S(), v("div", Tu, C(O(i).mergeTag.picker.empty), 1)) : oe.value ? (S(), v("div", Eu, C(O(i).mergeTag.picker.noResults), 1)) : (S(!0), v(D, { key: 2 }, x(R.value, (e, t) => (S(), v(D, { key: t }, [e.kind === "header" ? (S(), v("button", {
4784
4797
  key: 0,
4785
4798
  ref_for: !0,
4786
4799
  ref: (t) => G(e.group, t),
@@ -4813,7 +4826,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4813
4826
  class: r(["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 === b.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)]"]),
4814
4827
  "data-testid": "merge-tag-picker-item",
4815
4828
  onMousemove: (t) => b.value = e.index,
4816
- onClick: (t) => V(e.tag)
4829
+ onClick: (t) => B(e.tag)
4817
4830
  }, [
4818
4831
  _("span", Au, C(e.tag.label), 1),
4819
4832
  _("span", ju, C(e.tag.value), 1),
@@ -4831,7 +4844,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4831
4844
  syntax: {}
4832
4845
  },
4833
4846
  setup(e) {
4834
- let t = e, n = k(() => H(t.value, t.syntax)), r = k(() => V(t.value, t.syntax));
4847
+ let t = e, n = k(() => H(t.value, t.syntax)), r = k(() => B(t.value, t.syntax));
4835
4848
  return (e, t) => n.value ? (S(), v("span", {
4836
4849
  key: 0,
4837
4850
  class: "tpl:inline-flex tpl:flex-shrink-0 tpl:items-center tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[10px] tpl:leading-none tpl:font-bold tpl:tracking-wide tpl:uppercase",
@@ -4899,7 +4912,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4899
4912
  tag: e,
4900
4913
  group: e.group
4901
4914
  }))]), I = k(() => n.tags.value.some((e) => !!e.group) || n.pairs.value.some((e) => !!e.group));
4902
- function R(e) {
4915
+ function ee(e) {
4903
4916
  let t = i.logicTag.picker.otherGroup, n = /* @__PURE__ */ new Map(), r = [];
4904
4917
  for (let i of e) {
4905
4918
  let e = i.group ?? t;
@@ -4907,7 +4920,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4907
4920
  }
4908
4921
  return r.map((e) => [e, n.get(e)]);
4909
4922
  }
4910
- let z = k(() => {
4923
+ let R = k(() => {
4911
4924
  let e = [], t = [], n = 0, r = (r) => {
4912
4925
  r.kind === "tag" ? (e.push({
4913
4926
  kind: "tag",
@@ -4920,7 +4933,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4920
4933
  }), t.push(r.pair)), n++;
4921
4934
  }, i = F.value;
4922
4935
  if (g.value || !I.value) for (let e of i) r(e);
4923
- else for (let [t, n] of R(i)) {
4936
+ else for (let [t, n] of ee(i)) {
4924
4937
  e.push({
4925
4938
  kind: "header",
4926
4939
  label: t
@@ -4931,10 +4944,10 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4931
4944
  rows: e,
4932
4945
  items: t
4933
4946
  };
4934
- }), B = k(() => z.value.items), V = k(() => n.tags.value.length === 0 && n.pairs.value.length === 0), ee = k(() => !V.value && B.value.length === 0);
4947
+ }), z = k(() => R.value.items), B = k(() => n.tags.value.length === 0 && n.pairs.value.length === 0), V = k(() => !B.value && z.value.length === 0);
4935
4948
  o(() => n.isOpen.value, (e) => {
4936
4949
  e && (u.value = "", b.value = 0, f(() => h.value?.focus()));
4937
- }), o(B, (e) => {
4950
+ }), o(z, (e) => {
4938
4951
  b.value >= e.length && (b.value = Math.max(0, e.length - 1));
4939
4952
  });
4940
4953
  let H = m(null);
@@ -4945,7 +4958,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4945
4958
  n.resolve(null);
4946
4959
  }
4947
4960
  function te(e) {
4948
- B.value.length !== 0 && (b.value = Math.max(0, Math.min(B.value.length - 1, b.value + e)), f(() => {
4961
+ z.value.length !== 0 && (b.value = Math.max(0, Math.min(z.value.length - 1, b.value + e)), f(() => {
4949
4962
  H.value?.querySelector(`[data-logic-index="${b.value}"]`)?.scrollIntoView({ block: "nearest" });
4950
4963
  }));
4951
4964
  }
@@ -4954,7 +4967,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4954
4967
  else if (e.key === "ArrowUp") e.preventDefault(), te(-1);
4955
4968
  else if (e.key === "Enter") {
4956
4969
  e.preventDefault();
4957
- let t = B.value[b.value];
4970
+ let t = z.value[b.value];
4958
4971
  t && U(t);
4959
4972
  }
4960
4973
  }
@@ -4962,7 +4975,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
4962
4975
  return `${td}-opt-${e}`;
4963
4976
  }
4964
4977
  function re() {
4965
- return B.value.length === 0 ? void 0 : `${td}-opt-${b.value}`;
4978
+ return z.value.length === 0 ? void 0 : `${td}-opt-${b.value}`;
4966
4979
  }
4967
4980
  return (e, o) => (S(), w(Sn, {
4968
4981
  visible: O(n).isOpen.value,
@@ -5017,7 +5030,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5017
5030
  role: "listbox",
5018
5031
  "aria-label": O(i).logicTag.picker.title,
5019
5032
  "data-testid": "logic-picker-list"
5020
- }, [V.value ? (S(), v("div", Gu, C(O(i).logicTag.picker.empty), 1)) : ee.value ? (S(), v("div", Ku, C(O(i).logicTag.picker.noResults), 1)) : (S(!0), v(D, { key: 2 }, x(z.value.rows, (e, t) => (S(), v(D, { key: t }, [e.kind === "header" ? (S(), v("div", {
5033
+ }, [B.value ? (S(), v("div", Gu, C(O(i).logicTag.picker.empty), 1)) : V.value ? (S(), v("div", Ku, C(O(i).logicTag.picker.noResults), 1)) : (S(!0), v(D, { key: 2 }, x(R.value.rows, (e, t) => (S(), v(D, { key: t }, [e.kind === "header" ? (S(), v("div", {
5021
5034
  key: 0,
5022
5035
  class: "tpl:px-3 tpl:pt-2.5 tpl:pb-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-dim)]",
5023
5036
  "data-testid": "logic-picker-header",
@@ -5086,13 +5099,13 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5086
5099
  editor: u,
5087
5100
  onError: a.config.onError,
5088
5101
  isAvailable: a.cloud ? () => a.cloud.isSavedBlocksAvailable() : void 0
5089
- }) : null, x = h(() => import("./SavedBlocksPanels-D5T63WyR.js")), E = a.config.testEmail ? Wn({
5102
+ }) : null, x = h(() => import("./SavedBlocksPanels-DBfPz4iB.js")), E = a.config.testEmail ? Wn({
5090
5103
  provider: a.config.testEmail,
5091
5104
  getContent: () => u.content.value,
5092
5105
  renderMjml: te,
5093
5106
  onError: a.config.onError,
5094
5107
  isAvailable: a.cloud ? () => a.cloud.isTestEmailAvailable() : void 0
5095
- }) : null, D = h(() => import("./TestEmailPanel-3Y6uUX3Z.js")), j = a.config.comments ? Ln({
5108
+ }) : null, D = h(() => import("./TestEmailPanel-BkgAew1S.js")), j = a.config.comments ? Ln({
5096
5109
  provider: a.config.comments,
5097
5110
  editor: u,
5098
5111
  user: a.config.user,
@@ -5101,13 +5114,13 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5101
5114
  onError: a.config.onError,
5102
5115
  isAvailable: a.cloud ? () => a.cloud.isCommentsAvailable() : void 0,
5103
5116
  isBlockSaved: a.cloud ? (e) => a.cloud.isBlockSaved(e) : void 0
5104
- }) : null, N = h(() => import("./CommentsPanel-CB1-poNb.js")), F = h(() => import("./CloudPanels-oFNlTOO5.js")), L = h(() => import("./CloudHeaderExtras-Bgr-Ox9M.js")), z = h(() => import("./VersionHistoryPanels-Cm7MxfrI.js")), B = Kn(a.config.autoSave, !1), V = B.enabled && f !== null;
5105
- B.enabled && f === null && bt.warn("config.autoSave is on but no `templates` provider is configured — there is nothing to save to. Pass `templates` to enable it, or use `onChange` to persist the content yourself.");
5106
- let ee = a.config.onChange || V ? {
5117
+ }) : null, N = h(() => import("./CommentsPanel-c5LmzlNN.js")), F = h(() => import("./CloudPanels-DCeNSwXy.js")), L = h(() => import("./CloudHeaderExtras-DX0j3CJ3.js")), R = h(() => import("./VersionHistoryPanels-s45U7XY-.js")), z = Kn(a.config.autoSave, !1), B = z.enabled && f !== null;
5118
+ z.enabled && f === null && bt.warn("config.autoSave is on but no `templates` provider is configured — there is nothing to save to. Pass `templates` to enable it, or use `onChange` to persist the content yourself.");
5119
+ let V = a.config.onChange || B ? {
5107
5120
  onChange: () => {
5108
- a.config.onChange?.(JSON.parse(JSON.stringify(u.state.content))), V && f.requestAutoSave();
5121
+ a.config.onChange?.(JSON.parse(JSON.stringify(u.state.content))), B && f.requestAutoSave();
5109
5122
  },
5110
- ...B.debounce === void 0 ? {} : { debounce: B.debounce }
5123
+ ...z.debounce === void 0 ? {} : { debounce: z.debounce }
5111
5124
  } : null, H = {
5112
5125
  ...g ? { savedBlocks: g.capability } : {},
5113
5126
  ...f ? { templates: f.capability } : {},
@@ -5135,7 +5148,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5135
5148
  },
5136
5149
  translations: a.translations,
5137
5150
  fontsManager: a.fontsManager,
5138
- autoSaveOptions: ee,
5151
+ autoSaveOptions: V,
5139
5152
  capabilities: H,
5140
5153
  editorRoot: a.shadowRoot,
5141
5154
  historyOptions: a.cloud ? { isRemoteOperation: () => a.cloud.isRemoteOperation() } : void 0,
@@ -5241,7 +5254,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5241
5254
  _("div", {
5242
5255
  class: r(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto tpl:bg-[var(--tpl-canvas-bg)]", [K.value, O(G)?.isPreviewing.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
5243
5256
  style: { transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)" }
5244
- }, [_("div", id, [y(R, { name: "tpl-restore-btn" }, {
5257
+ }, [_("div", id, [y(ee, { name: "tpl-restore-btn" }, {
5245
5258
  default: M(() => [O(U).conditionPreview.hasHiddenBlocks.value && O(U).appliesConditionFilter.value ? (S(), v("button", {
5246
5259
  key: 0,
5247
5260
  class: "tpl:absolute tpl:left-1/2 tpl:top-2 tpl:-translate-x-1/2 tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded-full tpl:border tpl:px-3.5 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:whitespace-nowrap tpl:shadow-[var(--tpl-shadow-md)] tpl:hover:opacity-80 tpl:bg-[var(--tpl-warning-light)] tpl:text-[var(--tpl-warning)] tpl:border-[var(--tpl-warning)]",
@@ -5318,7 +5331,7 @@ var As = { class: "tpl:mb-3.5" }, js = ["value"], Ms = ["value"], Ns = {
5318
5331
  key: 3,
5319
5332
  feature: O(j)
5320
5333
  }, null, 8, ["feature"])) : A("", !0),
5321
- O(G)?.isAvailable.value ? (S(), w(O(z), {
5334
+ O(G)?.isAvailable.value ? (S(), w(O(R), {
5322
5335
  key: 4,
5323
5336
  feature: O(G)
5324
5337
  }, null, 8, ["feature"])) : A("", !0),