@templatical/editor 0.16.4 → 0.17.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 (120) hide show
  1. package/dist/{AiChatSidebar-CYAbVB2G.js → AiChatSidebar-LxCHMdcj.js} +1 -1
  2. package/dist/{AiFeatureMenu-BPCkrHAS.js → AiFeatureMenu-zwSmx9ZW.js} +3 -3
  3. package/dist/{BlockIssueBadge-BLytBabN.js → BlockIssueBadge-BQ1yB1me.js} +2 -2
  4. package/dist/{CloudEditor-v8ARYaFW.js → CloudEditor-5ahgKRX8.js} +11 -10
  5. package/dist/{CollaboratorBar-BQzKZ2zo.js → CollaboratorBar-6PtX-1AS.js} +2 -2
  6. package/dist/{ColorPicker-Cab6U2sH.js → ColorPicker-DfzDyNKe.js} +57 -58
  7. package/dist/{CommentsSidebar-C_XLBbo3.js → CommentsSidebar-Cl93TN96.js} +3 -3
  8. package/dist/{CountdownBlock-173fiO5Z.js → CountdownBlock-DbXfzwae.js} +1 -1
  9. package/dist/{CountdownToolbar-q3umZ7TZ.js → CountdownToolbar-BqaMWRyB.js} +3 -3
  10. package/dist/{DesignReferenceSidebar-Bh9uAZ4B.js → DesignReferenceSidebar-jVrdS8wW.js} +2 -2
  11. package/dist/{IssuesPanel-DltSuU6H.js → IssuesPanel-Bq3yXg6M.js} +2 -2
  12. package/dist/{MergeTagSuggestion-DrT3LiZ4.js → MergeTagSuggestion-jIpT_jmz.js} +7 -5
  13. package/dist/{ModuleBrowserModal-CzzChPmN.js → ModuleBrowserModal-B5IH3-1I.js} +7 -7
  14. package/dist/{ModulePreviewCanvas-C0Q2n3FL.js → ModulePreviewCanvas-CYOLWoZ9.js} +2 -2
  15. package/dist/{NumberWithSuffix-Bhm2ByHs.js → NumberWithSuffix-9FG7mNnn.js} +1 -1
  16. package/dist/{ParagraphEditor-BhsBi8p8.js → ParagraphEditor-duWYA6Vv.js} +38 -39
  17. package/dist/{RichTextEditorContent-ef0fdj6e.js → RichTextEditorContent-DCzmVeyb.js} +13 -13
  18. package/dist/{SaveModuleDialog-BNN3dcxD.js → SaveModuleDialog-BPUly5h3.js} +6 -6
  19. package/dist/{SnapshotHistory-tWvgMCe6.js → SnapshotHistory-CmwU3nlN.js} +4 -4
  20. package/dist/{TemplateScoringPanel-ZhObHWeb.js → TemplateScoringPanel-CMrfa9Rd.js} +3 -3
  21. package/dist/{TestEmailModal-EdwEcsrD.js → TestEmailModal-zfomMz9i.js} +3 -3
  22. package/dist/{TitleEditor-DdvRepBq.js → TitleEditor-v0gtezZE.js} +18 -18
  23. package/dist/{TplModal-Niu4Y96-.js → TplModal-eGFG7k-y.js} +4 -4
  24. package/dist/{blockTypeIcons-DHcYPMB8.js → blockTypeIcons-Dd0w4T0I.js} +1 -1
  25. package/dist/bundle-stats.json +7 -7
  26. package/dist/{ca-DI1ViqMa.js → ca-CSl--oWR.js} +1 -1
  27. package/dist/cdn/chunks/{AiFeatureMenu-AoUwsqor.js → AiFeatureMenu-CtXsam7G.js} +6 -6
  28. package/dist/cdn/chunks/{AiFeatureMenu-AoUwsqor.js.map → AiFeatureMenu-CtXsam7G.js.map} +1 -1
  29. package/dist/cdn/chunks/{BlockIssueBadge-DZU3CfEN.js → BlockIssueBadge-DR7cpDfQ.js} +4 -4
  30. package/dist/cdn/chunks/{BlockIssueBadge-DZU3CfEN.js.map → BlockIssueBadge-DR7cpDfQ.js.map} +1 -1
  31. package/dist/cdn/chunks/{CloudEditor-BrZLF_m1.js → CloudEditor-YC5y3AwC.js} +131 -130
  32. package/dist/cdn/chunks/CloudEditor-YC5y3AwC.js.map +1 -0
  33. package/dist/cdn/chunks/{CollaboratorBar-BAC56ez6.js → CollaboratorBar-BOD2j8Kl.js} +3 -3
  34. package/dist/cdn/chunks/{CollaboratorBar-BAC56ez6.js.map → CollaboratorBar-BOD2j8Kl.js.map} +1 -1
  35. package/dist/cdn/chunks/{ColorPicker-DLEoT419.js → ColorPicker-CPMWLHpa.js} +144 -144
  36. package/dist/cdn/chunks/ColorPicker-CPMWLHpa.js.map +1 -0
  37. package/dist/cdn/chunks/{CountdownBlock-BOF9aTXF.js → CountdownBlock-BmGqb7Zi.js} +4 -4
  38. package/dist/cdn/chunks/{CountdownBlock-BOF9aTXF.js.map → CountdownBlock-BmGqb7Zi.js.map} +1 -1
  39. package/dist/cdn/chunks/{CountdownToolbar-C9bQ5k4E.js → CountdownToolbar-BBwsdGbV.js} +4 -4
  40. package/dist/cdn/chunks/{CountdownToolbar-C9bQ5k4E.js.map → CountdownToolbar-BBwsdGbV.js.map} +1 -1
  41. package/dist/cdn/chunks/{IssuesPanel-CHwYahKK.js → IssuesPanel-G0z-j3JS.js} +7 -7
  42. package/dist/cdn/chunks/{IssuesPanel-CHwYahKK.js.map → IssuesPanel-G0z-j3JS.js.map} +1 -1
  43. package/dist/cdn/chunks/{MergeTagSuggestion-jesxS7An.js → MergeTagSuggestion-rpZ6Ol-i.js} +8 -6
  44. package/dist/cdn/chunks/MergeTagSuggestion-rpZ6Ol-i.js.map +1 -0
  45. package/dist/cdn/chunks/{ModuleBrowserModal-iSXXpAUk.js → ModuleBrowserModal-DiLTY0ec.js} +8 -8
  46. package/dist/cdn/chunks/{ModuleBrowserModal-iSXXpAUk.js.map → ModuleBrowserModal-DiLTY0ec.js.map} +1 -1
  47. package/dist/cdn/chunks/{ModulePreviewCanvas-DIy0MZj2.js → ModulePreviewCanvas-CdV5mEQ6.js} +32 -32
  48. package/dist/cdn/chunks/{ModulePreviewCanvas-DIy0MZj2.js.map → ModulePreviewCanvas-CdV5mEQ6.js.map} +1 -1
  49. package/dist/cdn/chunks/{NumberWithSuffix-vPdOG2lO.js → NumberWithSuffix-lqQlf0Uk.js} +2 -2
  50. package/dist/cdn/chunks/{NumberWithSuffix-vPdOG2lO.js.map → NumberWithSuffix-lqQlf0Uk.js.map} +1 -1
  51. package/dist/cdn/chunks/{ParagraphEditor-D7znI_X1.js → ParagraphEditor-BYoZfURd.js} +75 -75
  52. package/dist/cdn/chunks/ParagraphEditor-BYoZfURd.js.map +1 -0
  53. package/dist/cdn/chunks/{RichTextEditorContent-DVwGHbO6.js → RichTextEditorContent-BnPRnXxy.js} +6 -6
  54. package/dist/cdn/chunks/{RichTextEditorContent-DVwGHbO6.js.map → RichTextEditorContent-BnPRnXxy.js.map} +1 -1
  55. package/dist/cdn/chunks/{SaveModuleDialog-D2_qPtE9.js → SaveModuleDialog-C9hUeWyG.js} +20 -20
  56. package/dist/cdn/chunks/{SaveModuleDialog-D2_qPtE9.js.map → SaveModuleDialog-C9hUeWyG.js.map} +1 -1
  57. package/dist/cdn/chunks/{TitleEditor-CKjZ6Cgp.js → TitleEditor-wFvnU3Jr.js} +9 -9
  58. package/dist/cdn/chunks/TitleEditor-wFvnU3Jr.js.map +1 -0
  59. package/dist/cdn/chunks/{blockTypeIcons-BKecgdgr.js → blockTypeIcons-DNMvDz5B.js} +7 -7
  60. package/dist/cdn/chunks/{blockTypeIcons-BKecgdgr.js.map → blockTypeIcons-DNMvDz5B.js.map} +1 -1
  61. package/dist/cdn/chunks/{ca-DI1ViqMa.js → ca-CSl--oWR.js} +2 -2
  62. package/dist/cdn/chunks/ca-CSl--oWR.js.map +1 -0
  63. package/dist/cdn/chunks/{de-q9lTCMre.js → de-ZaffrKDP.js} +2 -2
  64. package/dist/cdn/chunks/de-ZaffrKDP.js.map +1 -0
  65. package/dist/cdn/chunks/{en-CR4LItrX.js → en-CHuXeJDt.js} +2 -2
  66. package/dist/cdn/chunks/en-CHuXeJDt.js.map +1 -0
  67. package/dist/cdn/chunks/{es-CEt-lrGd.js → es-CaC8VQjO.js} +2 -2
  68. package/dist/cdn/chunks/es-CaC8VQjO.js.map +1 -0
  69. package/dist/cdn/chunks/{extensions-OZTN_skA.js → extensions-DxcxIlwT.js} +29 -29
  70. package/dist/cdn/chunks/{extensions-OZTN_skA.js.map → extensions-DxcxIlwT.js.map} +1 -1
  71. package/dist/cdn/chunks/{features-Bo7H8WNI.js → features-B3qgDBHf.js} +727 -677
  72. package/dist/cdn/chunks/features-B3qgDBHf.js.map +1 -0
  73. package/dist/cdn/chunks/{icons-BrNSrnyT.js → icons-kiMqh99T.js} +2 -2
  74. package/dist/cdn/chunks/{icons-BrNSrnyT.js.map → icons-kiMqh99T.js.map} +1 -1
  75. package/dist/cdn/chunks/{media-library-Cec5DMR3.js → media-library-C5ogiZ4f.js} +451 -451
  76. package/dist/cdn/chunks/{media-library-Cec5DMR3.js.map → media-library-C5ogiZ4f.js.map} +1 -1
  77. package/dist/cdn/chunks/{pt-BR-DvBHY0AA.js → pt-BR-C74zfEWH.js} +2 -2
  78. package/dist/cdn/chunks/pt-BR-C74zfEWH.js.map +1 -0
  79. package/dist/cdn/chunks/{quality-Dd2iYgRf.js → quality-BftAn_AJ.js} +512 -512
  80. package/dist/cdn/chunks/{quality-Dd2iYgRf.js.map → quality-BftAn_AJ.js.map} +1 -1
  81. package/dist/cdn/chunks/{renderer-Br-qXdnQ.js → renderer-Cdlo4MVX.js} +16 -16
  82. package/dist/cdn/chunks/{renderer-Br-qXdnQ.js.map → renderer-Cdlo4MVX.js.map} +1 -1
  83. package/dist/cdn/chunks/{src-BH8PABpF.js → src-GBA8oUL2.js} +6 -6
  84. package/dist/cdn/chunks/{src-BH8PABpF.js.map → src-GBA8oUL2.js.map} +1 -1
  85. package/dist/cdn/chunks/{styles-nqo5BynI.js → styles-B6rdq9JB.js} +219 -219
  86. package/dist/cdn/chunks/styles-B6rdq9JB.js.map +1 -0
  87. package/dist/cdn/editor.css +1 -1
  88. package/dist/cdn/editor.js +53 -52
  89. package/dist/cdn/editor.js.map +1 -1
  90. package/dist/{de-q9lTCMre.js → de-ZaffrKDP.js} +1 -1
  91. package/dist/{en-CR4LItrX.js → en-CHuXeJDt.js} +1 -1
  92. package/dist/{es-CEt-lrGd.js → es-CaC8VQjO.js} +1 -1
  93. package/dist/{extensions-B2poxDIo.js → extensions-B4lu0KkE.js} +3 -3
  94. package/dist/index.d.ts +56 -0
  95. package/dist/keys-WVNarXg8.js +10 -0
  96. package/dist/{pt-BR-DvBHY0AA.js → pt-BR-C74zfEWH.js} +1 -1
  97. package/dist/style.css +1 -1
  98. package/dist/{styles-DN4J7w-C.js → styles-mBSbDYeX.js} +98 -98
  99. package/dist/templatical-editor.js +11 -10
  100. package/dist/{useCloudI18n-WbfVWq5k.js → useCloudI18n-CIKI0hCd.js} +1 -1
  101. package/dist/{useEditorCore-DBq2689h.js → useEditorCore-CaaHPKjm.js} +715 -684
  102. package/dist/{useI18n-eR1yVW0v.js → useI18n-0EU_JVe7.js} +1 -1
  103. package/dist/{useMergeTag-C3GfSktg.js → useMergeTag-C7v6MVah.js} +2 -2
  104. package/dist/usePopoverPosition-BDqqnMeo.js +281 -0
  105. package/package.json +7 -7
  106. package/dist/cdn/chunks/CloudEditor-BrZLF_m1.js.map +0 -1
  107. package/dist/cdn/chunks/ColorPicker-DLEoT419.js.map +0 -1
  108. package/dist/cdn/chunks/MergeTagSuggestion-jesxS7An.js.map +0 -1
  109. package/dist/cdn/chunks/ParagraphEditor-D7znI_X1.js.map +0 -1
  110. package/dist/cdn/chunks/TitleEditor-CKjZ6Cgp.js.map +0 -1
  111. package/dist/cdn/chunks/ca-DI1ViqMa.js.map +0 -1
  112. package/dist/cdn/chunks/de-q9lTCMre.js.map +0 -1
  113. package/dist/cdn/chunks/en-CR4LItrX.js.map +0 -1
  114. package/dist/cdn/chunks/es-CEt-lrGd.js.map +0 -1
  115. package/dist/cdn/chunks/features-Bo7H8WNI.js.map +0 -1
  116. package/dist/cdn/chunks/pt-BR-DvBHY0AA.js.map +0 -1
  117. package/dist/cdn/chunks/styles-nqo5BynI.js.map +0 -1
  118. package/dist/color-DhoxCSMv.js +0 -259
  119. package/dist/keys-BbDgCU6K.js +0 -10
  120. package/dist/usePopoverRoot-C1j0D7cc.js +0 -8
@@ -1,8 +1,8 @@
1
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, Bt as A, E as j, Gt as M, Ht as te, Kt as N, Lt as P, Mn as F, Pt as I, Rn as L, S as R, St as z, Y as B, Zn as V, _ as ne, _t as H, an as U, at as W, b as re, c as G, d as K, dt as q, f as J, fn as Y, g as ie, h as ae, jt as X, l as oe, m as Z, mt as Q, on as $, p as se, qt as ce, rn as le, s as ue, st as de, tt as fe, u as pe, v as me, x as he, xn as ge, xt as _e, y as ve, zt as ye } from "./features-Bo7H8WNI.js";
3
- import { S as be, x as xe } from "./icons-BrNSrnyT.js";
4
- import { a as Se, c as Ce, d as we, f 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-nqo5BynI.js";
5
- import { d as Pe } from "./ColorPicker-DLEoT419.js";
2
+ import { Bt as k, Ct as A, E as j, Ft as M, Jt as N, Kt as ee, Mt as P, Nn as F, Qn as I, Rt as L, S as R, Sn as z, St as B, Ut as te, Vt as ne, X as V, _ as H, b as U, c as re, ct as W, d as G, f as K, ft as q, g as ie, h as ae, ht as J, in as oe, jt as Y, k as X, l as Z, m as Q, nt as se, on as ce, ot as $, p as le, pn as ue, qt as de, s as fe, sn as pe, u as me, v as he, vt as ge, x as _e, y as ve, zn as ye } from "./features-B3qgDBHf.js";
3
+ import { S as be, x as xe } from "./icons-kiMqh99T.js";
4
+ import { a as Se, c as Ce, d as we, f 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-B6rdq9JB.js";
5
+ import { d as Pe } from "./ColorPicker-CPMWLHpa.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 = J({
14
+ i.state.template?.id && !u.value && (u.value = K({
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 Y(u, () => {
89
+ return ue(u, () => {
90
90
  l.value = !1;
91
91
  }), {
92
92
  activePanel: e,
@@ -109,9 +109,9 @@ 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 } = ge(() => {
112
+ let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = z(() => {
113
113
  a.value = !1;
114
- }, V, { immediate: !1 });
114
+ }, I, { 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 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 } = ge(() => {
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 {
@@ -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-BH8PABpF.js");
178
+ let { MediaApiClient: t } = await import("./src-GBA8oUL2.js");
179
179
  return l(await new t(a).uploadMedia(e));
180
180
  } catch (e) {
181
181
  return s?.(e), null;
@@ -207,20 +207,20 @@ function Be(e) {
207
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({
208
208
  ...t.auth,
209
209
  onError: t.onError
210
- }), _ = oe({
210
+ }), _ = Z({
211
211
  authManager: g,
212
212
  onError: t.onError
213
- }), v = c(/* @__PURE__ */ new Map()), y = he({
213
+ }), v = c(/* @__PURE__ */ new Map()), y = _e({
214
214
  authManager: g,
215
215
  defaultFontFamily: t.fonts?.defaultFont,
216
216
  templateDefaults: t.templateDefaults,
217
217
  onError: t.onError,
218
218
  lockedBlocks: v
219
- }), b = Z({
219
+ }), b = Q({
220
220
  authManager: g,
221
221
  onError: t.onError
222
222
  });
223
- t.mcp?.enabled && ue({
223
+ t.mcp?.enabled && fe({
224
224
  editor: y,
225
225
  channel: b.channel,
226
226
  onOperation: t.mcp.onOperation
@@ -238,7 +238,7 @@ function Be(e) {
238
238
  }), O(() => x.lockedBlocks.value, (e) => {
239
239
  v.value = e;
240
240
  }, { immediate: !0 }), ae(y, x));
241
- let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = ee({
241
+ let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = X({
242
242
  editor: y,
243
243
  config: {
244
244
  uiTheme: t.uiTheme,
@@ -246,6 +246,7 @@ function Be(e) {
246
246
  blockDefaults: t.blockDefaults,
247
247
  customBlocks: [],
248
248
  paletteBlocks: t.paletteBlocks,
249
+ htmlBlockPreview: t.htmlBlockPreview,
249
250
  mergeTags: t.mergeTags,
250
251
  logicTags: t.logicTags,
251
252
  displayConditions: t.displayConditions,
@@ -286,11 +287,11 @@ function Be(e) {
286
287
  onError: t.onError
287
288
  });
288
289
  m = T;
289
- let E = Ie(), D = re(t.ai), k = Re({
290
+ let E = Ie(), D = U(t.ai), k = Re({
290
291
  planConfigInstance: _,
291
292
  aiConfig: D,
292
293
  editor: y
293
- }), N = ze({
294
+ }), A = ze({
294
295
  onRequestMedia: t.onRequestMedia,
295
296
  mediaLibraryOpen: E.mediaLibraryOpen,
296
297
  mediaLibraryAccept: E.mediaLibraryAccept,
@@ -298,23 +299,23 @@ function Be(e) {
298
299
  getMediaConfig: () => _.config.value?.media ?? null,
299
300
  onError: t.onError
300
301
  });
301
- fe({
302
+ se({
302
303
  onBlockMove: y.moveBlock,
303
304
  onBlockAdd: y.addBlock
304
305
  });
305
- let F = pe({
306
+ let M = me({
306
307
  authManager: g,
307
308
  getFontsConfig: () => t.fonts,
308
309
  canUseCustomFonts: () => _.hasFeature("custom_fonts")
309
- }), I = K({
310
+ }), P = G({
310
311
  authManager: g,
311
312
  getTemplateId: () => y.state.template?.id ?? null,
312
313
  save: () => y.save(),
313
- exportHtml: (e) => F.exportHtml(e),
314
+ exportHtml: (e) => M.exportHtml(e),
314
315
  onError: t.onError,
315
316
  isAuthReady: l,
316
317
  onBeforeTestEmail: t.onBeforeTestEmail
317
- }), L = me({
318
+ }), F = he({
318
319
  authManager: g,
319
320
  getTemplateId: () => y.state.template?.id ?? null,
320
321
  getSocketId: () => b.getSocketId(),
@@ -323,14 +324,14 @@ function Be(e) {
323
324
  isAuthReady: l,
324
325
  hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
325
326
  });
326
- ne({
327
- comments: L,
327
+ H({
328
+ comments: F,
328
329
  channel: b.channel
329
330
  });
330
- let R = se({
331
+ let I = le({
331
332
  authManager: g,
332
333
  onError: t.onError
333
- }), z = c(!1), B = c(null), V = c(!1), H = ve({
334
+ }), R = c(!1), z = c(null), B = c(!1), V = ve({
334
335
  authManager: g,
335
336
  getTemplateId: () => y.state.template?.id ?? null
336
337
  });
@@ -339,40 +340,40 @@ function Be(e) {
339
340
  o()?.filterByBlock(e);
340
341
  });
341
342
  }
342
- a(le, N.handleRequestMedia), a(te, g), a(A, D), a(ce, L), a(U, R), a($, H), a(M, {
343
+ a(oe, A.handleRequestMedia), a(te, g), a(ne, D), a(N, F), a(ce, I), a(pe, V), a(ee, {
343
344
  plan: _,
344
345
  ai: D,
345
346
  comments: {
346
- getBlockCount: (e) => L.commentCountByBlock.value.get(e) ?? 0,
347
+ getBlockCount: (e) => F.commentCountByBlock.value.get(e) ?? 0,
347
348
  openForBlock: W
348
349
  },
349
350
  savedModules: {
350
351
  openSaveDialog: (e) => {
351
- B.value = e ?? null, z.value = !0;
352
+ z.value = e ?? null, R.value = !0;
352
353
  },
353
354
  openBrowser: () => {
354
- V.value = !0;
355
+ B.value = !0;
355
356
  },
356
- moduleCount: f(() => R.modules.value.length)
357
+ moduleCount: f(() => I.modules.value.length)
357
358
  }
358
359
  });
359
- function q(e) {
360
+ function K(e) {
360
361
  _.hasFeature("theme_customization") && (C.themeOverrides.value = e);
361
362
  }
362
- function J(e) {
363
+ function q(e) {
363
364
  y.setUiTheme(e);
364
365
  }
365
- async function Y() {
366
+ async function J() {
366
367
  s.value = !0, u.value = null;
367
368
  try {
368
369
  if (await g.initialize(), d) return;
369
370
  l.value = !0;
370
- let e = await G({ authManager: g });
371
+ let e = await re({ authManager: g });
371
372
  if (d) return;
372
373
  if (!e.api.ok) throw Error("Health check failed: API is not reachable");
373
374
  if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
374
- if (e.websocket.ok || P.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
375
- 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") && R.loadModules(), i("ready");
375
+ if (e.websocket.ok || L.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
376
+ 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");
376
377
  } catch (e) {
377
378
  if (d) return;
378
379
  let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
@@ -381,7 +382,7 @@ function Be(e) {
381
382
  d || (s.value = !1);
382
383
  }
383
384
  }
384
- function X() {
385
+ function Y() {
385
386
  d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
386
387
  }
387
388
  return {
@@ -398,23 +399,23 @@ function Be(e) {
398
399
  core: C,
399
400
  aiConfig: D,
400
401
  featureFlags: k,
401
- mediaLib: N,
402
- exporter: F,
403
- testEmail: I,
404
- commentsInstance: L,
405
- savedModulesHeadless: R,
406
- scoringInstance: H,
402
+ mediaLib: A,
403
+ exporter: M,
404
+ testEmail: P,
405
+ commentsInstance: F,
406
+ savedModulesHeadless: I,
407
+ scoringInstance: V,
407
408
  panelState: E,
408
409
  snapshotPreview: T,
409
410
  collabWarning: w,
410
- showSaveModuleDialog: z,
411
- showModuleBrowserModal: V,
412
- saveModulePreSelectedBlockId: B,
411
+ showSaveModuleDialog: R,
412
+ showModuleBrowserModal: B,
413
+ saveModulePreSelectedBlockId: z,
413
414
  onSaveHook: p,
414
- initialize: Y,
415
- destroy: X,
416
- setThemeOverrides: q,
417
- setUiTheme: J,
415
+ initialize: J,
416
+ destroy: Y,
417
+ setThemeOverrides: K,
418
+ setUiTheme: q,
418
419
  openCommentsForBlock: W
419
420
  };
420
421
  }
@@ -422,7 +423,7 @@ function Be(e) {
422
423
  //#region src/utils/preRenderCustomBlocks.ts
423
424
  async function Ve(e, t) {
424
425
  let n = async (e) => {
425
- if (L(e)) {
426
+ if (ye(e)) {
426
427
  let n = e;
427
428
  try {
428
429
  n.renderedHtml = await t.renderCustomBlock(n);
@@ -513,7 +514,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
513
514
  },
514
515
  emits: ["cancel", "confirm"],
515
516
  setup(e, { emit: t }) {
516
- let n = t, { t: r } = W();
517
+ let n = t, { t: r } = $();
517
518
  return (t, a) => (i(), v(y, {
518
519
  "enter-active-class": "tpl:transition-opacity tpl:duration-150",
519
520
  "leave-active-class": "tpl:transition-opacity tpl:duration-150",
@@ -595,7 +596,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
595
596
  },
596
597
  emits: ["save"],
597
598
  setup(e) {
598
- let t = u(() => import("./CollaboratorBar-BAC56ez6.js")), n = u(() => import("./features-Bo7H8WNI.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-AoUwsqor.js")), { t: a, format: o } = W();
599
+ let t = u(() => import("./CollaboratorBar-BOD2j8Kl.js")), n = u(() => import("./features-B3qgDBHf.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-CtXsam7G.js")), { t: a, format: o } = $();
599
600
  return (c, l) => (i(), p("header", et, [
600
601
  x("div", tt, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", nt, d(h(o)(h(a).header.templatesUsed, {
601
602
  used: e.featureFlags.templateCount.value,
@@ -640,10 +641,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
640
641
  "aria-live": "assertive",
641
642
  class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
642
643
  "data-tooltip": e.featureFlags.saveErrorMessage.value
643
- }, [D(h(X), {
644
+ }, [D(h(P), {
644
645
  size: 12,
645
646
  "stroke-width": 2.5
646
- }), T(" " + d(h(a).header.saveFailed), 1)], 8, at)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", ot, [D(h(I), {
647
+ }), T(" " + d(h(a).header.saveFailed), 1)], 8, at)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", ot, [D(h(M), {
647
648
  size: 12,
648
649
  "stroke-width": 2.5
649
650
  }), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", st, [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),
@@ -659,7 +660,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
659
660
  }),
660
661
  onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
661
662
  }, [
662
- D(h(_e), {
663
+ D(h(B), {
663
664
  size: 16,
664
665
  "stroke-width": 2
665
666
  }),
@@ -674,7 +675,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
674
675
  "aria-expanded": e.panelState.aiMenuOpen.value,
675
676
  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
677
  onClick: l[1] ||= _((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
677
- }, [D(h(Q), {
678
+ }, [D(h(J), {
678
679
  size: 16,
679
680
  "stroke-width": 2,
680
681
  class: "tpl-ai-btn-icon"
@@ -702,12 +703,12 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
702
703
  },
703
704
  disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
704
705
  onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
705
- }, [e.testEmail.isSending.value ? (i(), v(h(z), {
706
+ }, [e.testEmail.isSending.value ? (i(), v(h(A), {
706
707
  key: 1,
707
708
  class: "tpl-spinner",
708
709
  size: 16,
709
710
  "stroke-width": 2
710
- })) : (i(), v(h(H), {
711
+ })) : (i(), v(h(ge), {
711
712
  key: 0,
712
713
  size: 16,
713
714
  "stroke-width": 2
@@ -721,7 +722,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
721
722
  },
722
723
  disabled: e.isSaveDisabled,
723
724
  onClick: l[3] ||= (e) => c.$emit("save")
724
- }, [e.isSaving ? (i(), v(h(z), {
725
+ }, [e.isSaving ? (i(), v(h(A), {
725
726
  key: 1,
726
727
  class: "tpl-spinner",
727
728
  size: 16,
@@ -757,9 +758,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
757
758
  "module-insert"
758
759
  ],
759
760
  setup(e, { expose: t, emit: n }) {
760
- let r = u(() => import("./features-Bo7H8WNI.js").then((e) => e.o)), a = u(() => import("./features-Bo7H8WNI.js").then((e) => e.a)), o = u(() => import("./features-Bo7H8WNI.js").then((e) => e.i)), s = u(() => import("./features-Bo7H8WNI.js").then((e) => e.n)), l = u(() => import("./features-Bo7H8WNI.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-D2_qPtE9.js")), f = u(() => import("./ModuleBrowserModal-iSXXpAUk.js")), g = u(async () => {
761
+ let r = u(() => import("./features-B3qgDBHf.js").then((e) => e.o)), a = u(() => import("./features-B3qgDBHf.js").then((e) => e.a)), o = u(() => import("./features-B3qgDBHf.js").then((e) => e.i)), s = u(() => import("./features-B3qgDBHf.js").then((e) => e.n)), l = u(() => import("./features-B3qgDBHf.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-C9hUeWyG.js")), f = u(() => import("./ModuleBrowserModal-DiLTY0ec.js")), g = u(async () => {
761
762
  try {
762
- return (await import("./src-BH8PABpF.js")).MediaLibraryModal;
763
+ return (await import("./src-GBA8oUL2.js")).MediaLibraryModal;
763
764
  } catch {
764
765
  throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
765
766
  }
@@ -863,7 +864,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
863
864
  },
864
865
  emits: ["retry"],
865
866
  setup(e, { emit: t }) {
866
- let n = t, { t: r } = W();
867
+ let n = t, { t: r } = $();
867
868
  function a(e) {
868
869
  return "isUnauthorized" in e && e.isUnauthorized ? r.error.authFailed : "isNotFound" in e && e.isNotFound ? r.error.templateNotFound : r.error.defaultMessage;
869
870
  }
@@ -871,7 +872,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
871
872
  return "isNotFound" in e && !!e.isNotFound;
872
873
  }
873
874
  return (t, s) => e.visible && e.error ? (i(), p("div", bt, [
874
- x("div", xt, [D(h(X), {
875
+ x("div", xt, [D(h(P), {
875
876
  size: 32,
876
877
  "stroke-width": 1.5,
877
878
  class: "tpl:text-[var(--tpl-danger)]"
@@ -892,8 +893,8 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
892
893
  props: { visible: { type: Boolean } },
893
894
  emits: ["cancel", "confirm"],
894
895
  setup(e, { emit: t }) {
895
- let n = t, { t: r } = W();
896
- return (t, a) => e.visible ? (i(), p("div", Et, [x("div", Dt, [D(h(k), {
896
+ let n = t, { t: r } = $();
897
+ return (t, a) => e.visible ? (i(), p("div", Et, [x("div", Dt, [D(h(Y), {
897
898
  size: 18,
898
899
  "stroke-width": 2,
899
900
  class: "tpl:text-[var(--tpl-primary)]"
@@ -920,10 +921,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
920
921
  __name: "CollabUndoToast",
921
922
  props: { visible: { type: Boolean } },
922
923
  setup(e) {
923
- let { t } = ye();
924
+ let { t } = k();
924
925
  return (n, r) => e.visible ? (i(), p("div", At, d(h(t).history.collabWarning), 1)) : m("", !0);
925
926
  }
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__*/ de(/* @__PURE__ */ E({
927
+ }), 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__*/ W(/* @__PURE__ */ E({
927
928
  __name: "CloudEditor",
928
929
  props: {
929
930
  config: {},
@@ -935,7 +936,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
935
936
  emits: ["ready"],
936
937
  setup(e, { expose: r, emit: o }) {
937
938
  let l = e;
938
- a(N, l.cloudTranslations);
939
+ a(de, l.cloudTranslations);
939
940
  let u = o, f = c(null), w = c(null), E = Be({
940
941
  config: l.config,
941
942
  translations: l.translations,
@@ -944,54 +945,54 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
944
945
  getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null,
945
946
  editorRoot: l.shadowRoot,
946
947
  containerEl: w
947
- }), { isInitializing: O, isAuthReady: ee, initError: k, planConfigInstance: A, websocket: j, collaboration: M, isCollaborationEnabled: te, editor: P, core: I, featureFlags: L, mediaLib: R, exporter: z, testEmail: V, commentsInstance: ne, savedModulesHeadless: H, panelState: U, snapshotPreview: W, collabWarning: re, showSaveModuleDialog: G, showModuleBrowserModal: K, saveModulePreSelectedBlockId: q, setThemeOverrides: J, setUiTheme: Y } = E, { showNotice: ie } = B(() => l.config.smallScreenNotice);
948
- async function ae(e) {
948
+ }), { isInitializing: O, isAuthReady: k, initError: A, planConfigInstance: j, websocket: M, collaboration: N, isCollaborationEnabled: ee, editor: P, core: I, featureFlags: L, mediaLib: R, exporter: z, testEmail: B, commentsInstance: te, savedModulesHeadless: ne, panelState: H, snapshotPreview: U, collabWarning: re, showSaveModuleDialog: W, showModuleBrowserModal: G, saveModulePreSelectedBlockId: K, setThemeOverrides: q, setUiTheme: ie } = E, { showNotice: ae } = V(() => l.config.smallScreenNotice);
949
+ async function J(e) {
949
950
  try {
950
- await V.sendTestEmail(e), U.testEmailModalOpen.value = !1;
951
+ await B.sendTestEmail(e), H.testEmailModalOpen.value = !1;
951
952
  } catch {}
952
953
  }
953
- async function X() {
954
+ async function oe() {
954
955
  try {
955
- await W.confirmRestoreSnapshot();
956
+ await U.confirmRestoreSnapshot();
956
957
  } catch {}
957
958
  }
958
- function oe(e, t) {
959
+ function Y(e, t) {
959
960
  for (let n = 0; n < e.content.length; n++) {
960
961
  let r = F(e.content[n]), i = t === void 0 ? void 0 : t + n;
961
962
  P.addBlock(r, void 0, void 0, i);
962
963
  }
963
- K.value = !1;
964
+ G.value = !1;
964
965
  }
965
- let Z = He({
966
+ let X = He({
966
967
  config: l.config,
967
968
  editor: P,
968
- websocket: j,
969
- planConfigInstance: A,
970
- snapshotPreview: W,
969
+ websocket: M,
970
+ planConfigInstance: j,
971
+ snapshotPreview: U,
971
972
  core: I,
972
973
  exporter: z,
973
974
  featureFlags: L,
974
975
  isDestroyed: E.isDestroyed
975
- }), Q = Ue({
976
+ }), Z = Ue({
976
977
  issues: I.templateLint ? I.templateLint.issues : c([]),
977
- planConfig: A.config
978
+ planConfig: j.config
978
979
  });
979
- async function $() {
980
- await Q.tryRunSave(() => Z.saveTemplate().catch((e) => l.config.onError?.(e)));
980
+ async function Q() {
981
+ await Z.tryRunSave(() => X.saveTemplate().catch((e) => l.config.onError?.(e)));
981
982
  }
982
- return E.onSaveHook.value = $, t(() => {
983
+ return E.onSaveHook.value = Q, t(() => {
983
984
  E.initialize();
984
985
  }), g(() => {
985
986
  E.destroy();
986
987
  }), r({
987
988
  getContent: () => P.content.value,
988
989
  setContent: (e) => P.setContent(e),
989
- setTheme: Y,
990
- setThemeOverrides: J,
991
- create: Z.createTemplate,
992
- load: Z.loadTemplate,
993
- save: Z.saveTemplate,
994
- sendTestEmail: V.sendTestEmail
990
+ setTheme: ie,
991
+ setThemeOverrides: q,
992
+ create: X.createTemplate,
993
+ load: X.loadTemplate,
994
+ save: X.saveTemplate,
995
+ sendTestEmail: B.sendTestEmail
995
996
  }), (t, r) => (i(), p("div", {
996
997
  ref_key: "rootEl",
997
998
  ref: w,
@@ -1022,8 +1023,8 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1022
1023
  "leave-to-class": "tpl:opacity-0"
1023
1024
  }, {
1024
1025
  default: s(() => [D(Tt, {
1025
- error: h(k),
1026
- visible: !!h(k) && !h(O),
1026
+ error: h(A),
1027
+ visible: !!h(A) && !h(O),
1027
1028
  onRetry: h(E).initialize
1028
1029
  }, null, 8, [
1029
1030
  "error",
@@ -1036,16 +1037,16 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1036
1037
  editor: h(P),
1037
1038
  core: h(I),
1038
1039
  "feature-flags": h(L),
1039
- "panel-state": h(U),
1040
- "snapshot-preview": h(W),
1041
- "comments-instance": h(ne),
1042
- "test-email": h(V),
1043
- websocket: h(j),
1044
- collaboration: h(M),
1045
- "is-collaboration-enabled": h(te),
1040
+ "panel-state": h(H),
1041
+ "snapshot-preview": h(U),
1042
+ "comments-instance": h(te),
1043
+ "test-email": h(B),
1044
+ websocket: h(M),
1045
+ collaboration: h(N),
1046
+ "is-collaboration-enabled": h(ee),
1046
1047
  "is-saving": h(P).state.isSaving || h(L).isSaveExporting.value,
1047
1048
  "is-save-disabled": h(P).state.isSaving || h(L).isSaveExporting.value || !h(P).state.isDirty,
1048
- onSave: $
1049
+ onSave: Q
1049
1050
  }, null, 8, [
1050
1051
  "editor",
1051
1052
  "core",
@@ -1061,10 +1062,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1061
1062
  "is-save-disabled"
1062
1063
  ]),
1063
1064
  D($e, {
1064
- open: h(Q).modalOpen.value,
1065
- issues: h(Q).blockingIssues.value,
1066
- onCancel: h(Q).cancel,
1067
- onConfirm: h(Q).confirmAndSave
1065
+ open: h(Z).modalOpen.value,
1066
+ issues: h(Z).blockingIssues.value,
1067
+ onCancel: h(Z).cancel,
1068
+ onConfirm: h(Z).confirmAndSave
1068
1069
  }, null, 8, [
1069
1070
  "open",
1070
1071
  "issues",
@@ -1072,9 +1073,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1072
1073
  "onConfirm"
1073
1074
  ]),
1074
1075
  D(kt, {
1075
- visible: h(W).isPreviewingSnapshot.value,
1076
- onCancel: h(W).cancelPreview,
1077
- onConfirm: X
1076
+ visible: h(U).isPreviewingSnapshot.value,
1077
+ onCancel: h(U).cancelPreview,
1078
+ onConfirm: oe
1078
1079
  }, null, 8, ["visible", "onCancel"]),
1079
1080
  D(y, {
1080
1081
  "enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
@@ -1089,7 +1090,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1089
1090
  }),
1090
1091
  n(D(De, null, null, 512), [[S, !h(P).state.previewMode]]),
1091
1092
  x("div", {
1092
- class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(P).state.previewMode ? "tpl:left-0 tpl:right-0" : h(U).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(W).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1093
+ class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(P).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
1094
  style: {
1094
1095
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1095
1096
  "background-color": "var(--tpl-canvas-bg)"
@@ -1116,10 +1117,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1116
1117
  "selected-block-id": h(P).state.selectedBlockId,
1117
1118
  "dark-mode": h(P).state.darkMode,
1118
1119
  "preview-mode": h(P).state.previewMode,
1119
- "locked-blocks": h(M)?.lockedBlocks.value ?? void 0,
1120
+ "locked-blocks": h(N)?.lockedBlocks.value ?? void 0,
1120
1121
  onSelectBlock: h(P).selectBlock,
1121
- onOpenAiChat: r[1] ||= (e) => h(U).aiChatOpen.value = !0,
1122
- onOpenDesignReference: r[2] ||= (e) => h(U).designReferenceOpen.value = !0
1122
+ onOpenAiChat: r[1] ||= (e) => h(H).aiChatOpen.value = !0,
1123
+ onOpenDesignReference: r[2] ||= (e) => h(H).designReferenceOpen.value = !0
1123
1124
  }, null, 8, [
1124
1125
  "viewport",
1125
1126
  "content",
@@ -1131,7 +1132,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1131
1132
  ])])], 2),
1132
1133
  e.config.branding !== !1 && !h(L).isWhiteLabeled.value ? (i(), v(Ae, {
1133
1134
  key: 0,
1134
- "position-class": [h(P).state.previewMode ? "tpl:left-0 tpl:right-0" : h(U).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1135
+ "position-class": [h(P).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
1136
  }, null, 8, ["position-class"])) : m("", !0),
1136
1137
  x("div", {
1137
1138
  class: "tpl-sr-only",
@@ -1143,7 +1144,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1143
1144
  n(D(Ce, {
1144
1145
  "selected-block": h(P).selectedBlock.value,
1145
1146
  settings: h(P).content.value.settings,
1146
- "shifted-left": h(U).rightPanelOpen.value,
1147
+ "shifted-left": h(H).rightPanelOpen.value,
1147
1148
  onUpdateBlock: r[3] ||= (e) => h(P).updateBlock(h(P).selectedBlock.value.id, e),
1148
1149
  onDeleteBlock: r[4] ||= (e) => h(I).blockActions.deleteBlock(h(P).selectedBlock.value.id),
1149
1150
  onDuplicateBlock: r[5] ||= (e) => h(I).blockActions.duplicateBlock(h(P).selectedBlock.value),
@@ -1154,26 +1155,26 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1154
1155
  "shifted-left",
1155
1156
  "onUpdateSettings"
1156
1157
  ]), [[S, !h(P).state.previewMode]]),
1157
- !h(O) && h(ee) ? (i(), v(ht, {
1158
+ !h(O) && h(k) ? (i(), v(ht, {
1158
1159
  key: 1,
1159
1160
  ref_key: "cloudPanelsRef",
1160
1161
  ref: f,
1161
1162
  config: l.config,
1162
1163
  editor: h(P),
1163
1164
  core: h(I),
1164
- "panel-state": h(U),
1165
- "plan-config-instance": h(A),
1166
- "test-email": h(V),
1165
+ "panel-state": h(H),
1166
+ "plan-config-instance": h(j),
1167
+ "test-email": h(B),
1167
1168
  "media-lib": h(R),
1168
- "saved-modules-headless": h(H),
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: ae,
1176
- onModuleInsert: oe
1169
+ "saved-modules-headless": h(ne),
1170
+ "show-save-module-dialog": h(W),
1171
+ "save-module-pre-selected-block-id": h(K),
1172
+ "show-module-browser-modal": h(G),
1173
+ "onUpdate:showSaveModuleDialog": r[6] ||= (e) => W.value = e,
1174
+ "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => K.value = e,
1175
+ "onUpdate:showModuleBrowserModal": r[8] ||= (e) => G.value = e,
1176
+ onSendTestEmail: J,
1177
+ onModuleInsert: Y
1177
1178
  }, null, 8, [
1178
1179
  "config",
1179
1180
  "editor",
@@ -1193,11 +1194,11 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1193
1194
  }, null, 512),
1194
1195
  D(Oe),
1195
1196
  D(Me),
1196
- h(ie) ? (i(), v(je, { key: 2 })) : m("", !0)
1197
+ h(ae) ? (i(), v(je, { key: 2 })) : m("", !0)
1197
1198
  ], 46, Mt));
1198
1199
  }
1199
1200
  }), [["__scopeId", "data-v-3fc6c906"]]);
1200
1201
  //#endregion
1201
1202
  export { It as default };
1202
1203
 
1203
- //# sourceMappingURL=CloudEditor-BrZLF_m1.js.map
1204
+ //# sourceMappingURL=CloudEditor-YC5y3AwC.js.map