ai_co_discuss 0.2.73 → 0.2.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/web/modern.js CHANGED
@@ -42561,106 +42561,106 @@ var hU = /*#__PURE__*/ XH({
42561
42561
  }, IU = { class: "channel-message-byline" }, LU = { class: "channel-message-meta" }, RU = { class: "channel-message-author" }, zU = {
42562
42562
  key: 0,
42563
42563
  class: "channel-message-provenance"
42564
- }, BU = ["title"], VU = { class: "channel-message-provenance channel-message-elapsed" }, HU = ["aria-label"], UU = { key: 0 }, WU = {
42564
+ }, BU = ["title"], VU = { class: "channel-message-provenance channel-message-elapsed" }, HU = ["aria-label", "title"], UU = { key: 0 }, WU = {
42565
42565
  key: 0,
42566
42566
  class: "channel-dots",
42567
42567
  "aria-hidden": "true"
42568
42568
  }, GU = {
42569
42569
  key: 0,
42570
- class: "channel-notes",
42570
+ class: "channel-receipt",
42571
42571
  "aria-label": "过程说明"
42572
- }, KU = [
42572
+ }, KU = { class: "channel-notes is-live" }, qU = [
42573
42573
  "id",
42574
42574
  "data-author",
42575
42575
  "aria-label"
42576
- ], qU = { class: "channel-message-byline" }, JU = { class: "channel-message-meta" }, YU = { class: "channel-message-author" }, XU = {
42576
+ ], JU = { class: "channel-message-byline" }, YU = { class: "channel-message-meta" }, XU = { class: "channel-message-author" }, ZU = {
42577
42577
  key: 0,
42578
42578
  class: "channel-message-round"
42579
- }, ZU = { class: "channel-message-provenance" }, QU = ["title"], $U = { key: 0 }, eW = {
42579
+ }, QU = { class: "channel-message-provenance" }, $U = ["title"], eW = { key: 0 }, tW = {
42580
42580
  key: 0,
42581
42581
  class: "channel-message-provenance channel-message-elapsed"
42582
- }, tW = { class: "channel-message-text channel-failure-reason" }, nW = {
42582
+ }, nW = { class: "channel-message-text channel-failure-reason" }, rW = {
42583
42583
  key: 0,
42584
42584
  class: "channel-failure-actions"
42585
- }, rW = {
42585
+ }, iW = {
42586
42586
  key: 0,
42587
42587
  class: "channel-failure-error",
42588
42588
  role: "alert"
42589
- }, iW = { class: "channel-message-byline" }, aW = { class: "channel-message-meta" }, oW = { class: "channel-message-author" }, sW = { class: "channel-message-round" }, cW = { class: "channel-message-provenance" }, lW = ["title"], uW = { key: 0 }, dW = { key: 1 }, fW = {
42589
+ }, aW = { class: "channel-message-byline" }, oW = { class: "channel-message-meta" }, sW = { class: "channel-message-author" }, cW = { class: "channel-message-round" }, lW = { class: "channel-message-provenance" }, uW = ["title"], dW = { key: 0 }, fW = { key: 1 }, pW = {
42590
42590
  key: 0,
42591
42591
  class: "channel-message-provenance channel-message-elapsed"
42592
- }, pW = ["onToggle"], mW = ["aria-label"], hW = { class: "channel-notes" }, gW = {
42592
+ }, mW = ["onToggle"], hW = ["aria-label"], gW = { class: "channel-notes" }, _W = {
42593
42593
  key: 2,
42594
42594
  class: "channel-receipt"
42595
- }, _W = ["aria-label"], vW = ["innerHTML"], yW = {
42595
+ }, vW = ["aria-label"], yW = ["innerHTML"], bW = {
42596
42596
  key: 3,
42597
42597
  class: "channel-answer"
42598
- }, bW = ["id", "innerHTML"], xW = {
42598
+ }, xW = ["id", "innerHTML"], SW = {
42599
42599
  key: 4,
42600
42600
  class: "channel-answer-summary"
42601
- }, SW = { key: 0 }, CW = ["innerHTML"], wW = ["innerHTML"], TW = { key: 0 }, EW = ["title"], DW = { key: 1 }, OW = { key: 2 }, kW = {
42601
+ }, CW = { key: 0 }, wW = ["innerHTML"], TW = ["innerHTML"], EW = { key: 0 }, DW = ["title"], OW = { key: 1 }, kW = { key: 2 }, AW = {
42602
42602
  key: 7,
42603
42603
  class: "channel-response-suggestions",
42604
42604
  "aria-label": "回应建议"
42605
- }, AW = { key: 0 }, jW = { key: 1 }, MW = ["aria-label"], NW = { key: 0 }, PW = { key: 1 }, FW = { class: "channel-message-actions" }, IW = { class: "channel-message-toolbar" }, LW = { key: 0 }, RW = { key: 1 }, zW = ["aria-pressed", "onClick"], BW = ["aria-pressed", "onClick"], VW = { key: 0 }, HW = ["onSubmit"], UW = ["value"], WW = { class: "channel-message-byline" }, GW = { class: "channel-message-meta" }, KW = { class: "channel-message-author" }, qW = { class: "channel-message-provenance channel-message-elapsed" }, JW = {
42605
+ }, jW = { key: 0 }, MW = { key: 1 }, NW = ["aria-label"], PW = { key: 0 }, FW = { key: 1 }, IW = { class: "channel-message-actions" }, LW = { class: "channel-message-toolbar" }, RW = { key: 0 }, zW = { key: 1 }, BW = ["aria-pressed", "onClick"], VW = ["aria-pressed", "onClick"], HW = { key: 0 }, UW = ["onSubmit"], WW = ["value"], GW = { class: "channel-message-byline" }, KW = { class: "channel-message-meta" }, qW = { class: "channel-message-author" }, JW = { class: "channel-message-provenance channel-message-elapsed" }, YW = {
42606
42606
  key: 2,
42607
42607
  class: "channel-message-group"
42608
- }, YW = {
42608
+ }, XW = {
42609
42609
  key: 3,
42610
42610
  class: "channel-message-group"
42611
- }, XW = ["aria-label"], ZW = { class: "channel-message-byline" }, QW = { class: "channel-message-meta" }, $W = { class: "channel-message-author" }, eG = {
42611
+ }, ZW = ["aria-label"], QW = { class: "channel-message-byline" }, $W = { class: "channel-message-meta" }, eG = { class: "channel-message-author" }, tG = {
42612
42612
  key: 0,
42613
42613
  class: "channel-message-round"
42614
- }, tG = { class: "channel-message-provenance channel-message-elapsed" }, nG = ["aria-label"], rG = { key: 0 }, iG = {
42614
+ }, nG = { class: "channel-message-provenance channel-message-elapsed" }, rG = ["aria-label"], iG = { key: 0 }, aG = {
42615
42615
  key: 4,
42616
42616
  class: "channel-empty"
42617
- }, aG = {
42617
+ }, oG = {
42618
42618
  key: 2,
42619
42619
  class: "channel-latest-dock"
42620
- }, oG = { class: "channel-composer-dock" }, sG = [
42620
+ }, sG = { class: "channel-composer-dock" }, cG = [
42621
42621
  "id",
42622
42622
  "aria-selected",
42623
42623
  "onClick",
42624
42624
  "onPointermove"
42625
- ], cG = {
42625
+ ], lG = {
42626
42626
  key: 0,
42627
42627
  class: "channel-mention-empty"
42628
- }, lG = {
42628
+ }, uG = {
42629
42629
  key: 0,
42630
42630
  class: "attachment-drafts"
42631
- }, uG = [
42631
+ }, dG = [
42632
42632
  "src",
42633
42633
  "alt",
42634
42634
  "title"
42635
- ], dG = ["innerHTML"], fG = { class: "attachment-name" }, pG = ["title"], mG = [
42635
+ ], fG = ["innerHTML"], pG = { class: "attachment-name" }, mG = ["title"], hG = [
42636
42636
  "aria-label",
42637
42637
  "disabled",
42638
42638
  "onClick"
42639
- ], hG = ["role"], gG = {
42639
+ ], gG = ["role"], _G = {
42640
42640
  key: 2,
42641
42641
  class: "channel-reply-draft channel-queue-hint"
42642
- }, _G = {
42642
+ }, vG = {
42643
42643
  key: 3,
42644
42644
  class: "channel-reply-draft channel-queue-hint"
42645
- }, vG = {
42645
+ }, yG = {
42646
42646
  key: 4,
42647
42647
  class: "channel-reply-draft"
42648
- }, yG = {
42648
+ }, bG = {
42649
42649
  key: 5,
42650
42650
  class: "channel-answer-editor"
42651
- }, bG = ["innerHTML"], xG = {
42651
+ }, xG = ["innerHTML"], SG = {
42652
42652
  key: 0,
42653
42653
  class: "channel-free-recipients",
42654
42654
  role: "group",
42655
42655
  "aria-label": "代发在线成员的回答"
42656
- }, SG = ["aria-pressed", "onClick"], CG = {
42656
+ }, CG = ["aria-pressed", "onClick"], wG = {
42657
42657
  key: 1,
42658
42658
  class: "channel-composer-identity"
42659
- }, wG = { class: "channel-composer-note" }, TG = { key: 0 }, EG = { key: 1 }, DG = { class: "channel-draft-length" }, OG = 6, kG = .9, AG = 160, jG = 100, MG = 4, NG = 3, PG = 320, FG = 34, IG = 12, LG = 16, RG = 14, zG = 8, BG = 28, VG = 18, HG = 1, UG = 1.5, WG = 3, GG = 6, KG = .62, qG = .72, JG = .88, YG = .16, XG = 12, ZG = 450, QG = 8, $G = 70, eK = 20, tK = 1, nK = 18.566573373612275, rK = 78.16726685662772 / 8, iK = 15, aK = 180, oK = 1e3, sK = "全体成员", cK = "全体依次", lK = 2e3, uK = /*#__PURE__*/ XH({
42659
+ }, TG = { class: "channel-composer-note" }, EG = { key: 0 }, DG = { key: 1 }, OG = { class: "channel-draft-length" }, kG = 6, AG = .9, jG = 160, MG = 100, NG = 4, PG = 3, FG = 320, IG = 34, LG = 12, RG = 16, zG = 14, BG = 8, VG = 28, HG = 18, UG = 1, WG = 1.5, GG = 3, KG = 6, qG = .62, JG = .72, YG = .88, XG = .16, ZG = 12, QG = 450, $G = 8, eK = 70, tK = 20, nK = 1, rK = 18.566573373612275, iK = 78.16726685662772 / 8, aK = 180, oK = 1e3, sK = "全体成员", cK = "全体依次", lK = 2e3, uK = /*#__PURE__*/ XH({
42660
42660
  __name: "ChannelDiscussion",
42661
42661
  emits: ["detail", "edit"],
42662
42662
  setup(e, { emit: t }) {
42663
- let n = t, r = null, { view: i, bridge: a, field: o, act: s, pending: c } = xr("discussion"), l = o("message-input"), u = Z(() => [...l.value].length), d = Z(() => u.value >= a.max_message_length * kG), f = o("author-select"), p = o("message-kind"), m = o("message-summary"), h = o("message-summary-source"), g = Z(() => ["opinion", "forward"].includes(p.value) && f.value !== "用户"), _ = [{
42663
+ let n = t, r = null, { view: i, bridge: a, field: o, act: s, pending: c } = xr("discussion"), l = o("message-input"), u = Z(() => [...l.value].length), d = Z(() => u.value >= a.max_message_length * AG), f = o("author-select"), p = o("message-kind"), m = o("message-summary"), h = o("message-summary-source"), g = Z(() => ["opinion", "forward"].includes(p.value) && f.value !== "用户"), _ = [{
42664
42664
  value: "author",
42665
42665
  label: "原作者摘要"
42666
42666
  }, {
@@ -42674,7 +42674,7 @@ var hU = /*#__PURE__*/ XH({
42674
42674
  }, ae = null, oe = !1, se = TV(0, j), ce = TV(0, j), le = TV(0, j), ue = CV(le, [0, 1], [.96, 1]), de = CV(le, [0, 1], [-8, 0]), pe = CV(le, [0, 1], [0, 1]), me = Z(() => i.value.messages.find((e) => e.id === D.value)), he = Z(() => nn.value.find((e) => e.messages.some((e) => e.id === D.value))), ge = Z(() => he.value?.label), N = Z(() => k.value ? sn.value.findIndex((e) => e.key === O.value) : -1), _e = /* @__PURE__ */ F(null), ve = /* @__PURE__ */ F(!0), ye = Z(() => i.value.room), be = /* @__PURE__ */ F(null);
42675
42675
  R(() => [].concat(be.value ?? []), (e, t, n) => {
42676
42676
  if (!e.length) return;
42677
- let r = tK / nK, i = rK / nK, a = 0, o = 0, s = performance.now(), c = 0;
42677
+ let r = nK / rK, i = iK / rK, a = 0, o = 0, s = performance.now(), c = 0;
42678
42678
  e.forEach((e) => e.classList.add("is-glowing"));
42679
42679
  function l(t) {
42680
42680
  let n = (t - s) / 1e3, u = Math.exp(-n / r);
@@ -42749,27 +42749,17 @@ var hU = /*#__PURE__*/ XH({
42749
42749
  return ((Ee.value ? ye.value.free : ye.value.asks)?.executions || []).find((t) => t.answer_id === e.id);
42750
42750
  }
42751
42751
  function Ne(e) {
42752
- if (!e.working) return null;
42753
- if (qe.includes(e.adapter)) return {
42754
- text: "此接入方式看不到进度,可在原窗口查看",
42755
- tone: "muted"
42756
- };
42757
- let t = e.activity_at || e.created_at, n = Math.max(0, Oe.value - t);
42758
- return !e.activity_at && n < aK ? {
42759
- text: "等待软件输出",
42760
- tone: "muted"
42761
- } : n <= iK ? {
42762
- text: "活动中",
42763
- tone: "active"
42764
- } : n < aK ? {
42765
- text: `${gt(n)}前有输出`,
42766
- tone: "muted"
42752
+ let t = Math.max(0, Oe.value - (e.activity_at || e.created_at));
42753
+ return !e.working || qe.includes(e.adapter) || t < aK ? {
42754
+ text: e.text,
42755
+ live: e.working
42767
42756
  } : e.activity === "command" ? {
42768
- text: `命令已运行 ${gt(n)}`,
42769
- tone: "muted"
42757
+ text: `命令已运行 ${gt(t)}`,
42758
+ live: !0
42770
42759
  } : {
42771
- text: `已 ${gt(n)}无输出,可能卡住`,
42772
- tone: "warning"
42760
+ text: `已 ${gt(t)}无输出,可能卡住`,
42761
+ live: !1,
42762
+ warning: !0
42773
42763
  };
42774
42764
  }
42775
42765
  let Pe = Z(() => {
@@ -43111,12 +43101,12 @@ var hU = /*#__PURE__*/ XH({
43111
43101
  for (let t of e.querySelectorAll("pre code, tbody")) {
43112
43102
  let n = e.ownerDocument.createRange();
43113
43103
  if (t.tagName === "TBODY") {
43114
- if (t.children.length <= NG) continue;
43104
+ if (t.children.length <= PG) continue;
43115
43105
  n.setStartAfter(t.children[2]);
43116
43106
  } else {
43117
43107
  let e = t.textContent.trimEnd().split("\n");
43118
- if (e.length <= MG) continue;
43119
- n.setStart(t.firstChild, e.slice(0, MG).join("\n").length);
43108
+ if (e.length <= NG) continue;
43109
+ n.setStart(t.firstChild, e.slice(0, NG).join("\n").length);
43120
43110
  }
43121
43111
  return n.setEnd(e, e.childNodes.length), n.deleteContents(), !0;
43122
43112
  }
@@ -43133,11 +43123,11 @@ var hU = /*#__PURE__*/ XH({
43133
43123
  let r = Jt(n.content), i = document.createTreeWalker(n.content, NodeFilter.SHOW_TEXT, { acceptNode: (e) => e.parentElement?.closest(".katex-mathml") ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT }), a = [];
43134
43124
  for (; i.nextNode();) a.push(i.currentNode);
43135
43125
  let o = [...a.map((e) => e.textContent).join("").trimEnd()];
43136
- if (o.length <= AG) return {
43126
+ if (o.length <= jG) return {
43137
43127
  truncated: r,
43138
43128
  html: n.innerHTML
43139
43129
  };
43140
- let s = o.slice(0, AG).join(""), c = [...s.matchAll(/[。!?;]\s*|[.!?;](?:\s|$)|\n/gu)].at(-1), l = c ? c.index + c[0].length : 0, u = [...s.slice(0, l)].length >= jG, d = u ? l : s.length;
43130
+ let s = o.slice(0, jG).join(""), c = [...s.matchAll(/[。!?;]\s*|[.!?;](?:\s|$)|\n/gu)].at(-1), l = c ? c.index + c[0].length : 0, u = [...s.slice(0, l)].length >= MG, d = u ? l : s.length;
43141
43131
  for (let e of a) {
43142
43132
  if (d > e.textContent.length) {
43143
43133
  d -= e.textContent.length;
@@ -43242,14 +43232,14 @@ var hU = /*#__PURE__*/ XH({
43242
43232
  function un() {
43243
43233
  let e = y.value;
43244
43234
  if (!e || !e.clientHeight) return;
43245
- ve.value = e.scrollHeight - e.scrollTop - e.clientHeight < $G;
43235
+ ve.value = e.scrollHeight - e.scrollTop - e.clientHeight < eK;
43246
43236
  let t = e.getBoundingClientRect(), n = cn(e), r = [...e.querySelectorAll("[data-message-id]")], i = r.find((e) => Number(e.dataset.messageId) === E.value);
43247
43237
  if (i && i.getBoundingClientRect().bottom > n && i.getBoundingClientRect().top < t.bottom) {
43248
43238
  T.value = E.value;
43249
43239
  return;
43250
43240
  }
43251
43241
  E.value = null;
43252
- let a = r.find((e) => e.getBoundingClientRect().bottom > n + eK);
43242
+ let a = r.find((e) => e.getBoundingClientRect().bottom > n + tK);
43253
43243
  T.value = a ? Number(a.dataset.messageId) : null;
43254
43244
  }
43255
43245
  async function dn() {
@@ -43271,11 +43261,11 @@ var hU = /*#__PURE__*/ XH({
43271
43261
  }), R(() => i.value.room?.id, () => b.value.clear());
43272
43262
  async function fn(e, t) {
43273
43263
  let n = t.currentTarget.closest("[data-message-id]"), r = b.value.has(e.id), i = y.value.scrollTop;
43274
- ve.value = !1, r ? b.value.delete(e.id) : b.value.add(e.id), kn(), await Qn(), r || (y.value.scrollTop = i), r && n.getBoundingClientRect().top < cn(y.value) && (y.value.scrollTop += n.getBoundingClientRect().top - cn(y.value) - eK), un();
43264
+ ve.value = !1, r ? b.value.delete(e.id) : b.value.add(e.id), kn(), await Qn(), r || (y.value.scrollTop = i), r && n.getBoundingClientRect().top < cn(y.value) && (y.value.scrollTop += n.getBoundingClientRect().top - cn(y.value) - tK), un();
43275
43265
  }
43276
43266
  function pn(e) {
43277
43267
  let t = y.value, n = t?.querySelector(`[data-message-id="${e}"]`);
43278
- n && (On(), E.value = e, T.value = e, t.scrollTop += n.getBoundingClientRect().top - cn(t) - eK, n.focus({ preventScroll: !0 }), un());
43268
+ n && (On(), E.value = e, T.value = e, t.scrollTop += n.getBoundingClientRect().top - cn(t) - tK, n.focus({ preventScroll: !0 }), un());
43279
43269
  }
43280
43270
  function mn(e) {
43281
43271
  (e.type !== "keydown" || [
@@ -43304,7 +43294,7 @@ var hU = /*#__PURE__*/ XH({
43304
43294
  let t = C.value;
43305
43295
  if (!t?.clientHeight || !e) return;
43306
43296
  let n = t.getBoundingClientRect(), r = e.getBoundingClientRect();
43307
- r.top < n.top + XG ? t.scrollTop += r.top - n.top - XG : r.bottom > n.bottom - XG && (t.scrollTop += r.bottom - n.bottom + XG);
43297
+ r.top < n.top + ZG ? t.scrollTop += r.top - n.top - ZG : r.bottom > n.bottom - ZG && (t.scrollTop += r.bottom - n.bottom + ZG);
43308
43298
  }
43309
43299
  async function _n() {
43310
43300
  await Qn(), gn(C.value?.querySelector(`[data-jump-id="${T.value}"]`));
@@ -43324,7 +43314,7 @@ var hU = /*#__PURE__*/ XH({
43324
43314
  };
43325
43315
  ae = n, n.timer = setTimeout(() => {
43326
43316
  ae === n && (oe = !0, Dn(e, { currentTarget: n.target }));
43327
- }, ZG);
43317
+ }, QG);
43328
43318
  }
43329
43319
  function bn() {
43330
43320
  ae && clearTimeout(ae.timer), ae = null;
@@ -43333,7 +43323,7 @@ var hU = /*#__PURE__*/ XH({
43333
43323
  ae?.pointer === e.pointerId && (e.type === "pointercancel" && (oe = !0), On());
43334
43324
  }
43335
43325
  function Sn(e, t) {
43336
- ["touch", "pen"].includes(t.pointerType) ? ae?.pointer === t.pointerId && Math.hypot(t.clientX - ae.x, t.clientY - ae.y) > QG && (oe = !0, On()) : t.type === "pointerenter" && w.value || (w.value = !1, (O.value !== e.key || !k.value) && Dn(e, t));
43326
+ ["touch", "pen"].includes(t.pointerType) ? ae?.pointer === t.pointerId && Math.hypot(t.clientX - ae.x, t.clientY - ae.y) > $G && (oe = !0, On()) : t.type === "pointerenter" && w.value || (w.value = !1, (O.value !== e.key || !k.value) && Dn(e, t));
43337
43327
  }
43338
43328
  function Cn(e, t) {
43339
43329
  oe && t.detail !== 0 ? (oe = !1, t.preventDefault()) : pn(e.message.id);
@@ -43348,11 +43338,11 @@ var hU = /*#__PURE__*/ XH({
43348
43338
  On(), E.value = null, ve.value = !0, dn();
43349
43339
  }
43350
43340
  async function Dn(e, t) {
43351
- let n = e.message, r = t.currentTarget.getBoundingClientRect(), i = C.value.getBoundingClientRect(), a = Math.min(PG, innerWidth - 24), o = i.right + LG;
43352
- if (ne.value = Math.max(IG, Math.min(o, innerWidth - a - IG)), D.value = n.id, O.value = e.key, ee.value = e.round, k.value = !0, await Qn(), !k.value || O.value !== e.key) return;
43353
- ie.value = te.value.scrollHeight + FG;
43354
- let s = (Math.max(r.top, i.top + XG) + Math.min(r.bottom, i.bottom - XG)) / 2 - ie.value / 2;
43355
- re.value = Math.max(IG, Math.min(s, innerHeight - ie.value - IG));
43341
+ let n = e.message, r = t.currentTarget.getBoundingClientRect(), i = C.value.getBoundingClientRect(), a = Math.min(FG, innerWidth - 24), o = i.right + RG;
43342
+ if (ne.value = Math.max(LG, Math.min(o, innerWidth - a - LG)), D.value = n.id, O.value = e.key, ee.value = e.round, k.value = !0, await Qn(), !k.value || O.value !== e.key) return;
43343
+ ie.value = te.value.scrollHeight + IG;
43344
+ let s = (Math.max(r.top, i.top + ZG) + Math.min(r.bottom, i.bottom - ZG)) / 2 - ie.value / 2;
43345
+ re.value = Math.max(LG, Math.min(s, innerHeight - ie.value - LG));
43356
43346
  let c = A.value || le.get() === 0;
43357
43347
  se[c ? "jump" : "set"](re.value), ce[c ? "jump" : "set"](ie.value);
43358
43348
  }
@@ -43367,14 +43357,14 @@ var hU = /*#__PURE__*/ XH({
43367
43357
  }
43368
43358
  function jn(e) {
43369
43359
  let t = e.entries.length - 1;
43370
- return Math.max(-3, Math.min(t + WG, N.value - e.entries[0].index));
43360
+ return Math.max(-3, Math.min(t + GG, N.value - e.entries[0].index));
43371
43361
  }
43372
43362
  function Mn(e, t) {
43373
- let n = N.value < 0 ? Infinity : Math.abs(t - N.value), r = Math.max(0, 1 - n / WG), i = T.value === e.message.id, a = n === 0 || i && N.value < 0, o = zG;
43363
+ let n = N.value < 0 ? Infinity : Math.abs(t - N.value), r = Math.max(0, 1 - n / GG), i = T.value === e.message.id, a = n === 0 || i && N.value < 0, o = BG;
43374
43364
  return {
43375
- scaleX: a ? BG / o : i ? VG / o : 1 + r * GG / o,
43376
- height: a ? UG : HG,
43377
- opacity: a ? JG : i ? qG : KG + r * YG
43365
+ scaleX: a ? VG / o : i ? HG / o : 1 + r * KG / o,
43366
+ height: a ? WG : UG,
43367
+ opacity: a ? YG : i ? JG : qG + r * XG
43378
43368
  };
43379
43369
  }
43380
43370
  R([k, A], () => {
@@ -43386,7 +43376,7 @@ var hU = /*#__PURE__*/ XH({
43386
43376
  if (!e) return;
43387
43377
  e.rows = 1;
43388
43378
  let t = getComputedStyle(e), n = (e.scrollHeight - parseFloat(t.paddingTop) - parseFloat(t.paddingBottom)) / parseFloat(t.lineHeight);
43389
- e.rows = Math.min(Math.max(Math.floor(n), 1), OG);
43379
+ e.rows = Math.min(Math.max(Math.floor(n), 1), kG);
43390
43380
  }
43391
43381
  let Pn = 0, Fn = new ResizeObserver(([e]) => {
43392
43382
  Math.round(e.contentRect.width) !== Pn && (Pn = Math.round(e.contentRect.width), Nn());
@@ -43457,7 +43447,7 @@ var hU = /*#__PURE__*/ XH({
43457
43447
  ref_key: "message_map",
43458
43448
  ref: C,
43459
43449
  class: "channel-message-map",
43460
- style: fe({ "--nav-entry-height": `${RG}px` }),
43450
+ style: fe({ "--nav-entry-height": `${zG}px` }),
43461
43451
  "aria-label": "发言快速导航",
43462
43452
  onWheelPassive: uu(Tn, ["stop"]),
43463
43453
  onPointerleave: On,
@@ -43522,7 +43512,7 @@ var hU = /*#__PURE__*/ XH({
43522
43512
  opacity: I(pe),
43523
43513
  scale: I(ue),
43524
43514
  height: I(ce),
43525
- "--preview-gap": `${LG}px`
43515
+ "--preview-gap": `${RG}px`
43526
43516
  }),
43527
43517
  onPointerleave: On,
43528
43518
  onFocusout: On,
@@ -43659,25 +43649,26 @@ var hU = /*#__PURE__*/ XH({
43659
43649
  K("div", LU, [K("div", RU, [K("strong", null, P(I(a).display_name(e.author)), 1)]), e.created_at ? (U(), W("div", zU, [K("time", { title: (/* @__PURE__ */ new Date(e.created_at * 1e3)).toLocaleString("zh-CN") }, P(I(a).format_time(e.created_at * 1e3)), 9, BU)])) : Y("", !0)]),
43660
43650
  K("span", VU, P(e.waiting ? `手动启动${e.created_at ? ` · 已等 ${gt(Math.max(0, Oe.value - e.created_at))}` : ""}` : `已用 ${gt(Math.max(0, Oe.value - e.created_at))}`), 1)
43661
43651
  ]),
43662
- K("div", {
43663
- class: M(["channel-message-text", { "is-breathing": e.working }]),
43652
+ (U(!0), W(H, null, B([Ne(e)], (n) => (U(), W("div", {
43653
+ key: e.id,
43654
+ class: M(["channel-message-text", {
43655
+ "is-breathing": n.live,
43656
+ "channel-working-warning": n.warning
43657
+ }]),
43664
43658
  role: "status",
43665
- "aria-label": `${I(a).display_name(e.author)} ${e.text}`
43659
+ "aria-label": `${I(a).display_name(e.author)} ${n.text}`,
43660
+ title: qe.includes(e.adapter) ? "此接入方式看不到进度,可在原窗口查看" : void 0
43666
43661
  }, [e.waiting ? (U(), W("span", UU, P(e.text), 1)) : (U(), W(H, { key: 1 }, [K("span", {
43667
43662
  ref_for: !0,
43668
43663
  ref_key: "reply_glow",
43669
43664
  ref: be,
43670
43665
  class: "channel-reply-glow"
43671
- }, P(e.text), 513), e.working ? (U(), W("span", WU, [...t[27] ||= [
43666
+ }, P(n.text), 513), n.live ? (U(), W("span", WU, [...t[27] ||= [
43672
43667
  K("i", null, ".", -1),
43673
43668
  K("i", null, ".", -1),
43674
43669
  K("i", null, ".", -1)
43675
- ]])) : Y("", !0)], 64))], 10, HU),
43676
- Ae.value.get(e.execution_id)?.length ? (U(), W("ol", GU, [(U(!0), W(H, null, B(Ae.value.get(e.execution_id), (e) => (U(), W("li", { key: e.seq }, P(e.text), 1))), 128))])) : Y("", !0),
43677
- Ne(e) ? (U(), W("div", {
43678
- key: 1,
43679
- class: M(["channel-activity", `is-${Ne(e).tone}`])
43680
- }, P(Ne(e).text), 3)) : Y("", !0)
43670
+ ]])) : Y("", !0)], 64))], 10, HU))), 128)),
43671
+ Ae.value.get(e.execution_id)?.length ? (U(), W("div", GU, [K("ol", KU, [(U(!0), W(H, null, B(Ae.value.get(e.execution_id), (e) => (U(), W("li", { key: e.seq }, P(e.text), 1))), 128))])])) : Y("", !0)
43681
43672
  ]),
43682
43673
  _: 2
43683
43674
  }, 1032, ["id", "data-author"])) : e.failure ? (U(), W("section", {
@@ -43687,7 +43678,7 @@ var hU = /*#__PURE__*/ XH({
43687
43678
  "data-author": I(a).identities[e.author]?.style,
43688
43679
  "aria-label": `${I(a).display_name(e.author)} 执行失败`
43689
43680
  }, [
43690
- K("div", qU, [
43681
+ K("div", JU, [
43691
43682
  q(x, {
43692
43683
  src: I(a).identities[e.author]?.icon,
43693
43684
  text: I(a).identities[e.author]?.initials || "?",
@@ -43700,24 +43691,24 @@ var hU = /*#__PURE__*/ XH({
43700
43691
  "alt",
43701
43692
  "class"
43702
43693
  ]),
43703
- K("div", JU, [K("div", YU, [
43694
+ K("div", YU, [K("div", XU, [
43704
43695
  K("strong", null, P(I(a).display_name(e.author)), 1),
43705
- e.failure.role === "host" ? (U(), W("span", XU, "主持工作")) : Y("", !0),
43696
+ e.failure.role === "host" ? (U(), W("span", ZU, "主持工作")) : Y("", !0),
43706
43697
  q(D, {
43707
43698
  label: "执行失败",
43708
43699
  color: "error",
43709
43700
  variant: "soft",
43710
43701
  size: "xs"
43711
43702
  })
43712
- ]), K("div", ZU, [
43713
- K("time", { title: new Date(e.created_at).toLocaleString("zh-CN") }, P(I(a).format_time(e.created_at)), 9, QU),
43703
+ ]), K("div", QU, [
43704
+ K("time", { title: new Date(e.created_at).toLocaleString("zh-CN") }, P(I(a).format_time(e.created_at)), 9, $U),
43714
43705
  K("span", null, "执行 #" + P(e.failure.id), 1),
43715
- e.failure.turn_id ? (U(), W("span", $U, "安排 #" + P(e.failure.turn_id), 1)) : Y("", !0)
43706
+ e.failure.turn_id ? (U(), W("span", eW, "安排 #" + P(e.failure.turn_id), 1)) : Y("", !0)
43716
43707
  ])]),
43717
- e.failure.elapsed_seconds == null ? Y("", !0) : (U(), W("span", eW, "耗时 " + P(gt(e.failure.elapsed_seconds)), 1))
43708
+ e.failure.elapsed_seconds == null ? Y("", !0) : (U(), W("span", tW, "耗时 " + P(gt(e.failure.elapsed_seconds)), 1))
43718
43709
  ]),
43719
- K("p", tW, P(e.failure.result || "执行失败,未提供原因"), 1),
43720
- e.can_retry ? (U(), W("div", nW, [q(o, {
43710
+ K("p", nW, P(e.failure.result || "执行失败,未提供原因"), 1),
43711
+ e.can_retry ? (U(), W("div", rW, [q(o, {
43721
43712
  label: "重试",
43722
43713
  icon: "i-lucide-rotate-ccw",
43723
43714
  size: "sm",
@@ -43732,8 +43723,8 @@ var hU = /*#__PURE__*/ XH({
43732
43723
  "loading",
43733
43724
  "disabled",
43734
43725
  "onClick"
43735
- ]), I(i).free_error ? (U(), W("p", rW, P(I(i).free_error), 1)) : Y("", !0)])) : Y("", !0)
43736
- ], 8, KU)) : (U(), W(H, { key: 4 }, [
43726
+ ]), I(i).free_error ? (U(), W("p", iW, P(I(i).free_error), 1)) : Y("", !0)])) : Y("", !0)
43727
+ ], 8, qU)) : (U(), W(H, { key: 4 }, [
43737
43728
  nc([
43738
43729
  e,
43739
43730
  I(i).admin?.identity_version,
@@ -43767,7 +43758,7 @@ var hU = /*#__PURE__*/ XH({
43767
43758
  }
43768
43759
  }, {
43769
43760
  body: L(() => [
43770
- K("div", iW, [
43761
+ K("div", aW, [
43771
43762
  q(x, {
43772
43763
  src: I(a).identities[e.author]?.icon,
43773
43764
  text: I(a).identities[e.author]?.initials || "?",
@@ -43780,9 +43771,9 @@ var hU = /*#__PURE__*/ XH({
43780
43771
  "alt",
43781
43772
  "class"
43782
43773
  ]),
43783
- K("div", aW, [K("div", oW, [
43774
+ K("div", oW, [K("div", sW, [
43784
43775
  K("strong", null, P(I(a).display_name(e.author)), 1),
43785
- K("span", sW, P(an.value.get(e.id)), 1),
43776
+ K("span", cW, P(an.value.get(e.id)), 1),
43786
43777
  q(D, {
43787
43778
  size: "xs",
43788
43779
  color: "neutral",
@@ -43834,8 +43825,8 @@ var hU = /*#__PURE__*/ XH({
43834
43825
  default: L(() => [J(P(e.label), 1)]),
43835
43826
  _: 2
43836
43827
  }, 1032, ["color", "title"]))), 128))
43837
- ]), K("div", cW, [
43838
- K("time", { title: new Date(e.created_at).toLocaleString("zh-CN") }, P(I(a).format_time(e.created_at)), 9, lW),
43828
+ ]), K("div", lW, [
43829
+ K("time", { title: new Date(e.created_at).toLocaleString("zh-CN") }, P(I(a).format_time(e.created_at)), 9, uW),
43839
43830
  q(o, {
43840
43831
  label: `#${e.id}`,
43841
43832
  color: "neutral",
@@ -43849,10 +43840,10 @@ var hU = /*#__PURE__*/ XH({
43849
43840
  "aria-label",
43850
43841
  "onClick"
43851
43842
  ]),
43852
- e.submitted_by && e.submitted_by !== e.author && (e.source !== "proxy" || e.submitted_by !== "用户") ? (U(), W("span", uW, P(I(a).display_name(e.submitted_by)) + " 代发", 1)) : Y("", !0),
43853
- e.turn_id ? (U(), W("span", dW, "回答安排 #" + P(e.turn_id), 1)) : Y("", !0)
43843
+ e.submitted_by && e.submitted_by !== e.author && (e.source !== "proxy" || e.submitted_by !== "用户") ? (U(), W("span", dW, P(I(a).display_name(e.submitted_by)) + " 代发", 1)) : Y("", !0),
43844
+ e.turn_id ? (U(), W("span", fW, "回答安排 #" + P(e.turn_id), 1)) : Y("", !0)
43854
43845
  ])]),
43855
- bt(e) === null ? Y("", !0) : (U(), W("span", fW, "耗时 " + P(gt(bt(e))), 1))
43846
+ bt(e) === null ? Y("", !0) : (U(), W("span", pW, "耗时 " + P(gt(bt(e))), 1))
43856
43847
  ]),
43857
43848
  e.reply_to ? (U(), G(o, {
43858
43849
  key: 0,
@@ -43873,15 +43864,15 @@ var hU = /*#__PURE__*/ XH({
43873
43864
  key: 1,
43874
43865
  class: "channel-receipt",
43875
43866
  onToggle: (t) => t.target.open && je(Me(e).id)
43876
- }, [K("summary", { "aria-label": `查看 #${e.id} 的过程说明` }, "过程说明 · " + P(Me(e).notes) + " 段", 9, mW), K("ol", hW, [(U(!0), W(H, null, B(Ae.value.get(Me(e).id) || [], (e) => (U(), W("li", { key: e.seq }, P(e.text), 1))), 128))])], 40, pW)) : Y("", !0),
43877
- e.kind === "receipt" ? (U(), W("details", gW, [K("summary", { "aria-label": `查看运行回执 #${e.id}` }, "运行回执详情", 8, _W), K("div", {
43867
+ }, [K("summary", { "aria-label": `查看 #${e.id} 的过程说明` }, "过程说明 · " + P(Me(e).notes) + " 段", 9, hW), K("ol", gW, [(U(!0), W(H, null, B(Ae.value.get(Me(e).id) || [], (e) => (U(), W("li", { key: e.seq }, P(e.text), 1))), 128))])], 40, mW)) : Y("", !0),
43868
+ e.kind === "receipt" ? (U(), W("details", _W, [K("summary", { "aria-label": `查看运行回执 #${e.id}` }, "运行回执详情", 8, vW), K("div", {
43878
43869
  class: "channel-message-text markdown-body",
43879
43870
  innerHTML: e.rendered_text
43880
- }, null, 8, vW)])) : (U(), W("div", yW, [K("div", {
43871
+ }, null, 8, yW)])) : (U(), W("div", bW, [K("div", {
43881
43872
  id: `channel-answer-${e.id}`,
43882
43873
  class: "channel-message-text markdown-body",
43883
43874
  innerHTML: b.value.has(e.id) ? e.rendered_text : S.value.get(e.id).html
43884
- }, null, 8, bW), S.value.get(e.id).truncated ? (U(), G(o, {
43875
+ }, null, 8, xW), S.value.get(e.id).truncated ? (U(), G(o, {
43885
43876
  key: 0,
43886
43877
  label: b.value.has(e.id) ? "收起" : "展开全文",
43887
43878
  "trailing-icon": b.value.has(e.id) ? "i-lucide-chevron-up" : "i-lucide-chevron-down",
@@ -43901,14 +43892,14 @@ var hU = /*#__PURE__*/ XH({
43901
43892
  "aria-controls",
43902
43893
  "onClick"
43903
43894
  ])) : Y("", !0)])),
43904
- e.summary ? (U(), W("div", xW, [K("small", null, [t[31] ||= J("回答摘要", -1), e.summary_by && e.summary_by !== e.author ? (U(), W("span", SW, " · " + P(I(a).display_name(e.summary_by)) + " 整理", 1)) : Y("", !0)]), K("div", {
43895
+ e.summary ? (U(), W("div", SW, [K("small", null, [t[31] ||= J("回答摘要", -1), e.summary_by && e.summary_by !== e.author ? (U(), W("span", CW, " · " + P(I(a).display_name(e.summary_by)) + " 整理", 1)) : Y("", !0)]), K("div", {
43905
43896
  class: "channel-message-text markdown-body",
43906
43897
  innerHTML: e.rendered_summary
43907
- }, null, 8, CW)])) : Y("", !0),
43898
+ }, null, 8, wW)])) : Y("", !0),
43908
43899
  e.attachments?.length ? (U(), W("div", {
43909
43900
  key: 5,
43910
43901
  innerHTML: I(a).attachment_markup(e.attachments)
43911
- }, null, 8, wW)) : Y("", !0),
43902
+ }, null, 8, TW)) : Y("", !0),
43912
43903
  rt.value.get(e.id) ? (U(), W("div", {
43913
43904
  key: 6,
43914
43905
  class: M(["channel-recommendation", `is-${rt.value.get(e.id).status}`]),
@@ -43919,12 +43910,12 @@ var hU = /*#__PURE__*/ XH({
43919
43910
  name: "i-lucide-zap",
43920
43911
  class: "channel-recommendation-icon"
43921
43912
  }),
43922
- e.status === "open" ? (U(), W("span", TW, [
43913
+ e.status === "open" ? (U(), W("span", EW, [
43923
43914
  t[32] ||= J("智能调度建议让 ", -1),
43924
43915
  K("strong", null, P(I(a).display_name(e.member)), 1),
43925
43916
  t[33] ||= J(" 回答", -1),
43926
- K("small", { title: `${e.label},置信度 ${Number(e.confidence).toFixed(2)}` }, "置信度 " + P(Number(e.confidence).toFixed(2)) + " · " + P(e.remaining) + " 秒", 9, EW)
43927
- ])) : e.status === "waiting" ? (U(), W("span", DW, "智能调度:主持人答完后请 " + P(I(a).display_name(e.member)) + " 回答", 1)) : (U(), W("span", OW, "智能调度:" + P(e.mode === "interrupt" ? `已打断主持人,改由 ${I(a).display_name(e.member)} 回答` : `已请 ${I(a).display_name(e.member)} 回答`), 1)),
43917
+ K("small", { title: `${e.label},置信度 ${Number(e.confidence).toFixed(2)}` }, "置信度 " + P(Number(e.confidence).toFixed(2)) + " · " + P(e.remaining) + " 秒", 9, DW)
43918
+ ])) : e.status === "waiting" ? (U(), W("span", OW, "智能调度:主持人答完后请 " + P(I(a).display_name(e.member)) + " 回答", 1)) : (U(), W("span", kW, "智能调度:" + P(e.mode === "interrupt" ? `已打断主持人,改由 ${I(a).display_name(e.member)} 回答` : `已请 ${I(a).display_name(e.member)} 回答`), 1)),
43928
43919
  e.can_adopt ? (U(), W(H, { key: 3 }, [nt.value === e.message_id ? (U(), W(H, { key: 1 }, [
43929
43920
  q(o, {
43930
43921
  label: `打断主持人,改由 ${I(a).display_name(e.member)} 回答`,
@@ -43959,7 +43950,7 @@ var hU = /*#__PURE__*/ XH({
43959
43950
  onClick: (t) => e.host_busy ? nt.value = e.message_id : mt(e.message_id, "after")
43960
43951
  }, null, 8, ["aria-label", "onClick"]))], 64)) : Y("", !0)
43961
43952
  ], 64))), 128))], 2)) : Y("", !0),
43962
- Ee.value && e.suggestions?.length ? (U(), W("div", kW, [(U(!0), W(H, null, B(He.value.get(e.id) || [], (t) => (U(), W("div", { key: t.member_id }, [K("span", null, "建议请 " + P(I(a).display_name(t.member)) + " 回应", 1), t.request_id ? (U(), W("span", AW, "已转请求 #" + P(t.request_id), 1)) : t.status === "active" ? I(i).access?.can_manage && !ye.value.archived ? (U(), G(o, {
43953
+ Ee.value && e.suggestions?.length ? (U(), W("div", AW, [(U(!0), W(H, null, B(He.value.get(e.id) || [], (t) => (U(), W("div", { key: t.member_id }, [K("span", null, "建议请 " + P(I(a).display_name(t.member)) + " 回应", 1), t.request_id ? (U(), W("span", jW, "已转请求 #" + P(t.request_id), 1)) : t.status === "active" ? I(i).access?.can_manage && !ye.value.archived ? (U(), G(o, {
43963
43954
  key: 2,
43964
43955
  label: "转为请求",
43965
43956
  icon: "i-lucide-send",
@@ -43976,15 +43967,15 @@ var hU = /*#__PURE__*/ XH({
43976
43967
  "disabled",
43977
43968
  "aria-label",
43978
43969
  "onClick"
43979
- ])) : Y("", !0) : (U(), W("span", jW, "成员已离开"))]))), 128))])) : Y("", !0),
43970
+ ])) : Y("", !0) : (U(), W("span", MW, "成员已离开"))]))), 128))])) : Y("", !0),
43980
43971
  (U(!0), W(H, null, B(Xe.value.get(e.id) || [], (e) => (U(), W("section", {
43981
43972
  key: e.id,
43982
43973
  class: "channel-execution-report",
43983
43974
  "aria-label": `执行报告 #${e.id}`
43984
43975
  }, [
43985
43976
  K("div", null, [K("strong", null, "执行 #" + P(e.id) + " · " + P(e.label), 1)]),
43986
- e.changes?.length ? (U(), W("p", NW, "文件变化:" + P(e.changes.join("、")), 1)) : Y("", !0),
43987
- e.status !== "completed" && e.result ? (U(), W("p", PW, P(e.result), 1)) : Y("", !0),
43977
+ e.changes?.length ? (U(), W("p", PW, "文件变化:" + P(e.changes.join("、")), 1)) : Y("", !0),
43978
+ e.status !== "completed" && e.result ? (U(), W("p", FW, P(e.result), 1)) : Y("", !0),
43988
43979
  Bn(e) ? (U(), G(o, {
43989
43980
  key: 2,
43990
43981
  label: "重发",
@@ -43995,9 +43986,9 @@ var hU = /*#__PURE__*/ XH({
43995
43986
  "aria-label": `把执行 #${e.id} 的原消息填回输入框重发`,
43996
43987
  onClick: (t) => Vn(e)
43997
43988
  }, null, 8, ["aria-label", "onClick"])) : Y("", !0)
43998
- ], 8, MW))), 128))
43989
+ ], 8, NW))), 128))
43999
43990
  ]),
44000
- header: L(() => [K("div", FW, [K("div", IW, [q(ie, { text: "回复" }, {
43991
+ header: L(() => [K("div", IW, [K("div", LW, [q(ie, { text: "回复" }, {
44001
43992
  default: L(() => [q(o, {
44002
43993
  icon: "i-lucide-corner-up-left",
44003
43994
  size: "xs",
@@ -44060,8 +44051,8 @@ var hU = /*#__PURE__*/ XH({
44060
44051
  }, {
44061
44052
  text: L(() => [
44062
44053
  J("智能调度:" + P(e.label), 1),
44063
- e.confidence === null ? Y("", !0) : (U(), W("small", LW, "置信度 " + P(Number(e.confidence).toFixed(2)), 1)),
44064
- e.detail?.[0]?.duration_ms == null ? Y("", !0) : (U(), W("small", RW, "耗时 " + P(vt(e.detail[0].duration_ms)), 1))
44054
+ e.confidence === null ? Y("", !0) : (U(), W("small", RW, "置信度 " + P(Number(e.confidence).toFixed(2)), 1)),
44055
+ e.detail?.[0]?.duration_ms == null ? Y("", !0) : (U(), W("small", zW, "耗时 " + P(vt(e.detail[0].duration_ms)), 1))
44065
44056
  ]),
44066
44057
  actions: L(() => [I(i).access?.can_manage ? (U(), W("button", {
44067
44058
  key: 0,
@@ -44071,7 +44062,7 @@ var hU = /*#__PURE__*/ XH({
44071
44062
  "aria-label": "这次调度判断得好",
44072
44063
  title: "判断得好",
44073
44064
  onClick: (t) => dt(e, "good")
44074
- }, [q(re, { name: "i-lucide-thumbs-up" })], 10, zW)) : Y("", !0), I(i).access?.can_manage ? (U(), W("button", {
44065
+ }, [q(re, { name: "i-lucide-thumbs-up" })], 10, BW)) : Y("", !0), I(i).access?.can_manage ? (U(), W("button", {
44075
44066
  key: 1,
44076
44067
  type: "button",
44077
44068
  class: M(["channel-schedule-rate", { "is-on": e.feedback === "bad" }]),
@@ -44079,8 +44070,8 @@ var hU = /*#__PURE__*/ XH({
44079
44070
  "aria-label": "这次调度判断得不好",
44080
44071
  title: "判断得不好",
44081
44072
  onClick: (t) => dt(e, "bad")
44082
- }, [q(re, { name: "i-lucide-thumbs-down" })], 10, BW)) : Y("", !0)]),
44083
- default: L(() => [(U(!0), W(H, null, B(e.detail, (e, t) => (U(), W("p", { key: t }, [K("span", null, "问:" + P(e.question) + "(" + P(e.choices.map(ct).join(" / ")) + ")", 1), K("span", null, [J("答:" + P(e.choice ? ct(e.choice) : "无"), 1), e.probabilities[e.choice] === void 0 ? Y("", !0) : (U(), W("small", VW, "概率 " + P(Number(e.probabilities[e.choice]).toFixed(2)), 1))])]))), 128))]),
44073
+ }, [q(re, { name: "i-lucide-thumbs-down" })], 10, VW)) : Y("", !0)]),
44074
+ default: L(() => [(U(!0), W(H, null, B(e.detail, (e, t) => (U(), W("p", { key: t }, [K("span", null, "问:" + P(e.question) + "(" + P(e.choices.map(ct).join(" / ")) + ")", 1), K("span", null, [J("答:" + P(e.choice ? ct(e.choice) : "无"), 1), e.probabilities[e.choice] === void 0 ? Y("", !0) : (U(), W("small", HW, "概率 " + P(Number(e.probabilities[e.choice]).toFixed(2)), 1))])]))), 128))]),
44084
44075
  _: 2
44085
44076
  }, 1032, [
44086
44077
  "skipped",
@@ -44095,7 +44086,7 @@ var hU = /*#__PURE__*/ XH({
44095
44086
  K("label", null, [t[35] ||= J("应该由谁回答", -1), vr(K("select", { "onUpdate:modelValue": t[7] ||= (e) => ut.value.should_be = e }, [(U(!0), W(H, null, B(pt.value, (e) => (U(), W("option", {
44096
44087
  key: e.value,
44097
44088
  value: e.value
44098
- }, P(e.label), 9, UW))), 128))], 512), [[$l, ut.value.should_be]])]),
44089
+ }, P(e.label), 9, WW))), 128))], 512), [[$l, ut.value.should_be]])]),
44099
44090
  vr(K("input", {
44100
44091
  "onUpdate:modelValue": t[8] ||= (e) => ut.value.note = e,
44101
44092
  type: "text",
@@ -44121,7 +44112,7 @@ var hU = /*#__PURE__*/ XH({
44121
44112
  note: ""
44122
44113
  }
44123
44114
  })
44124
- ], 40, HW)) : Y("", !0)], 64))), 128)),
44115
+ ], 40, UW)) : Y("", !0)], 64))), 128)),
44125
44116
  (U(!0), W(H, null, B(lt.value.get(e.id) || [], (t) => (U(), G(jH, {
44126
44117
  key: `arrangement-${t.id}`,
44127
44118
  icon: "i-lucide-list-ordered",
@@ -44150,7 +44141,7 @@ var hU = /*#__PURE__*/ XH({
44150
44141
  body: "channel-message-body"
44151
44142
  }
44152
44143
  }, {
44153
- body: L(() => [K("div", WW, [
44144
+ body: L(() => [K("div", GW, [
44154
44145
  q(x, {
44155
44146
  src: I(a).identities[e.expert]?.icon,
44156
44147
  text: I(a).identities[e.expert]?.initials || "?",
@@ -44163,8 +44154,8 @@ var hU = /*#__PURE__*/ XH({
44163
44154
  "alt",
44164
44155
  "class"
44165
44156
  ]),
44166
- K("div", GW, [K("div", KW, [K("strong", null, P(I(a).display_name(e.expert)), 1)])]),
44167
- K("span", qW, "已错过 · 安排 #" + P(e.id), 1)
44157
+ K("div", KW, [K("div", qW, [K("strong", null, P(I(a).display_name(e.expert)), 1)])]),
44158
+ K("span", JW, "已错过 · 安排 #" + P(e.id), 1)
44168
44159
  ]), t[36] ||= K("div", {
44169
44160
  class: "channel-message-text",
44170
44161
  role: "status"
@@ -44173,12 +44164,12 @@ var hU = /*#__PURE__*/ XH({
44173
44164
  }, 1032, ["id", "data-author"]))), 128))
44174
44165
  ], 64))
44175
44166
  ], 64))), 128))]))), 128)),
44176
- (Qt.value === "end" || $t.value === "end") && !I(i).query && !I(i).mention_only ? (U(), W("div", JW, [Qt.value === "end" ? (U(), G(qH, {
44167
+ (Qt.value === "end" || $t.value === "end") && !I(i).query && !I(i).mention_only ? (U(), W("div", YW, [Qt.value === "end" ? (U(), G(qH, {
44177
44168
  key: 0,
44178
44169
  ref: (e) => /* @__PURE__ */ ln(r) ? r.value = e : r = e,
44179
44170
  onEdit: t[10] ||= (e) => n("edit")
44180
44171
  }, null, 512)) : Y("", !0), $t.value === "end" ? (U(), G(SU, { key: 1 })) : Y("", !0)])) : Y("", !0),
44181
- Ze.value ? (U(), W("div", YW, [Ze.value.is_host ? (U(), G(jH, {
44172
+ Ze.value ? (U(), W("div", XW, [Ze.value.is_host ? (U(), G(jH, {
44182
44173
  key: 0,
44183
44174
  id: `execution-${Ze.value.id}`,
44184
44175
  icon: "i-lucide-list-ordered",
@@ -44193,7 +44184,7 @@ var hU = /*#__PURE__*/ XH({
44193
44184
  ref_key: "reply_glow",
44194
44185
  ref: be,
44195
44186
  class: "channel-reply-glow"
44196
- }, P(Ze.value.text), 513)], 8, XW), K("small", null, "已用 " + P(_t.value), 1)]),
44187
+ }, P(Ze.value.text), 513)], 8, ZW), K("small", null, "已用 " + P(_t.value), 1)]),
44197
44188
  _: 1
44198
44189
  }, 8, ["id", "label"])) : (U(), G(E, {
44199
44190
  key: 1,
@@ -44211,7 +44202,7 @@ var hU = /*#__PURE__*/ XH({
44211
44202
  body: "channel-message-body"
44212
44203
  }
44213
44204
  }, {
44214
- body: L(() => [K("div", ZW, [
44205
+ body: L(() => [K("div", QW, [
44215
44206
  q(x, {
44216
44207
  src: I(a).identities[Ze.value.author]?.icon,
44217
44208
  text: I(a).identities[Ze.value.author]?.initials || "?",
@@ -44224,27 +44215,27 @@ var hU = /*#__PURE__*/ XH({
44224
44215
  "alt",
44225
44216
  "class"
44226
44217
  ]),
44227
- K("div", QW, [K("div", $W, [K("strong", null, P(I(a).display_name(Ze.value.author)), 1), Ze.value.round ? (U(), W("span", eG, P(Ze.value.round), 1)) : Y("", !0)])]),
44228
- K("span", tG, P(Ze.value.manual ? "手动启动" : `已用 ${_t.value}`), 1)
44218
+ K("div", $W, [K("div", eG, [K("strong", null, P(I(a).display_name(Ze.value.author)), 1), Ze.value.round ? (U(), W("span", tG, P(Ze.value.round), 1)) : Y("", !0)])]),
44219
+ K("span", nG, P(Ze.value.manual ? "手动启动" : `已用 ${_t.value}`), 1)
44229
44220
  ]), K("div", {
44230
44221
  class: "channel-message-text",
44231
44222
  role: "status",
44232
44223
  "aria-label": `${I(a).display_name(Ze.value.author)} ${Ze.value.text}`
44233
- }, [Ze.value.manual ? (U(), W("span", rG, P(Ze.value.text), 1)) : (U(), W("span", {
44224
+ }, [Ze.value.manual ? (U(), W("span", iG, P(Ze.value.text), 1)) : (U(), W("span", {
44234
44225
  key: 1,
44235
44226
  ref_key: "reply_glow",
44236
44227
  ref: be,
44237
44228
  class: "channel-reply-glow"
44238
- }, P(Ze.value.text), 513))], 8, nG)]),
44229
+ }, P(Ze.value.text), 513))], 8, rG)]),
44239
44230
  _: 1
44240
44231
  }, 8, ["id", "data-author"]))])) : Y("", !0),
44241
- !Zt.value.length && !Ze.value && !ke.value.length ? (U(), W("div", iG, [
44232
+ !Zt.value.length && !Ze.value && !ke.value.length ? (U(), W("div", aG, [
44242
44233
  q(re, { name: I(i).query || I(i).mention_only ? "i-lucide-search" : "i-lucide-hash" }, null, 8, ["name"]),
44243
44234
  K("h2", null, P(I(i).query || I(i).mention_only ? "没有找到消息" : ye.value.title), 1),
44244
44235
  K("p", null, P(I(i).query || I(i).mention_only ? "试试其他关键词,或清除筛选。" : I(a).empty_discussion_message(ye.value)), 1)
44245
44236
  ])) : Y("", !0)
44246
44237
  ], 544)), t, 11),
44247
- (Zt.value.length || Ze.value) && !ve.value ? (U(), W("div", aG, [q(o, {
44238
+ (Zt.value.length || Ze.value) && !ve.value ? (U(), W("div", oG, [q(o, {
44248
44239
  icon: "i-lucide-arrow-down",
44249
44240
  color: "neutral",
44250
44241
  variant: "outline",
@@ -44252,7 +44243,7 @@ var hU = /*#__PURE__*/ XH({
44252
44243
  class: "channel-latest-button",
44253
44244
  onClick: En
44254
44245
  })])) : Y("", !0),
44255
- K("div", oG, [K("div", {
44246
+ K("div", sG, [K("div", {
44256
44247
  class: "channel-composer-column",
44257
44248
  onDragover: t[23] ||= (...e) => I(a).drop_attachments && I(a).drop_attachments(...e),
44258
44249
  onDrop: t[24] ||= (...e) => I(a).drop_attachments && I(a).drop_attachments(...e),
@@ -44321,7 +44312,7 @@ var hU = /*#__PURE__*/ XH({
44321
44312
  ])),
44322
44313
  K("span", null, P(Pt[e] ? `全体成员(${Ie.value.length} 位)` : I(a).display_name(e)), 1),
44323
44314
  K("small", null, "@" + P(e), 1)
44324
- ], 40, sG))), 128)), Bt.value.length ? Y("", !0) : (U(), W("p", cG, "没有匹配的成员"))], 512)]),
44315
+ ], 40, cG))), 128)), Bt.value.length ? Y("", !0) : (U(), W("p", lG, "没有匹配的成员"))], 512)]),
44325
44316
  _: 1
44326
44317
  }, 8, [
44327
44318
  "open",
@@ -44337,7 +44328,7 @@ var hU = /*#__PURE__*/ XH({
44337
44328
  "submit-on-enter": !0,
44338
44329
  autofocus: !1,
44339
44330
  rows: 1,
44340
- maxrows: OG,
44331
+ maxrows: kG,
44341
44332
  placeholder: `发消息到 # ${ye.value.title}`,
44342
44333
  "aria-label": "留言正文",
44343
44334
  role: "combobox",
@@ -44357,7 +44348,7 @@ var hU = /*#__PURE__*/ XH({
44357
44348
  onSubmit: Wn
44358
44349
  }, {
44359
44350
  header: L(() => [
44360
- I(i).attachment_drafts.length ? (U(), W("div", lG, [(U(!0), W(H, null, B(I(i).attachment_drafts, (e) => (U(), W("div", {
44351
+ I(i).attachment_drafts.length ? (U(), W("div", uG, [(U(!0), W(H, null, B(I(i).attachment_drafts, (e) => (U(), W("div", {
44361
44352
  key: e.id,
44362
44353
  class: M(e.preview_url ? "attachment-draft-image" : "attachment-draft-file")
44363
44354
  }, [e.preview_url ? (U(), W("img", {
@@ -44365,19 +44356,19 @@ var hU = /*#__PURE__*/ XH({
44365
44356
  src: e.preview_url,
44366
44357
  alt: e.file_name,
44367
44358
  title: e.file_name
44368
- }, null, 8, uG)) : (U(), W(H, { key: 1 }, [K("span", { innerHTML: I(a).attachment_file_icon(e.file_name) }, null, 8, dG), K("span", fG, [K("span", { title: e.file_name }, P(e.file_name), 9, pG), K("small", null, P(I(a).attachment_size(e.size)), 1)])], 64)), K("button", {
44359
+ }, null, 8, dG)) : (U(), W(H, { key: 1 }, [K("span", { innerHTML: I(a).attachment_file_icon(e.file_name) }, null, 8, fG), K("span", pG, [K("span", { title: e.file_name }, P(e.file_name), 9, mG), K("small", null, P(I(a).attachment_size(e.size)), 1)])], 64)), K("button", {
44369
44360
  type: "button",
44370
44361
  class: "attachment-remove",
44371
44362
  "aria-label": `移除 ${e.file_name}`,
44372
44363
  disabled: I(i).sending_message,
44373
44364
  onClick: (t) => I(s)("remove_attachment", e.id)
44374
- }, [q(re, { name: "i-lucide-x" })], 8, mG)], 2))), 128))])) : Y("", !0),
44365
+ }, [q(re, { name: "i-lucide-x" })], 8, hG)], 2))), 128))])) : Y("", !0),
44375
44366
  I(i).composer_error || I(i).upload_status ? (U(), W("p", {
44376
44367
  key: 1,
44377
44368
  class: "attachment-status",
44378
44369
  role: I(i).composer_error ? "alert" : "status"
44379
- }, P(I(i).composer_error || I(i).upload_status), 9, hG)) : Y("", !0),
44380
- we.value ? (U(), W("div", gG, [
44370
+ }, P(I(i).composer_error || I(i).upload_status), 9, gG)) : Y("", !0),
44371
+ we.value ? (U(), W("div", _G, [
44381
44372
  q(re, { name: "i-lucide-user-round-x" }),
44382
44373
  K("span", null, P(I(a).display_name(we.value.name)) + " 待注册:在其会话中粘贴启动指令", 1),
44383
44374
  I(i).access?.can_manage ? (U(), G(o, {
@@ -44392,7 +44383,7 @@ var hU = /*#__PURE__*/ XH({
44392
44383
  onClick: t[14] ||= (e) => zn(we.value.name)
44393
44384
  }, null, 8, ["icon", "label"])) : Y("", !0)
44394
44385
  ])) : Y("", !0),
44395
- Te.value ? (U(), W("div", _G, [
44386
+ Te.value ? (U(), W("div", vG, [
44396
44387
  q(re, { name: "i-lucide-clock" }),
44397
44388
  K("span", null, P(Te.value), 1),
44398
44389
  Se(Ce.value) && I(i).access?.can_manage ? (U(), G(o, {
@@ -44407,7 +44398,7 @@ var hU = /*#__PURE__*/ XH({
44407
44398
  onClick: t[15] ||= (e) => zn(Ce.value.name)
44408
44399
  }, null, 8, ["icon", "label"])) : Y("", !0)
44409
44400
  ])) : Y("", !0),
44410
- I(i).reply_to || I(i).turn_reply_to ? (U(), W("div", vG, [
44401
+ I(i).reply_to || I(i).turn_reply_to ? (U(), W("div", yG, [
44411
44402
  q(re, { name: "i-lucide-corner-up-left" }),
44412
44403
  K("span", null, P(I(i).turn_reply_to ? `回答安排 #${I(i).turn_reply_to} · ${I(a).display_name(ye.value.host)} 代发` : `回复 #${I(i).reply_to}`), 1),
44413
44404
  q(o, {
@@ -44419,7 +44410,7 @@ var hU = /*#__PURE__*/ XH({
44419
44410
  onClick: t[16] ||= (e) => I(s)(I(i).turn_reply_to ? "cancel_answer" : "cancel_reply")
44420
44411
  }, null, 8, ["aria-label"])
44421
44412
  ])) : Y("", !0),
44422
- g.value ? (U(), W("div", yG, [q(le, {
44413
+ g.value ? (U(), W("div", bG, [q(le, {
44423
44414
  modelValue: I(m),
44424
44415
  "onUpdate:modelValue": t[17] ||= (e) => /* @__PURE__ */ ln(m) ? m.value = e : null,
44425
44416
  rows: 2,
@@ -44446,14 +44437,14 @@ var hU = /*#__PURE__*/ XH({
44446
44437
  disabled: I(i).sending_message,
44447
44438
  onClick: t[19] ||= (e) => I(s)("choose_attachments")
44448
44439
  }, null, 8, ["disabled"]),
44449
- Re.value.length ? (U(), W("div", xG, [t[38] ||= K("span", null, "代发", -1), (U(!0), W(H, null, B(Re.value, (e) => (U(), W("button", {
44440
+ Re.value.length ? (U(), W("div", SG, [t[38] ||= K("span", null, "代发", -1), (U(!0), W(H, null, B(Re.value, (e) => (U(), W("button", {
44450
44441
  key: e.id,
44451
44442
  type: "button",
44452
44443
  "aria-pressed": I(i).free_proxy === e.name,
44453
44444
  class: M({ "is-on": I(i).free_proxy === e.name }),
44454
44445
  onClick: (t) => I(s)("set_proxy", e.name)
44455
- }, P(I(a).display_name(e.name)), 11, SG))), 128))])) : Y("", !0),
44456
- Ee.value ? Y("", !0) : (U(), W("div", CG, [q(N, {
44446
+ }, P(I(a).display_name(e.name)), 11, CG))), 128))])) : Y("", !0),
44447
+ Ee.value ? Y("", !0) : (U(), W("div", wG, [q(N, {
44457
44448
  modelValue: I(f),
44458
44449
  "onUpdate:modelValue": t[20] ||= (e) => /* @__PURE__ */ ln(f) ? f.value = e : null,
44459
44450
  items: xt.value,
@@ -44518,7 +44509,7 @@ var hU = /*#__PURE__*/ XH({
44518
44509
  class: "channel-editor channel-editor-mirror",
44519
44510
  "aria-hidden": "true",
44520
44511
  innerHTML: Ot.value
44521
- }, null, 8, bG)) : Y("", !0)]),
44512
+ }, null, 8, xG)) : Y("", !0)]),
44522
44513
  _: 1
44523
44514
  }, 8, [
44524
44515
  "modelValue",
@@ -44529,16 +44520,16 @@ var hU = /*#__PURE__*/ XH({
44529
44520
  "aria-activedescendant",
44530
44521
  "class"
44531
44522
  ]),
44532
- K("div", wG, [Ee.value ? (U(), W("span", TG, [
44523
+ K("div", TG, [Ee.value ? (U(), W("span", EG, [
44533
44524
  J(P(Pe.value), 1),
44534
44525
  t[39] ||= K("span", { class: "channel-note-divider" }, "·", -1),
44535
44526
  t[40] ||= J("手动成员需在原会话触发", -1)
44536
- ])) : (U(), W("span", EG, [
44527
+ ])) : (U(), W("span", DG, [
44537
44528
  J(P(Tt.value), 1),
44538
44529
  Be.value.length ? (U(), W(H, { key: 0 }, [t[41] ||= K("span", { class: "channel-note-divider" }, "·", -1), J("直接提问 " + P(Be.value.join("、")) + ",不计轮次", 1)], 64)) : Y("", !0),
44539
44530
  t[42] ||= K("span", { class: "channel-note-divider" }, "·", -1),
44540
44531
  t[43] ||= J("在线 AI 的观点需代发", -1)
44541
- ])), K("span", DG, [u.value ? (U(), W("span", {
44532
+ ])), K("span", OG, [u.value ? (U(), W("span", {
44542
44533
  key: 0,
44543
44534
  class: M({ "is-near-limit": d.value })
44544
44535
  }, [J(P(u.value) + " / " + P(I(a).max_message_length), 1), t[44] ||= K("span", { class: "channel-note-divider" }, "·", -1)], 2)) : Y("", !0), t[45] ||= K("span", { class: "channel-key-hint" }, [
@@ -44554,7 +44545,7 @@ var hU = /*#__PURE__*/ XH({
44554
44545
  ], 2);
44555
44546
  };
44556
44547
  }
44557
- }, [["__scopeId", "data-v-2db0c1cd"]]), dK = {
44548
+ }, [["__scopeId", "data-v-45aaa601"]]), dK = {
44558
44549
  slots: {
44559
44550
  root: "relative inline-flex items-center",
44560
44551
  base: ["rounded-md", "transition-colors"],
@@ -48653,23 +48644,20 @@ var hU = /*#__PURE__*/ XH({
48653
48644
  class: "channel-create-location"
48654
48645
  }, SY = { class: "create-section" }, CY = { class: "create-section" }, wY = {
48655
48646
  key: 0,
48656
- class: "fine-print create-hint"
48657
- }, TY = {
48658
- key: 1,
48659
48647
  class: "create-experts",
48660
48648
  role: "group",
48661
48649
  "aria-label": "参与的 AI"
48650
+ }, TY = {
48651
+ key: 1,
48652
+ class: "create-experts-empty"
48662
48653
  }, EY = {
48663
48654
  key: 2,
48664
- class: "create-experts-empty"
48665
- }, DY = {
48666
- key: 3,
48667
48655
  class: "fine-print create-hint create-host-hint"
48668
- }, OY = { class: "create-section" }, kY = { class: "create-footer" }, AY = {
48656
+ }, DY = { class: "create-section" }, OY = { class: "create-footer" }, kY = {
48669
48657
  key: 0,
48670
48658
  role: "alert",
48671
48659
  class: "create-error"
48672
- }, jY = { class: "create-footer-row" }, MY = ["title"], NY = "new-expert-modes", PY = 3e3, FY = /*#__PURE__*/ XH({
48660
+ }, AY = { class: "create-footer-row" }, jY = ["title"], MY = "new-expert-modes", NY = 3e3, PY = /*#__PURE__*/ XH({
48673
48661
  __name: "CreateDiscussion",
48674
48662
  props: { targetFolder: {
48675
48663
  type: Object,
@@ -48677,7 +48665,7 @@ var hU = /*#__PURE__*/ XH({
48677
48665
  } },
48678
48666
  emits: ["submit", "cancel"],
48679
48667
  setup(e, { emit: t }) {
48680
- let n = t, { view: r, bridge: i, pending: a, act: o } = xr("discussion"), s = Object.keys(i.identities).filter((e) => e !== "用户"), c = (e) => `new-room-${e}`, l = (e) => r.value.fields[c(e)] ?? "", u = (e, t) => i.write_field(c(e), t), d = Z(() => !!r.value.create_discussion), f = Z(() => r.value.experts[NY] || {}), p = /* @__PURE__ */ F([]), m = Z(() => Object.keys(f.value).filter((e) => f.value[e]));
48668
+ let n = t, { view: r, bridge: i, pending: a, act: o } = xr("discussion"), s = Object.keys(i.identities).filter((e) => e !== "用户"), c = (e) => `new-room-${e}`, l = (e) => r.value.fields[c(e)] ?? "", u = (e, t) => i.write_field(c(e), t), d = Z(() => !!r.value.create_discussion), f = Z(() => r.value.experts[MY] || {}), p = /* @__PURE__ */ F([]), m = Z(() => Object.keys(f.value).filter((e) => f.value[e]));
48681
48669
  R(m, (e) => {
48682
48670
  p.value = [...p.value.filter((t) => e.includes(t)), ...e.filter((e) => !p.value.includes(e))];
48683
48671
  }, { immediate: !0 });
@@ -48685,7 +48673,7 @@ var hU = /*#__PURE__*/ XH({
48685
48673
  if (C.value) return !!C.value.clients[i.platform_of(e)];
48686
48674
  let t = r.value.launch.profiles[e] || {};
48687
48675
  return t.adapter === "api" ? !!(t.base_url && t.api_protocol && t.api_key_ref && t.model) : !!(t.adapter && (t.adapter === "antigravity" ? t.ipc_directory : t.executable));
48688
- }, D = Z(() => S.value && w.value), O = Z(() => x.value.every(E) && (!x.value.length || w.value)), ee = Z(() => r.value.launch.available), k = Z(() => ee.value && !!r.value.launch.scheduler?.enabled), te = Z(() => r.value.launch.available ? "" : "连接本机服务后可开启"), ne = Z(() => {
48676
+ }, D = Z(() => S.value && w.value), O = Z(() => h.value.length > 0 && x.value.every(E) && (!x.value.length || w.value)), ee = Z(() => r.value.launch.available), k = Z(() => ee.value && !!r.value.launch.scheduler?.enabled), te = Z(() => r.value.launch.available ? "" : "连接本机服务后可开启"), ne = Z(() => {
48689
48677
  let e = r.value.launch.scheduler || {};
48690
48678
  return ee.value && e.enabled && !(e.provider && e.model && e.api_key_ref);
48691
48679
  }), re = Z(() => S.value && !w.value), ie = 0, A = Z(() => {
@@ -48694,23 +48682,23 @@ var hU = /*#__PURE__*/ XH({
48694
48682
  if (d.value && !w.value) return "先连接本机服务";
48695
48683
  let e = x.value.filter((e) => !E(e));
48696
48684
  return e.length && C.value ? `在电脑「${C.value.name}」上配置 ${e.join("、")}` : e.length ? `补齐 ${e.join("、")} 的接入配置` : ne.value ? "补齐决策模型配置,或移出决策模型" : "";
48697
- });
48698
- function j() {
48685
+ }), j = Z(() => !O.value || !!A.value || ne.value || a.value === "create");
48686
+ function ae() {
48699
48687
  y.value.includes(v.value) || u("host", y.value[0] || "");
48700
48688
  }
48701
48689
  Qi(() => {
48702
- j(), ie = window.setInterval(() => {
48690
+ ae(), ie = window.setInterval(() => {
48703
48691
  re.value && !document.hidden && o("check_launch_connection");
48704
- }, PY);
48692
+ }, NY);
48705
48693
  }), ta(() => window.clearInterval(ie));
48706
- function ae(e) {
48707
- i.write_create_discussion(e), Qn(j);
48694
+ function oe(e) {
48695
+ i.write_create_discussion(e), Qn(ae);
48708
48696
  }
48709
- let oe = (e) => i.launch_clients[e]?.some((e) => e.value !== "api"), se = (e) => d.value && e === v.value ? [] : ["cli", "manual"];
48710
- function ce(e, t) {
48711
- t === "cli" && !oe(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), i.write_expert(NY, e, t), j();
48697
+ let se = (e) => i.launch_clients[e]?.some((e) => e.value !== "api"), ce = (e) => d.value && e === v.value ? [] : ["cli", "manual"];
48698
+ function le(e, t) {
48699
+ t === "cli" && !se(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), i.write_expert(MY, e, t), ae();
48712
48700
  }
48713
- function le(e) {
48701
+ function ue(e) {
48714
48702
  if (f.value[e] === "online") return {
48715
48703
  text: "网页代发,由你转发回答",
48716
48704
  tone: "muted"
@@ -48735,27 +48723,27 @@ var hU = /*#__PURE__*/ XH({
48735
48723
  tone: "warn"
48736
48724
  };
48737
48725
  }
48738
- function ue(e) {
48739
- return g(e) ? `已加入 ${g(e)} 位 · 可继续添加` : oe(e) ? "API / 本地 App / CLI / 手动启动" : "API / 手动启动";
48726
+ function de(e) {
48727
+ return g(e) ? `已加入 ${g(e)} 位 · 可继续添加` : se(e) ? "API / 本地 App / CLI / 手动启动" : "API / 手动启动";
48740
48728
  }
48741
- let de = Z(() => s.map((e) => ({
48729
+ let fe = Z(() => s.map((e) => ({
48742
48730
  value: e,
48743
48731
  name: e,
48744
48732
  ...i.identities[e],
48745
48733
  disabled: !i.launch_clients[e],
48746
- title: ue(e),
48734
+ title: de(e),
48747
48735
  aria_label: `添加 ${e} 实例`
48748
48736
  })));
48749
- function fe(e) {
48750
- i.launch_clients[e] && (!oe(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), g(e) ? i.add_instance(NY, e, "cli") : ce(e, "cli"), j());
48751
- }
48752
48737
  function pe(e) {
48753
- ce(e, ""), Qn(() => _.value?.focus_first());
48738
+ i.launch_clients[e] && (!se(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), g(e) ? i.add_instance(MY, e, "cli") : le(e, "cli"), ae());
48754
48739
  }
48755
- function me() {
48756
- b.value?.settle(), n("submit");
48740
+ function me(e) {
48741
+ le(e, ""), Qn(() => _.value?.focus_first());
48757
48742
  }
48758
- let he = Z(() => {
48743
+ function he() {
48744
+ j.value || (b.value?.settle(), n("submit"));
48745
+ }
48746
+ let ge = Z(() => {
48759
48747
  let e = Object.keys(f.value), t = [
48760
48748
  "协作房间",
48761
48749
  e.length ? `${e.length} 位 AI` : "暂无成员",
@@ -48772,7 +48760,7 @@ var hU = /*#__PURE__*/ XH({
48772
48760
  return U(), W("div", vY, [K("form", {
48773
48761
  id: "create-discussion-form",
48774
48762
  class: "create-scroll dialog-form",
48775
- onSubmit: uu(me, ["prevent"])
48763
+ onSubmit: uu(he, ["prevent"])
48776
48764
  }, [
48777
48765
  re.value ? (U(), W("div", yY, [K("p", null, [q(c, { name: "i-lucide-plug-zap" }), s[9] ||= J("本机服务未连接,连接后才能唤醒本机 AI。在运行 AI 的电脑上执行下面的命令并完成网页授权,连上后自动检测。", -1)]), K("div", bY, [K("code", null, P(I(r).launch.connect_command), 1), q(p, {
48778
48766
  icon: "i-lucide-copy",
@@ -48810,26 +48798,25 @@ var hU = /*#__PURE__*/ XH({
48810
48798
  ]),
48811
48799
  K("section", CY, [
48812
48800
  s[11] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
48813
- h.value.length ? (U(), W("p", wY, "每位成员可选本机唤醒,或手动(你来启动或代发,网页 AI 选手动)。")) : Y("", !0),
48814
48801
  q(QJ, {
48815
48802
  ref_key: "library",
48816
48803
  ref: _,
48817
48804
  label: "添加 AI",
48818
- items: de.value,
48819
- onAdd: fe
48805
+ items: fe.value,
48806
+ onAdd: pe
48820
48807
  }, null, 8, ["items"]),
48821
- h.value.length ? (U(), W("div", TY, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(YJ, {
48808
+ h.value.length ? (U(), W("div", wY, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(YJ, {
48822
48809
  key: e,
48823
48810
  name: e,
48824
48811
  mode: f.value[e],
48825
- choices: se(e),
48826
- status: le(e),
48812
+ choices: ce(e),
48813
+ status: ue(e),
48827
48814
  host: v.value === e,
48828
48815
  hostable: y.value.includes(e),
48829
48816
  hosting: "",
48830
48817
  onHost: (t) => u("host", e),
48831
- onRemove: (t) => pe(e),
48832
- onMode: (t) => ce(e, t)
48818
+ onRemove: (t) => me(e),
48819
+ onMode: (t) => le(e, t)
48833
48820
  }, null, 8, [
48834
48821
  "name",
48835
48822
  "mode",
@@ -48840,20 +48827,20 @@ var hU = /*#__PURE__*/ XH({
48840
48827
  "onHost",
48841
48828
  "onRemove",
48842
48829
  "onMode"
48843
- ]))), 128))])) : (U(), W("p", EY, "可以先不添加成员,建房后再邀请。同一平台可添加多位,各自独立会话。")),
48844
- h.value.length ? (U(), W("div", DY, [q(c, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "需要一位本地 AI 做主持人,没 @ 的消息才有人接。"), 1)])) : Y("", !0),
48830
+ ]))), 128))])) : (U(), W("p", TY, "请至少添加一位成员。同一平台可添加多位,各自独立会话。")),
48831
+ h.value.length ? (U(), W("div", EY, [q(c, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "需要一位本地 AI 做主持人,没 @ 的消息才有人接。"), 1)])) : Y("", !0),
48845
48832
  q(_Y, {
48846
48833
  free: !0,
48847
48834
  blocker: te.value
48848
48835
  }, null, 8, ["blocker"])
48849
48836
  ]),
48850
- K("section", OY, [
48837
+ K("section", DY, [
48851
48838
  s[12] ||= K("h3", null, [K("span", null, "3"), J("推进方式(可选)")], -1),
48852
48839
  q(x, {
48853
48840
  "model-value": d.value,
48854
48841
  label: "创建后开启讨论",
48855
48842
  description: "主持人安排成员轮流发言,到上限或结束后回到自由协作。也可以建房后再开启。",
48856
- "onUpdate:modelValue": s[2] ||= (e) => ae(e)
48843
+ "onUpdate:modelValue": s[2] ||= (e) => oe(e)
48857
48844
  }, null, 8, ["model-value"]),
48858
48845
  d.value ? (U(), W(H, { key: 0 }, [q(g, {
48859
48846
  label: "讨论目标",
@@ -48893,15 +48880,15 @@ var hU = /*#__PURE__*/ XH({
48893
48880
  "execution_minutes"
48894
48881
  ])], 64)) : Y("", !0)
48895
48882
  ])
48896
- ], 32), K("footer", kY, [D.value && I(r).launch.error ? (U(), W("p", AY, P(I(r).launch.error), 1)) : Y("", !0), K("div", jY, [
48883
+ ], 32), K("footer", OY, [D.value && I(r).launch.error ? (U(), W("p", kY, P(I(r).launch.error), 1)) : Y("", !0), K("div", AY, [
48897
48884
  K("span", {
48898
48885
  class: M(["create-summary", { "is-blocked": A.value }]),
48899
- title: A.value || he.value,
48886
+ title: A.value || ge.value,
48900
48887
  role: "status"
48901
48888
  }, [A.value ? (U(), G(c, {
48902
48889
  key: 0,
48903
48890
  name: "i-lucide-circle-alert"
48904
- })) : Y("", !0), J(P(A.value ? `还差:${A.value}` : h.value.length || d.value ? he.value : ""), 1)], 10, MY),
48891
+ })) : Y("", !0), J(P(A.value ? `还差:${A.value}` : h.value.length || d.value ? ge.value : ""), 1)], 10, jY),
48905
48892
  q(p, {
48906
48893
  label: "取消",
48907
48894
  color: "neutral",
@@ -48914,7 +48901,7 @@ var hU = /*#__PURE__*/ XH({
48914
48901
  class: "channel-primary-button",
48915
48902
  icon: D.value ? "i-lucide-play" : "i-lucide-plus",
48916
48903
  label: d.value ? "创建并开启讨论" : S.value ? "创建并连接" : "创建协作房间",
48917
- disabled: !O.value || !!A.value || ne.value,
48904
+ disabled: j.value,
48918
48905
  loading: I(a) === "create"
48919
48906
  }, null, 8, [
48920
48907
  "icon",
@@ -48925,46 +48912,46 @@ var hU = /*#__PURE__*/ XH({
48925
48912
  ])])]);
48926
48913
  };
48927
48914
  }
48928
- }, [["__scopeId", "data-v-60de23d5"]]), IY = {
48915
+ }, [["__scopeId", "data-v-61eb0b0c"]]), FY = {
48929
48916
  class: "account-settings",
48930
48917
  "aria-labelledby": "account-heading"
48931
- }, LY = {
48918
+ }, IY = {
48932
48919
  key: 0,
48933
48920
  class: "fine-print",
48934
48921
  role: "status"
48935
- }, RY = ["aria-label"], zY = { class: "fine-print account-intro" }, BY = {
48922
+ }, LY = ["aria-label"], RY = { class: "fine-print account-intro" }, zY = {
48936
48923
  key: 0,
48937
48924
  class: "account-message is-error",
48938
48925
  role: "status"
48939
- }, VY = {
48926
+ }, BY = {
48940
48927
  key: 1,
48941
48928
  class: "fine-print"
48942
- }, HY = {
48929
+ }, VY = {
48943
48930
  key: 1,
48944
48931
  class: "fine-print"
48945
- }, UY = {
48932
+ }, HY = {
48946
48933
  key: 2,
48947
48934
  class: "account-message is-error",
48948
48935
  role: "alert"
48949
- }, WY = {
48936
+ }, UY = {
48950
48937
  key: 3,
48951
48938
  class: "account-message",
48952
48939
  role: "status"
48953
- }, GY = { class: "account-actions" }, KY = {
48940
+ }, WY = { class: "account-actions" }, GY = {
48954
48941
  key: 2,
48955
48942
  class: "account-profile"
48956
- }, qY = { class: "account-identity" }, JY = { class: "account-avatar-actions" }, YY = { class: "account-name-row" }, XY = {
48943
+ }, KY = { class: "account-identity" }, qY = { class: "account-avatar-actions" }, JY = { class: "account-name-row" }, YY = {
48957
48944
  key: 0,
48958
48945
  class: "account-message is-error",
48959
48946
  role: "alert"
48960
- }, ZY = {
48947
+ }, XY = {
48961
48948
  key: 1,
48962
48949
  class: "account-message",
48963
48950
  role: "status"
48964
- }, QY = {
48951
+ }, ZY = {
48965
48952
  key: 2,
48966
48953
  class: "account-signout account-actions"
48967
- }, $Y = {
48954
+ }, QY = {
48968
48955
  __name: "AccountSettings",
48969
48956
  setup(e) {
48970
48957
  let { view: t, bridge: n } = xr("discussion"), r = Z(() => t.value.admin), i = Z(() => r.value.profile), a = Z(() => r.value.loaded ? r.value.registered ? r.value.logged_in ? "profile" : "login" : "register" : "loading"), o = /* @__PURE__ */ F(""), s = /* @__PURE__ */ Yt({
@@ -49032,13 +49019,13 @@ var hU = /*#__PURE__*/ XH({
49032
49019
  }
49033
49020
  return (e, t) => {
49034
49021
  let p = YV, y = zV, b = MA, x = pA;
49035
- return U(), W("section", IY, [t[8] ||= K("h3", { id: "account-heading" }, "账号", -1), a.value === "loading" ? (U(), W("p", LY, "正在读取账号状态…")) : a.value === "register" || a.value === "login" ? (U(), W("form", {
49022
+ return U(), W("section", FY, [t[8] ||= K("h3", { id: "account-heading" }, "账号", -1), a.value === "loading" ? (U(), W("p", IY, "正在读取账号状态…")) : a.value === "register" || a.value === "login" ? (U(), W("form", {
49036
49023
  key: 1,
49037
49024
  class: "dialog-form account-form",
49038
49025
  "aria-label": a.value === "register" ? "设置管理员账号" : "登录管理员账号",
49039
49026
  onSubmit: uu(m, ["prevent"])
49040
49027
  }, [
49041
- K("p", zY, [a.value === "register" ? (U(), W(H, { key: 0 }, [J("设置站点管理员账号:名称和头像对所有访客可见,登录后可在没有房间凭据的浏览器中存档、恢复、删除房间。")], 64)) : (U(), W(H, { key: 1 }, [J("登录后可管理房间;未登录时仍可阅读并使用本浏览器创建的房间。")], 64))]),
49028
+ K("p", RY, [a.value === "register" ? (U(), W(H, { key: 0 }, [J("设置站点管理员账号:名称和头像对所有访客可见,登录后可在没有房间凭据的浏览器中存档、恢复、删除房间。")], 64)) : (U(), W(H, { key: 1 }, [J("登录后可管理房间;未登录时仍可阅读并使用本浏览器创建的房间。")], 64))]),
49042
49029
  q(y, {
49043
49030
  label: "用户名",
49044
49031
  description: a.value === "register" ? "1–30 个字符,也是公开显示的名称" : void 0,
@@ -49105,18 +49092,18 @@ var hU = /*#__PURE__*/ XH({
49105
49092
  }, null, 8, ["modelValue", "disabled"])]),
49106
49093
  _: 1
49107
49094
  }),
49108
- f.value ? (U(), W("p", BY, "服务端未配置安装令牌,暂时无法注册。本地版请设置环境变量 DISCUSS_ADMIN_SETUP_KEY 后重启;Cloudflare 版请配置部署机密 ADMIN_SETUP_KEY。")) : (U(), W("p", VY, [...t[6] ||= [
49095
+ f.value ? (U(), W("p", zY, "服务端未配置安装令牌,暂时无法注册。本地版请设置环境变量 DISCUSS_ADMIN_SETUP_KEY 后重启;Cloudflare 版请配置部署机密 ADMIN_SETUP_KEY。")) : (U(), W("p", BY, [...t[6] ||= [
49109
49096
  J("首个注册者需要安装令牌,防止他人抢注。本地版见服务端启动日志;Cloudflare 版为部署机密 ADMIN_SETUP_KEY。忘记密码:本地版运行 ", -1),
49110
49097
  K("code", null, "python server.py --reset-admin", -1),
49111
49098
  J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
49112
49099
  ]]))
49113
- ], 64)) : (U(), W("p", HY, [...t[7] ||= [
49100
+ ], 64)) : (U(), W("p", VY, [...t[7] ||= [
49114
49101
  J("忘记密码:本地版运行 ", -1),
49115
49102
  K("code", null, "python server.py --reset-admin", -1),
49116
49103
  J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
49117
49104
  ]])),
49118
- s.auth.error ? (U(), W("p", UY, P(s.auth.error), 1)) : s.auth.notice ? (U(), W("p", WY, P(s.auth.notice), 1)) : Y("", !0),
49119
- K("div", GY, [q(b, {
49105
+ s.auth.error ? (U(), W("p", HY, P(s.auth.error), 1)) : s.auth.notice ? (U(), W("p", UY, P(s.auth.notice), 1)) : Y("", !0),
49106
+ K("div", WY, [q(b, {
49120
49107
  type: "submit",
49121
49108
  class: "channel-primary-button",
49122
49109
  label: a.value === "register" ? "创建并登录" : "登录",
@@ -49127,13 +49114,13 @@ var hU = /*#__PURE__*/ XH({
49127
49114
  "loading",
49128
49115
  "disabled"
49129
49116
  ])])
49130
- ], 40, RY)) : (U(), W("div", KY, [
49131
- K("div", qY, [q(x, {
49117
+ ], 40, LY)) : (U(), W("div", GY, [
49118
+ K("div", KY, [q(x, {
49132
49119
  src: I(n).identities.用户.icon,
49133
49120
  alt: `${I(n).display_name("用户")} 的头像`,
49134
49121
  size: "lg",
49135
49122
  class: "channel-avatar user account-avatar"
49136
- }, null, 8, ["src", "alt"]), K("div", JY, [
49123
+ }, null, 8, ["src", "alt"]), K("div", qY, [
49137
49124
  K("input", {
49138
49125
  ref_key: "avatar_input",
49139
49126
  ref: u,
@@ -49171,7 +49158,7 @@ var hU = /*#__PURE__*/ XH({
49171
49158
  label: "显示名称",
49172
49159
  description: "即用户名,对所有访客可见"
49173
49160
  }, {
49174
- default: L(() => [K("div", YY, [q(p, {
49161
+ default: L(() => [K("div", JY, [q(p, {
49175
49162
  modelValue: l.value,
49176
49163
  "onUpdate:modelValue": t[5] ||= (e) => l.value = e,
49177
49164
  autocomplete: "username",
@@ -49189,8 +49176,8 @@ var hU = /*#__PURE__*/ XH({
49189
49176
  }, null, 8, ["loading", "disabled"])])]),
49190
49177
  _: 1
49191
49178
  })], 32),
49192
- s.profile.error ? (U(), W("p", XY, P(s.profile.error), 1)) : s.profile.notice ? (U(), W("p", ZY, P(s.profile.notice), 1)) : Y("", !0),
49193
- r.value.local ? Y("", !0) : (U(), W("div", QY, [q(b, {
49179
+ s.profile.error ? (U(), W("p", YY, P(s.profile.error), 1)) : s.profile.notice ? (U(), W("p", XY, P(s.profile.notice), 1)) : Y("", !0),
49180
+ r.value.local ? Y("", !0) : (U(), W("div", ZY, [q(b, {
49194
49181
  label: "退出登录",
49195
49182
  icon: "i-lucide-log-out",
49196
49183
  color: "neutral",
@@ -49203,65 +49190,65 @@ var hU = /*#__PURE__*/ XH({
49203
49190
  ]))]);
49204
49191
  };
49205
49192
  }
49206
- }, eX = {
49193
+ }, $Y = {
49207
49194
  key: 0,
49208
49195
  class: "channel-archive-manager"
49209
- }, tX = { class: "channel-archive-toolbar" }, nX = {
49196
+ }, eX = { class: "channel-archive-toolbar" }, tX = {
49210
49197
  key: 0,
49211
49198
  class: "channel-archive-confirm channel-archive-bulk",
49212
49199
  role: "alert"
49213
- }, rX = {
49200
+ }, nX = {
49214
49201
  key: 1,
49215
49202
  role: "alert",
49216
49203
  class: "channel-directory-error"
49217
- }, iX = { class: "channel-archive-results" }, aX = {
49204
+ }, rX = { class: "channel-archive-results" }, iX = {
49218
49205
  key: 0,
49219
49206
  class: "channel-archive-list",
49220
49207
  "aria-label": "已存档房间列表"
49221
- }, oX = { class: "channel-archive-row" }, sX = { class: "channel-archive-info" }, cX = [
49208
+ }, aX = { class: "channel-archive-row" }, oX = { class: "channel-archive-info" }, sX = [
49222
49209
  "title",
49223
49210
  "disabled",
49224
49211
  "onClick"
49225
- ], lX = { key: 0 }, uX = ["datetime"], dX = { class: "channel-archive-actions" }, fX = {
49212
+ ], cX = { key: 0 }, lX = ["datetime"], uX = { class: "channel-archive-actions" }, dX = {
49226
49213
  key: 0,
49227
49214
  class: "channel-archive-confirm channel-archive-bulk",
49228
49215
  role: "alert"
49229
- }, pX = {
49216
+ }, fX = {
49230
49217
  key: 1,
49231
49218
  class: "channel-archive-empty"
49232
- }, mX = { class: "fine-print" }, hX = { class: "dialog-actions" }, gX = { class: "dialog-actions" }, _X = { class: "channel-management-target" }, vX = {
49219
+ }, pX = { class: "fine-print" }, mX = { class: "dialog-actions" }, hX = { class: "dialog-actions" }, gX = { class: "channel-management-target" }, _X = {
49233
49220
  key: 0,
49234
49221
  class: "fine-print"
49235
- }, yX = {
49222
+ }, vX = {
49236
49223
  key: 1,
49237
49224
  class: "fine-print"
49238
- }, bX = {
49225
+ }, yX = {
49239
49226
  key: 2,
49240
49227
  class: "fine-print"
49241
- }, xX = { class: "dialog-actions" }, SX = { key: 4 }, CX = { class: "theme-choices" }, wX = ["aria-pressed", "onClick"], TX = { class: "theme-check" }, EX = { class: "channel-reading-setting" }, DX = {
49228
+ }, bX = { class: "dialog-actions" }, xX = { key: 4 }, SX = { class: "theme-choices" }, CX = ["aria-pressed", "onClick"], wX = { class: "theme-check" }, TX = { class: "channel-reading-setting" }, EX = {
49242
49229
  class: "channel-reading-options",
49243
49230
  role: "group",
49244
49231
  "aria-labelledby": "channel-reading-label"
49245
- }, OX = { class: "channel-reading-setting" }, kX = {
49232
+ }, DX = { class: "channel-reading-setting" }, OX = {
49246
49233
  class: "channel-reading-options channel-effect-options",
49247
49234
  role: "group",
49248
49235
  "aria-labelledby": "channel-effects-label"
49249
- }, AX = { class: "form-two-columns" }, jX = { class: "advanced-content" }, MX = {
49236
+ }, kX = { class: "form-two-columns" }, AX = { class: "advanced-content" }, jX = {
49250
49237
  key: 0,
49251
49238
  class: "fine-print"
49252
- }, NX = { class: "advanced-content" }, PX = { class: "expert-fields" }, FX = { class: "dialog-actions" }, IX = { class: "dialog-actions" }, LX = {
49239
+ }, MX = { class: "advanced-content" }, NX = { class: "expert-fields" }, PX = { class: "dialog-actions" }, FX = { class: "dialog-actions" }, IX = {
49253
49240
  key: 8,
49254
49241
  class: "original-message"
49255
- }, RX = {
49242
+ }, LX = {
49256
49243
  key: 0,
49257
49244
  role: "alert"
49258
- }, zX = { class: "original-meta" }, BX = { class: "fine-print" }, VX = {
49245
+ }, RX = { class: "original-meta" }, zX = { class: "fine-print" }, BX = {
49259
49246
  key: 0,
49260
49247
  class: "channel-answer-summary"
49261
- }, HX = { class: "message-prose" }, UX = { class: "message-prose" }, WX = ["innerHTML"], GX = {
49248
+ }, VX = { class: "message-prose" }, HX = { class: "message-prose" }, UX = ["innerHTML"], WX = {
49262
49249
  key: 2,
49263
49250
  class: "fine-print"
49264
- }, KX = "topic-expert-modes", qX = {
49251
+ }, GX = "topic-expert-modes", KX = {
49265
49252
  __name: "WorkspaceDialogs",
49266
49253
  props: /*@__PURE__*/ Fa({
49267
49254
  detailId: {
@@ -49539,8 +49526,8 @@ var hU = /*#__PURE__*/ XH({
49539
49526
  } : void 0,
49540
49527
  "onAfter:leave": be
49541
49528
  }, {
49542
- body: L(() => [a.value === "archives" ? (U(), W("section", eX, [
49543
- K("div", tX, [
49529
+ body: L(() => [a.value === "archives" ? (U(), W("section", $Y, [
49530
+ K("div", eX, [
49544
49531
  q(x, {
49545
49532
  modelValue: h.value,
49546
49533
  "onUpdate:modelValue": c[0] ||= (e) => h.value = e,
@@ -49569,7 +49556,7 @@ var hU = /*#__PURE__*/ XH({
49569
49556
  }
49570
49557
  }, null, 8, ["label", "disabled"])
49571
49558
  ]),
49572
- b.value && v.value.length ? (U(), W("div", nX, [
49559
+ b.value && v.value.length ? (U(), W("div", tX, [
49573
49560
  K("span", null, "将永久删除当前列表中的 " + P(v.value.length) + " 个房间及其全部记录,无法撤销。", 1),
49574
49561
  q(le, {
49575
49562
  label: "取消",
@@ -49585,20 +49572,20 @@ var hU = /*#__PURE__*/ XH({
49585
49572
  onClick: D
49586
49573
  })
49587
49574
  ])) : Y("", !0),
49588
- I(o).directory_error ? (U(), W("p", rX, P(I(o).directory_error), 1)) : Y("", !0),
49589
- K("div", iX, [v.value.length ? (U(), W("ul", aX, [(U(!0), W(H, null, B(v.value, (e) => (U(), W("li", {
49575
+ I(o).directory_error ? (U(), W("p", nX, P(I(o).directory_error), 1)) : Y("", !0),
49576
+ K("div", rX, [v.value.length ? (U(), W("ul", iX, [(U(!0), W(H, null, B(v.value, (e) => (U(), W("li", {
49590
49577
  key: e.id,
49591
49578
  class: "channel-archive-item"
49592
- }, [K("div", oX, [K("div", sX, [K("button", {
49579
+ }, [K("div", aX, [K("div", oX, [K("button", {
49593
49580
  class: "channel-archive-title",
49594
49581
  title: e.title,
49595
49582
  disabled: !!I(u),
49596
49583
  onClick: (t) => T(e)
49597
- }, P(e.title), 9, cX), K("small", null, [e.created_at ? (U(), W("span", lX, [
49584
+ }, P(e.title), 9, sX), K("small", null, [e.created_at ? (U(), W("span", cX, [
49598
49585
  c[26] ||= J("创建于 ", -1),
49599
- K("time", { datetime: e.created_at }, P(C(e.created_at)), 9, uX),
49586
+ K("time", { datetime: e.created_at }, P(C(e.created_at)), 9, lX),
49600
49587
  c[27] ||= J(" · ", -1)
49601
- ])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div", dX, [q(le, {
49588
+ ])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div", uX, [q(le, {
49602
49589
  "aria-label": `彻底删除 ${e.title}`,
49603
49590
  title: "彻底删除",
49604
49591
  icon: "i-lucide-trash-2",
@@ -49630,7 +49617,7 @@ var hU = /*#__PURE__*/ XH({
49630
49617
  "aria-label",
49631
49618
  "disabled",
49632
49619
  "onClick"
49633
- ])])]), y.value === e.id ? (U(), W("div", fX, [
49620
+ ])])]), y.value === e.id ? (U(), W("div", dX, [
49634
49621
  K("span", null, "永久删除「" + P(e.title) + "」及其全部记录,无法撤销。", 1),
49635
49622
  q(le, {
49636
49623
  label: "取消",
@@ -49646,12 +49633,12 @@ var hU = /*#__PURE__*/ XH({
49646
49633
  disabled: w(e),
49647
49634
  onClick: E
49648
49635
  }, null, 8, ["disabled"])
49649
- ])) : Y("", !0)]))), 128))])) : (U(), W("p", pX, P(m.value.length ? "没有匹配的存档房间" : "暂无已存档房间"), 1))])
49636
+ ])) : Y("", !0)]))), 128))])) : (U(), W("p", fX, P(m.value.length ? "没有匹配的存档房间" : "暂无已存档房间"), 1))])
49650
49637
  ])) : a.value === "delete-folder" ? (U(), W("form", {
49651
49638
  key: 1,
49652
49639
  class: "dialog-form",
49653
49640
  onSubmit: uu(re, ["prevent"])
49654
- }, [K("p", mX, "移除「" + P(e.targetFolder?.name) + "」后,房间不再归属文件夹,所有消息和存档状态都会保留。", 1), K("div", hX, [q(le, {
49641
+ }, [K("p", pX, "移除「" + P(e.targetFolder?.name) + "」后,房间不再归属文件夹,所有消息和存档状态都会保留。", 1), K("div", mX, [q(le, {
49655
49642
  label: "取消",
49656
49643
  color: "neutral",
49657
49644
  variant: "ghost",
@@ -49682,7 +49669,7 @@ var hU = /*#__PURE__*/ XH({
49682
49669
  "modelValue",
49683
49670
  "aria-label",
49684
49671
  "readonly"
49685
- ]), K("div", gX, [q(le, {
49672
+ ]), K("div", hX, [q(le, {
49686
49673
  label: "取消",
49687
49674
  color: "neutral",
49688
49675
  variant: "ghost",
@@ -49707,10 +49694,10 @@ var hU = /*#__PURE__*/ XH({
49707
49694
  class: "dialog-form",
49708
49695
  onSubmit: uu(te, ["prevent"])
49709
49696
  }, [
49710
- K("p", _X, [J(P(e.targetRoom?.title) + " ", 1), K("span", null, "· " + P(e.targetRoom?.message_count) + " 条消息", 1)]),
49711
- a.value === "archive" ? (U(), W("p", vX, "存档后可在侧栏「已存档」中查阅与恢复。已有发言安排会保留;专家需在下次检查时停止自己的定时任务。")) : Y("", !0),
49712
- a.value === "restore" ? (U(), W("p", yX, "恢复不会自动继续讨论;需要继续时,在主持设置中调整阶段。")) : Y("", !0),
49713
- a.value === "delete" ? (U(), W("p", bX, "消息、共识和发言安排将一起删除,无法撤销。")) : Y("", !0),
49697
+ K("p", gX, [J(P(e.targetRoom?.title) + " ", 1), K("span", null, "· " + P(e.targetRoom?.message_count) + " 条消息", 1)]),
49698
+ a.value === "archive" ? (U(), W("p", _X, "存档后可在侧栏「已存档」中查阅与恢复。已有发言安排会保留;专家需在下次检查时停止自己的定时任务。")) : Y("", !0),
49699
+ a.value === "restore" ? (U(), W("p", vX, "恢复不会自动继续讨论;需要继续时,在主持设置中调整阶段。")) : Y("", !0),
49700
+ a.value === "delete" ? (U(), W("p", yX, "消息、共识和发言安排将一起删除,无法撤销。")) : Y("", !0),
49714
49701
  a.value === "rename" ? (U(), G(ue, {
49715
49702
  key: 3,
49716
49703
  label: "房间名称",
@@ -49727,7 +49714,7 @@ var hU = /*#__PURE__*/ XH({
49727
49714
  }, null, 8, ["modelValue"])]),
49728
49715
  _: 1
49729
49716
  })) : Y("", !0),
49730
- K("div", xX, [q(le, {
49717
+ K("div", bX, [q(le, {
49731
49718
  label: "取消",
49732
49719
  color: "neutral",
49733
49720
  variant: "ghost",
@@ -49744,10 +49731,10 @@ var hU = /*#__PURE__*/ XH({
49744
49731
  "loading",
49745
49732
  "disabled"
49746
49733
  ])])
49747
- ], 32)) : a.value === "settings" ? (U(), W("div", SX, [
49748
- q($Y),
49734
+ ], 32)) : a.value === "settings" ? (U(), W("div", xX, [
49735
+ q(QY),
49749
49736
  c[32] ||= K("h3", { class: "account-appearance-heading" }, "外观", -1),
49750
- K("div", CX, [(U(), W(H, null, B(he, (e) => K("button", {
49737
+ K("div", SX, [(U(), W(H, null, B(he, (e) => K("button", {
49751
49738
  key: e.value,
49752
49739
  class: M({ chosen: I(o).theme === e.value }),
49753
49740
  "aria-pressed": I(o).theme === e.value,
@@ -49762,12 +49749,12 @@ var hU = /*#__PURE__*/ XH({
49762
49749
  K("b")
49763
49750
  ], -1)]], 2),
49764
49751
  K("span", null, [K("strong", null, P(e.title), 1), K("small", null, P(e.description), 1)]),
49765
- K("span", TX, [I(o).theme === e.value ? (U(), G(ve, {
49752
+ K("span", wX, [I(o).theme === e.value ? (U(), G(ve, {
49766
49753
  key: 0,
49767
49754
  name: "i-lucide-check"
49768
49755
  })) : Y("", !0)])
49769
- ], 10, wX)), 64))]),
49770
- K("section", EX, [c[29] ||= K("h3", { id: "channel-reading-label" }, "对话宽度", -1), K("div", DX, [(U(!0), W(H, null, B(e.readingOptions, (e) => (U(), G(le, {
49756
+ ], 10, CX)), 64))]),
49757
+ K("section", TX, [c[29] ||= K("h3", { id: "channel-reading-label" }, "对话宽度", -1), K("div", EX, [(U(!0), W(H, null, B(e.readingOptions, (e) => (U(), G(le, {
49771
49758
  key: e.value,
49772
49759
  label: e.label,
49773
49760
  color: "neutral",
@@ -49781,9 +49768,9 @@ var hU = /*#__PURE__*/ XH({
49781
49768
  "aria-pressed",
49782
49769
  "onClick"
49783
49770
  ]))), 128))])]),
49784
- K("section", OX, [
49771
+ K("section", DX, [
49785
49772
  c[30] ||= K("h3", { id: "channel-effects-label" }, "视觉效果", -1),
49786
- K("div", kX, [(U(!0), W(H, null, B(e.effectOptions, (e) => (U(), G(le, {
49773
+ K("div", OX, [(U(!0), W(H, null, B(e.effectOptions, (e) => (U(), G(le, {
49787
49774
  key: e.value,
49788
49775
  label: e.label,
49789
49776
  color: "neutral",
@@ -49799,7 +49786,7 @@ var hU = /*#__PURE__*/ XH({
49799
49786
  ]))), 128))]),
49800
49787
  c[31] ||= K("p", { class: "fine-print" }, "精简模式关闭毛玻璃模糊与多层阴影,适合配置较低或需要更流畅滚动的设备。", -1)
49801
49788
  ])
49802
- ])) : a.value === "create" ? (U(), G(FY, {
49789
+ ])) : a.value === "create" ? (U(), G(PY, {
49803
49790
  key: 5,
49804
49791
  "target-folder": e.targetFolder,
49805
49792
  onSubmit: N,
@@ -49834,7 +49821,7 @@ var hU = /*#__PURE__*/ XH({
49834
49821
  }, null, 8, ["model-value"])]),
49835
49822
  _: 1
49836
49823
  }),
49837
- K("div", AX, [q(ue, { label: "主持人" }, {
49824
+ K("div", kX, [q(ue, { label: "主持人" }, {
49838
49825
  default: L(() => [q(S, {
49839
49826
  "model-value": I(o).fields[ge("host")],
49840
49827
  items: I(A),
@@ -49868,7 +49855,7 @@ var hU = /*#__PURE__*/ XH({
49868
49855
  }, null, 8, ["model-value"])]),
49869
49856
  _: 1
49870
49857
  })) : Y("", !0),
49871
- K("section", jX, [
49858
+ K("section", AX, [
49872
49859
  c[33] ||= K("h3", null, "讨论上限", -1),
49873
49860
  q(bU, {
49874
49861
  ref_key: "topic_limits",
@@ -49888,14 +49875,14 @@ var hU = /*#__PURE__*/ XH({
49888
49875
  "execution",
49889
49876
  "disabled"
49890
49877
  ]),
49891
- ce.value ? (U(), W("p", MX, "修改上限前,请先把阶段保存为“已暂停”。")) : Y("", !0)
49878
+ ce.value ? (U(), W("p", jX, "修改上限前,请先把阶段保存为“已暂停”。")) : Y("", !0)
49892
49879
  ]),
49893
49880
  q(we, {
49894
49881
  open: oe.value,
49895
49882
  "onUpdate:open": c[20] ||= (e) => oe.value = e,
49896
49883
  class: "advanced-fields"
49897
49884
  }, {
49898
- content: L(() => [K("div", NX, [
49885
+ content: L(() => [K("div", MX, [
49899
49886
  (U(), W(H, null, B([
49900
49887
  {
49901
49888
  key: "user_request",
@@ -49922,11 +49909,11 @@ var hU = /*#__PURE__*/ XH({
49922
49909
  }, null, 8, ["model-value", "onUpdate:modelValue"])]),
49923
49910
  _: 2
49924
49911
  }, 1032, ["label"])), 64)),
49925
- K("div", PX, [(U(!0), W(H, null, B(I(ie), (e) => (U(), W("div", { key: e }, [K("label", null, P(e), 1), q(S, {
49926
- "model-value": I(o).experts[KX]?.[e] || "none",
49912
+ K("div", NX, [(U(!0), W(H, null, B(I(ie), (e) => (U(), W("div", { key: e }, [K("label", null, P(e), 1), q(S, {
49913
+ "model-value": I(o).experts[GX]?.[e] || "none",
49927
49914
  items: ae,
49928
49915
  "aria-label": `${e} 参与方式`,
49929
- "onUpdate:modelValue": (t) => I(s).write_expert(KX, e, t === "none" ? "" : t)
49916
+ "onUpdate:modelValue": (t) => I(s).write_expert(GX, e, t === "none" ? "" : t)
49930
49917
  }, null, 8, [
49931
49918
  "model-value",
49932
49919
  "aria-label",
@@ -49944,7 +49931,7 @@ var hU = /*#__PURE__*/ XH({
49944
49931
  }, null, 8, ["trailing-icon"])]),
49945
49932
  _: 1
49946
49933
  }, 8, ["open"]),
49947
- K("div", FX, [q(le, {
49934
+ K("div", PX, [q(le, {
49948
49935
  label: "取消",
49949
49936
  color: "neutral",
49950
49937
  variant: "ghost",
@@ -49988,7 +49975,7 @@ var hU = /*#__PURE__*/ XH({
49988
49975
  _: 1
49989
49976
  }),
49990
49977
  c[35] ||= K("p", { class: "fine-print" }, "创建后为待通知状态;由主持人实际联系专家。", -1),
49991
- K("div", IX, [q(le, {
49978
+ K("div", FX, [q(le, {
49992
49979
  label: "取消",
49993
49980
  variant: "ghost",
49994
49981
  color: "neutral",
@@ -49999,8 +49986,8 @@ var hU = /*#__PURE__*/ XH({
49999
49986
  label: "创建发言安排",
50000
49987
  loading: I(u) === "schedule"
50001
49988
  }, null, 8, ["loading"])])
50002
- ], 32)) : a.value === "message" ? (U(), W("div", LX, [fe.value ? (U(), W("p", RX, P(fe.value), 1)) : de.value ? (U(), W(H, { key: 1 }, [
50003
- K("div", zX, [
49989
+ ], 32)) : a.value === "message" ? (U(), W("div", IX, [fe.value ? (U(), W("p", LX, P(fe.value), 1)) : de.value ? (U(), W(H, { key: 1 }, [
49990
+ K("div", RX, [
50004
49991
  K("strong", null, P(I(s).display_name(de.value.author)), 1),
50005
49992
  K("span", null, "#" + P(de.value.id), 1),
50006
49993
  q(Te, {
@@ -50011,14 +49998,14 @@ var hU = /*#__PURE__*/ XH({
50011
49998
  _: 1
50012
49999
  })
50013
50000
  ]),
50014
- K("p", BX, P(I(s).provenance(de.value)) + " · " + P(new Date(de.value.created_at).toLocaleString("zh-CN")), 1),
50015
- de.value.summary ? (U(), W("section", VX, [K("small", null, "回答摘要 · " + P(I(s).display_name(de.value.summary_by)), 1), K("p", HX, P(de.value.summary), 1)])) : Y("", !0),
50016
- K("p", UX, P(de.value.text), 1),
50001
+ K("p", zX, P(I(s).provenance(de.value)) + " · " + P(new Date(de.value.created_at).toLocaleString("zh-CN")), 1),
50002
+ de.value.summary ? (U(), W("section", BX, [K("small", null, "回答摘要 · " + P(I(s).display_name(de.value.summary_by)), 1), K("p", VX, P(de.value.summary), 1)])) : Y("", !0),
50003
+ K("p", HX, P(de.value.text), 1),
50017
50004
  de.value.attachments?.length ? (U(), W("div", {
50018
50005
  key: 1,
50019
50006
  onClick: ye,
50020
50007
  innerHTML: I(s).attachment_markup(de.value.attachments)
50021
- }, null, 8, WX)) : Y("", !0),
50008
+ }, null, 8, UX)) : Y("", !0),
50022
50009
  de.value.reply_to ? (U(), G(le, {
50023
50010
  key: 2,
50024
50011
  label: `查看被回复的原文 #${de.value.reply_to}`,
@@ -50028,7 +50015,7 @@ var hU = /*#__PURE__*/ XH({
50028
50015
  class: "channel-surface-button",
50029
50016
  onClick: xe
50030
50017
  }, null, 8, ["label"])) : Y("", !0)
50031
- ], 64)) : (U(), W("p", GX, "正在读取原文…"))])) : Y("", !0)]),
50018
+ ], 64)) : (U(), W("p", WX, "正在读取原文…"))])) : Y("", !0)]),
50032
50019
  _: 1
50033
50020
  }, 8, [
50034
50021
  "open",
@@ -50039,7 +50026,7 @@ var hU = /*#__PURE__*/ XH({
50039
50026
  ]);
50040
50027
  };
50041
50028
  }
50042
- }, JX = {
50029
+ }, qX = {
50043
50030
  __name: "ContextMenuContent",
50044
50031
  props: {
50045
50032
  items: {
@@ -50334,7 +50321,7 @@ var hU = /*#__PURE__*/ XH({
50334
50321
  "disabled",
50335
50322
  "text-value",
50336
50323
  "class"
50337
- ]), q(JX, X({
50324
+ ]), q(qX, X({
50338
50325
  sub: "",
50339
50326
  class: r.ui?.content,
50340
50327
  ui: e.ui,
@@ -50445,7 +50432,7 @@ var hU = /*#__PURE__*/ XH({
50445
50432
  _: 3
50446
50433
  }, 16)], 64));
50447
50434
  }
50448
- }, YX = {
50435
+ }, JX = {
50449
50436
  slots: {
50450
50437
  content: "min-w-32 max-h-(--reka-context-menu-content-available-height) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_var(--ease-out)] data-[state=closed]:animate-[scale-out_100ms_var(--ease-out)] origin-(--reka-context-menu-content-transform-origin) flex flex-col",
50451
50438
  viewport: "relative divide-y divide-default scroll-py-1 overflow-y-auto flex-1",
@@ -50633,7 +50620,7 @@ var hU = /*#__PURE__*/ XH({
50633
50620
  }
50634
50621
  ],
50635
50622
  defaultVariants: { size: "md" }
50636
- }, XX = {
50623
+ }, YX = {
50637
50624
  __name: "ContextMenu",
50638
50625
  props: {
50639
50626
  size: {
@@ -50703,7 +50690,7 @@ var hU = /*#__PURE__*/ XH({
50703
50690
  emits: ["update:open"],
50704
50691
  setup(e, { emit: t }) {
50705
50692
  let n = e, r = t, i = Aa(), a = AE("contextMenu", n), o = Cm(), s = jE(om(a, "modal"), r), c = /* @__PURE__ */ Sn(() => a.content), l = () => Vm(i, ["default"]), u = Z(() => oA({
50706
- extend: YX,
50693
+ extend: JX,
50707
50694
  ...o.ui?.contextMenu || {}
50708
50695
  })({ size: a.size }));
50709
50696
  return (e, t) => (U(), G(I(iC), N(Ss(I(s))), {
@@ -50715,7 +50702,7 @@ var hU = /*#__PURE__*/ XH({
50715
50702
  }, {
50716
50703
  default: L(() => [V(e.$slots, "default")]),
50717
50704
  _: 3
50718
- }, 8, ["disabled", "class"])) : Y("", !0), q(JX, X({
50705
+ }, 8, ["disabled", "class"])) : Y("", !0), q(qX, X({
50719
50706
  class: u.value.content({ class: [!i.default && I(a).class, I(a).ui?.content] }),
50720
50707
  ui: u.value,
50721
50708
  "ui-override": I(a).ui
@@ -50745,47 +50732,47 @@ var hU = /*#__PURE__*/ XH({
50745
50732
  _: 3
50746
50733
  }, 16));
50747
50734
  }
50748
- }, ZX = { class: "channel-directory-manager" }, QX = { class: "channel-directory-heading" }, $X = ["aria-expanded"], eZ = { class: "channel-directory-actions" }, tZ = {
50735
+ }, XX = { class: "channel-directory-manager" }, ZX = { class: "channel-directory-heading" }, QX = ["aria-expanded"], $X = { class: "channel-directory-actions" }, eZ = {
50749
50736
  "aria-label": "协作房间列表",
50750
50737
  class: "channel-room-list",
50751
50738
  "data-room-directory": ""
50752
- }, nZ = ["data-room-folder", "data-drag-folder"], rZ = [
50739
+ }, tZ = ["data-room-folder", "data-drag-folder"], nZ = [
50753
50740
  "disabled",
50754
50741
  "aria-label",
50755
50742
  "aria-expanded",
50756
50743
  "onKeydown",
50757
50744
  "onClick"
50758
- ], iZ = { class: "channel-folder-name" }, aZ = { class: "channel-folder-actions" }, oZ = {
50745
+ ], rZ = { class: "channel-folder-name" }, iZ = { class: "channel-folder-actions" }, aZ = {
50759
50746
  class: "channel-directory-count",
50760
50747
  "aria-hidden": "true"
50761
- }, sZ = ["data-drop-folder"], cZ = {
50748
+ }, oZ = ["data-drop-folder"], sZ = {
50762
50749
  key: 0,
50763
50750
  class: "channel-directory-empty",
50764
50751
  role: "status"
50765
- }, lZ = ["data-drag-room"], uZ = [
50752
+ }, cZ = ["data-drag-room"], lZ = [
50766
50753
  "aria-label",
50767
50754
  "disabled",
50768
50755
  "onKeydown"
50769
- ], dZ = [
50756
+ ], uZ = [
50770
50757
  "title",
50771
50758
  "aria-label",
50772
50759
  "aria-current",
50773
50760
  "onClick"
50774
- ], fZ = { class: "channel-room-actions" }, pZ = {
50761
+ ], dZ = { class: "channel-room-actions" }, fZ = {
50775
50762
  key: 0,
50776
50763
  class: "channel-directory-empty"
50777
- }, mZ = {
50764
+ }, pZ = {
50778
50765
  key: 0,
50779
50766
  class: "channel-archive-count"
50780
- }, hZ = {
50767
+ }, mZ = {
50781
50768
  key: 0,
50782
50769
  role: "status",
50783
50770
  class: "channel-directory-notice"
50784
- }, gZ = {
50771
+ }, hZ = {
50785
50772
  key: 1,
50786
50773
  role: "alert",
50787
50774
  class: "channel-directory-error"
50788
- }, _Z = {
50775
+ }, gZ = {
50789
50776
  __name: "ChannelDirectory",
50790
50777
  emits: [
50791
50778
  "select",
@@ -50999,8 +50986,8 @@ var hU = /*#__PURE__*/ XH({
50999
50986
  ];
51000
50987
  }
51001
50988
  return (e, t) => {
51002
- let u = MA, _ = sA, v = CH, x = $V, S = XX;
51003
- return U(), W("div", ZX, [
50989
+ let u = MA, _ = sA, v = CH, x = $V, S = YX;
50990
+ return U(), W("div", XX, [
51004
50991
  q(u, {
51005
50992
  label: "新建对话",
51006
50993
  icon: "i-lucide-plus",
@@ -51009,12 +50996,12 @@ var hU = /*#__PURE__*/ XH({
51009
50996
  disabled: I(r).directory_pending.includes("create-room"),
51010
50997
  onClick: t[0] ||= (e) => n("create", null)
51011
50998
  }, null, 8, ["disabled"]),
51012
- K("div", QX, [K("button", {
50999
+ K("div", ZX, [K("button", {
51013
51000
  type: "button",
51014
51001
  class: "channel-section-toggle",
51015
51002
  "aria-expanded": m.value,
51016
51003
  onClick: t[1] ||= (e) => m.value = !m.value
51017
- }, [q(_, { name: m.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[7] ||= J("协作房间", -1)], 8, $X), K("div", eZ, [
51004
+ }, [q(_, { name: m.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[7] ||= J("协作房间", -1)], 8, QX), K("div", $X, [
51018
51005
  q(v, {
51019
51006
  items: d.value,
51020
51007
  content: {
@@ -51056,7 +51043,7 @@ var hU = /*#__PURE__*/ XH({
51056
51043
  onChange: p
51057
51044
  }, null, 544)
51058
51045
  ])]),
51059
- vr(K("nav", tZ, [(U(!0), W(H, null, B(l.value, (e, s) => (U(), W("section", {
51046
+ vr(K("nav", eZ, [(U(!0), W(H, null, B(l.value, (e, s) => (U(), W("section", {
51060
51047
  key: e.order_id,
51061
51048
  class: "channel-folder-section",
51062
51049
  "data-room-folder": e.id,
@@ -51086,9 +51073,9 @@ var hU = /*#__PURE__*/ XH({
51086
51073
  }, [
51087
51074
  q(_, { name: h.value.has(e.id) ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
51088
51075
  q(_, { name: "i-lucide-folder" }),
51089
- K("span", iZ, P(e.name), 1)
51090
- ], 40, rZ),
51091
- K("div", aZ, [q(v, {
51076
+ K("span", rZ, P(e.name), 1)
51077
+ ], 40, nZ),
51078
+ K("div", iZ, [q(v, {
51092
51079
  items: g(e, s),
51093
51080
  content: {
51094
51081
  align: "start",
@@ -51122,12 +51109,12 @@ var hU = /*#__PURE__*/ XH({
51122
51109
  ])]),
51123
51110
  _: 2
51124
51111
  }, 1032, ["text"])]),
51125
- K("small", oZ, P(e.pending ? "保存中" : e.rooms.length), 1)
51112
+ K("small", aZ, P(e.pending ? "保存中" : e.rooms.length), 1)
51126
51113
  ], 2)) : Y("", !0), !e.id || !h.value.has(e.id) ? (U(), W("div", {
51127
51114
  key: 1,
51128
51115
  class: M(e.id ? "channel-folder-rooms" : "channel-root-rooms"),
51129
51116
  "data-drop-folder": e.id ? void 0 : ""
51130
- }, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p", cZ, "正在创建:" + P(I(r).creating_room.title), 1)) : Y("", !0), (U(!0), W(H, null, B(e.rooms, (s, c) => (U(), G(S, {
51117
+ }, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p", sZ, "正在创建:" + P(I(r).creating_room.title), 1)) : Y("", !0), (U(!0), W(H, null, B(e.rooms, (s, c) => (U(), G(S, {
51131
51118
  key: s.id,
51132
51119
  items: b(s, c, s.folder_id || null, e.rooms.length),
51133
51120
  ui: { content: "channel-menu channel-topic-menu" }
@@ -51152,7 +51139,7 @@ var hU = /*#__PURE__*/ XH({
51152
51139
  direction: 1,
51153
51140
  folder_id: s.folder_id || null
51154
51141
  }), ["prevent"]), ["down"])]
51155
- }, [q(_, { name: "i-lucide-grip-vertical" })], 40, uZ),
51142
+ }, [q(_, { name: "i-lucide-grip-vertical" })], 40, lZ),
51156
51143
  K("button", {
51157
51144
  class: "channel-room-select",
51158
51145
  "data-drag-title": "",
@@ -51161,8 +51148,8 @@ var hU = /*#__PURE__*/ XH({
51161
51148
  "aria-current": s.id === I(r).room?.id ? "page" : void 0,
51162
51149
  onPointerdown: t[5] ||= (e) => !I(o) && I(i).start_drag(e),
51163
51150
  onClick: (e) => n("select", s.id)
51164
- }, [K("span", null, P(s.title), 1)], 40, dZ),
51165
- K("div", fZ, [q(x, {
51151
+ }, [K("span", null, P(s.title), 1)], 40, uZ),
51152
+ K("div", dZ, [q(x, {
51166
51153
  text: s.archived ? "恢复房间" : "存档房间",
51167
51154
  ui: { content: "channel-topic-tooltip" }
51168
51155
  }, {
@@ -51203,9 +51190,9 @@ var hU = /*#__PURE__*/ XH({
51203
51190
  }, null, 8, ["aria-label"])]),
51204
51191
  _: 2
51205
51192
  }, 1032, ["items"])])
51206
- ], 10, lZ)]),
51193
+ ], 10, cZ)]),
51207
51194
  _: 2
51208
- }, 1032, ["items"]))), 128))], 10, sZ)) : Y("", !0)], 8, nZ))), 128)), s.value.length ? Y("", !0) : (U(), W("p", pZ, "暂无协作房间"))], 512), [[Vc, m.value]]),
51195
+ }, 1032, ["items"]))), 128))], 10, oZ)) : Y("", !0)], 8, tZ))), 128)), s.value.length ? Y("", !0) : (U(), W("p", fZ, "暂无协作房间"))], 512), [[Vc, m.value]]),
51209
51196
  vr(q(u, {
51210
51197
  icon: "i-lucide-archive",
51211
51198
  color: "neutral",
@@ -51214,48 +51201,48 @@ var hU = /*#__PURE__*/ XH({
51214
51201
  "aria-haspopup": "dialog",
51215
51202
  onClick: t[6] ||= (e) => n("archives")
51216
51203
  }, {
51217
- default: L(() => [t[8] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small", mZ, P(c.value), 1)) : Y("", !0)]),
51204
+ default: L(() => [t[8] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small", pZ, P(c.value), 1)) : Y("", !0)]),
51218
51205
  _: 1
51219
51206
  }, 512), [[Vc, m.value]]),
51220
- I(r).directory_notice ? (U(), W("p", hZ, P(I(r).directory_notice), 1)) : Y("", !0),
51221
- I(r).directory_error ? (U(), W("p", gZ, P(I(r).directory_error), 1)) : Y("", !0)
51207
+ I(r).directory_notice ? (U(), W("p", mZ, P(I(r).directory_notice), 1)) : Y("", !0),
51208
+ I(r).directory_error ? (U(), W("p", hZ, P(I(r).directory_error), 1)) : Y("", !0)
51222
51209
  ]);
51223
51210
  };
51224
51211
  }
51225
- }, vZ = {
51212
+ }, _Z = {
51226
51213
  key: 0,
51227
51214
  class: "pb-invite",
51228
51215
  "aria-label": "启动手动成员"
51229
- }, yZ = { class: "pb-invite-lead" }, bZ = {
51216
+ }, vZ = { class: "pb-invite-lead" }, yZ = {
51230
51217
  key: 0,
51231
51218
  role: "alert",
51232
51219
  class: "pb-free-note is-error"
51233
- }, xZ = { class: "pb-invite-launches" }, SZ = { class: "pb-invite-footer" }, CZ = {
51220
+ }, bZ = { class: "pb-invite-launches" }, xZ = { class: "pb-invite-footer" }, SZ = {
51234
51221
  class: "pb-invite-library",
51235
51222
  role: "group",
51236
51223
  "aria-label": "选择 AI(可多选)"
51237
- }, wZ = [
51224
+ }, CZ = [
51238
51225
  "aria-pressed",
51239
51226
  "title",
51240
51227
  "onClick"
51241
- ], TZ = {
51228
+ ], wZ = {
51242
51229
  key: 0,
51243
51230
  class: "pb-invite-cards"
51244
- }, EZ = {
51231
+ }, TZ = {
51245
51232
  key: 0,
51246
51233
  class: "fine-print"
51247
- }, DZ = ["aria-hidden"], OZ = {
51234
+ }, EZ = ["aria-hidden"], DZ = {
51248
51235
  key: 2,
51249
51236
  class: "pb-invite-empty"
51250
- }, kZ = {
51237
+ }, OZ = {
51251
51238
  key: 3,
51252
51239
  role: "alert",
51253
51240
  class: "fine-print"
51254
- }, AZ = {
51241
+ }, kZ = {
51255
51242
  key: 4,
51256
51243
  role: "alert",
51257
51244
  class: "pb-free-note is-error"
51258
- }, jZ = { class: "pb-invite-footer" }, MZ = 2e3, NZ = /*#__PURE__*/ XH({
51245
+ }, AZ = { class: "pb-invite-footer" }, jZ = 2e3, MZ = /*#__PURE__*/ XH({
51259
51246
  __name: "InviteDialog",
51260
51247
  props: /*@__PURE__*/ Fa({ description: {
51261
51248
  type: String,
@@ -51273,7 +51260,7 @@ var hU = /*#__PURE__*/ XH({
51273
51260
  async function u(e) {
51274
51261
  clearTimeout(l), c.value = "", await i("copy_member_launch", e) && (c.value = e, l = setTimeout(() => {
51275
51262
  c.value = "";
51276
- }, MZ));
51263
+ }, jZ));
51277
51264
  }
51278
51265
  let d = /* @__PURE__ */ F([]), f = 0, p = /* @__PURE__ */ F([]), m = /* @__PURE__ */ F(!1), h = Z(() => Object.keys(r.launch_clients)), g = Z(() => (o.value.members || []).map((e) => e.name)), _ = (e) => g.value.filter((t) => r.platform_of(t) === e).length, v = Z(() => [...d.value.filter((e) => e.mode !== "manual"), ...d.value.filter((e) => e.mode === "manual")]), y = Z(() => {
51279
51266
  let e = [...g.value];
@@ -51337,10 +51324,10 @@ var hU = /*#__PURE__*/ XH({
51337
51324
  body: "dialog-body"
51338
51325
  }
51339
51326
  }, {
51340
- body: L(() => [p.value.length && !d.value.length ? (U(), W("div", vZ, [
51341
- K("p", yZ, P(p.value.length > 1 ? `${p.value.length} 位手动成员已加入` : "手动成员已加入") + ",把启动指令交给各自的 AI 会话,注册后才算到场。", 1),
51342
- I(n).access?.error ? (U(), W("p", bZ, P(I(n).access.error), 1)) : Y("", !0),
51343
- K("ul", xZ, [(U(!0), W(H, null, B(p.value, (e) => (U(), W("li", { key: e }, [
51327
+ body: L(() => [p.value.length && !d.value.length ? (U(), W("div", _Z, [
51328
+ K("p", vZ, P(p.value.length > 1 ? `${p.value.length} 位手动成员已加入` : "手动成员已加入") + ",把启动指令交给各自的 AI 会话,注册后才算到场。", 1),
51329
+ I(n).access?.error ? (U(), W("p", yZ, P(I(n).access.error), 1)) : Y("", !0),
51330
+ K("ul", bZ, [(U(!0), W(H, null, B(p.value, (e) => (U(), W("li", { key: e }, [
51344
51331
  q(l, {
51345
51332
  src: I(r).identities[I(r).platform_of(e)]?.icon,
51346
51333
  text: I(r).identities[I(r).platform_of(e)]?.initials,
@@ -51375,7 +51362,7 @@ var hU = /*#__PURE__*/ XH({
51375
51362
  ])
51376
51363
  ]))), 128))]),
51377
51364
  o[3] ||= K("p", { class: "fine-print" }, "指令含该成员的凭证,只交给对应的会话;关闭后仍可在参与者列表中复制。", -1),
51378
- K("div", SZ, [q(f, {
51365
+ K("div", xZ, [q(f, {
51379
51366
  label: "完成",
51380
51367
  class: "channel-primary-button",
51381
51368
  onClick: o[0] ||= (e) => t.value = !1
@@ -51386,7 +51373,7 @@ var hU = /*#__PURE__*/ XH({
51386
51373
  "aria-label": "邀请专家",
51387
51374
  onSubmit: uu(w, ["prevent"])
51388
51375
  }, [
51389
- K("div", CZ, [(U(!0), W(H, null, B(h.value, (e) => (U(), W("button", {
51376
+ K("div", SZ, [(U(!0), W(H, null, B(h.value, (e) => (U(), W("button", {
51390
51377
  key: e,
51391
51378
  type: "button",
51392
51379
  "aria-pressed": d.value.some((t) => t.name === e),
@@ -51403,8 +51390,8 @@ var hU = /*#__PURE__*/ XH({
51403
51390
  "text",
51404
51391
  "alt",
51405
51392
  "class"
51406
- ]), J(P(e), 1)], 8, wZ))), 128))]),
51407
- d.value.length ? (U(), W("div", TZ, [(U(!0), W(H, null, B(d.value, (e) => (U(), W("div", {
51393
+ ]), J(P(e), 1)], 8, CZ))), 128))]),
51394
+ d.value.length ? (U(), W("div", wZ, [(U(!0), W(H, null, B(d.value, (e) => (U(), W("div", {
51408
51395
  key: e.id,
51409
51396
  class: "pb-invite-pick"
51410
51397
  }, [q(YJ, {
@@ -51424,15 +51411,15 @@ var hU = /*#__PURE__*/ XH({
51424
51411
  "onMode",
51425
51412
  "onSession",
51426
51413
  "onRemove"
51427
- ]), y.value.get(e) === e.name ? Y("", !0) : (U(), W("p", EZ, "同一 AI 已有实例,将以 " + P(y.value.get(e)) + " 加入,使用独立会话。", 1))]))), 128))])) : Y("", !0),
51414
+ ]), y.value.get(e) === e.name ? Y("", !0) : (U(), W("p", TZ, "同一 AI 已有实例,将以 " + P(y.value.get(e)) + " 加入,使用独立会话。", 1))]))), 128))])) : Y("", !0),
51428
51415
  d.value.length ? (U(), W("p", {
51429
51416
  key: 1,
51430
51417
  class: M(["fine-print", { "pb-invite-reserved": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual")) }]),
51431
51418
  "aria-hidden": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual"))
51432
- }, "手动启动的成员排在程序启动的成员之后加入队列。", 10, DZ)) : (U(), W("p", OZ, "选择一位或多位 AI(同一 AI 可重复添加),点卡片翻面设置软件、模型与项目权限。")),
51433
- d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p", kZ, "邀请需要本机服务,请在运行 AI 的电脑打开本机网站。")) : Y("", !0),
51434
- m.value && I(n).free_error ? (U(), W("p", AZ, P(I(n).free_error), 1)) : Y("", !0),
51435
- K("div", jZ, [q(f, {
51419
+ }, "手动启动的成员排在程序启动的成员之后加入队列。", 10, EZ)) : (U(), W("p", DZ, "选择一位或多位 AI(同一 AI 可重复添加),点卡片翻面设置软件、模型与项目权限。")),
51420
+ d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p", OZ, "邀请需要本机服务,请在运行 AI 的电脑打开本机网站。")) : Y("", !0),
51421
+ m.value && I(n).free_error ? (U(), W("p", kZ, P(I(n).free_error), 1)) : Y("", !0),
51422
+ K("div", AZ, [q(f, {
51436
51423
  label: "取消",
51437
51424
  color: "neutral",
51438
51425
  variant: "ghost",
@@ -51454,40 +51441,40 @@ var hU = /*#__PURE__*/ XH({
51454
51441
  }, 8, ["open", "description"]);
51455
51442
  };
51456
51443
  }
51457
- }, [["__scopeId", "data-v-3ca69064"]]), PZ = { class: "speaking-order" }, FZ = {
51444
+ }, [["__scopeId", "data-v-3ca69064"]]), NZ = { class: "speaking-order" }, PZ = {
51458
51445
  key: 0,
51459
51446
  class: "speaking-order-divider",
51460
51447
  "aria-hidden": "true"
51461
- }, IZ = ["data-key", "data-movable"], LZ = [
51448
+ }, FZ = ["data-key", "data-movable"], IZ = [
51462
51449
  "aria-disabled",
51463
51450
  "aria-label",
51464
51451
  "title",
51465
51452
  "onPointerdown",
51466
51453
  "onKeydown"
51467
- ], RZ = { class: "speaking-order-number" }, zZ = {
51454
+ ], LZ = { class: "speaking-order-number" }, RZ = {
51468
51455
  key: 1,
51469
51456
  class: "speaking-order-place",
51470
51457
  title: "已发言",
51471
51458
  "aria-label": "已发言"
51472
- }, BZ = ["title"], VZ = {
51459
+ }, zZ = ["title"], BZ = {
51473
51460
  key: 0,
51474
51461
  class: "speaking-order-later"
51475
- }, HZ = {
51462
+ }, VZ = {
51476
51463
  key: 1,
51477
51464
  class: "speaking-order-divider",
51478
51465
  "aria-hidden": "true"
51479
- }, UZ = {
51466
+ }, HZ = {
51480
51467
  key: 0,
51481
51468
  role: "status",
51482
51469
  class: "pb-free-note"
51483
- }, WZ = {
51470
+ }, UZ = {
51484
51471
  key: 1,
51485
51472
  role: "alert",
51486
51473
  class: "pb-free-note is-error"
51487
- }, GZ = {
51474
+ }, WZ = {
51488
51475
  class: "speaking-order-live",
51489
51476
  "aria-live": "polite"
51490
- }, KZ = "发言顺序刚有变化,已更新为最新顺序,请重新调整", qZ = /*#__PURE__*/ XH({
51477
+ }, GZ = "发言顺序刚有变化,已更新为最新顺序,请重新调整", KZ = /*#__PURE__*/ XH({
51491
51478
  __name: "SpeakingOrder",
51492
51479
  props: {
51493
51480
  away: {
@@ -51507,7 +51494,7 @@ var hU = /*#__PURE__*/ XH({
51507
51494
  }), c = Z(() => s.value.kind === "default" ? "idle" : "queued"), l = Z(() => !!n.value.access?.can_manage && !o.value.archived && s.value.movable.length > 1), u = {
51508
51495
  queue: "不在本次依次回答中",
51509
51496
  turns: "本轮未安排"
51510
- }, d = Z(() => s.value.kind === "default" ? "拖动设置默认发言顺序,@全体依次 按此顺序;聚焦后可用上下方向键" : "拖动调整还没发言的顺序,立即生效;聚焦后可用上下方向键"), f = /* @__PURE__ */ F(!1), p = Z(() => f.value ? KZ : n.value.order_error?.room_id === o.value.id ? n.value.order_error.message : ""), m = /* @__PURE__ */ F(null), h = /* @__PURE__ */ F(null), g = /* @__PURE__ */ F(null), _ = /* @__PURE__ */ F("");
51497
+ }, d = Z(() => s.value.kind === "default" ? "拖动设置默认发言顺序,@全体依次 按此顺序;聚焦后可用上下方向键" : "拖动调整还没发言的顺序,立即生效;聚焦后可用上下方向键"), f = /* @__PURE__ */ F(!1), p = Z(() => f.value ? GZ : n.value.order_error?.room_id === o.value.id ? n.value.order_error.message : ""), m = /* @__PURE__ */ F(null), h = /* @__PURE__ */ F(null), g = /* @__PURE__ */ F(null), _ = /* @__PURE__ */ F("");
51511
51498
  R(() => s.value.revision, () => {
51512
51499
  g.value = null;
51513
51500
  }), R(() => o.value.id, () => {
@@ -51594,13 +51581,13 @@ var hU = /*#__PURE__*/ XH({
51594
51581
  }
51595
51582
  return (e, n) => {
51596
51583
  let i = sA;
51597
- return U(), W("div", PZ, [
51584
+ return U(), W("div", NZ, [
51598
51585
  K("ul", {
51599
51586
  ref_key: "list",
51600
51587
  ref: m,
51601
51588
  class: M(["pb-members", { "is-dragging": h.value }])
51602
51589
  }, [
51603
- (U(!0), W(H, null, B(y.value, (t, r) => (U(), W(H, { key: t.key }, [t.outside ? (U(), W("li", FZ, [K("span", null, P(u[s.value.kind]), 1)])) : Y("", !0), K("li", {
51590
+ (U(!0), W(H, null, B(y.value, (t, r) => (U(), W(H, { key: t.key }, [t.outside ? (U(), W("li", PZ, [K("span", null, P(u[s.value.kind]), 1)])) : Y("", !0), K("li", {
51604
51591
  class: M(["pb-member speaking-order-row", [
51605
51592
  `is-${t.state}`,
51606
51593
  E(r),
@@ -51621,19 +51608,19 @@ var hU = /*#__PURE__*/ XH({
51621
51608
  onPointercancel: n[0] ||= (e) => w(e, !0),
51622
51609
  onLostpointercapture: n[1] ||= (e) => w(e, !0),
51623
51610
  onKeydown: [fu((e) => D(e, b(r), -1), ["up"]), fu((e) => D(e, b(r), 1), ["down"])]
51624
- }, [K("span", RZ, P(t.place), 1), q(i, {
51611
+ }, [K("span", LZ, P(t.place), 1), q(i, {
51625
51612
  name: "i-lucide-grip-vertical",
51626
51613
  class: "speaking-order-handle"
51627
- })], 40, LZ)) : t.state === "done" ? (U(), W("span", zZ, [q(i, { name: "i-lucide-check" })])) : (U(), W("span", {
51614
+ })], 40, IZ)) : t.state === "done" ? (U(), W("span", RZ, [q(i, { name: "i-lucide-check" })])) : (U(), W("span", {
51628
51615
  key: 2,
51629
51616
  class: "speaking-order-place",
51630
51617
  title: t.state === "speaking" ? "正在发言" : void 0
51631
- }, P(t.place || ""), 9, BZ)), V(e.$slots, "default", {
51618
+ }, P(t.place || ""), 9, zZ)), V(e.$slots, "default", {
51632
51619
  item: t,
51633
51620
  place: t.place
51634
- }, void 0, !0)], 10, IZ)], 64))), 128)),
51635
- s.value.later?.length ? (U(), W("li", VZ, [K("details", null, [K("summary", null, "后续已排 " + P(s.value.later.length) + " 轮", 1), K("ol", null, [(U(!0), W(H, null, B(s.value.later, (e, n) => (U(), W("li", { key: n }, [K("span", null, P(t.round ? `第 ${t.round + n + 1} 轮` : `后续第 ${n + 1} 轮`), 1), J(P(e.map((e) => I(r).display_name(e)).join(" → ")), 1)]))), 128))])])])) : Y("", !0),
51636
- t.away.length ? (U(), W("li", HZ, [...n[2] ||= [K("span", null, "已离开", -1)]])) : Y("", !0),
51621
+ }, void 0, !0)], 10, FZ)], 64))), 128)),
51622
+ s.value.later?.length ? (U(), W("li", BZ, [K("details", null, [K("summary", null, "后续已排 " + P(s.value.later.length) + " 轮", 1), K("ol", null, [(U(!0), W(H, null, B(s.value.later, (e, n) => (U(), W("li", { key: n }, [K("span", null, P(t.round ? `第 ${t.round + n + 1} 轮` : `后续第 ${n + 1} 轮`), 1), J(P(e.map((e) => I(r).display_name(e)).join(" → ")), 1)]))), 128))])])])) : Y("", !0),
51623
+ t.away.length ? (U(), W("li", VZ, [...n[2] ||= [K("span", null, "已离开", -1)]])) : Y("", !0),
51637
51624
  (U(!0), W(H, null, B(t.away, (t) => (U(), W("li", {
51638
51625
  key: `away-${t}`,
51639
51626
  class: "pb-member speaking-order-row is-away"
@@ -51645,78 +51632,78 @@ var hU = /*#__PURE__*/ XH({
51645
51632
  place: 0
51646
51633
  }, void 0, !0)]))), 128))
51647
51634
  ], 2),
51648
- p.value === KZ ? (U(), W("p", UZ, P(p.value), 1)) : p.value ? (U(), W("p", WZ, P(p.value), 1)) : Y("", !0),
51649
- K("p", GZ, P(_.value), 1)
51635
+ p.value === GZ ? (U(), W("p", HZ, P(p.value), 1)) : p.value ? (U(), W("p", UZ, P(p.value), 1)) : Y("", !0),
51636
+ K("p", WZ, P(_.value), 1)
51650
51637
  ]);
51651
51638
  };
51652
51639
  }
51653
- }, [["__scopeId", "data-v-dc33a051"]]), JZ = {
51640
+ }, [["__scopeId", "data-v-dc33a051"]]), qZ = {
51654
51641
  key: 0,
51655
51642
  class: "pb-header"
51656
- }, YZ = { class: "pb-mode" }, XZ = { class: "pb-status-line" }, ZZ = { role: "status" }, QZ = {
51643
+ }, JZ = { class: "pb-mode" }, YZ = { class: "pb-status-line" }, XZ = { role: "status" }, ZZ = {
51657
51644
  key: 0,
51658
51645
  class: "pb-mode"
51659
- }, $Z = {
51646
+ }, QZ = {
51660
51647
  key: 0,
51661
51648
  class: "pb-status-detail"
51662
- }, eQ = {
51649
+ }, $Z = {
51663
51650
  key: 1,
51664
51651
  class: "pb-status-detail"
51665
- }, tQ = { class: "pb-error-detail" }, nQ = {
51652
+ }, eQ = { class: "pb-error-detail" }, tQ = {
51666
51653
  key: 3,
51667
51654
  class: "pb-meters"
51668
- }, rQ = { class: "pb-meter-label" }, iQ = {
51655
+ }, nQ = { class: "pb-meter-label" }, rQ = {
51669
51656
  key: 0,
51670
51657
  class: "pb-bar"
51671
- }, aQ = {
51658
+ }, iQ = {
51672
51659
  key: 1,
51673
51660
  class: "pb-section",
51674
51661
  "aria-label": "当前焦点"
51675
- }, oQ = {
51662
+ }, aQ = {
51676
51663
  class: "pb-section",
51677
51664
  "aria-label": "发言顺序"
51678
- }, sQ = { class: "pb-heading" }, cQ = {
51665
+ }, oQ = { class: "pb-heading" }, sQ = {
51679
51666
  key: 0,
51680
51667
  class: "pb-status-detail pb-held"
51681
- }, lQ = { class: "pb-member-body" }, uQ = { class: "pb-member-name" }, dQ = { class: "pb-member-body" }, fQ = { class: "pb-member-name" }, pQ = {
51668
+ }, cQ = { class: "pb-member-body" }, lQ = { class: "pb-member-name" }, uQ = { class: "pb-member-body" }, dQ = { class: "pb-member-name" }, fQ = {
51682
51669
  key: 0,
51683
51670
  class: "pb-member-model",
51684
51671
  title: "本场启动配置;默认模型与默认强度由对应软件决定"
51685
- }, mQ = {
51672
+ }, pQ = {
51686
51673
  key: 1,
51687
51674
  class: "pb-member-model",
51688
51675
  title: "续接你已有的会话;它工作时请不要在原窗口继续操作"
51689
- }, hQ = { key: 0 }, gQ = {
51676
+ }, mQ = { key: 0 }, hQ = {
51690
51677
  key: 3,
51691
51678
  class: "pb-member-manual"
51692
- }, _Q = { key: 0 }, vQ = ["onClick"], yQ = {
51679
+ }, gQ = { key: 0 }, _Q = ["onClick"], vQ = {
51693
51680
  key: 1,
51694
51681
  role: "alert",
51695
51682
  class: "pb-free-note is-error"
51696
- }, bQ = {
51683
+ }, yQ = {
51697
51684
  key: 2,
51698
51685
  role: "status",
51699
51686
  class: "pb-free-note"
51700
- }, xQ = {
51687
+ }, bQ = {
51701
51688
  key: 2,
51702
51689
  class: "pb-actions",
51703
51690
  "aria-label": "操作"
51704
- }, SQ = {
51691
+ }, xQ = {
51705
51692
  key: 3,
51706
51693
  class: "pb-section",
51707
51694
  "aria-label": "阶段耗时"
51708
- }, CQ = { class: "pb-timing-heading" }, wQ = ["aria-label"], TQ = { class: "pb-timing-totals" }, EQ = ["title"], DQ = { class: "pb-timings" }, OQ = { class: "pb-timing-who" }, kQ = { class: "pb-timing-stages" }, AQ = ["title"], jQ = {
51695
+ }, SQ = { class: "pb-timing-heading" }, CQ = ["aria-label"], wQ = { class: "pb-timing-totals" }, TQ = ["title"], EQ = { class: "pb-timings" }, DQ = { class: "pb-timing-who" }, OQ = { class: "pb-timing-stages" }, kQ = ["title"], AQ = {
51709
51696
  key: 0,
51710
51697
  class: "pb-note"
51711
- }, MQ = { class: "pb-connection" }, NQ = { class: "fine-print" }, PQ = {
51698
+ }, jQ = { class: "pb-connection" }, MQ = { class: "fine-print" }, NQ = {
51712
51699
  key: 0,
51713
51700
  role: "status",
51714
51701
  class: "fine-print"
51715
- }, FQ = {
51702
+ }, PQ = {
51716
51703
  key: 2,
51717
51704
  role: "alert",
51718
51705
  class: "fine-print"
51719
- }, IQ = { key: 2 }, LQ = { class: "pb-invite-footer" }, RQ = { class: "progress-ending" }, zQ = ["disabled"], BQ = 2e3, VQ = 90, HQ = 100, UQ = /*#__PURE__*/ XH({
51706
+ }, FQ = { key: 2 }, IQ = { class: "pb-invite-footer" }, LQ = { class: "progress-ending" }, RQ = ["disabled"], zQ = 2e3, BQ = 90, VQ = 100, HQ = /*#__PURE__*/ XH({
51720
51707
  __name: "ProgressBoard",
51721
51708
  props: { docked: {
51722
51709
  type: Boolean,
@@ -51727,7 +51714,7 @@ var hU = /*#__PURE__*/ XH({
51727
51714
  async function l(e) {
51728
51715
  clearTimeout(c), s.value = "", await i("copy_member_launch", e) && (s.value = e, c = setTimeout(() => {
51729
51716
  s.value = "";
51730
- }, BQ));
51717
+ }, zQ));
51731
51718
  }
51732
51719
  let u = /* @__PURE__ */ F(!1), d = /* @__PURE__ */ F(null), f = /* @__PURE__ */ F(!1), p = ["pending", "notified"], m = {
51733
51720
  dispatched: "已交付,等待开始",
@@ -51759,7 +51746,7 @@ var hU = /*#__PURE__*/ XH({
51759
51746
  R(() => _.value.id, () => {
51760
51747
  he.value = !1;
51761
51748
  });
51762
- let ge = Z(() => x.value?.question || _.value.focus || _.value.goal || ""), N = Z(() => ge.value.length > VQ), _e = Z(() => y.value.timings || {
51749
+ let ge = Z(() => x.value?.question || _.value.focus || _.value.goal || ""), N = Z(() => ge.value.length > BQ), _e = Z(() => y.value.timings || {
51763
51750
  items: [],
51764
51751
  totals: {},
51765
51752
  count: 0
@@ -51793,7 +51780,7 @@ var hU = /*#__PURE__*/ XH({
51793
51780
  };
51794
51781
  let e = ce.value;
51795
51782
  if (e) {
51796
- let t = e.result.startsWith(e.name) ? e.result : `${r.display_name(e.name)} 执行失败:${e.result}`, n = t.split("\n")[0], i = n.length > HQ ? `${n.slice(0, HQ)}…` : n;
51783
+ let t = e.result.startsWith(e.name) ? e.result : `${r.display_name(e.name)} 执行失败:${e.result}`, n = t.split("\n")[0], i = n.length > VQ ? `${n.slice(0, VQ)}…` : n;
51797
51784
  return {
51798
51785
  tone: "error",
51799
51786
  title: "已暂停",
@@ -51938,18 +51925,18 @@ var hU = /*#__PURE__*/ XH({
51938
51925
  return (e, c) => {
51939
51926
  let f = MA, p = sA, m = pA, v = CH, T = bH, k = zV, se = YH;
51940
51927
  return U(), W("div", { class: M(["progress-board", { "is-docked": t.docked }]) }, [
51941
- t.docked ? (U(), W("header", JZ, [c[18] ||= K("strong", null, "讨论进度", -1), K("span", YZ, P(b.value ? "全自动" : "手动"), 1)])) : Y("", !0),
51928
+ t.docked ? (U(), W("header", qZ, [c[18] ||= K("strong", null, "讨论进度", -1), K("span", JZ, P(b.value ? "全自动" : "手动"), 1)])) : Y("", !0),
51942
51929
  K("section", {
51943
51930
  class: M(["pb-status", `is-${be.value.tone}`]),
51944
51931
  "aria-label": "讨论状态"
51945
51932
  }, [
51946
- K("div", XZ, [
51933
+ K("div", YZ, [
51947
51934
  c[19] ||= K("span", { class: "pb-dot" }, null, -1),
51948
- K("strong", ZZ, P(be.value.title), 1),
51949
- t.docked ? Y("", !0) : (U(), W("span", QZ, P(b.value ? "全自动" : "手动"), 1))
51935
+ K("strong", XZ, P(be.value.title), 1),
51936
+ t.docked ? Y("", !0) : (U(), W("span", ZZ, P(b.value ? "全自动" : "手动"), 1))
51950
51937
  ]),
51951
- be.value.detail ? (U(), W("p", $Z, P(be.value.detail), 1)) : Y("", !0),
51952
- be.value.full_detail ? (U(), W("details", eQ, [c[20] ||= K("summary", null, "查看错误详情", -1), K("pre", tQ, P(be.value.full_detail), 1)])) : Y("", !0),
51938
+ be.value.detail ? (U(), W("p", QZ, P(be.value.detail), 1)) : Y("", !0),
51939
+ be.value.full_detail ? (U(), W("details", $Z, [c[20] ||= K("summary", null, "查看错误详情", -1), K("pre", eQ, P(be.value.full_detail), 1)])) : Y("", !0),
51953
51940
  ue.value && I(n).launch.available && !I(n).launch.remote ? (U(), G(f, {
51954
51941
  key: 2,
51955
51942
  icon: "i-lucide-arrow-left-right",
@@ -51961,12 +51948,12 @@ var hU = /*#__PURE__*/ XH({
51961
51948
  disabled: !!I(a),
51962
51949
  onClick: c[0] ||= (e) => Ee(ue.value, "codex")
51963
51950
  }, null, 8, ["disabled"])) : Y("", !0),
51964
- xe.value.length ? (U(), W("div", nQ, [(U(!0), W(H, null, B(xe.value, (e) => (U(), W("div", {
51951
+ xe.value.length ? (U(), W("div", tQ, [(U(!0), W(H, null, B(xe.value, (e) => (U(), W("div", {
51965
51952
  key: e.label,
51966
51953
  class: "pb-meter"
51967
- }, [K("div", rQ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", iQ, [K("i", { style: fe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])) : Y("", !0)
51954
+ }, [K("div", nQ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", rQ, [K("i", { style: fe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])) : Y("", !0)
51968
51955
  ], 2),
51969
- ge.value ? (U(), W("section", aQ, [
51956
+ ge.value ? (U(), W("section", iQ, [
51970
51957
  c[21] ||= K("h4", null, "当前焦点", -1),
51971
51958
  K("p", { class: M(["pb-focus", { "is-expanded": u.value }]) }, P(ge.value), 3),
51972
51959
  N.value ? (U(), W("button", {
@@ -51976,15 +51963,15 @@ var hU = /*#__PURE__*/ XH({
51976
51963
  onClick: c[1] ||= (e) => u.value = !u.value
51977
51964
  }, P(u.value ? "收起" : "展开"), 1)) : Y("", !0)
51978
51965
  ])) : Y("", !0),
51979
- K("section", oQ, [
51980
- K("div", sQ, [c[23] ||= K("h4", null, "发言顺序", -1), me.value ? (U(), W("button", {
51966
+ K("section", aQ, [
51967
+ K("div", oQ, [c[23] ||= K("h4", null, "发言顺序", -1), me.value ? (U(), W("button", {
51981
51968
  key: 0,
51982
51969
  type: "button",
51983
51970
  class: "pb-link",
51984
51971
  onClick: Te
51985
51972
  }, [q(p, { name: "i-lucide-plus" }), c[22] ||= J("邀请", -1)])) : Y("", !0)]),
51986
- _.value.held_since && x.value && !S.value ? (U(), W("p", cQ, "用户有新操作," + P(I(r).display_name(x.value.expert)) + " 说完后交给主持人", 1)) : Y("", !0),
51987
- q(qZ, {
51973
+ _.value.held_since && x.value && !S.value ? (U(), W("p", sQ, "用户有新操作," + P(I(r).display_name(x.value.expert)) + " 说完后交给主持人", 1)) : Y("", !0),
51974
+ q(KZ, {
51988
51975
  away: de.value.map((e) => e.name),
51989
51976
  round: Se.value
51990
51977
  }, {
@@ -52001,7 +51988,7 @@ var hU = /*#__PURE__*/ XH({
52001
51988
  "alt",
52002
51989
  "class"
52003
51990
  ]),
52004
- K("div", lQ, [K("div", uQ, [J(P(I(r).display_name(e.name)), 1), c[24] ||= K("small", null, "暂离", -1)]), c[25] ||= K("div", { class: "pb-member-status is-neutral" }, [K("span", { class: "pb-dot" }), J("保留位置和会话,不参与安排")], -1)]),
51991
+ K("div", cQ, [K("div", lQ, [J(P(I(r).display_name(e.name)), 1), c[24] ||= K("small", null, "暂离", -1)]), c[25] ||= K("div", { class: "pb-member-status is-neutral" }, [K("span", { class: "pb-dot" }), J("保留位置和会话,不参与安排")], -1)]),
52005
51992
  we({ name: e.name }).length ? (U(), G(v, {
52006
51993
  key: 0,
52007
51994
  items: we({ name: e.name }),
@@ -52031,8 +52018,8 @@ var hU = /*#__PURE__*/ XH({
52031
52018
  "alt",
52032
52019
  "class"
52033
52020
  ]),
52034
- K("div", dQ, [
52035
- K("div", fQ, [
52021
+ K("div", uQ, [
52022
+ K("div", dQ, [
52036
52023
  J(P(I(r).display_name(e.name)), 1),
52037
52024
  e.is_host ? (U(), G(p, {
52038
52025
  key: 0,
@@ -52041,22 +52028,22 @@ var hU = /*#__PURE__*/ XH({
52041
52028
  })) : Y("", !0),
52042
52029
  K("small", null, P(e.is_host ? `主持 · ${e.mode}` : e.mode), 1)
52043
52030
  ]),
52044
- e.model ? (U(), W("div", pQ, P(e.model), 1)) : Y("", !0),
52045
- pe(e.name)?.session_mode === "borrowed" ? (U(), W("div", mQ, "借用已有会话")) : Y("", !0),
52031
+ e.model ? (U(), W("div", fQ, P(e.model), 1)) : Y("", !0),
52032
+ pe(e.name)?.session_mode === "borrowed" ? (U(), W("div", pQ, "借用已有会话")) : Y("", !0),
52046
52033
  w.value ? Y("", !0) : (U(), W("div", {
52047
52034
  key: 2,
52048
52035
  class: M(["pb-member-status", `is-${e.tone}`])
52049
52036
  }, [
52050
52037
  c[26] ||= K("span", { class: "pb-dot" }, null, -1),
52051
52038
  J(P(e.text), 1),
52052
- e.failures ? (U(), W("small", hQ, " · 失败 " + P(e.failures) + " 次", 1)) : Y("", !0)
52039
+ e.failures ? (U(), W("small", mQ, " · 失败 " + P(e.failures) + " 次", 1)) : Y("", !0)
52053
52040
  ], 2)),
52054
- e.manual && !w.value ? (U(), W("div", gQ, [!pe(e.name)?.registered_at && !e.is_host ? (U(), W("span", _Q, "需在它的会话中注册,才算到场")) : Y("", !0), A.value ? (U(), W("button", {
52041
+ e.manual && !w.value ? (U(), W("div", hQ, [!pe(e.name)?.registered_at && !e.is_host ? (U(), W("span", gQ, "需在它的会话中注册,才算到场")) : Y("", !0), A.value ? (U(), W("button", {
52055
52042
  key: 1,
52056
52043
  type: "button",
52057
52044
  class: "pb-link",
52058
52045
  onClick: (t) => l(e.name)
52059
- }, [q(p, { name: s.value === e.name ? "i-lucide-check" : "i-lucide-rocket" }, null, 8, ["name"]), J(P(s.value === e.name ? "已复制" : "复制启动指令"), 1)], 8, vQ)) : Y("", !0)])) : Y("", !0)
52046
+ }, [q(p, { name: s.value === e.name ? "i-lucide-check" : "i-lucide-rocket" }, null, 8, ["name"]), J(P(s.value === e.name ? "已复制" : "复制启动指令"), 1)], 8, _Q)) : Y("", !0)])) : Y("", !0)
52060
52047
  ]),
52061
52048
  we(e).length ? (U(), G(v, {
52062
52049
  key: 0,
@@ -52077,9 +52064,9 @@ var hU = /*#__PURE__*/ XH({
52077
52064
  ], 64))), 128))]),
52078
52065
  _: 1
52079
52066
  }, 8, ["away", "round"]),
52080
- !he.value && I(n).free_error && _.value.phase !== "paused" ? (U(), W("p", yQ, P(I(n).free_error), 1)) : I(n).free_notice ? (U(), W("p", bQ, P(I(n).free_notice), 1)) : Y("", !0)
52067
+ !he.value && I(n).free_error && _.value.phase !== "paused" ? (U(), W("p", vQ, P(I(n).free_error), 1)) : I(n).free_notice ? (U(), W("p", yQ, P(I(n).free_notice), 1)) : Y("", !0)
52081
52068
  ]),
52082
- oe.value ? (U(), W("section", xQ, [
52069
+ oe.value ? (U(), W("section", bQ, [
52083
52070
  ne.value ? (U(), G(f, {
52084
52071
  key: 0,
52085
52072
  icon: "i-lucide-rotate-ccw",
@@ -52161,8 +52148,8 @@ var hU = /*#__PURE__*/ XH({
52161
52148
  onClick: c[6] ||= (e) => o.value = !0
52162
52149
  }, null, 8, ["disabled"])) : Y("", !0)
52163
52150
  ])) : Y("", !0),
52164
- b.value && _e.value.count ? (U(), W("section", SQ, [
52165
- K("div", CQ, [c[27] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(_e.value.count) + " 次执行", 1)]),
52151
+ b.value && _e.value.count ? (U(), W("section", xQ, [
52152
+ K("div", SQ, [c[27] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(_e.value.count) + " 次执行", 1)]),
52166
52153
  K("div", {
52167
52154
  class: "pb-timing-bar",
52168
52155
  role: "img",
@@ -52171,18 +52158,18 @@ var hU = /*#__PURE__*/ XH({
52171
52158
  key: e.key,
52172
52159
  class: M(`is-${e.key}`),
52173
52160
  style: fe({ width: `${e.percent}%` })
52174
- }, null, 6))), 128))], 8, wQ),
52175
- K("dl", TQ, [(U(!0), W(H, null, B(Oe.value, (e) => (U(), W("div", {
52161
+ }, null, 6))), 128))], 8, CQ),
52162
+ K("dl", wQ, [(U(!0), W(H, null, B(Oe.value, (e) => (U(), W("div", {
52176
52163
  key: e.key,
52177
52164
  title: e.hint
52178
- }, [K("dt", null, [K("span", { class: M(`pb-timing-dot is-${e.key}`) }, null, 2), J(P(e.label), 1)]), K("dd", null, [J(P(ke(e.seconds)), 1), K("small", null, P(e.percent) + "%", 1)])], 8, EQ))), 128))]),
52179
- K("details", DQ, [
52165
+ }, [K("dt", null, [K("span", { class: M(`pb-timing-dot is-${e.key}`) }, null, 2), J(P(e.label), 1)]), K("dd", null, [J(P(ke(e.seconds)), 1), K("small", null, P(e.percent) + "%", 1)])], 8, TQ))), 128))]),
52166
+ K("details", EQ, [
52180
52167
  c[28] ||= K("summary", null, "查看每次执行", -1),
52181
- K("ol", null, [(U(!0), W(H, null, B(_e.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", OQ, [J("#" + P(e.id) + " " + P(I(r).display_name(e.participant)), 1), K("small", null, P(e.role === "host" ? "主持" : "专家") + " · " + P(g[e.status] || e.status), 1)]), K("span", kQ, [(U(), W(H, null, B(h, (t) => K("span", {
52168
+ K("ol", null, [(U(!0), W(H, null, B(_e.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", DQ, [J("#" + P(e.id) + " " + P(I(r).display_name(e.participant)), 1), K("small", null, P(e.role === "host" ? "主持" : "专家") + " · " + P(g[e.status] || e.status), 1)]), K("span", OQ, [(U(), W(H, null, B(h, (t) => K("span", {
52182
52169
  key: t.key,
52183
52170
  title: t.hint
52184
- }, P(t.label) + " " + P(ke(e[t.key])), 9, AQ)), 64))])]))), 128))]),
52185
- _e.value.count > _e.value.items.length ? (U(), W("p", jQ, "只列出最近 " + P(_e.value.items.length) + " 次,共 " + P(_e.value.count) + " 次执行。", 1)) : Y("", !0)
52171
+ }, P(t.label) + " " + P(ke(e[t.key])), 9, kQ)), 64))])]))), 128))]),
52172
+ _e.value.count > _e.value.items.length ? (U(), W("p", AQ, "只列出最近 " + P(_e.value.items.length) + " 次,共 " + P(_e.value.count) + " 次执行。", 1)) : Y("", !0)
52186
52173
  ])
52187
52174
  ])) : Y("", !0),
52188
52175
  q(se, {
@@ -52195,7 +52182,7 @@ var hU = /*#__PURE__*/ XH({
52195
52182
  body: "dialog-body"
52196
52183
  }
52197
52184
  }, {
52198
- body: L(() => [K("div", MQ, [y.value.status === "running" ? (U(), W(H, { key: 0 }, [c[29] ||= K("p", null, "切换前需要暂停讨论,当前执行会停止,原发言安排保留。", -1), q(f, {
52185
+ body: L(() => [K("div", jQ, [y.value.status === "running" ? (U(), W(H, { key: 0 }, [c[29] ||= K("p", null, "切换前需要暂停讨论,当前执行会停止,原发言安排保留。", -1), q(f, {
52199
52186
  label: "暂停并读取配置",
52200
52187
  icon: "i-lucide-pause",
52201
52188
  class: "channel-primary-button",
@@ -52218,7 +52205,7 @@ var hU = /*#__PURE__*/ XH({
52218
52205
  }, null, 8, ["model-value", "disabled"])]),
52219
52206
  _: 1
52220
52207
  }),
52221
- K("p", NQ, P(ye.value.adapter === "codex" ? "App 需保持运行,模型与权限沿用原聊天设置。" : "切回 CLI 前,需让 App 释放原聊天;仍被占用时无法执行。"), 1),
52208
+ K("p", MQ, P(ye.value.adapter === "codex" ? "App 需保持运行,模型与权限沿用原聊天设置。" : "切回 CLI 前,需让 App 释放原聊天;仍被占用时无法执行。"), 1),
52222
52209
  q(f, {
52223
52210
  label: "保存接入方式",
52224
52211
  class: "channel-primary-button",
@@ -52226,7 +52213,7 @@ var hU = /*#__PURE__*/ XH({
52226
52213
  disabled: !!I(a),
52227
52214
  onClick: c[8] ||= (e) => I(i)("save_room_configuration")
52228
52215
  }, null, 8, ["loading", "disabled"]),
52229
- I(n).launch.repair?.notice ? (U(), W("p", PQ, P(I(n).launch.repair.notice), 1)) : Y("", !0),
52216
+ I(n).launch.repair?.notice ? (U(), W("p", NQ, P(I(n).launch.repair.notice), 1)) : Y("", !0),
52230
52217
  I(n).launch.repair?.applied && ne.value ? (U(), G(f, {
52231
52218
  key: 1,
52232
52219
  label: "重启讨论",
@@ -52246,10 +52233,10 @@ var hU = /*#__PURE__*/ XH({
52246
52233
  color: "neutral",
52247
52234
  loading: !!I(a),
52248
52235
  onClick: De
52249
- }, null, 8, ["loading"])), I(n).launch.repair_error ? (U(), W("p", FQ, P(I(n).launch.repair_error), 1)) : Y("", !0)], 64)) : (U(), W("p", IQ, "本场状态已变化,请关闭后重新核对。"))])]),
52236
+ }, null, 8, ["loading"])), I(n).launch.repair_error ? (U(), W("p", PQ, P(I(n).launch.repair_error), 1)) : Y("", !0)], 64)) : (U(), W("p", FQ, "本场状态已变化,请关闭后重新核对。"))])]),
52250
52237
  _: 1
52251
52238
  }, 8, ["open"]),
52252
- q(NZ, {
52239
+ q(MZ, {
52253
52240
  open: he.value,
52254
52241
  "onUpdate:open": c[11] ||= (e) => he.value = e,
52255
52242
  description: "新专家由程序按本机软件配置启动,或由你手动启动,加入本轮发言队列。"
@@ -52275,7 +52262,7 @@ var hU = /*#__PURE__*/ XH({
52275
52262
  minutes: ee.value,
52276
52263
  "onUpdate:minutes": c[13] ||= (e) => ee.value = e,
52277
52264
  execution: !1
52278
- }, null, 8, ["rounds", "minutes"]), K("div", LQ, [q(f, {
52265
+ }, null, 8, ["rounds", "minutes"]), K("div", IQ, [q(f, {
52279
52266
  label: "取消",
52280
52267
  color: "neutral",
52281
52268
  variant: "ghost",
@@ -52300,18 +52287,18 @@ var hU = /*#__PURE__*/ XH({
52300
52287
  body: "dialog-body"
52301
52288
  }
52302
52289
  }, {
52303
- body: L(() => [K("div", RQ, [K("button", {
52290
+ body: L(() => [K("div", LQ, [K("button", {
52304
52291
  type: "button",
52305
52292
  class: "progress-ending-option",
52306
52293
  disabled: C.value || !!I(a),
52307
52294
  onClick: c[16] ||= (e) => Me("end_room_discussion")
52308
- }, [...c[30] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,自动运行随之停止,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8, zQ)])]),
52295
+ }, [...c[30] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,自动运行随之停止,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8, RQ)])]),
52309
52296
  _: 1
52310
52297
  }, 8, ["open"])
52311
52298
  ], 2);
52312
52299
  };
52313
52300
  }
52314
- }, [["__scopeId", "data-v-a5185122"]]), WQ = { class: "progress-panel-anchor" }, GQ = ["aria-expanded", "aria-label"], KQ = { class: "progress-chip-text" }, qQ = { class: "progress-chip-rounds" }, JQ = {
52301
+ }, [["__scopeId", "data-v-a5185122"]]), UQ = { class: "progress-panel-anchor" }, WQ = ["aria-expanded", "aria-label"], GQ = { class: "progress-chip-text" }, KQ = { class: "progress-chip-rounds" }, qQ = {
52315
52302
  __name: "ProgressPanel",
52316
52303
  setup(e) {
52317
52304
  let { view: t, bridge: n } = xr("discussion"), r = /* @__PURE__ */ F(!1), i = Z(() => t.value.room), a = Z(() => i.value.limits || {}), o = Z(() => {
@@ -52338,7 +52325,7 @@ var hU = /*#__PURE__*/ XH({
52338
52325
  }), s = Z(() => a.value.round_cap || a.value.max_rounds ? n.limit_rounds(a.value).text.replace(" / ", "/") : n.progress_round(i.value)), c = Z(() => `${o.value.title} · ${s.value}`);
52339
52326
  return (e, t) => {
52340
52327
  let n = $V, a = NV;
52341
- return U(), W("div", WQ, [q(n, { text: "查看讨论进度" }, {
52328
+ return U(), W("div", UQ, [q(n, { text: "查看讨论进度" }, {
52342
52329
  default: L(() => [K("button", {
52343
52330
  type: "button",
52344
52331
  class: M(["progress-chip", `is-${o.value.tone}`]),
@@ -52346,7 +52333,7 @@ var hU = /*#__PURE__*/ XH({
52346
52333
  "aria-expanded": r.value,
52347
52334
  "aria-label": `查看讨论进度:${c.value}`,
52348
52335
  onClick: t[0] ||= (e) => r.value = !0
52349
- }, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span", KQ, [J(P(o.value.title), 1), K("span", qQ, " · " + P(s.value), 1)])], 10, GQ)]),
52336
+ }, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span", GQ, [J(P(o.value.title), 1), K("span", KQ, " · " + P(s.value), 1)])], 10, WQ)]),
52350
52337
  _: 1
52351
52338
  }), q(a, {
52352
52339
  open: r.value,
@@ -52359,12 +52346,12 @@ var hU = /*#__PURE__*/ XH({
52359
52346
  body: "progress-drawer-body"
52360
52347
  }
52361
52348
  }, {
52362
- body: L(() => [q(UQ)]),
52349
+ body: L(() => [q(HQ)]),
52363
52350
  _: 1
52364
52351
  }, 8, ["open", "description"])]);
52365
52352
  };
52366
52353
  }
52367
- }, YQ = { class: "start-discussion-footer" }, XQ = 3, ZQ = /*#__PURE__*/ XH({
52354
+ }, JQ = { class: "start-discussion-footer" }, YQ = 3, XQ = /*#__PURE__*/ XH({
52368
52355
  __name: "StartDiscussionDialog",
52369
52356
  props: {
52370
52357
  open: {
@@ -52375,9 +52362,9 @@ var hU = /*#__PURE__*/ XH({
52375
52362
  },
52376
52363
  emits: ["update:open"],
52377
52364
  setup(e) {
52378
- let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(XQ), s = /* @__PURE__ */ F(0), c = /* @__PURE__ */ F(""), l = /* @__PURE__ */ F(!1), u = /* @__PURE__ */ F(null);
52365
+ let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(YQ), s = /* @__PURE__ */ F(0), c = /* @__PURE__ */ F(""), l = /* @__PURE__ */ F(!1), u = /* @__PURE__ */ F(null);
52379
52366
  R(t, (e) => {
52380
- e && (a.value = "", o.value = XQ, s.value = 0, c.value = "", l.value = !1);
52367
+ e && (a.value = "", o.value = YQ, s.value = 0, c.value = "", l.value = !1);
52381
52368
  });
52382
52369
  async function d() {
52383
52370
  u.value?.settle();
@@ -52445,7 +52432,7 @@ var hU = /*#__PURE__*/ XH({
52445
52432
  "minutes",
52446
52433
  "execution_minutes"
52447
52434
  ]),
52448
- K("div", YQ, [q(h, {
52435
+ K("div", JQ, [q(h, {
52449
52436
  label: "取消",
52450
52437
  color: "neutral",
52451
52438
  variant: "ghost",
@@ -52463,58 +52450,58 @@ var hU = /*#__PURE__*/ XH({
52463
52450
  }, 8, ["open"]);
52464
52451
  };
52465
52452
  }
52466
- }, [["__scopeId", "data-v-dee972d6"]]), QQ = { class: "progress-board is-docked" }, $Q = { class: "pb-header" }, e$ = { class: "pb-mode" }, t$ = { class: "pb-status-line" }, n$ = { role: "status" }, r$ = {
52453
+ }, [["__scopeId", "data-v-dee972d6"]]), ZQ = { class: "progress-board is-docked" }, QQ = { class: "pb-header" }, $Q = { class: "pb-mode" }, e$ = { class: "pb-status-line" }, t$ = { role: "status" }, n$ = {
52467
52454
  key: 0,
52468
52455
  class: "pb-status-detail"
52469
- }, i$ = { class: "pb-meters" }, a$ = { class: "pb-meter-label" }, o$ = {
52456
+ }, r$ = { class: "pb-meters" }, i$ = { class: "pb-meter-label" }, a$ = {
52470
52457
  key: 0,
52471
52458
  class: "pb-bar"
52472
- }, s$ = {
52459
+ }, o$ = {
52473
52460
  key: 0,
52474
52461
  class: "pb-section",
52475
52462
  "aria-label": "当前任务"
52476
- }, c$ = {
52463
+ }, s$ = {
52477
52464
  class: "pb-section",
52478
52465
  "aria-label": "发言顺序"
52479
- }, l$ = { class: "pb-member-body" }, u$ = { class: "pb-member-name" }, d$ = {
52466
+ }, c$ = { class: "pb-member-body" }, l$ = { class: "pb-member-name" }, u$ = {
52480
52467
  key: 0,
52481
52468
  class: "pb-member-model"
52482
- }, f$ = {
52469
+ }, d$ = {
52483
52470
  key: 1,
52484
52471
  class: "pb-member-model",
52485
52472
  title: "它工作时请不要在原窗口继续操作"
52486
- }, p$ = {
52473
+ }, f$ = {
52487
52474
  key: 0,
52488
52475
  role: "alert",
52489
52476
  class: "pb-free-note is-error"
52490
- }, m$ = {
52477
+ }, p$ = {
52491
52478
  key: 1,
52492
52479
  role: "status",
52493
52480
  class: "pb-free-note"
52494
- }, h$ = {
52481
+ }, m$ = {
52495
52482
  key: 2,
52496
52483
  role: "alert",
52497
52484
  class: "pb-free-note is-error"
52498
- }, g$ = {
52485
+ }, h$ = {
52499
52486
  key: 3,
52500
52487
  role: "status",
52501
52488
  class: "pb-free-note"
52502
- }, _$ = {
52489
+ }, g$ = {
52503
52490
  key: 1,
52504
52491
  class: "pb-section",
52505
52492
  "aria-label": "头脑风暴"
52506
- }, v$ = ["onClick"], y$ = {
52493
+ }, _$ = ["onClick"], v$ = {
52507
52494
  key: 2,
52508
52495
  class: "pb-actions",
52509
52496
  "aria-label": "操作"
52510
- }, b$ = {
52497
+ }, y$ = {
52511
52498
  key: 0,
52512
52499
  class: "pb-free-note"
52513
- }, x$ = {
52500
+ }, b$ = {
52514
52501
  key: 3,
52515
52502
  class: "pb-section",
52516
52503
  "aria-label": "执行耗时"
52517
- }, S$ = { class: "pb-timing-heading" }, C$ = { class: "pb-timings" }, w$ = { class: "pb-timing-who" }, T$ = { class: "pb-timing-stages" }, E$ = 90, D$ = /*#__PURE__*/ XH({
52504
+ }, x$ = { class: "pb-timing-heading" }, S$ = { class: "pb-timings" }, C$ = { class: "pb-timing-who" }, w$ = { class: "pb-timing-stages" }, T$ = 90, E$ = /*#__PURE__*/ XH({
52518
52505
  __name: "FreeBoard",
52519
52506
  setup(e) {
52520
52507
  let { view: t, bridge: n, act: r, pending: i } = xr("discussion"), a = ["dispatched", "started"], o = {
@@ -52670,32 +52657,32 @@ var hU = /*#__PURE__*/ XH({
52670
52657
  D.value = !1;
52671
52658
  }), (e, i) => {
52672
52659
  let a = pA, p = sA, h = MA, ee = CH;
52673
- return U(), W("div", QQ, [
52674
- K("header", $Q, [i[5] ||= K("strong", null, "自由协作", -1), K("span", e$, P(u.value ? `${I(n).display_name(u.value.name)} 主持` : "无主持人"), 1)]),
52660
+ return U(), W("div", ZQ, [
52661
+ K("header", QQ, [i[5] ||= K("strong", null, "自由协作", -1), K("span", $Q, P(u.value ? `${I(n).display_name(u.value.name)} 主持` : "无主持人"), 1)]),
52675
52662
  K("section", {
52676
52663
  class: M(["pb-status", `is-${y.value.tone}`]),
52677
52664
  "aria-label": "房间状态"
52678
52665
  }, [
52679
- K("div", t$, [i[6] ||= K("span", { class: "pb-dot" }, null, -1), K("strong", n$, P(y.value.title), 1)]),
52680
- y.value.detail ? (U(), W("p", r$, P(y.value.detail), 1)) : Y("", !0),
52681
- K("div", i$, [(U(!0), W(H, null, B(b.value, (e) => (U(), W("div", {
52666
+ K("div", e$, [i[6] ||= K("span", { class: "pb-dot" }, null, -1), K("strong", t$, P(y.value.title), 1)]),
52667
+ y.value.detail ? (U(), W("p", n$, P(y.value.detail), 1)) : Y("", !0),
52668
+ K("div", r$, [(U(!0), W(H, null, B(b.value, (e) => (U(), W("div", {
52682
52669
  key: e.label,
52683
52670
  class: "pb-meter"
52684
- }, [K("div", a$, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", o$, [K("i", { style: fe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])
52671
+ }, [K("div", i$, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", a$, [K("i", { style: fe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])
52685
52672
  ], 2),
52686
- x.value ? (U(), W("section", s$, [
52673
+ x.value ? (U(), W("section", o$, [
52687
52674
  i[7] ||= K("h4", null, "当前任务", -1),
52688
52675
  K("p", { class: M(["pb-focus", { "is-expanded": S.value }]) }, P(x.value), 3),
52689
- x.value.length > E$ ? (U(), W("button", {
52676
+ x.value.length > T$ ? (U(), W("button", {
52690
52677
  key: 0,
52691
52678
  type: "button",
52692
52679
  class: "pb-link",
52693
52680
  onClick: i[0] ||= (e) => S.value = !S.value
52694
52681
  }, P(S.value ? "收起" : "展开"), 1)) : Y("", !0)
52695
52682
  ])) : Y("", !0),
52696
- K("section", c$, [
52683
+ K("section", s$, [
52697
52684
  i[9] ||= K("h4", null, "发言顺序", -1),
52698
- q(qZ, { away: f.value }, {
52685
+ q(KZ, { away: f.value }, {
52699
52686
  default: L(({ item: e }) => [(U(!0), W(H, null, B([d(e.name)].filter(Boolean), (t) => (U(), W(H, { key: t.id }, [
52700
52687
  q(a, {
52701
52688
  src: I(n).identities[t.name]?.icon,
@@ -52709,8 +52696,8 @@ var hU = /*#__PURE__*/ XH({
52709
52696
  "alt",
52710
52697
  "class"
52711
52698
  ]),
52712
- K("div", l$, [
52713
- K("div", u$, [
52699
+ K("div", c$, [
52700
+ K("div", l$, [
52714
52701
  J(P(I(n).display_name(t.name)), 1),
52715
52702
  t.role === "host" ? (U(), G(p, {
52716
52703
  key: 0,
@@ -52719,8 +52706,8 @@ var hU = /*#__PURE__*/ XH({
52719
52706
  })) : Y("", !0),
52720
52707
  K("small", null, P(t.role === "host" ? `主持 · ${s[t.access]}` : s[t.access]), 1)
52721
52708
  ]),
52722
- v(t) ? (U(), W("div", d$, P(v(t)), 1)) : Y("", !0),
52723
- t.session_mode === "borrowed" ? (U(), W("div", f$, "借用已有会话")) : Y("", !0),
52709
+ v(t) ? (U(), W("div", u$, P(v(t)), 1)) : Y("", !0),
52710
+ t.session_mode === "borrowed" ? (U(), W("div", d$, "借用已有会话")) : Y("", !0),
52724
52711
  K("div", { class: M(["pb-member-status", `is-${g(t)}`]) }, [i[8] ||= K("span", { class: "pb-dot" }, null, -1), J(P(_(t, e.state)), 1)], 2)
52725
52712
  ]),
52726
52713
  q(ee, {
@@ -52745,8 +52732,8 @@ var hU = /*#__PURE__*/ XH({
52745
52732
  key: e.executions.join("-"),
52746
52733
  class: "pb-free-note is-warning"
52747
52734
  }, "可能冲突:" + P(e.members.map((e) => I(n).display_name(e)).join(" 与 ")) + " 的重叠执行观察到 " + P(e.files.join("、")) + " 变化;修改者未确认。", 1))), 128)),
52748
- I(t).free_error ? (U(), W("p", p$, P(I(t).free_error), 1)) : I(t).free_notice ? (U(), W("p", m$, P(I(t).free_notice), 1)) : Y("", !0),
52749
- I(t).access?.error ? (U(), W("p", h$, P(I(t).access.error), 1)) : I(t).access?.notice ? (U(), W("p", g$, P(I(t).access.notice), 1)) : Y("", !0),
52735
+ I(t).free_error ? (U(), W("p", f$, P(I(t).free_error), 1)) : I(t).free_notice ? (U(), W("p", p$, P(I(t).free_notice), 1)) : Y("", !0),
52736
+ I(t).access?.error ? (U(), W("p", m$, P(I(t).access.error), 1)) : I(t).access?.notice ? (U(), W("p", h$, P(I(t).access.notice), 1)) : Y("", !0),
52750
52737
  c.value.archived ? Y("", !0) : (U(), G(h, {
52751
52738
  key: 4,
52752
52739
  icon: "i-lucide-plus",
@@ -52758,13 +52745,13 @@ var hU = /*#__PURE__*/ XH({
52758
52745
  onClick: i[1] ||= (e) => E.value = !0
52759
52746
  }))
52760
52747
  ]),
52761
- c.value.linked_rooms?.length ? (U(), W("section", _$, [i[10] ||= K("h4", null, "头脑风暴", -1), (U(!0), W(H, null, B(c.value.linked_rooms, (e) => (U(), W("button", {
52748
+ c.value.linked_rooms?.length ? (U(), W("section", g$, [i[10] ||= K("h4", null, "头脑风暴", -1), (U(!0), W(H, null, B(c.value.linked_rooms, (e) => (U(), W("button", {
52762
52749
  key: e.id,
52763
52750
  type: "button",
52764
52751
  class: "pb-link pb-free-linked",
52765
52752
  onClick: (t) => I(r)("room", e.id)
52766
- }, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8, v$))), 128))])) : Y("", !0),
52767
- c.value.archived ? Y("", !0) : (U(), W("section", y$, [q(h, {
52753
+ }, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8, _$))), 128))])) : Y("", !0),
52754
+ c.value.archived ? Y("", !0) : (U(), W("section", v$, [q(h, {
52768
52755
  icon: "i-lucide-messages-square",
52769
52756
  label: "开启讨论",
52770
52757
  size: "sm",
@@ -52774,13 +52761,13 @@ var hU = /*#__PURE__*/ XH({
52774
52761
  title: "由主持人推进成员轮流发言,到上限或结束后房间回到自由协作",
52775
52762
  disabled: !O.value,
52776
52763
  onClick: i[2] ||= (e) => D.value = !0
52777
- }, null, 8, ["disabled"]), O.value ? Y("", !0) : (U(), W("p", b$, "开启讨论需要一位由本机唤醒的 AI 主持人。"))])),
52778
- C.value.items.length ? (U(), W("section", x$, [K("div", S$, [i[11] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(C.value.items.length) + " 次执行 · " + P(w(C.value.total)), 1)]), K("details", C$, [i[12] ||= K("summary", null, "查看每次执行", -1), K("ol", null, [(U(!0), W(H, null, B(C.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", w$, [J("#" + P(e.id) + " " + P(m(e.member_id)), 1), K("small", null, P(o[e.status] || e.status), 1)]), K("span", T$, [K("span", null, "用时 " + P(w(e.seconds)), 1)])]))), 128))])])])) : Y("", !0),
52779
- q(ZQ, {
52764
+ }, null, 8, ["disabled"]), O.value ? Y("", !0) : (U(), W("p", y$, "开启讨论需要一位由本机唤醒的 AI 主持人。"))])),
52765
+ C.value.items.length ? (U(), W("section", b$, [K("div", x$, [i[11] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(C.value.items.length) + " 次执行 · " + P(w(C.value.total)), 1)]), K("details", S$, [i[12] ||= K("summary", null, "查看每次执行", -1), K("ol", null, [(U(!0), W(H, null, B(C.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", C$, [J("#" + P(e.id) + " " + P(m(e.member_id)), 1), K("small", null, P(o[e.status] || e.status), 1)]), K("span", w$, [K("span", null, "用时 " + P(w(e.seconds)), 1)])]))), 128))])])])) : Y("", !0),
52766
+ q(XQ, {
52780
52767
  open: D.value,
52781
52768
  "onUpdate:open": i[3] ||= (e) => D.value = e
52782
52769
  }, null, 8, ["open"]),
52783
- q(NZ, {
52770
+ q(MZ, {
52784
52771
  open: E.value,
52785
52772
  "onUpdate:open": i[4] ||= (e) => E.value = e,
52786
52773
  description: "新成员加入后不打断其他成员;点卡片翻面可设置软件、模型、项目权限和要续接的已有会话。"
@@ -52788,47 +52775,47 @@ var hU = /*#__PURE__*/ XH({
52788
52775
  ]);
52789
52776
  };
52790
52777
  }
52791
- }, [["__scopeId", "data-v-11a4b3fe"]]), O$ = {
52778
+ }, [["__scopeId", "data-v-11a4b3fe"]]), D$ = {
52792
52779
  id: "channel-sidebar",
52793
52780
  class: "channel-sidebar",
52794
52781
  "aria-label": "房间导航"
52795
- }, k$ = { class: "channel-sidebar-content" }, A$ = { class: "channel-directory-heading channel-tools-heading" }, j$ = ["aria-expanded"], M$ = { class: "channel-sidebar-footer" }, N$ = ["aria-label"], P$ = { class: "channel-self" }, F$ = ["title"], I$ = [
52782
+ }, O$ = { class: "channel-sidebar-content" }, k$ = { class: "channel-directory-heading channel-tools-heading" }, A$ = ["aria-expanded"], j$ = { class: "channel-sidebar-footer" }, M$ = ["aria-label"], N$ = { class: "channel-self" }, P$ = ["title"], F$ = [
52796
52783
  "aria-valuemax",
52797
52784
  "aria-valuenow",
52798
52785
  "aria-valuetext"
52799
- ], L$ = { class: "channel-main" }, R$ = { class: "channel-header" }, z$ = { class: "channel-title-icon" }, B$ = { class: "channel-title" }, V$ = { class: "channel-title-copy" }, H$ = ["title"], U$ = {
52786
+ ], I$ = { class: "channel-main" }, L$ = { class: "channel-header" }, R$ = { class: "channel-title-icon" }, z$ = { class: "channel-title" }, B$ = { class: "channel-title-copy" }, V$ = ["title"], H$ = {
52800
52787
  key: 0,
52801
52788
  class: "channel-header-context"
52802
- }, W$ = { class: "channel-header-actions" }, G$ = {
52789
+ }, U$ = { class: "channel-header-actions" }, W$ = {
52803
52790
  key: 0,
52804
52791
  class: "channel-launch-recovery",
52805
52792
  "aria-label": "未完成的创建或启动请求"
52806
- }, K$ = { role: "status" }, q$ = { class: "button-row" }, J$ = {
52793
+ }, G$ = { role: "status" }, K$ = { class: "button-row" }, q$ = {
52807
52794
  key: 1,
52808
52795
  class: "channel-tabbar"
52809
- }, Y$ = { class: "channel-brief-inner" }, X$ = { class: "channel-brief-heading" }, Z$ = ["aria-label", "aria-expanded"], Q$ = {
52796
+ }, J$ = { class: "channel-brief-inner" }, Y$ = { class: "channel-brief-heading" }, X$ = ["aria-label", "aria-expanded"], Z$ = {
52810
52797
  key: 0,
52811
52798
  class: "channel-brief-preview"
52812
- }, $$ = {
52799
+ }, Q$ = {
52813
52800
  id: "channel-brief-content",
52814
52801
  class: "channel-brief-content"
52815
- }, e1 = ["innerHTML"], t1 = { class: "channel-brief-footer" }, n1 = { class: "channel-brief-status" }, r1 = { class: "channel-content" }, i1 = {
52802
+ }, $$ = ["innerHTML"], e1 = { class: "channel-brief-footer" }, t1 = { class: "channel-brief-status" }, n1 = { class: "channel-content" }, r1 = {
52816
52803
  key: 0,
52817
52804
  class: "content-page channel-summary",
52818
52805
  role: "tabpanel",
52819
52806
  "aria-label": "共识"
52820
- }, a1 = { class: "page-heading" }, o1 = { class: "form-footer" }, s1 = {
52807
+ }, i1 = { class: "page-heading" }, a1 = { class: "form-footer" }, o1 = {
52821
52808
  key: 1,
52822
52809
  class: "channel-empty"
52823
- }, c1 = ["aria-valuenow", "aria-valuetext"], l1 = {
52810
+ }, s1 = ["aria-valuenow", "aria-valuetext"], c1 = {
52824
52811
  key: 2,
52825
52812
  id: "channel-member-rail",
52826
52813
  class: "channel-member-rail",
52827
52814
  "aria-label": "当前焦点与讨论进度"
52828
- }, u1 = { class: "channel-rail-board" }, d1 = {
52815
+ }, l1 = { class: "channel-rail-board" }, u1 = {
52829
52816
  key: 2,
52830
52817
  class: "progress-board is-docked"
52831
- }, f1 = { class: "channel-detail-title" }, p1 = { class: "info-section" }, m1 = "ai-codiscuss-channel-layout", h1 = 220, g1 = 440, _1 = 280, v1 = 16, y1 = 180, b1 = 400, x1 = 248, S1 = 16, C1 = 480, w1 = 1200, T1 = 0, E1 = {
52818
+ }, d1 = { class: "channel-detail-title" }, f1 = { class: "info-section" }, p1 = "ai-codiscuss-channel-layout", m1 = 220, h1 = 440, g1 = 280, _1 = 16, v1 = 180, y1 = 400, b1 = 248, x1 = 16, S1 = 480, C1 = 1200, w1 = 0, T1 = {
52832
52819
  __name: "ChannelWorkspace",
52833
52820
  setup(e) {
52834
52821
  let { view: t, bridge: n, field: r, act: i, pending: a } = xr("discussion"), o = Z(() => t.value.room), s = /* @__PURE__ */ F(""), c = /* @__PURE__ */ F(null), l = /* @__PURE__ */ F(null), u = /* @__PURE__ */ F(null), d = /* @__PURE__ */ F(!1), f = /* @__PURE__ */ F(!0), p = /* @__PURE__ */ F(!1), m = r("state-input"), h = r("brief-input"), g = r("search-input"), _ = r("author-select"), v = [{
@@ -52850,14 +52837,14 @@ var hU = /*#__PURE__*/ XH({
52850
52837
  label: "宽",
52851
52838
  width: 1240
52852
52839
  }
52853
- }, b = Te(), x = /* @__PURE__ */ F(b.reading), S = /* @__PURE__ */ F(b.effects), C = /* @__PURE__ */ F(b.rail), w = /* @__PURE__ */ F(b.nav), T = /* @__PURE__ */ F(typeof window > "u" ? 728 : window.innerWidth), E = /* @__PURE__ */ F(b.collapsed), D = /* @__PURE__ */ F(!0), O = /* @__PURE__ */ F(b.rail_collapsed), ee = Z(() => T.value >= w1), k = Z(() => t.value.tab === "discussion" && !O.value), te = Z(() => ee.value && t.value.tab === "discussion" ? O.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), ne = Z(() => {
52840
+ }, b = Te(), x = /* @__PURE__ */ F(b.reading), S = /* @__PURE__ */ F(b.effects), C = /* @__PURE__ */ F(b.rail), w = /* @__PURE__ */ F(b.nav), T = /* @__PURE__ */ F(typeof window > "u" ? 728 : window.innerWidth), E = /* @__PURE__ */ F(b.collapsed), D = /* @__PURE__ */ F(!0), O = /* @__PURE__ */ F(b.rail_collapsed), ee = Z(() => T.value >= C1), k = Z(() => t.value.tab === "discussion" && !O.value), te = Z(() => ee.value && t.value.tab === "discussion" ? O.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), ne = Z(() => {
52854
52841
  let e = document.createElement("template");
52855
52842
  return e.innerHTML = o.value?.rendered_brief || "", e.content.textContent.replace(/\s+/g, " ").trim();
52856
- }), re = /* @__PURE__ */ F(null), ie = /* @__PURE__ */ F(0), A = null, j = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(null), oe = Z(() => Math.min(b1, Math.max(y1, T.value - C1 - T1))), se = Z(() => Math.min(w.value, oe.value)), ce = Z(() => ({
52843
+ }), re = /* @__PURE__ */ F(null), ie = /* @__PURE__ */ F(0), A = null, j = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(null), oe = Z(() => Math.min(y1, Math.max(v1, T.value - S1 - w1))), se = Z(() => Math.min(w.value, oe.value)), ce = Z(() => ({
52857
52844
  "--channel-reading-width": `${y[x.value].width}px`,
52858
52845
  "--channel-rail-width": `${C.value}px`,
52859
52846
  "--channel-topbar-height": `${ie.value}px`,
52860
- "--channel-main-columns": E.value ? "minmax(0, 1fr)" : `${se.value}px ${T1}px minmax(0, 1fr)`
52847
+ "--channel-main-columns": E.value ? "minmax(0, 1fr)" : `${se.value}px ${w1}px minmax(0, 1fr)`
52861
52848
  })), le = Object.entries(y).map(([e, t]) => ({
52862
52849
  value: e,
52863
52850
  label: t.label
@@ -52940,12 +52927,12 @@ var hU = /*#__PURE__*/ XH({
52940
52927
  }
52941
52928
  function Te() {
52942
52929
  try {
52943
- let e = JSON.parse(localStorage.getItem(m1)) || {};
52930
+ let e = JSON.parse(localStorage.getItem(p1)) || {};
52944
52931
  return {
52945
52932
  reading: Object.hasOwn(y, e.reading) ? e.reading : "default",
52946
52933
  effects: e.effects === "reduced" ? "reduced" : "full",
52947
- rail: Number.isFinite(e.rail) ? Math.min(g1, Math.max(h1, e.rail)) : _1,
52948
- nav: Number.isFinite(e.nav) ? Math.min(b1, Math.max(y1, e.nav)) : Ee(),
52934
+ rail: Number.isFinite(e.rail) ? Math.min(h1, Math.max(m1, e.rail)) : g1,
52935
+ nav: Number.isFinite(e.nav) ? Math.min(y1, Math.max(v1, e.nav)) : Ee(),
52949
52936
  collapsed: e.collapsed === !0,
52950
52937
  brief_collapsed: e.brief_collapsed === !0,
52951
52938
  rail_collapsed: e.rail_collapsed === !0
@@ -52954,7 +52941,7 @@ var hU = /*#__PURE__*/ XH({
52954
52941
  return {
52955
52942
  reading: "default",
52956
52943
  effects: "full",
52957
- rail: _1,
52944
+ rail: g1,
52958
52945
  nav: Ee(),
52959
52946
  collapsed: !1,
52960
52947
  brief_collapsed: !1,
@@ -52963,11 +52950,11 @@ var hU = /*#__PURE__*/ XH({
52963
52950
  }
52964
52951
  }
52965
52952
  function Ee() {
52966
- return typeof window > "u" ? x1 : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : x1;
52953
+ return typeof window > "u" ? b1 : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : b1;
52967
52954
  }
52968
52955
  function De() {
52969
52956
  try {
52970
- localStorage.setItem(m1, JSON.stringify({
52957
+ localStorage.setItem(p1, JSON.stringify({
52971
52958
  reading: x.value,
52972
52959
  effects: S.value,
52973
52960
  rail: C.value,
@@ -52998,19 +52985,19 @@ var hU = /*#__PURE__*/ XH({
52998
52985
  }, e.currentTarget.setPointerCapture(e.pointerId));
52999
52986
  }
53000
52987
  function Ne(e) {
53001
- j.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(g1, Math.max(h1, j.value.width + j.value.x - e.clientX))));
52988
+ j.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(h1, Math.max(m1, j.value.width + j.value.x - e.clientX))));
53002
52989
  }
53003
52990
  function Pe(e) {
53004
52991
  j.value?.pointer === e.pointerId && (j.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), De());
53005
52992
  }
53006
52993
  function Fe(e) {
53007
52994
  let t = {
53008
- ArrowLeft: C.value + v1,
53009
- ArrowRight: C.value - v1,
53010
- Home: h1,
53011
- End: g1
52995
+ ArrowLeft: C.value + _1,
52996
+ ArrowRight: C.value - _1,
52997
+ Home: m1,
52998
+ End: h1
53012
52999
  };
53013
- Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(g1, Math.max(h1, t[e.key])), De());
53000
+ Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(h1, Math.max(m1, t[e.key])), De());
53014
53001
  }
53015
53002
  function Ie(e) {
53016
53003
  e.button === 0 && (e.preventDefault(), e.currentTarget.focus(), ae.value = {
@@ -53020,19 +53007,19 @@ var hU = /*#__PURE__*/ XH({
53020
53007
  }, e.currentTarget.setPointerCapture(e.pointerId));
53021
53008
  }
53022
53009
  function Le(e) {
53023
- ae.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(oe.value, Math.max(y1, ae.value.width + e.clientX - ae.value.x))));
53010
+ ae.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(oe.value, Math.max(v1, ae.value.width + e.clientX - ae.value.x))));
53024
53011
  }
53025
53012
  function Re(e) {
53026
53013
  ae.value?.pointer === e.pointerId && (ae.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), De());
53027
53014
  }
53028
53015
  function ze(e) {
53029
53016
  let t = {
53030
- ArrowLeft: se.value - S1,
53031
- ArrowRight: se.value + S1,
53032
- Home: y1,
53017
+ ArrowLeft: se.value - x1,
53018
+ ArrowRight: se.value + x1,
53019
+ Home: v1,
53033
53020
  End: oe.value
53034
53021
  };
53035
- Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(oe.value, Math.max(y1, t[e.key])), De());
53022
+ Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(oe.value, Math.max(v1, t[e.key])), De());
53036
53023
  }
53037
53024
  return (e, r) => {
53038
53025
  let y = sA, b = lH, w = pA, T = MA, O = $V, ie = WV, A = YV, de = KV, Te = HV, Ee = zV, De = NV, ke = AV;
@@ -53044,10 +53031,10 @@ var hU = /*#__PURE__*/ XH({
53044
53031
  }]),
53045
53032
  style: fe(ce.value)
53046
53033
  }, [
53047
- K("aside", O$, [
53034
+ K("aside", D$, [
53048
53035
  r[25] ||= ws("<header class=\"channel-workspace-heading\"><span class=\"channel-brand-icon\" aria-hidden=\"true\"><svg class=\"channel-brand-dark\" viewBox=\"0 0 100 100\"><defs><linearGradient id=\"brand-d0\" gradientUnits=\"userSpaceOnUse\" x1=\"4.5\" y1=\"64\" x2=\"95.5\" y2=\"64\"><stop offset=\"0.0%\" stop-color=\"#e9ebed\"></stop><stop offset=\"6.3%\" stop-color=\"#e2e5e7\"></stop><stop offset=\"12.5%\" stop-color=\"#dcdee1\"></stop><stop offset=\"18.8%\" stop-color=\"#d5d8db\"></stop><stop offset=\"25.0%\" stop-color=\"#ced2d5\"></stop><stop offset=\"31.3%\" stop-color=\"#c8cbcf\"></stop><stop offset=\"37.5%\" stop-color=\"#c1c5ca\"></stop><stop offset=\"43.8%\" stop-color=\"#babfc4\"></stop><stop offset=\"50.0%\" stop-color=\"#b4b9be\"></stop><stop offset=\"56.3%\" stop-color=\"#a9aeb3\"></stop><stop offset=\"62.5%\" stop-color=\"#9ea3a9\"></stop><stop offset=\"68.8%\" stop-color=\"#93999f\"></stop><stop offset=\"75.0%\" stop-color=\"#888e95\"></stop><stop offset=\"81.3%\" stop-color=\"#7e848a\"></stop><stop offset=\"87.5%\" stop-color=\"#737a80\"></stop><stop offset=\"93.8%\" stop-color=\"#697077\"></stop><stop offset=\"100.0%\" stop-color=\"#5f666d\"></stop></linearGradient><linearGradient id=\"brand-d1\" gradientUnits=\"userSpaceOnUse\" x1=\"8.5\" y1=\"36\" x2=\"91.5\" y2=\"36\"><stop offset=\"0.0%\" stop-color=\"#3f86ff\"></stop><stop offset=\"6.3%\" stop-color=\"#5588ff\"></stop><stop offset=\"12.5%\" stop-color=\"#6889ff\"></stop><stop offset=\"18.8%\" stop-color=\"#788aff\"></stop><stop offset=\"25.0%\" stop-color=\"#878bff\"></stop><stop offset=\"31.3%\" stop-color=\"#958cff\"></stop><stop offset=\"37.5%\" stop-color=\"#a78aef\"></stop><stop offset=\"43.8%\" stop-color=\"#b986d7\"></stop><stop offset=\"50.0%\" stop-color=\"#ca80bf\"></stop><stop offset=\"56.3%\" stop-color=\"#da78a6\"></stop><stop offset=\"62.5%\" stop-color=\"#ea6e8c\"></stop><stop offset=\"68.8%\" stop-color=\"#f56d78\"></stop><stop offset=\"75.0%\" stop-color=\"#f77f72\"></stop><stop offset=\"81.3%\" stop-color=\"#f8906b\"></stop><stop offset=\"87.5%\" stop-color=\"#f9a163\"></stop><stop offset=\"93.8%\" stop-color=\"#fab058\"></stop><stop offset=\"100.0%\" stop-color=\"#fac04a\"></stop></linearGradient><linearGradient id=\"brand-d2\" gradientUnits=\"userSpaceOnUse\" x1=\"28.021\" y1=\"95.435\" x2=\"39.978\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#d06a49\"></stop><stop offset=\"6.3%\" stop-color=\"#d36f4f\"></stop><stop offset=\"12.5%\" stop-color=\"#d67456\"></stop><stop offset=\"18.8%\" stop-color=\"#d97a5c\"></stop><stop offset=\"25.0%\" stop-color=\"#dc7f62\"></stop><stop offset=\"31.3%\" stop-color=\"#df8468\"></stop><stop offset=\"37.5%\" stop-color=\"#e2896e\"></stop><stop offset=\"43.8%\" stop-color=\"#e58e74\"></stop><stop offset=\"50.0%\" stop-color=\"#e8937a\"></stop><stop offset=\"56.3%\" stop-color=\"#eb9d85\"></stop><stop offset=\"62.5%\" stop-color=\"#eea68f\"></stop><stop offset=\"68.8%\" stop-color=\"#f1b09a\"></stop><stop offset=\"75.0%\" stop-color=\"#f4baa4\"></stop><stop offset=\"81.3%\" stop-color=\"#f6c3af\"></stop><stop offset=\"87.5%\" stop-color=\"#f9cdb9\"></stop><stop offset=\"93.8%\" stop-color=\"#fbd6c4\"></stop><stop offset=\"100.0%\" stop-color=\"#fde0cf\"></stop></linearGradient><linearGradient id=\"brand-d3\" gradientUnits=\"userSpaceOnUse\" x1=\"71.978\" y1=\"95.435\" x2=\"60.021\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#4a5cff\"></stop><stop offset=\"6.3%\" stop-color=\"#5062ff\"></stop><stop offset=\"12.5%\" stop-color=\"#5768ff\"></stop><stop offset=\"18.8%\" stop-color=\"#5d6dff\"></stop><stop offset=\"25.0%\" stop-color=\"#6472ff\"></stop><stop offset=\"31.3%\" stop-color=\"#6b77ff\"></stop><stop offset=\"37.5%\" stop-color=\"#717cff\"></stop><stop offset=\"43.8%\" stop-color=\"#7881ff\"></stop><stop offset=\"50.0%\" stop-color=\"#7f86ff\"></stop><stop offset=\"56.3%\" stop-color=\"#8990ff\"></stop><stop offset=\"62.5%\" stop-color=\"#9399ff\"></stop><stop offset=\"68.8%\" stop-color=\"#9da2ff\"></stop><stop offset=\"75.0%\" stop-color=\"#a8abff\"></stop><stop offset=\"81.3%\" stop-color=\"#b3b4ff\"></stop><stop offset=\"87.5%\" stop-color=\"#bebdff\"></stop><stop offset=\"93.8%\" stop-color=\"#c9c5ff\"></stop><stop offset=\"100.0%\" stop-color=\"#d4ceff\"></stop></linearGradient><clipPath id=\"brand-d4\"><polygon points=\"16,46.5 84,46.5 84,25.5 16,25.5\"></polygon></clipPath><clipPath id=\"brand-d5\"><polygon points=\"16,48.5 84,48.5 84,23.5 16,23.5\"></polygon></clipPath><clipPath id=\"brand-d6\"><polygon points=\"81.410,86.630 71.410,10.630 50.589,13.369 60.589,89.369\"></polygon></clipPath><clipPath id=\"brand-d7\"><polygon points=\"83.393,86.369 73.393,10.369 48.606,13.630 58.606,89.630\"></polygon></clipPath><clipPath id=\"brand-d8\"><polygon points=\"12,74.5 88,74.5 88,53.5 12,53.5\"></polygon></clipPath><clipPath id=\"brand-d9\"><polygon points=\"12,76.5 88,76.5 88,51.5 12,51.5\"></polygon></clipPath><clipPath id=\"brand-d10\"><polygon points=\"39.410,89.369 49.410,13.369 28.589,10.630 18.589,86.630\"></polygon></clipPath><clipPath id=\"brand-d11\"><polygon points=\"41.393,89.630 51.393,13.630 26.606,10.369 16.606,86.369\"></polygon></clipPath></defs><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-d0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-d1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-d2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-d3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><g clip-path=\"url(#brand-d4)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d5)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-d2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d6)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d7)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-d1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d8)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d9)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-d3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d10)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d11)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-d0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g></svg><svg class=\"channel-brand-light\" viewBox=\"0 0 100 100\"><defs><linearGradient id=\"brand-l0\" gradientUnits=\"userSpaceOnUse\" x1=\"4.5\" y1=\"64\" x2=\"95.5\" y2=\"64\"><stop offset=\"0.0%\" stop-color=\"#0b0d0f\"></stop><stop offset=\"6.3%\" stop-color=\"#101315\"></stop><stop offset=\"12.5%\" stop-color=\"#16191b\"></stop><stop offset=\"18.8%\" stop-color=\"#1c1f22\"></stop><stop offset=\"25.0%\" stop-color=\"#222529\"></stop><stop offset=\"31.3%\" stop-color=\"#282c2f\"></stop><stop offset=\"37.5%\" stop-color=\"#2e3237\"></stop><stop offset=\"43.8%\" stop-color=\"#34393e\"></stop><stop offset=\"50.0%\" stop-color=\"#3b4045\"></stop><stop offset=\"56.3%\" stop-color=\"#484d52\"></stop><stop offset=\"62.5%\" stop-color=\"#555a5f\"></stop><stop offset=\"68.8%\" stop-color=\"#62676d\"></stop><stop offset=\"75.0%\" stop-color=\"#70757b\"></stop><stop offset=\"81.3%\" stop-color=\"#7e8389\"></stop><stop offset=\"87.5%\" stop-color=\"#8c9297\"></stop><stop offset=\"93.8%\" stop-color=\"#9aa0a6\"></stop><stop offset=\"100.0%\" stop-color=\"#a9afb5\"></stop></linearGradient><linearGradient id=\"brand-l1\" gradientUnits=\"userSpaceOnUse\" x1=\"8.5\" y1=\"36\" x2=\"91.5\" y2=\"36\"><stop offset=\"0.0%\" stop-color=\"#2f7bff\"></stop><stop offset=\"6.3%\" stop-color=\"#487cff\"></stop><stop offset=\"12.5%\" stop-color=\"#5a7cff\"></stop><stop offset=\"18.8%\" stop-color=\"#6a7dff\"></stop><stop offset=\"25.0%\" stop-color=\"#797dff\"></stop><stop offset=\"31.3%\" stop-color=\"#877dff\"></stop><stop offset=\"37.5%\" stop-color=\"#997cee\"></stop><stop offset=\"43.8%\" stop-color=\"#ae79d3\"></stop><stop offset=\"50.0%\" stop-color=\"#c174b8\"></stop><stop offset=\"56.3%\" stop-color=\"#d36b9d\"></stop><stop offset=\"62.5%\" stop-color=\"#e56080\"></stop><stop offset=\"68.8%\" stop-color=\"#f15d69\"></stop><stop offset=\"75.0%\" stop-color=\"#f37162\"></stop><stop offset=\"81.3%\" stop-color=\"#f5835a\"></stop><stop offset=\"87.5%\" stop-color=\"#f79550\"></stop><stop offset=\"93.8%\" stop-color=\"#f8a542\"></stop><stop offset=\"100.0%\" stop-color=\"#f8b52c\"></stop></linearGradient><linearGradient id=\"brand-l2\" gradientUnits=\"userSpaceOnUse\" x1=\"28.021\" y1=\"95.435\" x2=\"39.978\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#b9502f\"></stop><stop offset=\"6.3%\" stop-color=\"#bd5534\"></stop><stop offset=\"12.5%\" stop-color=\"#c15a39\"></stop><stop offset=\"18.8%\" stop-color=\"#c55f3e\"></stop><stop offset=\"25.0%\" stop-color=\"#c96443\"></stop><stop offset=\"31.3%\" stop-color=\"#cd6848\"></stop><stop offset=\"37.5%\" stop-color=\"#d16d4d\"></stop><stop offset=\"43.8%\" stop-color=\"#d57252\"></stop><stop offset=\"50.0%\" stop-color=\"#d97757\"></stop><stop offset=\"56.3%\" stop-color=\"#dd8060\"></stop><stop offset=\"62.5%\" stop-color=\"#e08a69\"></stop><stop offset=\"68.8%\" stop-color=\"#e49372\"></stop><stop offset=\"75.0%\" stop-color=\"#e79c7b\"></stop><stop offset=\"81.3%\" stop-color=\"#eaa584\"></stop><stop offset=\"87.5%\" stop-color=\"#edae8d\"></stop><stop offset=\"93.8%\" stop-color=\"#f0b796\"></stop><stop offset=\"100.0%\" stop-color=\"#f3c09f\"></stop></linearGradient><linearGradient id=\"brand-l3\" gradientUnits=\"userSpaceOnUse\" x1=\"71.978\" y1=\"95.435\" x2=\"60.021\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#2b33e6\"></stop><stop offset=\"6.3%\" stop-color=\"#3139e9\"></stop><stop offset=\"12.5%\" stop-color=\"#363fec\"></stop><stop offset=\"18.8%\" stop-color=\"#3c44ef\"></stop><stop offset=\"25.0%\" stop-color=\"#4249f3\"></stop><stop offset=\"31.3%\" stop-color=\"#484ef6\"></stop><stop offset=\"37.5%\" stop-color=\"#4e53f9\"></stop><stop offset=\"43.8%\" stop-color=\"#5457fc\"></stop><stop offset=\"50.0%\" stop-color=\"#5a5cff\"></stop><stop offset=\"56.3%\" stop-color=\"#6569ff\"></stop><stop offset=\"62.5%\" stop-color=\"#7075ff\"></stop><stop offset=\"68.8%\" stop-color=\"#7c80ff\"></stop><stop offset=\"75.0%\" stop-color=\"#888bff\"></stop><stop offset=\"81.3%\" stop-color=\"#9595ff\"></stop><stop offset=\"87.5%\" stop-color=\"#a29fff\"></stop><stop offset=\"93.8%\" stop-color=\"#afa9ff\"></stop><stop offset=\"100.0%\" stop-color=\"#bdb3ff\"></stop></linearGradient><clipPath id=\"brand-l4\"><polygon points=\"16,46.5 84,46.5 84,25.5 16,25.5\"></polygon></clipPath><clipPath id=\"brand-l5\"><polygon points=\"16,48.5 84,48.5 84,23.5 16,23.5\"></polygon></clipPath><clipPath id=\"brand-l6\"><polygon points=\"81.410,86.630 71.410,10.630 50.589,13.369 60.589,89.369\"></polygon></clipPath><clipPath id=\"brand-l7\"><polygon points=\"83.393,86.369 73.393,10.369 48.606,13.630 58.606,89.630\"></polygon></clipPath><clipPath id=\"brand-l8\"><polygon points=\"12,74.5 88,74.5 88,53.5 12,53.5\"></polygon></clipPath><clipPath id=\"brand-l9\"><polygon points=\"12,76.5 88,76.5 88,51.5 12,51.5\"></polygon></clipPath><clipPath id=\"brand-l10\"><polygon points=\"39.410,89.369 49.410,13.369 28.589,10.630 18.589,86.630\"></polygon></clipPath><clipPath id=\"brand-l11\"><polygon points=\"41.393,89.630 51.393,13.630 26.606,10.369 16.606,86.369\"></polygon></clipPath></defs><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-l0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-l1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-l2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-l3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><g clip-path=\"url(#brand-l4)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l5)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-l2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l6)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l7)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-l1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l8)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l9)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-l3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l10)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l11)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-l0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g></svg></span><span class=\"channel-brand-text\"><strong>共议</strong><span>AI CoDiscuss</span></span></header>", 1),
53049
- K("div", k$, [
53050
- q(_Z, {
53036
+ K("div", O$, [
53037
+ q(gZ, {
53051
53038
  onSelect: ye,
53052
53039
  onManage: _e,
53053
53040
  onCreate: xe,
@@ -53056,12 +53043,12 @@ var hU = /*#__PURE__*/ XH({
53056
53043
  onDeleteFolder: we,
53057
53044
  onArchives: ve
53058
53045
  }),
53059
- K("div", A$, [K("button", {
53046
+ K("div", k$, [K("button", {
53060
53047
  type: "button",
53061
53048
  class: "channel-section-toggle",
53062
53049
  "aria-expanded": f.value,
53063
53050
  onClick: r[0] ||= (e) => f.value = !f.value
53064
- }, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[24] ||= J("频道工具", -1)], 8, j$)]),
53051
+ }, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[24] ||= J("频道工具", -1)], 8, A$)]),
53065
53052
  f.value ? (U(), G(b, {
53066
53053
  key: 0,
53067
53054
  items: he.value,
@@ -53077,7 +53064,7 @@ var hU = /*#__PURE__*/ XH({
53077
53064
  }
53078
53065
  }, null, 8, ["items"])) : Y("", !0)
53079
53066
  ]),
53080
- K("footer", M$, [K("button", {
53067
+ K("footer", j$, [K("button", {
53081
53068
  type: "button",
53082
53069
  class: "channel-self-button",
53083
53070
  "aria-label": `账号与设置:${I(n).display_name(I(_))}${ge.value ? "," + ge.value : ""}`,
@@ -53093,10 +53080,10 @@ var hU = /*#__PURE__*/ XH({
53093
53080
  "text",
53094
53081
  "alt",
53095
53082
  "class"
53096
- ]), K("span", P$, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: M(["channel-connection", { "is-action": ge.value }]) }, [K("span", {
53083
+ ]), K("span", N$, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: M(["channel-connection", { "is-action": ge.value }]) }, [K("span", {
53097
53084
  class: M({ connected: I(t).connected }),
53098
53085
  title: I(t).connected ? "网站已连接" : "网站未连接"
53099
- }, null, 10, F$), J(P(ge.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, N$), q(O, { text: "设置" }, {
53086
+ }, null, 10, P$), J(P(ge.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, M$), q(O, { text: "设置" }, {
53100
53087
  default: L(() => [q(T, {
53101
53088
  icon: "i-lucide-settings-2",
53102
53089
  color: "neutral",
@@ -53117,7 +53104,7 @@ var hU = /*#__PURE__*/ XH({
53117
53104
  "aria-label": "调整房间栏宽度",
53118
53105
  "aria-orientation": "vertical",
53119
53106
  "aria-controls": "channel-sidebar",
53120
- "aria-valuemin": y1,
53107
+ "aria-valuemin": v1,
53121
53108
  "aria-valuemax": oe.value,
53122
53109
  "aria-valuenow": se.value,
53123
53110
  "aria-valuetext": `${se.value} 像素`,
@@ -53128,13 +53115,13 @@ var hU = /*#__PURE__*/ XH({
53128
53115
  onPointercancel: Re,
53129
53116
  onLostpointercapture: Re,
53130
53117
  onKeydown: ze
53131
- }, null, 40, I$)),
53132
- K("main", L$, [K("div", {
53118
+ }, null, 40, F$)),
53119
+ K("main", I$, [K("div", {
53133
53120
  ref_key: "topbar",
53134
53121
  ref: re,
53135
53122
  class: M(["channel-topbar", { "is-overlay": o.value && I(t).tab === "discussion" }])
53136
53123
  }, [
53137
- K("header", R$, [
53124
+ K("header", L$, [
53138
53125
  q(O, { text: E.value ? "展开房间栏" : "收起房间栏" }, {
53139
53126
  default: L(() => [q(T, {
53140
53127
  icon: "i-lucide-panel-left",
@@ -53159,8 +53146,8 @@ var hU = /*#__PURE__*/ XH({
53159
53146
  "aria-expanded": d.value,
53160
53147
  onClick: r[4] ||= (e) => d.value = !0
53161
53148
  }, null, 8, ["aria-expanded"]),
53162
- K("span", z$, [q(y, { name: "i-lucide-hash" })]),
53163
- K("div", B$, [K("div", V$, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, H$)]), o.value?.archived ? (U(), G(ie, {
53149
+ K("span", R$, [q(y, { name: "i-lucide-hash" })]),
53150
+ K("div", z$, [K("div", B$, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, V$)]), o.value?.archived ? (U(), G(ie, {
53164
53151
  key: 0,
53165
53152
  color: "neutral",
53166
53153
  variant: "subtle",
@@ -53169,12 +53156,12 @@ var hU = /*#__PURE__*/ XH({
53169
53156
  default: L(() => [...r[26] ||= [J("已存档", -1)]]),
53170
53157
  _: 1
53171
53158
  })) : Y("", !0)]),
53172
- o.value ? (U(), W("span", U$, [
53159
+ o.value ? (U(), W("span", H$, [
53173
53160
  J(P(me.value.find((e) => e.value === I(t).tab)?.label), 1),
53174
53161
  r[27] ||= K("span", null, "·", -1),
53175
53162
  J(P(o.value.message_count) + " 条记录", 1)
53176
53163
  ])) : Y("", !0),
53177
- K("div", W$, [
53164
+ K("div", U$, [
53178
53165
  I(t).tab === "discussion" ? (U(), W("form", {
53179
53166
  key: 0,
53180
53167
  class: "channel-search",
@@ -53232,7 +53219,7 @@ var hU = /*#__PURE__*/ XH({
53232
53219
  ])]),
53233
53220
  _: 1
53234
53221
  })) : Y("", !0),
53235
- o.value && !(k.value && ee.value) ? (U(), G(JQ, { key: 2 })) : Y("", !0)
53222
+ o.value && !(k.value && ee.value) ? (U(), G(qQ, { key: 2 })) : Y("", !0)
53236
53223
  ]),
53237
53224
  q(O, { text: te.value }, {
53238
53225
  default: L(() => [q(T, {
@@ -53253,12 +53240,12 @@ var hU = /*#__PURE__*/ XH({
53253
53240
  _: 1
53254
53241
  }, 8, ["text"])
53255
53242
  ]),
53256
- I(t).launch.recoveries.length ? (U(), W("section", G$, [
53243
+ I(t).launch.recoveries.length ? (U(), W("section", W$, [
53257
53244
  r[28] ||= K("h2", null, "继续未完成的请求", -1),
53258
53245
  (U(!0), W(H, null, B(I(t).launch.recoveries, (e) => (U(), W("article", { key: e.id }, [
53259
53246
  K("strong", null, P(e.title), 1),
53260
- K("p", K$, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
53261
- K("div", q$, [
53247
+ K("p", G$, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
53248
+ K("div", K$, [
53262
53249
  q(T, {
53263
53250
  label: e.direct ? "继续创建房间" : "继续本次启动",
53264
53251
  size: "sm",
@@ -53291,7 +53278,7 @@ var hU = /*#__PURE__*/ XH({
53291
53278
  ]))), 128)),
53292
53279
  r[29] ||= K("small", null, "移除待办不会删除房间或停止讨论。", -1)
53293
53280
  ])) : Y("", !0),
53294
- o.value ? (U(), W("div", J$, [q(de, {
53281
+ o.value ? (U(), W("div", q$, [q(de, {
53295
53282
  modelValue: ue.value,
53296
53283
  "onUpdate:modelValue": r[9] ||= (e) => ue.value = e,
53297
53284
  items: me.value,
@@ -53306,7 +53293,7 @@ var hU = /*#__PURE__*/ XH({
53306
53293
  key: 2,
53307
53294
  class: M(["channel-host-brief", { "is-collapsed": D.value }]),
53308
53295
  "aria-label": "主持简报"
53309
- }, [K("div", Y$, [K("div", X$, [K("button", {
53296
+ }, [K("div", J$, [K("div", Y$, [K("button", {
53310
53297
  type: "button",
53311
53298
  class: "channel-brief-toggle",
53312
53299
  "aria-label": D.value ? "展开主持简报" : "收起主持简报",
@@ -53316,8 +53303,8 @@ var hU = /*#__PURE__*/ XH({
53316
53303
  }, [
53317
53304
  q(y, { name: D.value ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
53318
53305
  K("strong", null, "主持简报" + P(D.value ? ":" : ""), 1),
53319
- D.value ? (U(), W("span", Q$, P(ne.value), 1)) : Y("", !0)
53320
- ], 8, Z$), D.value ? Y("", !0) : (U(), G(T, {
53306
+ D.value ? (U(), W("span", Z$, P(ne.value), 1)) : Y("", !0)
53307
+ ], 8, X$), D.value ? Y("", !0) : (U(), G(T, {
53321
53308
  key: 0,
53322
53309
  label: "更新简报",
53323
53310
  color: "neutral",
@@ -53325,19 +53312,19 @@ var hU = /*#__PURE__*/ XH({
53325
53312
  size: "xs",
53326
53313
  class: "channel-brief-update",
53327
53314
  onClick: r[10] ||= (e) => I(i)("tab", "context")
53328
- }))]), vr(K("div", $$, [K("div", {
53315
+ }))]), vr(K("div", Q$, [K("div", {
53329
53316
  class: "channel-brief-text markdown-body",
53330
53317
  innerHTML: o.value.rendered_brief
53331
- }, null, 8, e1), K("div", t1, [K("span", n1, P(I(n).progress_speaker(o.value)), 1), K("small", null, P(I(n).brief_meta(o.value)), 1)])], 512), [[Vc, !D.value]])])], 2)) : Y("", !0)
53318
+ }, null, 8, $$), K("div", e1, [K("span", t1, P(I(n).progress_speaker(o.value)), 1), K("small", null, P(I(n).brief_meta(o.value)), 1)])], 512), [[Vc, !D.value]])])], 2)) : Y("", !0)
53332
53319
  ], 2), o.value ? (U(), W("div", {
53333
53320
  key: 0,
53334
53321
  class: M(["channel-body", { "channel-body-discussion": I(t).tab === "discussion" }])
53335
- }, [K("div", r1, [
53322
+ }, [K("div", n1, [
53336
53323
  vr(q(uK, {
53337
53324
  onDetail: be,
53338
53325
  onEdit: r[11] ||= (e) => s.value = "edit"
53339
53326
  }, null, 512), [[Vc, I(t).tab === "discussion"]]),
53340
- I(t).tab === "context" ? (U(), W("section", i1, [K("div", a1, [r[30] ||= K("div", null, [K("h2", null, "共识与分歧"), K("p", null, "整理讨论进展,用 #消息编号 保留依据。")], -1), q(ie, {
53327
+ I(t).tab === "context" ? (U(), W("section", r1, [K("div", i1, [r[30] ||= K("div", null, [K("h2", null, "共识与分歧"), K("p", null, "整理讨论进展,用 #消息编号 保留依据。")], -1), q(ie, {
53341
53328
  color: "neutral",
53342
53329
  variant: "outline"
53343
53330
  }, {
@@ -53378,7 +53365,7 @@ var hU = /*#__PURE__*/ XH({
53378
53365
  }, null, 8, ["modelValue"])]),
53379
53366
  _: 1
53380
53367
  }),
53381
- K("div", o1, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), q(T, {
53368
+ K("div", a1, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), q(T, {
53382
53369
  type: "submit",
53383
53370
  color: "neutral",
53384
53371
  icon: "i-lucide-check",
@@ -53392,7 +53379,7 @@ var hU = /*#__PURE__*/ XH({
53392
53379
  onOpen: r[15] ||= (e) => s.value = e,
53393
53380
  onDetail: be
53394
53381
  })) : Y("", !0)
53395
- ])], 2)) : (U(), W("div", s1, [
53382
+ ])], 2)) : (U(), W("div", o1, [
53396
53383
  q(y, { name: "i-lucide-hash" }),
53397
53384
  r[31] ||= K("h2", null, "新建一个协作房间", -1),
53398
53385
  r[32] ||= K("p", null, "邀请 AI 一起协作,随时 @ 提问;需要时开启讨论,保留所有人的观点。", -1),
@@ -53411,8 +53398,8 @@ var hU = /*#__PURE__*/ XH({
53411
53398
  "aria-label": "调整右侧栏宽度",
53412
53399
  "aria-orientation": "vertical",
53413
53400
  "aria-controls": "channel-member-rail",
53414
- "aria-valuemin": h1,
53415
- "aria-valuemax": g1,
53401
+ "aria-valuemin": m1,
53402
+ "aria-valuemax": h1,
53416
53403
  "aria-valuenow": C.value,
53417
53404
  "aria-valuetext": `${C.value} 像素`,
53418
53405
  title: "拖动调整右侧栏宽度,也可使用左右方向键",
@@ -53422,11 +53409,11 @@ var hU = /*#__PURE__*/ XH({
53422
53409
  onPointercancel: Pe,
53423
53410
  onLostpointercapture: Pe,
53424
53411
  onKeydown: Fe
53425
- }, null, 40, c1)) : Y("", !0),
53426
- k.value ? (U(), W("aside", l1, [K("section", u1, [o.value && pe.value ? (U(), G(D$, { key: 0 })) : o.value ? (U(), G(UQ, {
53412
+ }, null, 40, s1)) : Y("", !0),
53413
+ k.value ? (U(), W("aside", c1, [K("section", l1, [o.value && pe.value ? (U(), G(E$, { key: 0 })) : o.value ? (U(), G(HQ, {
53427
53414
  key: 1,
53428
53415
  docked: ""
53429
- })) : (U(), W("div", d1, [...r[33] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
53416
+ })) : (U(), W("div", u1, [...r[33] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
53430
53417
  q(De, {
53431
53418
  open: d.value,
53432
53419
  "onUpdate:open": r[18] ||= (e) => d.value = e,
@@ -53438,7 +53425,7 @@ var hU = /*#__PURE__*/ XH({
53438
53425
  body: "channel-drawer-body"
53439
53426
  }
53440
53427
  }, {
53441
- body: L(() => [q(_Z, {
53428
+ body: L(() => [q(gZ, {
53442
53429
  onSelect: ye,
53443
53430
  onManage: _e,
53444
53431
  onCreate: xe,
@@ -53469,7 +53456,7 @@ var hU = /*#__PURE__*/ XH({
53469
53456
  }
53470
53457
  }, {
53471
53458
  body: L(() => [o.value ? (U(), W(H, { key: 0 }, [
53472
- K("div", f1, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
53459
+ K("div", d1, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
53473
53460
  (U(), W(H, null, B([
53474
53461
  {
53475
53462
  key: "goal",
@@ -53496,7 +53483,7 @@ var hU = /*#__PURE__*/ XH({
53496
53483
  class: "info-section"
53497
53484
  }, [K("h3", null, P(e.label), 1), K("p", null, P(o.value[e.key] || "尚未填写"), 1)])), 64)),
53498
53485
  q(ke),
53499
- K("section", p1, [r[34] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(N.value, (e) => (U(), W("div", {
53486
+ K("section", f1, [r[34] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(N.value, (e) => (U(), W("div", {
53500
53487
  key: e.name,
53501
53488
  class: "expert-row"
53502
53489
  }, [
@@ -53529,7 +53516,7 @@ var hU = /*#__PURE__*/ XH({
53529
53516
  ], 64)) : Y("", !0)]),
53530
53517
  _: 1
53531
53518
  }, 8, ["open"]),
53532
- q(qX, {
53519
+ q(KX, {
53533
53520
  modelValue: s.value,
53534
53521
  "onUpdate:modelValue": r[21] ||= (e) => s.value = e,
53535
53522
  "reading-width": x.value,
@@ -53553,7 +53540,7 @@ var hU = /*#__PURE__*/ XH({
53553
53540
  ], 6);
53554
53541
  };
53555
53542
  }
53556
- }, D1 = {
53543
+ }, E1 = {
53557
53544
  __name: "App",
53558
53545
  setup(e) {
53559
53546
  return br("discussion", OV()), (e, t) => {
@@ -53564,7 +53551,7 @@ var hU = /*#__PURE__*/ XH({
53564
53551
  toaster: null
53565
53552
  }, {
53566
53553
  default: L(() => [q(I(Qz), { "reduced-motion": "user" }, {
53567
- default: L(() => [q(E1)]),
53554
+ default: L(() => [q(T1)]),
53568
53555
  _: 1
53569
53556
  })]),
53570
53557
  _: 1
@@ -53574,8 +53561,8 @@ var hU = /*#__PURE__*/ XH({
53574
53561
  };
53575
53562
  //#endregion
53576
53563
  //#region frontend/main.js
53577
- function O1() {
53578
- bu(D1).use(ph).mount("#modern-root");
53564
+ function D1() {
53565
+ bu(E1).use(ph).mount("#modern-root");
53579
53566
  }
53580
- document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", O1) : O1();
53567
+ document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", D1) : D1();
53581
53568
  //#endregion