@templatical/editor 0.10.1 → 0.10.2
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-Dz5bH1z3.js → AiChatSidebar-BMwpZx-6.js} +14 -14
- package/dist/{AiFeatureMenu-D2Xn0jFx.js → AiFeatureMenu-xgaIGUCo.js} +8 -8
- package/dist/{BlockIssueBadge-CnqD1cGo.js → BlockIssueBadge-3kNs6WoD.js} +5 -5
- package/dist/{CloudEditor-BizZwsfD.js → CloudEditor-Dm9hiaui.js} +21 -21
- package/dist/{CollaboratorBar-Bn2JDu6l.js → CollaboratorBar-Cz_evoU4.js} +4 -4
- package/dist/{CommentsSidebar-BAG6rdVC.js → CommentsSidebar-jFZj_CTo.js} +13 -13
- package/dist/{CountdownBlock-B_Hr9Bm9.js → CountdownBlock-S-SCyVye.js} +4 -4
- package/dist/{CountdownToolbar-DaqDLKLk.js → CountdownToolbar-Ckdo-3P-.js} +3 -3
- package/dist/{DesignReferenceSidebar-I9LWjvrj.js → DesignReferenceSidebar-B9QNPZNV.js} +10 -10
- package/dist/{IssuesPanel-B32Ifp4x.js → IssuesPanel-_E_fbSM8.js} +8 -8
- package/dist/{LoadingTrack-UTqOUN4O.js → LoadingTrack-BZ5KJyZ_.js} +2 -2
- package/dist/{ModuleBrowserModal-DodRped1.js → ModuleBrowserModal-BB22urqi.js} +10 -10
- package/dist/{ModulePreviewCanvas-DhcnddJF.js → ModulePreviewCanvas-CH5OdXv8.js} +3 -3
- package/dist/{NumberWithSuffix-DB7GyyCI.js → NumberWithSuffix-BHDXHMpo.js} +3 -3
- package/dist/{ParagraphEditor-pJA9BHAL.js → ParagraphEditor-BmY7LLgN.js} +24 -24
- package/dist/{RichTextEditorContent-dTGSUff_.js → RichTextEditorContent-COijbaWp.js} +8 -8
- package/dist/{SaveModuleDialog-D634e99d.js → SaveModuleDialog-D5WN-je_.js} +7 -7
- package/dist/{SnapshotHistory-m_nGAHlb.js → SnapshotHistory-BQ55Rhri.js} +9 -9
- package/dist/{TemplateScoringPanel-BOQh9neV.js → TemplateScoringPanel-Dhf_Qgr7.js} +15 -15
- package/dist/{TestEmailModal-DOcwoKkc.js → TestEmailModal-DH_Viz_m.js} +5 -5
- package/dist/{TitleEditor-t6JMWamY.js → TitleEditor-Dn613K8o.js} +12 -12
- package/dist/{TplModal-BAtbfDB0.js → TplModal-Dxa3rhHI.js} +4 -4
- package/dist/{blockTypeIcons-C4lXx3Au.js → blockTypeIcons-CrcSCTD6.js} +2 -2
- package/dist/bundle-stats.json +6 -6
- package/dist/cdn/chunks/{AiFeatureMenu-BeOyHAoZ.js → AiFeatureMenu-CCsgxyN9.js} +4 -4
- package/dist/cdn/chunks/{AiFeatureMenu-BeOyHAoZ.js.map → AiFeatureMenu-CCsgxyN9.js.map} +1 -1
- package/dist/cdn/chunks/{BlockIssueBadge-C6YilQdl.js → BlockIssueBadge-Lc3NWFV8.js} +3 -3
- package/dist/cdn/chunks/{BlockIssueBadge-C6YilQdl.js.map → BlockIssueBadge-Lc3NWFV8.js.map} +1 -1
- package/dist/cdn/chunks/{CloudEditor-DEA37rdW.js → CloudEditor-KkwvBhyt.js} +123 -123
- package/dist/cdn/chunks/{CloudEditor-DEA37rdW.js.map → CloudEditor-KkwvBhyt.js.map} +1 -1
- package/dist/cdn/chunks/{CollaboratorBar-CKW7jOW4.js → CollaboratorBar-BGIGiFSm.js} +4 -4
- package/dist/cdn/chunks/{CollaboratorBar-CKW7jOW4.js.map → CollaboratorBar-BGIGiFSm.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownBlock-DU9ga9Ki.js → CountdownBlock-gqnpxKp_.js} +4 -4
- package/dist/cdn/chunks/{CountdownBlock-DU9ga9Ki.js.map → CountdownBlock-gqnpxKp_.js.map} +1 -1
- package/dist/cdn/chunks/{CountdownToolbar-BHWsxth7.js → CountdownToolbar-xHpaWQE2.js} +4 -4
- package/dist/cdn/chunks/{CountdownToolbar-BHWsxth7.js.map → CountdownToolbar-xHpaWQE2.js.map} +1 -1
- package/dist/cdn/chunks/{IssuesPanel-BkYhij39.js → IssuesPanel-DHTTHu65.js} +4 -4
- package/dist/cdn/chunks/{IssuesPanel-BkYhij39.js.map → IssuesPanel-DHTTHu65.js.map} +1 -1
- package/dist/cdn/chunks/{ModuleBrowserModal-D51w942J.js → ModuleBrowserModal-DDTjrKph.js} +6 -6
- package/dist/cdn/chunks/{ModuleBrowserModal-D51w942J.js.map → ModuleBrowserModal-DDTjrKph.js.map} +1 -1
- package/dist/cdn/chunks/{ModulePreviewCanvas-BqTqcKHS.js → ModulePreviewCanvas-DeFq0hVi.js} +3 -3
- package/dist/cdn/chunks/{ModulePreviewCanvas-BqTqcKHS.js.map → ModulePreviewCanvas-DeFq0hVi.js.map} +1 -1
- package/dist/cdn/chunks/{NumberWithSuffix-DuUcF2zG.js → NumberWithSuffix-D4wtmU9O.js} +3 -3
- package/dist/cdn/chunks/{NumberWithSuffix-DuUcF2zG.js.map → NumberWithSuffix-D4wtmU9O.js.map} +1 -1
- package/dist/cdn/chunks/{ParagraphEditor-Bqjn3ZNm.js → ParagraphEditor-CwY8GeWa.js} +18 -18
- package/dist/cdn/chunks/{ParagraphEditor-Bqjn3ZNm.js.map → ParagraphEditor-CwY8GeWa.js.map} +1 -1
- package/dist/cdn/chunks/{RichTextEditorContent-mIkkb5EK.js → RichTextEditorContent-C_bMURGF.js} +5 -5
- package/dist/cdn/chunks/{RichTextEditorContent-mIkkb5EK.js.map → RichTextEditorContent-C_bMURGF.js.map} +1 -1
- package/dist/cdn/chunks/{SaveModuleDialog-Felfmkcj.js → SaveModuleDialog-DEi8PSP6.js} +3 -3
- package/dist/cdn/chunks/{SaveModuleDialog-Felfmkcj.js.map → SaveModuleDialog-DEi8PSP6.js.map} +1 -1
- package/dist/cdn/chunks/{TitleEditor-Dcldr8D6.js → TitleEditor-Betpo8AZ.js} +9 -9
- package/dist/cdn/chunks/{TitleEditor-Dcldr8D6.js.map → TitleEditor-Betpo8AZ.js.map} +1 -1
- package/dist/cdn/chunks/{blockTypeIcons-D05Wqf5u.js → blockTypeIcons-Xz6OBq3U.js} +3 -3
- package/dist/cdn/chunks/{blockTypeIcons-D05Wqf5u.js.map → blockTypeIcons-Xz6OBq3U.js.map} +1 -1
- package/dist/cdn/chunks/{draggable-J_1CPXYc.js → draggable-BTGr7_-X.js} +19 -19
- package/dist/cdn/chunks/{draggable-J_1CPXYc.js.map → draggable-BTGr7_-X.js.map} +1 -1
- package/dist/cdn/chunks/{extensions-CNmpC18A.js → extensions-D_j4UWxi.js} +4 -4
- package/dist/cdn/chunks/{extensions-CNmpC18A.js.map → extensions-D_j4UWxi.js.map} +1 -1
- package/dist/cdn/chunks/{features-_ar9QbVv.js → features-A28DQtjE.js} +815 -810
- package/dist/cdn/chunks/features-A28DQtjE.js.map +1 -0
- package/dist/cdn/chunks/{icons-CnwCLJX-.js → icons-C9D3N0-J.js} +2 -2
- package/dist/cdn/chunks/{icons-CnwCLJX-.js.map → icons-C9D3N0-J.js.map} +1 -1
- package/dist/cdn/chunks/{liquid.browser-rMoPo2t_.js → liquid.browser-DUDc3U21.js} +10 -10
- package/dist/cdn/chunks/{liquid.browser-rMoPo2t_.js.map → liquid.browser-DUDc3U21.js.map} +1 -1
- package/dist/cdn/chunks/{media-library-9jyt7Bf9.js → media-library-CH1Wx5wP.js} +7 -7
- package/dist/cdn/chunks/{media-library-9jyt7Bf9.js.map → media-library-CH1Wx5wP.js.map} +1 -1
- package/dist/cdn/chunks/pusher-CHo5Cua0.js.map +1 -1
- package/dist/cdn/chunks/{quality-CO9mj_RH.js → quality-D4NeyFej.js} +530 -530
- package/dist/cdn/chunks/{quality-CO9mj_RH.js.map → quality-D4NeyFej.js.map} +1 -1
- package/dist/cdn/chunks/{renderer-m6XTCWCL.js → renderer-BQnGfLhL.js} +16 -16
- package/dist/cdn/chunks/{renderer-m6XTCWCL.js.map → renderer-BQnGfLhL.js.map} +1 -1
- package/dist/cdn/chunks/{src-DfMSYqvE.js → src-BkKEyLw1.js} +6 -6
- package/dist/cdn/chunks/{src-DfMSYqvE.js.map → src-BkKEyLw1.js.map} +1 -1
- package/dist/cdn/chunks/{styles-1uFWdD5T.js → styles-BDVaiw3K.js} +142 -142
- package/dist/cdn/chunks/{styles-1uFWdD5T.js.map → styles-BDVaiw3K.js.map} +1 -1
- package/dist/cdn/chunks/{tiptap-CJbIm_hE.js → tiptap-P5abGB13.js} +4434 -2577
- package/dist/cdn/chunks/tiptap-P5abGB13.js.map +1 -0
- package/dist/cdn/editor.js +100 -100
- package/dist/cdn/editor.js.map +1 -1
- package/dist/{check-Bs6_uQpm.js → check-KooI2jyS.js} +1 -1
- package/dist/{chevron-down-so1rnGwF.js → chevron-down-mnlFgueW.js} +1 -1
- package/dist/{circle-alert-CrKv0AuW.js → circle-alert-D89_hB8j.js} +1 -1
- package/dist/{clock-Cpx6GYpa.js → clock-BaadyUrg.js} +1 -1
- package/dist/{cloud-bHhCNRZa.js → cloud-D-FScaHx.js} +2 -2
- package/dist/{createLucideIcon-DFBxEm5K.js → createLucideIcon-D-6fpD2L.js} +1 -1
- package/dist/{dist-DwEpKyry.js → dist-BttO3Zdx.js} +44 -44
- package/dist/{dist-CMkZaqX1.js → dist-C1WcikEF.js} +5 -5
- package/dist/dist-CjULgTep.js +4072 -0
- package/dist/{dist-BufRk8ZY.js → dist-D6L_WdRL.js} +95 -85
- package/dist/{dist-DJ5YJLXn.js → dist-DaajG7Fo.js} +5 -5
- package/dist/dist-Df4eV6Zi.js +5 -0
- package/dist/{dist-BejBMbBX.js → dist-Dnqx5UF3.js} +171 -158
- package/dist/{dist-CIK3BYgh.js → dist-Drp5bNAu.js} +5 -5
- package/dist/dist-WJ1fVd5b.js +5 -0
- package/dist/{dist-CoaWXQ7N.js → dist-XA2i70J5.js} +8 -8
- package/dist/{dist-74n2Mqc6.js → dist-b52vYHb5.js} +2 -2
- package/dist/{dist-2-A7SaKm.js → dist-cl33Ip6W.js} +1 -1
- package/dist/{dist-0RguD1vS.js → dist-sqf7pq5q.js} +16 -16
- package/dist/{dist-B3CcePtK.js → dist-zInT3Lf6.js} +75 -57
- package/dist/{extensions-C810eSzv.js → extensions-DA-w1gVg.js} +29 -29
- package/dist/{image-up-kMLE5GsI.js → image-up-DjwfAom6.js} +1 -1
- package/dist/{info-xqRxLfNz.js → info-Db3HlTr8.js} +1 -1
- package/dist/{keys-BoYBr3PU.js → keys-BjmL5YCT.js} +1 -1
- package/dist/{liquid.browser-IgQrXHPQ.js → liquid.browser--qtl1Fqy.js} +9 -9
- package/dist/{list-checks-C81htkBJ.js → list-checks-BlAB0X8a.js} +1 -1
- package/dist/{loader-circle-C6cZPIum.js → loader-circle-EVqyIxjU.js} +1 -1
- package/dist/{message-circle-dqOBRe07.js → message-circle-BuI5pBVG.js} +1 -1
- package/dist/{refresh-cw-DCjNd6o0.js → refresh-cw-C2vM_6zQ.js} +1 -1
- package/dist/{scan-line-DXz0nZVJ.js → scan-line-AUIh_SHI.js} +1 -1
- package/dist/{send-C4uH_WaI.js → send-nrbwF7xg.js} +1 -1
- package/dist/{shield-check-B3U68ssA.js → shield-check-B55Ozmva.js} +1 -1
- package/dist/{sparkles-CsDweGUy.js → sparkles-oh1NUSFq.js} +1 -1
- package/dist/{styles-CBlNpqL9.js → styles-Byhh107n.js} +33 -33
- package/dist/templatical-editor.js +81 -80
- package/dist/{text-align-start-BkKQePFp.js → text-align-start-B2MqzZwU.js} +1 -1
- package/dist/{trash-2-BIOkaEz1.js → trash-2-DH8RBwAx.js} +1 -1
- package/dist/{triangle-alert-Bbgu6uUG.js → triangle-alert-BQHjCt3B.js} +1 -1
- package/dist/{useAliveFlag-Bc99FWyR.js → useAliveFlag-B_b9ubwD.js} +1 -1
- package/dist/{useCloudI18n-DiwsLi6z.js → useCloudI18n-BHCrmQgj.js} +2 -2
- package/dist/{useEditorCore-7c1QpPlw.js → useEditorCore-BEgc3KFu.js} +368 -375
- package/dist/{useI18n-DskZMfRJ.js → useI18n-Bb9-ha9X.js} +2 -2
- package/dist/{useMergeTag-Co4xYwG6.js → useMergeTag-HykzEtBn.js} +3 -3
- package/dist/usePopoverRoot-BZDkRRry.js +8 -0
- package/dist/{vue.runtime.esm-bundler-D0Hg03Ub.js → vue.runtime.esm-bundler-MzYCkFSH.js} +18 -18
- package/dist/{x-DWU6NCuE.js → x-DgCCENgP.js} +1 -1
- package/package.json +25 -25
- package/dist/cdn/chunks/features-_ar9QbVv.js.map +0 -1
- package/dist/cdn/chunks/tiptap-CJbIm_hE.js.map +0 -1
- package/dist/dist-Bvje_Tqb.js +0 -5
- package/dist/dist-BxHa6kIT.js +0 -2243
- package/dist/dist-D1YvgM6p.js +0 -5
- package/dist/usePopoverRoot-DYH_gX8o.js +0 -8
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as e, r as t } from "./rolldown-runtime-Dqa2HsxW.js";
|
|
2
|
-
import { $ as n, A as r, B as i, C as a, F as o, G as s, H as c, J as l, K as u, L as d, M as f, N as p, O as m, P as h, Q as g, S as _, T as v, U as y, V as b, X as x, Y as S, Z as C, a as w, at as ee, b as T, c as E, ct as D, d as te, et as ne, f as O, g as k, h as A, it as j, k as re, l as M, m as N, n as ie, nt as P, o as ae, ot as F, p as I, rt as oe, s as se, st as L, t as ce, u as R, v as z, w as le, x as B, y as V, z as H } from "./draggable-
|
|
2
|
+
import { $ as n, A as r, B as i, C as a, F as o, G as s, H as c, J as l, K as u, L as d, M as f, N as p, O as m, P as h, Q as g, S as _, T as v, U as y, V as b, X as x, Y as S, Z as C, a as w, at as ee, b as T, c as E, ct as D, d as te, et as ne, f as O, g as k, h as A, it as j, k as re, l as M, m as N, n as ie, nt as P, o as ae, ot as F, p as I, rt as oe, s as se, st as L, t as ce, u as R, v as z, w as le, x as B, y as V, z as H } from "./draggable-BTGr7_-X.js";
|
|
3
3
|
//#region src/constants/timeouts.ts
|
|
4
4
|
var ue = 3e4, de = 4e3, fe = 5e3, pe = {
|
|
5
5
|
1: 36,
|
|
@@ -328,8 +328,20 @@ function ct(e) {
|
|
|
328
328
|
return t.id = W(), t.type === "section" && (t.children = t.children.map((e) => e.map((e) => ct(e)))), t;
|
|
329
329
|
}
|
|
330
330
|
//#endregion
|
|
331
|
+
//#region ../types/src/clone.ts
|
|
332
|
+
function lt(e) {
|
|
333
|
+
let t = /* @__PURE__ */ new WeakSet();
|
|
334
|
+
return JSON.parse(JSON.stringify(e, (e, n) => {
|
|
335
|
+
if (typeof n == "object" && n) {
|
|
336
|
+
if (t.has(n)) return;
|
|
337
|
+
t.add(n);
|
|
338
|
+
}
|
|
339
|
+
return n;
|
|
340
|
+
}));
|
|
341
|
+
}
|
|
342
|
+
//#endregion
|
|
331
343
|
//#region ../types/src/merge-tags.ts
|
|
332
|
-
var
|
|
344
|
+
var ut = {
|
|
333
345
|
liquid: {
|
|
334
346
|
value: /\{\{.+?\}\}/g,
|
|
335
347
|
logic: /\{%-?\s*(\w+).*?-?%\}/g
|
|
@@ -346,50 +358,50 @@ var lt = {
|
|
|
346
358
|
value: /%%=.+?=%%/g,
|
|
347
359
|
logic: /%%\[\s*(\w+).*?\]%%/g
|
|
348
360
|
}
|
|
349
|
-
},
|
|
361
|
+
}, dt = {
|
|
350
362
|
liquid: "{{",
|
|
351
363
|
handlebars: "{{",
|
|
352
364
|
mailchimp: "*|",
|
|
353
365
|
ampscript: "%%="
|
|
354
366
|
};
|
|
355
|
-
function dt(e) {
|
|
356
|
-
for (let t of Object.keys(lt)) if (lt[t].value.source === e.value.source) return ut[t];
|
|
357
|
-
return null;
|
|
358
|
-
}
|
|
359
367
|
function ft(e) {
|
|
360
|
-
|
|
368
|
+
for (let t of Object.keys(ut)) if (ut[t].value.source === e.value.source) return dt[t];
|
|
369
|
+
return null;
|
|
361
370
|
}
|
|
362
371
|
function pt(e) {
|
|
372
|
+
return e ? typeof e == "string" ? ut[e] ?? ut.liquid : e : ut.liquid;
|
|
373
|
+
}
|
|
374
|
+
function mt(e) {
|
|
363
375
|
let t = e.source, n = e.flags.replace("g", "");
|
|
364
376
|
return RegExp(`^${t}$`, n);
|
|
365
377
|
}
|
|
366
|
-
function
|
|
378
|
+
function ht(e, t) {
|
|
367
379
|
let n = e?.trim() || "";
|
|
368
|
-
return
|
|
380
|
+
return mt(t.logic).test(n) ? !1 : mt(t.value).test(n);
|
|
369
381
|
}
|
|
370
|
-
function
|
|
382
|
+
function gt(e, t) {
|
|
371
383
|
let n = t.find((t) => t.value === e);
|
|
372
384
|
return n ? n.label : e;
|
|
373
385
|
}
|
|
374
|
-
function gt(e, t) {
|
|
375
|
-
return xt(e, "data-merge-tag", (e) => ht(e, t));
|
|
376
|
-
}
|
|
377
386
|
function _t(e, t) {
|
|
387
|
+
return St(e, "data-merge-tag", (e) => gt(e, t));
|
|
388
|
+
}
|
|
389
|
+
function vt(e, t) {
|
|
378
390
|
if (!e) return !1;
|
|
379
391
|
let n = new RegExp(t.value.source, t.value.flags), r = new RegExp(t.logic.source, t.logic.flags);
|
|
380
392
|
return n.test(e) || r.test(e);
|
|
381
393
|
}
|
|
382
|
-
function vt(e, t) {
|
|
383
|
-
return pt(t.logic).test(e?.trim() || "");
|
|
384
|
-
}
|
|
385
394
|
function yt(e, t) {
|
|
395
|
+
return mt(t.logic).test(e?.trim() || "");
|
|
396
|
+
}
|
|
397
|
+
function bt(e, t) {
|
|
386
398
|
let n = new RegExp(t.logic.source, t.logic.flags.replace("g", "")), r = e.match(n);
|
|
387
399
|
return r && r[1] ? r[1].toUpperCase() : e;
|
|
388
400
|
}
|
|
389
|
-
function
|
|
390
|
-
return
|
|
401
|
+
function xt(e, t) {
|
|
402
|
+
return St(e, "data-logic-merge-tag", (e) => bt(e, t));
|
|
391
403
|
}
|
|
392
|
-
function
|
|
404
|
+
function St(e, t, n) {
|
|
393
405
|
let r = RegExp(`(?:^|\\s)${t}="([^"<>]*)"`), i = "", a = 0;
|
|
394
406
|
for (; a < e.length;) {
|
|
395
407
|
let t = e.indexOf("<span", a);
|
|
@@ -424,7 +436,7 @@ function xt(e, t, n) {
|
|
|
424
436
|
}
|
|
425
437
|
//#endregion
|
|
426
438
|
//#region ../types/src/config.ts
|
|
427
|
-
var
|
|
439
|
+
var Ct = class extends Error {
|
|
428
440
|
statusCode;
|
|
429
441
|
constructor(e, t) {
|
|
430
442
|
super(e), this.statusCode = t, this.name = "SdkError";
|
|
@@ -441,10 +453,10 @@ var St = class extends Error {
|
|
|
441
453
|
};
|
|
442
454
|
//#endregion
|
|
443
455
|
//#region ../core/src/editor.ts
|
|
444
|
-
function
|
|
456
|
+
function wt(e) {
|
|
445
457
|
return e === "1" ? 1 : e === "3" ? 3 : 2;
|
|
446
458
|
}
|
|
447
|
-
function
|
|
459
|
+
function Tt(e) {
|
|
448
460
|
let t = S({
|
|
449
461
|
content: e.content ?? Ue(e.defaultFontFamily, e.templateDefaults),
|
|
450
462
|
selectedBlockId: null,
|
|
@@ -534,7 +546,7 @@ function wt(e) {
|
|
|
534
546
|
if (s(n)) return;
|
|
535
547
|
let o = i(t.content.blocks, n);
|
|
536
548
|
if (o && o.type === "section") {
|
|
537
|
-
if (r < 0 || r >=
|
|
549
|
+
if (r < 0 || r >= wt(o.columns)) return;
|
|
538
550
|
o.children[r] = o.children[r] || [];
|
|
539
551
|
let t = o.children[r];
|
|
540
552
|
a !== void 0 && a < t.length ? t.splice(a, 0, e) : t.push(e);
|
|
@@ -566,7 +578,7 @@ function wt(e) {
|
|
|
566
578
|
let u;
|
|
567
579
|
if (r) {
|
|
568
580
|
let e = i(t.content.blocks, r);
|
|
569
|
-
if (!e || e.type !== "section" || a < 0 || a >=
|
|
581
|
+
if (!e || e.type !== "section" || a < 0 || a >= wt(e.columns)) return;
|
|
570
582
|
e.children[a] = e.children[a] || [], u = e.children[a];
|
|
571
583
|
} else u = t.content.blocks;
|
|
572
584
|
let [d] = c.blocks.splice(l, 1);
|
|
@@ -597,18 +609,11 @@ function wt(e) {
|
|
|
597
609
|
}
|
|
598
610
|
//#endregion
|
|
599
611
|
//#region ../core/src/history.ts
|
|
600
|
-
var
|
|
601
|
-
function
|
|
602
|
-
let { content: t, setContent: n, isRemoteOperation: r, maxSize: i =
|
|
612
|
+
var Et = 50, Dt = 300, Ot = 1500;
|
|
613
|
+
function kt(e) {
|
|
614
|
+
let { content: t, setContent: n, isRemoteOperation: r, maxSize: i = Et } = e, a = C([]), o = C([]), s = C(!1), c = null, l = null, u = y(() => a.value.length > 0), d = y(() => o.value.length > 0);
|
|
603
615
|
function f() {
|
|
604
|
-
|
|
605
|
-
return JSON.parse(JSON.stringify(t.value, (t, n) => {
|
|
606
|
-
if (typeof n == "object" && n) {
|
|
607
|
-
if (e.has(n)) return;
|
|
608
|
-
e.add(n);
|
|
609
|
-
}
|
|
610
|
-
return n;
|
|
611
|
-
}));
|
|
616
|
+
return lt(t.value);
|
|
612
617
|
}
|
|
613
618
|
function p(e) {
|
|
614
619
|
a.value.push(e), a.value.length > i && a.value.splice(0, a.value.length - i);
|
|
@@ -624,21 +629,21 @@ function Ot(e) {
|
|
|
624
629
|
if (l && l.blockId === e) {
|
|
625
630
|
clearTimeout(l.timeoutId), l.timeoutId = setTimeout(() => {
|
|
626
631
|
l = null;
|
|
627
|
-
},
|
|
632
|
+
}, Dt);
|
|
628
633
|
return;
|
|
629
634
|
}
|
|
630
635
|
m(), p(f()), o.value = [], l = {
|
|
631
636
|
blockId: e,
|
|
632
637
|
timeoutId: setTimeout(() => {
|
|
633
638
|
l = null;
|
|
634
|
-
},
|
|
639
|
+
}, Dt)
|
|
635
640
|
};
|
|
636
641
|
}
|
|
637
642
|
}
|
|
638
643
|
function _() {
|
|
639
644
|
s.value = !0, c && clearTimeout(c), c = setTimeout(() => {
|
|
640
645
|
s.value = !1, c = null;
|
|
641
|
-
},
|
|
646
|
+
}, Ot);
|
|
642
647
|
}
|
|
643
648
|
function v() {
|
|
644
649
|
if (a.value.length === 0) return;
|
|
@@ -672,7 +677,7 @@ function Ot(e) {
|
|
|
672
677
|
}
|
|
673
678
|
//#endregion
|
|
674
679
|
//#region ../core/src/block-actions.ts
|
|
675
|
-
function
|
|
680
|
+
function At(e) {
|
|
676
681
|
e.type === "table" ? e.rows = e.rows.map((e) => ({
|
|
677
682
|
...e,
|
|
678
683
|
id: W(),
|
|
@@ -688,7 +693,7 @@ function kt(e) {
|
|
|
688
693
|
id: W()
|
|
689
694
|
})));
|
|
690
695
|
}
|
|
691
|
-
function
|
|
696
|
+
function jt(e) {
|
|
692
697
|
let { addBlock: t, removeBlock: n, updateBlock: r, selectBlock: i, findBlockLocation: a } = e;
|
|
693
698
|
function o(n, r, a) {
|
|
694
699
|
let o = st(n, e.blockDefaults);
|
|
@@ -696,9 +701,9 @@ function At(e) {
|
|
|
696
701
|
}
|
|
697
702
|
function s(e, n, r) {
|
|
698
703
|
let o = JSON.parse(JSON.stringify(e));
|
|
699
|
-
if (o.id = W(),
|
|
704
|
+
if (o.id = W(), At(o), o.type === "section" && (o.children = o.children.map((e) => e.map((e) => {
|
|
700
705
|
let t = JSON.parse(JSON.stringify(e));
|
|
701
|
-
return t.id = W(),
|
|
706
|
+
return t.id = W(), At(t), t;
|
|
702
707
|
}))), n !== void 0 || r !== void 0) t(o, n, r);
|
|
703
708
|
else {
|
|
704
709
|
let i = a?.(e.id) ?? null;
|
|
@@ -721,7 +726,7 @@ function At(e) {
|
|
|
721
726
|
}
|
|
722
727
|
//#endregion
|
|
723
728
|
//#region ../core/src/auto-save.ts
|
|
724
|
-
function
|
|
729
|
+
function Mt(e) {
|
|
725
730
|
let { content: t, isDirty: n, onChange: r, debounce: i = 1e3, enabled: a = !0 } = e, o = null, s = !1;
|
|
726
731
|
function c() {
|
|
727
732
|
return typeof a == "function" ? a() : a;
|
|
@@ -759,7 +764,7 @@ function jt(e) {
|
|
|
759
764
|
}
|
|
760
765
|
//#endregion
|
|
761
766
|
//#region ../core/src/condition-preview.ts
|
|
762
|
-
function
|
|
767
|
+
function Nt(e) {
|
|
763
768
|
let t = S(/* @__PURE__ */ new Set()), n = y(() => t.size > 0);
|
|
764
769
|
function r(e) {
|
|
765
770
|
return t.has(e);
|
|
@@ -779,7 +784,7 @@ function Mt(e) {
|
|
|
779
784
|
}
|
|
780
785
|
//#endregion
|
|
781
786
|
//#region ../core/src/data-source-fetch.ts
|
|
782
|
-
function
|
|
787
|
+
function Pt(e) {
|
|
783
788
|
let t = C(!1), n = C(!1), r = y(() => !!e.definition.value?.dataSource), i = y(() => r.value && !e.block.value.dataSourceFetched);
|
|
784
789
|
async function a() {
|
|
785
790
|
let r = e.definition.value;
|
|
@@ -811,7 +816,7 @@ function Nt(e) {
|
|
|
811
816
|
}
|
|
812
817
|
//#endregion
|
|
813
818
|
//#region ../core/src/history-interceptor.ts
|
|
814
|
-
function
|
|
819
|
+
function Ft(e, t) {
|
|
815
820
|
let n = e.addBlock, r = e.removeBlock, i = e.moveBlock, a = e.updateBlock, o = e.updateSettings;
|
|
816
821
|
e.addBlock = (r, i, a, o) => {
|
|
817
822
|
i && e.isBlockLocked(i) || (t.record(), n(r, i, a, o));
|
|
@@ -827,10 +832,10 @@ function Pt(e, t) {
|
|
|
827
832
|
}
|
|
828
833
|
//#endregion
|
|
829
834
|
//#region ../../node_modules/.pnpm/@vueuse+shared@14.3.0_vue@3.5.35_typescript@6.0.3_/node_modules/@vueuse/shared/dist/index.js
|
|
830
|
-
function
|
|
835
|
+
function It(e, t) {
|
|
831
836
|
return s() ? (l(e, t), !0) : !1;
|
|
832
837
|
}
|
|
833
|
-
function
|
|
838
|
+
function Lt() {
|
|
834
839
|
let e = /* @__PURE__ */ new Set(), t = (t) => {
|
|
835
840
|
e.delete(t);
|
|
836
841
|
};
|
|
@@ -838,7 +843,7 @@ function It() {
|
|
|
838
843
|
on: (n) => {
|
|
839
844
|
e.add(n);
|
|
840
845
|
let r = () => t(n);
|
|
841
|
-
return
|
|
846
|
+
return It(r), { off: r };
|
|
842
847
|
},
|
|
843
848
|
off: t,
|
|
844
849
|
trigger: (...t) => Promise.all(Array.from(e).map((e) => e(...t))),
|
|
@@ -847,18 +852,18 @@ function It() {
|
|
|
847
852
|
}
|
|
848
853
|
};
|
|
849
854
|
}
|
|
850
|
-
var
|
|
855
|
+
var Rt = /* @__PURE__ */ new WeakMap(), zt = (...e) => {
|
|
851
856
|
let t = e[0], n = _()?.proxy ?? s();
|
|
852
857
|
if (n == null && !le()) throw Error("injectLocal must be called in setup");
|
|
853
|
-
return n &&
|
|
854
|
-
},
|
|
858
|
+
return n && Rt.has(n) && t in Rt.get(n) ? Rt.get(n)[t] : v(...e);
|
|
859
|
+
}, Bt = typeof window < "u" && typeof document < "u";
|
|
855
860
|
typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
|
|
856
|
-
var
|
|
857
|
-
function
|
|
861
|
+
var Vt = (e) => e != null, Ht = Object.prototype.toString, Ut = (e) => Ht.call(e) === "[object Object]", Wt = () => {}, Gt = (e, t) => Object.hasOwn(e, t), Kt = /* @__PURE__ */ qt();
|
|
862
|
+
function qt() {
|
|
858
863
|
var e, t;
|
|
859
|
-
return
|
|
864
|
+
return Bt && !!(!((e = window) == null || (e = e.navigator) == null) && e.userAgent) && (/iP(?:ad|hone|od)/.test(window.navigator.userAgent) || ((t = window) == null || (t = t.navigator) == null ? void 0 : t.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window?.navigator.userAgent));
|
|
860
865
|
}
|
|
861
|
-
function
|
|
866
|
+
function Jt(e, t) {
|
|
862
867
|
function n(...n) {
|
|
863
868
|
return new Promise((r, i) => {
|
|
864
869
|
Promise.resolve(e(() => t.apply(this, n), {
|
|
@@ -870,10 +875,10 @@ function qt(e, t) {
|
|
|
870
875
|
}
|
|
871
876
|
return n;
|
|
872
877
|
}
|
|
873
|
-
var
|
|
874
|
-
function
|
|
875
|
-
let n, r, i =
|
|
876
|
-
clearTimeout(e), i(), i =
|
|
878
|
+
var Yt = (e) => e();
|
|
879
|
+
function Xt(e, t = {}) {
|
|
880
|
+
let n, r, i = Wt, a = (e) => {
|
|
881
|
+
clearTimeout(e), i(), i = Wt;
|
|
877
882
|
}, o;
|
|
878
883
|
return (s) => {
|
|
879
884
|
let c = P(e), l = P(t.maxWait);
|
|
@@ -886,7 +891,7 @@ function Yt(e, t = {}) {
|
|
|
886
891
|
});
|
|
887
892
|
};
|
|
888
893
|
}
|
|
889
|
-
function
|
|
894
|
+
function Zt(e) {
|
|
890
895
|
let t;
|
|
891
896
|
function n() {
|
|
892
897
|
return t ||= e(), t;
|
|
@@ -896,32 +901,32 @@ function Xt(e) {
|
|
|
896
901
|
t = void 0, e && await e;
|
|
897
902
|
}, n;
|
|
898
903
|
}
|
|
899
|
-
function
|
|
904
|
+
function Qt(e) {
|
|
900
905
|
return e.endsWith("rem") ? Number.parseFloat(e) * 16 : Number.parseFloat(e);
|
|
901
906
|
}
|
|
902
|
-
function
|
|
907
|
+
function $t(e) {
|
|
903
908
|
return Array.isArray(e) ? e : [e];
|
|
904
909
|
}
|
|
905
|
-
function
|
|
910
|
+
function en(e) {
|
|
906
911
|
return e || _();
|
|
907
912
|
}
|
|
908
|
-
function en(e, t = 200, n = {}) {
|
|
909
|
-
return qt(Yt(t, n), e);
|
|
910
|
-
}
|
|
911
913
|
function tn(e, t = 200, n = {}) {
|
|
912
|
-
|
|
914
|
+
return Jt(Xt(t, n), e);
|
|
915
|
+
}
|
|
916
|
+
function nn(e, t = 200, n = {}) {
|
|
917
|
+
let r = C(P(e)), i = tn(() => {
|
|
913
918
|
r.value = e.value;
|
|
914
919
|
}, t, n);
|
|
915
920
|
return H(e, () => i()), g(r);
|
|
916
921
|
}
|
|
917
|
-
function
|
|
918
|
-
let { eventFilter: r =
|
|
919
|
-
return H(e,
|
|
922
|
+
function rn(e, t, n = {}) {
|
|
923
|
+
let { eventFilter: r = Yt, ...i } = n;
|
|
924
|
+
return H(e, Jt(r, t), i);
|
|
920
925
|
}
|
|
921
|
-
function
|
|
922
|
-
|
|
926
|
+
function an(e, t = !0, n) {
|
|
927
|
+
en(n) ? r(e, n) : t ? e() : m(e);
|
|
923
928
|
}
|
|
924
|
-
function
|
|
929
|
+
function on(e, t = 1e3, r = {}) {
|
|
925
930
|
let { immediate: i = !0, immediateCallback: a = !1 } = r, o = null, s = n(!1);
|
|
926
931
|
function c() {
|
|
927
932
|
o &&= (clearInterval(o), null);
|
|
@@ -933,15 +938,15 @@ function an(e, t = 1e3, r = {}) {
|
|
|
933
938
|
let n = P(t);
|
|
934
939
|
n <= 0 || (s.value = !0, a && e(), c(), s.value && (o = setInterval(e, n)));
|
|
935
940
|
}
|
|
936
|
-
return i &&
|
|
937
|
-
s.value &&
|
|
938
|
-
})),
|
|
941
|
+
return i && Bt && d(), (u(t) || typeof t == "function") && It(H(t, () => {
|
|
942
|
+
s.value && Bt && d();
|
|
943
|
+
})), It(l), {
|
|
939
944
|
isActive: g(s),
|
|
940
945
|
pause: l,
|
|
941
946
|
resume: d
|
|
942
947
|
};
|
|
943
948
|
}
|
|
944
|
-
function
|
|
949
|
+
function sn(e, t, r = {}) {
|
|
945
950
|
let { immediate: i = !0, immediateCallback: a = !1 } = r, o = n(!1), s;
|
|
946
951
|
function c() {
|
|
947
952
|
s &&= (clearTimeout(s), void 0);
|
|
@@ -954,13 +959,13 @@ function on(e, t, r = {}) {
|
|
|
954
959
|
o.value = !1, s = void 0, e(...n);
|
|
955
960
|
}, P(t));
|
|
956
961
|
}
|
|
957
|
-
return i && (o.value = !0,
|
|
962
|
+
return i && (o.value = !0, Bt && u()), It(l), {
|
|
958
963
|
isPending: g(o),
|
|
959
964
|
start: u,
|
|
960
965
|
stop: l
|
|
961
966
|
};
|
|
962
967
|
}
|
|
963
|
-
function
|
|
968
|
+
function cn(e = !1, t = {}) {
|
|
964
969
|
let { truthyValue: r = !0, falsyValue: i = !1 } = t, a = u(e), o = n(e);
|
|
965
970
|
function s(e) {
|
|
966
971
|
if (arguments.length) return o.value = e, o.value;
|
|
@@ -971,14 +976,14 @@ function sn(e = !1, t = {}) {
|
|
|
971
976
|
}
|
|
972
977
|
return a ? s : [o, s];
|
|
973
978
|
}
|
|
974
|
-
function
|
|
979
|
+
function ln(e, t, n = {}) {
|
|
975
980
|
let { debounce: r = 0, maxWait: i = void 0, ...a } = n;
|
|
976
|
-
return
|
|
981
|
+
return rn(e, t, {
|
|
977
982
|
...a,
|
|
978
|
-
eventFilter:
|
|
983
|
+
eventFilter: Xt(r, { maxWait: i })
|
|
979
984
|
});
|
|
980
985
|
}
|
|
981
|
-
function
|
|
986
|
+
function un(e, t, n) {
|
|
982
987
|
return H(e, t, {
|
|
983
988
|
...n,
|
|
984
989
|
immediate: !0
|
|
@@ -986,41 +991,41 @@ function ln(e, t, n) {
|
|
|
986
991
|
}
|
|
987
992
|
//#endregion
|
|
988
993
|
//#region ../../node_modules/.pnpm/@vueuse+core@14.3.0_vue@3.5.35_typescript@6.0.3_/node_modules/@vueuse/core/dist/index.js
|
|
989
|
-
var
|
|
994
|
+
var dn = Bt ? window : void 0, fn = Bt ? window.document : void 0, pn = Bt ? window.navigator : void 0;
|
|
990
995
|
function K(e) {
|
|
991
996
|
let t = P(e);
|
|
992
997
|
return t?.$el ?? t;
|
|
993
998
|
}
|
|
994
999
|
function q(...e) {
|
|
995
1000
|
let t = (e, t, n, r) => (e.addEventListener(t, n, r), () => e.removeEventListener(t, n, r)), n = O(() => {
|
|
996
|
-
let t =
|
|
1001
|
+
let t = $t(P(e[0])).filter((e) => e != null);
|
|
997
1002
|
return t.every((e) => typeof e != "string") ? t : void 0;
|
|
998
1003
|
});
|
|
999
|
-
return
|
|
1000
|
-
n.value?.map((e) => K(e)) ?? [
|
|
1001
|
-
|
|
1002
|
-
|
|
1004
|
+
return un(() => [
|
|
1005
|
+
n.value?.map((e) => K(e)) ?? [dn].filter((e) => e != null),
|
|
1006
|
+
$t(P(n.value ? e[1] : e[0])),
|
|
1007
|
+
$t(j(n.value ? e[2] : e[1])),
|
|
1003
1008
|
P(n.value ? e[3] : e[2])
|
|
1004
1009
|
], ([e, n, r, i], a, o) => {
|
|
1005
1010
|
if (!e?.length || !n?.length || !r?.length) return;
|
|
1006
|
-
let s =
|
|
1011
|
+
let s = Ut(i) ? { ...i } : i, c = e.flatMap((e) => n.flatMap((n) => r.map((r) => t(e, n, r, s))));
|
|
1007
1012
|
o(() => {
|
|
1008
1013
|
c.forEach((e) => e());
|
|
1009
1014
|
});
|
|
1010
1015
|
}, { flush: "post" });
|
|
1011
1016
|
}
|
|
1012
|
-
var
|
|
1013
|
-
function
|
|
1014
|
-
let { window: r =
|
|
1017
|
+
var mn = !1;
|
|
1018
|
+
function hn(e, t, n = {}) {
|
|
1019
|
+
let { window: r = dn, ignore: i = [], capture: a = !0, detectIframe: o = !1, controls: s = !1 } = n;
|
|
1015
1020
|
if (!r) return s ? {
|
|
1016
|
-
stop:
|
|
1017
|
-
cancel:
|
|
1018
|
-
trigger:
|
|
1019
|
-
} :
|
|
1020
|
-
if (
|
|
1021
|
-
|
|
1021
|
+
stop: Wt,
|
|
1022
|
+
cancel: Wt,
|
|
1023
|
+
trigger: Wt
|
|
1024
|
+
} : Wt;
|
|
1025
|
+
if (Kt && !mn) {
|
|
1026
|
+
mn = !0;
|
|
1022
1027
|
let e = { passive: !0 };
|
|
1023
|
-
Array.from(r.document.body.children).forEach((t) => t.addEventListener("click",
|
|
1028
|
+
Array.from(r.document.body.children).forEach((t) => t.addEventListener("click", Wt, e)), r.document.documentElement.addEventListener("click", Wt, e);
|
|
1024
1029
|
}
|
|
1025
1030
|
let c = !0, l = (e) => P(i).some((t) => {
|
|
1026
1031
|
if (typeof t == "string") return Array.from(r.document.querySelectorAll(t)).some((t) => t === e.target || e.composedPath().includes(t));
|
|
@@ -1077,21 +1082,21 @@ function mn(e, t, n = {}) {
|
|
|
1077
1082
|
}
|
|
1078
1083
|
} : h;
|
|
1079
1084
|
}
|
|
1080
|
-
function
|
|
1085
|
+
function gn() {
|
|
1081
1086
|
let e = n(!1), t = _();
|
|
1082
1087
|
return t && r(() => {
|
|
1083
1088
|
e.value = !0;
|
|
1084
1089
|
}, t), e;
|
|
1085
1090
|
}
|
|
1086
1091
|
/* @__NO_SIDE_EFFECTS__ */
|
|
1087
|
-
function
|
|
1088
|
-
return
|
|
1092
|
+
function _n(e) {
|
|
1093
|
+
return gn(), O(() => !!e());
|
|
1089
1094
|
}
|
|
1090
|
-
function
|
|
1091
|
-
let { window: r =
|
|
1095
|
+
function vn(e, t, n = {}) {
|
|
1096
|
+
let { window: r = dn, ...i } = n, a, o = /* @__PURE__ */ _n(() => r && "MutationObserver" in r), s = () => {
|
|
1092
1097
|
a &&= (a.disconnect(), void 0);
|
|
1093
1098
|
}, c = H(O(() => {
|
|
1094
|
-
let t =
|
|
1099
|
+
let t = $t(P(e)).map(K).filter(Vt);
|
|
1095
1100
|
return new Set(t);
|
|
1096
1101
|
}), (e) => {
|
|
1097
1102
|
s(), o.value && e.size && (a = new MutationObserver(t), e.forEach((e) => a.observe(e, i)));
|
|
@@ -1101,25 +1106,25 @@ function _n(e, t, n = {}) {
|
|
|
1101
1106
|
}), l = () => a?.takeRecords(), u = () => {
|
|
1102
1107
|
c(), s();
|
|
1103
1108
|
};
|
|
1104
|
-
return
|
|
1109
|
+
return It(u), {
|
|
1105
1110
|
isSupported: o,
|
|
1106
1111
|
stop: u,
|
|
1107
1112
|
takeRecords: l
|
|
1108
1113
|
};
|
|
1109
1114
|
}
|
|
1110
|
-
var
|
|
1115
|
+
var yn = Symbol("vueuse-ssr-width");
|
|
1111
1116
|
/* @__NO_SIDE_EFFECTS__ */
|
|
1112
|
-
function
|
|
1113
|
-
let e = le() ?
|
|
1117
|
+
function bn() {
|
|
1118
|
+
let e = le() ? zt(yn, null) : null;
|
|
1114
1119
|
return typeof e == "number" ? e : void 0;
|
|
1115
1120
|
}
|
|
1116
|
-
function
|
|
1117
|
-
let { window: r =
|
|
1121
|
+
function xn(e, t = {}) {
|
|
1122
|
+
let { window: r = dn, ssrWidth: a = /* @__PURE__ */ bn() } = t, o = /* @__PURE__ */ _n(() => r && "matchMedia" in r && typeof r.matchMedia == "function"), s = n(typeof a == "number"), c = n(), l = n(!1);
|
|
1118
1123
|
return i(() => {
|
|
1119
1124
|
if (s.value) {
|
|
1120
1125
|
s.value = !o.value, l.value = P(e).split(",").some((e) => {
|
|
1121
1126
|
let t = e.includes("not all"), n = e.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/), r = e.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/), i = !!(n || r);
|
|
1122
|
-
return n && i && (i = a >=
|
|
1127
|
+
return n && i && (i = a >= Qt(n[1])), r && i && (i = a <= Qt(r[1])), t ? !i : i;
|
|
1123
1128
|
});
|
|
1124
1129
|
return;
|
|
1125
1130
|
}
|
|
@@ -1128,12 +1133,12 @@ function bn(e, t = {}) {
|
|
|
1128
1133
|
l.value = e.matches;
|
|
1129
1134
|
}, { passive: !0 }), O(() => l.value);
|
|
1130
1135
|
}
|
|
1131
|
-
function
|
|
1132
|
-
let { controls: r = !1, navigator: i =
|
|
1136
|
+
function Sn(e, t = {}) {
|
|
1137
|
+
let { controls: r = !1, navigator: i = pn } = t, a = /* @__PURE__ */ _n(() => i && "permissions" in i), o = n(), s = typeof e == "string" ? { name: e } : e, c = n(), l = () => {
|
|
1133
1138
|
c.value = o.value?.state ?? "prompt";
|
|
1134
1139
|
};
|
|
1135
1140
|
q(o, "change", l, { passive: !0 });
|
|
1136
|
-
let u =
|
|
1141
|
+
let u = Zt(async () => {
|
|
1137
1142
|
if (a.value) {
|
|
1138
1143
|
if (!o.value) try {
|
|
1139
1144
|
o.value = await i.permissions.query(s);
|
|
@@ -1151,8 +1156,8 @@ function xn(e, t = {}) {
|
|
|
1151
1156
|
query: u
|
|
1152
1157
|
} : c;
|
|
1153
1158
|
}
|
|
1154
|
-
function
|
|
1155
|
-
let { navigator: t =
|
|
1159
|
+
function Cn(e = {}) {
|
|
1160
|
+
let { navigator: t = pn, read: r = !1, source: i, copiedDuring: a = 1500, legacy: o = !1 } = e, s = /* @__PURE__ */ _n(() => t && "clipboard" in t), c = Sn("clipboard-read"), l = Sn("clipboard-write"), u = O(() => s.value || o), d = n(""), f = n(!1), p = n(!1), m = sn(() => f.value = !1, a, { immediate: !1 }), h = 0;
|
|
1156
1161
|
async function _() {
|
|
1157
1162
|
let e = !(s.value && S(c.value));
|
|
1158
1163
|
if (!e) try {
|
|
@@ -1204,9 +1209,9 @@ function Sn(e = {}) {
|
|
|
1204
1209
|
copy: v
|
|
1205
1210
|
};
|
|
1206
1211
|
}
|
|
1207
|
-
function
|
|
1212
|
+
function wn(e, t = {}) {
|
|
1208
1213
|
let r = n(!1), i = n(null), a = 0, o = !0;
|
|
1209
|
-
if (
|
|
1214
|
+
if (Bt) {
|
|
1210
1215
|
let n = typeof t == "function" ? { onDrop: t } : t, s = n.multiple ?? !0, c = n.preventDefaultForUnhandled ?? !1, l = (e) => {
|
|
1211
1216
|
let t = Array.from(e.dataTransfer?.files ?? []);
|
|
1212
1217
|
return t.length === 0 ? null : s ? t : [t[0]];
|
|
@@ -1249,8 +1254,8 @@ function Cn(e, t = {}) {
|
|
|
1249
1254
|
isOverDropZone: r
|
|
1250
1255
|
};
|
|
1251
1256
|
}
|
|
1252
|
-
function
|
|
1253
|
-
let { window: r =
|
|
1257
|
+
function Tn(e, t, n = {}) {
|
|
1258
|
+
let { window: r = dn, ...i } = n, a, o = /* @__PURE__ */ _n(() => r && "ResizeObserver" in r), s = () => {
|
|
1254
1259
|
a &&= (a.disconnect(), void 0);
|
|
1255
1260
|
}, c = H(O(() => {
|
|
1256
1261
|
let t = P(e);
|
|
@@ -1266,12 +1271,12 @@ function wn(e, t, n = {}) {
|
|
|
1266
1271
|
}), l = () => {
|
|
1267
1272
|
s(), c();
|
|
1268
1273
|
};
|
|
1269
|
-
return
|
|
1274
|
+
return It(l), {
|
|
1270
1275
|
isSupported: o,
|
|
1271
1276
|
stop: l
|
|
1272
1277
|
};
|
|
1273
1278
|
}
|
|
1274
|
-
function
|
|
1279
|
+
function En(e, t = {}) {
|
|
1275
1280
|
let { reset: r = !0, windowResize: i = !0, windowScroll: a = !0, immediate: o = !0, updateTiming: s = "sync" } = t, c = n(0), l = n(0), u = n(0), d = n(0), f = n(0), p = n(0), m = n(0), h = n(0);
|
|
1276
1281
|
function g() {
|
|
1277
1282
|
let t = K(e);
|
|
@@ -1285,10 +1290,10 @@ function Tn(e, t = {}) {
|
|
|
1285
1290
|
function _() {
|
|
1286
1291
|
s === "sync" ? g() : s === "next-frame" && requestAnimationFrame(() => g());
|
|
1287
1292
|
}
|
|
1288
|
-
return
|
|
1293
|
+
return Tn(e, _), H(() => K(e), (e) => !e && _()), vn(e, _, { attributeFilter: ["style", "class"] }), a && q("scroll", _, {
|
|
1289
1294
|
capture: !0,
|
|
1290
1295
|
passive: !0
|
|
1291
|
-
}), i && q("resize", _, { passive: !0 }),
|
|
1296
|
+
}), i && q("resize", _, { passive: !0 }), an(() => {
|
|
1292
1297
|
o && _();
|
|
1293
1298
|
}), {
|
|
1294
1299
|
height: c,
|
|
@@ -1302,8 +1307,8 @@ function Tn(e, t = {}) {
|
|
|
1302
1307
|
update: _
|
|
1303
1308
|
};
|
|
1304
1309
|
}
|
|
1305
|
-
function
|
|
1306
|
-
let { root: i, rootMargin: a, threshold: o = 0, window: s =
|
|
1310
|
+
function Dn(e, t, r = {}) {
|
|
1311
|
+
let { root: i, rootMargin: a, threshold: o = 0, window: s = dn, immediate: c = !0 } = r, l = /* @__PURE__ */ _n(() => s && "IntersectionObserver" in s), u = O(() => $t(P(e)).map(K).filter(Vt)), d = Wt, f = n(c), p = l.value ? H(() => [
|
|
1307
1312
|
u.value,
|
|
1308
1313
|
K(i),
|
|
1309
1314
|
P(a),
|
|
@@ -1316,15 +1321,15 @@ function En(e, t, r = {}) {
|
|
|
1316
1321
|
threshold: o
|
|
1317
1322
|
});
|
|
1318
1323
|
e.forEach((e) => e && i.observe(e)), d = () => {
|
|
1319
|
-
i.disconnect(), d =
|
|
1324
|
+
i.disconnect(), d = Wt;
|
|
1320
1325
|
};
|
|
1321
1326
|
}, {
|
|
1322
1327
|
immediate: c,
|
|
1323
1328
|
flush: "post"
|
|
1324
|
-
}) :
|
|
1329
|
+
}) : Wt, m = () => {
|
|
1325
1330
|
d(), p(), f.value = !1;
|
|
1326
1331
|
};
|
|
1327
|
-
return
|
|
1332
|
+
return It(m), {
|
|
1328
1333
|
isSupported: l,
|
|
1329
1334
|
isActive: f,
|
|
1330
1335
|
pause() {
|
|
@@ -1336,21 +1341,21 @@ function En(e, t, r = {}) {
|
|
|
1336
1341
|
stop: m
|
|
1337
1342
|
};
|
|
1338
1343
|
}
|
|
1339
|
-
var
|
|
1344
|
+
var On = {
|
|
1340
1345
|
multiple: !0,
|
|
1341
1346
|
accept: "*",
|
|
1342
1347
|
reset: !1,
|
|
1343
1348
|
directory: !1
|
|
1344
1349
|
};
|
|
1345
|
-
function
|
|
1350
|
+
function kn(e) {
|
|
1346
1351
|
if (!e) return null;
|
|
1347
1352
|
if (e instanceof FileList) return e;
|
|
1348
1353
|
let t = new DataTransfer();
|
|
1349
1354
|
for (let n of e) t.items.add(n);
|
|
1350
1355
|
return t.files;
|
|
1351
1356
|
}
|
|
1352
|
-
function
|
|
1353
|
-
let { document: t =
|
|
1357
|
+
function An(e = {}) {
|
|
1358
|
+
let { document: t = fn } = e, n = C(kn(e.initialFiles)), { on: r, trigger: a } = Lt(), { on: o, trigger: s } = Lt(), c = O(() => {
|
|
1354
1359
|
let r = K(e.input) ?? (t ? t.createElement("input") : void 0);
|
|
1355
1360
|
return r && (r.type = "file", r.onchange = (e) => {
|
|
1356
1361
|
n.value = e.target.files, a(n.value);
|
|
@@ -1361,7 +1366,7 @@ function kn(e = {}) {
|
|
|
1361
1366
|
n.value = null, c.value && c.value.value && (c.value.value = "", a(null));
|
|
1362
1367
|
}, u = (e) => {
|
|
1363
1368
|
let t = c.value;
|
|
1364
|
-
t && (t.multiple = P(e.multiple), t.accept = P(e.accept), t.webkitdirectory = P(e.directory),
|
|
1369
|
+
t && (t.multiple = P(e.multiple), t.accept = P(e.accept), t.webkitdirectory = P(e.directory), Gt(e, "capture") && (t.capture = P(e.capture)));
|
|
1365
1370
|
};
|
|
1366
1371
|
return i(() => {
|
|
1367
1372
|
u(e);
|
|
@@ -1371,7 +1376,7 @@ function kn(e = {}) {
|
|
|
1371
1376
|
let n = c.value;
|
|
1372
1377
|
if (!n) return;
|
|
1373
1378
|
let r = {
|
|
1374
|
-
...
|
|
1379
|
+
...On,
|
|
1375
1380
|
...e,
|
|
1376
1381
|
...t
|
|
1377
1382
|
};
|
|
@@ -1384,26 +1389,26 @@ function kn(e = {}) {
|
|
|
1384
1389
|
}
|
|
1385
1390
|
//#endregion
|
|
1386
1391
|
//#region src/utils/activeEditorTracker.ts
|
|
1387
|
-
var
|
|
1388
|
-
function
|
|
1389
|
-
let e = ++
|
|
1390
|
-
return
|
|
1392
|
+
var jn = /* @__PURE__ */ new Set(), Mn = 0, Nn = 0;
|
|
1393
|
+
function Pn() {
|
|
1394
|
+
let e = ++Nn;
|
|
1395
|
+
return jn.add(e), Mn === 0 && (Mn = e), {
|
|
1391
1396
|
id: e,
|
|
1392
|
-
isActive: () =>
|
|
1397
|
+
isActive: () => jn.size <= 1 || Mn === e,
|
|
1393
1398
|
claim: () => {
|
|
1394
|
-
|
|
1399
|
+
Mn = e;
|
|
1395
1400
|
},
|
|
1396
1401
|
dispose: () => {
|
|
1397
|
-
if (
|
|
1398
|
-
let e = Array.from(
|
|
1399
|
-
|
|
1402
|
+
if (jn.delete(e), Mn === e) {
|
|
1403
|
+
let e = Array.from(jn);
|
|
1404
|
+
Mn = e[e.length - 1] ?? 0;
|
|
1400
1405
|
}
|
|
1401
1406
|
}
|
|
1402
1407
|
};
|
|
1403
1408
|
}
|
|
1404
1409
|
//#endregion
|
|
1405
1410
|
//#region src/keys.ts
|
|
1406
|
-
var
|
|
1411
|
+
var Fn = Symbol("translations"), In = Symbol("editor"), Ln = Symbol("history"), Rn = Symbol("blockActions"), zn = Symbol("conditionPreview"), Bn = Symbol("fontsManager"), Vn = Symbol("themeStyles"), Hn = Symbol("tplUiTheme"), Un = Symbol("blockDefaults"), Wn = Symbol("blockRegistry"), Gn = Symbol("customBlockDefinitions"), Kn = Symbol("customBlockStylesheets"), qn = Symbol("mergeTags"), Jn = Symbol("mergeTagSyntax"), Yn = Symbol("onRequestMergeTag"), Xn = Symbol("mergeTagAutocomplete"), Zn = Symbol("mergeTagPicker"), Qn = Symbol("onRequestMedia"), $n = Symbol("displayConditions"), er = Symbol("allowCustomConditions"), tr = Symbol("capabilities"), nr = Symbol("keyboardReorder"), rr = Symbol("templateLint"), ir = Symbol("editorRoot"), ar = Symbol("popoverRoot"), or = Symbol("authManager"), sr = Symbol("aiConfig"), cr = Symbol("comments"), lr = Symbol("savedModulesHeadless"), ur = Symbol("scoring"), dr = Symbol("cloudTranslations");
|
|
1407
1412
|
function J(e, t) {
|
|
1408
1413
|
let n = v(e, null);
|
|
1409
1414
|
if (n == null) throw Error(`${t} requires a provider for ${e.description ?? "unknown key"}. Ensure it is a descendant of Editor or CloudEditor.`);
|
|
@@ -1411,7 +1416,7 @@ function J(e, t) {
|
|
|
1411
1416
|
}
|
|
1412
1417
|
//#endregion
|
|
1413
1418
|
//#region src/composables/useMergeTagPicker.ts
|
|
1414
|
-
function
|
|
1419
|
+
function fr() {
|
|
1415
1420
|
let e = C(!1), t = C([]), n = null;
|
|
1416
1421
|
function r(r) {
|
|
1417
1422
|
if (n) {
|
|
@@ -1441,17 +1446,17 @@ function dr() {
|
|
|
1441
1446
|
}
|
|
1442
1447
|
//#endregion
|
|
1443
1448
|
//#region src/composables/useTemplateLint.ts
|
|
1444
|
-
function
|
|
1449
|
+
function pr(e) {
|
|
1445
1450
|
return e ? e.disabled === !0 ? !0 : e.accessibility === !1 && e.structure === !1 && e.links === !1 : !1;
|
|
1446
1451
|
}
|
|
1447
|
-
function
|
|
1448
|
-
let t = C([]), r = C(!1), i = C(!1), a = n(null), o =
|
|
1452
|
+
function mr(e) {
|
|
1453
|
+
let t = C([]), r = C(!1), i = C(!1), a = n(null), o = pr(e.options), s = null, c = !1;
|
|
1449
1454
|
o || l();
|
|
1450
1455
|
async function l() {
|
|
1451
1456
|
try {
|
|
1452
|
-
let t = await import("./quality-
|
|
1457
|
+
let t = await import("./quality-D4NeyFej.js").then((e) => e.t);
|
|
1453
1458
|
if (c) return;
|
|
1454
|
-
a.value = { lintTemplate: t.lintTemplate }, r.value = !0, u(), s =
|
|
1459
|
+
a.value = { lintTemplate: t.lintTemplate }, r.value = !0, u(), s = ln(e.content, u, {
|
|
1455
1460
|
debounce: e.debounce ?? 500,
|
|
1456
1461
|
deep: !0
|
|
1457
1462
|
});
|
|
@@ -1487,7 +1492,7 @@ function pr(e) {
|
|
|
1487
1492
|
//#endregion
|
|
1488
1493
|
//#region src/composables/useI18n.ts
|
|
1489
1494
|
function Y(e) {
|
|
1490
|
-
let t = e ?? v(
|
|
1495
|
+
let t = e ?? v(Fn, null);
|
|
1491
1496
|
if (!t) throw Error("useI18n() requires a translations provider. Ensure the component is a descendant of Editor or CloudEditor.");
|
|
1492
1497
|
let n = u(t) ? t.value : t;
|
|
1493
1498
|
function r(e, t) {
|
|
@@ -1500,12 +1505,12 @@ function Y(e) {
|
|
|
1500
1505
|
}
|
|
1501
1506
|
//#endregion
|
|
1502
1507
|
//#region src/utils/blockTypeLabels.ts
|
|
1503
|
-
function
|
|
1508
|
+
function hr(e, t) {
|
|
1504
1509
|
return t.blocks[e] ?? e;
|
|
1505
1510
|
}
|
|
1506
1511
|
//#endregion
|
|
1507
1512
|
//#region src/composables/useKeyboardReorder.ts
|
|
1508
|
-
function
|
|
1513
|
+
function gr(e, t) {
|
|
1509
1514
|
let n = C(null), r = C(""), i = null;
|
|
1510
1515
|
function a(t) {
|
|
1511
1516
|
let n = e.content.value.blocks, r = n.findIndex((e) => e.id === t);
|
|
@@ -1532,7 +1537,7 @@ function hr(e, t) {
|
|
|
1532
1537
|
let r = a(n);
|
|
1533
1538
|
if (!r) return "";
|
|
1534
1539
|
let i = (r.sectionId ? s(r.sectionId, r.columnIndex ?? 0) : e.content.value.blocks)?.[r.index];
|
|
1535
|
-
return i ?
|
|
1540
|
+
return i ? hr(i.type, t.t) : "";
|
|
1536
1541
|
}
|
|
1537
1542
|
function s(t, n) {
|
|
1538
1543
|
return e.content.value.blocks.find((e) => e.id === t && e.type === "section")?.children[n] ?? null;
|
|
@@ -1601,13 +1606,13 @@ function hr(e, t) {
|
|
|
1601
1606
|
}
|
|
1602
1607
|
//#endregion
|
|
1603
1608
|
//#region src/composables/useUiTheme.ts
|
|
1604
|
-
function
|
|
1605
|
-
let t =
|
|
1609
|
+
function _r(e) {
|
|
1610
|
+
let t = xn("(prefers-color-scheme: dark)");
|
|
1606
1611
|
return { resolvedTheme: O(() => e.value === "auto" ? t.value ? "dark" : "light" : e.value) };
|
|
1607
1612
|
}
|
|
1608
1613
|
//#endregion
|
|
1609
1614
|
//#region src/composables/useThemeStyles.ts
|
|
1610
|
-
var
|
|
1615
|
+
var vr = {
|
|
1611
1616
|
bg: "--tpl-bg",
|
|
1612
1617
|
bgElevated: "--tpl-bg-elevated",
|
|
1613
1618
|
bgHover: "--tpl-bg-hover",
|
|
@@ -1631,10 +1636,10 @@ var _r = {
|
|
|
1631
1636
|
dangerLight: "--tpl-danger-light",
|
|
1632
1637
|
canvasBg: "--tpl-canvas-bg"
|
|
1633
1638
|
};
|
|
1634
|
-
function
|
|
1639
|
+
function yr({ themeOverrides: e, resolvedTheme: t, extraStyles: n }) {
|
|
1635
1640
|
return { themeStyles: O(() => {
|
|
1636
1641
|
let r = {}, i = e.value, a = t.value === "dark" ? i.dark : i;
|
|
1637
|
-
if (a) for (let [e, t] of Object.entries(
|
|
1642
|
+
if (a) for (let [e, t] of Object.entries(vr)) {
|
|
1638
1643
|
let n = a[e];
|
|
1639
1644
|
n && (r[t] = n);
|
|
1640
1645
|
}
|
|
@@ -1643,27 +1648,27 @@ function vr({ themeOverrides: e, resolvedTheme: t, extraStyles: n }) {
|
|
|
1643
1648
|
}
|
|
1644
1649
|
//#endregion
|
|
1645
1650
|
//#region src/utils/logger.ts
|
|
1646
|
-
var
|
|
1647
|
-
function
|
|
1651
|
+
var br = "[Templatical]";
|
|
1652
|
+
function xr() {
|
|
1648
1653
|
return typeof process < "u" && !0;
|
|
1649
1654
|
}
|
|
1650
|
-
var
|
|
1655
|
+
var Sr = {
|
|
1651
1656
|
warn(...e) {
|
|
1652
|
-
console.warn(
|
|
1657
|
+
console.warn(br, ...e);
|
|
1653
1658
|
},
|
|
1654
1659
|
error(...e) {
|
|
1655
|
-
console.error(
|
|
1660
|
+
console.error(br, ...e);
|
|
1656
1661
|
},
|
|
1657
1662
|
debug(...e) {
|
|
1658
|
-
|
|
1663
|
+
xr() || console.debug(br, ...e);
|
|
1659
1664
|
},
|
|
1660
1665
|
info(...e) {
|
|
1661
|
-
|
|
1666
|
+
xr() || console.info(br, ...e);
|
|
1662
1667
|
}
|
|
1663
1668
|
};
|
|
1664
1669
|
//#endregion
|
|
1665
1670
|
//#region src/composables/useBlockRegistry.ts
|
|
1666
|
-
function
|
|
1671
|
+
function Cr() {
|
|
1667
1672
|
let e = n(/* @__PURE__ */ new Map());
|
|
1668
1673
|
function t(t, n) {
|
|
1669
1674
|
e.value.set(t, n), oe(e);
|
|
@@ -1709,13 +1714,13 @@ function Sr() {
|
|
|
1709
1714
|
let t = s(e.customType);
|
|
1710
1715
|
if (!t) return c("Block definition not found");
|
|
1711
1716
|
try {
|
|
1712
|
-
let { Liquid: n } = await import("./liquid.browser-
|
|
1717
|
+
let { Liquid: n } = await import("./liquid.browser-DUDc3U21.js");
|
|
1713
1718
|
return await new n({
|
|
1714
1719
|
strictVariables: !1,
|
|
1715
1720
|
strictFilters: !1
|
|
1716
1721
|
}).parseAndRender(t.template, e.fieldValues);
|
|
1717
1722
|
} catch (t) {
|
|
1718
|
-
return
|
|
1723
|
+
return Sr.error(`Failed to render custom block "${e.customType}":`, t), c(`Render error: ${e.customType}`);
|
|
1719
1724
|
}
|
|
1720
1725
|
}
|
|
1721
1726
|
function u(t) {
|
|
@@ -1734,9 +1739,9 @@ function Sr() {
|
|
|
1734
1739
|
}
|
|
1735
1740
|
//#endregion
|
|
1736
1741
|
//#region src/composables/useCustomBlockStylesheets.ts
|
|
1737
|
-
function
|
|
1742
|
+
function wr(e, t) {
|
|
1738
1743
|
return O(() => {
|
|
1739
|
-
let n =
|
|
1744
|
+
let n = Tr(e.value.blocks);
|
|
1740
1745
|
if (n.size === 0) return [];
|
|
1741
1746
|
let r = /* @__PURE__ */ new Set(), i = [];
|
|
1742
1747
|
for (let e of n) {
|
|
@@ -1748,11 +1753,11 @@ function Cr(e, t) {
|
|
|
1748
1753
|
return i;
|
|
1749
1754
|
});
|
|
1750
1755
|
}
|
|
1751
|
-
function
|
|
1756
|
+
function Tr(e) {
|
|
1752
1757
|
let t = /* @__PURE__ */ new Set();
|
|
1753
|
-
return
|
|
1758
|
+
return Er(e, t), t;
|
|
1754
1759
|
}
|
|
1755
|
-
function
|
|
1760
|
+
function Er(e, t) {
|
|
1756
1761
|
for (let n of e) {
|
|
1757
1762
|
if (Ee(n)) {
|
|
1758
1763
|
t.add(n.customType);
|
|
@@ -1761,13 +1766,13 @@ function Tr(e, t) {
|
|
|
1761
1766
|
if (n.type === "section") {
|
|
1762
1767
|
let e = n.children;
|
|
1763
1768
|
if (!e) continue;
|
|
1764
|
-
for (let n of e)
|
|
1769
|
+
for (let n of e) Er(n, t);
|
|
1765
1770
|
}
|
|
1766
1771
|
}
|
|
1767
1772
|
}
|
|
1768
1773
|
//#endregion
|
|
1769
1774
|
//#region src/utils/registerBuiltInBlocks.ts
|
|
1770
|
-
var
|
|
1775
|
+
var Dr = [
|
|
1771
1776
|
{
|
|
1772
1777
|
type: "section",
|
|
1773
1778
|
label: "Section",
|
|
@@ -1834,8 +1839,8 @@ var Er = [
|
|
|
1834
1839
|
createBlock: it
|
|
1835
1840
|
}
|
|
1836
1841
|
];
|
|
1837
|
-
function
|
|
1838
|
-
for (let n of
|
|
1842
|
+
function Or(e, t) {
|
|
1843
|
+
for (let n of Dr) {
|
|
1839
1844
|
let r = t[n.type];
|
|
1840
1845
|
r && e.registerBuiltIn(n.type, {
|
|
1841
1846
|
component: r,
|
|
@@ -1850,7 +1855,7 @@ function Dr(e, t) {
|
|
|
1850
1855
|
}
|
|
1851
1856
|
//#endregion
|
|
1852
1857
|
//#region src/utils/keyboardShortcuts.ts
|
|
1853
|
-
function
|
|
1858
|
+
function kr(e) {
|
|
1854
1859
|
for (let t of e.composedPath()) {
|
|
1855
1860
|
if (!(t instanceof HTMLElement)) continue;
|
|
1856
1861
|
if (t.isContentEditable) return !0;
|
|
@@ -1859,14 +1864,14 @@ function Or(e) {
|
|
|
1859
1864
|
}
|
|
1860
1865
|
return !1;
|
|
1861
1866
|
}
|
|
1862
|
-
function
|
|
1867
|
+
function Ar(e, t) {
|
|
1863
1868
|
let n = e.metaKey || e.ctrlKey;
|
|
1864
1869
|
if (n && e.key.toLowerCase() === "s") {
|
|
1865
1870
|
e.preventDefault(), t.onSave?.();
|
|
1866
1871
|
return;
|
|
1867
1872
|
}
|
|
1868
1873
|
if (n && e.key.toLowerCase() === "z") {
|
|
1869
|
-
if (
|
|
1874
|
+
if (kr(e)) return;
|
|
1870
1875
|
e.preventDefault(), e.shiftKey ? t.history.redo() : (t.onBeforeUndo?.(), t.history.undo());
|
|
1871
1876
|
return;
|
|
1872
1877
|
}
|
|
@@ -1874,11 +1879,11 @@ function kr(e, t) {
|
|
|
1874
1879
|
t.selectBlock(null);
|
|
1875
1880
|
return;
|
|
1876
1881
|
}
|
|
1877
|
-
(e.key === "Delete" || e.key === "Backspace") && t.getSelectedBlockId() && !
|
|
1882
|
+
(e.key === "Delete" || e.key === "Backspace") && t.getSelectedBlockId() && !kr(e) && (e.preventDefault(), t.history.record(), t.removeBlock(t.getSelectedBlockId()));
|
|
1878
1883
|
}
|
|
1879
1884
|
//#endregion
|
|
1880
1885
|
//#region src/components/blocks/ButtonBlock.vue?vue&type=script&setup=true&lang.ts
|
|
1881
|
-
var
|
|
1886
|
+
var jr = { class: "tpl:text-center" }, Mr = ["href"], Nr = /* @__PURE__ */ B({
|
|
1882
1887
|
__name: "ButtonBlock",
|
|
1883
1888
|
props: {
|
|
1884
1889
|
block: {},
|
|
@@ -1899,17 +1904,17 @@ var Ar = { class: "tpl:text-center" }, jr = ["href"], Mr = /* @__PURE__ */ B({
|
|
|
1899
1904
|
};
|
|
1900
1905
|
return t.block.fontFamily && (e.fontFamily = t.block.fontFamily), e;
|
|
1901
1906
|
});
|
|
1902
|
-
return (t, r) => (f(), k("div",
|
|
1907
|
+
return (t, r) => (f(), k("div", jr, [I("a", {
|
|
1903
1908
|
href: e.block.url || "#",
|
|
1904
1909
|
style: L(n.value),
|
|
1905
1910
|
class: "tpl:cursor-default",
|
|
1906
1911
|
onClick: r[0] ||= M(() => {}, ["prevent"])
|
|
1907
|
-
}, D(e.block.text), 13,
|
|
1912
|
+
}, D(e.block.text), 13, Mr)]));
|
|
1908
1913
|
}
|
|
1909
|
-
}),
|
|
1910
|
-
let t =
|
|
1914
|
+
}), Pr = (e) => e === "", Fr = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), Ir = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), Lr = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), Rr = (e) => {
|
|
1915
|
+
let t = Lr(e);
|
|
1911
1916
|
return t.charAt(0).toUpperCase() + t.slice(1);
|
|
1912
|
-
},
|
|
1917
|
+
}, zr = {
|
|
1913
1918
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1914
1919
|
width: 24,
|
|
1915
1920
|
height: 24,
|
|
@@ -1919,35 +1924,35 @@ var Ar = { class: "tpl:text-center" }, jr = ["href"], Mr = /* @__PURE__ */ B({
|
|
|
1919
1924
|
"stroke-width": 2,
|
|
1920
1925
|
"stroke-linecap": "round",
|
|
1921
1926
|
"stroke-linejoin": "round"
|
|
1922
|
-
},
|
|
1923
|
-
function
|
|
1924
|
-
return v(
|
|
1927
|
+
}, Br = Symbol("lucide-icons");
|
|
1928
|
+
function Vr() {
|
|
1929
|
+
return v(Br, {});
|
|
1925
1930
|
}
|
|
1926
1931
|
//#endregion
|
|
1927
1932
|
//#region ../../node_modules/.pnpm/@lucide+vue@1.17.0_vue@3.5.35_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
|
|
1928
|
-
var
|
|
1929
|
-
let { size: d, color: f, strokeWidth: p = 2, absoluteStrokeWidth: m = !1, class: h = "" } =
|
|
1930
|
-
let e =
|
|
1931
|
-
return e ? Number(t) * 24 / Number(s ?? d ??
|
|
1933
|
+
var Hr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width": r, strokeWidth: i, "stroke-width": o, size: s, color: c, ...l }, { slots: u }) => {
|
|
1934
|
+
let { size: d, color: f, strokeWidth: p = 2, absoluteStrokeWidth: m = !1, class: h = "" } = Vr(), g = O(() => {
|
|
1935
|
+
let e = Pr(n) || Pr(r) || n === !0 || r === !0 || m === !0, t = i || o || p || zr["stroke-width"];
|
|
1936
|
+
return e ? Number(t) * 24 / Number(s ?? d ?? zr.width) : t;
|
|
1932
1937
|
});
|
|
1933
1938
|
return a("svg", {
|
|
1934
|
-
...
|
|
1939
|
+
...zr,
|
|
1935
1940
|
...l,
|
|
1936
|
-
width: s ?? d ??
|
|
1937
|
-
height: s ?? d ??
|
|
1938
|
-
stroke: c ?? f ??
|
|
1941
|
+
width: s ?? d ?? zr.width,
|
|
1942
|
+
height: s ?? d ?? zr.height,
|
|
1943
|
+
stroke: c ?? f ?? zr.stroke,
|
|
1939
1944
|
"stroke-width": g.value,
|
|
1940
|
-
class:
|
|
1945
|
+
class: Fr("lucide", h, ...e ? [`lucide-${Ir(Rr(e))}-icon`, `lucide-${Ir(e)}`] : ["lucide-icon"])
|
|
1941
1946
|
}, [...t.map((e) => a(...e)), ...u.default ? [u.default()] : []]);
|
|
1942
|
-
}, X = (e, t) => (n, { slots: r, attrs: i }) => a(
|
|
1947
|
+
}, X = (e, t) => (n, { slots: r, attrs: i }) => a(Hr, {
|
|
1943
1948
|
...i,
|
|
1944
1949
|
...n,
|
|
1945
1950
|
iconNode: t,
|
|
1946
1951
|
name: e
|
|
1947
|
-
}, r.default ? { default: r.default } : void 0),
|
|
1952
|
+
}, r.default ? { default: r.default } : void 0), Ur = X("bookmark", [["path", {
|
|
1948
1953
|
d: "M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z",
|
|
1949
1954
|
key: "oz39mx"
|
|
1950
|
-
}]]),
|
|
1955
|
+
}]]), Wr = X("box", [
|
|
1951
1956
|
["path", {
|
|
1952
1957
|
d: "M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",
|
|
1953
1958
|
key: "hh9hay"
|
|
@@ -1960,22 +1965,22 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
1960
1965
|
d: "M12 22V12",
|
|
1961
1966
|
key: "d0xqtd"
|
|
1962
1967
|
}]
|
|
1963
|
-
]),
|
|
1968
|
+
]), Gr = X("check", [["path", {
|
|
1964
1969
|
d: "M20 6 9 17l-5-5",
|
|
1965
1970
|
key: "1gmf2c"
|
|
1966
|
-
}]]),
|
|
1971
|
+
}]]), Kr = X("chevron-down", [["path", {
|
|
1967
1972
|
d: "m6 9 6 6 6-6",
|
|
1968
1973
|
key: "qrunsl"
|
|
1969
|
-
}]]),
|
|
1974
|
+
}]]), qr = X("chevron-left", [["path", {
|
|
1970
1975
|
d: "m15 18-6-6 6-6",
|
|
1971
1976
|
key: "1wnfg3"
|
|
1972
|
-
}]]),
|
|
1977
|
+
}]]), Jr = X("chevron-right", [["path", {
|
|
1973
1978
|
d: "m9 18 6-6-6-6",
|
|
1974
1979
|
key: "mthhwq"
|
|
1975
|
-
}]]),
|
|
1980
|
+
}]]), Yr = X("chevron-up", [["path", {
|
|
1976
1981
|
d: "m18 15-6-6-6 6",
|
|
1977
1982
|
key: "153udz"
|
|
1978
|
-
}]]),
|
|
1983
|
+
}]]), Xr = X("circle-alert", [
|
|
1979
1984
|
["circle", {
|
|
1980
1985
|
cx: "12",
|
|
1981
1986
|
cy: "12",
|
|
@@ -1996,7 +2001,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
1996
2001
|
y2: "16",
|
|
1997
2002
|
key: "4dfq90"
|
|
1998
2003
|
}]
|
|
1999
|
-
]),
|
|
2004
|
+
]), Zr = X("circle-check", [["circle", {
|
|
2000
2005
|
cx: "12",
|
|
2001
2006
|
cy: "12",
|
|
2002
2007
|
r: "10",
|
|
@@ -2004,7 +2009,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2004
2009
|
}], ["path", {
|
|
2005
2010
|
d: "m9 12 2 2 4-4",
|
|
2006
2011
|
key: "dzmm74"
|
|
2007
|
-
}]]),
|
|
2012
|
+
}]]), Qr = X("clock", [["circle", {
|
|
2008
2013
|
cx: "12",
|
|
2009
2014
|
cy: "12",
|
|
2010
2015
|
r: "10",
|
|
@@ -2012,13 +2017,13 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2012
2017
|
}], ["path", {
|
|
2013
2018
|
d: "M12 6v6l4 2",
|
|
2014
2019
|
key: "mmk7yg"
|
|
2015
|
-
}]]),
|
|
2020
|
+
}]]), $r = X("code", [["path", {
|
|
2016
2021
|
d: "m16 18 6-6-6-6",
|
|
2017
2022
|
key: "eg8j8"
|
|
2018
2023
|
}], ["path", {
|
|
2019
2024
|
d: "m8 6-6 6 6 6",
|
|
2020
2025
|
key: "ppft3o"
|
|
2021
|
-
}]]),
|
|
2026
|
+
}]]), ei = X("copy", [["rect", {
|
|
2022
2027
|
width: "14",
|
|
2023
2028
|
height: "14",
|
|
2024
2029
|
x: "8",
|
|
@@ -2029,7 +2034,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2029
2034
|
}], ["path", {
|
|
2030
2035
|
d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",
|
|
2031
2036
|
key: "zix9uf"
|
|
2032
|
-
}]]),
|
|
2037
|
+
}]]), ti = X("eye-off", [
|
|
2033
2038
|
["path", {
|
|
2034
2039
|
d: "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",
|
|
2035
2040
|
key: "ct8e1f"
|
|
@@ -2046,7 +2051,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2046
2051
|
d: "m2 2 20 20",
|
|
2047
2052
|
key: "1ooewy"
|
|
2048
2053
|
}]
|
|
2049
|
-
]),
|
|
2054
|
+
]), ni = X("eye", [["path", {
|
|
2050
2055
|
d: "M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",
|
|
2051
2056
|
key: "1nclc0"
|
|
2052
2057
|
}], ["circle", {
|
|
@@ -2054,7 +2059,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2054
2059
|
cy: "12",
|
|
2055
2060
|
r: "3",
|
|
2056
2061
|
key: "1v7zrd"
|
|
2057
|
-
}]]),
|
|
2062
|
+
}]]), ri = X("file-image", [
|
|
2058
2063
|
["path", {
|
|
2059
2064
|
d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",
|
|
2060
2065
|
key: "1oefj6"
|
|
@@ -2073,7 +2078,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2073
2078
|
d: "m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22",
|
|
2074
2079
|
key: "wt3hpn"
|
|
2075
2080
|
}]
|
|
2076
|
-
]),
|
|
2081
|
+
]), ii = X("file-text", [
|
|
2077
2082
|
["path", {
|
|
2078
2083
|
d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",
|
|
2079
2084
|
key: "1oefj6"
|
|
@@ -2094,10 +2099,10 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2094
2099
|
d: "M16 17H8",
|
|
2095
2100
|
key: "z1uh3a"
|
|
2096
2101
|
}]
|
|
2097
|
-
]),
|
|
2102
|
+
]), ai = X("funnel", [["path", {
|
|
2098
2103
|
d: "M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",
|
|
2099
2104
|
key: "sc7q7i"
|
|
2100
|
-
}]]),
|
|
2105
|
+
}]]), oi = X("grip-vertical", [
|
|
2101
2106
|
["circle", {
|
|
2102
2107
|
cx: "9",
|
|
2103
2108
|
cy: "12",
|
|
@@ -2134,7 +2139,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2134
2139
|
r: "1",
|
|
2135
2140
|
key: "f4zoj3"
|
|
2136
2141
|
}]
|
|
2137
|
-
]),
|
|
2142
|
+
]), si = X("image-up", [
|
|
2138
2143
|
["path", {
|
|
2139
2144
|
d: "M10.3 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v10l-3.1-3.1a2 2 0 0 0-2.814.014L6 21",
|
|
2140
2145
|
key: "9csbqa"
|
|
@@ -2153,7 +2158,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2153
2158
|
r: "2",
|
|
2154
2159
|
key: "af1f0g"
|
|
2155
2160
|
}]
|
|
2156
|
-
]),
|
|
2161
|
+
]), ci = X("image", [
|
|
2157
2162
|
["rect", {
|
|
2158
2163
|
width: "18",
|
|
2159
2164
|
height: "18",
|
|
@@ -2173,7 +2178,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2173
2178
|
d: "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",
|
|
2174
2179
|
key: "1xmnt7"
|
|
2175
2180
|
}]
|
|
2176
|
-
]),
|
|
2181
|
+
]), li = X("info", [
|
|
2177
2182
|
["circle", {
|
|
2178
2183
|
cx: "12",
|
|
2179
2184
|
cy: "12",
|
|
@@ -2188,31 +2193,31 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2188
2193
|
d: "M12 8h.01",
|
|
2189
2194
|
key: "e9boi3"
|
|
2190
2195
|
}]
|
|
2191
|
-
]),
|
|
2196
|
+
]), ui = X("loader-circle", [["path", {
|
|
2192
2197
|
d: "M21 12a9 9 0 1 1-6.219-8.56",
|
|
2193
2198
|
key: "13zald"
|
|
2194
|
-
}]]),
|
|
2199
|
+
}]]), di = X("message-circle", [["path", {
|
|
2195
2200
|
d: "M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",
|
|
2196
2201
|
key: "1sd12s"
|
|
2197
|
-
}]]),
|
|
2202
|
+
}]]), fi = X("navigation", [["polygon", {
|
|
2198
2203
|
points: "3 11 22 2 13 21 11 13 3 11",
|
|
2199
2204
|
key: "1ltx0t"
|
|
2200
|
-
}]]),
|
|
2205
|
+
}]]), pi = X("pencil", [["path", {
|
|
2201
2206
|
d: "M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",
|
|
2202
2207
|
key: "1a8usu"
|
|
2203
2208
|
}], ["path", {
|
|
2204
2209
|
d: "m15 5 4 4",
|
|
2205
2210
|
key: "1mk7zo"
|
|
2206
|
-
}]]),
|
|
2211
|
+
}]]), mi = X("puzzle", [["path", {
|
|
2207
2212
|
d: "M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",
|
|
2208
2213
|
key: "w46dr5"
|
|
2209
|
-
}]]),
|
|
2214
|
+
}]]), hi = X("redo-2", [["path", {
|
|
2210
2215
|
d: "m15 14 5-5-5-5",
|
|
2211
2216
|
key: "12vg1m"
|
|
2212
2217
|
}], ["path", {
|
|
2213
2218
|
d: "M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13",
|
|
2214
2219
|
key: "6uklza"
|
|
2215
|
-
}]]),
|
|
2220
|
+
}]]), gi = X("refresh-cw", [
|
|
2216
2221
|
["path", {
|
|
2217
2222
|
d: "M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",
|
|
2218
2223
|
key: "v9h5vc"
|
|
@@ -2229,19 +2234,19 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2229
2234
|
d: "M8 16H3v5",
|
|
2230
2235
|
key: "1cv678"
|
|
2231
2236
|
}]
|
|
2232
|
-
]),
|
|
2237
|
+
]), _i = X("reply", [["path", {
|
|
2233
2238
|
d: "M20 18v-2a4 4 0 0 0-4-4H4",
|
|
2234
2239
|
key: "5vmcpk"
|
|
2235
2240
|
}], ["path", {
|
|
2236
2241
|
d: "m9 17-5-5 5-5",
|
|
2237
2242
|
key: "nvlc11"
|
|
2238
|
-
}]]),
|
|
2243
|
+
}]]), vi = X("send", [["path", {
|
|
2239
2244
|
d: "M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",
|
|
2240
2245
|
key: "1ffxy3"
|
|
2241
2246
|
}], ["path", {
|
|
2242
2247
|
d: "m21.854 2.147-10.94 10.939",
|
|
2243
2248
|
key: "12cjpa"
|
|
2244
|
-
}]]),
|
|
2249
|
+
}]]), yi = X("share-2", [
|
|
2245
2250
|
["circle", {
|
|
2246
2251
|
cx: "18",
|
|
2247
2252
|
cy: "5",
|
|
@@ -2274,13 +2279,13 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2274
2279
|
y2: "10.49",
|
|
2275
2280
|
key: "1n3mei"
|
|
2276
2281
|
}]
|
|
2277
|
-
]),
|
|
2282
|
+
]), bi = X("shield-check", [["path", {
|
|
2278
2283
|
d: "M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",
|
|
2279
2284
|
key: "oel41y"
|
|
2280
2285
|
}], ["path", {
|
|
2281
2286
|
d: "m9 12 2 2 4-4",
|
|
2282
2287
|
key: "dzmm74"
|
|
2283
|
-
}]]),
|
|
2288
|
+
}]]), xi = X("shield-x", [
|
|
2284
2289
|
["path", {
|
|
2285
2290
|
d: "M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",
|
|
2286
2291
|
key: "oel41y"
|
|
@@ -2293,7 +2298,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2293
2298
|
d: "m9.5 9.5 5 5",
|
|
2294
2299
|
key: "18nt4w"
|
|
2295
2300
|
}]
|
|
2296
|
-
]),
|
|
2301
|
+
]), Si = X("sparkles", [
|
|
2297
2302
|
["path", {
|
|
2298
2303
|
d: "M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",
|
|
2299
2304
|
key: "1s2grr"
|
|
@@ -2312,7 +2317,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2312
2317
|
r: "2",
|
|
2313
2318
|
key: "6kqj1y"
|
|
2314
2319
|
}]
|
|
2315
|
-
]),
|
|
2320
|
+
]), Ci = X("table", [
|
|
2316
2321
|
["path", {
|
|
2317
2322
|
d: "M12 3v18",
|
|
2318
2323
|
key: "108xh3"
|
|
@@ -2333,7 +2338,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2333
2338
|
d: "M3 15h18",
|
|
2334
2339
|
key: "5xshup"
|
|
2335
2340
|
}]
|
|
2336
|
-
]),
|
|
2341
|
+
]), wi = X("trash-2", [
|
|
2337
2342
|
["path", {
|
|
2338
2343
|
d: "M10 11v6",
|
|
2339
2344
|
key: "nco0om"
|
|
@@ -2354,7 +2359,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2354
2359
|
d: "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",
|
|
2355
2360
|
key: "e791ji"
|
|
2356
2361
|
}]
|
|
2357
|
-
]),
|
|
2362
|
+
]), Ti = X("triangle-alert", [
|
|
2358
2363
|
["path", {
|
|
2359
2364
|
d: "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",
|
|
2360
2365
|
key: "wmoenq"
|
|
@@ -2367,13 +2372,13 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2367
2372
|
d: "M12 17h.01",
|
|
2368
2373
|
key: "p32p05"
|
|
2369
2374
|
}]
|
|
2370
|
-
]),
|
|
2375
|
+
]), Ei = X("undo-2", [["path", {
|
|
2371
2376
|
d: "M9 14 4 9l5-5",
|
|
2372
2377
|
key: "102s5s"
|
|
2373
2378
|
}], ["path", {
|
|
2374
2379
|
d: "M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",
|
|
2375
2380
|
key: "f3b9sd"
|
|
2376
|
-
}]]),
|
|
2381
|
+
}]]), Di = X("upload", [
|
|
2377
2382
|
["path", {
|
|
2378
2383
|
d: "M12 3v12",
|
|
2379
2384
|
key: "1x0j5s"
|
|
@@ -2386,7 +2391,7 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2386
2391
|
d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",
|
|
2387
2392
|
key: "ih7n3h"
|
|
2388
2393
|
}]
|
|
2389
|
-
]),
|
|
2394
|
+
]), Oi = X("video", [["path", {
|
|
2390
2395
|
d: "m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",
|
|
2391
2396
|
key: "ftymec"
|
|
2392
2397
|
}], ["rect", {
|
|
@@ -2396,20 +2401,20 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2396
2401
|
height: "12",
|
|
2397
2402
|
rx: "2",
|
|
2398
2403
|
key: "158x01"
|
|
2399
|
-
}]]),
|
|
2404
|
+
}]]), ki = X("x", [["path", {
|
|
2400
2405
|
d: "M18 6 6 18",
|
|
2401
2406
|
key: "1bl5f8"
|
|
2402
2407
|
}], ["path", {
|
|
2403
2408
|
d: "m6 6 12 12",
|
|
2404
2409
|
key: "d8bk6v"
|
|
2405
|
-
}]]),
|
|
2410
|
+
}]]), Ai = X("zap", [["path", {
|
|
2406
2411
|
d: "M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",
|
|
2407
2412
|
key: "1xq2db"
|
|
2408
|
-
}]]),
|
|
2413
|
+
}]]), ji = ["innerHTML"], Mi = [
|
|
2409
2414
|
"src",
|
|
2410
2415
|
"width",
|
|
2411
2416
|
"height"
|
|
2412
|
-
],
|
|
2417
|
+
], Ni = /* @__PURE__ */ B({
|
|
2413
2418
|
__name: "CustomBlockIcon",
|
|
2414
2419
|
props: {
|
|
2415
2420
|
icon: {},
|
|
@@ -2425,40 +2430,40 @@ var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width
|
|
|
2425
2430
|
height: `${n.value}px`
|
|
2426
2431
|
}),
|
|
2427
2432
|
innerHTML: e.icon
|
|
2428
|
-
}, null, 12,
|
|
2433
|
+
}, null, 12, ji)) : i.value ? (f(), k("img", {
|
|
2429
2434
|
key: 1,
|
|
2430
2435
|
src: e.icon,
|
|
2431
2436
|
width: n.value,
|
|
2432
2437
|
height: n.value,
|
|
2433
2438
|
class: "tpl:inline-block",
|
|
2434
2439
|
alt: ""
|
|
2435
|
-
}, null, 8,
|
|
2440
|
+
}, null, 8, Mi)) : (f(), N(j(Wr), {
|
|
2436
2441
|
key: 2,
|
|
2437
2442
|
size: n.value,
|
|
2438
2443
|
"stroke-width": 1.5
|
|
2439
2444
|
}, null, 8, ["size"]));
|
|
2440
2445
|
}
|
|
2441
|
-
}),
|
|
2446
|
+
}), Pi = (e, t) => {
|
|
2442
2447
|
let n = e.__vccOpts || e;
|
|
2443
2448
|
for (let [e, r] of t) n[e] = r;
|
|
2444
2449
|
return n;
|
|
2445
|
-
},
|
|
2446
|
-
function
|
|
2447
|
-
return f(), k("div",
|
|
2450
|
+
}, Fi = {}, Ii = { class: "tpl-loading-track" };
|
|
2451
|
+
function Li(e, t) {
|
|
2452
|
+
return f(), k("div", Ii);
|
|
2448
2453
|
}
|
|
2449
|
-
var
|
|
2454
|
+
var Ri = /*#__PURE__*/ Pi(Fi, [["render", Li], ["__scopeId", "data-v-1ed538ec"]]);
|
|
2450
2455
|
//#endregion
|
|
2451
2456
|
//#region src/composables/useEditorRoot.ts
|
|
2452
|
-
function
|
|
2453
|
-
return v(
|
|
2457
|
+
function zi() {
|
|
2458
|
+
return v(ir, document) ?? document;
|
|
2454
2459
|
}
|
|
2455
2460
|
//#endregion
|
|
2456
2461
|
//#region src/composables/useFocusTrap.ts
|
|
2457
|
-
var
|
|
2458
|
-
function
|
|
2459
|
-
let n =
|
|
2462
|
+
var Bi = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
|
|
2463
|
+
function Vi(e, t) {
|
|
2464
|
+
let n = zi(), r = null, i = null, a = null;
|
|
2460
2465
|
function o() {
|
|
2461
|
-
return e.value ? Array.from(e.value.querySelectorAll(
|
|
2466
|
+
return e.value ? Array.from(e.value.querySelectorAll(Bi)).filter((e) => e.offsetParent !== null) : [];
|
|
2462
2467
|
}
|
|
2463
2468
|
function s(e) {
|
|
2464
2469
|
if (e.key !== "Tab") return;
|
|
@@ -2488,18 +2493,18 @@ function Bi(e, t) {
|
|
|
2488
2493
|
}
|
|
2489
2494
|
//#endregion
|
|
2490
2495
|
//#region src/composables/useCloudI18n.ts
|
|
2491
|
-
function
|
|
2496
|
+
function Hi(e, t) {
|
|
2492
2497
|
return e.replace(/\{(\w+)\}/g, (e, n) => n in t ? String(t[n]) : `{${n}}`);
|
|
2493
2498
|
}
|
|
2494
|
-
function
|
|
2495
|
-
let t = e ?? v(
|
|
2499
|
+
function Ui(e) {
|
|
2500
|
+
let t = e ?? v(dr, null);
|
|
2496
2501
|
return {
|
|
2497
2502
|
t: t ? u(t) ? t.value : t : null,
|
|
2498
|
-
format:
|
|
2503
|
+
format: Hi
|
|
2499
2504
|
};
|
|
2500
2505
|
}
|
|
2501
|
-
function
|
|
2502
|
-
let { t, format: n } =
|
|
2506
|
+
function Wi(e) {
|
|
2507
|
+
let { t, format: n } = Ui(e);
|
|
2503
2508
|
if (!t) throw Error("useCloudI18nStrict() requires a cloud translations provider. Ensure the component is a descendant of CloudEditor.");
|
|
2504
2509
|
return {
|
|
2505
2510
|
t,
|
|
@@ -2508,13 +2513,13 @@ function Ui(e) {
|
|
|
2508
2513
|
}
|
|
2509
2514
|
//#endregion
|
|
2510
2515
|
//#region src/composables/useMergeTag.ts
|
|
2511
|
-
function
|
|
2512
|
-
let e = v(
|
|
2516
|
+
function Gi() {
|
|
2517
|
+
let e = v(qn, []), t = v(Jn, ut.liquid), n = v(Yn, null), r = v(Xn, !0), i = v(Zn, null), a = C(!1);
|
|
2513
2518
|
function o(e) {
|
|
2514
|
-
return
|
|
2519
|
+
return ht(e, t);
|
|
2515
2520
|
}
|
|
2516
2521
|
function s(t) {
|
|
2517
|
-
return
|
|
2522
|
+
return gt(t, e);
|
|
2518
2523
|
}
|
|
2519
2524
|
async function c() {
|
|
2520
2525
|
if (n) {
|
|
@@ -2548,8 +2553,8 @@ function Wi() {
|
|
|
2548
2553
|
}
|
|
2549
2554
|
//#endregion
|
|
2550
2555
|
//#region src/composables/useEmoji.ts
|
|
2551
|
-
function
|
|
2552
|
-
let [e, t] =
|
|
2556
|
+
function Ki() {
|
|
2557
|
+
let [e, t] = cn(!1), r = n([]), i = !1;
|
|
2553
2558
|
l(() => {
|
|
2554
2559
|
i = !0;
|
|
2555
2560
|
}), H(e, async (e) => {
|
|
@@ -2574,7 +2579,7 @@ function Gi() {
|
|
|
2574
2579
|
}
|
|
2575
2580
|
//#endregion
|
|
2576
2581
|
//#region src/composables/useDragDrop.ts
|
|
2577
|
-
function
|
|
2582
|
+
function qi(e) {
|
|
2578
2583
|
let { onBlockMove: t, onBlockAdd: n } = e, r = C(!1), i = C(null), a = C(null);
|
|
2579
2584
|
function o(e) {
|
|
2580
2585
|
r.value = !0, i.value = e;
|
|
@@ -2624,7 +2629,7 @@ function Ki(e) {
|
|
|
2624
2629
|
}
|
|
2625
2630
|
//#endregion
|
|
2626
2631
|
//#region src/composables/useFonts.ts
|
|
2627
|
-
var
|
|
2632
|
+
var Ji = [
|
|
2628
2633
|
{
|
|
2629
2634
|
value: "Arial",
|
|
2630
2635
|
label: "Arial"
|
|
@@ -2653,7 +2658,7 @@ var qi = [
|
|
|
2653
2658
|
value: "Courier New",
|
|
2654
2659
|
label: "Courier New"
|
|
2655
2660
|
}
|
|
2656
|
-
],
|
|
2661
|
+
], Yi = {
|
|
2657
2662
|
arial: "Arial, sans-serif",
|
|
2658
2663
|
helvetica: "Helvetica, sans-serif",
|
|
2659
2664
|
georgia: "Georgia, serif",
|
|
@@ -2661,14 +2666,14 @@ var qi = [
|
|
|
2661
2666
|
verdana: "Verdana, sans-serif",
|
|
2662
2667
|
"trebuchet ms": "'Trebuchet MS', sans-serif",
|
|
2663
2668
|
"courier new": "'Courier New', monospace"
|
|
2664
|
-
},
|
|
2665
|
-
function
|
|
2666
|
-
let t = C(e?.customFonts ?? []), n = C(!0), r = C(!1), i = O(() => e?.defaultFallback ??
|
|
2669
|
+
}, Xi = "Arial, sans-serif";
|
|
2670
|
+
function Zi(e) {
|
|
2671
|
+
let t = C(e?.customFonts ?? []), n = C(!0), r = C(!1), i = O(() => e?.defaultFallback ?? Xi);
|
|
2667
2672
|
function a(e) {
|
|
2668
2673
|
n.value = e;
|
|
2669
2674
|
}
|
|
2670
2675
|
let o = O(() => {
|
|
2671
|
-
let e = [...
|
|
2676
|
+
let e = [...Ji];
|
|
2672
2677
|
if (!n.value) return e.sort((e, t) => e.label.localeCompare(t.label));
|
|
2673
2678
|
let r = t.value.map((e) => ({
|
|
2674
2679
|
value: e.name,
|
|
@@ -2681,23 +2686,23 @@ function Xi(e) {
|
|
|
2681
2686
|
return o.value.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
|
|
2682
2687
|
}
|
|
2683
2688
|
function u(e) {
|
|
2684
|
-
return
|
|
2689
|
+
return Ji.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
|
|
2685
2690
|
}
|
|
2686
2691
|
function d() {
|
|
2687
2692
|
if (e?.defaultFont) {
|
|
2688
|
-
if (!n.value && !u(e.defaultFont)) return
|
|
2693
|
+
if (!n.value && !u(e.defaultFont)) return Xi;
|
|
2689
2694
|
if (c(e.defaultFont)) {
|
|
2690
2695
|
let t = o.value.find((t) => t.label.toLowerCase() === e.defaultFont.toLowerCase() || t.value.toLowerCase().startsWith(e.defaultFont.toLowerCase()));
|
|
2691
2696
|
if (t) return t.value;
|
|
2692
2697
|
}
|
|
2693
2698
|
}
|
|
2694
|
-
return
|
|
2699
|
+
return Xi;
|
|
2695
2700
|
}
|
|
2696
2701
|
let f = O(() => d());
|
|
2697
2702
|
function p(e) {
|
|
2698
2703
|
if (!e) return i.value;
|
|
2699
2704
|
let n = t.value.find((t) => t.name.toLowerCase() === e.toLowerCase());
|
|
2700
|
-
return n ? `'${n.name}', ${n.fallback ?? i.value}` :
|
|
2705
|
+
return n ? `'${n.name}', ${n.fallback ?? i.value}` : Yi[e.toLowerCase()] || (e.includes(",") ? e : `${e}, ${i.value}`);
|
|
2701
2706
|
}
|
|
2702
2707
|
let m = [], h = !1;
|
|
2703
2708
|
async function g() {
|
|
@@ -2713,7 +2718,7 @@ function Xi(e) {
|
|
|
2713
2718
|
t.onload = () => n(), t.onerror = () => r(/* @__PURE__ */ Error(`Failed to load font: ${e.name}`)), document.head.appendChild(t);
|
|
2714
2719
|
});
|
|
2715
2720
|
} catch (t) {
|
|
2716
|
-
|
|
2721
|
+
Sr.warn(`Failed to load custom font "${e.name}":`, t);
|
|
2717
2722
|
}
|
|
2718
2723
|
});
|
|
2719
2724
|
await Promise.allSettled(e), !h && (r.value = !0);
|
|
@@ -2740,9 +2745,9 @@ function Xi(e) {
|
|
|
2740
2745
|
}
|
|
2741
2746
|
//#endregion
|
|
2742
2747
|
//#region src/composables/useRichTextLinkDialog.ts
|
|
2743
|
-
function
|
|
2748
|
+
function Qi(e) {
|
|
2744
2749
|
let t = C(!1), n = C(""), r = C(null);
|
|
2745
|
-
|
|
2750
|
+
Vi(r, t);
|
|
2746
2751
|
function i() {
|
|
2747
2752
|
n.value = e.value?.getAttributes("link").href || "", t.value = !0;
|
|
2748
2753
|
}
|
|
@@ -2793,8 +2798,8 @@ function Zi(e) {
|
|
|
2793
2798
|
}
|
|
2794
2799
|
//#endregion
|
|
2795
2800
|
//#region src/composables/useRichTextEditor.ts
|
|
2796
|
-
function
|
|
2797
|
-
let t = v(
|
|
2801
|
+
function $i(e) {
|
|
2802
|
+
let t = v(In, null), { mergeTags: r, canRequestMergeTag: i, isRequesting: a, requestMergeTag: o, syntax: s, autocomplete: c } = Gi(), l = v(Fn, null), d = (u(l) ? l.value : l)?.mergeTag?.suggestionEmpty ?? "No matching merge tags", f = ft(s), p = n(null), { showLinkDialog: m, linkUrl: h, linkDialogRef: g, openLinkDialog: _, insertLink: y, removeLink: b, closeLinkDialog: x, handleLinkKeydown: S } = Qi(p), { start: w, stop: ee } = sn(() => p.value?.commands.focus("end"), 0, { immediate: !1 }), T = n(null), E = C(!0), D = C(null), te = !1;
|
|
2798
2803
|
async function ne() {
|
|
2799
2804
|
D.value = null, E.value = !0;
|
|
2800
2805
|
try {
|
|
@@ -2824,7 +2829,7 @@ function Qi(e) {
|
|
|
2824
2829
|
p.value = l, E.value = !1, w();
|
|
2825
2830
|
} catch (t) {
|
|
2826
2831
|
if (te) return;
|
|
2827
|
-
|
|
2832
|
+
Sr.error(`[${e.editorName ?? "RichTextEditor"}] Failed to initialize TipTap editor:`, t), D.value = t instanceof Error ? t.message : "Failed to load editor", E.value = !1;
|
|
2828
2833
|
}
|
|
2829
2834
|
}
|
|
2830
2835
|
function O() {
|
|
@@ -2872,20 +2877,20 @@ function Qi(e) {
|
|
|
2872
2877
|
}
|
|
2873
2878
|
//#endregion
|
|
2874
2879
|
//#region src/components/blocks/CustomBlock.vue?vue&type=script&setup=true&lang.ts
|
|
2875
|
-
var
|
|
2880
|
+
var ea = { class: "tpl:w-full" }, ta = {
|
|
2876
2881
|
key: 0,
|
|
2877
2882
|
class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-warning)] tpl:bg-[var(--tpl-warning-light)]"
|
|
2878
|
-
},
|
|
2883
|
+
}, na = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, ra = {
|
|
2879
2884
|
key: 1,
|
|
2880
2885
|
class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-danger)] tpl:bg-[var(--tpl-danger-light)]"
|
|
2881
|
-
},
|
|
2886
|
+
}, ia = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, aa = {
|
|
2882
2887
|
key: 2,
|
|
2883
2888
|
class: "tpl:relative"
|
|
2884
|
-
},
|
|
2889
|
+
}, oa = ["innerHTML"], sa = {
|
|
2885
2890
|
key: 0,
|
|
2886
2891
|
class: "tpl:absolute tpl:inset-0 tpl:flex tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:rounded tpl:backdrop-blur-[2px]",
|
|
2887
2892
|
style: { "background-color": "color-mix(in srgb, var(--tpl-bg) 80%, transparent)" }
|
|
2888
|
-
},
|
|
2893
|
+
}, ca = /* @__PURE__ */ B({
|
|
2889
2894
|
__name: "CustomBlock",
|
|
2890
2895
|
props: {
|
|
2891
2896
|
block: {},
|
|
@@ -2893,7 +2898,7 @@ var $i = { class: "tpl:w-full" }, ea = {
|
|
|
2893
2898
|
},
|
|
2894
2899
|
emits: ["fetchData"],
|
|
2895
2900
|
setup(e, { emit: t }) {
|
|
2896
|
-
let n = e, i = t, { t: a } = Y(), o = v(
|
|
2901
|
+
let n = e, i = t, { t: a } = Y(), o = v(Wn, null), s = C(""), c = C(!1), l = O(() => o?.getDefinition(n.block.customType)), u = O(() => !!l.value), { isFetching: d, fetch: p, needsFetch: m, hasDataSource: h } = Pt({
|
|
2897
2902
|
definition: l,
|
|
2898
2903
|
block: O(() => n.block),
|
|
2899
2904
|
onUpdate: (e, t) => {
|
|
@@ -2914,15 +2919,15 @@ var $i = { class: "tpl:w-full" }, ea = {
|
|
|
2914
2919
|
}
|
|
2915
2920
|
}
|
|
2916
2921
|
}
|
|
2917
|
-
let _ =
|
|
2922
|
+
let _ = tn(g, 150);
|
|
2918
2923
|
return r(() => {
|
|
2919
2924
|
g();
|
|
2920
2925
|
}), H(() => n.block.fieldValues, () => {
|
|
2921
2926
|
_();
|
|
2922
|
-
}, { deep: !0 }), (e, t) => (f(), k("div",
|
|
2927
|
+
}, { deep: !0 }), (e, t) => (f(), k("div", ea, [u.value ? c.value ? (f(), k("div", ra, [V(j(Ti), {
|
|
2923
2928
|
size: 24,
|
|
2924
2929
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
2925
|
-
}), I("span",
|
|
2930
|
+
}), I("span", ia, D(j(a).customBlocks.renderError), 1)])) : (f(), k("div", aa, [I("div", { innerHTML: s.value }, null, 8, oa), j(h) && j(m) ? (f(), k("div", sa, [j(d) ? (f(), N(Ri, {
|
|
2926
2931
|
key: 1,
|
|
2927
2932
|
class: "tpl:w-48"
|
|
2928
2933
|
})) : (f(), k("button", {
|
|
@@ -2930,16 +2935,16 @@ var $i = { class: "tpl:w-full" }, ea = {
|
|
|
2930
2935
|
type: "button",
|
|
2931
2936
|
class: "tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2 tpl:text-sm tpl:font-semibold tpl:shadow-sm tpl:transition-all tpl:duration-150 hover:tpl:border-[var(--tpl-primary)] hover:tpl:shadow-md tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary-hover)]",
|
|
2932
2937
|
onClick: t[0] ||= M((...e) => j(p) && j(p)(...e), ["stop"])
|
|
2933
|
-
}, [l.value?.icon ? (f(), N(
|
|
2938
|
+
}, [l.value?.icon ? (f(), N(Ni, {
|
|
2934
2939
|
key: 0,
|
|
2935
2940
|
icon: l.value.icon,
|
|
2936
2941
|
size: 16
|
|
2937
|
-
}, null, 8, ["icon"])) : A("", !0), z(" " + D(l.value?.dataSource?.label || j(a).customBlocks.dataSource.fetchButton), 1)]))])) : A("", !0)])) : (f(), k("div",
|
|
2942
|
+
}, null, 8, ["icon"])) : A("", !0), z(" " + D(l.value?.dataSource?.label || j(a).customBlocks.dataSource.fetchButton), 1)]))])) : A("", !0)])) : (f(), k("div", ta, [V(j(mi), {
|
|
2938
2943
|
size: 24,
|
|
2939
2944
|
class: "tpl:text-[var(--tpl-warning)]"
|
|
2940
|
-
}), I("span",
|
|
2945
|
+
}), I("span", na, D(j(a).customBlocks.definitionNotFound), 1)]))]));
|
|
2941
2946
|
}
|
|
2942
|
-
}),
|
|
2947
|
+
}), la = { class: "tpl:w-full" }, ua = /* @__PURE__ */ B({
|
|
2943
2948
|
__name: "DividerBlock",
|
|
2944
2949
|
props: {
|
|
2945
2950
|
block: {},
|
|
@@ -2951,18 +2956,18 @@ var $i = { class: "tpl:w-full" }, ea = {
|
|
|
2951
2956
|
width: t.block.width === "full" ? "100%" : `${t.block.width}px`,
|
|
2952
2957
|
margin: t.block.width === "full" ? "0" : "0 auto"
|
|
2953
2958
|
}));
|
|
2954
|
-
return (e, t) => (f(), k("div",
|
|
2959
|
+
return (e, t) => (f(), k("div", la, [I("hr", {
|
|
2955
2960
|
class: "tpl:m-0 tpl:border-none",
|
|
2956
2961
|
style: L(n.value)
|
|
2957
2962
|
}, null, 4)]));
|
|
2958
2963
|
}
|
|
2959
|
-
}),
|
|
2964
|
+
}), da = { class: "tpl:w-full" }, fa = { class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)]" }, pa = {
|
|
2960
2965
|
key: 0,
|
|
2961
2966
|
class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]"
|
|
2962
|
-
},
|
|
2967
|
+
}, ma = {
|
|
2963
2968
|
key: 1,
|
|
2964
2969
|
class: "tpl:text-sm tpl:text-[var(--tpl-text-dim)]"
|
|
2965
|
-
},
|
|
2970
|
+
}, ha = /* @__PURE__ */ B({
|
|
2966
2971
|
__name: "HtmlBlock",
|
|
2967
2972
|
props: {
|
|
2968
2973
|
block: {},
|
|
@@ -2970,15 +2975,15 @@ var $i = { class: "tpl:w-full" }, ea = {
|
|
|
2970
2975
|
},
|
|
2971
2976
|
setup(e) {
|
|
2972
2977
|
let t = e, { t: n } = Y(), r = O(() => t.block.content.trim().length > 0);
|
|
2973
|
-
return (e, t) => (f(), k("div",
|
|
2978
|
+
return (e, t) => (f(), k("div", da, [I("div", fa, [V(j($r), {
|
|
2974
2979
|
size: 24,
|
|
2975
2980
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
2976
|
-
}), r.value ? (f(), k("span",
|
|
2981
|
+
}), r.value ? (f(), k("span", pa, D(j(n).html.preview), 1)) : (f(), k("span", ma, D(j(n).html.empty), 1))])]));
|
|
2977
2982
|
}
|
|
2978
2983
|
});
|
|
2979
2984
|
//#endregion
|
|
2980
2985
|
//#region src/composables/useAliveFlag.ts
|
|
2981
|
-
function
|
|
2986
|
+
function ga() {
|
|
2982
2987
|
let e = { alive: !0 };
|
|
2983
2988
|
return re(() => {
|
|
2984
2989
|
e.alive = !1;
|
|
@@ -2986,13 +2991,13 @@ function ha() {
|
|
|
2986
2991
|
}
|
|
2987
2992
|
//#endregion
|
|
2988
2993
|
//#region src/components/blocks/ImageBlock.vue?vue&type=script&setup=true&lang.ts
|
|
2989
|
-
var
|
|
2994
|
+
var _a = ["href"], va = ["src", "alt"], ya = ["src", "alt"], ba = {
|
|
2990
2995
|
class: "tpl:max-w-full tpl:truncate tpl:px-3 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-primary)]",
|
|
2991
2996
|
style: { opacity: "0.7" }
|
|
2992
|
-
},
|
|
2997
|
+
}, xa = ["href"], Sa = ["src", "alt"], Ca = ["src", "alt"], wa = {
|
|
2993
2998
|
key: 3,
|
|
2994
2999
|
class: "tpl:flex tpl:min-h-[100px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-sm tpl:border-[var(--tpl-border-light)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-dim)]"
|
|
2995
|
-
},
|
|
3000
|
+
}, Ta = ["aria-label"], Ea = { key: 1 }, Da = /* @__PURE__ */ B({
|
|
2996
3001
|
__name: "ImageBlock",
|
|
2997
3002
|
props: {
|
|
2998
3003
|
block: {},
|
|
@@ -3000,7 +3005,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3000
3005
|
},
|
|
3001
3006
|
emits: ["update"],
|
|
3002
3007
|
setup(e, { emit: t }) {
|
|
3003
|
-
let n = e, r = t, { t: i } = Y(), { syntax: a } =
|
|
3008
|
+
let n = e, r = t, { t: i } = Y(), { syntax: a } = Gi(), o = v(Qn, null), s = O(() => !!o), c = ga();
|
|
3004
3009
|
async function l() {
|
|
3005
3010
|
let e = await o?.({ accept: ["images"] });
|
|
3006
3011
|
if (c.alive && e) {
|
|
@@ -3017,7 +3022,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3017
3022
|
marginLeft: e === "center" || e === "right" ? "auto" : void 0,
|
|
3018
3023
|
marginRight: e === "center" ? "auto" : void 0
|
|
3019
3024
|
};
|
|
3020
|
-
}), p = O(() =>
|
|
3025
|
+
}), p = O(() => vt(n.block.src, a));
|
|
3021
3026
|
return (t, n) => (f(), k("div", {
|
|
3022
3027
|
class: "tpl:w-full",
|
|
3023
3028
|
style: L(u.value)
|
|
@@ -3033,22 +3038,22 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3033
3038
|
src: e.block.placeholderUrl,
|
|
3034
3039
|
alt: e.block.alt || j(i).image.altTextPlaceholder,
|
|
3035
3040
|
style: L(d.value)
|
|
3036
|
-
}, null, 12,
|
|
3041
|
+
}, null, 12, va)], 8, _a)) : (f(), k("img", {
|
|
3037
3042
|
key: 1,
|
|
3038
3043
|
class: "tpl:border-0",
|
|
3039
3044
|
src: e.block.placeholderUrl,
|
|
3040
3045
|
alt: e.block.alt,
|
|
3041
3046
|
style: L(d.value)
|
|
3042
|
-
}, null, 12,
|
|
3047
|
+
}, null, 12, ya))], 64)) : e.block.src && p.value ? (f(), k("div", {
|
|
3043
3048
|
key: 1,
|
|
3044
3049
|
class: "tpl:!flex tpl:min-h-[120px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-center tpl:bg-[var(--tpl-bg-elevated)]",
|
|
3045
3050
|
style: L([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, d.value])
|
|
3046
|
-
}, [V(j(
|
|
3051
|
+
}, [V(j(ci), {
|
|
3047
3052
|
size: 32,
|
|
3048
3053
|
"stroke-width": 1.5,
|
|
3049
3054
|
class: "tpl:text-[var(--tpl-primary)]",
|
|
3050
3055
|
style: { opacity: "0.5" }
|
|
3051
|
-
}), I("span",
|
|
3056
|
+
}), I("span", ba, D(e.block.src), 1)], 4)) : e.block.src ? (f(), k(R, { key: 2 }, [e.block.linkUrl ? (f(), k("a", {
|
|
3052
3057
|
key: 0,
|
|
3053
3058
|
href: e.block.linkUrl,
|
|
3054
3059
|
target: "_blank",
|
|
@@ -3060,26 +3065,26 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3060
3065
|
src: e.block.src,
|
|
3061
3066
|
alt: e.block.alt || j(i).image.altTextPlaceholder,
|
|
3062
3067
|
style: L(d.value)
|
|
3063
|
-
}, null, 12,
|
|
3068
|
+
}, null, 12, Sa)], 8, xa)) : (f(), k("img", {
|
|
3064
3069
|
key: 1,
|
|
3065
3070
|
class: "tpl:border-0",
|
|
3066
3071
|
src: e.block.src,
|
|
3067
3072
|
alt: e.block.alt,
|
|
3068
3073
|
style: L(d.value)
|
|
3069
|
-
}, null, 12,
|
|
3074
|
+
}, null, 12, Ca))], 64)) : (f(), k("div", wa, [s.value ? (f(), k("button", {
|
|
3070
3075
|
key: 0,
|
|
3071
3076
|
"aria-label": j(i).image.browseMedia,
|
|
3072
3077
|
class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:rounded-md tpl:border tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:cursor-pointer tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-primary)] tpl:bg-[var(--tpl-bg)]",
|
|
3073
3078
|
onClick: M(l, ["stop"])
|
|
3074
|
-
}, [V(j(
|
|
3079
|
+
}, [V(j(ci), {
|
|
3075
3080
|
size: 14,
|
|
3076
3081
|
"stroke-width": 1.5
|
|
3077
|
-
}), z(" " + D(j(i).image.browseMedia), 1)], 8,
|
|
3082
|
+
}), z(" " + D(j(i).image.browseMedia), 1)], 8, Ta)) : (f(), k("span", Ea, D(j(i).image.clickToAdd), 1))]))], 4));
|
|
3078
3083
|
}
|
|
3079
|
-
}),
|
|
3084
|
+
}), Oa = { class: "tpl:w-full" }, ka = ["href"], Aa = {
|
|
3080
3085
|
key: 1,
|
|
3081
3086
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
|
|
3082
|
-
},
|
|
3087
|
+
}, ja = /* @__PURE__ */ B({
|
|
3083
3088
|
__name: "MenuBlock",
|
|
3084
3089
|
props: {
|
|
3085
3090
|
block: {},
|
|
@@ -3098,7 +3103,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3098
3103
|
function a(e) {
|
|
3099
3104
|
return e || t.block.linkColor || t.block.color;
|
|
3100
3105
|
}
|
|
3101
|
-
return (t, o) => (f(), k("div",
|
|
3106
|
+
return (t, o) => (f(), k("div", Oa, [i.value ? (f(), k("div", {
|
|
3102
3107
|
key: 0,
|
|
3103
3108
|
style: L(r.value)
|
|
3104
3109
|
}, [(f(!0), k(R, null, h(e.block.items, (t, n) => (f(), k(R, { key: t.id }, [I("a", {
|
|
@@ -3110,15 +3115,15 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3110
3115
|
textDecoration: t.underline ? "underline" : "none"
|
|
3111
3116
|
}),
|
|
3112
3117
|
onClick: o[0] ||= M(() => {}, ["prevent"])
|
|
3113
|
-
}, D(t.text || "..."), 13,
|
|
3118
|
+
}, D(t.text || "..."), 13, ka), n < e.block.items.length - 1 ? (f(), k("span", {
|
|
3114
3119
|
key: 0,
|
|
3115
3120
|
style: L({
|
|
3116
3121
|
color: e.block.separatorColor,
|
|
3117
3122
|
padding: `0 ${e.block.spacing}px`
|
|
3118
3123
|
})
|
|
3119
|
-
}, D(e.block.separator), 5)) : A("", !0)], 64))), 128))], 4)) : (f(), k("div",
|
|
3124
|
+
}, D(e.block.separator), 5)) : A("", !0)], 64))), 128))], 4)) : (f(), k("div", Aa, [V(j(fi), { size: 16 }), I("span", null, D(j(n).menu.addLinks), 1)]))]));
|
|
3120
3125
|
}
|
|
3121
|
-
}),
|
|
3126
|
+
}), Ma = new Set([
|
|
3122
3127
|
"http",
|
|
3123
3128
|
"https",
|
|
3124
3129
|
"mailto",
|
|
@@ -3128,7 +3133,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3128
3133
|
"sms",
|
|
3129
3134
|
"xmpp",
|
|
3130
3135
|
"cid"
|
|
3131
|
-
]),
|
|
3136
|
+
]), Na = new Set([
|
|
3132
3137
|
"SCRIPT",
|
|
3133
3138
|
"STYLE",
|
|
3134
3139
|
"IFRAME",
|
|
@@ -3138,7 +3143,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3138
3143
|
"META",
|
|
3139
3144
|
"BASE",
|
|
3140
3145
|
"FORM"
|
|
3141
|
-
]),
|
|
3146
|
+
]), Pa = new Set([
|
|
3142
3147
|
"href",
|
|
3143
3148
|
"xlink:href",
|
|
3144
3149
|
"formaction",
|
|
@@ -3147,16 +3152,16 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
|
|
|
3147
3152
|
"background",
|
|
3148
3153
|
"poster"
|
|
3149
3154
|
]);
|
|
3150
|
-
function
|
|
3155
|
+
function Fa(e, t) {
|
|
3151
3156
|
let n = e.replace(/[\t\n\r]/g, "").replace(/^[\u0000-\u0020]+/, "").trimEnd();
|
|
3152
3157
|
if (!n || n.startsWith("#")) return !0;
|
|
3153
3158
|
let r = /^([a-z][a-z0-9+.-]*):/i.exec(n);
|
|
3154
3159
|
if (!r) return !0;
|
|
3155
3160
|
let i = r[1].toLowerCase();
|
|
3156
|
-
return
|
|
3161
|
+
return Ma.has(i) ? !0 : t && i === "data" ? /^data:image\/(png|jpe?g|gif|webp|svg\+xml);/i.test(n) : !1;
|
|
3157
3162
|
}
|
|
3158
|
-
function
|
|
3159
|
-
if (
|
|
3163
|
+
function Ia(e) {
|
|
3164
|
+
if (Na.has(e.tagName)) {
|
|
3160
3165
|
e.remove();
|
|
3161
3166
|
return;
|
|
3162
3167
|
}
|
|
@@ -3168,29 +3173,29 @@ function Fa(e) {
|
|
|
3168
3173
|
e.removeAttribute(n);
|
|
3169
3174
|
continue;
|
|
3170
3175
|
}
|
|
3171
|
-
if (
|
|
3172
|
-
|
|
3176
|
+
if (Pa.has(t)) {
|
|
3177
|
+
Fa(e.getAttribute(n) ?? "", !1) || e.removeAttribute(n);
|
|
3173
3178
|
continue;
|
|
3174
3179
|
}
|
|
3175
3180
|
if (t === "src") {
|
|
3176
|
-
|
|
3181
|
+
Fa(e.getAttribute(n) ?? "", !0) || e.removeAttribute(n);
|
|
3177
3182
|
continue;
|
|
3178
3183
|
}
|
|
3179
3184
|
t === "srcdoc" && e.removeAttribute(n);
|
|
3180
3185
|
}
|
|
3181
3186
|
let n = Array.from(e.children);
|
|
3182
|
-
for (let e of n)
|
|
3187
|
+
for (let e of n) Ia(e);
|
|
3183
3188
|
}
|
|
3184
|
-
function
|
|
3189
|
+
function La(e) {
|
|
3185
3190
|
if (typeof DOMParser > "u") return e;
|
|
3186
3191
|
let t = new DOMParser().parseFromString(`<!doctype html><body>${e}</body>`, "text/html").body, n = Array.from(t.children);
|
|
3187
|
-
for (let e of n)
|
|
3192
|
+
for (let e of n) Ia(e);
|
|
3188
3193
|
return t.innerHTML;
|
|
3189
3194
|
}
|
|
3190
3195
|
//#endregion
|
|
3191
3196
|
//#region src/composables/useEditableTextBlock.ts
|
|
3192
|
-
function
|
|
3193
|
-
let t = v(
|
|
3197
|
+
function Ra(e) {
|
|
3198
|
+
let t = v(qn, []), { syntax: n } = Gi(), r = O(() => La(xt(_t(e(), t), n))), i = C(!1), a = C(null), { top: o, left: s } = En(a), c = O(() => ({
|
|
3194
3199
|
top: o.value - 8,
|
|
3195
3200
|
left: s.value
|
|
3196
3201
|
}));
|
|
@@ -3211,14 +3216,14 @@ function La(e) {
|
|
|
3211
3216
|
}
|
|
3212
3217
|
//#endregion
|
|
3213
3218
|
//#region src/components/blocks/ParagraphBlock.vue?vue&type=script&setup=true&lang.ts
|
|
3214
|
-
var
|
|
3219
|
+
var za = ["innerHTML"], Ba = /* @__PURE__ */ B({
|
|
3215
3220
|
__name: "ParagraphBlock",
|
|
3216
3221
|
props: {
|
|
3217
3222
|
block: {},
|
|
3218
3223
|
viewport: {}
|
|
3219
3224
|
},
|
|
3220
3225
|
setup(e) {
|
|
3221
|
-
let t = e, n = T(() => import("./ParagraphEditor-
|
|
3226
|
+
let t = e, n = T(() => import("./ParagraphEditor-CwY8GeWa.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = Ra(() => t.block.content);
|
|
3222
3227
|
return (t, l) => (f(), k("div", {
|
|
3223
3228
|
ref_key: "blockRef",
|
|
3224
3229
|
ref: i,
|
|
@@ -3237,19 +3242,19 @@ var Ra = ["innerHTML"], za = /* @__PURE__ */ B({
|
|
|
3237
3242
|
key: 1,
|
|
3238
3243
|
class: "tpl-text-content tpl:outline-none [&_a]:tpl:underline [&_li]:tpl:my-1 [&_ol]:tpl:my-2 [&_ol]:tpl:pl-6 [&_p]:tpl:m-0 [&_p]:tpl:mb-2 [&_p:last-child]:tpl:mb-0 [&_s]:tpl:line-through [&_sub]:tpl:align-sub [&_sub]:tpl:text-[0.75em] [&_sup]:tpl:align-super [&_sup]:tpl:text-[0.75em] [&_ul]:tpl:my-2 [&_ul]:tpl:pl-6",
|
|
3239
3244
|
innerHTML: j(o)
|
|
3240
|
-
}, null, 8,
|
|
3245
|
+
}, null, 8, za))], 544));
|
|
3241
3246
|
}
|
|
3242
3247
|
});
|
|
3243
3248
|
//#endregion
|
|
3244
3249
|
//#region src/utils/blockComponentResolver.ts
|
|
3245
|
-
function
|
|
3250
|
+
function Va(e, t, n) {
|
|
3246
3251
|
if (t) {
|
|
3247
3252
|
let n = t.getComponent(e);
|
|
3248
3253
|
if (n) return n;
|
|
3249
3254
|
}
|
|
3250
3255
|
return n[e.type] ?? null;
|
|
3251
3256
|
}
|
|
3252
|
-
function
|
|
3257
|
+
function Ha(e) {
|
|
3253
3258
|
let { padding: t, backgroundColor: n } = e.styles;
|
|
3254
3259
|
return {
|
|
3255
3260
|
padding: `${t.top}px ${t.right}px ${t.bottom}px ${t.left}px`,
|
|
@@ -3258,20 +3263,20 @@ function Va(e) {
|
|
|
3258
3263
|
}
|
|
3259
3264
|
//#endregion
|
|
3260
3265
|
//#region src/components/blocks/BlockWrapper.vue?vue&type=script&setup=true&lang.ts
|
|
3261
|
-
var
|
|
3266
|
+
var Ua = ["data-block-id", "data-block-type"], Wa = ["aria-label"], Ga = [
|
|
3262
3267
|
"aria-label",
|
|
3263
3268
|
"aria-pressed",
|
|
3264
3269
|
"title"
|
|
3265
|
-
],
|
|
3270
|
+
], Ka = ["aria-label", "title"], qa = ["aria-label", "title"], Ja = ["aria-label", "title"], Ya = {
|
|
3266
3271
|
key: 1,
|
|
3267
3272
|
class: "tpl-block-hidden-overlay tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:z-[5] tpl:flex tpl:items-center tpl:justify-center tpl:rounded-sm"
|
|
3268
|
-
},
|
|
3273
|
+
}, Xa = { class: "tpl:flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-2 tpl:py-1 tpl:text-[10px] tpl:font-medium tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-text-muted)] tpl:shadow-[var(--tpl-shadow-sm)]" }, Za = {
|
|
3269
3274
|
key: 2,
|
|
3270
3275
|
class: "tpl:absolute tpl:-left-1 tpl:top-1/2 tpl:z-[5] tpl:-translate-x-full tpl:-translate-y-1/2"
|
|
3271
|
-
},
|
|
3276
|
+
}, Qa = ["aria-label", "title"], $a = {
|
|
3272
3277
|
key: 3,
|
|
3273
3278
|
class: "tpl:absolute tpl:-right-1 tpl:-top-1 tpl:z-[5] tpl:translate-x-full"
|
|
3274
|
-
},
|
|
3279
|
+
}, eo = ["aria-label"], to = /*#__PURE__*/ Pi(/* @__PURE__ */ B({
|
|
3275
3280
|
__name: "BlockWrapper",
|
|
3276
3281
|
props: {
|
|
3277
3282
|
block: {},
|
|
@@ -3281,7 +3286,7 @@ var Ha = ["data-block-id", "data-block-type"], Ua = ["aria-label"], Wa = [
|
|
|
3281
3286
|
},
|
|
3282
3287
|
emits: ["select"],
|
|
3283
3288
|
setup(e, { emit: t }) {
|
|
3284
|
-
let n = T(() => import("./BlockIssueBadge-
|
|
3289
|
+
let n = T(() => import("./BlockIssueBadge-Lc3NWFV8.js")), r = e, i = t, { t: a, format: s } = Y(), c = v(nr, null), l = C(null), u = O(() => c?.liftedBlockId.value === r.block.id), d = O(() => u.value ? s(a.blockActions.dragLifted, { block: r.block.type }) : a.blockActions.drag);
|
|
3285
3290
|
async function p() {
|
|
3286
3291
|
await m(), l.value?.focus();
|
|
3287
3292
|
}
|
|
@@ -3307,8 +3312,8 @@ var Ha = ["data-block-id", "data-block-type"], Ua = ["aria-label"], Wa = [
|
|
|
3307
3312
|
let g = O(() => !r.viewport || !r.block.visibility ? !1 : r.block.visibility[r.viewport] === !1), _ = O(() => r.previewMode === !0 && g.value), y = O(() => r.viewport ? {
|
|
3308
3313
|
desktop: a.viewport.desktop,
|
|
3309
3314
|
mobile: a.viewport.mobile
|
|
3310
|
-
}[r.viewport] ?? r.viewport : ""), b = O(() => !!r.block.displayCondition), x = v(
|
|
3311
|
-
let e =
|
|
3315
|
+
}[r.viewport] ?? r.viewport : ""), b = O(() => !!r.block.displayCondition), x = v(Rn, null), S = v(zn, null), w = v(tr, {}), ee = O(() => !!w.savedModules), E = O(() => w.comments?.getBlockCount(r.block.id) ?? 0), te = O(() => {
|
|
3316
|
+
let e = Ha(r.block);
|
|
3312
3317
|
return {
|
|
3313
3318
|
padding: e.padding,
|
|
3314
3319
|
backgroundColor: e.backgroundColor
|
|
@@ -3356,90 +3361,90 @@ var Ha = ["data-block-id", "data-block-type"], Ua = ["aria-label"], Wa = [
|
|
|
3356
3361
|
"aria-keyshortcuts": "Space Enter ArrowUp ArrowDown Escape",
|
|
3357
3362
|
title: j(a).blockActions.drag,
|
|
3358
3363
|
onKeydown: h
|
|
3359
|
-
}, [V(j(
|
|
3364
|
+
}, [V(j(oi), {
|
|
3360
3365
|
size: 14,
|
|
3361
3366
|
"stroke-width": 1.5
|
|
3362
|
-
})], 40,
|
|
3367
|
+
})], 40, Ga),
|
|
3363
3368
|
I("button", {
|
|
3364
3369
|
class: "tpl-block-action-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
|
|
3365
3370
|
"aria-label": j(a).blockActions.duplicate,
|
|
3366
3371
|
title: j(a).blockActions.duplicate,
|
|
3367
3372
|
onClick: M(N, ["stop"])
|
|
3368
|
-
}, [V(j(
|
|
3373
|
+
}, [V(j(ei), {
|
|
3369
3374
|
size: 14,
|
|
3370
3375
|
"stroke-width": 1.5
|
|
3371
|
-
})], 8,
|
|
3376
|
+
})], 8, Ka),
|
|
3372
3377
|
ee.value ? (f(), k("button", {
|
|
3373
3378
|
key: 0,
|
|
3374
3379
|
class: "tpl-block-action-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
|
|
3375
3380
|
"aria-label": j(a).blockActions.saveAsModule,
|
|
3376
3381
|
title: j(a).blockActions.saveAsModule,
|
|
3377
3382
|
onClick: M(ie, ["stop"])
|
|
3378
|
-
}, [V(j(
|
|
3383
|
+
}, [V(j(Ur), {
|
|
3379
3384
|
size: 14,
|
|
3380
3385
|
"stroke-width": 1.5
|
|
3381
|
-
})], 8,
|
|
3386
|
+
})], 8, qa)) : A("", !0),
|
|
3382
3387
|
I("button", {
|
|
3383
3388
|
class: "tpl-block-action-btn tpl-block-delete-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
|
|
3384
3389
|
"aria-label": j(a).blockActions.delete,
|
|
3385
3390
|
title: j(a).blockActions.delete,
|
|
3386
3391
|
onClick: M(re, ["stop"])
|
|
3387
|
-
}, [V(j(
|
|
3392
|
+
}, [V(j(wi), {
|
|
3388
3393
|
size: 14,
|
|
3389
3394
|
"stroke-width": 1.5
|
|
3390
|
-
})], 8,
|
|
3391
|
-
], 8,
|
|
3392
|
-
g.value ? (f(), k("div",
|
|
3395
|
+
})], 8, Ja)
|
|
3396
|
+
], 8, Wa)) : A("", !0),
|
|
3397
|
+
g.value ? (f(), k("div", Ya, [I("span", Xa, [V(j(ti), {
|
|
3393
3398
|
size: 12,
|
|
3394
3399
|
"stroke-width": 1.5
|
|
3395
3400
|
}), z(" " + D(j(s)(j(a).blockActions.hiddenOnViewport, { viewport: y.value })), 1)])])) : A("", !0),
|
|
3396
|
-
b.value && !g.value ? (f(), k("div",
|
|
3401
|
+
b.value && !g.value ? (f(), k("div", Za, [I("button", {
|
|
3397
3402
|
class: "tpl-condition-toggle tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1 tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-primary)] tpl:border tpl:border-[var(--tpl-border)]",
|
|
3398
3403
|
"aria-label": j(a).blockActions.conditionToggle,
|
|
3399
3404
|
title: e.block.displayCondition?.label,
|
|
3400
3405
|
onClick: M(P, ["stop"])
|
|
3401
|
-
}, [V(j(
|
|
3406
|
+
}, [V(j(ai), {
|
|
3402
3407
|
size: 12,
|
|
3403
3408
|
"stroke-width": 2
|
|
3404
|
-
})], 8,
|
|
3405
|
-
E.value > 0 && !g.value ? (f(), k("div",
|
|
3409
|
+
})], 8, Qa)])) : A("", !0),
|
|
3410
|
+
E.value > 0 && !g.value ? (f(), k("div", $a, [I("button", {
|
|
3406
3411
|
class: "tpl-comment-indicator tpl:flex tpl:min-h-6 tpl:min-w-6 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:gap-0.5 tpl:rounded-full tpl:border-none tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-semibold tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary)]",
|
|
3407
3412
|
"aria-label": j(s)(j(a).blockActions.comments, { count: String(E.value) }),
|
|
3408
3413
|
onClick: r[0] ||= M((t) => j(w).comments?.openForBlock(e.block.id), ["stop"])
|
|
3409
|
-
}, [V(j(
|
|
3414
|
+
}, [V(j(di), {
|
|
3410
3415
|
size: 12,
|
|
3411
3416
|
"stroke-width": 2.5
|
|
3412
|
-
}), z(" " + D(E.value), 1)], 8,
|
|
3417
|
+
}), z(" " + D(E.value), 1)], 8, eo)])) : A("", !0),
|
|
3413
3418
|
I("div", {
|
|
3414
3419
|
class: "tpl-block-content",
|
|
3415
3420
|
style: L(te.value)
|
|
3416
3421
|
}, [o(t.$slots, "default", {}, void 0, !0)], 4)
|
|
3417
|
-
], 10,
|
|
3422
|
+
], 10, Ua));
|
|
3418
3423
|
}
|
|
3419
3424
|
}), [["__scopeId", "data-v-4a48371d"]]);
|
|
3420
3425
|
//#endregion
|
|
3421
3426
|
//#region src/utils/unwrapParagraph.ts
|
|
3422
|
-
function
|
|
3427
|
+
function no(e) {
|
|
3423
3428
|
let t = e.match(/^\s*<p\b[^>]*>([\s\S]*)<\/p>\s*$/);
|
|
3424
3429
|
return !t || /<\/p>\s*<p\b/i.test(t[1]) ? e : t[1];
|
|
3425
3430
|
}
|
|
3426
3431
|
//#endregion
|
|
3427
3432
|
//#region src/components/blocks/TitleBlock.vue
|
|
3428
|
-
var
|
|
3433
|
+
var ro = /* @__PURE__ */ B({
|
|
3429
3434
|
__name: "TitleBlock",
|
|
3430
3435
|
props: {
|
|
3431
3436
|
block: {},
|
|
3432
3437
|
viewport: {}
|
|
3433
3438
|
},
|
|
3434
3439
|
setup(e) {
|
|
3435
|
-
let t = e, n = T(() => import("./TitleEditor-
|
|
3440
|
+
let t = e, n = T(() => import("./TitleEditor-Betpo8AZ.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = Ra(() => t.block.content), l = O(() => {
|
|
3436
3441
|
let e = {
|
|
3437
3442
|
fontSize: `${pe[t.block.level]}px`,
|
|
3438
3443
|
color: t.block.color,
|
|
3439
3444
|
textAlign: t.block.textAlign
|
|
3440
3445
|
};
|
|
3441
3446
|
return t.block.fontFamily && (e.fontFamily = t.block.fontFamily), e;
|
|
3442
|
-
}), u = O(() => `h${t.block.level}`), p = O(() =>
|
|
3447
|
+
}), u = O(() => `h${t.block.level}`), p = O(() => no(o.value));
|
|
3443
3448
|
return (t, o) => (f(), k("div", {
|
|
3444
3449
|
ref_key: "blockRef",
|
|
3445
3450
|
ref: i,
|
|
@@ -3462,11 +3467,11 @@ var no = /* @__PURE__ */ B({
|
|
|
3462
3467
|
innerHTML: p.value
|
|
3463
3468
|
}, null, 8, ["innerHTML"]))], 36));
|
|
3464
3469
|
}
|
|
3465
|
-
}),
|
|
3470
|
+
}), io = { class: "tpl:w-full" }, ao = { class: "tpl:flex tpl:gap-0" }, oo = {
|
|
3466
3471
|
key: 0,
|
|
3467
3472
|
"data-testid": "section-drop-hint",
|
|
3468
3473
|
class: "tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:flex tpl:items-center tpl:justify-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
|
|
3469
|
-
},
|
|
3474
|
+
}, so = /* @__PURE__ */ B({
|
|
3470
3475
|
__name: "SectionBlock",
|
|
3471
3476
|
props: {
|
|
3472
3477
|
block: {},
|
|
@@ -3474,13 +3479,13 @@ var no = /* @__PURE__ */ B({
|
|
|
3474
3479
|
},
|
|
3475
3480
|
setup(e) {
|
|
3476
3481
|
let t = {
|
|
3477
|
-
title:
|
|
3478
|
-
paragraph:
|
|
3479
|
-
image:
|
|
3480
|
-
button:
|
|
3481
|
-
divider:
|
|
3482
|
-
custom:
|
|
3483
|
-
}, n = e, { t: r } = Y(), i = J(
|
|
3482
|
+
title: ro,
|
|
3483
|
+
paragraph: Ba,
|
|
3484
|
+
image: Da,
|
|
3485
|
+
button: Nr,
|
|
3486
|
+
divider: ua,
|
|
3487
|
+
custom: ca
|
|
3488
|
+
}, n = e, { t: r } = Y(), i = J(In, "SectionBlock"), a = v(zn, null), o = v(Wn, null), s = O(() => {
|
|
3484
3489
|
switch (n.block.columns) {
|
|
3485
3490
|
case "2": return ["50%", "50%"];
|
|
3486
3491
|
case "3": return [
|
|
@@ -3506,7 +3511,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3506
3511
|
a[e] = r, i.updateBlock(n.block.id, { children: a });
|
|
3507
3512
|
}
|
|
3508
3513
|
function m(e) {
|
|
3509
|
-
return
|
|
3514
|
+
return Va(e, o, t);
|
|
3510
3515
|
}
|
|
3511
3516
|
function g(e, t) {
|
|
3512
3517
|
e.type === "custom" && i.updateBlock(e.id, {
|
|
@@ -3514,7 +3519,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3514
3519
|
dataSourceFetched: t.dataSourceFetched
|
|
3515
3520
|
});
|
|
3516
3521
|
}
|
|
3517
|
-
return (t, n) => (f(), k("div",
|
|
3522
|
+
return (t, n) => (f(), k("div", io, [I("div", ao, [(f(!0), k(R, null, h(l.value, (t, n) => (f(), k("div", {
|
|
3518
3523
|
key: n,
|
|
3519
3524
|
class: F(["tpl:relative tpl:min-h-[60px] tpl:rounded", u(n).length === 0 ? "tpl:border tpl:border-dashed tpl:border-[var(--tpl-border)]" : ""]),
|
|
3520
3525
|
style: L({ width: s.value[n] })
|
|
@@ -3536,7 +3541,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3536
3541
|
class: "tpl:min-h-[60px]",
|
|
3537
3542
|
"onUpdate:modelValue": (e) => p(n, e)
|
|
3538
3543
|
}, {
|
|
3539
|
-
default: b(() => [(f(!0), k(R, null, h(u(n), (t) => c((f(), k("div", { key: t.id }, [V(
|
|
3544
|
+
default: b(() => [(f(!0), k(R, null, h(u(n), (t) => c((f(), k("div", { key: t.id }, [V(to, {
|
|
3540
3545
|
block: t,
|
|
3541
3546
|
"is-selected": j(i).state.selectedBlockId === t.id,
|
|
3542
3547
|
viewport: e.viewport,
|
|
@@ -3565,9 +3570,9 @@ var no = /* @__PURE__ */ B({
|
|
|
3565
3570
|
"model-value",
|
|
3566
3571
|
"group",
|
|
3567
3572
|
"onUpdate:modelValue"
|
|
3568
|
-
]), u(n).length === 0 ? (f(), k("div",
|
|
3573
|
+
]), u(n).length === 0 ? (f(), k("div", oo, [I("span", null, D(j(r).section.dropHere), 1)])) : A("", !0)], 6))), 128))])]));
|
|
3569
3574
|
}
|
|
3570
|
-
}),
|
|
3575
|
+
}), co = {
|
|
3571
3576
|
facebook: {
|
|
3572
3577
|
name: "Facebook",
|
|
3573
3578
|
color: "#1877F2",
|
|
@@ -3648,11 +3653,11 @@ var no = /* @__PURE__ */ B({
|
|
|
3648
3653
|
color: "#1769FF",
|
|
3649
3654
|
path: "M22 7h-7V5h7v2zm1.726 10c-.442 1.297-2.029 3-5.101 3-3.074 0-5.564-1.729-5.564-5.675 0-3.91 2.325-5.92 5.466-5.92 3.082 0 4.964 1.782 5.375 4.426.078.506.109 1.188.095 2.14H15.97c.13 3.211 3.483 3.312 4.588 2.029h3.168zm-7.686-4h4.965c-.105-1.547-1.136-2.219-2.477-2.219-1.466 0-2.277.768-2.488 2.219zm-9.574 6.988H0V5.021h6.953c5.476.081 5.58 5.444 2.72 6.906 3.461 1.26 3.577 8.061-3.207 8.061zM3 11h3.584c2.508 0 2.906-3-.312-3H3v3zm3.391 3H3v3.016h3.341c3.055 0 2.868-3.016.05-3.016z"
|
|
3650
3655
|
}
|
|
3651
|
-
},
|
|
3656
|
+
}, lo = {
|
|
3652
3657
|
small: 24,
|
|
3653
3658
|
medium: 32,
|
|
3654
3659
|
large: 48
|
|
3655
|
-
},
|
|
3660
|
+
}, uo = [
|
|
3656
3661
|
"facebook",
|
|
3657
3662
|
"twitter",
|
|
3658
3663
|
"instagram",
|
|
@@ -3669,11 +3674,11 @@ var no = /* @__PURE__ */ B({
|
|
|
3669
3674
|
"github",
|
|
3670
3675
|
"dribbble",
|
|
3671
3676
|
"behance"
|
|
3672
|
-
],
|
|
3677
|
+
], fo = [
|
|
3673
3678
|
"width",
|
|
3674
3679
|
"height",
|
|
3675
3680
|
"fill"
|
|
3676
|
-
],
|
|
3681
|
+
], po = ["d"], mo = /* @__PURE__ */ B({
|
|
3677
3682
|
__name: "SocialIconSvg",
|
|
3678
3683
|
props: {
|
|
3679
3684
|
platform: {},
|
|
@@ -3681,7 +3686,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3681
3686
|
iconSize: {}
|
|
3682
3687
|
},
|
|
3683
3688
|
setup(e) {
|
|
3684
|
-
let t = e, n = O(() =>
|
|
3689
|
+
let t = e, n = O(() => co[t.platform]), r = O(() => lo[t.iconSize]), i = O(() => {
|
|
3685
3690
|
let e = {
|
|
3686
3691
|
display: "inline-flex",
|
|
3687
3692
|
alignItems: "center",
|
|
@@ -3725,12 +3730,12 @@ var no = /* @__PURE__ */ B({
|
|
|
3725
3730
|
viewBox: "0 0 24 24",
|
|
3726
3731
|
fill: o.value,
|
|
3727
3732
|
xmlns: "http://www.w3.org/2000/svg"
|
|
3728
|
-
}, [I("path", { d: n.value.path }, null, 8,
|
|
3733
|
+
}, [I("path", { d: n.value.path }, null, 8, po)], 8, fo))], 4));
|
|
3729
3734
|
}
|
|
3730
|
-
}),
|
|
3735
|
+
}), ho = { class: "tpl:w-full" }, go = ["href"], _o = {
|
|
3731
3736
|
key: 1,
|
|
3732
3737
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
|
|
3733
|
-
},
|
|
3738
|
+
}, vo = /* @__PURE__ */ B({
|
|
3734
3739
|
__name: "SocialIconsBlock",
|
|
3735
3740
|
props: {
|
|
3736
3741
|
block: {},
|
|
@@ -3743,7 +3748,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3743
3748
|
gap: `${t.block.spacing}px`,
|
|
3744
3749
|
justifyContent: t.block.align === "left" ? "flex-start" : t.block.align === "right" ? "flex-end" : "center"
|
|
3745
3750
|
})), i = O(() => t.block.icons.length > 0);
|
|
3746
|
-
return (t, a) => (f(), k("div",
|
|
3751
|
+
return (t, a) => (f(), k("div", ho, [i.value ? (f(), k("div", {
|
|
3747
3752
|
key: 0,
|
|
3748
3753
|
style: L(r.value)
|
|
3749
3754
|
}, [(f(!0), k(R, null, h(e.block.icons, (t) => (f(), k("a", {
|
|
@@ -3751,7 +3756,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3751
3756
|
href: t.url || "#",
|
|
3752
3757
|
class: "tpl:cursor-default",
|
|
3753
3758
|
onClick: a[0] ||= M(() => {}, ["prevent"])
|
|
3754
|
-
}, [V(
|
|
3759
|
+
}, [V(mo, {
|
|
3755
3760
|
platform: t.platform,
|
|
3756
3761
|
"icon-style": e.block.iconStyle,
|
|
3757
3762
|
"icon-size": e.block.iconSize
|
|
@@ -3759,44 +3764,44 @@ var no = /* @__PURE__ */ B({
|
|
|
3759
3764
|
"platform",
|
|
3760
3765
|
"icon-style",
|
|
3761
3766
|
"icon-size"
|
|
3762
|
-
])], 8,
|
|
3767
|
+
])], 8, go))), 128))], 4)) : (f(), k("div", _o, [V(j(yi), { size: 16 }), I("span", null, D(j(n).social.addIcons), 1)]))]));
|
|
3763
3768
|
}
|
|
3764
|
-
}),
|
|
3769
|
+
}), yo = { class: "tpl:w-full" }, bo = {
|
|
3765
3770
|
key: 0,
|
|
3766
3771
|
class: "tpl:absolute tpl:rounded tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-medium",
|
|
3767
3772
|
style: {
|
|
3768
3773
|
"background-color": "var(--tpl-bg-hover)",
|
|
3769
3774
|
color: "var(--tpl-text-dim)"
|
|
3770
3775
|
}
|
|
3771
|
-
},
|
|
3776
|
+
}, xo = /* @__PURE__ */ B({
|
|
3772
3777
|
__name: "SpacerBlock",
|
|
3773
3778
|
props: {
|
|
3774
3779
|
block: {},
|
|
3775
3780
|
viewport: {}
|
|
3776
3781
|
},
|
|
3777
3782
|
setup(e) {
|
|
3778
|
-
let t = e, n = J(
|
|
3783
|
+
let t = e, n = J(In, "SpacerBlock"), r = O(() => ({
|
|
3779
3784
|
height: `${t.block.height}px`,
|
|
3780
3785
|
minHeight: `${t.block.height}px`,
|
|
3781
3786
|
...n.state.previewMode ? {} : { borderColor: "var(--tpl-border)" }
|
|
3782
3787
|
}));
|
|
3783
|
-
return (t, i) => (f(), k("div",
|
|
3788
|
+
return (t, i) => (f(), k("div", yo, [I("div", {
|
|
3784
3789
|
style: L(r.value),
|
|
3785
3790
|
class: F(["tpl:relative tpl:flex tpl:items-center tpl:justify-center", { "tpl:border-y tpl:border-dashed": !j(n).state.previewMode }])
|
|
3786
|
-
}, [j(n).state.previewMode ? A("", !0) : (f(), k("span",
|
|
3791
|
+
}, [j(n).state.previewMode ? A("", !0) : (f(), k("span", bo, D(e.block.height) + "px ", 1))], 6)]));
|
|
3787
3792
|
}
|
|
3788
|
-
}),
|
|
3793
|
+
}), So = { class: "tpl:w-full" }, Co = { key: 0 }, wo = [
|
|
3789
3794
|
"aria-label",
|
|
3790
3795
|
"data-placeholder",
|
|
3791
3796
|
"onBlur"
|
|
3792
|
-
],
|
|
3797
|
+
], To = [
|
|
3793
3798
|
"aria-label",
|
|
3794
3799
|
"data-placeholder",
|
|
3795
3800
|
"onBlur"
|
|
3796
|
-
],
|
|
3801
|
+
], Eo = {
|
|
3797
3802
|
key: 1,
|
|
3798
3803
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
|
|
3799
|
-
},
|
|
3804
|
+
}, Do = /*#__PURE__*/ Pi(/* @__PURE__ */ B({
|
|
3800
3805
|
__name: "TableBlock",
|
|
3801
3806
|
props: {
|
|
3802
3807
|
block: {},
|
|
@@ -3810,7 +3815,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3810
3815
|
updated(e, t) {
|
|
3811
3816
|
t.value !== t.oldValue && e.getRootNode().activeElement !== e && (e.textContent = t.value ?? "");
|
|
3812
3817
|
}
|
|
3813
|
-
}, n = e, { t: r } = Y(), i = J(
|
|
3818
|
+
}, n = e, { t: r } = Y(), i = J(In, "TableBlock"), a = O(() => n.block.rows.length > 0), o = O(() => ({
|
|
3814
3819
|
width: "100%",
|
|
3815
3820
|
borderCollapse: "collapse",
|
|
3816
3821
|
fontSize: `${n.block.fontSize}px`,
|
|
@@ -3839,11 +3844,11 @@ var no = /* @__PURE__ */ B({
|
|
|
3839
3844
|
} : n);
|
|
3840
3845
|
i.updateBlock(n.block.id, { rows: o });
|
|
3841
3846
|
}
|
|
3842
|
-
return (e, n) => (f(), k("div",
|
|
3847
|
+
return (e, n) => (f(), k("div", So, [a.value ? (f(), k("table", {
|
|
3843
3848
|
key: 0,
|
|
3844
3849
|
style: L(o.value),
|
|
3845
3850
|
class: "tpl-table-editable"
|
|
3846
|
-
}, [u.value ? (f(), k("thead",
|
|
3851
|
+
}, [u.value ? (f(), k("thead", Co, [I("tr", null, [(f(!0), k(R, null, h(u.value.cells, (e) => c((f(), k("th", {
|
|
3847
3852
|
key: e.id,
|
|
3848
3853
|
style: L(l.value),
|
|
3849
3854
|
"aria-label": j(r).table.cellPlaceholder,
|
|
@@ -3852,7 +3857,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3852
3857
|
onBlur: (t) => m(u.value.id, e.id, t),
|
|
3853
3858
|
onKeydown: n[0] ||= E(M((e) => e.target.blur(), ["prevent"]), ["enter"]),
|
|
3854
3859
|
onClick: M(p, ["stop"])
|
|
3855
|
-
}, null, 44,
|
|
3860
|
+
}, null, 44, wo)), [[t, e.content]])), 128))])])) : A("", !0), I("tbody", null, [(f(!0), k(R, null, h(d.value, (e) => (f(), k("tr", { key: e.id }, [(f(!0), k(R, null, h(e.cells, (i) => c((f(), k("td", {
|
|
3856
3861
|
key: i.id,
|
|
3857
3862
|
style: L(s.value),
|
|
3858
3863
|
"aria-label": j(r).table.cellPlaceholder,
|
|
@@ -3861,9 +3866,9 @@ var no = /* @__PURE__ */ B({
|
|
|
3861
3866
|
onBlur: (t) => m(e.id, i.id, t),
|
|
3862
3867
|
onKeydown: n[1] ||= E(M((e) => e.target.blur(), ["prevent"]), ["enter"]),
|
|
3863
3868
|
onClick: M(p, ["stop"])
|
|
3864
|
-
}, null, 44,
|
|
3869
|
+
}, null, 44, To)), [[t, i.content]])), 128))]))), 128))])], 4)) : (f(), k("div", Eo, [V(j(Ci), { size: 16 }), I("span", null, D(j(r).table.empty), 1)]))]));
|
|
3865
3870
|
}
|
|
3866
|
-
}), [["__scopeId", "data-v-1b130f2b"]]),
|
|
3871
|
+
}), [["__scopeId", "data-v-1b130f2b"]]), Oo = /* @__PURE__ */ B({
|
|
3867
3872
|
__name: "VideoPlayButton",
|
|
3868
3873
|
props: { hoverEffect: {
|
|
3869
3874
|
type: Boolean,
|
|
@@ -3881,7 +3886,7 @@ var no = /* @__PURE__ */ B({
|
|
|
3881
3886
|
});
|
|
3882
3887
|
//#endregion
|
|
3883
3888
|
//#region src/utils/videoThumbnail.ts
|
|
3884
|
-
function
|
|
3889
|
+
function ko(e) {
|
|
3885
3890
|
if (!e) return {
|
|
3886
3891
|
platform: "unknown",
|
|
3887
3892
|
videoId: null,
|
|
@@ -3913,25 +3918,25 @@ function Oo(e) {
|
|
|
3913
3918
|
thumbnailUrl: null
|
|
3914
3919
|
};
|
|
3915
3920
|
}
|
|
3916
|
-
function
|
|
3917
|
-
return t ||
|
|
3921
|
+
function Ao(e, t) {
|
|
3922
|
+
return t || ko(e).thumbnailUrl;
|
|
3918
3923
|
}
|
|
3919
3924
|
//#endregion
|
|
3920
3925
|
//#region src/components/blocks/VideoBlock.vue?vue&type=script&setup=true&lang.ts
|
|
3921
|
-
var
|
|
3926
|
+
var jo = ["src", "alt"], Mo = {
|
|
3922
3927
|
class: "tpl:max-w-full tpl:truncate tpl:px-3 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-primary)]",
|
|
3923
3928
|
style: { opacity: "0.7" }
|
|
3924
|
-
},
|
|
3929
|
+
}, No = ["href"], Po = ["src", "alt"], Fo = ["src", "alt"], Io = {
|
|
3925
3930
|
key: 3,
|
|
3926
3931
|
class: "tpl:flex tpl:min-h-[150px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-sm tpl:border-[var(--tpl-border-light)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-dim)]"
|
|
3927
|
-
},
|
|
3932
|
+
}, Lo = /* @__PURE__ */ B({
|
|
3928
3933
|
__name: "VideoBlock",
|
|
3929
3934
|
props: {
|
|
3930
3935
|
block: {},
|
|
3931
3936
|
viewport: {}
|
|
3932
3937
|
},
|
|
3933
3938
|
setup(e) {
|
|
3934
|
-
let t = e, { t: n } = Y(), { syntax: r } =
|
|
3939
|
+
let t = e, { t: n } = Y(), { syntax: r } = Gi(), i = O(() => vt(t.block.url, r) || vt(t.block.thumbnailUrl, r)), a = O(() => i.value ? null : Ao(t.block.url, t.block.thumbnailUrl)), o = O(() => ({ textAlign: t.block.align })), s = O(() => {
|
|
3935
3940
|
let e = t.block.align;
|
|
3936
3941
|
return {
|
|
3937
3942
|
maxWidth: "100%",
|
|
@@ -3940,7 +3945,7 @@ var Ao = ["src", "alt"], jo = {
|
|
|
3940
3945
|
marginLeft: e === "center" || e === "right" ? "auto" : void 0,
|
|
3941
3946
|
marginRight: e === "center" ? "auto" : void 0
|
|
3942
3947
|
};
|
|
3943
|
-
}), c = O(() =>
|
|
3948
|
+
}), c = O(() => vt(t.block.url, r) ? t.block.url : t.block.thumbnailUrl);
|
|
3944
3949
|
return (t, r) => (f(), k("div", {
|
|
3945
3950
|
class: "tpl:w-full",
|
|
3946
3951
|
style: L(o.value)
|
|
@@ -3952,16 +3957,16 @@ var Ao = ["src", "alt"], jo = {
|
|
|
3952
3957
|
class: "tpl:w-full tpl:border-0",
|
|
3953
3958
|
src: e.block.placeholderUrl,
|
|
3954
3959
|
alt: e.block.alt
|
|
3955
|
-
}, null, 8,
|
|
3960
|
+
}, null, 8, jo), V(Oo)], 4)) : i.value ? (f(), k("div", {
|
|
3956
3961
|
key: 1,
|
|
3957
3962
|
class: "tpl:relative tpl:!flex tpl:min-h-[150px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-center tpl:bg-[var(--tpl-bg-elevated)]",
|
|
3958
3963
|
style: L([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, s.value])
|
|
3959
|
-
}, [V(j(
|
|
3964
|
+
}, [V(j(Oi), {
|
|
3960
3965
|
size: 36,
|
|
3961
3966
|
"stroke-width": 1.5,
|
|
3962
3967
|
class: "tpl:text-[var(--tpl-primary)]",
|
|
3963
3968
|
style: { opacity: "0.5" }
|
|
3964
|
-
}), I("span",
|
|
3969
|
+
}), I("span", Mo, D(c.value), 1)], 4)) : a.value ? (f(), k(R, { key: 2 }, [e.block.url ? (f(), k("a", {
|
|
3965
3970
|
key: 0,
|
|
3966
3971
|
href: e.block.url,
|
|
3967
3972
|
target: "_blank",
|
|
@@ -3973,7 +3978,7 @@ var Ao = ["src", "alt"], jo = {
|
|
|
3973
3978
|
class: "tpl:w-full tpl:border-0",
|
|
3974
3979
|
src: a.value,
|
|
3975
3980
|
alt: e.block.alt
|
|
3976
|
-
}, null, 8,
|
|
3981
|
+
}, null, 8, Po), V(Oo, { "hover-effect": "" })], 12, No)) : (f(), k("div", {
|
|
3977
3982
|
key: 1,
|
|
3978
3983
|
class: "tpl:relative tpl:inline-block",
|
|
3979
3984
|
style: L(s.value)
|
|
@@ -3981,48 +3986,48 @@ var Ao = ["src", "alt"], jo = {
|
|
|
3981
3986
|
class: "tpl:w-full tpl:border-0",
|
|
3982
3987
|
src: a.value,
|
|
3983
3988
|
alt: e.block.alt
|
|
3984
|
-
}, null, 8,
|
|
3989
|
+
}, null, 8, Fo), V(Oo)], 4))], 64)) : (f(), k("div", Io, [V(j(Oi), {
|
|
3985
3990
|
size: 40,
|
|
3986
3991
|
"stroke-width": 1.5,
|
|
3987
3992
|
class: "tpl:text-[var(--tpl-border-light)]"
|
|
3988
3993
|
}), I("span", null, D(j(n).video.addVideo), 1)]))], 4));
|
|
3989
3994
|
}
|
|
3990
|
-
}),
|
|
3991
|
-
section:
|
|
3992
|
-
title:
|
|
3993
|
-
paragraph:
|
|
3994
|
-
image:
|
|
3995
|
-
button:
|
|
3996
|
-
divider:
|
|
3997
|
-
video:
|
|
3998
|
-
social:
|
|
3999
|
-
menu:
|
|
4000
|
-
table:
|
|
4001
|
-
spacer:
|
|
4002
|
-
html:
|
|
4003
|
-
countdown: T(() => import("./CountdownBlock-
|
|
3995
|
+
}), Ro = {
|
|
3996
|
+
section: so,
|
|
3997
|
+
title: ro,
|
|
3998
|
+
paragraph: Ba,
|
|
3999
|
+
image: Da,
|
|
4000
|
+
button: Nr,
|
|
4001
|
+
divider: ua,
|
|
4002
|
+
video: Lo,
|
|
4003
|
+
social: vo,
|
|
4004
|
+
menu: ja,
|
|
4005
|
+
table: Do,
|
|
4006
|
+
spacer: xo,
|
|
4007
|
+
html: ha,
|
|
4008
|
+
countdown: T(() => import("./CountdownBlock-gqnpxKp_.js").then((e) => e.n))
|
|
4004
4009
|
};
|
|
4005
|
-
function
|
|
4010
|
+
function zo(e) {
|
|
4006
4011
|
let { editor: t, config: n, translations: r, fontsManager: i } = e, { t: a, format: o } = Y(r);
|
|
4007
4012
|
t.setUiTheme(n.uiTheme ?? "auto");
|
|
4008
|
-
let { resolvedTheme: c } =
|
|
4013
|
+
let { resolvedTheme: c } = _r(O(() => t.state.uiTheme)), u = C(n.theme ?? {}), { themeStyles: d } = yr({
|
|
4009
4014
|
themeOverrides: u,
|
|
4010
4015
|
resolvedTheme: c,
|
|
4011
4016
|
extraStyles: e.themeExtraStyles
|
|
4012
|
-
}), f =
|
|
4017
|
+
}), f = kt({
|
|
4013
4018
|
content: t.content,
|
|
4014
4019
|
setContent: (e, n) => t.setContent(e, n),
|
|
4015
4020
|
...e.historyOptions
|
|
4016
4021
|
});
|
|
4017
|
-
|
|
4018
|
-
let m =
|
|
4022
|
+
Ft(t, f);
|
|
4023
|
+
let m = jt({
|
|
4019
4024
|
addBlock: t.addBlock,
|
|
4020
4025
|
removeBlock: t.removeBlock,
|
|
4021
4026
|
updateBlock: t.updateBlock,
|
|
4022
4027
|
selectBlock: t.selectBlock,
|
|
4023
4028
|
findBlockLocation: t.findBlockLocation,
|
|
4024
4029
|
blockDefaults: n.blockDefaults
|
|
4025
|
-
}), h =
|
|
4030
|
+
}), h = Nt(t), g = e.autoSaveOptions !== null && e.autoSaveOptions !== void 0 ? Mt({
|
|
4026
4031
|
content: t.content,
|
|
4027
4032
|
isDirty: () => t.state.isDirty,
|
|
4028
4033
|
...e.autoSaveOptions
|
|
@@ -4030,15 +4035,15 @@ function Ro(e) {
|
|
|
4030
4035
|
g && (_ = H(f.isNavigating, (e) => {
|
|
4031
4036
|
e ? g.pause() : g.resume();
|
|
4032
4037
|
}));
|
|
4033
|
-
let v =
|
|
4038
|
+
let v = gr(t, {
|
|
4034
4039
|
t: a,
|
|
4035
4040
|
format: o
|
|
4036
|
-
}), y =
|
|
4037
|
-
if (
|
|
4041
|
+
}), y = Cr();
|
|
4042
|
+
if (Or(y, Ro), n.customBlocks?.length) for (let e of n.customBlocks) y.registerCustom(e, ca);
|
|
4038
4043
|
function b(e) {
|
|
4039
|
-
for (let t of e) y.registerCustom(t,
|
|
4044
|
+
for (let t of e) y.registerCustom(t, ca);
|
|
4040
4045
|
}
|
|
4041
|
-
let x =
|
|
4046
|
+
let x = Pn();
|
|
4042
4047
|
if (s() && l(x.dispose), e.containerEl) {
|
|
4043
4048
|
let t = e.containerEl;
|
|
4044
4049
|
q(document, "pointerdown", (e) => {
|
|
@@ -4047,7 +4052,7 @@ function Ro(e) {
|
|
|
4047
4052
|
}, { capture: !0 });
|
|
4048
4053
|
}
|
|
4049
4054
|
function S(r) {
|
|
4050
|
-
x.isActive() &&
|
|
4055
|
+
x.isActive() && Ar(r, {
|
|
4051
4056
|
history: f,
|
|
4052
4057
|
selectBlock: (e) => t.selectBlock(e),
|
|
4053
4058
|
getSelectedBlockId: () => t.state.selectedBlockId,
|
|
@@ -4058,17 +4063,17 @@ function Ro(e) {
|
|
|
4058
4063
|
}
|
|
4059
4064
|
q(document, "keydown", S);
|
|
4060
4065
|
let w = C(null);
|
|
4061
|
-
p(
|
|
4062
|
-
let ee =
|
|
4063
|
-
p(
|
|
4064
|
-
let T =
|
|
4066
|
+
p(ir, e.editorRoot ?? document), p(ar, w), p(Fn, r), p(In, t), p(Ln, f), p(Rn, m), p(zn, h), p(Bn, i), p(Vn, d), p(Hn, c), p(Un, n.blockDefaults), p(Wn, y), p(Gn, n.customBlocks ?? []), p(Kn, wr(t.content, y));
|
|
4067
|
+
let ee = pt(n.mergeTags?.syntax);
|
|
4068
|
+
p(qn, n.mergeTags?.tags ?? []), p(Jn, ee), p(Yn, n.mergeTags?.onRequest ?? null), p(Xn, n.mergeTags?.autocomplete !== !1), p(Zn, fr()), p(Qn, n.onRequestMedia ?? null), p($n, n.displayConditions?.conditions ?? []), p(er, n.displayConditions?.allowCustom ?? !1), p(tr, e.capabilities ?? {}), p(nr, v);
|
|
4069
|
+
let T = pr(n.lint) ? null : mr({
|
|
4065
4070
|
content: t.content,
|
|
4066
4071
|
options: n.lint ?? {},
|
|
4067
4072
|
updateBlock: t.updateBlock,
|
|
4068
4073
|
updateSettings: t.updateSettings,
|
|
4069
4074
|
removeBlock: t.removeBlock
|
|
4070
4075
|
});
|
|
4071
|
-
p(
|
|
4076
|
+
p(rr, T);
|
|
4072
4077
|
function E() {
|
|
4073
4078
|
_?.(), T?.destroy(), g?.destroy(), f.destroy();
|
|
4074
4079
|
}
|
|
@@ -4092,19 +4097,19 @@ function Ro(e) {
|
|
|
4092
4097
|
}
|
|
4093
4098
|
//#endregion
|
|
4094
4099
|
//#region src/composables/usePopoverRoot.ts
|
|
4095
|
-
function
|
|
4096
|
-
return v(
|
|
4100
|
+
function Bo() {
|
|
4101
|
+
return v(ar, C(null));
|
|
4097
4102
|
}
|
|
4098
4103
|
//#endregion
|
|
4099
4104
|
//#region src/components/TplModal.vue?vue&type=script&setup=true&lang.ts
|
|
4100
|
-
var
|
|
4105
|
+
var Vo = ["data-tpl-theme"], Ho = /* @__PURE__ */ B({
|
|
4101
4106
|
__name: "TplModal",
|
|
4102
4107
|
props: { visible: { type: Boolean } },
|
|
4103
4108
|
emits: ["close", "keydown"],
|
|
4104
4109
|
setup(e, { emit: t }) {
|
|
4105
4110
|
let n = e, r = t, i = C(null);
|
|
4106
|
-
|
|
4107
|
-
let a = v(
|
|
4111
|
+
Vi(i, O(() => n.visible));
|
|
4112
|
+
let a = v(Hn), s = Bo();
|
|
4108
4113
|
function c(e) {
|
|
4109
4114
|
e.key === "Escape" && r("close"), r("keydown", e);
|
|
4110
4115
|
}
|
|
@@ -4133,11 +4138,11 @@ var Bo = ["data-tpl-theme"], Vo = /* @__PURE__ */ B({
|
|
|
4133
4138
|
}, [I("div", {
|
|
4134
4139
|
ref_key: "dialogRef",
|
|
4135
4140
|
ref: i
|
|
4136
|
-
}, [o(t.$slots, "default")], 512)], 40,
|
|
4141
|
+
}, [o(t.$slots, "default")], 512)], 40, Vo)) : A("", !0)]),
|
|
4137
4142
|
_: 3
|
|
4138
4143
|
})], 8, ["to"])) : A("", !0);
|
|
4139
4144
|
}
|
|
4140
|
-
}),
|
|
4145
|
+
}), Uo = class e {
|
|
4141
4146
|
static DEFAULT_BASE_URL = "https://templatical.com";
|
|
4142
4147
|
accessToken = null;
|
|
4143
4148
|
expiresAt = null;
|
|
@@ -4211,7 +4216,7 @@ var Bo = ["data-tpl-theme"], Vo = /* @__PURE__ */ B({
|
|
|
4211
4216
|
};
|
|
4212
4217
|
e === "POST" && this.requestOptions.body && (t["Content-Type"] = "application/json", n.body = JSON.stringify(this.requestOptions.body));
|
|
4213
4218
|
let r = await fetch(this.url, n);
|
|
4214
|
-
if (!r.ok) throw new
|
|
4219
|
+
if (!r.ok) throw new Ct(`Token refresh failed: ${r.status}`, r.status);
|
|
4215
4220
|
let i = await r.json();
|
|
4216
4221
|
if (!i.token || !i.expires_at || !i.project_id || !i.tenant) throw Error("Invalid token response: missing token, expires_at, project_id, or tenant");
|
|
4217
4222
|
return this.accessToken = i.token, this.expiresAt = /* @__PURE__ */ new Date(i.expires_at * 1e3), this._projectId = i.project_id, this._tenantSlug = i.tenant, i.test_email?.allowed_emails && i.test_email?.signature ? this._testEmailConfig = {
|
|
@@ -4238,8 +4243,8 @@ var Bo = ["data-tpl-theme"], Vo = /* @__PURE__ */ B({
|
|
|
4238
4243
|
return a.status === 401 && (a = await i(await this.refreshToken())), a;
|
|
4239
4244
|
}
|
|
4240
4245
|
};
|
|
4241
|
-
function
|
|
4242
|
-
return e.mode === "direct" ? new
|
|
4246
|
+
function Wo(e, t) {
|
|
4247
|
+
return e.mode === "direct" ? new Uo({
|
|
4243
4248
|
url: `${(e.baseUrl ?? "https://templatical.com").replace(/\/$/, "")}/api/v1/auth/token`,
|
|
4244
4249
|
baseUrl: e.baseUrl,
|
|
4245
4250
|
requestOptions: {
|
|
@@ -4253,7 +4258,7 @@ function Uo(e, t) {
|
|
|
4253
4258
|
}
|
|
4254
4259
|
},
|
|
4255
4260
|
onError: t
|
|
4256
|
-
}) : new
|
|
4261
|
+
}) : new Uo({
|
|
4257
4262
|
url: e.url,
|
|
4258
4263
|
baseUrl: e.baseUrl,
|
|
4259
4264
|
requestOptions: e.requestOptions,
|
|
@@ -4265,16 +4270,16 @@ function Uo(e, t) {
|
|
|
4265
4270
|
function Z(e, t) {
|
|
4266
4271
|
return e.replace(/\{(\w+)\}/g, (e, n) => encodeURIComponent(t[n] ?? ""));
|
|
4267
4272
|
}
|
|
4268
|
-
var
|
|
4273
|
+
var Go = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${Go}/templates/{template}`, Ko = `${Q}/ai`, qo = `${Go}/media`, Jo = `${qo}/folders`, Yo = `${Go}/saved-modules`, $ = {
|
|
4269
4274
|
health: "/api/v1/health",
|
|
4270
|
-
"projects.config": `${
|
|
4271
|
-
"broadcasting.auth": `${
|
|
4272
|
-
"templates.store": `${
|
|
4275
|
+
"projects.config": `${Go}/config`,
|
|
4276
|
+
"broadcasting.auth": `${Go}/broadcasting/auth`,
|
|
4277
|
+
"templates.store": `${Go}/templates`,
|
|
4273
4278
|
"templates.show": `${Q}`,
|
|
4274
4279
|
"templates.update": `${Q}`,
|
|
4275
4280
|
"templates.destroy": `${Q}`,
|
|
4276
4281
|
"templates.export": `${Q}/export`,
|
|
4277
|
-
"templates.importFromBeefree": `${
|
|
4282
|
+
"templates.importFromBeefree": `${Go}/templates/import/from-beefree`,
|
|
4278
4283
|
"templates.sendTestEmail": `${Q}/send-test-email`,
|
|
4279
4284
|
"snapshots.index": `${Q}/snapshots`,
|
|
4280
4285
|
"snapshots.store": `${Q}/snapshots`,
|
|
@@ -4285,31 +4290,31 @@ var Wo = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${Wo}/templates/{te
|
|
|
4285
4290
|
"comments.update": `${Q}/comments/{comment}`,
|
|
4286
4291
|
"comments.destroy": `${Q}/comments/{comment}`,
|
|
4287
4292
|
"comments.resolve": `${Q}/comments/{comment}/resolve`,
|
|
4288
|
-
"ai.generate": `${
|
|
4289
|
-
"ai.conversationMessages": `${
|
|
4290
|
-
"ai.suggestions": `${
|
|
4291
|
-
"ai.rewriteText": `${
|
|
4292
|
-
"ai.score": `${
|
|
4293
|
-
"ai.fixFinding": `${
|
|
4294
|
-
"ai.generateFromDesign": `${
|
|
4295
|
-
"media.upload": `${
|
|
4296
|
-
"media.browse": `${
|
|
4297
|
-
"media.delete": `${
|
|
4298
|
-
"media.move": `${
|
|
4299
|
-
"media.update": `${
|
|
4300
|
-
"media.replace": `${
|
|
4301
|
-
"media.checkUsage": `${
|
|
4302
|
-
"media.frequentlyUsed": `${
|
|
4303
|
-
"media.importFromUrl": `${
|
|
4304
|
-
"folders.index": `${
|
|
4305
|
-
"folders.store": `${
|
|
4306
|
-
"folders.update": `${
|
|
4307
|
-
"folders.destroy": `${
|
|
4308
|
-
"savedModules.index": `${
|
|
4309
|
-
"savedModules.store": `${
|
|
4310
|
-
"savedModules.update": `${
|
|
4311
|
-
"savedModules.destroy": `${
|
|
4312
|
-
},
|
|
4293
|
+
"ai.generate": `${Ko}/generate`,
|
|
4294
|
+
"ai.conversationMessages": `${Ko}/conversation-messages`,
|
|
4295
|
+
"ai.suggestions": `${Ko}/suggestions`,
|
|
4296
|
+
"ai.rewriteText": `${Ko}/rewrite-text`,
|
|
4297
|
+
"ai.score": `${Ko}/score`,
|
|
4298
|
+
"ai.fixFinding": `${Ko}/fix-finding`,
|
|
4299
|
+
"ai.generateFromDesign": `${Ko}/generate-from-design`,
|
|
4300
|
+
"media.upload": `${qo}/upload`,
|
|
4301
|
+
"media.browse": `${qo}/browse`,
|
|
4302
|
+
"media.delete": `${qo}/delete`,
|
|
4303
|
+
"media.move": `${qo}/move`,
|
|
4304
|
+
"media.update": `${qo}/{media}`,
|
|
4305
|
+
"media.replace": `${qo}/{media}/replace`,
|
|
4306
|
+
"media.checkUsage": `${qo}/check-usage`,
|
|
4307
|
+
"media.frequentlyUsed": `${qo}/frequently-used`,
|
|
4308
|
+
"media.importFromUrl": `${qo}/import-from-url`,
|
|
4309
|
+
"folders.index": `${Jo}`,
|
|
4310
|
+
"folders.store": `${Jo}`,
|
|
4311
|
+
"folders.update": `${Jo}/{mediaFolder}`,
|
|
4312
|
+
"folders.destroy": `${Jo}/{mediaFolder}`,
|
|
4313
|
+
"savedModules.index": `${Yo}`,
|
|
4314
|
+
"savedModules.store": `${Yo}`,
|
|
4315
|
+
"savedModules.update": `${Yo}/{savedModule}`,
|
|
4316
|
+
"savedModules.destroy": `${Yo}/{savedModule}`
|
|
4317
|
+
}, Xo = class {
|
|
4313
4318
|
authManager;
|
|
4314
4319
|
constructor(e) {
|
|
4315
4320
|
this.authManager = e;
|
|
@@ -4337,7 +4342,7 @@ var Wo = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${Wo}/templates/{te
|
|
|
4337
4342
|
});
|
|
4338
4343
|
if (!n.ok) {
|
|
4339
4344
|
let e = await n.json().catch(() => ({ message: `HTTP error ${n.status}` }));
|
|
4340
|
-
throw new
|
|
4345
|
+
throw new Ct(this.extractFirstValidationError(e), n.status);
|
|
4341
4346
|
}
|
|
4342
4347
|
if (n.status !== 204) return (await n.json()).data;
|
|
4343
4348
|
}
|
|
@@ -4495,14 +4500,14 @@ var Wo = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${Wo}/templates/{te
|
|
|
4495
4500
|
};
|
|
4496
4501
|
//#endregion
|
|
4497
4502
|
//#region ../core/src/cloud/websocket-client.ts
|
|
4498
|
-
function
|
|
4503
|
+
function Zo(e) {
|
|
4499
4504
|
return {
|
|
4500
4505
|
host: e.host,
|
|
4501
4506
|
port: e.port,
|
|
4502
4507
|
appKey: e.app_key
|
|
4503
4508
|
};
|
|
4504
4509
|
}
|
|
4505
|
-
var
|
|
4510
|
+
var Qo = class {
|
|
4506
4511
|
pusher = null;
|
|
4507
4512
|
authManager;
|
|
4508
4513
|
config;
|
|
@@ -4569,7 +4574,7 @@ var Zo = class {
|
|
|
4569
4574
|
};
|
|
4570
4575
|
//#endregion
|
|
4571
4576
|
//#region ../core/src/cloud/mcp-operation-handler.ts
|
|
4572
|
-
function
|
|
4577
|
+
function $o(e, t) {
|
|
4573
4578
|
let { operation: n, data: r } = t;
|
|
4574
4579
|
switch (n) {
|
|
4575
4580
|
case "add_block":
|
|
@@ -4597,11 +4602,11 @@ function Qo(e, t) {
|
|
|
4597
4602
|
}
|
|
4598
4603
|
//#endregion
|
|
4599
4604
|
//#region ../core/src/cloud/editor.ts
|
|
4600
|
-
function
|
|
4605
|
+
function es(e) {
|
|
4601
4606
|
return e === "1" ? 1 : e === "3" ? 3 : 2;
|
|
4602
4607
|
}
|
|
4603
|
-
function
|
|
4604
|
-
let t = new
|
|
4608
|
+
function ts(e) {
|
|
4609
|
+
let t = new Xo(e.authManager), n = S({
|
|
4605
4610
|
template: null,
|
|
4606
4611
|
content: Ue(e.defaultFontFamily, e.templateDefaults),
|
|
4607
4612
|
selectedBlockId: null,
|
|
@@ -4707,7 +4712,7 @@ function es(e) {
|
|
|
4707
4712
|
let l;
|
|
4708
4713
|
if (r) {
|
|
4709
4714
|
let e = o(n.content.blocks, r);
|
|
4710
|
-
if (!e || e.type !== "section" || i < 0 || i >=
|
|
4715
|
+
if (!e || e.type !== "section" || i < 0 || i >= es(e.columns)) return;
|
|
4711
4716
|
e.children[i] = e.children[i] || [], l = e.children[i];
|
|
4712
4717
|
} else l = n.content.blocks;
|
|
4713
4718
|
let [u] = a.blocks.splice(c, 1);
|
|
@@ -4737,7 +4742,7 @@ function es(e) {
|
|
|
4737
4742
|
}
|
|
4738
4743
|
}
|
|
4739
4744
|
async function w() {
|
|
4740
|
-
if (!n.template?.id) throw new
|
|
4745
|
+
if (!n.template?.id) throw new Ct("No template loaded. Call create() or load() before saving.");
|
|
4741
4746
|
n.isSaving = !0;
|
|
4742
4747
|
try {
|
|
4743
4748
|
let e = await t.updateTemplate(n.template.id, n.content);
|
|
@@ -4799,11 +4804,11 @@ function es(e) {
|
|
|
4799
4804
|
}
|
|
4800
4805
|
//#endregion
|
|
4801
4806
|
//#region ../core/src/cloud/ai-chat.ts
|
|
4802
|
-
var
|
|
4803
|
-
function
|
|
4804
|
-
return `msg_${Date.now()}_${++
|
|
4807
|
+
var ns = 0;
|
|
4808
|
+
function rs() {
|
|
4809
|
+
return `msg_${Date.now()}_${++ns}`;
|
|
4805
4810
|
}
|
|
4806
|
-
function
|
|
4811
|
+
function is(e) {
|
|
4807
4812
|
let { authManager: t, getTemplateId: n, onApply: r, onError: i } = e, a = C([]), o = C(!1), s = C(!1), c = C(null), l = C(null), u = C(null), d = C(null), f = C(null), p = C(null), m = C(!1), h = C([]), g = C(!1);
|
|
4808
4813
|
function _(e, t) {
|
|
4809
4814
|
let n = a.value.findIndex((t) => t.id === e);
|
|
@@ -4897,14 +4902,14 @@ function rs(e) {
|
|
|
4897
4902
|
let v = n();
|
|
4898
4903
|
if (!v) throw Error("Template must be saved before using AI generation");
|
|
4899
4904
|
o.value = !0, c.value = null, l.value = null, h.value = [];
|
|
4900
|
-
let y =
|
|
4905
|
+
let y = rs();
|
|
4901
4906
|
a.value = [...a.value, {
|
|
4902
4907
|
id: y,
|
|
4903
4908
|
role: "user",
|
|
4904
4909
|
content: e,
|
|
4905
4910
|
timestamp: Date.now()
|
|
4906
4911
|
}];
|
|
4907
|
-
let b =
|
|
4912
|
+
let b = rs();
|
|
4908
4913
|
a.value = [...a.value, {
|
|
4909
4914
|
id: b,
|
|
4910
4915
|
role: "assistant",
|
|
@@ -4995,7 +5000,7 @@ function rs(e) {
|
|
|
4995
5000
|
}
|
|
4996
5001
|
//#endregion
|
|
4997
5002
|
//#region ../core/src/cloud/ai-config.ts
|
|
4998
|
-
function
|
|
5003
|
+
function as(e) {
|
|
4999
5004
|
function t(t) {
|
|
5000
5005
|
return e === !1 ? !1 : e?.[t] !== !1;
|
|
5001
5006
|
}
|
|
@@ -5006,7 +5011,7 @@ function is(e) {
|
|
|
5006
5011
|
}
|
|
5007
5012
|
//#endregion
|
|
5008
5013
|
//#region ../core/src/cloud/template-scoring.ts
|
|
5009
|
-
function
|
|
5014
|
+
function os(e) {
|
|
5010
5015
|
let { authManager: t, getTemplateId: n } = e, r = C(!1), i = C(null), a = C(null), o = C(null), s = C(""), c = C(null);
|
|
5011
5016
|
async function l(e, o) {
|
|
5012
5017
|
let s = n();
|
|
@@ -5151,7 +5156,7 @@ function as(e) {
|
|
|
5151
5156
|
}
|
|
5152
5157
|
//#endregion
|
|
5153
5158
|
//#region ../core/src/cloud/design-reference.ts
|
|
5154
|
-
function
|
|
5159
|
+
function ss(e) {
|
|
5155
5160
|
let { authManager: t, getTemplateId: n, onApply: r, onError: i } = e, a = C(!1), o = C(null);
|
|
5156
5161
|
async function s(e) {
|
|
5157
5162
|
let s = n();
|
|
@@ -5214,8 +5219,8 @@ function os(e) {
|
|
|
5214
5219
|
}
|
|
5215
5220
|
//#endregion
|
|
5216
5221
|
//#region ../core/src/cloud/comments.ts
|
|
5217
|
-
function
|
|
5218
|
-
let { authManager: t, getTemplateId: n, getSocketId: r, onComment: i, onError: a, hasCommentingFeature: o } = e, s = new
|
|
5222
|
+
function cs(e) {
|
|
5223
|
+
let { authManager: t, getTemplateId: n, getSocketId: r, onComment: i, onError: a, hasCommentingFeature: o } = e, s = new Xo(t), c = C([]), l = C(!1), u = C(!1), d = O(() => (o?.() ?? !1) && t.userConfig !== null), f = O(() => {
|
|
5219
5224
|
let e = 0;
|
|
5220
5225
|
for (let t of c.value) e += 1 + (t.replies?.length ?? 0);
|
|
5221
5226
|
return e;
|
|
@@ -5414,17 +5419,17 @@ function ss(e) {
|
|
|
5414
5419
|
}
|
|
5415
5420
|
//#endregion
|
|
5416
5421
|
//#region ../core/src/cloud/comment-listener.ts
|
|
5417
|
-
function
|
|
5422
|
+
function ls(e) {
|
|
5418
5423
|
let { comments: t, channel: n } = e;
|
|
5419
5424
|
H(n, (e, n) => {
|
|
5420
5425
|
n && n.unbind("comment-broadcast"), e && e.bind("comment-broadcast", (e) => {
|
|
5421
|
-
|
|
5426
|
+
us(t, e);
|
|
5422
5427
|
});
|
|
5423
5428
|
}), l(() => {
|
|
5424
5429
|
n.value?.unbind("comment-broadcast");
|
|
5425
5430
|
});
|
|
5426
5431
|
}
|
|
5427
|
-
function
|
|
5432
|
+
function us(e, t) {
|
|
5428
5433
|
switch (t.action) {
|
|
5429
5434
|
case "comment_created":
|
|
5430
5435
|
e.applyRemoteCreate(t.comment);
|
|
@@ -5443,7 +5448,7 @@ function ls(e, t) {
|
|
|
5443
5448
|
}
|
|
5444
5449
|
//#endregion
|
|
5445
5450
|
//#region ../core/src/cloud/collaboration.ts
|
|
5446
|
-
var
|
|
5451
|
+
var ds = [
|
|
5447
5452
|
"pusher:member_added",
|
|
5448
5453
|
"pusher:member_removed",
|
|
5449
5454
|
"client-block_locked",
|
|
@@ -5451,10 +5456,10 @@ var us = [
|
|
|
5451
5456
|
"client-operation",
|
|
5452
5457
|
"mcp-operation"
|
|
5453
5458
|
];
|
|
5454
|
-
function
|
|
5455
|
-
for (let t of
|
|
5459
|
+
function fs(e) {
|
|
5460
|
+
for (let t of ds) e.unbind(t);
|
|
5456
5461
|
}
|
|
5457
|
-
var
|
|
5462
|
+
var ps = [
|
|
5458
5463
|
"#3b82f6",
|
|
5459
5464
|
"#ef4444",
|
|
5460
5465
|
"#10b981",
|
|
@@ -5466,10 +5471,10 @@ var fs = [
|
|
|
5466
5471
|
"#6366f1",
|
|
5467
5472
|
"#14b8a6"
|
|
5468
5473
|
];
|
|
5469
|
-
function
|
|
5474
|
+
function ms(e) {
|
|
5470
5475
|
let { authManager: t, editor: n, channel: r } = e, i = C([]), a = C(/* @__PURE__ */ new Map()), o = 0, s = !1, c = O(() => t.userConfig?.id ?? "");
|
|
5471
5476
|
function u() {
|
|
5472
|
-
let e =
|
|
5477
|
+
let e = ps[o % ps.length];
|
|
5473
5478
|
return o++, e;
|
|
5474
5479
|
}
|
|
5475
5480
|
function d(e) {
|
|
@@ -5511,7 +5516,7 @@ function ps(e) {
|
|
|
5511
5516
|
function h(e) {
|
|
5512
5517
|
s = !0;
|
|
5513
5518
|
try {
|
|
5514
|
-
|
|
5519
|
+
$o(n, e);
|
|
5515
5520
|
} finally {
|
|
5516
5521
|
s = !1;
|
|
5517
5522
|
}
|
|
@@ -5531,7 +5536,7 @@ function ps(e) {
|
|
|
5531
5536
|
return H(() => n.state.selectedBlockId, (e, t) => {
|
|
5532
5537
|
s || (t && v(t), e && _(e));
|
|
5533
5538
|
}), H(r, (t, n) => {
|
|
5534
|
-
if (n &&
|
|
5539
|
+
if (n && fs(n), !t) {
|
|
5535
5540
|
i.value = [], a.value = /* @__PURE__ */ new Map(), o = 0;
|
|
5536
5541
|
return;
|
|
5537
5542
|
}
|
|
@@ -5563,7 +5568,7 @@ function ps(e) {
|
|
|
5563
5568
|
h(e);
|
|
5564
5569
|
});
|
|
5565
5570
|
}), l(() => {
|
|
5566
|
-
r.value &&
|
|
5571
|
+
r.value && fs(r.value);
|
|
5567
5572
|
}), {
|
|
5568
5573
|
collaborators: i,
|
|
5569
5574
|
lockedBlocks: a,
|
|
@@ -5573,7 +5578,7 @@ function ps(e) {
|
|
|
5573
5578
|
}
|
|
5574
5579
|
//#endregion
|
|
5575
5580
|
//#region ../core/src/cloud/collaboration-broadcast.ts
|
|
5576
|
-
function
|
|
5581
|
+
function hs(e, t) {
|
|
5577
5582
|
let n = e.addBlock, r = e.updateBlock, i = e.removeBlock, a = e.moveBlock, o = e.updateSettings, s = e.setContent;
|
|
5578
5583
|
e.addBlock = (e, r, i, a) => {
|
|
5579
5584
|
n(e, r, i, a), t._broadcastOperation({
|
|
@@ -5628,11 +5633,11 @@ function ms(e, t) {
|
|
|
5628
5633
|
}
|
|
5629
5634
|
//#endregion
|
|
5630
5635
|
//#region ../core/src/cloud/web-socket.ts
|
|
5631
|
-
function
|
|
5636
|
+
function gs(e) {
|
|
5632
5637
|
let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = null, o = null;
|
|
5633
5638
|
async function s(e, s) {
|
|
5634
5639
|
if (a) return;
|
|
5635
|
-
a = new
|
|
5640
|
+
a = new Qo({
|
|
5636
5641
|
authManager: t,
|
|
5637
5642
|
config: s,
|
|
5638
5643
|
onError: n
|
|
@@ -5660,8 +5665,8 @@ function hs(e) {
|
|
|
5660
5665
|
}
|
|
5661
5666
|
//#endregion
|
|
5662
5667
|
//#region ../core/src/cloud/saved-modules.ts
|
|
5663
|
-
function
|
|
5664
|
-
let t = new
|
|
5668
|
+
function _s(e) {
|
|
5669
|
+
let t = new Xo(e.authManager), n = C([]), r = C(!1);
|
|
5665
5670
|
async function i(i) {
|
|
5666
5671
|
r.value = !0;
|
|
5667
5672
|
try {
|
|
@@ -5709,8 +5714,8 @@ function gs(e) {
|
|
|
5709
5714
|
}
|
|
5710
5715
|
//#endregion
|
|
5711
5716
|
//#region ../core/src/cloud/snapshots.ts
|
|
5712
|
-
function
|
|
5713
|
-
let t = new
|
|
5717
|
+
function vs(e) {
|
|
5718
|
+
let t = new Xo(e.authManager), n = C([]), r = C(!1), i = C(!1);
|
|
5714
5719
|
async function a() {
|
|
5715
5720
|
r.value = !0;
|
|
5716
5721
|
try {
|
|
@@ -5742,8 +5747,8 @@ function _s(e) {
|
|
|
5742
5747
|
}
|
|
5743
5748
|
//#endregion
|
|
5744
5749
|
//#region ../core/src/cloud/test-email.ts
|
|
5745
|
-
function
|
|
5746
|
-
let { authManager: t, getTemplateId: n, save: r, exportHtml: i, onError: a, isAuthReady: o, onBeforeTestEmail: s } = e, c = new
|
|
5750
|
+
function ys(e) {
|
|
5751
|
+
let { authManager: t, getTemplateId: n, save: r, exportHtml: i, onError: a, isAuthReady: o, onBeforeTestEmail: s } = e, c = new Xo(t), l = C(!1), u = C(null), d = C(null);
|
|
5747
5752
|
o && H(o, (e) => {
|
|
5748
5753
|
e && (d.value = t.testEmailConfig);
|
|
5749
5754
|
}, { immediate: !0 });
|
|
@@ -5779,8 +5784,8 @@ function vs(e) {
|
|
|
5779
5784
|
}
|
|
5780
5785
|
//#endregion
|
|
5781
5786
|
//#region ../core/src/cloud/export.ts
|
|
5782
|
-
function
|
|
5783
|
-
let { authManager: t, getFontsConfig: n, canUseCustomFonts: r } = e, i = new
|
|
5787
|
+
function bs(e) {
|
|
5788
|
+
let { authManager: t, getFontsConfig: n, canUseCustomFonts: r } = e, i = new Xo(t);
|
|
5784
5789
|
function a() {
|
|
5785
5790
|
let e = n?.();
|
|
5786
5791
|
return {
|
|
@@ -5806,8 +5811,8 @@ function ys(e) {
|
|
|
5806
5811
|
}
|
|
5807
5812
|
//#endregion
|
|
5808
5813
|
//#region ../core/src/cloud/plan-config.ts
|
|
5809
|
-
function
|
|
5810
|
-
let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = new
|
|
5814
|
+
function xs(e) {
|
|
5815
|
+
let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = new Xo(t), o = O(() => r.value?.features ?? null);
|
|
5811
5816
|
function s(e) {
|
|
5812
5817
|
return r.value?.features[e] ?? !1;
|
|
5813
5818
|
}
|
|
@@ -5833,11 +5838,11 @@ function bs(e) {
|
|
|
5833
5838
|
}
|
|
5834
5839
|
//#endregion
|
|
5835
5840
|
//#region ../core/src/cloud/health-check.ts
|
|
5836
|
-
var
|
|
5837
|
-
function
|
|
5841
|
+
var Ss = 5e3;
|
|
5842
|
+
function Cs(e) {
|
|
5838
5843
|
return e.authManager ? e.authManager.resolveUrl($.health) : `${(e.baseUrl ?? "https://templatical.com").replace(/\/$/, "")}${$.health}`;
|
|
5839
5844
|
}
|
|
5840
|
-
async function
|
|
5845
|
+
async function ws(e, t) {
|
|
5841
5846
|
let n = performance.now();
|
|
5842
5847
|
try {
|
|
5843
5848
|
let r = t ? await t.authenticatedFetch($.health, {
|
|
@@ -5889,7 +5894,7 @@ async function Cs(e, t) {
|
|
|
5889
5894
|
};
|
|
5890
5895
|
}
|
|
5891
5896
|
}
|
|
5892
|
-
async function
|
|
5897
|
+
async function Ts(e) {
|
|
5893
5898
|
if (!e?.host || !e?.app_key) return {
|
|
5894
5899
|
ok: !1,
|
|
5895
5900
|
error: "WebSocket configuration not available"
|
|
@@ -5905,7 +5910,7 @@ async function ws(e) {
|
|
|
5905
5910
|
ok: !1,
|
|
5906
5911
|
error: "WebSocket connection timed out"
|
|
5907
5912
|
});
|
|
5908
|
-
},
|
|
5913
|
+
}, Ss);
|
|
5909
5914
|
try {
|
|
5910
5915
|
n = new WebSocket(t);
|
|
5911
5916
|
} catch (t) {
|
|
@@ -5925,8 +5930,8 @@ async function ws(e) {
|
|
|
5925
5930
|
};
|
|
5926
5931
|
});
|
|
5927
5932
|
}
|
|
5928
|
-
async function
|
|
5929
|
-
let t = await Cs(
|
|
5933
|
+
async function Es(e = {}) {
|
|
5934
|
+
let t = await ws(Cs(e), e.authManager), n = await Ts(t.wsConfig);
|
|
5930
5935
|
return {
|
|
5931
5936
|
api: t.api,
|
|
5932
5937
|
websocket: n,
|
|
@@ -5936,29 +5941,29 @@ async function Ts(e = {}) {
|
|
|
5936
5941
|
}
|
|
5937
5942
|
//#endregion
|
|
5938
5943
|
//#region ../core/src/cloud/mcp-listener.ts
|
|
5939
|
-
function
|
|
5944
|
+
function Ds(e) {
|
|
5940
5945
|
let { editor: t, channel: n, onOperation: r } = e;
|
|
5941
5946
|
H(n, (e, n) => {
|
|
5942
5947
|
n && n.unbind("mcp-operation"), e && e.bind("mcp-operation", (e) => {
|
|
5943
|
-
|
|
5948
|
+
$o(t, e), r?.(e);
|
|
5944
5949
|
});
|
|
5945
5950
|
});
|
|
5946
5951
|
}
|
|
5947
5952
|
//#endregion
|
|
5948
5953
|
//#region src/cloud/components/AiChatSidebar.vue?vue&type=script&setup=true&lang.ts
|
|
5949
|
-
var
|
|
5954
|
+
var Os = {
|
|
5950
5955
|
key: 0,
|
|
5951
5956
|
class: "tpl-ai-sidebar tpl:absolute tpl:top-14 tpl:right-0 tpl:bottom-0 tpl:z-panel tpl:flex tpl:w-[360px] tpl:flex-col tpl:border-l tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)]"
|
|
5952
|
-
},
|
|
5957
|
+
}, ks = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, As = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, js = { class: "tpl:flex tpl:items-center tpl:gap-1" }, Ms = ["title"], Ns = { class: "tpl:relative tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col" }, Ps = {
|
|
5953
5958
|
key: 0,
|
|
5954
5959
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
5955
|
-
},
|
|
5960
|
+
}, Fs = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Is = {
|
|
5956
5961
|
key: 1,
|
|
5957
5962
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
5958
|
-
},
|
|
5963
|
+
}, Ls = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Rs = {
|
|
5959
5964
|
key: 2,
|
|
5960
5965
|
class: "tpl:flex tpl:flex-col tpl:gap-4"
|
|
5961
|
-
},
|
|
5966
|
+
}, zs = {
|
|
5962
5967
|
key: 0,
|
|
5963
5968
|
class: "tpl:self-end tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm",
|
|
5964
5969
|
style: {
|
|
@@ -5967,10 +5972,10 @@ var Ds = {
|
|
|
5967
5972
|
"max-width": "85%",
|
|
5968
5973
|
"box-shadow": "var(--tpl-shadow)"
|
|
5969
5974
|
}
|
|
5970
|
-
},
|
|
5975
|
+
}, Bs = {
|
|
5971
5976
|
key: 1,
|
|
5972
5977
|
class: "tpl:flex tpl:flex-col tpl:gap-2"
|
|
5973
|
-
},
|
|
5978
|
+
}, Vs = {
|
|
5974
5979
|
key: 1,
|
|
5975
5980
|
class: "tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm tpl:whitespace-pre-wrap",
|
|
5976
5981
|
style: {
|
|
@@ -5979,21 +5984,21 @@ var Ds = {
|
|
|
5979
5984
|
color: "var(--tpl-text)",
|
|
5980
5985
|
"box-shadow": "var(--tpl-shadow)"
|
|
5981
5986
|
}
|
|
5982
|
-
},
|
|
5987
|
+
}, Hs = {
|
|
5983
5988
|
key: 0,
|
|
5984
5989
|
class: "tpl:mx-3 tpl:mb-2 tpl:flex tpl:items-start tpl:gap-2 tpl:rounded-lg tpl:px-3 tpl:py-2 tpl:text-xs",
|
|
5985
5990
|
style: {
|
|
5986
5991
|
"background-color": "var(--tpl-danger-light)",
|
|
5987
5992
|
color: "var(--tpl-danger)"
|
|
5988
5993
|
}
|
|
5989
|
-
},
|
|
5994
|
+
}, Us = {
|
|
5990
5995
|
key: 1,
|
|
5991
5996
|
class: "tpl:absolute tpl:right-0 tpl:bottom-0 tpl:left-0 tpl:z-10 tpl:px-3 tpl:pb-3",
|
|
5992
5997
|
style: {
|
|
5993
5998
|
"background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 50%,\n transparent\n )",
|
|
5994
5999
|
"backdrop-filter": "blur(2px)"
|
|
5995
6000
|
}
|
|
5996
|
-
},
|
|
6001
|
+
}, Ws = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, Gs = ["onClick"], Ks = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, qs = { class: "tpl-ai-input-wrapper tpl:flex tpl:items-end tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:border tpl:px-3 tpl:py-2 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, Js = ["placeholder", "disabled"], Ys = ["disabled"], Xs = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Zs = /*@__PURE__*/ B({
|
|
5997
6002
|
__name: "AiChatSidebar",
|
|
5998
6003
|
props: {
|
|
5999
6004
|
visible: { type: Boolean },
|
|
@@ -6001,14 +6006,14 @@ var Ds = {
|
|
|
6001
6006
|
},
|
|
6002
6007
|
emits: ["close"],
|
|
6003
6008
|
setup(e, { emit: t }) {
|
|
6004
|
-
let n = e, r = t, i = J(
|
|
6009
|
+
let n = e, r = t, i = J(dr, "AiChatSidebar"), a = J(In, "AiChatSidebar"), o = J(or, "AiChatSidebar"), s = v(qn, []), l = ga(), u = is({
|
|
6005
6010
|
authManager: o,
|
|
6006
6011
|
getTemplateId: () => a.state.template?.id ?? null,
|
|
6007
6012
|
onApply: n.onApply,
|
|
6008
6013
|
onError: void 0
|
|
6009
|
-
}), d = C(""), p = C(null), g = C(!1), _ = C(0), { pause: y, resume: x } =
|
|
6014
|
+
}), d = C(""), p = C(null), g = C(!1), _ = C(0), { pause: y, resume: x } = on(() => {
|
|
6010
6015
|
_.value < (u.suggestions.value?.length ?? 0) ? _.value++ : y();
|
|
6011
|
-
}, 150, { immediate: !1 }), { start: S } =
|
|
6016
|
+
}, 150, { immediate: !1 }), { start: S } = sn(() => x(), 100, { immediate: !1 });
|
|
6012
6017
|
H(() => u.suggestions.value?.length ?? 0, (e) => {
|
|
6013
6018
|
if (y(), e === 0) {
|
|
6014
6019
|
_.value = 0;
|
|
@@ -6048,42 +6053,42 @@ var Ds = {
|
|
|
6048
6053
|
"leave-from-class": "tpl:translate-x-0",
|
|
6049
6054
|
"leave-to-class": "tpl:translate-x-full"
|
|
6050
6055
|
}, {
|
|
6051
|
-
default: b(() => [e.visible ? (f(), k("div",
|
|
6052
|
-
I("div",
|
|
6056
|
+
default: b(() => [e.visible ? (f(), k("div", Os, [
|
|
6057
|
+
I("div", ks, [I("div", As, [V(j(Si), {
|
|
6053
6058
|
size: 13,
|
|
6054
6059
|
"stroke-width": 2
|
|
6055
|
-
}), I("span", null, D(j(i).aiChat.title), 1)]), I("div",
|
|
6060
|
+
}), I("span", null, D(j(i).aiChat.title), 1)]), I("div", js, [(j(u).messages.value?.length ?? 0) > 0 ? (f(), k("button", {
|
|
6056
6061
|
key: 0,
|
|
6057
6062
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6058
6063
|
title: j(i).aiChat.clear,
|
|
6059
6064
|
onClick: n[0] ||= (e) => j(u).clearChat()
|
|
6060
|
-
}, [V(j(
|
|
6065
|
+
}, [V(j(wi), {
|
|
6061
6066
|
size: 14,
|
|
6062
6067
|
"stroke-width": 2
|
|
6063
|
-
})], 8,
|
|
6068
|
+
})], 8, Ms)) : A("", !0), I("button", {
|
|
6064
6069
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6065
6070
|
onClick: n[1] ||= (e) => r("close")
|
|
6066
|
-
}, [V(j(
|
|
6071
|
+
}, [V(j(ki), {
|
|
6067
6072
|
size: 14,
|
|
6068
6073
|
"stroke-width": 2
|
|
6069
6074
|
})])])]),
|
|
6070
|
-
I("div",
|
|
6075
|
+
I("div", Ns, [
|
|
6071
6076
|
I("div", {
|
|
6072
6077
|
ref_key: "messagesContainer",
|
|
6073
6078
|
ref: p,
|
|
6074
6079
|
class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4"
|
|
6075
|
-
}, [j(u).isLoadingHistory.value ? (f(), k("div",
|
|
6080
|
+
}, [j(u).isLoadingHistory.value ? (f(), k("div", Ps, [V(j(ui), {
|
|
6076
6081
|
class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
|
|
6077
6082
|
size: 24,
|
|
6078
6083
|
"stroke-width": 2
|
|
6079
|
-
}), I("p",
|
|
6084
|
+
}), I("p", Fs, D(j(i).aiChat.loadingHistory), 1)])) : (j(u).messages.value?.length ?? 0) === 0 ? (f(), k("div", Is, [V(j(Si), {
|
|
6080
6085
|
size: 32,
|
|
6081
6086
|
"stroke-width": 1.5,
|
|
6082
6087
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
6083
|
-
}), I("p",
|
|
6088
|
+
}), I("p", Ls, D(j(i).aiChat.placeholder), 1)])) : (f(), k("div", Rs, [(f(!0), k(R, null, h(j(u).messages.value, (e, t) => (f(), k("div", {
|
|
6084
6089
|
key: e.id,
|
|
6085
6090
|
class: "tpl:flex tpl:flex-col tpl:gap-2"
|
|
6086
|
-
}, [e.role === "user" ? (f(), k("div",
|
|
6091
|
+
}, [e.role === "user" ? (f(), k("div", zs, D(e.content), 1)) : (f(), k("div", Bs, [!T(e.content) && j(u).isGenerating.value && t === (j(u).messages.value?.length ?? 0) - 1 ? (f(), N(Ri, { key: 0 })) : (f(), k("div", Vs, D(T(e.content) || j(i).aiChat.applied), 1)), e.id === j(u).lastApplyMessageId.value && !j(u).isGenerating.value ? (f(), k("button", {
|
|
6087
6092
|
key: 2,
|
|
6088
6093
|
class: "tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:self-start tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150",
|
|
6089
6094
|
style: {
|
|
@@ -6092,19 +6097,19 @@ var Ds = {
|
|
|
6092
6097
|
"background-color": "transparent"
|
|
6093
6098
|
},
|
|
6094
6099
|
onClick: n[2] ||= (e) => j(u).toggleLastRevert()
|
|
6095
|
-
}, [j(u).isLastChangeReverted.value ? (f(), k(R, { key: 0 }, [V(j(
|
|
6100
|
+
}, [j(u).isLastChangeReverted.value ? (f(), k(R, { key: 0 }, [V(j(hi), {
|
|
6096
6101
|
size: 12,
|
|
6097
6102
|
"stroke-width": 2
|
|
6098
|
-
}), z(" " + D(j(i).aiChat.reapply), 1)], 64)) : (f(), k(R, { key: 1 }, [V(j(
|
|
6103
|
+
}), z(" " + D(j(i).aiChat.reapply), 1)], 64)) : (f(), k(R, { key: 1 }, [V(j(Ei), {
|
|
6099
6104
|
size: 12,
|
|
6100
6105
|
"stroke-width": 2
|
|
6101
6106
|
}), z(" " + D(j(i).aiChat.revert), 1)], 64))])) : A("", !0)]))]))), 128))]))], 512),
|
|
6102
|
-
j(u).error.value ? (f(), k("div",
|
|
6107
|
+
j(u).error.value ? (f(), k("div", Hs, [V(j(Xr), {
|
|
6103
6108
|
size: 14,
|
|
6104
6109
|
"stroke-width": 2,
|
|
6105
6110
|
class: "tpl:mt-0.5 tpl:shrink-0"
|
|
6106
6111
|
}), I("span", null, D(j(u).error.value === "ai_apply_failed" ? j(i).aiChat.applyFailed : j(i).aiChat.error), 1)])) : A("", !0),
|
|
6107
|
-
(j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div",
|
|
6112
|
+
(j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div", Us, [I("div", Ws, [(f(!0), k(R, null, h(j(u).suggestions.value ?? [], (e, t) => (f(), k("button", {
|
|
6108
6113
|
key: t,
|
|
6109
6114
|
class: F(["tpl-suggestion-btn tpl:cursor-pointer tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:px-3 tpl:py-2 tpl:text-left tpl:text-xs tpl:leading-snug tpl:transition-all tpl:duration-300 tpl:ease-out", (j(u).suggestions.value?.length ?? 0) - 1 - t < _.value ? "tpl:translate-y-0 tpl:opacity-100" : "tpl:pointer-events-none tpl:-translate-y-2 tpl:opacity-0"]),
|
|
6110
6115
|
style: {
|
|
@@ -6114,104 +6119,104 @@ var Ds = {
|
|
|
6114
6119
|
"box-shadow": "var(--tpl-shadow)"
|
|
6115
6120
|
},
|
|
6116
6121
|
onClick: (t) => E(e)
|
|
6117
|
-
}, D(e), 11,
|
|
6122
|
+
}, D(e), 11, Gs))), 128))])])) : A("", !0)
|
|
6118
6123
|
]),
|
|
6119
|
-
I("div",
|
|
6124
|
+
I("div", Ks, [I("div", qs, [c(I("textarea", {
|
|
6120
6125
|
"onUpdate:modelValue": n[3] ||= (e) => d.value = e,
|
|
6121
6126
|
class: "tpl:max-h-32 tpl:min-h-[64px] tpl:flex-1 tpl:resize-none tpl:border-none tpl:bg-transparent tpl:font-sans tpl:text-sm tpl:outline-none tpl:text-[var(--tpl-text)]",
|
|
6122
6127
|
placeholder: j(i).aiChat.inputPlaceholder,
|
|
6123
6128
|
disabled: j(u).isGenerating.value,
|
|
6124
6129
|
rows: "3",
|
|
6125
6130
|
onKeydown: te
|
|
6126
|
-
}, null, 40,
|
|
6131
|
+
}, null, 40, Js), [[ae, d.value]]), I("button", {
|
|
6127
6132
|
class: "tpl-ai-send-btn tpl:flex tpl:shrink-0 tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1.5 tpl:transition-all tpl:duration-150 tpl:disabled:opacity-40 tpl:text-[var(--tpl-primary)]",
|
|
6128
6133
|
disabled: !d.value.trim() || j(u).isGenerating.value,
|
|
6129
6134
|
onClick: ee
|
|
6130
|
-
}, [V(j(
|
|
6135
|
+
}, [V(j(vi), {
|
|
6131
6136
|
size: 16,
|
|
6132
6137
|
"stroke-width": 2
|
|
6133
|
-
})], 8,
|
|
6138
|
+
})], 8, Ys)]), I("p", Xs, D(j(i).aiMenu.disclaimer), 1)])
|
|
6134
6139
|
])) : A("", !0)]),
|
|
6135
6140
|
_: 1
|
|
6136
6141
|
}));
|
|
6137
6142
|
}
|
|
6138
|
-
}),
|
|
6139
|
-
function
|
|
6143
|
+
}), Qs = /* @__PURE__ */ e({ default: () => $s }), $s = /*#__PURE__*/ Pi(Zs, [["__scopeId", "data-v-a55e4bff"]]), ec = 6e4, tc = 36e5, nc = 864e5;
|
|
6144
|
+
function rc(e, t, n, r) {
|
|
6140
6145
|
let i = new Date(e).getTime();
|
|
6141
6146
|
if (Number.isNaN(i)) return null;
|
|
6142
6147
|
let a = Date.now() - i;
|
|
6143
6148
|
if (a < -6e4) return null;
|
|
6144
|
-
let o = Math.floor(a /
|
|
6149
|
+
let o = Math.floor(a / ec), s = Math.floor(a / tc), c = Math.floor(a / nc);
|
|
6145
6150
|
return o < 1 ? t.justNow : o < 60 ? n ? n(t.minutesAgo, { minutes: o }) : t.minutesAgo.replace("{minutes}", String(o)) : s < 24 ? n ? n(t.hoursAgo, { hours: s }) : t.hoursAgo.replace("{hours}", String(s)) : r !== void 0 && c >= r ? null : n ? n(t.daysAgo, { days: c }) : t.daysAgo.replace("{days}", String(c));
|
|
6146
6151
|
}
|
|
6147
6152
|
//#endregion
|
|
6148
6153
|
//#region src/cloud/components/CommentsSidebar.vue?vue&type=script&setup=true&lang.ts
|
|
6149
|
-
var
|
|
6154
|
+
var ic = {
|
|
6150
6155
|
key: 0,
|
|
6151
6156
|
class: "tpl-comments-sidebar tpl:absolute tpl:top-14 tpl:right-0 tpl:bottom-0 tpl:z-panel tpl:flex tpl:w-[360px] tpl:flex-col tpl:border-l tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)]"
|
|
6152
|
-
},
|
|
6157
|
+
}, ac = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, oc = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text)]" }, sc = {
|
|
6153
6158
|
key: 0,
|
|
6154
6159
|
class: "tpl:ml-1 tpl:inline-flex tpl:size-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)]"
|
|
6155
|
-
},
|
|
6160
|
+
}, cc = { class: "tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2" }, lc = { class: "tpl:flex-1 tpl:overflow-y-auto" }, uc = {
|
|
6156
6161
|
key: 0,
|
|
6157
6162
|
class: "tpl:flex tpl:h-full tpl:items-center tpl:justify-center"
|
|
6158
|
-
},
|
|
6163
|
+
}, dc = {
|
|
6159
6164
|
key: 1,
|
|
6160
6165
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:px-6 tpl:text-center"
|
|
6161
|
-
},
|
|
6166
|
+
}, fc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, pc = {
|
|
6162
6167
|
key: 2,
|
|
6163
6168
|
class: "tpl:flex tpl:flex-col tpl:gap-3 tpl:p-3"
|
|
6164
|
-
},
|
|
6169
|
+
}, mc = { class: "tpl-comment-card tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-3" }, hc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, gc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, _c = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, vc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, yc = {
|
|
6165
6170
|
key: 0,
|
|
6166
6171
|
class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
|
|
6167
|
-
},
|
|
6172
|
+
}, bc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, xc = ["title", "onClick"], Sc = ["title", "onClick"], Cc = ["title", "onClick"], wc = {
|
|
6168
6173
|
key: 0,
|
|
6169
6174
|
class: "tpl:mt-1 tpl:flex tpl:items-center tpl:gap-1 tpl:text-[10px] tpl:text-[var(--tpl-primary)]"
|
|
6170
|
-
},
|
|
6175
|
+
}, Tc = {
|
|
6171
6176
|
key: 0,
|
|
6172
6177
|
class: "tpl:mt-1 tpl:inline-flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[10px] tpl:font-medium tpl:bg-[var(--tpl-warning-light)] tpl:text-[var(--tpl-warning)]"
|
|
6173
|
-
},
|
|
6178
|
+
}, Ec = ["onClick"], Dc = {
|
|
6174
6179
|
key: 2,
|
|
6175
6180
|
class: "tpl:mt-2"
|
|
6176
|
-
},
|
|
6181
|
+
}, Oc = ["onKeydown"], kc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, Ac = ["disabled", "onClick"], jc = {
|
|
6177
6182
|
key: 3,
|
|
6178
6183
|
class: "tpl:mt-1.5 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
|
|
6179
|
-
},
|
|
6184
|
+
}, Mc = {
|
|
6180
6185
|
key: 4,
|
|
6181
6186
|
class: "tpl:mt-2 tpl:flex tpl:items-center tpl:gap-2 tpl:rounded-md tpl:px-2.5 tpl:py-2 tpl:text-xs tpl:bg-[var(--tpl-danger-light)] tpl:text-[var(--tpl-danger)]"
|
|
6182
|
-
},
|
|
6187
|
+
}, Nc = { class: "tpl:flex-1" }, Pc = ["onClick"], Fc = {
|
|
6183
6188
|
key: 5,
|
|
6184
6189
|
class: "tpl:mt-2 tpl:flex tpl:items-center tpl:gap-2"
|
|
6185
|
-
},
|
|
6190
|
+
}, Ic = ["title", "onClick"], Lc = ["onClick"], Rc = {
|
|
6186
6191
|
key: 0,
|
|
6187
6192
|
class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
|
|
6188
|
-
},
|
|
6193
|
+
}, zc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, Bc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, Vc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Hc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Uc = {
|
|
6189
6194
|
key: 0,
|
|
6190
6195
|
class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
|
|
6191
|
-
},
|
|
6196
|
+
}, Wc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, Gc = ["title", "onClick"], Kc = ["title", "onClick"], qc = {
|
|
6192
6197
|
key: 0,
|
|
6193
6198
|
class: "tpl:mt-1.5"
|
|
6194
|
-
},
|
|
6199
|
+
}, Jc = ["onKeydown"], Yc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, Xc = ["disabled", "onClick"], Zc = {
|
|
6195
6200
|
key: 1,
|
|
6196
6201
|
class: "tpl:mt-1 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
|
|
6197
|
-
},
|
|
6202
|
+
}, Qc = {
|
|
6198
6203
|
key: 2,
|
|
6199
6204
|
class: "tpl:mt-2 tpl:flex tpl:items-center tpl:gap-2 tpl:rounded-md tpl:px-2.5 tpl:py-2 tpl:text-xs tpl:bg-[var(--tpl-danger-light)] tpl:text-[var(--tpl-danger)]"
|
|
6200
|
-
},
|
|
6205
|
+
}, $c = { class: "tpl:flex-1" }, el = ["onClick"], tl = {
|
|
6201
6206
|
key: 0,
|
|
6202
6207
|
class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
|
|
6203
|
-
},
|
|
6208
|
+
}, nl = { class: "tpl:flex tpl:items-end tpl:gap-2" }, rl = ["placeholder", "onKeydown"], il = { class: "tpl:flex tpl:shrink-0 tpl:flex-col tpl:gap-1" }, al = ["disabled", "onClick"], ol = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, sl = {
|
|
6204
6209
|
key: 0,
|
|
6205
6210
|
class: "tpl:flex tpl:min-h-[68px] tpl:items-center tpl:rounded-md tpl:px-3 tpl:py-2 tpl:text-xs tpl:bg-[var(--tpl-warning-light)] tpl:text-[var(--tpl-warning)]"
|
|
6206
|
-
},
|
|
6211
|
+
}, cl = {
|
|
6207
6212
|
key: 1,
|
|
6208
6213
|
class: "tpl-comments-input-wrapper tpl:flex tpl:min-h-[68px] tpl:items-end tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:border tpl:px-3 tpl:py-2 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]"
|
|
6209
|
-
},
|
|
6214
|
+
}, ll = ["placeholder", "disabled"], ul = ["disabled"], dl = /*@__PURE__*/ B({
|
|
6210
6215
|
__name: "CommentsSidebar",
|
|
6211
6216
|
props: { visible: { type: Boolean } },
|
|
6212
6217
|
emits: ["close", "filterBlock"],
|
|
6213
6218
|
setup(e, { expose: t, emit: n }) {
|
|
6214
|
-
let r = e, i = n, { format: a } = Y(), { t: o } =
|
|
6219
|
+
let r = e, i = n, { format: a } = Y(), { t: o } = Wi(), s = J(In, "CommentsSidebar"), l = J(or, "CommentsSidebar"), u = J(cr, "CommentsSidebar"), d = C("unresolved"), p = C(null), g = C(""), _ = C(null), v = C(""), y = C(null), x = C(""), S = C(/* @__PURE__ */ new Set()), w = C(null), ee = C(null), T = O(() => l.userConfig?.id ?? null), E = O(() => {
|
|
6215
6220
|
let e = /* @__PURE__ */ new Set();
|
|
6216
6221
|
for (let t of s.content.value.blocks) if (e.add(t.id), t.type === "section") for (let n of t.children) for (let t of n) e.add(t.id);
|
|
6217
6222
|
return e;
|
|
@@ -6279,7 +6284,7 @@ var rc = {
|
|
|
6279
6284
|
return e.author_identifier === T.value;
|
|
6280
6285
|
}
|
|
6281
6286
|
function ve(e) {
|
|
6282
|
-
return
|
|
6287
|
+
return rc(e, o.snapshotHistory) ?? e;
|
|
6283
6288
|
}
|
|
6284
6289
|
function ye(e) {
|
|
6285
6290
|
e.key === "Enter" && !e.shiftKey && (e.preventDefault(), fe());
|
|
@@ -6306,22 +6311,22 @@ var rc = {
|
|
|
6306
6311
|
"leave-from-class": "tpl:translate-x-0",
|
|
6307
6312
|
"leave-to-class": "tpl:translate-x-full"
|
|
6308
6313
|
}, {
|
|
6309
|
-
default: b(() => [e.visible ? (f(), k("div",
|
|
6310
|
-
I("div",
|
|
6311
|
-
V(j(
|
|
6314
|
+
default: b(() => [e.visible ? (f(), k("div", ic, [
|
|
6315
|
+
I("div", ac, [I("div", oc, [
|
|
6316
|
+
V(j(di), {
|
|
6312
6317
|
size: 13,
|
|
6313
6318
|
"stroke-width": 2
|
|
6314
6319
|
}),
|
|
6315
6320
|
I("span", null, D(j(o).comments.title), 1),
|
|
6316
|
-
j(u).unresolvedCount.value > 0 ? (f(), k("span",
|
|
6321
|
+
j(u).unresolvedCount.value > 0 ? (f(), k("span", sc, D(j(u).unresolvedCount.value), 1)) : A("", !0)
|
|
6317
6322
|
]), I("button", {
|
|
6318
6323
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6319
6324
|
onClick: n[0] ||= (e) => i("close")
|
|
6320
|
-
}, [V(j(
|
|
6325
|
+
}, [V(j(ki), {
|
|
6321
6326
|
size: 14,
|
|
6322
6327
|
"stroke-width": 2
|
|
6323
6328
|
})])]),
|
|
6324
|
-
I("div",
|
|
6329
|
+
I("div", cc, [
|
|
6325
6330
|
I("button", {
|
|
6326
6331
|
class: F(["tpl-comment-filter tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:transition-colors tpl:duration-150", d.value === "unresolved" ? "tpl-comment-filter--active" : ""]),
|
|
6327
6332
|
onClick: n[1] ||= (e) => M("unresolved")
|
|
@@ -6336,156 +6341,156 @@ var rc = {
|
|
|
6336
6341
|
onClick: n[3] ||= (e) => M("block", j(s).state.selectedBlockId ?? void 0)
|
|
6337
6342
|
}, D(j(o).comments.filterBlock), 3)) : A("", !0)
|
|
6338
6343
|
]),
|
|
6339
|
-
I("div",
|
|
6344
|
+
I("div", lc, [j(u).isLoading.value ? (f(), k("div", uc, [V(j(ui), {
|
|
6340
6345
|
class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
|
|
6341
6346
|
size: 24,
|
|
6342
6347
|
"stroke-width": 2
|
|
6343
|
-
})])) : re.value.length === 0 ? (f(), k("div",
|
|
6348
|
+
})])) : re.value.length === 0 ? (f(), k("div", dc, [V(j(di), {
|
|
6344
6349
|
size: 32,
|
|
6345
6350
|
"stroke-width": 1.5,
|
|
6346
6351
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
6347
|
-
}), I("p",
|
|
6352
|
+
}), I("p", fc, D(d.value === "all" ? j(o).comments.noCommentsHint : j(o).comments.noComments), 1)])) : (f(), k("div", pc, [(f(!0), k(R, null, h(re.value, (e) => (f(), k("div", {
|
|
6348
6353
|
key: e.id,
|
|
6349
6354
|
class: "tpl-comment-thread"
|
|
6350
6355
|
}, [
|
|
6351
|
-
I("div",
|
|
6352
|
-
I("div",
|
|
6353
|
-
I("span",
|
|
6354
|
-
I("span",
|
|
6355
|
-
e.updated_at === e.created_at ? A("", !0) : (f(), k("span",
|
|
6356
|
-
]), I("div",
|
|
6356
|
+
I("div", mc, [
|
|
6357
|
+
I("div", hc, [I("div", gc, [
|
|
6358
|
+
I("span", _c, D(_e(e) ? j(o).comments.ownedByYou : e.author_name), 1),
|
|
6359
|
+
I("span", vc, D(ve(e.created_at)), 1),
|
|
6360
|
+
e.updated_at === e.created_at ? A("", !0) : (f(), k("span", yc, " (" + D(j(o).comments.edited) + ") ", 1))
|
|
6361
|
+
]), I("div", bc, [
|
|
6357
6362
|
I("button", {
|
|
6358
6363
|
class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6359
6364
|
title: e.resolved_at ? j(o).comments.unresolve : j(o).comments.resolve,
|
|
6360
6365
|
onClick: (t) => ge(e.id)
|
|
6361
|
-
}, [V(j(
|
|
6366
|
+
}, [V(j(Zr), {
|
|
6362
6367
|
size: 13,
|
|
6363
6368
|
"stroke-width": 2,
|
|
6364
6369
|
class: "tpl-resolve-icon",
|
|
6365
6370
|
style: L({ color: e.resolved_at ? "var(--tpl-primary)" : void 0 })
|
|
6366
|
-
}, null, 8, ["style"])], 8,
|
|
6371
|
+
}, null, 8, ["style"])], 8, xc),
|
|
6367
6372
|
_e(e) ? (f(), k("button", {
|
|
6368
6373
|
key: 0,
|
|
6369
6374
|
class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6370
6375
|
title: j(o).comments.edit,
|
|
6371
6376
|
onClick: (t) => le(e)
|
|
6372
|
-
}, [V(j(
|
|
6377
|
+
}, [V(j(pi), {
|
|
6373
6378
|
size: 12,
|
|
6374
6379
|
"stroke-width": 2
|
|
6375
|
-
})], 8,
|
|
6380
|
+
})], 8, Sc)) : A("", !0),
|
|
6376
6381
|
_e(e) ? (f(), k("button", {
|
|
6377
6382
|
key: 1,
|
|
6378
6383
|
class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6379
6384
|
title: j(o).comments.delete,
|
|
6380
6385
|
onClick: (t) => ue(e.id)
|
|
6381
|
-
}, [V(j(
|
|
6386
|
+
}, [V(j(wi), {
|
|
6382
6387
|
size: 12,
|
|
6383
6388
|
"stroke-width": 2
|
|
6384
|
-
})], 8,
|
|
6389
|
+
})], 8, Cc)) : A("", !0)
|
|
6385
6390
|
])]),
|
|
6386
6391
|
V(ie, { name: "tpl-resolve" }, {
|
|
6387
|
-
default: b(() => [e.resolved_at ? (f(), k("div",
|
|
6392
|
+
default: b(() => [e.resolved_at ? (f(), k("div", wc, [V(j(Gr), {
|
|
6388
6393
|
size: 10,
|
|
6389
6394
|
"stroke-width": 2.5
|
|
6390
6395
|
}), I("span", null, D(j(a)(j(o).comments.resolvedBy, { name: e.resolved_by_name ?? "" })), 1)])) : A("", !0)]),
|
|
6391
6396
|
_: 2
|
|
6392
6397
|
}, 1024),
|
|
6393
|
-
e.block_id && te(e.block_id) ? (f(), k("span",
|
|
6398
|
+
e.block_id && te(e.block_id) ? (f(), k("span", Tc, D(j(o).comments.missingBlock), 1)) : e.block_id ? (f(), k("button", {
|
|
6394
6399
|
key: 1,
|
|
6395
6400
|
class: "tpl:mt-1 tpl:inline-flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-1.5 tpl:py-0.5 tpl:text-[10px] tpl:font-medium tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)]",
|
|
6396
6401
|
onClick: (t) => j(s).selectBlock(e.block_id ?? "")
|
|
6397
|
-
}, " Block ", 8,
|
|
6398
|
-
y.value === e.id ? (f(), k("div",
|
|
6402
|
+
}, " Block ", 8, Ec)) : A("", !0),
|
|
6403
|
+
y.value === e.id ? (f(), k("div", Dc, [c(I("textarea", {
|
|
6399
6404
|
"onUpdate:modelValue": n[4] ||= (e) => x.value = e,
|
|
6400
6405
|
class: "tpl:w-full tpl:resize-none tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-2 tpl:font-sans tpl:text-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
6401
6406
|
rows: "3",
|
|
6402
6407
|
onKeydown: (t) => xe(t, e.id)
|
|
6403
|
-
}, null, 40,
|
|
6408
|
+
}, null, 40, Oc), [[ae, x.value]]), I("div", kc, [I("button", {
|
|
6404
6409
|
class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
6405
6410
|
disabled: !x.value.trim() || j(u).isSubmitting.value,
|
|
6406
6411
|
onClick: (t) => me(e.id)
|
|
6407
|
-
}, D(j(o).comments.save), 9,
|
|
6412
|
+
}, D(j(o).comments.save), 9, Ac), I("button", {
|
|
6408
6413
|
class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6409
6414
|
onClick: n[5] ||= (e) => B()
|
|
6410
|
-
}, D(j(o).comments.cancel), 1)])])) : (f(), k("p",
|
|
6411
|
-
w.value === e.id ? (f(), k("div",
|
|
6412
|
-
I("span",
|
|
6415
|
+
}, D(j(o).comments.cancel), 1)])])) : (f(), k("p", jc, D(e.body), 1)),
|
|
6416
|
+
w.value === e.id ? (f(), k("div", Mc, [
|
|
6417
|
+
I("span", Nc, D(j(o).comments.deleteConfirm), 1),
|
|
6413
6418
|
I("button", {
|
|
6414
6419
|
class: "tpl:rounded tpl:px-2 tpl:py-0.5 tpl:text-xs tpl:font-medium tpl:bg-[var(--tpl-danger)] tpl:text-[var(--tpl-bg)]",
|
|
6415
6420
|
onClick: (t) => he(e.id)
|
|
6416
|
-
}, D(j(o).comments.delete), 9,
|
|
6421
|
+
}, D(j(o).comments.delete), 9, Pc),
|
|
6417
6422
|
I("button", {
|
|
6418
6423
|
class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
|
|
6419
6424
|
onClick: n[6] ||= (e) => de()
|
|
6420
6425
|
}, D(j(o).comments.cancel), 1)
|
|
6421
6426
|
])) : A("", !0),
|
|
6422
|
-
y.value !== e.id && w.value !== e.id ? (f(), k("div",
|
|
6427
|
+
y.value !== e.id && w.value !== e.id ? (f(), k("div", Fc, [I("button", {
|
|
6423
6428
|
class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6424
6429
|
title: j(o).comments.reply,
|
|
6425
6430
|
onClick: (t) => se(e.id)
|
|
6426
|
-
}, [V(j(
|
|
6431
|
+
}, [V(j(_i), {
|
|
6427
6432
|
size: 13,
|
|
6428
6433
|
"stroke-width": 2,
|
|
6429
6434
|
class: "tpl:text-[var(--tpl-primary)]"
|
|
6430
|
-
})], 8,
|
|
6435
|
+
})], 8, Ic), (e.replies?.length ?? 0) > 0 ? (f(), k("button", {
|
|
6431
6436
|
key: 0,
|
|
6432
6437
|
class: "tpl:flex tpl:items-center tpl:gap-0.5 tpl:text-[11px] tpl:font-medium tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6433
6438
|
onClick: (t) => oe(e.id)
|
|
6434
|
-
}, [S.value.has(e.id) ? (f(), N(j(
|
|
6439
|
+
}, [S.value.has(e.id) ? (f(), N(j(Yr), {
|
|
6435
6440
|
key: 0,
|
|
6436
6441
|
size: 11,
|
|
6437
6442
|
"stroke-width": 2
|
|
6438
|
-
})) : (f(), N(j(
|
|
6443
|
+
})) : (f(), N(j(Kr), {
|
|
6439
6444
|
key: 1,
|
|
6440
6445
|
size: 11,
|
|
6441
6446
|
"stroke-width": 2
|
|
6442
|
-
})), z(" " + D((e.replies?.length ?? 0) === 1 ? j(a)(j(o).comments.replyOne, { count: String(e.replies?.length ?? 0) }) : j(a)(j(o).comments.replyMany, { count: String(e.replies?.length ?? 0) })), 1)], 8,
|
|
6447
|
+
})), z(" " + D((e.replies?.length ?? 0) === 1 ? j(a)(j(o).comments.replyOne, { count: String(e.replies?.length ?? 0) }) : j(a)(j(o).comments.replyMany, { count: String(e.replies?.length ?? 0) })), 1)], 8, Lc)) : A("", !0)])) : A("", !0)
|
|
6443
6448
|
]),
|
|
6444
6449
|
V(ie, { name: "tpl-replies" }, {
|
|
6445
|
-
default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div",
|
|
6450
|
+
default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div", Rc, [(f(!0), k(R, null, h(e.replies, (t, r) => (f(), k("div", {
|
|
6446
6451
|
key: t.id,
|
|
6447
6452
|
class: F(["tpl-comment-reply-card tpl:relative tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-2.5", r < (e.replies?.length ?? 0) - 1 ? "tpl:mb-2" : ""])
|
|
6448
6453
|
}, [
|
|
6449
|
-
I("div",
|
|
6450
|
-
I("span",
|
|
6451
|
-
I("span",
|
|
6452
|
-
t.updated_at === t.created_at ? A("", !0) : (f(), k("span",
|
|
6453
|
-
]), I("div",
|
|
6454
|
+
I("div", zc, [I("div", Bc, [
|
|
6455
|
+
I("span", Vc, D(_e(t) ? j(o).comments.ownedByYou : t.author_name), 1),
|
|
6456
|
+
I("span", Hc, D(ve(t.created_at)), 1),
|
|
6457
|
+
t.updated_at === t.created_at ? A("", !0) : (f(), k("span", Uc, " (" + D(j(o).comments.edited) + ") ", 1))
|
|
6458
|
+
]), I("div", Wc, [_e(t) ? (f(), k("button", {
|
|
6454
6459
|
key: 0,
|
|
6455
6460
|
class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6456
6461
|
title: j(o).comments.edit,
|
|
6457
6462
|
onClick: (e) => le(t)
|
|
6458
|
-
}, [V(j(
|
|
6463
|
+
}, [V(j(pi), {
|
|
6459
6464
|
size: 11,
|
|
6460
6465
|
"stroke-width": 2
|
|
6461
|
-
})], 8,
|
|
6466
|
+
})], 8, Gc)) : A("", !0), _e(t) ? (f(), k("button", {
|
|
6462
6467
|
key: 1,
|
|
6463
6468
|
class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
|
|
6464
6469
|
title: j(o).comments.delete,
|
|
6465
6470
|
onClick: (e) => ue(t.id)
|
|
6466
|
-
}, [V(j(
|
|
6471
|
+
}, [V(j(wi), {
|
|
6467
6472
|
size: 11,
|
|
6468
6473
|
"stroke-width": 2
|
|
6469
|
-
})], 8,
|
|
6470
|
-
y.value === t.id ? (f(), k("div",
|
|
6474
|
+
})], 8, Kc)) : A("", !0)])]),
|
|
6475
|
+
y.value === t.id ? (f(), k("div", qc, [c(I("textarea", {
|
|
6471
6476
|
"onUpdate:modelValue": n[7] ||= (e) => x.value = e,
|
|
6472
6477
|
class: "tpl:w-full tpl:resize-none tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-2 tpl:font-sans tpl:text-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
6473
6478
|
rows: "2",
|
|
6474
6479
|
onKeydown: (e) => xe(e, t.id)
|
|
6475
|
-
}, null, 40,
|
|
6480
|
+
}, null, 40, Jc), [[ae, x.value]]), I("div", Yc, [I("button", {
|
|
6476
6481
|
class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
6477
6482
|
disabled: !x.value.trim() || j(u).isSubmitting.value,
|
|
6478
6483
|
onClick: (e) => me(t.id)
|
|
6479
|
-
}, D(j(o).comments.save), 9,
|
|
6484
|
+
}, D(j(o).comments.save), 9, Xc), I("button", {
|
|
6480
6485
|
class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
|
|
6481
6486
|
onClick: n[8] ||= (e) => B()
|
|
6482
|
-
}, D(j(o).comments.cancel), 1)])])) : (f(), k("p",
|
|
6483
|
-
w.value === t.id ? (f(), k("div",
|
|
6484
|
-
I("span",
|
|
6487
|
+
}, D(j(o).comments.cancel), 1)])])) : (f(), k("p", Zc, D(t.body), 1)),
|
|
6488
|
+
w.value === t.id ? (f(), k("div", Qc, [
|
|
6489
|
+
I("span", $c, D(j(o).comments.deleteConfirm), 1),
|
|
6485
6490
|
I("button", {
|
|
6486
6491
|
class: "tpl:rounded tpl:px-2 tpl:py-0.5 tpl:text-xs tpl:font-medium tpl:bg-[var(--tpl-danger)] tpl:text-[var(--tpl-bg)]",
|
|
6487
6492
|
onClick: (e) => he(t.id)
|
|
6488
|
-
}, D(j(o).comments.delete), 9,
|
|
6493
|
+
}, D(j(o).comments.delete), 9, el),
|
|
6489
6494
|
I("button", {
|
|
6490
6495
|
class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
|
|
6491
6496
|
onClick: n[9] ||= (e) => de()
|
|
@@ -6495,30 +6500,30 @@ var rc = {
|
|
|
6495
6500
|
_: 2
|
|
6496
6501
|
}, 1024),
|
|
6497
6502
|
V(ie, { name: "tpl-replies" }, {
|
|
6498
|
-
default: b(() => [_.value === e.id ? (f(), k("div",
|
|
6503
|
+
default: b(() => [_.value === e.id ? (f(), k("div", tl, [I("div", nl, [c(I("textarea", {
|
|
6499
6504
|
"onUpdate:modelValue": n[10] ||= (e) => v.value = e,
|
|
6500
6505
|
class: "tpl:flex-1 tpl:resize-none tpl:rounded-md tpl:border tpl:px-2.5 tpl:py-2 tpl:font-sans tpl:text-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
6501
6506
|
placeholder: j(o).comments.replyPlaceholder,
|
|
6502
6507
|
rows: "2",
|
|
6503
6508
|
onKeydown: (t) => be(t, e.id)
|
|
6504
|
-
}, null, 40,
|
|
6509
|
+
}, null, 40, rl), [[ae, v.value]]), I("div", il, [I("button", {
|
|
6505
6510
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1.5 tpl:transition-colors tpl:duration-150 tpl:disabled:opacity-40 tpl:text-[var(--tpl-primary)]",
|
|
6506
6511
|
disabled: !v.value.trim() || j(u).isSubmitting.value,
|
|
6507
6512
|
onClick: (t) => pe(e.id)
|
|
6508
|
-
}, [V(j(
|
|
6513
|
+
}, [V(j(vi), {
|
|
6509
6514
|
size: 14,
|
|
6510
6515
|
"stroke-width": 2
|
|
6511
|
-
})], 8,
|
|
6516
|
+
})], 8, al), I("button", {
|
|
6512
6517
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6513
6518
|
onClick: n[11] ||= (e) => ce()
|
|
6514
|
-
}, [V(j(
|
|
6519
|
+
}, [V(j(ki), {
|
|
6515
6520
|
size: 14,
|
|
6516
6521
|
"stroke-width": 2
|
|
6517
6522
|
})])])])])) : A("", !0)]),
|
|
6518
6523
|
_: 2
|
|
6519
6524
|
}, 1024)
|
|
6520
6525
|
]))), 128))]))]),
|
|
6521
|
-
I("div",
|
|
6526
|
+
I("div", ol, [ne.value ? (f(), k("div", sl, D(j(o).comments.saveTemplateFirst), 1)) : (f(), k("div", cl, [c(I("textarea", {
|
|
6522
6527
|
ref_key: "newCommentInput",
|
|
6523
6528
|
ref: ee,
|
|
6524
6529
|
"onUpdate:modelValue": n[12] ||= (e) => g.value = e,
|
|
@@ -6527,46 +6532,46 @@ var rc = {
|
|
|
6527
6532
|
disabled: j(u).isSubmitting.value,
|
|
6528
6533
|
rows: "2",
|
|
6529
6534
|
onKeydown: ye
|
|
6530
|
-
}, null, 40,
|
|
6535
|
+
}, null, 40, ll), [[ae, g.value]]), I("button", {
|
|
6531
6536
|
class: "tpl-comments-send-btn tpl:flex tpl:shrink-0 tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1.5 tpl:transition-all tpl:duration-150 tpl:disabled:opacity-40 tpl:text-[var(--tpl-primary)]",
|
|
6532
6537
|
disabled: !g.value.trim() || j(u).isSubmitting.value,
|
|
6533
6538
|
onClick: fe
|
|
6534
|
-
}, [j(u).isSubmitting.value ? (f(), N(j(
|
|
6539
|
+
}, [j(u).isSubmitting.value ? (f(), N(j(ui), {
|
|
6535
6540
|
key: 0,
|
|
6536
6541
|
class: "tpl-spinner",
|
|
6537
6542
|
size: 16,
|
|
6538
6543
|
"stroke-width": 2
|
|
6539
|
-
})) : (f(), N(j(
|
|
6544
|
+
})) : (f(), N(j(vi), {
|
|
6540
6545
|
key: 1,
|
|
6541
6546
|
size: 16,
|
|
6542
6547
|
"stroke-width": 2
|
|
6543
|
-
}))], 8,
|
|
6548
|
+
}))], 8, ul)]))])
|
|
6544
6549
|
])) : A("", !0)]),
|
|
6545
6550
|
_: 1
|
|
6546
6551
|
}));
|
|
6547
6552
|
}
|
|
6548
|
-
}),
|
|
6553
|
+
}), fl = /* @__PURE__ */ e({ default: () => pl }), pl = /*#__PURE__*/ Pi(dl, [["__scopeId", "data-v-d204f573"]]), ml = {
|
|
6549
6554
|
key: 0,
|
|
6550
6555
|
class: "tpl-design-sidebar tpl:absolute tpl:top-14 tpl:right-0 tpl:bottom-0 tpl:z-panel tpl:flex tpl:w-[360px] tpl:flex-col tpl:border-l tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)]"
|
|
6551
|
-
},
|
|
6556
|
+
}, hl = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, gl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, _l = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, vl = {
|
|
6552
6557
|
key: 0,
|
|
6553
6558
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
6554
|
-
},
|
|
6559
|
+
}, yl = { class: "tpl:flex tpl:w-full tpl:flex-col tpl:items-center tpl:gap-3" }, bl = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, xl = {
|
|
6555
6560
|
key: 1,
|
|
6556
6561
|
class: "tpl:flex tpl:flex-col tpl:gap-4"
|
|
6557
|
-
},
|
|
6562
|
+
}, Sl = { class: "tpl:flex tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, Cl = {
|
|
6558
6563
|
key: 0,
|
|
6559
6564
|
class: "tpl:flex tpl:flex-col tpl:gap-2"
|
|
6560
|
-
},
|
|
6565
|
+
}, wl = { class: "tpl:relative tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, Tl = ["src", "alt"], El = {
|
|
6561
6566
|
key: 1,
|
|
6562
6567
|
class: "tpl:flex tpl:h-32 tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2"
|
|
6563
|
-
},
|
|
6568
|
+
}, Dl = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, Ol = { class: "tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, kl = { class: "tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Al = ["accept"], jl = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, Ml = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Nl = ["placeholder"], Pl = {
|
|
6564
6569
|
key: 0,
|
|
6565
6570
|
class: "tpl:flex tpl:flex-col tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:px-3 tpl:py-3 tpl:bg-[var(--tpl-warning-light)] tpl:border tpl:border-[var(--tpl-warning)]"
|
|
6566
|
-
},
|
|
6571
|
+
}, Fl = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, Il = { class: "tpl:flex tpl:gap-2" }, Ll = {
|
|
6567
6572
|
key: 1,
|
|
6568
6573
|
class: "tpl:flex tpl:items-start tpl:gap-2 tpl:rounded-lg tpl:px-3 tpl:py-2 tpl:text-xs tpl:bg-[var(--tpl-danger-light)] tpl:text-[var(--tpl-danger)]"
|
|
6569
|
-
},
|
|
6574
|
+
}, Rl = ["disabled"], zl = { class: "tpl:m-0 tpl:pt-1 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Bl = /*@__PURE__*/ B({
|
|
6570
6575
|
__name: "DesignReferenceSidebar",
|
|
6571
6576
|
props: {
|
|
6572
6577
|
visible: { type: Boolean },
|
|
@@ -6574,8 +6579,8 @@ var rc = {
|
|
|
6574
6579
|
},
|
|
6575
6580
|
emits: ["close", "apply"],
|
|
6576
6581
|
setup(e, { emit: t }) {
|
|
6577
|
-
let n = e, r = t, { t: i } =
|
|
6578
|
-
authManager: J(
|
|
6582
|
+
let n = e, r = t, { t: i } = Wi(), a = J(In, "DesignReferenceSidebar"), o = ss({
|
|
6583
|
+
authManager: J(or, "DesignReferenceSidebar"),
|
|
6579
6584
|
getTemplateId: () => a.state.template?.id ?? null,
|
|
6580
6585
|
onApply: (e) => r("apply", e)
|
|
6581
6586
|
}), s = C(null), l = C("image"), u = C(null), d = C(""), p = C(null), m = C(!1), h = C(!1), g = O(() => o.isGenerating.value ? !1 : u.value !== null);
|
|
@@ -6646,17 +6651,17 @@ var rc = {
|
|
|
6646
6651
|
"leave-from-class": "tpl:translate-x-0",
|
|
6647
6652
|
"leave-to-class": "tpl:translate-x-full"
|
|
6648
6653
|
}, {
|
|
6649
|
-
default: b(() => [e.visible ? (f(), k("div",
|
|
6654
|
+
default: b(() => [e.visible ? (f(), k("div", ml, [I("div", hl, [I("div", gl, [V(j(si), {
|
|
6650
6655
|
size: 13,
|
|
6651
6656
|
"stroke-width": 2
|
|
6652
6657
|
}), I("span", null, D(j(i).designReference.title), 1)]), I("button", {
|
|
6653
6658
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6654
6659
|
onClick: n[0] ||= (e) => r("close")
|
|
6655
|
-
}, [V(j(
|
|
6660
|
+
}, [V(j(ki), {
|
|
6656
6661
|
size: 14,
|
|
6657
6662
|
"stroke-width": 2
|
|
6658
|
-
})])]), I("div",
|
|
6659
|
-
I("div",
|
|
6663
|
+
})])]), I("div", _l, [j(o).isGenerating.value ? (f(), k("div", vl, [I("div", yl, [V(Ri), I("p", bl, D(j(i).designReference.generating), 1)])])) : (f(), k("div", xl, [
|
|
6664
|
+
I("div", Sl, [I("button", {
|
|
6660
6665
|
class: "tpl:flex tpl:flex-1 tpl:items-center tpl:justify-center tpl:gap-1.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:px-2 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150",
|
|
6661
6666
|
style: L({
|
|
6662
6667
|
backgroundColor: l.value === "image" ? "var(--tpl-bg)" : "transparent",
|
|
@@ -6664,7 +6669,7 @@ var rc = {
|
|
|
6664
6669
|
boxShadow: l.value === "image" ? "var(--tpl-shadow)" : "none"
|
|
6665
6670
|
}),
|
|
6666
6671
|
onClick: n[1] ||= (e) => _("image")
|
|
6667
|
-
}, [V(j(
|
|
6672
|
+
}, [V(j(ri), {
|
|
6668
6673
|
size: 12,
|
|
6669
6674
|
"stroke-width": 2
|
|
6670
6675
|
}), z(" " + D(j(i).designReference.uploadImage), 1)], 4), I("button", {
|
|
@@ -6675,23 +6680,23 @@ var rc = {
|
|
|
6675
6680
|
boxShadow: l.value === "pdf" ? "var(--tpl-shadow)" : "none"
|
|
6676
6681
|
}),
|
|
6677
6682
|
onClick: n[2] ||= (e) => _("pdf")
|
|
6678
|
-
}, [V(j(
|
|
6683
|
+
}, [V(j(ii), {
|
|
6679
6684
|
size: 12,
|
|
6680
6685
|
"stroke-width": 2
|
|
6681
6686
|
}), z(" " + D(j(i).designReference.uploadPdf), 1)], 4)]),
|
|
6682
|
-
I("div", null, [u.value ? (f(), k("div",
|
|
6687
|
+
I("div", null, [u.value ? (f(), k("div", Cl, [I("div", wl, [p.value ? (f(), k("img", {
|
|
6683
6688
|
key: 0,
|
|
6684
6689
|
src: p.value,
|
|
6685
6690
|
alt: u.value.name,
|
|
6686
6691
|
class: "tpl:h-auto tpl:max-h-48 tpl:w-full tpl:object-contain"
|
|
6687
|
-
}, null, 8,
|
|
6692
|
+
}, null, 8, Tl)) : (f(), k("div", El, [V(j(ii), {
|
|
6688
6693
|
size: 32,
|
|
6689
6694
|
"stroke-width": 1.5,
|
|
6690
6695
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
6691
|
-
}), I("span",
|
|
6696
|
+
}), I("span", Dl, D(u.value.name), 1)])), I("button", {
|
|
6692
6697
|
class: "tpl:absolute tpl:top-2 tpl:right-2 tpl:rounded-full tpl:p-1 tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text-muted)] tpl:shadow-[var(--tpl-shadow)]",
|
|
6693
6698
|
onClick: x
|
|
6694
|
-
}, [V(j(
|
|
6699
|
+
}, [V(j(ki), {
|
|
6695
6700
|
size: 12,
|
|
6696
6701
|
"stroke-width": 2
|
|
6697
6702
|
})])])])) : (f(), k("div", {
|
|
@@ -6706,13 +6711,13 @@ var rc = {
|
|
|
6706
6711
|
onDragleave: w,
|
|
6707
6712
|
onDrop: ee
|
|
6708
6713
|
}, [
|
|
6709
|
-
V(j(
|
|
6714
|
+
V(j(Di), {
|
|
6710
6715
|
size: 24,
|
|
6711
6716
|
"stroke-width": 1.5,
|
|
6712
6717
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
6713
6718
|
}),
|
|
6714
|
-
I("span",
|
|
6715
|
-
I("span",
|
|
6719
|
+
I("span", Ol, D(j(i).designReference.dropHint), 1),
|
|
6720
|
+
I("span", kl, D(l.value === "image" ? j(i).designReference.acceptedImages : j(i).designReference.acceptedPdf), 1)
|
|
6716
6721
|
], 36)), I("input", {
|
|
6717
6722
|
ref_key: "fileInput",
|
|
6718
6723
|
ref: s,
|
|
@@ -6720,14 +6725,14 @@ var rc = {
|
|
|
6720
6725
|
class: "tpl:hidden",
|
|
6721
6726
|
accept: l.value === "image" ? "image/png,image/jpeg,image/webp" : "application/pdf",
|
|
6722
6727
|
onChange: v
|
|
6723
|
-
}, null, 40,
|
|
6724
|
-
I("div",
|
|
6728
|
+
}, null, 40, Al)]),
|
|
6729
|
+
I("div", jl, [I("label", Ml, D(j(i).designReference.promptLabel), 1), c(I("textarea", {
|
|
6725
6730
|
"onUpdate:modelValue": n[4] ||= (e) => d.value = e,
|
|
6726
6731
|
class: F(["tpl:min-h-[72px] tpl:w-full tpl:resize-none tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:px-3 tpl:py-2 tpl:font-sans tpl:text-sm tpl:outline-none tpl:transition-colors tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)]", ["tpl-design-prompt-input"]]),
|
|
6727
6732
|
placeholder: j(i).designReference.promptPlaceholder,
|
|
6728
6733
|
rows: "3"
|
|
6729
|
-
}, null, 8,
|
|
6730
|
-
m.value ? (f(), k("div",
|
|
6734
|
+
}, null, 8, Nl), [[ae, d.value]])]),
|
|
6735
|
+
m.value ? (f(), k("div", Pl, [I("p", Fl, D(j(i).designReference.replaceWarning), 1), I("div", Il, [I("button", {
|
|
6731
6736
|
class: "tpl:flex-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:text-[var(--tpl-text-muted)] tpl:border tpl:border-[var(--tpl-border)]",
|
|
6732
6737
|
style: { "background-color": "transparent" },
|
|
6733
6738
|
onClick: E
|
|
@@ -6735,7 +6740,7 @@ var rc = {
|
|
|
6735
6740
|
class: "tpl:flex-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
6736
6741
|
onClick: T
|
|
6737
6742
|
}, D(j(i).designReference.replaceConfirm), 1)])])) : A("", !0),
|
|
6738
|
-
j(o).error.value ? (f(), k("div",
|
|
6743
|
+
j(o).error.value ? (f(), k("div", Ll, [V(j(Xr), {
|
|
6739
6744
|
size: 14,
|
|
6740
6745
|
"stroke-width": 2,
|
|
6741
6746
|
class: "tpl:mt-0.5 tpl:shrink-0"
|
|
@@ -6745,35 +6750,35 @@ var rc = {
|
|
|
6745
6750
|
class: "tpl:flex tpl:w-full tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded-[var(--tpl-radius-sm)] tpl:px-4 tpl:py-2.5 tpl:text-sm tpl:font-medium tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:disabled:cursor-not-allowed tpl:disabled:opacity-50 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
6746
6751
|
disabled: !g.value,
|
|
6747
6752
|
onClick: T
|
|
6748
|
-
}, [V(j(
|
|
6753
|
+
}, [V(j(si), {
|
|
6749
6754
|
size: 16,
|
|
6750
6755
|
"stroke-width": 2
|
|
6751
|
-
}), z(" " + D(j(i).designReference.generate), 1)], 8,
|
|
6752
|
-
I("p",
|
|
6756
|
+
}), z(" " + D(j(i).designReference.generate), 1)], 8, Rl)),
|
|
6757
|
+
I("p", zl, D(j(i).aiMenu.disclaimer), 1)
|
|
6753
6758
|
]))])])) : A("", !0)]),
|
|
6754
6759
|
_: 1
|
|
6755
6760
|
}));
|
|
6756
6761
|
}
|
|
6757
|
-
}),
|
|
6762
|
+
}), Vl = /* @__PURE__ */ e({ default: () => Hl }), Hl = /*#__PURE__*/ Pi(Bl, [["__scopeId", "data-v-bdbf8d0d"]]), Ul = ["disabled", "title"], Wl = ["title"], Gl = {
|
|
6758
6763
|
key: 0,
|
|
6759
6764
|
class: "tpl-scale-in tpl:absolute tpl:top-full tpl:left-1/2 tpl:z-50 tpl:mt-2 tpl:w-72 tpl:-translate-x-1/2 tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:bg-[var(--tpl-bg-elevated)] tpl:border tpl:border-[var(--tpl-border)] tpl:shadow-[var(--tpl-shadow-lg)]",
|
|
6760
6765
|
style: {
|
|
6761
6766
|
"backdrop-filter": "blur(8px)",
|
|
6762
6767
|
"-webkit-backdrop-filter": "blur(8px)"
|
|
6763
6768
|
}
|
|
6764
|
-
},
|
|
6769
|
+
}, Kl = { class: "tpl:border-b tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)] tpl:border-[var(--tpl-border)]" }, ql = {
|
|
6765
6770
|
key: 0,
|
|
6766
6771
|
class: "tpl:flex tpl:items-center tpl:justify-center tpl:py-8"
|
|
6767
|
-
},
|
|
6772
|
+
}, Jl = {
|
|
6768
6773
|
key: 1,
|
|
6769
6774
|
class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
|
|
6770
|
-
},
|
|
6775
|
+
}, Yl = {
|
|
6771
6776
|
key: 2,
|
|
6772
6777
|
class: "tpl:max-h-64 tpl:overflow-y-auto"
|
|
6773
|
-
},
|
|
6778
|
+
}, Xl = ["disabled", "onClick"], Zl = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, Ql = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, $l = {
|
|
6774
6779
|
key: 0,
|
|
6775
6780
|
class: "tpl:rounded tpl:px-1 tpl:py-0.5 tpl:text-[10px] tpl:font-normal tpl:bg-[var(--tpl-bg-active)] tpl:text-[var(--tpl-text-muted)]"
|
|
6776
|
-
},
|
|
6781
|
+
}, eu = ["disabled", "title"], tu = /*@__PURE__*/ B({
|
|
6777
6782
|
__name: "SnapshotHistory",
|
|
6778
6783
|
props: {
|
|
6779
6784
|
snapshots: {},
|
|
@@ -6782,7 +6787,7 @@ var rc = {
|
|
|
6782
6787
|
},
|
|
6783
6788
|
emits: ["load", "navigate"],
|
|
6784
6789
|
setup(e, { emit: t }) {
|
|
6785
|
-
let n = e, r = t, { format: i } = Y(), { t: a } =
|
|
6790
|
+
let n = e, r = t, { format: i } = Y(), { t: a } = Wi(), o = C(!1), s = C(null), c = C(-1);
|
|
6786
6791
|
H(() => n.snapshots.length, () => {
|
|
6787
6792
|
c.value = -1;
|
|
6788
6793
|
});
|
|
@@ -6801,7 +6806,7 @@ var rc = {
|
|
|
6801
6806
|
t !== -1 && (c.value = t, r("navigate", n.snapshots[t])), o.value = !1;
|
|
6802
6807
|
}
|
|
6803
6808
|
function _(e) {
|
|
6804
|
-
let t =
|
|
6809
|
+
let t = rc(e, a.snapshotHistory, i, 7);
|
|
6805
6810
|
return t === null ? new Date(e).toLocaleDateString(void 0, {
|
|
6806
6811
|
month: "short",
|
|
6807
6812
|
day: "numeric",
|
|
@@ -6809,7 +6814,7 @@ var rc = {
|
|
|
6809
6814
|
minute: "2-digit"
|
|
6810
6815
|
}) : t;
|
|
6811
6816
|
}
|
|
6812
|
-
return
|
|
6817
|
+
return hn(s, () => {
|
|
6813
6818
|
o.value = !1;
|
|
6814
6819
|
}), (t, n) => (f(), k("div", {
|
|
6815
6820
|
ref_key: "dropdownRef",
|
|
@@ -6821,34 +6826,34 @@ var rc = {
|
|
|
6821
6826
|
disabled: !u.value,
|
|
6822
6827
|
title: j(a).snapshotHistory.olderSnapshot,
|
|
6823
6828
|
onClick: M(p, ["stop"])
|
|
6824
|
-
}, [V(j(
|
|
6829
|
+
}, [V(j(qr), {
|
|
6825
6830
|
size: 14,
|
|
6826
6831
|
"stroke-width": 2
|
|
6827
|
-
})], 8,
|
|
6832
|
+
})], 8, Ul),
|
|
6828
6833
|
I("button", {
|
|
6829
6834
|
class: "tpl:flex tpl:h-7 tpl:shrink-0 tpl:cursor-pointer tpl:items-center tpl:gap-0.5 tpl:rounded-[var(--tpl-radius-sm)] tpl:border-none tpl:bg-transparent tpl:px-1.5 tpl:transition-colors tpl:duration-150 hover:tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-muted)]",
|
|
6830
6835
|
title: j(a).snapshotHistory.tooltip,
|
|
6831
6836
|
onClick: M(m, ["stop"])
|
|
6832
|
-
}, [V(j(
|
|
6837
|
+
}, [V(j(Qr), {
|
|
6833
6838
|
size: 16,
|
|
6834
6839
|
"stroke-width": 1.5
|
|
6835
|
-
}), V(j(
|
|
6840
|
+
}), V(j(Kr), {
|
|
6836
6841
|
class: F(["tpl:transition-transform tpl:duration-150", { "tpl:rotate-180": o.value }]),
|
|
6837
6842
|
size: 10,
|
|
6838
6843
|
"stroke-width": 2
|
|
6839
|
-
}, null, 8, ["class"])], 8,
|
|
6844
|
+
}, null, 8, ["class"])], 8, Wl),
|
|
6840
6845
|
V(ie, { name: "tpl-dropdown" }, {
|
|
6841
|
-
default: b(() => [o.value ? (f(), k("div",
|
|
6846
|
+
default: b(() => [o.value ? (f(), k("div", Gl, [I("div", Kl, D(j(a).snapshotHistory.dropdownTitle), 1), e.isLoading ? (f(), k("div", ql, [V(j(ui), {
|
|
6842
6847
|
class: "tpl:animate-spin tpl:text-[var(--tpl-primary)]",
|
|
6843
6848
|
size: 20,
|
|
6844
6849
|
"stroke-width": 2
|
|
6845
|
-
})])) : e.snapshots.length === 0 ? (f(), k("div",
|
|
6850
|
+
})])) : e.snapshots.length === 0 ? (f(), k("div", Jl, D(j(a).snapshotHistory.noSnapshots), 1)) : (f(), k("div", Yl, [(f(!0), k(R, null, h(e.snapshots, (t) => (f(), k("button", {
|
|
6846
6851
|
key: t.id,
|
|
6847
6852
|
class: "tpl:flex tpl:w-full tpl:cursor-pointer tpl:items-center tpl:border-b tpl:border-b-[var(--tpl-border-light)] tpl:border-l-2 tpl:border-l-transparent tpl:px-3 tpl:py-2.5 tpl:text-left tpl:transition-all tpl:duration-150 last:tpl:border-b-0 hover:tpl:border-l-[var(--tpl-primary)] hover:tpl:bg-[var(--tpl-bg-hover)]",
|
|
6848
6853
|
style: { "background-color": "transparent" },
|
|
6849
6854
|
disabled: e.isRestoring,
|
|
6850
6855
|
onClick: (e) => g(t.id)
|
|
6851
|
-
}, [I("div",
|
|
6856
|
+
}, [I("div", Zl, [I("div", Ql, [I("span", null, D(_(t.created_at)), 1), t.is_autosave ? (f(), k("span", $l, D(j(a).snapshotHistory.auto), 1)) : A("", !0)])])], 8, Xl))), 128))]))])) : A("", !0)]),
|
|
6852
6857
|
_: 1
|
|
6853
6858
|
}),
|
|
6854
6859
|
I("button", {
|
|
@@ -6856,74 +6861,74 @@ var rc = {
|
|
|
6856
6861
|
disabled: !l.value,
|
|
6857
6862
|
title: j(a).snapshotHistory.newerSnapshot,
|
|
6858
6863
|
onClick: M(d, ["stop"])
|
|
6859
|
-
}, [V(j(
|
|
6864
|
+
}, [V(j(Jr), {
|
|
6860
6865
|
size: 14,
|
|
6861
6866
|
"stroke-width": 2
|
|
6862
|
-
})], 8,
|
|
6867
|
+
})], 8, eu)
|
|
6863
6868
|
], 512));
|
|
6864
6869
|
}
|
|
6865
|
-
}),
|
|
6870
|
+
}), nu = /* @__PURE__ */ e({ default: () => ru }), ru = tu;
|
|
6866
6871
|
//#endregion
|
|
6867
6872
|
//#region src/cloud/utils/scoringStyles.ts
|
|
6868
|
-
function
|
|
6873
|
+
function iu(e) {
|
|
6869
6874
|
return e >= 80 ? "var(--tpl-success)" : e >= 60 ? "var(--tpl-warning)" : "var(--tpl-danger)";
|
|
6870
6875
|
}
|
|
6871
|
-
function
|
|
6876
|
+
function au(e) {
|
|
6872
6877
|
return e >= 80 ? "var(--tpl-success-light)" : e >= 60 ? "var(--tpl-warning-light)" : "var(--tpl-danger-light)";
|
|
6873
6878
|
}
|
|
6874
|
-
function
|
|
6879
|
+
function ou(e) {
|
|
6875
6880
|
return e === "high" ? "var(--tpl-danger)" : e === "medium" ? "var(--tpl-warning)" : "var(--tpl-text-muted)";
|
|
6876
6881
|
}
|
|
6877
|
-
function
|
|
6882
|
+
function su(e) {
|
|
6878
6883
|
return e === "high" ? "var(--tpl-danger-light)" : e === "medium" ? "var(--tpl-warning-light)" : "var(--tpl-bg-hover)";
|
|
6879
6884
|
}
|
|
6880
6885
|
//#endregion
|
|
6881
6886
|
//#region src/cloud/components/TemplateScoringPanel.vue?vue&type=script&setup=true&lang.ts
|
|
6882
|
-
var
|
|
6887
|
+
var cu = {
|
|
6883
6888
|
key: 0,
|
|
6884
6889
|
class: "tpl-scoring-panel tpl:absolute tpl:top-14 tpl:right-0 tpl:bottom-0 tpl:z-panel tpl:flex tpl:w-[360px] tpl:flex-col tpl:border-l tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-elevated)]"
|
|
6885
|
-
},
|
|
6890
|
+
}, lu = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, uu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, du = { class: "tpl:flex tpl:items-center tpl:gap-1" }, fu = ["title"], pu = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, mu = {
|
|
6886
6891
|
key: 0,
|
|
6887
6892
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
6888
|
-
},
|
|
6893
|
+
}, hu = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, gu = {
|
|
6889
6894
|
key: 1,
|
|
6890
6895
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
6891
|
-
},
|
|
6896
|
+
}, _u = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, vu = {
|
|
6892
6897
|
key: 2,
|
|
6893
6898
|
class: "tpl:flex tpl:flex-col tpl:gap-4"
|
|
6894
|
-
},
|
|
6899
|
+
}, yu = { class: "tpl:text-xs tpl:font-medium tpl:uppercase tpl:tracking-wider tpl:text-[var(--tpl-text-muted)]" }, bu = {
|
|
6895
6900
|
key: 0,
|
|
6896
6901
|
class: "tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
|
|
6897
|
-
},
|
|
6902
|
+
}, xu = {
|
|
6898
6903
|
key: 0,
|
|
6899
6904
|
class: "tpl:flex tpl:items-start tpl:gap-2 tpl:rounded-lg tpl:px-3 tpl:py-2 tpl:text-xs tpl:bg-[var(--tpl-danger-light)] tpl:text-[var(--tpl-danger)]"
|
|
6900
|
-
},
|
|
6905
|
+
}, Su = ["onClick"], Cu = { class: "tpl:flex-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, wu = {
|
|
6901
6906
|
key: 0,
|
|
6902
6907
|
class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]"
|
|
6903
|
-
},
|
|
6908
|
+
}, Tu = {
|
|
6904
6909
|
key: 0,
|
|
6905
6910
|
class: "tpl:border-t tpl:border-[var(--tpl-border)]"
|
|
6906
|
-
},
|
|
6911
|
+
}, Eu = {
|
|
6907
6912
|
key: 0,
|
|
6908
6913
|
class: "tpl:px-3 tpl:py-3 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
|
|
6909
|
-
},
|
|
6914
|
+
}, Du = { class: "tpl:flex tpl:items-start tpl:gap-2" }, Ou = { class: "tpl:flex-1 tpl:min-w-0" }, ku = { class: "tpl:flex tpl:items-start tpl:gap-1.5" }, Au = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, ju = {
|
|
6910
6915
|
key: 0,
|
|
6911
6916
|
class: "tpl:mt-1 tpl:text-[11px] tpl:leading-snug tpl:text-[var(--tpl-text-dim)]"
|
|
6912
|
-
},
|
|
6917
|
+
}, Mu = {
|
|
6913
6918
|
key: 1,
|
|
6914
6919
|
class: "tpl:mt-2 tpl:flex tpl:justify-center"
|
|
6915
|
-
},
|
|
6920
|
+
}, Nu = ["disabled", "onClick"], Pu = {
|
|
6916
6921
|
key: 0,
|
|
6917
6922
|
class: "tpl:mt-1.5 tpl:text-[11px] tpl:text-[var(--tpl-danger)]"
|
|
6918
|
-
},
|
|
6923
|
+
}, Fu = {
|
|
6919
6924
|
key: 3,
|
|
6920
6925
|
class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
|
|
6921
|
-
},
|
|
6926
|
+
}, Iu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Lu = { class: "tpl:m-0 tpl:px-4 tpl:pb-2 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Ru = /*@__PURE__*/ B({
|
|
6922
6927
|
__name: "TemplateScoringPanel",
|
|
6923
6928
|
props: { visible: { type: Boolean } },
|
|
6924
6929
|
emits: ["close"],
|
|
6925
6930
|
setup(e, { emit: t }) {
|
|
6926
|
-
let n = e, r = t, { t: i } =
|
|
6931
|
+
let n = e, r = t, { t: i } = Wi(), a = J(In, "TemplateScoringPanel"), o = J(ur, "TemplateScoringPanel"), s = v(qn, []), c = C({
|
|
6927
6932
|
spam: !0,
|
|
6928
6933
|
readability: !0,
|
|
6929
6934
|
accessibility: !0,
|
|
@@ -6938,10 +6943,10 @@ var su = {
|
|
|
6938
6943
|
"accessibility",
|
|
6939
6944
|
"bestPractices"
|
|
6940
6945
|
], p = {
|
|
6941
|
-
spam:
|
|
6942
|
-
readability:
|
|
6943
|
-
accessibility:
|
|
6944
|
-
bestPractices:
|
|
6946
|
+
spam: xi,
|
|
6947
|
+
readability: ni,
|
|
6948
|
+
accessibility: Si,
|
|
6949
|
+
bestPractices: Ai
|
|
6945
6950
|
};
|
|
6946
6951
|
function m() {
|
|
6947
6952
|
o.score(a.content.value, s);
|
|
@@ -6969,50 +6974,50 @@ var su = {
|
|
|
6969
6974
|
"leave-from-class": "tpl:translate-x-0",
|
|
6970
6975
|
"leave-to-class": "tpl:translate-x-full"
|
|
6971
6976
|
}, {
|
|
6972
|
-
default: b(() => [e.visible ? (f(), k("div",
|
|
6977
|
+
default: b(() => [e.visible ? (f(), k("div", cu, [I("div", lu, [I("div", uu, [V(j(bi), {
|
|
6973
6978
|
size: 13,
|
|
6974
6979
|
"stroke-width": 2
|
|
6975
|
-
}), I("span", null, D(j(i).scoring.title), 1)]), I("div",
|
|
6980
|
+
}), I("span", null, D(j(i).scoring.title), 1)]), I("div", du, [j(o).scoringResult.value && !j(o).isScoring.value ? (f(), k("button", {
|
|
6976
6981
|
key: 0,
|
|
6977
6982
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6978
6983
|
title: j(i).scoring.rescore,
|
|
6979
6984
|
onClick: n[0] ||= (e) => m()
|
|
6980
|
-
}, [V(j(
|
|
6985
|
+
}, [V(j(gi), {
|
|
6981
6986
|
size: 14,
|
|
6982
6987
|
"stroke-width": 2
|
|
6983
|
-
})], 8,
|
|
6988
|
+
})], 8, fu)) : A("", !0), I("button", {
|
|
6984
6989
|
class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
|
|
6985
6990
|
onClick: n[1] ||= (e) => r("close")
|
|
6986
|
-
}, [V(j(
|
|
6991
|
+
}, [V(j(ki), {
|
|
6987
6992
|
size: 14,
|
|
6988
6993
|
"stroke-width": 2
|
|
6989
|
-
})])])]), I("div",
|
|
6990
|
-
V(j(
|
|
6994
|
+
})])])]), I("div", pu, [j(o).isScoring.value ? (f(), k("div", mu, [I("p", hu, D(j(i).scoring.scoring), 1), V(Ri, { class: "tpl:w-3/4" })])) : j(o).error.value && !j(o).scoringResult.value ? (f(), k("div", gu, [
|
|
6995
|
+
V(j(Xr), {
|
|
6991
6996
|
size: 32,
|
|
6992
6997
|
"stroke-width": 1.5,
|
|
6993
6998
|
class: "tpl:text-[var(--tpl-danger)]"
|
|
6994
6999
|
}),
|
|
6995
|
-
I("p",
|
|
7000
|
+
I("p", _u, D(j(i).scoring.error), 1),
|
|
6996
7001
|
I("button", {
|
|
6997
7002
|
class: "tpl:mt-2 tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded-md tpl:border tpl:px-3 tpl:py-1.5 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-muted)]",
|
|
6998
7003
|
onClick: n[2] ||= (e) => m()
|
|
6999
|
-
}, [V(j(
|
|
7004
|
+
}, [V(j(gi), {
|
|
7000
7005
|
size: 12,
|
|
7001
7006
|
"stroke-width": 2
|
|
7002
7007
|
}), z(" " + D(j(i).scoring.rescore), 1)])
|
|
7003
|
-
])) : j(o).scoringResult.value ? (f(), k("div",
|
|
7008
|
+
])) : j(o).scoringResult.value ? (f(), k("div", vu, [
|
|
7004
7009
|
I("div", {
|
|
7005
7010
|
class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:p-5",
|
|
7006
|
-
style: L({ backgroundColor: j(
|
|
7011
|
+
style: L({ backgroundColor: j(au)(j(o).scoringResult.value.score) })
|
|
7007
7012
|
}, [
|
|
7008
7013
|
I("span", {
|
|
7009
7014
|
class: "tpl:text-4xl tpl:font-bold tpl:tabular-nums",
|
|
7010
|
-
style: L({ color: j(
|
|
7015
|
+
style: L({ color: j(iu)(j(o).scoringResult.value.score) })
|
|
7011
7016
|
}, D(j(o).scoringResult.value.score), 5),
|
|
7012
|
-
I("span",
|
|
7013
|
-
_() > 0 ? (f(), k("span",
|
|
7017
|
+
I("span", yu, D(j(i).scoring.overallScore), 1),
|
|
7018
|
+
_() > 0 ? (f(), k("span", bu, D(_()) + " " + D(j(i).scoring.findings), 1)) : A("", !0)
|
|
7014
7019
|
], 4),
|
|
7015
|
-
j(o).fixError.value ? (f(), k("div",
|
|
7020
|
+
j(o).fixError.value ? (f(), k("div", xu, [V(j(Xr), {
|
|
7016
7021
|
size: 14,
|
|
7017
7022
|
"stroke-width": 2,
|
|
7018
7023
|
class: "tpl:mt-0.5 tpl:shrink-0"
|
|
@@ -7027,74 +7032,74 @@ var su = {
|
|
|
7027
7032
|
(f(), N(d(p[e]), {
|
|
7028
7033
|
size: 14,
|
|
7029
7034
|
"stroke-width": 2,
|
|
7030
|
-
style: L({ color: j(
|
|
7035
|
+
style: L({ color: j(iu)(j(o).scoringResult.value.categories[e].score) })
|
|
7031
7036
|
}, null, 8, ["style"])),
|
|
7032
|
-
I("span",
|
|
7037
|
+
I("span", Cu, D(j(i).scoring.categories[e]), 1),
|
|
7033
7038
|
I("span", {
|
|
7034
7039
|
class: "tpl:rounded-full tpl:px-2 tpl:py-0.5 tpl:text-xs tpl:font-semibold tpl:tabular-nums",
|
|
7035
7040
|
style: L({
|
|
7036
|
-
color: j(
|
|
7037
|
-
backgroundColor: j(
|
|
7041
|
+
color: j(iu)(j(o).scoringResult.value.categories[e].score),
|
|
7042
|
+
backgroundColor: j(au)(j(o).scoringResult.value.categories[e].score)
|
|
7038
7043
|
})
|
|
7039
7044
|
}, D(j(o).scoringResult.value.categories[e].score), 5),
|
|
7040
|
-
j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span",
|
|
7041
|
-
V(j(
|
|
7045
|
+
j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span", wu, D(j(o).scoringResult.value.categories[e].findings.length), 1)) : A("", !0),
|
|
7046
|
+
V(j(Kr), {
|
|
7042
7047
|
size: 12,
|
|
7043
7048
|
"stroke-width": 2,
|
|
7044
7049
|
class: F(["tpl:transition-transform tpl:duration-200 tpl:text-[var(--tpl-text-dim)]", c.value[e] ? "tpl:rotate-0" : "tpl:-rotate-90"])
|
|
7045
7050
|
}, null, 8, ["class"])
|
|
7046
|
-
], 8,
|
|
7051
|
+
], 8, Su), c.value[e] ? (f(), k("div", Tu, [j(o).scoringResult.value.categories[e].findings.length === 0 ? (f(), k("div", Eu, D(j(i).scoring.noFindings), 1)) : A("", !0), (f(!0), k(R, null, h(j(o).scoringResult.value.categories[e].findings, (e) => (f(), k("div", {
|
|
7047
7052
|
key: e.id,
|
|
7048
7053
|
class: "tpl:border-t tpl:px-3 tpl:py-2.5 first:tpl:border-t-0 tpl:border-[var(--tpl-border-light)]"
|
|
7049
|
-
}, [I("div",
|
|
7054
|
+
}, [I("div", Du, [(f(), N(d(j(e.severity === "high" ? Xr : e.severity === "medium" ? Ti : li)), {
|
|
7050
7055
|
size: 13,
|
|
7051
7056
|
"stroke-width": 2,
|
|
7052
7057
|
class: "tpl:mt-0.5 tpl:shrink-0",
|
|
7053
|
-
style: L({ color: j(
|
|
7054
|
-
}, null, 8, ["style"])), I("div",
|
|
7055
|
-
I("div",
|
|
7058
|
+
style: L({ color: j(ou)(e.severity) })
|
|
7059
|
+
}, null, 8, ["style"])), I("div", Ou, [
|
|
7060
|
+
I("div", ku, [I("span", {
|
|
7056
7061
|
class: "tpl:mt-0.5 tpl:shrink-0 tpl:rounded tpl:px-1 tpl:py-px tpl:text-[10px] tpl:font-medium tpl:leading-tight",
|
|
7057
7062
|
style: L({
|
|
7058
|
-
color: j(
|
|
7059
|
-
backgroundColor: j(
|
|
7063
|
+
color: j(ou)(e.severity),
|
|
7064
|
+
backgroundColor: j(su)(e.severity)
|
|
7060
7065
|
})
|
|
7061
|
-
}, D(j(i).scoring.severity[e.severity]), 5), I("span",
|
|
7062
|
-
e.suggestion ? (f(), k("p",
|
|
7063
|
-
e.blockId ? (f(), k("div",
|
|
7066
|
+
}, D(j(i).scoring.severity[e.severity]), 5), I("span", Au, D(e.message), 1)]),
|
|
7067
|
+
e.suggestion ? (f(), k("p", ju, D(e.suggestion), 1)) : A("", !0),
|
|
7068
|
+
e.blockId ? (f(), k("div", Mu, [I("button", {
|
|
7064
7069
|
class: "tpl-scoring-fix-btn tpl:inline-flex tpl:items-center tpl:gap-1.5 tpl:rounded tpl:border tpl:px-3 tpl:py-1.5 tpl:text-[11px] tpl:font-medium tpl:transition-all tpl:duration-150 tpl:disabled:opacity-50 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-primary)]",
|
|
7065
7070
|
style: { "background-color": "transparent" },
|
|
7066
7071
|
disabled: j(o).fixingFindingId.value !== null,
|
|
7067
7072
|
onClick: (t) => g(e)
|
|
7068
|
-
}, [j(o).fixingFindingId.value === e.id ? (f(), N(j(
|
|
7073
|
+
}, [j(o).fixingFindingId.value === e.id ? (f(), N(j(ui), {
|
|
7069
7074
|
key: 0,
|
|
7070
7075
|
class: "tpl-spinner",
|
|
7071
7076
|
size: 11,
|
|
7072
7077
|
"stroke-width": 2
|
|
7073
|
-
})) : (f(), N(j(
|
|
7078
|
+
})) : (f(), N(j(Si), {
|
|
7074
7079
|
key: 1,
|
|
7075
7080
|
size: 11,
|
|
7076
7081
|
"stroke-width": 2
|
|
7077
|
-
})), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8,
|
|
7082
|
+
})), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8, Nu), j(o).fixError.value ? (f(), k("p", Pu, D(j(o).fixError.value), 1)) : A("", !0)])) : A("", !0)
|
|
7078
7083
|
])])]))), 128))])) : A("", !0)])), 64))
|
|
7079
|
-
])) : (f(), k("div",
|
|
7084
|
+
])) : (f(), k("div", Fu, [V(j(bi), {
|
|
7080
7085
|
size: 32,
|
|
7081
7086
|
"stroke-width": 1.5,
|
|
7082
7087
|
class: "tpl:text-[var(--tpl-text-dim)]"
|
|
7083
|
-
}), I("p",
|
|
7088
|
+
}), I("p", Iu, D(j(i).scoring.emptyState), 1)])), I("p", Lu, D(j(i).aiMenu.disclaimer), 1)])])) : A("", !0)]),
|
|
7084
7089
|
_: 1
|
|
7085
7090
|
}));
|
|
7086
7091
|
}
|
|
7087
|
-
}),
|
|
7092
|
+
}), zu = /* @__PURE__ */ e({ default: () => Bu }), Bu = /*#__PURE__*/ Pi(Ru, [["__scopeId", "data-v-3a059e8d"]]), Vu = ["aria-busy"], Hu = {
|
|
7088
7093
|
id: "tpl-test-email-title",
|
|
7089
7094
|
class: "tpl:mb-4 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
|
|
7090
|
-
},
|
|
7095
|
+
}, Uu = { class: "tpl:mb-3" }, Wu = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Gu = ["value"], Ku = ["disabled"], qu = ["value"], Ju = {
|
|
7091
7096
|
key: 0,
|
|
7092
7097
|
role: "alert",
|
|
7093
7098
|
class: "tpl:mb-3 tpl:text-xs tpl:text-[var(--tpl-danger)]"
|
|
7094
|
-
},
|
|
7099
|
+
}, Yu = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Xu = ["disabled"], Zu = ["disabled"], Qu = {
|
|
7095
7100
|
key: 0,
|
|
7096
7101
|
class: "tpl:flex tpl:items-center tpl:gap-1.5"
|
|
7097
|
-
},
|
|
7102
|
+
}, $u = { key: 1 }, ed = /*@__PURE__*/ B({
|
|
7098
7103
|
__name: "TestEmailModal",
|
|
7099
7104
|
props: {
|
|
7100
7105
|
visible: { type: Boolean },
|
|
@@ -7104,7 +7109,7 @@ var su = {
|
|
|
7104
7109
|
},
|
|
7105
7110
|
emits: ["send", "close"],
|
|
7106
7111
|
setup(e, { emit: t }) {
|
|
7107
|
-
let n = e, r = t, { t: i } =
|
|
7112
|
+
let n = e, r = t, { t: i } = Wi(), a = C("");
|
|
7108
7113
|
H(() => n.visible, (e) => {
|
|
7109
7114
|
e && (a.value = n.allowedEmails[0] ?? "");
|
|
7110
7115
|
});
|
|
@@ -7117,7 +7122,7 @@ var su = {
|
|
|
7117
7122
|
function l(e) {
|
|
7118
7123
|
e.key === "Enter" && !e.shiftKey && (e.preventDefault(), o()), e.key === "Escape" && s();
|
|
7119
7124
|
}
|
|
7120
|
-
return (t, n) => (f(), N(
|
|
7125
|
+
return (t, n) => (f(), N(Ho, {
|
|
7121
7126
|
visible: e.visible,
|
|
7122
7127
|
onClose: s,
|
|
7123
7128
|
onKeydown: l
|
|
@@ -7133,14 +7138,14 @@ var su = {
|
|
|
7133
7138
|
"box-shadow": "var(--tpl-shadow-xl)"
|
|
7134
7139
|
}
|
|
7135
7140
|
}, [
|
|
7136
|
-
I("h3",
|
|
7137
|
-
I("div",
|
|
7141
|
+
I("h3", Hu, D(j(i).testEmail.title), 1),
|
|
7142
|
+
I("div", Uu, [I("label", Wu, D(j(i).testEmail.recipientLabel), 1), e.allowedEmails.length === 1 ? (f(), k("input", {
|
|
7138
7143
|
key: 0,
|
|
7139
7144
|
type: "text",
|
|
7140
7145
|
value: a.value,
|
|
7141
7146
|
disabled: "",
|
|
7142
7147
|
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:opacity-70 tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]"
|
|
7143
|
-
}, null, 8,
|
|
7148
|
+
}, null, 8, Gu)) : c((f(), k("select", {
|
|
7144
7149
|
key: 1,
|
|
7145
7150
|
"onUpdate:modelValue": n[0] ||= (e) => a.value = e,
|
|
7146
7151
|
class: "tpl:h-9 tpl:w-full tpl:rounded-md tpl:border tpl:px-3 tpl:py-1 tpl:text-sm tpl:shadow-xs tpl:outline-none tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)] tpl:text-[var(--tpl-text)]",
|
|
@@ -7148,29 +7153,29 @@ var su = {
|
|
|
7148
7153
|
}, [(f(!0), k(R, null, h(e.allowedEmails, (e) => (f(), k("option", {
|
|
7149
7154
|
key: e,
|
|
7150
7155
|
value: e
|
|
7151
|
-
}, D(e), 9,
|
|
7152
|
-
e.error ? (f(), k("p",
|
|
7153
|
-
I("div",
|
|
7156
|
+
}, D(e), 9, qu))), 128))], 8, Ku)), [[w, a.value]])]),
|
|
7157
|
+
e.error ? (f(), k("p", Ju, D(e.error), 1)) : A("", !0),
|
|
7158
|
+
I("div", Yu, [I("button", {
|
|
7154
7159
|
type: "button",
|
|
7155
7160
|
class: F(["tpl:cursor-pointer tpl:rounded-md tpl:border tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text)] tpl:bg-[var(--tpl-bg)]", { "tpl:cursor-not-allowed tpl:opacity-50": e.isSending }]),
|
|
7156
7161
|
disabled: e.isSending,
|
|
7157
7162
|
onClick: s
|
|
7158
|
-
}, D(j(i).testEmail.cancel), 11,
|
|
7163
|
+
}, D(j(i).testEmail.cancel), 11, Xu), I("button", {
|
|
7159
7164
|
type: "button",
|
|
7160
7165
|
class: "tpl:cursor-pointer tpl:rounded-md tpl:px-3 tpl:py-1.5 tpl:text-sm tpl:font-medium tpl:shadow-xs tpl:transition-all tpl:duration-150 tpl:hover:opacity-90 tpl:disabled:cursor-not-allowed tpl:disabled:opacity-50 tpl:bg-[var(--tpl-primary)] tpl:text-[var(--tpl-bg)]",
|
|
7161
7166
|
disabled: !a.value || e.isSending,
|
|
7162
7167
|
onClick: o
|
|
7163
|
-
}, [e.isSending ? (f(), k("span",
|
|
7168
|
+
}, [e.isSending ? (f(), k("span", Qu, [V(j(ui), {
|
|
7164
7169
|
class: "tpl:animate-spin",
|
|
7165
7170
|
size: 12,
|
|
7166
7171
|
"stroke-width": 2
|
|
7167
|
-
}), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span",
|
|
7168
|
-
], 8,
|
|
7172
|
+
}), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span", $u, D(j(i).testEmail.send), 1))], 8, Zu)])
|
|
7173
|
+
], 8, Vu)]),
|
|
7169
7174
|
_: 1
|
|
7170
7175
|
}, 8, ["visible"]));
|
|
7171
7176
|
}
|
|
7172
|
-
}),
|
|
7177
|
+
}), td = /* @__PURE__ */ e({ default: () => nd }), nd = ed;
|
|
7173
7178
|
//#endregion
|
|
7174
|
-
export {
|
|
7179
|
+
export { Gi as $, lr as $t, zo as A, ye as An, Gr as At, Ha as B, be as Bn, Wn as Bt, Xo as C, ct as Cn, ti as Ct, Wo as D, Ue as Dn, Xr as Dt, Uo as E, W as En, Qr as Et, co as F, me as Fn, Y as Ft, ga as G, Gn as Gt, Ba as H, de as Hn, dr as Ht, uo as I, xe as In, sr as It, ca as J, In as Jt, ha as K, Kn as Kt, so as L, Se as Ln, er as Lt, Do as M, _e as Mn, Nr as Mt, xo as N, we as Nn, Sr as Nt, Ho as O, ve as On, Jr as Ot, vo as P, ge as Pn, hr as Pt, Ki as Q, Qn as Qt, ro as R, Te as Rn, or as Rt, Zo as S, lt as Sn, ni as St, Z as T, ot as Tn, $r as Tt, ja as U, fe as Un, cr as Ut, Va as V, pe as Vn, tr as Vt, Da as W, ue as Wn, zn as Wt, Zi as X, Zn as Xt, $i as Y, Bn as Yt, qi as Z, Jn as Zt, ls as _, ut as _n, di as _t, fl as a, hn as an, ki as at, as as b, gt as bn, ci as bt, Es as c, q as cn, wi as ct, ys as d, nn as dn, bi as dt, ur as en, Ui as et, vs as f, tn as fn, yi as ft, ms as g, Tt as gn, fi as gt, hs as h, Pt as hn, pi as ht, Vl as i, J as in, Ni as it, Lo as j, Ce as jn, X as jt, Bo as k, Ee as kn, Kr as kt, xs as l, An as ln, Ci as lt, gs as m, sn as mn, gi as mt, zu as n, Vn as nn, Vi as nt, Qs as o, Cn as on, Di as ot, _s as p, on as pn, vi as pt, ua as q, $n as qt, nu as r, Hn as rn, Pi as rt, Ds as s, wn as sn, Ti as st, td as t, rr as tn, Wi as tt, bs as u, Dn as un, Si as ut, cs as v, vt as vn, ui as vt, $ as w, st as wn, ei as wt, ts as x, yt as xn, si as xt, os as y, bt as yn, li as yt, to as z, he as zn, Un as zt };
|
|
7175
7180
|
|
|
7176
|
-
//# sourceMappingURL=features-
|
|
7181
|
+
//# sourceMappingURL=features-A28DQtjE.js.map
|