@templatical/editor 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/dist/{AiChatSidebar-D30WPhbv.js → AiChatSidebar-Dz5bH1z3.js} +13 -13
  2. package/dist/{AiFeatureMenu-B5CJX5zr.js → AiFeatureMenu-D2Xn0jFx.js} +7 -7
  3. package/dist/{BlockIssueBadge-CkB4Yyz2.js → BlockIssueBadge-CnqD1cGo.js} +5 -5
  4. package/dist/{CloudEditor-nT-R769W.js → CloudEditor-BizZwsfD.js} +158 -155
  5. package/dist/{CollaboratorBar-CwhlXODK.js → CollaboratorBar-Bn2JDu6l.js} +4 -4
  6. package/dist/{CommentsSidebar-gpZMMI5w.js → CommentsSidebar-BAG6rdVC.js} +12 -12
  7. package/dist/{CountdownBlock-BNvuXucv.js → CountdownBlock-B_Hr9Bm9.js} +3 -3
  8. package/dist/{CountdownToolbar-Dl82DAmI.js → CountdownToolbar-DaqDLKLk.js} +3 -3
  9. package/dist/{DesignReferenceSidebar-Bs5AMxVd.js → DesignReferenceSidebar-I9LWjvrj.js} +9 -9
  10. package/dist/{IssuesPanel-CqQa2BtU.js → IssuesPanel-B32Ifp4x.js} +8 -8
  11. package/dist/{LoadingTrack-xCOLUR3o.js → LoadingTrack-UTqOUN4O.js} +1 -1
  12. package/dist/{ModuleBrowserModal-BWWgF0LC.js → ModuleBrowserModal-DodRped1.js} +10 -10
  13. package/dist/{ModulePreviewCanvas-D7Tk5HOt.js → ModulePreviewCanvas-DhcnddJF.js} +3 -3
  14. package/dist/{NumberWithSuffix-DVy5HxMi.js → NumberWithSuffix-DB7GyyCI.js} +3 -3
  15. package/dist/{ParagraphEditor-DVSGdMOo.js → ParagraphEditor-pJA9BHAL.js} +25 -25
  16. package/dist/{RichTextEditorContent-DN-fRjMa.js → RichTextEditorContent-dTGSUff_.js} +6 -6
  17. package/dist/{SaveModuleDialog-CkEYkyVD.js → SaveModuleDialog-D634e99d.js} +7 -7
  18. package/dist/{SnapshotHistory-Nx9wrlbF.js → SnapshotHistory-m_nGAHlb.js} +9 -9
  19. package/dist/{TemplateScoringPanel-BG9M-29t.js → TemplateScoringPanel-BOQh9neV.js} +14 -14
  20. package/dist/{TestEmailModal-CRjtEs6S.js → TestEmailModal-DOcwoKkc.js} +5 -5
  21. package/dist/{TitleEditor-CvtV4pCA.js → TitleEditor-t6JMWamY.js} +12 -12
  22. package/dist/{TplModal-BudEYVcJ.js → TplModal-BAtbfDB0.js} +4 -4
  23. package/dist/{blockTypeIcons-Dd-UvfnC.js → blockTypeIcons-C4lXx3Au.js} +2 -2
  24. package/dist/bundle-stats.json +6 -6
  25. package/dist/cdn/chunks/{AiFeatureMenu-DKOv8VnB.js → AiFeatureMenu-BeOyHAoZ.js} +3 -3
  26. package/dist/cdn/chunks/{AiFeatureMenu-DKOv8VnB.js.map → AiFeatureMenu-BeOyHAoZ.js.map} +1 -1
  27. package/dist/cdn/chunks/{BlockIssueBadge-DpiSTwM7.js → BlockIssueBadge-C6YilQdl.js} +3 -3
  28. package/dist/cdn/chunks/{BlockIssueBadge-DpiSTwM7.js.map → BlockIssueBadge-C6YilQdl.js.map} +1 -1
  29. package/dist/cdn/chunks/{CloudEditor-xc_uOEgn.js → CloudEditor-DEA37rdW.js} +35 -32
  30. package/dist/cdn/chunks/CloudEditor-DEA37rdW.js.map +1 -0
  31. package/dist/cdn/chunks/{CollaboratorBar-VWfPri_h.js → CollaboratorBar-CKW7jOW4.js} +4 -4
  32. package/dist/cdn/chunks/{CollaboratorBar-VWfPri_h.js.map → CollaboratorBar-CKW7jOW4.js.map} +1 -1
  33. package/dist/cdn/chunks/{CountdownBlock-BKsCWboK.js → CountdownBlock-DU9ga9Ki.js} +3 -3
  34. package/dist/cdn/chunks/{CountdownBlock-BKsCWboK.js.map → CountdownBlock-DU9ga9Ki.js.map} +1 -1
  35. package/dist/cdn/chunks/{CountdownToolbar-BLtECDNb.js → CountdownToolbar-BHWsxth7.js} +4 -4
  36. package/dist/cdn/chunks/{CountdownToolbar-BLtECDNb.js.map → CountdownToolbar-BHWsxth7.js.map} +1 -1
  37. package/dist/cdn/chunks/{IssuesPanel-BW2piyvs.js → IssuesPanel-BkYhij39.js} +4 -4
  38. package/dist/cdn/chunks/{IssuesPanel-BW2piyvs.js.map → IssuesPanel-BkYhij39.js.map} +1 -1
  39. package/dist/cdn/chunks/{ModuleBrowserModal-TLlKpvjX.js → ModuleBrowserModal-D51w942J.js} +6 -6
  40. package/dist/cdn/chunks/{ModuleBrowserModal-TLlKpvjX.js.map → ModuleBrowserModal-D51w942J.js.map} +1 -1
  41. package/dist/cdn/chunks/{ModulePreviewCanvas-wu7y-vrh.js → ModulePreviewCanvas-BqTqcKHS.js} +3 -3
  42. package/dist/cdn/chunks/{ModulePreviewCanvas-wu7y-vrh.js.map → ModulePreviewCanvas-BqTqcKHS.js.map} +1 -1
  43. package/dist/cdn/chunks/{NumberWithSuffix-DxoUtTMr.js → NumberWithSuffix-DuUcF2zG.js} +3 -3
  44. package/dist/cdn/chunks/{NumberWithSuffix-DxoUtTMr.js.map → NumberWithSuffix-DuUcF2zG.js.map} +1 -1
  45. package/dist/cdn/chunks/{ParagraphEditor-DvxIO2LN.js → ParagraphEditor-Bqjn3ZNm.js} +19 -19
  46. package/dist/cdn/chunks/{ParagraphEditor-DvxIO2LN.js.map → ParagraphEditor-Bqjn3ZNm.js.map} +1 -1
  47. package/dist/cdn/chunks/{RichTextEditorContent-Dm9GXJmo.js → RichTextEditorContent-mIkkb5EK.js} +3 -3
  48. package/dist/cdn/chunks/{RichTextEditorContent-Dm9GXJmo.js.map → RichTextEditorContent-mIkkb5EK.js.map} +1 -1
  49. package/dist/cdn/chunks/{SaveModuleDialog-BRAdVcYM.js → SaveModuleDialog-Felfmkcj.js} +3 -3
  50. package/dist/cdn/chunks/{SaveModuleDialog-BRAdVcYM.js.map → SaveModuleDialog-Felfmkcj.js.map} +1 -1
  51. package/dist/cdn/chunks/{TitleEditor-D3gPRd0x.js → TitleEditor-Dcldr8D6.js} +9 -9
  52. package/dist/cdn/chunks/{TitleEditor-D3gPRd0x.js.map → TitleEditor-Dcldr8D6.js.map} +1 -1
  53. package/dist/cdn/chunks/{blockTypeIcons-C2cm4RjU.js → blockTypeIcons-D05Wqf5u.js} +3 -3
  54. package/dist/cdn/chunks/{blockTypeIcons-C2cm4RjU.js.map → blockTypeIcons-D05Wqf5u.js.map} +1 -1
  55. package/dist/cdn/chunks/{draggable-BwWMFq33.js → draggable-J_1CPXYc.js} +1254 -1253
  56. package/dist/cdn/chunks/draggable-J_1CPXYc.js.map +1 -0
  57. package/dist/cdn/chunks/{extensions-SS1ywPUR.js → extensions-CNmpC18A.js} +108 -105
  58. package/dist/cdn/chunks/{extensions-SS1ywPUR.js.map → extensions-CNmpC18A.js.map} +1 -1
  59. package/dist/cdn/chunks/{features-CwZTdcbt.js → features-_ar9QbVv.js} +264 -258
  60. package/dist/cdn/chunks/{features-CwZTdcbt.js.map → features-_ar9QbVv.js.map} +1 -1
  61. package/dist/cdn/chunks/{icons-CbNEr1kc.js → icons-CnwCLJX-.js} +12 -12
  62. package/dist/cdn/chunks/{icons-CbNEr1kc.js.map → icons-CnwCLJX-.js.map} +1 -1
  63. package/dist/cdn/chunks/{media-library-BRpHZOl7.js → media-library-9jyt7Bf9.js} +10 -6
  64. package/dist/cdn/chunks/media-library-9jyt7Bf9.js.map +1 -0
  65. package/dist/cdn/chunks/{quality-BqJqIPRU.js → quality-CO9mj_RH.js} +2 -2
  66. package/dist/cdn/chunks/{quality-BqJqIPRU.js.map → quality-CO9mj_RH.js.map} +1 -1
  67. package/dist/cdn/chunks/{renderer-CGVYkdUi.js → renderer-m6XTCWCL.js} +55 -54
  68. package/dist/cdn/chunks/renderer-m6XTCWCL.js.map +1 -0
  69. package/dist/cdn/chunks/{src-CvzfrFlT.js → src-DfMSYqvE.js} +5 -5
  70. package/dist/cdn/chunks/{src-CvzfrFlT.js.map → src-DfMSYqvE.js.map} +1 -1
  71. package/dist/cdn/chunks/{styles-2P5yvfsS.js → styles-1uFWdD5T.js} +17 -17
  72. package/dist/cdn/chunks/{styles-2P5yvfsS.js.map → styles-1uFWdD5T.js.map} +1 -1
  73. package/dist/cdn/chunks/{tiptap-BBbH3IT9.js → tiptap-CJbIm_hE.js} +5 -5
  74. package/dist/cdn/chunks/{tiptap-BBbH3IT9.js.map → tiptap-CJbIm_hE.js.map} +1 -1
  75. package/dist/cdn/editor.css +1 -1
  76. package/dist/cdn/editor.js +7 -7
  77. package/dist/{check-ChQyfxJ3.js → check-Bs6_uQpm.js} +1 -1
  78. package/dist/{chevron-down-DJjo0jSV.js → chevron-down-so1rnGwF.js} +1 -1
  79. package/dist/{circle-alert-CPH6l3Lc.js → circle-alert-CrKv0AuW.js} +1 -1
  80. package/dist/{clock-DHl_BIkU.js → clock-Cpx6GYpa.js} +1 -1
  81. package/dist/{cloud-BBC7bv8q.js → cloud-bHhCNRZa.js} +80 -74
  82. package/dist/{createLucideIcon-XgXOJ05E.js → createLucideIcon-DFBxEm5K.js} +3 -3
  83. package/dist/{dist-C0jo8wtG.js → dist-0RguD1vS.js} +1 -1
  84. package/dist/{dist-CNLAS2v2.js → dist-2-A7SaKm.js} +3 -3
  85. package/dist/{dist-UK-lbEBc.js → dist-74n2Mqc6.js} +1 -1
  86. package/dist/{dist-BzuC8o3y.js → dist-B3CcePtK.js} +3 -3
  87. package/dist/{dist-D8C6jIXM.js → dist-BejBMbBX.js} +3 -3
  88. package/dist/{dist-DILjuzSv.js → dist-Bvje_Tqb.js} +1 -1
  89. package/dist/{dist-BDgf2G-V.js → dist-BxHa6kIT.js} +3 -3
  90. package/dist/{dist-CUpJmrjt.js → dist-CIK3BYgh.js} +1 -1
  91. package/dist/{dist-C8wMh_gi.js → dist-CMkZaqX1.js} +1 -1
  92. package/dist/{dist-BxP6TB0l.js → dist-CoaWXQ7N.js} +1 -1
  93. package/dist/{dist-D5lmdi1F.js → dist-D1YvgM6p.js} +1 -1
  94. package/dist/{dist-DYO-w_Jf.js → dist-DJ5YJLXn.js} +1 -1
  95. package/dist/{dist-DXaxGLsw.js → dist-DwEpKyry.js} +1 -1
  96. package/dist/{extensions-C87ZSllQ.js → extensions-C810eSzv.js} +107 -104
  97. package/dist/{image-up-CPBCOMit.js → image-up-kMLE5GsI.js} +1 -1
  98. package/dist/{info-DIY9mguM.js → info-xqRxLfNz.js} +1 -1
  99. package/dist/{keys-Vt3XipJl.js → keys-BoYBr3PU.js} +1 -1
  100. package/dist/{list-checks-CSCyu3fH.js → list-checks-C81htkBJ.js} +1 -1
  101. package/dist/{loader-circle-Rz_4vJLH.js → loader-circle-C6cZPIum.js} +1 -1
  102. package/dist/{message-circle-D-umK_MU.js → message-circle-dqOBRe07.js} +1 -1
  103. package/dist/{refresh-cw-CvWF4jfR.js → refresh-cw-DCjNd6o0.js} +1 -1
  104. package/dist/{scan-line-wanvAFDr.js → scan-line-DXz0nZVJ.js} +1 -1
  105. package/dist/{send-BhbhbIFT.js → send-C4uH_WaI.js} +1 -1
  106. package/dist/{shield-check-CXPPMWth.js → shield-check-B3U68ssA.js} +1 -1
  107. package/dist/{sparkles-CrUN0KWY.js → sparkles-CsDweGUy.js} +1 -1
  108. package/dist/style.css +1 -1
  109. package/dist/{styles-DOjWbqA9.js → styles-CBlNpqL9.js} +35 -35
  110. package/dist/templatical-editor.js +5 -5
  111. package/dist/{text-align-end-Bkq8oBrD.js → text-align-start-BkKQePFp.js} +11 -11
  112. package/dist/{trash-2-BpY5BCLT.js → trash-2-BIOkaEz1.js} +1 -1
  113. package/dist/{triangle-alert-MwJBKR2e.js → triangle-alert-Bbgu6uUG.js} +1 -1
  114. package/dist/{useAliveFlag-BLyG8L4d.js → useAliveFlag-Bc99FWyR.js} +1 -1
  115. package/dist/{useCloudI18n-sRfoQCZY.js → useCloudI18n-DiwsLi6z.js} +2 -2
  116. package/dist/{useEditorCore-DxApq2hZ.js → useEditorCore-7c1QpPlw.js} +20 -20
  117. package/dist/{useI18n-lF6hYgZu.js → useI18n-DskZMfRJ.js} +2 -2
  118. package/dist/{useMergeTag-CZVI7Xe5.js → useMergeTag-Co4xYwG6.js} +3 -3
  119. package/dist/usePopoverRoot-DYH_gX8o.js +8 -0
  120. package/dist/{vue.runtime.esm-bundler-BDSGA5hA.js → vue.runtime.esm-bundler-D0Hg03Ub.js} +1289 -1288
  121. package/dist/{x-rcnxRG8Y.js → x-DWU6NCuE.js} +1 -1
  122. package/package.json +9 -9
  123. package/dist/cdn/chunks/CloudEditor-xc_uOEgn.js.map +0 -1
  124. package/dist/cdn/chunks/draggable-BwWMFq33.js.map +0 -1
  125. package/dist/cdn/chunks/media-library-BRpHZOl7.js.map +0 -1
  126. package/dist/cdn/chunks/renderer-CGVYkdUi.js.map +0 -1
  127. package/dist/usePopoverRoot-p2BanBI7.js +0 -8
  128. package/dist/{dist-GAmhYvUK.js → dist-BufRk8ZY.js} +1 -1
@@ -1,5 +1,5 @@
1
1
  import { n as e, r as t } from "./rolldown-runtime-Dqa2HsxW.js";
2
- import { $ as n, A as r, B as i, C as a, F as o, G as s, H as c, J as l, K as u, L as d, M as f, N as p, O as m, P as h, Q as g, S as _, T as v, U as y, V as b, X as x, Y as S, Z as C, a as w, at as ee, b as T, c as E, ct as D, d as te, et as ne, f as O, g as k, h as A, it as j, k as re, l as M, m as N, n as ie, nt as P, o as ae, ot as F, p as I, rt as oe, s as se, st as L, t as ce, u as R, v as z, w as le, x as B, y as V, z as H } from "./draggable-BwWMFq33.js";
2
+ import { $ as n, A as r, B as i, C as a, F as o, G as s, H as c, J as l, K as u, L as d, M as f, N as p, O as m, P as h, Q as g, S as _, T as v, U as y, V as b, X as x, Y as S, Z as C, a as w, at as ee, b as T, c as E, ct as D, d as te, et as ne, f as O, g as k, h as A, it as j, k as re, l as M, m as N, n as ie, nt as P, o as ae, ot as F, p as I, rt as oe, s as se, st as L, t as ce, u as R, v as z, w as le, x as B, y as V, z as H } from "./draggable-J_1CPXYc.js";
3
3
  //#region src/constants/timeouts.ts
4
4
  var ue = 3e4, de = 4e3, fe = 5e3, pe = {
5
5
  1: 36,
@@ -826,7 +826,7 @@ function Pt(e, t) {
826
826
  };
827
827
  }
828
828
  //#endregion
829
- //#region ../../node_modules/.pnpm/@vueuse+shared@14.3.0_vue@3.5.34_typescript@6.0.3_/node_modules/@vueuse/shared/dist/index.js
829
+ //#region ../../node_modules/.pnpm/@vueuse+shared@14.3.0_vue@3.5.35_typescript@6.0.3_/node_modules/@vueuse/shared/dist/index.js
830
830
  function Ft(e, t) {
831
831
  return s() ? (l(e, t), !0) : !1;
832
832
  }
@@ -985,7 +985,7 @@ function ln(e, t, n) {
985
985
  });
986
986
  }
987
987
  //#endregion
988
- //#region ../../node_modules/.pnpm/@vueuse+core@14.3.0_vue@3.5.34_typescript@6.0.3_/node_modules/@vueuse/core/dist/index.js
988
+ //#region ../../node_modules/.pnpm/@vueuse+core@14.3.0_vue@3.5.35_typescript@6.0.3_/node_modules/@vueuse/core/dist/index.js
989
989
  var un = zt ? window : void 0, dn = zt ? window.document : void 0, fn = zt ? window.navigator : void 0;
990
990
  function K(e) {
991
991
  let t = P(e);
@@ -1449,7 +1449,7 @@ function pr(e) {
1449
1449
  o || l();
1450
1450
  async function l() {
1451
1451
  try {
1452
- let t = await import("./quality-BqJqIPRU.js").then((e) => e.t);
1452
+ let t = await import("./quality-CO9mj_RH.js").then((e) => e.t);
1453
1453
  if (c) return;
1454
1454
  a.value = { lintTemplate: t.lintTemplate }, r.value = !0, u(), s = cn(e.content, u, {
1455
1455
  debounce: e.debounce ?? 500,
@@ -1924,7 +1924,7 @@ function Br() {
1924
1924
  return v(zr, {});
1925
1925
  }
1926
1926
  //#endregion
1927
- //#region ../../node_modules/.pnpm/@lucide+vue@1.16.0_vue@3.5.34_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
1927
+ //#region ../../node_modules/.pnpm/@lucide+vue@1.17.0_vue@3.5.35_typescript@6.0.3_/node_modules/@lucide/vue/dist/esm/Icon.mjs
1928
1928
  var Vr = ({ name: e, iconNode: t, absoluteStrokeWidth: n, "absolute-stroke-width": r, strokeWidth: i, "stroke-width": o, size: s, color: c, ...l }, { slots: u }) => {
1929
1929
  let { size: d, color: f, strokeWidth: p = 2, absoluteStrokeWidth: m = !1, class: h = "" } = Br(), g = O(() => {
1930
1930
  let e = Nr(n) || Nr(r) || n === !0 || r === !0 || m === !0, t = i || o || p || Rr["stroke-width"];
@@ -3148,7 +3148,7 @@ var ga = ["href"], _a = ["src", "alt"], va = ["src", "alt"], ya = {
3148
3148
  "poster"
3149
3149
  ]);
3150
3150
  function Pa(e, t) {
3151
- let n = e.trim();
3151
+ let n = e.replace(/[\t\n\r]/g, "").replace(/^[\u0000-\u0020]+/, "").trimEnd();
3152
3152
  if (!n || n.startsWith("#")) return !0;
3153
3153
  let r = /^([a-z][a-z0-9+.-]*):/i.exec(n);
3154
3154
  if (!r) return !0;
@@ -3218,7 +3218,7 @@ var Ra = ["innerHTML"], za = /* @__PURE__ */ B({
3218
3218
  viewport: {}
3219
3219
  },
3220
3220
  setup(e) {
3221
- let t = e, n = T(() => import("./ParagraphEditor-DvxIO2LN.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = La(() => t.block.content);
3221
+ let t = e, n = T(() => import("./ParagraphEditor-Bqjn3ZNm.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = La(() => t.block.content);
3222
3222
  return (t, l) => (f(), k("div", {
3223
3223
  ref_key: "blockRef",
3224
3224
  ref: i,
@@ -3281,7 +3281,7 @@ var Ha = ["data-block-id", "data-block-type"], Ua = ["aria-label"], Wa = [
3281
3281
  },
3282
3282
  emits: ["select"],
3283
3283
  setup(e, { emit: t }) {
3284
- let n = T(() => import("./BlockIssueBadge-DpiSTwM7.js")), r = e, i = t, { t: a, format: s } = Y(), c = v(tr, 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);
3284
+ let n = T(() => import("./BlockIssueBadge-C6YilQdl.js")), r = e, i = t, { t: a, format: s } = Y(), c = v(tr, null), l = C(null), u = O(() => c?.liftedBlockId.value === r.block.id), d = O(() => u.value ? s(a.blockActions.dragLifted, { block: r.block.type }) : a.blockActions.drag);
3285
3285
  async function p() {
3286
3286
  await m(), l.value?.focus();
3287
3287
  }
@@ -3432,7 +3432,7 @@ var no = /* @__PURE__ */ B({
3432
3432
  viewport: {}
3433
3433
  },
3434
3434
  setup(e) {
3435
- let t = e, n = T(() => import("./TitleEditor-D3gPRd0x.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = La(() => t.block.content), l = O(() => {
3435
+ let t = e, n = T(() => import("./TitleEditor-Dcldr8D6.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = La(() => t.block.content), l = O(() => {
3436
3436
  let e = {
3437
3437
  fontSize: `${pe[t.block.level]}px`,
3438
3438
  color: t.block.color,
@@ -3808,7 +3808,7 @@ var no = /* @__PURE__ */ B({
3808
3808
  e.textContent = t.value ?? "";
3809
3809
  },
3810
3810
  updated(e, t) {
3811
- t.value !== t.oldValue && e.ownerDocument.activeElement !== e && (e.textContent = t.value ?? "");
3811
+ t.value !== t.oldValue && e.getRootNode().activeElement !== e && (e.textContent = t.value ?? "");
3812
3812
  }
3813
3813
  }, n = e, { t: r } = Y(), i = J(Fn, "TableBlock"), a = O(() => n.block.rows.length > 0), o = O(() => ({
3814
3814
  width: "100%",
@@ -3863,7 +3863,7 @@ var no = /* @__PURE__ */ B({
3863
3863
  onClick: M(p, ["stop"])
3864
3864
  }, null, 44, wo)), [[t, i.content]])), 128))]))), 128))])], 4)) : (f(), k("div", To, [V(j(Si), { size: 16 }), I("span", null, D(j(r).table.empty), 1)]))]));
3865
3865
  }
3866
- }), [["__scopeId", "data-v-4f49860b"]]), Do = /* @__PURE__ */ B({
3866
+ }), [["__scopeId", "data-v-1b130f2b"]]), Do = /* @__PURE__ */ B({
3867
3867
  __name: "VideoPlayButton",
3868
3868
  props: { hoverEffect: {
3869
3869
  type: Boolean,
@@ -4000,7 +4000,7 @@ var Ao = ["src", "alt"], jo = {
4000
4000
  table: Eo,
4001
4001
  spacer: bo,
4002
4002
  html: ma,
4003
- countdown: T(() => import("./CountdownBlock-BKsCWboK.js").then((e) => e.n))
4003
+ countdown: T(() => import("./CountdownBlock-DU9ga9Ki.js").then((e) => e.n))
4004
4004
  };
4005
4005
  function Ro(e) {
4006
4006
  let { editor: t, config: n, translations: r, fontsManager: i } = e, { t: a, format: o } = Y(r);
@@ -4598,6 +4598,9 @@ function Qo(e, t) {
4598
4598
  //#endregion
4599
4599
  //#region ../core/src/cloud/editor.ts
4600
4600
  function $o(e) {
4601
+ return e === "1" ? 1 : e === "3" ? 3 : 2;
4602
+ }
4603
+ function es(e) {
4601
4604
  let t = new Yo(e.authManager), n = S({
4602
4605
  template: null,
4603
4606
  content: Ue(e.defaultFontFamily, e.templateDefaults),
@@ -4701,12 +4704,14 @@ function $o(e) {
4701
4704
  if (!a) return;
4702
4705
  let c = a.blocks.findIndex((t) => t.id === e);
4703
4706
  if (c === -1) return;
4704
- let [l] = a.blocks.splice(c, 1);
4707
+ let l;
4705
4708
  if (r) {
4706
4709
  let e = o(n.content.blocks, r);
4707
- e && e.type === "section" && (e.children[i] = e.children[i] || [], e.children[i].splice(t, 0, l));
4708
- } else n.content.blocks.splice(t, 0, l);
4709
- n.isDirty = !0;
4710
+ if (!e || e.type !== "section" || i < 0 || i >= $o(e.columns)) return;
4711
+ e.children[i] = e.children[i] || [], l = e.children[i];
4712
+ } else l = n.content.blocks;
4713
+ let [u] = a.blocks.splice(c, 1);
4714
+ l.splice(t, 0, u), n.isDirty = !0;
4710
4715
  }
4711
4716
  async function b(r) {
4712
4717
  n.isLoading = !0;
@@ -4794,11 +4799,11 @@ function $o(e) {
4794
4799
  }
4795
4800
  //#endregion
4796
4801
  //#region ../core/src/cloud/ai-chat.ts
4797
- var es = 0;
4798
- function ts() {
4799
- return `msg_${Date.now()}_${++es}`;
4802
+ var ts = 0;
4803
+ function ns() {
4804
+ return `msg_${Date.now()}_${++ts}`;
4800
4805
  }
4801
- function ns(e) {
4806
+ function rs(e) {
4802
4807
  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);
4803
4808
  function _(e, t) {
4804
4809
  let n = a.value.findIndex((t) => t.id === e);
@@ -4892,14 +4897,14 @@ function ns(e) {
4892
4897
  let v = n();
4893
4898
  if (!v) throw Error("Template must be saved before using AI generation");
4894
4899
  o.value = !0, c.value = null, l.value = null, h.value = [];
4895
- let y = ts();
4900
+ let y = ns();
4896
4901
  a.value = [...a.value, {
4897
4902
  id: y,
4898
4903
  role: "user",
4899
4904
  content: e,
4900
4905
  timestamp: Date.now()
4901
4906
  }];
4902
- let b = ts();
4907
+ let b = ns();
4903
4908
  a.value = [...a.value, {
4904
4909
  id: b,
4905
4910
  role: "assistant",
@@ -4990,7 +4995,7 @@ function ns(e) {
4990
4995
  }
4991
4996
  //#endregion
4992
4997
  //#region ../core/src/cloud/ai-config.ts
4993
- function rs(e) {
4998
+ function is(e) {
4994
4999
  function t(t) {
4995
5000
  return e === !1 ? !1 : e?.[t] !== !1;
4996
5001
  }
@@ -5001,7 +5006,7 @@ function rs(e) {
5001
5006
  }
5002
5007
  //#endregion
5003
5008
  //#region ../core/src/cloud/template-scoring.ts
5004
- function is(e) {
5009
+ function as(e) {
5005
5010
  let { authManager: t, getTemplateId: n } = e, r = C(!1), i = C(null), a = C(null), o = C(null), s = C(""), c = C(null);
5006
5011
  async function l(e, o) {
5007
5012
  let s = n();
@@ -5146,7 +5151,7 @@ function is(e) {
5146
5151
  }
5147
5152
  //#endregion
5148
5153
  //#region ../core/src/cloud/design-reference.ts
5149
- function as(e) {
5154
+ function os(e) {
5150
5155
  let { authManager: t, getTemplateId: n, onApply: r, onError: i } = e, a = C(!1), o = C(null);
5151
5156
  async function s(e) {
5152
5157
  let s = n();
@@ -5209,7 +5214,7 @@ function as(e) {
5209
5214
  }
5210
5215
  //#endregion
5211
5216
  //#region ../core/src/cloud/comments.ts
5212
- function os(e) {
5217
+ function ss(e) {
5213
5218
  let { authManager: t, getTemplateId: n, getSocketId: r, onComment: i, onError: a, hasCommentingFeature: o } = e, s = new Yo(t), c = C([]), l = C(!1), u = C(!1), d = O(() => (o?.() ?? !1) && t.userConfig !== null), f = O(() => {
5214
5219
  let e = 0;
5215
5220
  for (let t of c.value) e += 1 + (t.replies?.length ?? 0);
@@ -5409,17 +5414,17 @@ function os(e) {
5409
5414
  }
5410
5415
  //#endregion
5411
5416
  //#region ../core/src/cloud/comment-listener.ts
5412
- function ss(e) {
5417
+ function cs(e) {
5413
5418
  let { comments: t, channel: n } = e;
5414
5419
  H(n, (e, n) => {
5415
5420
  n && n.unbind("comment-broadcast"), e && e.bind("comment-broadcast", (e) => {
5416
- cs(t, e);
5421
+ ls(t, e);
5417
5422
  });
5418
5423
  }), l(() => {
5419
5424
  n.value?.unbind("comment-broadcast");
5420
5425
  });
5421
5426
  }
5422
- function cs(e, t) {
5427
+ function ls(e, t) {
5423
5428
  switch (t.action) {
5424
5429
  case "comment_created":
5425
5430
  e.applyRemoteCreate(t.comment);
@@ -5438,7 +5443,7 @@ function cs(e, t) {
5438
5443
  }
5439
5444
  //#endregion
5440
5445
  //#region ../core/src/cloud/collaboration.ts
5441
- var ls = [
5446
+ var us = [
5442
5447
  "pusher:member_added",
5443
5448
  "pusher:member_removed",
5444
5449
  "client-block_locked",
@@ -5446,10 +5451,10 @@ var ls = [
5446
5451
  "client-operation",
5447
5452
  "mcp-operation"
5448
5453
  ];
5449
- function us(e) {
5450
- for (let t of ls) e.unbind(t);
5454
+ function ds(e) {
5455
+ for (let t of us) e.unbind(t);
5451
5456
  }
5452
- var ds = [
5457
+ var fs = [
5453
5458
  "#3b82f6",
5454
5459
  "#ef4444",
5455
5460
  "#10b981",
@@ -5461,10 +5466,10 @@ var ds = [
5461
5466
  "#6366f1",
5462
5467
  "#14b8a6"
5463
5468
  ];
5464
- function fs(e) {
5469
+ function ps(e) {
5465
5470
  let { authManager: t, editor: n, channel: r } = e, i = C([]), a = C(/* @__PURE__ */ new Map()), o = 0, s = !1, c = O(() => t.userConfig?.id ?? "");
5466
5471
  function u() {
5467
- let e = ds[o % ds.length];
5472
+ let e = fs[o % fs.length];
5468
5473
  return o++, e;
5469
5474
  }
5470
5475
  function d(e) {
@@ -5526,7 +5531,7 @@ function fs(e) {
5526
5531
  return H(() => n.state.selectedBlockId, (e, t) => {
5527
5532
  s || (t && v(t), e && _(e));
5528
5533
  }), H(r, (t, n) => {
5529
- if (n && us(n), !t) {
5534
+ if (n && ds(n), !t) {
5530
5535
  i.value = [], a.value = /* @__PURE__ */ new Map(), o = 0;
5531
5536
  return;
5532
5537
  }
@@ -5558,7 +5563,7 @@ function fs(e) {
5558
5563
  h(e);
5559
5564
  });
5560
5565
  }), l(() => {
5561
- r.value && us(r.value);
5566
+ r.value && ds(r.value);
5562
5567
  }), {
5563
5568
  collaborators: i,
5564
5569
  lockedBlocks: a,
@@ -5568,15 +5573,16 @@ function fs(e) {
5568
5573
  }
5569
5574
  //#endregion
5570
5575
  //#region ../core/src/cloud/collaboration-broadcast.ts
5571
- function ps(e, t) {
5576
+ function ms(e, t) {
5572
5577
  let n = e.addBlock, r = e.updateBlock, i = e.removeBlock, a = e.moveBlock, o = e.updateSettings, s = e.setContent;
5573
- e.addBlock = (e, r, i) => {
5574
- n(e, r, i), t._broadcastOperation({
5578
+ e.addBlock = (e, r, i, a) => {
5579
+ n(e, r, i, a), t._broadcastOperation({
5575
5580
  operation: "add_block",
5576
5581
  data: {
5577
5582
  block: e,
5578
5583
  section_id: r,
5579
- column_index: i
5584
+ column_index: i,
5585
+ index: a
5580
5586
  },
5581
5587
  timestamp: Date.now()
5582
5588
  });
@@ -5622,7 +5628,7 @@ function ps(e, t) {
5622
5628
  }
5623
5629
  //#endregion
5624
5630
  //#region ../core/src/cloud/web-socket.ts
5625
- function ms(e) {
5631
+ function hs(e) {
5626
5632
  let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = null, o = null;
5627
5633
  async function s(e, s) {
5628
5634
  if (a) return;
@@ -5654,7 +5660,7 @@ function ms(e) {
5654
5660
  }
5655
5661
  //#endregion
5656
5662
  //#region ../core/src/cloud/saved-modules.ts
5657
- function hs(e) {
5663
+ function gs(e) {
5658
5664
  let t = new Yo(e.authManager), n = C([]), r = C(!1);
5659
5665
  async function i(i) {
5660
5666
  r.value = !0;
@@ -5703,7 +5709,7 @@ function hs(e) {
5703
5709
  }
5704
5710
  //#endregion
5705
5711
  //#region ../core/src/cloud/snapshots.ts
5706
- function gs(e) {
5712
+ function _s(e) {
5707
5713
  let t = new Yo(e.authManager), n = C([]), r = C(!1), i = C(!1);
5708
5714
  async function a() {
5709
5715
  r.value = !0;
@@ -5736,7 +5742,7 @@ function gs(e) {
5736
5742
  }
5737
5743
  //#endregion
5738
5744
  //#region ../core/src/cloud/test-email.ts
5739
- function _s(e) {
5745
+ function vs(e) {
5740
5746
  let { authManager: t, getTemplateId: n, save: r, exportHtml: i, onError: a, isAuthReady: o, onBeforeTestEmail: s } = e, c = new Yo(t), l = C(!1), u = C(null), d = C(null);
5741
5747
  o && H(o, (e) => {
5742
5748
  e && (d.value = t.testEmailConfig);
@@ -5773,7 +5779,7 @@ function _s(e) {
5773
5779
  }
5774
5780
  //#endregion
5775
5781
  //#region ../core/src/cloud/export.ts
5776
- function vs(e) {
5782
+ function ys(e) {
5777
5783
  let { authManager: t, getFontsConfig: n, canUseCustomFonts: r } = e, i = new Yo(t);
5778
5784
  function a() {
5779
5785
  let e = n?.();
@@ -5800,7 +5806,7 @@ function vs(e) {
5800
5806
  }
5801
5807
  //#endregion
5802
5808
  //#region ../core/src/cloud/plan-config.ts
5803
- function ys(e) {
5809
+ function bs(e) {
5804
5810
  let { authManager: t, onError: n } = e, r = C(null), i = C(!1), a = new Yo(t), o = O(() => r.value?.features ?? null);
5805
5811
  function s(e) {
5806
5812
  return r.value?.features[e] ?? !1;
@@ -5827,11 +5833,11 @@ function ys(e) {
5827
5833
  }
5828
5834
  //#endregion
5829
5835
  //#region ../core/src/cloud/health-check.ts
5830
- var bs = 5e3;
5831
- function xs(e) {
5836
+ var xs = 5e3;
5837
+ function Ss(e) {
5832
5838
  return e.authManager ? e.authManager.resolveUrl($.health) : `${(e.baseUrl ?? "https://templatical.com").replace(/\/$/, "")}${$.health}`;
5833
5839
  }
5834
- async function Ss(e, t) {
5840
+ async function Cs(e, t) {
5835
5841
  let n = performance.now();
5836
5842
  try {
5837
5843
  let r = t ? await t.authenticatedFetch($.health, {
@@ -5883,7 +5889,7 @@ async function Ss(e, t) {
5883
5889
  };
5884
5890
  }
5885
5891
  }
5886
- async function Cs(e) {
5892
+ async function ws(e) {
5887
5893
  if (!e?.host || !e?.app_key) return {
5888
5894
  ok: !1,
5889
5895
  error: "WebSocket configuration not available"
@@ -5899,7 +5905,7 @@ async function Cs(e) {
5899
5905
  ok: !1,
5900
5906
  error: "WebSocket connection timed out"
5901
5907
  });
5902
- }, bs);
5908
+ }, xs);
5903
5909
  try {
5904
5910
  n = new WebSocket(t);
5905
5911
  } catch (t) {
@@ -5919,8 +5925,8 @@ async function Cs(e) {
5919
5925
  };
5920
5926
  });
5921
5927
  }
5922
- async function ws(e = {}) {
5923
- let t = await Ss(xs(e), e.authManager), n = await Cs(t.wsConfig);
5928
+ async function Ts(e = {}) {
5929
+ let t = await Cs(Ss(e), e.authManager), n = await ws(t.wsConfig);
5924
5930
  return {
5925
5931
  api: t.api,
5926
5932
  websocket: n,
@@ -5930,7 +5936,7 @@ async function ws(e = {}) {
5930
5936
  }
5931
5937
  //#endregion
5932
5938
  //#region ../core/src/cloud/mcp-listener.ts
5933
- function Ts(e) {
5939
+ function Es(e) {
5934
5940
  let { editor: t, channel: n, onOperation: r } = e;
5935
5941
  H(n, (e, n) => {
5936
5942
  n && n.unbind("mcp-operation"), e && e.bind("mcp-operation", (e) => {
@@ -5940,19 +5946,19 @@ function Ts(e) {
5940
5946
  }
5941
5947
  //#endregion
5942
5948
  //#region src/cloud/components/AiChatSidebar.vue?vue&type=script&setup=true&lang.ts
5943
- var Es = {
5949
+ var Ds = {
5944
5950
  key: 0,
5945
5951
  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)]"
5946
- }, Ds = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, Os = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, ks = { class: "tpl:flex tpl:items-center tpl:gap-1" }, As = ["title"], js = { class: "tpl:relative tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col" }, Ms = {
5952
+ }, Os = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, ks = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, As = { class: "tpl:flex tpl:items-center tpl:gap-1" }, js = ["title"], Ms = { class: "tpl:relative tpl:flex tpl:min-h-0 tpl:flex-1 tpl:flex-col" }, Ns = {
5947
5953
  key: 0,
5948
5954
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
5949
- }, Ns = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ps = {
5955
+ }, Ps = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Fs = {
5950
5956
  key: 1,
5951
5957
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
5952
- }, Fs = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Is = {
5958
+ }, Is = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Ls = {
5953
5959
  key: 2,
5954
5960
  class: "tpl:flex tpl:flex-col tpl:gap-4"
5955
- }, Ls = {
5961
+ }, Rs = {
5956
5962
  key: 0,
5957
5963
  class: "tpl:self-end tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm",
5958
5964
  style: {
@@ -5961,10 +5967,10 @@ var Es = {
5961
5967
  "max-width": "85%",
5962
5968
  "box-shadow": "var(--tpl-shadow)"
5963
5969
  }
5964
- }, Rs = {
5970
+ }, zs = {
5965
5971
  key: 1,
5966
5972
  class: "tpl:flex tpl:flex-col tpl:gap-2"
5967
- }, zs = {
5973
+ }, Bs = {
5968
5974
  key: 1,
5969
5975
  class: "tpl:rounded-[var(--tpl-radius-sm)] tpl:px-3.5 tpl:py-2.5 tpl:text-sm tpl:whitespace-pre-wrap",
5970
5976
  style: {
@@ -5973,21 +5979,21 @@ var Es = {
5973
5979
  color: "var(--tpl-text)",
5974
5980
  "box-shadow": "var(--tpl-shadow)"
5975
5981
  }
5976
- }, Bs = {
5982
+ }, Vs = {
5977
5983
  key: 0,
5978
5984
  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",
5979
5985
  style: {
5980
5986
  "background-color": "var(--tpl-danger-light)",
5981
5987
  color: "var(--tpl-danger)"
5982
5988
  }
5983
- }, Vs = {
5989
+ }, Hs = {
5984
5990
  key: 1,
5985
5991
  class: "tpl:absolute tpl:right-0 tpl:bottom-0 tpl:left-0 tpl:z-10 tpl:px-3 tpl:pb-3",
5986
5992
  style: {
5987
5993
  "background-color": "color-mix(\n in srgb,\n var(--tpl-bg) 50%,\n transparent\n )",
5988
5994
  "backdrop-filter": "blur(2px)"
5989
5995
  }
5990
- }, Hs = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, Us = ["onClick"], Ws = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, Gs = { 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)]" }, Ks = ["placeholder", "disabled"], qs = ["disabled"], Js = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Ys = /* @__PURE__ */ B({
5996
+ }, Us = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, Ws = ["onClick"], Gs = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, Ks = { 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)]" }, qs = ["placeholder", "disabled"], Js = ["disabled"], Ys = { class: "tpl:m-0 tpl:px-1 tpl:pt-2 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Xs = /* @__PURE__ */ B({
5991
5997
  __name: "AiChatSidebar",
5992
5998
  props: {
5993
5999
  visible: { type: Boolean },
@@ -5995,7 +6001,7 @@ var Es = {
5995
6001
  },
5996
6002
  emits: ["close"],
5997
6003
  setup(e, { emit: t }) {
5998
- let n = e, r = t, i = J(ur, "AiChatSidebar"), a = J(Fn, "AiChatSidebar"), o = J(ar, "AiChatSidebar"), s = v(Kn, []), l = ha(), u = ns({
6004
+ let n = e, r = t, i = J(ur, "AiChatSidebar"), a = J(Fn, "AiChatSidebar"), o = J(ar, "AiChatSidebar"), s = v(Kn, []), l = ha(), u = rs({
5999
6005
  authManager: o,
6000
6006
  getTemplateId: () => a.state.template?.id ?? null,
6001
6007
  onApply: n.onApply,
@@ -6042,11 +6048,11 @@ var Es = {
6042
6048
  "leave-from-class": "tpl:translate-x-0",
6043
6049
  "leave-to-class": "tpl:translate-x-full"
6044
6050
  }, {
6045
- default: b(() => [e.visible ? (f(), k("div", Es, [
6046
- I("div", Ds, [I("div", Os, [V(j(xi), {
6051
+ default: b(() => [e.visible ? (f(), k("div", Ds, [
6052
+ I("div", Os, [I("div", ks, [V(j(xi), {
6047
6053
  size: 13,
6048
6054
  "stroke-width": 2
6049
- }), I("span", null, D(j(i).aiChat.title), 1)]), I("div", ks, [(j(u).messages.value?.length ?? 0) > 0 ? (f(), k("button", {
6055
+ }), I("span", null, D(j(i).aiChat.title), 1)]), I("div", As, [(j(u).messages.value?.length ?? 0) > 0 ? (f(), k("button", {
6050
6056
  key: 0,
6051
6057
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6052
6058
  title: j(i).aiChat.clear,
@@ -6054,30 +6060,30 @@ var Es = {
6054
6060
  }, [V(j(Ci), {
6055
6061
  size: 14,
6056
6062
  "stroke-width": 2
6057
- })], 8, As)) : A("", !0), I("button", {
6063
+ })], 8, js)) : A("", !0), I("button", {
6058
6064
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6059
6065
  onClick: n[1] ||= (e) => r("close")
6060
6066
  }, [V(j(Oi), {
6061
6067
  size: 14,
6062
6068
  "stroke-width": 2
6063
6069
  })])])]),
6064
- I("div", js, [
6070
+ I("div", Ms, [
6065
6071
  I("div", {
6066
6072
  ref_key: "messagesContainer",
6067
6073
  ref: p,
6068
6074
  class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4"
6069
- }, [j(u).isLoadingHistory.value ? (f(), k("div", Ms, [V(j(li), {
6075
+ }, [j(u).isLoadingHistory.value ? (f(), k("div", Ns, [V(j(li), {
6070
6076
  class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
6071
6077
  size: 24,
6072
6078
  "stroke-width": 2
6073
- }), I("p", Ns, D(j(i).aiChat.loadingHistory), 1)])) : (j(u).messages.value?.length ?? 0) === 0 ? (f(), k("div", Ps, [V(j(xi), {
6079
+ }), I("p", Ps, D(j(i).aiChat.loadingHistory), 1)])) : (j(u).messages.value?.length ?? 0) === 0 ? (f(), k("div", Fs, [V(j(xi), {
6074
6080
  size: 32,
6075
6081
  "stroke-width": 1.5,
6076
6082
  class: "tpl:text-[var(--tpl-text-dim)]"
6077
- }), I("p", Fs, D(j(i).aiChat.placeholder), 1)])) : (f(), k("div", Is, [(f(!0), k(R, null, h(j(u).messages.value, (e, t) => (f(), k("div", {
6083
+ }), I("p", Is, D(j(i).aiChat.placeholder), 1)])) : (f(), k("div", Ls, [(f(!0), k(R, null, h(j(u).messages.value, (e, t) => (f(), k("div", {
6078
6084
  key: e.id,
6079
6085
  class: "tpl:flex tpl:flex-col tpl:gap-2"
6080
- }, [e.role === "user" ? (f(), k("div", Ls, D(e.content), 1)) : (f(), k("div", Rs, [!T(e.content) && j(u).isGenerating.value && t === (j(u).messages.value?.length ?? 0) - 1 ? (f(), N(Li, { key: 0 })) : (f(), k("div", zs, D(T(e.content) || j(i).aiChat.applied), 1)), e.id === j(u).lastApplyMessageId.value && !j(u).isGenerating.value ? (f(), k("button", {
6086
+ }, [e.role === "user" ? (f(), k("div", Rs, D(e.content), 1)) : (f(), k("div", zs, [!T(e.content) && j(u).isGenerating.value && t === (j(u).messages.value?.length ?? 0) - 1 ? (f(), N(Li, { key: 0 })) : (f(), k("div", Bs, D(T(e.content) || j(i).aiChat.applied), 1)), e.id === j(u).lastApplyMessageId.value && !j(u).isGenerating.value ? (f(), k("button", {
6081
6087
  key: 2,
6082
6088
  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",
6083
6089
  style: {
@@ -6093,12 +6099,12 @@ var Es = {
6093
6099
  size: 12,
6094
6100
  "stroke-width": 2
6095
6101
  }), z(" " + D(j(i).aiChat.revert), 1)], 64))])) : A("", !0)]))]))), 128))]))], 512),
6096
- j(u).error.value ? (f(), k("div", Bs, [V(j(Yr), {
6102
+ j(u).error.value ? (f(), k("div", Vs, [V(j(Yr), {
6097
6103
  size: 14,
6098
6104
  "stroke-width": 2,
6099
6105
  class: "tpl:mt-0.5 tpl:shrink-0"
6100
6106
  }), I("span", null, D(j(u).error.value === "ai_apply_failed" ? j(i).aiChat.applyFailed : j(i).aiChat.error), 1)])) : A("", !0),
6101
- (j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div", Vs, [I("div", Hs, [(f(!0), k(R, null, h(j(u).suggestions.value ?? [], (e, t) => (f(), k("button", {
6107
+ (j(u).suggestions.value?.length ?? 0) > 0 ? (f(), k("div", Hs, [I("div", Us, [(f(!0), k(R, null, h(j(u).suggestions.value ?? [], (e, t) => (f(), k("button", {
6102
6108
  key: t,
6103
6109
  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"]),
6104
6110
  style: {
@@ -6108,99 +6114,99 @@ var Es = {
6108
6114
  "box-shadow": "var(--tpl-shadow)"
6109
6115
  },
6110
6116
  onClick: (t) => E(e)
6111
- }, D(e), 11, Us))), 128))])])) : A("", !0)
6117
+ }, D(e), 11, Ws))), 128))])])) : A("", !0)
6112
6118
  ]),
6113
- I("div", Ws, [I("div", Gs, [c(I("textarea", {
6119
+ I("div", Gs, [I("div", Ks, [c(I("textarea", {
6114
6120
  "onUpdate:modelValue": n[3] ||= (e) => d.value = e,
6115
6121
  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)]",
6116
6122
  placeholder: j(i).aiChat.inputPlaceholder,
6117
6123
  disabled: j(u).isGenerating.value,
6118
6124
  rows: "3",
6119
6125
  onKeydown: te
6120
- }, null, 40, Ks), [[ae, d.value]]), I("button", {
6126
+ }, null, 40, qs), [[ae, d.value]]), I("button", {
6121
6127
  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)]",
6122
6128
  disabled: !d.value.trim() || j(u).isGenerating.value,
6123
6129
  onClick: ee
6124
6130
  }, [V(j(_i), {
6125
6131
  size: 16,
6126
6132
  "stroke-width": 2
6127
- })], 8, qs)]), I("p", Js, D(j(i).aiMenu.disclaimer), 1)])
6133
+ })], 8, Js)]), I("p", Ys, D(j(i).aiMenu.disclaimer), 1)])
6128
6134
  ])) : A("", !0)]),
6129
6135
  _: 1
6130
6136
  }));
6131
6137
  }
6132
- }), Xs = /* @__PURE__ */ e({ default: () => Zs }), Zs = /* @__PURE__ */ Ni(Ys, [["__scopeId", "data-v-a55e4bff"]]), Qs = 6e4, $s = 36e5, ec = 864e5;
6133
- function tc(e, t, n, r) {
6138
+ }), Zs = /* @__PURE__ */ e({ default: () => Qs }), Qs = /* @__PURE__ */ Ni(Xs, [["__scopeId", "data-v-a55e4bff"]]), $s = 6e4, ec = 36e5, tc = 864e5;
6139
+ function nc(e, t, n, r) {
6134
6140
  let i = new Date(e).getTime();
6135
6141
  if (Number.isNaN(i)) return null;
6136
6142
  let a = Date.now() - i;
6137
6143
  if (a < -6e4) return null;
6138
- let o = Math.floor(a / Qs), s = Math.floor(a / $s), c = Math.floor(a / ec);
6144
+ let o = Math.floor(a / $s), s = Math.floor(a / ec), c = Math.floor(a / tc);
6139
6145
  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));
6140
6146
  }
6141
6147
  //#endregion
6142
6148
  //#region src/cloud/components/CommentsSidebar.vue?vue&type=script&setup=true&lang.ts
6143
- var nc = {
6149
+ var rc = {
6144
6150
  key: 0,
6145
6151
  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)]"
6146
- }, rc = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, ic = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text)]" }, ac = {
6152
+ }, ic = { 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)]" }, oc = {
6147
6153
  key: 0,
6148
6154
  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)]"
6149
- }, oc = { class: "tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2" }, sc = { class: "tpl:flex-1 tpl:overflow-y-auto" }, cc = {
6155
+ }, sc = { class: "tpl:flex tpl:gap-1 tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2" }, cc = { class: "tpl:flex-1 tpl:overflow-y-auto" }, lc = {
6150
6156
  key: 0,
6151
6157
  class: "tpl:flex tpl:h-full tpl:items-center tpl:justify-center"
6152
- }, lc = {
6158
+ }, uc = {
6153
6159
  key: 1,
6154
6160
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:px-6 tpl:text-center"
6155
- }, uc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, dc = {
6161
+ }, dc = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, fc = {
6156
6162
  key: 2,
6157
6163
  class: "tpl:flex tpl:flex-col tpl:gap-3 tpl:p-3"
6158
- }, fc = { class: "tpl-comment-card tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-3" }, pc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, mc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, hc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, gc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, _c = {
6164
+ }, pc = { class: "tpl-comment-card tpl:rounded-lg tpl:border tpl:px-3.5 tpl:py-3" }, mc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, hc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, gc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, _c = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, vc = {
6159
6165
  key: 0,
6160
6166
  class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
6161
- }, vc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, yc = ["title", "onClick"], bc = ["title", "onClick"], xc = ["title", "onClick"], Sc = {
6167
+ }, yc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, bc = ["title", "onClick"], xc = ["title", "onClick"], Sc = ["title", "onClick"], Cc = {
6162
6168
  key: 0,
6163
6169
  class: "tpl:mt-1 tpl:flex tpl:items-center tpl:gap-1 tpl:text-[10px] tpl:text-[var(--tpl-primary)]"
6164
- }, Cc = {
6170
+ }, wc = {
6165
6171
  key: 0,
6166
6172
  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)]"
6167
- }, wc = ["onClick"], Tc = {
6173
+ }, Tc = ["onClick"], Ec = {
6168
6174
  key: 2,
6169
6175
  class: "tpl:mt-2"
6170
- }, Ec = ["onKeydown"], Dc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, Oc = ["disabled", "onClick"], kc = {
6176
+ }, Dc = ["onKeydown"], Oc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, kc = ["disabled", "onClick"], Ac = {
6171
6177
  key: 3,
6172
6178
  class: "tpl:mt-1.5 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
6173
- }, Ac = {
6179
+ }, jc = {
6174
6180
  key: 4,
6175
6181
  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)]"
6176
- }, jc = { class: "tpl:flex-1" }, Mc = ["onClick"], Nc = {
6182
+ }, Mc = { class: "tpl:flex-1" }, Nc = ["onClick"], Pc = {
6177
6183
  key: 5,
6178
6184
  class: "tpl:mt-2 tpl:flex tpl:items-center tpl:gap-2"
6179
- }, Pc = ["title", "onClick"], Fc = ["onClick"], Ic = {
6185
+ }, Fc = ["title", "onClick"], Ic = ["onClick"], Lc = {
6180
6186
  key: 0,
6181
6187
  class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
6182
- }, Lc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, Rc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, zc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Bc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Vc = {
6188
+ }, Rc = { class: "tpl:flex tpl:items-start tpl:justify-between tpl:gap-2" }, zc = { class: "tpl:flex tpl:items-center tpl:gap-1.5" }, Bc = { class: "tpl:text-xs tpl:font-semibold tpl:text-[var(--tpl-text)]" }, Vc = { class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]" }, Hc = {
6183
6189
  key: 0,
6184
6190
  class: "tpl:text-[10px] tpl:italic tpl:text-[var(--tpl-text-dim)]"
6185
- }, Hc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, Uc = ["title", "onClick"], Wc = ["title", "onClick"], Gc = {
6191
+ }, Uc = { class: "tpl:flex tpl:items-center tpl:gap-0.5" }, Wc = ["title", "onClick"], Gc = ["title", "onClick"], Kc = {
6186
6192
  key: 0,
6187
6193
  class: "tpl:mt-1.5"
6188
- }, Kc = ["onKeydown"], qc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, Jc = ["disabled", "onClick"], Yc = {
6194
+ }, qc = ["onKeydown"], Jc = { class: "tpl:mt-1.5 tpl:flex tpl:gap-1.5" }, Yc = ["disabled", "onClick"], Xc = {
6189
6195
  key: 1,
6190
6196
  class: "tpl:mt-1 tpl:text-xs tpl:leading-relaxed tpl:whitespace-pre-wrap tpl:text-[var(--tpl-text)]"
6191
- }, Xc = {
6197
+ }, Zc = {
6192
6198
  key: 2,
6193
6199
  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)]"
6194
- }, Zc = { class: "tpl:flex-1" }, Qc = ["onClick"], $c = {
6200
+ }, Qc = { class: "tpl:flex-1" }, $c = ["onClick"], el = {
6195
6201
  key: 0,
6196
6202
  class: "tpl-comment-replies tpl:ml-5 tpl:pl-3 tpl:pt-2"
6197
- }, el = { class: "tpl:flex tpl:items-end tpl:gap-2" }, tl = ["placeholder", "onKeydown"], nl = { class: "tpl:flex tpl:shrink-0 tpl:flex-col tpl:gap-1" }, rl = ["disabled", "onClick"], il = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, al = {
6203
+ }, tl = { class: "tpl:flex tpl:items-end tpl:gap-2" }, nl = ["placeholder", "onKeydown"], rl = { class: "tpl:flex tpl:shrink-0 tpl:flex-col tpl:gap-1" }, il = ["disabled", "onClick"], al = { class: "tpl:border-t tpl:p-3 tpl:border-[var(--tpl-border)]" }, ol = {
6198
6204
  key: 0,
6199
6205
  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)]"
6200
- }, ol = {
6206
+ }, sl = {
6201
6207
  key: 1,
6202
6208
  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)]"
6203
- }, sl = ["placeholder", "disabled"], cl = ["disabled"], ll = /* @__PURE__ */ B({
6209
+ }, cl = ["placeholder", "disabled"], ll = ["disabled"], ul = /* @__PURE__ */ B({
6204
6210
  __name: "CommentsSidebar",
6205
6211
  props: { visible: { type: Boolean } },
6206
6212
  emits: ["close", "filterBlock"],
@@ -6273,7 +6279,7 @@ var nc = {
6273
6279
  return e.author_identifier === T.value;
6274
6280
  }
6275
6281
  function ve(e) {
6276
- return tc(e, o.snapshotHistory) ?? e;
6282
+ return nc(e, o.snapshotHistory) ?? e;
6277
6283
  }
6278
6284
  function ye(e) {
6279
6285
  e.key === "Enter" && !e.shiftKey && (e.preventDefault(), fe());
@@ -6300,14 +6306,14 @@ var nc = {
6300
6306
  "leave-from-class": "tpl:translate-x-0",
6301
6307
  "leave-to-class": "tpl:translate-x-full"
6302
6308
  }, {
6303
- default: b(() => [e.visible ? (f(), k("div", nc, [
6304
- I("div", rc, [I("div", ic, [
6309
+ default: b(() => [e.visible ? (f(), k("div", rc, [
6310
+ I("div", ic, [I("div", ac, [
6305
6311
  V(j(ui), {
6306
6312
  size: 13,
6307
6313
  "stroke-width": 2
6308
6314
  }),
6309
6315
  I("span", null, D(j(o).comments.title), 1),
6310
- j(u).unresolvedCount.value > 0 ? (f(), k("span", ac, D(j(u).unresolvedCount.value), 1)) : A("", !0)
6316
+ j(u).unresolvedCount.value > 0 ? (f(), k("span", oc, D(j(u).unresolvedCount.value), 1)) : A("", !0)
6311
6317
  ]), I("button", {
6312
6318
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6313
6319
  onClick: n[0] ||= (e) => i("close")
@@ -6315,7 +6321,7 @@ var nc = {
6315
6321
  size: 14,
6316
6322
  "stroke-width": 2
6317
6323
  })])]),
6318
- I("div", oc, [
6324
+ I("div", sc, [
6319
6325
  I("button", {
6320
6326
  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" : ""]),
6321
6327
  onClick: n[1] ||= (e) => M("unresolved")
@@ -6330,24 +6336,24 @@ var nc = {
6330
6336
  onClick: n[3] ||= (e) => M("block", j(s).state.selectedBlockId ?? void 0)
6331
6337
  }, D(j(o).comments.filterBlock), 3)) : A("", !0)
6332
6338
  ]),
6333
- I("div", sc, [j(u).isLoading.value ? (f(), k("div", cc, [V(j(li), {
6339
+ I("div", cc, [j(u).isLoading.value ? (f(), k("div", lc, [V(j(li), {
6334
6340
  class: "tpl-spinner tpl:text-[var(--tpl-text-muted)]",
6335
6341
  size: 24,
6336
6342
  "stroke-width": 2
6337
- })])) : re.value.length === 0 ? (f(), k("div", lc, [V(j(ui), {
6343
+ })])) : re.value.length === 0 ? (f(), k("div", uc, [V(j(ui), {
6338
6344
  size: 32,
6339
6345
  "stroke-width": 1.5,
6340
6346
  class: "tpl:text-[var(--tpl-text-dim)]"
6341
- }), I("p", uc, D(d.value === "all" ? j(o).comments.noCommentsHint : j(o).comments.noComments), 1)])) : (f(), k("div", dc, [(f(!0), k(R, null, h(re.value, (e) => (f(), k("div", {
6347
+ }), I("p", dc, D(d.value === "all" ? j(o).comments.noCommentsHint : j(o).comments.noComments), 1)])) : (f(), k("div", fc, [(f(!0), k(R, null, h(re.value, (e) => (f(), k("div", {
6342
6348
  key: e.id,
6343
6349
  class: "tpl-comment-thread"
6344
6350
  }, [
6345
- I("div", fc, [
6346
- I("div", pc, [I("div", mc, [
6347
- I("span", hc, D(_e(e) ? j(o).comments.ownedByYou : e.author_name), 1),
6348
- I("span", gc, D(ve(e.created_at)), 1),
6349
- e.updated_at === e.created_at ? A("", !0) : (f(), k("span", _c, " (" + D(j(o).comments.edited) + ") ", 1))
6350
- ]), I("div", vc, [
6351
+ I("div", pc, [
6352
+ I("div", mc, [I("div", hc, [
6353
+ I("span", gc, D(_e(e) ? j(o).comments.ownedByYou : e.author_name), 1),
6354
+ I("span", _c, D(ve(e.created_at)), 1),
6355
+ e.updated_at === e.created_at ? A("", !0) : (f(), k("span", vc, " (" + D(j(o).comments.edited) + ") ", 1))
6356
+ ]), I("div", yc, [
6351
6357
  I("button", {
6352
6358
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6353
6359
  title: e.resolved_at ? j(o).comments.unresolve : j(o).comments.resolve,
@@ -6357,7 +6363,7 @@ var nc = {
6357
6363
  "stroke-width": 2,
6358
6364
  class: "tpl-resolve-icon",
6359
6365
  style: L({ color: e.resolved_at ? "var(--tpl-primary)" : void 0 })
6360
- }, null, 8, ["style"])], 8, yc),
6366
+ }, null, 8, ["style"])], 8, bc),
6361
6367
  _e(e) ? (f(), k("button", {
6362
6368
  key: 0,
6363
6369
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
@@ -6366,7 +6372,7 @@ var nc = {
6366
6372
  }, [V(j(fi), {
6367
6373
  size: 12,
6368
6374
  "stroke-width": 2
6369
- })], 8, bc)) : A("", !0),
6375
+ })], 8, xc)) : A("", !0),
6370
6376
  _e(e) ? (f(), k("button", {
6371
6377
  key: 1,
6372
6378
  class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
@@ -6375,45 +6381,45 @@ var nc = {
6375
6381
  }, [V(j(Ci), {
6376
6382
  size: 12,
6377
6383
  "stroke-width": 2
6378
- })], 8, xc)) : A("", !0)
6384
+ })], 8, Sc)) : A("", !0)
6379
6385
  ])]),
6380
6386
  V(ie, { name: "tpl-resolve" }, {
6381
- default: b(() => [e.resolved_at ? (f(), k("div", Sc, [V(j(Wr), {
6387
+ default: b(() => [e.resolved_at ? (f(), k("div", Cc, [V(j(Wr), {
6382
6388
  size: 10,
6383
6389
  "stroke-width": 2.5
6384
6390
  }), I("span", null, D(j(a)(j(o).comments.resolvedBy, { name: e.resolved_by_name ?? "" })), 1)])) : A("", !0)]),
6385
6391
  _: 2
6386
6392
  }, 1024),
6387
- e.block_id && te(e.block_id) ? (f(), k("span", Cc, D(j(o).comments.missingBlock), 1)) : e.block_id ? (f(), k("button", {
6393
+ e.block_id && te(e.block_id) ? (f(), k("span", wc, D(j(o).comments.missingBlock), 1)) : e.block_id ? (f(), k("button", {
6388
6394
  key: 1,
6389
6395
  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)]",
6390
6396
  onClick: (t) => j(s).selectBlock(e.block_id ?? "")
6391
- }, " Block ", 8, wc)) : A("", !0),
6392
- y.value === e.id ? (f(), k("div", Tc, [c(I("textarea", {
6397
+ }, " Block ", 8, Tc)) : A("", !0),
6398
+ y.value === e.id ? (f(), k("div", Ec, [c(I("textarea", {
6393
6399
  "onUpdate:modelValue": n[4] ||= (e) => x.value = e,
6394
6400
  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)]",
6395
6401
  rows: "3",
6396
6402
  onKeydown: (t) => xe(t, e.id)
6397
- }, null, 40, Ec), [[ae, x.value]]), I("div", Dc, [I("button", {
6403
+ }, null, 40, Dc), [[ae, x.value]]), I("div", Oc, [I("button", {
6398
6404
  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)]",
6399
6405
  disabled: !x.value.trim() || j(u).isSubmitting.value,
6400
6406
  onClick: (t) => me(e.id)
6401
- }, D(j(o).comments.save), 9, Oc), I("button", {
6407
+ }, D(j(o).comments.save), 9, kc), I("button", {
6402
6408
  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)]",
6403
6409
  onClick: n[5] ||= (e) => B()
6404
- }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", kc, D(e.body), 1)),
6405
- w.value === e.id ? (f(), k("div", Ac, [
6406
- I("span", jc, D(j(o).comments.deleteConfirm), 1),
6410
+ }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", Ac, D(e.body), 1)),
6411
+ w.value === e.id ? (f(), k("div", jc, [
6412
+ I("span", Mc, D(j(o).comments.deleteConfirm), 1),
6407
6413
  I("button", {
6408
6414
  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)]",
6409
6415
  onClick: (t) => he(e.id)
6410
- }, D(j(o).comments.delete), 9, Mc),
6416
+ }, D(j(o).comments.delete), 9, Nc),
6411
6417
  I("button", {
6412
6418
  class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6413
6419
  onClick: n[6] ||= (e) => de()
6414
6420
  }, D(j(o).comments.cancel), 1)
6415
6421
  ])) : A("", !0),
6416
- y.value !== e.id && w.value !== e.id ? (f(), k("div", Nc, [I("button", {
6422
+ y.value !== e.id && w.value !== e.id ? (f(), k("div", Pc, [I("button", {
6417
6423
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6418
6424
  title: j(o).comments.reply,
6419
6425
  onClick: (t) => se(e.id)
@@ -6421,7 +6427,7 @@ var nc = {
6421
6427
  size: 13,
6422
6428
  "stroke-width": 2,
6423
6429
  class: "tpl:text-[var(--tpl-primary)]"
6424
- })], 8, Pc), (e.replies?.length ?? 0) > 0 ? (f(), k("button", {
6430
+ })], 8, Fc), (e.replies?.length ?? 0) > 0 ? (f(), k("button", {
6425
6431
  key: 0,
6426
6432
  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)]",
6427
6433
  onClick: (t) => oe(e.id)
@@ -6433,18 +6439,18 @@ var nc = {
6433
6439
  key: 1,
6434
6440
  size: 11,
6435
6441
  "stroke-width": 2
6436
- })), 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, Fc)) : A("", !0)])) : A("", !0)
6442
+ })), z(" " + D((e.replies?.length ?? 0) === 1 ? j(a)(j(o).comments.replyOne, { count: String(e.replies?.length ?? 0) }) : j(a)(j(o).comments.replyMany, { count: String(e.replies?.length ?? 0) })), 1)], 8, Ic)) : A("", !0)])) : A("", !0)
6437
6443
  ]),
6438
6444
  V(ie, { name: "tpl-replies" }, {
6439
- default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div", Ic, [(f(!0), k(R, null, h(e.replies, (t, r) => (f(), k("div", {
6445
+ default: b(() => [S.value.has(e.id) && (e.replies?.length ?? 0) > 0 ? (f(), k("div", Lc, [(f(!0), k(R, null, h(e.replies, (t, r) => (f(), k("div", {
6440
6446
  key: t.id,
6441
6447
  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" : ""])
6442
6448
  }, [
6443
- I("div", Lc, [I("div", Rc, [
6444
- I("span", zc, D(_e(t) ? j(o).comments.ownedByYou : t.author_name), 1),
6445
- I("span", Bc, D(ve(t.created_at)), 1),
6446
- t.updated_at === t.created_at ? A("", !0) : (f(), k("span", Vc, " (" + D(j(o).comments.edited) + ") ", 1))
6447
- ]), I("div", Hc, [_e(t) ? (f(), k("button", {
6449
+ I("div", Rc, [I("div", zc, [
6450
+ I("span", Bc, D(_e(t) ? j(o).comments.ownedByYou : t.author_name), 1),
6451
+ I("span", Vc, D(ve(t.created_at)), 1),
6452
+ t.updated_at === t.created_at ? A("", !0) : (f(), k("span", Hc, " (" + D(j(o).comments.edited) + ") ", 1))
6453
+ ]), I("div", Uc, [_e(t) ? (f(), k("button", {
6448
6454
  key: 0,
6449
6455
  class: "tpl-comment-action tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6450
6456
  title: j(o).comments.edit,
@@ -6452,7 +6458,7 @@ var nc = {
6452
6458
  }, [V(j(fi), {
6453
6459
  size: 11,
6454
6460
  "stroke-width": 2
6455
- })], 8, Uc)) : A("", !0), _e(t) ? (f(), k("button", {
6461
+ })], 8, Wc)) : A("", !0), _e(t) ? (f(), k("button", {
6456
6462
  key: 1,
6457
6463
  class: "tpl-comment-action tpl-comment-delete tpl:rounded tpl:p-1 tpl:transition-colors tpl:duration-150",
6458
6464
  title: j(o).comments.delete,
@@ -6460,26 +6466,26 @@ var nc = {
6460
6466
  }, [V(j(Ci), {
6461
6467
  size: 11,
6462
6468
  "stroke-width": 2
6463
- })], 8, Wc)) : A("", !0)])]),
6464
- y.value === t.id ? (f(), k("div", Gc, [c(I("textarea", {
6469
+ })], 8, Gc)) : A("", !0)])]),
6470
+ y.value === t.id ? (f(), k("div", Kc, [c(I("textarea", {
6465
6471
  "onUpdate:modelValue": n[7] ||= (e) => x.value = e,
6466
6472
  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)]",
6467
6473
  rows: "2",
6468
6474
  onKeydown: (e) => xe(e, t.id)
6469
- }, null, 40, Kc), [[ae, x.value]]), I("div", qc, [I("button", {
6475
+ }, null, 40, qc), [[ae, x.value]]), I("div", Jc, [I("button", {
6470
6476
  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)]",
6471
6477
  disabled: !x.value.trim() || j(u).isSubmitting.value,
6472
6478
  onClick: (e) => me(t.id)
6473
- }, D(j(o).comments.save), 9, Jc), I("button", {
6479
+ }, D(j(o).comments.save), 9, Yc), I("button", {
6474
6480
  class: "tpl:rounded-md tpl:px-2.5 tpl:py-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6475
6481
  onClick: n[8] ||= (e) => B()
6476
- }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", Yc, D(t.body), 1)),
6477
- w.value === t.id ? (f(), k("div", Xc, [
6478
- I("span", Zc, D(j(o).comments.deleteConfirm), 1),
6482
+ }, D(j(o).comments.cancel), 1)])])) : (f(), k("p", Xc, D(t.body), 1)),
6483
+ w.value === t.id ? (f(), k("div", Zc, [
6484
+ I("span", Qc, D(j(o).comments.deleteConfirm), 1),
6479
6485
  I("button", {
6480
6486
  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)]",
6481
6487
  onClick: (e) => he(t.id)
6482
- }, D(j(o).comments.delete), 9, Qc),
6488
+ }, D(j(o).comments.delete), 9, $c),
6483
6489
  I("button", {
6484
6490
  class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]",
6485
6491
  onClick: n[9] ||= (e) => de()
@@ -6489,20 +6495,20 @@ var nc = {
6489
6495
  _: 2
6490
6496
  }, 1024),
6491
6497
  V(ie, { name: "tpl-replies" }, {
6492
- default: b(() => [_.value === e.id ? (f(), k("div", $c, [I("div", el, [c(I("textarea", {
6498
+ default: b(() => [_.value === e.id ? (f(), k("div", el, [I("div", tl, [c(I("textarea", {
6493
6499
  "onUpdate:modelValue": n[10] ||= (e) => v.value = e,
6494
6500
  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)]",
6495
6501
  placeholder: j(o).comments.replyPlaceholder,
6496
6502
  rows: "2",
6497
6503
  onKeydown: (t) => be(t, e.id)
6498
- }, null, 40, tl), [[ae, v.value]]), I("div", nl, [I("button", {
6504
+ }, null, 40, nl), [[ae, v.value]]), I("div", rl, [I("button", {
6499
6505
  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)]",
6500
6506
  disabled: !v.value.trim() || j(u).isSubmitting.value,
6501
6507
  onClick: (t) => pe(e.id)
6502
6508
  }, [V(j(_i), {
6503
6509
  size: 14,
6504
6510
  "stroke-width": 2
6505
- })], 8, rl), I("button", {
6511
+ })], 8, il), I("button", {
6506
6512
  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)]",
6507
6513
  onClick: n[11] ||= (e) => ce()
6508
6514
  }, [V(j(Oi), {
@@ -6512,7 +6518,7 @@ var nc = {
6512
6518
  _: 2
6513
6519
  }, 1024)
6514
6520
  ]))), 128))]))]),
6515
- I("div", il, [ne.value ? (f(), k("div", al, D(j(o).comments.saveTemplateFirst), 1)) : (f(), k("div", ol, [c(I("textarea", {
6521
+ I("div", al, [ne.value ? (f(), k("div", ol, D(j(o).comments.saveTemplateFirst), 1)) : (f(), k("div", sl, [c(I("textarea", {
6516
6522
  ref_key: "newCommentInput",
6517
6523
  ref: ee,
6518
6524
  "onUpdate:modelValue": n[12] ||= (e) => g.value = e,
@@ -6521,7 +6527,7 @@ var nc = {
6521
6527
  disabled: j(u).isSubmitting.value,
6522
6528
  rows: "2",
6523
6529
  onKeydown: ye
6524
- }, null, 40, sl), [[ae, g.value]]), I("button", {
6530
+ }, null, 40, cl), [[ae, g.value]]), I("button", {
6525
6531
  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)]",
6526
6532
  disabled: !g.value.trim() || j(u).isSubmitting.value,
6527
6533
  onClick: fe
@@ -6534,33 +6540,33 @@ var nc = {
6534
6540
  key: 1,
6535
6541
  size: 16,
6536
6542
  "stroke-width": 2
6537
- }))], 8, cl)]))])
6543
+ }))], 8, ll)]))])
6538
6544
  ])) : A("", !0)]),
6539
6545
  _: 1
6540
6546
  }));
6541
6547
  }
6542
- }), ul = /* @__PURE__ */ e({ default: () => dl }), dl = /* @__PURE__ */ Ni(ll, [["__scopeId", "data-v-d204f573"]]), fl = {
6548
+ }), dl = /* @__PURE__ */ e({ default: () => fl }), fl = /* @__PURE__ */ Ni(ul, [["__scopeId", "data-v-d204f573"]]), pl = {
6543
6549
  key: 0,
6544
6550
  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)]"
6545
- }, pl = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, ml = { 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" }, gl = {
6551
+ }, ml = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, hl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, gl = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, _l = {
6546
6552
  key: 0,
6547
6553
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6548
- }, _l = { class: "tpl:flex tpl:w-full tpl:flex-col tpl:items-center tpl:gap-3" }, vl = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, yl = {
6554
+ }, vl = { class: "tpl:flex tpl:w-full tpl:flex-col tpl:items-center tpl:gap-3" }, yl = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, bl = {
6549
6555
  key: 1,
6550
6556
  class: "tpl:flex tpl:flex-col tpl:gap-4"
6551
- }, bl = { class: "tpl:flex tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, xl = {
6557
+ }, xl = { class: "tpl:flex tpl:gap-1 tpl:rounded-[var(--tpl-radius-sm)] tpl:p-1 tpl:bg-[var(--tpl-bg-hover)]" }, Sl = {
6552
6558
  key: 0,
6553
6559
  class: "tpl:flex tpl:flex-col tpl:gap-2"
6554
- }, Sl = { class: "tpl:relative tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, Cl = ["src", "alt"], wl = {
6560
+ }, Cl = { class: "tpl:relative tpl:overflow-hidden tpl:rounded-[var(--tpl-radius)] tpl:border tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg)]" }, wl = ["src", "alt"], Tl = {
6555
6561
  key: 1,
6556
6562
  class: "tpl:flex tpl:h-32 tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2"
6557
- }, Tl = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, El = { class: "tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, Dl = { class: "tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Ol = ["accept"], kl = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, Al = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, jl = ["placeholder"], Ml = {
6563
+ }, El = { class: "tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, Dl = { class: "tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]" }, Ol = { class: "tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, kl = ["accept"], Al = { class: "tpl:flex tpl:flex-col tpl:gap-1.5" }, jl = { class: "tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Ml = ["placeholder"], Nl = {
6558
6564
  key: 0,
6559
6565
  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)]"
6560
- }, Nl = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, Pl = { class: "tpl:flex tpl:gap-2" }, Fl = {
6566
+ }, Pl = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, Fl = { class: "tpl:flex tpl:gap-2" }, Il = {
6561
6567
  key: 1,
6562
6568
  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)]"
6563
- }, Il = ["disabled"], Ll = { class: "tpl:m-0 tpl:pt-1 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, Rl = /* @__PURE__ */ B({
6569
+ }, Ll = ["disabled"], Rl = { class: "tpl:m-0 tpl:pt-1 tpl:text-center tpl:text-[11px] tpl:text-[var(--tpl-text-dim)]" }, zl = /* @__PURE__ */ B({
6564
6570
  __name: "DesignReferenceSidebar",
6565
6571
  props: {
6566
6572
  visible: { type: Boolean },
@@ -6568,7 +6574,7 @@ var nc = {
6568
6574
  },
6569
6575
  emits: ["close", "apply"],
6570
6576
  setup(e, { emit: t }) {
6571
- let n = e, r = t, { t: i } = Ui(), a = J(Fn, "DesignReferenceSidebar"), o = as({
6577
+ let n = e, r = t, { t: i } = Ui(), a = J(Fn, "DesignReferenceSidebar"), o = os({
6572
6578
  authManager: J(ar, "DesignReferenceSidebar"),
6573
6579
  getTemplateId: () => a.state.template?.id ?? null,
6574
6580
  onApply: (e) => r("apply", e)
@@ -6640,7 +6646,7 @@ var nc = {
6640
6646
  "leave-from-class": "tpl:translate-x-0",
6641
6647
  "leave-to-class": "tpl:translate-x-full"
6642
6648
  }, {
6643
- default: b(() => [e.visible ? (f(), k("div", fl, [I("div", pl, [I("div", ml, [V(j(oi), {
6649
+ default: b(() => [e.visible ? (f(), k("div", pl, [I("div", ml, [I("div", hl, [V(j(oi), {
6644
6650
  size: 13,
6645
6651
  "stroke-width": 2
6646
6652
  }), I("span", null, D(j(i).designReference.title), 1)]), I("button", {
@@ -6649,8 +6655,8 @@ var nc = {
6649
6655
  }, [V(j(Oi), {
6650
6656
  size: 14,
6651
6657
  "stroke-width": 2
6652
- })])]), I("div", hl, [j(o).isGenerating.value ? (f(), k("div", gl, [I("div", _l, [V(Li), I("p", vl, D(j(i).designReference.generating), 1)])])) : (f(), k("div", yl, [
6653
- I("div", bl, [I("button", {
6658
+ })])]), I("div", gl, [j(o).isGenerating.value ? (f(), k("div", _l, [I("div", vl, [V(Li), I("p", yl, D(j(i).designReference.generating), 1)])])) : (f(), k("div", bl, [
6659
+ I("div", xl, [I("button", {
6654
6660
  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",
6655
6661
  style: L({
6656
6662
  backgroundColor: l.value === "image" ? "var(--tpl-bg)" : "transparent",
@@ -6673,16 +6679,16 @@ var nc = {
6673
6679
  size: 12,
6674
6680
  "stroke-width": 2
6675
6681
  }), z(" " + D(j(i).designReference.uploadPdf), 1)], 4)]),
6676
- I("div", null, [u.value ? (f(), k("div", xl, [I("div", Sl, [p.value ? (f(), k("img", {
6682
+ I("div", null, [u.value ? (f(), k("div", Sl, [I("div", Cl, [p.value ? (f(), k("img", {
6677
6683
  key: 0,
6678
6684
  src: p.value,
6679
6685
  alt: u.value.name,
6680
6686
  class: "tpl:h-auto tpl:max-h-48 tpl:w-full tpl:object-contain"
6681
- }, null, 8, Cl)) : (f(), k("div", wl, [V(j(ri), {
6687
+ }, null, 8, wl)) : (f(), k("div", Tl, [V(j(ri), {
6682
6688
  size: 32,
6683
6689
  "stroke-width": 1.5,
6684
6690
  class: "tpl:text-[var(--tpl-text-dim)]"
6685
- }), I("span", Tl, D(u.value.name), 1)])), I("button", {
6691
+ }), I("span", El, D(u.value.name), 1)])), I("button", {
6686
6692
  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)]",
6687
6693
  onClick: x
6688
6694
  }, [V(j(Oi), {
@@ -6705,8 +6711,8 @@ var nc = {
6705
6711
  "stroke-width": 1.5,
6706
6712
  class: "tpl:text-[var(--tpl-text-dim)]"
6707
6713
  }),
6708
- I("span", El, D(j(i).designReference.dropHint), 1),
6709
- I("span", Dl, D(l.value === "image" ? j(i).designReference.acceptedImages : j(i).designReference.acceptedPdf), 1)
6714
+ I("span", Dl, D(j(i).designReference.dropHint), 1),
6715
+ I("span", Ol, D(l.value === "image" ? j(i).designReference.acceptedImages : j(i).designReference.acceptedPdf), 1)
6710
6716
  ], 36)), I("input", {
6711
6717
  ref_key: "fileInput",
6712
6718
  ref: s,
@@ -6714,14 +6720,14 @@ var nc = {
6714
6720
  class: "tpl:hidden",
6715
6721
  accept: l.value === "image" ? "image/png,image/jpeg,image/webp" : "application/pdf",
6716
6722
  onChange: v
6717
- }, null, 40, Ol)]),
6718
- I("div", kl, [I("label", Al, D(j(i).designReference.promptLabel), 1), c(I("textarea", {
6723
+ }, null, 40, kl)]),
6724
+ I("div", Al, [I("label", jl, D(j(i).designReference.promptLabel), 1), c(I("textarea", {
6719
6725
  "onUpdate:modelValue": n[4] ||= (e) => d.value = e,
6720
6726
  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"]]),
6721
6727
  placeholder: j(i).designReference.promptPlaceholder,
6722
6728
  rows: "3"
6723
- }, null, 8, jl), [[ae, d.value]])]),
6724
- m.value ? (f(), k("div", Ml, [I("p", Nl, D(j(i).designReference.replaceWarning), 1), I("div", Pl, [I("button", {
6729
+ }, null, 8, Ml), [[ae, d.value]])]),
6730
+ m.value ? (f(), k("div", Nl, [I("p", Pl, D(j(i).designReference.replaceWarning), 1), I("div", Fl, [I("button", {
6725
6731
  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)]",
6726
6732
  style: { "background-color": "transparent" },
6727
6733
  onClick: E
@@ -6729,7 +6735,7 @@ var nc = {
6729
6735
  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)]",
6730
6736
  onClick: T
6731
6737
  }, D(j(i).designReference.replaceConfirm), 1)])])) : A("", !0),
6732
- j(o).error.value ? (f(), k("div", Fl, [V(j(Yr), {
6738
+ j(o).error.value ? (f(), k("div", Il, [V(j(Yr), {
6733
6739
  size: 14,
6734
6740
  "stroke-width": 2,
6735
6741
  class: "tpl:mt-0.5 tpl:shrink-0"
@@ -6742,32 +6748,32 @@ var nc = {
6742
6748
  }, [V(j(oi), {
6743
6749
  size: 16,
6744
6750
  "stroke-width": 2
6745
- }), z(" " + D(j(i).designReference.generate), 1)], 8, Il)),
6746
- I("p", Ll, D(j(i).aiMenu.disclaimer), 1)
6751
+ }), z(" " + D(j(i).designReference.generate), 1)], 8, Ll)),
6752
+ I("p", Rl, D(j(i).aiMenu.disclaimer), 1)
6747
6753
  ]))])])) : A("", !0)]),
6748
6754
  _: 1
6749
6755
  }));
6750
6756
  }
6751
- }), zl = /* @__PURE__ */ e({ default: () => Bl }), Bl = /* @__PURE__ */ Ni(Rl, [["__scopeId", "data-v-bdbf8d0d"]]), Vl = ["disabled", "title"], Hl = ["title"], Ul = {
6757
+ }), Bl = /* @__PURE__ */ e({ default: () => Vl }), Vl = /* @__PURE__ */ Ni(zl, [["__scopeId", "data-v-bdbf8d0d"]]), Hl = ["disabled", "title"], Ul = ["title"], Wl = {
6752
6758
  key: 0,
6753
6759
  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)]",
6754
6760
  style: {
6755
6761
  "backdrop-filter": "blur(8px)",
6756
6762
  "-webkit-backdrop-filter": "blur(8px)"
6757
6763
  }
6758
- }, Wl = { 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)]" }, Gl = {
6764
+ }, Gl = { 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)]" }, Kl = {
6759
6765
  key: 0,
6760
6766
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:py-8"
6761
- }, Kl = {
6767
+ }, ql = {
6762
6768
  key: 1,
6763
6769
  class: "tpl:px-3 tpl:py-6 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-muted)]"
6764
- }, ql = {
6770
+ }, Jl = {
6765
6771
  key: 2,
6766
6772
  class: "tpl:max-h-64 tpl:overflow-y-auto"
6767
- }, Jl = ["disabled", "onClick"], Yl = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, Xl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Zl = {
6773
+ }, Yl = ["disabled", "onClick"], Xl = { class: "tpl:flex tpl:flex-col tpl:gap-0.5" }, Zl = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Ql = {
6768
6774
  key: 0,
6769
6775
  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)]"
6770
- }, Ql = ["disabled", "title"], $l = /* @__PURE__ */ B({
6776
+ }, $l = ["disabled", "title"], eu = /* @__PURE__ */ B({
6771
6777
  __name: "SnapshotHistory",
6772
6778
  props: {
6773
6779
  snapshots: {},
@@ -6795,7 +6801,7 @@ var nc = {
6795
6801
  t !== -1 && (c.value = t, r("navigate", n.snapshots[t])), o.value = !1;
6796
6802
  }
6797
6803
  function _(e) {
6798
- let t = tc(e, a.snapshotHistory, i, 7);
6804
+ let t = nc(e, a.snapshotHistory, i, 7);
6799
6805
  return t === null ? new Date(e).toLocaleDateString(void 0, {
6800
6806
  month: "short",
6801
6807
  day: "numeric",
@@ -6818,7 +6824,7 @@ var nc = {
6818
6824
  }, [V(j(Kr), {
6819
6825
  size: 14,
6820
6826
  "stroke-width": 2
6821
- })], 8, Vl),
6827
+ })], 8, Hl),
6822
6828
  I("button", {
6823
6829
  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)]",
6824
6830
  title: j(a).snapshotHistory.tooltip,
@@ -6830,19 +6836,19 @@ var nc = {
6830
6836
  class: F(["tpl:transition-transform tpl:duration-150", { "tpl:rotate-180": o.value }]),
6831
6837
  size: 10,
6832
6838
  "stroke-width": 2
6833
- }, null, 8, ["class"])], 8, Hl),
6839
+ }, null, 8, ["class"])], 8, Ul),
6834
6840
  V(ie, { name: "tpl-dropdown" }, {
6835
- default: b(() => [o.value ? (f(), k("div", Ul, [I("div", Wl, D(j(a).snapshotHistory.dropdownTitle), 1), e.isLoading ? (f(), k("div", Gl, [V(j(li), {
6841
+ default: b(() => [o.value ? (f(), k("div", Wl, [I("div", Gl, D(j(a).snapshotHistory.dropdownTitle), 1), e.isLoading ? (f(), k("div", Kl, [V(j(li), {
6836
6842
  class: "tpl:animate-spin tpl:text-[var(--tpl-primary)]",
6837
6843
  size: 20,
6838
6844
  "stroke-width": 2
6839
- })])) : e.snapshots.length === 0 ? (f(), k("div", Kl, D(j(a).snapshotHistory.noSnapshots), 1)) : (f(), k("div", ql, [(f(!0), k(R, null, h(e.snapshots, (t) => (f(), k("button", {
6845
+ })])) : e.snapshots.length === 0 ? (f(), k("div", ql, D(j(a).snapshotHistory.noSnapshots), 1)) : (f(), k("div", Jl, [(f(!0), k(R, null, h(e.snapshots, (t) => (f(), k("button", {
6840
6846
  key: t.id,
6841
6847
  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)]",
6842
6848
  style: { "background-color": "transparent" },
6843
6849
  disabled: e.isRestoring,
6844
6850
  onClick: (e) => g(t.id)
6845
- }, [I("div", Yl, [I("div", Xl, [I("span", null, D(_(t.created_at)), 1), t.is_autosave ? (f(), k("span", Zl, D(j(a).snapshotHistory.auto), 1)) : A("", !0)])])], 8, Jl))), 128))]))])) : A("", !0)]),
6851
+ }, [I("div", Xl, [I("div", Zl, [I("span", null, D(_(t.created_at)), 1), t.is_autosave ? (f(), k("span", Ql, D(j(a).snapshotHistory.auto), 1)) : A("", !0)])])], 8, Yl))), 128))]))])) : A("", !0)]),
6846
6852
  _: 1
6847
6853
  }),
6848
6854
  I("button", {
@@ -6853,66 +6859,66 @@ var nc = {
6853
6859
  }, [V(j(qr), {
6854
6860
  size: 14,
6855
6861
  "stroke-width": 2
6856
- })], 8, Ql)
6862
+ })], 8, $l)
6857
6863
  ], 512));
6858
6864
  }
6859
- }), eu = /* @__PURE__ */ e({ default: () => tu }), tu = $l;
6865
+ }), tu = /* @__PURE__ */ e({ default: () => nu }), nu = eu;
6860
6866
  //#endregion
6861
6867
  //#region src/cloud/utils/scoringStyles.ts
6862
- function nu(e) {
6868
+ function ru(e) {
6863
6869
  return e >= 80 ? "var(--tpl-success)" : e >= 60 ? "var(--tpl-warning)" : "var(--tpl-danger)";
6864
6870
  }
6865
- function ru(e) {
6871
+ function iu(e) {
6866
6872
  return e >= 80 ? "var(--tpl-success-light)" : e >= 60 ? "var(--tpl-warning-light)" : "var(--tpl-danger-light)";
6867
6873
  }
6868
- function iu(e) {
6874
+ function au(e) {
6869
6875
  return e === "high" ? "var(--tpl-danger)" : e === "medium" ? "var(--tpl-warning)" : "var(--tpl-text-muted)";
6870
6876
  }
6871
- function au(e) {
6877
+ function ou(e) {
6872
6878
  return e === "high" ? "var(--tpl-danger-light)" : e === "medium" ? "var(--tpl-warning-light)" : "var(--tpl-bg-hover)";
6873
6879
  }
6874
6880
  //#endregion
6875
6881
  //#region src/cloud/components/TemplateScoringPanel.vue?vue&type=script&setup=true&lang.ts
6876
- var ou = {
6882
+ var su = {
6877
6883
  key: 0,
6878
6884
  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)]"
6879
- }, su = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, cu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, lu = { class: "tpl:flex tpl:items-center tpl:gap-1" }, uu = ["title"], du = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, fu = {
6885
+ }, cu = { class: "tpl:flex tpl:items-center tpl:justify-between tpl:border-b tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-3" }, lu = { class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-primary)]" }, uu = { class: "tpl:flex tpl:items-center tpl:gap-1" }, du = ["title"], fu = { class: "tpl:flex-1 tpl:overflow-y-auto tpl:p-4" }, pu = {
6880
6886
  key: 0,
6881
6887
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6882
- }, pu = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, mu = {
6888
+ }, mu = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, hu = {
6883
6889
  key: 1,
6884
6890
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6885
- }, hu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, gu = {
6891
+ }, gu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, _u = {
6886
6892
  key: 2,
6887
6893
  class: "tpl:flex tpl:flex-col tpl:gap-4"
6888
- }, _u = { class: "tpl:text-xs tpl:font-medium tpl:uppercase tpl:tracking-wider tpl:text-[var(--tpl-text-muted)]" }, vu = {
6894
+ }, vu = { class: "tpl:text-xs tpl:font-medium tpl:uppercase tpl:tracking-wider tpl:text-[var(--tpl-text-muted)]" }, yu = {
6889
6895
  key: 0,
6890
6896
  class: "tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
6891
- }, yu = {
6897
+ }, bu = {
6892
6898
  key: 0,
6893
6899
  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)]"
6894
- }, bu = ["onClick"], xu = { class: "tpl:flex-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Su = {
6900
+ }, xu = ["onClick"], Su = { class: "tpl:flex-1 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-text)]" }, Cu = {
6895
6901
  key: 0,
6896
6902
  class: "tpl:text-[10px] tpl:text-[var(--tpl-text-dim)]"
6897
- }, Cu = {
6903
+ }, wu = {
6898
6904
  key: 0,
6899
6905
  class: "tpl:border-t tpl:border-[var(--tpl-border)]"
6900
- }, wu = {
6906
+ }, Tu = {
6901
6907
  key: 0,
6902
6908
  class: "tpl:px-3 tpl:py-3 tpl:text-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
6903
- }, Tu = { class: "tpl:flex tpl:items-start tpl:gap-2" }, Eu = { class: "tpl:flex-1 tpl:min-w-0" }, Du = { class: "tpl:flex tpl:items-start tpl:gap-1.5" }, Ou = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, ku = {
6909
+ }, Eu = { class: "tpl:flex tpl:items-start tpl:gap-2" }, Du = { class: "tpl:flex-1 tpl:min-w-0" }, Ou = { class: "tpl:flex tpl:items-start tpl:gap-1.5" }, ku = { class: "tpl:text-xs tpl:leading-snug tpl:text-[var(--tpl-text)]" }, Au = {
6904
6910
  key: 0,
6905
6911
  class: "tpl:mt-1 tpl:text-[11px] tpl:leading-snug tpl:text-[var(--tpl-text-dim)]"
6906
- }, Au = {
6912
+ }, ju = {
6907
6913
  key: 1,
6908
6914
  class: "tpl:mt-2 tpl:flex tpl:justify-center"
6909
- }, ju = ["disabled", "onClick"], Mu = {
6915
+ }, Mu = ["disabled", "onClick"], Nu = {
6910
6916
  key: 0,
6911
6917
  class: "tpl:mt-1.5 tpl:text-[11px] tpl:text-[var(--tpl-danger)]"
6912
- }, Nu = {
6918
+ }, Pu = {
6913
6919
  key: 3,
6914
6920
  class: "tpl:flex tpl:h-full tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:text-center"
6915
- }, Pu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Fu = { 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)]" }, Iu = /* @__PURE__ */ B({
6921
+ }, Fu = { class: "tpl:max-w-[240px] tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Iu = { 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)]" }, Lu = /* @__PURE__ */ B({
6916
6922
  __name: "TemplateScoringPanel",
6917
6923
  props: { visible: { type: Boolean } },
6918
6924
  emits: ["close"],
@@ -6963,10 +6969,10 @@ var ou = {
6963
6969
  "leave-from-class": "tpl:translate-x-0",
6964
6970
  "leave-to-class": "tpl:translate-x-full"
6965
6971
  }, {
6966
- default: b(() => [e.visible ? (f(), k("div", ou, [I("div", su, [I("div", cu, [V(j(yi), {
6972
+ default: b(() => [e.visible ? (f(), k("div", su, [I("div", cu, [I("div", lu, [V(j(yi), {
6967
6973
  size: 13,
6968
6974
  "stroke-width": 2
6969
- }), I("span", null, D(j(i).scoring.title), 1)]), I("div", lu, [j(o).scoringResult.value && !j(o).isScoring.value ? (f(), k("button", {
6975
+ }), I("span", null, D(j(i).scoring.title), 1)]), I("div", uu, [j(o).scoringResult.value && !j(o).isScoring.value ? (f(), k("button", {
6970
6976
  key: 0,
6971
6977
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6972
6978
  title: j(i).scoring.rescore,
@@ -6974,19 +6980,19 @@ var ou = {
6974
6980
  }, [V(j(hi), {
6975
6981
  size: 14,
6976
6982
  "stroke-width": 2
6977
- })], 8, uu)) : A("", !0), I("button", {
6983
+ })], 8, du)) : A("", !0), I("button", {
6978
6984
  class: "tpl:rounded-md tpl:p-0.5 tpl:transition-colors tpl:duration-150 tpl:text-[var(--tpl-text-muted)]",
6979
6985
  onClick: n[1] ||= (e) => r("close")
6980
6986
  }, [V(j(Oi), {
6981
6987
  size: 14,
6982
6988
  "stroke-width": 2
6983
- })])])]), I("div", du, [j(o).isScoring.value ? (f(), k("div", fu, [I("p", pu, D(j(i).scoring.scoring), 1), V(Li, { class: "tpl:w-3/4" })])) : j(o).error.value && !j(o).scoringResult.value ? (f(), k("div", mu, [
6989
+ })])])]), I("div", fu, [j(o).isScoring.value ? (f(), k("div", pu, [I("p", mu, D(j(i).scoring.scoring), 1), V(Li, { class: "tpl:w-3/4" })])) : j(o).error.value && !j(o).scoringResult.value ? (f(), k("div", hu, [
6984
6990
  V(j(Yr), {
6985
6991
  size: 32,
6986
6992
  "stroke-width": 1.5,
6987
6993
  class: "tpl:text-[var(--tpl-danger)]"
6988
6994
  }),
6989
- I("p", hu, D(j(i).scoring.error), 1),
6995
+ I("p", gu, D(j(i).scoring.error), 1),
6990
6996
  I("button", {
6991
6997
  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)]",
6992
6998
  onClick: n[2] ||= (e) => m()
@@ -6994,19 +7000,19 @@ var ou = {
6994
7000
  size: 12,
6995
7001
  "stroke-width": 2
6996
7002
  }), z(" " + D(j(i).scoring.rescore), 1)])
6997
- ])) : j(o).scoringResult.value ? (f(), k("div", gu, [
7003
+ ])) : j(o).scoringResult.value ? (f(), k("div", _u, [
6998
7004
  I("div", {
6999
7005
  class: "tpl:flex tpl:flex-col tpl:items-center tpl:gap-2 tpl:rounded-[var(--tpl-radius)] tpl:p-5",
7000
- style: L({ backgroundColor: j(ru)(j(o).scoringResult.value.score) })
7006
+ style: L({ backgroundColor: j(iu)(j(o).scoringResult.value.score) })
7001
7007
  }, [
7002
7008
  I("span", {
7003
7009
  class: "tpl:text-4xl tpl:font-bold tpl:tabular-nums",
7004
- style: L({ color: j(nu)(j(o).scoringResult.value.score) })
7010
+ style: L({ color: j(ru)(j(o).scoringResult.value.score) })
7005
7011
  }, D(j(o).scoringResult.value.score), 5),
7006
- I("span", _u, D(j(i).scoring.overallScore), 1),
7007
- _() > 0 ? (f(), k("span", vu, D(_()) + " " + D(j(i).scoring.findings), 1)) : A("", !0)
7012
+ I("span", vu, D(j(i).scoring.overallScore), 1),
7013
+ _() > 0 ? (f(), k("span", yu, D(_()) + " " + D(j(i).scoring.findings), 1)) : A("", !0)
7008
7014
  ], 4),
7009
- j(o).fixError.value ? (f(), k("div", yu, [V(j(Yr), {
7015
+ j(o).fixError.value ? (f(), k("div", bu, [V(j(Yr), {
7010
7016
  size: 14,
7011
7017
  "stroke-width": 2,
7012
7018
  class: "tpl:mt-0.5 tpl:shrink-0"
@@ -7021,40 +7027,40 @@ var ou = {
7021
7027
  (f(), N(d(p[e]), {
7022
7028
  size: 14,
7023
7029
  "stroke-width": 2,
7024
- style: L({ color: j(nu)(j(o).scoringResult.value.categories[e].score) })
7030
+ style: L({ color: j(ru)(j(o).scoringResult.value.categories[e].score) })
7025
7031
  }, null, 8, ["style"])),
7026
- I("span", xu, D(j(i).scoring.categories[e]), 1),
7032
+ I("span", Su, D(j(i).scoring.categories[e]), 1),
7027
7033
  I("span", {
7028
7034
  class: "tpl:rounded-full tpl:px-2 tpl:py-0.5 tpl:text-xs tpl:font-semibold tpl:tabular-nums",
7029
7035
  style: L({
7030
- color: j(nu)(j(o).scoringResult.value.categories[e].score),
7031
- backgroundColor: j(ru)(j(o).scoringResult.value.categories[e].score)
7036
+ color: j(ru)(j(o).scoringResult.value.categories[e].score),
7037
+ backgroundColor: j(iu)(j(o).scoringResult.value.categories[e].score)
7032
7038
  })
7033
7039
  }, D(j(o).scoringResult.value.categories[e].score), 5),
7034
- j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span", Su, D(j(o).scoringResult.value.categories[e].findings.length), 1)) : A("", !0),
7040
+ j(o).scoringResult.value.categories[e].findings.length > 0 ? (f(), k("span", Cu, D(j(o).scoringResult.value.categories[e].findings.length), 1)) : A("", !0),
7035
7041
  V(j(Gr), {
7036
7042
  size: 12,
7037
7043
  "stroke-width": 2,
7038
7044
  class: F(["tpl:transition-transform tpl:duration-200 tpl:text-[var(--tpl-text-dim)]", c.value[e] ? "tpl:rotate-0" : "tpl:-rotate-90"])
7039
7045
  }, null, 8, ["class"])
7040
- ], 8, bu), c.value[e] ? (f(), k("div", Cu, [j(o).scoringResult.value.categories[e].findings.length === 0 ? (f(), k("div", wu, 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", {
7046
+ ], 8, xu), c.value[e] ? (f(), k("div", wu, [j(o).scoringResult.value.categories[e].findings.length === 0 ? (f(), k("div", Tu, 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", {
7041
7047
  key: e.id,
7042
7048
  class: "tpl:border-t tpl:px-3 tpl:py-2.5 first:tpl:border-t-0 tpl:border-[var(--tpl-border-light)]"
7043
- }, [I("div", Tu, [(f(), N(d(j(e.severity === "high" ? Yr : e.severity === "medium" ? wi : ci)), {
7049
+ }, [I("div", Eu, [(f(), N(d(j(e.severity === "high" ? Yr : e.severity === "medium" ? wi : ci)), {
7044
7050
  size: 13,
7045
7051
  "stroke-width": 2,
7046
7052
  class: "tpl:mt-0.5 tpl:shrink-0",
7047
- style: L({ color: j(iu)(e.severity) })
7048
- }, null, 8, ["style"])), I("div", Eu, [
7049
- I("div", Du, [I("span", {
7053
+ style: L({ color: j(au)(e.severity) })
7054
+ }, null, 8, ["style"])), I("div", Du, [
7055
+ I("div", Ou, [I("span", {
7050
7056
  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",
7051
7057
  style: L({
7052
- color: j(iu)(e.severity),
7053
- backgroundColor: j(au)(e.severity)
7058
+ color: j(au)(e.severity),
7059
+ backgroundColor: j(ou)(e.severity)
7054
7060
  })
7055
- }, D(j(i).scoring.severity[e.severity]), 5), I("span", Ou, D(e.message), 1)]),
7056
- e.suggestion ? (f(), k("p", ku, D(e.suggestion), 1)) : A("", !0),
7057
- e.blockId ? (f(), k("div", Au, [I("button", {
7061
+ }, D(j(i).scoring.severity[e.severity]), 5), I("span", ku, D(e.message), 1)]),
7062
+ e.suggestion ? (f(), k("p", Au, D(e.suggestion), 1)) : A("", !0),
7063
+ e.blockId ? (f(), k("div", ju, [I("button", {
7058
7064
  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)]",
7059
7065
  style: { "background-color": "transparent" },
7060
7066
  disabled: j(o).fixingFindingId.value !== null,
@@ -7068,27 +7074,27 @@ var ou = {
7068
7074
  key: 1,
7069
7075
  size: 11,
7070
7076
  "stroke-width": 2
7071
- })), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8, ju), j(o).fixError.value ? (f(), k("p", Mu, D(j(o).fixError.value), 1)) : A("", !0)])) : A("", !0)
7077
+ })), z(" " + D(j(o).fixingFindingId.value === e.id ? j(i).scoring.fixing : j(i).scoring.fix), 1)], 8, Mu), j(o).fixError.value ? (f(), k("p", Nu, D(j(o).fixError.value), 1)) : A("", !0)])) : A("", !0)
7072
7078
  ])])]))), 128))])) : A("", !0)])), 64))
7073
- ])) : (f(), k("div", Nu, [V(j(yi), {
7079
+ ])) : (f(), k("div", Pu, [V(j(yi), {
7074
7080
  size: 32,
7075
7081
  "stroke-width": 1.5,
7076
7082
  class: "tpl:text-[var(--tpl-text-dim)]"
7077
- }), I("p", Pu, D(j(i).scoring.emptyState), 1)])), I("p", Fu, D(j(i).aiMenu.disclaimer), 1)])])) : A("", !0)]),
7083
+ }), I("p", Fu, D(j(i).scoring.emptyState), 1)])), I("p", Iu, D(j(i).aiMenu.disclaimer), 1)])])) : A("", !0)]),
7078
7084
  _: 1
7079
7085
  }));
7080
7086
  }
7081
- }), Lu = /* @__PURE__ */ e({ default: () => Ru }), Ru = /* @__PURE__ */ Ni(Iu, [["__scopeId", "data-v-3a059e8d"]]), zu = ["aria-busy"], Bu = {
7087
+ }), Ru = /* @__PURE__ */ e({ default: () => zu }), zu = /* @__PURE__ */ Ni(Lu, [["__scopeId", "data-v-3a059e8d"]]), Bu = ["aria-busy"], Vu = {
7082
7088
  id: "tpl-test-email-title",
7083
7089
  class: "tpl:mb-4 tpl:text-sm tpl:font-semibold tpl:text-[var(--tpl-text)]"
7084
- }, Vu = { class: "tpl:mb-3" }, Hu = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Uu = ["value"], Wu = ["disabled"], Gu = ["value"], Ku = {
7090
+ }, Hu = { class: "tpl:mb-3" }, Uu = { class: "tpl:mb-1.5 tpl:block tpl:text-sm tpl:font-medium tpl:text-[var(--tpl-text-muted)]" }, Wu = ["value"], Gu = ["disabled"], Ku = ["value"], qu = {
7085
7091
  key: 0,
7086
7092
  role: "alert",
7087
7093
  class: "tpl:mb-3 tpl:text-xs tpl:text-[var(--tpl-danger)]"
7088
- }, qu = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Ju = ["disabled"], Yu = ["disabled"], Xu = {
7094
+ }, Ju = { class: "tpl:flex tpl:justify-end tpl:gap-2" }, Yu = ["disabled"], Xu = ["disabled"], Zu = {
7089
7095
  key: 0,
7090
7096
  class: "tpl:flex tpl:items-center tpl:gap-1.5"
7091
- }, Zu = { key: 1 }, Qu = /* @__PURE__ */ B({
7097
+ }, Qu = { key: 1 }, $u = /* @__PURE__ */ B({
7092
7098
  __name: "TestEmailModal",
7093
7099
  props: {
7094
7100
  visible: { type: Boolean },
@@ -7127,14 +7133,14 @@ var ou = {
7127
7133
  "box-shadow": "var(--tpl-shadow-xl)"
7128
7134
  }
7129
7135
  }, [
7130
- I("h3", Bu, D(j(i).testEmail.title), 1),
7131
- I("div", Vu, [I("label", Hu, D(j(i).testEmail.recipientLabel), 1), e.allowedEmails.length === 1 ? (f(), k("input", {
7136
+ I("h3", Vu, D(j(i).testEmail.title), 1),
7137
+ I("div", Hu, [I("label", Uu, D(j(i).testEmail.recipientLabel), 1), e.allowedEmails.length === 1 ? (f(), k("input", {
7132
7138
  key: 0,
7133
7139
  type: "text",
7134
7140
  value: a.value,
7135
7141
  disabled: "",
7136
7142
  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)]"
7137
- }, null, 8, Uu)) : c((f(), k("select", {
7143
+ }, null, 8, Wu)) : c((f(), k("select", {
7138
7144
  key: 1,
7139
7145
  "onUpdate:modelValue": n[0] ||= (e) => a.value = e,
7140
7146
  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)]",
@@ -7142,29 +7148,29 @@ var ou = {
7142
7148
  }, [(f(!0), k(R, null, h(e.allowedEmails, (e) => (f(), k("option", {
7143
7149
  key: e,
7144
7150
  value: e
7145
- }, D(e), 9, Gu))), 128))], 8, Wu)), [[w, a.value]])]),
7146
- e.error ? (f(), k("p", Ku, D(e.error), 1)) : A("", !0),
7147
- I("div", qu, [I("button", {
7151
+ }, D(e), 9, Ku))), 128))], 8, Gu)), [[w, a.value]])]),
7152
+ e.error ? (f(), k("p", qu, D(e.error), 1)) : A("", !0),
7153
+ I("div", Ju, [I("button", {
7148
7154
  type: "button",
7149
7155
  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 }]),
7150
7156
  disabled: e.isSending,
7151
7157
  onClick: s
7152
- }, D(j(i).testEmail.cancel), 11, Ju), I("button", {
7158
+ }, D(j(i).testEmail.cancel), 11, Yu), I("button", {
7153
7159
  type: "button",
7154
7160
  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)]",
7155
7161
  disabled: !a.value || e.isSending,
7156
7162
  onClick: o
7157
- }, [e.isSending ? (f(), k("span", Xu, [V(j(li), {
7163
+ }, [e.isSending ? (f(), k("span", Zu, [V(j(li), {
7158
7164
  class: "tpl:animate-spin",
7159
7165
  size: 12,
7160
7166
  "stroke-width": 2
7161
- }), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span", Zu, D(j(i).testEmail.send), 1))], 8, Yu)])
7162
- ], 8, zu)]),
7167
+ }), z(" " + D(j(i).testEmail.sending), 1)])) : (f(), k("span", Qu, D(j(i).testEmail.send), 1))], 8, Xu)])
7168
+ ], 8, Bu)]),
7163
7169
  _: 1
7164
7170
  }, 8, ["visible"]));
7165
7171
  }
7166
- }), $u = /* @__PURE__ */ e({ default: () => ed }), ed = Qu;
7172
+ }), ed = /* @__PURE__ */ e({ default: () => td }), td = $u;
7167
7173
  //#endregion
7168
- export { Wi as $, cr as $t, Ro as A, _e as An, Wr as At, Va as B, de as Bn, Un as Bt, Yo as C, st as Cn, ei as Ct, Uo as D, Ee as Dn, Yr as Dt, Ho as E, ve as En, Zr as Et, so as F, Se as Fn, Y as Ft, ha as G, Wn as Gt, za as H, ue as Hn, ur as Ht, lo as I, Te as In, or as It, sa as J, Fn as Jt, ma as K, Gn as Kt, oo as L, he as Ln, $n as Lt, Eo as M, ge as Mn, Mr as Mt, bo as N, me as Nn, xr as Nt, Vo as O, ye as On, qr as Ot, _o as P, xe as Pn, mr as Pt, Gi as Q, Zn as Qt, no as R, be as Rn, ar as Rt, Xo as S, ct as Sn, ti as St, Z as T, W as Tn, Qr as Tt, Aa as U, sr as Ut, Ba as V, fe as Vn, er as Vt, Ea as W, Rn as Wt, Xi as X, Xn as Xt, Qi as Y, zn as Yt, Ki as Z, qn as Zt, ss as _, lt as _n, ui as _t, ul as a, mn as an, Oi as at, rs as b, ht as bn, si as bt, ws as c, q as cn, Ci as ct, _s as d, tn as dn, yi as dt, lr as en, Hi as et, gs as f, en as fn, vi as ft, fs as g, wt as gn, di as gt, ps as h, Nt as hn, fi as ht, zl as i, J as in, Mi as it, Io as j, we as jn, X as jt, zo as k, Ce as kn, Gr as kt, ys as l, kn as ln, Si as lt, ms as m, on as mn, hi as mt, Lu as n, Bn as nn, Bi as nt, Xs as o, Sn as on, Ei as ot, hs as p, an as pn, _i as pt, la as q, Qn as qt, eu as r, Vn as rn, Ni as rt, Ts as s, Cn as sn, wi as st, $u as t, nr as tn, Ui as tt, vs as u, En as un, xi as ut, os as v, _t as vn, li as vt, $ as w, ot as wn, $r as wt, $o as x, vt as xn, oi as xt, is as y, yt as yn, ci as yt, eo as z, pe as zn, Hn as zt };
7174
+ export { Wi as $, cr as $t, Ro as A, _e as An, Wr as At, Va as B, de as Bn, Un as Bt, Yo as C, st as Cn, ei as Ct, Uo as D, Ee as Dn, Yr as Dt, Ho as E, ve as En, Zr as Et, so as F, Se as Fn, Y as Ft, ha as G, Wn as Gt, za as H, ue as Hn, ur as Ht, lo as I, Te as In, or as It, sa as J, Fn as Jt, ma as K, Gn as Kt, oo as L, he as Ln, $n as Lt, Eo as M, ge as Mn, Mr as Mt, bo as N, me as Nn, xr as Nt, Vo as O, ye as On, qr as Ot, _o as P, xe as Pn, mr as Pt, Gi as Q, Zn as Qt, no as R, be as Rn, ar as Rt, Xo as S, ct as Sn, ti as St, Z as T, W as Tn, Qr as Tt, Aa as U, sr as Ut, Ba as V, fe as Vn, er as Vt, Ea as W, Rn as Wt, Xi as X, Xn as Xt, Qi as Y, zn as Yt, Ki as Z, qn as Zt, cs as _, lt as _n, ui as _t, dl as a, mn as an, Oi as at, is as b, ht as bn, si as bt, Ts as c, q as cn, Ci as ct, vs as d, tn as dn, yi as dt, lr as en, Hi as et, _s as f, en as fn, vi as ft, ps as g, wt as gn, di as gt, ms as h, Nt as hn, fi as ht, Bl as i, J as in, Mi as it, Io as j, we as jn, X as jt, zo as k, Ce as kn, Gr as kt, bs as l, kn as ln, Si as lt, hs as m, on as mn, hi as mt, Ru as n, Bn as nn, Bi as nt, Zs as o, Sn as on, Ei as ot, gs as p, an as pn, _i as pt, la as q, Qn as qt, tu as r, Vn as rn, Ni as rt, Es as s, Cn as sn, wi as st, ed as t, nr as tn, Ui as tt, ys as u, En as un, xi as ut, ss as v, _t as vn, li as vt, $ as w, ot as wn, $r as wt, es as x, vt as xn, oi as xt, as as y, yt as yn, ci as yt, eo as z, pe as zn, Hn as zt };
7169
7175
 
7170
- //# sourceMappingURL=features-CwZTdcbt.js.map
7176
+ //# sourceMappingURL=features-_ar9QbVv.js.map