@templatical/editor 0.9.1 → 0.10.1
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.
- package/dist/{AiChatSidebar-BUKj9n02.js → AiChatSidebar-Dz5bH1z3.js} +13 -13
- package/dist/{AiFeatureMenu-Co14YVJt.js → AiFeatureMenu-D2Xn0jFx.js} +7 -7
- package/dist/{BlockIssueBadge-DThKKeub.js → BlockIssueBadge-CnqD1cGo.js} +5 -5
- package/dist/{CloudEditor-DHB1FoQD.js → CloudEditor-BizZwsfD.js} +237 -233
- package/dist/{CollaboratorBar-Bc6q0gB9.js → CollaboratorBar-Bn2JDu6l.js} +4 -4
- package/dist/{CommentsSidebar-DiH4R4F0.js → CommentsSidebar-BAG6rdVC.js} +12 -12
- package/dist/{CountdownBlock-BTPefclD.js → CountdownBlock-B_Hr9Bm9.js} +3 -3
- package/dist/{CountdownToolbar-Dvr2icg-.js → CountdownToolbar-DaqDLKLk.js} +3 -3
- package/dist/{DesignReferenceSidebar-BP32MgpS.js → DesignReferenceSidebar-I9LWjvrj.js} +9 -9
- package/dist/{IssuesPanel-B1LT91IX.js → IssuesPanel-B32Ifp4x.js} +8 -8
- package/dist/{LoadingTrack-xCOLUR3o.js → LoadingTrack-UTqOUN4O.js} +1 -1
- package/dist/{ModuleBrowserModal-CWegFoOA.js → ModuleBrowserModal-DodRped1.js} +10 -10
- package/dist/{ModulePreviewCanvas-D9WUSSRT.js → ModulePreviewCanvas-DhcnddJF.js} +3 -3
- package/dist/{NumberWithSuffix-CxUBW_V2.js → NumberWithSuffix-DB7GyyCI.js} +3 -3
- package/dist/{ParagraphEditor-DrAz2yot.js → ParagraphEditor-pJA9BHAL.js} +26 -26
- package/dist/{RichTextEditorContent-gR169m1-.js → RichTextEditorContent-dTGSUff_.js} +6 -6
- package/dist/{SaveModuleDialog-DWidA0c9.js → SaveModuleDialog-D634e99d.js} +7 -7
- package/dist/{SnapshotHistory-CIo2Jaw-.js → SnapshotHistory-m_nGAHlb.js} +9 -9
- package/dist/{TemplateScoringPanel-seBvvn8O.js → TemplateScoringPanel-BOQh9neV.js} +14 -14
- package/dist/{TestEmailModal-BuCuWp3N.js → TestEmailModal-DOcwoKkc.js} +5 -5
- package/dist/{TitleEditor-BmW0uMl7.js → TitleEditor-t6JMWamY.js} +12 -12
- package/dist/{TplModal-YFpBaiLj.js → TplModal-BAtbfDB0.js} +4 -4
- package/dist/{blockTypeIcons-DCkHXPhx.js → blockTypeIcons-C4lXx3Au.js} +2 -2
- package/dist/bundle-stats.json +6 -6
- package/dist/cdn/chunks/{AiFeatureMenu-Dayzk2H7.js → AiFeatureMenu-BeOyHAoZ.js} +3 -3
- package/dist/cdn/chunks/{AiFeatureMenu-Dayzk2H7.js.map → AiFeatureMenu-BeOyHAoZ.js.map} +1 -1
- package/dist/cdn/chunks/{BlockIssueBadge-D_US2wqo.js → BlockIssueBadge-C6YilQdl.js} +5 -5
- package/dist/cdn/chunks/{BlockIssueBadge-D_US2wqo.js.map → BlockIssueBadge-C6YilQdl.js.map} +1 -1
- package/dist/cdn/chunks/{CloudEditor-CrZk-OwQ.js → CloudEditor-DEA37rdW.js} +178 -174
- package/dist/cdn/chunks/CloudEditor-DEA37rdW.js.map +1 -0
- package/dist/cdn/chunks/{CollaboratorBar-C4CFs5EJ.js → CollaboratorBar-CKW7jOW4.js} +4 -4
- package/dist/cdn/chunks/{CollaboratorBar-C4CFs5EJ.js.map → CollaboratorBar-CKW7jOW4.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownBlock-D6lCXhZA.js → CountdownBlock-DU9ga9Ki.js} +3 -3
- package/dist/cdn/chunks/{CountdownBlock-D6lCXhZA.js.map → CountdownBlock-DU9ga9Ki.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownToolbar-BsGUxoRv.js → CountdownToolbar-BHWsxth7.js} +4 -4
- package/dist/cdn/chunks/{CountdownToolbar-BsGUxoRv.js.map → CountdownToolbar-BHWsxth7.js.map} +1 -1
- package/dist/cdn/chunks/{IssuesPanel-DeHTmRDz.js → IssuesPanel-BkYhij39.js} +9 -9
- package/dist/cdn/chunks/{IssuesPanel-DeHTmRDz.js.map → IssuesPanel-BkYhij39.js.map} +1 -1
- package/dist/cdn/chunks/{ModuleBrowserModal-Cgjz4xAz.js → ModuleBrowserModal-D51w942J.js} +9 -9
- package/dist/cdn/chunks/{ModuleBrowserModal-Cgjz4xAz.js.map → ModuleBrowserModal-D51w942J.js.map} +1 -1
- package/dist/cdn/chunks/{ModulePreviewCanvas-CeS9PsAA.js → ModulePreviewCanvas-BqTqcKHS.js} +3 -3
- package/dist/cdn/chunks/{ModulePreviewCanvas-CeS9PsAA.js.map → ModulePreviewCanvas-BqTqcKHS.js.map} +1 -1
- package/dist/cdn/chunks/{NumberWithSuffix-Bp-idLCc.js → NumberWithSuffix-DuUcF2zG.js} +3 -3
- package/dist/cdn/chunks/{NumberWithSuffix-Bp-idLCc.js.map → NumberWithSuffix-DuUcF2zG.js.map} +1 -1
- package/dist/cdn/chunks/{ParagraphEditor-fM9aFu8T.js → ParagraphEditor-Bqjn3ZNm.js} +45 -45
- package/dist/cdn/chunks/{ParagraphEditor-fM9aFu8T.js.map → ParagraphEditor-Bqjn3ZNm.js.map} +1 -1
- package/dist/cdn/chunks/{RichTextEditorContent-DwNPE5H5.js → RichTextEditorContent-mIkkb5EK.js} +4 -4
- package/dist/cdn/chunks/{RichTextEditorContent-DwNPE5H5.js.map → RichTextEditorContent-mIkkb5EK.js.map} +1 -1
- package/dist/cdn/chunks/{SaveModuleDialog-BrtDXzIz.js → SaveModuleDialog-Felfmkcj.js} +5 -5
- package/dist/cdn/chunks/{SaveModuleDialog-BrtDXzIz.js.map → SaveModuleDialog-Felfmkcj.js.map} +1 -1
- package/dist/cdn/chunks/{TitleEditor-D0rSnye0.js → TitleEditor-Dcldr8D6.js} +12 -12
- package/dist/cdn/chunks/{TitleEditor-D0rSnye0.js.map → TitleEditor-Dcldr8D6.js.map} +1 -1
- package/dist/cdn/chunks/blockTypeIcons-D05Wqf5u.js +22 -0
- package/dist/cdn/chunks/{blockTypeIcons-YOEe5mDE.js.map → blockTypeIcons-D05Wqf5u.js.map} +1 -1
- package/dist/{de-CATfXDKV.js → cdn/chunks/de-DIAGP7yH.js} +2 -6
- package/dist/cdn/chunks/de-DIAGP7yH.js.map +1 -0
- package/dist/cdn/chunks/{draggable-BwWMFq33.js → draggable-J_1CPXYc.js} +1254 -1253
- package/dist/cdn/chunks/draggable-J_1CPXYc.js.map +1 -0
- package/dist/{en-CwCAgYL5.js → cdn/chunks/en-nqIW8Q9W.js} +2 -6
- package/dist/cdn/chunks/en-nqIW8Q9W.js.map +1 -0
- package/dist/cdn/chunks/{extensions-GYsbQFPr.js → extensions-CNmpC18A.js} +127 -124
- package/dist/cdn/chunks/{extensions-GYsbQFPr.js.map → extensions-CNmpC18A.js.map} +1 -1
- package/dist/cdn/chunks/{features-D-2kVhHY.js → features-_ar9QbVv.js} +1006 -979
- package/dist/cdn/chunks/features-_ar9QbVv.js.map +1 -0
- package/dist/cdn/chunks/{icons-fZoyKV_s.js → icons-CnwCLJX-.js} +19 -33
- package/dist/cdn/chunks/icons-CnwCLJX-.js.map +1 -0
- package/dist/cdn/chunks/{media-library-CO2WOETY.js → media-library-9jyt7Bf9.js} +83 -79
- package/dist/cdn/chunks/media-library-9jyt7Bf9.js.map +1 -0
- package/dist/{pt-BR-D3Mg7AKe.js → cdn/chunks/pt-BR-DCNnLLx9.js} +2 -6
- package/dist/cdn/chunks/pt-BR-DCNnLLx9.js.map +1 -0
- package/dist/cdn/chunks/{quality-BxPiS-wv.js → quality-CO9mj_RH.js} +494 -484
- package/dist/cdn/chunks/quality-CO9mj_RH.js.map +1 -0
- package/dist/cdn/chunks/{renderer-CfHPFI5v.js → renderer-m6XTCWCL.js} +135 -117
- package/dist/cdn/chunks/renderer-m6XTCWCL.js.map +1 -0
- package/dist/cdn/chunks/{src-ftxPuuQh.js → src-DfMSYqvE.js} +9 -9
- package/dist/cdn/chunks/{src-ftxPuuQh.js.map → src-DfMSYqvE.js.map} +1 -1
- package/dist/cdn/chunks/{styles-CVUvPdKD.js → styles-1uFWdD5T.js} +1045 -1074
- package/dist/cdn/chunks/styles-1uFWdD5T.js.map +1 -0
- package/dist/cdn/chunks/{tiptap-BBbH3IT9.js → tiptap-CJbIm_hE.js} +5 -5
- package/dist/cdn/chunks/{tiptap-BBbH3IT9.js.map → tiptap-CJbIm_hE.js.map} +1 -1
- package/dist/cdn/editor.css +1 -1
- package/dist/cdn/editor.js +109 -100
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{check-ChQyfxJ3.js → check-Bs6_uQpm.js} +1 -1
- package/dist/{chevron-down-DJjo0jSV.js → chevron-down-so1rnGwF.js} +1 -1
- package/dist/{circle-alert-CPH6l3Lc.js → circle-alert-CrKv0AuW.js} +1 -1
- package/dist/{clock-DHl_BIkU.js → clock-Cpx6GYpa.js} +1 -1
- package/dist/{cloud-VxYMtfXC.js → cloud-bHhCNRZa.js} +80 -74
- package/dist/{createLucideIcon-XgXOJ05E.js → createLucideIcon-DFBxEm5K.js} +3 -3
- package/dist/{cdn/chunks/de-CATfXDKV.js → de-DIAGP7yH.js} +0 -8
- package/dist/{dist-C0jo8wtG.js → dist-0RguD1vS.js} +1 -1
- package/dist/{dist-CNLAS2v2.js → dist-2-A7SaKm.js} +3 -3
- package/dist/{dist-UK-lbEBc.js → dist-74n2Mqc6.js} +1 -1
- package/dist/{dist-BzuC8o3y.js → dist-B3CcePtK.js} +3 -3
- package/dist/{dist-D8C6jIXM.js → dist-BejBMbBX.js} +3 -3
- package/dist/{dist-CIV3Brg-.js → dist-BufRk8ZY.js} +4 -6
- package/dist/{dist-DILjuzSv.js → dist-Bvje_Tqb.js} +1 -1
- package/dist/{dist-BDgf2G-V.js → dist-BxHa6kIT.js} +3 -3
- package/dist/{dist-CUpJmrjt.js → dist-CIK3BYgh.js} +1 -1
- package/dist/{dist-C8wMh_gi.js → dist-CMkZaqX1.js} +1 -1
- package/dist/{dist-BxP6TB0l.js → dist-CoaWXQ7N.js} +1 -1
- package/dist/{dist-D5lmdi1F.js → dist-D1YvgM6p.js} +1 -1
- package/dist/{dist-DYO-w_Jf.js → dist-DJ5YJLXn.js} +1 -1
- package/dist/{dist-DXaxGLsw.js → dist-DwEpKyry.js} +1 -1
- package/dist/{cdn/chunks/en-CwCAgYL5.js → en-nqIW8Q9W.js} +0 -8
- package/dist/{extensions-Mj2-D8uK.js → extensions-C810eSzv.js} +107 -104
- package/dist/{image-up-CPBCOMit.js → image-up-kMLE5GsI.js} +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/{info-DIY9mguM.js → info-xqRxLfNz.js} +1 -1
- package/dist/keys-BoYBr3PU.js +10 -0
- package/dist/{list-checks-CSCyu3fH.js → list-checks-C81htkBJ.js} +1 -1
- package/dist/{loader-circle-Rz_4vJLH.js → loader-circle-C6cZPIum.js} +1 -1
- package/dist/{message-circle-D-umK_MU.js → message-circle-dqOBRe07.js} +1 -1
- package/dist/{cdn/chunks/pt-BR-D3Mg7AKe.js → pt-BR-DCNnLLx9.js} +0 -8
- package/dist/{refresh-cw-CvWF4jfR.js → refresh-cw-DCjNd6o0.js} +1 -1
- package/dist/{scan-line-wanvAFDr.js → scan-line-DXz0nZVJ.js} +1 -1
- package/dist/{send-BhbhbIFT.js → send-C4uH_WaI.js} +1 -1
- package/dist/{shield-check-CXPPMWth.js → shield-check-B3U68ssA.js} +1 -1
- package/dist/{sparkles-CrUN0KWY.js → sparkles-CsDweGUy.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/{styles-CxwIlb7Y.js → styles-CBlNpqL9.js} +1031 -1074
- package/dist/templatical-editor.js +116 -107
- package/dist/{text-align-end-Bkq8oBrD.js → text-align-start-BkKQePFp.js} +11 -11
- package/dist/{trash-2-BpY5BCLT.js → trash-2-BIOkaEz1.js} +1 -1
- package/dist/{triangle-alert-MwJBKR2e.js → triangle-alert-Bbgu6uUG.js} +1 -1
- package/dist/{useAliveFlag-BLyG8L4d.js → useAliveFlag-Bc99FWyR.js} +1 -1
- package/dist/{useCloudI18n-DKWJg6rJ.js → useCloudI18n-DiwsLi6z.js} +2 -2
- package/dist/{useEditorCore-CEkf_VWX.js → useEditorCore-7c1QpPlw.js} +717 -694
- package/dist/{useI18n-Besvmtxy.js → useI18n-DskZMfRJ.js} +2 -2
- package/dist/{useMergeTag-WNzaCpXR.js → useMergeTag-Co4xYwG6.js} +4 -4
- package/dist/usePopoverRoot-DYH_gX8o.js +8 -0
- package/dist/{vue.runtime.esm-bundler-BDSGA5hA.js → vue.runtime.esm-bundler-D0Hg03Ub.js} +1289 -1288
- package/dist/{x-rcnxRG8Y.js → x-DWU6NCuE.js} +1 -1
- package/package.json +10 -10
- package/dist/cdn/chunks/CloudEditor-CrZk-OwQ.js.map +0 -1
- package/dist/cdn/chunks/blockTypeIcons-YOEe5mDE.js +0 -22
- package/dist/cdn/chunks/de-CATfXDKV.js.map +0 -1
- package/dist/cdn/chunks/draggable-BwWMFq33.js.map +0 -1
- package/dist/cdn/chunks/en-CwCAgYL5.js.map +0 -1
- package/dist/cdn/chunks/features-D-2kVhHY.js.map +0 -1
- package/dist/cdn/chunks/icons-fZoyKV_s.js.map +0 -1
- package/dist/cdn/chunks/media-library-CO2WOETY.js.map +0 -1
- package/dist/cdn/chunks/pt-BR-D3Mg7AKe.js.map +0 -1
- package/dist/cdn/chunks/quality-BxPiS-wv.js.map +0 -1
- package/dist/cdn/chunks/renderer-CfHPFI5v.js.map +0 -1
- package/dist/cdn/chunks/styles-CVUvPdKD.js.map +0 -1
- package/dist/keys-BiQlvx51.js +0 -10
- package/dist/usePopoverRoot-CKt956u-.js +0 -8
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { $ as e, A as t, H as n, J as r, M as i, N as a, P as o, V as s, Z as c, _ as l, b as u, ct as d, f, g as p, h as m, it as h, j as g, l as _, m as v, n as y, ot as b, p as x, s as S, st as C, u as w, v as T, x as E, y as D, z as ee } from "./draggable-
|
|
2
|
-
import { $t as O, A as k, At as A,
|
|
3
|
-
import {
|
|
4
|
-
import { a as Se, c as Ce, i as we, l as Te, n as Ee, o as De, r as Oe, s as ke, t as Ae } from "./styles-
|
|
1
|
+
import { $ as e, A as t, H as n, J as r, M as i, N as a, P as o, V as s, Z as c, _ as l, b as u, ct as d, f, g as p, h as m, it as h, j as g, l as _, m as v, n as y, ot as b, p as x, s as S, st as C, u as w, v as T, x as E, y as D, z as ee } from "./draggable-J_1CPXYc.js";
|
|
2
|
+
import { $t as O, A as k, At as A, Bn as j, Dn as M, Dt as N, E as P, Et as F, Ft as I, Ht as L, It as R, Nt as z, Qt as B, Rt as te, S as V, Sn as H, Ut as U, Vt as ne, Z as W, _ as G, _t as K, an as q, b as re, c as ie, d as ae, en as oe, f as J, g as Y, h as X, l as se, m as ce, mn as Z, p as le, pt as ue, rt as de, s as fe, st as pe, tt as Q, u as me, ut as he, v as ge, vt as _e, x as ve, y as ye } from "./features-_ar9QbVv.js";
|
|
3
|
+
import { S as be, x as xe } from "./icons-CnwCLJX-.js";
|
|
4
|
+
import { a as Se, c as Ce, i as we, l as Te, n as Ee, o as De, r as Oe, s as ke, t as Ae, u as je } from "./styles-1uFWdD5T.js";
|
|
5
5
|
import { d as $ } from "./styleConstants-lGobwiLH.js";
|
|
6
6
|
//#region src/cloud/composables/useSnapshotPreview.ts
|
|
7
|
-
function
|
|
7
|
+
function Me(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 =
|
|
14
|
+
i.state.template?.id && !u.value && (u.value = J({
|
|
15
15
|
authManager: n,
|
|
16
16
|
templateId: i.state.template.id,
|
|
17
17
|
onRestore: b,
|
|
@@ -33,6 +33,8 @@ function je(t) {
|
|
|
33
33
|
async function S() {
|
|
34
34
|
if (!(!d.value || !u.value)) try {
|
|
35
35
|
if (await u.value.restoreSnapshot(d.value.id), m || (await u.value.loadSnapshots(), m)) return;
|
|
36
|
+
} catch (e) {
|
|
37
|
+
throw !m && p.value && i.setContent(p.value, !1), e;
|
|
36
38
|
} finally {
|
|
37
39
|
m || (d.value = null, p.value = null, s?.resume());
|
|
38
40
|
}
|
|
@@ -61,7 +63,7 @@ function je(t) {
|
|
|
61
63
|
}
|
|
62
64
|
//#endregion
|
|
63
65
|
//#region src/cloud/composables/useCloudPanelState.ts
|
|
64
|
-
function
|
|
66
|
+
function Ne() {
|
|
65
67
|
let e = c(null), t = f({
|
|
66
68
|
get: () => e.value === "ai-chat",
|
|
67
69
|
set: (t) => e.value = t ? "ai-chat" : null
|
|
@@ -84,7 +86,7 @@ function Me() {
|
|
|
84
86
|
function g(t) {
|
|
85
87
|
l.value = !1, e.value = e.value === t ? null : t;
|
|
86
88
|
}
|
|
87
|
-
return
|
|
89
|
+
return q(u, () => {
|
|
88
90
|
l.value = !1;
|
|
89
91
|
}), {
|
|
90
92
|
activePanel: e,
|
|
@@ -106,10 +108,10 @@ function Me() {
|
|
|
106
108
|
}
|
|
107
109
|
//#endregion
|
|
108
110
|
//#region src/cloud/composables/useCollabUndoWarning.ts
|
|
109
|
-
function
|
|
111
|
+
function Pe(e) {
|
|
110
112
|
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = Z(() => {
|
|
111
113
|
a.value = !1;
|
|
112
|
-
},
|
|
114
|
+
}, j, { immediate: !1 });
|
|
113
115
|
function s() {
|
|
114
116
|
i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0, o());
|
|
115
117
|
}
|
|
@@ -120,7 +122,7 @@ function Ne(e) {
|
|
|
120
122
|
}
|
|
121
123
|
//#endregion
|
|
122
124
|
//#region src/cloud/composables/useCloudFeatureFlags.ts
|
|
123
|
-
function
|
|
125
|
+
function Fe(e) {
|
|
124
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
127
|
p.value = "idle";
|
|
126
128
|
}, 3e3, { immediate: !1 });
|
|
@@ -139,7 +141,7 @@ function Pe(e) {
|
|
|
139
141
|
}
|
|
140
142
|
//#endregion
|
|
141
143
|
//#region src/cloud/composables/useCloudMediaLibrary.ts
|
|
142
|
-
function
|
|
144
|
+
function Ie(e) {
|
|
143
145
|
let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: i } = e, a = null;
|
|
144
146
|
async function o() {
|
|
145
147
|
if (t) {
|
|
@@ -174,30 +176,30 @@ function Fe(e) {
|
|
|
174
176
|
}
|
|
175
177
|
//#endregion
|
|
176
178
|
//#region src/cloud/composables/useCloudInitialization.ts
|
|
177
|
-
function
|
|
178
|
-
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
|
|
179
|
+
function Le(e) {
|
|
180
|
+
let { config: t, translations: n, fontsManager: r, emit: i, getCommentsSidebar: o } = e, s = c(!0), l = c(!1), u = c(null), d = !1, p = { value: null }, m = null, h = null, g = new P({
|
|
179
181
|
...t.auth,
|
|
180
182
|
onError: t.onError
|
|
181
|
-
}), _ =
|
|
183
|
+
}), _ = se({
|
|
182
184
|
authManager: g,
|
|
183
185
|
onError: t.onError
|
|
184
|
-
}), v = c(/* @__PURE__ */ new Map()), y =
|
|
186
|
+
}), v = c(/* @__PURE__ */ new Map()), y = ve({
|
|
185
187
|
authManager: g,
|
|
186
188
|
defaultFontFamily: t.fonts?.defaultFont,
|
|
187
189
|
templateDefaults: t.templateDefaults,
|
|
188
190
|
onError: t.onError,
|
|
189
191
|
lockedBlocks: v
|
|
190
|
-
}), b =
|
|
192
|
+
}), b = ce({
|
|
191
193
|
authManager: g,
|
|
192
194
|
onError: t.onError
|
|
193
195
|
});
|
|
194
|
-
t.mcp?.enabled &&
|
|
196
|
+
t.mcp?.enabled && fe({
|
|
195
197
|
editor: y,
|
|
196
198
|
channel: b.channel,
|
|
197
199
|
onOperation: t.mcp.onOperation
|
|
198
200
|
});
|
|
199
201
|
let x = null;
|
|
200
|
-
t.collaboration?.enabled && (x =
|
|
202
|
+
t.collaboration?.enabled && (x = Y({
|
|
201
203
|
authManager: g,
|
|
202
204
|
editor: y,
|
|
203
205
|
channel: b.channel,
|
|
@@ -208,7 +210,7 @@ function Ie(e) {
|
|
|
208
210
|
onBlockUnlocked: t.collaboration.onBlockUnlocked
|
|
209
211
|
}), ee(() => x.lockedBlocks.value, (e) => {
|
|
210
212
|
v.value = e;
|
|
211
|
-
}, { immediate: !0 }),
|
|
213
|
+
}, { immediate: !0 }), X(y, x));
|
|
212
214
|
let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = k({
|
|
213
215
|
editor: y,
|
|
214
216
|
config: {
|
|
@@ -219,7 +221,7 @@ function Ie(e) {
|
|
|
219
221
|
mergeTags: t.mergeTags,
|
|
220
222
|
displayConditions: t.displayConditions,
|
|
221
223
|
onRequestMedia: null,
|
|
222
|
-
lint:
|
|
224
|
+
lint: je(t),
|
|
223
225
|
onSave: () => {
|
|
224
226
|
p.value?.().catch((e) => {
|
|
225
227
|
t.onError?.(e);
|
|
@@ -240,13 +242,13 @@ function Ie(e) {
|
|
|
240
242
|
keyboardOptions: { onBeforeUndo: () => h?.showCollabUndoWarning() },
|
|
241
243
|
editorRoot: e.editorRoot,
|
|
242
244
|
containerEl: e.containerEl
|
|
243
|
-
}), w =
|
|
245
|
+
}), w = Pe({
|
|
244
246
|
isCollaborationEnabled: S,
|
|
245
247
|
getCollaboratorCount: () => x?.collaborators.value.length ?? 0,
|
|
246
248
|
canUndo: C.history.canUndo
|
|
247
249
|
});
|
|
248
250
|
h = w;
|
|
249
|
-
let T =
|
|
251
|
+
let T = Me({
|
|
250
252
|
authManager: g,
|
|
251
253
|
editor: y,
|
|
252
254
|
history: C.history,
|
|
@@ -255,32 +257,32 @@ function Ie(e) {
|
|
|
255
257
|
onError: t.onError
|
|
256
258
|
});
|
|
257
259
|
m = T;
|
|
258
|
-
let E =
|
|
260
|
+
let E = Ne(), D = re(t.ai), A = Fe({
|
|
259
261
|
planConfigInstance: _,
|
|
260
262
|
aiConfig: D,
|
|
261
263
|
editor: y
|
|
262
|
-
}), j =
|
|
264
|
+
}), j = Ie({
|
|
263
265
|
onRequestMedia: t.onRequestMedia,
|
|
264
266
|
mediaLibraryOpen: E.mediaLibraryOpen,
|
|
265
267
|
mediaLibraryAccept: E.mediaLibraryAccept
|
|
266
268
|
});
|
|
267
|
-
|
|
269
|
+
W({
|
|
268
270
|
onBlockMove: y.moveBlock,
|
|
269
271
|
onBlockAdd: y.addBlock
|
|
270
272
|
});
|
|
271
|
-
let
|
|
273
|
+
let M = me({
|
|
272
274
|
authManager: g,
|
|
273
275
|
getFontsConfig: () => t.fonts,
|
|
274
276
|
canUseCustomFonts: () => _.hasFeature("custom_fonts")
|
|
275
|
-
}),
|
|
277
|
+
}), N = ae({
|
|
276
278
|
authManager: g,
|
|
277
279
|
getTemplateId: () => y.state.template?.id ?? null,
|
|
278
280
|
save: () => y.save(),
|
|
279
|
-
exportHtml: (e) =>
|
|
281
|
+
exportHtml: (e) => M.exportHtml(e),
|
|
280
282
|
onError: t.onError,
|
|
281
283
|
isAuthReady: l,
|
|
282
284
|
onBeforeTestEmail: t.onBeforeTestEmail
|
|
283
|
-
}), F =
|
|
285
|
+
}), F = ge({
|
|
284
286
|
authManager: g,
|
|
285
287
|
getTemplateId: () => y.state.template?.id ?? null,
|
|
286
288
|
getSocketId: () => b.getSocketId(),
|
|
@@ -289,55 +291,55 @@ function Ie(e) {
|
|
|
289
291
|
isAuthReady: l,
|
|
290
292
|
hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
|
|
291
293
|
});
|
|
292
|
-
|
|
294
|
+
G({
|
|
293
295
|
comments: F,
|
|
294
296
|
channel: b.channel
|
|
295
297
|
});
|
|
296
|
-
let I =
|
|
298
|
+
let I = le({
|
|
297
299
|
authManager: g,
|
|
298
300
|
onError: t.onError
|
|
299
|
-
}),
|
|
301
|
+
}), L = c(!1), V = c(null), H = c(!1), K = ye({
|
|
300
302
|
authManager: g,
|
|
301
303
|
getTemplateId: () => y.state.template?.id ?? null
|
|
302
304
|
});
|
|
303
|
-
function
|
|
305
|
+
function q(e) {
|
|
304
306
|
E.commentsOpen.value = !0, queueMicrotask(() => {
|
|
305
307
|
o()?.filterByBlock(e);
|
|
306
308
|
});
|
|
307
309
|
}
|
|
308
|
-
a(
|
|
310
|
+
a(B, j.handleRequestMedia), a(te, g), a(R, D), a(U, F), a(O, I), a(oe, K), a(ne, {
|
|
309
311
|
plan: _,
|
|
310
312
|
ai: D,
|
|
311
313
|
comments: {
|
|
312
314
|
getBlockCount: (e) => F.commentCountByBlock.value.get(e) ?? 0,
|
|
313
|
-
openForBlock:
|
|
315
|
+
openForBlock: q
|
|
314
316
|
},
|
|
315
317
|
savedModules: {
|
|
316
318
|
openSaveDialog: (e) => {
|
|
317
|
-
|
|
319
|
+
V.value = e ?? null, L.value = !0;
|
|
318
320
|
},
|
|
319
321
|
openBrowser: () => {
|
|
320
|
-
|
|
322
|
+
H.value = !0;
|
|
321
323
|
},
|
|
322
324
|
moduleCount: f(() => I.modules.value.length)
|
|
323
325
|
}
|
|
324
326
|
});
|
|
325
|
-
function
|
|
327
|
+
function J(e) {
|
|
326
328
|
_.hasFeature("theme_customization") && (C.themeOverrides.value = e);
|
|
327
329
|
}
|
|
328
|
-
function
|
|
330
|
+
function Z(e) {
|
|
329
331
|
y.setUiTheme(e);
|
|
330
332
|
}
|
|
331
|
-
async function
|
|
333
|
+
async function ue() {
|
|
332
334
|
s.value = !0, u.value = null;
|
|
333
335
|
try {
|
|
334
336
|
if (await g.initialize(), d) return;
|
|
335
337
|
l.value = !0;
|
|
336
|
-
let e = await
|
|
338
|
+
let e = await ie({ authManager: g });
|
|
337
339
|
if (d) return;
|
|
338
340
|
if (!e.api.ok) throw Error("Health check failed: API is not reachable");
|
|
339
341
|
if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
|
|
340
|
-
if (e.websocket.ok ||
|
|
342
|
+
if (e.websocket.ok || z.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
|
|
341
343
|
r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), t.modules !== !1 && _.hasFeature("saved_modules") && I.loadModules(), i("ready");
|
|
342
344
|
} catch (e) {
|
|
343
345
|
if (d) return;
|
|
@@ -347,7 +349,7 @@ function Ie(e) {
|
|
|
347
349
|
d || (s.value = !1);
|
|
348
350
|
}
|
|
349
351
|
}
|
|
350
|
-
function
|
|
352
|
+
function de() {
|
|
351
353
|
d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
|
|
352
354
|
}
|
|
353
355
|
return {
|
|
@@ -365,30 +367,30 @@ function Ie(e) {
|
|
|
365
367
|
aiConfig: D,
|
|
366
368
|
featureFlags: A,
|
|
367
369
|
mediaLib: j,
|
|
368
|
-
exporter:
|
|
369
|
-
testEmail:
|
|
370
|
+
exporter: M,
|
|
371
|
+
testEmail: N,
|
|
370
372
|
commentsInstance: F,
|
|
371
373
|
savedModulesHeadless: I,
|
|
372
|
-
scoringInstance:
|
|
374
|
+
scoringInstance: K,
|
|
373
375
|
panelState: E,
|
|
374
376
|
snapshotPreview: T,
|
|
375
377
|
collabWarning: w,
|
|
376
|
-
showSaveModuleDialog:
|
|
377
|
-
showModuleBrowserModal:
|
|
378
|
-
saveModulePreSelectedBlockId:
|
|
378
|
+
showSaveModuleDialog: L,
|
|
379
|
+
showModuleBrowserModal: H,
|
|
380
|
+
saveModulePreSelectedBlockId: V,
|
|
379
381
|
onSaveHook: p,
|
|
380
|
-
initialize:
|
|
381
|
-
destroy:
|
|
382
|
-
setThemeOverrides:
|
|
383
|
-
setUiTheme:
|
|
384
|
-
openCommentsForBlock:
|
|
382
|
+
initialize: ue,
|
|
383
|
+
destroy: de,
|
|
384
|
+
setThemeOverrides: J,
|
|
385
|
+
setUiTheme: Z,
|
|
386
|
+
openCommentsForBlock: q
|
|
385
387
|
};
|
|
386
388
|
}
|
|
387
389
|
//#endregion
|
|
388
390
|
//#region src/utils/preRenderCustomBlocks.ts
|
|
389
|
-
async function
|
|
391
|
+
async function Re(e, t) {
|
|
390
392
|
let n = async (e) => {
|
|
391
|
-
if (
|
|
393
|
+
if (M(e)) {
|
|
392
394
|
let n = e;
|
|
393
395
|
try {
|
|
394
396
|
n.renderedHtml = await t.renderCustomBlock(n);
|
|
@@ -405,10 +407,10 @@ async function Le(e, t) {
|
|
|
405
407
|
}
|
|
406
408
|
//#endregion
|
|
407
409
|
//#region src/cloud/composables/useCloudLifecycle.ts
|
|
408
|
-
function
|
|
410
|
+
function ze(e) {
|
|
409
411
|
let { config: t, editor: n, websocket: r, planConfigInstance: i, snapshotPreview: a, core: o, exporter: s, featureFlags: c, isDestroyed: l } = e;
|
|
410
412
|
function u() {
|
|
411
|
-
return
|
|
413
|
+
return V(i.config.value.websocket);
|
|
412
414
|
}
|
|
413
415
|
async function d(e) {
|
|
414
416
|
let i = await n.create(e);
|
|
@@ -421,7 +423,7 @@ function Re(e) {
|
|
|
421
423
|
async function p() {
|
|
422
424
|
c.isSaveExporting.value = !0, c.saveStatus.value = "idle";
|
|
423
425
|
try {
|
|
424
|
-
if (await
|
|
426
|
+
if (await Re(n.content.value, o.registry), l()) throw Error("Component unmounted during save");
|
|
425
427
|
let e = await n.save();
|
|
426
428
|
if (l()) throw Error("Component unmounted during save");
|
|
427
429
|
a.initSnapshotHistory(), a.snapshotHistoryInstance.value?.loadSnapshots();
|
|
@@ -448,7 +450,7 @@ function Re(e) {
|
|
|
448
450
|
}
|
|
449
451
|
//#endregion
|
|
450
452
|
//#region src/cloud/composables/useCloudSaveGate.ts
|
|
451
|
-
function
|
|
453
|
+
function Be(e) {
|
|
452
454
|
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);
|
|
453
455
|
async function o(e) {
|
|
454
456
|
return a.value ? (n = e, t.value = !0, !1) : (await e(), !0);
|
|
@@ -471,7 +473,7 @@ function ze(e) {
|
|
|
471
473
|
}
|
|
472
474
|
//#endregion
|
|
473
475
|
//#region src/cloud/components/CloudSaveGateModal.vue?vue&type=script&setup=true&lang.ts
|
|
474
|
-
var
|
|
476
|
+
var Ve = ["aria-label"], He = { 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)]" }, Ue = { class: "tpl:flex tpl:items-center tpl:gap-2" }, We = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Ge = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ke = { 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" }, qe = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Je = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Ye = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Xe = /* @__PURE__ */ E({
|
|
475
477
|
__name: "CloudSaveGateModal",
|
|
476
478
|
props: {
|
|
477
479
|
open: { type: Boolean },
|
|
@@ -493,18 +495,18 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
493
495
|
"aria-label": h(r).saveGate.title,
|
|
494
496
|
class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
|
|
495
497
|
onClick: a[2] ||= _((e) => n("cancel"), ["self"])
|
|
496
|
-
}, [x("div",
|
|
497
|
-
x("header",
|
|
498
|
+
}, [x("div", He, [
|
|
499
|
+
x("header", Ue, [D(h(pe), {
|
|
498
500
|
size: 18,
|
|
499
501
|
"stroke-width": 2,
|
|
500
502
|
class: "tpl:text-[var(--tpl-warning)]"
|
|
501
|
-
}), x("h2",
|
|
502
|
-
x("p",
|
|
503
|
-
x("ul",
|
|
503
|
+
}), x("h2", We, d(h(r).saveGate.title), 1)]),
|
|
504
|
+
x("p", Ge, d(h(r).saveGate.body), 1),
|
|
505
|
+
x("ul", Ke, [(i(!0), p(w, null, o(e.issues, (e) => (i(), p("li", {
|
|
504
506
|
key: `${e.ruleId}-${e.blockId ?? "template"}`,
|
|
505
507
|
class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:rounded tpl:px-2 tpl:py-1.5"
|
|
506
|
-
}, [x("span",
|
|
507
|
-
x("footer",
|
|
508
|
+
}, [x("span", qe, d(e.message), 1), x("span", Je, d(e.ruleId), 1)]))), 128))]),
|
|
509
|
+
x("footer", Ye, [x("button", {
|
|
508
510
|
type: "button",
|
|
509
511
|
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)]",
|
|
510
512
|
onClick: a[0] ||= (e) => n("cancel")
|
|
@@ -513,11 +515,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
513
515
|
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",
|
|
514
516
|
onClick: a[1] ||= (e) => n("confirm")
|
|
515
517
|
}, d(h(r).saveGate.confirm), 1)])
|
|
516
|
-
])], 8,
|
|
518
|
+
])], 8, Ve)) : m("", !0)]),
|
|
517
519
|
_: 1
|
|
518
520
|
}));
|
|
519
521
|
}
|
|
520
|
-
}),
|
|
522
|
+
}), Ze = {
|
|
521
523
|
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",
|
|
522
524
|
style: {
|
|
523
525
|
"background-color": "color-mix(in srgb, var(--tpl-bg) 80%, transparent)",
|
|
@@ -526,24 +528,24 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
526
528
|
"box-shadow": "var(--tpl-shadow-md)",
|
|
527
529
|
"border-bottom": "1px solid var(--tpl-border)"
|
|
528
530
|
}
|
|
529
|
-
},
|
|
531
|
+
}, Qe = { class: "tpl-header-left tpl:flex tpl:min-w-[200px] tpl:items-center tpl:gap-3" }, $e = {
|
|
530
532
|
key: 0,
|
|
531
533
|
class: "tpl:text-xs tpl:opacity-60 tpl:text-[var(--tpl-text-muted)]"
|
|
532
|
-
},
|
|
534
|
+
}, et = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, tt = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, nt = ["data-tooltip"], rt = {
|
|
533
535
|
key: 1,
|
|
534
536
|
"aria-live": "polite",
|
|
535
537
|
class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-success)]"
|
|
536
|
-
},
|
|
538
|
+
}, it = {
|
|
537
539
|
key: 2,
|
|
538
540
|
"aria-live": "polite",
|
|
539
541
|
class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
|
|
540
|
-
},
|
|
542
|
+
}, at = ["aria-label", "aria-expanded"], ot = {
|
|
541
543
|
key: 0,
|
|
542
544
|
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)]"
|
|
543
|
-
},
|
|
545
|
+
}, st = ["aria-expanded"], ct = {
|
|
544
546
|
key: 0,
|
|
545
547
|
class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
|
|
546
|
-
},
|
|
548
|
+
}, lt = ["disabled"], ut = ["disabled"], dt = /* @__PURE__ */ E({
|
|
547
549
|
__name: "CloudHeader",
|
|
548
550
|
props: {
|
|
549
551
|
editor: {},
|
|
@@ -561,13 +563,13 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
561
563
|
},
|
|
562
564
|
emits: ["save"],
|
|
563
565
|
setup(e) {
|
|
564
|
-
let t = u(() => import("./CollaboratorBar-
|
|
565
|
-
return (c, l) => (i(), p("header",
|
|
566
|
-
x("div",
|
|
566
|
+
let t = u(() => import("./CollaboratorBar-CKW7jOW4.js")), n = u(() => import("./features-_ar9QbVv.js").then((e) => e.r)), r = u(() => import("./AiFeatureMenu-BeOyHAoZ.js")), { t: a, format: o } = Q();
|
|
567
|
+
return (c, l) => (i(), p("header", Ze, [
|
|
568
|
+
x("div", Qe, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", $e, d(h(o)(h(a).header.templatesUsed, {
|
|
567
569
|
used: e.featureFlags.templateCount.value,
|
|
568
570
|
max: e.featureFlags.templateLimit.value
|
|
569
571
|
})), 1))]),
|
|
570
|
-
x("div",
|
|
572
|
+
x("div", et, [
|
|
571
573
|
D(Se, {
|
|
572
574
|
viewport: e.editor.state.viewport,
|
|
573
575
|
onChange: e.editor.setViewport
|
|
@@ -600,19 +602,19 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
600
602
|
"onNavigate"
|
|
601
603
|
])) : m("", !0)
|
|
602
604
|
]),
|
|
603
|
-
x("div",
|
|
605
|
+
x("div", tt, [
|
|
604
606
|
e.featureFlags.saveStatus.value === "error" ? (i(), p("div", {
|
|
605
607
|
key: 0,
|
|
606
608
|
"aria-live": "assertive",
|
|
607
609
|
class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
|
|
608
610
|
"data-tooltip": e.featureFlags.saveErrorMessage.value
|
|
609
|
-
}, [D(h(
|
|
611
|
+
}, [D(h(N), {
|
|
610
612
|
size: 12,
|
|
611
613
|
"stroke-width": 2.5
|
|
612
|
-
}), T(" " + d(h(a).header.saveFailed), 1)], 8,
|
|
614
|
+
}), T(" " + d(h(a).header.saveFailed), 1)], 8, nt)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", rt, [D(h(A), {
|
|
613
615
|
size: 12,
|
|
614
616
|
"stroke-width": 2.5
|
|
615
|
-
}), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div",
|
|
617
|
+
}), T(" " + d(h(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", it, [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),
|
|
616
618
|
e.commentsInstance.isEnabled.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("button", {
|
|
617
619
|
key: 3,
|
|
618
620
|
"aria-label": e.commentsInstance.unresolvedCount.value > 0 ? `${h(a).comments.button} (${e.commentsInstance.unresolvedCount.value})` : h(a).comments.button,
|
|
@@ -625,13 +627,13 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
625
627
|
}),
|
|
626
628
|
onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
|
|
627
629
|
}, [
|
|
628
|
-
D(h(
|
|
630
|
+
D(h(K), {
|
|
629
631
|
size: 16,
|
|
630
632
|
"stroke-width": 2
|
|
631
633
|
}),
|
|
632
634
|
T(" " + d(h(a).comments.button) + " ", 1),
|
|
633
|
-
e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (i(), p("span",
|
|
634
|
-
], 14,
|
|
635
|
+
e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (i(), p("span", ot, d(e.commentsInstance.unresolvedCount.value), 1)) : m("", !0)
|
|
636
|
+
], 14, at)) : m("", !0),
|
|
635
637
|
e.featureFlags.canUseAiGeneration.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("div", {
|
|
636
638
|
key: 4,
|
|
637
639
|
ref: (t) => e.panelState.aiMenuRef.value = t,
|
|
@@ -640,11 +642,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
640
642
|
"aria-expanded": e.panelState.aiMenuOpen.value,
|
|
641
643
|
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"]),
|
|
642
644
|
onClick: l[1] ||= _((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
|
|
643
|
-
}, [D(h(
|
|
645
|
+
}, [D(h(he), {
|
|
644
646
|
size: 16,
|
|
645
647
|
"stroke-width": 2,
|
|
646
648
|
class: "tpl-ai-btn-icon"
|
|
647
|
-
}), T(" " + d(h(a).aiChat.button), 1)], 10,
|
|
649
|
+
}), T(" " + d(h(a).aiChat.button), 1)], 10, st), D(y, {
|
|
648
650
|
"enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
|
|
649
651
|
"enter-from-class": "tpl:scale-95 tpl:opacity-0",
|
|
650
652
|
"enter-to-class": "tpl:scale-100 tpl:opacity-100",
|
|
@@ -652,7 +654,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
652
654
|
"leave-from-class": "tpl:scale-100 tpl:opacity-100",
|
|
653
655
|
"leave-to-class": "tpl:scale-95 tpl:opacity-0"
|
|
654
656
|
}, {
|
|
655
|
-
default: s(() => [e.panelState.aiMenuOpen.value ? (i(), p("div",
|
|
657
|
+
default: s(() => [e.panelState.aiMenuOpen.value ? (i(), p("div", ct, [D(h(r), {
|
|
656
658
|
"active-feature": e.panelState.activeAiFeature.value,
|
|
657
659
|
onSelect: e.panelState.handleAiFeatureSelect
|
|
658
660
|
}, null, 8, ["active-feature", "onSelect"])])) : m("", !0)]),
|
|
@@ -668,16 +670,16 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
668
670
|
},
|
|
669
671
|
disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
|
|
670
672
|
onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
|
|
671
|
-
}, [e.testEmail.isSending.value ? (i(), v(h(
|
|
673
|
+
}, [e.testEmail.isSending.value ? (i(), v(h(_e), {
|
|
672
674
|
key: 1,
|
|
673
675
|
class: "tpl-spinner",
|
|
674
676
|
size: 16,
|
|
675
677
|
"stroke-width": 2
|
|
676
|
-
})) : (i(), v(h(
|
|
678
|
+
})) : (i(), v(h(ue), {
|
|
677
679
|
key: 0,
|
|
678
680
|
size: 16,
|
|
679
681
|
"stroke-width": 2
|
|
680
|
-
})), T(" " + d(h(a).testEmail.button), 1)], 10,
|
|
682
|
+
})), T(" " + d(h(a).testEmail.button), 1)], 10, lt)) : m("", !0),
|
|
681
683
|
x("button", {
|
|
682
684
|
class: b(h($)),
|
|
683
685
|
style: {
|
|
@@ -687,7 +689,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
687
689
|
},
|
|
688
690
|
disabled: e.isSaveDisabled,
|
|
689
691
|
onClick: l[3] ||= (e) => c.$emit("save")
|
|
690
|
-
}, [e.isSaving ? (i(), v(h(
|
|
692
|
+
}, [e.isSaving ? (i(), v(h(_e), {
|
|
691
693
|
key: 1,
|
|
692
694
|
class: "tpl-spinner",
|
|
693
695
|
size: 16,
|
|
@@ -696,11 +698,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
696
698
|
key: 0,
|
|
697
699
|
size: 16,
|
|
698
700
|
"stroke-width": 2
|
|
699
|
-
})), T(" " + d(e.isSaving ? h(a).header.saving : h(a).header.save), 1)], 10,
|
|
701
|
+
})), T(" " + d(e.isSaving ? h(a).header.saving : h(a).header.save), 1)], 10, ut)
|
|
700
702
|
])
|
|
701
703
|
]));
|
|
702
704
|
}
|
|
703
|
-
}),
|
|
705
|
+
}), ft = /* @__PURE__ */ E({
|
|
704
706
|
__name: "CloudPanels",
|
|
705
707
|
props: {
|
|
706
708
|
config: {},
|
|
@@ -723,9 +725,9 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
723
725
|
"module-insert"
|
|
724
726
|
],
|
|
725
727
|
setup(e, { expose: t, emit: n }) {
|
|
726
|
-
let r = u(() => import("./features-
|
|
728
|
+
let r = u(() => import("./features-_ar9QbVv.js").then((e) => e.o)), a = u(() => import("./features-_ar9QbVv.js").then((e) => e.a)), o = u(() => import("./features-_ar9QbVv.js").then((e) => e.i)), s = u(() => import("./features-_ar9QbVv.js").then((e) => e.n)), l = u(() => import("./features-_ar9QbVv.js").then((e) => e.t)), d = u(() => import("./SaveModuleDialog-Felfmkcj.js")), f = u(() => import("./ModuleBrowserModal-D51w942J.js")), g = u(async () => {
|
|
727
729
|
try {
|
|
728
|
-
return (await import("./src-
|
|
730
|
+
return (await import("./src-DfMSYqvE.js")).MediaLibraryModal;
|
|
729
731
|
} catch {
|
|
730
732
|
throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
|
|
731
733
|
}
|
|
@@ -805,23 +807,23 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
805
807
|
])
|
|
806
808
|
], 64));
|
|
807
809
|
}
|
|
808
|
-
}),
|
|
810
|
+
}), pt = {
|
|
809
811
|
key: 0,
|
|
810
812
|
class: "tpl-loading tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:bg-[var(--tpl-bg)]"
|
|
811
|
-
},
|
|
813
|
+
}, mt = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, ht = { 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)]" }, gt = /* @__PURE__ */ E({
|
|
812
814
|
__name: "CloudLoadingOverlay",
|
|
813
815
|
props: { visible: { type: Boolean } },
|
|
814
816
|
setup(e) {
|
|
815
|
-
return (t, n) => e.visible ? (i(), p("div",
|
|
817
|
+
return (t, n) => e.visible ? (i(), p("div", pt, [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", mt, [x("div", ht, [(i(), p(w, null, o(5, (e) => x("div", {
|
|
816
818
|
key: e,
|
|
817
819
|
class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
|
|
818
820
|
})), 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);
|
|
819
821
|
}
|
|
820
|
-
}),
|
|
822
|
+
}), _t = {
|
|
821
823
|
key: 0,
|
|
822
824
|
role: "alert",
|
|
823
825
|
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)]"
|
|
824
|
-
},
|
|
826
|
+
}, vt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, yt = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, bt = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, xt = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, St = /* @__PURE__ */ E({
|
|
825
827
|
__name: "CloudErrorOverlay",
|
|
826
828
|
props: {
|
|
827
829
|
error: {},
|
|
@@ -836,13 +838,13 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
836
838
|
function o(e) {
|
|
837
839
|
return "isNotFound" in e && !!e.isNotFound;
|
|
838
840
|
}
|
|
839
|
-
return (t, s) => e.visible && e.error ? (i(), p("div",
|
|
840
|
-
x("div",
|
|
841
|
+
return (t, s) => e.visible && e.error ? (i(), p("div", _t, [
|
|
842
|
+
x("div", vt, [D(h(N), {
|
|
841
843
|
size: 32,
|
|
842
844
|
"stroke-width": 1.5,
|
|
843
845
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
844
846
|
})]),
|
|
845
|
-
x("div",
|
|
847
|
+
x("div", yt, [x("h2", bt, d(h(r).error.title), 1), x("p", xt, d(a(e.error)), 1)]),
|
|
846
848
|
o(e.error) ? m("", !0) : (i(), p("button", {
|
|
847
849
|
key: 0,
|
|
848
850
|
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)]",
|
|
@@ -850,20 +852,20 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
850
852
|
}, d(h(r).error.retry), 1))
|
|
851
853
|
])) : m("", !0);
|
|
852
854
|
}
|
|
853
|
-
}),
|
|
855
|
+
}), Ct = {
|
|
854
856
|
key: 0,
|
|
855
857
|
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)]"
|
|
856
|
-
},
|
|
858
|
+
}, wt = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Tt = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Et = /* @__PURE__ */ E({
|
|
857
859
|
__name: "SnapshotPreviewBanner",
|
|
858
860
|
props: { visible: { type: Boolean } },
|
|
859
861
|
emits: ["cancel", "confirm"],
|
|
860
862
|
setup(e, { emit: t }) {
|
|
861
863
|
let n = t, { t: r } = Q();
|
|
862
|
-
return (t, a) => e.visible ? (i(), p("div",
|
|
864
|
+
return (t, a) => e.visible ? (i(), p("div", Ct, [x("div", wt, [D(h(F), {
|
|
863
865
|
size: 18,
|
|
864
866
|
"stroke-width": 2,
|
|
865
867
|
class: "tpl:text-[var(--tpl-primary)]"
|
|
866
|
-
}), x("span", null, d(h(r).snapshotPreview.message), 1)]), x("div",
|
|
868
|
+
}), x("span", null, d(h(r).snapshotPreview.message), 1)]), x("div", Tt, [x("button", {
|
|
867
869
|
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)]",
|
|
868
870
|
style: { "background-color": "transparent" },
|
|
869
871
|
onClick: a[0] ||= (e) => n("cancel")
|
|
@@ -872,7 +874,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
872
874
|
onClick: a[1] ||= (e) => n("confirm")
|
|
873
875
|
}, d(h(r).snapshotPreview.restore), 1)])])) : m("", !0);
|
|
874
876
|
}
|
|
875
|
-
}),
|
|
877
|
+
}), Dt = {
|
|
876
878
|
key: 0,
|
|
877
879
|
role: "status",
|
|
878
880
|
"aria-live": "polite",
|
|
@@ -882,14 +884,14 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
882
884
|
color: "var(--tpl-text)",
|
|
883
885
|
border: "1px solid var(--tpl-warning)"
|
|
884
886
|
}
|
|
885
|
-
},
|
|
887
|
+
}, Ot = /* @__PURE__ */ E({
|
|
886
888
|
__name: "CollabUndoToast",
|
|
887
889
|
props: { visible: { type: Boolean } },
|
|
888
890
|
setup(e) {
|
|
889
|
-
let { t } =
|
|
890
|
-
return (n, r) => e.visible ? (i(), p("div",
|
|
891
|
+
let { t } = I();
|
|
892
|
+
return (n, r) => e.visible ? (i(), p("div", Dt, d(h(t).history.collabWarning), 1)) : m("", !0);
|
|
891
893
|
}
|
|
892
|
-
}),
|
|
894
|
+
}), kt = ["data-tpl-theme"], At = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, jt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Mt = ["aria-label"], Nt = /* @__PURE__ */ de(/* @__PURE__ */ E({
|
|
893
895
|
__name: "CloudEditor",
|
|
894
896
|
props: {
|
|
895
897
|
config: {},
|
|
@@ -901,8 +903,8 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
901
903
|
emits: ["ready"],
|
|
902
904
|
setup(e, { expose: r, emit: o }) {
|
|
903
905
|
let l = e;
|
|
904
|
-
a(
|
|
905
|
-
let u = o, f = c(null), _ = c(null), w =
|
|
906
|
+
a(L, l.cloudTranslations);
|
|
907
|
+
let u = o, f = c(null), _ = c(null), w = Le({
|
|
906
908
|
config: l.config,
|
|
907
909
|
translations: l.translations,
|
|
908
910
|
fontsManager: l.fontsManager,
|
|
@@ -910,30 +912,35 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
910
912
|
getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null,
|
|
911
913
|
editorRoot: l.shadowRoot,
|
|
912
914
|
containerEl: _
|
|
913
|
-
}), { isInitializing: E, isAuthReady: ee, initError: O, planConfigInstance: k, websocket: A, collaboration: j, isCollaborationEnabled: M, editor: N, core: P, featureFlags: F, mediaLib:
|
|
914
|
-
async function
|
|
915
|
+
}), { isInitializing: E, isAuthReady: ee, initError: O, planConfigInstance: k, websocket: A, collaboration: j, isCollaborationEnabled: M, editor: N, core: P, featureFlags: F, mediaLib: I, exporter: R, testEmail: z, commentsInstance: B, savedModulesHeadless: te, panelState: V, snapshotPreview: U, collabWarning: ne, showSaveModuleDialog: W, showModuleBrowserModal: G, saveModulePreSelectedBlockId: K, setThemeOverrides: q, setUiTheme: re } = w;
|
|
916
|
+
async function ie(e) {
|
|
917
|
+
try {
|
|
918
|
+
await z.sendTestEmail(e), V.testEmailModalOpen.value = !1;
|
|
919
|
+
} catch {}
|
|
920
|
+
}
|
|
921
|
+
async function ae() {
|
|
915
922
|
try {
|
|
916
|
-
await
|
|
923
|
+
await U.confirmRestoreSnapshot();
|
|
917
924
|
} catch {}
|
|
918
925
|
}
|
|
919
|
-
function
|
|
926
|
+
function oe(e, t) {
|
|
920
927
|
for (let n = 0; n < e.content.length; n++) {
|
|
921
|
-
let r =
|
|
928
|
+
let r = H(e.content[n]), i = t === void 0 ? void 0 : t + n;
|
|
922
929
|
N.addBlock(r, void 0, void 0, i);
|
|
923
930
|
}
|
|
924
|
-
|
|
931
|
+
G.value = !1;
|
|
925
932
|
}
|
|
926
|
-
let J =
|
|
933
|
+
let J = ze({
|
|
927
934
|
config: l.config,
|
|
928
935
|
editor: N,
|
|
929
936
|
websocket: A,
|
|
930
937
|
planConfigInstance: k,
|
|
931
|
-
snapshotPreview:
|
|
938
|
+
snapshotPreview: U,
|
|
932
939
|
core: P,
|
|
933
|
-
exporter:
|
|
940
|
+
exporter: R,
|
|
934
941
|
featureFlags: F,
|
|
935
942
|
isDestroyed: w.isDestroyed
|
|
936
|
-
}), Y =
|
|
943
|
+
}), Y = Be({
|
|
937
944
|
issues: P.templateLint ? P.templateLint.issues : c([]),
|
|
938
945
|
planConfig: k.config
|
|
939
946
|
});
|
|
@@ -947,12 +954,12 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
947
954
|
}), r({
|
|
948
955
|
getContent: () => N.content.value,
|
|
949
956
|
setContent: (e) => N.setContent(e),
|
|
950
|
-
setTheme:
|
|
951
|
-
setThemeOverrides:
|
|
957
|
+
setTheme: re,
|
|
958
|
+
setThemeOverrides: q,
|
|
952
959
|
create: J.createTemplate,
|
|
953
960
|
load: J.loadTemplate,
|
|
954
961
|
save: J.saveTemplate,
|
|
955
|
-
sendTestEmail:
|
|
962
|
+
sendTestEmail: z.sendTestEmail
|
|
956
963
|
}), (t, r) => (i(), p("div", {
|
|
957
964
|
ref_key: "rootEl",
|
|
958
965
|
ref: _,
|
|
@@ -960,6 +967,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
960
967
|
"data-tpl-theme": h(P).resolvedTheme.value,
|
|
961
968
|
style: C(h(P).themeStyles.value)
|
|
962
969
|
}, [
|
|
970
|
+
D(Ce),
|
|
963
971
|
D(y, {
|
|
964
972
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
965
973
|
"enter-from-class": "tpl:opacity-100",
|
|
@@ -968,7 +976,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
968
976
|
"leave-from-class": "tpl:opacity-100",
|
|
969
977
|
"leave-to-class": "tpl:opacity-0"
|
|
970
978
|
}, {
|
|
971
|
-
default: s(() => [D(
|
|
979
|
+
default: s(() => [D(gt, { visible: h(E) || h(N).state.isLoading }, null, 8, ["visible"])]),
|
|
972
980
|
_: 1
|
|
973
981
|
}),
|
|
974
982
|
D(y, {
|
|
@@ -979,7 +987,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
979
987
|
"leave-from-class": "tpl:opacity-100",
|
|
980
988
|
"leave-to-class": "tpl:opacity-0"
|
|
981
989
|
}, {
|
|
982
|
-
default: s(() => [D(
|
|
990
|
+
default: s(() => [D(St, {
|
|
983
991
|
error: h(O),
|
|
984
992
|
visible: !!h(O) && !h(E),
|
|
985
993
|
onRetry: h(w).initialize
|
|
@@ -990,14 +998,14 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
990
998
|
])]),
|
|
991
999
|
_: 1
|
|
992
1000
|
}),
|
|
993
|
-
D(
|
|
1001
|
+
D(dt, {
|
|
994
1002
|
editor: h(N),
|
|
995
1003
|
core: h(P),
|
|
996
1004
|
"feature-flags": h(F),
|
|
997
|
-
"panel-state": h(
|
|
998
|
-
"snapshot-preview": h(
|
|
999
|
-
"comments-instance": h(
|
|
1000
|
-
"test-email": h(
|
|
1005
|
+
"panel-state": h(V),
|
|
1006
|
+
"snapshot-preview": h(U),
|
|
1007
|
+
"comments-instance": h(B),
|
|
1008
|
+
"test-email": h(z),
|
|
1001
1009
|
websocket: h(A),
|
|
1002
1010
|
collaboration: h(j),
|
|
1003
1011
|
"is-collaboration-enabled": h(M),
|
|
@@ -1018,7 +1026,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1018
1026
|
"is-saving",
|
|
1019
1027
|
"is-save-disabled"
|
|
1020
1028
|
]),
|
|
1021
|
-
D(
|
|
1029
|
+
D(Xe, {
|
|
1022
1030
|
open: h(Y).modalOpen.value,
|
|
1023
1031
|
issues: h(Y).blockingIssues.value,
|
|
1024
1032
|
onCancel: h(Y).cancel,
|
|
@@ -1029,15 +1037,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1029
1037
|
"onCancel",
|
|
1030
1038
|
"onConfirm"
|
|
1031
1039
|
]),
|
|
1032
|
-
D(
|
|
1033
|
-
visible: h(
|
|
1034
|
-
onCancel: h(
|
|
1035
|
-
onConfirm:
|
|
1036
|
-
}, null, 8, [
|
|
1037
|
-
"visible",
|
|
1038
|
-
"onCancel",
|
|
1039
|
-
"onConfirm"
|
|
1040
|
-
]),
|
|
1040
|
+
D(Et, {
|
|
1041
|
+
visible: h(U).isPreviewingSnapshot.value,
|
|
1042
|
+
onCancel: h(U).cancelPreview,
|
|
1043
|
+
onConfirm: ae
|
|
1044
|
+
}, null, 8, ["visible", "onCancel"]),
|
|
1041
1045
|
D(y, {
|
|
1042
1046
|
"enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
|
|
1043
1047
|
"enter-from-class": "tpl:translate-y-[-8px] tpl:opacity-0",
|
|
@@ -1046,17 +1050,17 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1046
1050
|
"leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
1047
1051
|
"leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
|
|
1048
1052
|
}, {
|
|
1049
|
-
default: s(() => [D(
|
|
1053
|
+
default: s(() => [D(Ot, { visible: h(ne).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
|
|
1050
1054
|
_: 1
|
|
1051
1055
|
}),
|
|
1052
1056
|
n(D(ke, null, null, 512), [[S, !h(N).state.previewMode]]),
|
|
1053
1057
|
x("div", {
|
|
1054
|
-
class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(
|
|
1058
|
+
class: b(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", h(U).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
|
|
1055
1059
|
style: {
|
|
1056
1060
|
transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
|
|
1057
1061
|
"background-color": "var(--tpl-canvas-bg)"
|
|
1058
1062
|
}
|
|
1059
|
-
}, [x("div",
|
|
1063
|
+
}, [x("div", At, [D(y, { name: "tpl-restore-btn" }, {
|
|
1060
1064
|
default: s(() => [h(P).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
|
|
1061
1065
|
key: 0,
|
|
1062
1066
|
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",
|
|
@@ -1072,7 +1076,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1072
1076
|
"stroke-width": 2
|
|
1073
1077
|
}), T(" " + d(h(P).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
|
|
1074
1078
|
_: 1
|
|
1075
|
-
})]), x("main",
|
|
1079
|
+
})]), x("main", jt, [D(Te, {
|
|
1076
1080
|
viewport: h(N).state.viewport,
|
|
1077
1081
|
content: h(N).content.value,
|
|
1078
1082
|
"selected-block-id": h(N).state.selectedBlockId,
|
|
@@ -1080,8 +1084,8 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1080
1084
|
"preview-mode": h(N).state.previewMode,
|
|
1081
1085
|
"locked-blocks": h(j)?.lockedBlocks.value ?? void 0,
|
|
1082
1086
|
onSelectBlock: h(N).selectBlock,
|
|
1083
|
-
onOpenAiChat: r[1] ||= (e) => h(
|
|
1084
|
-
onOpenDesignReference: r[2] ||= (e) => h(
|
|
1087
|
+
onOpenAiChat: r[1] ||= (e) => h(V).aiChatOpen.value = !0,
|
|
1088
|
+
onOpenDesignReference: r[2] ||= (e) => h(V).designReferenceOpen.value = !0
|
|
1085
1089
|
}, null, 8, [
|
|
1086
1090
|
"viewport",
|
|
1087
1091
|
"content",
|
|
@@ -1093,7 +1097,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1093
1097
|
])])], 2),
|
|
1094
1098
|
e.config.branding !== !1 && !h(F).isWhiteLabeled.value ? (i(), v(Ee, {
|
|
1095
1099
|
key: 0,
|
|
1096
|
-
"position-class": [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(
|
|
1100
|
+
"position-class": [h(N).state.previewMode ? "tpl:left-0 tpl:right-0" : h(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
|
|
1097
1101
|
}, null, 8, ["position-class"])) : m("", !0),
|
|
1098
1102
|
x("div", {
|
|
1099
1103
|
class: "tpl-sr-only",
|
|
@@ -1101,11 +1105,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1101
1105
|
"aria-live": "polite",
|
|
1102
1106
|
"aria-atomic": "true",
|
|
1103
1107
|
"aria-label": h(P).t.landmarks.reorderAnnouncements
|
|
1104
|
-
}, d(h(P).keyboardReorder.announcement.value), 9,
|
|
1108
|
+
}, d(h(P).keyboardReorder.announcement.value), 9, Mt),
|
|
1105
1109
|
n(D(De, {
|
|
1106
1110
|
"selected-block": h(N).selectedBlock.value,
|
|
1107
1111
|
settings: h(N).content.value.settings,
|
|
1108
|
-
"shifted-left": h(
|
|
1112
|
+
"shifted-left": h(V).rightPanelOpen.value,
|
|
1109
1113
|
onUpdateBlock: r[3] ||= (e) => h(N).updateBlock(h(N).selectedBlock.value.id, e),
|
|
1110
1114
|
onDeleteBlock: r[4] ||= (e) => h(P).blockActions.deleteBlock(h(N).selectedBlock.value.id),
|
|
1111
1115
|
onDuplicateBlock: r[5] ||= (e) => h(P).blockActions.duplicateBlock(h(N).selectedBlock.value),
|
|
@@ -1116,26 +1120,26 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1116
1120
|
"shifted-left",
|
|
1117
1121
|
"onUpdateSettings"
|
|
1118
1122
|
]), [[S, !h(N).state.previewMode]]),
|
|
1119
|
-
!h(E) && h(ee) ? (i(), v(
|
|
1123
|
+
!h(E) && h(ee) ? (i(), v(ft, {
|
|
1120
1124
|
key: 1,
|
|
1121
1125
|
ref_key: "cloudPanelsRef",
|
|
1122
1126
|
ref: f,
|
|
1123
1127
|
config: l.config,
|
|
1124
1128
|
editor: h(N),
|
|
1125
1129
|
core: h(P),
|
|
1126
|
-
"panel-state": h(
|
|
1130
|
+
"panel-state": h(V),
|
|
1127
1131
|
"plan-config-instance": h(k),
|
|
1128
|
-
"test-email": h(
|
|
1129
|
-
"media-lib": h(
|
|
1130
|
-
"saved-modules-headless": h(
|
|
1131
|
-
"show-save-module-dialog": h(
|
|
1132
|
-
"save-module-pre-selected-block-id": h(
|
|
1133
|
-
"show-module-browser-modal": h(
|
|
1134
|
-
"onUpdate:showSaveModuleDialog": r[6] ||= (e) =>
|
|
1135
|
-
"onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) =>
|
|
1136
|
-
"onUpdate:showModuleBrowserModal": r[8] ||= (e) =>
|
|
1137
|
-
onSendTestEmail:
|
|
1138
|
-
onModuleInsert:
|
|
1132
|
+
"test-email": h(z),
|
|
1133
|
+
"media-lib": h(I),
|
|
1134
|
+
"saved-modules-headless": h(te),
|
|
1135
|
+
"show-save-module-dialog": h(W),
|
|
1136
|
+
"save-module-pre-selected-block-id": h(K),
|
|
1137
|
+
"show-module-browser-modal": h(G),
|
|
1138
|
+
"onUpdate:showSaveModuleDialog": r[6] ||= (e) => W.value = e,
|
|
1139
|
+
"onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => K.value = e,
|
|
1140
|
+
"onUpdate:showModuleBrowserModal": r[8] ||= (e) => G.value = e,
|
|
1141
|
+
onSendTestEmail: ie,
|
|
1142
|
+
onModuleInsert: oe
|
|
1139
1143
|
}, null, 8, [
|
|
1140
1144
|
"config",
|
|
1141
1145
|
"editor",
|
|
@@ -1154,10 +1158,10 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1154
1158
|
class: "tpl-popover-root"
|
|
1155
1159
|
}, null, 512),
|
|
1156
1160
|
D(Ae)
|
|
1157
|
-
], 14,
|
|
1161
|
+
], 14, kt));
|
|
1158
1162
|
}
|
|
1159
|
-
}), [["__scopeId", "data-v-
|
|
1163
|
+
}), [["__scopeId", "data-v-3a8bb0e8"]]);
|
|
1160
1164
|
//#endregion
|
|
1161
|
-
export {
|
|
1165
|
+
export { Nt as default };
|
|
1162
1166
|
|
|
1163
|
-
//# sourceMappingURL=CloudEditor-
|
|
1167
|
+
//# sourceMappingURL=CloudEditor-DEA37rdW.js.map
|