@templatical/editor 0.16.0 → 0.16.2

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 (168) hide show
  1. package/dist/{AiChatSidebar-B-k_Sdas.js → AiChatSidebar-EaPCeDXr.js} +14 -14
  2. package/dist/{AiFeatureMenu-B5_IKOlI.js → AiFeatureMenu-DfTYyExg.js} +7 -7
  3. package/dist/{BlockIssueBadge-B3xVgMTh.js → BlockIssueBadge-CZYgn-qg.js} +5 -5
  4. package/dist/{CloudEditor-BUJk4vXS.js → CloudEditor-BQyZ_nFg.js} +24 -24
  5. package/dist/{CollaboratorBar-BAUQfXUk.js → CollaboratorBar-DeP7K-zk.js} +4 -4
  6. package/dist/ColorPicker-CXAbjTaG.js +446 -0
  7. package/dist/{CommentsSidebar-D_tSGvTX.js → CommentsSidebar-DDKiFsSq.js} +13 -13
  8. package/dist/{CountdownBlock-apiYUhkQ.js → CountdownBlock-173fiO5Z.js} +3 -3
  9. package/dist/{CountdownToolbar-CS0axcjz.js → CountdownToolbar-nY9H0BKd.js} +4 -4
  10. package/dist/{DesignReferenceSidebar-BYQcuaL4.js → DesignReferenceSidebar-D6TfC176.js} +11 -11
  11. package/dist/{IssuesPanel-CR1MPaDE.js → IssuesPanel-CQQipLQP.js} +8 -8
  12. package/dist/{LoadingTrack-DsecR8Rw.js → LoadingTrack-KIcREPlS.js} +1 -1
  13. package/dist/{MergeTagSuggestion-DLVykS0K.js → MergeTagSuggestion-DrT3LiZ4.js} +4 -4
  14. package/dist/{ModuleBrowserModal-BzDuagt5.js → ModuleBrowserModal-CkeYw1e3.js} +11 -11
  15. package/dist/{ModulePreviewCanvas-CK11BX4i.js → ModulePreviewCanvas-BIMFyYaa.js} +3 -3
  16. package/dist/NumberWithSuffix-BoZyUoNz.js +89 -0
  17. package/dist/{ParagraphEditor-fg9Ljy_Z.js → ParagraphEditor-DGsTFMxg.js} +232 -207
  18. package/dist/{RichTextEditorContent-BqLHIZY7.js → RichTextEditorContent-BB_n8vgB.js} +56 -45
  19. package/dist/{SaveModuleDialog-D27ufH5q.js → SaveModuleDialog-Cypt_qOB.js} +8 -8
  20. package/dist/{SnapshotHistory-Cymqkk9_.js → SnapshotHistory-DQTH8TCS.js} +10 -10
  21. package/dist/{TemplateScoringPanel-CZ62rGHz.js → TemplateScoringPanel-C8VOC6gn.js} +15 -15
  22. package/dist/{TestEmailModal-BIvdHidU.js → TestEmailModal-DqxrL-U9.js} +6 -6
  23. package/dist/{TitleEditor-D0a4NdOn.js → TitleEditor-DoGgnrcb.js} +38 -35
  24. package/dist/{TplModal-dYXt3vyd.js → TplModal-Ca-29YDD.js} +5 -5
  25. package/dist/{blockTypeIcons-JSBvsa0M.js → blockTypeIcons-DVJXg5si.js} +7 -7
  26. package/dist/bundle-stats.json +6 -6
  27. package/dist/{ca-C58VqAgo.js → ca-B3eR47lE.js} +2 -1
  28. package/dist/cdn/chunks/{AiFeatureMenu-B6V5CzCc.js → AiFeatureMenu-roPglhox.js} +6 -6
  29. package/dist/cdn/chunks/{AiFeatureMenu-B6V5CzCc.js.map → AiFeatureMenu-roPglhox.js.map} +1 -1
  30. package/dist/cdn/chunks/{BlockIssueBadge-C6Xpl1KK.js → BlockIssueBadge-DW_Tt7Wg.js} +5 -5
  31. package/dist/cdn/chunks/{BlockIssueBadge-C6Xpl1KK.js.map → BlockIssueBadge-DW_Tt7Wg.js.map} +1 -1
  32. package/dist/cdn/chunks/{CloudEditor-C-npgK-l.js → CloudEditor-CX6y1k3C.js} +161 -161
  33. package/dist/cdn/chunks/{CloudEditor-C-npgK-l.js.map → CloudEditor-CX6y1k3C.js.map} +1 -1
  34. package/dist/cdn/chunks/{CollaboratorBar-BSKXgw9D.js → CollaboratorBar-Dyrab63H.js} +4 -4
  35. package/dist/cdn/chunks/{CollaboratorBar-BSKXgw9D.js.map → CollaboratorBar-Dyrab63H.js.map} +1 -1
  36. package/dist/cdn/chunks/ColorPicker-BggAWrc9.js +443 -0
  37. package/dist/cdn/chunks/ColorPicker-BggAWrc9.js.map +1 -0
  38. package/dist/cdn/chunks/{CountdownBlock-Y-nycxv2.js → CountdownBlock-Bul4tczj.js} +3 -3
  39. package/dist/cdn/chunks/{CountdownBlock-Y-nycxv2.js.map → CountdownBlock-Bul4tczj.js.map} +1 -1
  40. package/dist/cdn/chunks/{CountdownToolbar-9LqnhGyh.js → CountdownToolbar-DYvATR0J.js} +5 -5
  41. package/dist/cdn/chunks/{CountdownToolbar-9LqnhGyh.js.map → CountdownToolbar-DYvATR0J.js.map} +1 -1
  42. package/dist/cdn/chunks/{IssuesPanel-BYfGf1rC.js → IssuesPanel-BhHU-hq3.js} +8 -8
  43. package/dist/cdn/chunks/{IssuesPanel-BYfGf1rC.js.map → IssuesPanel-BhHU-hq3.js.map} +1 -1
  44. package/dist/cdn/chunks/{MergeTagSuggestion-DQzKlLH7.js → MergeTagSuggestion-jesxS7An.js} +3 -3
  45. package/dist/cdn/chunks/{MergeTagSuggestion-DQzKlLH7.js.map → MergeTagSuggestion-jesxS7An.js.map} +1 -1
  46. package/dist/cdn/chunks/{ModuleBrowserModal-EzKgW5TG.js → ModuleBrowserModal-BGd5Ryyx.js} +9 -9
  47. package/dist/cdn/chunks/{ModuleBrowserModal-EzKgW5TG.js.map → ModuleBrowserModal-BGd5Ryyx.js.map} +1 -1
  48. package/dist/cdn/chunks/{ModulePreviewCanvas-DxbSzXm8.js → ModulePreviewCanvas-Hx6SCCjB.js} +11 -11
  49. package/dist/cdn/chunks/{ModulePreviewCanvas-DxbSzXm8.js.map → ModulePreviewCanvas-Hx6SCCjB.js.map} +1 -1
  50. package/dist/cdn/chunks/NumberWithSuffix-BImuhc9K.js +91 -0
  51. package/dist/cdn/chunks/NumberWithSuffix-BImuhc9K.js.map +1 -0
  52. package/dist/cdn/chunks/{ParagraphEditor-CJNgRMhw.js → ParagraphEditor-K2vENidm.js} +209 -184
  53. package/dist/cdn/chunks/ParagraphEditor-K2vENidm.js.map +1 -0
  54. package/dist/cdn/chunks/{RichTextEditorContent-Cebdzomd.js → RichTextEditorContent-B_w3u5lN.js} +53 -42
  55. package/dist/cdn/chunks/RichTextEditorContent-B_w3u5lN.js.map +1 -0
  56. package/dist/cdn/chunks/{SaveModuleDialog-Cufwqoln.js → SaveModuleDialog-Cw-182CB.js} +6 -6
  57. package/dist/cdn/chunks/{SaveModuleDialog-Cufwqoln.js.map → SaveModuleDialog-Cw-182CB.js.map} +1 -1
  58. package/dist/cdn/chunks/{TitleEditor-7BhmKL-_.js → TitleEditor-CUKlo_Zj.js} +46 -43
  59. package/dist/cdn/chunks/TitleEditor-CUKlo_Zj.js.map +1 -0
  60. package/dist/cdn/chunks/{blockTypeIcons-d4Sb61H-.js → blockTypeIcons-Cx1FAqL6.js} +5 -5
  61. package/dist/cdn/chunks/{blockTypeIcons-d4Sb61H-.js.map → blockTypeIcons-Cx1FAqL6.js.map} +1 -1
  62. package/dist/cdn/chunks/{ca-C58VqAgo.js → ca-B3eR47lE.js} +3 -2
  63. package/dist/cdn/chunks/ca-B3eR47lE.js.map +1 -0
  64. package/dist/cdn/chunks/{de-C0sMmfic.js → de-Cy8FB-Ii.js} +3 -2
  65. package/dist/cdn/chunks/de-Cy8FB-Ii.js.map +1 -0
  66. package/dist/cdn/chunks/{draggable-kG-D5Xsm.js → draggable-D840DIZB.js} +52 -39
  67. package/dist/cdn/chunks/draggable-D840DIZB.js.map +1 -0
  68. package/dist/cdn/chunks/{en-CsGBTBOf.js → en-Bu-zS_5o.js} +3 -2
  69. package/dist/cdn/chunks/en-Bu-zS_5o.js.map +1 -0
  70. package/dist/cdn/chunks/{es-DgjbcPIu.js → es-CD3ZD6hK.js} +3 -2
  71. package/dist/cdn/chunks/es-CD3ZD6hK.js.map +1 -0
  72. package/dist/cdn/chunks/{extensions-BeAsz_mp.js → extensions-DSxG2wYf.js} +28 -28
  73. package/dist/cdn/chunks/{extensions-BeAsz_mp.js.map → extensions-DSxG2wYf.js.map} +1 -1
  74. package/dist/cdn/chunks/{features-DO71hPJr.js → features-C-cjT_8L.js} +589 -553
  75. package/dist/cdn/chunks/features-C-cjT_8L.js.map +1 -0
  76. package/dist/cdn/chunks/{icons-BfP1cRNb.js → icons-ay0_fN-T.js} +2 -2
  77. package/dist/cdn/chunks/{icons-BfP1cRNb.js.map → icons-ay0_fN-T.js.map} +1 -1
  78. package/dist/cdn/chunks/{media-library-0S3e0i8G.js → media-library-CkmqPdO4.js} +104 -104
  79. package/dist/cdn/chunks/{media-library-0S3e0i8G.js.map → media-library-CkmqPdO4.js.map} +1 -1
  80. package/dist/cdn/chunks/{pt-BR-DXaP5lMJ.js → pt-BR-CgICL-CQ.js} +3 -2
  81. package/dist/cdn/chunks/pt-BR-CgICL-CQ.js.map +1 -0
  82. package/dist/cdn/chunks/quality-CDNrMw2A.js +2180 -0
  83. package/dist/cdn/chunks/{quality-B6V4R_df.js.map → quality-CDNrMw2A.js.map} +1 -1
  84. package/dist/cdn/chunks/{renderer-Dhn1J4H4.js → renderer-JQ91A09w.js} +18 -18
  85. package/dist/cdn/chunks/renderer-JQ91A09w.js.map +1 -0
  86. package/dist/cdn/chunks/{src-DoKjbqU2.js → src-Cehu7Hqx.js} +5 -5
  87. package/dist/cdn/chunks/{src-DoKjbqU2.js.map → src-Cehu7Hqx.js.map} +1 -1
  88. package/dist/cdn/chunks/{styles-CSqligXJ.js → styles-DBjy3lz9.js} +820 -820
  89. package/dist/cdn/chunks/{styles-CSqligXJ.js.map → styles-DBjy3lz9.js.map} +1 -1
  90. package/dist/cdn/chunks/{tiptap-DVHUKGZf.js → tiptap-zpXk5mN4.js} +1131 -1134
  91. package/dist/cdn/chunks/{tiptap-DVHUKGZf.js.map → tiptap-zpXk5mN4.js.map} +1 -1
  92. package/dist/cdn/editor.css +1 -1
  93. package/dist/cdn/editor.js +75 -75
  94. package/dist/cdn/editor.js.map +1 -1
  95. package/dist/{check-rl7ok6uJ.js → check-D1zYtCPK.js} +1 -1
  96. package/dist/{chevron-down-BKe__NOD.js → chevron-down-ByXpufZD.js} +1 -1
  97. package/dist/{circle-alert-C8xmpMsK.js → circle-alert-CjcAORUw.js} +1 -1
  98. package/dist/{clock-BW4JuDCN.js → clock-5lWLadUn.js} +1 -1
  99. package/dist/{cloud-CFpaFRCV.js → cloud-BogxOeZu.js} +1 -1
  100. package/dist/{createLucideIcon-Dx-EjR9r.js → createLucideIcon-Bh9xOmlW.js} +3 -3
  101. package/dist/{de-C0sMmfic.js → de-Cy8FB-Ii.js} +2 -1
  102. package/dist/dist-BE9m_i60.js +5 -0
  103. package/dist/{dist-C5-0GG3g.js → dist-BPPeDw62.js} +2 -2
  104. package/dist/{dist-DEcNpSJi.js → dist-BReUTadj.js} +4 -4
  105. package/dist/dist-BXR1aBJV.js +5 -0
  106. package/dist/{dist-r_2rJCMg.js → dist-Bm07Z3Es.js} +2 -2
  107. package/dist/{dist-BEWiuOMi.js → dist-CFOQvhSC.js} +3 -3
  108. package/dist/{dist-Ci5GHd96.js → dist-CHLoeloJ.js} +2 -2
  109. package/dist/{dist-0VHbLR6h.js → dist-D1WmF8BF.js} +2 -2
  110. package/dist/{dist-DrlHbc8g.js → dist-D9g4CSnm.js} +1 -1
  111. package/dist/{dist-Drm7i-yw.js → dist-DGEaAAIb.js} +2 -2
  112. package/dist/{dist-CTT6WYJ6.js → dist-DYv_Pttj.js} +2 -2
  113. package/dist/{dist-Dsoq4knU.js → dist-DcKlLQ8d.js} +2 -2
  114. package/dist/{dist-D_-AsMP4.js → dist-DhY2di4U.js} +2 -2
  115. package/dist/{dist-FVawx7ou.js → dist-i_Z7t67A.js} +260 -263
  116. package/dist/{en-CsGBTBOf.js → en-Bu-zS_5o.js} +2 -1
  117. package/dist/{es-DgjbcPIu.js → es-CD3ZD6hK.js} +2 -1
  118. package/dist/{extensions-3jhgwhV-.js → extensions-B2poxDIo.js} +7 -7
  119. package/dist/{image-up-BwBCmQ4P.js → image-up-Bj_nes3f.js} +1 -1
  120. package/dist/{info-TCn7uWR5.js → info-BhSQCxBV.js} +1 -1
  121. package/dist/{keys-Cv8-8GsD.js → keys-BbDgCU6K.js} +1 -1
  122. package/dist/{list-checks-CSrOWNgq.js → list-checks-CgxyUg7i.js} +1 -1
  123. package/dist/{loader-circle-BLmicnPG.js → loader-circle-DFU0HPAa.js} +1 -1
  124. package/dist/{message-circle-C9hHMQCI.js → message-circle-BEBsCHnk.js} +1 -1
  125. package/dist/{pt-BR-DXaP5lMJ.js → pt-BR-CgICL-CQ.js} +2 -1
  126. package/dist/{refresh-cw-D1JQ1LNa.js → refresh-cw--lvWGy0_.js} +1 -1
  127. package/dist/{runtime-dom.esm-bundler-BzuoCyNp.js → runtime-dom.esm-bundler-GdMI8WqG.js} +6 -7
  128. package/dist/{scan-line-DgijVq9y.js → scan-line-QgyDIgn_.js} +1 -1
  129. package/dist/{send-DjPdq69F.js → send-BMyisUim.js} +1 -1
  130. package/dist/{shield-check-Bqluu8FS.js → shield-check-C49M20le.js} +1 -1
  131. package/dist/{sparkles-M4azPVSP.js → sparkles-DV7Dman6.js} +1 -1
  132. package/dist/style.css +1 -1
  133. package/dist/{styles-5sGbDIA2.js → styles-mvx3k1hf.js} +78 -78
  134. package/dist/templatical-editor.js +62 -62
  135. package/dist/{text-align-start-CMya5pCQ.js → text-align-start-BMU70uAm.js} +1 -1
  136. package/dist/{trash-2-C-81rkLS.js → trash-2-B6M659Ey.js} +1 -1
  137. package/dist/{triangle-alert-BuRWnynk.js → triangle-alert-D1lzx6ds.js} +1 -1
  138. package/dist/{upload-CWBIoLd4.js → upload-3A1oZtOR.js} +1 -1
  139. package/dist/{useAliveFlag-CECL_OUb.js → useAliveFlag-C43EhZFY.js} +1 -1
  140. package/dist/{useCloudI18n-AKCy98qD.js → useCloudI18n-WbfVWq5k.js} +2 -2
  141. package/dist/{useEditorCore-AQ0BN1ug.js → useEditorCore-DtZkR7Vk.js} +616 -580
  142. package/dist/{useI18n-C-TDeJBt.js → useI18n-eR1yVW0v.js} +2 -2
  143. package/dist/{useMergeTag-D0aZw7Q5.js → useMergeTag-C3GfSktg.js} +2 -2
  144. package/dist/usePopoverRoot-C1j0D7cc.js +8 -0
  145. package/dist/{vue.runtime.esm-bundler-l0XAqiyv.js → vue.runtime.esm-bundler-B0xoGkDv.js} +84 -70
  146. package/dist/{x-CQSvXnGR.js → x-CG_NV3nP.js} +1 -1
  147. package/package.json +23 -23
  148. package/dist/NumberWithSuffix-CrA6quxx.js +0 -445
  149. package/dist/cdn/chunks/NumberWithSuffix-Conp_Pki.js +0 -444
  150. package/dist/cdn/chunks/NumberWithSuffix-Conp_Pki.js.map +0 -1
  151. package/dist/cdn/chunks/ParagraphEditor-CJNgRMhw.js.map +0 -1
  152. package/dist/cdn/chunks/RichTextEditorContent-Cebdzomd.js.map +0 -1
  153. package/dist/cdn/chunks/TitleEditor-7BhmKL-_.js.map +0 -1
  154. package/dist/cdn/chunks/ca-C58VqAgo.js.map +0 -1
  155. package/dist/cdn/chunks/de-C0sMmfic.js.map +0 -1
  156. package/dist/cdn/chunks/draggable-kG-D5Xsm.js.map +0 -1
  157. package/dist/cdn/chunks/en-CsGBTBOf.js.map +0 -1
  158. package/dist/cdn/chunks/es-DgjbcPIu.js.map +0 -1
  159. package/dist/cdn/chunks/features-DO71hPJr.js.map +0 -1
  160. package/dist/cdn/chunks/pt-BR-DXaP5lMJ.js.map +0 -1
  161. package/dist/cdn/chunks/quality-B6V4R_df.js +0 -2180
  162. package/dist/cdn/chunks/renderer-Dhn1J4H4.js.map +0 -1
  163. package/dist/cdn/chunks/styleConstants-lGobwiLH.js +0 -57
  164. package/dist/cdn/chunks/styleConstants-lGobwiLH.js.map +0 -1
  165. package/dist/dist-DR-6IpV6.js +0 -5
  166. package/dist/dist-DW8b0TO6.js +0 -5
  167. package/dist/styleConstants-lGobwiLH.js +0 -55
  168. package/dist/usePopoverRoot-DKUDnr55.js +0 -8
@@ -1,8 +1,8 @@
1
- import { $ as e, A as t, H as n, J as r, M as i, N as a, P as o, V as s, Z as c, _ as l, b as u, ct as d, f, g as p, h as m, it as h, j as g, l as _, m as v, n as y, ot as b, p as x, s as S, st as C, u as w, v as T, x as E, y as D, z as O } from "./draggable-kG-D5Xsm.js";
2
- import { $ as ee, A as k, An as te, Bt as A, E as j, Ft as M, Gt as ne, In as N, Lt as P, Mt as F, Ot as I, Rt as re, S as L, Ut as ie, Wt as R, Y as z, Yn as B, _ as V, at as H, b as ae, bt as U, c as W, d as G, f as K, ft as q, g as oe, h as se, ht as J, in as ce, kt as Y, l as X, lt as Z, m as le, p as ue, rn as de, rt as Q, s as fe, tn as pe, u as me, un as he, v as ge, x as _e, y as ve, yn as ye, yt as be } from "./features-DO71hPJr.js";
3
- import { S as xe, x as Se } from "./icons-BfP1cRNb.js";
4
- import { a as Ce, c as we, d as Te, f as Ee, i as De, l as Oe, n as ke, o as Ae, r as je, s as Me, t as Ne, u as Pe } from "./styles-CSqligXJ.js";
5
- import { d as $ } from "./styleConstants-lGobwiLH.js";
1
+ import { $ as e, A as t, H as n, J as r, M as i, N as a, P as o, V as s, Z as c, _ as l, b as u, ct as d, f, g as p, h as m, it as h, j as g, l as _, m as v, n as y, ot as b, p as x, s as S, st as C, u as w, v as T, x as E, y as D, z as O } from "./draggable-D840DIZB.js";
2
+ import { A as ee, At as k, E as A, Gt as j, It as M, Kt as N, Ln as P, Nt as F, Rt as I, S as L, Vt as R, Wt as z, Xn as B, Y as V, _ as te, an as ne, b as H, bn as U, bt as W, c as G, d as K, dn as q, et as re, f as J, g as ie, gt as Y, h as ae, in as oe, it as X, jn as se, kt as Z, l as Q, m as ce, nn as le, ot as ue, p as de, pt as fe, s as pe, u as me, ut as he, v as ge, x as _e, xt as ve, y as ye, zt as be } from "./features-C-cjT_8L.js";
3
+ import { S as xe, x as Se } from "./icons-ay0_fN-T.js";
4
+ import { a as Ce, c as we, d as Te, f as Ee, i as De, l as Oe, n as ke, o as Ae, r as je, s as Me, t as Ne, u as Pe } from "./styles-DBjy3lz9.js";
5
+ import { d as $ } from "./ColorPicker-BggAWrc9.js";
6
6
  //#region src/cloud/composables/useSnapshotPreview.ts
7
7
  function Fe(t) {
8
8
  let { authManager: n, editor: i, history: a, conditionPreview: o, autoSave: s, onError: l } = t, u = e(null), d = c(null), p = c(null), m = !1;
@@ -11,7 +11,7 @@ function Fe(t) {
11
11
  });
12
12
  let h = f(() => d.value !== null), g = f(() => u.value?.snapshots.value ?? []), _ = f(() => u.value?.isLoading.value ?? !1), v = f(() => u.value?.isRestoring.value ?? !1);
13
13
  function y() {
14
- i.state.template?.id && !u.value && (u.value = K({
14
+ i.state.template?.id && !u.value && (u.value = J({
15
15
  authManager: n,
16
16
  templateId: i.state.template.id,
17
17
  onRestore: b,
@@ -86,7 +86,7 @@ function Ie() {
86
86
  function g(t) {
87
87
  l.value = !1, e.value = e.value === t ? null : t;
88
88
  }
89
- return he(u, () => {
89
+ return q(u, () => {
90
90
  l.value = !1;
91
91
  }), {
92
92
  activePanel: e,
@@ -109,7 +109,7 @@ function Ie() {
109
109
  //#endregion
110
110
  //#region src/cloud/composables/useCollabUndoWarning.ts
111
111
  function Le(e) {
112
- let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = ye(() => {
112
+ let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = U(() => {
113
113
  a.value = !1;
114
114
  }, B, { immediate: !1 });
115
115
  function s() {
@@ -123,7 +123,7 @@ function Le(e) {
123
123
  //#endregion
124
124
  //#region src/cloud/composables/useCloudFeatureFlags.ts
125
125
  function Re(e) {
126
- let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = f(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = f(() => t.hasFeature("test_email")), o = f(() => !!r.state.template?.id), s = f(() => t.hasFeature("white_label")), l = f(() => t.config.value?.limits.max_templates ?? null), u = f(() => t.config.value?.template_count ?? 0), d = c(!1), p = c("idle"), m = c(""), { start: h } = ye(() => {
126
+ let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = f(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = f(() => t.hasFeature("test_email")), o = f(() => !!r.state.template?.id), s = f(() => t.hasFeature("white_label")), l = f(() => t.config.value?.limits.max_templates ?? null), u = f(() => t.config.value?.template_count ?? 0), d = c(!1), p = c("idle"), m = c(""), { start: h } = U(() => {
127
127
  p.value = "idle";
128
128
  }, 3e3, { immediate: !1 });
129
129
  return {
@@ -175,7 +175,7 @@ function ze(e) {
175
175
  let t = f(e);
176
176
  if (t) return s?.(t), null;
177
177
  try {
178
- let { MediaApiClient: t } = await import("./src-DoKjbqU2.js");
178
+ let { MediaApiClient: t } = await import("./src-Cehu7Hqx.js");
179
179
  return l(await new t(a).uploadMedia(e));
180
180
  } catch (e) {
181
181
  return s?.(e), null;
@@ -204,10 +204,10 @@ function ze(e) {
204
204
  //#endregion
205
205
  //#region src/cloud/composables/useCloudInitialization.ts
206
206
  function Be(e) {
207
- let { config: t, translations: n, fontsManager: r, emit: i, getCommentsSidebar: o } = e, s = c(!0), l = c(!1), u = c(null), d = !1, p = { value: null }, m = null, h = null, g = new j({
207
+ let { config: t, translations: n, fontsManager: r, emit: i, getCommentsSidebar: o } = e, s = c(!0), l = c(!1), u = c(null), d = !1, p = { value: null }, m = null, h = null, g = new A({
208
208
  ...t.auth,
209
209
  onError: t.onError
210
- }), _ = X({
210
+ }), _ = Q({
211
211
  authManager: g,
212
212
  onError: t.onError
213
213
  }), v = c(/* @__PURE__ */ new Map()), y = _e({
@@ -216,17 +216,17 @@ function Be(e) {
216
216
  templateDefaults: t.templateDefaults,
217
217
  onError: t.onError,
218
218
  lockedBlocks: v
219
- }), b = le({
219
+ }), b = ce({
220
220
  authManager: g,
221
221
  onError: t.onError
222
222
  });
223
- t.mcp?.enabled && fe({
223
+ t.mcp?.enabled && pe({
224
224
  editor: y,
225
225
  channel: b.channel,
226
226
  onOperation: t.mcp.onOperation
227
227
  });
228
228
  let x = null;
229
- t.collaboration?.enabled && (x = oe({
229
+ t.collaboration?.enabled && (x = ie({
230
230
  authManager: g,
231
231
  editor: y,
232
232
  channel: b.channel,
@@ -237,8 +237,8 @@ function Be(e) {
237
237
  onBlockUnlocked: t.collaboration.onBlockUnlocked
238
238
  }), O(() => x.lockedBlocks.value, (e) => {
239
239
  v.value = e;
240
- }, { immediate: !0 }), se(y, x));
241
- let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = k({
240
+ }, { immediate: !0 }), ae(y, x));
241
+ let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = ee({
242
242
  editor: y,
243
243
  config: {
244
244
  uiTheme: t.uiTheme,
@@ -286,11 +286,11 @@ function Be(e) {
286
286
  onError: t.onError
287
287
  });
288
288
  m = T;
289
- let E = Ie(), D = ae(t.ai), te = Re({
289
+ let E = Ie(), D = H(t.ai), k = Re({
290
290
  planConfigInstance: _,
291
291
  aiConfig: D,
292
292
  editor: y
293
- }), N = ze({
293
+ }), j = ze({
294
294
  onRequestMedia: t.onRequestMedia,
295
295
  mediaLibraryOpen: E.mediaLibraryOpen,
296
296
  mediaLibraryAccept: E.mediaLibraryAccept,
@@ -298,7 +298,7 @@ function Be(e) {
298
298
  getMediaConfig: () => _.config.value?.media ?? null,
299
299
  onError: t.onError
300
300
  });
301
- ee({
301
+ re({
302
302
  onBlockMove: y.moveBlock,
303
303
  onBlockAdd: y.addBlock
304
304
  });
@@ -306,7 +306,7 @@ function Be(e) {
306
306
  authManager: g,
307
307
  getFontsConfig: () => t.fonts,
308
308
  canUseCustomFonts: () => _.hasFeature("custom_fonts")
309
- }), F = G({
309
+ }), F = K({
310
310
  authManager: g,
311
311
  getTemplateId: () => y.state.template?.id ?? null,
312
312
  save: () => y.save(),
@@ -323,51 +323,51 @@ function Be(e) {
323
323
  isAuthReady: l,
324
324
  hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
325
325
  });
326
- V({
326
+ te({
327
327
  comments: I,
328
328
  channel: b.channel
329
329
  });
330
- let L = ue({
330
+ let L = de({
331
331
  authManager: g,
332
332
  onError: t.onError
333
- }), R = c(!1), z = c(null), B = c(!1), H = ve({
333
+ }), B = c(!1), V = c(null), U = c(!1), W = ye({
334
334
  authManager: g,
335
335
  getTemplateId: () => y.state.template?.id ?? null
336
336
  });
337
- function U(e) {
337
+ function q(e) {
338
338
  E.commentsOpen.value = !0, queueMicrotask(() => {
339
339
  o()?.filterByBlock(e);
340
340
  });
341
341
  }
342
- a(pe, N.handleRequestMedia), a(A, g), a(re, D), a(ne, I), a(de, L), a(ce, H), a(ie, {
342
+ a(le, j.handleRequestMedia), a(R, g), a(be, D), a(N, I), a(oe, L), a(ne, W), a(z, {
343
343
  plan: _,
344
344
  ai: D,
345
345
  comments: {
346
346
  getBlockCount: (e) => I.commentCountByBlock.value.get(e) ?? 0,
347
- openForBlock: U
347
+ openForBlock: q
348
348
  },
349
349
  savedModules: {
350
350
  openSaveDialog: (e) => {
351
- z.value = e ?? null, R.value = !0;
351
+ V.value = e ?? null, B.value = !0;
352
352
  },
353
353
  openBrowser: () => {
354
- B.value = !0;
354
+ U.value = !0;
355
355
  },
356
356
  moduleCount: f(() => L.modules.value.length)
357
357
  }
358
358
  });
359
- function K(e) {
359
+ function J(e) {
360
360
  _.hasFeature("theme_customization") && (C.themeOverrides.value = e);
361
361
  }
362
- function q(e) {
362
+ function Y(e) {
363
363
  y.setUiTheme(e);
364
364
  }
365
- async function J() {
365
+ async function X() {
366
366
  s.value = !0, u.value = null;
367
367
  try {
368
368
  if (await g.initialize(), d) return;
369
369
  l.value = !0;
370
- let e = await W({ authManager: g });
370
+ let e = await G({ authManager: g });
371
371
  if (d) return;
372
372
  if (!e.api.ok) throw Error("Health check failed: API is not reachable");
373
373
  if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
@@ -381,7 +381,7 @@ function Be(e) {
381
381
  d || (s.value = !1);
382
382
  }
383
383
  }
384
- function Y() {
384
+ function se() {
385
385
  d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
386
386
  }
387
387
  return {
@@ -397,32 +397,32 @@ function Be(e) {
397
397
  editor: y,
398
398
  core: C,
399
399
  aiConfig: D,
400
- featureFlags: te,
401
- mediaLib: N,
400
+ featureFlags: k,
401
+ mediaLib: j,
402
402
  exporter: P,
403
403
  testEmail: F,
404
404
  commentsInstance: I,
405
405
  savedModulesHeadless: L,
406
- scoringInstance: H,
406
+ scoringInstance: W,
407
407
  panelState: E,
408
408
  snapshotPreview: T,
409
409
  collabWarning: w,
410
- showSaveModuleDialog: R,
411
- showModuleBrowserModal: B,
412
- saveModulePreSelectedBlockId: z,
410
+ showSaveModuleDialog: B,
411
+ showModuleBrowserModal: U,
412
+ saveModulePreSelectedBlockId: V,
413
413
  onSaveHook: p,
414
- initialize: J,
415
- destroy: Y,
416
- setThemeOverrides: K,
417
- setUiTheme: q,
418
- openCommentsForBlock: U
414
+ initialize: X,
415
+ destroy: se,
416
+ setThemeOverrides: J,
417
+ setUiTheme: Y,
418
+ openCommentsForBlock: q
419
419
  };
420
420
  }
421
421
  //#endregion
422
422
  //#region src/utils/preRenderCustomBlocks.ts
423
423
  async function Ve(e, t) {
424
424
  let n = async (e) => {
425
- if (N(e)) {
425
+ if (P(e)) {
426
426
  let n = e;
427
427
  try {
428
428
  n.renderedHtml = await t.renderCustomBlock(n);
@@ -513,7 +513,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
513
513
  },
514
514
  emits: ["cancel", "confirm"],
515
515
  setup(e, { emit: t }) {
516
- let n = t, { t: r } = Q();
516
+ let n = t, { t: r } = X();
517
517
  return (t, a) => (i(), v(y, {
518
518
  "enter-active-class": "tpl:transition-opacity tpl:duration-150",
519
519
  "leave-active-class": "tpl:transition-opacity tpl:duration-150",
@@ -528,7 +528,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
528
528
  class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
529
529
  onClick: a[2] ||= _((e) => n("cancel"), ["self"])
530
530
  }, [x("div", Ge, [
531
- x("header", Ke, [D(h(Z), {
531
+ x("header", Ke, [D(h(he), {
532
532
  size: 18,
533
533
  "stroke-width": 2,
534
534
  class: "tpl:text-[var(--tpl-warning)]"
@@ -595,7 +595,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
595
595
  },
596
596
  emits: ["save"],
597
597
  setup(e) {
598
- let t = u(() => import("./CollaboratorBar-BSKXgw9D.js")), n = u(() => import("./features-DO71hPJr.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-B6V5CzCc.js")), { t: a, format: o } = Q();
598
+ let t = u(() => import("./CollaboratorBar-Dyrab63H.js")), n = u(() => import("./features-C-cjT_8L.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-roPglhox.js")), { t: a, format: o } = X();
599
599
  return (c, l) => (i(), p("header", et, [
600
600
  x("div", tt, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", nt, d(h(o)(h(a).header.templatesUsed, {
601
601
  used: e.featureFlags.templateCount.value,
@@ -640,7 +640,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
640
640
  "aria-live": "assertive",
641
641
  class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
642
642
  "data-tooltip": e.featureFlags.saveErrorMessage.value
643
- }, [D(h(Y), {
643
+ }, [D(h(k), {
644
644
  size: 12,
645
645
  "stroke-width": 2.5
646
646
  }), T(" " + d(h(a).header.saveFailed), 1)], 8, at)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", ot, [D(h(F), {
@@ -659,7 +659,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
659
659
  }),
660
660
  onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
661
661
  }, [
662
- D(h(be), {
662
+ D(h(W), {
663
663
  size: 16,
664
664
  "stroke-width": 2
665
665
  }),
@@ -674,7 +674,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
674
674
  "aria-expanded": e.panelState.aiMenuOpen.value,
675
675
  class: b(["tpl-ai-btn tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-4 tpl:py-2 tpl:text-sm tpl:font-semibold tpl:whitespace-nowrap tpl:transition-all tpl:duration-200", e.panelState.aiButtonActive.value ? "tpl-ai-btn--active" : "tpl-ai-btn--idle"]),
676
676
  onClick: l[1] ||= _((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
677
- }, [D(h(q), {
677
+ }, [D(h(fe), {
678
678
  size: 16,
679
679
  "stroke-width": 2,
680
680
  class: "tpl-ai-btn-icon"
@@ -702,12 +702,12 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
702
702
  },
703
703
  disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
704
704
  onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
705
- }, [e.testEmail.isSending.value ? (i(), v(h(U), {
705
+ }, [e.testEmail.isSending.value ? (i(), v(h(ve), {
706
706
  key: 1,
707
707
  class: "tpl-spinner",
708
708
  size: 16,
709
709
  "stroke-width": 2
710
- })) : (i(), v(h(J), {
710
+ })) : (i(), v(h(Y), {
711
711
  key: 0,
712
712
  size: 16,
713
713
  "stroke-width": 2
@@ -721,7 +721,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
721
721
  },
722
722
  disabled: e.isSaveDisabled,
723
723
  onClick: l[3] ||= (e) => c.$emit("save")
724
- }, [e.isSaving ? (i(), v(h(U), {
724
+ }, [e.isSaving ? (i(), v(h(ve), {
725
725
  key: 1,
726
726
  class: "tpl-spinner",
727
727
  size: 16,
@@ -757,9 +757,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
757
757
  "module-insert"
758
758
  ],
759
759
  setup(e, { expose: t, emit: n }) {
760
- let r = u(() => import("./features-DO71hPJr.js").then((e) => e.o)), a = u(() => import("./features-DO71hPJr.js").then((e) => e.a)), o = u(() => import("./features-DO71hPJr.js").then((e) => e.i)), s = u(() => import("./features-DO71hPJr.js").then((e) => e.n)), l = u(() => import("./features-DO71hPJr.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-Cufwqoln.js")), f = u(() => import("./ModuleBrowserModal-EzKgW5TG.js")), g = u(async () => {
760
+ let r = u(() => import("./features-C-cjT_8L.js").then((e) => e.o)), a = u(() => import("./features-C-cjT_8L.js").then((e) => e.a)), o = u(() => import("./features-C-cjT_8L.js").then((e) => e.i)), s = u(() => import("./features-C-cjT_8L.js").then((e) => e.n)), l = u(() => import("./features-C-cjT_8L.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-Cw-182CB.js")), f = u(() => import("./ModuleBrowserModal-BGd5Ryyx.js")), g = u(async () => {
761
761
  try {
762
- return (await import("./src-DoKjbqU2.js")).MediaLibraryModal;
762
+ return (await import("./src-Cehu7Hqx.js")).MediaLibraryModal;
763
763
  } catch {
764
764
  throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
765
765
  }
@@ -863,7 +863,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
863
863
  },
864
864
  emits: ["retry"],
865
865
  setup(e, { emit: t }) {
866
- let n = t, { t: r } = Q();
866
+ let n = t, { t: r } = X();
867
867
  function a(e) {
868
868
  return "isUnauthorized" in e && e.isUnauthorized ? r.error.authFailed : "isNotFound" in e && e.isNotFound ? r.error.templateNotFound : r.error.defaultMessage;
869
869
  }
@@ -871,7 +871,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
871
871
  return "isNotFound" in e && !!e.isNotFound;
872
872
  }
873
873
  return (t, s) => e.visible && e.error ? (i(), p("div", bt, [
874
- x("div", xt, [D(h(Y), {
874
+ x("div", xt, [D(h(k), {
875
875
  size: 32,
876
876
  "stroke-width": 1.5,
877
877
  class: "tpl:text-[var(--tpl-danger)]"
@@ -892,8 +892,8 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
892
892
  props: { visible: { type: Boolean } },
893
893
  emits: ["cancel", "confirm"],
894
894
  setup(e, { emit: t }) {
895
- let n = t, { t: r } = Q();
896
- return (t, a) => e.visible ? (i(), p("div", Et, [x("div", Dt, [D(h(I), {
895
+ let n = t, { t: r } = X();
896
+ return (t, a) => e.visible ? (i(), p("div", Et, [x("div", Dt, [D(h(Z), {
897
897
  size: 18,
898
898
  "stroke-width": 2,
899
899
  class: "tpl:text-[var(--tpl-primary)]"
@@ -920,10 +920,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
920
920
  __name: "CollabUndoToast",
921
921
  props: { visible: { type: Boolean } },
922
922
  setup(e) {
923
- let { t } = P();
923
+ let { t } = I();
924
924
  return (n, r) => e.visible ? (i(), p("div", At, d(h(t).history.collabWarning), 1)) : m("", !0);
925
925
  }
926
- }), Mt = ["data-tpl-theme"], Nt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Pt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Ft = ["aria-label"], It = /*#__PURE__*/ H(/* @__PURE__ */ E({
926
+ }), Mt = ["data-tpl-theme"], Nt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Pt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Ft = ["aria-label"], It = /*#__PURE__*/ ue(/* @__PURE__ */ E({
927
927
  __name: "CloudEditor",
928
928
  props: {
929
929
  config: {},
@@ -935,7 +935,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
935
935
  emits: ["ready"],
936
936
  setup(e, { expose: r, emit: o }) {
937
937
  let l = e;
938
- a(R, l.cloudTranslations);
938
+ a(j, l.cloudTranslations);
939
939
  let u = o, f = c(null), w = c(null), E = Be({
940
940
  config: l.config,
941
941
  translations: l.translations,
@@ -944,60 +944,60 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
944
944
  getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null,
945
945
  editorRoot: l.shadowRoot,
946
946
  containerEl: w
947
- }), { isInitializing: O, isAuthReady: ee, initError: k, planConfigInstance: A, websocket: j, collaboration: M, isCollaborationEnabled: ne, editor: N, core: P, featureFlags: F, mediaLib: I, exporter: re, testEmail: L, commentsInstance: ie, savedModulesHeadless: B, panelState: V, snapshotPreview: H, collabWarning: ae, showSaveModuleDialog: U, showModuleBrowserModal: W, saveModulePreSelectedBlockId: G, setThemeOverrides: K, setUiTheme: q } = E, { showNotice: oe } = z(() => l.config.smallScreenNotice);
948
- async function se(e) {
947
+ }), { isInitializing: O, isAuthReady: ee, initError: k, planConfigInstance: A, websocket: M, collaboration: N, isCollaborationEnabled: P, editor: F, core: I, featureFlags: L, mediaLib: R, exporter: z, testEmail: B, commentsInstance: te, savedModulesHeadless: ne, panelState: H, snapshotPreview: U, collabWarning: W, showSaveModuleDialog: G, showModuleBrowserModal: K, saveModulePreSelectedBlockId: q, setThemeOverrides: re, setUiTheme: J } = E, { showNotice: ie } = V(() => l.config.smallScreenNotice);
948
+ async function Y(e) {
949
949
  try {
950
- await L.sendTestEmail(e), V.testEmailModalOpen.value = !1;
950
+ await B.sendTestEmail(e), H.testEmailModalOpen.value = !1;
951
951
  } catch {}
952
952
  }
953
- async function J() {
953
+ async function ae() {
954
954
  try {
955
- await H.confirmRestoreSnapshot();
955
+ await U.confirmRestoreSnapshot();
956
956
  } catch {}
957
957
  }
958
- function ce(e, t) {
958
+ function oe(e, t) {
959
959
  for (let n = 0; n < e.content.length; n++) {
960
- let r = te(e.content[n]), i = t === void 0 ? void 0 : t + n;
961
- N.addBlock(r, void 0, void 0, i);
960
+ let r = se(e.content[n]), i = t === void 0 ? void 0 : t + n;
961
+ F.addBlock(r, void 0, void 0, i);
962
962
  }
963
- W.value = !1;
963
+ K.value = !1;
964
964
  }
965
- let Y = He({
965
+ let X = He({
966
966
  config: l.config,
967
- editor: N,
968
- websocket: j,
967
+ editor: F,
968
+ websocket: M,
969
969
  planConfigInstance: A,
970
- snapshotPreview: H,
971
- core: P,
972
- exporter: re,
973
- featureFlags: F,
970
+ snapshotPreview: U,
971
+ core: I,
972
+ exporter: z,
973
+ featureFlags: L,
974
974
  isDestroyed: E.isDestroyed
975
- }), X = Ue({
976
- issues: P.templateLint ? P.templateLint.issues : c([]),
975
+ }), Z = Ue({
976
+ issues: I.templateLint ? I.templateLint.issues : c([]),
977
977
  planConfig: A.config
978
978
  });
979
- async function Z() {
980
- await X.tryRunSave(() => Y.saveTemplate().catch((e) => l.config.onError?.(e)));
979
+ async function Q() {
980
+ await Z.tryRunSave(() => X.saveTemplate().catch((e) => l.config.onError?.(e)));
981
981
  }
982
- return E.onSaveHook.value = Z, t(() => {
982
+ return E.onSaveHook.value = Q, t(() => {
983
983
  E.initialize();
984
984
  }), g(() => {
985
985
  E.destroy();
986
986
  }), r({
987
- getContent: () => N.content.value,
988
- setContent: (e) => N.setContent(e),
989
- setTheme: q,
990
- setThemeOverrides: K,
991
- create: Y.createTemplate,
992
- load: Y.loadTemplate,
993
- save: Y.saveTemplate,
994
- sendTestEmail: L.sendTestEmail
987
+ getContent: () => F.content.value,
988
+ setContent: (e) => F.setContent(e),
989
+ setTheme: J,
990
+ setThemeOverrides: re,
991
+ create: X.createTemplate,
992
+ load: X.loadTemplate,
993
+ save: X.saveTemplate,
994
+ sendTestEmail: B.sendTestEmail
995
995
  }), (t, r) => (i(), p("div", {
996
996
  ref_key: "rootEl",
997
997
  ref: w,
998
- class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(N).state.darkMode }]),
999
- "data-tpl-theme": h(P).resolvedTheme.value,
1000
- style: C(h(P).themeStyles.value),
998
+ class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(F).state.darkMode }]),
999
+ "data-tpl-theme": h(I).resolvedTheme.value,
1000
+ style: C(h(I).themeStyles.value),
1001
1001
  onDragover: r[9] ||= _(() => {}, ["prevent"]),
1002
1002
  onDrop: r[10] ||= _(() => {}, ["prevent"])
1003
1003
  }, [
@@ -1010,7 +1010,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1010
1010
  "leave-from-class": "tpl:opacity-100",
1011
1011
  "leave-to-class": "tpl:opacity-0"
1012
1012
  }, {
1013
- default: s(() => [D(yt, { visible: h(O) || h(N).state.isLoading }, null, 8, ["visible"])]),
1013
+ default: s(() => [D(yt, { visible: h(O) || h(F).state.isLoading }, null, 8, ["visible"])]),
1014
1014
  _: 1
1015
1015
  }),
1016
1016
  D(y, {
@@ -1033,19 +1033,19 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1033
1033
  _: 1
1034
1034
  }),
1035
1035
  D(mt, {
1036
- editor: h(N),
1037
- core: h(P),
1038
- "feature-flags": h(F),
1039
- "panel-state": h(V),
1040
- "snapshot-preview": h(H),
1041
- "comments-instance": h(ie),
1042
- "test-email": h(L),
1043
- websocket: h(j),
1044
- collaboration: h(M),
1045
- "is-collaboration-enabled": h(ne),
1046
- "is-saving": h(N).state.isSaving || h(F).isSaveExporting.value,
1047
- "is-save-disabled": h(N).state.isSaving || h(F).isSaveExporting.value || !h(N).state.isDirty,
1048
- onSave: Z
1036
+ editor: h(F),
1037
+ core: h(I),
1038
+ "feature-flags": h(L),
1039
+ "panel-state": h(H),
1040
+ "snapshot-preview": h(U),
1041
+ "comments-instance": h(te),
1042
+ "test-email": h(B),
1043
+ websocket: h(M),
1044
+ collaboration: h(N),
1045
+ "is-collaboration-enabled": h(P),
1046
+ "is-saving": h(F).state.isSaving || h(L).isSaveExporting.value,
1047
+ "is-save-disabled": h(F).state.isSaving || h(L).isSaveExporting.value || !h(F).state.isDirty,
1048
+ onSave: Q
1049
1049
  }, null, 8, [
1050
1050
  "editor",
1051
1051
  "core",
@@ -1061,10 +1061,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1061
1061
  "is-save-disabled"
1062
1062
  ]),
1063
1063
  D($e, {
1064
- open: h(X).modalOpen.value,
1065
- issues: h(X).blockingIssues.value,
1066
- onCancel: h(X).cancel,
1067
- onConfirm: h(X).confirmAndSave
1064
+ open: h(Z).modalOpen.value,
1065
+ issues: h(Z).blockingIssues.value,
1066
+ onCancel: h(Z).cancel,
1067
+ onConfirm: h(Z).confirmAndSave
1068
1068
  }, null, 8, [
1069
1069
  "open",
1070
1070
  "issues",
@@ -1072,9 +1072,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1072
1072
  "onConfirm"
1073
1073
  ]),
1074
1074
  D(kt, {
1075
- visible: h(H).isPreviewingSnapshot.value,
1076
- onCancel: h(H).cancelPreview,
1077
- onConfirm: J
1075
+ visible: h(U).isPreviewingSnapshot.value,
1076
+ onCancel: h(U).cancelPreview,
1077
+ onConfirm: ae
1078
1078
  }, null, 8, ["visible", "onCancel"]),
1079
1079
  D(y, {
1080
1080
  "enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
@@ -1084,18 +1084,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1084
1084
  "leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
1085
1085
  "leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
1086
1086
  }, {
1087
- default: s(() => [D(jt, { visible: h(ae).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1087
+ default: s(() => [D(jt, { visible: h(W).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1088
1088
  _: 1
1089
1089
  }),
1090
- n(D(Oe, null, null, 512), [[S, !h(N).state.previewMode]]),
1090
+ n(D(Oe, null, null, 512), [[S, !h(F).state.previewMode]]),
1091
1091
  x("div", {
1092
- class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(H).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1092
+ class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(F).state.previewMode ? "tpl:left-0 tpl:right-0" : h(H).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(U).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1093
1093
  style: {
1094
1094
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1095
1095
  "background-color": "var(--tpl-canvas-bg)"
1096
1096
  }
1097
1097
  }, [x("div", Nt, [D(y, { name: "tpl-restore-btn" }, {
1098
- default: s(() => [h(P).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1098
+ default: s(() => [h(I).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1099
1099
  key: 0,
1100
1100
  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-md tpl:hover:opacity-80",
1101
1101
  style: {
@@ -1104,22 +1104,22 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1104
1104
  "border-color": "var(--tpl-warning)",
1105
1105
  "backdrop-filter": "blur(8px)"
1106
1106
  },
1107
- onClick: r[0] ||= (e) => h(P).conditionPreview.reset()
1107
+ onClick: r[0] ||= (e) => h(I).conditionPreview.reset()
1108
1108
  }, [D(h(xe), {
1109
1109
  size: 13,
1110
1110
  "stroke-width": 2
1111
- }), T(" " + d(h(P).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1111
+ }), T(" " + d(h(I).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1112
1112
  _: 1
1113
1113
  })]), x("main", Pt, [D(Te, {
1114
- viewport: h(N).state.viewport,
1115
- content: h(N).content.value,
1116
- "selected-block-id": h(N).state.selectedBlockId,
1117
- "dark-mode": h(N).state.darkMode,
1118
- "preview-mode": h(N).state.previewMode,
1119
- "locked-blocks": h(M)?.lockedBlocks.value ?? void 0,
1120
- onSelectBlock: h(N).selectBlock,
1121
- onOpenAiChat: r[1] ||= (e) => h(V).aiChatOpen.value = !0,
1122
- onOpenDesignReference: r[2] ||= (e) => h(V).designReferenceOpen.value = !0
1114
+ viewport: h(F).state.viewport,
1115
+ content: h(F).content.value,
1116
+ "selected-block-id": h(F).state.selectedBlockId,
1117
+ "dark-mode": h(F).state.darkMode,
1118
+ "preview-mode": h(F).state.previewMode,
1119
+ "locked-blocks": h(N)?.lockedBlocks.value ?? void 0,
1120
+ onSelectBlock: h(F).selectBlock,
1121
+ onOpenAiChat: r[1] ||= (e) => h(H).aiChatOpen.value = !0,
1122
+ onOpenDesignReference: r[2] ||= (e) => h(H).designReferenceOpen.value = !0
1123
1123
  }, null, 8, [
1124
1124
  "viewport",
1125
1125
  "content",
@@ -1129,51 +1129,51 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1129
1129
  "locked-blocks",
1130
1130
  "onSelectBlock"
1131
1131
  ])])], 2),
1132
- e.config.branding !== !1 && !h(F).isWhiteLabeled.value ? (i(), v(je, {
1132
+ e.config.branding !== !1 && !h(L).isWhiteLabeled.value ? (i(), v(je, {
1133
1133
  key: 0,
1134
- "position-class": [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1134
+ "position-class": [h(F).state.previewMode ? "tpl:left-0 tpl:right-0" : h(H).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1135
1135
  }, null, 8, ["position-class"])) : m("", !0),
1136
1136
  x("div", {
1137
1137
  class: "tpl-sr-only",
1138
1138
  role: "status",
1139
1139
  "aria-live": "polite",
1140
1140
  "aria-atomic": "true",
1141
- "aria-label": h(P).t.landmarks.reorderAnnouncements
1142
- }, d(h(P).keyboardReorder.announcement.value), 9, Ft),
1141
+ "aria-label": h(I).t.landmarks.reorderAnnouncements
1142
+ }, d(h(I).keyboardReorder.announcement.value), 9, Ft),
1143
1143
  n(D(we, {
1144
- "selected-block": h(N).selectedBlock.value,
1145
- settings: h(N).content.value.settings,
1146
- "shifted-left": h(V).rightPanelOpen.value,
1147
- onUpdateBlock: r[3] ||= (e) => h(N).updateBlock(h(N).selectedBlock.value.id, e),
1148
- onDeleteBlock: r[4] ||= (e) => h(P).blockActions.deleteBlock(h(N).selectedBlock.value.id),
1149
- onDuplicateBlock: r[5] ||= (e) => h(P).blockActions.duplicateBlock(h(N).selectedBlock.value),
1150
- onUpdateSettings: h(N).updateSettings
1144
+ "selected-block": h(F).selectedBlock.value,
1145
+ settings: h(F).content.value.settings,
1146
+ "shifted-left": h(H).rightPanelOpen.value,
1147
+ onUpdateBlock: r[3] ||= (e) => h(F).updateBlock(h(F).selectedBlock.value.id, e),
1148
+ onDeleteBlock: r[4] ||= (e) => h(I).blockActions.deleteBlock(h(F).selectedBlock.value.id),
1149
+ onDuplicateBlock: r[5] ||= (e) => h(I).blockActions.duplicateBlock(h(F).selectedBlock.value),
1150
+ onUpdateSettings: h(F).updateSettings
1151
1151
  }, null, 8, [
1152
1152
  "selected-block",
1153
1153
  "settings",
1154
1154
  "shifted-left",
1155
1155
  "onUpdateSettings"
1156
- ]), [[S, !h(N).state.previewMode]]),
1156
+ ]), [[S, !h(F).state.previewMode]]),
1157
1157
  !h(O) && h(ee) ? (i(), v(ht, {
1158
1158
  key: 1,
1159
1159
  ref_key: "cloudPanelsRef",
1160
1160
  ref: f,
1161
1161
  config: l.config,
1162
- editor: h(N),
1163
- core: h(P),
1164
- "panel-state": h(V),
1162
+ editor: h(F),
1163
+ core: h(I),
1164
+ "panel-state": h(H),
1165
1165
  "plan-config-instance": h(A),
1166
- "test-email": h(L),
1167
- "media-lib": h(I),
1168
- "saved-modules-headless": h(B),
1169
- "show-save-module-dialog": h(U),
1170
- "save-module-pre-selected-block-id": h(G),
1171
- "show-module-browser-modal": h(W),
1172
- "onUpdate:showSaveModuleDialog": r[6] ||= (e) => U.value = e,
1173
- "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => G.value = e,
1174
- "onUpdate:showModuleBrowserModal": r[8] ||= (e) => W.value = e,
1175
- onSendTestEmail: se,
1176
- onModuleInsert: ce
1166
+ "test-email": h(B),
1167
+ "media-lib": h(R),
1168
+ "saved-modules-headless": h(ne),
1169
+ "show-save-module-dialog": h(G),
1170
+ "save-module-pre-selected-block-id": h(q),
1171
+ "show-module-browser-modal": h(K),
1172
+ "onUpdate:showSaveModuleDialog": r[6] ||= (e) => G.value = e,
1173
+ "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => q.value = e,
1174
+ "onUpdate:showModuleBrowserModal": r[8] ||= (e) => K.value = e,
1175
+ onSendTestEmail: Y,
1176
+ onModuleInsert: oe
1177
1177
  }, null, 8, [
1178
1178
  "config",
1179
1179
  "editor",
@@ -1188,16 +1188,16 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1188
1188
  "show-module-browser-modal"
1189
1189
  ])) : m("", !0),
1190
1190
  x("div", {
1191
- ref: (e) => h(P).popoverRoot.value = e,
1191
+ ref: (e) => h(I).popoverRoot.value = e,
1192
1192
  class: "tpl-popover-root"
1193
1193
  }, null, 512),
1194
1194
  D(ke),
1195
1195
  D(Ne),
1196
- h(oe) ? (i(), v(Me, { key: 2 })) : m("", !0)
1196
+ h(ie) ? (i(), v(Me, { key: 2 })) : m("", !0)
1197
1197
  ], 46, Mt));
1198
1198
  }
1199
1199
  }), [["__scopeId", "data-v-3fc6c906"]]);
1200
1200
  //#endregion
1201
1201
  export { It as default };
1202
1202
 
1203
- //# sourceMappingURL=CloudEditor-C-npgK-l.js.map
1203
+ //# sourceMappingURL=CloudEditor-CX6y1k3C.js.map