@templatical/editor 0.19.0 → 0.21.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 (189) hide show
  1. package/README.md +1 -0
  2. package/dist/{AiChatSidebar-DAQTFuvi.js → AiChatSidebar-K_AehWc-.js} +9 -9
  3. package/dist/{AiFeatureMenu-aFSO20PR.js → AiFeatureMenu-CPdNpHpZ.js} +6 -6
  4. package/dist/{BlockIssueBadge-BQmq1bxn.js → BlockIssueBadge-Dmj9rVra.js} +4 -4
  5. package/dist/{CloudEditor-D0K-m1GA.js → CloudEditor-3a7mqMhe.js} +263 -315
  6. package/dist/{CollaboratorBar-CJO3l6Dt.js → CollaboratorBar-Ds0YZWzV.js} +3 -3
  7. package/dist/{ColorPicker-BsgpTJqK.js → ColorPicker-s9GHXjZs.js} +4 -4
  8. package/dist/CommentsSidebar-DvNEdugN.js +435 -0
  9. package/dist/{CountdownBlock-Bn5w7C-p.js → CountdownBlock-BUHYIAe9.js} +1 -1
  10. package/dist/{CountdownToolbar-PJI3ffi1.js → CountdownToolbar-DPRcv3Fu.js} +3 -4
  11. package/dist/{DesignReferenceSidebar-QfAV8XT9.js → DesignReferenceSidebar-DNmK3dxp.js} +8 -8
  12. package/dist/{IssuesPanel-CTjRgz8w.js → IssuesPanel-CEnEGFtd.js} +7 -7
  13. package/dist/{MergeTagSuggestion-DCuaSOPQ.js → MergeTagSuggestion-DMe4rqn0.js} +2 -2
  14. package/dist/NumberWithSuffix-CCPN_oCh.js +121 -0
  15. package/dist/{ParagraphEditor-Cf75UfSo.js → ParagraphEditor-CkwBirNl.js} +47 -47
  16. package/dist/{RichTextEditorContent-MdaLz6Q3.js → RichTextEditorContent-FbnWsh46.js} +6 -6
  17. package/dist/SaveBlockDialog-Cc5BSUBx.js +264 -0
  18. package/dist/SavedBlockPreviewCanvas-ubttfmKr.js +109 -0
  19. package/dist/SavedBlocksBrowserModal-LkY_U3lY.js +323 -0
  20. package/dist/SavedBlocksPanels-CET0zvH6.js +36 -0
  21. package/dist/SavedBlocksPickBar-poGS4PoI.js +52 -0
  22. package/dist/{SnapshotHistory-C_Y1LzAY.js → SnapshotHistory-BvF5IXn1.js} +8 -8
  23. package/dist/{TemplateScoringPanel-DikuKc6i.js → TemplateScoringPanel-ifGGGWs5.js} +14 -14
  24. package/dist/{TestEmailModal-BW8aTtzf.js → TestEmailModal-BRaM_eko.js} +4 -4
  25. package/dist/{TitleEditor-CCUkbRN0.js → TitleEditor-Bhgzh-iQ.js} +11 -11
  26. package/dist/{TplModal-DoOwUKlT.js → TplModal-BA-Zsg0O.js} +3 -3
  27. package/dist/{blockTypeIcons-BlPKjD7M.js → blockTypeIcons-B1-Yzp-a.js} +6 -6
  28. package/dist/bundle-stats.json +8 -8
  29. package/dist/{ca-DbWoy4rG.js → ca-BBgad6y5.js} +50 -3
  30. package/dist/cdn/chunks/{AiFeatureMenu-RwJiaPXZ.js → AiFeatureMenu--PdArSnv.js} +7 -7
  31. package/dist/cdn/chunks/{AiFeatureMenu-RwJiaPXZ.js.map → AiFeatureMenu--PdArSnv.js.map} +1 -1
  32. package/dist/cdn/chunks/{BlockIssueBadge-DM-TDKbr.js → BlockIssueBadge-DMSd0SIl.js} +4 -4
  33. package/dist/cdn/chunks/{BlockIssueBadge-DM-TDKbr.js.map → BlockIssueBadge-DMSd0SIl.js.map} +1 -1
  34. package/dist/cdn/chunks/{CloudEditor-Dufl354p.js → CloudEditor-DnTfI5GU.js} +273 -325
  35. package/dist/cdn/chunks/CloudEditor-DnTfI5GU.js.map +1 -0
  36. package/dist/cdn/chunks/{CollaboratorBar-xsU20iPl.js → CollaboratorBar-CBqd7ldq.js} +3 -3
  37. package/dist/cdn/chunks/{CollaboratorBar-xsU20iPl.js.map → CollaboratorBar-CBqd7ldq.js.map} +1 -1
  38. package/dist/cdn/chunks/{ColorPicker-y_obnw4o.js → ColorPicker-DCdWP8YB.js} +99 -99
  39. package/dist/cdn/chunks/ColorPicker-DCdWP8YB.js.map +1 -0
  40. package/dist/cdn/chunks/{CountdownBlock-sHsRMe1q.js → CountdownBlock-BDnWMAME.js} +2 -2
  41. package/dist/cdn/chunks/{CountdownBlock-sHsRMe1q.js.map → CountdownBlock-BDnWMAME.js.map} +1 -1
  42. package/dist/cdn/chunks/{CountdownToolbar-Ckc_jEi-.js → CountdownToolbar-BbLoo22S.js} +4 -5
  43. package/dist/cdn/chunks/{CountdownToolbar-Ckc_jEi-.js.map → CountdownToolbar-BbLoo22S.js.map} +1 -1
  44. package/dist/cdn/chunks/{IssuesPanel-DF5Ajuna.js → IssuesPanel-CfudrI3T.js} +7 -7
  45. package/dist/cdn/chunks/{IssuesPanel-DF5Ajuna.js.map → IssuesPanel-CfudrI3T.js.map} +1 -1
  46. package/dist/cdn/chunks/{MergeTagSuggestion-BmMmdcRg.js → MergeTagSuggestion-D7TsECll.js} +2 -2
  47. package/dist/cdn/chunks/{MergeTagSuggestion-BmMmdcRg.js.map → MergeTagSuggestion-D7TsECll.js.map} +1 -1
  48. package/dist/cdn/chunks/NumberWithSuffix-BmMx9_n_.js +123 -0
  49. package/dist/cdn/chunks/NumberWithSuffix-BmMx9_n_.js.map +1 -0
  50. package/dist/cdn/chunks/{ParagraphEditor-BkafKSju.js → ParagraphEditor-DPCUSXpx.js} +82 -82
  51. package/dist/cdn/chunks/{ParagraphEditor-BkafKSju.js.map → ParagraphEditor-DPCUSXpx.js.map} +1 -1
  52. package/dist/cdn/chunks/{RichTextEditorContent-BthhzOZS.js → RichTextEditorContent-B8dOiv_D.js} +5 -5
  53. package/dist/cdn/chunks/{RichTextEditorContent-BthhzOZS.js.map → RichTextEditorContent-B8dOiv_D.js.map} +1 -1
  54. package/dist/cdn/chunks/SaveBlockDialog-BY3SMnNV.js +259 -0
  55. package/dist/cdn/chunks/SaveBlockDialog-BY3SMnNV.js.map +1 -0
  56. package/dist/cdn/chunks/SavedBlockPreviewCanvas-LpaOcusq.js +110 -0
  57. package/dist/cdn/chunks/SavedBlockPreviewCanvas-LpaOcusq.js.map +1 -0
  58. package/dist/cdn/chunks/SavedBlocksBrowserModal-CfIcmyzF.js +318 -0
  59. package/dist/cdn/chunks/SavedBlocksBrowserModal-CfIcmyzF.js.map +1 -0
  60. package/dist/cdn/chunks/SavedBlocksPanels-kIowCfh_.js +38 -0
  61. package/dist/cdn/chunks/SavedBlocksPanels-kIowCfh_.js.map +1 -0
  62. package/dist/cdn/chunks/SavedBlocksPickBar-WSGe1GiZ.js +52 -0
  63. package/dist/cdn/chunks/SavedBlocksPickBar-WSGe1GiZ.js.map +1 -0
  64. package/dist/cdn/chunks/{TitleEditor-DLv9cXba.js → TitleEditor-iwd-O9sO.js} +11 -11
  65. package/dist/cdn/chunks/{TitleEditor-DLv9cXba.js.map → TitleEditor-iwd-O9sO.js.map} +1 -1
  66. package/dist/cdn/chunks/{blockTypeIcons-B0uibGX7.js → blockTypeIcons-BYz0fgLz.js} +7 -7
  67. package/dist/cdn/chunks/{blockTypeIcons-B0uibGX7.js.map → blockTypeIcons-BYz0fgLz.js.map} +1 -1
  68. package/dist/cdn/chunks/{ca-DbWoy4rG.js → ca-BBgad6y5.js} +51 -4
  69. package/dist/cdn/chunks/ca-BBgad6y5.js.map +1 -0
  70. package/dist/{de-CTYXVU9v.js → cdn/chunks/de-Bw6fB5JU.js} +2 -24
  71. package/dist/cdn/chunks/{de-CTYXVU9v.js.map → de-Bw6fB5JU.js.map} +1 -1
  72. package/dist/cdn/chunks/{de-CgGOnerg.js → de-D7WbpFBR.js} +50 -3
  73. package/dist/cdn/chunks/de-D7WbpFBR.js.map +1 -0
  74. package/dist/{en-DrUV9xth.js → cdn/chunks/en-BrZ0uGK2.js} +51 -2
  75. package/dist/cdn/chunks/en-BrZ0uGK2.js.map +1 -0
  76. package/dist/{en-BtmIaJeb.js → cdn/chunks/en-DAdHJz7h.js} +2 -24
  77. package/dist/cdn/chunks/{en-BtmIaJeb.js.map → en-DAdHJz7h.js.map} +1 -1
  78. package/dist/{es-DwbKjU7q.js → cdn/chunks/es-tLSLysPs.js} +51 -2
  79. package/dist/cdn/chunks/es-tLSLysPs.js.map +1 -0
  80. package/dist/cdn/chunks/{extensions-DLHvZ0UH.js → extensions-DeJh3E9b.js} +29 -29
  81. package/dist/cdn/chunks/{extensions-DLHvZ0UH.js.map → extensions-DeJh3E9b.js.map} +1 -1
  82. package/dist/cdn/chunks/{features-Cnfv4QAY.js → features-pLfGJWIB.js} +1802 -1603
  83. package/dist/cdn/chunks/features-pLfGJWIB.js.map +1 -0
  84. package/dist/cdn/chunks/{icons-DbcM69bb.js → icons-FLemooQz.js} +16 -16
  85. package/dist/cdn/chunks/{icons-DbcM69bb.js.map → icons-FLemooQz.js.map} +1 -1
  86. package/dist/cdn/chunks/{media-library-DpSMwHd4.js → media-library-mCCZieYO.js} +163 -163
  87. package/dist/cdn/chunks/{media-library-DpSMwHd4.js.map → media-library-mCCZieYO.js.map} +1 -1
  88. package/dist/cdn/chunks/{pt-BR-Bcc5Tjed.js → pt-BR-BWFokdTU.js} +50 -3
  89. package/dist/cdn/chunks/pt-BR-BWFokdTU.js.map +1 -0
  90. package/dist/{pt-BR-B2ZvFlRL.js → cdn/chunks/pt-BR-w2sGzHNX.js} +2 -24
  91. package/dist/cdn/chunks/{pt-BR-B2ZvFlRL.js.map → pt-BR-w2sGzHNX.js.map} +1 -1
  92. package/dist/cdn/chunks/{pusher-CIwiKF8H.js → pusher-R0v5p99W.js} +27 -22
  93. package/dist/cdn/chunks/pusher-R0v5p99W.js.map +1 -0
  94. package/dist/cdn/chunks/{quality-D9QqkRcU.js → quality-BRbHtAk1.js} +460 -460
  95. package/dist/cdn/chunks/{quality-D9QqkRcU.js.map → quality-BRbHtAk1.js.map} +1 -1
  96. package/dist/cdn/chunks/{renderer-BsLQZNXU.js → renderer-Yg1XhsBN.js} +18 -18
  97. package/dist/cdn/chunks/{renderer-BsLQZNXU.js.map → renderer-Yg1XhsBN.js.map} +1 -1
  98. package/dist/cdn/chunks/{src-zu1ehVNN.js → src-BDJeYiVE.js} +33 -33
  99. package/dist/cdn/chunks/{src-zu1ehVNN.js.map → src-BDJeYiVE.js.map} +1 -1
  100. package/dist/cdn/chunks/{styles-Dx-jXeCd.js → styles-Bp5Jsu9J.js} +1422 -1332
  101. package/dist/cdn/chunks/styles-Bp5Jsu9J.js.map +1 -0
  102. package/dist/cdn/chunks/{tiptap-C2indasq.js → tiptap-BMZ-OENR.js} +2012 -1863
  103. package/dist/cdn/chunks/tiptap-BMZ-OENR.js.map +1 -0
  104. package/dist/cdn/editor.css +1 -1
  105. package/dist/cdn/editor.js +123 -114
  106. package/dist/cdn/editor.js.map +1 -1
  107. package/dist/{check-Cg6Mc2pP.js → check-BpQDKiPz.js} +1 -1
  108. package/dist/{chevron-down-dClfxKrJ.js → chevron-down-j8GrdTyz.js} +1 -1
  109. package/dist/chevron-up-BACyVhyC.js +7 -0
  110. package/dist/{circle-alert-Bhzm-fNA.js → circle-alert-CgtE46ND.js} +1 -1
  111. package/dist/{clock-m7TwQw4b.js → clock-BzKLLW5L.js} +1 -1
  112. package/dist/{cloud-B-RebwxI.js → cloud-Du7mnkz2.js} +19 -47
  113. package/dist/{createLucideIcon-FSF4peHQ.js → createLucideIcon-JWHwTI6N.js} +2 -2
  114. package/dist/{cdn/chunks/de-CTYXVU9v.js → de-Bw6fB5JU.js} +0 -26
  115. package/dist/{de-CgGOnerg.js → de-D7WbpFBR.js} +49 -2
  116. package/dist/{dist-CgTKuIUN.js → dist-BEpCh2mG.js} +1158 -1125
  117. package/dist/{dist-Cx7IUM7J.js → dist-BgPYC_8-.js} +14 -6
  118. package/dist/{dist-BKKo5wPC.js → dist-BkM8A17N.js} +2 -2
  119. package/dist/{dist-CcX5sLpz.js → dist-BuNDAAVp.js} +361 -256
  120. package/dist/{dist-COSN3oDJ.js → dist-CBzCU-a-.js} +2 -2
  121. package/dist/{dist-YSCPD13F.js → dist-CDO52Rxy.js} +2 -2
  122. package/dist/{dist-Dk5AdwoQ.js → dist-CrjzhIxB.js} +2 -2
  123. package/dist/{dist-DXAZUjj3.js → dist-CtcgoC_R.js} +2 -2
  124. package/dist/{dist-D6M5FAY7.js → dist-CuXha2_7.js} +2 -2
  125. package/dist/dist-CweLDZrs.js +5 -0
  126. package/dist/dist-DOsdqAEZ.js +5 -0
  127. package/dist/{dist-8TKf-Jpg.js → dist-DYClLqy8.js} +6 -3
  128. package/dist/{cdn/chunks/en-DrUV9xth.js → en-BrZ0uGK2.js} +49 -4
  129. package/dist/{cdn/chunks/en-BtmIaJeb.js → en-DAdHJz7h.js} +0 -26
  130. package/dist/{cdn/chunks/es-DwbKjU7q.js → es-tLSLysPs.js} +49 -4
  131. package/dist/{extensions-BCA9pyer.js → extensions-ClY5Sh7S.js} +5 -5
  132. package/dist/{image-up-CDEgJqwA.js → image-up-CQdtq8ge.js} +1 -1
  133. package/dist/index.d.ts +81 -4
  134. package/dist/{info-BNP8yGsK.js → info-BUJBXoE6.js} +1 -1
  135. package/dist/{keys-DFaIbGR8.js → keys-CHPcp-Nz.js} +2 -2
  136. package/dist/{list-checks-jepi4iYr.js → list-checks-BGHaCSD5.js} +1 -1
  137. package/dist/{loader-circle-BT38qSm3.js → loader-circle-C-Z6kgI6.js} +1 -1
  138. package/dist/{message-circle-BAHcL9S-.js → message-circle-CEm5qckV.js} +1 -1
  139. package/dist/pencil-DdwmkKLb.js +10 -0
  140. package/dist/{pt-BR-Bcc5Tjed.js → pt-BR-BWFokdTU.js} +49 -2
  141. package/dist/{cdn/chunks/pt-BR-B2ZvFlRL.js → pt-BR-w2sGzHNX.js} +0 -26
  142. package/dist/{refresh-cw-as5Bmg4X.js → refresh-cw-maKlg0dl.js} +1 -1
  143. package/dist/{scan-line-IAMjPtRw.js → scan-line-BFgesTOY.js} +1 -1
  144. package/dist/{send-DvMay6bt.js → send-B70aQDrA.js} +1 -1
  145. package/dist/{shield-check-YYDhGroE.js → shield-check-B7x5OKt5.js} +1 -1
  146. package/dist/{sparkles-CCwQMMMZ.js → sparkles-DVlm1Ipp.js} +1 -1
  147. package/dist/style.css +1 -1
  148. package/dist/{styles-64uLkPJV.js → styles-DIDAJdkj.js} +1241 -1151
  149. package/dist/templatical-editor.js +134 -125
  150. package/dist/{text-align-start-BwsA6QzC.js → text-align-start-Vay3Kvo2.js} +1 -1
  151. package/dist/{trash-2-CRBDolnR.js → trash-2-DE8CmxAG.js} +1 -1
  152. package/dist/{triangle-alert-B2g0ALvq.js → triangle-alert-Djg6IG8N.js} +1 -1
  153. package/dist/{upload-y4gxiFp5.js → upload-BwwE0U6G.js} +1 -1
  154. package/dist/{useCloudI18n-PCDOC2kz.js → useCloudI18n-BmiygEM4.js} +1 -1
  155. package/dist/{useEditorCore-ea9OrrH3.js → useEditorCore-Bd9CA4L_.js} +1236 -1013
  156. package/dist/{useI18n-BNMzZTM5.js → useI18n-D2L9Mkik.js} +1 -1
  157. package/dist/{useMergeTag-DfEY0eK5.js → useMergeTag-BTdDq5DC.js} +1 -1
  158. package/dist/{usePopoverPosition-F9STHRIr.js → usePopoverPosition-BO2LNy5n.js} +1 -1
  159. package/dist/{x-Ctg_250T.js → x-CkD6A1iB.js} +1 -1
  160. package/package.json +23 -23
  161. package/dist/CommentsSidebar-BYMVucZh.js +0 -442
  162. package/dist/ModuleBrowserModal-BNalLx0k.js +0 -202
  163. package/dist/ModulePreviewCanvas-BwObwisa.js +0 -106
  164. package/dist/NumberWithSuffix-D3BKz66W.js +0 -89
  165. package/dist/SaveModuleDialog-MTjwiF9D.js +0 -125
  166. package/dist/ToggleSwitch-DUNuUPsZ.js +0 -37
  167. package/dist/cdn/chunks/CloudEditor-Dufl354p.js.map +0 -1
  168. package/dist/cdn/chunks/ColorPicker-y_obnw4o.js.map +0 -1
  169. package/dist/cdn/chunks/ModuleBrowserModal-DG4AVFjH.js +0 -198
  170. package/dist/cdn/chunks/ModuleBrowserModal-DG4AVFjH.js.map +0 -1
  171. package/dist/cdn/chunks/ModulePreviewCanvas-Bc_PcJuc.js +0 -107
  172. package/dist/cdn/chunks/ModulePreviewCanvas-Bc_PcJuc.js.map +0 -1
  173. package/dist/cdn/chunks/NumberWithSuffix-8fOO-LC_.js +0 -91
  174. package/dist/cdn/chunks/NumberWithSuffix-8fOO-LC_.js.map +0 -1
  175. package/dist/cdn/chunks/SaveModuleDialog-DhsfYf2n.js +0 -120
  176. package/dist/cdn/chunks/SaveModuleDialog-DhsfYf2n.js.map +0 -1
  177. package/dist/cdn/chunks/ToggleSwitch-OrmX_w18.js +0 -39
  178. package/dist/cdn/chunks/ToggleSwitch-OrmX_w18.js.map +0 -1
  179. package/dist/cdn/chunks/ca-DbWoy4rG.js.map +0 -1
  180. package/dist/cdn/chunks/de-CgGOnerg.js.map +0 -1
  181. package/dist/cdn/chunks/en-DrUV9xth.js.map +0 -1
  182. package/dist/cdn/chunks/es-DwbKjU7q.js.map +0 -1
  183. package/dist/cdn/chunks/features-Cnfv4QAY.js.map +0 -1
  184. package/dist/cdn/chunks/pt-BR-Bcc5Tjed.js.map +0 -1
  185. package/dist/cdn/chunks/pusher-CIwiKF8H.js.map +0 -1
  186. package/dist/cdn/chunks/styles-Dx-jXeCd.js.map +0 -1
  187. package/dist/cdn/chunks/tiptap-C2indasq.js.map +0 -1
  188. package/dist/dist-BDVm2MrW.js +0 -5
  189. package/dist/dist-DbekZDmJ.js +0 -5
@@ -1,17 +1,17 @@
1
1
  import { $ as e, A as t, H as n, J as r, M as i, N as a, P as o, V as s, Z as c, _ as l, b as u, ct as d, f, g as p, h as m, it as h, j as g, l as _, m as v, n as y, ot as b, p as x, s as S, st as C, u as w, v as T, x as E, y as D, z as O } from "./draggable-D840DIZB.js";
2
- import { At as k, Bt as A, E as j, Gt as M, Hn as N, Ht as P, In as ee, Jt as F, Pt as I, S as L, St as R, Tn as z, Ut as B, X as V, Yt as H, Zt as te, _ as ne, _t as U, at as W, b as re, c as G, d as K, dt as q, f as J, g as ie, gn as Y, h as ae, jt as X, k as oe, l as Z, ln as Q, m as $, mt as se, p as ce, s as le, sn as ue, st as de, tr as fe, tt as pe, u as me, un as he, v as ge, x as _e, xt as ve, y as ye } from "./features-Cnfv4QAY.js";
3
- import { S as be, x as xe } from "./icons-DbcM69bb.js";
4
- import { a as Se, c as Ce, d as we, f as Te, i as Ee, l as De, n as Oe, o as ke, r as Ae, s as je, t as Me, u as Ne } from "./styles-Dx-jXeCd.js";
5
- import { d as Pe } from "./ColorPicker-y_obnw4o.js";
2
+ import { A as k, C as A, Cn as j, Ct as M, D as N, Kt as P, Mn as F, Nt as I, Pt as L, Q as R, Qt as z, Rt as B, S as V, Xt as H, Yt as U, Zn as W, _ as G, _n as K, b as q, c as ee, d as te, f as ne, g as re, gt as J, h as ie, in as Y, l as X, lt as Z, m as ae, mn as oe, nn as se, p as ce, pt as le, rt as ue, st as Q, tn as de, u as fe, ur as pe, v as me, wt as he, x as ge, y as _e, yt as ve } from "./features-pLfGJWIB.js";
3
+ import { S as ye, x as be } from "./icons-FLemooQz.js";
4
+ import { a as xe, c as Se, d as Ce, f as we, i as Te, l as Ee, n as De, o as Oe, p as ke, r as Ae, s as je, t as Me, u as Ne } from "./styles-Bp5Jsu9J.js";
5
+ import { d as $ } from "./ColorPicker-DCdWP8YB.js";
6
6
  //#region src/cloud/composables/useSnapshotPreview.ts
7
- function Fe(t) {
7
+ function Pe(t) {
8
8
  let { authManager: n, editor: i, history: a, conditionPreview: o, autoSave: s, onError: l } = t, u = e(null), d = c(null), p = c(null), m = !1;
9
9
  r(() => {
10
10
  m = !0;
11
11
  });
12
12
  let h = f(() => d.value !== null), g = f(() => u.value?.snapshots.value ?? []), _ = f(() => u.value?.isLoading.value ?? !1), v = f(() => u.value?.isRestoring.value ?? !1);
13
13
  function y() {
14
- i.state.template?.id && !u.value && (u.value = J({
14
+ i.state.template?.id && !u.value && (u.value = ce({
15
15
  authManager: n,
16
16
  templateId: i.state.template.id,
17
17
  onRestore: b,
@@ -63,7 +63,7 @@ function Fe(t) {
63
63
  }
64
64
  //#endregion
65
65
  //#region src/cloud/composables/useCloudPanelState.ts
66
- function Ie() {
66
+ function Fe() {
67
67
  let e = c(null), t = f({
68
68
  get: () => e.value === "ai-chat",
69
69
  set: (t) => e.value = t ? "ai-chat" : null
@@ -86,7 +86,7 @@ function Ie() {
86
86
  function g(t) {
87
87
  l.value = !1, e.value = e.value === t ? null : t;
88
88
  }
89
- return Y(u, () => {
89
+ return j(u, () => {
90
90
  l.value = !1;
91
91
  }), {
92
92
  activePanel: e,
@@ -108,10 +108,10 @@ function Ie() {
108
108
  }
109
109
  //#endregion
110
110
  //#region src/cloud/composables/useCollabUndoWarning.ts
111
- function Le(e) {
112
- let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = z(() => {
111
+ function Ie(e) {
112
+ let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = F(() => {
113
113
  a.value = !1;
114
- }, fe, { immediate: !1 });
114
+ }, pe, { immediate: !1 });
115
115
  function s() {
116
116
  i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0, o());
117
117
  }
@@ -122,8 +122,8 @@ function Le(e) {
122
122
  }
123
123
  //#endregion
124
124
  //#region src/cloud/composables/useCloudFeatureFlags.ts
125
- function Re(e) {
126
- let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = f(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = f(() => t.hasFeature("test_email")), o = f(() => !!r.state.template?.id), s = f(() => t.hasFeature("white_label")), l = f(() => t.config.value?.limits.max_templates ?? null), u = f(() => t.config.value?.template_count ?? 0), d = c(!1), p = c("idle"), m = c(""), { start: h } = z(() => {
125
+ function Le(e) {
126
+ let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = f(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = f(() => t.hasFeature("test_email")), o = f(() => !!r.state.template?.id), s = f(() => t.hasFeature("white_label")), l = f(() => t.config.value?.limits.max_templates ?? null), u = f(() => t.config.value?.template_count ?? 0), d = c(!1), p = c("idle"), m = c(""), { start: h } = F(() => {
127
127
  p.value = "idle";
128
128
  }, 3e3, { immediate: !1 });
129
129
  return {
@@ -141,7 +141,7 @@ function Re(e) {
141
141
  }
142
142
  //#endregion
143
143
  //#region src/cloud/composables/useCloudMediaLibrary.ts
144
- function ze(e) {
144
+ function Re(e) {
145
145
  let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: i, authManager: a, getMediaConfig: o, onError: s } = e, c = null;
146
146
  function l(e) {
147
147
  return {
@@ -175,7 +175,7 @@ function ze(e) {
175
175
  let t = f(e);
176
176
  if (t) return s?.(t), null;
177
177
  try {
178
- let { MediaApiClient: t } = await import("./src-zu1ehVNN.js");
178
+ let { MediaApiClient: t } = await import("./src-BDJeYiVE.js");
179
179
  return l(await new t(a).uploadMedia(e));
180
180
  } catch (e) {
181
181
  return s?.(e), null;
@@ -203,30 +203,30 @@ function ze(e) {
203
203
  }
204
204
  //#endregion
205
205
  //#region src/cloud/composables/useCloudInitialization.ts
206
- function Be(e) {
207
- let { config: t, translations: n, fontsManager: r, emit: i, getCommentsSidebar: o } = e, s = c(!0), l = c(!1), u = c(null), d = !1, p = { value: null }, m = null, h = null, g = new j({
206
+ function ze(e) {
207
+ let { config: t, translations: n, fontsManager: r, emit: i, getCommentsSidebar: o } = e, s = c(!0), l = c(!1), u = c(null), d = !1, p = { value: null }, m = null, h = null, g = new N({
208
208
  ...t.auth,
209
209
  onError: t.onError
210
- }), _ = Z({
210
+ }), _ = fe({
211
211
  authManager: g,
212
212
  onError: t.onError
213
- }), v = c(/* @__PURE__ */ new Map()), y = _e({
213
+ }), v = c(/* @__PURE__ */ new Map()), y = V({
214
214
  authManager: g,
215
215
  defaultFontFamily: t.fonts?.defaultFont,
216
216
  templateDefaults: t.templateDefaults,
217
217
  onError: t.onError,
218
218
  lockedBlocks: v
219
- }), b = $({
219
+ }), b = ie({
220
220
  authManager: g,
221
221
  onError: t.onError
222
222
  });
223
- t.mcp?.enabled && le({
223
+ t.mcp?.enabled && ee({
224
224
  editor: y,
225
225
  channel: b.channel,
226
226
  onOperation: t.mcp.onOperation
227
227
  });
228
228
  let x = null;
229
- t.collaboration?.enabled && (x = ie({
229
+ t.collaboration?.enabled && (x = G({
230
230
  authManager: g,
231
231
  editor: y,
232
232
  channel: b.channel,
@@ -237,8 +237,8 @@ function Be(e) {
237
237
  onBlockUnlocked: t.collaboration.onBlockUnlocked
238
238
  }), O(() => x.lockedBlocks.value, (e) => {
239
239
  v.value = e;
240
- }, { immediate: !0 }), ae(y, x));
241
- let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = oe({
240
+ }, { immediate: !0 }), re(y, x));
241
+ let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = k({
242
242
  editor: y,
243
243
  config: {
244
244
  uiTheme: t.uiTheme,
@@ -253,7 +253,7 @@ function Be(e) {
253
253
  logicTags: t.logicTags,
254
254
  displayConditions: t.displayConditions,
255
255
  onRequestMedia: null,
256
- lint: Te(t),
256
+ lint: we(t),
257
257
  onSave: () => {
258
258
  p.value?.().catch((e) => {
259
259
  t.onError?.(e);
@@ -274,13 +274,13 @@ function Be(e) {
274
274
  keyboardOptions: { onBeforeUndo: () => h?.showCollabUndoWarning() },
275
275
  editorRoot: e.editorRoot,
276
276
  containerEl: e.containerEl
277
- }), w = Le({
277
+ }), w = Ie({
278
278
  isCollaborationEnabled: S,
279
279
  getCollaboratorCount: () => x?.collaborators.value.length ?? 0,
280
280
  canUndo: C.history.canUndo
281
281
  });
282
282
  h = w;
283
- let T = Fe({
283
+ let T = Pe({
284
284
  authManager: g,
285
285
  editor: y,
286
286
  history: C.history,
@@ -289,11 +289,11 @@ function Be(e) {
289
289
  onError: t.onError
290
290
  });
291
291
  m = T;
292
- let E = Ie(), D = re(t.ai), k = Re({
292
+ let E = Fe(), D = ge(t.ai), A = Le({
293
293
  planConfigInstance: _,
294
294
  aiConfig: D,
295
295
  editor: y
296
- }), N = ze({
296
+ }), j = Re({
297
297
  onRequestMedia: t.onRequestMedia,
298
298
  mediaLibraryOpen: E.mediaLibraryOpen,
299
299
  mediaLibraryAccept: E.mediaLibraryAccept,
@@ -301,23 +301,23 @@ function Be(e) {
301
301
  getMediaConfig: () => _.config.value?.media ?? null,
302
302
  onError: t.onError
303
303
  });
304
- pe({
304
+ ue({
305
305
  onBlockMove: y.moveBlock,
306
306
  onBlockAdd: y.addBlock
307
307
  });
308
- let P = me({
308
+ let M = te({
309
309
  authManager: g,
310
310
  getFontsConfig: () => t.fonts,
311
311
  canUseCustomFonts: () => _.hasFeature("custom_fonts")
312
- }), ee = K({
312
+ }), F = ne({
313
313
  authManager: g,
314
314
  getTemplateId: () => y.state.template?.id ?? null,
315
315
  save: () => y.save(),
316
- exportHtml: (e) => P.exportHtml(e),
316
+ exportHtml: (e) => M.exportHtml(e),
317
317
  onError: t.onError,
318
318
  isAuthReady: l,
319
319
  onBeforeTestEmail: t.onBeforeTestEmail
320
- }), I = ge({
320
+ }), I = _e({
321
321
  authManager: g,
322
322
  getTemplateId: () => y.state.template?.id ?? null,
323
323
  getSocketId: () => b.getSocketId(),
@@ -326,43 +326,37 @@ function Be(e) {
326
326
  isAuthReady: l,
327
327
  hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
328
328
  });
329
- ne({
329
+ me({
330
330
  comments: I,
331
331
  channel: b.channel
332
332
  });
333
- let L = ce({
334
- authManager: g,
335
- onError: t.onError
336
- }), R = c(!1), z = c(null), V = c(!1), H = ye({
333
+ let L = ke({
334
+ provider: ae(g),
335
+ editor: y,
336
+ onError: t.onError,
337
+ isAvailable: () => t.savedBlocks !== !1 && _.hasFeature("saved_modules")
338
+ }), R = q({
337
339
  authManager: g,
338
340
  getTemplateId: () => y.state.template?.id ?? null
339
341
  });
340
- function U(e) {
342
+ function B(e) {
341
343
  E.commentsOpen.value = !0, queueMicrotask(() => {
342
344
  o()?.filterByBlock(e);
343
345
  });
344
346
  }
345
- a(ue, N.handleRequestMedia), a(M, g), a(B, D), a(te, I), a(Q, L), a(he, H), a(F, {
347
+ a(oe, j.handleRequestMedia), a(z, g), a(H, D), a(Y, I), a(K, R), a(de, {
346
348
  plan: _,
347
349
  ai: D,
348
350
  comments: {
349
351
  getBlockCount: (e) => I.commentCountByBlock.value.get(e) ?? 0,
350
- openForBlock: U
352
+ openForBlock: B
351
353
  },
352
- savedModules: {
353
- openSaveDialog: (e) => {
354
- z.value = e ?? null, R.value = !0;
355
- },
356
- openBrowser: () => {
357
- V.value = !0;
358
- },
359
- moduleCount: f(() => L.modules.value.length)
360
- }
354
+ savedBlocks: L.capability
361
355
  });
362
- function W(e) {
356
+ function U(e) {
363
357
  _.hasFeature("theme_customization") && (C.themeOverrides.value = e);
364
358
  }
365
- function q(e) {
359
+ function W(e) {
366
360
  y.setUiTheme(e);
367
361
  }
368
362
  async function J() {
@@ -370,12 +364,12 @@ function Be(e) {
370
364
  try {
371
365
  if (await g.initialize(), d) return;
372
366
  l.value = !0;
373
- let e = await G({ authManager: g });
367
+ let e = await X({ authManager: g });
374
368
  if (d) return;
375
369
  if (!e.api.ok) throw Error("Health check failed: API is not reachable");
376
370
  if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
377
- if (e.websocket.ok || A.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
378
- r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), t.modules !== !1 && _.hasFeature("saved_modules") && L.loadModules(), i("ready");
371
+ if (e.websocket.ok || P.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
372
+ r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), i("ready");
379
373
  } catch (e) {
380
374
  if (d) return;
381
375
  let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
@@ -384,7 +378,7 @@ function Be(e) {
384
378
  d || (s.value = !1);
385
379
  }
386
380
  }
387
- function Y() {
381
+ function Z() {
388
382
  d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
389
383
  }
390
384
  return {
@@ -400,32 +394,29 @@ function Be(e) {
400
394
  editor: y,
401
395
  core: C,
402
396
  aiConfig: D,
403
- featureFlags: k,
404
- mediaLib: N,
405
- exporter: P,
406
- testEmail: ee,
397
+ featureFlags: A,
398
+ mediaLib: j,
399
+ exporter: M,
400
+ testEmail: F,
407
401
  commentsInstance: I,
408
- savedModulesHeadless: L,
409
- scoringInstance: H,
402
+ savedBlocks: L,
403
+ scoringInstance: R,
410
404
  panelState: E,
411
405
  snapshotPreview: T,
412
406
  collabWarning: w,
413
- showSaveModuleDialog: R,
414
- showModuleBrowserModal: V,
415
- saveModulePreSelectedBlockId: z,
416
407
  onSaveHook: p,
417
408
  initialize: J,
418
- destroy: Y,
419
- setThemeOverrides: W,
420
- setUiTheme: q,
421
- openCommentsForBlock: U
409
+ destroy: Z,
410
+ setThemeOverrides: U,
411
+ setUiTheme: W,
412
+ openCommentsForBlock: B
422
413
  };
423
414
  }
424
415
  //#endregion
425
416
  //#region src/utils/preRenderCustomBlocks.ts
426
- async function Ve(e, t) {
417
+ async function Be(e, t) {
427
418
  let n = async (e) => {
428
- if (N(e)) {
419
+ if (W(e)) {
429
420
  let n = e;
430
421
  try {
431
422
  n.renderedHtml = await t.renderCustomBlock(n);
@@ -442,10 +433,10 @@ async function Ve(e, t) {
442
433
  }
443
434
  //#endregion
444
435
  //#region src/cloud/composables/useCloudLifecycle.ts
445
- function He(e) {
436
+ function Ve(e) {
446
437
  let { config: t, editor: n, websocket: r, planConfigInstance: i, snapshotPreview: a, core: o, exporter: s, featureFlags: c, isDestroyed: l } = e;
447
438
  function u() {
448
- return L(i.config.value.websocket);
439
+ return A(i.config.value.websocket);
449
440
  }
450
441
  async function d(e) {
451
442
  let i = await n.create(e);
@@ -458,7 +449,7 @@ function He(e) {
458
449
  async function p() {
459
450
  c.isSaveExporting.value = !0, c.saveStatus.value = "idle";
460
451
  try {
461
- if (await Ve(n.content.value, o.registry), l()) throw Error("Component unmounted during save");
452
+ if (await Be(n.content.value, o.registry), l()) throw Error("Component unmounted during save");
462
453
  let e = await n.save();
463
454
  if (l()) throw Error("Component unmounted during save");
464
455
  a.initSnapshotHistory(), a.snapshotHistoryInstance.value?.loadSnapshots();
@@ -485,7 +476,7 @@ function He(e) {
485
476
  }
486
477
  //#endregion
487
478
  //#region src/cloud/composables/useCloudSaveGate.ts
488
- function Ue(e) {
479
+ function He(e) {
489
480
  let t = c(!1), n = null, r = f(() => e.planConfig.value?.accessibility?.blockOnError === !0), i = f(() => r.value ? e.issues.value.filter((e) => e.severity === "error") : []), a = f(() => i.value.length > 0);
490
481
  async function o(e) {
491
482
  return a.value ? (n = e, t.value = !0, !1) : (await e(), !0);
@@ -508,7 +499,7 @@ function Ue(e) {
508
499
  }
509
500
  //#endregion
510
501
  //#region src/cloud/components/CloudSaveGateModal.vue?vue&type=script&setup=true&lang.ts
511
- var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl:max-w-md tpl:flex-col tpl:gap-4 tpl:rounded-lg tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)] tpl:p-5 tpl:shadow-[var(--tpl-shadow-md)]" }, Ke = { class: "tpl:flex tpl:items-center tpl:gap-2" }, qe = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Je = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ye = { class: "tpl:m-0 tpl:flex tpl:max-h-64 tpl:list-none tpl:flex-col tpl:gap-1.5 tpl:overflow-y-auto tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:p-2" }, Xe = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Ze = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Qe = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, $e = /* @__PURE__ */ E({
502
+ var Ue = ["aria-label"], We = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl:max-w-md tpl:flex-col tpl:gap-4 tpl:rounded-lg tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)] tpl:p-5 tpl:shadow-[var(--tpl-shadow-md)]" }, Ge = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Ke = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, qe = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Je = { class: "tpl:m-0 tpl:flex tpl:max-h-64 tpl:list-none tpl:flex-col tpl:gap-1.5 tpl:overflow-y-auto tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:p-2" }, Ye = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Xe = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Ze = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Qe = /* @__PURE__ */ E({
512
503
  __name: "CloudSaveGateModal",
513
504
  props: {
514
505
  open: { type: Boolean },
@@ -516,7 +507,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
516
507
  },
517
508
  emits: ["cancel", "confirm"],
518
509
  setup(e, { emit: t }) {
519
- let n = t, { t: r } = W();
510
+ let n = t, { t: r } = Q();
520
511
  return (t, a) => (i(), v(y, {
521
512
  "enter-active-class": "tpl:transition-opacity tpl:duration-150",
522
513
  "leave-active-class": "tpl:transition-opacity tpl:duration-150",
@@ -530,18 +521,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
530
521
  "aria-label": h(r).saveGate.title,
531
522
  class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
532
523
  onClick: a[2] ||= _((e) => n("cancel"), ["self"])
533
- }, [x("div", Ge, [
534
- x("header", Ke, [D(h(q), {
524
+ }, [x("div", We, [
525
+ x("header", Ge, [D(h(le), {
535
526
  size: 18,
536
527
  "stroke-width": 2,
537
528
  class: "tpl:text-[var(--tpl-warning)]"
538
- }), x("h2", qe, d(h(r).saveGate.title), 1)]),
539
- x("p", Je, d(h(r).saveGate.body), 1),
540
- x("ul", Ye, [(i(!0), p(w, null, o(e.issues, (e) => (i(), p("li", {
529
+ }), x("h2", Ke, d(h(r).saveGate.title), 1)]),
530
+ x("p", qe, d(h(r).saveGate.body), 1),
531
+ x("ul", Je, [(i(!0), p(w, null, o(e.issues, (e) => (i(), p("li", {
541
532
  key: `${e.ruleId}-${e.blockId ?? "template"}`,
542
533
  class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:rounded tpl:px-2 tpl:py-1.5"
543
- }, [x("span", Xe, d(e.message), 1), x("span", Ze, d(e.ruleId), 1)]))), 128))]),
544
- x("footer", Qe, [x("button", {
534
+ }, [x("span", Ye, d(e.message), 1), x("span", Xe, d(e.ruleId), 1)]))), 128))]),
535
+ x("footer", Ze, [x("button", {
545
536
  type: "button",
546
537
  class: "tpl:rounded-md tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]",
547
538
  onClick: a[0] ||= (e) => n("cancel")
@@ -550,11 +541,11 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
550
541
  class: "tpl:rounded-md tpl:bg-[var(--tpl-danger)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:text-white",
551
542
  onClick: a[1] ||= (e) => n("confirm")
552
543
  }, d(h(r).saveGate.confirm), 1)])
553
- ])], 8, We)) : m("", !0)]),
544
+ ])], 8, Ue)) : m("", !0)]),
554
545
  _: 1
555
546
  }));
556
547
  }
557
- }), et = {
548
+ }), $e = {
558
549
  class: "tpl-header tpl:absolute tpl:top-0 tpl:right-0 tpl:left-0 tpl:z-50 tpl:grid tpl:h-14 tpl:grid-cols-[1fr_auto_1fr] tpl:items-center tpl:px-4",
559
550
  style: {
560
551
  "background-color": "color-mix(in srgb, var(--tpl-bg) 80%, transparent)",
@@ -563,24 +554,24 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
563
554
  "box-shadow": "var(--tpl-shadow-md)",
564
555
  "border-bottom": "1px solid var(--tpl-border)"
565
556
  }
566
- }, tt = { class: "tpl-header-left tpl:flex tpl:min-w-[200px] tpl:items-center tpl:gap-3" }, nt = {
557
+ }, et = { class: "tpl-header-left tpl:flex tpl:min-w-[200px] tpl:items-center tpl:gap-3" }, tt = {
567
558
  key: 0,
568
559
  class: "tpl:text-xs tpl:opacity-60 tpl:text-[var(--tpl-text-muted)]"
569
- }, rt = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, it = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, at = ["data-tooltip"], ot = {
560
+ }, nt = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, rt = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, it = ["data-tooltip"], at = {
570
561
  key: 1,
571
562
  "aria-live": "polite",
572
563
  class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-success)]"
573
- }, st = {
564
+ }, ot = {
574
565
  key: 2,
575
566
  "aria-live": "polite",
576
567
  class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
577
- }, ct = ["aria-label", "aria-expanded"], lt = {
568
+ }, st = ["aria-label", "aria-expanded"], ct = {
578
569
  key: 0,
579
570
  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)]"
580
- }, ut = ["aria-expanded"], dt = {
571
+ }, lt = ["aria-expanded"], ut = {
581
572
  key: 0,
582
573
  class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
583
- }, ft = ["disabled"], pt = ["disabled"], mt = /* @__PURE__ */ E({
574
+ }, dt = ["disabled"], ft = ["disabled"], pt = /* @__PURE__ */ E({
584
575
  __name: "CloudHeader",
585
576
  props: {
586
577
  editor: {},
@@ -598,22 +589,22 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
598
589
  },
599
590
  emits: ["save"],
600
591
  setup(e) {
601
- let t = u(() => import("./CollaboratorBar-xsU20iPl.js")), n = u(() => import("./features-Cnfv4QAY.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-RwJiaPXZ.js")), { t: a, format: o } = W();
602
- return (c, l) => (i(), p("header", et, [
603
- x("div", tt, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", nt, d(h(o)(h(a).header.templatesUsed, {
592
+ let t = u(() => import("./CollaboratorBar-CBqd7ldq.js")), n = u(() => import("./features-pLfGJWIB.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu--PdArSnv.js")), { t: a, format: o } = Q();
593
+ return (c, l) => (i(), p("header", $e, [
594
+ x("div", et, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", tt, d(h(o)(h(a).header.templatesUsed, {
604
595
  used: e.featureFlags.templateCount.value,
605
596
  max: e.featureFlags.templateLimit.value
606
597
  })), 1))]),
607
- x("div", rt, [
608
- D(ke, {
598
+ x("div", nt, [
599
+ D(Oe, {
609
600
  viewport: e.editor.state.viewport,
610
601
  onChange: e.editor.setViewport
611
602
  }, null, 8, ["viewport", "onChange"]),
612
- D(Ee, {
603
+ D(Te, {
613
604
  "dark-mode": e.editor.state.darkMode,
614
605
  onChange: e.editor.setDarkMode
615
606
  }, null, 8, ["dark-mode", "onChange"]),
616
- D(Se, {
607
+ D(xe, {
617
608
  "preview-mode": e.editor.state.previewMode,
618
609
  onChange: e.editor.setPreviewMode
619
610
  }, null, 8, ["preview-mode", "onChange"]),
@@ -637,24 +628,24 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
637
628
  "onNavigate"
638
629
  ])) : m("", !0)
639
630
  ]),
640
- x("div", it, [
631
+ x("div", rt, [
641
632
  e.featureFlags.saveStatus.value === "error" ? (i(), p("div", {
642
633
  key: 0,
643
634
  "aria-live": "assertive",
644
635
  class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
645
636
  "data-tooltip": e.featureFlags.saveErrorMessage.value
646
- }, [D(h(X), {
637
+ }, [D(h(L), {
647
638
  size: 12,
648
639
  "stroke-width": 2.5
649
- }), T(" " + d(h(a).header.saveFailed), 1)], 8, at)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", ot, [D(h(I), {
640
+ }), T(" " + d(h(a).header.saveFailed), 1)], 8, it)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", at, [D(h(B), {
650
641
  size: 12,
651
642
  "stroke-width": 2.5
652
- }), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", st, [l[4] ||= x("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), T(" " + d(h(a).header.unsaved), 1)])) : m("", !0),
643
+ }), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", ot, [l[4] ||= x("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), T(" " + d(h(a).header.unsaved), 1)])) : m("", !0),
653
644
  e.commentsInstance.isEnabled.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("button", {
654
645
  key: 3,
655
646
  "aria-label": e.commentsInstance.unresolvedCount.value > 0 ? `${h(a).comments.button} (${e.commentsInstance.unresolvedCount.value})` : h(a).comments.button,
656
647
  "aria-expanded": e.panelState.commentsOpen.value,
657
- class: b(h(Pe)),
648
+ class: b(h($)),
658
649
  style: C({
659
650
  backgroundColor: e.panelState.commentsOpen.value ? "var(--tpl-primary)" : "transparent",
660
651
  color: e.panelState.commentsOpen.value ? "var(--tpl-bg)" : "var(--tpl-primary)",
@@ -662,13 +653,13 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
662
653
  }),
663
654
  onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
664
655
  }, [
665
- D(h(ve), {
656
+ D(h(M), {
666
657
  size: 16,
667
658
  "stroke-width": 2
668
659
  }),
669
660
  T(" " + d(h(a).comments.button) + " ", 1),
670
- e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (i(), p("span", lt, d(e.commentsInstance.unresolvedCount.value), 1)) : m("", !0)
671
- ], 14, ct)) : m("", !0),
661
+ e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (i(), p("span", ct, d(e.commentsInstance.unresolvedCount.value), 1)) : m("", !0)
662
+ ], 14, st)) : m("", !0),
672
663
  e.featureFlags.canUseAiGeneration.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("div", {
673
664
  key: 4,
674
665
  ref: (t) => e.panelState.aiMenuRef.value = t,
@@ -677,11 +668,11 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
677
668
  "aria-expanded": e.panelState.aiMenuOpen.value,
678
669
  class: b(["tpl-ai-btn tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:px-4 tpl:py-2 tpl:text-sm tpl:font-semibold tpl:whitespace-nowrap tpl:transition-all tpl:duration-200", e.panelState.aiButtonActive.value ? "tpl-ai-btn--active" : "tpl-ai-btn--idle"]),
679
670
  onClick: l[1] ||= _((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
680
- }, [D(h(se), {
671
+ }, [D(h(J), {
681
672
  size: 16,
682
673
  "stroke-width": 2,
683
674
  class: "tpl-ai-btn-icon"
684
- }), T(" " + d(h(a).aiChat.button), 1)], 10, ut), D(y, {
675
+ }), T(" " + d(h(a).aiChat.button), 1)], 10, lt), D(y, {
685
676
  "enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
686
677
  "enter-from-class": "tpl:scale-95 tpl:opacity-0",
687
678
  "enter-to-class": "tpl:scale-100 tpl:opacity-100",
@@ -689,7 +680,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
689
680
  "leave-from-class": "tpl:scale-100 tpl:opacity-100",
690
681
  "leave-to-class": "tpl:scale-95 tpl:opacity-0"
691
682
  }, {
692
- default: s(() => [e.panelState.aiMenuOpen.value ? (i(), p("div", dt, [D(h(r), {
683
+ default: s(() => [e.panelState.aiMenuOpen.value ? (i(), p("div", ut, [D(h(r), {
693
684
  "active-feature": e.panelState.activeAiFeature.value,
694
685
  onSelect: e.panelState.handleAiFeatureSelect
695
686
  }, null, 8, ["active-feature", "onSelect"])])) : m("", !0)]),
@@ -697,7 +688,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
697
688
  })], 512)) : m("", !0),
698
689
  e.testEmail.isEnabled.value && e.featureFlags.canSendTestEmail.value ? (i(), p("button", {
699
690
  key: 5,
700
- class: b(h(Pe)),
691
+ class: b(h($)),
701
692
  style: {
702
693
  "background-color": "transparent",
703
694
  color: "var(--tpl-primary)",
@@ -705,18 +696,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
705
696
  },
706
697
  disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
707
698
  onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
708
- }, [e.testEmail.isSending.value ? (i(), v(h(R), {
699
+ }, [e.testEmail.isSending.value ? (i(), v(h(he), {
709
700
  key: 1,
710
701
  class: "tpl-spinner",
711
702
  size: 16,
712
703
  "stroke-width": 2
713
- })) : (i(), v(h(U), {
704
+ })) : (i(), v(h(ve), {
714
705
  key: 0,
715
706
  size: 16,
716
707
  "stroke-width": 2
717
- })), T(" " + d(h(a).testEmail.button), 1)], 10, ft)) : m("", !0),
708
+ })), T(" " + d(h(a).testEmail.button), 1)], 10, dt)) : m("", !0),
718
709
  x("button", {
719
- class: b(h(Pe)),
710
+ class: b(h($)),
720
711
  style: {
721
712
  "background-color": "transparent",
722
713
  color: "var(--tpl-primary)",
@@ -724,20 +715,20 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
724
715
  },
725
716
  disabled: e.isSaveDisabled,
726
717
  onClick: l[3] ||= (e) => c.$emit("save")
727
- }, [e.isSaving ? (i(), v(h(R), {
718
+ }, [e.isSaving ? (i(), v(h(he), {
728
719
  key: 1,
729
720
  class: "tpl-spinner",
730
721
  size: 16,
731
722
  "stroke-width": 2
732
- })) : (i(), v(h(xe), {
723
+ })) : (i(), v(h(be), {
733
724
  key: 0,
734
725
  size: 16,
735
726
  "stroke-width": 2
736
- })), T(" " + d(e.isSaving ? h(a).header.saving : h(a).header.save), 1)], 10, pt)
727
+ })), T(" " + d(e.isSaving ? h(a).header.saving : h(a).header.save), 1)], 10, ft)
737
728
  ])
738
729
  ]));
739
730
  }
740
- }), ht = /* @__PURE__ */ E({
731
+ }), mt = /* @__PURE__ */ E({
741
732
  __name: "CloudPanels",
742
733
  props: {
743
734
  config: {},
@@ -746,41 +737,28 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
746
737
  panelState: {},
747
738
  planConfigInstance: {},
748
739
  testEmail: {},
749
- mediaLib: {},
750
- savedModulesHeadless: {},
751
- showSaveModuleDialog: { type: Boolean },
752
- saveModulePreSelectedBlockId: {},
753
- showModuleBrowserModal: { type: Boolean }
740
+ mediaLib: {}
754
741
  },
755
- emits: [
756
- "update:showSaveModuleDialog",
757
- "update:saveModulePreSelectedBlockId",
758
- "update:showModuleBrowserModal",
759
- "send-test-email",
760
- "module-insert"
761
- ],
742
+ emits: ["send-test-email"],
762
743
  setup(e, { expose: t, emit: n }) {
763
- let r = u(() => import("./features-Cnfv4QAY.js").then((e) => e.o)), a = u(() => import("./features-Cnfv4QAY.js").then((e) => e.a)), o = u(() => import("./features-Cnfv4QAY.js").then((e) => e.i)), s = u(() => import("./features-Cnfv4QAY.js").then((e) => e.n)), l = u(() => import("./features-Cnfv4QAY.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-DhsfYf2n.js")), f = u(() => import("./ModuleBrowserModal-DG4AVFjH.js")), g = u(async () => {
744
+ let r = u(() => import("./features-pLfGJWIB.js").then((e) => e.s)), a = u(() => import("./features-pLfGJWIB.js").then((e) => e.a)), o = u(() => import("./features-pLfGJWIB.js").then((e) => e.i)), s = u(() => import("./features-pLfGJWIB.js").then((e) => e.n)), l = u(() => import("./features-pLfGJWIB.js").then((e) => e.t)), d = u(async () => {
764
745
  try {
765
- return (await import("./src-zu1ehVNN.js")).MediaLibraryModal;
746
+ return (await import("./src-BDJeYiVE.js")).MediaLibraryModal;
766
747
  } catch {
767
748
  throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
768
749
  }
769
- }), _ = n;
770
- function y(e, t, n) {
750
+ }), f = n;
751
+ function m(e, t, n) {
771
752
  t.history.record(), n.setContent(e), t.conditionPreview.reset();
772
753
  }
773
- function b(e, t) {
774
- _("module-insert", e, t);
775
- }
776
- let x = c(null);
777
- function S(e) {
778
- x.value?.filterByBlock(e);
754
+ let g = c(null);
755
+ function _(e) {
756
+ g.value?.filterByBlock(e);
779
757
  }
780
- return t({ filterCommentsByBlock: S }), (t, n) => (i(), p(w, null, [
758
+ return t({ filterCommentsByBlock: _ }), (t, n) => (i(), p(w, null, [
781
759
  D(h(r), {
782
760
  visible: e.panelState.aiChatOpen.value,
783
- "on-apply": (t) => y(t, e.core, e.editor),
761
+ "on-apply": (t) => m(t, e.core, e.editor),
784
762
  onClose: n[0] ||= (t) => e.panelState.aiChatOpen.value = !1
785
763
  }, null, 8, ["visible", "on-apply"]),
786
764
  D(h(s), {
@@ -791,11 +769,11 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
791
769
  visible: e.panelState.designReferenceOpen.value,
792
770
  "has-existing-blocks": e.editor.content.value.blocks.length > 0,
793
771
  onClose: n[2] ||= (t) => e.panelState.designReferenceOpen.value = !1,
794
- onApply: n[3] ||= (t) => y(t, e.core, e.editor)
772
+ onApply: n[3] ||= (t) => m(t, e.core, e.editor)
795
773
  }, null, 8, ["visible", "has-existing-blocks"]),
796
774
  D(h(a), {
797
775
  ref_key: "commentsSidebar",
798
- ref: x,
776
+ ref: g,
799
777
  visible: e.panelState.commentsOpen.value,
800
778
  onClose: n[4] ||= (t) => e.panelState.commentsOpen.value = !1
801
779
  }, null, 8, ["visible"]),
@@ -804,7 +782,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
804
782
  "allowed-emails": e.testEmail.allowedEmails.value,
805
783
  "is-sending": e.testEmail.isSending.value,
806
784
  error: e.testEmail.error.value,
807
- onSend: n[5] ||= (e) => _("send-test-email", e),
785
+ onSend: n[5] ||= (e) => f("send-test-email", e),
808
786
  onClose: n[6] ||= (t) => e.panelState.testEmailModalOpen.value = !1
809
787
  }, null, 8, [
810
788
  "visible",
@@ -812,22 +790,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
812
790
  "is-sending",
813
791
  "error"
814
792
  ]),
815
- e.planConfigInstance.hasFeature("saved_modules") && e.config.modules !== !1 ? (i(), v(h(d), {
816
- key: 0,
817
- visible: e.showSaveModuleDialog,
818
- "pre-selected-block-id": e.saveModulePreSelectedBlockId,
819
- onClose: n[7] ||= (e) => {
820
- _("update:showSaveModuleDialog", !1), _("update:saveModulePreSelectedBlockId", null);
821
- },
822
- onSaved: n[8] ||= (t) => e.savedModulesHeadless.loadModules()
823
- }, null, 8, ["visible", "pre-selected-block-id"])) : m("", !0),
824
- e.planConfigInstance.hasFeature("saved_modules") && e.config.modules !== !1 ? (i(), v(h(f), {
825
- key: 1,
826
- visible: e.showModuleBrowserModal,
827
- onClose: n[9] ||= (e) => _("update:showModuleBrowserModal", !1),
828
- onInsert: b
829
- }, null, 8, ["visible"])) : m("", !0),
830
- D(h(g), {
793
+ D(h(d), {
831
794
  visible: e.panelState.mediaLibraryOpen.value,
832
795
  accept: e.panelState.mediaLibraryAccept.value,
833
796
  "popover-target": e.core.popoverRoot.value,
@@ -842,23 +805,23 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
842
805
  ])
843
806
  ], 64));
844
807
  }
845
- }), gt = {
808
+ }), ht = {
846
809
  key: 0,
847
810
  class: "tpl-loading tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:bg-[var(--tpl-bg)]"
848
- }, _t = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, vt = { 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)]" }, yt = /* @__PURE__ */ E({
811
+ }, gt = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, _t = { 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)]" }, vt = /* @__PURE__ */ E({
849
812
  __name: "CloudLoadingOverlay",
850
813
  props: { visible: { type: Boolean } },
851
814
  setup(e) {
852
- return (t, n) => e.visible ? (i(), p("div", gt, [n[1] ||= l("<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), x("div", _t, [x("div", vt, [(i(), p(w, null, o(5, (e) => x("div", {
815
+ return (t, n) => e.visible ? (i(), p("div", ht, [n[1] ||= l("<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), x("div", gt, [x("div", _t, [(i(), p(w, null, o(5, (e) => x("div", {
853
816
  key: e,
854
817
  class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
855
818
  })), 64))]), n[0] ||= l("<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)])])) : m("", !0);
856
819
  }
857
- }), bt = {
820
+ }), yt = {
858
821
  key: 0,
859
822
  role: "alert",
860
823
  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)]"
861
- }, xt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, St = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, Ct = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, wt = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Tt = /* @__PURE__ */ E({
824
+ }, bt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, xt = { 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)]" }, wt = /* @__PURE__ */ E({
862
825
  __name: "CloudErrorOverlay",
863
826
  props: {
864
827
  error: {},
@@ -866,20 +829,20 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
866
829
  },
867
830
  emits: ["retry"],
868
831
  setup(e, { emit: t }) {
869
- let n = t, { t: r } = W();
832
+ let n = t, { t: r } = Q();
870
833
  function a(e) {
871
834
  return "isUnauthorized" in e && e.isUnauthorized ? r.error.authFailed : "isNotFound" in e && e.isNotFound ? r.error.templateNotFound : r.error.defaultMessage;
872
835
  }
873
836
  function o(e) {
874
837
  return "isNotFound" in e && !!e.isNotFound;
875
838
  }
876
- return (t, s) => e.visible && e.error ? (i(), p("div", bt, [
877
- x("div", xt, [D(h(X), {
839
+ return (t, s) => e.visible && e.error ? (i(), p("div", yt, [
840
+ x("div", bt, [D(h(L), {
878
841
  size: 32,
879
842
  "stroke-width": 1.5,
880
843
  class: "tpl:text-[var(--tpl-danger)]"
881
844
  })]),
882
- x("div", St, [x("h2", Ct, d(h(r).error.title), 1), x("p", wt, d(a(e.error)), 1)]),
845
+ x("div", xt, [x("h2", St, d(h(r).error.title), 1), x("p", Ct, d(a(e.error)), 1)]),
883
846
  o(e.error) ? m("", !0) : (i(), p("button", {
884
847
  key: 0,
885
848
  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)]",
@@ -887,20 +850,20 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
887
850
  }, d(h(r).error.retry), 1))
888
851
  ])) : m("", !0);
889
852
  }
890
- }), Et = {
853
+ }), Tt = {
891
854
  key: 0,
892
855
  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)]"
893
- }, Dt = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Ot = { class: "tpl:flex tpl:items-center tpl:gap-2" }, kt = /* @__PURE__ */ E({
856
+ }, Et = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Dt = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Ot = /* @__PURE__ */ E({
894
857
  __name: "SnapshotPreviewBanner",
895
858
  props: { visible: { type: Boolean } },
896
859
  emits: ["cancel", "confirm"],
897
860
  setup(e, { emit: t }) {
898
- let n = t, { t: r } = W();
899
- return (t, a) => e.visible ? (i(), p("div", Et, [x("div", Dt, [D(h(k), {
861
+ let n = t, { t: r } = Q();
862
+ return (t, a) => e.visible ? (i(), p("div", Tt, [x("div", Et, [D(h(I), {
900
863
  size: 18,
901
864
  "stroke-width": 2,
902
865
  class: "tpl:text-[var(--tpl-primary)]"
903
- }), x("span", null, d(h(r).snapshotPreview.message), 1)]), x("div", Ot, [x("button", {
866
+ }), x("span", null, d(h(r).snapshotPreview.message), 1)]), x("div", Dt, [x("button", {
904
867
  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)]",
905
868
  style: { "background-color": "transparent" },
906
869
  onClick: a[0] ||= (e) => n("cancel")
@@ -909,7 +872,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
909
872
  onClick: a[1] ||= (e) => n("confirm")
910
873
  }, d(h(r).snapshotPreview.restore), 1)])])) : m("", !0);
911
874
  }
912
- }), At = {
875
+ }), kt = {
913
876
  key: 0,
914
877
  role: "status",
915
878
  "aria-live": "polite",
@@ -919,14 +882,14 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
919
882
  color: "var(--tpl-text)",
920
883
  border: "1px solid var(--tpl-warning)"
921
884
  }
922
- }, jt = /* @__PURE__ */ E({
885
+ }, At = /* @__PURE__ */ E({
923
886
  __name: "CollabUndoToast",
924
887
  props: { visible: { type: Boolean } },
925
888
  setup(e) {
926
- let { t } = P();
927
- return (n, r) => e.visible ? (i(), p("div", At, d(h(t).history.collabWarning), 1)) : m("", !0);
889
+ let { t } = U();
890
+ return (n, r) => e.visible ? (i(), p("div", kt, d(h(t).history.collabWarning), 1)) : m("", !0);
928
891
  }
929
- }), Mt = ["data-tpl-theme"], Nt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Pt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Ft = ["aria-label"], It = /*#__PURE__*/ de(/* @__PURE__ */ E({
892
+ }), jt = ["data-tpl-theme"], Mt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Nt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Pt = ["aria-label"], Ft = /*#__PURE__*/ Z(/* @__PURE__ */ E({
930
893
  __name: "CloudEditor",
931
894
  props: {
932
895
  config: {},
@@ -937,72 +900,65 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
937
900
  },
938
901
  emits: ["ready"],
939
902
  setup(e, { expose: r, emit: o }) {
940
- let l = e;
941
- a(H, l.cloudTranslations);
942
- let u = o, f = c(null), w = c(null), E = Be({
943
- config: l.config,
944
- translations: l.translations,
945
- fontsManager: l.fontsManager,
946
- emit: u,
947
- getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null,
948
- editorRoot: l.shadowRoot,
949
- containerEl: w
950
- }), { isInitializing: O, isAuthReady: k, initError: A, planConfigInstance: j, websocket: M, collaboration: N, isCollaborationEnabled: P, editor: F, core: I, featureFlags: L, mediaLib: R, exporter: z, testEmail: B, commentsInstance: te, savedModulesHeadless: ne, panelState: U, snapshotPreview: W, collabWarning: re, showSaveModuleDialog: G, showModuleBrowserModal: K, saveModulePreSelectedBlockId: q, setThemeOverrides: J, setUiTheme: ie } = E, { showNotice: Y } = V(() => l.config.smallScreenNotice);
951
- async function ae(e) {
903
+ let l = u(() => import("./SavedBlocksPanels-kIowCfh_.js")), f = e;
904
+ a(se, f.cloudTranslations);
905
+ let w = o, E = c(null), O = c(null), k = ze({
906
+ config: f.config,
907
+ translations: f.translations,
908
+ fontsManager: f.fontsManager,
909
+ emit: w,
910
+ getCommentsSidebar: () => E.value ? { filterByBlock: E.value.filterCommentsByBlock } : null,
911
+ editorRoot: f.shadowRoot,
912
+ containerEl: O
913
+ }), { isInitializing: A, isAuthReady: j, initError: M, planConfigInstance: N, websocket: P, collaboration: F, isCollaborationEnabled: I, editor: L, core: z, featureFlags: B, mediaLib: V, exporter: H, testEmail: U, commentsInstance: W, savedBlocks: G, panelState: K, snapshotPreview: q, collabWarning: ee, setThemeOverrides: te, setUiTheme: ne } = k, { showNotice: re } = R(() => f.config.smallScreenNotice);
914
+ async function J(e) {
952
915
  try {
953
- await B.sendTestEmail(e), U.testEmailModalOpen.value = !1;
916
+ await U.sendTestEmail(e), K.testEmailModalOpen.value = !1;
954
917
  } catch {}
955
918
  }
956
- async function X() {
919
+ async function ie() {
957
920
  try {
958
- await W.confirmRestoreSnapshot();
921
+ await q.confirmRestoreSnapshot();
959
922
  } catch {}
960
923
  }
961
- function oe(e, t) {
962
- for (let n = 0; n < e.content.length; n++) {
963
- let r = ee(e.content[n]), i = t === void 0 ? void 0 : t + n;
964
- F.addBlock(r, void 0, void 0, i);
965
- }
966
- K.value = !1;
967
- }
968
- let Z = He({
969
- config: l.config,
970
- editor: F,
971
- websocket: M,
972
- planConfigInstance: j,
973
- snapshotPreview: W,
974
- core: I,
975
- exporter: z,
976
- featureFlags: L,
977
- isDestroyed: E.isDestroyed
978
- }), Q = Ue({
979
- issues: I.templateLint ? I.templateLint.issues : c([]),
980
- planConfig: j.config
924
+ let Y = Ve({
925
+ config: f.config,
926
+ editor: L,
927
+ websocket: P,
928
+ planConfigInstance: N,
929
+ snapshotPreview: q,
930
+ core: z,
931
+ exporter: H,
932
+ featureFlags: B,
933
+ isDestroyed: k.isDestroyed
934
+ }), X = He({
935
+ issues: z.templateLint ? z.templateLint.issues : c([]),
936
+ planConfig: N.config
981
937
  });
982
- async function $() {
983
- await Q.tryRunSave(() => Z.saveTemplate().catch((e) => l.config.onError?.(e)));
938
+ async function Z() {
939
+ await X.tryRunSave(() => Y.saveTemplate().catch((e) => f.config.onError?.(e)));
984
940
  }
985
- return E.onSaveHook.value = $, t(() => {
986
- E.initialize();
941
+ return k.onSaveHook.value = Z, t(() => {
942
+ k.initialize();
987
943
  }), g(() => {
988
- E.destroy();
944
+ k.destroy();
989
945
  }), r({
990
- getContent: () => F.content.value,
991
- setContent: (e) => F.setContent(e),
992
- setTheme: ie,
993
- setThemeOverrides: J,
994
- create: Z.createTemplate,
995
- load: Z.loadTemplate,
996
- save: Z.saveTemplate,
997
- sendTestEmail: B.sendTestEmail
946
+ getContent: () => L.content.value,
947
+ setContent: (e) => L.setContent(e),
948
+ setTheme: ne,
949
+ setThemeOverrides: te,
950
+ create: Y.createTemplate,
951
+ load: Y.loadTemplate,
952
+ save: Y.saveTemplate,
953
+ sendTestEmail: U.sendTestEmail
998
954
  }), (t, r) => (i(), p("div", {
999
955
  ref_key: "rootEl",
1000
- ref: w,
1001
- class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(F).state.darkMode }]),
1002
- "data-tpl-theme": h(I).resolvedTheme.value,
1003
- style: C(h(I).themeStyles.value),
1004
- onDragover: r[9] ||= _(() => {}, ["prevent"]),
1005
- onDrop: r[10] ||= _(() => {}, ["prevent"])
956
+ ref: O,
957
+ class: b(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": h(L).state.darkMode }]),
958
+ "data-tpl-theme": h(z).resolvedTheme.value,
959
+ style: C(h(z).themeStyles.value),
960
+ onDragover: r[6] ||= _(() => {}, ["prevent"]),
961
+ onDrop: r[7] ||= _(() => {}, ["prevent"])
1006
962
  }, [
1007
963
  D(Ne),
1008
964
  D(y, {
@@ -1013,7 +969,7 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1013
969
  "leave-from-class": "tpl:opacity-100",
1014
970
  "leave-to-class": "tpl:opacity-0"
1015
971
  }, {
1016
- default: s(() => [D(yt, { visible: h(O) || h(F).state.isLoading }, null, 8, ["visible"])]),
972
+ default: s(() => [D(vt, { visible: h(A) || h(L).state.isLoading }, null, 8, ["visible"])]),
1017
973
  _: 1
1018
974
  }),
1019
975
  D(y, {
@@ -1024,10 +980,10 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1024
980
  "leave-from-class": "tpl:opacity-100",
1025
981
  "leave-to-class": "tpl:opacity-0"
1026
982
  }, {
1027
- default: s(() => [D(Tt, {
1028
- error: h(A),
1029
- visible: !!h(A) && !h(O),
1030
- onRetry: h(E).initialize
983
+ default: s(() => [D(wt, {
984
+ error: h(M),
985
+ visible: !!h(M) && !h(A),
986
+ onRetry: h(k).initialize
1031
987
  }, null, 8, [
1032
988
  "error",
1033
989
  "visible",
@@ -1035,20 +991,20 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1035
991
  ])]),
1036
992
  _: 1
1037
993
  }),
1038
- D(mt, {
1039
- editor: h(F),
1040
- core: h(I),
1041
- "feature-flags": h(L),
1042
- "panel-state": h(U),
1043
- "snapshot-preview": h(W),
1044
- "comments-instance": h(te),
1045
- "test-email": h(B),
1046
- websocket: h(M),
1047
- collaboration: h(N),
1048
- "is-collaboration-enabled": h(P),
1049
- "is-saving": h(F).state.isSaving || h(L).isSaveExporting.value,
1050
- "is-save-disabled": h(F).state.isSaving || h(L).isSaveExporting.value || !h(F).state.isDirty,
1051
- onSave: $
994
+ D(pt, {
995
+ editor: h(L),
996
+ core: h(z),
997
+ "feature-flags": h(B),
998
+ "panel-state": h(K),
999
+ "snapshot-preview": h(q),
1000
+ "comments-instance": h(W),
1001
+ "test-email": h(U),
1002
+ websocket: h(P),
1003
+ collaboration: h(F),
1004
+ "is-collaboration-enabled": h(I),
1005
+ "is-saving": h(L).state.isSaving || h(B).isSaveExporting.value,
1006
+ "is-save-disabled": h(L).state.isSaving || h(B).isSaveExporting.value || !h(L).state.isDirty,
1007
+ onSave: Z
1052
1008
  }, null, 8, [
1053
1009
  "editor",
1054
1010
  "core",
@@ -1063,21 +1019,21 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1063
1019
  "is-saving",
1064
1020
  "is-save-disabled"
1065
1021
  ]),
1066
- D($e, {
1067
- open: h(Q).modalOpen.value,
1068
- issues: h(Q).blockingIssues.value,
1069
- onCancel: h(Q).cancel,
1070
- onConfirm: h(Q).confirmAndSave
1022
+ D(Qe, {
1023
+ open: h(X).modalOpen.value,
1024
+ issues: h(X).blockingIssues.value,
1025
+ onCancel: h(X).cancel,
1026
+ onConfirm: h(X).confirmAndSave
1071
1027
  }, null, 8, [
1072
1028
  "open",
1073
1029
  "issues",
1074
1030
  "onCancel",
1075
1031
  "onConfirm"
1076
1032
  ]),
1077
- D(kt, {
1078
- visible: h(W).isPreviewingSnapshot.value,
1079
- onCancel: h(W).cancelPreview,
1080
- onConfirm: X
1033
+ D(Ot, {
1034
+ visible: h(q).isPreviewingSnapshot.value,
1035
+ onCancel: h(q).cancelPreview,
1036
+ onConfirm: ie
1081
1037
  }, null, 8, ["visible", "onCancel"]),
1082
1038
  D(y, {
1083
1039
  "enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
@@ -1087,18 +1043,18 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1087
1043
  "leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
1088
1044
  "leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
1089
1045
  }, {
1090
- default: s(() => [D(jt, { visible: h(re).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1046
+ default: s(() => [D(At, { visible: h(ee).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
1091
1047
  _: 1
1092
1048
  }),
1093
- n(D(De, null, null, 512), [[S, !h(F).state.previewMode]]),
1049
+ n(D(Ee, null, null, 512), [[S, !h(L).state.previewMode]]),
1094
1050
  x("div", {
1095
- class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(F).state.previewMode ? "tpl:left-0 tpl:right-0" : h(U).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(W).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1051
+ class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(L).state.previewMode ? "tpl:left-0 tpl:right-0" : h(K).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(q).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
1096
1052
  style: {
1097
1053
  transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
1098
1054
  "background-color": "var(--tpl-canvas-bg)"
1099
1055
  }
1100
- }, [x("div", Nt, [D(y, { name: "tpl-restore-btn" }, {
1101
- default: s(() => [h(I).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1056
+ }, [x("div", Mt, [D(y, { name: "tpl-restore-btn" }, {
1057
+ default: s(() => [h(z).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
1102
1058
  key: 0,
1103
1059
  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",
1104
1060
  style: {
@@ -1107,22 +1063,22 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1107
1063
  "border-color": "var(--tpl-warning)",
1108
1064
  "backdrop-filter": "blur(8px)"
1109
1065
  },
1110
- onClick: r[0] ||= (e) => h(I).conditionPreview.reset()
1111
- }, [D(h(be), {
1066
+ onClick: r[0] ||= (e) => h(z).conditionPreview.reset()
1067
+ }, [D(h(ye), {
1112
1068
  size: 13,
1113
1069
  "stroke-width": 2
1114
- }), T(" " + d(h(I).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1070
+ }), T(" " + d(h(z).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
1115
1071
  _: 1
1116
- })]), x("main", Pt, [D(we, {
1117
- viewport: h(F).state.viewport,
1118
- content: h(F).content.value,
1119
- "selected-block-id": h(F).state.selectedBlockId,
1120
- "dark-mode": h(F).state.darkMode,
1121
- "preview-mode": h(F).state.previewMode,
1122
- "locked-blocks": h(N)?.lockedBlocks.value ?? void 0,
1123
- onSelectBlock: h(F).selectBlock,
1124
- onOpenAiChat: r[1] ||= (e) => h(U).aiChatOpen.value = !0,
1125
- onOpenDesignReference: r[2] ||= (e) => h(U).designReferenceOpen.value = !0
1072
+ })]), x("main", Nt, [D(Ce, {
1073
+ viewport: h(L).state.viewport,
1074
+ content: h(L).content.value,
1075
+ "selected-block-id": h(L).state.selectedBlockId,
1076
+ "dark-mode": h(L).state.darkMode,
1077
+ "preview-mode": h(L).state.previewMode,
1078
+ "locked-blocks": h(F)?.lockedBlocks.value ?? void 0,
1079
+ onSelectBlock: h(L).selectBlock,
1080
+ onOpenAiChat: r[1] ||= (e) => h(K).aiChatOpen.value = !0,
1081
+ onOpenDesignReference: r[2] ||= (e) => h(K).designReferenceOpen.value = !0
1126
1082
  }, null, 8, [
1127
1083
  "viewport",
1128
1084
  "content",
@@ -1132,51 +1088,43 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1132
1088
  "locked-blocks",
1133
1089
  "onSelectBlock"
1134
1090
  ])])], 2),
1135
- e.config.branding !== !1 && !h(L).isWhiteLabeled.value ? (i(), v(Ae, {
1091
+ e.config.branding !== !1 && !h(B).isWhiteLabeled.value ? (i(), v(Ae, {
1136
1092
  key: 0,
1137
- "position-class": [h(F).state.previewMode ? "tpl:left-0 tpl:right-0" : h(U).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1093
+ "position-class": [h(L).state.previewMode ? "tpl:left-0 tpl:right-0" : h(K).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
1138
1094
  }, null, 8, ["position-class"])) : m("", !0),
1139
1095
  x("div", {
1140
1096
  class: "tpl-sr-only",
1141
1097
  role: "status",
1142
1098
  "aria-live": "polite",
1143
1099
  "aria-atomic": "true",
1144
- "aria-label": h(I).t.landmarks.reorderAnnouncements
1145
- }, d(h(I).keyboardReorder.announcement.value), 9, Ft),
1146
- n(D(Ce, {
1147
- "selected-block": h(F).selectedBlock.value,
1148
- settings: h(F).content.value.settings,
1149
- "shifted-left": h(U).rightPanelOpen.value,
1150
- onUpdateBlock: r[3] ||= (e) => h(F).updateBlock(h(F).selectedBlock.value.id, e),
1151
- onDeleteBlock: r[4] ||= (e) => h(I).blockActions.deleteBlock(h(F).selectedBlock.value.id),
1152
- onDuplicateBlock: r[5] ||= (e) => h(I).blockActions.duplicateBlock(h(F).selectedBlock.value),
1153
- onUpdateSettings: h(F).updateSettings
1100
+ "aria-label": h(z).t.landmarks.reorderAnnouncements
1101
+ }, d(h(z).keyboardReorder.announcement.value), 9, Pt),
1102
+ n(D(Se, {
1103
+ "selected-block": h(L).selectedBlock.value,
1104
+ settings: h(L).content.value.settings,
1105
+ "shifted-left": h(K).rightPanelOpen.value,
1106
+ onUpdateBlock: r[3] ||= (e) => h(L).updateBlock(h(L).selectedBlock.value.id, e),
1107
+ onDeleteBlock: r[4] ||= (e) => h(z).blockActions.deleteBlock(h(L).selectedBlock.value.id),
1108
+ onDuplicateBlock: r[5] ||= (e) => h(z).blockActions.duplicateBlock(h(L).selectedBlock.value),
1109
+ onUpdateSettings: h(L).updateSettings
1154
1110
  }, null, 8, [
1155
1111
  "selected-block",
1156
1112
  "settings",
1157
1113
  "shifted-left",
1158
1114
  "onUpdateSettings"
1159
- ]), [[S, !h(F).state.previewMode]]),
1160
- !h(O) && h(k) ? (i(), v(ht, {
1115
+ ]), [[S, !h(L).state.previewMode]]),
1116
+ !h(A) && h(j) ? (i(), v(mt, {
1161
1117
  key: 1,
1162
1118
  ref_key: "cloudPanelsRef",
1163
- ref: f,
1164
- config: l.config,
1165
- editor: h(F),
1166
- core: h(I),
1167
- "panel-state": h(U),
1168
- "plan-config-instance": h(j),
1169
- "test-email": h(B),
1170
- "media-lib": h(R),
1171
- "saved-modules-headless": h(ne),
1172
- "show-save-module-dialog": h(G),
1173
- "save-module-pre-selected-block-id": h(q),
1174
- "show-module-browser-modal": h(K),
1175
- "onUpdate:showSaveModuleDialog": r[6] ||= (e) => G.value = e,
1176
- "onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => q.value = e,
1177
- "onUpdate:showModuleBrowserModal": r[8] ||= (e) => K.value = e,
1178
- onSendTestEmail: ae,
1179
- onModuleInsert: oe
1119
+ ref: E,
1120
+ config: f.config,
1121
+ editor: h(L),
1122
+ core: h(z),
1123
+ "panel-state": h(K),
1124
+ "plan-config-instance": h(N),
1125
+ "test-email": h(U),
1126
+ "media-lib": h(V),
1127
+ onSendTestEmail: J
1180
1128
  }, null, 8, [
1181
1129
  "config",
1182
1130
  "editor",
@@ -1184,23 +1132,23 @@ var We = ["aria-label"], Ge = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
1184
1132
  "panel-state",
1185
1133
  "plan-config-instance",
1186
1134
  "test-email",
1187
- "media-lib",
1188
- "saved-modules-headless",
1189
- "show-save-module-dialog",
1190
- "save-module-pre-selected-block-id",
1191
- "show-module-browser-modal"
1135
+ "media-lib"
1192
1136
  ])) : m("", !0),
1137
+ h(G).isAvailable.value ? (i(), v(h(l), {
1138
+ key: 2,
1139
+ feature: h(G)
1140
+ }, null, 8, ["feature"])) : m("", !0),
1193
1141
  x("div", {
1194
- ref: (e) => h(I).popoverRoot.value = e,
1142
+ ref: (e) => h(z).popoverRoot.value = e,
1195
1143
  class: "tpl-popover-root"
1196
1144
  }, null, 512),
1197
- D(Oe),
1145
+ D(De),
1198
1146
  D(Me),
1199
- h(Y) ? (i(), v(je, { key: 2 })) : m("", !0)
1200
- ], 46, Mt));
1147
+ h(re) ? (i(), v(je, { key: 3 })) : m("", !0)
1148
+ ], 46, jt));
1201
1149
  }
1202
- }), [["__scopeId", "data-v-3fc6c906"]]);
1150
+ }), [["__scopeId", "data-v-04940787"]]);
1203
1151
  //#endregion
1204
- export { It as default };
1152
+ export { Ft as default };
1205
1153
 
1206
- //# sourceMappingURL=CloudEditor-Dufl354p.js.map
1154
+ //# sourceMappingURL=CloudEditor-DnTfI5GU.js.map