@templatical/editor 0.6.4 → 0.6.6
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/{AccessibilityPanel-CvQGLdu6.js → AccessibilityPanel-B2MT0M58.js} +34 -34
- package/dist/{AiChatSidebar-B3SJIKG_.js → AiChatSidebar-w5ek3Z76.js} +62 -62
- package/dist/{AiFeatureMenu-BLLKoOos.js → AiFeatureMenu-ChlAWywJ.js} +20 -20
- package/dist/{BlockA11yBadge-CXDLqkcJ.js → BlockA11yBadge-C0S6kPC4.js} +12 -12
- package/dist/{CloudEditor-nzrRhHIi.js → CloudEditor-DYYaScFe.js} +441 -441
- package/dist/{CollaboratorBar-DuPYW5iF.js → CollaboratorBar-Bo8vtPId.js} +20 -20
- package/dist/CommentsSidebar-BQROg36f.js +441 -0
- package/dist/{cdn/chunks/CountdownBlock-5YdT1uUu.js → CountdownBlock-Bxqe7zwL.js} +21 -22
- package/dist/CountdownToolbar-CpFAnjSo.js +210 -0
- package/dist/{DesignReferenceSidebar-B8V_F2yF.js → DesignReferenceSidebar-CfqpcWX6.js} +52 -52
- package/dist/{LoadingTrack-B0CWFHXQ.js → LoadingTrack-CFkDkjBb.js} +1 -1
- package/dist/{ModuleBrowserModal-DrUFMTDx.js → ModuleBrowserModal-CKhsaPnA.js} +79 -79
- package/dist/{ModulePreviewCanvas-CHdOwV_4.js → ModulePreviewCanvas-Cw9GeGus.js} +29 -29
- package/dist/{NumberWithSuffix-DkXUez9t.js → NumberWithSuffix-Dw8dN1Pt.js} +88 -88
- package/dist/{ParagraphEditor-D75wl3BX.js → ParagraphEditor-DjDiUzmv.js} +218 -218
- package/dist/{RichTextEditorContent-DYkIauIk.js → RichTextEditorContent-CK3Om7ES.js} +38 -38
- package/dist/{SaveModuleDialog-FZ9lxY7_.js → SaveModuleDialog-CSUPmfRP.js} +34 -34
- package/dist/{SnapshotHistory-BR3eV120.js → SnapshotHistory-DwX2fj6N.js} +33 -33
- package/dist/{TemplateScoringPanel-4GTNHej5.js → TemplateScoringPanel-BIAeCAEP.js} +82 -82
- package/dist/{TestEmailModal--ue5w9fT.js → TestEmailModal-CIlBvWWn.js} +30 -30
- package/dist/{TitleEditor-fStSADI-.js → TitleEditor-BCV5k6wj.js} +67 -67
- package/dist/{TplModal-BwSfxIHf.js → TplModal-C3Hq9b58.js} +14 -14
- package/dist/{accessibility-e8JYu_zd.js → accessibility-BgUEA-Ai.js} +1 -1
- package/dist/{blockTypeIcons-BcTrDjmH.js → blockTypeIcons-iUurP50H.js} +2 -2
- package/dist/bundle-stats.json +6 -6
- package/dist/cdn/chunks/{AccessibilityPanel-B6DOjojm.js → AccessibilityPanel-AQD2ygU6.js} +34 -34
- package/dist/cdn/chunks/{AccessibilityPanel-B6DOjojm.js.map → AccessibilityPanel-AQD2ygU6.js.map} +1 -1
- package/dist/cdn/chunks/{AiFeatureMenu-qEdB2fZJ.js → AiFeatureMenu-CDh9ifC8.js} +16 -16
- package/dist/cdn/chunks/{AiFeatureMenu-qEdB2fZJ.js.map → AiFeatureMenu-CDh9ifC8.js.map} +1 -1
- package/dist/cdn/chunks/{BlockA11yBadge-DcEZftf6.js → BlockA11yBadge-BxZr3s7T.js} +10 -10
- package/dist/cdn/chunks/{BlockA11yBadge-DcEZftf6.js.map → BlockA11yBadge-BxZr3s7T.js.map} +1 -1
- package/dist/cdn/chunks/{CloudEditor-dwzWDF_n.js → CloudEditor-Fg7pQ9IQ.js} +425 -425
- package/dist/cdn/chunks/{CloudEditor-dwzWDF_n.js.map → CloudEditor-Fg7pQ9IQ.js.map} +1 -1
- package/dist/cdn/chunks/{CollaboratorBar--nO7TX6b.js → CollaboratorBar-B5a8eBXN.js} +20 -20
- package/dist/cdn/chunks/{CollaboratorBar--nO7TX6b.js.map → CollaboratorBar-B5a8eBXN.js.map} +1 -1
- package/dist/cdn/chunks/CountdownBlock-BeHkO19t.js +93 -0
- package/dist/cdn/chunks/{CountdownBlock-5YdT1uUu.js.map → CountdownBlock-BeHkO19t.js.map} +1 -1
- package/dist/cdn/chunks/CountdownToolbar-8UfW0jb1.js +212 -0
- package/dist/cdn/chunks/{CountdownToolbar-DXPXrbAA.js.map → CountdownToolbar-8UfW0jb1.js.map} +1 -1
- package/dist/cdn/chunks/{ModuleBrowserModal-DxoPp81s.js → ModuleBrowserModal-BMUyAmmj.js} +43 -43
- package/dist/cdn/chunks/{ModuleBrowserModal-DxoPp81s.js.map → ModuleBrowserModal-BMUyAmmj.js.map} +1 -1
- package/dist/cdn/chunks/{ModulePreviewCanvas-CoLdb4ar.js → ModulePreviewCanvas-CxSc7Pvd.js} +23 -23
- package/dist/cdn/chunks/{ModulePreviewCanvas-CoLdb4ar.js.map → ModulePreviewCanvas-CxSc7Pvd.js.map} +1 -1
- package/dist/cdn/chunks/{NumberWithSuffix-CE3NrZhH.js → NumberWithSuffix-BSOUOUCL.js} +108 -108
- package/dist/cdn/chunks/{NumberWithSuffix-CE3NrZhH.js.map → NumberWithSuffix-BSOUOUCL.js.map} +1 -1
- package/dist/cdn/chunks/{ParagraphEditor-B6Ygu-Mq.js → ParagraphEditor-S1bpgxe5.js} +187 -187
- package/dist/cdn/chunks/{ParagraphEditor-B6Ygu-Mq.js.map → ParagraphEditor-S1bpgxe5.js.map} +1 -1
- package/dist/cdn/chunks/{RichTextEditorContent-DL_y2SrR.js → RichTextEditorContent-ByehRfEA.js} +33 -33
- package/dist/cdn/chunks/{RichTextEditorContent-DL_y2SrR.js.map → RichTextEditorContent-ByehRfEA.js.map} +1 -1
- package/dist/cdn/chunks/{SaveModuleDialog-B0TnO_o9.js → SaveModuleDialog-5CNMvgYL.js} +27 -27
- package/dist/cdn/chunks/{SaveModuleDialog-B0TnO_o9.js.map → SaveModuleDialog-5CNMvgYL.js.map} +1 -1
- package/dist/cdn/chunks/{TitleEditor-BHpfxvwy.js → TitleEditor-BASWPsCM.js} +66 -66
- package/dist/cdn/chunks/{TitleEditor-BHpfxvwy.js.map → TitleEditor-BASWPsCM.js.map} +1 -1
- package/dist/cdn/chunks/{blockTypeIcons-BzzY9_kA.js → blockTypeIcons-DfOffaYP.js} +3 -3
- package/dist/cdn/chunks/{blockTypeIcons-BzzY9_kA.js.map → blockTypeIcons-DfOffaYP.js.map} +1 -1
- package/dist/cdn/chunks/draggable-CNhyCGIO.js +4804 -0
- package/dist/cdn/chunks/draggable-CNhyCGIO.js.map +1 -0
- package/dist/cdn/chunks/{extensions-DIxF31tA.js → extensions-BJOV1jre.js} +95 -95
- package/dist/cdn/chunks/{extensions-DIxF31tA.js.map → extensions-BJOV1jre.js.map} +1 -1
- package/dist/cdn/chunks/{features-DEMb13KS.js → features-D6FoOm8v.js} +2272 -2269
- package/dist/cdn/chunks/features-D6FoOm8v.js.map +1 -0
- package/dist/cdn/chunks/{icons-CsLTcirh.js → icons-CpsjWPU-.js} +2 -2
- package/dist/cdn/chunks/{icons-CsLTcirh.js.map → icons-CpsjWPU-.js.map} +1 -1
- package/dist/cdn/chunks/{media-library-CVaNvhpM.js → media-library-CEd7Lqxk.js} +1397 -1397
- package/dist/cdn/chunks/{media-library-CVaNvhpM.js.map → media-library-CEd7Lqxk.js.map} +1 -1
- package/dist/cdn/chunks/{pusher-CDbNlZBE.js → pusher-bjpcqCZG.js} +2 -2
- package/dist/cdn/chunks/{pusher-CDbNlZBE.js.map → pusher-bjpcqCZG.js.map} +1 -1
- package/dist/cdn/chunks/{quality-BaBfc54_.js → quality-Bx1oORXQ.js} +3 -3
- package/dist/cdn/chunks/{quality-BaBfc54_.js.map → quality-Bx1oORXQ.js.map} +1 -1
- package/dist/cdn/chunks/{renderer-CUxvx7ro.js → renderer-CwxCisa-.js} +3 -3
- package/dist/cdn/chunks/{renderer-CUxvx7ro.js.map → renderer-CwxCisa-.js.map} +1 -1
- package/dist/{rolldown-runtime-BZGGJVDF.js → cdn/chunks/rolldown-runtime-C266TIVP.js} +5 -5
- package/dist/cdn/chunks/{src-CRaqN-p8.js → src-DDSInEkE.js} +171 -171
- package/dist/cdn/chunks/{src-CRaqN-p8.js.map → src-DDSInEkE.js.map} +1 -1
- package/dist/cdn/chunks/styles-B1uu-Cc9.js +2944 -0
- package/dist/cdn/chunks/styles-B1uu-Cc9.js.map +1 -0
- package/dist/cdn/chunks/{tiptap-ZhwKyFp7.js → tiptap-IyIsncxY.js} +45 -46
- package/dist/cdn/chunks/{tiptap-ZhwKyFp7.js.map → tiptap-IyIsncxY.js.map} +1 -1
- package/dist/cdn/editor.css +1 -1
- package/dist/cdn/editor.js +122 -122
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{check-Da05j8yl.js → check-Bg5yrRmX.js} +1 -1
- package/dist/{chevron-down-R2uY34iD.js → chevron-down-tee-ghFi.js} +1 -1
- package/dist/{circle-alert-DZuGWPX-.js → circle-alert-C0L9pUQ4.js} +1 -1
- package/dist/{clock-CRp2sIub.js → clock-CDlEdqiP.js} +1 -1
- package/dist/{cloud-DEk_b4CR.js → cloud-a3VovHva.js} +145 -145
- package/dist/{createLucideIcon-C3pa2siy.js → createLucideIcon-Di4mqmGn.js} +9 -9
- package/dist/{dist-B1IR0bpH.js → dist-BzRLLpfq.js} +107 -107
- package/dist/{dist-BFawx6IS.js → dist-Pk4MhWMP.js} +35 -35
- package/dist/{extensions-CUcl9Ok4.js → extensions-BF39Siqk.js} +103 -103
- package/dist/{image-up-MBZKKg9p.js → image-up-1D_3XDdO.js} +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/{info-CJEC7piy.js → info-DTGrc0Bx.js} +1 -1
- package/dist/{keys-ciNfSSGj.js → keys-Bqs_0du9.js} +1 -1
- package/dist/{loader-circle-DsY5Yg33.js → loader-circle-_9bP23op.js} +1 -1
- package/dist/{message-circle-yElBbR2C.js → message-circle-gzy2ZGJ3.js} +1 -1
- package/dist/{refresh-cw-CE_AGtn8.js → refresh-cw-BNAhAmtL.js} +1 -1
- package/dist/rolldown-runtime-CAFD8bLK.js +11 -0
- package/dist/{scan-line-D0vcUekt.js → scan-line-DUEg6DoT.js} +1 -1
- package/dist/{send-DH4oDQqC.js → send-BatIZC9a.js} +1 -1
- package/dist/{shield-check-CfJgs2Hd.js → shield-check-C5Gv2cM1.js} +1 -1
- package/dist/{sparkles-CvRXGqFs.js → sparkles-D1IGi_cC.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/styles-BgmKdc2x.js +3173 -0
- package/dist/templatical-editor.js +99 -99
- package/dist/{text-align-start-BT9VUDxK.js → text-align-start-DG3aAH7Y.js} +1 -1
- package/dist/{trash-2-DbP2Y6t2.js → trash-2-424iqbpN.js} +1 -1
- package/dist/{triangle-alert-aOXceTSe.js → triangle-alert-DWQySIE2.js} +1 -1
- package/dist/{useCloudI18n-BuIwR6OE.js → useCloudI18n-CL_AwWwi.js} +4 -4
- package/dist/useEditorCore-CnXrv71D.js +3794 -0
- package/dist/{useI18n-lb2DHDiu.js → useI18n-CgmQftNf.js} +4 -4
- package/dist/{useMergeTag-CBwKnnNB.js → useMergeTag-vpwrZ9eQ.js} +3 -3
- package/dist/vue.runtime.esm-bundler-Bxqkjqhc.js +4300 -0
- package/dist/{x-u2oVmjN_.js → x-Dlaenqta.js} +1 -1
- package/package.json +8 -8
- package/dist/CommentsSidebar-B1pvJdqF.js +0 -441
- package/dist/CountdownBlock-BNSj1jvJ.js +0 -92
- package/dist/CountdownToolbar-ClJr2GzL.js +0 -210
- package/dist/cdn/chunks/CountdownToolbar-DXPXrbAA.js +0 -212
- package/dist/cdn/chunks/draggable-Bcb86AsV.js +0 -11572
- package/dist/cdn/chunks/draggable-Bcb86AsV.js.map +0 -1
- package/dist/cdn/chunks/features-DEMb13KS.js.map +0 -1
- package/dist/cdn/chunks/rolldown-runtime-BNuo_Jkg.js +0 -20
- package/dist/cdn/chunks/styles-BHJULjNR.js +0 -2947
- package/dist/cdn/chunks/styles-BHJULjNR.js.map +0 -1
- package/dist/styles-DEXEkBvg.js +0 -3176
- package/dist/useEditorCore-C6ost42Q.js +0 -9342
- package/dist/vue.runtime.esm-bundler-DpvJL-nX.js +0 -5775
|
@@ -1,147 +1,147 @@
|
|
|
1
|
-
import { $ as e,
|
|
2
|
-
import { $ as k, Bt as A, C as j, D as M, Fn as N, Ft as P, Ht as F, Lt as ee, Nt as I, Ot as L, S as te, Sn as R, Tt as z, Vt as B, Xt as V, Y as ne, Yt as H, Zt as U, _ as W, _n as G, at as K, b as re, c as ie, ct as q, d as J, dt as Y, f as X, g as ae, gt as Z, h as oe, ht as se, jt as ce, k as le, l as ue, ln as Q, m as de, p as fe, tn as pe, tt as me, u as he, v as ge, wt as _e, x as ve, y as ye } from "./features-
|
|
3
|
-
import { C as be, S as xe } from "./icons-
|
|
4
|
-
import { a as Se, c as Ce, i as we, n as Te, o as Ee, r as De, s as Oe, t as ke } 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, at as u, b as d, f, g as p, h as m, j as h, l as g, m as _, n as v, ot as y, p as b, rt 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-CNhyCGIO.js";
|
|
2
|
+
import { $ as k, Bt as A, C as j, D as M, Fn as N, Ft as P, Ht as F, Lt as ee, Nt as I, Ot as L, S as te, Sn as R, Tt as z, Vt as B, Xt as V, Y as ne, Yt as H, Zt as U, _ as W, _n as G, at as K, b as re, c as ie, ct as q, d as J, dt as Y, f as X, g as ae, gt as Z, h as oe, ht as se, jt as ce, k as le, l as ue, ln as Q, m as de, p as fe, tn as pe, tt as me, u as he, v as ge, wt as _e, x as ve, y as ye } from "./features-D6FoOm8v.js";
|
|
3
|
+
import { C as be, S as xe } from "./icons-CpsjWPU-.js";
|
|
4
|
+
import { a as Se, c as Ce, i as we, n as Te, o as Ee, r as De, s as Oe, t as ke } from "./styles-B1uu-Cc9.js";
|
|
5
5
|
import { d as $ } from "./styleConstants-DP1VOca8.js";
|
|
6
6
|
//#region src/cloud/composables/useSnapshotPreview.ts
|
|
7
7
|
function Ae(t) {
|
|
8
|
-
let { authManager: n, editor:
|
|
9
|
-
|
|
10
|
-
|
|
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
|
+
r(() => {
|
|
10
|
+
m = !0;
|
|
11
11
|
});
|
|
12
|
-
let
|
|
13
|
-
function
|
|
14
|
-
|
|
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
|
+
function y() {
|
|
14
|
+
i.state.template?.id && !u.value && (u.value = fe({
|
|
15
15
|
authManager: n,
|
|
16
|
-
templateId:
|
|
17
|
-
onRestore:
|
|
18
|
-
onError:
|
|
19
|
-
}),
|
|
16
|
+
templateId: i.state.template.id,
|
|
17
|
+
onRestore: b,
|
|
18
|
+
onError: l
|
|
19
|
+
}), u.value.loadSnapshots());
|
|
20
20
|
}
|
|
21
|
-
function
|
|
22
|
-
|
|
21
|
+
function b(e) {
|
|
22
|
+
i.setContent(e.content, !1), a.clear(), o.reset();
|
|
23
23
|
}
|
|
24
|
-
async function
|
|
25
|
-
if (!
|
|
26
|
-
if (
|
|
27
|
-
|
|
24
|
+
async function x(e) {
|
|
25
|
+
if (!m) {
|
|
26
|
+
if (d.value) {
|
|
27
|
+
d.value = e, i.setContent(e.content, !1);
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
i.state.isDirty && i.hasTemplate() && (await i.createSnapshot(), m) || (p.value = structuredClone(i.content.value), s?.pause(), d.value = e, i.setContent(e.content, !1));
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
async function
|
|
34
|
-
if (!(!
|
|
35
|
-
if (await
|
|
33
|
+
async function S() {
|
|
34
|
+
if (!(!d.value || !u.value)) try {
|
|
35
|
+
if (await u.value.restoreSnapshot(d.value.id), m || (await u.value.loadSnapshots(), m)) return;
|
|
36
36
|
} finally {
|
|
37
|
-
|
|
37
|
+
m || (d.value = null, p.value = null, s?.resume());
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
function
|
|
41
|
-
!
|
|
40
|
+
function C() {
|
|
41
|
+
!d.value || !p.value || (i.setContent(p.value, !1), d.value = null, p.value = null, s?.resume());
|
|
42
42
|
}
|
|
43
|
-
async function
|
|
44
|
-
|
|
43
|
+
async function w() {
|
|
44
|
+
m || u.value && await u.value.loadSnapshots();
|
|
45
45
|
}
|
|
46
46
|
return {
|
|
47
|
-
snapshotHistoryInstance:
|
|
48
|
-
previewingSnapshot:
|
|
49
|
-
contentBeforePreview:
|
|
50
|
-
isPreviewingSnapshot:
|
|
51
|
-
snapshotHistorySnapshots:
|
|
52
|
-
snapshotHistoryIsLoading:
|
|
53
|
-
snapshotHistoryIsRestoring:
|
|
54
|
-
initSnapshotHistory:
|
|
55
|
-
handleRestore:
|
|
56
|
-
handleSnapshotNavigate:
|
|
57
|
-
confirmRestoreSnapshot:
|
|
58
|
-
cancelPreview:
|
|
59
|
-
loadSnapshotHistory:
|
|
47
|
+
snapshotHistoryInstance: u,
|
|
48
|
+
previewingSnapshot: d,
|
|
49
|
+
contentBeforePreview: p,
|
|
50
|
+
isPreviewingSnapshot: h,
|
|
51
|
+
snapshotHistorySnapshots: g,
|
|
52
|
+
snapshotHistoryIsLoading: _,
|
|
53
|
+
snapshotHistoryIsRestoring: v,
|
|
54
|
+
initSnapshotHistory: y,
|
|
55
|
+
handleRestore: b,
|
|
56
|
+
handleSnapshotNavigate: x,
|
|
57
|
+
confirmRestoreSnapshot: S,
|
|
58
|
+
cancelPreview: C,
|
|
59
|
+
loadSnapshotHistory: w
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
62
|
//#endregion
|
|
63
63
|
//#region src/cloud/composables/useCloudPanelState.ts
|
|
64
64
|
function je() {
|
|
65
|
-
let
|
|
66
|
-
get: () =>
|
|
67
|
-
set: (
|
|
68
|
-
}),
|
|
69
|
-
get: () =>
|
|
70
|
-
set: (
|
|
71
|
-
}),
|
|
72
|
-
get: () =>
|
|
73
|
-
set: (
|
|
74
|
-
}),
|
|
75
|
-
get: () =>
|
|
76
|
-
set: (
|
|
77
|
-
}),
|
|
78
|
-
let
|
|
79
|
-
return
|
|
80
|
-
}),
|
|
81
|
-
function
|
|
65
|
+
let e = c(null), t = f({
|
|
66
|
+
get: () => e.value === "ai-chat",
|
|
67
|
+
set: (t) => e.value = t ? "ai-chat" : null
|
|
68
|
+
}), n = f({
|
|
69
|
+
get: () => e.value === "scoring",
|
|
70
|
+
set: (t) => e.value = t ? "scoring" : null
|
|
71
|
+
}), r = f({
|
|
72
|
+
get: () => e.value === "design-reference",
|
|
73
|
+
set: (t) => e.value = t ? "design-reference" : null
|
|
74
|
+
}), i = f({
|
|
75
|
+
get: () => e.value === "comments",
|
|
76
|
+
set: (t) => e.value = t ? "comments" : null
|
|
77
|
+
}), a = c(!1), o = c(!1), s = c(void 0), l = c(!1), u = c(null), d = f(() => e.value !== null), p = f(() => {
|
|
78
|
+
let t = e.value;
|
|
79
|
+
return t === "ai-chat" || t === "design-reference" || t === "scoring" ? t : null;
|
|
80
|
+
}), m = f(() => l.value || e.value === "ai-chat" || e.value === "design-reference" || e.value === "scoring");
|
|
81
|
+
function h() {
|
|
82
82
|
l.value = !l.value;
|
|
83
83
|
}
|
|
84
|
-
function
|
|
85
|
-
l.value = !1,
|
|
84
|
+
function g(t) {
|
|
85
|
+
l.value = !1, e.value = e.value === t ? null : t;
|
|
86
86
|
}
|
|
87
87
|
return pe(u, () => {
|
|
88
88
|
l.value = !1;
|
|
89
89
|
}), {
|
|
90
|
-
activePanel:
|
|
91
|
-
aiChatOpen:
|
|
92
|
-
scoringPanelOpen:
|
|
93
|
-
designReferenceOpen:
|
|
94
|
-
commentsOpen:
|
|
95
|
-
testEmailModalOpen:
|
|
96
|
-
mediaLibraryOpen:
|
|
97
|
-
mediaLibraryAccept:
|
|
90
|
+
activePanel: e,
|
|
91
|
+
aiChatOpen: t,
|
|
92
|
+
scoringPanelOpen: n,
|
|
93
|
+
designReferenceOpen: r,
|
|
94
|
+
commentsOpen: i,
|
|
95
|
+
testEmailModalOpen: a,
|
|
96
|
+
mediaLibraryOpen: o,
|
|
97
|
+
mediaLibraryAccept: s,
|
|
98
98
|
aiMenuOpen: l,
|
|
99
99
|
aiMenuRef: u,
|
|
100
100
|
rightPanelOpen: d,
|
|
101
|
-
activeAiFeature:
|
|
102
|
-
aiButtonActive:
|
|
103
|
-
toggleAiMenu:
|
|
104
|
-
handleAiFeatureSelect:
|
|
101
|
+
activeAiFeature: p,
|
|
102
|
+
aiButtonActive: m,
|
|
103
|
+
toggleAiMenu: h,
|
|
104
|
+
handleAiFeatureSelect: g
|
|
105
105
|
};
|
|
106
106
|
}
|
|
107
107
|
//#endregion
|
|
108
108
|
//#region src/cloud/composables/useCollabUndoWarning.ts
|
|
109
|
-
function Me(
|
|
110
|
-
let { isCollaborationEnabled:
|
|
111
|
-
|
|
109
|
+
function Me(e) {
|
|
110
|
+
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = c(!1), a = c(!1), { start: o } = Q(() => {
|
|
111
|
+
a.value = !1;
|
|
112
112
|
}, N, { immediate: !1 });
|
|
113
|
-
function
|
|
114
|
-
|
|
113
|
+
function s() {
|
|
114
|
+
i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0, o());
|
|
115
115
|
}
|
|
116
116
|
return {
|
|
117
|
-
collabUndoWarningVisible:
|
|
118
|
-
showCollabUndoWarning:
|
|
117
|
+
collabUndoWarningVisible: a,
|
|
118
|
+
showCollabUndoWarning: s
|
|
119
119
|
};
|
|
120
120
|
}
|
|
121
121
|
//#endregion
|
|
122
122
|
//#region src/cloud/composables/useCloudFeatureFlags.ts
|
|
123
|
-
function Ne(
|
|
124
|
-
let { planConfigInstance:
|
|
125
|
-
|
|
123
|
+
function Ne(e) {
|
|
124
|
+
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 } = Q(() => {
|
|
125
|
+
p.value = "idle";
|
|
126
126
|
}, 3e3, { immediate: !1 });
|
|
127
127
|
return {
|
|
128
|
-
canUseAiGeneration:
|
|
129
|
-
canSendTestEmail:
|
|
130
|
-
hasTemplateSaved:
|
|
131
|
-
isWhiteLabeled:
|
|
128
|
+
canUseAiGeneration: i,
|
|
129
|
+
canSendTestEmail: a,
|
|
130
|
+
hasTemplateSaved: o,
|
|
131
|
+
isWhiteLabeled: s,
|
|
132
132
|
templateLimit: l,
|
|
133
133
|
templateCount: u,
|
|
134
134
|
isSaveExporting: d,
|
|
135
|
-
saveStatus:
|
|
136
|
-
saveErrorMessage:
|
|
137
|
-
startSaveStatusClear:
|
|
135
|
+
saveStatus: p,
|
|
136
|
+
saveErrorMessage: m,
|
|
137
|
+
startSaveStatusClear: h
|
|
138
138
|
};
|
|
139
139
|
}
|
|
140
140
|
//#endregion
|
|
141
141
|
//#region src/cloud/composables/useCloudMediaLibrary.ts
|
|
142
142
|
function Pe(e) {
|
|
143
|
-
let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept:
|
|
144
|
-
async function
|
|
143
|
+
let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: i } = e, a = null;
|
|
144
|
+
async function o() {
|
|
145
145
|
if (t) {
|
|
146
146
|
let e = await t({ accept: ["images"] });
|
|
147
147
|
return e ? {
|
|
@@ -149,118 +149,118 @@ function Pe(e) {
|
|
|
149
149
|
alt: e.alt_text || void 0
|
|
150
150
|
} : null;
|
|
151
151
|
}
|
|
152
|
-
return
|
|
153
|
-
|
|
152
|
+
return a &&= (a(null), null), i.value = ["images"], n.value = !0, new Promise((e) => {
|
|
153
|
+
a = (t) => {
|
|
154
154
|
e(t);
|
|
155
155
|
};
|
|
156
156
|
});
|
|
157
157
|
}
|
|
158
|
-
function
|
|
159
|
-
n.value = !1,
|
|
158
|
+
function s(e) {
|
|
159
|
+
n.value = !1, a?.({
|
|
160
160
|
url: e.url,
|
|
161
161
|
alt: e.alt_text || void 0
|
|
162
|
-
}),
|
|
162
|
+
}), a = null;
|
|
163
163
|
}
|
|
164
|
-
function
|
|
165
|
-
n.value = !1,
|
|
164
|
+
function c() {
|
|
165
|
+
n.value = !1, a?.(null), a = null;
|
|
166
166
|
}
|
|
167
|
-
return
|
|
168
|
-
|
|
167
|
+
return r(() => {
|
|
168
|
+
a &&= (a(null), null);
|
|
169
169
|
}), {
|
|
170
|
-
handleRequestMedia:
|
|
171
|
-
handleMediaSelect:
|
|
172
|
-
handleMediaLibraryClose:
|
|
170
|
+
handleRequestMedia: o,
|
|
171
|
+
handleMediaSelect: s,
|
|
172
|
+
handleMediaLibraryClose: c
|
|
173
173
|
};
|
|
174
174
|
}
|
|
175
175
|
//#endregion
|
|
176
176
|
//#region src/cloud/composables/useCloudInitialization.ts
|
|
177
|
-
function Fe(
|
|
178
|
-
let { config:
|
|
179
|
-
...
|
|
180
|
-
onError:
|
|
177
|
+
function Fe(e) {
|
|
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 M({
|
|
179
|
+
...t.auth,
|
|
180
|
+
onError: t.onError
|
|
181
181
|
}), _ = he({
|
|
182
182
|
authManager: g,
|
|
183
|
-
onError:
|
|
184
|
-
}), v =
|
|
183
|
+
onError: t.onError
|
|
184
|
+
}), v = c(/* @__PURE__ */ new Map()), y = te({
|
|
185
185
|
authManager: g,
|
|
186
|
-
defaultFontFamily:
|
|
187
|
-
templateDefaults:
|
|
188
|
-
onError:
|
|
186
|
+
defaultFontFamily: t.fonts?.defaultFont,
|
|
187
|
+
templateDefaults: t.templateDefaults,
|
|
188
|
+
onError: t.onError,
|
|
189
189
|
lockedBlocks: v
|
|
190
190
|
}), b = oe({
|
|
191
191
|
authManager: g,
|
|
192
|
-
onError:
|
|
192
|
+
onError: t.onError
|
|
193
193
|
});
|
|
194
|
-
|
|
194
|
+
t.mcp?.enabled && ie({
|
|
195
195
|
editor: y,
|
|
196
196
|
channel: b.channel,
|
|
197
|
-
onOperation:
|
|
197
|
+
onOperation: t.mcp.onOperation
|
|
198
198
|
});
|
|
199
199
|
let x = null;
|
|
200
|
-
|
|
200
|
+
t.collaboration?.enabled && (x = W({
|
|
201
201
|
authManager: g,
|
|
202
202
|
editor: y,
|
|
203
203
|
channel: b.channel,
|
|
204
|
-
onError:
|
|
205
|
-
onCollaboratorJoined:
|
|
206
|
-
onCollaboratorLeft:
|
|
207
|
-
onBlockLocked:
|
|
208
|
-
onBlockUnlocked:
|
|
209
|
-
}),
|
|
204
|
+
onError: t.onError,
|
|
205
|
+
onCollaboratorJoined: t.collaboration.onCollaboratorJoined,
|
|
206
|
+
onCollaboratorLeft: t.collaboration.onCollaboratorLeft,
|
|
207
|
+
onBlockLocked: t.collaboration.onBlockLocked,
|
|
208
|
+
onBlockUnlocked: t.collaboration.onBlockUnlocked
|
|
209
|
+
}), O(() => x.lockedBlocks.value, (e) => {
|
|
210
210
|
v.value = e;
|
|
211
211
|
}, { immediate: !0 }), ae(y, x));
|
|
212
|
-
let
|
|
212
|
+
let S = f(() => !!t.collaboration?.enabled && _.hasFeature("collaboration")), C = le({
|
|
213
213
|
editor: y,
|
|
214
214
|
config: {
|
|
215
|
-
uiTheme:
|
|
215
|
+
uiTheme: t.uiTheme,
|
|
216
216
|
theme: void 0,
|
|
217
|
-
blockDefaults:
|
|
217
|
+
blockDefaults: t.blockDefaults,
|
|
218
218
|
customBlocks: [],
|
|
219
|
-
mergeTags:
|
|
220
|
-
displayConditions:
|
|
219
|
+
mergeTags: t.mergeTags,
|
|
220
|
+
displayConditions: t.displayConditions,
|
|
221
221
|
onRequestMedia: null,
|
|
222
|
-
accessibility: Ce(
|
|
222
|
+
accessibility: Ce(t),
|
|
223
223
|
onSave: () => {
|
|
224
224
|
p.value?.().catch((e) => {
|
|
225
|
-
|
|
225
|
+
t.onError?.(e);
|
|
226
226
|
});
|
|
227
227
|
}
|
|
228
228
|
},
|
|
229
|
-
translations:
|
|
230
|
-
fontsManager:
|
|
229
|
+
translations: n,
|
|
230
|
+
fontsManager: r,
|
|
231
231
|
historyOptions: x ? { isRemoteOperation: () => x._isProcessingRemoteOperation() } : void 0,
|
|
232
232
|
autoSaveOptions: {
|
|
233
233
|
onChange: async () => {
|
|
234
234
|
y.hasTemplate() && (await y.createSnapshot(), m?.snapshotHistoryInstance.value?.loadSnapshots());
|
|
235
235
|
},
|
|
236
|
-
debounce:
|
|
237
|
-
enabled: () =>
|
|
236
|
+
debounce: t.autoSaveDebounce ?? 5e3,
|
|
237
|
+
enabled: () => t.autoSave !== !1 && _.hasFeature("auto_save")
|
|
238
238
|
},
|
|
239
|
-
themeExtraStyles: () => ({ "--tpl-drop-text": `"${
|
|
239
|
+
themeExtraStyles: () => ({ "--tpl-drop-text": `"${n.canvas.dropHere}"` }),
|
|
240
240
|
keyboardOptions: { onBeforeUndo: () => h?.showCollabUndoWarning() }
|
|
241
|
-
}),
|
|
242
|
-
isCollaborationEnabled:
|
|
241
|
+
}), w = Me({
|
|
242
|
+
isCollaborationEnabled: S,
|
|
243
243
|
getCollaboratorCount: () => x?.collaborators.value.length ?? 0,
|
|
244
|
-
canUndo:
|
|
244
|
+
canUndo: C.history.canUndo
|
|
245
245
|
});
|
|
246
|
-
h =
|
|
247
|
-
let
|
|
246
|
+
h = w;
|
|
247
|
+
let T = Ae({
|
|
248
248
|
authManager: g,
|
|
249
249
|
editor: y,
|
|
250
|
-
history:
|
|
251
|
-
conditionPreview:
|
|
252
|
-
autoSave:
|
|
253
|
-
onError:
|
|
250
|
+
history: C.history,
|
|
251
|
+
conditionPreview: C.conditionPreview,
|
|
252
|
+
autoSave: C.autoSave,
|
|
253
|
+
onError: t.onError
|
|
254
254
|
});
|
|
255
|
-
m =
|
|
256
|
-
let
|
|
255
|
+
m = T;
|
|
256
|
+
let E = je(), D = ve(t.ai), k = Ne({
|
|
257
257
|
planConfigInstance: _,
|
|
258
|
-
aiConfig:
|
|
258
|
+
aiConfig: D,
|
|
259
259
|
editor: y
|
|
260
260
|
}), j = Pe({
|
|
261
|
-
onRequestMedia:
|
|
262
|
-
mediaLibraryOpen:
|
|
263
|
-
mediaLibraryAccept:
|
|
261
|
+
onRequestMedia: t.onRequestMedia,
|
|
262
|
+
mediaLibraryOpen: E.mediaLibraryOpen,
|
|
263
|
+
mediaLibraryAccept: E.mediaLibraryAccept
|
|
264
264
|
});
|
|
265
265
|
ne({
|
|
266
266
|
onBlockMove: y.moveBlock,
|
|
@@ -268,24 +268,24 @@ function Fe(n) {
|
|
|
268
268
|
});
|
|
269
269
|
let N = J({
|
|
270
270
|
authManager: g,
|
|
271
|
-
getFontsConfig: () =>
|
|
271
|
+
getFontsConfig: () => t.fonts,
|
|
272
272
|
canUseCustomFonts: () => _.hasFeature("custom_fonts")
|
|
273
273
|
}), I = X({
|
|
274
274
|
authManager: g,
|
|
275
275
|
getTemplateId: () => y.state.template?.id ?? null,
|
|
276
276
|
save: () => y.save(),
|
|
277
277
|
exportHtml: (e) => N.exportHtml(e),
|
|
278
|
-
onError:
|
|
279
|
-
isAuthReady:
|
|
280
|
-
onBeforeTestEmail:
|
|
278
|
+
onError: t.onError,
|
|
279
|
+
isAuthReady: l,
|
|
280
|
+
onBeforeTestEmail: t.onBeforeTestEmail
|
|
281
281
|
}), L = ye({
|
|
282
282
|
authManager: g,
|
|
283
283
|
getTemplateId: () => y.state.template?.id ?? null,
|
|
284
284
|
getSocketId: () => b.getSocketId(),
|
|
285
|
-
onComment:
|
|
286
|
-
onError:
|
|
287
|
-
isAuthReady:
|
|
288
|
-
hasCommentingFeature: () =>
|
|
285
|
+
onComment: t.onComment,
|
|
286
|
+
onError: t.onError,
|
|
287
|
+
isAuthReady: l,
|
|
288
|
+
hasCommentingFeature: () => t.commenting !== !1 && _.hasFeature("commenting")
|
|
289
289
|
});
|
|
290
290
|
ge({
|
|
291
291
|
comments: L,
|
|
@@ -293,19 +293,19 @@ function Fe(n) {
|
|
|
293
293
|
});
|
|
294
294
|
let R = de({
|
|
295
295
|
authManager: g,
|
|
296
|
-
onError:
|
|
297
|
-
}), z =
|
|
296
|
+
onError: t.onError
|
|
297
|
+
}), z = c(!1), B = c(null), G = c(!1), K = re({
|
|
298
298
|
authManager: g,
|
|
299
299
|
getTemplateId: () => y.state.template?.id ?? null
|
|
300
300
|
});
|
|
301
301
|
function q(e) {
|
|
302
|
-
|
|
303
|
-
|
|
302
|
+
E.commentsOpen.value = !0, queueMicrotask(() => {
|
|
303
|
+
o()?.filterByBlock(e);
|
|
304
304
|
});
|
|
305
305
|
}
|
|
306
|
-
|
|
306
|
+
a(H, j.handleRequestMedia), a(ee, g), a(P, D), a(F, L), a(V, R), a(U, K), a(A, {
|
|
307
307
|
plan: _,
|
|
308
|
-
ai:
|
|
308
|
+
ai: D,
|
|
309
309
|
comments: {
|
|
310
310
|
getBlockCount: (e) => L.commentCountByBlock.value.get(e) ?? 0,
|
|
311
311
|
openForBlock: q
|
|
@@ -317,50 +317,50 @@ function Fe(n) {
|
|
|
317
317
|
openBrowser: () => {
|
|
318
318
|
G.value = !0;
|
|
319
319
|
},
|
|
320
|
-
moduleCount:
|
|
320
|
+
moduleCount: f(() => R.modules.value.length)
|
|
321
321
|
}
|
|
322
322
|
});
|
|
323
323
|
function Y(e) {
|
|
324
|
-
_.hasFeature("theme_customization") && (
|
|
324
|
+
_.hasFeature("theme_customization") && (C.themeOverrides.value = e);
|
|
325
325
|
}
|
|
326
326
|
function Z(e) {
|
|
327
327
|
y.setUiTheme(e);
|
|
328
328
|
}
|
|
329
329
|
async function se() {
|
|
330
|
-
|
|
330
|
+
s.value = !0, u.value = null;
|
|
331
331
|
try {
|
|
332
|
-
if (await g.initialize(),
|
|
333
|
-
|
|
332
|
+
if (await g.initialize(), d) return;
|
|
333
|
+
l.value = !0;
|
|
334
334
|
let e = await ue({ authManager: g });
|
|
335
|
-
if (
|
|
335
|
+
if (d) return;
|
|
336
336
|
if (!e.api.ok) throw Error("Health check failed: API is not reachable");
|
|
337
337
|
if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
|
|
338
|
-
if (e.websocket.ok || ce.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(),
|
|
339
|
-
|
|
338
|
+
if (e.websocket.ok || ce.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await _.fetchConfig(), d) return;
|
|
339
|
+
r.setCustomFontsEnabled(_.hasFeature("custom_fonts")), t.customBlocks?.length && _.hasFeature("custom_blocks") && C.registerCustomBlocks(t.customBlocks), t.theme && _.hasFeature("theme_customization") && (C.themeOverrides.value = t.theme), t.modules !== !1 && _.hasFeature("saved_modules") && R.loadModules(), i("ready");
|
|
340
340
|
} catch (e) {
|
|
341
|
-
if (
|
|
342
|
-
let
|
|
343
|
-
|
|
341
|
+
if (d) return;
|
|
342
|
+
let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
|
|
343
|
+
u.value = n, t.onError?.(n);
|
|
344
344
|
} finally {
|
|
345
|
-
|
|
345
|
+
d || (s.value = !1);
|
|
346
346
|
}
|
|
347
347
|
}
|
|
348
348
|
function Q() {
|
|
349
|
-
|
|
349
|
+
d = !0, r.cleanupFontLinks(), b.disconnect(), C.destroy(), t.onUnmount?.();
|
|
350
350
|
}
|
|
351
351
|
return {
|
|
352
|
-
isInitializing:
|
|
353
|
-
isAuthReady:
|
|
354
|
-
initError:
|
|
355
|
-
isDestroyed: () =>
|
|
352
|
+
isInitializing: s,
|
|
353
|
+
isAuthReady: l,
|
|
354
|
+
initError: u,
|
|
355
|
+
isDestroyed: () => d,
|
|
356
356
|
authManager: g,
|
|
357
357
|
planConfigInstance: _,
|
|
358
358
|
websocket: b,
|
|
359
359
|
collaboration: x,
|
|
360
|
-
isCollaborationEnabled:
|
|
360
|
+
isCollaborationEnabled: S,
|
|
361
361
|
editor: y,
|
|
362
|
-
core:
|
|
363
|
-
aiConfig:
|
|
362
|
+
core: C,
|
|
363
|
+
aiConfig: D,
|
|
364
364
|
featureFlags: k,
|
|
365
365
|
mediaLib: j,
|
|
366
366
|
exporter: N,
|
|
@@ -368,9 +368,9 @@ function Fe(n) {
|
|
|
368
368
|
commentsInstance: L,
|
|
369
369
|
savedModulesHeadless: R,
|
|
370
370
|
scoringInstance: K,
|
|
371
|
-
panelState:
|
|
372
|
-
snapshotPreview:
|
|
373
|
-
collabWarning:
|
|
371
|
+
panelState: E,
|
|
372
|
+
snapshotPreview: T,
|
|
373
|
+
collabWarning: w,
|
|
374
374
|
showSaveModuleDialog: z,
|
|
375
375
|
showModuleBrowserModal: G,
|
|
376
376
|
saveModulePreSelectedBlockId: B,
|
|
@@ -446,30 +446,30 @@ function Le(e) {
|
|
|
446
446
|
}
|
|
447
447
|
//#endregion
|
|
448
448
|
//#region src/cloud/composables/useCloudSaveGate.ts
|
|
449
|
-
function Re(
|
|
450
|
-
let
|
|
451
|
-
async function
|
|
452
|
-
return
|
|
449
|
+
function Re(e) {
|
|
450
|
+
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);
|
|
451
|
+
async function o(e) {
|
|
452
|
+
return a.value ? (n = e, t.value = !0, !1) : (await e(), !0);
|
|
453
453
|
}
|
|
454
|
-
async function
|
|
455
|
-
let e =
|
|
456
|
-
|
|
454
|
+
async function s() {
|
|
455
|
+
let e = n;
|
|
456
|
+
n = null, t.value = !1, e && await e();
|
|
457
457
|
}
|
|
458
458
|
function l() {
|
|
459
|
-
|
|
459
|
+
n = null, t.value = !1;
|
|
460
460
|
}
|
|
461
461
|
return {
|
|
462
|
-
shouldBlock:
|
|
463
|
-
blockingIssues:
|
|
464
|
-
modalOpen:
|
|
465
|
-
tryRunSave:
|
|
466
|
-
confirmAndSave:
|
|
462
|
+
shouldBlock: a,
|
|
463
|
+
blockingIssues: i,
|
|
464
|
+
modalOpen: t,
|
|
465
|
+
tryRunSave: o,
|
|
466
|
+
confirmAndSave: s,
|
|
467
467
|
cancel: l
|
|
468
468
|
};
|
|
469
469
|
}
|
|
470
470
|
//#endregion
|
|
471
471
|
//#region src/cloud/components/CloudSaveGateModal.vue?vue&type=script&setup=true&lang.ts
|
|
472
|
-
var ze = ["aria-label"], Be = { 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)]" }, Ve = { class: "tpl:flex tpl:items-center tpl:gap-2" }, He = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Ue = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, We = { 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" }, Ge = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Ke = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, qe = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Je = /* @__PURE__ */
|
|
472
|
+
var ze = ["aria-label"], Be = { 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)]" }, Ve = { class: "tpl:flex tpl:items-center tpl:gap-2" }, He = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Ue = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, We = { 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" }, Ge = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Ke = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, qe = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Je = /* @__PURE__ */ E({
|
|
473
473
|
__name: "CloudSaveGateModal",
|
|
474
474
|
props: {
|
|
475
475
|
open: { type: Boolean },
|
|
@@ -477,41 +477,41 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
477
477
|
},
|
|
478
478
|
emits: ["cancel", "confirm"],
|
|
479
479
|
setup(e, { emit: t }) {
|
|
480
|
-
let
|
|
481
|
-
return (t,
|
|
480
|
+
let n = t, { t: r } = k();
|
|
481
|
+
return (t, a) => (i(), _(v, {
|
|
482
482
|
"enter-active-class": "tpl:transition-opacity tpl:duration-150",
|
|
483
483
|
"leave-active-class": "tpl:transition-opacity tpl:duration-150",
|
|
484
484
|
"enter-from-class": "tpl:opacity-0",
|
|
485
485
|
"leave-to-class": "tpl:opacity-0"
|
|
486
486
|
}, {
|
|
487
|
-
default:
|
|
487
|
+
default: s(() => [e.open ? (i(), p("div", {
|
|
488
488
|
key: 0,
|
|
489
489
|
role: "dialog",
|
|
490
490
|
"aria-modal": "true",
|
|
491
|
-
"aria-label":
|
|
491
|
+
"aria-label": x(r).saveGate.title,
|
|
492
492
|
class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
|
|
493
|
-
onClick:
|
|
493
|
+
onClick: a[2] ||= g((e) => n("cancel"), ["self"])
|
|
494
494
|
}, [b("div", Be, [
|
|
495
|
-
b("header", Ve, [
|
|
495
|
+
b("header", Ve, [D(x(K), {
|
|
496
496
|
size: 18,
|
|
497
497
|
"stroke-width": 2,
|
|
498
498
|
class: "tpl:text-[var(--tpl-warning)]"
|
|
499
|
-
}), b("h2", He,
|
|
500
|
-
b("p", Ue,
|
|
501
|
-
b("ul", We, [(
|
|
499
|
+
}), b("h2", He, C(x(r).saveGate.title), 1)]),
|
|
500
|
+
b("p", Ue, C(x(r).saveGate.body), 1),
|
|
501
|
+
b("ul", We, [(i(!0), p(w, null, o(e.issues, (e) => (i(), p("li", {
|
|
502
502
|
key: `${e.ruleId}-${e.blockId ?? "template"}`,
|
|
503
503
|
class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:rounded tpl:px-2 tpl:py-1.5"
|
|
504
|
-
}, [b("span", Ge,
|
|
504
|
+
}, [b("span", Ge, C(e.message), 1), b("span", Ke, C(e.ruleId), 1)]))), 128))]),
|
|
505
505
|
b("footer", qe, [b("button", {
|
|
506
506
|
type: "button",
|
|
507
507
|
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)]",
|
|
508
|
-
onClick:
|
|
509
|
-
},
|
|
508
|
+
onClick: a[0] ||= (e) => n("cancel")
|
|
509
|
+
}, C(x(r).saveGate.cancel), 1), b("button", {
|
|
510
510
|
type: "button",
|
|
511
511
|
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",
|
|
512
|
-
onClick:
|
|
513
|
-
},
|
|
514
|
-
])], 8, ze)) :
|
|
512
|
+
onClick: a[1] ||= (e) => n("confirm")
|
|
513
|
+
}, C(x(r).saveGate.confirm), 1)])
|
|
514
|
+
])], 8, ze)) : m("", !0)]),
|
|
515
515
|
_: 1
|
|
516
516
|
}));
|
|
517
517
|
}
|
|
@@ -541,7 +541,7 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
541
541
|
}, at = ["aria-expanded"], ot = {
|
|
542
542
|
key: 0,
|
|
543
543
|
class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
|
|
544
|
-
}, st = ["disabled"], ct = ["disabled"], lt = /* @__PURE__ */
|
|
544
|
+
}, st = ["disabled"], ct = ["disabled"], lt = /* @__PURE__ */ E({
|
|
545
545
|
__name: "CloudHeader",
|
|
546
546
|
props: {
|
|
547
547
|
editor: {},
|
|
@@ -559,31 +559,31 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
559
559
|
},
|
|
560
560
|
emits: ["save"],
|
|
561
561
|
setup(e) {
|
|
562
|
-
let t =
|
|
563
|
-
return (c, l) => (
|
|
564
|
-
b("div", Xe, [e.featureFlags.templateLimit.value === null ?
|
|
562
|
+
let t = d(() => import("./CollaboratorBar-B5a8eBXN.js")), n = d(() => import("./features-D6FoOm8v.js").then((e) => e.r)), r = d(() => import("./AiFeatureMenu-CDh9ifC8.js")), { t: a, format: o } = k();
|
|
563
|
+
return (c, l) => (i(), p("header", Ye, [
|
|
564
|
+
b("div", Xe, [e.featureFlags.templateLimit.value === null ? m("", !0) : (i(), p("span", Ze, C(x(o)(x(a).header.templatesUsed, {
|
|
565
565
|
used: e.featureFlags.templateCount.value,
|
|
566
566
|
max: e.featureFlags.templateLimit.value
|
|
567
567
|
})), 1))]),
|
|
568
568
|
b("div", Qe, [
|
|
569
|
-
|
|
569
|
+
D(we, {
|
|
570
570
|
viewport: e.editor.state.viewport,
|
|
571
571
|
onChange: e.editor.setViewport
|
|
572
572
|
}, null, 8, ["viewport", "onChange"]),
|
|
573
|
-
|
|
573
|
+
D(Te, {
|
|
574
574
|
"dark-mode": e.editor.state.darkMode,
|
|
575
575
|
onChange: e.editor.setDarkMode
|
|
576
576
|
}, null, 8, ["dark-mode", "onChange"]),
|
|
577
|
-
|
|
577
|
+
D(De, {
|
|
578
578
|
"preview-mode": e.editor.state.previewMode,
|
|
579
579
|
onChange: e.editor.setPreviewMode
|
|
580
580
|
}, null, 8, ["preview-mode", "onChange"]),
|
|
581
|
-
e.collaboration && e.isCollaborationEnabled ? (
|
|
581
|
+
e.collaboration && e.isCollaborationEnabled ? (i(), _(x(t), {
|
|
582
582
|
key: 0,
|
|
583
583
|
collaborators: e.collaboration.collaborators.value,
|
|
584
584
|
"is-connected": e.websocket.isConnected.value
|
|
585
|
-
}, null, 8, ["collaborators", "is-connected"])) :
|
|
586
|
-
e.snapshotPreview.snapshotHistoryInstance.value ? (
|
|
585
|
+
}, null, 8, ["collaborators", "is-connected"])) : m("", !0),
|
|
586
|
+
e.snapshotPreview.snapshotHistoryInstance.value ? (i(), _(x(n), {
|
|
587
587
|
key: 1,
|
|
588
588
|
snapshots: e.snapshotPreview.snapshotHistorySnapshots.value,
|
|
589
589
|
"is-loading": e.snapshotPreview.snapshotHistoryIsLoading.value,
|
|
@@ -596,53 +596,53 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
596
596
|
"is-restoring",
|
|
597
597
|
"onLoad",
|
|
598
598
|
"onNavigate"
|
|
599
|
-
])) :
|
|
599
|
+
])) : m("", !0)
|
|
600
600
|
]),
|
|
601
601
|
b("div", $e, [
|
|
602
|
-
e.featureFlags.saveStatus.value === "error" ? (
|
|
602
|
+
e.featureFlags.saveStatus.value === "error" ? (i(), p("div", {
|
|
603
603
|
key: 0,
|
|
604
604
|
"aria-live": "assertive",
|
|
605
605
|
class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
|
|
606
606
|
"data-tooltip": e.featureFlags.saveErrorMessage.value
|
|
607
|
-
}, [
|
|
607
|
+
}, [D(x(z), {
|
|
608
608
|
size: 12,
|
|
609
609
|
"stroke-width": 2.5
|
|
610
|
-
}),
|
|
610
|
+
}), T(" " + C(x(a).header.saveFailed), 1)], 8, et)) : e.featureFlags.saveStatus.value === "saved" ? (i(), p("div", tt, [D(x(L), {
|
|
611
611
|
size: 12,
|
|
612
612
|
"stroke-width": 2.5
|
|
613
|
-
}),
|
|
614
|
-
e.commentsInstance.isEnabled.value && e.featureFlags.hasTemplateSaved.value ? (
|
|
613
|
+
}), T(" " + C(x(a).header.saved), 1)])) : e.editor.state.isDirty ? (i(), p("div", nt, [l[4] ||= b("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), T(" " + C(x(a).header.unsaved), 1)])) : m("", !0),
|
|
614
|
+
e.commentsInstance.isEnabled.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("button", {
|
|
615
615
|
key: 3,
|
|
616
|
-
"aria-label": e.commentsInstance.unresolvedCount.value > 0 ? `${
|
|
616
|
+
"aria-label": e.commentsInstance.unresolvedCount.value > 0 ? `${x(a).comments.button} (${e.commentsInstance.unresolvedCount.value})` : x(a).comments.button,
|
|
617
617
|
"aria-expanded": e.panelState.commentsOpen.value,
|
|
618
|
-
class:
|
|
619
|
-
style:
|
|
618
|
+
class: u(x($)),
|
|
619
|
+
style: y({
|
|
620
620
|
backgroundColor: e.panelState.commentsOpen.value ? "var(--tpl-primary)" : "transparent",
|
|
621
621
|
color: e.panelState.commentsOpen.value ? "var(--tpl-bg)" : "var(--tpl-primary)",
|
|
622
622
|
borderColor: "var(--tpl-primary)"
|
|
623
623
|
}),
|
|
624
624
|
onClick: l[0] ||= (t) => e.panelState.commentsOpen.value = !e.panelState.commentsOpen.value
|
|
625
625
|
}, [
|
|
626
|
-
|
|
626
|
+
D(x(se), {
|
|
627
627
|
size: 16,
|
|
628
628
|
"stroke-width": 2
|
|
629
629
|
}),
|
|
630
|
-
|
|
631
|
-
e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (
|
|
632
|
-
], 14, rt)) :
|
|
633
|
-
e.featureFlags.canUseAiGeneration.value && e.featureFlags.hasTemplateSaved.value ? (
|
|
630
|
+
T(" " + C(x(a).comments.button) + " ", 1),
|
|
631
|
+
e.commentsInstance.unresolvedCount.value > 0 && !e.panelState.commentsOpen.value ? (i(), p("span", it, C(e.commentsInstance.unresolvedCount.value), 1)) : m("", !0)
|
|
632
|
+
], 14, rt)) : m("", !0),
|
|
633
|
+
e.featureFlags.canUseAiGeneration.value && e.featureFlags.hasTemplateSaved.value ? (i(), p("div", {
|
|
634
634
|
key: 4,
|
|
635
635
|
ref: (t) => e.panelState.aiMenuRef.value = t,
|
|
636
636
|
class: "tpl:relative"
|
|
637
637
|
}, [b("button", {
|
|
638
638
|
"aria-expanded": e.panelState.aiMenuOpen.value,
|
|
639
|
-
class:
|
|
640
|
-
onClick: l[1] ||=
|
|
641
|
-
}, [
|
|
639
|
+
class: u(["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"]),
|
|
640
|
+
onClick: l[1] ||= g((...t) => e.panelState.toggleAiMenu && e.panelState.toggleAiMenu(...t), ["stop"])
|
|
641
|
+
}, [D(x(q), {
|
|
642
642
|
size: 16,
|
|
643
643
|
"stroke-width": 2,
|
|
644
644
|
class: "tpl-ai-btn-icon"
|
|
645
|
-
}),
|
|
645
|
+
}), T(" " + C(x(a).aiChat.button), 1)], 10, at), D(v, {
|
|
646
646
|
"enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
|
|
647
647
|
"enter-from-class": "tpl:scale-95 tpl:opacity-0",
|
|
648
648
|
"enter-to-class": "tpl:scale-100 tpl:opacity-100",
|
|
@@ -650,15 +650,15 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
650
650
|
"leave-from-class": "tpl:scale-100 tpl:opacity-100",
|
|
651
651
|
"leave-to-class": "tpl:scale-95 tpl:opacity-0"
|
|
652
652
|
}, {
|
|
653
|
-
default:
|
|
653
|
+
default: s(() => [e.panelState.aiMenuOpen.value ? (i(), p("div", ot, [D(x(r), {
|
|
654
654
|
"active-feature": e.panelState.activeAiFeature.value,
|
|
655
655
|
onSelect: e.panelState.handleAiFeatureSelect
|
|
656
|
-
}, null, 8, ["active-feature", "onSelect"])])) :
|
|
656
|
+
}, null, 8, ["active-feature", "onSelect"])])) : m("", !0)]),
|
|
657
657
|
_: 1
|
|
658
|
-
})], 512)) :
|
|
659
|
-
e.testEmail.isEnabled.value && e.featureFlags.canSendTestEmail.value ? (
|
|
658
|
+
})], 512)) : m("", !0),
|
|
659
|
+
e.testEmail.isEnabled.value && e.featureFlags.canSendTestEmail.value ? (i(), p("button", {
|
|
660
660
|
key: 5,
|
|
661
|
-
class:
|
|
661
|
+
class: u(x($)),
|
|
662
662
|
style: {
|
|
663
663
|
"background-color": "transparent",
|
|
664
664
|
color: "var(--tpl-primary)",
|
|
@@ -666,18 +666,18 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
666
666
|
},
|
|
667
667
|
disabled: e.testEmail.isSending.value || !e.featureFlags.hasTemplateSaved.value,
|
|
668
668
|
onClick: l[2] ||= (t) => e.panelState.testEmailModalOpen.value = !0
|
|
669
|
-
}, [e.testEmail.isSending.value ? (
|
|
669
|
+
}, [e.testEmail.isSending.value ? (i(), _(x(Z), {
|
|
670
670
|
key: 1,
|
|
671
671
|
class: "tpl-spinner",
|
|
672
672
|
size: 16,
|
|
673
673
|
"stroke-width": 2
|
|
674
|
-
})) : (
|
|
674
|
+
})) : (i(), _(x(Y), {
|
|
675
675
|
key: 0,
|
|
676
676
|
size: 16,
|
|
677
677
|
"stroke-width": 2
|
|
678
|
-
})),
|
|
678
|
+
})), T(" " + C(x(a).testEmail.button), 1)], 10, st)) : m("", !0),
|
|
679
679
|
b("button", {
|
|
680
|
-
class:
|
|
680
|
+
class: u(x($)),
|
|
681
681
|
style: {
|
|
682
682
|
"background-color": "transparent",
|
|
683
683
|
color: "var(--tpl-primary)",
|
|
@@ -685,20 +685,20 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
685
685
|
},
|
|
686
686
|
disabled: e.isSaveDisabled,
|
|
687
687
|
onClick: l[3] ||= (e) => c.$emit("save")
|
|
688
|
-
}, [e.isSaving ? (
|
|
688
|
+
}, [e.isSaving ? (i(), _(x(Z), {
|
|
689
689
|
key: 1,
|
|
690
690
|
class: "tpl-spinner",
|
|
691
691
|
size: 16,
|
|
692
692
|
"stroke-width": 2
|
|
693
|
-
})) : (
|
|
693
|
+
})) : (i(), _(x(xe), {
|
|
694
694
|
key: 0,
|
|
695
695
|
size: 16,
|
|
696
696
|
"stroke-width": 2
|
|
697
|
-
})),
|
|
697
|
+
})), T(" " + C(e.isSaving ? x(a).header.saving : x(a).header.save), 1)], 10, ct)
|
|
698
698
|
])
|
|
699
699
|
]));
|
|
700
700
|
}
|
|
701
|
-
}), ut = /* @__PURE__ */
|
|
701
|
+
}), ut = /* @__PURE__ */ E({
|
|
702
702
|
__name: "CloudPanels",
|
|
703
703
|
props: {
|
|
704
704
|
config: {},
|
|
@@ -720,79 +720,79 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
720
720
|
"send-test-email",
|
|
721
721
|
"module-insert"
|
|
722
722
|
],
|
|
723
|
-
setup(
|
|
724
|
-
let
|
|
723
|
+
setup(e, { expose: t, emit: n }) {
|
|
724
|
+
let r = d(() => import("./features-D6FoOm8v.js").then((e) => e.s)), a = d(() => import("./features-D6FoOm8v.js").then((e) => e.o)), o = d(() => import("./features-D6FoOm8v.js").then((e) => e.a)), s = d(() => import("./features-D6FoOm8v.js").then((e) => e.n)), l = d(() => import("./features-D6FoOm8v.js").then((e) => e.t)), u = d(() => import("./SaveModuleDialog-5CNMvgYL.js")), f = d(() => import("./ModuleBrowserModal-BMUyAmmj.js")), h = d(async () => {
|
|
725
725
|
try {
|
|
726
|
-
return (await import("./src-
|
|
726
|
+
return (await import("./src-DDSInEkE.js")).MediaLibraryModal;
|
|
727
727
|
} catch {
|
|
728
728
|
throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
|
|
729
729
|
}
|
|
730
|
-
}),
|
|
731
|
-
function
|
|
730
|
+
}), g = n;
|
|
731
|
+
function v(e, t, n) {
|
|
732
732
|
t.history.record(), n.setContent(e), t.conditionPreview.reset();
|
|
733
733
|
}
|
|
734
|
-
function
|
|
735
|
-
|
|
734
|
+
function y(e, t) {
|
|
735
|
+
g("module-insert", e, t);
|
|
736
736
|
}
|
|
737
|
-
let
|
|
738
|
-
function
|
|
739
|
-
|
|
737
|
+
let b = c(null);
|
|
738
|
+
function S(e) {
|
|
739
|
+
b.value?.filterByBlock(e);
|
|
740
740
|
}
|
|
741
|
-
return
|
|
742
|
-
|
|
743
|
-
visible:
|
|
744
|
-
"on-apply": (
|
|
745
|
-
onClose: n[0] ||= (
|
|
741
|
+
return t({ filterCommentsByBlock: S }), (t, n) => (i(), p(w, null, [
|
|
742
|
+
D(x(r), {
|
|
743
|
+
visible: e.panelState.aiChatOpen.value,
|
|
744
|
+
"on-apply": (t) => v(t, e.core, e.editor),
|
|
745
|
+
onClose: n[0] ||= (t) => e.panelState.aiChatOpen.value = !1
|
|
746
746
|
}, null, 8, ["visible", "on-apply"]),
|
|
747
|
-
|
|
748
|
-
visible:
|
|
749
|
-
onClose: n[1] ||= (
|
|
747
|
+
D(x(s), {
|
|
748
|
+
visible: e.panelState.scoringPanelOpen.value,
|
|
749
|
+
onClose: n[1] ||= (t) => e.panelState.scoringPanelOpen.value = !1
|
|
750
750
|
}, null, 8, ["visible"]),
|
|
751
|
-
|
|
752
|
-
visible:
|
|
753
|
-
"has-existing-blocks":
|
|
754
|
-
onClose: n[2] ||= (
|
|
755
|
-
onApply: n[3] ||= (
|
|
751
|
+
D(x(o), {
|
|
752
|
+
visible: e.panelState.designReferenceOpen.value,
|
|
753
|
+
"has-existing-blocks": e.editor.content.value.blocks.length > 0,
|
|
754
|
+
onClose: n[2] ||= (t) => e.panelState.designReferenceOpen.value = !1,
|
|
755
|
+
onApply: n[3] ||= (t) => v(t, e.core, e.editor)
|
|
756
756
|
}, null, 8, ["visible", "has-existing-blocks"]),
|
|
757
|
-
|
|
757
|
+
D(x(a), {
|
|
758
758
|
ref_key: "commentsSidebar",
|
|
759
|
-
ref:
|
|
760
|
-
visible:
|
|
761
|
-
onClose: n[4] ||= (
|
|
759
|
+
ref: b,
|
|
760
|
+
visible: e.panelState.commentsOpen.value,
|
|
761
|
+
onClose: n[4] ||= (t) => e.panelState.commentsOpen.value = !1
|
|
762
762
|
}, null, 8, ["visible"]),
|
|
763
|
-
|
|
764
|
-
visible:
|
|
765
|
-
"allowed-emails":
|
|
766
|
-
"is-sending":
|
|
767
|
-
error:
|
|
768
|
-
onSend: n[5] ||= (e) =>
|
|
769
|
-
onClose: n[6] ||= (
|
|
763
|
+
D(x(l), {
|
|
764
|
+
visible: e.panelState.testEmailModalOpen.value,
|
|
765
|
+
"allowed-emails": e.testEmail.allowedEmails.value,
|
|
766
|
+
"is-sending": e.testEmail.isSending.value,
|
|
767
|
+
error: e.testEmail.error.value,
|
|
768
|
+
onSend: n[5] ||= (e) => g("send-test-email", e),
|
|
769
|
+
onClose: n[6] ||= (t) => e.panelState.testEmailModalOpen.value = !1
|
|
770
770
|
}, null, 8, [
|
|
771
771
|
"visible",
|
|
772
772
|
"allowed-emails",
|
|
773
773
|
"is-sending",
|
|
774
774
|
"error"
|
|
775
775
|
]),
|
|
776
|
-
|
|
776
|
+
e.planConfigInstance.hasFeature("saved_modules") && e.config.modules !== !1 ? (i(), _(x(u), {
|
|
777
777
|
key: 0,
|
|
778
|
-
visible:
|
|
779
|
-
"pre-selected-block-id":
|
|
778
|
+
visible: e.showSaveModuleDialog,
|
|
779
|
+
"pre-selected-block-id": e.saveModulePreSelectedBlockId,
|
|
780
780
|
onClose: n[7] ||= (e) => {
|
|
781
|
-
|
|
781
|
+
g("update:showSaveModuleDialog", !1), g("update:saveModulePreSelectedBlockId", null);
|
|
782
782
|
},
|
|
783
|
-
onSaved: n[8] ||= (
|
|
784
|
-
}, null, 8, ["visible", "pre-selected-block-id"])) :
|
|
785
|
-
|
|
783
|
+
onSaved: n[8] ||= (t) => e.savedModulesHeadless.loadModules()
|
|
784
|
+
}, null, 8, ["visible", "pre-selected-block-id"])) : m("", !0),
|
|
785
|
+
e.planConfigInstance.hasFeature("saved_modules") && e.config.modules !== !1 ? (i(), _(x(f), {
|
|
786
786
|
key: 1,
|
|
787
|
-
visible:
|
|
788
|
-
onClose: n[9] ||= (e) =>
|
|
789
|
-
onInsert:
|
|
790
|
-
}, null, 8, ["visible"])) :
|
|
791
|
-
|
|
792
|
-
visible:
|
|
793
|
-
accept:
|
|
794
|
-
onSelect:
|
|
795
|
-
onClose:
|
|
787
|
+
visible: e.showModuleBrowserModal,
|
|
788
|
+
onClose: n[9] ||= (e) => g("update:showModuleBrowserModal", !1),
|
|
789
|
+
onInsert: y
|
|
790
|
+
}, null, 8, ["visible"])) : m("", !0),
|
|
791
|
+
D(x(h), {
|
|
792
|
+
visible: e.panelState.mediaLibraryOpen.value,
|
|
793
|
+
accept: e.panelState.mediaLibraryAccept.value,
|
|
794
|
+
onSelect: e.mediaLib.handleMediaSelect,
|
|
795
|
+
onClose: e.mediaLib.handleMediaLibraryClose
|
|
796
796
|
}, null, 8, [
|
|
797
797
|
"visible",
|
|
798
798
|
"accept",
|
|
@@ -804,20 +804,20 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
804
804
|
}), dt = {
|
|
805
805
|
key: 0,
|
|
806
806
|
class: "tpl-loading tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:bg-[var(--tpl-bg)]"
|
|
807
|
-
}, ft = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, pt = { 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)]" }, mt = /* @__PURE__ */
|
|
807
|
+
}, ft = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, pt = { 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)]" }, mt = /* @__PURE__ */ E({
|
|
808
808
|
__name: "CloudLoadingOverlay",
|
|
809
809
|
props: { visible: { type: Boolean } },
|
|
810
810
|
setup(e) {
|
|
811
|
-
return (t,
|
|
811
|
+
return (t, n) => e.visible ? (i(), p("div", dt, [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), b("div", ft, [b("div", pt, [(i(), p(w, null, o(5, (e) => b("div", {
|
|
812
812
|
key: e,
|
|
813
813
|
class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
|
|
814
|
-
})), 64))]),
|
|
814
|
+
})), 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);
|
|
815
815
|
}
|
|
816
816
|
}), ht = {
|
|
817
817
|
key: 0,
|
|
818
818
|
role: "alert",
|
|
819
819
|
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)]"
|
|
820
|
-
}, gt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, _t = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, vt = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, yt = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, bt = /* @__PURE__ */
|
|
820
|
+
}, gt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, _t = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, vt = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, yt = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, bt = /* @__PURE__ */ E({
|
|
821
821
|
__name: "CloudErrorOverlay",
|
|
822
822
|
props: {
|
|
823
823
|
error: {},
|
|
@@ -826,47 +826,47 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
826
826
|
emits: ["retry"],
|
|
827
827
|
setup(e, { emit: t }) {
|
|
828
828
|
let n = t, { t: r } = k();
|
|
829
|
-
function
|
|
829
|
+
function a(e) {
|
|
830
830
|
return "isUnauthorized" in e && e.isUnauthorized ? r.error.authFailed : "isNotFound" in e && e.isNotFound ? r.error.templateNotFound : r.error.defaultMessage;
|
|
831
831
|
}
|
|
832
832
|
function o(e) {
|
|
833
833
|
return "isNotFound" in e && !!e.isNotFound;
|
|
834
834
|
}
|
|
835
|
-
return (t, s) => e.visible && e.error ? (
|
|
836
|
-
b("div", gt, [
|
|
835
|
+
return (t, s) => e.visible && e.error ? (i(), p("div", ht, [
|
|
836
|
+
b("div", gt, [D(x(z), {
|
|
837
837
|
size: 32,
|
|
838
838
|
"stroke-width": 1.5,
|
|
839
839
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
840
840
|
})]),
|
|
841
|
-
b("div", _t, [b("h2", vt,
|
|
842
|
-
o(e.error) ?
|
|
841
|
+
b("div", _t, [b("h2", vt, C(x(r).error.title), 1), b("p", yt, C(a(e.error)), 1)]),
|
|
842
|
+
o(e.error) ? m("", !0) : (i(), p("button", {
|
|
843
843
|
key: 0,
|
|
844
844
|
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)]",
|
|
845
845
|
onClick: s[0] ||= (e) => n("retry")
|
|
846
|
-
},
|
|
847
|
-
])) :
|
|
846
|
+
}, C(x(r).error.retry), 1))
|
|
847
|
+
])) : m("", !0);
|
|
848
848
|
}
|
|
849
849
|
}), xt = {
|
|
850
850
|
key: 0,
|
|
851
851
|
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)]"
|
|
852
|
-
}, St = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Ct = { class: "tpl:flex tpl:items-center tpl:gap-2" }, wt = /* @__PURE__ */
|
|
852
|
+
}, St = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Ct = { class: "tpl:flex tpl:items-center tpl:gap-2" }, wt = /* @__PURE__ */ E({
|
|
853
853
|
__name: "SnapshotPreviewBanner",
|
|
854
854
|
props: { visible: { type: Boolean } },
|
|
855
855
|
emits: ["cancel", "confirm"],
|
|
856
856
|
setup(e, { emit: t }) {
|
|
857
857
|
let n = t, { t: r } = k();
|
|
858
|
-
return (t,
|
|
858
|
+
return (t, a) => e.visible ? (i(), p("div", xt, [b("div", St, [D(x(_e), {
|
|
859
859
|
size: 18,
|
|
860
860
|
"stroke-width": 2,
|
|
861
861
|
class: "tpl:text-[var(--tpl-primary)]"
|
|
862
|
-
}), b("span", null,
|
|
862
|
+
}), b("span", null, C(x(r).snapshotPreview.message), 1)]), b("div", Ct, [b("button", {
|
|
863
863
|
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)]",
|
|
864
864
|
style: { "background-color": "transparent" },
|
|
865
|
-
onClick:
|
|
866
|
-
},
|
|
865
|
+
onClick: a[0] ||= (e) => n("cancel")
|
|
866
|
+
}, C(x(r).snapshotPreview.cancel), 1), b("button", {
|
|
867
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:hover:opacity-90 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
868
|
-
onClick:
|
|
869
|
-
},
|
|
868
|
+
onClick: a[1] ||= (e) => n("confirm")
|
|
869
|
+
}, C(x(r).snapshotPreview.restore), 1)])])) : m("", !0);
|
|
870
870
|
}
|
|
871
871
|
}), Tt = {
|
|
872
872
|
key: 0,
|
|
@@ -878,14 +878,14 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
878
878
|
color: "var(--tpl-text)",
|
|
879
879
|
border: "1px solid var(--tpl-warning)"
|
|
880
880
|
}
|
|
881
|
-
}, Et = /* @__PURE__ */
|
|
881
|
+
}, Et = /* @__PURE__ */ E({
|
|
882
882
|
__name: "CollabUndoToast",
|
|
883
883
|
props: { visible: { type: Boolean } },
|
|
884
884
|
setup(e) {
|
|
885
885
|
let { t } = I();
|
|
886
|
-
return (n, r) => e.visible ? (
|
|
886
|
+
return (n, r) => e.visible ? (i(), p("div", Tt, C(x(t).history.collabWarning), 1)) : m("", !0);
|
|
887
887
|
}
|
|
888
|
-
}), Dt = ["data-tpl-theme"], Ot = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, kt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, At = ["aria-label"], jt = /* @__PURE__ */ me(/* @__PURE__ */
|
|
888
|
+
}), Dt = ["data-tpl-theme"], Ot = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, kt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, At = ["aria-label"], jt = /* @__PURE__ */ me(/* @__PURE__ */ E({
|
|
889
889
|
__name: "CloudEditor",
|
|
890
890
|
props: {
|
|
891
891
|
config: {},
|
|
@@ -894,16 +894,16 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
894
894
|
fontsManager: {}
|
|
895
895
|
},
|
|
896
896
|
emits: ["ready"],
|
|
897
|
-
setup(
|
|
898
|
-
let l =
|
|
899
|
-
|
|
900
|
-
let
|
|
897
|
+
setup(e, { expose: r, emit: o }) {
|
|
898
|
+
let l = e;
|
|
899
|
+
a(B, l.cloudTranslations);
|
|
900
|
+
let d = o, f = c(null), g = Fe({
|
|
901
901
|
config: l.config,
|
|
902
902
|
translations: l.translations,
|
|
903
903
|
fontsManager: l.fontsManager,
|
|
904
|
-
emit:
|
|
905
|
-
getCommentsSidebar: () =>
|
|
906
|
-
}), { isInitializing:
|
|
904
|
+
emit: d,
|
|
905
|
+
getCommentsSidebar: () => f.value ? { filterByBlock: f.value.filterCommentsByBlock } : null
|
|
906
|
+
}), { isInitializing: w, isAuthReady: E, initError: O, planConfigInstance: k, websocket: A, collaboration: j, isCollaborationEnabled: M, editor: N, core: P, featureFlags: F, mediaLib: ee, exporter: I, testEmail: L, commentsInstance: te, savedModulesHeadless: R, panelState: z, snapshotPreview: V, collabWarning: ne, showSaveModuleDialog: H, showModuleBrowserModal: U, saveModulePreSelectedBlockId: W, setThemeOverrides: K, setUiTheme: re } = g;
|
|
907
907
|
async function ie(e) {
|
|
908
908
|
try {
|
|
909
909
|
await L.sendTestEmail(e), z.testEmailModalOpen.value = !1;
|
|
@@ -925,19 +925,19 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
925
925
|
core: P,
|
|
926
926
|
exporter: I,
|
|
927
927
|
featureFlags: F,
|
|
928
|
-
isDestroyed:
|
|
928
|
+
isDestroyed: g.isDestroyed
|
|
929
929
|
}), Y = Re({
|
|
930
|
-
issues: P.accessibilityLint ? P.accessibilityLint.issues :
|
|
930
|
+
issues: P.accessibilityLint ? P.accessibilityLint.issues : c([]),
|
|
931
931
|
planConfig: k.config
|
|
932
932
|
});
|
|
933
933
|
async function X() {
|
|
934
934
|
await Y.tryRunSave(() => J.saveTemplate().catch((e) => l.config.onError?.(e)));
|
|
935
935
|
}
|
|
936
|
-
return
|
|
937
|
-
|
|
938
|
-
}),
|
|
939
|
-
|
|
940
|
-
}),
|
|
936
|
+
return g.onSaveHook.value = X, t(() => {
|
|
937
|
+
g.initialize();
|
|
938
|
+
}), h(() => {
|
|
939
|
+
g.destroy();
|
|
940
|
+
}), r({
|
|
941
941
|
getContent: () => N.content.value,
|
|
942
942
|
setContent: (e) => N.setContent(e),
|
|
943
943
|
setTheme: re,
|
|
@@ -946,12 +946,12 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
946
946
|
load: J.loadTemplate,
|
|
947
947
|
save: J.saveTemplate,
|
|
948
948
|
sendTestEmail: L.sendTestEmail
|
|
949
|
-
}), (
|
|
950
|
-
class:
|
|
951
|
-
"data-tpl-theme":
|
|
952
|
-
style:
|
|
949
|
+
}), (t, r) => (i(), p("div", {
|
|
950
|
+
class: u(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": x(N).state.darkMode }]),
|
|
951
|
+
"data-tpl-theme": x(P).resolvedTheme.value,
|
|
952
|
+
style: y(x(P).themeStyles.value)
|
|
953
953
|
}, [
|
|
954
|
-
|
|
954
|
+
D(v, {
|
|
955
955
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
956
956
|
"enter-from-class": "tpl:opacity-100",
|
|
957
957
|
"enter-to-class": "tpl:opacity-100",
|
|
@@ -959,10 +959,10 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
959
959
|
"leave-from-class": "tpl:opacity-100",
|
|
960
960
|
"leave-to-class": "tpl:opacity-0"
|
|
961
961
|
}, {
|
|
962
|
-
default:
|
|
962
|
+
default: s(() => [D(mt, { visible: x(w) || x(N).state.isLoading }, null, 8, ["visible"])]),
|
|
963
963
|
_: 1
|
|
964
964
|
}),
|
|
965
|
-
|
|
965
|
+
D(v, {
|
|
966
966
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
967
967
|
"enter-from-class": "tpl:opacity-0",
|
|
968
968
|
"enter-to-class": "tpl:opacity-100",
|
|
@@ -970,10 +970,10 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
970
970
|
"leave-from-class": "tpl:opacity-100",
|
|
971
971
|
"leave-to-class": "tpl:opacity-0"
|
|
972
972
|
}, {
|
|
973
|
-
default:
|
|
974
|
-
error:
|
|
975
|
-
visible: !!
|
|
976
|
-
onRetry:
|
|
973
|
+
default: s(() => [D(bt, {
|
|
974
|
+
error: x(O),
|
|
975
|
+
visible: !!x(O) && !x(w),
|
|
976
|
+
onRetry: x(g).initialize
|
|
977
977
|
}, null, 8, [
|
|
978
978
|
"error",
|
|
979
979
|
"visible",
|
|
@@ -981,19 +981,19 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
981
981
|
])]),
|
|
982
982
|
_: 1
|
|
983
983
|
}),
|
|
984
|
-
|
|
985
|
-
editor:
|
|
986
|
-
core:
|
|
987
|
-
"feature-flags":
|
|
988
|
-
"panel-state":
|
|
989
|
-
"snapshot-preview":
|
|
990
|
-
"comments-instance":
|
|
991
|
-
"test-email":
|
|
992
|
-
websocket:
|
|
993
|
-
collaboration:
|
|
994
|
-
"is-collaboration-enabled":
|
|
995
|
-
"is-saving":
|
|
996
|
-
"is-save-disabled":
|
|
984
|
+
D(lt, {
|
|
985
|
+
editor: x(N),
|
|
986
|
+
core: x(P),
|
|
987
|
+
"feature-flags": x(F),
|
|
988
|
+
"panel-state": x(z),
|
|
989
|
+
"snapshot-preview": x(V),
|
|
990
|
+
"comments-instance": x(te),
|
|
991
|
+
"test-email": x(L),
|
|
992
|
+
websocket: x(A),
|
|
993
|
+
collaboration: x(j),
|
|
994
|
+
"is-collaboration-enabled": x(M),
|
|
995
|
+
"is-saving": x(N).state.isSaving || x(F).isSaveExporting.value,
|
|
996
|
+
"is-save-disabled": x(N).state.isSaving || x(F).isSaveExporting.value || !x(N).state.isDirty,
|
|
997
997
|
onSave: X
|
|
998
998
|
}, null, 8, [
|
|
999
999
|
"editor",
|
|
@@ -1009,27 +1009,27 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1009
1009
|
"is-saving",
|
|
1010
1010
|
"is-save-disabled"
|
|
1011
1011
|
]),
|
|
1012
|
-
|
|
1013
|
-
open:
|
|
1014
|
-
issues:
|
|
1015
|
-
onCancel:
|
|
1016
|
-
onConfirm:
|
|
1012
|
+
D(Je, {
|
|
1013
|
+
open: x(Y).modalOpen.value,
|
|
1014
|
+
issues: x(Y).blockingIssues.value,
|
|
1015
|
+
onCancel: x(Y).cancel,
|
|
1016
|
+
onConfirm: x(Y).confirmAndSave
|
|
1017
1017
|
}, null, 8, [
|
|
1018
1018
|
"open",
|
|
1019
1019
|
"issues",
|
|
1020
1020
|
"onCancel",
|
|
1021
1021
|
"onConfirm"
|
|
1022
1022
|
]),
|
|
1023
|
-
|
|
1024
|
-
visible:
|
|
1025
|
-
onCancel:
|
|
1026
|
-
onConfirm:
|
|
1023
|
+
D(wt, {
|
|
1024
|
+
visible: x(V).isPreviewingSnapshot.value,
|
|
1025
|
+
onCancel: x(V).cancelPreview,
|
|
1026
|
+
onConfirm: x(V).confirmRestoreSnapshot
|
|
1027
1027
|
}, null, 8, [
|
|
1028
1028
|
"visible",
|
|
1029
1029
|
"onCancel",
|
|
1030
1030
|
"onConfirm"
|
|
1031
1031
|
]),
|
|
1032
|
-
|
|
1032
|
+
D(v, {
|
|
1033
1033
|
"enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
|
|
1034
1034
|
"enter-from-class": "tpl:translate-y-[-8px] tpl:opacity-0",
|
|
1035
1035
|
"enter-to-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
@@ -1037,18 +1037,18 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1037
1037
|
"leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
1038
1038
|
"leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
|
|
1039
1039
|
}, {
|
|
1040
|
-
default:
|
|
1040
|
+
default: s(() => [D(Et, { visible: x(ne).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
|
|
1041
1041
|
_: 1
|
|
1042
1042
|
}),
|
|
1043
|
-
|
|
1043
|
+
n(D(Ee, null, null, 512), [[S, !x(N).state.previewMode]]),
|
|
1044
1044
|
b("div", {
|
|
1045
|
-
class:
|
|
1045
|
+
class: u(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [x(N).state.previewMode ? "tpl:left-0 tpl:right-0" : x(z).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", x(V).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
|
|
1046
1046
|
style: {
|
|
1047
1047
|
transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
|
|
1048
1048
|
"background-color": "var(--tpl-canvas-bg)"
|
|
1049
1049
|
}
|
|
1050
|
-
}, [b("div", Ot, [
|
|
1051
|
-
default:
|
|
1050
|
+
}, [b("div", Ot, [D(v, { name: "tpl-restore-btn" }, {
|
|
1051
|
+
default: s(() => [x(P).conditionPreview.hasHiddenBlocks.value ? (i(), p("button", {
|
|
1052
1052
|
key: 0,
|
|
1053
1053
|
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",
|
|
1054
1054
|
style: {
|
|
@@ -1057,22 +1057,22 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1057
1057
|
"border-color": "var(--tpl-warning)",
|
|
1058
1058
|
"backdrop-filter": "blur(8px)"
|
|
1059
1059
|
},
|
|
1060
|
-
onClick:
|
|
1061
|
-
}, [
|
|
1060
|
+
onClick: r[0] ||= (e) => x(P).conditionPreview.reset()
|
|
1061
|
+
}, [D(x(be), {
|
|
1062
1062
|
size: 13,
|
|
1063
1063
|
"stroke-width": 2
|
|
1064
|
-
}),
|
|
1064
|
+
}), T(" " + C(x(P).t.blockSettings.restoreHiddenBlocks), 1)])) : m("", !0)]),
|
|
1065
1065
|
_: 1
|
|
1066
|
-
})]), b("main", kt, [
|
|
1067
|
-
viewport:
|
|
1068
|
-
content:
|
|
1069
|
-
"selected-block-id":
|
|
1070
|
-
"dark-mode":
|
|
1071
|
-
"preview-mode":
|
|
1072
|
-
"locked-blocks":
|
|
1073
|
-
onSelectBlock:
|
|
1074
|
-
onOpenAiChat:
|
|
1075
|
-
onOpenDesignReference:
|
|
1066
|
+
})]), b("main", kt, [D(Oe, {
|
|
1067
|
+
viewport: x(N).state.viewport,
|
|
1068
|
+
content: x(N).content.value,
|
|
1069
|
+
"selected-block-id": x(N).state.selectedBlockId,
|
|
1070
|
+
"dark-mode": x(N).state.darkMode,
|
|
1071
|
+
"preview-mode": x(N).state.previewMode,
|
|
1072
|
+
"locked-blocks": x(j)?.lockedBlocks.value ?? void 0,
|
|
1073
|
+
onSelectBlock: x(N).selectBlock,
|
|
1074
|
+
onOpenAiChat: r[1] ||= (e) => x(z).aiChatOpen.value = !0,
|
|
1075
|
+
onOpenDesignReference: r[2] ||= (e) => x(z).designReferenceOpen.value = !0
|
|
1076
1076
|
}, null, 8, [
|
|
1077
1077
|
"viewport",
|
|
1078
1078
|
"content",
|
|
@@ -1082,49 +1082,49 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1082
1082
|
"locked-blocks",
|
|
1083
1083
|
"onSelectBlock"
|
|
1084
1084
|
])])], 2),
|
|
1085
|
-
|
|
1085
|
+
e.config.branding !== !1 && !x(F).isWhiteLabeled.value ? (i(), _(ke, {
|
|
1086
1086
|
key: 0,
|
|
1087
|
-
"position-class": [
|
|
1088
|
-
}, null, 8, ["position-class"])) :
|
|
1087
|
+
"position-class": [x(N).state.previewMode ? "tpl:left-0 tpl:right-0" : x(z).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
|
|
1088
|
+
}, null, 8, ["position-class"])) : m("", !0),
|
|
1089
1089
|
b("div", {
|
|
1090
1090
|
class: "tpl-sr-only",
|
|
1091
1091
|
role: "status",
|
|
1092
1092
|
"aria-live": "polite",
|
|
1093
1093
|
"aria-atomic": "true",
|
|
1094
|
-
"aria-label":
|
|
1095
|
-
},
|
|
1096
|
-
|
|
1097
|
-
"selected-block":
|
|
1098
|
-
settings:
|
|
1099
|
-
"shifted-left":
|
|
1100
|
-
onUpdateBlock:
|
|
1101
|
-
onDeleteBlock:
|
|
1102
|
-
onDuplicateBlock:
|
|
1103
|
-
onUpdateSettings:
|
|
1094
|
+
"aria-label": x(P).t.landmarks.reorderAnnouncements
|
|
1095
|
+
}, C(x(P).keyboardReorder.announcement.value), 9, At),
|
|
1096
|
+
n(D(Se, {
|
|
1097
|
+
"selected-block": x(N).selectedBlock.value,
|
|
1098
|
+
settings: x(N).content.value.settings,
|
|
1099
|
+
"shifted-left": x(z).rightPanelOpen.value,
|
|
1100
|
+
onUpdateBlock: r[3] ||= (e) => x(N).updateBlock(x(N).selectedBlock.value.id, e),
|
|
1101
|
+
onDeleteBlock: r[4] ||= (e) => x(P).blockActions.deleteBlock(x(N).selectedBlock.value.id),
|
|
1102
|
+
onDuplicateBlock: r[5] ||= (e) => x(P).blockActions.duplicateBlock(x(N).selectedBlock.value),
|
|
1103
|
+
onUpdateSettings: x(N).updateSettings
|
|
1104
1104
|
}, null, 8, [
|
|
1105
1105
|
"selected-block",
|
|
1106
1106
|
"settings",
|
|
1107
1107
|
"shifted-left",
|
|
1108
1108
|
"onUpdateSettings"
|
|
1109
|
-
]), [[
|
|
1110
|
-
!
|
|
1109
|
+
]), [[S, !x(N).state.previewMode]]),
|
|
1110
|
+
!x(w) && x(E) ? (i(), _(ut, {
|
|
1111
1111
|
key: 1,
|
|
1112
1112
|
ref_key: "cloudPanelsRef",
|
|
1113
|
-
ref:
|
|
1113
|
+
ref: f,
|
|
1114
1114
|
config: l.config,
|
|
1115
|
-
editor:
|
|
1116
|
-
core:
|
|
1117
|
-
"panel-state":
|
|
1118
|
-
"plan-config-instance":
|
|
1119
|
-
"test-email":
|
|
1120
|
-
"media-lib":
|
|
1121
|
-
"saved-modules-headless":
|
|
1122
|
-
"show-save-module-dialog":
|
|
1123
|
-
"save-module-pre-selected-block-id":
|
|
1124
|
-
"show-module-browser-modal":
|
|
1125
|
-
"onUpdate:showSaveModuleDialog":
|
|
1126
|
-
"onUpdate:saveModulePreSelectedBlockId":
|
|
1127
|
-
"onUpdate:showModuleBrowserModal":
|
|
1115
|
+
editor: x(N),
|
|
1116
|
+
core: x(P),
|
|
1117
|
+
"panel-state": x(z),
|
|
1118
|
+
"plan-config-instance": x(k),
|
|
1119
|
+
"test-email": x(L),
|
|
1120
|
+
"media-lib": x(ee),
|
|
1121
|
+
"saved-modules-headless": x(R),
|
|
1122
|
+
"show-save-module-dialog": x(H),
|
|
1123
|
+
"save-module-pre-selected-block-id": x(W),
|
|
1124
|
+
"show-module-browser-modal": x(U),
|
|
1125
|
+
"onUpdate:showSaveModuleDialog": r[6] ||= (e) => H.value = e,
|
|
1126
|
+
"onUpdate:saveModulePreSelectedBlockId": r[7] ||= (e) => W.value = e,
|
|
1127
|
+
"onUpdate:showModuleBrowserModal": r[8] ||= (e) => U.value = e,
|
|
1128
1128
|
onSendTestEmail: ie,
|
|
1129
1129
|
onModuleInsert: q
|
|
1130
1130
|
}, null, 8, [
|
|
@@ -1139,11 +1139,11 @@ var ze = ["aria-label"], Be = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1139
1139
|
"show-save-module-dialog",
|
|
1140
1140
|
"save-module-pre-selected-block-id",
|
|
1141
1141
|
"show-module-browser-modal"
|
|
1142
|
-
])) :
|
|
1142
|
+
])) : m("", !0)
|
|
1143
1143
|
], 14, Dt));
|
|
1144
1144
|
}
|
|
1145
1145
|
}), [["__scopeId", "data-v-b332971f"]]);
|
|
1146
1146
|
//#endregion
|
|
1147
1147
|
export { jt as default };
|
|
1148
1148
|
|
|
1149
|
-
//# sourceMappingURL=CloudEditor-
|
|
1149
|
+
//# sourceMappingURL=CloudEditor-Fg7pQ9IQ.js.map
|