@templatical/editor 0.9.1 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AiChatSidebar-BUKj9n02.js → AiChatSidebar-Dz5bH1z3.js} +13 -13
- package/dist/{AiFeatureMenu-Co14YVJt.js → AiFeatureMenu-D2Xn0jFx.js} +7 -7
- package/dist/{BlockIssueBadge-DThKKeub.js → BlockIssueBadge-CnqD1cGo.js} +5 -5
- package/dist/{CloudEditor-DHB1FoQD.js → CloudEditor-BizZwsfD.js} +237 -233
- package/dist/{CollaboratorBar-Bc6q0gB9.js → CollaboratorBar-Bn2JDu6l.js} +4 -4
- package/dist/{CommentsSidebar-DiH4R4F0.js → CommentsSidebar-BAG6rdVC.js} +12 -12
- package/dist/{CountdownBlock-BTPefclD.js → CountdownBlock-B_Hr9Bm9.js} +3 -3
- package/dist/{CountdownToolbar-Dvr2icg-.js → CountdownToolbar-DaqDLKLk.js} +3 -3
- package/dist/{DesignReferenceSidebar-BP32MgpS.js → DesignReferenceSidebar-I9LWjvrj.js} +9 -9
- package/dist/{IssuesPanel-B1LT91IX.js → IssuesPanel-B32Ifp4x.js} +8 -8
- package/dist/{LoadingTrack-xCOLUR3o.js → LoadingTrack-UTqOUN4O.js} +1 -1
- package/dist/{ModuleBrowserModal-CWegFoOA.js → ModuleBrowserModal-DodRped1.js} +10 -10
- package/dist/{ModulePreviewCanvas-D9WUSSRT.js → ModulePreviewCanvas-DhcnddJF.js} +3 -3
- package/dist/{NumberWithSuffix-CxUBW_V2.js → NumberWithSuffix-DB7GyyCI.js} +3 -3
- package/dist/{ParagraphEditor-DrAz2yot.js → ParagraphEditor-pJA9BHAL.js} +26 -26
- package/dist/{RichTextEditorContent-gR169m1-.js → RichTextEditorContent-dTGSUff_.js} +6 -6
- package/dist/{SaveModuleDialog-DWidA0c9.js → SaveModuleDialog-D634e99d.js} +7 -7
- package/dist/{SnapshotHistory-CIo2Jaw-.js → SnapshotHistory-m_nGAHlb.js} +9 -9
- package/dist/{TemplateScoringPanel-seBvvn8O.js → TemplateScoringPanel-BOQh9neV.js} +14 -14
- package/dist/{TestEmailModal-BuCuWp3N.js → TestEmailModal-DOcwoKkc.js} +5 -5
- package/dist/{TitleEditor-BmW0uMl7.js → TitleEditor-t6JMWamY.js} +12 -12
- package/dist/{TplModal-YFpBaiLj.js → TplModal-BAtbfDB0.js} +4 -4
- package/dist/{blockTypeIcons-DCkHXPhx.js → blockTypeIcons-C4lXx3Au.js} +2 -2
- package/dist/bundle-stats.json +6 -6
- package/dist/cdn/chunks/{AiFeatureMenu-Dayzk2H7.js → AiFeatureMenu-BeOyHAoZ.js} +3 -3
- package/dist/cdn/chunks/{AiFeatureMenu-Dayzk2H7.js.map → AiFeatureMenu-BeOyHAoZ.js.map} +1 -1
- package/dist/cdn/chunks/{BlockIssueBadge-D_US2wqo.js → BlockIssueBadge-C6YilQdl.js} +5 -5
- package/dist/cdn/chunks/{BlockIssueBadge-D_US2wqo.js.map → BlockIssueBadge-C6YilQdl.js.map} +1 -1
- package/dist/cdn/chunks/{CloudEditor-CrZk-OwQ.js → CloudEditor-DEA37rdW.js} +178 -174
- package/dist/cdn/chunks/CloudEditor-DEA37rdW.js.map +1 -0
- package/dist/cdn/chunks/{CollaboratorBar-C4CFs5EJ.js → CollaboratorBar-CKW7jOW4.js} +4 -4
- package/dist/cdn/chunks/{CollaboratorBar-C4CFs5EJ.js.map → CollaboratorBar-CKW7jOW4.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownBlock-D6lCXhZA.js → CountdownBlock-DU9ga9Ki.js} +3 -3
- package/dist/cdn/chunks/{CountdownBlock-D6lCXhZA.js.map → CountdownBlock-DU9ga9Ki.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownToolbar-BsGUxoRv.js → CountdownToolbar-BHWsxth7.js} +4 -4
- package/dist/cdn/chunks/{CountdownToolbar-BsGUxoRv.js.map → CountdownToolbar-BHWsxth7.js.map} +1 -1
- package/dist/cdn/chunks/{IssuesPanel-DeHTmRDz.js → IssuesPanel-BkYhij39.js} +9 -9
- package/dist/cdn/chunks/{IssuesPanel-DeHTmRDz.js.map → IssuesPanel-BkYhij39.js.map} +1 -1
- package/dist/cdn/chunks/{ModuleBrowserModal-Cgjz4xAz.js → ModuleBrowserModal-D51w942J.js} +9 -9
- package/dist/cdn/chunks/{ModuleBrowserModal-Cgjz4xAz.js.map → ModuleBrowserModal-D51w942J.js.map} +1 -1
- package/dist/cdn/chunks/{ModulePreviewCanvas-CeS9PsAA.js → ModulePreviewCanvas-BqTqcKHS.js} +3 -3
- package/dist/cdn/chunks/{ModulePreviewCanvas-CeS9PsAA.js.map → ModulePreviewCanvas-BqTqcKHS.js.map} +1 -1
- package/dist/cdn/chunks/{NumberWithSuffix-Bp-idLCc.js → NumberWithSuffix-DuUcF2zG.js} +3 -3
- package/dist/cdn/chunks/{NumberWithSuffix-Bp-idLCc.js.map → NumberWithSuffix-DuUcF2zG.js.map} +1 -1
- package/dist/cdn/chunks/{ParagraphEditor-fM9aFu8T.js → ParagraphEditor-Bqjn3ZNm.js} +45 -45
- package/dist/cdn/chunks/{ParagraphEditor-fM9aFu8T.js.map → ParagraphEditor-Bqjn3ZNm.js.map} +1 -1
- package/dist/cdn/chunks/{RichTextEditorContent-DwNPE5H5.js → RichTextEditorContent-mIkkb5EK.js} +4 -4
- package/dist/cdn/chunks/{RichTextEditorContent-DwNPE5H5.js.map → RichTextEditorContent-mIkkb5EK.js.map} +1 -1
- package/dist/cdn/chunks/{SaveModuleDialog-BrtDXzIz.js → SaveModuleDialog-Felfmkcj.js} +5 -5
- package/dist/cdn/chunks/{SaveModuleDialog-BrtDXzIz.js.map → SaveModuleDialog-Felfmkcj.js.map} +1 -1
- package/dist/cdn/chunks/{TitleEditor-D0rSnye0.js → TitleEditor-Dcldr8D6.js} +12 -12
- package/dist/cdn/chunks/{TitleEditor-D0rSnye0.js.map → TitleEditor-Dcldr8D6.js.map} +1 -1
- package/dist/cdn/chunks/blockTypeIcons-D05Wqf5u.js +22 -0
- package/dist/cdn/chunks/{blockTypeIcons-YOEe5mDE.js.map → blockTypeIcons-D05Wqf5u.js.map} +1 -1
- package/dist/{de-CATfXDKV.js → cdn/chunks/de-DIAGP7yH.js} +2 -6
- package/dist/cdn/chunks/de-DIAGP7yH.js.map +1 -0
- package/dist/cdn/chunks/{draggable-BwWMFq33.js → draggable-J_1CPXYc.js} +1254 -1253
- package/dist/cdn/chunks/draggable-J_1CPXYc.js.map +1 -0
- package/dist/{en-CwCAgYL5.js → cdn/chunks/en-nqIW8Q9W.js} +2 -6
- package/dist/cdn/chunks/en-nqIW8Q9W.js.map +1 -0
- package/dist/cdn/chunks/{extensions-GYsbQFPr.js → extensions-CNmpC18A.js} +127 -124
- package/dist/cdn/chunks/{extensions-GYsbQFPr.js.map → extensions-CNmpC18A.js.map} +1 -1
- package/dist/cdn/chunks/{features-D-2kVhHY.js → features-_ar9QbVv.js} +1006 -979
- package/dist/cdn/chunks/features-_ar9QbVv.js.map +1 -0
- package/dist/cdn/chunks/{icons-fZoyKV_s.js → icons-CnwCLJX-.js} +19 -33
- package/dist/cdn/chunks/icons-CnwCLJX-.js.map +1 -0
- package/dist/cdn/chunks/{media-library-CO2WOETY.js → media-library-9jyt7Bf9.js} +83 -79
- package/dist/cdn/chunks/media-library-9jyt7Bf9.js.map +1 -0
- package/dist/{pt-BR-D3Mg7AKe.js → cdn/chunks/pt-BR-DCNnLLx9.js} +2 -6
- package/dist/cdn/chunks/pt-BR-DCNnLLx9.js.map +1 -0
- package/dist/cdn/chunks/{quality-BxPiS-wv.js → quality-CO9mj_RH.js} +494 -484
- package/dist/cdn/chunks/quality-CO9mj_RH.js.map +1 -0
- package/dist/cdn/chunks/{renderer-CfHPFI5v.js → renderer-m6XTCWCL.js} +135 -117
- package/dist/cdn/chunks/renderer-m6XTCWCL.js.map +1 -0
- package/dist/cdn/chunks/{src-ftxPuuQh.js → src-DfMSYqvE.js} +9 -9
- package/dist/cdn/chunks/{src-ftxPuuQh.js.map → src-DfMSYqvE.js.map} +1 -1
- package/dist/cdn/chunks/{styles-CVUvPdKD.js → styles-1uFWdD5T.js} +1045 -1074
- package/dist/cdn/chunks/styles-1uFWdD5T.js.map +1 -0
- package/dist/cdn/chunks/{tiptap-BBbH3IT9.js → tiptap-CJbIm_hE.js} +5 -5
- package/dist/cdn/chunks/{tiptap-BBbH3IT9.js.map → tiptap-CJbIm_hE.js.map} +1 -1
- package/dist/cdn/editor.css +1 -1
- package/dist/cdn/editor.js +109 -100
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{check-ChQyfxJ3.js → check-Bs6_uQpm.js} +1 -1
- package/dist/{chevron-down-DJjo0jSV.js → chevron-down-so1rnGwF.js} +1 -1
- package/dist/{circle-alert-CPH6l3Lc.js → circle-alert-CrKv0AuW.js} +1 -1
- package/dist/{clock-DHl_BIkU.js → clock-Cpx6GYpa.js} +1 -1
- package/dist/{cloud-VxYMtfXC.js → cloud-bHhCNRZa.js} +80 -74
- package/dist/{createLucideIcon-XgXOJ05E.js → createLucideIcon-DFBxEm5K.js} +3 -3
- package/dist/{cdn/chunks/de-CATfXDKV.js → de-DIAGP7yH.js} +0 -8
- package/dist/{dist-C0jo8wtG.js → dist-0RguD1vS.js} +1 -1
- package/dist/{dist-CNLAS2v2.js → dist-2-A7SaKm.js} +3 -3
- package/dist/{dist-UK-lbEBc.js → dist-74n2Mqc6.js} +1 -1
- package/dist/{dist-BzuC8o3y.js → dist-B3CcePtK.js} +3 -3
- package/dist/{dist-D8C6jIXM.js → dist-BejBMbBX.js} +3 -3
- package/dist/{dist-CIV3Brg-.js → dist-BufRk8ZY.js} +4 -6
- package/dist/{dist-DILjuzSv.js → dist-Bvje_Tqb.js} +1 -1
- package/dist/{dist-BDgf2G-V.js → dist-BxHa6kIT.js} +3 -3
- package/dist/{dist-CUpJmrjt.js → dist-CIK3BYgh.js} +1 -1
- package/dist/{dist-C8wMh_gi.js → dist-CMkZaqX1.js} +1 -1
- package/dist/{dist-BxP6TB0l.js → dist-CoaWXQ7N.js} +1 -1
- package/dist/{dist-D5lmdi1F.js → dist-D1YvgM6p.js} +1 -1
- package/dist/{dist-DYO-w_Jf.js → dist-DJ5YJLXn.js} +1 -1
- package/dist/{dist-DXaxGLsw.js → dist-DwEpKyry.js} +1 -1
- package/dist/{cdn/chunks/en-CwCAgYL5.js → en-nqIW8Q9W.js} +0 -8
- package/dist/{extensions-Mj2-D8uK.js → extensions-C810eSzv.js} +107 -104
- package/dist/{image-up-CPBCOMit.js → image-up-kMLE5GsI.js} +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/{info-DIY9mguM.js → info-xqRxLfNz.js} +1 -1
- package/dist/keys-BoYBr3PU.js +10 -0
- package/dist/{list-checks-CSCyu3fH.js → list-checks-C81htkBJ.js} +1 -1
- package/dist/{loader-circle-Rz_4vJLH.js → loader-circle-C6cZPIum.js} +1 -1
- package/dist/{message-circle-D-umK_MU.js → message-circle-dqOBRe07.js} +1 -1
- package/dist/{cdn/chunks/pt-BR-D3Mg7AKe.js → pt-BR-DCNnLLx9.js} +0 -8
- package/dist/{refresh-cw-CvWF4jfR.js → refresh-cw-DCjNd6o0.js} +1 -1
- package/dist/{scan-line-wanvAFDr.js → scan-line-DXz0nZVJ.js} +1 -1
- package/dist/{send-BhbhbIFT.js → send-C4uH_WaI.js} +1 -1
- package/dist/{shield-check-CXPPMWth.js → shield-check-B3U68ssA.js} +1 -1
- package/dist/{sparkles-CrUN0KWY.js → sparkles-CsDweGUy.js} +1 -1
- package/dist/style.css +1 -1
- package/dist/{styles-CxwIlb7Y.js → styles-CBlNpqL9.js} +1031 -1074
- package/dist/templatical-editor.js +116 -107
- package/dist/{text-align-end-Bkq8oBrD.js → text-align-start-BkKQePFp.js} +11 -11
- package/dist/{trash-2-BpY5BCLT.js → trash-2-BIOkaEz1.js} +1 -1
- package/dist/{triangle-alert-MwJBKR2e.js → triangle-alert-Bbgu6uUG.js} +1 -1
- package/dist/{useAliveFlag-BLyG8L4d.js → useAliveFlag-Bc99FWyR.js} +1 -1
- package/dist/{useCloudI18n-DKWJg6rJ.js → useCloudI18n-DiwsLi6z.js} +2 -2
- package/dist/{useEditorCore-CEkf_VWX.js → useEditorCore-7c1QpPlw.js} +717 -694
- package/dist/{useI18n-Besvmtxy.js → useI18n-DskZMfRJ.js} +2 -2
- package/dist/{useMergeTag-WNzaCpXR.js → useMergeTag-Co4xYwG6.js} +4 -4
- package/dist/usePopoverRoot-DYH_gX8o.js +8 -0
- package/dist/{vue.runtime.esm-bundler-BDSGA5hA.js → vue.runtime.esm-bundler-D0Hg03Ub.js} +1289 -1288
- package/dist/{x-rcnxRG8Y.js → x-DWU6NCuE.js} +1 -1
- package/package.json +10 -10
- package/dist/cdn/chunks/CloudEditor-CrZk-OwQ.js.map +0 -1
- package/dist/cdn/chunks/blockTypeIcons-YOEe5mDE.js +0 -22
- package/dist/cdn/chunks/de-CATfXDKV.js.map +0 -1
- package/dist/cdn/chunks/draggable-BwWMFq33.js.map +0 -1
- package/dist/cdn/chunks/en-CwCAgYL5.js.map +0 -1
- package/dist/cdn/chunks/features-D-2kVhHY.js.map +0 -1
- package/dist/cdn/chunks/icons-fZoyKV_s.js.map +0 -1
- package/dist/cdn/chunks/media-library-CO2WOETY.js.map +0 -1
- package/dist/cdn/chunks/pt-BR-D3Mg7AKe.js.map +0 -1
- package/dist/cdn/chunks/quality-BxPiS-wv.js.map +0 -1
- package/dist/cdn/chunks/renderer-CfHPFI5v.js.map +0 -1
- package/dist/cdn/chunks/styles-CVUvPdKD.js.map +0 -1
- package/dist/keys-BiQlvx51.js +0 -10
- package/dist/usePopoverRoot-CKt956u-.js +0 -8
|
@@ -1,25 +1,25 @@
|
|
|
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-
|
|
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-D0Hg03Ub.js";
|
|
2
2
|
import { t as k } from "./timeouts-Bmi_yePw.js";
|
|
3
|
-
import { E as A, i as j } from "./dist-
|
|
4
|
-
import { P as M, S as N, t as
|
|
5
|
-
import { c as
|
|
6
|
-
import {
|
|
7
|
-
import { t as
|
|
8
|
-
import { t as
|
|
9
|
-
import { t as
|
|
10
|
-
import { t as
|
|
11
|
-
import { a as
|
|
12
|
-
import { t as
|
|
13
|
-
import { t as
|
|
14
|
-
import { t as
|
|
15
|
-
import { t as
|
|
16
|
-
import { t as
|
|
17
|
-
import { t as
|
|
18
|
-
import { t as
|
|
19
|
-
import { n as Q } from "./useCloudI18n-
|
|
3
|
+
import { E as A, i as j } from "./dist-BufRk8ZY.js";
|
|
4
|
+
import { P as M, S as N, t as ee } from "./useEditorCore-7c1QpPlw.js";
|
|
5
|
+
import { c as P, t as F } from "./dist-2-A7SaKm.js";
|
|
6
|
+
import { C as I, D as L, E as R, c as z, l as B, r as te, s as ne, t as V } from "./keys-BoYBr3PU.js";
|
|
7
|
+
import { t as H } from "./useI18n-DskZMfRJ.js";
|
|
8
|
+
import { t as U } from "./createLucideIcon-DFBxEm5K.js";
|
|
9
|
+
import { t as W } from "./check-Bs6_uQpm.js";
|
|
10
|
+
import { t as G } from "./circle-alert-CrKv0AuW.js";
|
|
11
|
+
import { a as K, c as re, d as ie, i as q, l as ae, n as oe, o as se, r as ce, s as le, t as ue, u as de } from "./styles-CBlNpqL9.js";
|
|
12
|
+
import { t as fe } from "./clock-Cpx6GYpa.js";
|
|
13
|
+
import { t as J } from "./loader-circle-C6cZPIum.js";
|
|
14
|
+
import { t as Y } from "./message-circle-dqOBRe07.js";
|
|
15
|
+
import { t as X } from "./send-C4uH_WaI.js";
|
|
16
|
+
import { t as Z } from "./sparkles-CsDweGUy.js";
|
|
17
|
+
import { t as pe } from "./triangle-alert-Bbgu6uUG.js";
|
|
18
|
+
import { t as me } from "./_plugin-vue_export-helper-B3ysoDQm.js";
|
|
19
|
+
import { n as Q } from "./useCloudI18n-DiwsLi6z.js";
|
|
20
20
|
import { d as $ } from "./styleConstants-lGobwiLH.js";
|
|
21
|
-
import { _ as
|
|
22
|
-
var
|
|
21
|
+
import { _ as he, a as ge, c as _e, d as ve, f as ye, g as be, h as xe, l as Se, m as Ce, n as we, o as Te, p as Ee, r as De, s as Oe, t as ke, v as Ae, y as je } from "./cloud-bHhCNRZa.js";
|
|
22
|
+
var Me = 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",
|
|
25
25
|
key: "1c8476"
|
|
@@ -35,14 +35,14 @@ var je = W("save", [
|
|
|
35
35
|
]);
|
|
36
36
|
//#endregion
|
|
37
37
|
//#region src/cloud/composables/useSnapshotPreview.ts
|
|
38
|
-
function
|
|
38
|
+
function Ne(e) {
|
|
39
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
40
|
S(() => {
|
|
41
41
|
p = !0;
|
|
42
42
|
});
|
|
43
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 && !l.value && (l.value =
|
|
45
|
+
n.state.template?.id && !l.value && (l.value = be({
|
|
46
46
|
authManager: t,
|
|
47
47
|
templateId: n.state.template.id,
|
|
48
48
|
onRestore: y,
|
|
@@ -64,6 +64,8 @@ function Me(e) {
|
|
|
64
64
|
async function x() {
|
|
65
65
|
if (!(!u.value || !l.value)) try {
|
|
66
66
|
if (await l.value.restoreSnapshot(u.value.id), p || (await l.value.loadSnapshots(), p)) return;
|
|
67
|
+
} catch (e) {
|
|
68
|
+
throw !p && f.value && n.setContent(f.value, !1), e;
|
|
67
69
|
} finally {
|
|
68
70
|
p || (u.value = null, f.value = null, s?.resume());
|
|
69
71
|
}
|
|
@@ -92,7 +94,7 @@ function Me(e) {
|
|
|
92
94
|
}
|
|
93
95
|
//#endregion
|
|
94
96
|
//#region src/cloud/composables/useCloudPanelState.ts
|
|
95
|
-
function
|
|
97
|
+
function Pe() {
|
|
96
98
|
let e = o(null), t = d({
|
|
97
99
|
get: () => e.value === "ai-chat",
|
|
98
100
|
set: (t) => e.value = t ? "ai-chat" : null
|
|
@@ -115,7 +117,7 @@ function Ne() {
|
|
|
115
117
|
function g(t) {
|
|
116
118
|
l.value = !1, e.value = e.value === t ? null : t;
|
|
117
119
|
}
|
|
118
|
-
return
|
|
120
|
+
return F(u, () => {
|
|
119
121
|
l.value = !1;
|
|
120
122
|
}), {
|
|
121
123
|
activePanel: e,
|
|
@@ -137,8 +139,8 @@ function Ne() {
|
|
|
137
139
|
}
|
|
138
140
|
//#endregion
|
|
139
141
|
//#region src/cloud/composables/useCollabUndoWarning.ts
|
|
140
|
-
function
|
|
141
|
-
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = o(!1), a = o(!1), { start: s } =
|
|
142
|
+
function Fe(e) {
|
|
143
|
+
let { isCollaborationEnabled: t, getCollaboratorCount: n, canUndo: r } = e, i = o(!1), a = o(!1), { start: s } = P(() => {
|
|
142
144
|
a.value = !1;
|
|
143
145
|
}, k, { immediate: !1 });
|
|
144
146
|
function c() {
|
|
@@ -151,8 +153,8 @@ function Pe(e) {
|
|
|
151
153
|
}
|
|
152
154
|
//#endregion
|
|
153
155
|
//#region src/cloud/composables/useCloudFeatureFlags.ts
|
|
154
|
-
function
|
|
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 } =
|
|
156
|
+
function Ie(e) {
|
|
157
|
+
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
158
|
p.value = "idle";
|
|
157
159
|
}, 3e3, { immediate: !1 });
|
|
158
160
|
return {
|
|
@@ -170,7 +172,7 @@ function Fe(e) {
|
|
|
170
172
|
}
|
|
171
173
|
//#endregion
|
|
172
174
|
//#region src/cloud/composables/useCloudMediaLibrary.ts
|
|
173
|
-
function
|
|
175
|
+
function Le(e) {
|
|
174
176
|
let { onRequestMedia: t, mediaLibraryOpen: n, mediaLibraryAccept: r } = e, i = null;
|
|
175
177
|
async function a() {
|
|
176
178
|
if (t) {
|
|
@@ -205,30 +207,30 @@ function Ie(e) {
|
|
|
205
207
|
}
|
|
206
208
|
//#endregion
|
|
207
209
|
//#region src/cloud/composables/useCloudInitialization.ts
|
|
208
|
-
function
|
|
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
|
|
210
|
+
function Re(e) {
|
|
211
|
+
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 ke({
|
|
210
212
|
...t.auth,
|
|
211
213
|
onError: t.onError
|
|
212
|
-
}), v =
|
|
214
|
+
}), v = Ce({
|
|
213
215
|
authManager: _,
|
|
214
216
|
onError: t.onError
|
|
215
|
-
}), y = o(/* @__PURE__ */ new Map()), b =
|
|
217
|
+
}), y = o(/* @__PURE__ */ new Map()), b = ve({
|
|
216
218
|
authManager: _,
|
|
217
219
|
defaultFontFamily: t.fonts?.defaultFont,
|
|
218
220
|
templateDefaults: t.templateDefaults,
|
|
219
221
|
onError: t.onError,
|
|
220
222
|
lockedBlocks: y
|
|
221
|
-
}), x =
|
|
223
|
+
}), x = je({
|
|
222
224
|
authManager: _,
|
|
223
225
|
onError: t.onError
|
|
224
226
|
});
|
|
225
|
-
t.mcp?.enabled &&
|
|
227
|
+
t.mcp?.enabled && Ee({
|
|
226
228
|
editor: b,
|
|
227
229
|
channel: x.channel,
|
|
228
230
|
onOperation: t.mcp.onOperation
|
|
229
231
|
});
|
|
230
232
|
let S = null;
|
|
231
|
-
t.collaboration?.enabled && (S =
|
|
233
|
+
t.collaboration?.enabled && (S = Te({
|
|
232
234
|
authManager: _,
|
|
233
235
|
editor: b,
|
|
234
236
|
channel: x.channel,
|
|
@@ -239,8 +241,8 @@ function Le(e) {
|
|
|
239
241
|
onBlockUnlocked: t.collaboration.onBlockUnlocked
|
|
240
242
|
}), n(() => S.lockedBlocks.value, (e) => {
|
|
241
243
|
y.value = e;
|
|
242
|
-
}, { immediate: !0 }),
|
|
243
|
-
let C = d(() => !!t.collaboration?.enabled && v.hasFeature("collaboration")), w =
|
|
244
|
+
}, { immediate: !0 }), Oe(b, S));
|
|
245
|
+
let C = d(() => !!t.collaboration?.enabled && v.hasFeature("collaboration")), w = ee({
|
|
244
246
|
editor: b,
|
|
245
247
|
config: {
|
|
246
248
|
uiTheme: t.uiTheme,
|
|
@@ -250,7 +252,7 @@ function Le(e) {
|
|
|
250
252
|
mergeTags: t.mergeTags,
|
|
251
253
|
displayConditions: t.displayConditions,
|
|
252
254
|
onRequestMedia: null,
|
|
253
|
-
lint:
|
|
255
|
+
lint: de(t),
|
|
254
256
|
onSave: () => {
|
|
255
257
|
p.value?.().catch((e) => {
|
|
256
258
|
t.onError?.(e);
|
|
@@ -271,13 +273,13 @@ function Le(e) {
|
|
|
271
273
|
keyboardOptions: { onBeforeUndo: () => g?.showCollabUndoWarning() },
|
|
272
274
|
editorRoot: e.editorRoot,
|
|
273
275
|
containerEl: e.containerEl
|
|
274
|
-
}), T =
|
|
276
|
+
}), T = Fe({
|
|
275
277
|
isCollaborationEnabled: C,
|
|
276
278
|
getCollaboratorCount: () => S?.collaborators.value.length ?? 0,
|
|
277
279
|
canUndo: w.history.canUndo
|
|
278
280
|
});
|
|
279
281
|
g = T;
|
|
280
|
-
let E =
|
|
282
|
+
let E = Ne({
|
|
281
283
|
authManager: _,
|
|
282
284
|
editor: b,
|
|
283
285
|
history: w.history,
|
|
@@ -286,11 +288,11 @@ function Le(e) {
|
|
|
286
288
|
onError: t.onError
|
|
287
289
|
});
|
|
288
290
|
m = E;
|
|
289
|
-
let D =
|
|
291
|
+
let D = Pe(), O = ge(t.ai), k = Ie({
|
|
290
292
|
planConfigInstance: v,
|
|
291
293
|
aiConfig: O,
|
|
292
294
|
editor: b
|
|
293
|
-
}), A =
|
|
295
|
+
}), A = Le({
|
|
294
296
|
onRequestMedia: t.onRequestMedia,
|
|
295
297
|
mediaLibraryOpen: D.mediaLibraryOpen,
|
|
296
298
|
mediaLibraryAccept: D.mediaLibraryAccept
|
|
@@ -299,11 +301,11 @@ function Le(e) {
|
|
|
299
301
|
onBlockMove: b.moveBlock,
|
|
300
302
|
onBlockAdd: b.addBlock
|
|
301
303
|
});
|
|
302
|
-
let j =
|
|
304
|
+
let j = ye({
|
|
303
305
|
authManager: _,
|
|
304
306
|
getFontsConfig: () => t.fonts,
|
|
305
307
|
canUseCustomFonts: () => v.hasFeature("custom_fonts")
|
|
306
|
-
}),
|
|
308
|
+
}), P = Ae({
|
|
307
309
|
authManager: _,
|
|
308
310
|
getTemplateId: () => b.state.template?.id ?? null,
|
|
309
311
|
save: () => b.save(),
|
|
@@ -311,7 +313,7 @@ function Le(e) {
|
|
|
311
313
|
onError: t.onError,
|
|
312
314
|
isAuthReady: l,
|
|
313
315
|
onBeforeTestEmail: t.onBeforeTestEmail
|
|
314
|
-
}),
|
|
316
|
+
}), F = Se({
|
|
315
317
|
authManager: _,
|
|
316
318
|
getTemplateId: () => b.state.template?.id ?? null,
|
|
317
319
|
getSocketId: () => x.getSocketId(),
|
|
@@ -320,56 +322,56 @@ function Le(e) {
|
|
|
320
322
|
isAuthReady: l,
|
|
321
323
|
hasCommentingFeature: () => t.commenting !== !1 && v.hasFeature("commenting")
|
|
322
324
|
});
|
|
323
|
-
|
|
324
|
-
comments:
|
|
325
|
+
_e({
|
|
326
|
+
comments: F,
|
|
325
327
|
channel: x.channel
|
|
326
328
|
});
|
|
327
|
-
let
|
|
329
|
+
let z = xe({
|
|
328
330
|
authManager: _,
|
|
329
331
|
onError: t.onError
|
|
330
|
-
}),
|
|
332
|
+
}), H = o(!1), U = o(null), W = o(!1), G = he({
|
|
331
333
|
authManager: _,
|
|
332
334
|
getTemplateId: () => b.state.template?.id ?? null
|
|
333
335
|
});
|
|
334
|
-
function
|
|
336
|
+
function K(e) {
|
|
335
337
|
D.commentsOpen.value = !0, queueMicrotask(() => {
|
|
336
338
|
s()?.filterByBlock(e);
|
|
337
339
|
});
|
|
338
340
|
}
|
|
339
|
-
h(
|
|
341
|
+
h(I, A.handleRequestMedia), h(te, _), h(V, O), h(B, F), h(R, z), h(L, G), h(ne, {
|
|
340
342
|
plan: v,
|
|
341
343
|
ai: O,
|
|
342
344
|
comments: {
|
|
343
|
-
getBlockCount: (e) =>
|
|
344
|
-
openForBlock:
|
|
345
|
+
getBlockCount: (e) => F.commentCountByBlock.value.get(e) ?? 0,
|
|
346
|
+
openForBlock: K
|
|
345
347
|
},
|
|
346
348
|
savedModules: {
|
|
347
349
|
openSaveDialog: (e) => {
|
|
348
|
-
|
|
350
|
+
U.value = e ?? null, H.value = !0;
|
|
349
351
|
},
|
|
350
352
|
openBrowser: () => {
|
|
351
|
-
|
|
353
|
+
W.value = !0;
|
|
352
354
|
},
|
|
353
|
-
moduleCount: d(() =>
|
|
355
|
+
moduleCount: d(() => z.modules.value.length)
|
|
354
356
|
}
|
|
355
357
|
});
|
|
356
|
-
function
|
|
358
|
+
function re(e) {
|
|
357
359
|
v.hasFeature("theme_customization") && (w.themeOverrides.value = e);
|
|
358
360
|
}
|
|
359
|
-
function
|
|
361
|
+
function ie(e) {
|
|
360
362
|
b.setUiTheme(e);
|
|
361
363
|
}
|
|
362
|
-
async function
|
|
364
|
+
async function q() {
|
|
363
365
|
c.value = !0, u.value = null;
|
|
364
366
|
try {
|
|
365
367
|
if (await _.initialize(), f) return;
|
|
366
368
|
l.value = !0;
|
|
367
|
-
let e = await
|
|
369
|
+
let e = await we({ authManager: _ });
|
|
368
370
|
if (f) return;
|
|
369
371
|
if (!e.api.ok) throw Error("Health check failed: API is not reachable");
|
|
370
372
|
if (!e.auth.ok) throw Error(`Health check failed: authentication error${e.auth.error ? ` - ${e.auth.error}` : ""}`);
|
|
371
373
|
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;
|
|
372
|
-
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") &&
|
|
374
|
+
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") && z.loadModules(), a("ready");
|
|
373
375
|
} catch (e) {
|
|
374
376
|
if (f) return;
|
|
375
377
|
let n = e instanceof Error ? e : Error("Initialization failed", { cause: e });
|
|
@@ -397,27 +399,27 @@ function Le(e) {
|
|
|
397
399
|
featureFlags: k,
|
|
398
400
|
mediaLib: A,
|
|
399
401
|
exporter: j,
|
|
400
|
-
testEmail:
|
|
401
|
-
commentsInstance:
|
|
402
|
-
savedModulesHeadless:
|
|
403
|
-
scoringInstance:
|
|
402
|
+
testEmail: P,
|
|
403
|
+
commentsInstance: F,
|
|
404
|
+
savedModulesHeadless: z,
|
|
405
|
+
scoringInstance: G,
|
|
404
406
|
panelState: D,
|
|
405
407
|
snapshotPreview: E,
|
|
406
408
|
collabWarning: T,
|
|
407
|
-
showSaveModuleDialog:
|
|
408
|
-
showModuleBrowserModal:
|
|
409
|
-
saveModulePreSelectedBlockId:
|
|
409
|
+
showSaveModuleDialog: H,
|
|
410
|
+
showModuleBrowserModal: W,
|
|
411
|
+
saveModulePreSelectedBlockId: U,
|
|
410
412
|
onSaveHook: p,
|
|
411
|
-
initialize:
|
|
413
|
+
initialize: q,
|
|
412
414
|
destroy: ae,
|
|
413
|
-
setThemeOverrides:
|
|
414
|
-
setUiTheme:
|
|
415
|
-
openCommentsForBlock:
|
|
415
|
+
setThemeOverrides: re,
|
|
416
|
+
setUiTheme: ie,
|
|
417
|
+
openCommentsForBlock: K
|
|
416
418
|
};
|
|
417
419
|
}
|
|
418
420
|
//#endregion
|
|
419
421
|
//#region src/utils/preRenderCustomBlocks.ts
|
|
420
|
-
async function
|
|
422
|
+
async function ze(e, t) {
|
|
421
423
|
let n = async (e) => {
|
|
422
424
|
if (A(e)) {
|
|
423
425
|
let n = e;
|
|
@@ -436,10 +438,10 @@ async function Re(e, t) {
|
|
|
436
438
|
}
|
|
437
439
|
//#endregion
|
|
438
440
|
//#region src/cloud/composables/useCloudLifecycle.ts
|
|
439
|
-
function
|
|
441
|
+
function Be(e) {
|
|
440
442
|
let { config: t, editor: n, websocket: r, planConfigInstance: i, snapshotPreview: a, core: o, exporter: s, featureFlags: c, isDestroyed: l } = e;
|
|
441
443
|
function u() {
|
|
442
|
-
return
|
|
444
|
+
return De(i.config.value.websocket);
|
|
443
445
|
}
|
|
444
446
|
async function d(e) {
|
|
445
447
|
let i = await n.create(e);
|
|
@@ -452,7 +454,7 @@ function ze(e) {
|
|
|
452
454
|
async function p() {
|
|
453
455
|
c.isSaveExporting.value = !0, c.saveStatus.value = "idle";
|
|
454
456
|
try {
|
|
455
|
-
if (await
|
|
457
|
+
if (await ze(n.content.value, o.registry), l()) throw Error("Component unmounted during save");
|
|
456
458
|
let e = await n.save();
|
|
457
459
|
if (l()) throw Error("Component unmounted during save");
|
|
458
460
|
a.initSnapshotHistory(), a.snapshotHistoryInstance.value?.loadSnapshots();
|
|
@@ -479,7 +481,7 @@ function ze(e) {
|
|
|
479
481
|
}
|
|
480
482
|
//#endregion
|
|
481
483
|
//#region src/cloud/composables/useCloudSaveGate.ts
|
|
482
|
-
function
|
|
484
|
+
function Ve(e) {
|
|
483
485
|
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);
|
|
484
486
|
async function s(e) {
|
|
485
487
|
return a.value ? (n = e, t.value = !0, !1) : (await e(), !0);
|
|
@@ -502,7 +504,7 @@ function Be(e) {
|
|
|
502
504
|
}
|
|
503
505
|
//#endregion
|
|
504
506
|
//#region src/cloud/components/CloudSaveGateModal.vue?vue&type=script&setup=true&lang.ts
|
|
505
|
-
var
|
|
507
|
+
var He = ["aria-label"], Ue = { 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)]" }, We = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Ge = { class: "tpl:m-0 tpl:text-base tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Ke = { class: "tpl:m-0 tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, qe = { 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" }, Je = { class: "tpl:text-xs tpl:text-[var(--tpl-text)]" }, Ye = { class: "tpl:font-mono tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Xe = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Ze = /* @__PURE__ */ l({
|
|
506
508
|
__name: "CloudSaveGateModal",
|
|
507
509
|
props: {
|
|
508
510
|
open: { type: Boolean },
|
|
@@ -524,18 +526,18 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
524
526
|
"aria-label": C(a).saveGate.title,
|
|
525
527
|
class: "tpl:fixed tpl:inset-0 tpl:z-50 tpl:flex tpl:items-center tpl:justify-center tpl:bg-black/40 tpl:p-6",
|
|
526
528
|
onClick: o[2] ||= u((e) => i("cancel"), ["self"])
|
|
527
|
-
}, [f("div",
|
|
528
|
-
f("header",
|
|
529
|
+
}, [f("div", Ue, [
|
|
530
|
+
f("header", We, [E(C(pe), {
|
|
529
531
|
size: 18,
|
|
530
532
|
"stroke-width": 2,
|
|
531
533
|
class: "tpl:text-[var(--tpl-warning)]"
|
|
532
|
-
}), f("h2",
|
|
533
|
-
f("p",
|
|
534
|
-
f("ul",
|
|
534
|
+
}), f("h2", Ge, w(C(a).saveGate.title), 1)]),
|
|
535
|
+
f("p", Ke, w(C(a).saveGate.body), 1),
|
|
536
|
+
f("ul", qe, [(e(!0), m(_, null, r(t.issues, (t) => (e(), m("li", {
|
|
535
537
|
key: `${t.ruleId}-${t.blockId ?? "template"}`,
|
|
536
538
|
class: "tpl:flex tpl:flex-col tpl:gap-0.5 tpl:rounded tpl:px-2 tpl:py-1.5"
|
|
537
|
-
}, [f("span",
|
|
538
|
-
f("footer",
|
|
539
|
+
}, [f("span", Je, w(t.message), 1), f("span", Ye, w(t.ruleId), 1)]))), 128))]),
|
|
540
|
+
f("footer", Xe, [f("button", {
|
|
539
541
|
type: "button",
|
|
540
542
|
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)]",
|
|
541
543
|
onClick: o[0] ||= (e) => i("cancel")
|
|
@@ -544,11 +546,11 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
544
546
|
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",
|
|
545
547
|
onClick: o[1] ||= (e) => i("confirm")
|
|
546
548
|
}, w(C(a).saveGate.confirm), 1)])
|
|
547
|
-
])], 8,
|
|
549
|
+
])], 8, He)) : v("", !0)]),
|
|
548
550
|
_: 1
|
|
549
551
|
}));
|
|
550
552
|
}
|
|
551
|
-
}),
|
|
553
|
+
}), Qe = {
|
|
552
554
|
class: "tpl-header tpl:absolute tpl:top-0 tpl:right-0 tpl:left-0 tpl:z-50 tpl:grid tpl:h-14 tpl:grid-cols-[1fr_auto_1fr] tpl:items-center tpl:px-4",
|
|
553
555
|
style: {
|
|
554
556
|
"background-color": "color-mix(in srgb, var(--tpl-bg) 80%, transparent)",
|
|
@@ -557,24 +559,24 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
557
559
|
"box-shadow": "var(--tpl-shadow-md)",
|
|
558
560
|
"border-bottom": "1px solid var(--tpl-border)"
|
|
559
561
|
}
|
|
560
|
-
},
|
|
562
|
+
}, $e = { class: "tpl-header-left tpl:flex tpl:min-w-[200px] tpl:items-center tpl:gap-3" }, et = {
|
|
561
563
|
key: 0,
|
|
562
564
|
class: "tpl:text-xs tpl:opacity-60 tpl:text-[var(--tpl-text-muted)]"
|
|
563
|
-
},
|
|
565
|
+
}, tt = { class: "tpl-header-center tpl:flex tpl:items-center tpl:justify-center tpl:gap-10" }, nt = { class: "tpl-header-right tpl:flex tpl:min-w-[200px] tpl:items-center tpl:justify-end tpl:gap-3" }, rt = ["data-tooltip"], it = {
|
|
564
566
|
key: 1,
|
|
565
567
|
"aria-live": "polite",
|
|
566
568
|
class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-success)]"
|
|
567
|
-
},
|
|
569
|
+
}, at = {
|
|
568
570
|
key: 2,
|
|
569
571
|
"aria-live": "polite",
|
|
570
572
|
class: "tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
|
|
571
|
-
},
|
|
573
|
+
}, ot = ["aria-label", "aria-expanded"], st = {
|
|
572
574
|
key: 0,
|
|
573
575
|
class: "tpl:inline-flex tpl:size-4.5 tpl:items-center tpl:justify-center tpl:rounded-full tpl:text-[10px] tpl:font-semibold tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]"
|
|
574
|
-
},
|
|
576
|
+
}, ct = ["aria-expanded"], lt = {
|
|
575
577
|
key: 0,
|
|
576
578
|
class: "tpl:absolute tpl:right-0 tpl:top-full tpl:z-50 tpl:mt-1 tpl:origin-top-right"
|
|
577
|
-
},
|
|
579
|
+
}, ut = ["disabled"], dt = ["disabled"], ft = /* @__PURE__ */ l({
|
|
578
580
|
__name: "CloudHeader",
|
|
579
581
|
props: {
|
|
580
582
|
editor: {},
|
|
@@ -592,22 +594,22 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
592
594
|
},
|
|
593
595
|
emits: ["save"],
|
|
594
596
|
setup(t) {
|
|
595
|
-
let n = D(() => import("./CollaboratorBar-
|
|
596
|
-
return (l, d) => (e(), m("header",
|
|
597
|
-
f("div",
|
|
597
|
+
let n = D(() => import("./CollaboratorBar-Bn2JDu6l.js")), r = D(() => import("./SnapshotHistory-m_nGAHlb.js")), i = D(() => import("./AiFeatureMenu-D2Xn0jFx.js")), { t: a, format: o } = Q();
|
|
598
|
+
return (l, d) => (e(), m("header", Qe, [
|
|
599
|
+
f("div", $e, [t.featureFlags.templateLimit.value === null ? v("", !0) : (e(), m("span", et, w(C(o)(C(a).header.templatesUsed, {
|
|
598
600
|
used: t.featureFlags.templateCount.value,
|
|
599
601
|
max: t.featureFlags.templateLimit.value
|
|
600
602
|
})), 1))]),
|
|
601
|
-
f("div",
|
|
602
|
-
E(
|
|
603
|
+
f("div", tt, [
|
|
604
|
+
E(K, {
|
|
603
605
|
viewport: t.editor.state.viewport,
|
|
604
606
|
onChange: t.editor.setViewport
|
|
605
607
|
}, null, 8, ["viewport", "onChange"]),
|
|
606
|
-
E(
|
|
608
|
+
E(ce, {
|
|
607
609
|
"dark-mode": t.editor.state.darkMode,
|
|
608
610
|
onChange: t.editor.setDarkMode
|
|
609
611
|
}, null, 8, ["dark-mode", "onChange"]),
|
|
610
|
-
E(
|
|
612
|
+
E(q, {
|
|
611
613
|
"preview-mode": t.editor.state.previewMode,
|
|
612
614
|
onChange: t.editor.setPreviewMode
|
|
613
615
|
}, null, 8, ["preview-mode", "onChange"]),
|
|
@@ -631,19 +633,19 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
631
633
|
"onNavigate"
|
|
632
634
|
])) : v("", !0)
|
|
633
635
|
]),
|
|
634
|
-
f("div",
|
|
636
|
+
f("div", nt, [
|
|
635
637
|
t.featureFlags.saveStatus.value === "error" ? (e(), m("div", {
|
|
636
638
|
key: 0,
|
|
637
639
|
"aria-live": "assertive",
|
|
638
640
|
class: "tpl-tooltip tpl-status tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:text-[var(--tpl-danger)]",
|
|
639
641
|
"data-tooltip": t.featureFlags.saveErrorMessage.value
|
|
640
|
-
}, [E(C(
|
|
642
|
+
}, [E(C(G), {
|
|
641
643
|
size: 12,
|
|
642
644
|
"stroke-width": 2.5
|
|
643
|
-
}), s(" " + w(C(a).header.saveFailed), 1)], 8,
|
|
645
|
+
}), s(" " + w(C(a).header.saveFailed), 1)], 8, rt)) : t.featureFlags.saveStatus.value === "saved" ? (e(), m("div", it, [E(C(W), {
|
|
644
646
|
size: 12,
|
|
645
647
|
"stroke-width": 2.5
|
|
646
|
-
}), s(" " + w(C(a).header.saved), 1)])) : t.editor.state.isDirty ? (e(), m("div",
|
|
648
|
+
}), s(" " + w(C(a).header.saved), 1)])) : t.editor.state.isDirty ? (e(), m("div", at, [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),
|
|
647
649
|
t.commentsInstance.isEnabled.value && t.featureFlags.hasTemplateSaved.value ? (e(), m("button", {
|
|
648
650
|
key: 3,
|
|
649
651
|
"aria-label": t.commentsInstance.unresolvedCount.value > 0 ? `${C(a).comments.button} (${t.commentsInstance.unresolvedCount.value})` : C(a).comments.button,
|
|
@@ -656,13 +658,13 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
656
658
|
}),
|
|
657
659
|
onClick: d[0] ||= (e) => t.panelState.commentsOpen.value = !t.panelState.commentsOpen.value
|
|
658
660
|
}, [
|
|
659
|
-
E(C(
|
|
661
|
+
E(C(Y), {
|
|
660
662
|
size: 16,
|
|
661
663
|
"stroke-width": 2
|
|
662
664
|
}),
|
|
663
665
|
s(" " + w(C(a).comments.button) + " ", 1),
|
|
664
|
-
t.commentsInstance.unresolvedCount.value > 0 && !t.panelState.commentsOpen.value ? (e(), m("span",
|
|
665
|
-
], 14,
|
|
666
|
+
t.commentsInstance.unresolvedCount.value > 0 && !t.panelState.commentsOpen.value ? (e(), m("span", st, w(t.commentsInstance.unresolvedCount.value), 1)) : v("", !0)
|
|
667
|
+
], 14, ot)) : v("", !0),
|
|
666
668
|
t.featureFlags.canUseAiGeneration.value && t.featureFlags.hasTemplateSaved.value ? (e(), m("div", {
|
|
667
669
|
key: 4,
|
|
668
670
|
ref: (e) => t.panelState.aiMenuRef.value = e,
|
|
@@ -671,11 +673,11 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
671
673
|
"aria-expanded": t.panelState.aiMenuOpen.value,
|
|
672
674
|
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"]),
|
|
673
675
|
onClick: d[1] ||= u((...e) => t.panelState.toggleAiMenu && t.panelState.toggleAiMenu(...e), ["stop"])
|
|
674
|
-
}, [E(C(
|
|
676
|
+
}, [E(C(Z), {
|
|
675
677
|
size: 16,
|
|
676
678
|
"stroke-width": 2,
|
|
677
679
|
class: "tpl-ai-btn-icon"
|
|
678
|
-
}), s(" " + w(C(a).aiChat.button), 1)], 10,
|
|
680
|
+
}), s(" " + w(C(a).aiChat.button), 1)], 10, ct), E(T, {
|
|
679
681
|
"enter-active-class": "tpl:transition-all tpl:duration-150 tpl:ease-out",
|
|
680
682
|
"enter-from-class": "tpl:scale-95 tpl:opacity-0",
|
|
681
683
|
"enter-to-class": "tpl:scale-100 tpl:opacity-100",
|
|
@@ -683,7 +685,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
683
685
|
"leave-from-class": "tpl:scale-100 tpl:opacity-100",
|
|
684
686
|
"leave-to-class": "tpl:scale-95 tpl:opacity-0"
|
|
685
687
|
}, {
|
|
686
|
-
default: O(() => [t.panelState.aiMenuOpen.value ? (e(), m("div",
|
|
688
|
+
default: O(() => [t.panelState.aiMenuOpen.value ? (e(), m("div", lt, [E(C(i), {
|
|
687
689
|
"active-feature": t.panelState.activeAiFeature.value,
|
|
688
690
|
onSelect: t.panelState.handleAiFeatureSelect
|
|
689
691
|
}, null, 8, ["active-feature", "onSelect"])])) : v("", !0)]),
|
|
@@ -699,16 +701,16 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
699
701
|
},
|
|
700
702
|
disabled: t.testEmail.isSending.value || !t.featureFlags.hasTemplateSaved.value,
|
|
701
703
|
onClick: d[2] ||= (e) => t.panelState.testEmailModalOpen.value = !0
|
|
702
|
-
}, [t.testEmail.isSending.value ? (e(), x(C(
|
|
704
|
+
}, [t.testEmail.isSending.value ? (e(), x(C(J), {
|
|
703
705
|
key: 1,
|
|
704
706
|
class: "tpl-spinner",
|
|
705
707
|
size: 16,
|
|
706
708
|
"stroke-width": 2
|
|
707
|
-
})) : (e(), x(C(
|
|
709
|
+
})) : (e(), x(C(X), {
|
|
708
710
|
key: 0,
|
|
709
711
|
size: 16,
|
|
710
712
|
"stroke-width": 2
|
|
711
|
-
})), s(" " + w(C(a).testEmail.button), 1)], 10,
|
|
713
|
+
})), s(" " + w(C(a).testEmail.button), 1)], 10, ut)) : v("", !0),
|
|
712
714
|
f("button", {
|
|
713
715
|
class: c(C($)),
|
|
714
716
|
style: {
|
|
@@ -718,20 +720,20 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
718
720
|
},
|
|
719
721
|
disabled: t.isSaveDisabled,
|
|
720
722
|
onClick: d[3] ||= (e) => l.$emit("save")
|
|
721
|
-
}, [t.isSaving ? (e(), x(C(
|
|
723
|
+
}, [t.isSaving ? (e(), x(C(J), {
|
|
722
724
|
key: 1,
|
|
723
725
|
class: "tpl-spinner",
|
|
724
726
|
size: 16,
|
|
725
727
|
"stroke-width": 2
|
|
726
|
-
})) : (e(), x(C(
|
|
728
|
+
})) : (e(), x(C(Me), {
|
|
727
729
|
key: 0,
|
|
728
730
|
size: 16,
|
|
729
731
|
"stroke-width": 2
|
|
730
|
-
})), s(" " + w(t.isSaving ? C(a).header.saving : C(a).header.save), 1)], 10,
|
|
732
|
+
})), s(" " + w(t.isSaving ? C(a).header.saving : C(a).header.save), 1)], 10, dt)
|
|
731
733
|
])
|
|
732
734
|
]));
|
|
733
735
|
}
|
|
734
|
-
}),
|
|
736
|
+
}), pt = /* @__PURE__ */ l({
|
|
735
737
|
__name: "CloudPanels",
|
|
736
738
|
props: {
|
|
737
739
|
config: {},
|
|
@@ -754,7 +756,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
754
756
|
"module-insert"
|
|
755
757
|
],
|
|
756
758
|
setup(t, { expose: n, emit: r }) {
|
|
757
|
-
let i = D(() => import("./AiChatSidebar-
|
|
759
|
+
let i = D(() => import("./AiChatSidebar-Dz5bH1z3.js")), a = D(() => import("./CommentsSidebar-BAG6rdVC.js")), s = D(() => import("./DesignReferenceSidebar-I9LWjvrj.js")), c = D(() => import("./TemplateScoringPanel-BOQh9neV.js")), l = D(() => import("./TestEmailModal-DOcwoKkc.js")), u = D(() => import("./SaveModuleDialog-D634e99d.js")), d = D(() => import("./ModuleBrowserModal-DodRped1.js")), f = D(async () => {
|
|
758
760
|
try {
|
|
759
761
|
return (await import("@templatical/media-library")).MediaLibraryModal;
|
|
760
762
|
} catch {
|
|
@@ -836,23 +838,23 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
836
838
|
])
|
|
837
839
|
], 64));
|
|
838
840
|
}
|
|
839
|
-
}),
|
|
841
|
+
}), mt = {
|
|
840
842
|
key: 0,
|
|
841
843
|
class: "tpl-loading tpl:absolute tpl:inset-0 tpl:z-overlay tpl:flex tpl:flex-col tpl:bg-[var(--tpl-bg)]"
|
|
842
|
-
},
|
|
844
|
+
}, ht = { class: "tpl:flex tpl:flex-1 tpl:overflow-hidden" }, gt = { 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)]" }, _t = /* @__PURE__ */ l({
|
|
843
845
|
__name: "CloudLoadingOverlay",
|
|
844
846
|
props: { visible: { type: Boolean } },
|
|
845
847
|
setup(t) {
|
|
846
|
-
return (n, i) => t.visible ? (e(), m("div",
|
|
848
|
+
return (n, i) => t.visible ? (e(), m("div", mt, [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", ht, [f("div", gt, [(e(), m(_, null, r(5, (e) => f("div", {
|
|
847
849
|
key: e,
|
|
848
850
|
class: "tpl-shimmer tpl:size-7 tpl:rounded-[var(--tpl-radius-sm)]"
|
|
849
851
|
})), 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);
|
|
850
852
|
}
|
|
851
|
-
}),
|
|
853
|
+
}), vt = {
|
|
852
854
|
key: 0,
|
|
853
855
|
role: "alert",
|
|
854
856
|
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)]"
|
|
855
|
-
},
|
|
857
|
+
}, yt = { class: "tpl:flex tpl:size-16 tpl:items-center tpl:justify-center tpl:rounded-full tpl:bg-[var(--tpl-danger-light)]" }, bt = { class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:text-center" }, xt = { class: "tpl:text-lg tpl:font-semibold tpl:text-[var(--tpl-text)]" }, St = { class: "tpl:max-w-md tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ct = /* @__PURE__ */ l({
|
|
856
858
|
__name: "CloudErrorOverlay",
|
|
857
859
|
props: {
|
|
858
860
|
error: {},
|
|
@@ -867,13 +869,13 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
867
869
|
function o(e) {
|
|
868
870
|
return "isNotFound" in e && !!e.isNotFound;
|
|
869
871
|
}
|
|
870
|
-
return (n, s) => t.visible && t.error ? (e(), m("div",
|
|
871
|
-
f("div",
|
|
872
|
+
return (n, s) => t.visible && t.error ? (e(), m("div", vt, [
|
|
873
|
+
f("div", yt, [E(C(G), {
|
|
872
874
|
size: 32,
|
|
873
875
|
"stroke-width": 1.5,
|
|
874
876
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
875
877
|
})]),
|
|
876
|
-
f("div",
|
|
878
|
+
f("div", bt, [f("h2", xt, w(C(i).error.title), 1), f("p", St, w(a(t.error)), 1)]),
|
|
877
879
|
o(t.error) ? v("", !0) : (e(), m("button", {
|
|
878
880
|
key: 0,
|
|
879
881
|
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)]",
|
|
@@ -881,20 +883,20 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
881
883
|
}, w(C(i).error.retry), 1))
|
|
882
884
|
])) : v("", !0);
|
|
883
885
|
}
|
|
884
|
-
}),
|
|
886
|
+
}), wt = {
|
|
885
887
|
key: 0,
|
|
886
888
|
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)]"
|
|
887
|
-
},
|
|
889
|
+
}, Tt = { class: "tpl:flex tpl:items-center tpl:gap-2 tpl:text-sm tpl:text-[var(--tpl-text)]" }, Et = { class: "tpl:flex tpl:items-center tpl:gap-2" }, Dt = /* @__PURE__ */ l({
|
|
888
890
|
__name: "SnapshotPreviewBanner",
|
|
889
891
|
props: { visible: { type: Boolean } },
|
|
890
892
|
emits: ["cancel", "confirm"],
|
|
891
893
|
setup(t, { emit: n }) {
|
|
892
894
|
let r = n, { t: i } = Q();
|
|
893
|
-
return (n, a) => t.visible ? (e(), m("div",
|
|
895
|
+
return (n, a) => t.visible ? (e(), m("div", wt, [f("div", Tt, [E(C(fe), {
|
|
894
896
|
size: 18,
|
|
895
897
|
"stroke-width": 2,
|
|
896
898
|
class: "tpl:text-[var(--tpl-primary)]"
|
|
897
|
-
}), f("span", null, w(C(i).snapshotPreview.message), 1)]), f("div",
|
|
899
|
+
}), f("span", null, w(C(i).snapshotPreview.message), 1)]), f("div", Et, [f("button", {
|
|
898
900
|
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)]",
|
|
899
901
|
style: { "background-color": "transparent" },
|
|
900
902
|
onClick: a[0] ||= (e) => r("cancel")
|
|
@@ -903,7 +905,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
903
905
|
onClick: a[1] ||= (e) => r("confirm")
|
|
904
906
|
}, w(C(i).snapshotPreview.restore), 1)])])) : v("", !0);
|
|
905
907
|
}
|
|
906
|
-
}),
|
|
908
|
+
}), Ot = {
|
|
907
909
|
key: 0,
|
|
908
910
|
role: "status",
|
|
909
911
|
"aria-live": "polite",
|
|
@@ -913,14 +915,14 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
913
915
|
color: "var(--tpl-text)",
|
|
914
916
|
border: "1px solid var(--tpl-warning)"
|
|
915
917
|
}
|
|
916
|
-
},
|
|
918
|
+
}, kt = /* @__PURE__ */ l({
|
|
917
919
|
__name: "CollabUndoToast",
|
|
918
920
|
props: { visible: { type: Boolean } },
|
|
919
921
|
setup(t) {
|
|
920
|
-
let { t: n } =
|
|
921
|
-
return (r, i) => t.visible ? (e(), m("div",
|
|
922
|
+
let { t: n } = H();
|
|
923
|
+
return (r, i) => t.visible ? (e(), m("div", Ot, w(C(n).history.collabWarning), 1)) : v("", !0);
|
|
922
924
|
}
|
|
923
|
-
}),
|
|
925
|
+
}), At = ["data-tpl-theme"], jt = { class: "tpl:sticky tpl:top-0 tpl:z-40 tpl:h-0" }, Mt = { class: "tpl-main tpl:flex tpl:justify-center tpl:p-8" }, Nt = ["aria-label"], Pt = /* @__PURE__ */ me(/* @__PURE__ */ l({
|
|
924
926
|
__name: "CloudEditor",
|
|
925
927
|
props: {
|
|
926
928
|
config: {},
|
|
@@ -932,8 +934,8 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
932
934
|
emits: ["ready"],
|
|
933
935
|
setup(n, { expose: r, emit: a }) {
|
|
934
936
|
let l = n;
|
|
935
|
-
h(
|
|
936
|
-
let u = a, d = o(null), p = o(null), _ =
|
|
937
|
+
h(z, l.cloudTranslations);
|
|
938
|
+
let u = a, d = o(null), p = o(null), _ = Re({
|
|
937
939
|
config: l.config,
|
|
938
940
|
translations: l.translations,
|
|
939
941
|
fontsManager: l.fontsManager,
|
|
@@ -941,31 +943,36 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
941
943
|
getCommentsSidebar: () => d.value ? { filterByBlock: d.value.filterCommentsByBlock } : null,
|
|
942
944
|
editorRoot: l.shadowRoot,
|
|
943
945
|
containerEl: p
|
|
944
|
-
}), { isInitializing: S, isAuthReady: D, initError: k, planConfigInstance: A, websocket: M, collaboration: N, isCollaborationEnabled:
|
|
945
|
-
async function
|
|
946
|
+
}), { isInitializing: S, isAuthReady: D, initError: k, planConfigInstance: A, websocket: M, collaboration: N, isCollaborationEnabled: ee, editor: P, core: F, featureFlags: I, mediaLib: L, exporter: R, testEmail: B, commentsInstance: te, savedModulesHeadless: ne, panelState: V, snapshotPreview: H, collabWarning: U, showSaveModuleDialog: W, showModuleBrowserModal: G, saveModulePreSelectedBlockId: K, setThemeOverrides: q, setUiTheme: ce } = _;
|
|
947
|
+
async function de(e) {
|
|
948
|
+
try {
|
|
949
|
+
await B.sendTestEmail(e), V.testEmailModalOpen.value = !1;
|
|
950
|
+
} catch {}
|
|
951
|
+
}
|
|
952
|
+
async function fe() {
|
|
946
953
|
try {
|
|
947
|
-
await
|
|
954
|
+
await H.confirmRestoreSnapshot();
|
|
948
955
|
} catch {}
|
|
949
956
|
}
|
|
950
|
-
function
|
|
957
|
+
function J(e, t) {
|
|
951
958
|
for (let n = 0; n < e.content.length; n++) {
|
|
952
959
|
let r = j(e.content[n]), i = t === void 0 ? void 0 : t + n;
|
|
953
|
-
|
|
960
|
+
P.addBlock(r, void 0, void 0, i);
|
|
954
961
|
}
|
|
955
|
-
|
|
962
|
+
G.value = !1;
|
|
956
963
|
}
|
|
957
|
-
let Y =
|
|
964
|
+
let Y = Be({
|
|
958
965
|
config: l.config,
|
|
959
|
-
editor:
|
|
966
|
+
editor: P,
|
|
960
967
|
websocket: M,
|
|
961
968
|
planConfigInstance: A,
|
|
962
|
-
snapshotPreview:
|
|
963
|
-
core:
|
|
964
|
-
exporter:
|
|
965
|
-
featureFlags:
|
|
969
|
+
snapshotPreview: H,
|
|
970
|
+
core: F,
|
|
971
|
+
exporter: R,
|
|
972
|
+
featureFlags: I,
|
|
966
973
|
isDestroyed: _.isDestroyed
|
|
967
|
-
}), X =
|
|
968
|
-
issues:
|
|
974
|
+
}), X = Ve({
|
|
975
|
+
issues: F.templateLint ? F.templateLint.issues : o([]),
|
|
969
976
|
planConfig: A.config
|
|
970
977
|
});
|
|
971
978
|
async function Z() {
|
|
@@ -976,21 +983,22 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
976
983
|
}), g(() => {
|
|
977
984
|
_.destroy();
|
|
978
985
|
}), r({
|
|
979
|
-
getContent: () =>
|
|
980
|
-
setContent: (e) =>
|
|
981
|
-
setTheme:
|
|
982
|
-
setThemeOverrides:
|
|
986
|
+
getContent: () => P.content.value,
|
|
987
|
+
setContent: (e) => P.setContent(e),
|
|
988
|
+
setTheme: ce,
|
|
989
|
+
setThemeOverrides: q,
|
|
983
990
|
create: Y.createTemplate,
|
|
984
991
|
load: Y.loadTemplate,
|
|
985
992
|
save: Y.saveTemplate,
|
|
986
|
-
sendTestEmail:
|
|
993
|
+
sendTestEmail: B.sendTestEmail
|
|
987
994
|
}), (r, i) => (e(), m("div", {
|
|
988
995
|
ref_key: "rootEl",
|
|
989
996
|
ref: p,
|
|
990
|
-
class: c(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": C(
|
|
991
|
-
"data-tpl-theme": C(
|
|
992
|
-
style: b(C(
|
|
997
|
+
class: c(["tpl tpl:relative tpl:h-full tpl:overflow-hidden", { "tpl:dark": C(P).state.darkMode }]),
|
|
998
|
+
"data-tpl-theme": C(F).resolvedTheme.value,
|
|
999
|
+
style: b(C(F).themeStyles.value)
|
|
993
1000
|
}, [
|
|
1001
|
+
E(re),
|
|
994
1002
|
E(T, {
|
|
995
1003
|
"enter-active-class": "tpl:transition-opacity tpl:duration-200",
|
|
996
1004
|
"enter-from-class": "tpl:opacity-100",
|
|
@@ -999,7 +1007,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
999
1007
|
"leave-from-class": "tpl:opacity-100",
|
|
1000
1008
|
"leave-to-class": "tpl:opacity-0"
|
|
1001
1009
|
}, {
|
|
1002
|
-
default: O(() => [E(
|
|
1010
|
+
default: O(() => [E(_t, { visible: C(S) || C(P).state.isLoading }, null, 8, ["visible"])]),
|
|
1003
1011
|
_: 1
|
|
1004
1012
|
}),
|
|
1005
1013
|
E(T, {
|
|
@@ -1010,7 +1018,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1010
1018
|
"leave-from-class": "tpl:opacity-100",
|
|
1011
1019
|
"leave-to-class": "tpl:opacity-0"
|
|
1012
1020
|
}, {
|
|
1013
|
-
default: O(() => [E(
|
|
1021
|
+
default: O(() => [E(Ct, {
|
|
1014
1022
|
error: C(k),
|
|
1015
1023
|
visible: !!C(k) && !C(S),
|
|
1016
1024
|
onRetry: C(_).initialize
|
|
@@ -1021,19 +1029,19 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1021
1029
|
])]),
|
|
1022
1030
|
_: 1
|
|
1023
1031
|
}),
|
|
1024
|
-
E(
|
|
1025
|
-
editor: C(
|
|
1026
|
-
core: C(
|
|
1027
|
-
"feature-flags": C(
|
|
1028
|
-
"panel-state": C(
|
|
1029
|
-
"snapshot-preview": C(
|
|
1030
|
-
"comments-instance": C(
|
|
1031
|
-
"test-email": C(
|
|
1032
|
+
E(ft, {
|
|
1033
|
+
editor: C(P),
|
|
1034
|
+
core: C(F),
|
|
1035
|
+
"feature-flags": C(I),
|
|
1036
|
+
"panel-state": C(V),
|
|
1037
|
+
"snapshot-preview": C(H),
|
|
1038
|
+
"comments-instance": C(te),
|
|
1039
|
+
"test-email": C(B),
|
|
1032
1040
|
websocket: C(M),
|
|
1033
1041
|
collaboration: C(N),
|
|
1034
|
-
"is-collaboration-enabled": C(
|
|
1035
|
-
"is-saving": C(
|
|
1036
|
-
"is-save-disabled": C(
|
|
1042
|
+
"is-collaboration-enabled": C(ee),
|
|
1043
|
+
"is-saving": C(P).state.isSaving || C(I).isSaveExporting.value,
|
|
1044
|
+
"is-save-disabled": C(P).state.isSaving || C(I).isSaveExporting.value || !C(P).state.isDirty,
|
|
1037
1045
|
onSave: Z
|
|
1038
1046
|
}, null, 8, [
|
|
1039
1047
|
"editor",
|
|
@@ -1049,7 +1057,7 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1049
1057
|
"is-saving",
|
|
1050
1058
|
"is-save-disabled"
|
|
1051
1059
|
]),
|
|
1052
|
-
E(
|
|
1060
|
+
E(Ze, {
|
|
1053
1061
|
open: C(X).modalOpen.value,
|
|
1054
1062
|
issues: C(X).blockingIssues.value,
|
|
1055
1063
|
onCancel: C(X).cancel,
|
|
@@ -1060,15 +1068,11 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1060
1068
|
"onCancel",
|
|
1061
1069
|
"onConfirm"
|
|
1062
1070
|
]),
|
|
1063
|
-
E(
|
|
1064
|
-
visible: C(
|
|
1065
|
-
onCancel: C(
|
|
1066
|
-
onConfirm:
|
|
1067
|
-
}, null, 8, [
|
|
1068
|
-
"visible",
|
|
1069
|
-
"onCancel",
|
|
1070
|
-
"onConfirm"
|
|
1071
|
-
]),
|
|
1071
|
+
E(Dt, {
|
|
1072
|
+
visible: C(H).isPreviewingSnapshot.value,
|
|
1073
|
+
onCancel: C(H).cancelPreview,
|
|
1074
|
+
onConfirm: fe
|
|
1075
|
+
}, null, 8, ["visible", "onCancel"]),
|
|
1072
1076
|
E(T, {
|
|
1073
1077
|
"enter-active-class": "tpl:transition-all tpl:duration-200 tpl:ease-out",
|
|
1074
1078
|
"enter-from-class": "tpl:translate-y-[-8px] tpl:opacity-0",
|
|
@@ -1077,18 +1081,18 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1077
1081
|
"leave-from-class": "tpl:translate-y-0 tpl:opacity-100",
|
|
1078
1082
|
"leave-to-class": "tpl:translate-y-[-8px] tpl:opacity-0"
|
|
1079
1083
|
}, {
|
|
1080
|
-
default: O(() => [E(
|
|
1084
|
+
default: O(() => [E(kt, { visible: C(U).collabUndoWarningVisible.value }, null, 8, ["visible"])]),
|
|
1081
1085
|
_: 1
|
|
1082
1086
|
}),
|
|
1083
|
-
t(E(
|
|
1087
|
+
t(E(le, null, null, 512), [[y, !C(P).state.previewMode]]),
|
|
1084
1088
|
f("div", {
|
|
1085
|
-
class: c(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [C(
|
|
1089
|
+
class: c(["tpl-body tpl:absolute tpl:bottom-0 tpl:overflow-auto", [C(P).state.previewMode ? "tpl:left-0 tpl:right-0" : C(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]", C(H).isPreviewingSnapshot.value ? "tpl:top-[104px]" : "tpl:top-14"]]),
|
|
1086
1090
|
style: {
|
|
1087
1091
|
transition: "all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)",
|
|
1088
1092
|
"background-color": "var(--tpl-canvas-bg)"
|
|
1089
1093
|
}
|
|
1090
|
-
}, [f("div",
|
|
1091
|
-
default: O(() => [C(
|
|
1094
|
+
}, [f("div", jt, [E(T, { name: "tpl-restore-btn" }, {
|
|
1095
|
+
default: O(() => [C(F).conditionPreview.hasHiddenBlocks.value ? (e(), m("button", {
|
|
1092
1096
|
key: 0,
|
|
1093
1097
|
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",
|
|
1094
1098
|
style: {
|
|
@@ -1097,22 +1101,22 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1097
1101
|
"border-color": "var(--tpl-warning)",
|
|
1098
1102
|
"backdrop-filter": "blur(8px)"
|
|
1099
1103
|
},
|
|
1100
|
-
onClick: i[0] ||= (e) => C(
|
|
1101
|
-
}, [E(C(
|
|
1104
|
+
onClick: i[0] ||= (e) => C(F).conditionPreview.reset()
|
|
1105
|
+
}, [E(C(ie), {
|
|
1102
1106
|
size: 13,
|
|
1103
1107
|
"stroke-width": 2
|
|
1104
|
-
}), s(" " + w(C(
|
|
1108
|
+
}), s(" " + w(C(F).t.blockSettings.restoreHiddenBlocks), 1)])) : v("", !0)]),
|
|
1105
1109
|
_: 1
|
|
1106
|
-
})]), f("main",
|
|
1107
|
-
viewport: C(
|
|
1108
|
-
content: C(
|
|
1109
|
-
"selected-block-id": C(
|
|
1110
|
-
"dark-mode": C(
|
|
1111
|
-
"preview-mode": C(
|
|
1110
|
+
})]), f("main", Mt, [E(ae, {
|
|
1111
|
+
viewport: C(P).state.viewport,
|
|
1112
|
+
content: C(P).content.value,
|
|
1113
|
+
"selected-block-id": C(P).state.selectedBlockId,
|
|
1114
|
+
"dark-mode": C(P).state.darkMode,
|
|
1115
|
+
"preview-mode": C(P).state.previewMode,
|
|
1112
1116
|
"locked-blocks": C(N)?.lockedBlocks.value ?? void 0,
|
|
1113
|
-
onSelectBlock: C(
|
|
1114
|
-
onOpenAiChat: i[1] ||= (e) => C(
|
|
1115
|
-
onOpenDesignReference: i[2] ||= (e) => C(
|
|
1117
|
+
onSelectBlock: C(P).selectBlock,
|
|
1118
|
+
onOpenAiChat: i[1] ||= (e) => C(V).aiChatOpen.value = !0,
|
|
1119
|
+
onOpenDesignReference: i[2] ||= (e) => C(V).designReferenceOpen.value = !0
|
|
1116
1120
|
}, null, 8, [
|
|
1117
1121
|
"viewport",
|
|
1118
1122
|
"content",
|
|
@@ -1122,51 +1126,51 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1122
1126
|
"locked-blocks",
|
|
1123
1127
|
"onSelectBlock"
|
|
1124
1128
|
])])], 2),
|
|
1125
|
-
n.config.branding !== !1 && !C(
|
|
1129
|
+
n.config.branding !== !1 && !C(I).isWhiteLabeled.value ? (e(), x(oe, {
|
|
1126
1130
|
key: 0,
|
|
1127
|
-
"position-class": [C(
|
|
1131
|
+
"position-class": [C(P).state.previewMode ? "tpl:left-0 tpl:right-0" : C(V).rightPanelOpen.value ? "tpl:left-12 tpl:right-[680px]" : "tpl:left-12 tpl:right-[320px]"]
|
|
1128
1132
|
}, null, 8, ["position-class"])) : v("", !0),
|
|
1129
1133
|
f("div", {
|
|
1130
1134
|
class: "tpl-sr-only",
|
|
1131
1135
|
role: "status",
|
|
1132
1136
|
"aria-live": "polite",
|
|
1133
1137
|
"aria-atomic": "true",
|
|
1134
|
-
"aria-label": C(
|
|
1135
|
-
}, w(C(
|
|
1136
|
-
t(E(
|
|
1137
|
-
"selected-block": C(
|
|
1138
|
-
settings: C(
|
|
1139
|
-
"shifted-left": C(
|
|
1140
|
-
onUpdateBlock: i[3] ||= (e) => C(
|
|
1141
|
-
onDeleteBlock: i[4] ||= (e) => C(
|
|
1142
|
-
onDuplicateBlock: i[5] ||= (e) => C(
|
|
1143
|
-
onUpdateSettings: C(
|
|
1138
|
+
"aria-label": C(F).t.landmarks.reorderAnnouncements
|
|
1139
|
+
}, w(C(F).keyboardReorder.announcement.value), 9, Nt),
|
|
1140
|
+
t(E(se, {
|
|
1141
|
+
"selected-block": C(P).selectedBlock.value,
|
|
1142
|
+
settings: C(P).content.value.settings,
|
|
1143
|
+
"shifted-left": C(V).rightPanelOpen.value,
|
|
1144
|
+
onUpdateBlock: i[3] ||= (e) => C(P).updateBlock(C(P).selectedBlock.value.id, e),
|
|
1145
|
+
onDeleteBlock: i[4] ||= (e) => C(F).blockActions.deleteBlock(C(P).selectedBlock.value.id),
|
|
1146
|
+
onDuplicateBlock: i[5] ||= (e) => C(F).blockActions.duplicateBlock(C(P).selectedBlock.value),
|
|
1147
|
+
onUpdateSettings: C(P).updateSettings
|
|
1144
1148
|
}, null, 8, [
|
|
1145
1149
|
"selected-block",
|
|
1146
1150
|
"settings",
|
|
1147
1151
|
"shifted-left",
|
|
1148
1152
|
"onUpdateSettings"
|
|
1149
|
-
]), [[y, !C(
|
|
1150
|
-
!C(S) && C(D) ? (e(), x(
|
|
1153
|
+
]), [[y, !C(P).state.previewMode]]),
|
|
1154
|
+
!C(S) && C(D) ? (e(), x(pt, {
|
|
1151
1155
|
key: 1,
|
|
1152
1156
|
ref_key: "cloudPanelsRef",
|
|
1153
1157
|
ref: d,
|
|
1154
1158
|
config: l.config,
|
|
1155
|
-
editor: C(
|
|
1156
|
-
core: C(
|
|
1157
|
-
"panel-state": C(
|
|
1159
|
+
editor: C(P),
|
|
1160
|
+
core: C(F),
|
|
1161
|
+
"panel-state": C(V),
|
|
1158
1162
|
"plan-config-instance": C(A),
|
|
1159
|
-
"test-email": C(
|
|
1160
|
-
"media-lib": C(
|
|
1161
|
-
"saved-modules-headless": C(
|
|
1162
|
-
"show-save-module-dialog": C(
|
|
1163
|
-
"save-module-pre-selected-block-id": C(
|
|
1164
|
-
"show-module-browser-modal": C(
|
|
1165
|
-
"onUpdate:showSaveModuleDialog": i[6] ||= (e) =>
|
|
1166
|
-
"onUpdate:saveModulePreSelectedBlockId": i[7] ||= (e) =>
|
|
1167
|
-
"onUpdate:showModuleBrowserModal": i[8] ||= (e) =>
|
|
1168
|
-
onSendTestEmail:
|
|
1169
|
-
onModuleInsert:
|
|
1163
|
+
"test-email": C(B),
|
|
1164
|
+
"media-lib": C(L),
|
|
1165
|
+
"saved-modules-headless": C(ne),
|
|
1166
|
+
"show-save-module-dialog": C(W),
|
|
1167
|
+
"save-module-pre-selected-block-id": C(K),
|
|
1168
|
+
"show-module-browser-modal": C(G),
|
|
1169
|
+
"onUpdate:showSaveModuleDialog": i[6] ||= (e) => W.value = e,
|
|
1170
|
+
"onUpdate:saveModulePreSelectedBlockId": i[7] ||= (e) => K.value = e,
|
|
1171
|
+
"onUpdate:showModuleBrowserModal": i[8] ||= (e) => G.value = e,
|
|
1172
|
+
onSendTestEmail: de,
|
|
1173
|
+
onModuleInsert: J
|
|
1170
1174
|
}, null, 8, [
|
|
1171
1175
|
"config",
|
|
1172
1176
|
"editor",
|
|
@@ -1181,12 +1185,12 @@ var Ve = ["aria-label"], He = { class: "tpl:flex tpl:max-h-[80vh] tpl:w-full tpl
|
|
|
1181
1185
|
"show-module-browser-modal"
|
|
1182
1186
|
])) : v("", !0),
|
|
1183
1187
|
f("div", {
|
|
1184
|
-
ref: (e) => C(
|
|
1188
|
+
ref: (e) => C(F).popoverRoot.value = e,
|
|
1185
1189
|
class: "tpl-popover-root"
|
|
1186
1190
|
}, null, 512),
|
|
1187
|
-
E(
|
|
1188
|
-
], 14,
|
|
1191
|
+
E(ue)
|
|
1192
|
+
], 14, At));
|
|
1189
1193
|
}
|
|
1190
|
-
}), [["__scopeId", "data-v-
|
|
1194
|
+
}), [["__scopeId", "data-v-3a8bb0e8"]]);
|
|
1191
1195
|
//#endregion
|
|
1192
|
-
export {
|
|
1196
|
+
export { Pt as default };
|