@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,24 +1,24 @@
|
|
|
1
|
-
import { A as e,
|
|
1
|
+
import { A as e, B as t, L as n, M as r, O as i, Q as a, X as o, _ as s, at as c, b as l, c as u, d, f, g as p, h as m, j as h, k as g, l as _, m as v, o as y, ot as b, p as x, q as S, rt as C, st as w, t as T, v as E, y as D, z as O } from "./vue.runtime.esm-bundler-Bxqkjqhc.js";
|
|
2
2
|
import { t as k } from "./timeouts-BSGxjuUF.js";
|
|
3
3
|
import { E as A, i as j } from "./dist-DJmnUmW9.js";
|
|
4
|
-
import { P as M, S as ee, t as N } from "./useEditorCore-
|
|
5
|
-
import { s as P, t as F } from "./dist-
|
|
6
|
-
import { C as te, c as
|
|
7
|
-
import { t as H } from "./useI18n-
|
|
8
|
-
import { t as U } from "./createLucideIcon-
|
|
9
|
-
import { t as W } from "./check-
|
|
10
|
-
import { t as G } from "./circle-alert-
|
|
11
|
-
import { a as K, c as re, i as q, l as ie, n as J, o as ae, r as oe, s as se, t as ce } from "./styles-
|
|
12
|
-
import { t as Y } from "./clock-
|
|
13
|
-
import { t as X } from "./loader-circle-
|
|
14
|
-
import { t as Z } from "./message-circle-
|
|
15
|
-
import { t as le } from "./send-
|
|
16
|
-
import { t as ue } from "./sparkles-
|
|
17
|
-
import { t as de } from "./triangle-alert-
|
|
4
|
+
import { P as M, S as ee, t as N } from "./useEditorCore-CnXrv71D.js";
|
|
5
|
+
import { s as P, t as F } from "./dist-BzRLLpfq.js";
|
|
6
|
+
import { C as te, c as ne, i as I, l as L, n as R, u as z, w as B, x as V } from "./keys-Bqs_0du9.js";
|
|
7
|
+
import { t as H } from "./useI18n-CgmQftNf.js";
|
|
8
|
+
import { t as U } from "./createLucideIcon-Di4mqmGn.js";
|
|
9
|
+
import { t as W } from "./check-Bg5yrRmX.js";
|
|
10
|
+
import { t as G } from "./circle-alert-C0L9pUQ4.js";
|
|
11
|
+
import { a as K, c as re, i as q, l as ie, n as J, o as ae, r as oe, s as se, t as ce } from "./styles-BgmKdc2x.js";
|
|
12
|
+
import { t as Y } from "./clock-CDlEdqiP.js";
|
|
13
|
+
import { t as X } from "./loader-circle-_9bP23op.js";
|
|
14
|
+
import { t as Z } from "./message-circle-gzy2ZGJ3.js";
|
|
15
|
+
import { t as le } from "./send-BatIZC9a.js";
|
|
16
|
+
import { t as ue } from "./sparkles-D1IGi_cC.js";
|
|
17
|
+
import { t as de } from "./triangle-alert-DWQySIE2.js";
|
|
18
18
|
import { t as fe } from "./_plugin-vue_export-helper-B0hnzhyu.js";
|
|
19
|
-
import { n as Q } from "./useCloudI18n-
|
|
19
|
+
import { n as Q } from "./useCloudI18n-CL_AwWwi.js";
|
|
20
20
|
import { d as $ } from "./styleConstants-fWzlIIwN.js";
|
|
21
|
-
import { _ as pe, a as me, c as he, d as ge, f as _e, g as ve, h as ye, l as be, m as xe, n as Se, o as Ce, p as we, r as Te, s as Ee, t as De, v as Oe, y as ke } from "./cloud-
|
|
21
|
+
import { _ as pe, a as me, c as he, d as ge, f as _e, g as ve, h as ye, l as be, m as xe, n as Se, o as Ce, p as we, r as Te, s as Ee, t as De, v as Oe, y as ke } from "./cloud-a3VovHva.js";
|
|
22
22
|
var Ae = U("save", [
|
|
23
23
|
["path", {
|
|
24
24
|
d: "M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",
|
|
@@ -36,51 +36,51 @@ var Ae = U("save", [
|
|
|
36
36
|
//#endregion
|
|
37
37
|
//#region src/cloud/composables/useSnapshotPreview.ts
|
|
38
38
|
function je(e) {
|
|
39
|
-
let { authManager: t, editor: n, history: r, conditionPreview: i, autoSave:
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
let { authManager: t, editor: n, history: r, conditionPreview: i, autoSave: s, onError: c } = e, l = a(null), u = o(null), f = o(null), p = !1;
|
|
40
|
+
S(() => {
|
|
41
|
+
p = !0;
|
|
42
42
|
});
|
|
43
|
-
let
|
|
43
|
+
let m = d(() => u.value !== null), h = d(() => l.value?.snapshots.value ?? []), g = d(() => l.value?.isLoading.value ?? !1), _ = d(() => l.value?.isRestoring.value ?? !1);
|
|
44
44
|
function v() {
|
|
45
|
-
n.state.template?.id && !
|
|
45
|
+
n.state.template?.id && !l.value && (l.value = ve({
|
|
46
46
|
authManager: t,
|
|
47
47
|
templateId: n.state.template.id,
|
|
48
48
|
onRestore: y,
|
|
49
|
-
onError:
|
|
50
|
-
}),
|
|
49
|
+
onError: c
|
|
50
|
+
}), l.value.loadSnapshots());
|
|
51
51
|
}
|
|
52
52
|
function y(e) {
|
|
53
53
|
n.setContent(e.content, !1), r.clear(), i.reset();
|
|
54
54
|
}
|
|
55
55
|
async function b(e) {
|
|
56
|
-
if (!
|
|
57
|
-
if (
|
|
58
|
-
|
|
56
|
+
if (!p) {
|
|
57
|
+
if (u.value) {
|
|
58
|
+
u.value = e, n.setContent(e.content, !1);
|
|
59
59
|
return;
|
|
60
60
|
}
|
|
61
|
-
n.state.isDirty && n.hasTemplate() && (await n.createSnapshot(),
|
|
61
|
+
n.state.isDirty && n.hasTemplate() && (await n.createSnapshot(), p) || (f.value = structuredClone(n.content.value), s?.pause(), u.value = e, n.setContent(e.content, !1));
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
async function x() {
|
|
65
|
-
if (!(!
|
|
66
|
-
if (await
|
|
65
|
+
if (!(!u.value || !l.value)) try {
|
|
66
|
+
if (await l.value.restoreSnapshot(u.value.id), p || (await l.value.loadSnapshots(), p)) return;
|
|
67
67
|
} finally {
|
|
68
|
-
|
|
68
|
+
p || (u.value = null, f.value = null, s?.resume());
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
function C() {
|
|
72
|
-
!
|
|
72
|
+
!u.value || !f.value || (n.setContent(f.value, !1), u.value = null, f.value = null, s?.resume());
|
|
73
73
|
}
|
|
74
74
|
async function w() {
|
|
75
|
-
|
|
75
|
+
p || l.value && await l.value.loadSnapshots();
|
|
76
76
|
}
|
|
77
77
|
return {
|
|
78
|
-
snapshotHistoryInstance:
|
|
79
|
-
previewingSnapshot:
|
|
80
|
-
contentBeforePreview:
|
|
81
|
-
isPreviewingSnapshot:
|
|
82
|
-
snapshotHistorySnapshots:
|
|
83
|
-
snapshotHistoryIsLoading:
|
|
78
|
+
snapshotHistoryInstance: l,
|
|
79
|
+
previewingSnapshot: u,
|
|
80
|
+
contentBeforePreview: f,
|
|
81
|
+
isPreviewingSnapshot: m,
|
|
82
|
+
snapshotHistorySnapshots: h,
|
|
83
|
+
snapshotHistoryIsLoading: g,
|
|
84
84
|
snapshotHistoryIsRestoring: _,
|
|
85
85
|
initSnapshotHistory: v,
|
|
86
86
|
handleRestore: y,
|
|
@@ -93,26 +93,26 @@ function je(e) {
|
|
|
93
93
|
//#endregion
|
|
94
94
|
//#region src/cloud/composables/useCloudPanelState.ts
|
|
95
95
|
function Me() {
|
|
96
|
-
let e =
|
|
96
|
+
let e = o(null), t = d({
|
|
97
97
|
get: () => e.value === "ai-chat",
|
|
98
98
|
set: (t) => e.value = t ? "ai-chat" : null
|
|
99
|
-
}), n =
|
|
99
|
+
}), n = d({
|
|
100
100
|
get: () => e.value === "scoring",
|
|
101
101
|
set: (t) => e.value = t ? "scoring" : null
|
|
102
|
-
}), r =
|
|
102
|
+
}), r = d({
|
|
103
103
|
get: () => e.value === "design-reference",
|
|
104
104
|
set: (t) => e.value = t ? "design-reference" : null
|
|
105
|
-
}), i =
|
|
105
|
+
}), i = d({
|
|
106
106
|
get: () => e.value === "comments",
|
|
107
107
|
set: (t) => e.value = t ? "comments" : null
|
|
108
|
-
}), a =
|
|
108
|
+
}), a = o(!1), s = o(!1), c = o(void 0), l = o(!1), u = o(null), f = d(() => e.value !== null), p = d(() => {
|
|
109
109
|
let t = e.value;
|
|
110
110
|
return t === "ai-chat" || t === "design-reference" || t === "scoring" ? t : null;
|
|
111
|
-
}),
|
|
112
|
-
function
|
|
111
|
+
}), m = d(() => l.value || e.value === "ai-chat" || e.value === "design-reference" || e.value === "scoring");
|
|
112
|
+
function h() {
|
|
113
113
|
l.value = !l.value;
|
|
114
114
|
}
|
|
115
|
-
function
|
|
115
|
+
function g(t) {
|
|
116
116
|
l.value = !1, e.value = e.value === t ? null : t;
|
|
117
117
|
}
|
|
118
118
|
return F(u, () => {
|
|
@@ -124,48 +124,48 @@ function Me() {
|
|
|
124
124
|
designReferenceOpen: r,
|
|
125
125
|
commentsOpen: i,
|
|
126
126
|
testEmailModalOpen: a,
|
|
127
|
-
mediaLibraryOpen:
|
|
128
|
-
mediaLibraryAccept:
|
|
127
|
+
mediaLibraryOpen: s,
|
|
128
|
+
mediaLibraryAccept: c,
|
|
129
129
|
aiMenuOpen: l,
|
|
130
130
|
aiMenuRef: u,
|
|
131
|
-
rightPanelOpen:
|
|
132
|
-
activeAiFeature:
|
|
133
|
-
aiButtonActive:
|
|
134
|
-
toggleAiMenu:
|
|
135
|
-
handleAiFeatureSelect:
|
|
131
|
+
rightPanelOpen: f,
|
|
132
|
+
activeAiFeature: p,
|
|
133
|
+
aiButtonActive: m,
|
|
134
|
+
toggleAiMenu: h,
|
|
135
|
+
handleAiFeatureSelect: g
|
|
136
136
|
};
|
|
137
137
|
}
|
|
138
138
|
//#endregion
|
|
139
139
|
//#region src/cloud/composables/useCollabUndoWarning.ts
|
|
140
140
|
function Ne(e) {
|
|
141
|
-
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i =
|
|
141
|
+
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = o(!1), a = o(!1), { start: s } = P(() => {
|
|
142
142
|
a.value = !1;
|
|
143
143
|
}, k, { immediate: !1 });
|
|
144
|
-
function
|
|
145
|
-
i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0,
|
|
144
|
+
function c() {
|
|
145
|
+
i.value || !t.value || n() === 0 || !r.value || (i.value = !0, a.value = !0, s());
|
|
146
146
|
}
|
|
147
147
|
return {
|
|
148
148
|
collabUndoWarningVisible: a,
|
|
149
|
-
showCollabUndoWarning:
|
|
149
|
+
showCollabUndoWarning: c
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
152
|
//#endregion
|
|
153
153
|
//#region src/cloud/composables/useCloudFeatureFlags.ts
|
|
154
154
|
function Pe(e) {
|
|
155
|
-
let { planConfigInstance: t, aiConfig: n, editor: r } = e, i =
|
|
156
|
-
|
|
155
|
+
let { planConfigInstance: t, aiConfig: n, editor: r } = e, i = d(() => t.hasFeature("ai_generation") && n.hasAnyMenuFeature.value), a = d(() => t.hasFeature("test_email")), s = d(() => !!r.state.template?.id), c = d(() => t.hasFeature("white_label")), l = d(() => t.config.value?.limits.max_templates ?? null), u = d(() => t.config.value?.template_count ?? 0), f = o(!1), p = o("idle"), m = o(""), { start: h } = P(() => {
|
|
156
|
+
p.value = "idle";
|
|
157
157
|
}, 3e3, { immediate: !1 });
|
|
158
158
|
return {
|
|
159
159
|
canUseAiGeneration: i,
|
|
160
160
|
canSendTestEmail: a,
|
|
161
|
-
hasTemplateSaved:
|
|
162
|
-
isWhiteLabeled:
|
|
161
|
+
hasTemplateSaved: s,
|
|
162
|
+
isWhiteLabeled: c,
|
|
163
163
|
templateLimit: l,
|
|
164
164
|
templateCount: u,
|
|
165
|
-
isSaveExporting:
|
|
166
|
-
saveStatus:
|
|
167
|
-
saveErrorMessage:
|
|
168
|
-
startSaveStatusClear:
|
|
165
|
+
isSaveExporting: f,
|
|
166
|
+
saveStatus: p,
|
|
167
|
+
saveErrorMessage: m,
|
|
168
|
+
startSaveStatusClear: h
|
|
169
169
|
};
|
|
170
170
|
}
|
|
171
171
|
//#endregion
|
|
@@ -195,7 +195,7 @@ function Fe(e) {
|
|
|
195
195
|
function s() {
|
|
196
196
|
n.value = !1, i?.(null), i = null;
|
|
197
197
|
}
|
|
198
|
-
return
|
|
198
|
+
return S(() => {
|
|
199
199
|
i &&= (i(null), null);
|
|
200
200
|
}), {
|
|
201
201
|
handleRequestMedia: a,
|
|
@@ -206,42 +206,42 @@ function Fe(e) {
|
|
|
206
206
|
//#endregion
|
|
207
207
|
//#region src/cloud/composables/useCloudInitialization.ts
|
|
208
208
|
function Ie(e) {
|
|
209
|
-
let { config: t, translations:
|
|
209
|
+
let { config: t, translations: r, fontsManager: i, emit: a, getCommentsSidebar: s } = e, c = o(!0), l = o(!1), u = o(null), f = !1, p = { value: null }, m = null, g = null, _ = new De({
|
|
210
210
|
...t.auth,
|
|
211
211
|
onError: t.onError
|
|
212
|
-
}),
|
|
213
|
-
authManager:
|
|
212
|
+
}), v = xe({
|
|
213
|
+
authManager: _,
|
|
214
214
|
onError: t.onError
|
|
215
|
-
}),
|
|
216
|
-
authManager:
|
|
215
|
+
}), y = o(/* @__PURE__ */ new Map()), b = ge({
|
|
216
|
+
authManager: _,
|
|
217
217
|
defaultFontFamily: t.fonts?.defaultFont,
|
|
218
218
|
templateDefaults: t.templateDefaults,
|
|
219
219
|
onError: t.onError,
|
|
220
|
-
lockedBlocks:
|
|
221
|
-
}),
|
|
222
|
-
authManager:
|
|
220
|
+
lockedBlocks: y
|
|
221
|
+
}), x = ke({
|
|
222
|
+
authManager: _,
|
|
223
223
|
onError: t.onError
|
|
224
224
|
});
|
|
225
225
|
t.mcp?.enabled && we({
|
|
226
|
-
editor:
|
|
227
|
-
channel:
|
|
226
|
+
editor: b,
|
|
227
|
+
channel: x.channel,
|
|
228
228
|
onOperation: t.mcp.onOperation
|
|
229
229
|
});
|
|
230
|
-
let
|
|
231
|
-
t.collaboration?.enabled && (
|
|
232
|
-
authManager:
|
|
233
|
-
editor:
|
|
234
|
-
channel:
|
|
230
|
+
let S = null;
|
|
231
|
+
t.collaboration?.enabled && (S = Ce({
|
|
232
|
+
authManager: _,
|
|
233
|
+
editor: b,
|
|
234
|
+
channel: x.channel,
|
|
235
235
|
onError: t.onError,
|
|
236
236
|
onCollaboratorJoined: t.collaboration.onCollaboratorJoined,
|
|
237
237
|
onCollaboratorLeft: t.collaboration.onCollaboratorLeft,
|
|
238
238
|
onBlockLocked: t.collaboration.onBlockLocked,
|
|
239
239
|
onBlockUnlocked: t.collaboration.onBlockUnlocked
|
|
240
|
-
}),
|
|
241
|
-
|
|
242
|
-
}, { immediate: !0 }), Ee(
|
|
243
|
-
let
|
|
244
|
-
editor:
|
|
240
|
+
}), n(() => S.lockedBlocks.value, (e) => {
|
|
241
|
+
y.value = e;
|
|
242
|
+
}, { immediate: !0 }), Ee(b, S));
|
|
243
|
+
let C = d(() => !!t.collaboration?.enabled && v.hasFeature("collaboration")), w = N({
|
|
244
|
+
editor: b,
|
|
245
245
|
config: {
|
|
246
246
|
uiTheme: t.uiTheme,
|
|
247
247
|
theme: void 0,
|
|
@@ -252,91 +252,91 @@ function Ie(e) {
|
|
|
252
252
|
onRequestMedia: null,
|
|
253
253
|
accessibility: re(t),
|
|
254
254
|
onSave: () => {
|
|
255
|
-
|
|
255
|
+
p.value?.().catch((e) => {
|
|
256
256
|
t.onError?.(e);
|
|
257
257
|
});
|
|
258
258
|
}
|
|
259
259
|
},
|
|
260
|
-
translations:
|
|
261
|
-
fontsManager:
|
|
262
|
-
historyOptions:
|
|
260
|
+
translations: r,
|
|
261
|
+
fontsManager: i,
|
|
262
|
+
historyOptions: S ? { isRemoteOperation: () => S._isProcessingRemoteOperation() } : void 0,
|
|
263
263
|
autoSaveOptions: {
|
|
264
264
|
onChange: async () => {
|
|
265
|
-
|
|
265
|
+
b.hasTemplate() && (await b.createSnapshot(), m?.snapshotHistoryInstance.value?.loadSnapshots());
|
|
266
266
|
},
|
|
267
267
|
debounce: t.autoSaveDebounce ?? 5e3,
|
|
268
|
-
enabled: () => t.autoSave !== !1 &&
|
|
268
|
+
enabled: () => t.autoSave !== !1 && v.hasFeature("auto_save")
|
|
269
269
|
},
|
|
270
|
-
themeExtraStyles: () => ({ "--tpl-drop-text": `"${
|
|
271
|
-
keyboardOptions: { onBeforeUndo: () =>
|
|
272
|
-
}),
|
|
273
|
-
isCollaborationEnabled:
|
|
274
|
-
getCollaboratorCount: () =>
|
|
275
|
-
canUndo:
|
|
270
|
+
themeExtraStyles: () => ({ "--tpl-drop-text": `"${r.canvas.dropHere}"` }),
|
|
271
|
+
keyboardOptions: { onBeforeUndo: () => g?.showCollabUndoWarning() }
|
|
272
|
+
}), T = Ne({
|
|
273
|
+
isCollaborationEnabled: C,
|
|
274
|
+
getCollaboratorCount: () => S?.collaborators.value.length ?? 0,
|
|
275
|
+
canUndo: w.history.canUndo
|
|
276
276
|
});
|
|
277
|
-
|
|
278
|
-
let
|
|
279
|
-
authManager:
|
|
280
|
-
editor:
|
|
281
|
-
history:
|
|
282
|
-
conditionPreview:
|
|
283
|
-
autoSave:
|
|
277
|
+
g = T;
|
|
278
|
+
let E = je({
|
|
279
|
+
authManager: _,
|
|
280
|
+
editor: b,
|
|
281
|
+
history: w.history,
|
|
282
|
+
conditionPreview: w.conditionPreview,
|
|
283
|
+
autoSave: w.autoSave,
|
|
284
284
|
onError: t.onError
|
|
285
285
|
});
|
|
286
|
-
|
|
287
|
-
let
|
|
288
|
-
planConfigInstance:
|
|
289
|
-
aiConfig:
|
|
290
|
-
editor:
|
|
286
|
+
m = E;
|
|
287
|
+
let D = Me(), O = me(t.ai), k = Pe({
|
|
288
|
+
planConfigInstance: v,
|
|
289
|
+
aiConfig: O,
|
|
290
|
+
editor: b
|
|
291
291
|
}), A = Fe({
|
|
292
292
|
onRequestMedia: t.onRequestMedia,
|
|
293
|
-
mediaLibraryOpen:
|
|
294
|
-
mediaLibraryAccept:
|
|
293
|
+
mediaLibraryOpen: D.mediaLibraryOpen,
|
|
294
|
+
mediaLibraryAccept: D.mediaLibraryAccept
|
|
295
295
|
});
|
|
296
296
|
ee({
|
|
297
|
-
onBlockMove:
|
|
298
|
-
onBlockAdd:
|
|
297
|
+
onBlockMove: b.moveBlock,
|
|
298
|
+
onBlockAdd: b.addBlock
|
|
299
299
|
});
|
|
300
300
|
let j = _e({
|
|
301
|
-
authManager:
|
|
301
|
+
authManager: _,
|
|
302
302
|
getFontsConfig: () => t.fonts,
|
|
303
|
-
canUseCustomFonts: () =>
|
|
303
|
+
canUseCustomFonts: () => v.hasFeature("custom_fonts")
|
|
304
304
|
}), P = Oe({
|
|
305
|
-
authManager:
|
|
306
|
-
getTemplateId: () =>
|
|
307
|
-
save: () =>
|
|
305
|
+
authManager: _,
|
|
306
|
+
getTemplateId: () => b.state.template?.id ?? null,
|
|
307
|
+
save: () => b.save(),
|
|
308
308
|
exportHtml: (e) => j.exportHtml(e),
|
|
309
309
|
onError: t.onError,
|
|
310
310
|
isAuthReady: l,
|
|
311
311
|
onBeforeTestEmail: t.onBeforeTestEmail
|
|
312
312
|
}), F = be({
|
|
313
|
-
authManager:
|
|
314
|
-
getTemplateId: () =>
|
|
315
|
-
getSocketId: () =>
|
|
313
|
+
authManager: _,
|
|
314
|
+
getTemplateId: () => b.state.template?.id ?? null,
|
|
315
|
+
getSocketId: () => x.getSocketId(),
|
|
316
316
|
onComment: t.onComment,
|
|
317
317
|
onError: t.onError,
|
|
318
318
|
isAuthReady: l,
|
|
319
|
-
hasCommentingFeature: () => t.commenting !== !1 &&
|
|
319
|
+
hasCommentingFeature: () => t.commenting !== !1 && v.hasFeature("commenting")
|
|
320
320
|
});
|
|
321
321
|
he({
|
|
322
322
|
comments: F,
|
|
323
|
-
channel:
|
|
323
|
+
channel: x.channel
|
|
324
324
|
});
|
|
325
|
-
let
|
|
326
|
-
authManager:
|
|
325
|
+
let L = ye({
|
|
326
|
+
authManager: _,
|
|
327
327
|
onError: t.onError
|
|
328
|
-
}), H =
|
|
329
|
-
authManager:
|
|
330
|
-
getTemplateId: () =>
|
|
328
|
+
}), H = o(!1), U = o(null), W = o(!1), G = pe({
|
|
329
|
+
authManager: _,
|
|
330
|
+
getTemplateId: () => b.state.template?.id ?? null
|
|
331
331
|
});
|
|
332
332
|
function K(e) {
|
|
333
|
-
|
|
334
|
-
|
|
333
|
+
D.commentsOpen.value = !0, queueMicrotask(() => {
|
|
334
|
+
s()?.filterByBlock(e);
|
|
335
335
|
});
|
|
336
336
|
}
|
|
337
|
-
|
|
338
|
-
plan:
|
|
339
|
-
ai:
|
|
337
|
+
h(V, A.handleRequestMedia), h(I, _), h(R, O), h(z, F), h(te, L), h(B, G), h(ne, {
|
|
338
|
+
plan: v,
|
|
339
|
+
ai: O,
|
|
340
340
|
comments: {
|
|
341
341
|
getBlockCount: (e) => F.commentCountByBlock.value.get(e) ?? 0,
|
|
342
342
|
openForBlock: K
|
|
@@ -348,64 +348,64 @@ function Ie(e) {
|
|
|
348
348
|
openBrowser: () => {
|
|
349
349
|
W.value = !0;
|
|
350
350
|
},
|
|
351
|
-
moduleCount:
|
|
351
|
+
moduleCount: d(() => L.modules.value.length)
|
|
352
352
|
}
|
|
353
353
|
});
|
|
354
354
|
function q(e) {
|
|
355
|
-
|
|
355
|
+
v.hasFeature("theme_customization") && (w.themeOverrides.value = e);
|
|
356
356
|
}
|
|
357
357
|
function ie(e) {
|
|
358
|
-
|
|
358
|
+
b.setUiTheme(e);
|
|
359
359
|
}
|
|
360
360
|
async function J() {
|
|
361
|
-
|
|
361
|
+
c.value = !0, u.value = null;
|
|
362
362
|
try {
|
|
363
|
-
if (await
|
|
363
|
+
if (await _.initialize(), f) return;
|
|
364
364
|
l.value = !0;
|
|
365
|
-
let e = await Se({ authManager:
|
|
366
|
-
if (
|
|
365
|
+
let e = await Se({ authManager: _ });
|
|
366
|
+
if (f) return;
|
|
367
367
|
if (!e.api.ok) throw Error("Health check failed: API is not reachable");
|
|
368
368
|
if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
|
|
369
|
-
if (e.websocket.ok || M.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await
|
|
370
|
-
|
|
369
|
+
if (e.websocket.ok || M.warn("WebSocket health check failed:", e.websocket.error ?? "unknown error", "-- real-time features will be disabled."), await v.fetchConfig(), f) return;
|
|
370
|
+
i.setCustomFontsEnabled(v.hasFeature("custom_fonts")), t.customBlocks?.length && v.hasFeature("custom_blocks") && w.registerCustomBlocks(t.customBlocks), t.theme && v.hasFeature("theme_customization") && (w.themeOverrides.value = t.theme), t.modules !== !1 && v.hasFeature("saved_modules") && L.loadModules(), a("ready");
|
|
371
371
|
} catch (e) {
|
|
372
|
-
if (
|
|
372
|
+
if (f) return;
|
|
373
373
|
let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
|
|
374
374
|
u.value = n, t.onError?.(n);
|
|
375
375
|
} finally {
|
|
376
|
-
|
|
376
|
+
f || (c.value = !1);
|
|
377
377
|
}
|
|
378
378
|
}
|
|
379
379
|
function ae() {
|
|
380
|
-
|
|
380
|
+
f = !0, i.cleanupFontLinks(), x.disconnect(), w.destroy(), t.onUnmount?.();
|
|
381
381
|
}
|
|
382
382
|
return {
|
|
383
|
-
isInitializing:
|
|
383
|
+
isInitializing: c,
|
|
384
384
|
isAuthReady: l,
|
|
385
385
|
initError: u,
|
|
386
|
-
isDestroyed: () =>
|
|
387
|
-
authManager:
|
|
388
|
-
planConfigInstance:
|
|
389
|
-
websocket:
|
|
390
|
-
collaboration:
|
|
391
|
-
isCollaborationEnabled:
|
|
392
|
-
editor:
|
|
393
|
-
core:
|
|
394
|
-
aiConfig:
|
|
386
|
+
isDestroyed: () => f,
|
|
387
|
+
authManager: _,
|
|
388
|
+
planConfigInstance: v,
|
|
389
|
+
websocket: x,
|
|
390
|
+
collaboration: S,
|
|
391
|
+
isCollaborationEnabled: C,
|
|
392
|
+
editor: b,
|
|
393
|
+
core: w,
|
|
394
|
+
aiConfig: O,
|
|
395
395
|
featureFlags: k,
|
|
396
396
|
mediaLib: A,
|
|
397
397
|
exporter: j,
|
|
398
398
|
testEmail: P,
|
|
399
399
|
commentsInstance: F,
|
|
400
|
-
savedModulesHeadless:
|
|
400
|
+
savedModulesHeadless: L,
|
|
401
401
|
scoringInstance: G,
|
|
402
|
-
panelState:
|
|
403
|
-
snapshotPreview:
|
|
404
|
-
collabWarning:
|
|
402
|
+
panelState: D,
|
|
403
|
+
snapshotPreview: E,
|
|
404
|
+
collabWarning: T,
|
|
405
405
|
showSaveModuleDialog: H,
|
|
406
406
|
showModuleBrowserModal: W,
|
|
407
407
|
saveModulePreSelectedBlockId: U,
|
|
408
|
-
onSaveHook:
|
|
408
|
+
onSaveHook: p,
|
|
409
409
|
initialize: J,
|
|
410
410
|
destroy: ae,
|
|
411
411
|
setThemeOverrides: q,
|
|
@@ -478,11 +478,11 @@ function Re(e) {
|
|
|
478
478
|
//#endregion
|
|
479
479
|
//#region src/cloud/composables/useCloudSaveGate.ts
|
|
480
480
|
function ze(e) {
|
|
481
|
-
let t =
|
|
482
|
-
async function
|
|
481
|
+
let t = o(!1), n = null, r = d(() => e.planConfig.value?.accessibility?.blockOnError === !0), i = d(() => r.value ? e.issues.value.filter((e) => e.severity === "error") : []), a = d(() => i.value.length > 0);
|
|
482
|
+
async function s(e) {
|
|
483
483
|
return a.value ? (n = e, t.value = !0, !1) : (await e(), !0);
|
|
484
484
|
}
|
|
485
|
-
async function
|
|
485
|
+
async function c() {
|
|
486
486
|
let e = n;
|
|
487
487
|
n = null, t.value = !1, e && await e();
|
|
488
488
|
}
|
|
@@ -493,8 +493,8 @@ function ze(e) {
|
|
|
493
493
|
shouldBlock: a,
|
|
494
494
|
blockingIssues: i,
|
|
495
495
|
modalOpen: t,
|
|
496
|
-
tryRunSave:
|
|
497
|
-
confirmAndSave:
|
|
496
|
+
tryRunSave: s,
|
|
497
|
+
confirmAndSave: c,
|
|
498
498
|
cancel: l
|
|
499
499
|
};
|
|
500
500
|
}
|
|
@@ -507,42 +507,42 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
507
507
|
issues: {}
|
|
508
508
|
},
|
|
509
509
|
emits: ["cancel", "confirm"],
|
|
510
|
-
setup(
|
|
511
|
-
let
|
|
512
|
-
return (
|
|
510
|
+
setup(t, { emit: n }) {
|
|
511
|
+
let i = n, { t: a } = Q();
|
|
512
|
+
return (n, o) => (e(), x(T, {
|
|
513
513
|
"enter-active-class": "tpl:transition-opacity tpl:duration-150",
|
|
514
514
|
"leave-active-class": "tpl:transition-opacity tpl:duration-150",
|
|
515
515
|
"enter-from-class": "tpl:opacity-0",
|
|
516
516
|
"leave-to-class": "tpl:opacity-0"
|
|
517
517
|
}, {
|
|
518
|
-
default:
|
|
518
|
+
default: O(() => [t.open ? (e(), m("div", {
|
|
519
519
|
key: 0,
|
|
520
520
|
role: "dialog",
|
|
521
521
|
"aria-modal": "true",
|
|
522
|
-
"aria-label":
|
|
522
|
+
"aria-label": C(a).saveGate.title,
|
|
523
523
|
class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
|
|
524
|
-
onClick: o[2] ||=
|
|
525
|
-
}, [
|
|
526
|
-
|
|
524
|
+
onClick: o[2] ||= u((e) => i("cancel"), ["self"])
|
|
525
|
+
}, [f("div", Ve, [
|
|
526
|
+
f("header", He, [E(C(de), {
|
|
527
527
|
size: 18,
|
|
528
528
|
"stroke-width": 2,
|
|
529
529
|
class: "tpl:text-[var(--tpl-warning)]"
|
|
530
|
-
}),
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
key: `${
|
|
530
|
+
}), f("h2", Ue, w(C(a).saveGate.title), 1)]),
|
|
531
|
+
f("p", We, w(C(a).saveGate.body), 1),
|
|
532
|
+
f("ul", Ge, [(e(!0), m(_, null, r(t.issues, (t) => (e(), m("li", {
|
|
533
|
+
key: `${t.ruleId}-${t.blockId ?? "template"}`,
|
|
534
534
|
class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:rounded tpl:px-2 tpl:py-1.5"
|
|
535
|
-
}, [
|
|
536
|
-
|
|
535
|
+
}, [f("span", Ke, w(t.message), 1), f("span", qe, w(t.ruleId), 1)]))), 128))]),
|
|
536
|
+
f("footer", Je, [f("button", {
|
|
537
537
|
type: "button",
|
|
538
538
|
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)]",
|
|
539
|
-
onClick: o[0] ||= (e) =>
|
|
540
|
-
},
|
|
539
|
+
onClick: o[0] ||= (e) => i("cancel")
|
|
540
|
+
}, w(C(a).saveGate.cancel), 1), f("button", {
|
|
541
541
|
type: "button",
|
|
542
542
|
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",
|
|
543
|
-
onClick: o[1] ||= (e) =>
|
|
544
|
-
},
|
|
545
|
-
])], 8, Be)) :
|
|
543
|
+
onClick: o[1] ||= (e) => i("confirm")
|
|
544
|
+
}, w(C(a).saveGate.confirm), 1)])
|
|
545
|
+
])], 8, Be)) : v("", !0)]),
|
|
546
546
|
_: 1
|
|
547
547
|
}));
|
|
548
548
|
}
|
|
@@ -589,91 +589,91 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
589
589
|
isSaving: { type: Boolean }
|
|
590
590
|
},
|
|
591
591
|
emits: ["save"],
|
|
592
|
-
setup(
|
|
593
|
-
let n =
|
|
594
|
-
return (
|
|
595
|
-
|
|
596
|
-
used:
|
|
597
|
-
max:
|
|
592
|
+
setup(t) {
|
|
593
|
+
let n = D(() => import("./CollaboratorBar-Bo8vtPId.js")), r = D(() => import("./SnapshotHistory-DwX2fj6N.js")), i = D(() => import("./AiFeatureMenu-ChlAWywJ.js")), { t: a, format: o } = Q();
|
|
594
|
+
return (l, d) => (e(), m("header", Xe, [
|
|
595
|
+
f("div", Ze, [t.featureFlags.templateLimit.value === null ? v("", !0) : (e(), m("span", Qe, w(C(o)(C(a).header.templatesUsed, {
|
|
596
|
+
used: t.featureFlags.templateCount.value,
|
|
597
|
+
max: t.featureFlags.templateLimit.value
|
|
598
598
|
})), 1))]),
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
viewport:
|
|
602
|
-
onChange:
|
|
599
|
+
f("div", $e, [
|
|
600
|
+
E(q, {
|
|
601
|
+
viewport: t.editor.state.viewport,
|
|
602
|
+
onChange: t.editor.setViewport
|
|
603
603
|
}, null, 8, ["viewport", "onChange"]),
|
|
604
|
-
|
|
605
|
-
"dark-mode":
|
|
606
|
-
onChange:
|
|
604
|
+
E(J, {
|
|
605
|
+
"dark-mode": t.editor.state.darkMode,
|
|
606
|
+
onChange: t.editor.setDarkMode
|
|
607
607
|
}, null, 8, ["dark-mode", "onChange"]),
|
|
608
|
-
|
|
609
|
-
"preview-mode":
|
|
610
|
-
onChange:
|
|
608
|
+
E(oe, {
|
|
609
|
+
"preview-mode": t.editor.state.previewMode,
|
|
610
|
+
onChange: t.editor.setPreviewMode
|
|
611
611
|
}, null, 8, ["preview-mode", "onChange"]),
|
|
612
|
-
|
|
612
|
+
t.collaboration && t.isCollaborationEnabled ? (e(), x(C(n), {
|
|
613
613
|
key: 0,
|
|
614
|
-
collaborators:
|
|
615
|
-
"is-connected":
|
|
616
|
-
}, null, 8, ["collaborators", "is-connected"])) :
|
|
617
|
-
|
|
614
|
+
collaborators: t.collaboration.collaborators.value,
|
|
615
|
+
"is-connected": t.websocket.isConnected.value
|
|
616
|
+
}, null, 8, ["collaborators", "is-connected"])) : v("", !0),
|
|
617
|
+
t.snapshotPreview.snapshotHistoryInstance.value ? (e(), x(C(r), {
|
|
618
618
|
key: 1,
|
|
619
|
-
snapshots:
|
|
620
|
-
"is-loading":
|
|
621
|
-
"is-restoring":
|
|
622
|
-
onLoad:
|
|
623
|
-
onNavigate:
|
|
619
|
+
snapshots: t.snapshotPreview.snapshotHistorySnapshots.value,
|
|
620
|
+
"is-loading": t.snapshotPreview.snapshotHistoryIsLoading.value,
|
|
621
|
+
"is-restoring": t.snapshotPreview.snapshotHistoryIsRestoring.value,
|
|
622
|
+
onLoad: t.snapshotPreview.loadSnapshotHistory,
|
|
623
|
+
onNavigate: t.snapshotPreview.handleSnapshotNavigate
|
|
624
624
|
}, null, 8, [
|
|
625
625
|
"snapshots",
|
|
626
626
|
"is-loading",
|
|
627
627
|
"is-restoring",
|
|
628
628
|
"onLoad",
|
|
629
629
|
"onNavigate"
|
|
630
|
-
])) :
|
|
630
|
+
])) : v("", !0)
|
|
631
631
|
]),
|
|
632
|
-
|
|
633
|
-
|
|
632
|
+
f("div", et, [
|
|
633
|
+
t.featureFlags.saveStatus.value === "error" ? (e(), m("div", {
|
|
634
634
|
key: 0,
|
|
635
635
|
"aria-live": "assertive",
|
|
636
636
|
class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
|
|
637
|
-
"data-tooltip":
|
|
638
|
-
}, [
|
|
637
|
+
"data-tooltip": t.featureFlags.saveErrorMessage.value
|
|
638
|
+
}, [E(C(G), {
|
|
639
639
|
size: 12,
|
|
640
640
|
"stroke-width": 2.5
|
|
641
|
-
}),
|
|
641
|
+
}), s(" " + w(C(a).header.saveFailed), 1)], 8, tt)) : t.featureFlags.saveStatus.value === "saved" ? (e(), m("div", nt, [E(C(W), {
|
|
642
642
|
size: 12,
|
|
643
643
|
"stroke-width": 2.5
|
|
644
|
-
}),
|
|
645
|
-
|
|
644
|
+
}), s(" " + w(C(a).header.saved), 1)])) : t.editor.state.isDirty ? (e(), m("div", rt, [d[4] ||= f("span", { class: "tpl-pulse tpl:size-1.5 tpl:rounded-full tpl:bg-[var(--tpl-primary)]" }, null, -1), s(" " + w(C(a).header.unsaved), 1)])) : v("", !0),
|
|
645
|
+
t.commentsInstance.isEnabled.value && t.featureFlags.hasTemplateSaved.value ? (e(), m("button", {
|
|
646
646
|
key: 3,
|
|
647
|
-
"aria-label":
|
|
648
|
-
"aria-expanded":
|
|
649
|
-
class:
|
|
650
|
-
style:
|
|
651
|
-
backgroundColor:
|
|
652
|
-
color:
|
|
647
|
+
"aria-label": t.commentsInstance.unresolvedCount.value > 0 ? `${C(a).comments.button} (${t.commentsInstance.unresolvedCount.value})` : C(a).comments.button,
|
|
648
|
+
"aria-expanded": t.panelState.commentsOpen.value,
|
|
649
|
+
class: c(C($)),
|
|
650
|
+
style: b({
|
|
651
|
+
backgroundColor: t.panelState.commentsOpen.value ? "var(--tpl-primary)" : "transparent",
|
|
652
|
+
color: t.panelState.commentsOpen.value ? "var(--tpl-bg)" : "var(--tpl-primary)",
|
|
653
653
|
borderColor: "var(--tpl-primary)"
|
|
654
654
|
}),
|
|
655
|
-
onClick:
|
|
655
|
+
onClick: d[0] ||= (e) => t.panelState.commentsOpen.value = !t.panelState.commentsOpen.value
|
|
656
656
|
}, [
|
|
657
|
-
|
|
657
|
+
E(C(Z), {
|
|
658
658
|
size: 16,
|
|
659
659
|
"stroke-width": 2
|
|
660
660
|
}),
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
], 14, it)) :
|
|
664
|
-
|
|
661
|
+
s(" " + w(C(a).comments.button) + " ", 1),
|
|
662
|
+
t.commentsInstance.unresolvedCount.value > 0 && !t.panelState.commentsOpen.value ? (e(), m("span", at, w(t.commentsInstance.unresolvedCount.value), 1)) : v("", !0)
|
|
663
|
+
], 14, it)) : v("", !0),
|
|
664
|
+
t.featureFlags.canUseAiGeneration.value && t.featureFlags.hasTemplateSaved.value ? (e(), m("div", {
|
|
665
665
|
key: 4,
|
|
666
|
-
ref: (
|
|
666
|
+
ref: (e) => t.panelState.aiMenuRef.value = e,
|
|
667
667
|
class: "tpl:relative"
|
|
668
|
-
}, [
|
|
669
|
-
"aria-expanded":
|
|
670
|
-
class:
|
|
671
|
-
onClick:
|
|
672
|
-
}, [
|
|
668
|
+
}, [f("button", {
|
|
669
|
+
"aria-expanded": t.panelState.aiMenuOpen.value,
|
|
670
|
+
class: c(["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", t.panelState.aiButtonActive.value ? "tpl-ai-btn--active" : "tpl-ai-btn--idle"]),
|
|
671
|
+
onClick: d[1] ||= u((...e) => t.panelState.toggleAiMenu && t.panelState.toggleAiMenu(...e), ["stop"])
|
|
672
|
+
}, [E(C(ue), {
|
|
673
673
|
size: 16,
|
|
674
674
|
"stroke-width": 2,
|
|
675
675
|
class: "tpl-ai-btn-icon"
|
|
676
|
-
}),
|
|
676
|
+
}), s(" " + w(C(a).aiChat.button), 1)], 10, ot), E(T, {
|
|
677
677
|
"enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
|
|
678
678
|
"enter-from-class": "tpl:scale-95 tpl:opacity-0",
|
|
679
679
|
"enter-to-class": "tpl:scale-100 tpl:opacity-100",
|
|
@@ -681,51 +681,51 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
681
681
|
"leave-from-class": "tpl:scale-100 tpl:opacity-100",
|
|
682
682
|
"leave-to-class": "tpl:scale-95 tpl:opacity-0"
|
|
683
683
|
}, {
|
|
684
|
-
default:
|
|
685
|
-
"active-feature":
|
|
686
|
-
onSelect:
|
|
687
|
-
}, null, 8, ["active-feature", "onSelect"])])) :
|
|
684
|
+
default: O(() => [t.panelState.aiMenuOpen.value ? (e(), m("div", st, [E(C(i), {
|
|
685
|
+
"active-feature": t.panelState.activeAiFeature.value,
|
|
686
|
+
onSelect: t.panelState.handleAiFeatureSelect
|
|
687
|
+
}, null, 8, ["active-feature", "onSelect"])])) : v("", !0)]),
|
|
688
688
|
_: 1
|
|
689
|
-
})], 512)) :
|
|
690
|
-
|
|
689
|
+
})], 512)) : v("", !0),
|
|
690
|
+
t.testEmail.isEnabled.value && t.featureFlags.canSendTestEmail.value ? (e(), m("button", {
|
|
691
691
|
key: 5,
|
|
692
|
-
class:
|
|
692
|
+
class: c(C($)),
|
|
693
693
|
style: {
|
|
694
694
|
"background-color": "transparent",
|
|
695
695
|
color: "var(--tpl-primary)",
|
|
696
696
|
"border-color": "var(--tpl-primary)"
|
|
697
697
|
},
|
|
698
|
-
disabled:
|
|
699
|
-
onClick:
|
|
700
|
-
}, [
|
|
698
|
+
disabled: t.testEmail.isSending.value || !t.featureFlags.hasTemplateSaved.value,
|
|
699
|
+
onClick: d[2] ||= (e) => t.panelState.testEmailModalOpen.value = !0
|
|
700
|
+
}, [t.testEmail.isSending.value ? (e(), x(C(X), {
|
|
701
701
|
key: 1,
|
|
702
702
|
class: "tpl-spinner",
|
|
703
703
|
size: 16,
|
|
704
704
|
"stroke-width": 2
|
|
705
|
-
})) : (
|
|
705
|
+
})) : (e(), x(C(le), {
|
|
706
706
|
key: 0,
|
|
707
707
|
size: 16,
|
|
708
708
|
"stroke-width": 2
|
|
709
|
-
})),
|
|
710
|
-
|
|
711
|
-
class:
|
|
709
|
+
})), s(" " + w(C(a).testEmail.button), 1)], 10, ct)) : v("", !0),
|
|
710
|
+
f("button", {
|
|
711
|
+
class: c(C($)),
|
|
712
712
|
style: {
|
|
713
713
|
"background-color": "transparent",
|
|
714
714
|
color: "var(--tpl-primary)",
|
|
715
715
|
"border-color": "var(--tpl-primary)"
|
|
716
716
|
},
|
|
717
|
-
disabled:
|
|
718
|
-
onClick:
|
|
719
|
-
}, [
|
|
717
|
+
disabled: t.isSaveDisabled,
|
|
718
|
+
onClick: d[3] ||= (e) => l.$emit("save")
|
|
719
|
+
}, [t.isSaving ? (e(), x(C(X), {
|
|
720
720
|
key: 1,
|
|
721
721
|
class: "tpl-spinner",
|
|
722
722
|
size: 16,
|
|
723
723
|
"stroke-width": 2
|
|
724
|
-
})) : (
|
|
724
|
+
})) : (e(), x(C(Ae), {
|
|
725
725
|
key: 0,
|
|
726
726
|
size: 16,
|
|
727
727
|
"stroke-width": 2
|
|
728
|
-
})),
|
|
728
|
+
})), s(" " + w(t.isSaving ? C(a).header.saving : C(a).header.save), 1)], 10, lt)
|
|
729
729
|
])
|
|
730
730
|
]));
|
|
731
731
|
}
|
|
@@ -751,79 +751,79 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
751
751
|
"send-test-email",
|
|
752
752
|
"module-insert"
|
|
753
753
|
],
|
|
754
|
-
setup(
|
|
755
|
-
let i =
|
|
754
|
+
setup(t, { expose: n, emit: r }) {
|
|
755
|
+
let i = D(() => import("./AiChatSidebar-w5ek3Z76.js")), a = D(() => import("./CommentsSidebar-BQROg36f.js")), s = D(() => import("./DesignReferenceSidebar-CfqpcWX6.js")), c = D(() => import("./TemplateScoringPanel-BIAeCAEP.js")), l = D(() => import("./TestEmailModal-CIlBvWWn.js")), u = D(() => import("./SaveModuleDialog-CSUPmfRP.js")), d = D(() => import("./ModuleBrowserModal-CKhsaPnA.js")), f = D(async () => {
|
|
756
756
|
try {
|
|
757
757
|
return (await import("@templatical/media-library")).MediaLibraryModal;
|
|
758
758
|
} catch {
|
|
759
759
|
throw Error("[Templatical] Cloud media library requires the optional peer dependency '@templatical/media-library'. Please install it.");
|
|
760
760
|
}
|
|
761
|
-
}),
|
|
762
|
-
function
|
|
761
|
+
}), p = r;
|
|
762
|
+
function h(e, t, n) {
|
|
763
763
|
t.history.record(), n.setContent(e), t.conditionPreview.reset();
|
|
764
764
|
}
|
|
765
|
-
function
|
|
766
|
-
|
|
765
|
+
function g(e, t) {
|
|
766
|
+
p("module-insert", e, t);
|
|
767
767
|
}
|
|
768
|
-
let
|
|
769
|
-
function
|
|
770
|
-
|
|
768
|
+
let y = o(null);
|
|
769
|
+
function b(e) {
|
|
770
|
+
y.value?.filterByBlock(e);
|
|
771
771
|
}
|
|
772
|
-
return
|
|
773
|
-
|
|
774
|
-
visible:
|
|
775
|
-
"on-apply": (
|
|
776
|
-
onClose:
|
|
772
|
+
return n({ filterCommentsByBlock: b }), (n, r) => (e(), m(_, null, [
|
|
773
|
+
E(C(i), {
|
|
774
|
+
visible: t.panelState.aiChatOpen.value,
|
|
775
|
+
"on-apply": (e) => h(e, t.core, t.editor),
|
|
776
|
+
onClose: r[0] ||= (e) => t.panelState.aiChatOpen.value = !1
|
|
777
777
|
}, null, 8, ["visible", "on-apply"]),
|
|
778
|
-
|
|
779
|
-
visible:
|
|
780
|
-
onClose:
|
|
778
|
+
E(C(c), {
|
|
779
|
+
visible: t.panelState.scoringPanelOpen.value,
|
|
780
|
+
onClose: r[1] ||= (e) => t.panelState.scoringPanelOpen.value = !1
|
|
781
781
|
}, null, 8, ["visible"]),
|
|
782
|
-
|
|
783
|
-
visible:
|
|
784
|
-
"has-existing-blocks":
|
|
785
|
-
onClose:
|
|
786
|
-
onApply:
|
|
782
|
+
E(C(s), {
|
|
783
|
+
visible: t.panelState.designReferenceOpen.value,
|
|
784
|
+
"has-existing-blocks": t.editor.content.value.blocks.length > 0,
|
|
785
|
+
onClose: r[2] ||= (e) => t.panelState.designReferenceOpen.value = !1,
|
|
786
|
+
onApply: r[3] ||= (e) => h(e, t.core, t.editor)
|
|
787
787
|
}, null, 8, ["visible", "has-existing-blocks"]),
|
|
788
|
-
|
|
788
|
+
E(C(a), {
|
|
789
789
|
ref_key: "commentsSidebar",
|
|
790
|
-
ref:
|
|
791
|
-
visible:
|
|
792
|
-
onClose:
|
|
790
|
+
ref: y,
|
|
791
|
+
visible: t.panelState.commentsOpen.value,
|
|
792
|
+
onClose: r[4] ||= (e) => t.panelState.commentsOpen.value = !1
|
|
793
793
|
}, null, 8, ["visible"]),
|
|
794
|
-
|
|
795
|
-
visible:
|
|
796
|
-
"allowed-emails":
|
|
797
|
-
"is-sending":
|
|
798
|
-
error:
|
|
799
|
-
onSend:
|
|
800
|
-
onClose:
|
|
794
|
+
E(C(l), {
|
|
795
|
+
visible: t.panelState.testEmailModalOpen.value,
|
|
796
|
+
"allowed-emails": t.testEmail.allowedEmails.value,
|
|
797
|
+
"is-sending": t.testEmail.isSending.value,
|
|
798
|
+
error: t.testEmail.error.value,
|
|
799
|
+
onSend: r[5] ||= (e) => p("send-test-email", e),
|
|
800
|
+
onClose: r[6] ||= (e) => t.panelState.testEmailModalOpen.value = !1
|
|
801
801
|
}, null, 8, [
|
|
802
802
|
"visible",
|
|
803
803
|
"allowed-emails",
|
|
804
804
|
"is-sending",
|
|
805
805
|
"error"
|
|
806
806
|
]),
|
|
807
|
-
|
|
807
|
+
t.planConfigInstance.hasFeature("saved_modules") && t.config.modules !== !1 ? (e(), x(C(u), {
|
|
808
808
|
key: 0,
|
|
809
|
-
visible:
|
|
810
|
-
"pre-selected-block-id":
|
|
811
|
-
onClose:
|
|
812
|
-
|
|
809
|
+
visible: t.showSaveModuleDialog,
|
|
810
|
+
"pre-selected-block-id": t.saveModulePreSelectedBlockId,
|
|
811
|
+
onClose: r[7] ||= (e) => {
|
|
812
|
+
p("update:showSaveModuleDialog", !1), p("update:saveModulePreSelectedBlockId", null);
|
|
813
813
|
},
|
|
814
|
-
onSaved:
|
|
815
|
-
}, null, 8, ["visible", "pre-selected-block-id"])) :
|
|
816
|
-
|
|
814
|
+
onSaved: r[8] ||= (e) => t.savedModulesHeadless.loadModules()
|
|
815
|
+
}, null, 8, ["visible", "pre-selected-block-id"])) : v("", !0),
|
|
816
|
+
t.planConfigInstance.hasFeature("saved_modules") && t.config.modules !== !1 ? (e(), x(C(d), {
|
|
817
817
|
key: 1,
|
|
818
|
-
visible:
|
|
819
|
-
onClose:
|
|
820
|
-
onInsert:
|
|
821
|
-
}, null, 8, ["visible"])) :
|
|
822
|
-
|
|
823
|
-
visible:
|
|
824
|
-
accept:
|
|
825
|
-
onSelect:
|
|
826
|
-
onClose:
|
|
818
|
+
visible: t.showModuleBrowserModal,
|
|
819
|
+
onClose: r[9] ||= (e) => p("update:showModuleBrowserModal", !1),
|
|
820
|
+
onInsert: g
|
|
821
|
+
}, null, 8, ["visible"])) : v("", !0),
|
|
822
|
+
E(C(f), {
|
|
823
|
+
visible: t.panelState.mediaLibraryOpen.value,
|
|
824
|
+
accept: t.panelState.mediaLibraryAccept.value,
|
|
825
|
+
onSelect: t.mediaLib.handleMediaSelect,
|
|
826
|
+
onClose: t.mediaLib.handleMediaLibraryClose
|
|
827
827
|
}, null, 8, [
|
|
828
828
|
"visible",
|
|
829
829
|
"accept",
|
|
@@ -838,11 +838,11 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
838
838
|
}, pt = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, mt = { 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)]" }, ht = /* @__PURE__ */ l({
|
|
839
839
|
__name: "CloudLoadingOverlay",
|
|
840
840
|
props: { visible: { type: Boolean } },
|
|
841
|
-
setup(
|
|
842
|
-
return (
|
|
841
|
+
setup(t) {
|
|
842
|
+
return (n, i) => t.visible ? (e(), m("div", ft, [i[1] ||= p("<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), f("div", pt, [f("div", mt, [(e(), m(_, null, r(5, (e) => f("div", {
|
|
843
843
|
key: e,
|
|
844
844
|
class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
|
|
845
|
-
})), 64))]),
|
|
845
|
+
})), 64))]), i[0] ||= p("<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)])])) : v("", !0);
|
|
846
846
|
}
|
|
847
847
|
}), gt = {
|
|
848
848
|
key: 0,
|
|
@@ -855,27 +855,27 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
855
855
|
visible: { type: Boolean }
|
|
856
856
|
},
|
|
857
857
|
emits: ["retry"],
|
|
858
|
-
setup(
|
|
859
|
-
let
|
|
860
|
-
function
|
|
861
|
-
return "isUnauthorized" in e && e.isUnauthorized ?
|
|
858
|
+
setup(t, { emit: n }) {
|
|
859
|
+
let r = n, { t: i } = Q();
|
|
860
|
+
function a(e) {
|
|
861
|
+
return "isUnauthorized" in e && e.isUnauthorized ? i.error.authFailed : "isNotFound" in e && e.isNotFound ? i.error.templateNotFound : i.error.defaultMessage;
|
|
862
862
|
}
|
|
863
|
-
function
|
|
863
|
+
function o(e) {
|
|
864
864
|
return "isNotFound" in e && !!e.isNotFound;
|
|
865
865
|
}
|
|
866
|
-
return (
|
|
867
|
-
|
|
866
|
+
return (n, s) => t.visible && t.error ? (e(), m("div", gt, [
|
|
867
|
+
f("div", _t, [E(C(G), {
|
|
868
868
|
size: 32,
|
|
869
869
|
"stroke-width": 1.5,
|
|
870
870
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
871
871
|
})]),
|
|
872
|
-
|
|
873
|
-
|
|
872
|
+
f("div", vt, [f("h2", yt, w(C(i).error.title), 1), f("p", bt, w(a(t.error)), 1)]),
|
|
873
|
+
o(t.error) ? v("", !0) : (e(), m("button", {
|
|
874
874
|
key: 0,
|
|
875
875
|
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)]",
|
|
876
|
-
onClick:
|
|
877
|
-
},
|
|
878
|
-
])) :
|
|
876
|
+
onClick: s[0] ||= (e) => r("retry")
|
|
877
|
+
}, w(C(i).error.retry), 1))
|
|
878
|
+
])) : v("", !0);
|
|
879
879
|
}
|
|
880
880
|
}), St = {
|
|
881
881
|
key: 0,
|
|
@@ -884,20 +884,20 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
884
884
|
__name: "SnapshotPreviewBanner",
|
|
885
885
|
props: { visible: { type: Boolean } },
|
|
886
886
|
emits: ["cancel", "confirm"],
|
|
887
|
-
setup(
|
|
888
|
-
let
|
|
889
|
-
return (
|
|
887
|
+
setup(t, { emit: n }) {
|
|
888
|
+
let r = n, { t: i } = Q();
|
|
889
|
+
return (n, a) => t.visible ? (e(), m("div", St, [f("div", Ct, [E(C(Y), {
|
|
890
890
|
size: 18,
|
|
891
891
|
"stroke-width": 2,
|
|
892
892
|
class: "tpl:text-[var(--tpl-primary)]"
|
|
893
|
-
}),
|
|
893
|
+
}), f("span", null, w(C(i).snapshotPreview.message), 1)]), f("div", wt, [f("button", {
|
|
894
894
|
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)]",
|
|
895
895
|
style: { "background-color": "transparent" },
|
|
896
|
-
onClick:
|
|
897
|
-
},
|
|
896
|
+
onClick: a[0] ||= (e) => r("cancel")
|
|
897
|
+
}, w(C(i).snapshotPreview.cancel), 1), f("button", {
|
|
898
898
|
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)]",
|
|
899
|
-
onClick:
|
|
900
|
-
},
|
|
899
|
+
onClick: a[1] ||= (e) => r("confirm")
|
|
900
|
+
}, w(C(i).snapshotPreview.restore), 1)])])) : v("", !0);
|
|
901
901
|
}
|
|
902
902
|
}), Et = {
|
|
903
903
|
key: 0,
|
|
@@ -912,9 +912,9 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
912
912
|
}, Dt = /* @__PURE__ */ l({
|
|
913
913
|
__name: "CollabUndoToast",
|
|
914
914
|
props: { visible: { type: Boolean } },
|
|
915
|
-
setup(
|
|
916
|
-
let { t } = H();
|
|
917
|
-
return (
|
|
915
|
+
setup(t) {
|
|
916
|
+
let { t: n } = H();
|
|
917
|
+
return (r, i) => t.visible ? (e(), m("div", Et, w(C(n).history.collabWarning), 1)) : v("", !0);
|
|
918
918
|
}
|
|
919
919
|
}), Ot = ["data-tpl-theme"], kt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, At = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, jt = ["aria-label"], Mt = /* @__PURE__ */ fe(/* @__PURE__ */ l({
|
|
920
920
|
__name: "CloudEditor",
|
|
@@ -925,19 +925,19 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
925
925
|
fontsManager: {}
|
|
926
926
|
},
|
|
927
927
|
emits: ["ready"],
|
|
928
|
-
setup(
|
|
929
|
-
let
|
|
930
|
-
|
|
931
|
-
let
|
|
932
|
-
config:
|
|
933
|
-
translations:
|
|
934
|
-
fontsManager:
|
|
935
|
-
emit:
|
|
936
|
-
getCommentsSidebar: () =>
|
|
937
|
-
}), { isInitializing:
|
|
928
|
+
setup(n, { expose: r, emit: a }) {
|
|
929
|
+
let l = n;
|
|
930
|
+
h(L, l.cloudTranslations);
|
|
931
|
+
let u = a, d = o(null), p = Ie({
|
|
932
|
+
config: l.config,
|
|
933
|
+
translations: l.translations,
|
|
934
|
+
fontsManager: l.fontsManager,
|
|
935
|
+
emit: u,
|
|
936
|
+
getCommentsSidebar: () => d.value ? { filterByBlock: d.value.filterCommentsByBlock } : null
|
|
937
|
+
}), { isInitializing: _, isAuthReady: S, initError: D, planConfigInstance: k, websocket: A, collaboration: M, isCollaborationEnabled: ee, editor: N, core: P, featureFlags: F, mediaLib: te, exporter: ne, testEmail: I, commentsInstance: R, savedModulesHeadless: z, panelState: B, snapshotPreview: V, collabWarning: H, showSaveModuleDialog: U, showModuleBrowserModal: W, saveModulePreSelectedBlockId: G, setThemeOverrides: re, setUiTheme: q } = p;
|
|
938
938
|
async function J(e) {
|
|
939
939
|
try {
|
|
940
|
-
await
|
|
940
|
+
await I.sendTestEmail(e), B.testEmailModalOpen.value = !1;
|
|
941
941
|
} catch {}
|
|
942
942
|
}
|
|
943
943
|
function oe(e, t) {
|
|
@@ -948,27 +948,27 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
948
948
|
W.value = !1;
|
|
949
949
|
}
|
|
950
950
|
let Y = Re({
|
|
951
|
-
config:
|
|
951
|
+
config: l.config,
|
|
952
952
|
editor: N,
|
|
953
953
|
websocket: A,
|
|
954
954
|
planConfigInstance: k,
|
|
955
955
|
snapshotPreview: V,
|
|
956
956
|
core: P,
|
|
957
|
-
exporter:
|
|
957
|
+
exporter: ne,
|
|
958
958
|
featureFlags: F,
|
|
959
|
-
isDestroyed:
|
|
959
|
+
isDestroyed: p.isDestroyed
|
|
960
960
|
}), X = ze({
|
|
961
|
-
issues: P.accessibilityLint ? P.accessibilityLint.issues :
|
|
961
|
+
issues: P.accessibilityLint ? P.accessibilityLint.issues : o([]),
|
|
962
962
|
planConfig: k.config
|
|
963
963
|
});
|
|
964
964
|
async function Z() {
|
|
965
|
-
await X.tryRunSave(() => Y.saveTemplate().catch((e) =>
|
|
965
|
+
await X.tryRunSave(() => Y.saveTemplate().catch((e) => l.config.onError?.(e)));
|
|
966
966
|
}
|
|
967
|
-
return
|
|
968
|
-
|
|
969
|
-
}),
|
|
970
|
-
|
|
971
|
-
}),
|
|
967
|
+
return p.onSaveHook.value = Z, i(() => {
|
|
968
|
+
p.initialize();
|
|
969
|
+
}), g(() => {
|
|
970
|
+
p.destroy();
|
|
971
|
+
}), r({
|
|
972
972
|
getContent: () => N.content.value,
|
|
973
973
|
setContent: (e) => N.setContent(e),
|
|
974
974
|
setTheme: q,
|
|
@@ -976,13 +976,13 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
976
976
|
create: Y.createTemplate,
|
|
977
977
|
load: Y.loadTemplate,
|
|
978
978
|
save: Y.saveTemplate,
|
|
979
|
-
sendTestEmail:
|
|
980
|
-
}), (
|
|
981
|
-
class:
|
|
982
|
-
"data-tpl-theme":
|
|
983
|
-
style:
|
|
979
|
+
sendTestEmail: I.sendTestEmail
|
|
980
|
+
}), (r, i) => (e(), m("div", {
|
|
981
|
+
class: c(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": C(N).state.darkMode }]),
|
|
982
|
+
"data-tpl-theme": C(P).resolvedTheme.value,
|
|
983
|
+
style: b(C(P).themeStyles.value)
|
|
984
984
|
}, [
|
|
985
|
-
|
|
985
|
+
E(T, {
|
|
986
986
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
987
987
|
"enter-from-class": "tpl:opacity-100",
|
|
988
988
|
"enter-to-class": "tpl:opacity-100",
|
|
@@ -990,10 +990,10 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
990
990
|
"leave-from-class": "tpl:opacity-100",
|
|
991
991
|
"leave-to-class": "tpl:opacity-0"
|
|
992
992
|
}, {
|
|
993
|
-
default:
|
|
993
|
+
default: O(() => [E(ht, { visible: C(_) || C(N).state.isLoading }, null, 8, ["visible"])]),
|
|
994
994
|
_: 1
|
|
995
995
|
}),
|
|
996
|
-
|
|
996
|
+
E(T, {
|
|
997
997
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
998
998
|
"enter-from-class": "tpl:opacity-0",
|
|
999
999
|
"enter-to-class": "tpl:opacity-100",
|
|
@@ -1001,10 +1001,10 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1001
1001
|
"leave-from-class": "tpl:opacity-100",
|
|
1002
1002
|
"leave-to-class": "tpl:opacity-0"
|
|
1003
1003
|
}, {
|
|
1004
|
-
default:
|
|
1005
|
-
error:
|
|
1006
|
-
visible: !!
|
|
1007
|
-
onRetry:
|
|
1004
|
+
default: O(() => [E(xt, {
|
|
1005
|
+
error: C(D),
|
|
1006
|
+
visible: !!C(D) && !C(_),
|
|
1007
|
+
onRetry: C(p).initialize
|
|
1008
1008
|
}, null, 8, [
|
|
1009
1009
|
"error",
|
|
1010
1010
|
"visible",
|
|
@@ -1012,19 +1012,19 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1012
1012
|
])]),
|
|
1013
1013
|
_: 1
|
|
1014
1014
|
}),
|
|
1015
|
-
|
|
1016
|
-
editor:
|
|
1017
|
-
core:
|
|
1018
|
-
"feature-flags":
|
|
1019
|
-
"panel-state":
|
|
1020
|
-
"snapshot-preview":
|
|
1021
|
-
"comments-instance":
|
|
1022
|
-
"test-email":
|
|
1023
|
-
websocket:
|
|
1024
|
-
collaboration:
|
|
1025
|
-
"is-collaboration-enabled":
|
|
1026
|
-
"is-saving":
|
|
1027
|
-
"is-save-disabled":
|
|
1015
|
+
E(ut, {
|
|
1016
|
+
editor: C(N),
|
|
1017
|
+
core: C(P),
|
|
1018
|
+
"feature-flags": C(F),
|
|
1019
|
+
"panel-state": C(B),
|
|
1020
|
+
"snapshot-preview": C(V),
|
|
1021
|
+
"comments-instance": C(R),
|
|
1022
|
+
"test-email": C(I),
|
|
1023
|
+
websocket: C(A),
|
|
1024
|
+
collaboration: C(M),
|
|
1025
|
+
"is-collaboration-enabled": C(ee),
|
|
1026
|
+
"is-saving": C(N).state.isSaving || C(F).isSaveExporting.value,
|
|
1027
|
+
"is-save-disabled": C(N).state.isSaving || C(F).isSaveExporting.value || !C(N).state.isDirty,
|
|
1028
1028
|
onSave: Z
|
|
1029
1029
|
}, null, 8, [
|
|
1030
1030
|
"editor",
|
|
@@ -1040,27 +1040,27 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1040
1040
|
"is-saving",
|
|
1041
1041
|
"is-save-disabled"
|
|
1042
1042
|
]),
|
|
1043
|
-
|
|
1044
|
-
open:
|
|
1045
|
-
issues:
|
|
1046
|
-
onCancel:
|
|
1047
|
-
onConfirm:
|
|
1043
|
+
E(Ye, {
|
|
1044
|
+
open: C(X).modalOpen.value,
|
|
1045
|
+
issues: C(X).blockingIssues.value,
|
|
1046
|
+
onCancel: C(X).cancel,
|
|
1047
|
+
onConfirm: C(X).confirmAndSave
|
|
1048
1048
|
}, null, 8, [
|
|
1049
1049
|
"open",
|
|
1050
1050
|
"issues",
|
|
1051
1051
|
"onCancel",
|
|
1052
1052
|
"onConfirm"
|
|
1053
1053
|
]),
|
|
1054
|
-
|
|
1055
|
-
visible:
|
|
1056
|
-
onCancel:
|
|
1057
|
-
onConfirm:
|
|
1054
|
+
E(Tt, {
|
|
1055
|
+
visible: C(V).isPreviewingSnapshot.value,
|
|
1056
|
+
onCancel: C(V).cancelPreview,
|
|
1057
|
+
onConfirm: C(V).confirmRestoreSnapshot
|
|
1058
1058
|
}, null, 8, [
|
|
1059
1059
|
"visible",
|
|
1060
1060
|
"onCancel",
|
|
1061
1061
|
"onConfirm"
|
|
1062
1062
|
]),
|
|
1063
|
-
|
|
1063
|
+
E(T, {
|
|
1064
1064
|
"enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
|
|
1065
1065
|
"enter-from-class": "tpl:translate-y-[-8px] tpl:opacity-0",
|
|
1066
1066
|
"enter-to-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
@@ -1068,18 +1068,18 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1068
1068
|
"leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
1069
1069
|
"leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
|
|
1070
1070
|
}, {
|
|
1071
|
-
default:
|
|
1071
|
+
default: O(() => [E(Dt, { visible: C(H).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
|
|
1072
1072
|
_: 1
|
|
1073
1073
|
}),
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
class:
|
|
1074
|
+
t(E(ae, null, null, 512), [[y, !C(N).state.previewMode]]),
|
|
1075
|
+
f("div", {
|
|
1076
|
+
class: c(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [C(N).state.previewMode ? "tpl:left-0 tpl:right-0" : C(B).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", C(V).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
|
|
1077
1077
|
style: {
|
|
1078
1078
|
transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
|
|
1079
1079
|
"background-color": "var(--tpl-canvas-bg)"
|
|
1080
1080
|
}
|
|
1081
|
-
}, [
|
|
1082
|
-
default:
|
|
1081
|
+
}, [f("div", kt, [E(T, { name: "tpl-restore-btn" }, {
|
|
1082
|
+
default: O(() => [C(P).conditionPreview.hasHiddenBlocks.value ? (e(), m("button", {
|
|
1083
1083
|
key: 0,
|
|
1084
1084
|
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",
|
|
1085
1085
|
style: {
|
|
@@ -1088,22 +1088,22 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1088
1088
|
"border-color": "var(--tpl-warning)",
|
|
1089
1089
|
"backdrop-filter": "blur(8px)"
|
|
1090
1090
|
},
|
|
1091
|
-
onClick:
|
|
1092
|
-
}, [
|
|
1091
|
+
onClick: i[0] ||= (e) => C(P).conditionPreview.reset()
|
|
1092
|
+
}, [E(C(ie), {
|
|
1093
1093
|
size: 13,
|
|
1094
1094
|
"stroke-width": 2
|
|
1095
|
-
}),
|
|
1095
|
+
}), s(" " + w(C(P).t.blockSettings.restoreHiddenBlocks), 1)])) : v("", !0)]),
|
|
1096
1096
|
_: 1
|
|
1097
|
-
})]),
|
|
1098
|
-
viewport:
|
|
1099
|
-
content:
|
|
1100
|
-
"selected-block-id":
|
|
1101
|
-
"dark-mode":
|
|
1102
|
-
"preview-mode":
|
|
1103
|
-
"locked-blocks":
|
|
1104
|
-
onSelectBlock:
|
|
1105
|
-
onOpenAiChat:
|
|
1106
|
-
onOpenDesignReference:
|
|
1097
|
+
})]), f("main", At, [E(se, {
|
|
1098
|
+
viewport: C(N).state.viewport,
|
|
1099
|
+
content: C(N).content.value,
|
|
1100
|
+
"selected-block-id": C(N).state.selectedBlockId,
|
|
1101
|
+
"dark-mode": C(N).state.darkMode,
|
|
1102
|
+
"preview-mode": C(N).state.previewMode,
|
|
1103
|
+
"locked-blocks": C(M)?.lockedBlocks.value ?? void 0,
|
|
1104
|
+
onSelectBlock: C(N).selectBlock,
|
|
1105
|
+
onOpenAiChat: i[1] ||= (e) => C(B).aiChatOpen.value = !0,
|
|
1106
|
+
onOpenDesignReference: i[2] ||= (e) => C(B).designReferenceOpen.value = !0
|
|
1107
1107
|
}, null, 8, [
|
|
1108
1108
|
"viewport",
|
|
1109
1109
|
"content",
|
|
@@ -1113,49 +1113,49 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1113
1113
|
"locked-blocks",
|
|
1114
1114
|
"onSelectBlock"
|
|
1115
1115
|
])])], 2),
|
|
1116
|
-
|
|
1116
|
+
n.config.branding !== !1 && !C(F).isWhiteLabeled.value ? (e(), x(ce, {
|
|
1117
1117
|
key: 0,
|
|
1118
|
-
"position-class": [
|
|
1119
|
-
}, null, 8, ["position-class"])) :
|
|
1120
|
-
|
|
1118
|
+
"position-class": [C(N).state.previewMode ? "tpl:left-0 tpl:right-0" : C(B).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
|
|
1119
|
+
}, null, 8, ["position-class"])) : v("", !0),
|
|
1120
|
+
f("div", {
|
|
1121
1121
|
class: "tpl-sr-only",
|
|
1122
1122
|
role: "status",
|
|
1123
1123
|
"aria-live": "polite",
|
|
1124
1124
|
"aria-atomic": "true",
|
|
1125
|
-
"aria-label":
|
|
1126
|
-
},
|
|
1127
|
-
|
|
1128
|
-
"selected-block":
|
|
1129
|
-
settings:
|
|
1130
|
-
"shifted-left":
|
|
1131
|
-
onUpdateBlock:
|
|
1132
|
-
onDeleteBlock:
|
|
1133
|
-
onDuplicateBlock:
|
|
1134
|
-
onUpdateSettings:
|
|
1125
|
+
"aria-label": C(P).t.landmarks.reorderAnnouncements
|
|
1126
|
+
}, w(C(P).keyboardReorder.announcement.value), 9, jt),
|
|
1127
|
+
t(E(K, {
|
|
1128
|
+
"selected-block": C(N).selectedBlock.value,
|
|
1129
|
+
settings: C(N).content.value.settings,
|
|
1130
|
+
"shifted-left": C(B).rightPanelOpen.value,
|
|
1131
|
+
onUpdateBlock: i[3] ||= (e) => C(N).updateBlock(C(N).selectedBlock.value.id, e),
|
|
1132
|
+
onDeleteBlock: i[4] ||= (e) => C(P).blockActions.deleteBlock(C(N).selectedBlock.value.id),
|
|
1133
|
+
onDuplicateBlock: i[5] ||= (e) => C(P).blockActions.duplicateBlock(C(N).selectedBlock.value),
|
|
1134
|
+
onUpdateSettings: C(N).updateSettings
|
|
1135
1135
|
}, null, 8, [
|
|
1136
1136
|
"selected-block",
|
|
1137
1137
|
"settings",
|
|
1138
1138
|
"shifted-left",
|
|
1139
1139
|
"onUpdateSettings"
|
|
1140
|
-
]), [[
|
|
1141
|
-
!
|
|
1140
|
+
]), [[y, !C(N).state.previewMode]]),
|
|
1141
|
+
!C(_) && C(S) ? (e(), x(dt, {
|
|
1142
1142
|
key: 1,
|
|
1143
1143
|
ref_key: "cloudPanelsRef",
|
|
1144
|
-
ref:
|
|
1145
|
-
config:
|
|
1146
|
-
editor:
|
|
1147
|
-
core:
|
|
1148
|
-
"panel-state":
|
|
1149
|
-
"plan-config-instance":
|
|
1150
|
-
"test-email":
|
|
1151
|
-
"media-lib":
|
|
1152
|
-
"saved-modules-headless":
|
|
1153
|
-
"show-save-module-dialog":
|
|
1154
|
-
"save-module-pre-selected-block-id":
|
|
1155
|
-
"show-module-browser-modal":
|
|
1156
|
-
"onUpdate:showSaveModuleDialog":
|
|
1157
|
-
"onUpdate:saveModulePreSelectedBlockId":
|
|
1158
|
-
"onUpdate:showModuleBrowserModal":
|
|
1144
|
+
ref: d,
|
|
1145
|
+
config: l.config,
|
|
1146
|
+
editor: C(N),
|
|
1147
|
+
core: C(P),
|
|
1148
|
+
"panel-state": C(B),
|
|
1149
|
+
"plan-config-instance": C(k),
|
|
1150
|
+
"test-email": C(I),
|
|
1151
|
+
"media-lib": C(te),
|
|
1152
|
+
"saved-modules-headless": C(z),
|
|
1153
|
+
"show-save-module-dialog": C(U),
|
|
1154
|
+
"save-module-pre-selected-block-id": C(G),
|
|
1155
|
+
"show-module-browser-modal": C(W),
|
|
1156
|
+
"onUpdate:showSaveModuleDialog": i[6] ||= (e) => U.value = e,
|
|
1157
|
+
"onUpdate:saveModulePreSelectedBlockId": i[7] ||= (e) => G.value = e,
|
|
1158
|
+
"onUpdate:showModuleBrowserModal": i[8] ||= (e) => W.value = e,
|
|
1159
1159
|
onSendTestEmail: J,
|
|
1160
1160
|
onModuleInsert: oe
|
|
1161
1161
|
}, null, 8, [
|
|
@@ -1170,7 +1170,7 @@ var Be = ["aria-label"], Ve = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1170
1170
|
"show-save-module-dialog",
|
|
1171
1171
|
"save-module-pre-selected-block-id",
|
|
1172
1172
|
"show-module-browser-modal"
|
|
1173
|
-
])) :
|
|
1173
|
+
])) : v("", !0)
|
|
1174
1174
|
], 14, Ot));
|
|
1175
1175
|
}
|
|
1176
1176
|
}), [["__scopeId", "data-v-b332971f"]]);
|