@templatical/editor 0.11.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/dist/{AiChatSidebar-Cm5RM5Qh.js → AiChatSidebar-CXH7l1Ar.js} +13 -13
  2. package/dist/{AiFeatureMenu-DBWcfcWl.js → AiFeatureMenu-BKbUUc1D.js} +10 -10
  3. package/dist/{BlockIssueBadge-BF4sdsr4.js → BlockIssueBadge-C-EPqWsh.js} +5 -5
  4. package/dist/{CloudEditor-C6cSXtcP.js → CloudEditor-F5YV5hE3.js} +60 -60
  5. package/dist/{CollaboratorBar-B8-AQfG2.js → CollaboratorBar-ACUA7lBJ.js} +4 -4
  6. package/dist/{CommentsSidebar-BQJzyCc6.js → CommentsSidebar-CpRLN40c.js} +19 -19
  7. package/dist/{CountdownBlock-D_AsF4F3.js → CountdownBlock-C-6o19qS.js} +3 -3
  8. package/dist/{CountdownToolbar-BGTkFky9.js → CountdownToolbar-CDy9_2Yj.js} +3 -3
  9. package/dist/{DesignReferenceSidebar-O3epZMXD.js → DesignReferenceSidebar-0dTsBW08.js} +9 -9
  10. package/dist/{IssuesPanel-CPBbR8yp.js → IssuesPanel-I0z6k6-H.js} +11 -11
  11. package/dist/{LoadingTrack-e67FA0NP.js → LoadingTrack-C7mGWPHS.js} +1 -1
  12. package/dist/{ModuleBrowserModal-B_tLzFAk.js → ModuleBrowserModal-Bz9hSjMS.js} +10 -10
  13. package/dist/{ModulePreviewCanvas-B7pNpAHM.js → ModulePreviewCanvas-CpaumPMS.js} +23 -23
  14. package/dist/{NumberWithSuffix-eI9pPDWT.js → NumberWithSuffix-Cd7bz1Wk.js} +3 -3
  15. package/dist/{ParagraphEditor-DmA9K7dx.js → ParagraphEditor-BqRFV_Y-.js} +47 -47
  16. package/dist/{RichTextEditorContent-Dvn4woIt.js → RichTextEditorContent-Q5altsx1.js} +6 -6
  17. package/dist/{SaveModuleDialog-B8ypoxdj.js → SaveModuleDialog-DmfvH5D0.js} +7 -7
  18. package/dist/{SnapshotHistory-BTHd7CVP.js → SnapshotHistory-C052o-8U.js} +13 -13
  19. package/dist/{TemplateScoringPanel-Bt5Rsgen.js → TemplateScoringPanel-CUs8XmIi.js} +24 -24
  20. package/dist/{TestEmailModal-CBIFMzK6.js → TestEmailModal-BIIxRWUt.js} +5 -5
  21. package/dist/{TitleEditor-C9jDA5lI.js → TitleEditor-FMh54Cx5.js} +18 -18
  22. package/dist/{TplModal-ND4fiqOS.js → TplModal-utMtXzSO.js} +4 -4
  23. package/dist/{blockTypeIcons-Bn-_Smlm.js → blockTypeIcons-C6UGDmrC.js} +5 -5
  24. package/dist/bundle-stats.json +6 -6
  25. package/dist/cdn/chunks/{AiFeatureMenu-BuSO0dXP.js → AiFeatureMenu-4NhCFeTh.js} +6 -6
  26. package/dist/cdn/chunks/{AiFeatureMenu-BuSO0dXP.js.map → AiFeatureMenu-4NhCFeTh.js.map} +1 -1
  27. package/dist/cdn/chunks/{BlockIssueBadge-sv3IZ1Pb.js → BlockIssueBadge-BYKThwhE.js} +6 -6
  28. package/dist/cdn/chunks/{BlockIssueBadge-sv3IZ1Pb.js.map → BlockIssueBadge-BYKThwhE.js.map} +1 -1
  29. package/dist/cdn/chunks/{CloudEditor-hxoqsTsq.js → CloudEditor-OO8hWAVp.js} +162 -162
  30. package/dist/cdn/chunks/{CloudEditor-hxoqsTsq.js.map → CloudEditor-OO8hWAVp.js.map} +1 -1
  31. package/dist/cdn/chunks/{CollaboratorBar-DFqsaNX0.js → CollaboratorBar-Dn5gXNDt.js} +4 -4
  32. package/dist/cdn/chunks/{CollaboratorBar-DFqsaNX0.js.map → CollaboratorBar-Dn5gXNDt.js.map} +1 -1
  33. package/dist/cdn/chunks/{CountdownBlock-PpH3fxAX.js → CountdownBlock-hYoJdVOt.js} +3 -3
  34. package/dist/cdn/chunks/{CountdownBlock-PpH3fxAX.js.map → CountdownBlock-hYoJdVOt.js.map} +1 -1
  35. package/dist/cdn/chunks/{CountdownToolbar-CZN92Bhz.js → CountdownToolbar-BXjDFRHI.js} +4 -4
  36. package/dist/cdn/chunks/{CountdownToolbar-CZN92Bhz.js.map → CountdownToolbar-BXjDFRHI.js.map} +1 -1
  37. package/dist/cdn/chunks/{IssuesPanel-wQjrnuyc.js → IssuesPanel-_5fEnivU.js} +11 -11
  38. package/dist/cdn/chunks/{IssuesPanel-wQjrnuyc.js.map → IssuesPanel-_5fEnivU.js.map} +1 -1
  39. package/dist/cdn/chunks/{ModuleBrowserModal-348wCgft.js → ModuleBrowserModal-DtCksAeW.js} +9 -9
  40. package/dist/cdn/chunks/{ModuleBrowserModal-348wCgft.js.map → ModuleBrowserModal-DtCksAeW.js.map} +1 -1
  41. package/dist/cdn/chunks/{ModulePreviewCanvas-Cf6DUHml.js → ModulePreviewCanvas-CCOvabZd.js} +33 -33
  42. package/dist/cdn/chunks/{ModulePreviewCanvas-Cf6DUHml.js.map → ModulePreviewCanvas-CCOvabZd.js.map} +1 -1
  43. package/dist/cdn/chunks/{NumberWithSuffix-Deo8EOSz.js → NumberWithSuffix-ZuJ2ePB0.js} +3 -3
  44. package/dist/cdn/chunks/{NumberWithSuffix-Deo8EOSz.js.map → NumberWithSuffix-ZuJ2ePB0.js.map} +1 -1
  45. package/dist/cdn/chunks/{ParagraphEditor-Cbl_gBYM.js → ParagraphEditor-BnhnFOW1.js} +67 -67
  46. package/dist/cdn/chunks/{ParagraphEditor-Cbl_gBYM.js.map → ParagraphEditor-BnhnFOW1.js.map} +1 -1
  47. package/dist/cdn/chunks/{RichTextEditorContent-TBPzn3RC.js → RichTextEditorContent-DV2yknp8.js} +5 -5
  48. package/dist/cdn/chunks/{RichTextEditorContent-TBPzn3RC.js.map → RichTextEditorContent-DV2yknp8.js.map} +1 -1
  49. package/dist/cdn/chunks/{SaveModuleDialog-CxdYMutK.js → SaveModuleDialog-CCX5U7VA.js} +6 -6
  50. package/dist/cdn/chunks/{SaveModuleDialog-CxdYMutK.js.map → SaveModuleDialog-CCX5U7VA.js.map} +1 -1
  51. package/dist/cdn/chunks/{TitleEditor--XulEf7R.js → TitleEditor-CQqklX0D.js} +13 -13
  52. package/dist/cdn/chunks/{TitleEditor--XulEf7R.js.map → TitleEditor-CQqklX0D.js.map} +1 -1
  53. package/dist/cdn/chunks/blockTypeIcons-CpGPHppB.js +22 -0
  54. package/dist/cdn/chunks/{blockTypeIcons-BJND4L-A.js.map → blockTypeIcons-CpGPHppB.js.map} +1 -1
  55. package/dist/{de-BJMLpg_p.js → cdn/chunks/de-DpBN9H7-.js} +9 -1
  56. package/dist/cdn/chunks/de-DpBN9H7-.js.map +1 -0
  57. package/dist/cdn/chunks/{draggable-iAb7QVJo.js → draggable-Bci-fq8y.js} +473 -465
  58. package/dist/cdn/chunks/draggable-Bci-fq8y.js.map +1 -0
  59. package/dist/{en-DFMMw7SL.js → cdn/chunks/en-BhHtdIiU.js} +9 -1
  60. package/dist/cdn/chunks/en-BhHtdIiU.js.map +1 -0
  61. package/dist/cdn/chunks/{extensions-BtWoLy6E.js → extensions-Ds9GnMcd.js} +25 -25
  62. package/dist/cdn/chunks/{extensions-BtWoLy6E.js.map → extensions-Ds9GnMcd.js.map} +1 -1
  63. package/dist/cdn/chunks/{features-mO5NzwnN.js → features-DxWz_Enw.js} +1048 -1059
  64. package/dist/cdn/chunks/features-DxWz_Enw.js.map +1 -0
  65. package/dist/cdn/chunks/{icons-CuXm6XAT.js → icons-BflGUmFY.js} +146 -146
  66. package/dist/cdn/chunks/icons-BflGUmFY.js.map +1 -0
  67. package/dist/cdn/chunks/{liquid.browser-DUDc3U21.js → liquid.browser-DKKBzRQu.js} +502 -497
  68. package/dist/cdn/chunks/liquid.browser-DKKBzRQu.js.map +1 -0
  69. package/dist/cdn/chunks/{media-library-BtNzYUTi.js → media-library-C479-QcE.js} +565 -565
  70. package/dist/cdn/chunks/{media-library-BtNzYUTi.js.map → media-library-C479-QcE.js.map} +1 -1
  71. package/dist/cdn/chunks/{pt-BR-C-9aWLlR.js → pt-BR-Bth5a93y.js} +8 -2
  72. package/dist/cdn/chunks/pt-BR-Bth5a93y.js.map +1 -0
  73. package/dist/cdn/chunks/{pusher-CHo5Cua0.js → pusher-BICWUP2j.js} +3 -3
  74. package/dist/cdn/chunks/{pusher-CHo5Cua0.js.map → pusher-BICWUP2j.js.map} +1 -1
  75. package/dist/cdn/chunks/{quality-YKe19zp8.js → quality-BL_pEvFP.js} +101 -101
  76. package/dist/cdn/chunks/{quality-YKe19zp8.js.map → quality-BL_pEvFP.js.map} +1 -1
  77. package/dist/cdn/chunks/readableTextColor-f8Kykfnh.js.map +1 -1
  78. package/dist/cdn/chunks/{renderer-BcOaxCs6.js → renderer-DwPomkBw.js} +53 -50
  79. package/dist/cdn/chunks/renderer-DwPomkBw.js.map +1 -0
  80. package/dist/cdn/chunks/{src-B_ZRmuit.js → src-DzvOWQ9S.js} +11 -11
  81. package/dist/cdn/chunks/{src-B_ZRmuit.js.map → src-DzvOWQ9S.js.map} +1 -1
  82. package/dist/cdn/chunks/{styles-DDBCCJ-l.js → styles-D45rgVq8.js} +737 -667
  83. package/dist/cdn/chunks/styles-D45rgVq8.js.map +1 -0
  84. package/dist/cdn/chunks/{tiptap-BAwu9VcJ.js → tiptap-CwScfbsM.js} +5 -4
  85. package/dist/cdn/chunks/tiptap-CwScfbsM.js.map +1 -0
  86. package/dist/cdn/editor.css +1 -1
  87. package/dist/cdn/editor.js +36 -36
  88. package/dist/cdn/editor.js.map +1 -1
  89. package/dist/{check-BsNM6BDs.js → check-BRzXxFHr.js} +1 -1
  90. package/dist/{chevron-down-fcsZ5DU7.js → chevron-down-DmEgzmYT.js} +1 -1
  91. package/dist/{circle-alert-BZTbwc-B.js → circle-alert-BStvZr3O.js} +1 -1
  92. package/dist/{clock-B7iQRubC.js → clock-Blwp_1R6.js} +1 -1
  93. package/dist/{cloud-Dom4EH5Z.js → cloud-_olro76D.js} +6 -6
  94. package/dist/{createLucideIcon-C_fetdGM.js → createLucideIcon-CmPAC-gt.js} +3 -3
  95. package/dist/{cdn/chunks/de-BJMLpg_p.js → de-DpBN9H7-.js} +7 -3
  96. package/dist/{dist-ByBVNmRN.js → dist-412xXefB.js} +1 -1
  97. package/dist/{dist-XdF11ZkX.js → dist-BCQZZUE9.js} +1 -1
  98. package/dist/{dist-CD3wbUoR.js → dist-BNEdeWub.js} +1 -1
  99. package/dist/dist-BctFrpeA.js +472 -0
  100. package/dist/{dist-eVlXvuKI.js → dist-BlG7k25W.js} +1 -1
  101. package/dist/{dist-BLcYl_de.js → dist-BwgjpLfr.js} +1 -1
  102. package/dist/{dist-Dhs3W2WW.js → dist-Cz79qrLL.js} +1 -1
  103. package/dist/{dist-c2sj5PQ5.js → dist-D6x1cQeh.js} +3 -3
  104. package/dist/{dist-cT52Hh9L.js → dist-DJ9aD8yA.js} +3 -3
  105. package/dist/{dist-Cwl7XXr4.js → dist-DULfKmTh.js} +3 -3
  106. package/dist/{dist-Dem8ODLh.js → dist-DhKTdU52.js} +3 -2
  107. package/dist/{dist-BOHAk4zI.js → dist-b7Ak-CuM.js} +1 -1
  108. package/dist/{dist-B4NkMBYc.js → dist-o73iaGqy.js} +1 -1
  109. package/dist/{dist-BsB4nPJD.js → dist-u0iIJH3V.js} +1 -1
  110. package/dist/{cdn/chunks/en-DFMMw7SL.js → en-BhHtdIiU.js} +7 -3
  111. package/dist/{extensions-B2lSGCA8.js → extensions-XPlNAKIL.js} +23 -23
  112. package/dist/formatRelativeTime-CtUU-QZ8.js +10 -0
  113. package/dist/{image-up-1xrPPJYH.js → image-up-BFPbw_Zq.js} +1 -1
  114. package/dist/{info-ByAFxArD.js → info-B_qLEBN2.js} +1 -1
  115. package/dist/{keys-DsRdOmg3.js → keys-mFiJ5N0_.js} +1 -1
  116. package/dist/{liquid.browser--qtl1Fqy.js → liquid.browser-CVjP5Mex.js} +501 -496
  117. package/dist/{list-checks-CKUP4UZU.js → list-checks-CGg7JxPm.js} +1 -1
  118. package/dist/{loader-circle-BuxX338d.js → loader-circle-CDF8eR_Q.js} +1 -1
  119. package/dist/{message-circle-nLwqegRi.js → message-circle-C3cHsCJl.js} +1 -1
  120. package/dist/{pt-BR-C-9aWLlR.js → pt-BR-Bth5a93y.js} +7 -1
  121. package/dist/{refresh-cw-DAkD6iDI.js → refresh-cw-Butml7Q4.js} +1 -1
  122. package/dist/{scan-line-DEELRJJ5.js → scan-line-XYEqim_E.js} +1 -1
  123. package/dist/{send-DCMgrNT4.js → send-k7npFJNO.js} +1 -1
  124. package/dist/{shield-check-BFtVr_ov.js → shield-check-CV6GbmCu.js} +1 -1
  125. package/dist/{sparkles-CeYIQ5RJ.js → sparkles-C965Xop4.js} +1 -1
  126. package/dist/style.css +1 -1
  127. package/dist/{styles-DZcQGzsN.js → styles-Dp4mJuCM.js} +888 -818
  128. package/dist/templatical-editor.js +14 -14
  129. package/dist/{text-align-start-BsmIoqLS.js → text-align-start-Bxnps8fH.js} +1 -1
  130. package/dist/{trash-2-C2S4-CIH.js → trash-2-DpGb7fIt.js} +1 -1
  131. package/dist/{triangle-alert-DMdedF6W.js → triangle-alert-BKYElAwz.js} +1 -1
  132. package/dist/{useAliveFlag-DlVvpZxc.js → useAliveFlag-BinvbqQR.js} +1 -1
  133. package/dist/{useCloudI18n-BEuiZdzs.js → useCloudI18n-L3H2XvdW.js} +2 -2
  134. package/dist/{useEditorCore-D00QzW07.js → useEditorCore-D7dQFRkw.js} +406 -486
  135. package/dist/{useI18n-DNspT6uw.js → useI18n-CTs_bP9d.js} +2 -2
  136. package/dist/{useMergeTag-abutjUud.js → useMergeTag-e3RSY-s3.js} +6 -6
  137. package/dist/usePopoverRoot-DVh7NY1q.js +8 -0
  138. package/dist/{vue.runtime.esm-bundler-mPytWZFh.js → vue.runtime.esm-bundler-B2k01iQh.js} +345 -337
  139. package/dist/{x-_9jw816B.js → x-CGjkjdKK.js} +1 -1
  140. package/package.json +10 -10
  141. package/dist/cdn/chunks/blockTypeIcons-BJND4L-A.js +0 -22
  142. package/dist/cdn/chunks/de-BJMLpg_p.js.map +0 -1
  143. package/dist/cdn/chunks/draggable-iAb7QVJo.js.map +0 -1
  144. package/dist/cdn/chunks/en-DFMMw7SL.js.map +0 -1
  145. package/dist/cdn/chunks/features-mO5NzwnN.js.map +0 -1
  146. package/dist/cdn/chunks/icons-CuXm6XAT.js.map +0 -1
  147. package/dist/cdn/chunks/liquid.browser-DUDc3U21.js.map +0 -1
  148. package/dist/cdn/chunks/pt-BR-C-9aWLlR.js.map +0 -1
  149. package/dist/cdn/chunks/renderer-BcOaxCs6.js.map +0 -1
  150. package/dist/cdn/chunks/styles-DDBCCJ-l.js.map +0 -1
  151. package/dist/cdn/chunks/tiptap-BAwu9VcJ.js.map +0 -1
  152. package/dist/dist-D6L_WdRL.js +0 -403
  153. package/dist/formatRelativeTime-CyDg5cDD.js +0 -12
  154. package/dist/usePopoverRoot-DG3mlvd1.js +0 -8
@@ -1,7 +1,7 @@
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 ee } from "./draggable-iAb7QVJo.js";
2
- import { $t as O, A as k, Dt as A, E as j, Ht as te, It as M, Lt as N, Ot as P, Pt as ne, Q as re, S as F, Tn as I, Ut as L, Wn as R, Wt as ie, Y as z, _ as B, b as V, c as ae, ct as H, d as U, dt as W, f as G, g as oe, gn as K, h as se, it as q, jn as J, jt as Y, l as X, m as Z, mt as ce, nn as le, nt as Q, p as ue, s as de, sn as fe, tn as pe, u as me, v as he, vt as ge, x as _e, y as ve, yt as ye, zt as be } from "./features-mO5NzwnN.js";
3
- import { S as xe, x as Se } from "./icons-CuXm6XAT.js";
4
- import { a as Ce, c as we, d as Te, i as Ee, l as De, n as Oe, o as ke, r as Ae, s as je, t as Me, u as Ne } from "./styles-DDBCCJ-l.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-Bci-fq8y.js";
2
+ import { A as k, An as A, At as j, Ct as M, Dt as N, E as P, Et as F, Ft as I, Ht as L, It as R, J as z, Nt as ee, Ot as B, Qt as te, Rt as ne, S as V, Un as H, Ut as U, Vt as W, Z as G, _ as K, b as re, c as ie, d as ae, dt as q, en as oe, f as J, g as Y, h as X, hn as Z, ht as se, kt as ce, l as le, m as ue, on as de, p as fe, rt as pe, s as me, tn as he, tt as Q, u as ge, v as _e, wn as ve, x as ye, y as be } from "./features-DxWz_Enw.js";
3
+ import { _ as xe, v as Se } from "./icons-BflGUmFY.js";
4
+ import { a as Ce, c as we, d as Te, i as Ee, l as De, n as Oe, o as ke, r as Ae, s as je, t as Me, u as Ne } from "./styles-D45rgVq8.js";
5
5
  import { d as $ } from "./styleConstants-lGobwiLH.js";
6
6
  //#region src/cloud/composables/useSnapshotPreview.ts
7
7
  function Pe(t) {
@@ -11,7 +11,7 @@ function Pe(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 = G({
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 Fe() {
86
86
  function g(t) {
87
87
  l.value = !1, e.value = e.value === t ? null : t;
88
88
  }
89
- return fe(u, () => {
89
+ return de(u, () => {
90
90
  l.value = !1;
91
91
  }), {
92
92
  activePanel: e,
@@ -109,9 +109,9 @@ function Fe() {
109
109
  //#endregion
110
110
  //#region src/cloud/composables/useCollabUndoWarning.ts
111
111
  function Ie(e) {
112
- let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = K(() => {
112
+ let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = Z(() => {
113
113
  a.value = !1;
114
- }, R, { immediate: !1 });
114
+ }, H, { immediate: !1 });
115
115
  function s() {
116
116
  i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0, o());
117
117
  }
@@ -123,7 +123,7 @@ function Ie(e) {
123
123
  //#endregion
124
124
  //#region src/cloud/composables/useCloudFeatureFlags.ts
125
125
  function Le(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 } = K(() => {
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 } = Z(() => {
127
127
  p.value = "idle";
128
128
  }, 3e3, { immediate: !1 });
129
129
  return {
@@ -177,29 +177,29 @@ function Re(e) {
177
177
  //#endregion
178
178
  //#region src/cloud/composables/useCloudInitialization.ts
179
179
  function ze(e) {
180
- 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({
180
+ 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 P({
181
181
  ...t.auth,
182
182
  onError: t.onError
183
- }), _ = X({
183
+ }), _ = le({
184
184
  authManager: g,
185
185
  onError: t.onError
186
- }), v = c(/* @__PURE__ */ new Map()), y = _e({
186
+ }), v = c(/* @__PURE__ */ new Map()), y = ye({
187
187
  authManager: g,
188
188
  defaultFontFamily: t.fonts?.defaultFont,
189
189
  templateDefaults: t.templateDefaults,
190
190
  onError: t.onError,
191
191
  lockedBlocks: v
192
- }), b = Z({
192
+ }), b = ue({
193
193
  authManager: g,
194
194
  onError: t.onError
195
195
  });
196
- t.mcp?.enabled && de({
196
+ t.mcp?.enabled && me({
197
197
  editor: y,
198
198
  channel: b.channel,
199
199
  onOperation: t.mcp.onOperation
200
200
  });
201
201
  let x = null;
202
- t.collaboration?.enabled && (x = oe({
202
+ t.collaboration?.enabled && (x = Y({
203
203
  authManager: g,
204
204
  editor: y,
205
205
  channel: b.channel,
@@ -208,9 +208,9 @@ function ze(e) {
208
208
  onCollaboratorLeft: t.collaboration.onCollaboratorLeft,
209
209
  onBlockLocked: t.collaboration.onBlockLocked,
210
210
  onBlockUnlocked: t.collaboration.onBlockUnlocked
211
- }), ee(() => x.lockedBlocks.value, (e) => {
211
+ }), O(() => x.lockedBlocks.value, (e) => {
212
212
  v.value = e;
213
- }, { immediate: !0 }), se(y, x));
213
+ }, { immediate: !0 }), X(y, x));
214
214
  let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = k({
215
215
  editor: y,
216
216
  config: {
@@ -258,32 +258,32 @@ function ze(e) {
258
258
  onError: t.onError
259
259
  });
260
260
  m = T;
261
- let E = Fe(), D = V(t.ai), A = Le({
261
+ let E = Fe(), D = re(t.ai), A = Le({
262
262
  planConfigInstance: _,
263
263
  aiConfig: D,
264
264
  editor: y
265
- }), M = Re({
265
+ }), j = Re({
266
266
  onRequestMedia: t.onRequestMedia,
267
267
  mediaLibraryOpen: E.mediaLibraryOpen,
268
268
  mediaLibraryAccept: E.mediaLibraryAccept
269
269
  });
270
- re({
270
+ G({
271
271
  onBlockMove: y.moveBlock,
272
272
  onBlockAdd: y.addBlock
273
273
  });
274
- let P = me({
274
+ let M = ge({
275
275
  authManager: g,
276
276
  getFontsConfig: () => t.fonts,
277
277
  canUseCustomFonts: () => _.hasFeature("custom_fonts")
278
- }), F = U({
278
+ }), N = ae({
279
279
  authManager: g,
280
280
  getTemplateId: () => y.state.template?.id ?? null,
281
281
  save: () => y.save(),
282
- exportHtml: (e) => P.exportHtml(e),
282
+ exportHtml: (e) => M.exportHtml(e),
283
283
  onError: t.onError,
284
284
  isAuthReady: l,
285
285
  onBeforeTestEmail: t.onBeforeTestEmail
286
- }), I = he({
286
+ }), F = _e({
287
287
  authManager: g,
288
288
  getTemplateId: () => y.state.template?.id ?? null,
289
289
  getSocketId: () => b.getSocketId(),
@@ -292,56 +292,56 @@ function ze(e) {
292
292
  isAuthReady: l,
293
293
  hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
294
294
  });
295
- B({
296
- comments: I,
295
+ K({
296
+ comments: F,
297
297
  channel: b.channel
298
298
  });
299
- let L = ue({
299
+ let I = fe({
300
300
  authManager: g,
301
301
  onError: t.onError
302
- }), R = c(!1), z = c(null), H = c(!1), W = ve({
302
+ }), L = c(!1), z = c(null), B = c(!1), V = be({
303
303
  authManager: g,
304
304
  getTemplateId: () => y.state.template?.id ?? null
305
305
  });
306
- function G(e) {
306
+ function H(e) {
307
307
  E.commentsOpen.value = !0, queueMicrotask(() => {
308
308
  o()?.filterByBlock(e);
309
309
  });
310
310
  }
311
- a(O, M.handleRequestMedia), a(be, g), a(N, D), a(ie, I), a(pe, L), a(le, W), a(te, {
311
+ a(te, j.handleRequestMedia), a(ne, g), a(R, D), a(U, F), a(oe, I), a(he, V), a(W, {
312
312
  plan: _,
313
313
  ai: D,
314
314
  comments: {
315
- getBlockCount: (e) => I.commentCountByBlock.value.get(e) ?? 0,
316
- openForBlock: G
315
+ getBlockCount: (e) => F.commentCountByBlock.value.get(e) ?? 0,
316
+ openForBlock: H
317
317
  },
318
318
  savedModules: {
319
319
  openSaveDialog: (e) => {
320
- z.value = e ?? null, R.value = !0;
320
+ z.value = e ?? null, L.value = !0;
321
321
  },
322
322
  openBrowser: () => {
323
- H.value = !0;
323
+ B.value = !0;
324
324
  },
325
- moduleCount: f(() => L.modules.value.length)
325
+ moduleCount: f(() => I.modules.value.length)
326
326
  }
327
327
  });
328
- function K(e) {
328
+ function q(e) {
329
329
  _.hasFeature("theme_customization") && (C.themeOverrides.value = e);
330
330
  }
331
- function q(e) {
331
+ function J(e) {
332
332
  y.setUiTheme(e);
333
333
  }
334
- async function J() {
334
+ async function Z() {
335
335
  s.value = !0, u.value = null;
336
336
  try {
337
337
  if (await g.initialize(), d) return;
338
338
  l.value = !0;
339
- let e = await ae({ authManager: g });
339
+ let e = await ie({ authManager: g });
340
340
  if (d) return;
341
341
  if (!e.api.ok) throw Error("Health check failed: API is not reachable");
342
342
  if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
343
- if (e.websocket.ok || ne.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
344
- r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), t.modules !== !1 && _.hasFeature("saved_modules") && L.loadModules(), i("ready");
343
+ if (e.websocket.ok || ee.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
344
+ r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), t.modules !== !1 && _.hasFeature("saved_modules") && I.loadModules(), i("ready");
345
345
  } catch (e) {
346
346
  if (d) return;
347
347
  let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
@@ -350,7 +350,7 @@ function ze(e) {
350
350
  d || (s.value = !1);
351
351
  }
352
352
  }
353
- function Y() {
353
+ function se() {
354
354
  d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
355
355
  }
356
356
  return {
@@ -367,31 +367,31 @@ function ze(e) {
367
367
  core: C,
368
368
  aiConfig: D,
369
369
  featureFlags: A,
370
- mediaLib: M,
371
- exporter: P,
372
- testEmail: F,
373
- commentsInstance: I,
374
- savedModulesHeadless: L,
375
- scoringInstance: W,
370
+ mediaLib: j,
371
+ exporter: M,
372
+ testEmail: N,
373
+ commentsInstance: F,
374
+ savedModulesHeadless: I,
375
+ scoringInstance: V,
376
376
  panelState: E,
377
377
  snapshotPreview: T,
378
378
  collabWarning: w,
379
- showSaveModuleDialog: R,
380
- showModuleBrowserModal: H,
379
+ showSaveModuleDialog: L,
380
+ showModuleBrowserModal: B,
381
381
  saveModulePreSelectedBlockId: z,
382
382
  onSaveHook: p,
383
- initialize: J,
384
- destroy: Y,
385
- setThemeOverrides: K,
386
- setUiTheme: q,
387
- openCommentsForBlock: G
383
+ initialize: Z,
384
+ destroy: se,
385
+ setThemeOverrides: q,
386
+ setUiTheme: J,
387
+ openCommentsForBlock: H
388
388
  };
389
389
  }
390
390
  //#endregion
391
391
  //#region src/utils/preRenderCustomBlocks.ts
392
392
  async function Be(e, t) {
393
393
  let n = async (e) => {
394
- if (J(e)) {
394
+ if (A(e)) {
395
395
  let n = e;
396
396
  try {
397
397
  n.renderedHtml = await t.renderCustomBlock(n);
@@ -411,7 +411,7 @@ async function Be(e, t) {
411
411
  function Ve(e) {
412
412
  let { config: t, editor: n, websocket: r, planConfigInstance: i, snapshotPreview: a, core: o, exporter: s, featureFlags: c, isDestroyed: l } = e;
413
413
  function u() {
414
- return F(i.config.value.websocket);
414
+ return V(i.config.value.websocket);
415
415
  }
416
416
  async function d(e) {
417
417
  let i = await n.create(e);
@@ -497,7 +497,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
497
497
  class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
498
498
  onClick: a[2] ||= _((e) => n("cancel"), ["self"])
499
499
  }, [x("div", We, [
500
- x("header", Ge, [D(h(H), {
500
+ x("header", Ge, [D(h(N), {
501
501
  size: 18,
502
502
  "stroke-width": 2,
503
503
  class: "tpl:text-[var(--tpl-warning)]"
@@ -564,7 +564,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
564
564
  },
565
565
  emits: ["save"],
566
566
  setup(e) {
567
- let t = u(() => import("./CollaboratorBar-DFqsaNX0.js")), n = u(() => import("./features-mO5NzwnN.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-BuSO0dXP.js")), { t: a, format: o } = Q();
567
+ let t = u(() => import("./CollaboratorBar-Dn5gXNDt.js")), n = u(() => import("./features-DxWz_Enw.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-4NhCFeTh.js")), { t: a, format: o } = Q();
568
568
  return (c, l) => (i(), p("header", $e, [
569
569
  x("div", et, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", tt, d(h(o)(h(a).header.templatesUsed, {
570
570
  used: e.featureFlags.templateCount.value,
@@ -609,10 +609,10 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
609
609
  "aria-live": "assertive",
610
610
  class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
611
611
  "data-tooltip": e.featureFlags.saveErrorMessage.value
612
- }, [D(h(P), {
612
+ }, [D(h(j), {
613
613
  size: 12,
614
614
  "stroke-width": 2.5
615
- }), T(" " + d(h(a).header.saveFailed), 1)], 8, it)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", at, [D(h(Y), {
615
+ }), T(" " + d(h(a).header.saveFailed), 1)], 8, it)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", at, [D(h(F), {
616
616
  size: 12,
617
617
  "stroke-width": 2.5
618
618
  }), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", ot, [l[4] ||= x("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), T(" " + d(h(a).header.unsaved), 1)])) : m("", !0),
@@ -628,7 +628,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
628
628
  }),
629
629
  onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
630
630
  }, [
631
- D(h(ge), {
631
+ D(h(se), {
632
632
  size: 16,
633
633
  "stroke-width": 2
634
634
  }),
@@ -643,7 +643,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
643
643
  "aria-expanded": e.panelState.aiMenuOpen.value,
644
644
  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"]),
645
645
  onClick: l[1] ||= _((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
646
- }, [D(h(W), {
646
+ }, [D(h(B), {
647
647
  size: 16,
648
648
  "stroke-width": 2,
649
649
  class: "tpl-ai-btn-icon"
@@ -671,12 +671,12 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
671
671
  },
672
672
  disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
673
673
  onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
674
- }, [e.testEmail.isSending.value ? (i(), v(h(ye), {
674
+ }, [e.testEmail.isSending.value ? (i(), v(h(ce), {
675
675
  key: 1,
676
676
  class: "tpl-spinner",
677
677
  size: 16,
678
678
  "stroke-width": 2
679
- })) : (i(), v(h(ce), {
679
+ })) : (i(), v(h(q), {
680
680
  key: 0,
681
681
  size: 16,
682
682
  "stroke-width": 2
@@ -690,12 +690,12 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
690
690
  },
691
691
  disabled: e.isSaveDisabled,
692
692
  onClick: l[3] ||= (e) => c.$emit("save")
693
- }, [e.isSaving ? (i(), v(h(ye), {
693
+ }, [e.isSaving ? (i(), v(h(ce), {
694
694
  key: 1,
695
695
  class: "tpl-spinner",
696
696
  size: 16,
697
697
  "stroke-width": 2
698
- })) : (i(), v(h(Se), {
698
+ })) : (i(), v(h(xe), {
699
699
  key: 0,
700
700
  size: 16,
701
701
  "stroke-width": 2
@@ -726,9 +726,9 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
726
726
  "module-insert"
727
727
  ],
728
728
  setup(e, { expose: t, emit: n }) {
729
- let r = u(() => import("./features-mO5NzwnN.js").then((e) => e.o)), a = u(() => import("./features-mO5NzwnN.js").then((e) => e.a)), o = u(() => import("./features-mO5NzwnN.js").then((e) => e.i)), s = u(() => import("./features-mO5NzwnN.js").then((e) => e.n)), l = u(() => import("./features-mO5NzwnN.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-CxdYMutK.js")), f = u(() => import("./ModuleBrowserModal-348wCgft.js")), g = u(async () => {
729
+ let r = u(() => import("./features-DxWz_Enw.js").then((e) => e.o)), a = u(() => import("./features-DxWz_Enw.js").then((e) => e.a)), o = u(() => import("./features-DxWz_Enw.js").then((e) => e.i)), s = u(() => import("./features-DxWz_Enw.js").then((e) => e.n)), l = u(() => import("./features-DxWz_Enw.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-CCX5U7VA.js")), f = u(() => import("./ModuleBrowserModal-DtCksAeW.js")), g = u(async () => {
730
730
  try {
731
- return (await import("./src-B_ZRmuit.js")).MediaLibraryModal;
731
+ return (await import("./src-DzvOWQ9S.js")).MediaLibraryModal;
732
732
  } catch {
733
733
  throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
734
734
  }
@@ -840,7 +840,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
840
840
  return "isNotFound" in e && !!e.isNotFound;
841
841
  }
842
842
  return (t, s) => e.visible && e.error ? (i(), p("div", yt, [
843
- x("div", bt, [D(h(P), {
843
+ x("div", bt, [D(h(j), {
844
844
  size: 32,
845
845
  "stroke-width": 1.5,
846
846
  class: "tpl:text-[var(--tpl-danger)]"
@@ -862,7 +862,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
862
862
  emits: ["cancel", "confirm"],
863
863
  setup(e, { emit: t }) {
864
864
  let n = t, { t: r } = Q();
865
- return (t, a) => e.visible ? (i(), p("div", Tt, [x("div", Et, [D(h(A), {
865
+ return (t, a) => e.visible ? (i(), p("div", Tt, [x("div", Et, [D(h(M), {
866
866
  size: 18,
867
867
  "stroke-width": 2,
868
868
  class: "tpl:text-[var(--tpl-primary)]"
@@ -889,10 +889,10 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
889
889
  __name: "CollabUndoToast",
890
890
  props: { visible: { type: Boolean } },
891
891
  setup(e) {
892
- let { t } = M();
892
+ let { t } = I();
893
893
  return (n, r) => e.visible ? (i(), p("div", kt, d(h(t).history.collabWarning), 1)) : m("", !0);
894
894
  }
895
- }), jt = ["data-tpl-theme"], Mt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Nt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Pt = ["aria-label"], Ft = /*#__PURE__*/ q(/* @__PURE__ */ E({
895
+ }), jt = ["data-tpl-theme"], Mt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Nt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Pt = ["aria-label"], Ft = /*#__PURE__*/ pe(/* @__PURE__ */ E({
896
896
  __name: "CloudEditor",
897
897
  props: {
898
898
  config: {},
@@ -913,37 +913,37 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
913
913
  getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null,
914
914
  editorRoot: l.shadowRoot,
915
915
  containerEl: _
916
- }), { isInitializing: E, isAuthReady: ee, initError: O, planConfigInstance: k, websocket: A, collaboration: j, isCollaborationEnabled: te, editor: M, core: N, featureFlags: P, mediaLib: ne, exporter: re, testEmail: F, commentsInstance: R, savedModulesHeadless: ie, panelState: B, snapshotPreview: V, collabWarning: ae, showSaveModuleDialog: H, showModuleBrowserModal: U, saveModulePreSelectedBlockId: W, setThemeOverrides: G, setUiTheme: oe } = w, { showNotice: K } = z(() => l.config.smallScreenNotice);
917
- async function se(e) {
916
+ }), { isInitializing: E, isAuthReady: O, initError: k, planConfigInstance: A, websocket: j, collaboration: M, isCollaborationEnabled: N, editor: P, core: F, featureFlags: I, mediaLib: R, exporter: ee, testEmail: B, commentsInstance: te, savedModulesHeadless: ne, panelState: V, snapshotPreview: H, collabWarning: U, showSaveModuleDialog: W, showModuleBrowserModal: G, saveModulePreSelectedBlockId: K, setThemeOverrides: re, setUiTheme: ie } = w, { showNotice: ae } = z(() => l.config.smallScreenNotice);
917
+ async function q(e) {
918
918
  try {
919
- await F.sendTestEmail(e), B.testEmailModalOpen.value = !1;
919
+ await B.sendTestEmail(e), V.testEmailModalOpen.value = !1;
920
920
  } catch {}
921
921
  }
922
- async function q() {
922
+ async function oe() {
923
923
  try {
924
- await V.confirmRestoreSnapshot();
924
+ await H.confirmRestoreSnapshot();
925
925
  } catch {}
926
926
  }
927
927
  function J(e, t) {
928
928
  for (let n = 0; n < e.content.length; n++) {
929
- let r = I(e.content[n]), i = t === void 0 ? void 0 : t + n;
930
- M.addBlock(r, void 0, void 0, i);
929
+ let r = ve(e.content[n]), i = t === void 0 ? void 0 : t + n;
930
+ P.addBlock(r, void 0, void 0, i);
931
931
  }
932
- U.value = !1;
932
+ G.value = !1;
933
933
  }
934
934
  let Y = Ve({
935
935
  config: l.config,
936
- editor: M,
937
- websocket: A,
938
- planConfigInstance: k,
939
- snapshotPreview: V,
940
- core: N,
941
- exporter: re,
942
- featureFlags: P,
936
+ editor: P,
937
+ websocket: j,
938
+ planConfigInstance: A,
939
+ snapshotPreview: H,
940
+ core: F,
941
+ exporter: ee,
942
+ featureFlags: I,
943
943
  isDestroyed: w.isDestroyed
944
944
  }), X = He({
945
- issues: N.templateLint ? N.templateLint.issues : c([]),
946
- planConfig: k.config
945
+ issues: F.templateLint ? F.templateLint.issues : c([]),
946
+ planConfig: A.config
947
947
  });
948
948
  async function Z() {
949
949
  await X.tryRunSave(() => Y.saveTemplate().catch((e) => l.config.onError?.(e)));
@@ -953,20 +953,20 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
953
953
  }), g(() => {
954
954
  w.destroy();
955
955
  }), r({
956
- getContent: () => M.content.value,
957
- setContent: (e) => M.setContent(e),
958
- setTheme: oe,
959
- setThemeOverrides: G,
956
+ getContent: () => P.content.value,
957
+ setContent: (e) => P.setContent(e),
958
+ setTheme: ie,
959
+ setThemeOverrides: re,
960
960
  create: Y.createTemplate,
961
961
  load: Y.loadTemplate,
962
962
  save: Y.saveTemplate,
963
- sendTestEmail: F.sendTestEmail
963
+ sendTestEmail: B.sendTestEmail
964
964
  }), (t, r) => (i(), p("div", {
965
965
  ref_key: "rootEl",
966
966
  ref: _,
967
- class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(M).state.darkMode }]),
968
- "data-tpl-theme": h(N).resolvedTheme.value,
969
- style: C(h(N).themeStyles.value)
967
+ class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(P).state.darkMode }]),
968
+ "data-tpl-theme": h(F).resolvedTheme.value,
969
+ style: C(h(F).themeStyles.value)
970
970
  }, [
971
971
  D(De),
972
972
  D(y, {
@@ -977,7 +977,7 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
977
977
  "leave-from-class": "tpl:opacity-100",
978
978
  "leave-to-class": "tpl:opacity-0"
979
979
  }, {
980
- default: s(() => [D(vt, { visible: h(E) || h(M).state.isLoading }, null, 8, ["visible"])]),
980
+ default: s(() => [D(vt, { visible: h(E) || h(P).state.isLoading }, null, 8, ["visible"])]),
981
981
  _: 1
982
982
  }),
983
983
  D(y, {
@@ -989,8 +989,8 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
989
989
  "leave-to-class": "tpl:opacity-0"
990
990
  }, {
991
991
  default: s(() => [D(wt, {
992
- error: h(O),
993
- visible: !!h(O) && !h(E),
992
+ error: h(k),
993
+ visible: !!h(k) && !h(E),
994
994
  onRetry: h(w).initialize
995
995
  }, null, 8, [
996
996
  "error",
@@ -1000,18 +1000,18 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1000
1000
  _: 1
1001
1001
  }),
1002
1002
  D(pt, {
1003
- editor: h(M),
1004
- core: h(N),
1005
- "feature-flags": h(P),
1006
- "panel-state": h(B),
1007
- "snapshot-preview": h(V),
1008
- "comments-instance": h(R),
1009
- "test-email": h(F),
1010
- websocket: h(A),
1011
- collaboration: h(j),
1012
- "is-collaboration-enabled": h(te),
1013
- "is-saving": h(M).state.isSaving || h(P).isSaveExporting.value,
1014
- "is-save-disabled": h(M).state.isSaving || h(P).isSaveExporting.value || !h(M).state.isDirty,
1003
+ editor: h(P),
1004
+ core: h(F),
1005
+ "feature-flags": h(I),
1006
+ "panel-state": h(V),
1007
+ "snapshot-preview": h(H),
1008
+ "comments-instance": h(te),
1009
+ "test-email": h(B),
1010
+ websocket: h(j),
1011
+ collaboration: h(M),
1012
+ "is-collaboration-enabled": h(N),
1013
+ "is-saving": h(P).state.isSaving || h(I).isSaveExporting.value,
1014
+ "is-save-disabled": h(P).state.isSaving || h(I).isSaveExporting.value || !h(P).state.isDirty,
1015
1015
  onSave: Z
1016
1016
  }, null, 8, [
1017
1017
  "editor",
@@ -1039,9 +1039,9 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1039
1039
  "onConfirm"
1040
1040
  ]),
1041
1041
  D(Ot, {
1042
- visible: h(V).isPreviewingSnapshot.value,
1043
- onCancel: h(V).cancelPreview,
1044
- onConfirm: q
1042
+ visible: h(H).isPreviewingSnapshot.value,
1043
+ onCancel: h(H).cancelPreview,
1044
+ onConfirm: oe
1045
1045
  }, null, 8, ["visible", "onCancel"]),
1046
1046
  D(y, {
1047
1047
  "enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
@@ -1051,18 +1051,18 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1051
1051
  "leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
1052
1052
  "leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
1053
1053
  }, {
1054
- default: s(() => [D(At, { visible: h(ae).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1054
+ default: s(() => [D(At, { visible: h(U).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1055
1055
  _: 1
1056
1056
  }),
1057
- n(D(we, null, null, 512), [[S, !h(M).state.previewMode]]),
1057
+ n(D(we, null, null, 512), [[S, !h(P).state.previewMode]]),
1058
1058
  x("div", {
1059
- class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(M).state.previewMode ? "tpl:left-0 tpl:right-0" : h(B).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(V).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1059
+ class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(P).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"]]),
1060
1060
  style: {
1061
1061
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1062
1062
  "background-color": "var(--tpl-canvas-bg)"
1063
1063
  }
1064
1064
  }, [x("div", Mt, [D(y, { name: "tpl-restore-btn" }, {
1065
- default: s(() => [h(N).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1065
+ default: s(() => [h(F).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1066
1066
  key: 0,
1067
1067
  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",
1068
1068
  style: {
@@ -1071,22 +1071,22 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1071
1071
  "border-color": "var(--tpl-warning)",
1072
1072
  "backdrop-filter": "blur(8px)"
1073
1073
  },
1074
- onClick: r[0] ||= (e) => h(N).conditionPreview.reset()
1075
- }, [D(h(xe), {
1074
+ onClick: r[0] ||= (e) => h(F).conditionPreview.reset()
1075
+ }, [D(h(Se), {
1076
1076
  size: 13,
1077
1077
  "stroke-width": 2
1078
- }), T(" " + d(h(N).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1078
+ }), T(" " + d(h(F).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1079
1079
  _: 1
1080
1080
  })]), x("main", Nt, [D(Ne, {
1081
- viewport: h(M).state.viewport,
1082
- content: h(M).content.value,
1083
- "selected-block-id": h(M).state.selectedBlockId,
1084
- "dark-mode": h(M).state.darkMode,
1085
- "preview-mode": h(M).state.previewMode,
1086
- "locked-blocks": h(j)?.lockedBlocks.value ?? void 0,
1087
- onSelectBlock: h(M).selectBlock,
1088
- onOpenAiChat: r[1] ||= (e) => h(B).aiChatOpen.value = !0,
1089
- onOpenDesignReference: r[2] ||= (e) => h(B).designReferenceOpen.value = !0
1081
+ viewport: h(P).state.viewport,
1082
+ content: h(P).content.value,
1083
+ "selected-block-id": h(P).state.selectedBlockId,
1084
+ "dark-mode": h(P).state.darkMode,
1085
+ "preview-mode": h(P).state.previewMode,
1086
+ "locked-blocks": h(M)?.lockedBlocks.value ?? void 0,
1087
+ onSelectBlock: h(P).selectBlock,
1088
+ onOpenAiChat: r[1] ||= (e) => h(V).aiChatOpen.value = !0,
1089
+ onOpenDesignReference: r[2] ||= (e) => h(V).designReferenceOpen.value = !0
1090
1090
  }, null, 8, [
1091
1091
  "viewport",
1092
1092
  "content",
@@ -1096,50 +1096,50 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1096
1096
  "locked-blocks",
1097
1097
  "onSelectBlock"
1098
1098
  ])])], 2),
1099
- e.config.branding !== !1 && !h(P).isWhiteLabeled.value ? (i(), v(Oe, {
1099
+ e.config.branding !== !1 && !h(I).isWhiteLabeled.value ? (i(), v(Oe, {
1100
1100
  key: 0,
1101
- "position-class": [h(M).state.previewMode ? "tpl:left-0 tpl:right-0" : h(B).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1101
+ "position-class": [h(P).state.previewMode ? "tpl:left-0 tpl:right-0" : h(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1102
1102
  }, null, 8, ["position-class"])) : m("", !0),
1103
1103
  x("div", {
1104
1104
  class: "tpl-sr-only",
1105
1105
  role: "status",
1106
1106
  "aria-live": "polite",
1107
1107
  "aria-atomic": "true",
1108
- "aria-label": h(N).t.landmarks.reorderAnnouncements
1109
- }, d(h(N).keyboardReorder.announcement.value), 9, Pt),
1108
+ "aria-label": h(F).t.landmarks.reorderAnnouncements
1109
+ }, d(h(F).keyboardReorder.announcement.value), 9, Pt),
1110
1110
  n(D(je, {
1111
- "selected-block": h(M).selectedBlock.value,
1112
- settings: h(M).content.value.settings,
1113
- "shifted-left": h(B).rightPanelOpen.value,
1114
- onUpdateBlock: r[3] ||= (e) => h(M).updateBlock(h(M).selectedBlock.value.id, e),
1115
- onDeleteBlock: r[4] ||= (e) => h(N).blockActions.deleteBlock(h(M).selectedBlock.value.id),
1116
- onDuplicateBlock: r[5] ||= (e) => h(N).blockActions.duplicateBlock(h(M).selectedBlock.value),
1117
- onUpdateSettings: h(M).updateSettings
1111
+ "selected-block": h(P).selectedBlock.value,
1112
+ settings: h(P).content.value.settings,
1113
+ "shifted-left": h(V).rightPanelOpen.value,
1114
+ onUpdateBlock: r[3] ||= (e) => h(P).updateBlock(h(P).selectedBlock.value.id, e),
1115
+ onDeleteBlock: r[4] ||= (e) => h(F).blockActions.deleteBlock(h(P).selectedBlock.value.id),
1116
+ onDuplicateBlock: r[5] ||= (e) => h(F).blockActions.duplicateBlock(h(P).selectedBlock.value),
1117
+ onUpdateSettings: h(P).updateSettings
1118
1118
  }, null, 8, [
1119
1119
  "selected-block",
1120
1120
  "settings",
1121
1121
  "shifted-left",
1122
1122
  "onUpdateSettings"
1123
- ]), [[S, !h(M).state.previewMode]]),
1124
- !h(E) && h(ee) ? (i(), v(mt, {
1123
+ ]), [[S, !h(P).state.previewMode]]),
1124
+ !h(E) && h(O) ? (i(), v(mt, {
1125
1125
  key: 1,
1126
1126
  ref_key: "cloudPanelsRef",
1127
1127
  ref: f,
1128
1128
  config: l.config,
1129
- editor: h(M),
1130
- core: h(N),
1131
- "panel-state": h(B),
1132
- "plan-config-instance": h(k),
1133
- "test-email": h(F),
1134
- "media-lib": h(ne),
1135
- "saved-modules-headless": h(ie),
1136
- "show-save-module-dialog": h(H),
1137
- "save-module-pre-selected-block-id": h(W),
1138
- "show-module-browser-modal": h(U),
1139
- "onUpdate:showSaveModuleDialog": r[6] ||= (e) => H.value = e,
1140
- "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => W.value = e,
1141
- "onUpdate:showModuleBrowserModal": r[8] ||= (e) => U.value = e,
1142
- onSendTestEmail: se,
1129
+ editor: h(P),
1130
+ core: h(F),
1131
+ "panel-state": h(V),
1132
+ "plan-config-instance": h(A),
1133
+ "test-email": h(B),
1134
+ "media-lib": h(R),
1135
+ "saved-modules-headless": h(ne),
1136
+ "show-save-module-dialog": h(W),
1137
+ "save-module-pre-selected-block-id": h(K),
1138
+ "show-module-browser-modal": h(G),
1139
+ "onUpdate:showSaveModuleDialog": r[6] ||= (e) => W.value = e,
1140
+ "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => K.value = e,
1141
+ "onUpdate:showModuleBrowserModal": r[8] ||= (e) => G.value = e,
1142
+ onSendTestEmail: q,
1143
1143
  onModuleInsert: J
1144
1144
  }, null, 8, [
1145
1145
  "config",
@@ -1155,15 +1155,15 @@ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1155
1155
  "show-module-browser-modal"
1156
1156
  ])) : m("", !0),
1157
1157
  x("div", {
1158
- ref: (e) => h(N).popoverRoot.value = e,
1158
+ ref: (e) => h(F).popoverRoot.value = e,
1159
1159
  class: "tpl-popover-root"
1160
1160
  }, null, 512),
1161
1161
  D(Me),
1162
- h(K) ? (i(), v(ke, { key: 2 })) : m("", !0)
1162
+ h(ae) ? (i(), v(ke, { key: 2 })) : m("", !0)
1163
1163
  ], 14, jt));
1164
1164
  }
1165
1165
  }), [["__scopeId", "data-v-df1ba3f4"]]);
1166
1166
  //#endregion
1167
1167
  export { Ft as default };
1168
1168
 
1169
- //# sourceMappingURL=CloudEditor-hxoqsTsq.js.map
1169
+ //# sourceMappingURL=CloudEditor-OO8hWAVp.js.map