@templatical/editor 0.12.0 → 0.13.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 (93) hide show
  1. package/dist/{AiChatSidebar-CXH7l1Ar.js → AiChatSidebar-B0-U5-sb.js} +3 -3
  2. package/dist/{AiFeatureMenu-BKbUUc1D.js → AiFeatureMenu-DxDwLS8B.js} +1 -1
  3. package/dist/{CloudEditor-F5YV5hE3.js → CloudEditor-DaEfipBn.js} +190 -158
  4. package/dist/{CollaboratorBar-ACUA7lBJ.js → CollaboratorBar-DgwjisX2.js} +1 -1
  5. package/dist/{CountdownBlock-C-6o19qS.js → CountdownBlock-DO9fziwf.js} +1 -1
  6. package/dist/{CountdownToolbar-CDy9_2Yj.js → CountdownToolbar-BeII06yJ.js} +1 -1
  7. package/dist/{DesignReferenceSidebar-0dTsBW08.js → DesignReferenceSidebar-BgPDbOsl.js} +19 -31
  8. package/dist/{ModuleBrowserModal-Bz9hSjMS.js → ModuleBrowserModal-DsZRr87F.js} +4 -4
  9. package/dist/{ModulePreviewCanvas-CpaumPMS.js → ModulePreviewCanvas-Dni9kK4j.js} +19 -19
  10. package/dist/{NumberWithSuffix-Cd7bz1Wk.js → NumberWithSuffix-D3fdj0iO.js} +101 -79
  11. package/dist/{ParagraphEditor-BqRFV_Y-.js → ParagraphEditor-CZ-cmhX3.js} +7 -7
  12. package/dist/{SaveModuleDialog-DmfvH5D0.js → SaveModuleDialog-C38VqN2T.js} +2 -2
  13. package/dist/{SnapshotHistory-C052o-8U.js → SnapshotHistory-ByloTpwh.js} +2 -2
  14. package/dist/{TemplateScoringPanel-CUs8XmIi.js → TemplateScoringPanel-CUxiPtEf.js} +1 -1
  15. package/dist/{TestEmailModal-BIIxRWUt.js → TestEmailModal-BvZBMBad.js} +2 -2
  16. package/dist/{TitleEditor-FMh54Cx5.js → TitleEditor-DbNOcvhR.js} +1 -1
  17. package/dist/{TplModal-utMtXzSO.js → TplModal-BYb-X5Bj.js} +1 -1
  18. package/dist/{blockTypeIcons-C6UGDmrC.js → blockTypeIcons-CyAom3iI.js} +4 -4
  19. package/dist/bundle-stats.json +8 -8
  20. package/dist/cdn/chunks/{AiFeatureMenu-4NhCFeTh.js → AiFeatureMenu-BSoy-SoF.js} +7 -7
  21. package/dist/cdn/chunks/{AiFeatureMenu-4NhCFeTh.js.map → AiFeatureMenu-BSoy-SoF.js.map} +1 -1
  22. package/dist/cdn/chunks/{BlockIssueBadge-BYKThwhE.js → BlockIssueBadge-BQDUuJxy.js} +4 -4
  23. package/dist/cdn/chunks/{BlockIssueBadge-BYKThwhE.js.map → BlockIssueBadge-BQDUuJxy.js.map} +1 -1
  24. package/dist/cdn/chunks/{CloudEditor-OO8hWAVp.js → CloudEditor-BZuzsQOZ.js} +231 -199
  25. package/dist/cdn/chunks/CloudEditor-BZuzsQOZ.js.map +1 -0
  26. package/dist/cdn/chunks/{CollaboratorBar-Dn5gXNDt.js → CollaboratorBar-DUpSrtDr.js} +3 -3
  27. package/dist/cdn/chunks/{CollaboratorBar-Dn5gXNDt.js.map → CollaboratorBar-DUpSrtDr.js.map} +1 -1
  28. package/dist/cdn/chunks/{CountdownBlock-hYoJdVOt.js → CountdownBlock-DChGTAsH.js} +2 -2
  29. package/dist/cdn/chunks/{CountdownBlock-hYoJdVOt.js.map → CountdownBlock-DChGTAsH.js.map} +1 -1
  30. package/dist/cdn/chunks/{CountdownToolbar-BXjDFRHI.js → CountdownToolbar-C6gX2SJr.js} +3 -3
  31. package/dist/cdn/chunks/CountdownToolbar-C6gX2SJr.js.map +1 -0
  32. package/dist/cdn/chunks/{IssuesPanel-_5fEnivU.js → IssuesPanel-Bo1uhdSe.js} +6 -6
  33. package/dist/cdn/chunks/{IssuesPanel-_5fEnivU.js.map → IssuesPanel-Bo1uhdSe.js.map} +1 -1
  34. package/dist/cdn/chunks/{ModuleBrowserModal-DtCksAeW.js → ModuleBrowserModal-a-tZRCcD.js} +8 -8
  35. package/dist/cdn/chunks/{ModuleBrowserModal-DtCksAeW.js.map → ModuleBrowserModal-a-tZRCcD.js.map} +1 -1
  36. package/dist/cdn/chunks/{ModulePreviewCanvas-CCOvabZd.js → ModulePreviewCanvas-Bm6k0Op0.js} +24 -24
  37. package/dist/cdn/chunks/{ModulePreviewCanvas-CCOvabZd.js.map → ModulePreviewCanvas-Bm6k0Op0.js.map} +1 -1
  38. package/dist/cdn/chunks/{NumberWithSuffix-ZuJ2ePB0.js → NumberWithSuffix-HTbuD3VJ.js} +139 -118
  39. package/dist/cdn/chunks/NumberWithSuffix-HTbuD3VJ.js.map +1 -0
  40. package/dist/cdn/chunks/{ParagraphEditor-BnhnFOW1.js → ParagraphEditor-pGrfSccu.js} +13 -13
  41. package/dist/cdn/chunks/{ParagraphEditor-BnhnFOW1.js.map → ParagraphEditor-pGrfSccu.js.map} +1 -1
  42. package/dist/cdn/chunks/{RichTextEditorContent-DV2yknp8.js → RichTextEditorContent-D7XZix_1.js} +4 -4
  43. package/dist/cdn/chunks/{RichTextEditorContent-DV2yknp8.js.map → RichTextEditorContent-D7XZix_1.js.map} +1 -1
  44. package/dist/cdn/chunks/{SaveModuleDialog-CCX5U7VA.js → SaveModuleDialog-C9PQ9x6j.js} +4 -4
  45. package/dist/cdn/chunks/{SaveModuleDialog-CCX5U7VA.js.map → SaveModuleDialog-C9PQ9x6j.js.map} +1 -1
  46. package/dist/cdn/chunks/{TitleEditor-CQqklX0D.js → TitleEditor-BvFbL16O.js} +7 -7
  47. package/dist/cdn/chunks/{TitleEditor-CQqklX0D.js.map → TitleEditor-BvFbL16O.js.map} +1 -1
  48. package/dist/cdn/chunks/{blockTypeIcons-CpGPHppB.js → blockTypeIcons-Kd1MT0u8.js} +7 -7
  49. package/dist/cdn/chunks/{blockTypeIcons-CpGPHppB.js.map → blockTypeIcons-Kd1MT0u8.js.map} +1 -1
  50. package/dist/cdn/chunks/{de-DpBN9H7-.js → de-C2wOXoxs.js} +6 -2
  51. package/dist/cdn/chunks/de-C2wOXoxs.js.map +1 -0
  52. package/dist/cdn/chunks/{en-BhHtdIiU.js → en-dR7zfNC3.js} +6 -2
  53. package/dist/cdn/chunks/en-dR7zfNC3.js.map +1 -0
  54. package/dist/cdn/chunks/{extensions-Ds9GnMcd.js → extensions-CuUjSmuA.js} +23 -23
  55. package/dist/cdn/chunks/{extensions-Ds9GnMcd.js.map → extensions-CuUjSmuA.js.map} +1 -1
  56. package/dist/cdn/chunks/{features-DxWz_Enw.js → features-DU6lA8l1.js} +471 -420
  57. package/dist/cdn/chunks/features-DU6lA8l1.js.map +1 -0
  58. package/dist/cdn/chunks/{icons-BflGUmFY.js → icons-BjHUZZyJ.js} +2 -2
  59. package/dist/cdn/chunks/{icons-BflGUmFY.js.map → icons-BjHUZZyJ.js.map} +1 -1
  60. package/dist/cdn/chunks/{media-library-C479-QcE.js → media-library-Byelliig.js} +575 -575
  61. package/dist/cdn/chunks/media-library-Byelliig.js.map +1 -0
  62. package/dist/{pt-BR-Bth5a93y.js → cdn/chunks/pt-BR-BZ86xqK6.js} +7 -1
  63. package/dist/cdn/chunks/pt-BR-BZ86xqK6.js.map +1 -0
  64. package/dist/cdn/chunks/{quality-BL_pEvFP.js → quality-DNnYAntR.js} +83 -83
  65. package/dist/cdn/chunks/{quality-BL_pEvFP.js.map → quality-DNnYAntR.js.map} +1 -1
  66. package/dist/cdn/chunks/{renderer-DwPomkBw.js → renderer-CZKO-Tav.js} +19 -19
  67. package/dist/cdn/chunks/{renderer-DwPomkBw.js.map → renderer-CZKO-Tav.js.map} +1 -1
  68. package/dist/cdn/chunks/{src-DzvOWQ9S.js → src-DsqSXXjk.js} +53 -53
  69. package/dist/cdn/chunks/{src-DzvOWQ9S.js.map → src-DsqSXXjk.js.map} +1 -1
  70. package/dist/cdn/chunks/{styles-D45rgVq8.js → styles-DiAdtiz9.js} +865 -785
  71. package/dist/cdn/chunks/styles-DiAdtiz9.js.map +1 -0
  72. package/dist/cdn/editor.css +1 -1
  73. package/dist/cdn/editor.js +124 -122
  74. package/dist/cdn/editor.js.map +1 -1
  75. package/dist/{de-DpBN9H7-.js → de-C2wOXoxs.js} +5 -1
  76. package/dist/{dist-DJ9aD8yA.js → dist-Cgry6fNv.js} +53 -4
  77. package/dist/{en-BhHtdIiU.js → en-dR7zfNC3.js} +5 -1
  78. package/dist/{cdn/chunks/pt-BR-Bth5a93y.js → pt-BR-BZ86xqK6.js} +5 -3
  79. package/dist/style.css +1 -1
  80. package/dist/{styles-Dp4mJuCM.js → styles-D0RCAWhB.js} +866 -784
  81. package/dist/templatical-editor.js +94 -92
  82. package/dist/upload-BF7sxd1_.js +17 -0
  83. package/dist/{useEditorCore-D7dQFRkw.js → useEditorCore-DKYZ7aKk.js} +788 -735
  84. package/package.json +7 -7
  85. package/dist/cdn/chunks/CloudEditor-OO8hWAVp.js.map +0 -1
  86. package/dist/cdn/chunks/CountdownToolbar-BXjDFRHI.js.map +0 -1
  87. package/dist/cdn/chunks/NumberWithSuffix-ZuJ2ePB0.js.map +0 -1
  88. package/dist/cdn/chunks/de-DpBN9H7-.js.map +0 -1
  89. package/dist/cdn/chunks/en-BhHtdIiU.js.map +0 -1
  90. package/dist/cdn/chunks/features-DxWz_Enw.js.map +0 -1
  91. package/dist/cdn/chunks/media-library-C479-QcE.js.map +0 -1
  92. package/dist/cdn/chunks/pt-BR-Bth5a93y.js.map +0 -1
  93. package/dist/cdn/chunks/styles-D45rgVq8.js.map +0 -1
@@ -1,21 +1,21 @@
1
1
  import { A as e, B as t, L as n, M as r, O as i, Q as a, X as o, _ as s, at as c, b as l, c as u, d, f, g as p, h as m, j as h, k as g, l as _, m as v, o as y, ot as b, p as x, q as S, rt as C, st as w, t as T, v as E, y as D, z as O } from "./vue.runtime.esm-bundler-B2k01iQh.js";
2
2
  import { t as k } from "./timeouts-Bmi_yePw.js";
3
3
  import { D as A, a as j } from "./dist-BctFrpeA.js";
4
- import { P as M, S as N, t as ee, y as te } from "./useEditorCore-D7dQFRkw.js";
5
- import { c as P, t as F } from "./dist-DJ9aD8yA.js";
6
- import { C as I, D as L, O as R, c as z, l as B, r as ne, s as re, t as V } from "./keys-mFiJ5N0_.js";
4
+ import { C as M, F as N, b as P, t as F } from "./useEditorCore-DKYZ7aKk.js";
5
+ import { l as I, t as L } from "./dist-Cgry6fNv.js";
6
+ import { C as R, D as z, O as ee, c as B, l as te, r as V, s as ne, t as re } from "./keys-mFiJ5N0_.js";
7
7
  import { t as H } from "./useI18n-CTs_bP9d.js";
8
8
  import { t as U } from "./createLucideIcon-CmPAC-gt.js";
9
9
  import { t as W } from "./circle-alert-BStvZr3O.js";
10
10
  import { t as G } from "./loader-circle-CDF8eR_Q.js";
11
- import { a as K, c as q, d as ie, f as ae, i as J, l as oe, n as se, o as ce, r as le, s as ue, t as de, u as fe } from "./styles-Dp4mJuCM.js";
11
+ import { a as K, c as ie, d as q, f as ae, i as J, l as oe, n as se, o as ce, r as le, s as ue, t as de, u as fe } from "./styles-D0RCAWhB.js";
12
12
  import { t as pe } from "./sparkles-C965Xop4.js";
13
13
  import { t as me } from "./triangle-alert-BKYElAwz.js";
14
14
  import { t as he } from "./check-BRzXxFHr.js";
15
- import { t as Y } from "./clock-Blwp_1R6.js";
16
- import { t as X } from "./message-circle-C3cHsCJl.js";
17
- import { t as Z } from "./send-k7npFJNO.js";
18
- import { t as ge } from "./_plugin-vue_export-helper-B3ysoDQm.js";
15
+ import { t as ge } from "./clock-Blwp_1R6.js";
16
+ import { t as Y } from "./message-circle-C3cHsCJl.js";
17
+ import { t as X } from "./send-k7npFJNO.js";
18
+ import { t as Z } from "./_plugin-vue_export-helper-B3ysoDQm.js";
19
19
  import { n as Q } from "./useCloudI18n-L3H2XvdW.js";
20
20
  import { d as $ } from "./styleConstants-lGobwiLH.js";
21
21
  import { _ as _e, a as ve, c as ye, d as be, f as xe, g as Se, h as Ce, l as we, m as Te, n as Ee, o as De, p as Oe, r as ke, s as Ae, t as je, v as Me, y as Ne } from "./cloud-_olro76D.js";
@@ -117,7 +117,7 @@ function Ie() {
117
117
  function g(t) {
118
118
  l.value = !1, e.value = e.value === t ? null : t;
119
119
  }
120
- return F(u, () => {
120
+ return L(u, () => {
121
121
  l.value = !1;
122
122
  }), {
123
123
  activePanel: e,
@@ -140,7 +140,7 @@ function Ie() {
140
140
  //#endregion
141
141
  //#region src/cloud/composables/useCollabUndoWarning.ts
142
142
  function Le(e) {
143
- let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = o(!1), a = o(!1), { start: s } = P(() => {
143
+ let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = o(!1), a = o(!1), { start: s } = I(() => {
144
144
  a.value = !1;
145
145
  }, k, { immediate: !1 });
146
146
  function c() {
@@ -154,7 +154,7 @@ function Le(e) {
154
154
  //#endregion
155
155
  //#region src/cloud/composables/useCloudFeatureFlags.ts
156
156
  function Re(e) {
157
- let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = d(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = d(() => t.hasFeature("test_email")), s = d(() => !!r.state.template?.id), c = d(() => t.hasFeature("white_label")), l = d(() => t.config.value?.limits.max_templates ?? null), u = d(() => t.config.value?.template_count ?? 0), f = o(!1), p = o("idle"), m = o(""), { start: h } = P(() => {
157
+ let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = d(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = d(() => t.hasFeature("test_email")), s = d(() => !!r.state.template?.id), c = d(() => t.hasFeature("white_label")), l = d(() => t.config.value?.limits.max_templates ?? null), u = d(() => t.config.value?.template_count ?? 0), f = o(!1), p = o("idle"), m = o(""), { start: h } = I(() => {
158
158
  p.value = "idle";
159
159
  }, 3e3, { immediate: !1 });
160
160
  return {
@@ -173,36 +173,63 @@ function Re(e) {
173
173
  //#endregion
174
174
  //#region src/cloud/composables/useCloudMediaLibrary.ts
175
175
  function ze(e) {
176
- let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: r } = e, i = null;
177
- async function a() {
176
+ let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: r, authManager: i, getMediaConfig: a, onError: o } = e, s = null;
177
+ function c(e) {
178
+ return {
179
+ url: e.url,
180
+ alt: e.alt_text || void 0
181
+ };
182
+ }
183
+ async function l(e) {
184
+ let i = e?.accept ?? ["images"];
185
+ if (e?.files?.length) {
186
+ if (t) {
187
+ let n = await t({
188
+ accept: i,
189
+ files: e.files
190
+ });
191
+ return n ? c(n) : null;
192
+ }
193
+ return u(e.files[0]);
194
+ }
178
195
  if (t) {
179
- let e = await t({ accept: ["images"] });
180
- return e ? {
181
- url: e.url,
182
- alt: e.alt_text || void 0
183
- } : null;
196
+ let e = await t({ accept: i });
197
+ return e ? c(e) : null;
184
198
  }
185
- return i &&= (i(null), null), r.value = ["images"], n.value = !0, new Promise((e) => {
186
- i = (t) => {
199
+ return s &&= (s(null), null), r.value = i, n.value = !0, new Promise((e) => {
200
+ s = (t) => {
187
201
  e(t);
188
202
  };
189
203
  });
190
204
  }
191
- function o(e) {
192
- n.value = !1, i?.({
193
- url: e.url,
194
- alt: e.alt_text || void 0
195
- }), i = null;
205
+ async function u(e) {
206
+ let t = d(e);
207
+ if (t) return o?.(t), null;
208
+ try {
209
+ let { MediaApiClient: t } = await import("@templatical/media-library");
210
+ return c(await new t(i).uploadMedia(e));
211
+ } catch (e) {
212
+ return o?.(e), null;
213
+ }
214
+ }
215
+ function d(e) {
216
+ let t = a?.() ?? null;
217
+ if (!t) return null;
218
+ let n = t.categories?.images?.mime_types ?? [];
219
+ return n.length > 0 && !n.includes(e.type) ? /* @__PURE__ */ Error(`Unsupported image type: ${e.type || "unknown"}. Accepted: ${n.join(", ")}.`) : t.max_file_size > 0 && e.size > t.max_file_size ? /* @__PURE__ */ Error(`Image is too large (${e.size} bytes). Maximum allowed is ${t.max_file_size} bytes.`) : null;
196
220
  }
197
- function s() {
198
- n.value = !1, i?.(null), i = null;
221
+ function f(e) {
222
+ n.value = !1, s?.(c(e)), s = null;
223
+ }
224
+ function p() {
225
+ n.value = !1, s?.(null), s = null;
199
226
  }
200
227
  return S(() => {
201
- i &&= (i(null), null);
228
+ s &&= (s(null), null);
202
229
  }), {
203
- handleRequestMedia: a,
204
- handleMediaSelect: o,
205
- handleMediaLibraryClose: s
230
+ handleRequestMedia: l,
231
+ handleMediaSelect: f,
232
+ handleMediaLibraryClose: p
206
233
  };
207
234
  }
208
235
  //#endregion
@@ -242,7 +269,7 @@ function Be(e) {
242
269
  }), n(() => S.lockedBlocks.value, (e) => {
243
270
  y.value = e;
244
271
  }, { immediate: !0 }), Ae(b, S));
245
- let C = d(() => !!t.collaboration?.enabled && v.hasFeature("collaboration")), w = ee({
272
+ let C = d(() => !!t.collaboration?.enabled && v.hasFeature("collaboration")), w = F({
246
273
  editor: b,
247
274
  config: {
248
275
  uiTheme: t.uiTheme,
@@ -253,7 +280,7 @@ function Be(e) {
253
280
  mergeTags: t.mergeTags,
254
281
  displayConditions: t.displayConditions,
255
282
  onRequestMedia: null,
256
- lint: ie(t),
283
+ lint: q(t),
257
284
  onSave: () => {
258
285
  p.value?.().catch((e) => {
259
286
  t.onError?.(e);
@@ -296,9 +323,12 @@ function Be(e) {
296
323
  }), A = ze({
297
324
  onRequestMedia: t.onRequestMedia,
298
325
  mediaLibraryOpen: D.mediaLibraryOpen,
299
- mediaLibraryAccept: D.mediaLibraryAccept
326
+ mediaLibraryAccept: D.mediaLibraryAccept,
327
+ authManager: _,
328
+ getMediaConfig: () => v.config.value?.media ?? null,
329
+ onError: t.onError
300
330
  });
301
- N({
331
+ M({
302
332
  onBlockMove: b.moveBlock,
303
333
  onBlockAdd: b.addBlock
304
334
  });
@@ -306,7 +336,7 @@ function Be(e) {
306
336
  authManager: _,
307
337
  getFontsConfig: () => t.fonts,
308
338
  canUseCustomFonts: () => v.hasFeature("custom_fonts")
309
- }), te = Me({
339
+ }), P = Me({
310
340
  authManager: _,
311
341
  getTemplateId: () => b.state.template?.id ?? null,
312
342
  save: () => b.save(),
@@ -314,7 +344,7 @@ function Be(e) {
314
344
  onError: t.onError,
315
345
  isAuthReady: l,
316
346
  onBeforeTestEmail: t.onBeforeTestEmail
317
- }), P = we({
347
+ }), I = we({
318
348
  authManager: _,
319
349
  getTemplateId: () => b.state.template?.id ?? null,
320
350
  getSocketId: () => x.getSocketId(),
@@ -324,13 +354,13 @@ function Be(e) {
324
354
  hasCommentingFeature: () => t.commenting !== !1 && v.hasFeature("commenting")
325
355
  });
326
356
  ye({
327
- comments: P,
357
+ comments: I,
328
358
  channel: x.channel
329
359
  });
330
- let F = Ce({
360
+ let L = Ce({
331
361
  authManager: _,
332
362
  onError: t.onError
333
- }), z = o(!1), H = o(null), U = o(!1), W = _e({
363
+ }), B = o(!1), H = o(null), U = o(!1), W = _e({
334
364
  authManager: _,
335
365
  getTemplateId: () => b.state.template?.id ?? null
336
366
  });
@@ -339,27 +369,27 @@ function Be(e) {
339
369
  s()?.filterByBlock(e);
340
370
  });
341
371
  }
342
- h(I, A.handleRequestMedia), h(ne, _), h(V, O), h(B, P), h(L, F), h(R, W), h(re, {
372
+ h(R, A.handleRequestMedia), h(V, _), h(re, O), h(te, I), h(z, L), h(ee, W), h(ne, {
343
373
  plan: v,
344
374
  ai: O,
345
375
  comments: {
346
- getBlockCount: (e) => P.commentCountByBlock.value.get(e) ?? 0,
376
+ getBlockCount: (e) => I.commentCountByBlock.value.get(e) ?? 0,
347
377
  openForBlock: G
348
378
  },
349
379
  savedModules: {
350
380
  openSaveDialog: (e) => {
351
- H.value = e ?? null, z.value = !0;
381
+ H.value = e ?? null, B.value = !0;
352
382
  },
353
383
  openBrowser: () => {
354
384
  U.value = !0;
355
385
  },
356
- moduleCount: d(() => F.modules.value.length)
386
+ moduleCount: d(() => L.modules.value.length)
357
387
  }
358
388
  });
359
389
  function K(e) {
360
390
  v.hasFeature("theme_customization") && (w.themeOverrides.value = e);
361
391
  }
362
- function q(e) {
392
+ function ie(e) {
363
393
  b.setUiTheme(e);
364
394
  }
365
395
  async function ae() {
@@ -371,8 +401,8 @@ function Be(e) {
371
401
  if (f) return;
372
402
  if (!e.api.ok) throw Error("Health check failed: API is not reachable");
373
403
  if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
374
- if (e.websocket.ok || M.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await v.fetchConfig(), f) return;
375
- i.setCustomFontsEnabled(v.hasFeature("custom_fonts")), t.customBlocks?.length && v.hasFeature("custom_blocks") && w.registerCustomBlocks(t.customBlocks), t.theme && v.hasFeature("theme_customization") && (w.themeOverrides.value = t.theme), t.modules !== !1 && v.hasFeature("saved_modules") && F.loadModules(), a("ready");
404
+ if (e.websocket.ok || N.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await v.fetchConfig(), f) return;
405
+ i.setCustomFontsEnabled(v.hasFeature("custom_fonts")), t.customBlocks?.length && v.hasFeature("custom_blocks") && w.registerCustomBlocks(t.customBlocks), t.theme && v.hasFeature("theme_customization") && (w.themeOverrides.value = t.theme), t.modules !== !1 && v.hasFeature("saved_modules") && L.loadModules(), a("ready");
376
406
  } catch (e) {
377
407
  if (f) return;
378
408
  let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
@@ -400,21 +430,21 @@ function Be(e) {
400
430
  featureFlags: k,
401
431
  mediaLib: A,
402
432
  exporter: j,
403
- testEmail: te,
404
- commentsInstance: P,
405
- savedModulesHeadless: F,
433
+ testEmail: P,
434
+ commentsInstance: I,
435
+ savedModulesHeadless: L,
406
436
  scoringInstance: W,
407
437
  panelState: D,
408
438
  snapshotPreview: E,
409
439
  collabWarning: T,
410
- showSaveModuleDialog: z,
440
+ showSaveModuleDialog: B,
411
441
  showModuleBrowserModal: U,
412
442
  saveModulePreSelectedBlockId: H,
413
443
  onSaveHook: p,
414
444
  initialize: ae,
415
445
  destroy: J,
416
446
  setThemeOverrides: K,
417
- setUiTheme: q,
447
+ setUiTheme: ie,
418
448
  openCommentsForBlock: G
419
449
  };
420
450
  }
@@ -595,7 +625,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
595
625
  },
596
626
  emits: ["save"],
597
627
  setup(t) {
598
- let n = D(() => import("./CollaboratorBar-ACUA7lBJ.js")), r = D(() => import("./SnapshotHistory-C052o-8U.js")), i = D(() => import("./AiFeatureMenu-BKbUUc1D.js")), { t: a, format: o } = Q();
628
+ let n = D(() => import("./CollaboratorBar-DgwjisX2.js")), r = D(() => import("./SnapshotHistory-ByloTpwh.js")), i = D(() => import("./AiFeatureMenu-DxDwLS8B.js")), { t: a, format: o } = Q();
599
629
  return (l, d) => (e(), m("header", et, [
600
630
  f("div", tt, [t.featureFlags.templateLimit.value === null ? v("", !0) : (e(), m("span", nt, w(C(o)(C(a).header.templatesUsed, {
601
631
  used: t.featureFlags.templateCount.value,
@@ -659,7 +689,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
659
689
  }),
660
690
  onClick: d[0] ||= (e) => t.panelState.commentsOpen.value = !t.panelState.commentsOpen.value
661
691
  }, [
662
- E(C(X), {
692
+ E(C(Y), {
663
693
  size: 16,
664
694
  "stroke-width": 2
665
695
  }),
@@ -707,7 +737,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
707
737
  class: "tpl-spinner",
708
738
  size: 16,
709
739
  "stroke-width": 2
710
- })) : (e(), x(C(Z), {
740
+ })) : (e(), x(C(X), {
711
741
  key: 0,
712
742
  size: 16,
713
743
  "stroke-width": 2
@@ -757,7 +787,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
757
787
  "module-insert"
758
788
  ],
759
789
  setup(t, { expose: n, emit: r }) {
760
- let i = D(() => import("./AiChatSidebar-CXH7l1Ar.js")), a = D(() => import("./CommentsSidebar-CpRLN40c.js")), s = D(() => import("./DesignReferenceSidebar-0dTsBW08.js")), c = D(() => import("./TemplateScoringPanel-CUs8XmIi.js")), l = D(() => import("./TestEmailModal-BIIxRWUt.js")), u = D(() => import("./SaveModuleDialog-DmfvH5D0.js")), d = D(() => import("./ModuleBrowserModal-Bz9hSjMS.js")), f = D(async () => {
790
+ let i = D(() => import("./AiChatSidebar-B0-U5-sb.js")), a = D(() => import("./CommentsSidebar-CpRLN40c.js")), s = D(() => import("./DesignReferenceSidebar-BgPDbOsl.js")), c = D(() => import("./TemplateScoringPanel-CUxiPtEf.js")), l = D(() => import("./TestEmailModal-BvZBMBad.js")), u = D(() => import("./SaveModuleDialog-C38VqN2T.js")), d = D(() => import("./ModuleBrowserModal-DsZRr87F.js")), f = D(async () => {
761
791
  try {
762
792
  return (await import("@templatical/media-library")).MediaLibraryModal;
763
793
  } catch {
@@ -893,7 +923,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
893
923
  emits: ["cancel", "confirm"],
894
924
  setup(t, { emit: n }) {
895
925
  let r = n, { t: i } = Q();
896
- return (n, a) => t.visible ? (e(), m("div", Et, [f("div", Dt, [E(C(Y), {
926
+ return (n, a) => t.visible ? (e(), m("div", Et, [f("div", Dt, [E(C(ge), {
897
927
  size: 18,
898
928
  "stroke-width": 2,
899
929
  class: "tpl:text-[var(--tpl-primary)]"
@@ -923,7 +953,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
923
953
  let { t: n } = H();
924
954
  return (r, i) => t.visible ? (e(), m("div", At, w(C(n).history.collabWarning), 1)) : v("", !0);
925
955
  }
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__*/ ge(/* @__PURE__ */ l({
956
+ }), 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__*/ Z(/* @__PURE__ */ l({
927
957
  __name: "CloudEditor",
928
958
  props: {
929
959
  config: {},
@@ -935,69 +965,71 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
935
965
  emits: ["ready"],
936
966
  setup(n, { expose: r, emit: a }) {
937
967
  let l = n;
938
- h(z, l.cloudTranslations);
939
- let u = a, d = o(null), p = o(null), _ = Be({
968
+ h(B, l.cloudTranslations);
969
+ let d = a, p = o(null), _ = o(null), S = Be({
940
970
  config: l.config,
941
971
  translations: l.translations,
942
972
  fontsManager: l.fontsManager,
943
- emit: u,
944
- getCommentsSidebar: () => d.value ? { filterByBlock: d.value.filterCommentsByBlock } : null,
973
+ emit: d,
974
+ getCommentsSidebar: () => p.value ? { filterByBlock: p.value.filterCommentsByBlock } : null,
945
975
  editorRoot: l.shadowRoot,
946
- containerEl: p
947
- }), { isInitializing: S, isAuthReady: D, initError: k, planConfigInstance: A, websocket: M, collaboration: N, isCollaborationEnabled: ee, editor: P, core: F, featureFlags: I, mediaLib: L, exporter: R, testEmail: B, commentsInstance: ne, savedModulesHeadless: re, panelState: V, snapshotPreview: H, collabWarning: U, showSaveModuleDialog: W, showModuleBrowserModal: G, saveModulePreSelectedBlockId: K, setThemeOverrides: ie, setUiTheme: J } = _, { showNotice: le } = te(() => l.config.smallScreenNotice);
948
- async function pe(e) {
976
+ containerEl: _
977
+ }), { isInitializing: D, isAuthReady: k, initError: A, planConfigInstance: M, websocket: N, collaboration: F, isCollaborationEnabled: I, editor: L, core: R, featureFlags: z, mediaLib: ee, exporter: te, testEmail: V, commentsInstance: ne, savedModulesHeadless: re, panelState: H, snapshotPreview: U, collabWarning: W, showSaveModuleDialog: G, showModuleBrowserModal: K, saveModulePreSelectedBlockId: q, setThemeOverrides: J, setUiTheme: le } = S, { showNotice: pe } = P(() => l.config.smallScreenNotice);
978
+ async function me(e) {
949
979
  try {
950
- await B.sendTestEmail(e), V.testEmailModalOpen.value = !1;
980
+ await V.sendTestEmail(e), H.testEmailModalOpen.value = !1;
951
981
  } catch {}
952
982
  }
953
- async function me() {
983
+ async function he() {
954
984
  try {
955
- await H.confirmRestoreSnapshot();
985
+ await U.confirmRestoreSnapshot();
956
986
  } catch {}
957
987
  }
958
- function he(e, t) {
988
+ function ge(e, t) {
959
989
  for (let n = 0; n < e.content.length; n++) {
960
990
  let r = j(e.content[n]), i = t === void 0 ? void 0 : t + n;
961
- P.addBlock(r, void 0, void 0, i);
991
+ L.addBlock(r, void 0, void 0, i);
962
992
  }
963
- G.value = !1;
993
+ K.value = !1;
964
994
  }
965
995
  let Y = He({
966
996
  config: l.config,
967
- editor: P,
968
- websocket: M,
969
- planConfigInstance: A,
970
- snapshotPreview: H,
971
- core: F,
972
- exporter: R,
973
- featureFlags: I,
974
- isDestroyed: _.isDestroyed
997
+ editor: L,
998
+ websocket: N,
999
+ planConfigInstance: M,
1000
+ snapshotPreview: U,
1001
+ core: R,
1002
+ exporter: te,
1003
+ featureFlags: z,
1004
+ isDestroyed: S.isDestroyed
975
1005
  }), X = Ue({
976
- issues: F.templateLint ? F.templateLint.issues : o([]),
977
- planConfig: A.config
1006
+ issues: R.templateLint ? R.templateLint.issues : o([]),
1007
+ planConfig: M.config
978
1008
  });
979
1009
  async function Z() {
980
1010
  await X.tryRunSave(() => Y.saveTemplate().catch((e) => l.config.onError?.(e)));
981
1011
  }
982
- return _.onSaveHook.value = Z, i(() => {
983
- _.initialize();
1012
+ return S.onSaveHook.value = Z, i(() => {
1013
+ S.initialize();
984
1014
  }), g(() => {
985
- _.destroy();
1015
+ S.destroy();
986
1016
  }), r({
987
- getContent: () => P.content.value,
988
- setContent: (e) => P.setContent(e),
989
- setTheme: J,
990
- setThemeOverrides: ie,
1017
+ getContent: () => L.content.value,
1018
+ setContent: (e) => L.setContent(e),
1019
+ setTheme: le,
1020
+ setThemeOverrides: J,
991
1021
  create: Y.createTemplate,
992
1022
  load: Y.loadTemplate,
993
1023
  save: Y.saveTemplate,
994
- sendTestEmail: B.sendTestEmail
1024
+ sendTestEmail: V.sendTestEmail
995
1025
  }), (r, i) => (e(), m("div", {
996
1026
  ref_key: "rootEl",
997
- ref: p,
998
- class: c(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": C(P).state.darkMode }]),
999
- "data-tpl-theme": C(F).resolvedTheme.value,
1000
- style: b(C(F).themeStyles.value)
1027
+ ref: _,
1028
+ class: c(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": C(L).state.darkMode }]),
1029
+ "data-tpl-theme": C(R).resolvedTheme.value,
1030
+ style: b(C(R).themeStyles.value),
1031
+ onDragover: i[9] ||= u(() => {}, ["prevent"]),
1032
+ onDrop: i[10] ||= u(() => {}, ["prevent"])
1001
1033
  }, [
1002
1034
  E(oe),
1003
1035
  E(T, {
@@ -1008,7 +1040,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1008
1040
  "leave-from-class": "tpl:opacity-100",
1009
1041
  "leave-to-class": "tpl:opacity-0"
1010
1042
  }, {
1011
- default: O(() => [E(yt, { visible: C(S) || C(P).state.isLoading }, null, 8, ["visible"])]),
1043
+ default: O(() => [E(yt, { visible: C(D) || C(L).state.isLoading }, null, 8, ["visible"])]),
1012
1044
  _: 1
1013
1045
  }),
1014
1046
  E(T, {
@@ -1020,9 +1052,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1020
1052
  "leave-to-class": "tpl:opacity-0"
1021
1053
  }, {
1022
1054
  default: O(() => [E(Tt, {
1023
- error: C(k),
1024
- visible: !!C(k) && !C(S),
1025
- onRetry: C(_).initialize
1055
+ error: C(A),
1056
+ visible: !!C(A) && !C(D),
1057
+ onRetry: C(S).initialize
1026
1058
  }, null, 8, [
1027
1059
  "error",
1028
1060
  "visible",
@@ -1031,18 +1063,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1031
1063
  _: 1
1032
1064
  }),
1033
1065
  E(mt, {
1034
- editor: C(P),
1035
- core: C(F),
1036
- "feature-flags": C(I),
1037
- "panel-state": C(V),
1038
- "snapshot-preview": C(H),
1066
+ editor: C(L),
1067
+ core: C(R),
1068
+ "feature-flags": C(z),
1069
+ "panel-state": C(H),
1070
+ "snapshot-preview": C(U),
1039
1071
  "comments-instance": C(ne),
1040
- "test-email": C(B),
1041
- websocket: C(M),
1042
- collaboration: C(N),
1043
- "is-collaboration-enabled": C(ee),
1044
- "is-saving": C(P).state.isSaving || C(I).isSaveExporting.value,
1045
- "is-save-disabled": C(P).state.isSaving || C(I).isSaveExporting.value || !C(P).state.isDirty,
1072
+ "test-email": C(V),
1073
+ websocket: C(N),
1074
+ collaboration: C(F),
1075
+ "is-collaboration-enabled": C(I),
1076
+ "is-saving": C(L).state.isSaving || C(z).isSaveExporting.value,
1077
+ "is-save-disabled": C(L).state.isSaving || C(z).isSaveExporting.value || !C(L).state.isDirty,
1046
1078
  onSave: Z
1047
1079
  }, null, 8, [
1048
1080
  "editor",
@@ -1070,9 +1102,9 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1070
1102
  "onConfirm"
1071
1103
  ]),
1072
1104
  E(kt, {
1073
- visible: C(H).isPreviewingSnapshot.value,
1074
- onCancel: C(H).cancelPreview,
1075
- onConfirm: me
1105
+ visible: C(U).isPreviewingSnapshot.value,
1106
+ onCancel: C(U).cancelPreview,
1107
+ onConfirm: he
1076
1108
  }, null, 8, ["visible", "onCancel"]),
1077
1109
  E(T, {
1078
1110
  "enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
@@ -1082,18 +1114,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1082
1114
  "leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
1083
1115
  "leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
1084
1116
  }, {
1085
- default: O(() => [E(jt, { visible: C(U).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1117
+ default: O(() => [E(jt, { visible: C(W).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1086
1118
  _: 1
1087
1119
  }),
1088
- t(E(q, null, null, 512), [[y, !C(P).state.previewMode]]),
1120
+ t(E(ie, null, null, 512), [[y, !C(L).state.previewMode]]),
1089
1121
  f("div", {
1090
- class: c(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [C(P).state.previewMode ? "tpl:left-0 tpl:right-0" : C(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", C(H).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1122
+ class: c(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [C(L).state.previewMode ? "tpl:left-0 tpl:right-0" : C(H).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", C(U).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1091
1123
  style: {
1092
1124
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1093
1125
  "background-color": "var(--tpl-canvas-bg)"
1094
1126
  }
1095
1127
  }, [f("div", Nt, [E(T, { name: "tpl-restore-btn" }, {
1096
- default: O(() => [C(F).conditionPreview.hasHiddenBlocks.value ? (e(), m("button", {
1128
+ default: O(() => [C(R).conditionPreview.hasHiddenBlocks.value ? (e(), m("button", {
1097
1129
  key: 0,
1098
1130
  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",
1099
1131
  style: {
@@ -1102,22 +1134,22 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1102
1134
  "border-color": "var(--tpl-warning)",
1103
1135
  "backdrop-filter": "blur(8px)"
1104
1136
  },
1105
- onClick: i[0] ||= (e) => C(F).conditionPreview.reset()
1137
+ onClick: i[0] ||= (e) => C(R).conditionPreview.reset()
1106
1138
  }, [E(C(ae), {
1107
1139
  size: 13,
1108
1140
  "stroke-width": 2
1109
- }), s(" " + w(C(F).t.blockSettings.restoreHiddenBlocks), 1)])) : v("", !0)]),
1141
+ }), s(" " + w(C(R).t.blockSettings.restoreHiddenBlocks), 1)])) : v("", !0)]),
1110
1142
  _: 1
1111
1143
  })]), f("main", Pt, [E(fe, {
1112
- viewport: C(P).state.viewport,
1113
- content: C(P).content.value,
1114
- "selected-block-id": C(P).state.selectedBlockId,
1115
- "dark-mode": C(P).state.darkMode,
1116
- "preview-mode": C(P).state.previewMode,
1117
- "locked-blocks": C(N)?.lockedBlocks.value ?? void 0,
1118
- onSelectBlock: C(P).selectBlock,
1119
- onOpenAiChat: i[1] ||= (e) => C(V).aiChatOpen.value = !0,
1120
- onOpenDesignReference: i[2] ||= (e) => C(V).designReferenceOpen.value = !0
1144
+ viewport: C(L).state.viewport,
1145
+ content: C(L).content.value,
1146
+ "selected-block-id": C(L).state.selectedBlockId,
1147
+ "dark-mode": C(L).state.darkMode,
1148
+ "preview-mode": C(L).state.previewMode,
1149
+ "locked-blocks": C(F)?.lockedBlocks.value ?? void 0,
1150
+ onSelectBlock: C(L).selectBlock,
1151
+ onOpenAiChat: i[1] ||= (e) => C(H).aiChatOpen.value = !0,
1152
+ onOpenDesignReference: i[2] ||= (e) => C(H).designReferenceOpen.value = !0
1121
1153
  }, null, 8, [
1122
1154
  "viewport",
1123
1155
  "content",
@@ -1127,51 +1159,51 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1127
1159
  "locked-blocks",
1128
1160
  "onSelectBlock"
1129
1161
  ])])], 2),
1130
- n.config.branding !== !1 && !C(I).isWhiteLabeled.value ? (e(), x(se, {
1162
+ n.config.branding !== !1 && !C(z).isWhiteLabeled.value ? (e(), x(se, {
1131
1163
  key: 0,
1132
- "position-class": [C(P).state.previewMode ? "tpl:left-0 tpl:right-0" : C(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1164
+ "position-class": [C(L).state.previewMode ? "tpl:left-0 tpl:right-0" : C(H).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1133
1165
  }, null, 8, ["position-class"])) : v("", !0),
1134
1166
  f("div", {
1135
1167
  class: "tpl-sr-only",
1136
1168
  role: "status",
1137
1169
  "aria-live": "polite",
1138
1170
  "aria-atomic": "true",
1139
- "aria-label": C(F).t.landmarks.reorderAnnouncements
1140
- }, w(C(F).keyboardReorder.announcement.value), 9, Ft),
1171
+ "aria-label": C(R).t.landmarks.reorderAnnouncements
1172
+ }, w(C(R).keyboardReorder.announcement.value), 9, Ft),
1141
1173
  t(E(ue, {
1142
- "selected-block": C(P).selectedBlock.value,
1143
- settings: C(P).content.value.settings,
1144
- "shifted-left": C(V).rightPanelOpen.value,
1145
- onUpdateBlock: i[3] ||= (e) => C(P).updateBlock(C(P).selectedBlock.value.id, e),
1146
- onDeleteBlock: i[4] ||= (e) => C(F).blockActions.deleteBlock(C(P).selectedBlock.value.id),
1147
- onDuplicateBlock: i[5] ||= (e) => C(F).blockActions.duplicateBlock(C(P).selectedBlock.value),
1148
- onUpdateSettings: C(P).updateSettings
1174
+ "selected-block": C(L).selectedBlock.value,
1175
+ settings: C(L).content.value.settings,
1176
+ "shifted-left": C(H).rightPanelOpen.value,
1177
+ onUpdateBlock: i[3] ||= (e) => C(L).updateBlock(C(L).selectedBlock.value.id, e),
1178
+ onDeleteBlock: i[4] ||= (e) => C(R).blockActions.deleteBlock(C(L).selectedBlock.value.id),
1179
+ onDuplicateBlock: i[5] ||= (e) => C(R).blockActions.duplicateBlock(C(L).selectedBlock.value),
1180
+ onUpdateSettings: C(L).updateSettings
1149
1181
  }, null, 8, [
1150
1182
  "selected-block",
1151
1183
  "settings",
1152
1184
  "shifted-left",
1153
1185
  "onUpdateSettings"
1154
- ]), [[y, !C(P).state.previewMode]]),
1155
- !C(S) && C(D) ? (e(), x(ht, {
1186
+ ]), [[y, !C(L).state.previewMode]]),
1187
+ !C(D) && C(k) ? (e(), x(ht, {
1156
1188
  key: 1,
1157
1189
  ref_key: "cloudPanelsRef",
1158
- ref: d,
1190
+ ref: p,
1159
1191
  config: l.config,
1160
- editor: C(P),
1161
- core: C(F),
1162
- "panel-state": C(V),
1163
- "plan-config-instance": C(A),
1164
- "test-email": C(B),
1165
- "media-lib": C(L),
1192
+ editor: C(L),
1193
+ core: C(R),
1194
+ "panel-state": C(H),
1195
+ "plan-config-instance": C(M),
1196
+ "test-email": C(V),
1197
+ "media-lib": C(ee),
1166
1198
  "saved-modules-headless": C(re),
1167
- "show-save-module-dialog": C(W),
1168
- "save-module-pre-selected-block-id": C(K),
1169
- "show-module-browser-modal": C(G),
1170
- "onUpdate:showSaveModuleDialog": i[6] ||= (e) => W.value = e,
1171
- "onUpdate:saveModulePreSelectedBlockId": i[7] ||= (e) => K.value = e,
1172
- "onUpdate:showModuleBrowserModal": i[8] ||= (e) => G.value = e,
1173
- onSendTestEmail: pe,
1174
- onModuleInsert: he
1199
+ "show-save-module-dialog": C(G),
1200
+ "save-module-pre-selected-block-id": C(q),
1201
+ "show-module-browser-modal": C(K),
1202
+ "onUpdate:showSaveModuleDialog": i[6] ||= (e) => G.value = e,
1203
+ "onUpdate:saveModulePreSelectedBlockId": i[7] ||= (e) => q.value = e,
1204
+ "onUpdate:showModuleBrowserModal": i[8] ||= (e) => K.value = e,
1205
+ onSendTestEmail: me,
1206
+ onModuleInsert: ge
1175
1207
  }, null, 8, [
1176
1208
  "config",
1177
1209
  "editor",
@@ -1186,13 +1218,13 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1186
1218
  "show-module-browser-modal"
1187
1219
  ])) : v("", !0),
1188
1220
  f("div", {
1189
- ref: (e) => C(F).popoverRoot.value = e,
1221
+ ref: (e) => C(R).popoverRoot.value = e,
1190
1222
  class: "tpl-popover-root"
1191
1223
  }, null, 512),
1192
1224
  E(de),
1193
- C(le) ? (e(), x(ce, { key: 2 })) : v("", !0)
1194
- ], 14, Mt));
1225
+ C(pe) ? (e(), x(ce, { key: 2 })) : v("", !0)
1226
+ ], 46, Mt));
1195
1227
  }
1196
- }), [["__scopeId", "data-v-df1ba3f4"]]);
1228
+ }), [["__scopeId", "data-v-8c4fa160"]]);
1197
1229
  //#endregion
1198
1230
  export { It as default };