@templatical/editor 0.0.5 → 0.1.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 (169) hide show
  1. package/LICENSE +56 -0
  2. package/README.md +69 -0
  3. package/dist/{AiChatSidebar-DwME3f-a.js → AiChatSidebar-DSbBLDkW.js} +9 -9
  4. package/dist/{AiFeatureMenu-DJvWL1GZ.js → AiFeatureMenu-d04gmgud.js} +5 -5
  5. package/dist/{CloudEditor-Fe0ssRgi.js → CloudEditor-CjO4tzbV.js} +218 -227
  6. package/dist/{CollaboratorBar-DTT0EkZn.js → CollaboratorBar-DYBSTuMW.js} +3 -3
  7. package/dist/{CommentsSidebar-DrJhQRXK.js → CommentsSidebar-CQvUh5xt.js} +9 -9
  8. package/dist/CountdownBlock-D3olfssJ.js +92 -0
  9. package/dist/CountdownToolbar-ClpBwFoX.js +210 -0
  10. package/dist/{DesignReferenceSidebar-DdOht5zn.js → DesignReferenceSidebar-BOfeETis.js} +5 -5
  11. package/dist/{LoadingTrack-vK8W2PJf.js → LoadingTrack-CdqDYVR-.js} +1 -1
  12. package/dist/{ModuleBrowserModal-CiV_jOEM.js → ModuleBrowserModal-DKSSQonv.js} +7 -7
  13. package/dist/{ModulePreviewCanvas-Bmy6Y1WE.js → ModulePreviewCanvas-CoLNuu1o.js} +32 -32
  14. package/dist/NumberWithSuffix-_0l3Q4jq.js +424 -0
  15. package/dist/{ParagraphEditor-CoQ3NlS7.js → ParagraphEditor-C9R2ou7x.js} +57 -56
  16. package/dist/{RichTextEditorContent-CHJlh7HJ.js → RichTextEditorContent-BcY3Rcp4.js} +2 -2
  17. package/dist/{SaveModuleDialog-CD2ZYq1o.js → SaveModuleDialog-DmFe4VUc.js} +3 -3
  18. package/dist/{SnapshotHistory-DltsKvhP.js → SnapshotHistory-CAhikAOr.js} +7 -7
  19. package/dist/{TemplateScoringPanel-DmnmUE3y.js → TemplateScoringPanel-b5DnyIll.js} +10 -10
  20. package/dist/{TestEmailModal-Dl633j9o.js → TestEmailModal-BmDIzGYz.js} +3 -3
  21. package/dist/{TitleEditor-C7fds2Nc.js → TitleEditor-DtRYx-LS.js} +11 -11
  22. package/dist/{TplModal-C5_CF-qn.js → TplModal-BLbMDMd6.js} +4 -4
  23. package/dist/{_plugin-vue_export-helper-B1-bu7yR.js → _plugin-vue_export-helper-BHUPLLh1.js} +2 -2
  24. package/dist/{blockTypeIcons-BrKZB10B.js → blockTypeIcons-CEU2dMe1.js} +2 -2
  25. package/dist/cdn/chunks/{AiFeatureMenu-C5UQmEgV.js → AiFeatureMenu-DWMSYD2J.js} +4 -4
  26. package/dist/cdn/chunks/{AiFeatureMenu-C5UQmEgV.js.map → AiFeatureMenu-DWMSYD2J.js.map} +1 -1
  27. package/dist/cdn/chunks/{CloudEditor-DeTolKnf.js → CloudEditor-HrfSfr3G.js} +179 -188
  28. package/dist/cdn/chunks/CloudEditor-HrfSfr3G.js.map +1 -0
  29. package/dist/cdn/chunks/{CollaboratorBar-DO1nxSrr.js → CollaboratorBar-Cfok52TZ.js} +4 -4
  30. package/dist/cdn/chunks/{CollaboratorBar-DO1nxSrr.js.map → CollaboratorBar-Cfok52TZ.js.map} +1 -1
  31. package/dist/cdn/chunks/CountdownBlock-CkV21NEM.js +93 -0
  32. package/dist/cdn/chunks/CountdownBlock-CkV21NEM.js.map +1 -0
  33. package/dist/cdn/chunks/CountdownToolbar-CEmbR7kt.js +212 -0
  34. package/dist/cdn/chunks/CountdownToolbar-CEmbR7kt.js.map +1 -0
  35. package/dist/cdn/chunks/{ModuleBrowserModal-ChBr3aXj.js → ModuleBrowserModal-sASaPRot.js} +7 -7
  36. package/dist/cdn/chunks/{ModuleBrowserModal-ChBr3aXj.js.map → ModuleBrowserModal-sASaPRot.js.map} +1 -1
  37. package/dist/cdn/chunks/{ModulePreviewCanvas-DkSvri9H.js → ModulePreviewCanvas-D8zsajMf.js} +19 -19
  38. package/dist/cdn/chunks/{ModulePreviewCanvas-DkSvri9H.js.map → ModulePreviewCanvas-D8zsajMf.js.map} +1 -1
  39. package/dist/cdn/chunks/NumberWithSuffix-k5Te7Tuw.js +425 -0
  40. package/dist/cdn/chunks/NumberWithSuffix-k5Te7Tuw.js.map +1 -0
  41. package/dist/cdn/chunks/{ParagraphEditor-DU3oUKA7.js → ParagraphEditor-C1vQWGzW.js} +37 -37
  42. package/dist/cdn/chunks/ParagraphEditor-C1vQWGzW.js.map +1 -0
  43. package/dist/cdn/chunks/{RichTextEditorContent-BrsW1p9s.js → RichTextEditorContent-CT8dBB0R.js} +5 -5
  44. package/dist/cdn/chunks/{RichTextEditorContent-BrsW1p9s.js.map → RichTextEditorContent-CT8dBB0R.js.map} +1 -1
  45. package/dist/cdn/chunks/{SaveModuleDialog-CjqKkTEc.js → SaveModuleDialog-BkwKrB0N.js} +5 -5
  46. package/dist/cdn/chunks/{SaveModuleDialog-CjqKkTEc.js.map → SaveModuleDialog-BkwKrB0N.js.map} +1 -1
  47. package/dist/cdn/chunks/{TitleEditor-C8FYbadT.js → TitleEditor-BXqt42Px.js} +11 -11
  48. package/dist/cdn/chunks/{TitleEditor-C8FYbadT.js.map → TitleEditor-BXqt42Px.js.map} +1 -1
  49. package/dist/cdn/chunks/{blockTypeIcons-5QwYklNq.js → blockTypeIcons-BS6pWyGO.js} +3 -3
  50. package/dist/cdn/chunks/{blockTypeIcons-5QwYklNq.js.map → blockTypeIcons-BS6pWyGO.js.map} +1 -1
  51. package/dist/cdn/chunks/{de-BvYD17KT.js → de-3exf7MYE.js} +1 -1
  52. package/dist/cdn/chunks/{de-BvYD17KT.js.map → de-3exf7MYE.js.map} +1 -1
  53. package/dist/cdn/chunks/{de-BB3dgVOc.js → de-C8LxVUsb.js} +1 -1
  54. package/dist/cdn/chunks/de-C8LxVUsb.js.map +1 -0
  55. package/dist/cdn/chunks/{dist-KYv9v_1z2.js → dist-BpOx-ugr.js} +10 -3
  56. package/dist/cdn/chunks/dist-BpOx-ugr.js.map +1 -0
  57. package/dist/cdn/chunks/{draggable-BQNU47zu.js → draggable-Bcb86AsV.js} +1591 -1563
  58. package/dist/cdn/chunks/draggable-Bcb86AsV.js.map +1 -0
  59. package/dist/cdn/chunks/{emojiData-BVEJHcNH.js → emojiData-DUHzsh4j.js} +1 -1
  60. package/dist/cdn/chunks/{emojiData-BVEJHcNH.js.map → emojiData-DUHzsh4j.js.map} +1 -1
  61. package/dist/cdn/chunks/{en-DeDcpnoS.js → en-BoEycuqw.js} +1 -1
  62. package/dist/cdn/chunks/en-BoEycuqw.js.map +1 -0
  63. package/dist/cdn/chunks/{en-CpotcOPr.js → en-KNPUKxYp.js} +1 -1
  64. package/dist/cdn/chunks/{en-CpotcOPr.js.map → en-KNPUKxYp.js.map} +1 -1
  65. package/dist/cdn/chunks/{extensions-Bj7USRLr.js → extensions-DBxH6pz0.js} +21 -21
  66. package/dist/cdn/chunks/{extensions-Bj7USRLr.js.map → extensions-DBxH6pz0.js.map} +1 -1
  67. package/dist/cdn/chunks/{features-Ds0XUfte.js → features-C3n7AeUc.js} +1338 -1422
  68. package/dist/cdn/chunks/features-C3n7AeUc.js.map +1 -0
  69. package/dist/cdn/chunks/{icons-fWsuSvgd.js → icons-Hmpb0_8s.js} +2 -2
  70. package/dist/cdn/chunks/icons-Hmpb0_8s.js.map +1 -0
  71. package/dist/cdn/chunks/{liquid.browser-C1VIYISn.js → liquid.browser-CEMn-ZqL.js} +24 -17
  72. package/dist/cdn/chunks/liquid.browser-CEMn-ZqL.js.map +1 -0
  73. package/dist/cdn/chunks/{media-library-BGQm_OyC.js → media-library-C1wCpRY1.js} +114 -110
  74. package/dist/cdn/chunks/media-library-C1wCpRY1.js.map +1 -0
  75. package/dist/cdn/chunks/{pusher-DJPhQnE8.js → pusher-DwSQn6BA.js} +11 -8
  76. package/dist/cdn/chunks/pusher-DwSQn6BA.js.map +1 -0
  77. package/dist/cdn/chunks/readableTextColor-Cd_cgWO_.js.map +1 -1
  78. package/dist/cdn/chunks/{rolldown-runtime-DPITmOBR.js → rolldown-runtime-BNuo_Jkg.js} +1 -1
  79. package/dist/cdn/chunks/{src-3i8rPuqd.js → src-BUszJqfd.js} +8 -8
  80. package/dist/cdn/chunks/{src-3i8rPuqd.js.map → src-BUszJqfd.js.map} +1 -1
  81. package/dist/cdn/chunks/{styleConstants-DFe3I4Op.js → styleConstants-DP1VOca8.js} +1 -1
  82. package/dist/cdn/chunks/{styleConstants-DFe3I4Op.js.map → styleConstants-DP1VOca8.js.map} +1 -1
  83. package/dist/cdn/chunks/{styles-Dgijy53u.js → styles-U2VFFgxC.js} +623 -1239
  84. package/dist/cdn/chunks/styles-U2VFFgxC.js.map +1 -0
  85. package/dist/cdn/chunks/{tiptap-BhxaWR8R.js → tiptap-w5IqC8oW.js} +1610 -1364
  86. package/dist/cdn/chunks/tiptap-w5IqC8oW.js.map +1 -0
  87. package/dist/cdn/editor.css +1 -1
  88. package/dist/cdn/editor.js +92 -97
  89. package/dist/cdn/editor.js.map +1 -1
  90. package/dist/{check-B7kDuZmP.js → check-BDE2uFIC.js} +1 -1
  91. package/dist/{chevron-down-DJLW2Q9Z.js → chevron-down-BL1DcOiT.js} +1 -1
  92. package/dist/{circle-alert-E2vYPs5r.js → circle-alert-1tetIFJU.js} +1 -1
  93. package/dist/{clock-lWIIQA3C.js → clock-CNc3isoG.js} +1 -1
  94. package/dist/{dist-DysAFIPy.js → dist-7SaUYnxo.js} +385 -357
  95. package/dist/{dist-DmOE-Ubp.js → dist-BKZ5gvJf.js} +5 -5
  96. package/dist/{dist-CG-vEqSU.js → dist-CLg2qE0p.js} +2 -2
  97. package/dist/dist-CdzaZZSx.js +5 -0
  98. package/dist/dist-Cl9giA3B.js +5 -0
  99. package/dist/{dist-C_ymrGFi.js → dist-CpHKN3mI.js} +541 -508
  100. package/dist/{dist-4LiM9FDd.js → dist-DMuaebdo.js} +2 -2
  101. package/dist/{dist-ChAGLpWo.js → dist-DW_4_uv3.js} +2 -2
  102. package/dist/{dist-C1BIRHCQ.js → dist-DYG6FL7b.js} +2 -2
  103. package/dist/{dist-DrvKRSU6.js → dist-DbFMBx8E.js} +2 -2
  104. package/dist/{dist-D_HQYSY-.js → dist-Dn9cOicG.js} +2 -2
  105. package/dist/{dist-Ci5lFuUy.js → dist-ENKQZrNg.js} +138 -132
  106. package/dist/{dist-Bu7veieH.js → dist-fEtcLxee.js} +15 -15
  107. package/dist/{extensions-DWx_jj8v.js → extensions-Y880c0sP.js} +3 -3
  108. package/dist/{image-up-X4xIq4ea.js → image-up-4ZmaHFga.js} +1 -1
  109. package/dist/index.d.ts +234 -0
  110. package/dist/{liquid.browser-BemTg3sZ.js → liquid.browser-DZ62L7up.js} +20 -15
  111. package/dist/{loader-circle-BTQQxC3l.js → loader-circle-C7YEH4do.js} +1 -1
  112. package/dist/{message-circle-Blgm6V_h.js → message-circle-B_lxRh4z.js} +1 -1
  113. package/dist/{refresh-cw-Bb4PEeW1.js → refresh-cw-DmZNoimV.js} +1 -1
  114. package/dist/rolldown-runtime-gEudmnaM.js +23 -0
  115. package/dist/{scan-line-7lZPfOdm.js → scan-line-Cc9KlXo5.js} +1 -1
  116. package/dist/{send-C0ltAQrv.js → send-CMwNWTPX.js} +1 -1
  117. package/dist/{shield-check-f-qv4RKs.js → shield-check-DZFf4LTh.js} +1 -1
  118. package/dist/{sparkles-KhBCGlqB.js → sparkles-D80W88H8.js} +1 -1
  119. package/dist/{styleConstants-Cxw88naD.js → styleConstants-Codo7aUT.js} +6 -45
  120. package/dist/styles-unyYKihg.js +2942 -0
  121. package/dist/templatical-editor.css +1 -1
  122. package/dist/templatical-editor.js +85 -90
  123. package/dist/text-align-start-Cje6pwo4.js +43 -0
  124. package/dist/{trash-2-OwjZ-guZ.js → trash-2-BWvxOB4Q.js} +1 -1
  125. package/dist/{triangle-alert-DOSRIUYZ.js → triangle-alert-C6y94qVX.js} +1 -1
  126. package/dist/{useEditorCore-DUGD6pq_.js → useEditorCore-CQwWl2js.js} +1143 -1247
  127. package/dist/{x-CGlq2XQe.js → x-IyhJ6V90.js} +1 -1
  128. package/package.json +70 -52
  129. package/dist/cdn/chunks/AiChatSidebar-X_Bv3Qys.js +0 -2
  130. package/dist/cdn/chunks/CloudEditor-DeTolKnf.js.map +0 -1
  131. package/dist/cdn/chunks/CommentsSidebar-4MTw_hue.js +0 -2
  132. package/dist/cdn/chunks/DesignReferenceSidebar-Bswh4Yx4.js +0 -2
  133. package/dist/cdn/chunks/ParagraphEditor-DU3oUKA7.js.map +0 -1
  134. package/dist/cdn/chunks/SnapshotHistory-KME4xmn_.js +0 -2
  135. package/dist/cdn/chunks/TemplateScoringPanel-DgB3xDN6.js +0 -2
  136. package/dist/cdn/chunks/TestEmailModal-DdpvRbYf.js +0 -2
  137. package/dist/cdn/chunks/de-BB3dgVOc.js.map +0 -1
  138. package/dist/cdn/chunks/dist-BF5c3Dr-.js +0 -2
  139. package/dist/cdn/chunks/dist-BGzvIxcJ.js +0 -2
  140. package/dist/cdn/chunks/dist-CFemF8rI.js +0 -2
  141. package/dist/cdn/chunks/dist-Co6uFhFK.js +0 -2
  142. package/dist/cdn/chunks/dist-DCikBY9K.js +0 -2
  143. package/dist/cdn/chunks/dist-DUILafAC.js +0 -2
  144. package/dist/cdn/chunks/dist-DghiKH0A.js +0 -2
  145. package/dist/cdn/chunks/dist-Dw8ckvfK.js +0 -2
  146. package/dist/cdn/chunks/dist-H07p0KAw.js +0 -2
  147. package/dist/cdn/chunks/dist-KYv9v_1z2.js.map +0 -1
  148. package/dist/cdn/chunks/dist-MjnKIc0W.js +0 -2
  149. package/dist/cdn/chunks/dist-odp0vGRv.js +0 -2
  150. package/dist/cdn/chunks/draggable-BQNU47zu.js.map +0 -1
  151. package/dist/cdn/chunks/en-DeDcpnoS.js.map +0 -1
  152. package/dist/cdn/chunks/features-Ds0XUfte.js.map +0 -1
  153. package/dist/cdn/chunks/icons-fWsuSvgd.js.map +0 -1
  154. package/dist/cdn/chunks/liquid.browser-C1VIYISn.js.map +0 -1
  155. package/dist/cdn/chunks/media-library-BGQm_OyC.js.map +0 -1
  156. package/dist/cdn/chunks/pusher-DJPhQnE8.js.map +0 -1
  157. package/dist/cdn/chunks/styles-Dgijy53u.js.map +0 -1
  158. package/dist/cdn/chunks/tiptap-BhxaWR8R.js.map +0 -1
  159. package/dist/dist-DkypH7qG.js +0 -5
  160. package/dist/dist-Dxnd0GRf.js +0 -5
  161. package/dist/styles-fdXNRqI3.js +0 -3556
  162. package/dist/templatical-editor.umd.cjs +0 -179
  163. /package/dist/cdn/chunks/{_rolldown_dynamic_import_helper-DMEI4TQ3.js → _rolldown_dynamic_import_helper-BRcA6nWq.js} +0 -0
  164. /package/dist/{de-D7TLGIPA.js → de-DCRASLfd.js} +0 -0
  165. /package/dist/{emojiData-BfWQS72m.js → emojiData-CyACq8qV.js} +0 -0
  166. /package/dist/{en-DvtiEMwP.js → en-BC0igPeg.js} +0 -0
  167. /package/dist/{formatRelativeTime-DX3FgqN9.js → formatRelativeTime-mRxw8HK8.js} +0 -0
  168. /package/dist/{readableTextColor-LDlmVEUv.js → readableTextColor-B809bF5J.js} +0 -0
  169. /package/dist/{useMergeTag-BZ3X0bNr.js → useMergeTag-CSXcnFBc.js} +0 -0
@@ -1,18 +1,18 @@
1
- import { F as e, S as t, t as n } from "./useEditorCore-DUGD6pq_.js";
2
- import { t as r } from "./timeouts-CmBrLeZA.js";
3
- import { s as i, t as a } from "./dist-CG-vEqSU.js";
4
- import { b as o, c as s, r as c, s as l, t as u, v as d, x as f } from "./keys-C0MQRs8d.js";
5
- import { t as p } from "./useI18n-D6m7ZUgY.js";
6
- import { n as m, t as h } from "./_plugin-vue_export-helper-B1-bu7yR.js";
7
- import { t as g } from "./check-B7kDuZmP.js";
8
- import { t as _ } from "./circle-alert-E2vYPs5r.js";
9
- import { a as v, c as y, i as b, n as x, o as S, r as C, s as w, t as T } from "./styles-fdXNRqI3.js";
10
- import { t as E } from "./clock-lWIIQA3C.js";
11
- import { t as D } from "./loader-circle-BTQQxC3l.js";
12
- import { t as O } from "./message-circle-Blgm6V_h.js";
13
- import { t as k } from "./send-C0ltAQrv.js";
14
- import { t as A } from "./sparkles-KhBCGlqB.js";
15
- import { d as j } from "./styleConstants-Cxw88naD.js";
1
+ import { t as e } from "./timeouts-CmBrLeZA.js";
2
+ import { s as t, t as n } from "./dist-CLg2qE0p.js";
3
+ import { b as r, c as i, r as a, s as o, t as s, v as c, x as l } from "./keys-C0MQRs8d.js";
4
+ import { t as u } from "./useI18n-D6m7ZUgY.js";
5
+ import { P as d, S as f, t as p } from "./useEditorCore-CQwWl2js.js";
6
+ import { n as m, t as h } from "./_plugin-vue_export-helper-BHUPLLh1.js";
7
+ import { t as g } from "./check-BDE2uFIC.js";
8
+ import { t as _ } from "./circle-alert-1tetIFJU.js";
9
+ import { a as v, c as y, i as b, n as x, o as S, r as C, s as w, t as T } from "./styles-unyYKihg.js";
10
+ import { t as E } from "./clock-CNc3isoG.js";
11
+ import { t as D } from "./loader-circle-C7YEH4do.js";
12
+ import { t as O } from "./message-circle-B_lxRh4z.js";
13
+ import { t as k } from "./send-CMwNWTPX.js";
14
+ import { t as A } from "./sparkles-D80W88H8.js";
15
+ import { d as j } from "./styleConstants-Codo7aUT.js";
16
16
  import { Fragment as M, Transition as N, computed as P, createBlock as F, createCommentVNode as I, createElementBlock as L, createElementVNode as R, createStaticVNode as z, createTextVNode as B, createVNode as V, defineAsyncComponent as H, defineComponent as U, normalizeClass as W, normalizeStyle as G, onMounted as K, onScopeDispose as q, onUnmounted as ee, openBlock as J, provide as Y, ref as X, renderList as te, shallowRef as ne, toDisplayString as Z, unref as Q, vShow as re, watch as ie, withCtx as $, withDirectives as ae, withModifiers as oe } from "vue";
17
17
  import { cloneBlock as se, isCustomBlock as ce } from "@templatical/types";
18
18
  import { AuthManager as le, performHealthCheck as ue, resolveWebSocketConfig as de, useAiConfig as fe, useCollaboration as pe, useCollaborationBroadcast as me, useCommentListener as he, useComments as ge, useEditor as _e, useExport as ve, useMcpListener as ye, usePlanConfig as be, useSavedModules as xe, useSnapshotHistory as Se, useTemplateScoring as Ce, useTestEmail as we, useWebSocket as Te } from "@templatical/core/cloud";
@@ -87,13 +87,13 @@ function Oe() {
87
87
  let e = X(null), t = P({
88
88
  get: () => e.value === "ai-chat",
89
89
  set: (t) => e.value = t ? "ai-chat" : null
90
- }), n = P({
90
+ }), r = P({
91
91
  get: () => e.value === "scoring",
92
92
  set: (t) => e.value = t ? "scoring" : null
93
- }), r = P({
93
+ }), i = P({
94
94
  get: () => e.value === "design-reference",
95
95
  set: (t) => e.value = t ? "design-reference" : null
96
- }), i = P({
96
+ }), a = P({
97
97
  get: () => e.value === "comments",
98
98
  set: (t) => e.value = t ? "comments" : null
99
99
  }), o = X(!1), s = X(!1), c = X(void 0), l = X(!1), u = X(null), d = P(() => e.value !== null), f = P(() => {
@@ -106,14 +106,14 @@ function Oe() {
106
106
  function h(t) {
107
107
  l.value = !1, e.value = e.value === t ? null : t;
108
108
  }
109
- return a(u, () => {
109
+ return n(u, () => {
110
110
  l.value = !1;
111
111
  }), {
112
112
  activePanel: e,
113
113
  aiChatOpen: t,
114
- scoringPanelOpen: n,
115
- designReferenceOpen: r,
116
- commentsOpen: i,
114
+ scoringPanelOpen: r,
115
+ designReferenceOpen: i,
116
+ commentsOpen: a,
117
117
  testEmailModalOpen: o,
118
118
  mediaLibraryOpen: s,
119
119
  mediaLibraryAccept: c,
@@ -128,12 +128,12 @@ function Oe() {
128
128
  }
129
129
  //#endregion
130
130
  //#region src/cloud/composables/useCollabUndoWarning.ts
131
- function ke(e) {
132
- let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: a } = e, o = X(!1), s = X(!1), { start: c } = i(() => {
131
+ function ke(n) {
132
+ let { isCollaborationEnabled: r, getCollaboratorCount: i, canUndo: a } = n, o = X(!1), s = X(!1), { start: c } = t(() => {
133
133
  s.value = !1;
134
- }, r, { immediate: !1 });
134
+ }, e, { immediate: !1 });
135
135
  function l() {
136
- o.value || !t.value || n() === 0 || !a.value || (o.value = !0, s.value = !0, c());
136
+ o.value || !r.value || i() === 0 || !a.value || (o.value = !0, s.value = !0, c());
137
137
  }
138
138
  return {
139
139
  collabUndoWarningVisible: s,
@@ -143,7 +143,7 @@ function ke(e) {
143
143
  //#endregion
144
144
  //#region src/cloud/composables/useCloudFeatureFlags.ts
145
145
  function Ae(e) {
146
- let { planConfigInstance: t, aiConfig: n, editor: r } = e, a = P(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), o = P(() => t.hasFeature("test_email")), s = P(() => !!r.state.template?.id), c = P(() => t.hasFeature("white_label")), l = P(() => t.config.value?.limits.max_templates ?? null), u = P(() => t.config.value?.template_count ?? 0), d = X(!1), f = X("idle"), p = X(""), { start: m } = i(() => {
146
+ let { planConfigInstance: n, aiConfig: r, editor: i } = e, a = P(() => n.hasFeature("ai_generation") && r.hasAnyMenuFeature.value), o = P(() => n.hasFeature("test_email")), s = P(() => !!i.state.template?.id), c = P(() => n.hasFeature("white_label")), l = P(() => n.config.value?.limits.max_templates ?? null), u = P(() => n.config.value?.template_count ?? 0), d = X(!1), f = X("idle"), p = X(""), { start: m } = t(() => {
147
147
  f.value = "idle";
148
148
  }, 3e3, { immediate: !1 });
149
149
  return {
@@ -196,68 +196,68 @@ function je(e) {
196
196
  }
197
197
  //#endregion
198
198
  //#region src/cloud/composables/useCloudInitialization.ts
199
- function Me(r) {
200
- let { config: i, translations: a, fontsManager: p, emit: m, getCommentsSidebar: h } = r, g = X(!0), _ = X(!1), v = X(null), y = !1, b = { value: null }, x = null, S = null, C = new le({
201
- ...i.auth,
202
- onError: i.onError
199
+ function Me(e) {
200
+ let { config: t, translations: n, fontsManager: u, emit: m, getCommentsSidebar: h } = e, g = X(!0), _ = X(!1), v = X(null), y = !1, b = { value: null }, x = null, S = null, C = new le({
201
+ ...t.auth,
202
+ onError: t.onError
203
203
  }), w = be({
204
204
  authManager: C,
205
- onError: i.onError
205
+ onError: t.onError
206
206
  }), T = X(/* @__PURE__ */ new Map()), E = _e({
207
207
  authManager: C,
208
- defaultFontFamily: i.fonts?.defaultFont,
209
- templateDefaults: i.templateDefaults,
210
- onError: i.onError,
208
+ defaultFontFamily: t.fonts?.defaultFont,
209
+ templateDefaults: t.templateDefaults,
210
+ onError: t.onError,
211
211
  lockedBlocks: T
212
212
  }), D = Te({
213
213
  authManager: C,
214
- onError: i.onError
214
+ onError: t.onError
215
215
  });
216
- i.mcp?.enabled && ye({
216
+ t.mcp?.enabled && ye({
217
217
  editor: E,
218
218
  channel: D.channel,
219
- onOperation: i.mcp.onOperation
219
+ onOperation: t.mcp.onOperation
220
220
  });
221
221
  let O = null;
222
- i.collaboration?.enabled && (O = pe({
222
+ t.collaboration?.enabled && (O = pe({
223
223
  authManager: C,
224
224
  editor: E,
225
225
  channel: D.channel,
226
- onError: i.onError,
227
- onCollaboratorJoined: i.collaboration.onCollaboratorJoined,
228
- onCollaboratorLeft: i.collaboration.onCollaboratorLeft,
229
- onBlockLocked: i.collaboration.onBlockLocked,
230
- onBlockUnlocked: i.collaboration.onBlockUnlocked
226
+ onError: t.onError,
227
+ onCollaboratorJoined: t.collaboration.onCollaboratorJoined,
228
+ onCollaboratorLeft: t.collaboration.onCollaboratorLeft,
229
+ onBlockLocked: t.collaboration.onBlockLocked,
230
+ onBlockUnlocked: t.collaboration.onBlockUnlocked
231
231
  }), ie(() => O.lockedBlocks.value, (e) => {
232
232
  T.value = e;
233
233
  }, { immediate: !0 }), me(E, O));
234
- let k = P(() => !!i.collaboration?.enabled && w.hasFeature("collaboration")), A = n({
234
+ let k = P(() => !!t.collaboration?.enabled && w.hasFeature("collaboration")), A = p({
235
235
  editor: E,
236
236
  config: {
237
- uiTheme: i.uiTheme,
237
+ uiTheme: t.uiTheme,
238
238
  theme: void 0,
239
- blockDefaults: i.blockDefaults,
239
+ blockDefaults: t.blockDefaults,
240
240
  customBlocks: [],
241
- mergeTags: i.mergeTags,
242
- displayConditions: i.displayConditions,
241
+ mergeTags: t.mergeTags,
242
+ displayConditions: t.displayConditions,
243
243
  onRequestMedia: null,
244
244
  onSave: () => {
245
245
  b.value?.().catch((e) => {
246
- i.onError?.(e);
246
+ t.onError?.(e);
247
247
  });
248
248
  }
249
249
  },
250
- translations: a,
251
- fontsManager: p,
250
+ translations: n,
251
+ fontsManager: u,
252
252
  historyOptions: O ? { isRemoteOperation: () => O._isProcessingRemoteOperation() } : void 0,
253
253
  autoSaveOptions: {
254
254
  onChange: async () => {
255
255
  E.hasTemplate() && (await E.createSnapshot(), x?.snapshotHistoryInstance.value?.loadSnapshots());
256
256
  },
257
- debounce: i.autoSaveDebounce ?? 5e3,
258
- enabled: () => i.autoSave !== !1 && w.hasFeature("auto_save")
257
+ debounce: t.autoSaveDebounce ?? 5e3,
258
+ enabled: () => t.autoSave !== !1 && w.hasFeature("auto_save")
259
259
  },
260
- themeExtraStyles: () => ({ "--tpl-drop-text": `"${a.canvas.dropHere}"` }),
260
+ themeExtraStyles: () => ({ "--tpl-drop-text": `"${n.canvas.dropHere}"` }),
261
261
  keyboardOptions: { onBeforeUndo: () => S?.showCollabUndoWarning() }
262
262
  }), j = ke({
263
263
  isCollaborationEnabled: k,
@@ -271,42 +271,42 @@ function Me(r) {
271
271
  history: A.history,
272
272
  conditionPreview: A.conditionPreview,
273
273
  autoSave: A.autoSave,
274
- onError: i.onError
274
+ onError: t.onError
275
275
  });
276
276
  x = M;
277
- let N = Oe(), F = fe(i.ai), I = Ae({
277
+ let N = Oe(), F = fe(t.ai), I = Ae({
278
278
  planConfigInstance: w,
279
279
  aiConfig: F,
280
280
  editor: E
281
281
  }), L = je({
282
- onRequestMedia: i.onRequestMedia,
282
+ onRequestMedia: t.onRequestMedia,
283
283
  mediaLibraryOpen: N.mediaLibraryOpen,
284
284
  mediaLibraryAccept: N.mediaLibraryAccept
285
285
  });
286
- t({
286
+ f({
287
287
  onBlockMove: E.moveBlock,
288
288
  onBlockAdd: E.addBlock
289
289
  });
290
290
  let R = ve({
291
291
  authManager: C,
292
- getFontsConfig: () => i.fonts,
292
+ getFontsConfig: () => t.fonts,
293
293
  canUseCustomFonts: () => w.hasFeature("custom_fonts")
294
294
  }), z = we({
295
295
  authManager: C,
296
296
  getTemplateId: () => E.state.template?.id ?? null,
297
297
  save: () => E.save(),
298
298
  exportHtml: (e) => R.exportHtml(e),
299
- onError: i.onError,
299
+ onError: t.onError,
300
300
  isAuthReady: _,
301
- onBeforeTestEmail: i.onBeforeTestEmail
301
+ onBeforeTestEmail: t.onBeforeTestEmail
302
302
  }), B = ge({
303
303
  authManager: C,
304
304
  getTemplateId: () => E.state.template?.id ?? null,
305
305
  getSocketId: () => D.getSocketId(),
306
- onComment: i.onComment,
307
- onError: i.onError,
306
+ onComment: t.onComment,
307
+ onError: t.onError,
308
308
  isAuthReady: _,
309
- hasCommentingFeature: () => i.commenting !== !1 && w.hasFeature("commenting")
309
+ hasCommentingFeature: () => t.commenting !== !1 && w.hasFeature("commenting")
310
310
  });
311
311
  he({
312
312
  comments: B,
@@ -314,7 +314,7 @@ function Me(r) {
314
314
  });
315
315
  let V = xe({
316
316
  authManager: C,
317
- onError: i.onError
317
+ onError: t.onError
318
318
  }), H = X(!1), U = X(null), W = X(!1), G = Ce({
319
319
  authManager: C,
320
320
  getTemplateId: () => E.state.template?.id ?? null
@@ -324,7 +324,7 @@ function Me(r) {
324
324
  h()?.filterByBlock(e);
325
325
  });
326
326
  }
327
- Y(d, L.handleRequestMedia), Y(c, C), Y(u, F), Y(s, B), Y(o, V), Y(f, G), Y(l, {
327
+ Y(c, L.handleRequestMedia), Y(a, C), Y(s, F), Y(i, B), Y(r, V), Y(l, G), Y(o, {
328
328
  plan: w,
329
329
  ai: F,
330
330
  comments: {
@@ -352,22 +352,22 @@ function Me(r) {
352
352
  try {
353
353
  if (await C.initialize(), y) return;
354
354
  _.value = !0;
355
- let t = await ue({ authManager: C });
355
+ let e = await ue({ authManager: C });
356
356
  if (y) return;
357
- if (!t.api.ok) throw Error("Health check failed: API is not reachable");
358
- if (!t.auth.ok) throw Error(`Health check failed: authentication error${t.auth.error ? ` - ${t.auth.error}` : ""}`);
359
- if (t.websocket.ok || e.warn("WebSocket health check failed:", t.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await w.fetchConfig(), y) return;
360
- p.setCustomFontsEnabled(w.hasFeature("custom_fonts")), i.customBlocks?.length && w.hasFeature("custom_blocks") && A.registerCustomBlocks(i.customBlocks), i.theme && w.hasFeature("theme_customization") && (A.themeOverrides.value = i.theme), i.modules !== !1 && w.hasFeature("saved_modules") && V.loadModules(), m("ready");
357
+ if (!e.api.ok) throw Error("Health check failed: API is not reachable");
358
+ if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
359
+ if (e.websocket.ok || d.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await w.fetchConfig(), y) return;
360
+ u.setCustomFontsEnabled(w.hasFeature("custom_fonts")), t.customBlocks?.length && w.hasFeature("custom_blocks") && A.registerCustomBlocks(t.customBlocks), t.theme && w.hasFeature("theme_customization") && (A.themeOverrides.value = t.theme), t.modules !== !1 && w.hasFeature("saved_modules") && V.loadModules(), m("ready");
361
361
  } catch (e) {
362
362
  if (y) return;
363
- let t = e instanceof Error ? e : Error("Initialization failed", { cause: e });
364
- v.value = t, i.onError?.(t);
363
+ let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
364
+ v.value = n, t.onError?.(n);
365
365
  } finally {
366
366
  y || (g.value = !1);
367
367
  }
368
368
  }
369
369
  function te() {
370
- y = !0, p.cleanupFontLinks(), D.disconnect(), A.destroy(), i.onUnmount?.();
370
+ y = !0, u.cleanupFontLinks(), D.disconnect(), A.destroy(), t.onUnmount?.();
371
371
  }
372
372
  return {
373
373
  isInitializing: g,
@@ -478,30 +478,26 @@ var Fe = {
478
478
  }
479
479
  }, Ie = { class: "tpl-header-left tpl:flex tpl:min-w-[200px] tpl:items-center tpl:gap-3" }, Le = {
480
480
  key: 0,
481
- class: "tpl-logo tpl:flex tpl:items-center tpl:gap-2.5 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
482
- }, Re = ["src"], ze = { style: { "letter-spacing": "-0.01em" } }, Be = {
483
- key: 1,
484
481
  class: "tpl:text-xs tpl:opacity-60 tpl:text-[var(--tpl-text-muted)]"
485
- }, Ve = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, He = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, Ue = ["data-tooltip"], We = {
482
+ }, Re = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, ze = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, Be = ["data-tooltip"], Ve = {
486
483
  key: 1,
487
484
  "aria-live": "polite",
488
485
  class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-success)]"
489
- }, Ge = {
486
+ }, He = {
490
487
  key: 2,
491
488
  "aria-live": "polite",
492
489
  class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
493
- }, Ke = ["aria-label", "aria-expanded"], qe = {
490
+ }, Ue = ["aria-label", "aria-expanded"], We = {
494
491
  key: 0,
495
492
  class: "tpl:inline-flex tpl:size-4.5 tpl:items-center tpl:justify-center tpl:rounded-full tpl:text-[10px] tpl:font-semibold tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]"
496
- }, Je = ["aria-expanded"], Ye = {
493
+ }, Ge = ["aria-expanded"], Ke = {
497
494
  key: 0,
498
495
  class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
499
- }, Xe = ["disabled"], Ze = ["disabled"], Qe = /* @__PURE__ */ U({
496
+ }, qe = ["disabled"], Je = ["disabled"], Ye = /* @__PURE__ */ U({
500
497
  __name: "CloudHeader",
501
498
  props: {
502
499
  editor: {},
503
500
  core: {},
504
- authManager: {},
505
501
  featureFlags: {},
506
502
  panelState: {},
507
503
  snapshotPreview: {},
@@ -515,19 +511,13 @@ var Fe = {
515
511
  },
516
512
  emits: ["save"],
517
513
  setup(e) {
518
- let t = H(() => import("./CollaboratorBar-DTT0EkZn.js")), n = H(() => import("./SnapshotHistory-DltsKvhP.js")), r = H(() => import("./AiFeatureMenu-DJvWL1GZ.js"));
514
+ let t = H(() => import("./CollaboratorBar-DYBSTuMW.js")), n = H(() => import("./SnapshotHistory-CAhikAOr.js")), r = H(() => import("./AiFeatureMenu-d04gmgud.js"));
519
515
  return (i, a) => (J(), L("header", Fe, [
520
- R("div", Ie, [e.featureFlags.isWhiteLabeled.value ? I("", !0) : (J(), L("div", Le, [R("img", {
521
- src: e.authManager.resolveUrl("/logo.svg"),
522
- alt: "Templatical",
523
- width: "24",
524
- height: "24",
525
- class: "tpl:shrink-0"
526
- }, null, 8, Re), R("span", ze, Z(e.core.t.header.title), 1)])), e.featureFlags.templateLimit.value === null ? I("", !0) : (J(), L("span", Be, Z(e.core.format(e.core.t.header.templatesUsed, {
516
+ R("div", Ie, [e.featureFlags.templateLimit.value === null ? I("", !0) : (J(), L("span", Le, Z(e.core.format(e.core.t.header.templatesUsed, {
527
517
  used: e.featureFlags.templateCount.value,
528
518
  max: e.featureFlags.templateLimit.value
529
519
  })), 1))]),
530
- R("div", Ve, [
520
+ R("div", Re, [
531
521
  V(b, {
532
522
  viewport: e.editor.state.viewport,
533
523
  onChange: e.editor.setViewport
@@ -560,7 +550,7 @@ var Fe = {
560
550
  "onNavigate"
561
551
  ])) : I("", !0)
562
552
  ]),
563
- R("div", He, [
553
+ R("div", ze, [
564
554
  e.featureFlags.saveStatus.value === "error" ? (J(), L("div", {
565
555
  key: 0,
566
556
  "aria-live": "assertive",
@@ -569,10 +559,10 @@ var Fe = {
569
559
  }, [V(Q(_), {
570
560
  size: 12,
571
561
  "stroke-width": 2.5
572
- }), B(" " + Z(e.core.t.header.saveFailed), 1)], 8, Ue)) : e.featureFlags.saveStatus.value === "saved" ? (J(), L("div", We, [V(Q(g), {
562
+ }), B(" " + Z(e.core.t.header.saveFailed), 1)], 8, Be)) : e.featureFlags.saveStatus.value === "saved" ? (J(), L("div", Ve, [V(Q(g), {
573
563
  size: 12,
574
564
  "stroke-width": 2.5
575
- }), B(" " + Z(e.core.t.header.saved), 1)])) : e.editor.state.isDirty ? (J(), L("div", Ge, [a[4] ||= R("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), B(" " + Z(e.core.t.header.unsaved), 1)])) : I("", !0),
565
+ }), B(" " + Z(e.core.t.header.saved), 1)])) : e.editor.state.isDirty ? (J(), L("div", He, [a[4] ||= R("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), B(" " + Z(e.core.t.header.unsaved), 1)])) : I("", !0),
576
566
  e.commentsInstance.isEnabled.value && e.featureFlags.hasTemplateSaved.value ? (J(), L("button", {
577
567
  key: 3,
578
568
  "aria-label": e.commentsInstance.unresolvedCount.value > 0 ? `${e.core.t.comments.button} (${e.commentsInstance.unresolvedCount.value})` : e.core.t.comments.button,
@@ -590,8 +580,8 @@ var Fe = {
590
580
  "stroke-width": 2
591
581
  }),
592
582
  B(" " + Z(e.core.t.comments.button) + " ", 1),
593
- e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (J(), L("span", qe, Z(e.commentsInstance.unresolvedCount.value), 1)) : I("", !0)
594
- ], 14, Ke)) : I("", !0),
583
+ e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (J(), L("span", We, Z(e.commentsInstance.unresolvedCount.value), 1)) : I("", !0)
584
+ ], 14, Ue)) : I("", !0),
595
585
  e.featureFlags.canUseAiGeneration.value && e.featureFlags.hasTemplateSaved.value ? (J(), L("div", {
596
586
  key: 4,
597
587
  ref: (t) => e.panelState.aiMenuRef.value = t,
@@ -604,7 +594,7 @@ var Fe = {
604
594
  size: 16,
605
595
  "stroke-width": 2,
606
596
  class: "tpl-ai-btn-icon"
607
- }), B(" " + Z(e.core.t.aiChat.button), 1)], 10, Je), V(N, {
597
+ }), B(" " + Z(e.core.t.aiChat.button), 1)], 10, Ge), V(N, {
608
598
  "enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
609
599
  "enter-from-class": "tpl:scale-95 tpl:opacity-0",
610
600
  "enter-to-class": "tpl:scale-100 tpl:opacity-100",
@@ -612,7 +602,7 @@ var Fe = {
612
602
  "leave-from-class": "tpl:scale-100 tpl:opacity-100",
613
603
  "leave-to-class": "tpl:scale-95 tpl:opacity-0"
614
604
  }, {
615
- default: $(() => [e.panelState.aiMenuOpen.value ? (J(), L("div", Ye, [V(Q(r), {
605
+ default: $(() => [e.panelState.aiMenuOpen.value ? (J(), L("div", Ke, [V(Q(r), {
616
606
  "active-feature": e.panelState.activeAiFeature.value,
617
607
  onSelect: e.panelState.handleAiFeatureSelect
618
608
  }, null, 8, ["active-feature", "onSelect"])])) : I("", !0)]),
@@ -637,7 +627,7 @@ var Fe = {
637
627
  key: 0,
638
628
  size: 16,
639
629
  "stroke-width": 2
640
- })), B(" " + Z(e.core.t.testEmail.button), 1)], 10, Xe)) : I("", !0),
630
+ })), B(" " + Z(e.core.t.testEmail.button), 1)], 10, qe)) : I("", !0),
641
631
  R("button", {
642
632
  class: W(Q(j)),
643
633
  style: {
@@ -656,11 +646,11 @@ var Fe = {
656
646
  key: 0,
657
647
  size: 16,
658
648
  "stroke-width": 2
659
- })), B(" " + Z(e.isSaving ? e.core.t.header.saving : e.core.t.header.save), 1)], 10, Ze)
649
+ })), B(" " + Z(e.isSaving ? e.core.t.header.saving : e.core.t.header.save), 1)], 10, Je)
660
650
  ])
661
651
  ]));
662
652
  }
663
- }), $e = /* @__PURE__ */ U({
653
+ }), Xe = /* @__PURE__ */ U({
664
654
  __name: "CloudPanels",
665
655
  props: {
666
656
  config: {},
@@ -683,15 +673,18 @@ var Fe = {
683
673
  "module-insert"
684
674
  ],
685
675
  setup(e, { expose: t, emit: n }) {
686
- let r = H(() => import("./AiChatSidebar-DwME3f-a.js")), i = H(() => import("./CommentsSidebar-DrJhQRXK.js")), a = H(() => import("./DesignReferenceSidebar-DdOht5zn.js")), o = H(() => import("./TemplateScoringPanel-DmnmUE3y.js")), s = H(() => import("./TestEmailModal-Dl633j9o.js")), c = H(() => import("./SaveModuleDialog-CD2ZYq1o.js")), l = H(() => import("./ModuleBrowserModal-CiV_jOEM.js")), u = H(async () => (await import("@templatical/media-library")).MediaLibraryModal), d = n;
676
+ let r = H(() => import("./AiChatSidebar-DSbBLDkW.js")), i = H(() => import("./CommentsSidebar-CQvUh5xt.js")), a = H(() => import("./DesignReferenceSidebar-BOfeETis.js")), o = H(() => import("./TemplateScoringPanel-b5DnyIll.js")), s = H(() => import("./TestEmailModal-BmDIzGYz.js")), c = H(() => import("./SaveModuleDialog-DmFe4VUc.js")), l = H(() => import("./ModuleBrowserModal-DKSSQonv.js")), u = H(async () => (await import("@templatical/media-library")).MediaLibraryModal), d = n;
687
677
  function f(e, t, n) {
688
678
  t.history.record(), n.setContent(e), t.conditionPreview.reset();
689
679
  }
690
- let p = X(null);
691
- function m(e) {
692
- p.value?.filterByBlock(e);
680
+ function p(e, t) {
681
+ d("module-insert", e, t);
682
+ }
683
+ let m = X(null);
684
+ function h(e) {
685
+ m.value?.filterByBlock(e);
693
686
  }
694
- return t({ filterCommentsByBlock: m }), (t, n) => (J(), L(M, null, [
687
+ return t({ filterCommentsByBlock: h }), (t, n) => (J(), L(M, null, [
695
688
  V(Q(r), {
696
689
  visible: e.panelState.aiChatOpen.value,
697
690
  "on-apply": (t) => f(t, e.core, e.editor),
@@ -709,7 +702,7 @@ var Fe = {
709
702
  }, null, 8, ["visible", "has-existing-blocks"]),
710
703
  V(Q(i), {
711
704
  ref_key: "commentsSidebar",
712
- ref: p,
705
+ ref: m,
713
706
  visible: e.panelState.commentsOpen.value,
714
707
  onClose: n[4] ||= (t) => e.panelState.commentsOpen.value = !1
715
708
  }, null, 8, ["visible"]),
@@ -739,7 +732,7 @@ var Fe = {
739
732
  key: 1,
740
733
  visible: e.showModuleBrowserModal,
741
734
  onClose: n[9] ||= (e) => d("update:showModuleBrowserModal", !1),
742
- onInsert: n[10] ||= (e, t) => d("module-insert", e, t)
735
+ onInsert: p
743
736
  }, null, 8, ["visible"])) : I("", !0),
744
737
  V(Q(u), {
745
738
  visible: e.panelState.mediaLibraryOpen.value,
@@ -754,23 +747,23 @@ var Fe = {
754
747
  ])
755
748
  ], 64));
756
749
  }
757
- }), et = {
750
+ }), Ze = {
758
751
  key: 0,
759
752
  class: "tpl-loading tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:bg-[var(--tpl-bg)]"
760
- }, tt = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, nt = { class: "tpl:flex tpl:w-12 tpl:shrink-0 tpl:flex-col tpl:items-center tpl:gap-4 tpl:py-5 tpl:border-r tpl:border-[var(--tpl-border)]" }, rt = /* @__PURE__ */ U({
753
+ }, Qe = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, $e = { class: "tpl:flex tpl:w-12 tpl:shrink-0 tpl:flex-col tpl:items-center tpl:gap-4 tpl:py-5 tpl:border-r tpl:border-[var(--tpl-border)]" }, et = /* @__PURE__ */ U({
761
754
  __name: "CloudLoadingOverlay",
762
755
  props: { visible: { type: Boolean } },
763
756
  setup(e) {
764
- return (t, n) => e.visible ? (J(), L("div", et, [n[1] ||= z("<div class=\"tpl:flex tpl:h-14 tpl:shrink-0 tpl:items-center tpl:justify-between tpl:px-4 tpl:border-b tpl:border-[var(--tpl-border)]\"><div class=\"tpl-shimmer tpl:h-5 tpl:w-28 tpl:rounded-[var(--tpl-radius-sm)]\"></div><div class=\"tpl:flex tpl:gap-3\"><div class=\"tpl-shimmer tpl:h-8 tpl:w-20 tpl:rounded-[var(--tpl-radius-sm)]\"></div><div class=\"tpl-shimmer tpl:h-8 tpl:w-20 tpl:rounded-[var(--tpl-radius-sm)]\"></div></div></div>", 1), R("div", tt, [R("div", nt, [(J(), L(M, null, te(5, (e) => R("div", {
757
+ return (t, n) => e.visible ? (J(), L("div", Ze, [n[1] ||= z("<div class=\"tpl:flex tpl:h-14 tpl:shrink-0 tpl:items-center tpl:justify-between tpl:px-4 tpl:border-b tpl:border-[var(--tpl-border)]\"><div class=\"tpl-shimmer tpl:h-5 tpl:w-28 tpl:rounded-[var(--tpl-radius-sm)]\"></div><div class=\"tpl:flex tpl:gap-3\"><div class=\"tpl-shimmer tpl:h-8 tpl:w-20 tpl:rounded-[var(--tpl-radius-sm)]\"></div><div class=\"tpl-shimmer tpl:h-8 tpl:w-20 tpl:rounded-[var(--tpl-radius-sm)]\"></div></div></div>", 1), R("div", Qe, [R("div", $e, [(J(), L(M, null, te(5, (e) => R("div", {
765
758
  key: e,
766
759
  class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
767
760
  })), 64))]), n[0] ||= z("<div class=\"tpl:flex tpl:flex-1 tpl:items-start tpl:justify-center tpl:overflow-auto tpl:p-8 tpl:bg-[var(--tpl-canvas-bg)]\"><div class=\"tpl:w-full tpl:max-w-[600px] tpl:rounded-[var(--tpl-radius)] tpl:p-6 tpl:bg-[var(--tpl-bg)] tpl:shadow-[var(--tpl-shadow-sm)]\"><div class=\"tpl:space-y-2 tpl:py-4\"><div class=\"tpl-shimmer tpl:h-3 tpl:w-3/4 tpl:rounded\"></div><div class=\"tpl-shimmer tpl:h-3 tpl:w-full tpl:rounded\"></div><div class=\"tpl-shimmer tpl:h-3 tpl:w-5/6 tpl:rounded\"></div></div><div class=\"tpl:py-4\"><div class=\"tpl-shimmer tpl:h-44 tpl:w-full tpl:rounded-[var(--tpl-radius-sm)]\"></div></div><div class=\"tpl:space-y-2 tpl:py-4\"><div class=\"tpl-shimmer tpl:h-3 tpl:w-full tpl:rounded\"></div><div class=\"tpl-shimmer tpl:h-3 tpl:w-2/3 tpl:rounded\"></div></div><div class=\"tpl:flex tpl:justify-center tpl:py-4\"><div class=\"tpl-shimmer tpl:h-10 tpl:w-36 tpl:rounded-[var(--tpl-radius-sm)]\"></div></div><div class=\"tpl:space-y-2 tpl:py-4\"><div class=\"tpl-shimmer tpl:mx-auto tpl:h-2.5 tpl:w-1/2 tpl:rounded\"></div><div class=\"tpl-shimmer tpl:mx-auto tpl:h-2.5 tpl:w-1/3 tpl:rounded\"></div></div></div></div><div class=\"tpl:flex tpl:w-[320px] tpl:shrink-0 tpl:flex-col tpl:gap-4 tpl:p-4 tpl:border-l tpl:border-[var(--tpl-border)]\"><div class=\"tpl-shimmer tpl:h-8 tpl:rounded-[var(--tpl-radius-sm)]\"></div><div class=\"tpl-shimmer tpl:h-32 tpl:rounded-[var(--tpl-radius)]\"></div><div class=\"tpl-shimmer tpl:h-32 tpl:rounded-[var(--tpl-radius)]\"></div></div>", 2)])])) : I("", !0);
768
761
  }
769
- }), it = {
762
+ }), tt = {
770
763
  key: 0,
771
764
  role: "alert",
772
765
  class: "tpl-error tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-6 tpl:px-8 tpl:bg-[var(--tpl-bg)]"
773
- }, at = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, ot = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, st = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, ct = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, lt = /* @__PURE__ */ U({
766
+ }, nt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, rt = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, it = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, at = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, ot = /* @__PURE__ */ U({
774
767
  __name: "CloudErrorOverlay",
775
768
  props: {
776
769
  error: {},
@@ -778,20 +771,20 @@ var Fe = {
778
771
  },
779
772
  emits: ["retry"],
780
773
  setup(e, { emit: t }) {
781
- let n = t, { t: r } = p();
774
+ let n = t, { t: r } = u();
782
775
  function i(e) {
783
776
  return "isUnauthorized" in e && e.isUnauthorized ? r.error.authFailed : "isNotFound" in e && e.isNotFound ? r.error.templateNotFound : r.error.defaultMessage;
784
777
  }
785
778
  function a(e) {
786
779
  return "isNotFound" in e && !!e.isNotFound;
787
780
  }
788
- return (t, o) => e.visible && e.error ? (J(), L("div", it, [
789
- R("div", at, [V(Q(_), {
781
+ return (t, o) => e.visible && e.error ? (J(), L("div", tt, [
782
+ R("div", nt, [V(Q(_), {
790
783
  size: 32,
791
784
  "stroke-width": 1.5,
792
785
  class: "tpl:text-[var(--tpl-danger)]"
793
786
  })]),
794
- R("div", ot, [R("h2", st, Z(Q(r).error.title), 1), R("p", ct, Z(i(e.error)), 1)]),
787
+ R("div", rt, [R("h2", it, Z(Q(r).error.title), 1), R("p", at, Z(i(e.error)), 1)]),
795
788
  a(e.error) ? I("", !0) : (J(), L("button", {
796
789
  key: 0,
797
790
  class: "tpl-btn tpl-btn-primary tpl:inline-flex tpl:items-center tpl:gap-2 tpl:rounded-md tpl:px-4 tpl:py-2.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
@@ -799,20 +792,20 @@ var Fe = {
799
792
  }, Z(Q(r).error.retry), 1))
800
793
  ])) : I("", !0);
801
794
  }
802
- }), ut = {
795
+ }), st = {
803
796
  key: 0,
804
797
  class: "tpl-preview-banner tpl:absolute tpl:top-14 tpl:right-0 tpl:left-0 tpl:z-40 tpl:flex tpl:items-center tpl:justify-center tpl:gap-4 tpl:px-4 tpl:py-3 tpl:bg-[var(--tpl-primary-light)] tpl:border-b tpl:border-[var(--tpl-primary)]"
805
- }, dt = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, ft = { class: "tpl:flex tpl:items-center tpl:gap-2" }, pt = /* @__PURE__ */ U({
798
+ }, ct = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, lt = { class: "tpl:flex tpl:items-center tpl:gap-2" }, ut = /* @__PURE__ */ U({
806
799
  __name: "SnapshotPreviewBanner",
807
800
  props: { visible: { type: Boolean } },
808
801
  emits: ["cancel", "confirm"],
809
802
  setup(e, { emit: t }) {
810
- let n = t, { t: r } = p();
811
- return (t, i) => e.visible ? (J(), L("div", ut, [R("div", dt, [V(Q(E), {
803
+ let n = t, { t: r } = u();
804
+ return (t, i) => e.visible ? (J(), L("div", st, [R("div", ct, [V(Q(E), {
812
805
  size: 18,
813
806
  "stroke-width": 2,
814
807
  class: "tpl:text-[var(--tpl-primary)]"
815
- }), R("span", null, Z(Q(r).snapshotPreview.message), 1)]), R("div", ft, [R("button", {
808
+ }), R("span", null, Z(Q(r).snapshotPreview.message), 1)]), R("div", lt, [R("button", {
816
809
  class: "tpl:rounded-md tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:transition-all tpl:duration-150 tpl:text-[var(--tpl-text-muted)] tpl:border tpl:border-[var(--tpl-border)]",
817
810
  style: { "background-color": "transparent" },
818
811
  onClick: i[0] ||= (e) => n("cancel")
@@ -821,7 +814,7 @@ var Fe = {
821
814
  onClick: i[1] ||= (e) => n("confirm")
822
815
  }, Z(Q(r).snapshotPreview.restore), 1)])])) : I("", !0);
823
816
  }
824
- }), mt = {
817
+ }), dt = {
825
818
  key: 0,
826
819
  role: "status",
827
820
  "aria-live": "polite",
@@ -831,14 +824,14 @@ var Fe = {
831
824
  color: "var(--tpl-text)",
832
825
  border: "1px solid var(--tpl-warning)"
833
826
  }
834
- }, ht = /* @__PURE__ */ U({
827
+ }, ft = /* @__PURE__ */ U({
835
828
  __name: "CollabUndoToast",
836
829
  props: { visible: { type: Boolean } },
837
830
  setup(e) {
838
- let { t } = p();
839
- return (n, r) => e.visible ? (J(), L("div", mt, Z(Q(t).history.collabWarning), 1)) : I("", !0);
831
+ let { t } = u();
832
+ return (n, r) => e.visible ? (J(), L("div", dt, Z(Q(t).history.collabWarning), 1)) : I("", !0);
840
833
  }
841
- }), gt = ["data-tpl-theme"], _t = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, vt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, yt = ["aria-label"], bt = /* @__PURE__ */ h(/* @__PURE__ */ U({
834
+ }), pt = ["data-tpl-theme"], mt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, ht = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, gt = ["aria-label"], _t = /* @__PURE__ */ h(/* @__PURE__ */ U({
842
835
  __name: "CloudEditor",
843
836
  props: {
844
837
  config: {},
@@ -853,47 +846,47 @@ var Fe = {
853
846
  fontsManager: r.fontsManager,
854
847
  emit: i,
855
848
  getCommentsSidebar: () => a.value ? { filterByBlock: a.value.filterCommentsByBlock } : null
856
- }), { isInitializing: s, isAuthReady: c, initError: l, authManager: u, planConfigInstance: d, websocket: f, collaboration: p, isCollaborationEnabled: m, editor: h, core: g, featureFlags: _, mediaLib: b, exporter: x, testEmail: C, commentsInstance: E, savedModulesHeadless: D, panelState: O, snapshotPreview: k, collabWarning: A, showSaveModuleDialog: j, showModuleBrowserModal: M, saveModulePreSelectedBlockId: P, setThemeOverrides: z, setUiTheme: H } = o;
857
- async function U(e) {
849
+ }), { isInitializing: s, isAuthReady: c, initError: l, planConfigInstance: u, websocket: d, collaboration: f, isCollaborationEnabled: p, editor: m, core: h, featureFlags: g, mediaLib: _, exporter: b, testEmail: x, commentsInstance: C, savedModulesHeadless: E, panelState: D, snapshotPreview: O, collabWarning: k, showSaveModuleDialog: A, showModuleBrowserModal: j, saveModulePreSelectedBlockId: M, setThemeOverrides: P, setUiTheme: z } = o;
850
+ async function H(e) {
858
851
  try {
859
- await C.sendTestEmail(e), O.testEmailModalOpen.value = !1;
852
+ await x.sendTestEmail(e), D.testEmailModalOpen.value = !1;
860
853
  } catch {}
861
854
  }
862
- function q(e, t) {
855
+ function U(e, t) {
863
856
  for (let n = 0; n < e.content.length; n++) {
864
857
  let r = se(e.content[n]), i = t === void 0 ? void 0 : t + n;
865
- h.addBlock(r, void 0, void 0, i);
858
+ m.addBlock(r, void 0, void 0, i);
866
859
  }
867
- M.value = !1;
860
+ j.value = !1;
868
861
  }
869
- let Y = Pe({
862
+ let q = Pe({
870
863
  config: r.config,
871
- editor: h,
872
- websocket: f,
873
- planConfigInstance: d,
874
- snapshotPreview: k,
875
- core: g,
876
- exporter: x,
877
- featureFlags: _,
864
+ editor: m,
865
+ websocket: d,
866
+ planConfigInstance: u,
867
+ snapshotPreview: O,
868
+ core: h,
869
+ exporter: b,
870
+ featureFlags: g,
878
871
  isDestroyed: o.isDestroyed
879
872
  });
880
- return o.onSaveHook.value = Y.saveTemplate, K(() => {
873
+ return o.onSaveHook.value = q.saveTemplate, K(() => {
881
874
  o.initialize();
882
875
  }), ee(() => {
883
876
  o.destroy();
884
877
  }), t({
885
- getContent: () => h.content.value,
886
- setContent: (e) => h.setContent(e),
887
- setTheme: H,
888
- setThemeOverrides: z,
889
- create: Y.createTemplate,
890
- load: Y.loadTemplate,
891
- save: Y.saveTemplate,
892
- sendTestEmail: C.sendTestEmail
893
- }), (e, t) => (J(), L("div", {
894
- class: W(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": Q(h).state.darkMode }]),
895
- "data-tpl-theme": Q(g).resolvedTheme.value,
896
- style: G(Q(g).themeStyles.value)
878
+ getContent: () => m.content.value,
879
+ setContent: (e) => m.setContent(e),
880
+ setTheme: z,
881
+ setThemeOverrides: P,
882
+ create: q.createTemplate,
883
+ load: q.loadTemplate,
884
+ save: q.saveTemplate,
885
+ sendTestEmail: x.sendTestEmail
886
+ }), (t, n) => (J(), L("div", {
887
+ class: W(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": Q(m).state.darkMode }]),
888
+ "data-tpl-theme": Q(h).resolvedTheme.value,
889
+ style: G(Q(h).themeStyles.value)
897
890
  }, [
898
891
  V(N, {
899
892
  "enter-active-class": "tpl:transition-opacity tpl:duration-200",
@@ -903,7 +896,7 @@ var Fe = {
903
896
  "leave-from-class": "tpl:opacity-100",
904
897
  "leave-to-class": "tpl:opacity-0"
905
898
  }, {
906
- default: $(() => [V(rt, { visible: Q(s) || Q(h).state.isLoading }, null, 8, ["visible"])]),
899
+ default: $(() => [V(et, { visible: Q(s) || Q(m).state.isLoading }, null, 8, ["visible"])]),
907
900
  _: 1
908
901
  }),
909
902
  V(N, {
@@ -914,7 +907,7 @@ var Fe = {
914
907
  "leave-from-class": "tpl:opacity-100",
915
908
  "leave-to-class": "tpl:opacity-0"
916
909
  }, {
917
- default: $(() => [V(lt, {
910
+ default: $(() => [V(ot, {
918
911
  error: Q(l),
919
912
  visible: !!Q(l) && !Q(s),
920
913
  onRetry: Q(o).initialize
@@ -925,25 +918,23 @@ var Fe = {
925
918
  ])]),
926
919
  _: 1
927
920
  }),
928
- V(Qe, {
929
- editor: Q(h),
930
- core: Q(g),
931
- "auth-manager": Q(u),
932
- "feature-flags": Q(_),
933
- "panel-state": Q(O),
934
- "snapshot-preview": Q(k),
935
- "comments-instance": Q(E),
936
- "test-email": Q(C),
937
- websocket: Q(f),
938
- collaboration: Q(p),
939
- "is-collaboration-enabled": Q(m),
940
- "is-saving": Q(h).state.isSaving || Q(_).isSaveExporting.value,
941
- "is-save-disabled": Q(h).state.isSaving || Q(_).isSaveExporting.value || !Q(h).state.isDirty,
942
- onSave: t[0] ||= (e) => Q(Y).saveTemplate().catch((e) => r.config.onError?.(e))
921
+ V(Ye, {
922
+ editor: Q(m),
923
+ core: Q(h),
924
+ "feature-flags": Q(g),
925
+ "panel-state": Q(D),
926
+ "snapshot-preview": Q(O),
927
+ "comments-instance": Q(C),
928
+ "test-email": Q(x),
929
+ websocket: Q(d),
930
+ collaboration: Q(f),
931
+ "is-collaboration-enabled": Q(p),
932
+ "is-saving": Q(m).state.isSaving || Q(g).isSaveExporting.value,
933
+ "is-save-disabled": Q(m).state.isSaving || Q(g).isSaveExporting.value || !Q(m).state.isDirty,
934
+ onSave: n[0] ||= (e) => Q(q).saveTemplate().catch((e) => r.config.onError?.(e))
943
935
  }, null, 8, [
944
936
  "editor",
945
937
  "core",
946
- "auth-manager",
947
938
  "feature-flags",
948
939
  "panel-state",
949
940
  "snapshot-preview",
@@ -955,10 +946,10 @@ var Fe = {
955
946
  "is-saving",
956
947
  "is-save-disabled"
957
948
  ]),
958
- V(pt, {
959
- visible: Q(k).isPreviewingSnapshot.value,
960
- onCancel: Q(k).cancelPreview,
961
- onConfirm: Q(k).confirmRestoreSnapshot
949
+ V(ut, {
950
+ visible: Q(O).isPreviewingSnapshot.value,
951
+ onCancel: Q(O).cancelPreview,
952
+ onConfirm: Q(O).confirmRestoreSnapshot
962
953
  }, null, 8, [
963
954
  "visible",
964
955
  "onCancel",
@@ -972,18 +963,18 @@ var Fe = {
972
963
  "leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
973
964
  "leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
974
965
  }, {
975
- default: $(() => [V(ht, { visible: Q(A).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
966
+ default: $(() => [V(ft, { visible: Q(k).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
976
967
  _: 1
977
968
  }),
978
- ae(V(S, null, null, 512), [[re, !Q(h).state.previewMode]]),
969
+ ae(V(S, null, null, 512), [[re, !Q(m).state.previewMode]]),
979
970
  R("div", {
980
- class: W(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [Q(h).state.previewMode ? "tpl:left-0 tpl:right-0" : Q(O).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", Q(k).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
971
+ class: W(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [Q(m).state.previewMode ? "tpl:left-0 tpl:right-0" : Q(D).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", Q(O).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
981
972
  style: {
982
973
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
983
974
  "background-color": "var(--tpl-canvas-bg)"
984
975
  }
985
- }, [R("div", _t, [V(N, { name: "tpl-restore-btn" }, {
986
- default: $(() => [Q(g).conditionPreview.hasHiddenBlocks.value ? (J(), L("button", {
976
+ }, [R("div", mt, [V(N, { name: "tpl-restore-btn" }, {
977
+ default: $(() => [Q(h).conditionPreview.hasHiddenBlocks.value ? (J(), L("button", {
987
978
  key: 0,
988
979
  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",
989
980
  style: {
@@ -992,22 +983,22 @@ var Fe = {
992
983
  "border-color": "var(--tpl-warning)",
993
984
  "backdrop-filter": "blur(8px)"
994
985
  },
995
- onClick: t[1] ||= (e) => Q(g).conditionPreview.reset()
986
+ onClick: n[1] ||= (e) => Q(h).conditionPreview.reset()
996
987
  }, [V(Q(y), {
997
988
  size: 13,
998
989
  "stroke-width": 2
999
- }), B(" " + Z(Q(g).t.blockSettings.restoreHiddenBlocks), 1)])) : I("", !0)]),
990
+ }), B(" " + Z(Q(h).t.blockSettings.restoreHiddenBlocks), 1)])) : I("", !0)]),
1000
991
  _: 1
1001
- })]), R("main", vt, [V(w, {
1002
- viewport: Q(h).state.viewport,
1003
- content: Q(h).content.value,
1004
- "selected-block-id": Q(h).state.selectedBlockId,
1005
- "dark-mode": Q(h).state.darkMode,
1006
- "preview-mode": Q(h).state.previewMode,
1007
- "locked-blocks": Q(p)?.lockedBlocks.value ?? void 0,
1008
- onSelectBlock: Q(h).selectBlock,
1009
- onOpenAiChat: t[2] ||= (e) => Q(O).aiChatOpen.value = !0,
1010
- onOpenDesignReference: t[3] ||= (e) => Q(O).designReferenceOpen.value = !0
992
+ })]), R("main", ht, [V(w, {
993
+ viewport: Q(m).state.viewport,
994
+ content: Q(m).content.value,
995
+ "selected-block-id": Q(m).state.selectedBlockId,
996
+ "dark-mode": Q(m).state.darkMode,
997
+ "preview-mode": Q(m).state.previewMode,
998
+ "locked-blocks": Q(f)?.lockedBlocks.value ?? void 0,
999
+ onSelectBlock: Q(m).selectBlock,
1000
+ onOpenAiChat: n[2] ||= (e) => Q(D).aiChatOpen.value = !0,
1001
+ onOpenDesignReference: n[3] ||= (e) => Q(D).designReferenceOpen.value = !0
1011
1002
  }, null, 8, [
1012
1003
  "viewport",
1013
1004
  "content",
@@ -1017,51 +1008,51 @@ var Fe = {
1017
1008
  "locked-blocks",
1018
1009
  "onSelectBlock"
1019
1010
  ])])], 2),
1020
- Q(_).isWhiteLabeled.value ? I("", !0) : (J(), F(T, {
1011
+ e.config.branding !== !1 && !Q(g).isWhiteLabeled.value ? (J(), F(T, {
1021
1012
  key: 0,
1022
- "position-class": [Q(h).state.previewMode ? "tpl:left-0 tpl:right-0" : Q(O).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1023
- }, null, 8, ["position-class"])),
1013
+ "position-class": [Q(m).state.previewMode ? "tpl:left-0 tpl:right-0" : Q(D).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1014
+ }, null, 8, ["position-class"])) : I("", !0),
1024
1015
  R("div", {
1025
1016
  class: "tpl-sr-only",
1026
1017
  role: "status",
1027
1018
  "aria-live": "polite",
1028
1019
  "aria-atomic": "true",
1029
- "aria-label": Q(g).t.landmarks.reorderAnnouncements
1030
- }, Z(Q(g).keyboardReorder.announcement.value), 9, yt),
1020
+ "aria-label": Q(h).t.landmarks.reorderAnnouncements
1021
+ }, Z(Q(h).keyboardReorder.announcement.value), 9, gt),
1031
1022
  ae(V(v, {
1032
- "selected-block": Q(h).selectedBlock.value,
1033
- settings: Q(h).content.value.settings,
1034
- "shifted-left": Q(O).rightPanelOpen.value,
1035
- onUpdateBlock: t[4] ||= (e) => Q(h).updateBlock(Q(h).selectedBlock.value.id, e),
1036
- onDeleteBlock: t[5] ||= (e) => Q(g).blockActions.deleteBlock(Q(h).selectedBlock.value.id),
1037
- onDuplicateBlock: t[6] ||= (e) => Q(g).blockActions.duplicateBlock(Q(h).selectedBlock.value),
1038
- onUpdateSettings: Q(h).updateSettings
1023
+ "selected-block": Q(m).selectedBlock.value,
1024
+ settings: Q(m).content.value.settings,
1025
+ "shifted-left": Q(D).rightPanelOpen.value,
1026
+ onUpdateBlock: n[4] ||= (e) => Q(m).updateBlock(Q(m).selectedBlock.value.id, e),
1027
+ onDeleteBlock: n[5] ||= (e) => Q(h).blockActions.deleteBlock(Q(m).selectedBlock.value.id),
1028
+ onDuplicateBlock: n[6] ||= (e) => Q(h).blockActions.duplicateBlock(Q(m).selectedBlock.value),
1029
+ onUpdateSettings: Q(m).updateSettings
1039
1030
  }, null, 8, [
1040
1031
  "selected-block",
1041
1032
  "settings",
1042
1033
  "shifted-left",
1043
1034
  "onUpdateSettings"
1044
- ]), [[re, !Q(h).state.previewMode]]),
1045
- !Q(s) && Q(c) ? (J(), F($e, {
1035
+ ]), [[re, !Q(m).state.previewMode]]),
1036
+ !Q(s) && Q(c) ? (J(), F(Xe, {
1046
1037
  key: 1,
1047
1038
  ref_key: "cloudPanelsRef",
1048
1039
  ref: a,
1049
1040
  config: r.config,
1050
- editor: Q(h),
1051
- core: Q(g),
1052
- "panel-state": Q(O),
1053
- "plan-config-instance": Q(d),
1054
- "test-email": Q(C),
1055
- "media-lib": Q(b),
1056
- "saved-modules-headless": Q(D),
1057
- "show-save-module-dialog": Q(j),
1058
- "save-module-pre-selected-block-id": Q(P),
1059
- "show-module-browser-modal": Q(M),
1060
- "onUpdate:showSaveModuleDialog": t[7] ||= (e) => j.value = e,
1061
- "onUpdate:saveModulePreSelectedBlockId": t[8] ||= (e) => P.value = e,
1062
- "onUpdate:showModuleBrowserModal": t[9] ||= (e) => M.value = e,
1063
- onSendTestEmail: U,
1064
- onModuleInsert: q
1041
+ editor: Q(m),
1042
+ core: Q(h),
1043
+ "panel-state": Q(D),
1044
+ "plan-config-instance": Q(u),
1045
+ "test-email": Q(x),
1046
+ "media-lib": Q(_),
1047
+ "saved-modules-headless": Q(E),
1048
+ "show-save-module-dialog": Q(A),
1049
+ "save-module-pre-selected-block-id": Q(M),
1050
+ "show-module-browser-modal": Q(j),
1051
+ "onUpdate:showSaveModuleDialog": n[7] ||= (e) => A.value = e,
1052
+ "onUpdate:saveModulePreSelectedBlockId": n[8] ||= (e) => M.value = e,
1053
+ "onUpdate:showModuleBrowserModal": n[9] ||= (e) => j.value = e,
1054
+ onSendTestEmail: H,
1055
+ onModuleInsert: U
1065
1056
  }, null, 8, [
1066
1057
  "config",
1067
1058
  "editor",
@@ -1075,8 +1066,8 @@ var Fe = {
1075
1066
  "save-module-pre-selected-block-id",
1076
1067
  "show-module-browser-modal"
1077
1068
  ])) : I("", !0)
1078
- ], 14, gt));
1069
+ ], 14, pt));
1079
1070
  }
1080
- }), [["__scopeId", "data-v-4bccdddc"]]);
1071
+ }), [["__scopeId", "data-v-48e2c2ee"]]);
1081
1072
  //#endregion
1082
- export { bt as default };
1073
+ export { _t as default };