@templatical/editor 0.16.2 → 0.16.4

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.
Files changed (130) hide show
  1. package/dist/{AiChatSidebar-EaPCeDXr.js → AiChatSidebar-CYAbVB2G.js} +7 -7
  2. package/dist/{AiFeatureMenu-DfTYyExg.js → AiFeatureMenu-BPCkrHAS.js} +4 -4
  3. package/dist/{BlockIssueBadge-CZYgn-qg.js → BlockIssueBadge-BLytBabN.js} +2 -2
  4. package/dist/{CloudEditor-BQyZ_nFg.js → CloudEditor-v8ARYaFW.js} +15 -15
  5. package/dist/{CollaboratorBar-DeP7K-zk.js → CollaboratorBar-BQzKZ2zo.js} +2 -2
  6. package/dist/ColorPicker-Cab6U2sH.js +474 -0
  7. package/dist/{CommentsSidebar-DDKiFsSq.js → CommentsSidebar-C_XLBbo3.js} +8 -8
  8. package/dist/{CountdownToolbar-nY9H0BKd.js → CountdownToolbar-q3umZ7TZ.js} +53 -67
  9. package/dist/{DesignReferenceSidebar-D6TfC176.js → DesignReferenceSidebar-Bh9uAZ4B.js} +5 -5
  10. package/dist/{IssuesPanel-CQQipLQP.js → IssuesPanel-DltSuU6H.js} +5 -5
  11. package/dist/{ModuleBrowserModal-CkeYw1e3.js → ModuleBrowserModal-CzzChPmN.js} +6 -6
  12. package/dist/{ModulePreviewCanvas-BIMFyYaa.js → ModulePreviewCanvas-C0Q2n3FL.js} +1 -1
  13. package/dist/{NumberWithSuffix-BoZyUoNz.js → NumberWithSuffix-Bhm2ByHs.js} +1 -1
  14. package/dist/{ParagraphEditor-DGsTFMxg.js → ParagraphEditor-BhsBi8p8.js} +26 -26
  15. package/dist/{RichTextEditorContent-BB_n8vgB.js → RichTextEditorContent-ef0fdj6e.js} +3 -3
  16. package/dist/{SaveModuleDialog-Cypt_qOB.js → SaveModuleDialog-BNN3dcxD.js} +24 -23
  17. package/dist/{SnapshotHistory-DQTH8TCS.js → SnapshotHistory-tWvgMCe6.js} +6 -6
  18. package/dist/{TemplateScoringPanel-C8VOC6gn.js → TemplateScoringPanel-ZhObHWeb.js} +10 -10
  19. package/dist/{TestEmailModal-DqxrL-U9.js → TestEmailModal-EdwEcsrD.js} +3 -3
  20. package/dist/{TitleEditor-DoGgnrcb.js → TitleEditor-DdvRepBq.js} +4 -4
  21. package/dist/ToggleSwitch-DUNuUPsZ.js +37 -0
  22. package/dist/{TplModal-Ca-29YDD.js → TplModal-Niu4Y96-.js} +1 -1
  23. package/dist/{blockTypeIcons-DVJXg5si.js → blockTypeIcons-DHcYPMB8.js} +2 -2
  24. package/dist/bundle-stats.json +7 -7
  25. package/dist/{ca-B3eR47lE.js → ca-DI1ViqMa.js} +2 -1
  26. package/dist/cdn/chunks/{AiFeatureMenu-roPglhox.js → AiFeatureMenu-AoUwsqor.js} +8 -8
  27. package/dist/cdn/chunks/{AiFeatureMenu-roPglhox.js.map → AiFeatureMenu-AoUwsqor.js.map} +1 -1
  28. package/dist/cdn/chunks/{BlockIssueBadge-DW_Tt7Wg.js → BlockIssueBadge-DZU3CfEN.js} +5 -5
  29. package/dist/cdn/chunks/{BlockIssueBadge-DW_Tt7Wg.js.map → BlockIssueBadge-DZU3CfEN.js.map} +1 -1
  30. package/dist/cdn/chunks/{CloudEditor-CX6y1k3C.js → CloudEditor-BrZLF_m1.js} +159 -159
  31. package/dist/cdn/chunks/{CloudEditor-CX6y1k3C.js.map → CloudEditor-BrZLF_m1.js.map} +1 -1
  32. package/dist/cdn/chunks/{CollaboratorBar-Dyrab63H.js → CollaboratorBar-BAC56ez6.js} +3 -3
  33. package/dist/cdn/chunks/{CollaboratorBar-Dyrab63H.js.map → CollaboratorBar-BAC56ez6.js.map} +1 -1
  34. package/dist/cdn/chunks/ColorPicker-DLEoT419.js +471 -0
  35. package/dist/cdn/chunks/ColorPicker-DLEoT419.js.map +1 -0
  36. package/dist/cdn/chunks/{CountdownBlock-Bul4tczj.js → CountdownBlock-BOF9aTXF.js} +4 -4
  37. package/dist/cdn/chunks/{CountdownBlock-Bul4tczj.js.map → CountdownBlock-BOF9aTXF.js.map} +1 -1
  38. package/dist/cdn/chunks/CountdownToolbar-C9bQ5k4E.js +198 -0
  39. package/dist/cdn/chunks/CountdownToolbar-C9bQ5k4E.js.map +1 -0
  40. package/dist/cdn/chunks/{IssuesPanel-BhHU-hq3.js → IssuesPanel-CHwYahKK.js} +7 -7
  41. package/dist/cdn/chunks/{IssuesPanel-BhHU-hq3.js.map → IssuesPanel-CHwYahKK.js.map} +1 -1
  42. package/dist/cdn/chunks/{ModuleBrowserModal-BGd5Ryyx.js → ModuleBrowserModal-iSXXpAUk.js} +6 -6
  43. package/dist/cdn/chunks/{ModuleBrowserModal-BGd5Ryyx.js.map → ModuleBrowserModal-iSXXpAUk.js.map} +1 -1
  44. package/dist/cdn/chunks/{ModulePreviewCanvas-Hx6SCCjB.js → ModulePreviewCanvas-DIy0MZj2.js} +10 -10
  45. package/dist/cdn/chunks/{ModulePreviewCanvas-Hx6SCCjB.js.map → ModulePreviewCanvas-DIy0MZj2.js.map} +1 -1
  46. package/dist/cdn/chunks/{NumberWithSuffix-BImuhc9K.js → NumberWithSuffix-vPdOG2lO.js} +2 -2
  47. package/dist/cdn/chunks/{NumberWithSuffix-BImuhc9K.js.map → NumberWithSuffix-vPdOG2lO.js.map} +1 -1
  48. package/dist/cdn/chunks/{ParagraphEditor-K2vENidm.js → ParagraphEditor-D7znI_X1.js} +146 -146
  49. package/dist/cdn/chunks/{ParagraphEditor-K2vENidm.js.map → ParagraphEditor-D7znI_X1.js.map} +1 -1
  50. package/dist/cdn/chunks/{RichTextEditorContent-B_w3u5lN.js → RichTextEditorContent-DVwGHbO6.js} +6 -6
  51. package/dist/cdn/chunks/{RichTextEditorContent-B_w3u5lN.js.map → RichTextEditorContent-DVwGHbO6.js.map} +1 -1
  52. package/dist/cdn/chunks/{SaveModuleDialog-Cw-182CB.js → SaveModuleDialog-D2_qPtE9.js} +32 -31
  53. package/dist/cdn/chunks/SaveModuleDialog-D2_qPtE9.js.map +1 -0
  54. package/dist/cdn/chunks/{TitleEditor-CUKlo_Zj.js → TitleEditor-CKjZ6Cgp.js} +8 -8
  55. package/dist/cdn/chunks/{TitleEditor-CUKlo_Zj.js.map → TitleEditor-CKjZ6Cgp.js.map} +1 -1
  56. package/dist/cdn/chunks/ToggleSwitch-OrmX_w18.js +39 -0
  57. package/dist/cdn/chunks/ToggleSwitch-OrmX_w18.js.map +1 -0
  58. package/dist/cdn/chunks/{blockTypeIcons-Cx1FAqL6.js → blockTypeIcons-BKecgdgr.js} +8 -8
  59. package/dist/cdn/chunks/{blockTypeIcons-Cx1FAqL6.js.map → blockTypeIcons-BKecgdgr.js.map} +1 -1
  60. package/dist/cdn/chunks/{ca-B3eR47lE.js → ca-DI1ViqMa.js} +3 -2
  61. package/dist/cdn/chunks/ca-DI1ViqMa.js.map +1 -0
  62. package/dist/{de-Cy8FB-Ii.js → cdn/chunks/de-q9lTCMre.js} +4 -1
  63. package/dist/cdn/chunks/de-q9lTCMre.js.map +1 -0
  64. package/dist/cdn/chunks/{en-Bu-zS_5o.js → en-CR4LItrX.js} +3 -2
  65. package/dist/cdn/chunks/en-CR4LItrX.js.map +1 -0
  66. package/dist/cdn/chunks/{es-CD3ZD6hK.js → es-CEt-lrGd.js} +3 -2
  67. package/dist/cdn/chunks/es-CEt-lrGd.js.map +1 -0
  68. package/dist/cdn/chunks/{extensions-DSxG2wYf.js → extensions-OZTN_skA.js} +19 -19
  69. package/dist/cdn/chunks/{extensions-DSxG2wYf.js.map → extensions-OZTN_skA.js.map} +1 -1
  70. package/dist/cdn/chunks/{features-C-cjT_8L.js → features-Bo7H8WNI.js} +370 -368
  71. package/dist/cdn/chunks/features-Bo7H8WNI.js.map +1 -0
  72. package/dist/cdn/chunks/{icons-ay0_fN-T.js → icons-BrNSrnyT.js} +26 -26
  73. package/dist/cdn/chunks/{icons-ay0_fN-T.js.map → icons-BrNSrnyT.js.map} +1 -1
  74. package/dist/cdn/chunks/{media-library-CkmqPdO4.js → media-library-Cec5DMR3.js} +101 -101
  75. package/dist/cdn/chunks/{media-library-CkmqPdO4.js.map → media-library-Cec5DMR3.js.map} +1 -1
  76. package/dist/cdn/chunks/{pt-BR-CgICL-CQ.js → pt-BR-DvBHY0AA.js} +3 -2
  77. package/dist/cdn/chunks/pt-BR-DvBHY0AA.js.map +1 -0
  78. package/dist/cdn/chunks/{quality-CDNrMw2A.js → quality-Dd2iYgRf.js} +435 -435
  79. package/dist/cdn/chunks/{quality-CDNrMw2A.js.map → quality-Dd2iYgRf.js.map} +1 -1
  80. package/dist/cdn/chunks/{renderer-JQ91A09w.js → renderer-Br-qXdnQ.js} +15 -12
  81. package/dist/cdn/chunks/{renderer-JQ91A09w.js.map → renderer-Br-qXdnQ.js.map} +1 -1
  82. package/dist/cdn/chunks/{src-Cehu7Hqx.js → src-BH8PABpF.js} +4 -4
  83. package/dist/cdn/chunks/{src-Cehu7Hqx.js.map → src-BH8PABpF.js.map} +1 -1
  84. package/dist/cdn/chunks/{styles-DBjy3lz9.js → styles-nqo5BynI.js} +975 -973
  85. package/dist/cdn/chunks/styles-nqo5BynI.js.map +1 -0
  86. package/dist/cdn/editor.css +1 -1
  87. package/dist/cdn/editor.js +35 -35
  88. package/dist/{check-D1zYtCPK.js → check-Cg6Mc2pP.js} +1 -1
  89. package/dist/{chevron-down-ByXpufZD.js → chevron-down-dClfxKrJ.js} +1 -1
  90. package/dist/{circle-alert-CjcAORUw.js → circle-alert-Bhzm-fNA.js} +1 -1
  91. package/dist/{clock-5lWLadUn.js → clock-m7TwQw4b.js} +1 -1
  92. package/dist/{dist-CFOQvhSC.js → color-DhoxCSMv.js} +9 -1
  93. package/dist/{createLucideIcon-Bh9xOmlW.js → createLucideIcon-FSF4peHQ.js} +2 -2
  94. package/dist/{cdn/chunks/de-Cy8FB-Ii.js → de-q9lTCMre.js} +2 -3
  95. package/dist/{en-Bu-zS_5o.js → en-CR4LItrX.js} +2 -1
  96. package/dist/{es-CD3ZD6hK.js → es-CEt-lrGd.js} +2 -1
  97. package/dist/{image-up-Bj_nes3f.js → image-up-CDEgJqwA.js} +1 -1
  98. package/dist/{info-BhSQCxBV.js → info-BNP8yGsK.js} +1 -1
  99. package/dist/{list-checks-CgxyUg7i.js → list-checks-jepi4iYr.js} +1 -1
  100. package/dist/{loader-circle-DFU0HPAa.js → loader-circle-BT38qSm3.js} +1 -1
  101. package/dist/{message-circle-BEBsCHnk.js → message-circle-BAHcL9S-.js} +1 -1
  102. package/dist/{pt-BR-CgICL-CQ.js → pt-BR-DvBHY0AA.js} +2 -1
  103. package/dist/{refresh-cw--lvWGy0_.js → refresh-cw-as5Bmg4X.js} +1 -1
  104. package/dist/{scan-line-QgyDIgn_.js → scan-line-IAMjPtRw.js} +1 -1
  105. package/dist/{send-BMyisUim.js → send-DvMay6bt.js} +1 -1
  106. package/dist/{shield-check-C49M20le.js → shield-check-YYDhGroE.js} +1 -1
  107. package/dist/{sparkles-DV7Dman6.js → sparkles-CCwQMMMZ.js} +1 -1
  108. package/dist/style.css +1 -1
  109. package/dist/{styles-mvx3k1hf.js → styles-DN4J7w-C.js} +717 -715
  110. package/dist/templatical-editor.js +9 -9
  111. package/dist/{text-align-start-BMU70uAm.js → text-align-start-BwsA6QzC.js} +11 -11
  112. package/dist/{trash-2-B6M659Ey.js → trash-2-CRBDolnR.js} +1 -1
  113. package/dist/{triangle-alert-D1lzx6ds.js → triangle-alert-B2g0ALvq.js} +1 -1
  114. package/dist/{upload-3A1oZtOR.js → upload-BKg6hDRW.js} +1 -1
  115. package/dist/{useEditorCore-DtZkR7Vk.js → useEditorCore-DBq2689h.js} +249 -255
  116. package/dist/{x-CG_NV3nP.js → x-Ctg_250T.js} +1 -1
  117. package/package.json +8 -8
  118. package/dist/ColorPicker-CXAbjTaG.js +0 -446
  119. package/dist/cdn/chunks/ColorPicker-BggAWrc9.js +0 -443
  120. package/dist/cdn/chunks/ColorPicker-BggAWrc9.js.map +0 -1
  121. package/dist/cdn/chunks/CountdownToolbar-DYvATR0J.js +0 -212
  122. package/dist/cdn/chunks/CountdownToolbar-DYvATR0J.js.map +0 -1
  123. package/dist/cdn/chunks/SaveModuleDialog-Cw-182CB.js.map +0 -1
  124. package/dist/cdn/chunks/ca-B3eR47lE.js.map +0 -1
  125. package/dist/cdn/chunks/de-Cy8FB-Ii.js.map +0 -1
  126. package/dist/cdn/chunks/en-Bu-zS_5o.js.map +0 -1
  127. package/dist/cdn/chunks/es-CD3ZD6hK.js.map +0 -1
  128. package/dist/cdn/chunks/features-C-cjT_8L.js.map +0 -1
  129. package/dist/cdn/chunks/pt-BR-CgICL-CQ.js.map +0 -1
  130. package/dist/cdn/chunks/styles-DBjy3lz9.js.map +0 -1
@@ -1564,7 +1564,7 @@ function Cr(e) {
1564
1564
  o || l();
1565
1565
  async function l() {
1566
1566
  try {
1567
- let t = await import("./quality-CDNrMw2A.js").then((e) => e.t);
1567
+ let t = await import("./quality-Dd2iYgRf.js").then((e) => e.t);
1568
1568
  if (c) return;
1569
1569
  a.value = { lintTemplate: t.lintTemplate }, r.value = !0, u(), s = fn(e.content, u, {
1570
1570
  debounce: e.debounce ?? 500,
@@ -2048,7 +2048,7 @@ function Qr() {
2048
2048
  return v(Zr, {});
2049
2049
  }
2050
2050
  //#endregion
2051
- //#region ../../node_modules/.pnpm/@lucide+vue@1.24.0_vue@3.5.40_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
2051
+ //#region ../../node_modules/.pnpm/@lucide+vue@1.25.0_vue@3.5.40_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
2052
2052
  var $r = ({ name: e, iconNode: t, "icon-node": n, absoluteStrokeWidth: r, "absolute-stroke-width": i, strokeWidth: o, "stroke-width": s, size: c, color: l, ...u }, { slots: d }) => {
2053
2053
  let { size: f, color: p, strokeWidth: m = 2, absoluteStrokeWidth: h = !1, class: g = "" } = Qr(), _ = O(() => {
2054
2054
  let e = Gr(r) || Gr(i) || r === !0 || i === !0 || h === !0, t = o || s || m || Xr["stroke-width"];
@@ -2929,27 +2929,29 @@ function fa(e, t, n) {
2929
2929
  e.chain().focus().insertContentAt(a, [r, i]).setTextSelection(a + 1).run();
2930
2930
  }
2931
2931
  //#endregion
2932
- //#region src/utils/linkColorExtension.ts
2932
+ //#region src/utils/color.ts
2933
2933
  function pa(e) {
2934
- if (!e) return null;
2935
- let t = e.trim();
2936
- return /^#[0-9a-f]{3,8}$/i.test(t) || /^(rgb|rgba|hsl|hsla)\(\s*[0-9.,%/\s]+\)$/i.test(t) || /^[a-z]+$/i.test(t) ? t : null;
2937
- }
2938
- function ma(e) {
2939
2934
  let t = /^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/i.exec(e.trim());
2940
2935
  if (!t) return e;
2941
2936
  let n = (e) => Number(e).toString(16).padStart(2, "0");
2942
2937
  return `#${n(t[1])}${n(t[2])}${n(t[3])}`;
2943
2938
  }
2939
+ //#endregion
2940
+ //#region src/utils/linkColorExtension.ts
2941
+ function ma(e) {
2942
+ if (!e) return null;
2943
+ let t = e.trim();
2944
+ return /^#[0-9a-f]{3,8}$/i.test(t) || /^(rgb|rgba|hsl|hsla)\(\s*[0-9.,%/\s]+\)$/i.test(t) || /^[a-z]+$/i.test(t) ? t : null;
2945
+ }
2944
2946
  function ha(e) {
2945
2947
  return e.extend({ addAttributes() {
2946
2948
  return {
2947
2949
  ...this.parent?.(),
2948
2950
  color: {
2949
2951
  default: null,
2950
- parseHTML: (e) => pa(ma(e.style.color)),
2952
+ parseHTML: (e) => ma(pa(e.style.color)),
2951
2953
  renderHTML: (e) => {
2952
- let t = pa(e.color);
2954
+ let t = ma(e.color);
2953
2955
  return t ? { style: `color: ${t}` } : {};
2954
2956
  }
2955
2957
  }
@@ -2969,7 +2971,7 @@ function ga(e) {
2969
2971
  if (n.value) {
2970
2972
  let t = c(n.value);
2971
2973
  if (t !== null) {
2972
- let n = pa(r.value), i = e.value?.chain().focus().extendMarkRange("link").setLink({ href: t }).updateAttributes("link", { color: n });
2974
+ let n = ma(r.value), i = e.value?.chain().focus().extendMarkRange("link").setLink({ href: t }).updateAttributes("link", { color: n });
2973
2975
  n && typeof e.value?.commands.unsetColor == "function" && i?.unsetColor(), i?.run();
2974
2976
  }
2975
2977
  }
@@ -3513,7 +3515,7 @@ var co = ["innerHTML"], lo = /* @__PURE__ */ B({
3513
3515
  viewport: {}
3514
3516
  },
3515
3517
  setup(e) {
3516
- let t = e, n = T(() => import("./ParagraphEditor-K2vENidm.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = so(() => t.block.content);
3518
+ let t = e, n = T(() => import("./ParagraphEditor-D7znI_X1.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = so(() => t.block.content);
3517
3519
  return (t, l) => (f(), k("div", {
3518
3520
  ref_key: "blockRef",
3519
3521
  ref: i,
@@ -3581,7 +3583,7 @@ var mo = ["data-block-id", "data-block-type"], ho = ["aria-label"], go = [
3581
3583
  },
3582
3584
  emits: ["select"],
3583
3585
  setup(e, { emit: t }) {
3584
- let n = T(() => import("./BlockIssueBadge-DW_Tt7Wg.js")), r = e, i = t, { t: a, format: s } = Y(), c = v(ur, 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);
3586
+ let n = T(() => import("./BlockIssueBadge-DZU3CfEN.js")), r = e, i = t, { t: a, format: s } = Y(), c = v(ur, 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);
3585
3587
  async function p() {
3586
3588
  await m(), l.value?.focus();
3587
3589
  }
@@ -3740,7 +3742,7 @@ var Oo = /* @__PURE__ */ B({
3740
3742
  viewport: {}
3741
3743
  },
3742
3744
  setup(e) {
3743
- let t = e, n = T(() => import("./TitleEditor-CUKlo_Zj.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = so(() => t.block.content), l = O(() => {
3745
+ let t = e, n = T(() => import("./TitleEditor-CKjZ6Cgp.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = so(() => t.block.content), l = O(() => {
3744
3746
  let e = {
3745
3747
  fontSize: `${pe[t.block.level]}px`,
3746
3748
  textAlign: t.block.textAlign
@@ -3777,11 +3779,11 @@ function ko(e) {
3777
3779
  }
3778
3780
  //#endregion
3779
3781
  //#region src/components/blocks/SectionBlock.vue?vue&type=script&setup=true&lang.ts
3780
- var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3782
+ var Ao = { class: "tpl:w-full" }, jo = {
3781
3783
  key: 0,
3782
3784
  "data-testid": "section-drop-hint",
3783
3785
  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)]"
3784
- }, No = /* @__PURE__ */ B({
3786
+ }, Mo = /* @__PURE__ */ B({
3785
3787
  __name: "SectionBlock",
3786
3788
  props: {
3787
3789
  block: {},
@@ -3811,30 +3813,30 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3811
3813
  let e = s.value.length, t = [...n.block.children];
3812
3814
  for (; t.length < e;) t.push([]);
3813
3815
  return t.slice(0, e);
3814
- });
3815
- function u(e) {
3816
+ }), u = O(() => n.viewport === "mobile" && n.block.stackOnMobile !== !1);
3817
+ function p(e) {
3816
3818
  return l.value[e] || [];
3817
3819
  }
3818
- function p(e, t) {
3820
+ function m(e, t) {
3819
3821
  let r = t.map((e) => JSON.parse(JSON.stringify(e))), a = [...n.block.children];
3820
3822
  for (; a.length <= e;) a.push([]);
3821
3823
  a[e] = r, i.updateBlock(n.block.id, { children: a });
3822
3824
  }
3823
- function m(e) {
3825
+ function g(e) {
3824
3826
  return uo(e, o, t);
3825
3827
  }
3826
- function g(e, t) {
3828
+ function _(e, t) {
3827
3829
  e.type === "custom" && i.updateBlock(e.id, {
3828
3830
  fieldValues: t.fieldValues,
3829
3831
  dataSourceFetched: t.dataSourceFetched
3830
3832
  });
3831
3833
  }
3832
- return (t, n) => (f(), k("div", Ao, [I("div", jo, [(f(!0), k(R, null, h(l.value, (t, n) => (f(), k("div", {
3834
+ return (t, n) => (f(), k("div", Ao, [I("div", { class: F(["tpl:flex tpl:gap-0", { "tpl:flex-col": u.value }]) }, [(f(!0), k(R, null, h(l.value, (t, n) => (f(), k("div", {
3833
3835
  key: n,
3834
- class: F(["tpl:relative tpl:min-h-[60px] tpl:rounded", u(n).length === 0 ? "tpl:border tpl:border-dashed tpl:border-[var(--tpl-border)]" : ""]),
3835
- style: L({ width: s.value[n] })
3836
+ class: F(["tpl:relative tpl:min-h-[60px] tpl:rounded", p(n).length === 0 ? "tpl:border tpl:border-dashed tpl:border-[var(--tpl-border)]" : ""]),
3837
+ style: L({ width: u.value ? "100%" : s.value[n] })
3836
3838
  }, [V(j(ce), {
3837
- "model-value": u(n),
3839
+ "model-value": p(n),
3838
3840
  group: {
3839
3841
  name: "blocks",
3840
3842
  pull: !0,
@@ -3849,19 +3851,19 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3849
3851
  "empty-insert-threshold": 20,
3850
3852
  "force-fallback": !0,
3851
3853
  class: "tpl:min-h-[60px]",
3852
- "onUpdate:modelValue": (e) => p(n, e)
3854
+ "onUpdate:modelValue": (e) => m(n, e)
3853
3855
  }, {
3854
- default: b(() => [(f(!0), k(R, null, h(u(n), (t) => c((f(), k("div", { key: t.id }, [V(Eo, {
3856
+ default: b(() => [(f(!0), k(R, null, h(p(n), (t) => c((f(), k("div", { key: t.id }, [V(Eo, {
3855
3857
  block: t,
3856
3858
  "is-selected": j(i).state.selectedBlockId === t.id,
3857
3859
  viewport: e.viewport,
3858
3860
  "preview-mode": j(i).state.previewMode,
3859
3861
  onSelect: (e) => j(i).selectBlock(t.id)
3860
3862
  }, {
3861
- default: b(() => [(f(), N(d(m(t)), {
3863
+ default: b(() => [(f(), N(d(g(t)), {
3862
3864
  block: t,
3863
3865
  viewport: e.viewport,
3864
- onFetchData: (e) => g(t, e),
3866
+ onFetchData: (e) => _(t, e),
3865
3867
  onUpdate: (e) => j(i).updateBlock(t.id, e)
3866
3868
  }, null, 40, [
3867
3869
  "block",
@@ -3882,13 +3884,13 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3882
3884
  "model-value",
3883
3885
  "group",
3884
3886
  "onUpdate:modelValue"
3885
- ]), u(n).length === 0 ? (f(), k("div", Mo, [I("span", null, D(j(r).section.dropHere), 1)])) : A("", !0)], 6))), 128))])]));
3887
+ ]), p(n).length === 0 ? (f(), k("div", jo, [I("span", null, D(j(r).section.dropHere), 1)])) : A("", !0)], 6))), 128))], 2)]));
3886
3888
  }
3887
- }), Po = me, Fo = {
3889
+ }), No = me, Po = {
3888
3890
  small: 24,
3889
3891
  medium: 32,
3890
3892
  large: 48
3891
- }, Io = [
3893
+ }, Fo = [
3892
3894
  "facebook",
3893
3895
  "twitter",
3894
3896
  "instagram",
@@ -3906,11 +3908,11 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3906
3908
  "github",
3907
3909
  "dribbble",
3908
3910
  "behance"
3909
- ], Lo = [
3911
+ ], Io = [
3910
3912
  "width",
3911
3913
  "height",
3912
3914
  "fill"
3913
- ], Ro = ["d"], zo = /* @__PURE__ */ B({
3915
+ ], Lo = ["d"], Ro = /* @__PURE__ */ B({
3914
3916
  __name: "SocialIconSvg",
3915
3917
  props: {
3916
3918
  platform: {},
@@ -3918,7 +3920,7 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3918
3920
  iconSize: {}
3919
3921
  },
3920
3922
  setup(e) {
3921
- let t = e, n = O(() => Po[t.platform]), r = O(() => Fo[t.iconSize]), i = O(() => {
3923
+ let t = e, n = O(() => No[t.platform]), r = O(() => Po[t.iconSize]), i = O(() => {
3922
3924
  let e = {
3923
3925
  display: "inline-flex",
3924
3926
  alignItems: "center",
@@ -3962,12 +3964,12 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3962
3964
  viewBox: "0 0 24 24",
3963
3965
  fill: o.value,
3964
3966
  xmlns: "http://www.w3.org/2000/svg"
3965
- }, [I("path", { d: n.value.path }, null, 8, Ro)], 8, Lo))], 4));
3967
+ }, [I("path", { d: n.value.path }, null, 8, Lo)], 8, Io))], 4));
3966
3968
  }
3967
- }), Bo = { class: "tpl:w-full" }, Vo = ["href"], Ho = {
3969
+ }), zo = { class: "tpl:w-full" }, Bo = ["href"], Vo = {
3968
3970
  key: 1,
3969
3971
  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)]"
3970
- }, Uo = /* @__PURE__ */ B({
3972
+ }, Ho = /* @__PURE__ */ B({
3971
3973
  __name: "SocialIconsBlock",
3972
3974
  props: {
3973
3975
  block: {},
@@ -3980,7 +3982,7 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3980
3982
  gap: `${t.block.spacing}px`,
3981
3983
  justifyContent: t.block.align === "left" ? "flex-start" : t.block.align === "right" ? "flex-end" : "center"
3982
3984
  })), i = O(() => t.block.icons.length > 0);
3983
- return (t, a) => (f(), k("div", Bo, [i.value ? (f(), k("div", {
3985
+ return (t, a) => (f(), k("div", zo, [i.value ? (f(), k("div", {
3984
3986
  key: 0,
3985
3987
  style: L(r.value)
3986
3988
  }, [(f(!0), k(R, null, h(e.block.icons, (t) => (f(), k("a", {
@@ -3988,7 +3990,7 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3988
3990
  href: t.url || "#",
3989
3991
  class: "tpl:cursor-default",
3990
3992
  onClick: a[0] ||= M(() => {}, ["prevent"])
3991
- }, [V(zo, {
3993
+ }, [V(Ro, {
3992
3994
  platform: t.platform,
3993
3995
  "icon-style": e.block.iconStyle,
3994
3996
  "icon-size": e.block.iconSize
@@ -3996,16 +3998,16 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
3996
3998
  "platform",
3997
3999
  "icon-style",
3998
4000
  "icon-size"
3999
- ])], 8, Vo))), 128))], 4)) : (f(), k("div", Ho, [V(j(Ai), { size: 16 }), I("span", null, D(j(n).social.addIcons), 1)]))]));
4001
+ ])], 8, Bo))), 128))], 4)) : (f(), k("div", Vo, [V(j(Ai), { size: 16 }), I("span", null, D(j(n).social.addIcons), 1)]))]));
4000
4002
  }
4001
- }), Wo = { class: "tpl:w-full" }, Go = {
4003
+ }), Uo = { class: "tpl:w-full" }, Wo = {
4002
4004
  key: 0,
4003
4005
  class: "tpl:absolute tpl:rounded tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-medium",
4004
4006
  style: {
4005
4007
  "background-color": "var(--tpl-bg-hover)",
4006
4008
  color: "var(--tpl-text-dim)"
4007
4009
  }
4008
- }, Ko = /* @__PURE__ */ B({
4010
+ }, Go = /* @__PURE__ */ B({
4009
4011
  __name: "SpacerBlock",
4010
4012
  props: {
4011
4013
  block: {},
@@ -4017,23 +4019,23 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
4017
4019
  minHeight: `${t.block.height}px`,
4018
4020
  ...n.state.previewMode ? {} : { borderColor: "var(--tpl-border)" }
4019
4021
  }));
4020
- return (t, i) => (f(), k("div", Wo, [I("div", {
4022
+ return (t, i) => (f(), k("div", Uo, [I("div", {
4021
4023
  style: L(r.value),
4022
4024
  class: F(["tpl:relative tpl:flex tpl:items-center tpl:justify-center", { "tpl:border-y tpl:border-dashed": !j(n).state.previewMode }])
4023
- }, [j(n).state.previewMode ? A("", !0) : (f(), k("span", Go, D(e.block.height) + "px ", 1))], 6)]));
4025
+ }, [j(n).state.previewMode ? A("", !0) : (f(), k("span", Wo, D(e.block.height) + "px ", 1))], 6)]));
4024
4026
  }
4025
- }), qo = { class: "tpl:w-full" }, Jo = { key: 0 }, Yo = [
4027
+ }), Ko = { class: "tpl:w-full" }, qo = { key: 0 }, Jo = [
4026
4028
  "aria-label",
4027
4029
  "data-placeholder",
4028
4030
  "onBlur"
4029
- ], Xo = [
4031
+ ], Yo = [
4030
4032
  "aria-label",
4031
4033
  "data-placeholder",
4032
4034
  "onBlur"
4033
- ], Zo = {
4035
+ ], Xo = {
4034
4036
  key: 1,
4035
4037
  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)]"
4036
- }, Qo = /*#__PURE__*/ Gi(/* @__PURE__ */ B({
4038
+ }, Zo = /*#__PURE__*/ Gi(/* @__PURE__ */ B({
4037
4039
  __name: "TableBlock",
4038
4040
  props: {
4039
4041
  block: {},
@@ -4078,11 +4080,11 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
4078
4080
  } : n);
4079
4081
  i.updateBlock(n.block.id, { rows: o });
4080
4082
  }
4081
- return (e, n) => (f(), k("div", qo, [a.value ? (f(), k("table", {
4083
+ return (e, n) => (f(), k("div", Ko, [a.value ? (f(), k("table", {
4082
4084
  key: 0,
4083
4085
  style: L(o.value),
4084
4086
  class: "tpl-table-editable"
4085
- }, [u.value ? (f(), k("thead", Jo, [I("tr", null, [(f(!0), k(R, null, h(u.value.cells, (e) => c((f(), k("th", {
4087
+ }, [u.value ? (f(), k("thead", qo, [I("tr", null, [(f(!0), k(R, null, h(u.value.cells, (e) => c((f(), k("th", {
4086
4088
  key: e.id,
4087
4089
  style: L(l.value),
4088
4090
  "aria-label": j(r).table.cellPlaceholder,
@@ -4091,7 +4093,7 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
4091
4093
  onBlur: (t) => m(u.value.id, e.id, t),
4092
4094
  onKeydown: n[0] ||= E(M((e) => e.target.blur(), ["prevent"]), ["enter"]),
4093
4095
  onClick: M(p, ["stop"])
4094
- }, null, 44, Yo)), [[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", {
4096
+ }, null, 44, Jo)), [[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", {
4095
4097
  key: i.id,
4096
4098
  style: L(s.value),
4097
4099
  "aria-label": j(r).table.cellPlaceholder,
@@ -4100,9 +4102,9 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
4100
4102
  onBlur: (t) => m(e.id, i.id, t),
4101
4103
  onKeydown: n[1] ||= E(M((e) => e.target.blur(), ["prevent"]), ["enter"]),
4102
4104
  onClick: M(p, ["stop"])
4103
- }, null, 44, Xo)), [[t, i.content]])), 128))]))), 128))])], 4)) : (f(), k("div", Zo, [V(j(Pi), { size: 16 }), I("span", null, D(j(r).table.empty), 1)]))]));
4105
+ }, null, 44, Yo)), [[t, i.content]])), 128))]))), 128))])], 4)) : (f(), k("div", Xo, [V(j(Pi), { size: 16 }), I("span", null, D(j(r).table.empty), 1)]))]));
4104
4106
  }
4105
- }), [["__scopeId", "data-v-963ac422"]]), $o = /* @__PURE__ */ B({
4107
+ }), [["__scopeId", "data-v-963ac422"]]), Qo = /* @__PURE__ */ B({
4106
4108
  __name: "VideoPlayButton",
4107
4109
  props: { hoverEffect: {
4108
4110
  type: Boolean,
@@ -4120,7 +4122,7 @@ var Ao = { class: "tpl:w-full" }, jo = { class: "tpl:flex tpl:gap-0" }, Mo = {
4120
4122
  });
4121
4123
  //#endregion
4122
4124
  //#region src/utils/videoThumbnail.ts
4123
- function es(e) {
4125
+ function $o(e) {
4124
4126
  if (!e) return {
4125
4127
  platform: "unknown",
4126
4128
  videoId: null,
@@ -4152,25 +4154,25 @@ function es(e) {
4152
4154
  thumbnailUrl: null
4153
4155
  };
4154
4156
  }
4155
- function ts(e, t) {
4156
- return t || es(e).thumbnailUrl;
4157
+ function es(e, t) {
4158
+ return t || $o(e).thumbnailUrl;
4157
4159
  }
4158
4160
  //#endregion
4159
4161
  //#region src/components/blocks/VideoBlock.vue?vue&type=script&setup=true&lang.ts
4160
- var ns = ["src", "alt"], rs = {
4162
+ var ts = ["src", "alt"], ns = {
4161
4163
  class: "tpl:max-w-full tpl:truncate tpl:px-3 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-primary)]",
4162
4164
  style: { opacity: "0.7" }
4163
- }, is = ["href"], as = ["src", "alt"], os = ["src", "alt"], ss = {
4165
+ }, rs = ["href"], is = ["src", "alt"], as = ["src", "alt"], os = {
4164
4166
  key: 3,
4165
4167
  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)]"
4166
- }, cs = /* @__PURE__ */ B({
4168
+ }, ss = /* @__PURE__ */ B({
4167
4169
  __name: "VideoBlock",
4168
4170
  props: {
4169
4171
  block: {},
4170
4172
  viewport: {}
4171
4173
  },
4172
4174
  setup(e) {
4173
- let t = e, { t: n } = Y(), { syntax: r } = na(), i = O(() => xt(t.block.url, r) || xt(t.block.thumbnailUrl, r)), a = O(() => i.value ? null : ts(t.block.url, t.block.thumbnailUrl)), o = O(() => ({ textAlign: t.block.align })), s = O(() => {
4175
+ let t = e, { t: n } = Y(), { syntax: r } = na(), i = O(() => xt(t.block.url, r) || xt(t.block.thumbnailUrl, r)), a = O(() => i.value ? null : es(t.block.url, t.block.thumbnailUrl)), o = O(() => ({ textAlign: t.block.align })), s = O(() => {
4174
4176
  let e = t.block.align;
4175
4177
  return {
4176
4178
  maxWidth: "100%",
@@ -4191,7 +4193,7 @@ var ns = ["src", "alt"], rs = {
4191
4193
  class: "tpl:w-full tpl:border-0",
4192
4194
  src: e.block.placeholderUrl,
4193
4195
  alt: e.block.alt
4194
- }, null, 8, ns), V($o)], 4)) : i.value ? (f(), k("div", {
4196
+ }, null, 8, ts), V(Qo)], 4)) : i.value ? (f(), k("div", {
4195
4197
  key: 1,
4196
4198
  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)]",
4197
4199
  style: L([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, s.value])
@@ -4200,7 +4202,7 @@ var ns = ["src", "alt"], rs = {
4200
4202
  "stroke-width": 1.5,
4201
4203
  class: "tpl:text-[var(--tpl-primary)]",
4202
4204
  style: { opacity: "0.5" }
4203
- }), I("span", rs, [V(Vr, { text: c.value }, null, 8, ["text"])])], 4)) : a.value ? (f(), k(R, { key: 2 }, [e.block.url ? (f(), k("a", {
4205
+ }), I("span", ns, [V(Vr, { text: c.value }, null, 8, ["text"])])], 4)) : a.value ? (f(), k(R, { key: 2 }, [e.block.url ? (f(), k("a", {
4204
4206
  key: 0,
4205
4207
  href: e.block.url,
4206
4208
  target: "_blank",
@@ -4212,7 +4214,7 @@ var ns = ["src", "alt"], rs = {
4212
4214
  class: "tpl:w-full tpl:border-0",
4213
4215
  src: a.value,
4214
4216
  alt: e.block.alt
4215
- }, null, 8, as), V($o, { "hover-effect": "" })], 12, is)) : (f(), k("div", {
4217
+ }, null, 8, is), V(Qo, { "hover-effect": "" })], 12, rs)) : (f(), k("div", {
4216
4218
  key: 1,
4217
4219
  class: "tpl:relative tpl:inline-block",
4218
4220
  style: L(s.value)
@@ -4220,28 +4222,28 @@ var ns = ["src", "alt"], rs = {
4220
4222
  class: "tpl:w-full tpl:border-0",
4221
4223
  src: a.value,
4222
4224
  alt: e.block.alt
4223
- }, null, 8, os), V($o)], 4))], 64)) : (f(), k("div", ss, [V(j(zi), {
4225
+ }, null, 8, as), V(Qo)], 4))], 64)) : (f(), k("div", os, [V(j(zi), {
4224
4226
  size: 40,
4225
4227
  "stroke-width": 1.5,
4226
4228
  class: "tpl:text-[var(--tpl-border-light)]"
4227
4229
  }), I("span", null, D(j(n).video.addVideo), 1)]))], 4));
4228
4230
  }
4229
- }), ls = {
4230
- section: No,
4231
+ }), cs = {
4232
+ section: Mo,
4231
4233
  title: Oo,
4232
4234
  paragraph: lo,
4233
4235
  image: Xa,
4234
4236
  button: Wr,
4235
4237
  divider: Aa,
4236
- video: cs,
4237
- social: Uo,
4238
+ video: ss,
4239
+ social: Ho,
4238
4240
  menu: eo,
4239
- table: Qo,
4240
- spacer: Ko,
4241
+ table: Zo,
4242
+ spacer: Go,
4241
4243
  html: Fa,
4242
- countdown: T(() => import("./CountdownBlock-Bul4tczj.js").then((e) => e.n))
4244
+ countdown: T(() => import("./CountdownBlock-BOF9aTXF.js").then((e) => e.n))
4243
4245
  };
4244
- function us(e) {
4246
+ function ls(e) {
4245
4247
  let { editor: t, config: n, translations: r, fontsManager: i } = e, { t: a, format: o } = Y(r);
4246
4248
  t.setUiTheme(n.uiTheme ?? "auto");
4247
4249
  let { resolvedTheme: c } = Er(O(() => t.state.uiTheme)), u = C(n.theme ?? {}), { themeStyles: d } = Or({
@@ -4273,7 +4275,7 @@ function us(e) {
4273
4275
  t: a,
4274
4276
  format: o
4275
4277
  }), y = Mr();
4276
- if (Lr(y, ls), n.customBlocks?.length) for (let e of n.customBlocks) y.registerCustom(e, Oa);
4278
+ if (Lr(y, cs), n.customBlocks?.length) for (let e of n.customBlocks) y.registerCustom(e, Oa);
4277
4279
  function b(e) {
4278
4280
  for (let t of e) y.registerCustom(t, Oa);
4279
4281
  }
@@ -4331,19 +4333,19 @@ function us(e) {
4331
4333
  }
4332
4334
  //#endregion
4333
4335
  //#region src/composables/usePopoverRoot.ts
4334
- function ds() {
4336
+ function us() {
4335
4337
  return v(pr, C(null));
4336
4338
  }
4337
4339
  //#endregion
4338
4340
  //#region src/components/TplModal.vue?vue&type=script&setup=true&lang.ts
4339
- var fs = ["data-tpl-theme"], ps = /* @__PURE__ */ B({
4341
+ var ds = ["data-tpl-theme"], fs = /* @__PURE__ */ B({
4340
4342
  __name: "TplModal",
4341
4343
  props: { visible: { type: Boolean } },
4342
4344
  emits: ["close", "keydown"],
4343
4345
  setup(e, { emit: t }) {
4344
4346
  let n = e, r = t, i = C(null);
4345
4347
  Qi(i, O(() => n.visible));
4346
- let a = v(Gn), s = ds();
4348
+ let a = v(Gn), s = us();
4347
4349
  function c(e) {
4348
4350
  e.key === "Escape" && r("close"), r("keydown", e);
4349
4351
  }
@@ -4372,11 +4374,11 @@ var fs = ["data-tpl-theme"], ps = /* @__PURE__ */ B({
4372
4374
  }, [I("div", {
4373
4375
  ref_key: "dialogRef",
4374
4376
  ref: i
4375
- }, [o(t.$slots, "default")], 512)], 40, fs)) : A("", !0)]),
4377
+ }, [o(t.$slots, "default")], 512)], 40, ds)) : A("", !0)]),
4376
4378
  _: 3
4377
4379
  })], 8, ["to"])) : A("", !0);
4378
4380
  }
4379
- }), ms = class e {
4381
+ }), ps = class e {
4380
4382
  static DEFAULT_BASE_URL = "https://templatical.com";
4381
4383
  accessToken = null;
4382
4384
  expiresAt = null;
@@ -4477,8 +4479,8 @@ var fs = ["data-tpl-theme"], ps = /* @__PURE__ */ B({
4477
4479
  return a.status === 401 && (a = await i(await this.refreshToken())), a;
4478
4480
  }
4479
4481
  };
4480
- function hs(e, t) {
4481
- return e.mode === "direct" ? new ms({
4482
+ function ms(e, t) {
4483
+ return e.mode === "direct" ? new ps({
4482
4484
  url: `${(e.baseUrl ?? "https://templatical.com").replace(/\/$/, "")}/api/v1/auth/token`,
4483
4485
  baseUrl: e.baseUrl,
4484
4486
  requestOptions: {
@@ -4492,7 +4494,7 @@ function hs(e, t) {
4492
4494
  }
4493
4495
  },
4494
4496
  onError: t
4495
- }) : new ms({
4497
+ }) : new ps({
4496
4498
  url: e.url,
4497
4499
  baseUrl: e.baseUrl,
4498
4500
  requestOptions: e.requestOptions,
@@ -4504,16 +4506,16 @@ function hs(e, t) {
4504
4506
  function Z(e, t) {
4505
4507
  return e.replace(/\{(\w+)\}/g, (e, n) => encodeURIComponent(t[n] ?? ""));
4506
4508
  }
4507
- var gs = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${gs}/templates/{template}`, _s = `${Q}/ai`, vs = `${gs}/media`, ys = `${vs}/folders`, bs = `${gs}/saved-modules`, $ = {
4509
+ var hs = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${hs}/templates/{template}`, gs = `${Q}/ai`, _s = `${hs}/media`, vs = `${_s}/folders`, ys = `${hs}/saved-modules`, $ = {
4508
4510
  health: "/api/v1/health",
4509
- "projects.config": `${gs}/config`,
4510
- "broadcasting.auth": `${gs}/broadcasting/auth`,
4511
- "templates.store": `${gs}/templates`,
4511
+ "projects.config": `${hs}/config`,
4512
+ "broadcasting.auth": `${hs}/broadcasting/auth`,
4513
+ "templates.store": `${hs}/templates`,
4512
4514
  "templates.show": `${Q}`,
4513
4515
  "templates.update": `${Q}`,
4514
4516
  "templates.destroy": `${Q}`,
4515
4517
  "templates.export": `${Q}/export`,
4516
- "templates.importFromBeefree": `${gs}/templates/import/from-beefree`,
4518
+ "templates.importFromBeefree": `${hs}/templates/import/from-beefree`,
4517
4519
  "templates.sendTestEmail": `${Q}/send-test-email`,
4518
4520
  "snapshots.index": `${Q}/snapshots`,
4519
4521
  "snapshots.store": `${Q}/snapshots`,
@@ -4524,31 +4526,31 @@ var gs = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${gs}/templates/{te
4524
4526
  "comments.update": `${Q}/comments/{comment}`,
4525
4527
  "comments.destroy": `${Q}/comments/{comment}`,
4526
4528
  "comments.resolve": `${Q}/comments/{comment}/resolve`,
4527
- "ai.generate": `${_s}/generate`,
4528
- "ai.conversationMessages": `${_s}/conversation-messages`,
4529
- "ai.suggestions": `${_s}/suggestions`,
4530
- "ai.rewriteText": `${_s}/rewrite-text`,
4531
- "ai.score": `${_s}/score`,
4532
- "ai.fixFinding": `${_s}/fix-finding`,
4533
- "ai.generateFromDesign": `${_s}/generate-from-design`,
4534
- "media.upload": `${vs}/upload`,
4535
- "media.browse": `${vs}/browse`,
4536
- "media.delete": `${vs}/delete`,
4537
- "media.move": `${vs}/move`,
4538
- "media.update": `${vs}/{media}`,
4539
- "media.replace": `${vs}/{media}/replace`,
4540
- "media.checkUsage": `${vs}/check-usage`,
4541
- "media.frequentlyUsed": `${vs}/frequently-used`,
4542
- "media.importFromUrl": `${vs}/import-from-url`,
4543
- "folders.index": `${ys}`,
4544
- "folders.store": `${ys}`,
4545
- "folders.update": `${ys}/{mediaFolder}`,
4546
- "folders.destroy": `${ys}/{mediaFolder}`,
4547
- "savedModules.index": `${bs}`,
4548
- "savedModules.store": `${bs}`,
4549
- "savedModules.update": `${bs}/{savedModule}`,
4550
- "savedModules.destroy": `${bs}/{savedModule}`
4551
- }, xs = class {
4529
+ "ai.generate": `${gs}/generate`,
4530
+ "ai.conversationMessages": `${gs}/conversation-messages`,
4531
+ "ai.suggestions": `${gs}/suggestions`,
4532
+ "ai.rewriteText": `${gs}/rewrite-text`,
4533
+ "ai.score": `${gs}/score`,
4534
+ "ai.fixFinding": `${gs}/fix-finding`,
4535
+ "ai.generateFromDesign": `${gs}/generate-from-design`,
4536
+ "media.upload": `${_s}/upload`,
4537
+ "media.browse": `${_s}/browse`,
4538
+ "media.delete": `${_s}/delete`,
4539
+ "media.move": `${_s}/move`,
4540
+ "media.update": `${_s}/{media}`,
4541
+ "media.replace": `${_s}/{media}/replace`,
4542
+ "media.checkUsage": `${_s}/check-usage`,
4543
+ "media.frequentlyUsed": `${_s}/frequently-used`,
4544
+ "media.importFromUrl": `${_s}/import-from-url`,
4545
+ "folders.index": `${vs}`,
4546
+ "folders.store": `${vs}`,
4547
+ "folders.update": `${vs}/{mediaFolder}`,
4548
+ "folders.destroy": `${vs}/{mediaFolder}`,
4549
+ "savedModules.index": `${ys}`,
4550
+ "savedModules.store": `${ys}`,
4551
+ "savedModules.update": `${ys}/{savedModule}`,
4552
+ "savedModules.destroy": `${ys}/{savedModule}`
4553
+ }, bs = class {
4552
4554
  authManager;
4553
4555
  constructor(e) {
4554
4556
  this.authManager = e;
@@ -4734,14 +4736,14 @@ var gs = "/api/v1/projects/{project}/tenants/{tenant}", Q = `${gs}/templates/{te
4734
4736
  };
4735
4737
  //#endregion
4736
4738
  //#region ../core/src/cloud/websocket-client.ts
4737
- function Ss(e) {
4739
+ function xs(e) {
4738
4740
  return {
4739
4741
  host: e.host,
4740
4742
  port: e.port,
4741
4743
  appKey: e.app_key
4742
4744
  };
4743
4745
  }
4744
- var Cs = class {
4746
+ var Ss = class {
4745
4747
  pusher = null;
4746
4748
  authManager;
4747
4749
  config;
@@ -4808,7 +4810,7 @@ var Cs = class {
4808
4810
  };
4809
4811
  //#endregion
4810
4812
  //#region ../core/src/cloud/mcp-operation-handler.ts
4811
- function ws(e, t) {
4813
+ function Cs(e, t) {
4812
4814
  let { operation: n, data: r } = t;
4813
4815
  switch (n) {
4814
4816
  case "add_block":
@@ -4836,11 +4838,11 @@ function ws(e, t) {
4836
4838
  }
4837
4839
  //#endregion
4838
4840
  //#region ../core/src/cloud/editor.ts
4839
- function Ts(e) {
4841
+ function ws(e) {
4840
4842
  return e === "1" ? 1 : e === "3" ? 3 : 2;
4841
4843
  }
4842
- function Es(e) {
4843
- let t = new xs(e.authManager), n = S({
4844
+ function Ts(e) {
4845
+ let t = new bs(e.authManager), n = S({
4844
4846
  template: null,
4845
4847
  content: We(e.defaultFontFamily, e.templateDefaults),
4846
4848
  selectedBlockId: null,
@@ -4946,7 +4948,7 @@ function Es(e) {
4946
4948
  let l;
4947
4949
  if (r) {
4948
4950
  let e = o(n.content.blocks, r);
4949
- if (!e || e.type !== "section" || i < 0 || i >= Ts(e.columns)) return;
4951
+ if (!e || e.type !== "section" || i < 0 || i >= ws(e.columns)) return;
4950
4952
  e.children[i] = e.children[i] || [], l = e.children[i];
4951
4953
  } else l = n.content.blocks;
4952
4954
  let [u] = a.blocks.splice(c, 1);
@@ -5038,11 +5040,11 @@ function Es(e) {
5038
5040
  }
5039
5041
  //#endregion
5040
5042
  //#region ../core/src/cloud/ai-chat.ts
5041
- var Ds = 0;
5042
- function Os() {
5043
- return `msg_${Date.now()}_${++Ds}`;
5043
+ var Es = 0;
5044
+ function Ds() {
5045
+ return `msg_${Date.now()}_${++Es}`;
5044
5046
  }
5045
- function ks(e) {
5047
+ function Os(e) {
5046
5048
  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);
5047
5049
  function _(e, t) {
5048
5050
  let n = a.value.findIndex((t) => t.id === e);
@@ -5136,14 +5138,14 @@ function ks(e) {
5136
5138
  let v = n();
5137
5139
  if (!v) throw Error("Template must be saved before using AI generation");
5138
5140
  o.value = !0, c.value = null, l.value = null, h.value = [];
5139
- let y = Os();
5141
+ let y = Ds();
5140
5142
  a.value = [...a.value, {
5141
5143
  id: y,
5142
5144
  role: "user",
5143
5145
  content: e,
5144
5146
  timestamp: Date.now()
5145
5147
  }];
5146
- let b = Os();
5148
+ let b = Ds();
5147
5149
  a.value = [...a.value, {
5148
5150
  id: b,
5149
5151
  role: "assistant",
@@ -5234,7 +5236,7 @@ function ks(e) {
5234
5236
  }
5235
5237
  //#endregion
5236
5238
  //#region ../core/src/cloud/ai-config.ts
5237
- function As(e) {
5239
+ function ks(e) {
5238
5240
  function t(t) {
5239
5241
  return e !== !1 && e?.[t] !== !1;
5240
5242
  }
@@ -5245,7 +5247,7 @@ function As(e) {
5245
5247
  }
5246
5248
  //#endregion
5247
5249
  //#region ../core/src/cloud/template-scoring.ts
5248
- function js(e) {
5250
+ function As(e) {
5249
5251
  let { authManager: t, getTemplateId: n } = e, r = C(!1), i = C(null), a = C(null), o = C(null), s = C(""), c = C(null);
5250
5252
  async function l(e, o) {
5251
5253
  let s = n();
@@ -5390,7 +5392,7 @@ function js(e) {
5390
5392
  }
5391
5393
  //#endregion
5392
5394
  //#region ../core/src/cloud/design-reference.ts
5393
- function Ms(e) {
5395
+ function js(e) {
5394
5396
  let { authManager: t, getTemplateId: n, onApply: r, onError: i } = e, a = C(!1), o = C(null);
5395
5397
  async function s(e) {
5396
5398
  let s = n();
@@ -5453,8 +5455,8 @@ function Ms(e) {
5453
5455
  }
5454
5456
  //#endregion
5455
5457
  //#region ../core/src/cloud/comments.ts
5456
- function Ns(e) {
5457
- let { authManager: t, getTemplateId: n, getSocketId: r, onComment: i, onError: a, hasCommentingFeature: o } = e, s = new xs(t), c = C([]), l = C(!1), u = C(!1), d = O(() => (o?.() ?? !1) && t.userConfig !== null), f = O(() => {
5458
+ function Ms(e) {
5459
+ let { authManager: t, getTemplateId: n, getSocketId: r, onComment: i, onError: a, hasCommentingFeature: o } = e, s = new bs(t), c = C([]), l = C(!1), u = C(!1), d = O(() => (o?.() ?? !1) && t.userConfig !== null), f = O(() => {
5458
5460
  let e = 0;
5459
5461
  for (let t of c.value) e += 1 + (t.replies?.length ?? 0);
5460
5462
  return e;
@@ -5653,17 +5655,17 @@ function Ns(e) {
5653
5655
  }
5654
5656
  //#endregion
5655
5657
  //#region ../core/src/cloud/comment-listener.ts
5656
- function Ps(e) {
5658
+ function Ns(e) {
5657
5659
  let { comments: t, channel: n } = e;
5658
5660
  H(n, (e, n) => {
5659
5661
  n && n.unbind("comment-broadcast"), e && e.bind("comment-broadcast", (e) => {
5660
- Fs(t, e);
5662
+ Ps(t, e);
5661
5663
  });
5662
5664
  }), l(() => {
5663
5665
  n.value?.unbind("comment-broadcast");
5664
5666
  });
5665
5667
  }
5666
- function Fs(e, t) {
5668
+ function Ps(e, t) {
5667
5669
  switch (t.action) {
5668
5670
  case "comment_created":
5669
5671
  e.applyRemoteCreate(t.comment);
@@ -5682,7 +5684,7 @@ function Fs(e, t) {
5682
5684
  }
5683
5685
  //#endregion
5684
5686
  //#region ../core/src/cloud/collaboration.ts
5685
- var Is = [
5687
+ var Fs = [
5686
5688
  "pusher:member_added",
5687
5689
  "pusher:member_removed",
5688
5690
  "client-block_locked",
@@ -5690,10 +5692,10 @@ var Is = [
5690
5692
  "client-operation",
5691
5693
  "mcp-operation"
5692
5694
  ];
5693
- function Ls(e) {
5694
- for (let t of Is) e.unbind(t);
5695
+ function Is(e) {
5696
+ for (let t of Fs) e.unbind(t);
5695
5697
  }
5696
- var Rs = [
5698
+ var Ls = [
5697
5699
  "#3b82f6",
5698
5700
  "#ef4444",
5699
5701
  "#10b981",
@@ -5705,10 +5707,10 @@ var Rs = [
5705
5707
  "#6366f1",
5706
5708
  "#14b8a6"
5707
5709
  ];
5708
- function zs(e) {
5710
+ function Rs(e) {
5709
5711
  let { authManager: t, editor: n, channel: r } = e, i = C([]), a = C(/* @__PURE__ */ new Map()), o = 0, s = !1, c = O(() => t.userConfig?.id ?? "");
5710
5712
  function u() {
5711
- let e = Rs[o % Rs.length];
5713
+ let e = Ls[o % Ls.length];
5712
5714
  return o++, e;
5713
5715
  }
5714
5716
  function d(e) {
@@ -5750,7 +5752,7 @@ function zs(e) {
5750
5752
  function h(e) {
5751
5753
  s = !0;
5752
5754
  try {
5753
- ws(n, e);
5755
+ Cs(n, e);
5754
5756
  } finally {
5755
5757
  s = !1;
5756
5758
  }
@@ -5770,7 +5772,7 @@ function zs(e) {
5770
5772
  return H(() => n.state.selectedBlockId, (e, t) => {
5771
5773
  s || (t && v(t), e && _(e));
5772
5774
  }), H(r, (t, n) => {
5773
- if (n && Ls(n), !t) {
5775
+ if (n && Is(n), !t) {
5774
5776
  i.value = [], a.value = /* @__PURE__ */ new Map(), o = 0;
5775
5777
  return;
5776
5778
  }
@@ -5802,7 +5804,7 @@ function zs(e) {
5802
5804
  h(e);
5803
5805
  });
5804
5806
  }), l(() => {
5805
- r.value && Ls(r.value);
5807
+ r.value && Is(r.value);
5806
5808
  }), {
5807
5809
  collaborators: i,
5808
5810
  lockedBlocks: a,
@@ -5812,7 +5814,7 @@ function zs(e) {
5812
5814
  }
5813
5815
  //#endregion
5814
5816
  //#region ../core/src/cloud/collaboration-broadcast.ts
5815
- function Bs(e, t) {
5817
+ function zs(e, t) {
5816
5818
  let n = e.addBlock, r = e.updateBlock, i = e.removeBlock, a = e.moveBlock, o = e.updateSettings, s = e.setContent;
5817
5819
  e.addBlock = (e, r, i, a) => {
5818
5820
  n(e, r, i, a), t._broadcastOperation({
@@ -5867,11 +5869,11 @@ function Bs(e, t) {
5867
5869
  }
5868
5870
  //#endregion
5869
5871
  //#region ../core/src/cloud/web-socket.ts
5870
- function Vs(e) {
5872
+ function Bs(e) {
5871
5873
  let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = null, o = null;
5872
5874
  async function s(e, s) {
5873
5875
  if (a) return;
5874
- a = new Cs({
5876
+ a = new Ss({
5875
5877
  authManager: t,
5876
5878
  config: s,
5877
5879
  onError: n
@@ -5899,8 +5901,8 @@ function Vs(e) {
5899
5901
  }
5900
5902
  //#endregion
5901
5903
  //#region ../core/src/cloud/saved-modules.ts
5902
- function Hs(e) {
5903
- let t = new xs(e.authManager), n = C([]), r = C(!1);
5904
+ function Vs(e) {
5905
+ let t = new bs(e.authManager), n = C([]), r = C(!1);
5904
5906
  async function i(i) {
5905
5907
  r.value = !0;
5906
5908
  try {
@@ -5948,8 +5950,8 @@ function Hs(e) {
5948
5950
  }
5949
5951
  //#endregion
5950
5952
  //#region ../core/src/cloud/snapshots.ts
5951
- function Us(e) {
5952
- let t = new xs(e.authManager), n = C([]), r = C(!1), i = C(!1);
5953
+ function Hs(e) {
5954
+ let t = new bs(e.authManager), n = C([]), r = C(!1), i = C(!1);
5953
5955
  async function a() {
5954
5956
  r.value = !0;
5955
5957
  try {
@@ -5981,8 +5983,8 @@ function Us(e) {
5981
5983
  }
5982
5984
  //#endregion
5983
5985
  //#region ../core/src/cloud/test-email.ts
5984
- function Ws(e) {
5985
- let { authManager: t, getTemplateId: n, save: r, exportHtml: i, onError: a, isAuthReady: o, onBeforeTestEmail: s } = e, c = new xs(t), l = C(!1), u = C(null), d = C(null);
5986
+ function Us(e) {
5987
+ let { authManager: t, getTemplateId: n, save: r, exportHtml: i, onError: a, isAuthReady: o, onBeforeTestEmail: s } = e, c = new bs(t), l = C(!1), u = C(null), d = C(null);
5986
5988
  o && H(o, (e) => {
5987
5989
  e && (d.value = t.testEmailConfig);
5988
5990
  }, { immediate: !0 });
@@ -6018,8 +6020,8 @@ function Ws(e) {
6018
6020
  }
6019
6021
  //#endregion
6020
6022
  //#region ../core/src/cloud/export.ts
6021
- function Gs(e) {
6022
- let { authManager: t, getFontsConfig: n, canUseCustomFonts: r } = e, i = new xs(t);
6023
+ function Ws(e) {
6024
+ let { authManager: t, getFontsConfig: n, canUseCustomFonts: r } = e, i = new bs(t);
6023
6025
  function a() {
6024
6026
  let e = n?.();
6025
6027
  return {
@@ -6045,8 +6047,8 @@ function Gs(e) {
6045
6047
  }
6046
6048
  //#endregion
6047
6049
  //#region ../core/src/cloud/plan-config.ts
6048
- function Ks(e) {
6049
- let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = new xs(t), o = O(() => r.value?.features ?? null);
6050
+ function Gs(e) {
6051
+ let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = new bs(t), o = O(() => r.value?.features ?? null);
6050
6052
  function s(e) {
6051
6053
  return r.value?.features[e] ?? !1;
6052
6054
  }
@@ -6072,11 +6074,11 @@ function Ks(e) {
6072
6074
  }
6073
6075
  //#endregion
6074
6076
  //#region ../core/src/cloud/health-check.ts
6075
- var qs = 5e3;
6076
- function Js(e) {
6077
+ var Ks = 5e3;
6078
+ function qs(e) {
6077
6079
  return e.authManager ? e.authManager.resolveUrl($.health) : `${(e.baseUrl ?? "https://templatical.com").replace(/\/$/, "")}${$.health}`;
6078
6080
  }
6079
- async function Ys(e, t) {
6081
+ async function Js(e, t) {
6080
6082
  let n = performance.now();
6081
6083
  try {
6082
6084
  let r = t ? await t.authenticatedFetch($.health, {
@@ -6128,7 +6130,7 @@ async function Ys(e, t) {
6128
6130
  };
6129
6131
  }
6130
6132
  }
6131
- async function Xs(e) {
6133
+ async function Ys(e) {
6132
6134
  if (!e?.host || !e?.app_key) return {
6133
6135
  ok: !1,
6134
6136
  error: "WebSocket configuration not available"
@@ -6144,7 +6146,7 @@ async function Xs(e) {
6144
6146
  ok: !1,
6145
6147
  error: "WebSocket connection timed out"
6146
6148
  });
6147
- }, qs);
6149
+ }, Ks);
6148
6150
  try {
6149
6151
  n = new WebSocket(t);
6150
6152
  } catch (t) {
@@ -6164,8 +6166,8 @@ async function Xs(e) {
6164
6166
  };
6165
6167
  });
6166
6168
  }
6167
- async function Zs(e = {}) {
6168
- let t = await Ys(Js(e), e.authManager), n = await Xs(t.wsConfig);
6169
+ async function Xs(e = {}) {
6170
+ let t = await Js(qs(e), e.authManager), n = await Ys(t.wsConfig);
6169
6171
  return {
6170
6172
  api: t.api,
6171
6173
  websocket: n,
@@ -6175,29 +6177,29 @@ async function Zs(e = {}) {
6175
6177
  }
6176
6178
  //#endregion
6177
6179
  //#region ../core/src/cloud/mcp-listener.ts
6178
- function Qs(e) {
6180
+ function Zs(e) {
6179
6181
  let { editor: t, channel: n, onOperation: r } = e;
6180
6182
  H(n, (e, n) => {
6181
6183
  n && n.unbind("mcp-operation"), e && e.bind("mcp-operation", (e) => {
6182
- ws(t, e), r?.(e);
6184
+ Cs(t, e), r?.(e);
6183
6185
  });
6184
6186
  });
6185
6187
  }
6186
6188
  //#endregion
6187
6189
  //#region src/cloud/components/AiChatSidebar.vue?vue&type=script&setup=true&lang.ts
6188
- var $s = {
6190
+ var Qs = {
6189
6191
  key: 0,
6190
6192
  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)]"
6191
- }, ec = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, tc = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, nc = { class: "tpl:flex tpl:items-center tpl:gap-1" }, rc = ["title"], ic = { class: "tpl:relative tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col" }, ac = {
6193
+ }, $s = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, ec = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, tc = { class: "tpl:flex tpl:items-center tpl:gap-1" }, nc = ["title"], rc = { class: "tpl:relative tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col" }, ic = {
6192
6194
  key: 0,
6193
6195
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6194
- }, oc = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, sc = {
6196
+ }, ac = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, oc = {
6195
6197
  key: 1,
6196
6198
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6197
- }, cc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, lc = {
6199
+ }, sc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, cc = {
6198
6200
  key: 2,
6199
6201
  class: "tpl:flex tpl:flex-col tpl:gap-4"
6200
- }, uc = {
6202
+ }, lc = {
6201
6203
  key: 0,
6202
6204
  class: "tpl:self-end tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm",
6203
6205
  style: {
@@ -6206,10 +6208,10 @@ var $s = {
6206
6208
  "max-width": "85%",
6207
6209
  "box-shadow": "var(--tpl-shadow)"
6208
6210
  }
6209
- }, dc = {
6211
+ }, uc = {
6210
6212
  key: 1,
6211
6213
  class: "tpl:flex tpl:flex-col tpl:gap-2"
6212
- }, fc = {
6214
+ }, dc = {
6213
6215
  key: 1,
6214
6216
  class: "tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm tpl:whitespace-pre-wrap",
6215
6217
  style: {
@@ -6218,21 +6220,21 @@ var $s = {
6218
6220
  color: "var(--tpl-text)",
6219
6221
  "box-shadow": "var(--tpl-shadow)"
6220
6222
  }
6221
- }, pc = {
6223
+ }, fc = {
6222
6224
  key: 0,
6223
6225
  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",
6224
6226
  style: {
6225
6227
  "background-color": "var(--tpl-danger-light)",
6226
6228
  color: "var(--tpl-danger)"
6227
6229
  }
6228
- }, mc = {
6230
+ }, pc = {
6229
6231
  key: 1,
6230
6232
  class: "tpl:absolute tpl:right-0 tpl:bottom-0 tpl:left-0 tpl:z-10 tpl:px-3 tpl:pb-3",
6231
6233
  style: {
6232
6234
  "background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 50%,\n transparent\n )",
6233
6235
  "backdrop-filter": "blur(2px)"
6234
6236
  }
6235
- }, hc = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, gc = ["onClick"], _c = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, vc = { 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)]" }, yc = ["placeholder", "disabled"], bc = ["disabled"], xc = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Sc = /*@__PURE__*/ B({
6237
+ }, mc = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, hc = ["onClick"], gc = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, _c = { 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)]" }, vc = ["placeholder", "disabled"], yc = ["disabled"], bc = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, xc = /*@__PURE__*/ B({
6236
6238
  __name: "AiChatSidebar",
6237
6239
  props: {
6238
6240
  visible: { type: Boolean },
@@ -6240,7 +6242,7 @@ var $s = {
6240
6242
  },
6241
6243
  emits: ["close"],
6242
6244
  setup(e, { emit: t }) {
6243
- let n = e, r = t, i = J(yr, "AiChatSidebar"), a = J(zn, "AiChatSidebar"), o = J(mr, "AiChatSidebar"), s = v(Zn, []), l = Ia(), u = ks({
6245
+ let n = e, r = t, i = J(yr, "AiChatSidebar"), a = J(zn, "AiChatSidebar"), o = J(mr, "AiChatSidebar"), s = v(Zn, []), l = Ia(), u = Os({
6244
6246
  authManager: o,
6245
6247
  getTemplateId: () => a.state.template?.id ?? null,
6246
6248
  onApply: n.onApply,
@@ -6287,11 +6289,11 @@ var $s = {
6287
6289
  "leave-from-class": "tpl:translate-x-0",
6288
6290
  "leave-to-class": "tpl:translate-x-full"
6289
6291
  }, {
6290
- default: b(() => [e.visible ? (f(), k("div", $s, [
6291
- I("div", ec, [I("div", tc, [V(j(Ni), {
6292
+ default: b(() => [e.visible ? (f(), k("div", Qs, [
6293
+ I("div", $s, [I("div", ec, [V(j(Ni), {
6292
6294
  size: 13,
6293
6295
  "stroke-width": 2
6294
- }), I("span", null, D(j(i).aiChat.title), 1)]), I("div", nc, [(j(u).messages.value?.length ?? 0) > 0 ? (f(), k("button", {
6296
+ }), I("span", null, D(j(i).aiChat.title), 1)]), I("div", tc, [(j(u).messages.value?.length ?? 0) > 0 ? (f(), k("button", {
6295
6297
  key: 0,
6296
6298
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6297
6299
  title: j(i).aiChat.clear,
@@ -6299,30 +6301,30 @@ var $s = {
6299
6301
  }, [V(j(Fi), {
6300
6302
  size: 14,
6301
6303
  "stroke-width": 2
6302
- })], 8, rc)) : A("", !0), I("button", {
6304
+ })], 8, nc)) : A("", !0), I("button", {
6303
6305
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6304
6306
  onClick: n[1] ||= (e) => r("close")
6305
6307
  }, [V(j(Bi), {
6306
6308
  size: 14,
6307
6309
  "stroke-width": 2
6308
6310
  })])])]),
6309
- I("div", ic, [
6311
+ I("div", rc, [
6310
6312
  I("div", {
6311
6313
  ref_key: "messagesContainer",
6312
6314
  ref: p,
6313
6315
  class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4"
6314
- }, [j(u).isLoadingHistory.value ? (f(), k("div", ac, [V(j(xi), {
6316
+ }, [j(u).isLoadingHistory.value ? (f(), k("div", ic, [V(j(xi), {
6315
6317
  class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
6316
6318
  size: 24,
6317
6319
  "stroke-width": 2
6318
- }), I("p", oc, D(j(i).aiChat.loadingHistory), 1)])) : (j(u).messages.value?.length ?? 0) === 0 ? (f(), k("div", sc, [V(j(Ni), {
6320
+ }), I("p", ac, D(j(i).aiChat.loadingHistory), 1)])) : (j(u).messages.value?.length ?? 0) === 0 ? (f(), k("div", oc, [V(j(Ni), {
6319
6321
  size: 32,
6320
6322
  "stroke-width": 1.5,
6321
6323
  class: "tpl:text-[var(--tpl-text-dim)]"
6322
- }), I("p", cc, D(j(i).aiChat.placeholder), 1)])) : (f(), k("div", lc, [(f(!0), k(R, null, h(j(u).messages.value, (e, t) => (f(), k("div", {
6324
+ }), I("p", sc, D(j(i).aiChat.placeholder), 1)])) : (f(), k("div", cc, [(f(!0), k(R, null, h(j(u).messages.value, (e, t) => (f(), k("div", {
6323
6325
  key: e.id,
6324
6326
  class: "tpl:flex tpl:flex-col tpl:gap-2"
6325
- }, [e.role === "user" ? (f(), k("div", uc, D(e.content), 1)) : (f(), k("div", dc, [!T(e.content) && j(u).isGenerating.value && t === (j(u).messages.value?.length ?? 0) - 1 ? (f(), N(Yi, { key: 0 })) : (f(), k("div", fc, D(T(e.content) || j(i).aiChat.applied), 1)), e.id === j(u).lastApplyMessageId.value && !j(u).isGenerating.value ? (f(), k("button", {
6327
+ }, [e.role === "user" ? (f(), k("div", lc, D(e.content), 1)) : (f(), k("div", uc, [!T(e.content) && j(u).isGenerating.value && t === (j(u).messages.value?.length ?? 0) - 1 ? (f(), N(Yi, { key: 0 })) : (f(), k("div", dc, D(T(e.content) || j(i).aiChat.applied), 1)), e.id === j(u).lastApplyMessageId.value && !j(u).isGenerating.value ? (f(), k("button", {
6326
6328
  key: 2,
6327
6329
  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",
6328
6330
  style: {
@@ -6338,12 +6340,12 @@ var $s = {
6338
6340
  size: 12,
6339
6341
  "stroke-width": 2
6340
6342
  }), z(" " + D(j(i).aiChat.revert), 1)], 64))])) : A("", !0)]))]))), 128))]))], 512),
6341
- j(u).error.value ? (f(), k("div", pc, [V(j(si), {
6343
+ j(u).error.value ? (f(), k("div", fc, [V(j(si), {
6342
6344
  size: 14,
6343
6345
  "stroke-width": 2,
6344
6346
  class: "tpl:mt-0.5 tpl:shrink-0"
6345
6347
  }), I("span", null, D(j(u).error.value === "ai_apply_failed" ? j(i).aiChat.applyFailed : j(i).aiChat.error), 1)])) : A("", !0),
6346
- (j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div", mc, [I("div", hc, [(f(!0), k(R, null, h(j(u).suggestions.value ?? [], (e, t) => (f(), k("button", {
6348
+ (j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div", pc, [I("div", mc, [(f(!0), k(R, null, h(j(u).suggestions.value ?? [], (e, t) => (f(), k("button", {
6347
6349
  key: t,
6348
6350
  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"]),
6349
6351
  style: {
@@ -6353,99 +6355,99 @@ var $s = {
6353
6355
  "box-shadow": "var(--tpl-shadow)"
6354
6356
  },
6355
6357
  onClick: (t) => E(e)
6356
- }, D(e), 11, gc))), 128))])])) : A("", !0)
6358
+ }, D(e), 11, hc))), 128))])])) : A("", !0)
6357
6359
  ]),
6358
- I("div", _c, [I("div", vc, [c(I("textarea", {
6360
+ I("div", gc, [I("div", _c, [c(I("textarea", {
6359
6361
  "onUpdate:modelValue": n[3] ||= (e) => d.value = e,
6360
6362
  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)]",
6361
6363
  placeholder: j(i).aiChat.inputPlaceholder,
6362
6364
  disabled: j(u).isGenerating.value,
6363
6365
  rows: "3",
6364
6366
  onKeydown: te
6365
- }, null, 40, yc), [[ae, d.value]]), I("button", {
6367
+ }, null, 40, vc), [[ae, d.value]]), I("button", {
6366
6368
  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)]",
6367
6369
  disabled: !d.value.trim() || j(u).isGenerating.value,
6368
6370
  onClick: ee
6369
6371
  }, [V(j(ki), {
6370
6372
  size: 16,
6371
6373
  "stroke-width": 2
6372
- })], 8, bc)]), I("p", xc, D(j(i).aiMenu.disclaimer), 1)])
6374
+ })], 8, yc)]), I("p", bc, D(j(i).aiMenu.disclaimer), 1)])
6373
6375
  ])) : A("", !0)]),
6374
6376
  _: 1
6375
6377
  }));
6376
6378
  }
6377
- }), Cc = /* @__PURE__ */ e({ default: () => wc }), wc = /*#__PURE__*/ Gi(Sc, [["__scopeId", "data-v-a55e4bff"]]), Tc = 6e4, Ec = 36e5, Dc = 864e5;
6378
- function Oc(e, t, n, r) {
6379
+ }), Sc = /* @__PURE__ */ e({ default: () => Cc }), Cc = /*#__PURE__*/ Gi(xc, [["__scopeId", "data-v-a55e4bff"]]), wc = 6e4, Tc = 36e5, Ec = 864e5;
6380
+ function Dc(e, t, n, r) {
6379
6381
  let i = new Date(e).getTime();
6380
6382
  if (Number.isNaN(i)) return null;
6381
6383
  let a = Date.now() - i;
6382
6384
  if (a < -6e4) return null;
6383
- let o = Math.floor(a / Tc), s = Math.floor(a / Ec), c = Math.floor(a / Dc);
6385
+ let o = Math.floor(a / wc), s = Math.floor(a / Tc), c = Math.floor(a / Ec);
6384
6386
  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));
6385
6387
  }
6386
6388
  //#endregion
6387
6389
  //#region src/cloud/components/CommentsSidebar.vue?vue&type=script&setup=true&lang.ts
6388
- var kc = {
6390
+ var Oc = {
6389
6391
  key: 0,
6390
6392
  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)]"
6391
- }, Ac = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, jc = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text)]" }, Mc = {
6393
+ }, kc = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Ac = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text)]" }, jc = {
6392
6394
  key: 0,
6393
6395
  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)]"
6394
- }, Nc = { class: "tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2" }, Pc = { class: "tpl:flex-1 tpl:overflow-y-auto" }, Fc = {
6396
+ }, Mc = { class: "tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2" }, Nc = { class: "tpl:flex-1 tpl:overflow-y-auto" }, Pc = {
6395
6397
  key: 0,
6396
6398
  class: "tpl:flex tpl:h-full tpl:items-center tpl:justify-center"
6397
- }, Ic = {
6399
+ }, Fc = {
6398
6400
  key: 1,
6399
6401
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:px-6 tpl:text-center"
6400
- }, Lc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Rc = {
6402
+ }, Ic = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Lc = {
6401
6403
  key: 2,
6402
6404
  class: "tpl:flex tpl:flex-col tpl:gap-3 tpl:p-3"
6403
- }, zc = { class: "tpl-comment-card tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-3" }, Bc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, Vc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, Hc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Uc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Wc = {
6405
+ }, Rc = { class: "tpl-comment-card tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-3" }, 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 = {
6404
6406
  key: 0,
6405
6407
  class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
6406
- }, Gc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, Kc = ["title", "onClick"], qc = ["title", "onClick"], Jc = ["title", "onClick"], Yc = {
6408
+ }, Wc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, Gc = ["title", "onClick"], Kc = ["title", "onClick"], qc = ["title", "onClick"], Jc = {
6407
6409
  key: 0,
6408
6410
  class: "tpl:mt-1 tpl:flex tpl:items-center tpl:gap-1 tpl:text-[10px] tpl:text-[var(--tpl-primary)]"
6409
- }, Xc = {
6411
+ }, Yc = {
6410
6412
  key: 0,
6411
6413
  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)]"
6412
- }, Zc = ["onClick"], Qc = {
6414
+ }, Xc = ["onClick"], Zc = {
6413
6415
  key: 2,
6414
6416
  class: "tpl:mt-2"
6415
- }, $c = ["onKeydown"], el = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, tl = ["disabled", "onClick"], nl = {
6417
+ }, Qc = ["onKeydown"], $c = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, el = ["disabled", "onClick"], tl = {
6416
6418
  key: 3,
6417
6419
  class: "tpl:mt-1.5 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
6418
- }, rl = {
6420
+ }, nl = {
6419
6421
  key: 4,
6420
6422
  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)]"
6421
- }, il = { class: "tpl:flex-1" }, al = ["onClick"], ol = {
6423
+ }, rl = { class: "tpl:flex-1" }, il = ["onClick"], al = {
6422
6424
  key: 5,
6423
6425
  class: "tpl:mt-2 tpl:flex tpl:items-center tpl:gap-2"
6424
- }, sl = ["title", "onClick"], cl = ["onClick"], ll = {
6426
+ }, ol = ["title", "onClick"], sl = ["onClick"], cl = {
6425
6427
  key: 0,
6426
6428
  class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
6427
- }, ul = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, dl = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, fl = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, pl = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, ml = {
6429
+ }, ll = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, ul = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, dl = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, fl = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, pl = {
6428
6430
  key: 0,
6429
6431
  class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
6430
- }, hl = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, gl = ["title", "onClick"], _l = ["title", "onClick"], vl = {
6432
+ }, ml = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, hl = ["title", "onClick"], gl = ["title", "onClick"], _l = {
6431
6433
  key: 0,
6432
6434
  class: "tpl:mt-1.5"
6433
- }, yl = ["onKeydown"], bl = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, xl = ["disabled", "onClick"], Sl = {
6435
+ }, vl = ["onKeydown"], yl = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, bl = ["disabled", "onClick"], xl = {
6434
6436
  key: 1,
6435
6437
  class: "tpl:mt-1 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
6436
- }, Cl = {
6438
+ }, Sl = {
6437
6439
  key: 2,
6438
6440
  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)]"
6439
- }, wl = { class: "tpl:flex-1" }, Tl = ["onClick"], El = {
6441
+ }, Cl = { class: "tpl:flex-1" }, wl = ["onClick"], Tl = {
6440
6442
  key: 0,
6441
6443
  class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
6442
- }, Dl = { class: "tpl:flex tpl:items-end tpl:gap-2" }, Ol = ["placeholder", "onKeydown"], kl = { class: "tpl:flex tpl:shrink-0 tpl:flex-col tpl:gap-1" }, Al = ["disabled", "onClick"], jl = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, Ml = {
6444
+ }, El = { class: "tpl:flex tpl:items-end tpl:gap-2" }, Dl = ["placeholder", "onKeydown"], Ol = { class: "tpl:flex tpl:shrink-0 tpl:flex-col tpl:gap-1" }, kl = ["disabled", "onClick"], Al = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, jl = {
6443
6445
  key: 0,
6444
6446
  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)]"
6445
- }, Nl = {
6447
+ }, Ml = {
6446
6448
  key: 1,
6447
6449
  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)]"
6448
- }, Pl = ["placeholder", "disabled"], Fl = ["disabled"], Il = /*@__PURE__*/ B({
6450
+ }, Nl = ["placeholder", "disabled"], Pl = ["disabled"], Fl = /*@__PURE__*/ B({
6449
6451
  __name: "CommentsSidebar",
6450
6452
  props: { visible: { type: Boolean } },
6451
6453
  emits: ["close", "filterBlock"],
@@ -6518,7 +6520,7 @@ var kc = {
6518
6520
  return e.author_identifier === T.value;
6519
6521
  }
6520
6522
  function ve(e) {
6521
- return Oc(e, o.snapshotHistory) ?? e;
6523
+ return Dc(e, o.snapshotHistory) ?? e;
6522
6524
  }
6523
6525
  function ye(e) {
6524
6526
  e.key === "Enter" && !e.shiftKey && (e.preventDefault(), fe());
@@ -6545,14 +6547,14 @@ var kc = {
6545
6547
  "leave-from-class": "tpl:translate-x-0",
6546
6548
  "leave-to-class": "tpl:translate-x-full"
6547
6549
  }, {
6548
- default: b(() => [e.visible ? (f(), k("div", kc, [
6549
- I("div", Ac, [I("div", jc, [
6550
+ default: b(() => [e.visible ? (f(), k("div", Oc, [
6551
+ I("div", kc, [I("div", Ac, [
6550
6552
  V(j(Si), {
6551
6553
  size: 13,
6552
6554
  "stroke-width": 2
6553
6555
  }),
6554
6556
  I("span", null, D(j(o).comments.title), 1),
6555
- j(u).unresolvedCount.value > 0 ? (f(), k("span", Mc, D(j(u).unresolvedCount.value), 1)) : A("", !0)
6557
+ j(u).unresolvedCount.value > 0 ? (f(), k("span", jc, D(j(u).unresolvedCount.value), 1)) : A("", !0)
6556
6558
  ]), I("button", {
6557
6559
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6558
6560
  onClick: n[0] ||= (e) => i("close")
@@ -6560,7 +6562,7 @@ var kc = {
6560
6562
  size: 14,
6561
6563
  "stroke-width": 2
6562
6564
  })])]),
6563
- I("div", Nc, [
6565
+ I("div", Mc, [
6564
6566
  I("button", {
6565
6567
  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" : ""]),
6566
6568
  onClick: n[1] ||= (e) => M("unresolved")
@@ -6575,24 +6577,24 @@ var kc = {
6575
6577
  onClick: n[3] ||= (e) => M("block", j(s).state.selectedBlockId ?? void 0)
6576
6578
  }, D(j(o).comments.filterBlock), 3)) : A("", !0)
6577
6579
  ]),
6578
- I("div", Pc, [j(u).isLoading.value ? (f(), k("div", Fc, [V(j(xi), {
6580
+ I("div", Nc, [j(u).isLoading.value ? (f(), k("div", Pc, [V(j(xi), {
6579
6581
  class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
6580
6582
  size: 24,
6581
6583
  "stroke-width": 2
6582
- })])) : re.value.length === 0 ? (f(), k("div", Ic, [V(j(Si), {
6584
+ })])) : re.value.length === 0 ? (f(), k("div", Fc, [V(j(Si), {
6583
6585
  size: 32,
6584
6586
  "stroke-width": 1.5,
6585
6587
  class: "tpl:text-[var(--tpl-text-dim)]"
6586
- }), I("p", Lc, D(d.value === "all" ? j(o).comments.noCommentsHint : j(o).comments.noComments), 1)])) : (f(), k("div", Rc, [(f(!0), k(R, null, h(re.value, (e) => (f(), k("div", {
6588
+ }), I("p", Ic, D(d.value === "all" ? j(o).comments.noCommentsHint : j(o).comments.noComments), 1)])) : (f(), k("div", Lc, [(f(!0), k(R, null, h(re.value, (e) => (f(), k("div", {
6587
6589
  key: e.id,
6588
6590
  class: "tpl-comment-thread"
6589
6591
  }, [
6590
- I("div", zc, [
6591
- I("div", Bc, [I("div", Vc, [
6592
- I("span", Hc, D(_e(e) ? j(o).comments.ownedByYou : e.author_name), 1),
6593
- I("span", Uc, D(ve(e.created_at)), 1),
6594
- e.updated_at === e.created_at ? A("", !0) : (f(), k("span", Wc, " (" + D(j(o).comments.edited) + ") ", 1))
6595
- ]), I("div", Gc, [
6592
+ I("div", Rc, [
6593
+ I("div", zc, [I("div", Bc, [
6594
+ I("span", Vc, D(_e(e) ? j(o).comments.ownedByYou : e.author_name), 1),
6595
+ I("span", Hc, D(ve(e.created_at)), 1),
6596
+ e.updated_at === e.created_at ? A("", !0) : (f(), k("span", Uc, " (" + D(j(o).comments.edited) + ") ", 1))
6597
+ ]), I("div", Wc, [
6596
6598
  I("button", {
6597
6599
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6598
6600
  title: e.resolved_at ? j(o).comments.unresolve : j(o).comments.resolve,
@@ -6602,7 +6604,7 @@ var kc = {
6602
6604
  "stroke-width": 2,
6603
6605
  class: "tpl-resolve-icon",
6604
6606
  style: L({ color: e.resolved_at ? "var(--tpl-primary)" : void 0 })
6605
- }, null, 8, ["style"])], 8, Kc),
6607
+ }, null, 8, ["style"])], 8, Gc),
6606
6608
  _e(e) ? (f(), k("button", {
6607
6609
  key: 0,
6608
6610
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
@@ -6611,7 +6613,7 @@ var kc = {
6611
6613
  }, [V(j(wi), {
6612
6614
  size: 12,
6613
6615
  "stroke-width": 2
6614
- })], 8, qc)) : A("", !0),
6616
+ })], 8, Kc)) : A("", !0),
6615
6617
  _e(e) ? (f(), k("button", {
6616
6618
  key: 1,
6617
6619
  class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
@@ -6620,45 +6622,45 @@ var kc = {
6620
6622
  }, [V(j(Fi), {
6621
6623
  size: 12,
6622
6624
  "stroke-width": 2
6623
- })], 8, Jc)) : A("", !0)
6625
+ })], 8, qc)) : A("", !0)
6624
6626
  ])]),
6625
6627
  V(ie, { name: "tpl-resolve" }, {
6626
- default: b(() => [e.resolved_at ? (f(), k("div", Yc, [V(j(ni), {
6628
+ default: b(() => [e.resolved_at ? (f(), k("div", Jc, [V(j(ni), {
6627
6629
  size: 10,
6628
6630
  "stroke-width": 2.5
6629
6631
  }), I("span", null, D(j(a)(j(o).comments.resolvedBy, { name: e.resolved_by_name ?? "" })), 1)])) : A("", !0)]),
6630
6632
  _: 2
6631
6633
  }, 1024),
6632
- e.block_id && te(e.block_id) ? (f(), k("span", Xc, D(j(o).comments.missingBlock), 1)) : e.block_id ? (f(), k("button", {
6634
+ e.block_id && te(e.block_id) ? (f(), k("span", Yc, D(j(o).comments.missingBlock), 1)) : e.block_id ? (f(), k("button", {
6633
6635
  key: 1,
6634
6636
  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)]",
6635
6637
  onClick: (t) => j(s).selectBlock(e.block_id ?? "")
6636
- }, " Block ", 8, Zc)) : A("", !0),
6637
- y.value === e.id ? (f(), k("div", Qc, [c(I("textarea", {
6638
+ }, " Block ", 8, Xc)) : A("", !0),
6639
+ y.value === e.id ? (f(), k("div", Zc, [c(I("textarea", {
6638
6640
  "onUpdate:modelValue": n[4] ||= (e) => x.value = e,
6639
6641
  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)]",
6640
6642
  rows: "3",
6641
6643
  onKeydown: (t) => xe(t, e.id)
6642
- }, null, 40, $c), [[ae, x.value]]), I("div", el, [I("button", {
6644
+ }, null, 40, Qc), [[ae, x.value]]), I("div", $c, [I("button", {
6643
6645
  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)]",
6644
6646
  disabled: !x.value.trim() || j(u).isSubmitting.value,
6645
6647
  onClick: (t) => me(e.id)
6646
- }, D(j(o).comments.save), 9, tl), I("button", {
6648
+ }, D(j(o).comments.save), 9, el), I("button", {
6647
6649
  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)]",
6648
6650
  onClick: n[5] ||= (e) => B()
6649
- }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", nl, D(e.body), 1)),
6650
- w.value === e.id ? (f(), k("div", rl, [
6651
- I("span", il, D(j(o).comments.deleteConfirm), 1),
6651
+ }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", tl, D(e.body), 1)),
6652
+ w.value === e.id ? (f(), k("div", nl, [
6653
+ I("span", rl, D(j(o).comments.deleteConfirm), 1),
6652
6654
  I("button", {
6653
6655
  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)]",
6654
6656
  onClick: (t) => he(e.id)
6655
- }, D(j(o).comments.delete), 9, al),
6657
+ }, D(j(o).comments.delete), 9, il),
6656
6658
  I("button", {
6657
6659
  class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6658
6660
  onClick: n[6] ||= (e) => de()
6659
6661
  }, D(j(o).comments.cancel), 1)
6660
6662
  ])) : A("", !0),
6661
- y.value !== e.id && w.value !== e.id ? (f(), k("div", ol, [I("button", {
6663
+ y.value !== e.id && w.value !== e.id ? (f(), k("div", al, [I("button", {
6662
6664
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6663
6665
  title: j(o).comments.reply,
6664
6666
  onClick: (t) => se(e.id)
@@ -6666,7 +6668,7 @@ var kc = {
6666
6668
  size: 13,
6667
6669
  "stroke-width": 2,
6668
6670
  class: "tpl:text-[var(--tpl-primary)]"
6669
- })], 8, sl), (e.replies?.length ?? 0) > 0 ? (f(), k("button", {
6671
+ })], 8, ol), (e.replies?.length ?? 0) > 0 ? (f(), k("button", {
6670
6672
  key: 0,
6671
6673
  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)]",
6672
6674
  onClick: (t) => oe(e.id)
@@ -6678,18 +6680,18 @@ var kc = {
6678
6680
  key: 1,
6679
6681
  size: 11,
6680
6682
  "stroke-width": 2
6681
- })), 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, cl)) : A("", !0)])) : A("", !0)
6683
+ })), 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, sl)) : A("", !0)])) : A("", !0)
6682
6684
  ]),
6683
6685
  V(ie, { name: "tpl-replies" }, {
6684
- default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div", ll, [(f(!0), k(R, null, h(e.replies, (t, r) => (f(), k("div", {
6686
+ default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div", cl, [(f(!0), k(R, null, h(e.replies, (t, r) => (f(), k("div", {
6685
6687
  key: t.id,
6686
6688
  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" : ""])
6687
6689
  }, [
6688
- I("div", ul, [I("div", dl, [
6689
- I("span", fl, D(_e(t) ? j(o).comments.ownedByYou : t.author_name), 1),
6690
- I("span", pl, D(ve(t.created_at)), 1),
6691
- t.updated_at === t.created_at ? A("", !0) : (f(), k("span", ml, " (" + D(j(o).comments.edited) + ") ", 1))
6692
- ]), I("div", hl, [_e(t) ? (f(), k("button", {
6690
+ I("div", ll, [I("div", ul, [
6691
+ I("span", dl, D(_e(t) ? j(o).comments.ownedByYou : t.author_name), 1),
6692
+ I("span", fl, D(ve(t.created_at)), 1),
6693
+ t.updated_at === t.created_at ? A("", !0) : (f(), k("span", pl, " (" + D(j(o).comments.edited) + ") ", 1))
6694
+ ]), I("div", ml, [_e(t) ? (f(), k("button", {
6693
6695
  key: 0,
6694
6696
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6695
6697
  title: j(o).comments.edit,
@@ -6697,7 +6699,7 @@ var kc = {
6697
6699
  }, [V(j(wi), {
6698
6700
  size: 11,
6699
6701
  "stroke-width": 2
6700
- })], 8, gl)) : A("", !0), _e(t) ? (f(), k("button", {
6702
+ })], 8, hl)) : A("", !0), _e(t) ? (f(), k("button", {
6701
6703
  key: 1,
6702
6704
  class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6703
6705
  title: j(o).comments.delete,
@@ -6705,26 +6707,26 @@ var kc = {
6705
6707
  }, [V(j(Fi), {
6706
6708
  size: 11,
6707
6709
  "stroke-width": 2
6708
- })], 8, _l)) : A("", !0)])]),
6709
- y.value === t.id ? (f(), k("div", vl, [c(I("textarea", {
6710
+ })], 8, gl)) : A("", !0)])]),
6711
+ y.value === t.id ? (f(), k("div", _l, [c(I("textarea", {
6710
6712
  "onUpdate:modelValue": n[7] ||= (e) => x.value = e,
6711
6713
  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)]",
6712
6714
  rows: "2",
6713
6715
  onKeydown: (e) => xe(e, t.id)
6714
- }, null, 40, yl), [[ae, x.value]]), I("div", bl, [I("button", {
6716
+ }, null, 40, vl), [[ae, x.value]]), I("div", yl, [I("button", {
6715
6717
  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)]",
6716
6718
  disabled: !x.value.trim() || j(u).isSubmitting.value,
6717
6719
  onClick: (e) => me(t.id)
6718
- }, D(j(o).comments.save), 9, xl), I("button", {
6720
+ }, D(j(o).comments.save), 9, bl), I("button", {
6719
6721
  class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6720
6722
  onClick: n[8] ||= (e) => B()
6721
- }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", Sl, D(t.body), 1)),
6722
- w.value === t.id ? (f(), k("div", Cl, [
6723
- I("span", wl, D(j(o).comments.deleteConfirm), 1),
6723
+ }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", xl, D(t.body), 1)),
6724
+ w.value === t.id ? (f(), k("div", Sl, [
6725
+ I("span", Cl, D(j(o).comments.deleteConfirm), 1),
6724
6726
  I("button", {
6725
6727
  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)]",
6726
6728
  onClick: (e) => he(t.id)
6727
- }, D(j(o).comments.delete), 9, Tl),
6729
+ }, D(j(o).comments.delete), 9, wl),
6728
6730
  I("button", {
6729
6731
  class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6730
6732
  onClick: n[9] ||= (e) => de()
@@ -6734,20 +6736,20 @@ var kc = {
6734
6736
  _: 2
6735
6737
  }, 1024),
6736
6738
  V(ie, { name: "tpl-replies" }, {
6737
- default: b(() => [_.value === e.id ? (f(), k("div", El, [I("div", Dl, [c(I("textarea", {
6739
+ default: b(() => [_.value === e.id ? (f(), k("div", Tl, [I("div", El, [c(I("textarea", {
6738
6740
  "onUpdate:modelValue": n[10] ||= (e) => v.value = e,
6739
6741
  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)]",
6740
6742
  placeholder: j(o).comments.replyPlaceholder,
6741
6743
  rows: "2",
6742
6744
  onKeydown: (t) => be(t, e.id)
6743
- }, null, 40, Ol), [[ae, v.value]]), I("div", kl, [I("button", {
6745
+ }, null, 40, Dl), [[ae, v.value]]), I("div", Ol, [I("button", {
6744
6746
  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)]",
6745
6747
  disabled: !v.value.trim() || j(u).isSubmitting.value,
6746
6748
  onClick: (t) => pe(e.id)
6747
6749
  }, [V(j(ki), {
6748
6750
  size: 14,
6749
6751
  "stroke-width": 2
6750
- })], 8, Al), I("button", {
6752
+ })], 8, kl), I("button", {
6751
6753
  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)]",
6752
6754
  onClick: n[11] ||= (e) => ce()
6753
6755
  }, [V(j(Bi), {
@@ -6757,7 +6759,7 @@ var kc = {
6757
6759
  _: 2
6758
6760
  }, 1024)
6759
6761
  ]))), 128))]))]),
6760
- I("div", jl, [ne.value ? (f(), k("div", Ml, D(j(o).comments.saveTemplateFirst), 1)) : (f(), k("div", Nl, [c(I("textarea", {
6762
+ I("div", Al, [ne.value ? (f(), k("div", jl, D(j(o).comments.saveTemplateFirst), 1)) : (f(), k("div", Ml, [c(I("textarea", {
6761
6763
  ref_key: "newCommentInput",
6762
6764
  ref: ee,
6763
6765
  "onUpdate:modelValue": n[12] ||= (e) => g.value = e,
@@ -6766,7 +6768,7 @@ var kc = {
6766
6768
  disabled: j(u).isSubmitting.value,
6767
6769
  rows: "2",
6768
6770
  onKeydown: ye
6769
- }, null, 40, Pl), [[ae, g.value]]), I("button", {
6771
+ }, null, 40, Nl), [[ae, g.value]]), I("button", {
6770
6772
  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)]",
6771
6773
  disabled: !g.value.trim() || j(u).isSubmitting.value,
6772
6774
  onClick: fe
@@ -6779,33 +6781,33 @@ var kc = {
6779
6781
  key: 1,
6780
6782
  size: 16,
6781
6783
  "stroke-width": 2
6782
- }))], 8, Fl)]))])
6784
+ }))], 8, Pl)]))])
6783
6785
  ])) : A("", !0)]),
6784
6786
  _: 1
6785
6787
  }));
6786
6788
  }
6787
- }), Ll = /* @__PURE__ */ e({ default: () => Rl }), Rl = /*#__PURE__*/ Gi(Il, [["__scopeId", "data-v-d204f573"]]), zl = {
6789
+ }), Il = /* @__PURE__ */ e({ default: () => Ll }), Ll = /*#__PURE__*/ Gi(Fl, [["__scopeId", "data-v-d204f573"]]), Rl = {
6788
6790
  key: 0,
6789
6791
  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)]"
6790
- }, Bl = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Vl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, Hl = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, Ul = {
6792
+ }, zl = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Bl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, Vl = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, Hl = {
6791
6793
  key: 0,
6792
6794
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6793
- }, Wl = { class: "tpl:flex tpl:w-full tpl:flex-col tpl:items-center tpl:gap-3" }, Gl = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Kl = {
6795
+ }, Ul = { class: "tpl:flex tpl:w-full tpl:flex-col tpl:items-center tpl:gap-3" }, Wl = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Gl = {
6794
6796
  key: 1,
6795
6797
  class: "tpl:flex tpl:flex-col tpl:gap-4"
6796
- }, ql = { class: "tpl:flex tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, Jl = {
6798
+ }, Kl = { class: "tpl:flex tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, ql = {
6797
6799
  key: 0,
6798
6800
  class: "tpl:flex tpl:flex-col tpl:gap-2"
6799
- }, Yl = { class: "tpl:relative tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, Xl = ["src", "alt"], Zl = {
6801
+ }, Jl = { class: "tpl:relative tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, Yl = ["src", "alt"], Xl = {
6800
6802
  key: 1,
6801
6803
  class: "tpl:flex tpl:h-32 tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2"
6802
- }, Ql = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, $l = { class: "tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, eu = { class: "tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, tu = ["accept"], nu = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, ru = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, iu = ["placeholder"], au = {
6804
+ }, Zl = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, Ql = { class: "tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, $l = { class: "tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, eu = ["accept"], tu = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, nu = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, ru = ["placeholder"], iu = {
6803
6805
  key: 0,
6804
6806
  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)]"
6805
- }, ou = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, su = { class: "tpl:flex tpl:gap-2" }, cu = {
6807
+ }, au = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, ou = { class: "tpl:flex tpl:gap-2" }, su = {
6806
6808
  key: 1,
6807
6809
  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)]"
6808
- }, lu = ["disabled"], uu = { class: "tpl:m-0 tpl:pt-1 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, du = /*@__PURE__*/ B({
6810
+ }, cu = ["disabled"], lu = { class: "tpl:m-0 tpl:pt-1 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, uu = /*@__PURE__*/ B({
6809
6811
  __name: "DesignReferenceSidebar",
6810
6812
  props: {
6811
6813
  visible: { type: Boolean },
@@ -6813,7 +6815,7 @@ var kc = {
6813
6815
  },
6814
6816
  emits: ["close", "apply"],
6815
6817
  setup(e, { emit: t }) {
6816
- let n = e, r = t, { t: i } = ta(), a = J(zn, "DesignReferenceSidebar"), o = Ms({
6818
+ let n = e, r = t, { t: i } = ta(), a = J(zn, "DesignReferenceSidebar"), o = js({
6817
6819
  authManager: J(mr, "DesignReferenceSidebar"),
6818
6820
  getTemplateId: () => a.state.template?.id ?? null,
6819
6821
  onApply: (e) => r("apply", e)
@@ -6885,7 +6887,7 @@ var kc = {
6885
6887
  "leave-from-class": "tpl:translate-x-0",
6886
6888
  "leave-to-class": "tpl:translate-x-full"
6887
6889
  }, {
6888
- default: b(() => [e.visible ? (f(), k("div", zl, [I("div", Bl, [I("div", Vl, [V(j(vi), {
6890
+ default: b(() => [e.visible ? (f(), k("div", Rl, [I("div", zl, [I("div", Bl, [V(j(vi), {
6889
6891
  size: 13,
6890
6892
  "stroke-width": 2
6891
6893
  }), I("span", null, D(j(i).designReference.title), 1)]), I("button", {
@@ -6894,8 +6896,8 @@ var kc = {
6894
6896
  }, [V(j(Bi), {
6895
6897
  size: 14,
6896
6898
  "stroke-width": 2
6897
- })])]), I("div", Hl, [j(o).isGenerating.value ? (f(), k("div", Ul, [I("div", Wl, [V(Yi), I("p", Gl, D(j(i).designReference.generating), 1)])])) : (f(), k("div", Kl, [
6898
- I("div", ql, [I("button", {
6899
+ })])]), I("div", Vl, [j(o).isGenerating.value ? (f(), k("div", Hl, [I("div", Ul, [V(Yi), I("p", Wl, D(j(i).designReference.generating), 1)])])) : (f(), k("div", Gl, [
6900
+ I("div", Kl, [I("button", {
6899
6901
  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",
6900
6902
  style: L({
6901
6903
  backgroundColor: l.value === "image" ? "var(--tpl-bg)" : "transparent",
@@ -6918,16 +6920,16 @@ var kc = {
6918
6920
  size: 12,
6919
6921
  "stroke-width": 2
6920
6922
  }), z(" " + D(j(i).designReference.uploadPdf), 1)], 4)]),
6921
- I("div", null, [u.value ? (f(), k("div", Jl, [I("div", Yl, [p.value ? (f(), k("img", {
6923
+ I("div", null, [u.value ? (f(), k("div", ql, [I("div", Jl, [p.value ? (f(), k("img", {
6922
6924
  key: 0,
6923
6925
  src: p.value,
6924
6926
  alt: u.value.name,
6925
6927
  class: "tpl:h-auto tpl:max-h-48 tpl:w-full tpl:object-contain"
6926
- }, null, 8, Xl)) : (f(), k("div", Zl, [V(j(hi), {
6928
+ }, null, 8, Yl)) : (f(), k("div", Xl, [V(j(hi), {
6927
6929
  size: 32,
6928
6930
  "stroke-width": 1.5,
6929
6931
  class: "tpl:text-[var(--tpl-text-dim)]"
6930
- }), I("span", Ql, D(u.value.name), 1)])), I("button", {
6932
+ }), I("span", Zl, D(u.value.name), 1)])), I("button", {
6931
6933
  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)]",
6932
6934
  onClick: x
6933
6935
  }, [V(j(Bi), {
@@ -6950,8 +6952,8 @@ var kc = {
6950
6952
  "stroke-width": 1.5,
6951
6953
  class: "tpl:text-[var(--tpl-text-dim)]"
6952
6954
  }),
6953
- I("span", $l, D(j(i).designReference.dropHint), 1),
6954
- I("span", eu, D(l.value === "image" ? j(i).designReference.acceptedImages : j(i).designReference.acceptedPdf), 1)
6955
+ I("span", Ql, D(j(i).designReference.dropHint), 1),
6956
+ I("span", $l, D(l.value === "image" ? j(i).designReference.acceptedImages : j(i).designReference.acceptedPdf), 1)
6955
6957
  ], 36)), I("input", {
6956
6958
  ref_key: "fileInput",
6957
6959
  ref: s,
@@ -6959,14 +6961,14 @@ var kc = {
6959
6961
  class: "tpl:hidden",
6960
6962
  accept: l.value === "image" ? "image/png,image/jpeg,image/webp" : "application/pdf",
6961
6963
  onChange: v
6962
- }, null, 40, tu)]),
6963
- I("div", nu, [I("label", ru, D(j(i).designReference.promptLabel), 1), c(I("textarea", {
6964
+ }, null, 40, eu)]),
6965
+ I("div", tu, [I("label", nu, D(j(i).designReference.promptLabel), 1), c(I("textarea", {
6964
6966
  "onUpdate:modelValue": n[4] ||= (e) => d.value = e,
6965
6967
  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"]]),
6966
6968
  placeholder: j(i).designReference.promptPlaceholder,
6967
6969
  rows: "3"
6968
- }, null, 8, iu), [[ae, d.value]])]),
6969
- m.value ? (f(), k("div", au, [I("p", ou, D(j(i).designReference.replaceWarning), 1), I("div", su, [I("button", {
6970
+ }, null, 8, ru), [[ae, d.value]])]),
6971
+ m.value ? (f(), k("div", iu, [I("p", au, D(j(i).designReference.replaceWarning), 1), I("div", ou, [I("button", {
6970
6972
  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)]",
6971
6973
  style: { "background-color": "transparent" },
6972
6974
  onClick: E
@@ -6974,7 +6976,7 @@ var kc = {
6974
6976
  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)]",
6975
6977
  onClick: T
6976
6978
  }, D(j(i).designReference.replaceConfirm), 1)])])) : A("", !0),
6977
- j(o).error.value ? (f(), k("div", cu, [V(j(si), {
6979
+ j(o).error.value ? (f(), k("div", su, [V(j(si), {
6978
6980
  size: 14,
6979
6981
  "stroke-width": 2,
6980
6982
  class: "tpl:mt-0.5 tpl:shrink-0"
@@ -6987,32 +6989,32 @@ var kc = {
6987
6989
  }, [V(j(vi), {
6988
6990
  size: 16,
6989
6991
  "stroke-width": 2
6990
- }), z(" " + D(j(i).designReference.generate), 1)], 8, lu)),
6991
- I("p", uu, D(j(i).aiMenu.disclaimer), 1)
6992
+ }), z(" " + D(j(i).designReference.generate), 1)], 8, cu)),
6993
+ I("p", lu, D(j(i).aiMenu.disclaimer), 1)
6992
6994
  ]))])])) : A("", !0)]),
6993
6995
  _: 1
6994
6996
  }));
6995
6997
  }
6996
- }), fu = /* @__PURE__ */ e({ default: () => pu }), pu = /*#__PURE__*/ Gi(du, [["__scopeId", "data-v-bdbf8d0d"]]), mu = ["disabled", "title"], hu = ["title"], gu = {
6998
+ }), du = /* @__PURE__ */ e({ default: () => fu }), fu = /*#__PURE__*/ Gi(uu, [["__scopeId", "data-v-bdbf8d0d"]]), pu = ["disabled", "title"], mu = ["title"], hu = {
6997
6999
  key: 0,
6998
7000
  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)]",
6999
7001
  style: {
7000
7002
  "backdrop-filter": "blur(8px)",
7001
7003
  "-webkit-backdrop-filter": "blur(8px)"
7002
7004
  }
7003
- }, _u = { 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)]" }, vu = {
7005
+ }, gu = { 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)]" }, _u = {
7004
7006
  key: 0,
7005
7007
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:py-8"
7006
- }, yu = {
7008
+ }, vu = {
7007
7009
  key: 1,
7008
7010
  class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
7009
- }, bu = {
7011
+ }, yu = {
7010
7012
  key: 2,
7011
7013
  class: "tpl:max-h-64 tpl:overflow-y-auto"
7012
- }, xu = ["disabled", "onClick"], Su = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, Cu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, wu = {
7014
+ }, bu = ["disabled", "onClick"], xu = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, Su = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Cu = {
7013
7015
  key: 0,
7014
7016
  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)]"
7015
- }, Tu = ["disabled", "title"], Eu = /*@__PURE__*/ B({
7017
+ }, wu = ["disabled", "title"], Tu = /*@__PURE__*/ B({
7016
7018
  __name: "SnapshotHistory",
7017
7019
  props: {
7018
7020
  snapshots: {},
@@ -7040,7 +7042,7 @@ var kc = {
7040
7042
  t !== -1 && (c.value = t, r("navigate", n.snapshots[t])), o.value = !1;
7041
7043
  }
7042
7044
  function _(e) {
7043
- let t = Oc(e, a.snapshotHistory, i, 7);
7045
+ let t = Dc(e, a.snapshotHistory, i, 7);
7044
7046
  return t === null ? new Date(e).toLocaleDateString(void 0, {
7045
7047
  month: "short",
7046
7048
  day: "numeric",
@@ -7063,7 +7065,7 @@ var kc = {
7063
7065
  }, [V(j(ii), {
7064
7066
  size: 14,
7065
7067
  "stroke-width": 2
7066
- })], 8, mu),
7068
+ })], 8, pu),
7067
7069
  I("button", {
7068
7070
  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)]",
7069
7071
  title: j(a).snapshotHistory.tooltip,
@@ -7075,19 +7077,19 @@ var kc = {
7075
7077
  class: F(["tpl:transition-transform tpl:duration-150", { "tpl:rotate-180": o.value }]),
7076
7078
  size: 10,
7077
7079
  "stroke-width": 2
7078
- }, null, 8, ["class"])], 8, hu),
7080
+ }, null, 8, ["class"])], 8, mu),
7079
7081
  V(ie, { name: "tpl-dropdown" }, {
7080
- default: b(() => [o.value ? (f(), k("div", gu, [I("div", _u, D(j(a).snapshotHistory.dropdownTitle), 1), e.isLoading ? (f(), k("div", vu, [V(j(xi), {
7082
+ default: b(() => [o.value ? (f(), k("div", hu, [I("div", gu, D(j(a).snapshotHistory.dropdownTitle), 1), e.isLoading ? (f(), k("div", _u, [V(j(xi), {
7081
7083
  class: "tpl:animate-spin tpl:text-[var(--tpl-primary)]",
7082
7084
  size: 20,
7083
7085
  "stroke-width": 2
7084
- })])) : e.snapshots.length === 0 ? (f(), k("div", yu, D(j(a).snapshotHistory.noSnapshots), 1)) : (f(), k("div", bu, [(f(!0), k(R, null, h(e.snapshots, (t) => (f(), k("button", {
7086
+ })])) : e.snapshots.length === 0 ? (f(), k("div", vu, D(j(a).snapshotHistory.noSnapshots), 1)) : (f(), k("div", yu, [(f(!0), k(R, null, h(e.snapshots, (t) => (f(), k("button", {
7085
7087
  key: t.id,
7086
7088
  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)]",
7087
7089
  style: { "background-color": "transparent" },
7088
7090
  disabled: e.isRestoring,
7089
7091
  onClick: (e) => g(t.id)
7090
- }, [I("div", Su, [I("div", Cu, [I("span", null, D(_(t.created_at)), 1), t.is_autosave ? (f(), k("span", wu, D(j(a).snapshotHistory.auto), 1)) : A("", !0)])])], 8, xu))), 128))]))])) : A("", !0)]),
7092
+ }, [I("div", xu, [I("div", Su, [I("span", null, D(_(t.created_at)), 1), t.is_autosave ? (f(), k("span", Cu, D(j(a).snapshotHistory.auto), 1)) : A("", !0)])])], 8, bu))), 128))]))])) : A("", !0)]),
7091
7093
  _: 1
7092
7094
  }),
7093
7095
  I("button", {
@@ -7098,66 +7100,66 @@ var kc = {
7098
7100
  }, [V(j(ai), {
7099
7101
  size: 14,
7100
7102
  "stroke-width": 2
7101
- })], 8, Tu)
7103
+ })], 8, wu)
7102
7104
  ], 512));
7103
7105
  }
7104
- }), Du = /* @__PURE__ */ e({ default: () => Ou }), Ou = Eu;
7106
+ }), Eu = /* @__PURE__ */ e({ default: () => Du }), Du = Tu;
7105
7107
  //#endregion
7106
7108
  //#region src/cloud/utils/scoringStyles.ts
7107
- function ku(e) {
7109
+ function Ou(e) {
7108
7110
  return e >= 80 ? "var(--tpl-success)" : e >= 60 ? "var(--tpl-warning)" : "var(--tpl-danger)";
7109
7111
  }
7110
- function Au(e) {
7112
+ function ku(e) {
7111
7113
  return e >= 80 ? "var(--tpl-success-light)" : e >= 60 ? "var(--tpl-warning-light)" : "var(--tpl-danger-light)";
7112
7114
  }
7113
- function ju(e) {
7115
+ function Au(e) {
7114
7116
  return e === "high" ? "var(--tpl-danger)" : e === "medium" ? "var(--tpl-warning)" : "var(--tpl-text-muted)";
7115
7117
  }
7116
- function Mu(e) {
7118
+ function ju(e) {
7117
7119
  return e === "high" ? "var(--tpl-danger-light)" : e === "medium" ? "var(--tpl-warning-light)" : "var(--tpl-bg-hover)";
7118
7120
  }
7119
7121
  //#endregion
7120
7122
  //#region src/cloud/components/TemplateScoringPanel.vue?vue&type=script&setup=true&lang.ts
7121
- var Nu = {
7123
+ var Mu = {
7122
7124
  key: 0,
7123
7125
  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)]"
7124
- }, Pu = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Fu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, Iu = { class: "tpl:flex tpl:items-center tpl:gap-1" }, Lu = ["title"], Ru = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, zu = {
7126
+ }, Nu = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Pu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, Fu = { class: "tpl:flex tpl:items-center tpl:gap-1" }, Iu = ["title"], Lu = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, Ru = {
7125
7127
  key: 0,
7126
7128
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
7127
- }, Bu = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Vu = {
7129
+ }, zu = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Bu = {
7128
7130
  key: 1,
7129
7131
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
7130
- }, Hu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Uu = {
7132
+ }, Vu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Hu = {
7131
7133
  key: 2,
7132
7134
  class: "tpl:flex tpl:flex-col tpl:gap-4"
7133
- }, Wu = { class: "tpl:text-xs tpl:font-medium tpl:uppercase tpl:tracking-wider tpl:text-[var(--tpl-text-muted)]" }, Gu = {
7135
+ }, Uu = { class: "tpl:text-xs tpl:font-medium tpl:uppercase tpl:tracking-wider tpl:text-[var(--tpl-text-muted)]" }, Wu = {
7134
7136
  key: 0,
7135
7137
  class: "tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
7136
- }, Ku = {
7138
+ }, Gu = {
7137
7139
  key: 0,
7138
7140
  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)]"
7139
- }, qu = ["onClick"], Ju = { class: "tpl:flex-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Yu = {
7141
+ }, Ku = ["onClick"], qu = { class: "tpl:flex-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Ju = {
7140
7142
  key: 0,
7141
7143
  class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]"
7142
- }, Xu = {
7144
+ }, Yu = {
7143
7145
  key: 0,
7144
7146
  class: "tpl:border-t tpl:border-[var(--tpl-border)]"
7145
- }, Zu = {
7147
+ }, Xu = {
7146
7148
  key: 0,
7147
7149
  class: "tpl:px-3 tpl:py-3 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
7148
- }, Qu = { class: "tpl:flex tpl:items-start tpl:gap-2" }, $u = { class: "tpl:flex-1 tpl:min-w-0" }, ed = { class: "tpl:flex tpl:items-start tpl:gap-1.5" }, td = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, nd = {
7150
+ }, Zu = { class: "tpl:flex tpl:items-start tpl:gap-2" }, Qu = { class: "tpl:flex-1 tpl:min-w-0" }, $u = { class: "tpl:flex tpl:items-start tpl:gap-1.5" }, ed = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, td = {
7149
7151
  key: 0,
7150
7152
  class: "tpl:mt-1 tpl:text-[11px] tpl:leading-snug tpl:text-[var(--tpl-text-dim)]"
7151
- }, rd = {
7153
+ }, nd = {
7152
7154
  key: 1,
7153
7155
  class: "tpl:mt-2 tpl:flex tpl:justify-center"
7154
- }, id = ["disabled", "onClick"], ad = {
7156
+ }, rd = ["disabled", "onClick"], id = {
7155
7157
  key: 0,
7156
7158
  class: "tpl:mt-1.5 tpl:text-[11px] tpl:text-[var(--tpl-danger)]"
7157
- }, od = {
7159
+ }, ad = {
7158
7160
  key: 3,
7159
7161
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
7160
- }, sd = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, cd = { 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)]" }, ld = /*@__PURE__*/ B({
7162
+ }, od = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, sd = { 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)]" }, cd = /*@__PURE__*/ B({
7161
7163
  __name: "TemplateScoringPanel",
7162
7164
  props: { visible: { type: Boolean } },
7163
7165
  emits: ["close"],
@@ -7208,10 +7210,10 @@ var Nu = {
7208
7210
  "leave-from-class": "tpl:translate-x-0",
7209
7211
  "leave-to-class": "tpl:translate-x-full"
7210
7212
  }, {
7211
- default: b(() => [e.visible ? (f(), k("div", Nu, [I("div", Pu, [I("div", Fu, [V(j(ji), {
7213
+ default: b(() => [e.visible ? (f(), k("div", Mu, [I("div", Nu, [I("div", Pu, [V(j(ji), {
7212
7214
  size: 13,
7213
7215
  "stroke-width": 2
7214
- }), I("span", null, D(j(i).scoring.title), 1)]), I("div", Iu, [j(o).scoringResult.value && !j(o).isScoring.value ? (f(), k("button", {
7216
+ }), I("span", null, D(j(i).scoring.title), 1)]), I("div", Fu, [j(o).scoringResult.value && !j(o).isScoring.value ? (f(), k("button", {
7215
7217
  key: 0,
7216
7218
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
7217
7219
  title: j(i).scoring.rescore,
@@ -7219,19 +7221,19 @@ var Nu = {
7219
7221
  }, [V(j(Di), {
7220
7222
  size: 14,
7221
7223
  "stroke-width": 2
7222
- })], 8, Lu)) : A("", !0), I("button", {
7224
+ })], 8, Iu)) : A("", !0), I("button", {
7223
7225
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
7224
7226
  onClick: n[1] ||= (e) => r("close")
7225
7227
  }, [V(j(Bi), {
7226
7228
  size: 14,
7227
7229
  "stroke-width": 2
7228
- })])])]), I("div", Ru, [j(o).isScoring.value ? (f(), k("div", zu, [I("p", Bu, D(j(i).scoring.scoring), 1), V(Yi, { class: "tpl:w-3/4" })])) : j(o).error.value && !j(o).scoringResult.value ? (f(), k("div", Vu, [
7230
+ })])])]), I("div", Lu, [j(o).isScoring.value ? (f(), k("div", Ru, [I("p", zu, D(j(i).scoring.scoring), 1), V(Yi, { class: "tpl:w-3/4" })])) : j(o).error.value && !j(o).scoringResult.value ? (f(), k("div", Bu, [
7229
7231
  V(j(si), {
7230
7232
  size: 32,
7231
7233
  "stroke-width": 1.5,
7232
7234
  class: "tpl:text-[var(--tpl-danger)]"
7233
7235
  }),
7234
- I("p", Hu, D(j(i).scoring.error), 1),
7236
+ I("p", Vu, D(j(i).scoring.error), 1),
7235
7237
  I("button", {
7236
7238
  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)]",
7237
7239
  onClick: n[2] ||= (e) => m()
@@ -7239,19 +7241,19 @@ var Nu = {
7239
7241
  size: 12,
7240
7242
  "stroke-width": 2
7241
7243
  }), z(" " + D(j(i).scoring.rescore), 1)])
7242
- ])) : j(o).scoringResult.value ? (f(), k("div", Uu, [
7244
+ ])) : j(o).scoringResult.value ? (f(), k("div", Hu, [
7243
7245
  I("div", {
7244
7246
  class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:p-5",
7245
- style: L({ backgroundColor: j(Au)(j(o).scoringResult.value.score) })
7247
+ style: L({ backgroundColor: j(ku)(j(o).scoringResult.value.score) })
7246
7248
  }, [
7247
7249
  I("span", {
7248
7250
  class: "tpl:text-4xl tpl:font-bold tpl:tabular-nums",
7249
- style: L({ color: j(ku)(j(o).scoringResult.value.score) })
7251
+ style: L({ color: j(Ou)(j(o).scoringResult.value.score) })
7250
7252
  }, D(j(o).scoringResult.value.score), 5),
7251
- I("span", Wu, D(j(i).scoring.overallScore), 1),
7252
- _() > 0 ? (f(), k("span", Gu, D(_()) + " " + D(j(i).scoring.findings), 1)) : A("", !0)
7253
+ I("span", Uu, D(j(i).scoring.overallScore), 1),
7254
+ _() > 0 ? (f(), k("span", Wu, D(_()) + " " + D(j(i).scoring.findings), 1)) : A("", !0)
7253
7255
  ], 4),
7254
- j(o).fixError.value ? (f(), k("div", Ku, [V(j(si), {
7256
+ j(o).fixError.value ? (f(), k("div", Gu, [V(j(si), {
7255
7257
  size: 14,
7256
7258
  "stroke-width": 2,
7257
7259
  class: "tpl:mt-0.5 tpl:shrink-0"
@@ -7266,40 +7268,40 @@ var Nu = {
7266
7268
  (f(), N(d(p[e]), {
7267
7269
  size: 14,
7268
7270
  "stroke-width": 2,
7269
- style: L({ color: j(ku)(j(o).scoringResult.value.categories[e].score) })
7271
+ style: L({ color: j(Ou)(j(o).scoringResult.value.categories[e].score) })
7270
7272
  }, null, 8, ["style"])),
7271
- I("span", Ju, D(j(i).scoring.categories[e]), 1),
7273
+ I("span", qu, D(j(i).scoring.categories[e]), 1),
7272
7274
  I("span", {
7273
7275
  class: "tpl:rounded-full tpl:px-2 tpl:py-0.5 tpl:text-xs tpl:font-semibold tpl:tabular-nums",
7274
7276
  style: L({
7275
- color: j(ku)(j(o).scoringResult.value.categories[e].score),
7276
- backgroundColor: j(Au)(j(o).scoringResult.value.categories[e].score)
7277
+ color: j(Ou)(j(o).scoringResult.value.categories[e].score),
7278
+ backgroundColor: j(ku)(j(o).scoringResult.value.categories[e].score)
7277
7279
  })
7278
7280
  }, D(j(o).scoringResult.value.categories[e].score), 5),
7279
- j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span", Yu, D(j(o).scoringResult.value.categories[e].findings.length), 1)) : A("", !0),
7281
+ j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span", Ju, D(j(o).scoringResult.value.categories[e].findings.length), 1)) : A("", !0),
7280
7282
  V(j(ri), {
7281
7283
  size: 12,
7282
7284
  "stroke-width": 2,
7283
7285
  class: F(["tpl:transition-transform tpl:duration-200 tpl:text-[var(--tpl-text-dim)]", c.value[e] ? "tpl:rotate-0" : "tpl:-rotate-90"])
7284
7286
  }, null, 8, ["class"])
7285
- ], 8, qu), c.value[e] ? (f(), k("div", Xu, [j(o).scoringResult.value.categories[e].findings.length === 0 ? (f(), k("div", Zu, 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", {
7287
+ ], 8, Ku), c.value[e] ? (f(), k("div", Yu, [j(o).scoringResult.value.categories[e].findings.length === 0 ? (f(), k("div", Xu, 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", {
7286
7288
  key: e.id,
7287
7289
  class: "tpl:border-t tpl:px-3 tpl:py-2.5 first:tpl:border-t-0 tpl:border-[var(--tpl-border-light)]"
7288
- }, [I("div", Qu, [(f(), N(d(j(e.severity === "high" ? si : e.severity === "medium" ? Ii : bi)), {
7290
+ }, [I("div", Zu, [(f(), N(d(j(e.severity === "high" ? si : e.severity === "medium" ? Ii : bi)), {
7289
7291
  size: 13,
7290
7292
  "stroke-width": 2,
7291
7293
  class: "tpl:mt-0.5 tpl:shrink-0",
7292
- style: L({ color: j(ju)(e.severity) })
7293
- }, null, 8, ["style"])), I("div", $u, [
7294
- I("div", ed, [I("span", {
7294
+ style: L({ color: j(Au)(e.severity) })
7295
+ }, null, 8, ["style"])), I("div", Qu, [
7296
+ I("div", $u, [I("span", {
7295
7297
  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",
7296
7298
  style: L({
7297
- color: j(ju)(e.severity),
7298
- backgroundColor: j(Mu)(e.severity)
7299
+ color: j(Au)(e.severity),
7300
+ backgroundColor: j(ju)(e.severity)
7299
7301
  })
7300
- }, D(j(i).scoring.severity[e.severity]), 5), I("span", td, D(e.message), 1)]),
7301
- e.suggestion ? (f(), k("p", nd, D(e.suggestion), 1)) : A("", !0),
7302
- e.blockId ? (f(), k("div", rd, [I("button", {
7302
+ }, D(j(i).scoring.severity[e.severity]), 5), I("span", ed, D(e.message), 1)]),
7303
+ e.suggestion ? (f(), k("p", td, D(e.suggestion), 1)) : A("", !0),
7304
+ e.blockId ? (f(), k("div", nd, [I("button", {
7303
7305
  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)]",
7304
7306
  style: { "background-color": "transparent" },
7305
7307
  disabled: j(o).fixingFindingId.value !== null,
@@ -7313,27 +7315,27 @@ var Nu = {
7313
7315
  key: 1,
7314
7316
  size: 11,
7315
7317
  "stroke-width": 2
7316
- })), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8, id), j(o).fixError.value ? (f(), k("p", ad, D(j(o).fixError.value), 1)) : A("", !0)])) : A("", !0)
7318
+ })), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8, rd), j(o).fixError.value ? (f(), k("p", id, D(j(o).fixError.value), 1)) : A("", !0)])) : A("", !0)
7317
7319
  ])])]))), 128))])) : A("", !0)])), 64))
7318
- ])) : (f(), k("div", od, [V(j(ji), {
7320
+ ])) : (f(), k("div", ad, [V(j(ji), {
7319
7321
  size: 32,
7320
7322
  "stroke-width": 1.5,
7321
7323
  class: "tpl:text-[var(--tpl-text-dim)]"
7322
- }), I("p", sd, D(j(i).scoring.emptyState), 1)])), I("p", cd, D(j(i).aiMenu.disclaimer), 1)])])) : A("", !0)]),
7324
+ }), I("p", od, D(j(i).scoring.emptyState), 1)])), I("p", sd, D(j(i).aiMenu.disclaimer), 1)])])) : A("", !0)]),
7323
7325
  _: 1
7324
7326
  }));
7325
7327
  }
7326
- }), ud = /* @__PURE__ */ e({ default: () => dd }), dd = /*#__PURE__*/ Gi(ld, [["__scopeId", "data-v-c23c73d4"]]), fd = ["aria-busy"], pd = {
7328
+ }), ld = /* @__PURE__ */ e({ default: () => ud }), ud = /*#__PURE__*/ Gi(cd, [["__scopeId", "data-v-c23c73d4"]]), dd = ["aria-busy"], fd = {
7327
7329
  id: "tpl-test-email-title",
7328
7330
  class: "tpl:mb-4 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
7329
- }, md = { class: "tpl:mb-3" }, hd = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, gd = ["value"], _d = ["disabled"], vd = ["value"], yd = {
7331
+ }, pd = { class: "tpl:mb-3" }, md = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, hd = ["value"], gd = ["disabled"], _d = ["value"], vd = {
7330
7332
  key: 0,
7331
7333
  role: "alert",
7332
7334
  class: "tpl:mb-3 tpl:text-xs tpl:text-[var(--tpl-danger)]"
7333
- }, bd = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, xd = ["disabled"], Sd = ["disabled"], Cd = {
7335
+ }, yd = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, bd = ["disabled"], xd = ["disabled"], Sd = {
7334
7336
  key: 0,
7335
7337
  class: "tpl:flex tpl:items-center tpl:gap-1.5"
7336
- }, wd = { key: 1 }, Td = /*@__PURE__*/ B({
7338
+ }, Cd = { key: 1 }, wd = /*@__PURE__*/ B({
7337
7339
  __name: "TestEmailModal",
7338
7340
  props: {
7339
7341
  visible: { type: Boolean },
@@ -7356,7 +7358,7 @@ var Nu = {
7356
7358
  function l(e) {
7357
7359
  e.key === "Enter" && !e.shiftKey && (e.preventDefault(), o()), e.key === "Escape" && s();
7358
7360
  }
7359
- return (t, n) => (f(), N(ps, {
7361
+ return (t, n) => (f(), N(fs, {
7360
7362
  visible: e.visible,
7361
7363
  onClose: s,
7362
7364
  onKeydown: l
@@ -7372,14 +7374,14 @@ var Nu = {
7372
7374
  "box-shadow": "var(--tpl-shadow-xl)"
7373
7375
  }
7374
7376
  }, [
7375
- I("h3", pd, D(j(i).testEmail.title), 1),
7376
- I("div", md, [I("label", hd, D(j(i).testEmail.recipientLabel), 1), e.allowedEmails.length === 1 ? (f(), k("input", {
7377
+ I("h3", fd, D(j(i).testEmail.title), 1),
7378
+ I("div", pd, [I("label", md, D(j(i).testEmail.recipientLabel), 1), e.allowedEmails.length === 1 ? (f(), k("input", {
7377
7379
  key: 0,
7378
7380
  type: "text",
7379
7381
  value: a.value,
7380
7382
  disabled: "",
7381
7383
  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)]"
7382
- }, null, 8, gd)) : c((f(), k("select", {
7384
+ }, null, 8, hd)) : c((f(), k("select", {
7383
7385
  key: 1,
7384
7386
  "onUpdate:modelValue": n[0] ||= (e) => a.value = e,
7385
7387
  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)]",
@@ -7387,29 +7389,29 @@ var Nu = {
7387
7389
  }, [(f(!0), k(R, null, h(e.allowedEmails, (e) => (f(), k("option", {
7388
7390
  key: e,
7389
7391
  value: e
7390
- }, D(e), 9, vd))), 128))], 8, _d)), [[w, a.value]])]),
7391
- e.error ? (f(), k("p", yd, D(e.error), 1)) : A("", !0),
7392
- I("div", bd, [I("button", {
7392
+ }, D(e), 9, _d))), 128))], 8, gd)), [[w, a.value]])]),
7393
+ e.error ? (f(), k("p", vd, D(e.error), 1)) : A("", !0),
7394
+ I("div", yd, [I("button", {
7393
7395
  type: "button",
7394
7396
  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 }]),
7395
7397
  disabled: e.isSending,
7396
7398
  onClick: s
7397
- }, D(j(i).testEmail.cancel), 11, xd), I("button", {
7399
+ }, D(j(i).testEmail.cancel), 11, bd), I("button", {
7398
7400
  type: "button",
7399
7401
  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)]",
7400
7402
  disabled: !a.value || e.isSending,
7401
7403
  onClick: o
7402
- }, [e.isSending ? (f(), k("span", Cd, [V(j(xi), {
7404
+ }, [e.isSending ? (f(), k("span", Sd, [V(j(xi), {
7403
7405
  class: "tpl:animate-spin",
7404
7406
  size: 12,
7405
7407
  "stroke-width": 2
7406
- }), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span", wd, D(j(i).testEmail.send), 1))], 8, Sd)])
7407
- ], 8, fd)]),
7408
+ }), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span", Cd, D(j(i).testEmail.send), 1))], 8, xd)])
7409
+ ], 8, dd)]),
7408
7410
  _: 1
7409
7411
  }, 8, ["visible"]));
7410
7412
  }
7411
- }), Ed = /* @__PURE__ */ e({ default: () => Dd }), Dd = Td;
7413
+ }), Td = /* @__PURE__ */ e({ default: () => Ed }), Ed = wd;
7412
7414
  //#endregion
7413
- export { ca as $, ir as $t, us as A, ut as An, si as At, uo as B, ve as Bn, cr as Bt, xs as C, dt as Cn, yi as Ct, hs as D, ht as Dn, di as Dt, ms as E, yt as En, fi as Et, Io as F, We as Fn, Wr as Ft, Ia as G, Ce as Gn, yr as Gt, eo as H, _e as Hn, Kn as Ht, No as I, ye as In, jr as It, Oa as J, xe as Jn, Jn as Jt, Fa as K, Ee as Kn, gr as Kt, Oo as L, De as Ln, wr as Lt, Qo as M, ct as Mn, ri as Mt, Ko as N, st as Nn, ni as Nt, ps as O, mt as On, ui as Ot, Uo as P, W as Pn, X as Pt, la as Q, ue as Qn, Un as Qt, Eo as R, be as Rn, Y as Rt, Ss as S, Ot as Sn, bi as St, Z as T, Ct as Tn, pi as Tt, Xa as U, he as Un, qn as Ut, lo as V, Te as Vn, mr as Vt, Ra as W, Se as Wn, lr as Wt, _a as X, de as Xn, sr as Xt, ya as Y, pe as Yn, Xn as Yt, ha as Z, fe as Zn, zn as Zt, Ps as _, on as _n, Di as _t, Ll as a, vr as an, Qi as at, As as b, un as bn, Si as bt, Zs as c, Rn as cn, Bi as ct, Ws as d, vn as dn, Fi as dt, tr as en, ia as et, Us as f, En as fn, Pi as ft, zs as g, An as gn, ki as gt, Bs as h, Nn as hn, Ai as ht, fu as i, _r as in, ta as it, cs as j, lt as jn, ai as jt, ds as k, St as kn, li as kt, Ks as l, Gn as ln, Ri as lt, Vs as m, q as mn, ji as mt, ud as n, or as nn, na as nt, Cc as o, dr as on, Gi as ot, Hs as p, Dn as pn, Ni as pt, Aa as q, ge as qn, Hn as qt, Du as r, Yn as rn, ea as rt, Qs as s, Wn as sn, Wi as st, Ed as t, Qn as tn, ra as tt, Gs as u, J as un, Ii as ut, Ns as v, an as vn, wi as vt, $ as w, xt as wn, vi as wt, Es as x, Lt as xn, xi as xt, js as y, ln as yn, Ci as yt, fo as z, we as zn, hr as zt };
7415
+ export { la as $, ue as $n, Un as $t, ls as A, St as An, li as At, uo as B, we as Bn, hr as Bt, bs as C, Ot as Cn, bi as Ct, ms as D, yt as Dn, fi as Dt, ps as E, Ct as En, pi as Et, Fo as F, W as Fn, X as Ft, Ia as G, Se as Gn, lr as Gt, eo as H, Te as Hn, mr as Ht, Mo as I, We as In, Wr as It, Oa as J, ge as Jn, Hn as Jt, Fa as K, Ce as Kn, yr as Kt, Oo as L, ye as Ln, jr as Lt, Zo as M, lt as Mn, ai as Mt, Go as N, ct as Nn, ri as Nt, fs as O, ht as On, di as Ot, Ho as P, st as Pn, ni as Pt, pa as Q, fe as Qn, zn as Qt, Eo as R, De as Rn, wr as Rt, xs as S, Lt as Sn, xi as St, Z as T, xt as Tn, vi as Tt, Xa as U, _e as Un, Kn as Ut, lo as V, ve as Vn, cr as Vt, Ra as W, he as Wn, qn as Wt, _a as X, pe as Xn, Xn as Xt, ya as Y, xe as Yn, Jn as Yt, ha as Z, de as Zn, sr as Zt, Ns as _, An as _n, ki as _t, Il as a, _r as an, ta as at, ks as b, ln as bn, Ci as bt, Xs as c, Wn as cn, Wi as ct, Us as d, J as dn, Ii as dt, ir as en, ca as et, Hs as f, vn as fn, Fi as ft, Rs as g, Nn as gn, Ai as gt, zs as h, q as hn, ji as ht, du as i, Yn as in, ea as it, ss as j, ut as jn, si as jt, us as k, mt as kn, ui as kt, Gs as l, Rn as ln, Bi as lt, Bs as m, Dn as mn, Ni as mt, ld as n, Qn as nn, ra as nt, Sc as o, vr as on, Qi as ot, Vs as p, En as pn, Pi as pt, Aa as q, Ee as qn, gr as qt, Eu as r, or as rn, na as rt, Zs as s, dr as sn, Gi as st, Td as t, tr as tn, ia as tt, Ws as u, Gn as un, Ri as ut, Ms as v, on as vn, Di as vt, $ as w, dt as wn, yi as wt, Ts as x, un as xn, Si as xt, As as y, an as yn, wi as yt, fo as z, be as zn, Y as zt };
7414
7416
 
7415
- //# sourceMappingURL=features-C-cjT_8L.js.map
7417
+ //# sourceMappingURL=features-Bo7H8WNI.js.map