ai_co_discuss 0.2.92 → 0.2.93

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
@@ -54134,23 +54134,57 @@ var J1 = [
54134
54134
  43200,
54135
54135
  86400
54136
54136
  ].map((e) => e * 1e3), Y1 = .12;
54137
- function X1(e, t = 6) {
54138
- let n = e.total_ms ?? e.busy_ms;
54139
- if (!n) return [];
54140
- let r = J1.find((e) => n / e <= t) ?? J1.at(-1), i = [];
54141
- for (let t of e.spans) for (let n = Math.ceil(t.start / r) * r; n <= t.end; n += r) {
54142
- let t = e.x(n);
54143
- (!i.length || t - i.at(-1).x >= Y1) && i.push({
54144
- at: n,
54137
+ function X1(e, t = 6, n = {
54138
+ from: 0,
54139
+ span: 1
54140
+ }) {
54141
+ let r = (e.total_ms ?? e.busy_ms) * n.span;
54142
+ if (!r) return [];
54143
+ let i = J1.find((e) => r / e <= t) ?? J1.at(-1), a = Y1 * n.span, o = [];
54144
+ for (let t of e.spans) if (!(t.from + t.width < n.from || t.from > n.from + n.span)) for (let r = Math.ceil(t.start / i) * i; r <= t.end; r += i) {
54145
+ let t = e.x(r);
54146
+ t < n.from || t > n.from + n.span || (!o.length || t - o.at(-1).x >= a) && o.push({
54147
+ at: r,
54145
54148
  x: t
54146
54149
  });
54147
54150
  }
54148
- return i.map((e) => ({
54151
+ return o.map((e) => ({
54149
54152
  ...e,
54150
- seconds: r < 6e4
54153
+ seconds: i < 6e4
54151
54154
  }));
54152
54155
  }
54153
- function Z1(e, t = Date.now()) {
54156
+ var Z1 = .01, Q1 = 2e3;
54157
+ function $1(e, t) {
54158
+ let n = (e) => (e - t.from) / t.span;
54159
+ return {
54160
+ ...e,
54161
+ x: (t) => n(e.x(t)),
54162
+ spans: e.spans.map((e) => ({
54163
+ ...e,
54164
+ from: n(e.from),
54165
+ width: e.width / t.span
54166
+ })),
54167
+ folds: e.folds.map((e) => ({
54168
+ ...e,
54169
+ from: n(e.from),
54170
+ width: e.width / t.span
54171
+ }))
54172
+ };
54173
+ }
54174
+ function e0(e, t, n, r = 0) {
54175
+ let i = Math.max(Z1, r ? Q1 / r : 0), a = Math.min(1, Math.max(i, e.span * n)), o = e.from + t * e.span;
54176
+ return {
54177
+ from: Math.min(1 - a, Math.max(0, o - t * a)),
54178
+ span: a
54179
+ };
54180
+ }
54181
+ function t0(e, t) {
54182
+ return {
54183
+ from: Math.min(1 - e.span, Math.max(0, e.from + t * e.span)),
54184
+ span: e.span
54185
+ };
54186
+ }
54187
+ function n0(e, t = Date.now()) {
54154
54188
  let n = null;
54155
54189
  for (let t of e) for (let e of t.segments) (!n || e.seen - e.start > n.end - n.start) && (n = {
54156
54190
  ...e,
@@ -54173,102 +54207,112 @@ function Z1(e, t = Date.now()) {
54173
54207
  }
54174
54208
  //#endregion
54175
54209
  //#region frontend/ExecutionTimeline.vue
54176
- var Q1 = {
54210
+ var r0 = {
54177
54211
  class: "merged-section execution-timeline",
54178
54212
  "aria-label": "执行时间线"
54179
- }, $1 = {
54213
+ }, i0 = {
54180
54214
  key: 0,
54181
54215
  role: "alert",
54182
54216
  class: "fine-print wf-error"
54183
- }, e0 = {
54217
+ }, a0 = {
54184
54218
  key: 1,
54185
54219
  class: "fine-print"
54186
- }, t0 = { class: "wf-head" }, n0 = { class: "wf-run" }, r0 = ["value"], i0 = {
54220
+ }, o0 = { class: "wf-head" }, s0 = { class: "wf-run" }, c0 = ["value"], l0 = {
54187
54221
  key: 0,
54188
54222
  class: "wf-state is-replay"
54189
- }, a0 = {
54223
+ }, u0 = {
54190
54224
  key: 2,
54191
54225
  class: "wf-headline"
54192
- }, o0 = { class: "wf-summary" }, s0 = ["title"], c0 = ["title"], l0 = { title: "连续调用同一工具合并为一段" }, u0 = {
54226
+ }, d0 = { class: "wf-summary" }, f0 = ["title"], p0 = ["title"], m0 = { title: "连续调用同一工具合并为一段" }, h0 = {
54193
54227
  class: "wf-legend",
54194
54228
  "aria-label": "图例"
54195
- }, d0 = {
54229
+ }, g0 = {
54196
54230
  key: 0,
54197
54231
  class: "wf-legend-note"
54198
- }, f0 = {
54232
+ }, _0 = {
54199
54233
  key: 1,
54200
54234
  class: "wf-legend-note"
54201
- }, p0 = { class: "wf-axis-label" }, m0 = {
54235
+ }, v0 = { class: "wf-axis-label" }, y0 = {
54202
54236
  key: 0,
54237
+ class: "wf-zoom"
54238
+ }, b0 = {
54239
+ key: 1,
54240
+ class: "wf-zoom-hint",
54241
+ title: "Ctrl + 滚轮缩放;放大后按住中键或拖动时间轴平移,双击时间轴还原"
54242
+ }, x0 = {
54243
+ key: 2,
54203
54244
  class: "wf-branch"
54204
- }, h0 = ["title"], g0 = {
54245
+ }, S0 = ["title"], C0 = {
54205
54246
  key: 0,
54206
54247
  class: "wf-guides",
54207
54248
  "aria-hidden": "true"
54208
- }, _0 = [
54249
+ }, w0 = [
54209
54250
  "aria-expanded",
54210
54251
  "aria-label",
54211
54252
  "onClick"
54212
- ], v0 = {
54253
+ ], T0 = {
54213
54254
  key: 2,
54214
54255
  class: "wf-toggle-space"
54215
- }, y0 = [
54256
+ }, E0 = [
54216
54257
  "aria-expanded",
54217
54258
  "onClick",
54218
54259
  "onMouseenter",
54219
54260
  "onMouseleave"
54220
- ], b0 = { class: "wf-name-line" }, x0 = {
54261
+ ], D0 = { class: "wf-name-line" }, O0 = {
54221
54262
  key: 0,
54222
54263
  class: "wf-spinner",
54223
54264
  "aria-hidden": "true"
54224
- }, S0 = {
54265
+ }, k0 = {
54225
54266
  key: 1,
54226
54267
  class: "wf-pill is-slowest"
54227
- }, C0 = {
54268
+ }, A0 = {
54228
54269
  key: 0,
54229
54270
  class: "wf-live-dot",
54230
54271
  "aria-hidden": "true"
54231
- }, w0 = ["aria-label", "onMouseleave"], T0 = { class: "wf-track" }, E0 = ["data-tone"], D0 = ["onMouseenter", "onClick"], O0 = ["onMouseenter", "onClick"], k0 = [
54272
+ }, j0 = ["aria-label", "onMouseleave"], M0 = { class: "wf-track" }, N0 = ["data-tone"], P0 = ["onMouseenter", "onClick"], F0 = ["onMouseenter", "onClick"], I0 = [
54232
54273
  "data-tone",
54233
54274
  "onMouseenter",
54234
54275
  "onClick"
54235
- ], A0 = [
54276
+ ], L0 = [
54236
54277
  "data-tone",
54237
54278
  "onMouseenter",
54238
54279
  "onClick"
54239
- ], j0 = [
54280
+ ], R0 = [
54240
54281
  "data-tone",
54241
54282
  "onMouseenter",
54242
54283
  "onClick"
54243
- ], M0 = [
54284
+ ], z0 = [
54244
54285
  "aria-label",
54245
54286
  "onMouseenter",
54246
54287
  "onClick",
54247
54288
  "onFocus",
54248
54289
  "onBlur"
54249
- ], N0 = { class: "wf-end" }, P0 = { key: 1 }, F0 = ["aria-label"], I0 = { class: "wf-detail-head" }, L0 = { key: 0 }, R0 = { key: 1 }, z0 = { class: "is-failed" }, B0 = { key: 2 }, V0 = { key: 3 }, H0 = {
54290
+ ], B0 = { class: "wf-end" }, V0 = { key: 1 }, H0 = ["aria-label"], U0 = { class: "wf-detail-head" }, W0 = { key: 0 }, G0 = { key: 1 }, K0 = { class: "is-failed" }, q0 = { key: 2 }, J0 = { key: 3 }, Y0 = {
54250
54291
  key: 0,
54251
54292
  class: "wf-log",
54252
54293
  "aria-label": "过程"
54253
- }, U0 = ["data-tone"], W0 = {
54294
+ }, X0 = ["data-tone"], Z0 = {
54254
54295
  key: 1,
54255
54296
  class: "wf-log-note"
54256
- }, G0 = {
54297
+ }, Q0 = {
54257
54298
  key: 1,
54258
54299
  class: "fine-print"
54259
- }, K0 = {
54300
+ }, $0 = {
54260
54301
  key: 1,
54261
54302
  class: "wf-player"
54262
- }, q0 = ["aria-label"], J0 = ["disabled"], Y0 = { value: 0 }, X0 = ["value"], Z0 = ["max", "value"], Q0 = { class: "wf-player-time" }, $0 = {
54303
+ }, e2 = {
54263
54304
  key: 2,
54305
+ class: "wf-player"
54306
+ }, t2 = ["aria-label"], n2 = ["disabled"], r2 = { value: 0 }, i2 = ["value"], a2 = ["max", "value"], o2 = { class: "wf-player-time" }, s2 = {
54307
+ key: 3,
54264
54308
  class: "wf-foot"
54265
- }, e2 = { key: 0 }, t2 = { key: 1 }, n2 = ["role"], r2 = {
54309
+ }, c2 = { key: 0 }, l2 = { key: 1 }, u2 = ["role"], d2 = {
54266
54310
  key: 1,
54267
54311
  class: "wf-card-text"
54268
- }, i2 = {
54312
+ }, f2 = {
54269
54313
  key: 2,
54270
54314
  class: "wf-card-reason"
54271
- }, a2 = { class: "wf-card-label" }, o2 = 2e3, s2 = 6e4, c2 = 100, l2 = 60, u2 = 2e4, d2 = 600, f2 = 5, p2 = 16, m2 = 90, h2 = 2, g2 = 8, _2 = 560, v2 = "latest", y2 = "all", b2 = 22, x2 = 5, S2 = 52, C2 = /*#__PURE__*/ XH({
54315
+ }, p2 = { class: "wf-card-label" }, m2 = 2e3, h2 = 6e4, g2 = 100, _2 = 60, v2 = 2e4, y2 = 600, b2 = 5, x2 = 16, S2 = 90, C2 = 2, w2 = 8, T2 = 560, E2 = .0015, D2 = "latest", O2 = "all", k2 = 22, A2 = 5, j2 = 52, M2 = /*#__PURE__*/ XH({
54272
54316
  __name: "ExecutionTimeline",
54273
54317
  emits: ["detail"],
54274
54318
  setup(e, { emit: t }) {
@@ -54288,7 +54332,7 @@ var Q1 = {
54288
54332
  let t = d.value;
54289
54333
  if (!t || w) return;
54290
54334
  w = !0;
54291
- let n = e || !S || Date.now() - C >= s2 ? 0 : S - f2;
54335
+ let n = e || !S || Date.now() - C >= h2 ? 0 : S - b2;
54292
54336
  try {
54293
54337
  let e = await i.request(`/api/rooms/${t}/timeline${n ? `?after=${n}` : ""}`);
54294
54338
  if (t !== d.value) return;
@@ -54311,50 +54355,81 @@ var Q1 = {
54311
54355
  R(Z(() => te.value?.executions.some((e) => e.state === "running")), (e) => {
54312
54356
  clearInterval(T), e && (T = setInterval(() => {
54313
54357
  document.hidden || ee();
54314
- }, o2));
54358
+ }, m2));
54315
54359
  }, { immediate: !0 }), R(d, () => {
54316
54360
  f.value = /* @__PURE__ */ new Map(), p.value = null, g.value = /* @__PURE__ */ new Set(), _.value = /* @__PURE__ */ new Map(), v.value = null, y.value = "", S = 0, ee(!0);
54317
54361
  }, { immediate: !0 }), R(() => r.value.room, (e, t) => {
54318
54362
  e?.id && e.id === t?.id && ee();
54319
54363
  });
54320
- function ne(e) {
54364
+ let ne = null;
54365
+ function re(e) {
54366
+ let t = c.value.getBoundingClientRect();
54367
+ return {
54368
+ share: Math.min(1, Math.max(0, (e.clientX - t.left) / t.width)),
54369
+ width: t.width
54370
+ };
54371
+ }
54372
+ function ie(e) {
54373
+ c.value && e.target.closest?.(".wf-track, .wf-axis") && (e.ctrlKey || e.metaKey ? (e.preventDefault(), Ee.value = e0(Ee.value, re(e).share, Math.exp(e.deltaY * E2), we.value.total_ms)) : De.value && (e.shiftKey || Math.abs(e.deltaX) > Math.abs(e.deltaY)) && (e.preventDefault(), Ee.value = t0(Ee.value, (e.shiftKey ? e.deltaY : e.deltaX) / re(e).width)));
54374
+ }
54375
+ function j(e) {
54376
+ let t = e.target.closest?.(".wf-axis");
54377
+ De.value && (e.button === 1 || e.button === 0 && t) && e.target.closest?.(".wf-track, .wf-axis") && (e.preventDefault(), ne = {
54378
+ x: e.clientX,
54379
+ from: Ee.value.from,
54380
+ width: re(e).width
54381
+ }, e.currentTarget.setPointerCapture(e.pointerId));
54382
+ }
54383
+ function ae(e) {
54384
+ ne && (Ee.value = t0({
54385
+ from: ne.from,
54386
+ span: Ee.value.span
54387
+ }, -(e.clientX - ne.x) / ne.width));
54388
+ }
54389
+ function oe() {
54390
+ ne = null;
54391
+ }
54392
+ function se(e) {
54393
+ e.button === 1 && e.target.closest?.(".wf-track, .wf-axis") && e.preventDefault();
54394
+ }
54395
+ function ce(e) {
54321
54396
  v.value && !e.target.closest?.(".wf-card, .wf-bar, .wf-note") && (v.value = null), y.value && !e.target.closest?.(".wf-detail, .wf-names") && (y.value = "");
54322
54397
  }
54323
- function re(e) {
54398
+ function le(e) {
54324
54399
  e.key === "Escape" && (y.value = "", v.value = null);
54325
54400
  }
54326
54401
  Qi(() => {
54327
- document.addEventListener("pointerdown", ne), document.addEventListener("keydown", re), u = new ResizeObserver(([e]) => {
54402
+ document.addEventListener("pointerdown", ce), document.addEventListener("keydown", le), u = new ResizeObserver(([e]) => {
54328
54403
  l.value = e.contentRect.width;
54329
54404
  });
54330
54405
  }), R(c, (e, t) => {
54331
54406
  t && u?.unobserve(t), e && u?.observe(e);
54332
54407
  }), ta(() => {
54333
- clearInterval(T), cancelAnimationFrame(E), document.removeEventListener("pointerdown", ne), document.removeEventListener("keydown", re), u?.disconnect();
54408
+ clearInterval(T), cancelAnimationFrame(E), document.removeEventListener("pointerdown", ce), document.removeEventListener("keydown", le), u?.disconnect();
54334
54409
  });
54335
- let ie = /* @__PURE__ */ F(v2), j = Z(() => te.value ? U1(te.value, h.value) : {
54410
+ let ue = /* @__PURE__ */ F(D2), de = Z(() => te.value ? U1(te.value, h.value) : {
54336
54411
  list: [],
54337
54412
  of: /* @__PURE__ */ new Map()
54338
- }), ae = Z(() => ie.value === v2 ? j.value.list[0]?.key : ie.value === y2 || j.value.list.some((e) => e.key === ie.value) ? ie.value : j.value.list[0]?.key), oe = Z(() => !te.value || ae.value === y2 ? te.value : {
54413
+ }), pe = Z(() => ue.value === D2 ? de.value.list[0]?.key : ue.value === O2 || de.value.list.some((e) => e.key === ue.value) ? ue.value : de.value.list[0]?.key), me = Z(() => !te.value || pe.value === O2 ? te.value : {
54339
54414
  ...te.value,
54340
- executions: te.value.executions.filter((e) => j.value.of.get(`${e.source}:${e.id}`) === ae.value)
54415
+ executions: te.value.executions.filter((e) => de.value.of.get(`${e.source}:${e.id}`) === pe.value)
54341
54416
  });
54342
54417
  R(d, () => {
54343
- ie.value = v2;
54418
+ ue.value = D2;
54344
54419
  });
54345
- let se = (e) => new Date(e).toLocaleString("zh-CN", {
54420
+ let he = (e) => new Date(e).toLocaleString("zh-CN", {
54346
54421
  month: "numeric",
54347
54422
  day: "numeric",
54348
54423
  hour: "2-digit",
54349
54424
  minute: "2-digit",
54350
54425
  hour12: !1
54351
54426
  });
54352
- function ce(e) {
54353
- let t = e.task ? `${e.task.replace(/\s+/g, " ").slice(0, b2)}${e.task.length > b2 ? "…" : ""}` : e.source === "discussion" ? "讨论" : "执行";
54354
- return `${se(e.start)} · ${t} · ${e.count} 次${e.running ? " · 进行中" : e.failed ? " · 有失败" : ""}`;
54427
+ function ge(e) {
54428
+ let t = e.task ? `${e.task.replace(/\s+/g, " ").slice(0, k2)}${e.task.length > k2 ? "…" : ""}` : e.source === "discussion" ? "讨论" : "执行";
54429
+ return `${he(e.start)} · ${t} · ${e.count} 次${e.running ? " · 进行中" : e.failed ? " · 有失败" : ""}`;
54355
54430
  }
54356
- let le = Z(() => oe.value ? V1(oe.value, h.value) : []), ue = Z(() => le.value.some((e) => e.item.state === "running")), de = Z(() => {
54357
- let e = Math.min(...le.value.map((e) => e.start)), t = Math.max(...le.value.map((e) => e.end));
54431
+ let N = Z(() => me.value ? V1(me.value, h.value) : []), _e = Z(() => N.value.some((e) => e.item.state === "running")), ve = Z(() => {
54432
+ let e = Math.min(...N.value.map((e) => e.start)), t = Math.max(...N.value.map((e) => e.end));
54358
54433
  return Number.isFinite(e) ? {
54359
54434
  start: e,
54360
54435
  end: t,
@@ -54364,69 +54439,82 @@ var Q1 = {
54364
54439
  end: 0,
54365
54440
  duration: 0
54366
54441
  };
54367
- }), pe = Z(() => k.position !== null && !ue.value), me = Z(() => pe.value ? de.value.start + k.position : h.value), he = Z(() => pe.value ? V1(z1(oe.value, me.value, _.value), me.value) : le.value), ge = Z(() => he.value.filter((e) => !e.ancestors.some((e) => g.value.has(e)))), N = Z(() => he.value.some((e) => e.item.state === "running")), _e = Z(() => q1(he.value, N.value)), ve = Z(() => N.value ? _e.value.x(me.value) : null), ye = Z(() => Math.max(1, de.value.duration / u2)), be = Z(() => k.speed || ye.value);
54368
- function xe(e) {
54442
+ }), ye = Z(() => k.position !== null && !_e.value), be = Z(() => ye.value ? ve.value.start + k.position : h.value), xe = Z(() => ye.value ? V1(z1(me.value, be.value, _.value), be.value) : N.value), Se = Z(() => xe.value.filter((e) => !e.ancestors.some((e) => g.value.has(e)))), Ce = Z(() => xe.value.some((e) => e.item.state === "running")), we = Z(() => q1(xe.value, Ce.value)), Te = {
54443
+ from: 0,
54444
+ span: 1
54445
+ }, Ee = /* @__PURE__ */ F(Te), De = Z(() => Ee.value.span < 1);
54446
+ R([pe, d], () => {
54447
+ Ee.value = Te;
54448
+ });
54449
+ let Oe = Z(() => $1(we.value, Ee.value)), ke = Z(() => {
54450
+ let e = Ce.value ? Oe.value.x(be.value) : null;
54451
+ return e === null || e < 0 || e > 1 ? null : e;
54452
+ }), Ae = Z(() => Math.max(1, ve.value.duration / v2)), je = Z(() => k.speed || Ae.value);
54453
+ function Me(e) {
54369
54454
  let t = D ? Math.min(e - D, 250) : 0;
54370
54455
  D = e;
54371
- let n = he.value.length <= l2 || e - O >= c2;
54372
- k.playing && (A += t * be.value, A >= de.value.duration ? Object.assign(k, {
54456
+ let n = xe.value.length <= _2 || e - O >= g2;
54457
+ k.playing && (A += t * je.value, A >= ve.value.duration ? Object.assign(k, {
54373
54458
  position: null,
54374
54459
  playing: !1
54375
- }) : n && (k.position = A)), ue.value && n && (h.value = Date.now()), n && (O = e), E = ue.value || k.playing ? requestAnimationFrame(xe) : 0, E || (D = 0);
54460
+ }) : n && (k.position = A)), _e.value && n && (h.value = Date.now()), n && (O = e), E = _e.value || k.playing ? requestAnimationFrame(Me) : 0, E || (D = 0);
54376
54461
  }
54377
- R([ue, () => k.playing], () => {
54378
- !E && (ue.value || k.playing) && (E = requestAnimationFrame(xe));
54462
+ R([_e, () => k.playing], () => {
54463
+ !E && (_e.value || k.playing) && (E = requestAnimationFrame(Me));
54379
54464
  }, { immediate: !0 });
54380
- async function Se() {
54381
- k.position === null ? (A = 0, ke()) : A = k.position, Object.assign(k, {
54465
+ async function Ne() {
54466
+ k.position === null ? (A = 0, Be()) : A = k.position, Object.assign(k, {
54382
54467
  position: A,
54383
54468
  playing: !0
54384
- }), Ce();
54469
+ }), Pe();
54385
54470
  }
54386
- function Ce() {
54387
- for (let e of oe.value?.executions || []) qe({
54471
+ function Pe() {
54472
+ for (let e of me.value?.executions || []) at({
54388
54473
  item: e,
54389
54474
  notes: e.notes || []
54390
54475
  });
54391
54476
  }
54392
- function we() {
54477
+ function Fe() {
54393
54478
  k.playing = !1;
54394
54479
  }
54395
- function Te() {
54396
- A = 0, ke(), Object.assign(k, {
54480
+ function Ie() {
54481
+ A = 0, Be(), Object.assign(k, {
54397
54482
  position: 0,
54398
54483
  playing: !0
54399
54484
  });
54400
54485
  }
54401
- function Ee(e) {
54486
+ function Le(e) {
54402
54487
  A = Number(e.target.value), Object.assign(k, {
54403
54488
  position: A,
54404
54489
  playing: !1
54405
- }), Ce();
54490
+ }), Pe();
54406
54491
  }
54407
- R([ae, d], () => Object.assign(k, {
54492
+ R([pe, d], () => Object.assign(k, {
54408
54493
  position: null,
54409
54494
  playing: !1
54410
54495
  }));
54411
- let De = /* @__PURE__ */ F(/* @__PURE__ */ new Set()), Oe = null;
54412
- function ke() {
54413
- Oe = /* @__PURE__ */ new Set(), De.value = /* @__PURE__ */ new Set();
54414
- }
54415
- R(() => ge.value.map((e) => e.key).join(), () => {
54416
- let e = ge.value.map((e) => e.key);
54417
- if (!Oe) {
54418
- Oe = new Set(e);
54496
+ let Re = /* @__PURE__ */ F(/* @__PURE__ */ new Set()), ze = null;
54497
+ function Be() {
54498
+ ze = /* @__PURE__ */ new Set(), Re.value = /* @__PURE__ */ new Set();
54499
+ }
54500
+ R(() => Se.value.map((e) => e.key).join(), () => {
54501
+ let e = Se.value.map((e) => e.key);
54502
+ if (!ze) {
54503
+ ze = new Set(e);
54419
54504
  return;
54420
54505
  }
54421
- let t = e.filter((e) => !Oe.has(e));
54422
- t.forEach((e) => Oe.add(e)), t.length && (De.value = /* @__PURE__ */ new Set([...De.value, ...t]), setTimeout(() => {
54423
- De.value = new Set([...De.value].filter((e) => !t.includes(e)));
54424
- }, d2));
54425
- }), R([ae, d], () => {
54426
- Oe = null;
54506
+ let t = e.filter((e) => !ze.has(e));
54507
+ t.forEach((e) => ze.add(e)), t.length && (Re.value = /* @__PURE__ */ new Set([...Re.value, ...t]), setTimeout(() => {
54508
+ Re.value = new Set([...Re.value].filter((e) => !t.includes(e)));
54509
+ }, y2));
54510
+ }), R([pe, d], () => {
54511
+ ze = null;
54427
54512
  });
54428
- let Ae = Z(() => W1(ge.value, _e.value)), je = Z(() => X1(_e.value, Math.min(g2, Math.max(h2, Math.round((l.value || 540) / m2))))), Me = Z(() => Z1(he.value, me.value)), Ne = Z(() => he.value.filter((e) => e.has_children).map((e) => e.key)), Pe = Z(() => he.value.find((e) => e.key === y.value)), Fe = Z(() => Pe.value ? R1(Pe.value, _.value.get(Pe.value.item.id)) : []), Ie = Z(() => {
54429
- let e = he.value, t = new Set(e.flatMap((e) => e.segments.map((e) => A1[e.phase])));
54513
+ let Ve = Z(() => W1(Se.value, Oe.value)), He = Z(() => X1(we.value, Math.min(w2, Math.max(C2, Math.round((l.value || 540) / S2))), Ee.value).map((e) => ({
54514
+ ...e,
54515
+ x: (e.x - Ee.value.from) / Ee.value.span
54516
+ }))), Ue = Z(() => n0(xe.value, be.value)), We = Z(() => xe.value.filter((e) => e.has_children).map((e) => e.key)), Ge = Z(() => xe.value.find((e) => e.key === y.value)), Ke = Z(() => Ge.value ? R1(Ge.value, _.value.get(Ge.value.item.id)) : []), qe = Z(() => {
54517
+ let e = xe.value, t = new Set(e.flatMap((e) => e.segments.map((e) => A1[e.phase])));
54430
54518
  return [
54431
54519
  ...e.some((e) => e.queue[1] > e.queue[0]) ? [["queue", "排队"]] : [],
54432
54520
  ...e.some((e) => e.wake) ? [["wake", "唤醒"]] : [],
@@ -54437,101 +54525,111 @@ var Q1 = {
54437
54525
  ...e.some((e) => e.notes.length) ? [["note-mark", "过程说明"]] : [],
54438
54526
  ...e.some((e) => e.item.state === "failed") ? [["failed-mark", "失败"]] : []
54439
54527
  ];
54440
- }), Le = Z(() => he.value.length > 0 && he.value.every((e) => !e.segments.length)), Re = Z(() => {
54528
+ }), Je = Z(() => xe.value.length > 0 && xe.value.every((e) => !e.segments.length)), Ye = Z(() => {
54441
54529
  let e = /* @__PURE__ */ new Map();
54442
- for (let t of [...he.value].sort((e, t) => e.start - t.start)) e.has(t.item.member) || e.set(t.item.member, e.size % x2 + 1);
54530
+ for (let t of [...xe.value].sort((e, t) => e.start - t.start)) e.has(t.item.member) || e.set(t.item.member, e.size % A2 + 1);
54443
54531
  return e;
54444
- }), ze = Z(() => {
54445
- let e = S2 / (l.value || 800);
54446
- return je.value.filter((t) => !_e.value.folds.some((n) => Math.abs(t.x - (n.from + n.width / 2)) < e));
54532
+ }), Xe = Z(() => {
54533
+ let e = j2 / (l.value || 800), t = [];
54534
+ for (let n of Oe.value.folds) {
54535
+ let r = n.from + n.width / 2;
54536
+ r < 0 || r > 1 || (!t.length || r - t.at(-1).middle >= e) && t.push({
54537
+ ...n,
54538
+ middle: r
54539
+ });
54540
+ }
54541
+ return t;
54542
+ }), Ze = Z(() => {
54543
+ let e = j2 / (l.value || 800);
54544
+ return He.value.filter((t) => !Xe.value.some((n) => Math.abs(t.x - n.middle) < e));
54447
54545
  });
54448
- function Be(e, t) {
54546
+ function Qe(e, t) {
54449
54547
  if (y.value = y.value === e.key ? "" : e.key, !y.value) return;
54450
- let n = t.currentTarget.getBoundingClientRect(), r = x.value.getBoundingClientRect(), i = Math.min(_2, r.width - 16);
54548
+ let n = t.currentTarget.getBoundingClientRect(), r = x.value.getBoundingClientRect(), i = Math.min(T2, r.width - 16);
54451
54549
  b.value = {
54452
54550
  top: n.bottom - r.top + 4,
54453
54551
  left: Math.max(8, Math.min(n.left - r.left, r.width - i - 8))
54454
- }, v.value = null, qe(e);
54552
+ }, v.value = null, at(e);
54455
54553
  }
54456
- R(() => Pe.value?.notes.length, () => {
54457
- Pe.value && qe(Pe.value);
54554
+ R(() => Ge.value?.notes.length, () => {
54555
+ Ge.value && at(Ge.value);
54458
54556
  });
54459
- function Ve(e) {
54557
+ function $e(e) {
54460
54558
  let t = new Set(g.value);
54461
54559
  t.has(e) ? t.delete(e) : t.add(e), g.value = t;
54462
54560
  }
54463
- function He(e, t, n = !1) {
54464
- let r = _e.value.x(e), i = Math.max(0, _e.value.x(t) - r) * 100;
54561
+ function et(e, t, n = !1) {
54562
+ let r = Oe.value.x(e), i = Math.max(0, Oe.value.x(t) - r) * 100;
54465
54563
  return {
54466
54564
  left: `${r * 100}%`,
54467
54565
  width: n ? `max(2px, calc(${i}% - 1px))` : `${i}%`
54468
54566
  };
54469
54567
  }
54470
- function Ue(e) {
54568
+ function tt(e) {
54471
54569
  let t = e.item.role === "host";
54472
54570
  return e.item.source === "discussion" ? t ? "讨论 · 主持" : "讨论 · 专家" : t ? "协作 · 主持" : "协作";
54473
54571
  }
54474
- function We(e) {
54572
+ function nt(e) {
54475
54573
  return [...e.item.source === "discussion" ? ["讨论"] : [], ...e.item.role === "host" ? ["主持"] : []];
54476
54574
  }
54477
- let Ge = (e) => L1(e, me.value);
54478
- function Ke(e) {
54575
+ let rt = (e) => L1(e, be.value);
54576
+ function it(e) {
54479
54577
  let t = [
54480
54578
  i.display_name(e.item.member),
54481
- Ue(e),
54579
+ tt(e),
54482
54580
  j1[e.item.state],
54483
54581
  `用时 ${P1(e.end - e.start)}`
54484
54582
  ];
54485
54583
  return e.wake && t.push(`唤醒 ${P1(e.wake[1] - e.wake[0])}${e.wake_approx ? "(约)" : ""}`), !e.segments.length && e.work && t.push("无阶段明细"), e.notes.length && t.push(`${e.notes.length} 段过程说明`), t.join(",");
54486
54584
  }
54487
- async function qe(e) {
54585
+ async function at(e) {
54488
54586
  let t = e.item.id;
54489
54587
  if (!(e.item.source !== "free" || !e.notes.length || (_.value.get(t)?.length || 0) >= e.notes.length)) try {
54490
54588
  let { notes: e } = await i.request(`/api/rooms/${d.value}/executions/${t}/notes`);
54491
54589
  _.value = new Map(_.value).set(t, e.map((e) => e.text));
54492
54590
  } catch {}
54493
54591
  }
54494
- let Je = (e) => new Date(e).toLocaleTimeString("zh-CN", {
54592
+ let ot = (e) => new Date(e).toLocaleTimeString("zh-CN", {
54495
54593
  hour: "2-digit",
54496
54594
  minute: "2-digit",
54497
54595
  second: "2-digit",
54498
54596
  hour12: !1
54499
- }), Ye = (e) => new Date(e.at).toLocaleTimeString("zh-CN", {
54597
+ }), st = (e) => new Date(e.at).toLocaleTimeString("zh-CN", {
54500
54598
  hour: "2-digit",
54501
54599
  minute: "2-digit",
54502
54600
  ...e.seconds ? { second: "2-digit" } : {},
54503
54601
  hour12: !1
54504
54602
  });
54505
- function Xe(e, t, n, r = !1) {
54603
+ function ct(e, t, n, r = !1) {
54506
54604
  let i = e.currentTarget.getBoundingClientRect(), a = n.note ? {
54507
54605
  notes: [n.note],
54508
54606
  earlier: !1
54509
54607
  } : B1(t.notes, n.start, n.end), o = Math.min(360, window.innerWidth - 16), s = i.bottom + 6, c = s + 160 > window.innerHeight && i.top > 200 ? Math.max(8, i.top - 6 - 200) : s;
54510
54608
  v.value = {
54511
54609
  key: t.key,
54512
- id: Ze(t, n),
54610
+ id: lt(t, n),
54513
54611
  row: t,
54514
54612
  piece: n,
54515
54613
  related: a,
54516
54614
  pinned: r,
54517
54615
  left: Math.max(8, Math.min(i.left, window.innerWidth - o - 8)),
54518
54616
  top: c
54519
- }, qe(t);
54617
+ }, at(t);
54520
54618
  }
54521
- let Ze = (e, t) => `${e.key}:${t.kind || t.label || "note"}:${t.start}`;
54522
- function Qe(e, t, n) {
54523
- s && Xe(e, t, n);
54619
+ let lt = (e, t) => `${e.key}:${t.kind || t.label || "note"}:${t.start}`;
54620
+ function ut(e, t, n) {
54621
+ s && ct(e, t, n);
54524
54622
  }
54525
- function $e(e, t, n) {
54526
- s || (v.value?.id === Ze(t, n) ? v.value = null : Xe(e, t, n, !0));
54623
+ function dt(e, t, n) {
54624
+ s || (v.value?.id === lt(t, n) ? v.value = null : ct(e, t, n, !0));
54527
54625
  }
54528
- function et(e) {
54626
+ function ft(e) {
54529
54627
  v.value?.key === e.key && !v.value.pinned && (v.value = null);
54530
54628
  }
54531
- let tt = Z(() => {
54629
+ let pt = Z(() => {
54532
54630
  let e = v.value?.piece;
54533
- return e ? e.note ? `过程说明 · ${Je(e.note.at)}` : `${e.kind === "segment" ? `${k1[e.phase]}${e.tool ? ` · ${e.tool}` : ""}` : e.label} · ${P1(e.end - e.start)}${e.live ? " · 进行中" : ""}` : "";
54534
- }), nt = Z(() => {
54631
+ return e ? e.note ? `过程说明 · ${ot(e.note.at)}` : `${e.kind === "segment" ? `${k1[e.phase]}${e.tool ? ` · ${e.tool}` : ""}` : e.label} · ${P1(e.end - e.start)}${e.live ? " · 进行中" : ""}` : "";
54632
+ }), mt = Z(() => {
54535
54633
  if (!v.value) return [];
54536
54634
  let e = _.value.get(v.value.row.item.id);
54537
54635
  return v.value.related.notes.map((t) => ({
@@ -54541,134 +54639,152 @@ var Q1 = {
54541
54639
  });
54542
54640
  return (e, t) => {
54543
54641
  let r = sA, s = pA;
54544
- return U(), W("section", Q1, [
54545
- t[28] ||= K("div", { class: "page-heading" }, [K("div", null, [K("h2", null, "执行时间线"), K("p", null, "本机接入程序唤醒的每次执行;点名字看详情,悬停条形看当时的过程说明。")])], -1),
54546
- m.value ? (U(), W("p", $1, P(m.value), 1)) : Y("", !0),
54547
- te.value && !he.value.length ? (U(), W("p", e0, "还没有执行记录。")) : Y("", !0),
54548
- he.value.length ? (U(), W("div", {
54642
+ return U(), W("section", r0, [
54643
+ t[31] ||= K("div", { class: "page-heading" }, [K("div", null, [K("h2", null, "执行时间线"), K("p", null, "本机接入程序唤醒的每次执行;点名字看详情,悬停条形看当时的过程说明。")])], -1),
54644
+ m.value ? (U(), W("p", i0, P(m.value), 1)) : Y("", !0),
54645
+ te.value && !xe.value.length ? (U(), W("p", a0, "还没有执行记录。")) : Y("", !0),
54646
+ xe.value.length ? (U(), W("div", {
54549
54647
  key: 2,
54550
54648
  ref_key: "wf_element",
54551
54649
  ref: x,
54552
54650
  class: "wf"
54553
54651
  }, [
54554
- K("header", t0, [
54555
- t[11] ||= K("span", { class: "wf-title" }, "执行瀑布", -1),
54556
- K("label", n0, [
54557
- t[9] ||= K("span", { class: "sr-only" }, "查看哪一轮", -1),
54652
+ K("header", o0, [
54653
+ t[13] ||= K("span", { class: "wf-title" }, "执行瀑布", -1),
54654
+ K("label", s0, [
54655
+ t[11] ||= K("span", { class: "sr-only" }, "查看哪一轮", -1),
54558
54656
  vr(K("select", {
54559
- "onUpdate:modelValue": t[0] ||= (e) => ie.value = e,
54657
+ "onUpdate:modelValue": t[0] ||= (e) => ue.value = e,
54560
54658
  class: "wf-run-select"
54561
54659
  }, [
54562
- K("option", { value: v2 }, "最近一轮(自动跟随)"),
54563
- (U(!0), W(H, null, B(j.value.list, (e) => (U(), W("option", {
54660
+ K("option", { value: D2 }, "最近一轮(自动跟随)"),
54661
+ (U(!0), W(H, null, B(de.value.list, (e) => (U(), W("option", {
54564
54662
  key: e.key,
54565
54663
  value: e.key
54566
- }, P(ce(e)), 9, r0))), 128)),
54567
- K("option", { value: y2 }, "全部执行")
54568
- ], 512), [[$l, ie.value]]),
54664
+ }, P(ge(e)), 9, c0))), 128)),
54665
+ K("option", { value: O2 }, "全部执行")
54666
+ ], 512), [[$l, ue.value]]),
54569
54667
  q(r, {
54570
54668
  name: "i-lucide-chevrons-up-down",
54571
54669
  class: "wf-run-icon",
54572
54670
  "aria-hidden": "true"
54573
54671
  })
54574
54672
  ]),
54575
- pe.value ? (U(), W("span", i0, "回放中 · " + P(Je(me.value)), 1)) : (U(), W("span", {
54673
+ ye.value ? (U(), W("span", l0, "回放中 · " + P(ot(be.value)), 1)) : (U(), W("span", {
54576
54674
  key: 1,
54577
- class: M(["wf-state", { "is-live": Me.value.running }])
54578
- }, P(Me.value.running ? `${Me.value.running} 个进行中` : "均已结束"), 3)),
54579
- Me.value.slowest ? (U(), W("span", a0, [
54580
- t[10] ||= J("最慢一步 ", -1),
54581
- K("b", null, [J(P(I(i).display_name(Me.value.slowest.member)) + " · " + P(I(k1)[Me.value.slowest.phase]), 1), Me.value.slowest.tool ? (U(), W(H, { key: 0 }, [J(P(Me.value.slowest.tool), 1)], 64)) : Y("", !0)]),
54582
- J(" · " + P(I(P1)(Me.value.slowest.end - Me.value.slowest.start)), 1)
54675
+ class: M(["wf-state", { "is-live": Ue.value.running }])
54676
+ }, P(Ue.value.running ? `${Ue.value.running} 个进行中` : "均已结束"), 3)),
54677
+ Ue.value.slowest ? (U(), W("span", u0, [
54678
+ t[12] ||= J("最慢一步 ", -1),
54679
+ K("b", null, [J(P(I(i).display_name(Ue.value.slowest.member)) + " · " + P(I(k1)[Ue.value.slowest.phase]), 1), Ue.value.slowest.tool ? (U(), W(H, { key: 0 }, [J(P(Ue.value.slowest.tool), 1)], 64)) : Y("", !0)]),
54680
+ J(" · " + P(I(P1)(Ue.value.slowest.end - Ue.value.slowest.start)), 1)
54583
54681
  ])) : Y("", !0)
54584
54682
  ]),
54585
- K("dl", o0, [
54586
- K("div", null, [t[12] ||= K("dt", null, "执行", -1), K("dd", null, [(U(), W("span", {
54587
- key: Me.value.executions,
54683
+ K("dl", d0, [
54684
+ K("div", null, [t[14] ||= K("dt", null, "执行", -1), K("dd", null, [(U(), W("span", {
54685
+ key: Ue.value.executions,
54588
54686
  class: "wf-roll"
54589
- }, P(Me.value.executions), 1))])]),
54590
- K("div", null, [t[13] ||= K("dt", null, "进行中", -1), K("dd", { class: M(Me.value.running ? "is-live" : "is-zero") }, [(U(), W("span", {
54591
- key: Me.value.running,
54687
+ }, P(Ue.value.executions), 1))])]),
54688
+ K("div", null, [t[15] ||= K("dt", null, "进行中", -1), K("dd", { class: M(Ue.value.running ? "is-live" : "is-zero") }, [(U(), W("span", {
54689
+ key: Ue.value.running,
54592
54690
  class: "wf-roll"
54593
- }, P(Me.value.running), 1))], 2)]),
54594
- K("div", null, [t[14] ||= K("dt", null, "失败", -1), K("dd", { class: M(Me.value.failed ? "is-failed" : "is-zero") }, [(U(), W("span", {
54595
- key: Me.value.failed,
54691
+ }, P(Ue.value.running), 1))], 2)]),
54692
+ K("div", null, [t[16] ||= K("dt", null, "失败", -1), K("dd", { class: M(Ue.value.failed ? "is-failed" : "is-zero") }, [(U(), W("span", {
54693
+ key: Ue.value.failed,
54596
54694
  class: "wf-roll"
54597
- }, P(Me.value.failed), 1))], 2)]),
54598
- K("div", { title: `超过 ${a} 分钟没有输出` }, [t[15] ||= K("dt", null, "可能卡住", -1), K("dd", { class: M(Me.value.stalled ? "is-warn" : "is-zero") }, [(U(), W("span", {
54599
- key: Me.value.stalled,
54695
+ }, P(Ue.value.failed), 1))], 2)]),
54696
+ K("div", { title: `超过 ${a} 分钟没有输出` }, [t[17] ||= K("dt", null, "可能卡住", -1), K("dd", { class: M(Ue.value.stalled ? "is-warn" : "is-zero") }, [(U(), W("span", {
54697
+ key: Ue.value.stalled,
54600
54698
  class: "wf-roll"
54601
- }, P(Me.value.stalled), 1))], 2)], 8, s0),
54602
- K("div", { title: _e.value.folds.length ? `已折叠 ${_e.value.folds.length} 段超过 ${I(M1) / 6e4} 分钟的空闲` : void 0 }, [t[16] ||= K("dt", null, "有效时长", -1), K("dd", null, P(I(P1)(_e.value.busy_ms)), 1)], 8, c0),
54603
- K("div", l0, [t[18] ||= K("dt", null, "工具与命令", -1), K("dd", { class: M({ "is-zero": !Me.value.tool_segments }) }, [(U(), W("span", {
54604
- key: Me.value.tool_segments,
54699
+ }, P(Ue.value.stalled), 1))], 2)], 8, f0),
54700
+ K("div", { title: we.value.folds.length ? `已折叠 ${we.value.folds.length} 段超过 ${I(M1) / 6e4} 分钟的空闲` : void 0 }, [t[18] ||= K("dt", null, "有效时长", -1), K("dd", null, P(I(P1)(we.value.busy_ms)), 1)], 8, p0),
54701
+ K("div", m0, [t[20] ||= K("dt", null, "工具与命令", -1), K("dd", { class: M({ "is-zero": !Ue.value.tool_segments }) }, [(U(), W("span", {
54702
+ key: Ue.value.tool_segments,
54605
54703
  class: "wf-roll"
54606
- }, P(Me.value.tool_segments), 1)), t[17] ||= J(" 段", -1)], 2)])
54704
+ }, P(Ue.value.tool_segments), 1)), t[19] ||= J(" 段", -1)], 2)])
54607
54705
  ]),
54608
- K("ul", u0, [
54609
- (U(!0), W(H, null, B(Ie.value, ([e, t]) => (U(), W("li", { key: e }, [K("i", { class: M(["wf-swatch", `is-${e}`]) }, null, 2), J(P(t), 1)]))), 128)),
54610
- Re.value.size > 1 ? (U(), W("li", d0, "颜色区分成员,深浅区分模型与工具")) : Y("", !0),
54611
- Le.value ? (U(), W("li", f0, "这些执行都没有阶段明细:发生在接入程序上报阶段之前,或来自手动接入、在线 AI、Codex App")) : Y("", !0)
54706
+ K("ul", h0, [
54707
+ (U(!0), W(H, null, B(qe.value, ([e, t]) => (U(), W("li", { key: e }, [K("i", { class: M(["wf-swatch", `is-${e}`]) }, null, 2), J(P(t), 1)]))), 128)),
54708
+ Ye.value.size > 1 ? (U(), W("li", g0, "颜色区分成员,深浅区分模型与工具")) : Y("", !0),
54709
+ Je.value ? (U(), W("li", _0, "这些执行都没有阶段明细:发生在接入程序上报阶段之前,或来自手动接入、在线 AI、Codex App")) : Y("", !0)
54612
54710
  ]),
54613
54711
  K("div", {
54614
- class: "wf-grid",
54712
+ class: M(["wf-grid", {
54713
+ "is-zoomed": De.value,
54714
+ "is-panning": I(ne)
54715
+ }]),
54615
54716
  role: "list",
54616
- style: fe({ "--wf-depth-px": `${p2}px` })
54717
+ style: fe({ "--wf-depth-px": `${x2}px` }),
54718
+ onWheel: ie,
54719
+ onMousedown: se,
54720
+ onPointerdown: j,
54721
+ onPointermove: ae,
54722
+ onPointerup: oe,
54723
+ onPointercancel: oe
54617
54724
  }, [
54618
- K("div", p0, [K("span", null, "执行 · " + P(ge.value.length) + "/" + P(he.value.length), 1), Ne.value.length ? (U(), W("span", m0, [K("button", {
54619
- type: "button",
54620
- class: "wf-text-button",
54621
- onClick: t[1] ||= (e) => g.value = /* @__PURE__ */ new Set()
54622
- }, "展开全部"), K("button", {
54623
- type: "button",
54624
- class: "wf-text-button",
54625
- onClick: t[2] ||= (e) => g.value = new Set(Ne.value)
54626
- }, "收起全部")])) : Y("", !0)]),
54725
+ K("div", v0, [
54726
+ K("span", null, "执行 · " + P(Se.value.length) + "/" + P(xe.value.length), 1),
54727
+ De.value ? (U(), W("span", y0, [J("放大 " + P((1 / Ee.value.span).toFixed(1)) + "×", 1), K("button", {
54728
+ type: "button",
54729
+ class: "wf-text-button",
54730
+ onClick: t[1] ||= (e) => Ee.value = Te
54731
+ }, "重置")])) : (U(), W("span", b0, "Ctrl + 滚轮缩放")),
54732
+ We.value.length ? (U(), W("span", x0, [K("button", {
54733
+ type: "button",
54734
+ class: "wf-text-button",
54735
+ onClick: t[2] ||= (e) => g.value = /* @__PURE__ */ new Set()
54736
+ }, "展开全部"), K("button", {
54737
+ type: "button",
54738
+ class: "wf-text-button",
54739
+ onClick: t[3] ||= (e) => g.value = new Set(We.value)
54740
+ }, "收起全部")])) : Y("", !0)
54741
+ ]),
54627
54742
  K("div", {
54628
54743
  ref_key: "axis_element",
54629
54744
  ref: c,
54630
54745
  class: "wf-axis",
54631
- "aria-hidden": "true"
54746
+ "aria-hidden": "true",
54747
+ onDblclick: t[4] ||= (e) => Ee.value = Te
54632
54748
  }, [
54633
- (U(!0), W(H, null, B(ze.value, (e) => (U(), W("span", {
54749
+ (U(!0), W(H, null, B(Ze.value, (e) => (U(), W("span", {
54634
54750
  key: e.at,
54635
54751
  class: "wf-tick",
54636
54752
  style: fe({ left: `${e.x * 100}%` })
54637
- }, P(Ye(e)), 5))), 128)),
54638
- (U(!0), W(H, null, B(_e.value.folds, (e) => (U(), W("span", {
54753
+ }, P(st(e)), 5))), 128)),
54754
+ (U(!0), W(H, null, B(Xe.value, (e) => (U(), W("span", {
54639
54755
  key: `fold-${e.start}`,
54640
54756
  class: "wf-fold-label",
54641
- style: fe({ left: `${(e.from + e.width / 2) * 100}%` }),
54642
- title: `${Je(e.start)} – ${Je(e.end)} 没有执行,已折叠`
54643
- }, "⋯ " + P(I(P1)(e.end - e.start)), 13, h0))), 128)),
54644
- ve.value === null ? Y("", !0) : (U(), W("span", {
54757
+ style: fe({ left: `${e.middle * 100}%` }),
54758
+ title: `${ot(e.start)} – ${ot(e.end)} 没有执行,已折叠`
54759
+ }, "⋯ " + P(I(P1)(e.end - e.start)), 13, S0))), 128)),
54760
+ ke.value === null ? Y("", !0) : (U(), W("span", {
54645
54761
  key: 0,
54646
54762
  class: "wf-cursor-head",
54647
- style: fe({ left: `${ve.value * 100}%` })
54763
+ style: fe({ left: `${ke.value * 100}%` })
54648
54764
  }, null, 4))
54649
- ], 512),
54650
- t[20] ||= K("span", { class: "wf-axis-end" }, "用时", -1),
54651
- (U(!0), W(H, null, B(ge.value, (e) => (U(), W("div", {
54765
+ ], 544),
54766
+ t[22] ||= K("span", { class: "wf-axis-end" }, "用时", -1),
54767
+ (U(!0), W(H, null, B(Se.value, (e) => (U(), W("div", {
54652
54768
  key: e.key,
54653
54769
  role: "listitem",
54654
54770
  class: M(["wf-row", [`is-${e.item.state}`, {
54655
54771
  "is-open": y.value === e.key,
54656
- "is-entering": De.value.has(e.key)
54772
+ "is-entering": Re.value.has(e.key)
54657
54773
  }]])
54658
54774
  }, [
54659
54775
  K("div", {
54660
54776
  class: "wf-label",
54661
54777
  style: fe({ "--depth": e.depth })
54662
54778
  }, [
54663
- e.depth ? (U(), W("span", g0)) : Y("", !0),
54779
+ e.depth ? (U(), W("span", C0)) : Y("", !0),
54664
54780
  e.has_children ? (U(), W("button", {
54665
54781
  key: 1,
54666
54782
  type: "button",
54667
54783
  class: M(["wf-toggle", { "is-open": !g.value.has(e.key) }]),
54668
54784
  "aria-expanded": !g.value.has(e.key),
54669
54785
  "aria-label": `${g.value.has(e.key) ? "展开" : "收起"} ${I(i).display_name(e.item.member)} 派出的执行`,
54670
- onClick: (t) => Ve(e.key)
54671
- }, [q(r, { name: "i-lucide-chevron-right" })], 10, _0)) : (U(), W("span", v0)),
54786
+ onClick: (t) => $e(e.key)
54787
+ }, [q(r, { name: "i-lucide-chevron-right" })], 10, w0)) : (U(), W("span", T0)),
54672
54788
  q(s, {
54673
54789
  src: I(i).identities[e.item.member]?.icon,
54674
54790
  text: I(i).identities[e.item.member]?.initials,
@@ -54685,37 +54801,37 @@ var Q1 = {
54685
54801
  type: "button",
54686
54802
  class: "wf-names",
54687
54803
  "aria-expanded": y.value === e.key,
54688
- onClick: (t) => Be(e, t),
54689
- onMouseenter: (t) => Qe(t, e, {
54804
+ onClick: (t) => Qe(e, t),
54805
+ onMouseenter: (t) => ut(t, e, {
54690
54806
  label: I(j1)[e.item.state],
54691
54807
  start: e.start,
54692
54808
  end: e.end,
54693
- text: Ge(e).text,
54809
+ text: rt(e).text,
54694
54810
  live: e.item.state === "running"
54695
54811
  }),
54696
- onMouseleave: (t) => et(e)
54697
- }, [K("span", b0, [
54698
- e.item.state === "running" ? (U(), W("i", x0)) : Y("", !0),
54812
+ onMouseleave: (t) => ft(e)
54813
+ }, [K("span", D0, [
54814
+ e.item.state === "running" ? (U(), W("i", O0)) : Y("", !0),
54699
54815
  K("strong", null, P(I(i).display_name(e.item.member)), 1),
54700
- (U(!0), W(H, null, B(We(e), (e) => (U(), W("em", {
54816
+ (U(!0), W(H, null, B(nt(e), (e) => (U(), W("em", {
54701
54817
  key: e,
54702
54818
  class: "wf-pill is-role"
54703
54819
  }, P(e), 1))), 128)),
54704
- Me.value.slowest?.row === e.key ? (U(), W("em", S0, "最慢")) : Y("", !0)
54705
- ]), K("span", { class: M(["wf-status", `is-${Ge(e).tone}`]) }, [Ge(e).tone === "live" ? (U(), W("i", C0)) : Y("", !0), J(P(Ge(e).text), 1)], 2)], 40, y0)
54820
+ Ue.value.slowest?.row === e.key ? (U(), W("em", k0, "最慢")) : Y("", !0)
54821
+ ]), K("span", { class: M(["wf-status", `is-${rt(e).tone}`]) }, [rt(e).tone === "live" ? (U(), W("i", A0)) : Y("", !0), J(P(rt(e).text), 1)], 2)], 40, E0)
54706
54822
  ], 4),
54707
54823
  K("div", {
54708
54824
  class: "wf-lane",
54709
54825
  role: "img",
54710
- "aria-label": Ke(e),
54711
- onMouseleave: (t) => et(e)
54712
- }, [K("div", T0, [
54713
- (U(!0), W(H, null, B(ze.value, (e) => (U(), W("i", {
54826
+ "aria-label": it(e),
54827
+ onMouseleave: (t) => ft(e)
54828
+ }, [K("div", M0, [
54829
+ (U(!0), W(H, null, B(Ze.value, (e) => (U(), W("i", {
54714
54830
  key: e.at,
54715
54831
  class: "wf-gridline",
54716
54832
  style: fe({ left: `${e.x * 100}%` })
54717
54833
  }, null, 4))), 128)),
54718
- (U(!0), W(H, null, B(_e.value.folds, (e) => (U(), W("i", {
54834
+ (U(!0), W(H, null, B(Oe.value.folds, (e) => (U(), W("i", {
54719
54835
  key: e.start,
54720
54836
  class: "wf-fold",
54721
54837
  style: fe({
@@ -54723,195 +54839,195 @@ var Q1 = {
54723
54839
  width: `${e.width * 100}%`
54724
54840
  })
54725
54841
  }, null, 4))), 128)),
54726
- t[19] ||= K("i", { class: "wf-well" }, null, -1),
54727
- (U(!0), W(H, null, B(Ae.value.get(e.key) || [], (e, t) => (U(), W("i", {
54842
+ t[21] ||= K("i", { class: "wf-well" }, null, -1),
54843
+ (U(!0), W(H, null, B(Ve.value.get(e.key) || [], (e, t) => (U(), W("i", {
54728
54844
  key: `link-${t}`,
54729
54845
  class: M(["wf-link", `is-${e.part}`]),
54730
- "data-tone": Re.value.get(e.member),
54846
+ "data-tone": Ye.value.get(e.member),
54731
54847
  style: fe({ left: `${e.x * 100}%` })
54732
- }, null, 14, E0))), 128)),
54733
- ve.value === null ? Y("", !0) : (U(), W("i", {
54848
+ }, null, 14, N0))), 128)),
54849
+ ke.value === null ? Y("", !0) : (U(), W("i", {
54734
54850
  key: 0,
54735
54851
  class: "wf-cursor",
54736
- style: fe({ left: `${ve.value * 100}%` })
54852
+ style: fe({ left: `${ke.value * 100}%` })
54737
54853
  }, null, 4)),
54738
54854
  K("i", {
54739
54855
  class: "wf-bar is-queue",
54740
- style: fe(He(...e.queue)),
54741
- onMouseenter: (t) => Qe(t, e, {
54856
+ style: fe(et(...e.queue)),
54857
+ onMouseenter: (t) => ut(t, e, {
54742
54858
  label: "排队",
54743
54859
  start: e.queue[0],
54744
54860
  end: e.queue[1]
54745
54861
  }),
54746
- onClick: (t) => $e(t, e, {
54862
+ onClick: (t) => dt(t, e, {
54747
54863
  label: "排队",
54748
54864
  start: e.queue[0],
54749
54865
  end: e.queue[1]
54750
54866
  })
54751
- }, null, 44, D0),
54867
+ }, null, 44, P0),
54752
54868
  e.wake ? (U(), W("i", {
54753
54869
  key: 1,
54754
54870
  class: "wf-bar is-wake",
54755
- style: fe(He(...e.wake)),
54756
- onMouseenter: (t) => Qe(t, e, {
54871
+ style: fe(et(...e.wake)),
54872
+ onMouseenter: (t) => ut(t, e, {
54757
54873
  label: e.wake_approx ? "唤醒(约)" : "唤醒",
54758
54874
  start: e.wake[0],
54759
54875
  end: e.wake[1]
54760
54876
  }),
54761
- onClick: (t) => $e(t, e, {
54877
+ onClick: (t) => dt(t, e, {
54762
54878
  label: e.wake_approx ? "唤醒(约)" : "唤醒",
54763
54879
  start: e.wake[0],
54764
54880
  end: e.wake[1]
54765
54881
  })
54766
- }, null, 44, O0)) : Y("", !0),
54882
+ }, null, 44, F0)) : Y("", !0),
54767
54883
  e.work ? (U(), W("i", {
54768
54884
  key: 2,
54769
54885
  class: M(["wf-bar is-work", { "has-detail": e.segments.length }]),
54770
- "data-tone": e.segments.length ? void 0 : Re.value.get(e.item.member),
54771
- style: fe(He(...e.work)),
54772
- onMouseenter: (t) => Qe(t, e, {
54886
+ "data-tone": e.segments.length ? void 0 : Ye.value.get(e.item.member),
54887
+ style: fe(et(...e.work)),
54888
+ onMouseenter: (t) => ut(t, e, {
54773
54889
  label: e.segments.length ? "执行" : "执行 · 无阶段明细",
54774
54890
  start: e.work[0],
54775
54891
  end: e.work[1],
54776
54892
  live: e.item.state === "running"
54777
54893
  }),
54778
- onClick: (t) => $e(t, e, {
54894
+ onClick: (t) => dt(t, e, {
54779
54895
  label: e.segments.length ? "执行" : "执行 · 无阶段明细",
54780
54896
  start: e.work[0],
54781
54897
  end: e.work[1],
54782
54898
  live: e.item.state === "running"
54783
54899
  })
54784
- }, null, 46, k0)) : Y("", !0),
54900
+ }, null, 46, I0)) : Y("", !0),
54785
54901
  (U(!0), W(H, null, B(e.segments, (t) => (U(), W(H, { key: t.start + t.phase }, [K("i", {
54786
54902
  class: M(["wf-bar wf-seg", [`is-${I(A1)[t.phase]}`, { "is-live": t.live }]]),
54787
- "data-tone": Re.value.get(e.item.member),
54788
- style: fe(He(t.start, t.seen, !0)),
54789
- onMouseenter: (n) => Qe(n, e, {
54903
+ "data-tone": Ye.value.get(e.item.member),
54904
+ style: fe(et(t.start, t.seen, !0)),
54905
+ onMouseenter: (n) => ut(n, e, {
54790
54906
  kind: "segment",
54791
54907
  ...t
54792
54908
  }),
54793
- onClick: (n) => $e(n, e, {
54909
+ onClick: (n) => dt(n, e, {
54794
54910
  kind: "segment",
54795
54911
  ...t
54796
54912
  })
54797
- }, null, 46, A0), t.end > t.seen ? (U(), W("i", {
54913
+ }, null, 46, L0), t.end > t.seen ? (U(), W("i", {
54798
54914
  key: 0,
54799
54915
  class: M(["wf-bar wf-seg is-tail", `is-${I(A1)[t.phase]}`]),
54800
- "data-tone": Re.value.get(e.item.member),
54801
- style: fe(He(t.seen, t.end)),
54802
- onMouseenter: (n) => Qe(n, e, {
54916
+ "data-tone": Ye.value.get(e.item.member),
54917
+ style: fe(et(t.seen, t.end)),
54918
+ onMouseenter: (n) => ut(n, e, {
54803
54919
  kind: "segment",
54804
54920
  ...t
54805
54921
  }),
54806
- onClick: (n) => $e(n, e, {
54922
+ onClick: (n) => dt(n, e, {
54807
54923
  kind: "segment",
54808
54924
  ...t
54809
54925
  })
54810
- }, null, 46, j0)) : Y("", !0)], 64))), 128)),
54926
+ }, null, 46, R0)) : Y("", !0)], 64))), 128)),
54811
54927
  (U(!0), W(H, null, B(e.notes, (t) => (U(), W("button", {
54812
54928
  key: `note-${t.index}`,
54813
54929
  type: "button",
54814
54930
  class: "wf-note",
54815
- style: fe({ left: `${_e.value.x(t.at) * 100}%` }),
54816
- "aria-label": `${I(i).display_name(e.item.member)} 的第 ${t.index + 1} 段过程说明,${Je(t.at)}`,
54817
- onMouseenter: (n) => Qe(n, e, {
54931
+ style: fe({ left: `${Oe.value.x(t.at) * 100}%` }),
54932
+ "aria-label": `${I(i).display_name(e.item.member)} 的第 ${t.index + 1} 段过程说明,${ot(t.at)}`,
54933
+ onMouseenter: (n) => ut(n, e, {
54818
54934
  note: t,
54819
54935
  start: t.at,
54820
54936
  end: t.at
54821
54937
  }),
54822
- onClick: (n) => $e(n, e, {
54938
+ onClick: (n) => dt(n, e, {
54823
54939
  note: t,
54824
54940
  start: t.at,
54825
54941
  end: t.at
54826
54942
  }),
54827
- onFocus: (n) => Qe(n, e, {
54943
+ onFocus: (n) => ut(n, e, {
54828
54944
  note: t,
54829
54945
  start: t.at,
54830
54946
  end: t.at
54831
54947
  }),
54832
- onBlur: (t) => et(e)
54833
- }, null, 44, M0))), 128))
54834
- ])], 40, w0),
54835
- K("span", N0, [
54948
+ onBlur: (t) => ft(e)
54949
+ }, null, 44, z0))), 128))
54950
+ ])], 40, j0),
54951
+ K("span", B0, [
54836
54952
  J(P(I(P1)(e.end - e.start)) + P(e.wake_approx && e.wake ? "~" : ""), 1),
54837
54953
  e.item.state === "done" ? Y("", !0) : (U(), W("small", {
54838
54954
  key: 0,
54839
54955
  class: M(`is-${e.item.state}`)
54840
54956
  }, P(I(j1)[e.item.state]), 3)),
54841
- e.truncated ? (U(), W("small", P0, "明细已截断")) : Y("", !0)
54957
+ e.truncated ? (U(), W("small", V0, "明细已截断")) : Y("", !0)
54842
54958
  ])
54843
54959
  ], 2))), 128))
54844
- ], 4),
54845
- Pe.value && b.value ? (U(), W("div", {
54960
+ ], 38),
54961
+ Ge.value && b.value ? (U(), W("div", {
54846
54962
  key: 0,
54847
54963
  class: "wf-detail",
54848
54964
  role: "dialog",
54849
- "aria-label": `${I(i).display_name(Pe.value.item.member)} 的这次执行`,
54965
+ "aria-label": `${I(i).display_name(Ge.value.item.member)} 的这次执行`,
54850
54966
  style: fe({
54851
54967
  top: `${b.value.top}px`,
54852
54968
  left: `${b.value.left}px`
54853
54969
  })
54854
54970
  }, [
54855
- K("header", I0, [
54856
- K("strong", null, P(I(i).display_name(Pe.value.item.member)), 1),
54857
- K("small", null, P(Ue(Pe.value)) + " · " + P(I(j1)[Pe.value.item.state]) + " · " + P(I(P1)(Pe.value.end - Pe.value.start)), 1),
54971
+ K("header", U0, [
54972
+ K("strong", null, P(I(i).display_name(Ge.value.item.member)), 1),
54973
+ K("small", null, P(tt(Ge.value)) + " · " + P(I(j1)[Ge.value.item.state]) + " · " + P(I(P1)(Ge.value.end - Ge.value.start)), 1),
54858
54974
  K("button", {
54859
54975
  type: "button",
54860
54976
  class: "wf-card-close",
54861
54977
  "aria-label": "关闭",
54862
- onClick: t[3] ||= (e) => y.value = ""
54978
+ onClick: t[5] ||= (e) => y.value = ""
54863
54979
  }, [q(r, { name: "i-lucide-x" })])
54864
54980
  ]),
54865
54981
  K("dl", null, [
54866
- Pe.value.item.task ? (U(), W("div", L0, [t[21] ||= K("dt", null, "任务", -1), K("dd", null, [J(P(Pe.value.item.task), 1), Pe.value.item.task_id ? (U(), W("button", {
54982
+ Ge.value.item.task ? (U(), W("div", W0, [t[23] ||= K("dt", null, "任务", -1), K("dd", null, [J(P(Ge.value.item.task), 1), Ge.value.item.task_id ? (U(), W("button", {
54867
54983
  key: 0,
54868
54984
  type: "button",
54869
54985
  class: "subtle-link",
54870
- onClick: t[4] ||= (e) => n("detail", Pe.value.item.task_id)
54871
- }, "#" + P(Pe.value.item.task_id), 1)) : Y("", !0)])])) : Y("", !0),
54872
- Pe.value.item.state === "failed" ? (U(), W("div", R0, [t[22] ||= K("dt", null, "失败原因", -1), K("dd", z0, P(Pe.value.item.reason || "执行失败"), 1)])) : Pe.value.item.result || Pe.value.item.answer_id ? (U(), W("div", B0, [t[23] ||= K("dt", null, "结果", -1), K("dd", null, [J(P(Pe.value.item.result), 1), Pe.value.item.answer_id ? (U(), W("button", {
54986
+ onClick: t[6] ||= (e) => n("detail", Ge.value.item.task_id)
54987
+ }, "#" + P(Ge.value.item.task_id), 1)) : Y("", !0)])])) : Y("", !0),
54988
+ Ge.value.item.state === "failed" ? (U(), W("div", G0, [t[24] ||= K("dt", null, "失败原因", -1), K("dd", K0, P(Ge.value.item.reason || "执行失败"), 1)])) : Ge.value.item.result || Ge.value.item.answer_id ? (U(), W("div", q0, [t[25] ||= K("dt", null, "结果", -1), K("dd", null, [J(P(Ge.value.item.result), 1), Ge.value.item.answer_id ? (U(), W("button", {
54873
54989
  key: 0,
54874
54990
  type: "button",
54875
54991
  class: "subtle-link",
54876
- onClick: t[5] ||= (e) => n("detail", Pe.value.item.answer_id)
54877
- }, "在消息中查看 #" + P(Pe.value.item.answer_id), 1)) : Y("", !0)])])) : Y("", !0),
54878
- Pe.value.item.changes ? (U(), W("div", V0, [t[24] ||= K("dt", null, "改动", -1), K("dd", null, P(Pe.value.item.changes) + " 个文件", 1)])) : Y("", !0)
54992
+ onClick: t[7] ||= (e) => n("detail", Ge.value.item.answer_id)
54993
+ }, "在消息中查看 #" + P(Ge.value.item.answer_id), 1)) : Y("", !0)])])) : Y("", !0),
54994
+ Ge.value.item.changes ? (U(), W("div", J0, [t[26] ||= K("dt", null, "改动", -1), K("dd", null, P(Ge.value.item.changes) + " 个文件", 1)])) : Y("", !0)
54879
54995
  ]),
54880
- Fe.value.length ? (U(), W("ol", H0, [(U(!0), W(H, null, B(Fe.value, (e) => (U(), W("li", {
54996
+ Ke.value.length ? (U(), W("ol", Y0, [(U(!0), W(H, null, B(Ke.value, (e) => (U(), W("li", {
54881
54997
  key: `${e.kind}-${e.at}-${e.phase || ""}`,
54882
54998
  class: M(`log-${e.kind}`)
54883
- }, [K("time", null, P(Je(e.at)), 1), e.kind === "phase" ? (U(), W(H, { key: 0 }, [K("i", {
54999
+ }, [K("time", null, P(ot(e.at)), 1), e.kind === "phase" ? (U(), W(H, { key: 0 }, [K("i", {
54884
55000
  class: M(["wf-swatch", `is-${I(A1)[e.phase]}`]),
54885
- "data-tone": Re.value.get(Pe.value.item.member),
55001
+ "data-tone": Ye.value.get(Ge.value.item.member),
54886
55002
  "aria-hidden": "true"
54887
- }, null, 10, U0), K("span", null, [
55003
+ }, null, 10, X0), K("span", null, [
54888
55004
  J(P(I(k1)[e.phase]), 1),
54889
55005
  e.tool ? (U(), W(H, { key: 0 }, [J(" · " + P(e.tool), 1)], 64)) : Y("", !0),
54890
55006
  J(" · " + P(e.live ? "进行中" : I(P1)(e.duration)), 1)
54891
- ])], 64)) : (U(), W("span", W0, P(e.text), 1))], 2))), 128))])) : (U(), W("p", G0, "这次执行没有阶段明细或过程说明。"))
54892
- ], 12, F0)) : Y("", !0),
54893
- ae.value === y2 ? Y("", !0) : (U(), W("div", K0, [ue.value ? (U(), W(H, { key: 0 }, [t[25] ||= K("span", { class: "wf-state is-live" }, "实时", -1), t[26] ||= K("span", { class: "wf-player-note" }, "这一轮结束后可以回放", -1)], 64)) : (U(), W(H, { key: 1 }, [
55007
+ ])], 64)) : (U(), W("span", Z0, P(e.text), 1))], 2))), 128))])) : (U(), W("p", Q0, "这次执行没有阶段明细或过程说明。"))
55008
+ ], 12, H0)) : Y("", !0),
55009
+ pe.value === O2 ? (U(), W("div", $0, [...t[27] ||= [K("span", { class: "wf-player-note" }, "回放按轮进行:在上方选一轮即可回放", -1)]])) : (U(), W("div", e2, [_e.value ? (U(), W(H, { key: 0 }, [t[28] ||= K("span", { class: "wf-state is-live" }, "实时", -1), t[29] ||= K("span", { class: "wf-player-note" }, "这一轮结束后可以回放", -1)], 64)) : (U(), W(H, { key: 1 }, [
54894
55010
  K("button", {
54895
55011
  type: "button",
54896
55012
  class: "wf-player-button",
54897
55013
  "aria-label": k.playing ? "暂停回放" : "回放这一轮",
54898
- onClick: t[6] ||= (e) => k.playing ? we() : Se()
54899
- }, [q(r, { name: k.playing ? "i-lucide-pause" : "i-lucide-play" }, null, 8, ["name"])], 8, q0),
55014
+ onClick: t[8] ||= (e) => k.playing ? Fe() : Ne()
55015
+ }, [q(r, { name: k.playing ? "i-lucide-pause" : "i-lucide-play" }, null, 8, ["name"])], 8, t2),
54900
55016
  K("button", {
54901
55017
  type: "button",
54902
55018
  class: "wf-player-button",
54903
55019
  "aria-label": "从头回放",
54904
- disabled: !pe.value,
54905
- onClick: Te
54906
- }, [q(r, { name: "i-lucide-rotate-ccw" })], 8, J0),
55020
+ disabled: !ye.value,
55021
+ onClick: Ie
55022
+ }, [q(r, { name: "i-lucide-rotate-ccw" })], 8, n2),
54907
55023
  vr(K("select", {
54908
- "onUpdate:modelValue": t[7] ||= (e) => k.speed = e,
55024
+ "onUpdate:modelValue": t[9] ||= (e) => k.speed = e,
54909
55025
  class: "wf-speed",
54910
55026
  "aria-label": "回放速度"
54911
- }, [K("option", Y0, "自动 · " + P(Math.round(ye.value)) + "×", 1), (U(), W(H, null, B(o, (e) => K("option", {
55027
+ }, [K("option", r2, "自动 · " + P(Math.round(Ae.value)) + "×", 1), (U(), W(H, null, B(o, (e) => K("option", {
54912
55028
  key: e,
54913
55029
  value: e
54914
- }, P(e) + "×", 9, X0)), 64))], 512), [[
55030
+ }, P(e) + "×", 9, i2)), 64))], 512), [[
54915
55031
  $l,
54916
55032
  k.speed,
54917
55033
  void 0,
@@ -54921,18 +55037,18 @@ var Q1 = {
54921
55037
  type: "range",
54922
55038
  class: "wf-scrub",
54923
55039
  min: "0",
54924
- max: de.value.duration,
55040
+ max: ve.value.duration,
54925
55041
  step: "100",
54926
- value: pe.value ? k.position : de.value.duration,
55042
+ value: ye.value ? k.position : ve.value.duration,
54927
55043
  "aria-label": "回放位置",
54928
- onInput: Ee
54929
- }, null, 40, Z0),
54930
- K("span", Q0, P(I(P1)(pe.value ? k.position : de.value.duration)) + " / " + P(I(P1)(de.value.duration)), 1)
55044
+ onInput: Le
55045
+ }, null, 40, a2),
55046
+ K("span", o2, P(I(P1)(ye.value ? k.position : ve.value.duration)) + " / " + P(I(P1)(ve.value.duration)), 1)
54931
55047
  ], 64))])),
54932
- _e.value.folds.length || te.value.executions.length >= te.value.execution_limit ? (U(), W("footer", $0, [_e.value.folds.length ? (U(), W("span", e2, [t[27] ||= K("i", {
55048
+ we.value.folds.length || te.value.executions.length >= te.value.execution_limit ? (U(), W("footer", s2, [we.value.folds.length ? (U(), W("span", c2, [t[30] ||= K("i", {
54933
55049
  class: "wf-swatch is-fold",
54934
55050
  "aria-hidden": "true"
54935
- }, null, -1), J("已折叠 " + P(_e.value.folds.length) + " 段超过 " + P(I(M1) / 6e4) + " 分钟的空闲", 1)])) : Y("", !0), te.value.executions.length >= te.value.execution_limit ? (U(), W("span", t2, "只列出最近 " + P(te.value.execution_limit) + " 次讨论执行与 " + P(te.value.execution_limit) + " 次协作执行", 1)) : Y("", !0)])) : Y("", !0)
55051
+ }, null, -1), J("已折叠 " + P(we.value.folds.length) + " 段超过 " + P(I(M1) / 6e4) + " 分钟的空闲", 1)])) : Y("", !0), te.value.executions.length >= te.value.execution_limit ? (U(), W("span", l2, "只列出最近 " + P(te.value.execution_limit) + " 次讨论执行与 " + P(te.value.execution_limit) + " 次协作执行", 1)) : Y("", !0)])) : Y("", !0)
54936
55052
  ], 512)) : Y("", !0),
54937
55053
  v.value ? (U(), W("div", {
54938
55054
  key: 3,
@@ -54943,88 +55059,88 @@ var Q1 = {
54943
55059
  top: `${v.value.top}px`
54944
55060
  })
54945
55061
  }, [
54946
- K("strong", null, P(I(i).display_name(v.value.row.item.member)) + " · " + P(tt.value), 1),
55062
+ K("strong", null, P(I(i).display_name(v.value.row.item.member)) + " · " + P(pt.value), 1),
54947
55063
  v.value.pinned ? (U(), W("button", {
54948
55064
  key: 0,
54949
55065
  type: "button",
54950
55066
  class: "wf-card-close",
54951
55067
  "aria-label": "关闭",
54952
- onClick: t[8] ||= (e) => v.value = null
55068
+ onClick: t[10] ||= (e) => v.value = null
54953
55069
  }, [q(r, { name: "i-lucide-x" })])) : Y("", !0),
54954
- K("small", null, [J(P(Je(v.value.piece.start)), 1), v.value.piece.end > v.value.piece.start ? (U(), W(H, { key: 0 }, [J(" – " + P(v.value.piece.live ? "现在" : Je(v.value.piece.end)), 1)], 64)) : Y("", !0)]),
54955
- v.value.piece.text ? (U(), W("p", r2, P(v.value.piece.text), 1)) : v.value.row.item.reason ? (U(), W("p", i2, P(v.value.row.item.reason), 1)) : Y("", !0),
54956
- nt.value.length ? (U(), W(H, { key: 3 }, [K("small", a2, P(v.value.related.earlier ? "此前的过程说明" : "过程说明"), 1), K("ol", null, [(U(!0), W(H, null, B(nt.value, (e) => (U(), W("li", { key: e.at + e.text }, [K("time", null, P(Je(e.at)), 1), J(P(e.text), 1)]))), 128))])], 64)) : Y("", !0)
54957
- ], 14, n2)) : Y("", !0)
55070
+ K("small", null, [J(P(ot(v.value.piece.start)), 1), v.value.piece.end > v.value.piece.start ? (U(), W(H, { key: 0 }, [J(" – " + P(v.value.piece.live ? "现在" : ot(v.value.piece.end)), 1)], 64)) : Y("", !0)]),
55071
+ v.value.piece.text ? (U(), W("p", d2, P(v.value.piece.text), 1)) : v.value.row.item.reason ? (U(), W("p", f2, P(v.value.row.item.reason), 1)) : Y("", !0),
55072
+ mt.value.length ? (U(), W(H, { key: 3 }, [K("small", p2, P(v.value.related.earlier ? "此前的过程说明" : "过程说明"), 1), K("ol", null, [(U(!0), W(H, null, B(mt.value, (e) => (U(), W("li", { key: e.at + e.text }, [K("time", null, P(ot(e.at)), 1), J(P(e.text), 1)]))), 128))])], 64)) : Y("", !0)
55073
+ ], 14, u2)) : Y("", !0)
54958
55074
  ]);
54959
55075
  };
54960
55076
  }
54961
- }, [["__scopeId", "data-v-b47051ac"]]), w2 = {
55077
+ }, [["__scopeId", "data-v-1ec09eeb"]]), N2 = {
54962
55078
  id: "channel-sidebar",
54963
55079
  class: "channel-sidebar",
54964
55080
  "aria-label": "房间导航"
54965
- }, T2 = { class: "channel-sidebar-content" }, E2 = { class: "channel-directory-heading channel-tools-heading" }, D2 = ["aria-expanded"], O2 = { class: "channel-sidebar-footer" }, k2 = ["aria-label"], A2 = { class: "channel-self" }, j2 = ["title"], M2 = [
55081
+ }, P2 = { class: "channel-sidebar-content" }, F2 = { class: "channel-directory-heading channel-tools-heading" }, I2 = ["aria-expanded"], L2 = { class: "channel-sidebar-footer" }, R2 = ["aria-label"], z2 = { class: "channel-self" }, B2 = ["title"], V2 = [
54966
55082
  "aria-valuemax",
54967
55083
  "aria-valuenow",
54968
55084
  "aria-valuetext"
54969
- ], N2 = { class: "channel-main" }, P2 = { class: "channel-header" }, F2 = { class: "channel-title-icon" }, I2 = { class: "channel-title" }, L2 = { class: "channel-title-copy" }, R2 = ["title"], z2 = {
55085
+ ], H2 = { class: "channel-main" }, U2 = { class: "channel-header" }, W2 = { class: "channel-title-icon" }, G2 = { class: "channel-title" }, K2 = { class: "channel-title-copy" }, q2 = ["title"], J2 = {
54970
55086
  key: 0,
54971
55087
  class: "channel-header-context"
54972
- }, B2 = { class: "channel-header-actions" }, V2 = {
55088
+ }, Y2 = { class: "channel-header-actions" }, X2 = {
54973
55089
  key: 0,
54974
55090
  class: "channel-launch-recovery",
54975
55091
  "aria-label": "未完成的创建或启动请求"
54976
- }, H2 = { role: "status" }, U2 = { class: "button-row" }, W2 = {
55092
+ }, Z2 = { role: "status" }, Q2 = { class: "button-row" }, $2 = {
54977
55093
  key: 1,
54978
55094
  class: "channel-tabbar"
54979
- }, G2 = { class: "channel-brief-inner" }, K2 = { class: "channel-brief-heading" }, q2 = ["aria-label", "aria-expanded"], J2 = {
55095
+ }, e4 = { class: "channel-brief-inner" }, t4 = { class: "channel-brief-heading" }, n4 = ["aria-label", "aria-expanded"], r4 = {
54980
55096
  key: 0,
54981
55097
  class: "channel-brief-preview"
54982
- }, Y2 = {
55098
+ }, i4 = {
54983
55099
  id: "channel-brief-content",
54984
55100
  class: "channel-brief-content"
54985
- }, X2 = ["innerHTML"], Z2 = { class: "channel-brief-footer" }, Q2 = { class: "channel-brief-status" }, $2 = { class: "channel-content" }, e4 = {
55101
+ }, a4 = ["innerHTML"], o4 = { class: "channel-brief-footer" }, s4 = { class: "channel-brief-status" }, c4 = { class: "channel-content" }, l4 = {
54986
55102
  key: 0,
54987
55103
  class: "content-page merged-page",
54988
55104
  role: "tabpanel",
54989
55105
  "aria-label": "讨论"
54990
- }, t4 = {
55106
+ }, u4 = {
54991
55107
  key: 1,
54992
55108
  class: "merged-section",
54993
55109
  "aria-label": "当前讨论"
54994
- }, n4 = { class: "page-heading" }, r4 = {
55110
+ }, d4 = { class: "page-heading" }, f4 = {
54995
55111
  key: 0,
54996
55112
  class: "fine-print"
54997
- }, i4 = {
55113
+ }, p4 = {
54998
55114
  class: "merged-section channel-summary",
54999
55115
  "aria-label": "当前共识"
55000
- }, a4 = { class: "page-heading" }, o4 = { class: "form-footer" }, s4 = { class: "button-row" }, c4 = { class: "consensus-card is-brief" }, l4 = ["innerHTML"], u4 = {
55116
+ }, m4 = { class: "page-heading" }, h4 = { class: "form-footer" }, g4 = { class: "button-row" }, _4 = { class: "consensus-card is-brief" }, v4 = ["innerHTML"], y4 = {
55001
55117
  key: 0,
55002
55118
  class: "consensus-card"
55003
- }, d4 = ["innerHTML"], f4 = {
55119
+ }, b4 = ["innerHTML"], x4 = {
55004
55120
  key: 2,
55005
55121
  class: "fine-print"
55006
- }, p4 = {
55122
+ }, S4 = {
55007
55123
  key: 1,
55008
55124
  class: "content-page merged-page",
55009
55125
  role: "tabpanel",
55010
55126
  "aria-label": "房间"
55011
- }, m4 = {
55127
+ }, C4 = {
55012
55128
  key: 2,
55013
55129
  class: "content-page merged-page",
55014
55130
  role: "tabpanel",
55015
55131
  "aria-label": "执行"
55016
- }, h4 = {
55132
+ }, w4 = {
55017
55133
  key: 1,
55018
55134
  class: "channel-empty"
55019
- }, g4 = ["aria-valuenow", "aria-valuetext"], _4 = {
55135
+ }, T4 = ["aria-valuenow", "aria-valuetext"], E4 = {
55020
55136
  key: 2,
55021
55137
  id: "channel-member-rail",
55022
55138
  class: "channel-member-rail",
55023
55139
  "aria-label": "当前焦点与讨论进度"
55024
- }, v4 = { class: "channel-rail-board" }, y4 = {
55140
+ }, D4 = { class: "channel-rail-board" }, O4 = {
55025
55141
  key: 2,
55026
55142
  class: "progress-board is-docked"
55027
- }, b4 = { class: "channel-detail-title" }, x4 = { class: "info-section" }, S4 = "ai-codiscuss-channel-layout", C4 = 220, w4 = 440, T4 = 280, E4 = 16, D4 = 180, O4 = 400, k4 = 248, A4 = 16, j4 = 480, M4 = 1200, N4 = 0, P4 = {
55143
+ }, k4 = { class: "channel-detail-title" }, A4 = { class: "info-section" }, j4 = "ai-codiscuss-channel-layout", M4 = 220, N4 = 440, P4 = 280, F4 = 16, I4 = 180, L4 = 400, R4 = 248, z4 = 16, B4 = 480, V4 = 1200, H4 = 0, U4 = {
55028
55144
  __name: "ChannelWorkspace",
55029
55145
  setup(e) {
55030
55146
  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 = [{
@@ -55046,14 +55162,14 @@ var Q1 = {
55046
55162
  label: "宽",
55047
55163
  width: 1240
55048
55164
  }
55049
- }, b = je(), 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), k = Z(() => T.value >= M4), A = Z(() => t.value.tab === "discussion" && !O.value), ee = Z(() => k.value && t.value.tab === "discussion" ? O.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), te = Z(() => {
55165
+ }, b = je(), 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), k = Z(() => T.value >= V4), A = Z(() => t.value.tab === "discussion" && !O.value), ee = Z(() => k.value && t.value.tab === "discussion" ? O.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), te = Z(() => {
55050
55166
  let e = document.createElement("template");
55051
55167
  return e.innerHTML = o.value?.rendered_brief || "", e.content.textContent.replace(/\s+/g, " ").trim();
55052
- }), ne = /* @__PURE__ */ F(null), re = /* @__PURE__ */ F(0), ie = null, j = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(null), oe = Z(() => Math.min(O4, Math.max(D4, T.value - j4 - N4))), se = Z(() => Math.min(w.value, oe.value)), ce = Z(() => ({
55168
+ }), ne = /* @__PURE__ */ F(null), re = /* @__PURE__ */ F(0), ie = null, j = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(null), oe = Z(() => Math.min(L4, Math.max(I4, T.value - B4 - H4))), se = Z(() => Math.min(w.value, oe.value)), ce = Z(() => ({
55053
55169
  "--channel-reading-width": `${y[x.value].width}px`,
55054
55170
  "--channel-rail-width": `${C.value}px`,
55055
55171
  "--channel-topbar-height": `${re.value}px`,
55056
- "--channel-main-columns": E.value ? "minmax(0, 1fr)" : `${se.value}px ${N4}px minmax(0, 1fr)`
55172
+ "--channel-main-columns": E.value ? "minmax(0, 1fr)" : `${se.value}px ${H4}px minmax(0, 1fr)`
55057
55173
  })), le = Object.entries(y).map(([e, t]) => ({
55058
55174
  value: e,
55059
55175
  label: t.label
@@ -55147,12 +55263,12 @@ var Q1 = {
55147
55263
  }
55148
55264
  function je() {
55149
55265
  try {
55150
- let e = JSON.parse(localStorage.getItem(S4)) || {};
55266
+ let e = JSON.parse(localStorage.getItem(j4)) || {};
55151
55267
  return {
55152
55268
  reading: Object.hasOwn(y, e.reading) ? e.reading : "default",
55153
55269
  effects: e.effects === "reduced" ? "reduced" : "full",
55154
- rail: Number.isFinite(e.rail) ? Math.min(w4, Math.max(C4, e.rail)) : T4,
55155
- nav: Number.isFinite(e.nav) ? Math.min(O4, Math.max(D4, e.nav)) : Me(),
55270
+ rail: Number.isFinite(e.rail) ? Math.min(N4, Math.max(M4, e.rail)) : P4,
55271
+ nav: Number.isFinite(e.nav) ? Math.min(L4, Math.max(I4, e.nav)) : Me(),
55156
55272
  collapsed: e.collapsed === !0,
55157
55273
  brief_collapsed: e.brief_collapsed === !0,
55158
55274
  rail_collapsed: e.rail_collapsed === !0
@@ -55161,7 +55277,7 @@ var Q1 = {
55161
55277
  return {
55162
55278
  reading: "default",
55163
55279
  effects: "full",
55164
- rail: T4,
55280
+ rail: P4,
55165
55281
  nav: Me(),
55166
55282
  collapsed: !1,
55167
55283
  brief_collapsed: !1,
@@ -55170,11 +55286,11 @@ var Q1 = {
55170
55286
  }
55171
55287
  }
55172
55288
  function Me() {
55173
- return typeof window > "u" ? k4 : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : k4;
55289
+ return typeof window > "u" ? R4 : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : R4;
55174
55290
  }
55175
55291
  function Ne() {
55176
55292
  try {
55177
- localStorage.setItem(S4, JSON.stringify({
55293
+ localStorage.setItem(j4, JSON.stringify({
55178
55294
  reading: x.value,
55179
55295
  effects: S.value,
55180
55296
  rail: C.value,
@@ -55205,19 +55321,19 @@ var Q1 = {
55205
55321
  }, e.currentTarget.setPointerCapture(e.pointerId));
55206
55322
  }
55207
55323
  function ze(e) {
55208
- j.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(w4, Math.max(C4, j.value.width + j.value.x - e.clientX))));
55324
+ j.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(N4, Math.max(M4, j.value.width + j.value.x - e.clientX))));
55209
55325
  }
55210
55326
  function Be(e) {
55211
55327
  j.value?.pointer === e.pointerId && (j.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), Ne());
55212
55328
  }
55213
55329
  function Ve(e) {
55214
55330
  let t = {
55215
- ArrowLeft: C.value + E4,
55216
- ArrowRight: C.value - E4,
55217
- Home: C4,
55218
- End: w4
55331
+ ArrowLeft: C.value + F4,
55332
+ ArrowRight: C.value - F4,
55333
+ Home: M4,
55334
+ End: N4
55219
55335
  };
55220
- Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(w4, Math.max(C4, t[e.key])), Ne());
55336
+ Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(N4, Math.max(M4, t[e.key])), Ne());
55221
55337
  }
55222
55338
  function He(e) {
55223
55339
  e.button === 0 && (e.preventDefault(), e.currentTarget.focus(), ae.value = {
@@ -55227,19 +55343,19 @@ var Q1 = {
55227
55343
  }, e.currentTarget.setPointerCapture(e.pointerId));
55228
55344
  }
55229
55345
  function Ue(e) {
55230
- ae.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(oe.value, Math.max(D4, ae.value.width + e.clientX - ae.value.x))));
55346
+ ae.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(oe.value, Math.max(I4, ae.value.width + e.clientX - ae.value.x))));
55231
55347
  }
55232
55348
  function We(e) {
55233
55349
  ae.value?.pointer === e.pointerId && (ae.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), Ne());
55234
55350
  }
55235
55351
  function Ge(e) {
55236
55352
  let t = {
55237
- ArrowLeft: se.value - A4,
55238
- ArrowRight: se.value + A4,
55239
- Home: D4,
55353
+ ArrowLeft: se.value - z4,
55354
+ ArrowRight: se.value + z4,
55355
+ Home: I4,
55240
55356
  End: oe.value
55241
55357
  };
55242
- Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(oe.value, Math.max(D4, t[e.key])), Ne());
55358
+ Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(oe.value, Math.max(I4, t[e.key])), Ne());
55243
55359
  }
55244
55360
  return (e, r) => {
55245
55361
  let y = sA, b = lH, w = pA, T = MA, O = $V, re = WV, ie = YV, pe = KV, N = HV, je = zV, Me = NV, Ne = AV;
@@ -55251,9 +55367,9 @@ var Q1 = {
55251
55367
  }]),
55252
55368
  style: fe(ce.value)
55253
55369
  }, [
55254
- K("aside", w2, [
55370
+ K("aside", N2, [
55255
55371
  r[30] ||= 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),
55256
- K("div", T2, [
55372
+ K("div", P2, [
55257
55373
  q(vZ, {
55258
55374
  onSelect: Te,
55259
55375
  onManage: Ce,
@@ -55263,12 +55379,12 @@ var Q1 = {
55263
55379
  onDeleteFolder: Ae,
55264
55380
  onArchives: we
55265
55381
  }),
55266
- K("div", E2, [K("button", {
55382
+ K("div", F2, [K("button", {
55267
55383
  type: "button",
55268
55384
  class: "channel-section-toggle",
55269
55385
  "aria-expanded": f.value,
55270
55386
  onClick: r[0] ||= (e) => f.value = !f.value
55271
- }, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[29] ||= J("频道工具", -1)], 8, D2)]),
55387
+ }, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[29] ||= J("频道工具", -1)], 8, I2)]),
55272
55388
  f.value ? (U(), G(b, {
55273
55389
  key: 0,
55274
55390
  items: be.value,
@@ -55284,7 +55400,7 @@ var Q1 = {
55284
55400
  }
55285
55401
  }, null, 8, ["items"])) : Y("", !0)
55286
55402
  ]),
55287
- K("footer", O2, [K("button", {
55403
+ K("footer", L2, [K("button", {
55288
55404
  type: "button",
55289
55405
  class: "channel-self-button",
55290
55406
  "aria-label": `账号与设置:${I(n).display_name(I(_))}${xe.value ? "," + xe.value : ""}`,
@@ -55300,10 +55416,10 @@ var Q1 = {
55300
55416
  "text",
55301
55417
  "alt",
55302
55418
  "class"
55303
- ]), K("span", A2, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: M(["channel-connection", { "is-action": xe.value }]) }, [K("span", {
55419
+ ]), K("span", z2, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: M(["channel-connection", { "is-action": xe.value }]) }, [K("span", {
55304
55420
  class: M({ connected: I(t).connected }),
55305
55421
  title: I(t).connected ? "网站已连接" : "网站未连接"
55306
- }, null, 10, j2), J(P(xe.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, k2), q(O, { text: "设置" }, {
55422
+ }, null, 10, B2), J(P(xe.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, R2), q(O, { text: "设置" }, {
55307
55423
  default: L(() => [q(T, {
55308
55424
  icon: "i-lucide-settings-2",
55309
55425
  color: "neutral",
@@ -55324,7 +55440,7 @@ var Q1 = {
55324
55440
  "aria-label": "调整房间栏宽度",
55325
55441
  "aria-orientation": "vertical",
55326
55442
  "aria-controls": "channel-sidebar",
55327
- "aria-valuemin": D4,
55443
+ "aria-valuemin": I4,
55328
55444
  "aria-valuemax": oe.value,
55329
55445
  "aria-valuenow": se.value,
55330
55446
  "aria-valuetext": `${se.value} 像素`,
@@ -55335,13 +55451,13 @@ var Q1 = {
55335
55451
  onPointercancel: We,
55336
55452
  onLostpointercapture: We,
55337
55453
  onKeydown: Ge
55338
- }, null, 40, M2)),
55339
- K("main", N2, [K("div", {
55454
+ }, null, 40, V2)),
55455
+ K("main", H2, [K("div", {
55340
55456
  ref_key: "topbar",
55341
55457
  ref: ne,
55342
55458
  class: M(["channel-topbar", { "is-overlay": o.value && I(t).tab === "discussion" }])
55343
55459
  }, [
55344
- K("header", P2, [
55460
+ K("header", U2, [
55345
55461
  q(O, { text: E.value ? "展开房间栏" : "收起房间栏" }, {
55346
55462
  default: L(() => [q(T, {
55347
55463
  icon: "i-lucide-panel-left",
@@ -55366,8 +55482,8 @@ var Q1 = {
55366
55482
  "aria-expanded": d.value,
55367
55483
  onClick: r[4] ||= (e) => d.value = !0
55368
55484
  }, null, 8, ["aria-expanded"]),
55369
- K("span", F2, [q(y, { name: "i-lucide-hash" })]),
55370
- K("div", I2, [K("div", L2, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, R2)]), o.value?.archived ? (U(), G(re, {
55485
+ K("span", W2, [q(y, { name: "i-lucide-hash" })]),
55486
+ K("div", G2, [K("div", K2, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, q2)]), o.value?.archived ? (U(), G(re, {
55371
55487
  key: 0,
55372
55488
  color: "neutral",
55373
55489
  variant: "subtle",
@@ -55376,12 +55492,12 @@ var Q1 = {
55376
55492
  default: L(() => [...r[31] ||= [J("已存档", -1)]]),
55377
55493
  _: 1
55378
55494
  })) : Y("", !0)]),
55379
- o.value ? (U(), W("span", z2, [
55495
+ o.value ? (U(), W("span", J2, [
55380
55496
  J(P(de.find((e) => e.value === I(t).tab)?.label), 1),
55381
55497
  r[32] ||= K("span", null, "·", -1),
55382
55498
  J(P(o.value.message_count) + " 条记录", 1)
55383
55499
  ])) : Y("", !0),
55384
- K("div", B2, [
55500
+ K("div", Y2, [
55385
55501
  I(t).tab === "discussion" ? (U(), W("form", {
55386
55502
  key: 0,
55387
55503
  class: "channel-search",
@@ -55460,12 +55576,12 @@ var Q1 = {
55460
55576
  _: 1
55461
55577
  }, 8, ["text"])
55462
55578
  ]),
55463
- I(t).launch.recoveries.length ? (U(), W("section", V2, [
55579
+ I(t).launch.recoveries.length ? (U(), W("section", X2, [
55464
55580
  r[33] ||= K("h2", null, "继续未完成的请求", -1),
55465
55581
  (U(!0), W(H, null, B(I(t).launch.recoveries, (e) => (U(), W("article", { key: e.id }, [
55466
55582
  K("strong", null, P(e.title), 1),
55467
- K("p", H2, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
55468
- K("div", U2, [
55583
+ K("p", Z2, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
55584
+ K("div", Q2, [
55469
55585
  q(T, {
55470
55586
  label: e.direct ? "继续创建房间" : "继续本次启动",
55471
55587
  size: "sm",
@@ -55498,7 +55614,7 @@ var Q1 = {
55498
55614
  ]))), 128)),
55499
55615
  r[34] ||= K("small", null, "移除待办不会删除房间或停止讨论。", -1)
55500
55616
  ])) : Y("", !0),
55501
- o.value ? (U(), W("div", W2, [q(pe, {
55617
+ o.value ? (U(), W("div", $2, [q(pe, {
55502
55618
  modelValue: ue.value,
55503
55619
  "onUpdate:modelValue": r[9] ||= (e) => ue.value = e,
55504
55620
  items: de,
@@ -55513,7 +55629,7 @@ var Q1 = {
55513
55629
  key: 2,
55514
55630
  class: M(["channel-host-brief", { "is-collapsed": D.value }]),
55515
55631
  "aria-label": "主持简报"
55516
- }, [K("div", G2, [K("div", K2, [K("button", {
55632
+ }, [K("div", e4, [K("div", t4, [K("button", {
55517
55633
  type: "button",
55518
55634
  class: "channel-brief-toggle",
55519
55635
  "aria-label": D.value ? "展开主持简报" : "收起主持简报",
@@ -55523,8 +55639,8 @@ var Q1 = {
55523
55639
  }, [
55524
55640
  q(y, { name: D.value ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
55525
55641
  K("strong", null, "主持简报" + P(D.value ? ":" : ""), 1),
55526
- D.value ? (U(), W("span", J2, P(te.value), 1)) : Y("", !0)
55527
- ], 8, q2), D.value ? Y("", !0) : (U(), G(T, {
55642
+ D.value ? (U(), W("span", r4, P(te.value), 1)) : Y("", !0)
55643
+ ], 8, n4), D.value ? Y("", !0) : (U(), G(T, {
55528
55644
  key: 0,
55529
55645
  label: "更新简报",
55530
55646
  color: "neutral",
@@ -55532,20 +55648,20 @@ var Q1 = {
55532
55648
  size: "xs",
55533
55649
  class: "channel-brief-update",
55534
55650
  onClick: r[10] ||= (e) => I(i)("tab", "context")
55535
- }))]), vr(K("div", Y2, [K("div", {
55651
+ }))]), vr(K("div", i4, [K("div", {
55536
55652
  class: "channel-brief-text markdown-body",
55537
55653
  innerHTML: o.value.rendered_brief
55538
- }, null, 8, X2), K("div", Z2, [K("span", Q2, 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)
55654
+ }, null, 8, a4), K("div", o4, [K("span", s4, 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)
55539
55655
  ], 2), o.value ? (U(), W("div", {
55540
55656
  key: 0,
55541
55657
  class: M(["channel-body", { "channel-body-discussion": I(t).tab === "discussion" }])
55542
- }, [K("div", $2, [
55658
+ }, [K("div", c4, [
55543
55659
  vr(q(lK, {
55544
55660
  onDetail: Ee,
55545
55661
  onEdit: r[11] ||= (e) => s.value = "edit"
55546
55662
  }, null, 512), [[Vc, I(t).tab === "discussion"]]),
55547
- I(t).tab === "history" ? (U(), W("div", e4, [
55548
- me.value ? (U(), W("section", t4, [K("div", n4, [r[35] ||= K("div", null, [K("h2", null, "当前讨论"), K("p", null, "没有进行中的讨论。开启后由主持人推进成员轮流发言,到上限或结束后房间回到自由协作,记录与结论保留。")], -1), q(T, {
55663
+ I(t).tab === "history" ? (U(), W("div", l4, [
55664
+ me.value ? (U(), W("section", u4, [K("div", d4, [r[35] ||= K("div", null, [K("h2", null, "当前讨论"), K("p", null, "没有进行中的讨论。开启后由主持人推进成员轮流发言,到上限或结束后房间回到自由协作,记录与结论保留。")], -1), q(T, {
55549
55665
  icon: "i-lucide-messages-square",
55550
55666
  label: "开启讨论",
55551
55667
  variant: "outline",
@@ -55553,13 +55669,13 @@ var Q1 = {
55553
55669
  class: "channel-surface-button",
55554
55670
  disabled: !_e.value,
55555
55671
  onClick: r[13] ||= (e) => he.value = !0
55556
- }, null, 8, ["disabled"])]), !_e.value && !o.value.archived ? (U(), W("p", r4, "开启讨论需要一位由本机唤醒的 AI 主持人,且本机服务在线。")) : Y("", !0)])) : (U(), G(kq, {
55672
+ }, null, 8, ["disabled"])]), !_e.value && !o.value.archived ? (U(), W("p", f4, "开启讨论需要一位由本机唤醒的 AI 主持人,且本机服务在线。")) : Y("", !0)])) : (U(), G(kq, {
55557
55673
  key: 0,
55558
55674
  section: "host",
55559
55675
  onOpen: r[12] ||= (e) => s.value = e,
55560
55676
  onDetail: Ee
55561
55677
  })),
55562
- K("section", i4, [K("div", a4, [r[36] ||= K("div", null, [K("h2", null, "当前共识"), K("p", null, "主持人整理的结论、共识与分歧,用 #消息编号 保留依据;讨论结束时保存进下方记录。")], -1), ge.value ? Y("", !0) : (U(), G(T, {
55678
+ K("section", p4, [K("div", m4, [r[36] ||= K("div", null, [K("h2", null, "当前共识"), K("p", null, "主持人整理的结论、共识与分歧,用 #消息编号 保留依据;讨论结束时保存进下方记录。")], -1), ge.value ? Y("", !0) : (U(), G(T, {
55563
55679
  key: 0,
55564
55680
  icon: "i-lucide-pencil",
55565
55681
  label: "编辑",
@@ -55603,7 +55719,7 @@ var Q1 = {
55603
55719
  }, null, 8, ["modelValue"])]),
55604
55720
  _: 1
55605
55721
  }),
55606
- K("div", o4, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), K("div", s4, [q(T, {
55722
+ K("div", h4, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), K("div", g4, [q(T, {
55607
55723
  label: "取消",
55608
55724
  color: "neutral",
55609
55725
  variant: "ghost",
@@ -55616,7 +55732,7 @@ var Q1 = {
55616
55732
  class: "channel-primary-button",
55617
55733
  loading: I(a) === "save_context"
55618
55734
  }, null, 8, ["loading"])])])
55619
- ], 32)) : o.value.host_brief?.text || o.value.state_text ? (U(), W(H, { key: 1 }, [K("div", c4, [K("h3", null, [r[37] ||= J("主持简报", -1), o.value.state_until ? (U(), W("button", {
55735
+ ], 32)) : o.value.host_brief?.text || o.value.state_text ? (U(), W(H, { key: 1 }, [K("div", _4, [K("h3", null, [r[37] ||= J("主持简报", -1), o.value.state_until ? (U(), W("button", {
55620
55736
  key: 0,
55621
55737
  type: "button",
55622
55738
  class: "subtle-link",
@@ -55624,7 +55740,7 @@ var Q1 = {
55624
55740
  }, "整理至 #" + P(o.value.state_until), 1)) : Y("", !0)]), K("div", {
55625
55741
  class: "markdown-body",
55626
55742
  innerHTML: o.value.rendered_brief
55627
- }, null, 8, l4)]), ve.value ? (U(), W("details", u4, [K("summary", null, [
55743
+ }, null, 8, v4)]), ve.value ? (U(), W("details", y4, [K("summary", null, [
55628
55744
  r[38] ||= K("h3", null, "详细共识与进度", -1),
55629
55745
  r[39] ||= K("span", null, "依据、已处理内容、未决问题与下一步", -1),
55630
55746
  q(y, {
@@ -55634,21 +55750,21 @@ var Q1 = {
55634
55750
  ]), K("div", {
55635
55751
  class: "markdown-body consensus-state",
55636
55752
  innerHTML: ve.value
55637
- }, null, 8, d4)])) : Y("", !0)], 64)) : (U(), W("p", f4, "还没有共识。主持人会在讨论中整理,也可以点“编辑”自己写。"))]),
55753
+ }, null, 8, b4)])) : Y("", !0)], 64)) : (U(), W("p", x4, "还没有共识。主持人会在讨论中整理,也可以点“编辑”自己写。"))]),
55638
55754
  q(Z$, { onDetail: Ee }),
55639
55755
  q(t$, {
55640
55756
  open: he.value,
55641
55757
  "onUpdate:open": r[19] ||= (e) => he.value = e
55642
55758
  }, null, 8, ["open"])
55643
55759
  ])) : Y("", !0),
55644
- I(t).tab === "overview" ? (U(), W("div", p4, [q(O1), me.value ? Y("", !0) : (U(), G(kq, {
55760
+ I(t).tab === "overview" ? (U(), W("div", S4, [q(O1), me.value ? Y("", !0) : (U(), G(kq, {
55645
55761
  key: 0,
55646
55762
  section: "access",
55647
55763
  onOpen: r[20] ||= (e) => s.value = e,
55648
55764
  onDetail: Ee
55649
55765
  }))])) : Y("", !0),
55650
- I(t).tab === "timeline" ? (U(), W("div", m4, [q(C2, { onDetail: Ee })])) : Y("", !0)
55651
- ])], 2)) : (U(), W("div", h4, [
55766
+ I(t).tab === "timeline" ? (U(), W("div", C4, [q(M2, { onDetail: Ee })])) : Y("", !0)
55767
+ ])], 2)) : (U(), W("div", w4, [
55652
55768
  q(y, { name: "i-lucide-hash" }),
55653
55769
  r[40] ||= K("h2", null, "新建一个协作房间", -1),
55654
55770
  r[41] ||= K("p", null, "邀请 AI 一起协作,随时 @ 提问;需要时开启讨论,保留所有人的观点。", -1),
@@ -55667,8 +55783,8 @@ var Q1 = {
55667
55783
  "aria-label": "调整右侧栏宽度",
55668
55784
  "aria-orientation": "vertical",
55669
55785
  "aria-controls": "channel-member-rail",
55670
- "aria-valuemin": C4,
55671
- "aria-valuemax": w4,
55786
+ "aria-valuemin": M4,
55787
+ "aria-valuemax": N4,
55672
55788
  "aria-valuenow": C.value,
55673
55789
  "aria-valuetext": `${C.value} 像素`,
55674
55790
  title: "拖动调整右侧栏宽度,也可使用左右方向键",
@@ -55678,11 +55794,11 @@ var Q1 = {
55678
55794
  onPointercancel: Be,
55679
55795
  onLostpointercapture: Be,
55680
55796
  onKeydown: Ve
55681
- }, null, 40, g4)) : Y("", !0),
55682
- A.value ? (U(), W("aside", _4, [K("section", v4, [o.value && me.value ? (U(), G(I$, { key: 0 })) : o.value ? (U(), G(qQ, {
55797
+ }, null, 40, T4)) : Y("", !0),
55798
+ A.value ? (U(), W("aside", E4, [K("section", D4, [o.value && me.value ? (U(), G(I$, { key: 0 })) : o.value ? (U(), G(qQ, {
55683
55799
  key: 1,
55684
55800
  docked: ""
55685
- })) : (U(), W("div", y4, [...r[42] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
55801
+ })) : (U(), W("div", O4, [...r[42] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
55686
55802
  q(Me, {
55687
55803
  open: d.value,
55688
55804
  "onUpdate:open": r[23] ||= (e) => d.value = e,
@@ -55725,7 +55841,7 @@ var Q1 = {
55725
55841
  }
55726
55842
  }, {
55727
55843
  body: L(() => [o.value ? (U(), W(H, { key: 0 }, [
55728
- K("div", b4, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
55844
+ K("div", k4, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
55729
55845
  (U(), W(H, null, B([
55730
55846
  {
55731
55847
  key: "goal",
@@ -55752,7 +55868,7 @@ var Q1 = {
55752
55868
  class: "info-section"
55753
55869
  }, [K("h3", null, P(e.label), 1), K("p", null, P(o.value[e.key] || "尚未填写"), 1)])), 64)),
55754
55870
  q(Ne),
55755
- K("section", x4, [r[43] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(Se.value, (e) => (U(), W("div", {
55871
+ K("section", A4, [r[43] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(Se.value, (e) => (U(), W("div", {
55756
55872
  key: e.name,
55757
55873
  class: "expert-row"
55758
55874
  }, [
@@ -55809,7 +55925,7 @@ var Q1 = {
55809
55925
  ], 6);
55810
55926
  };
55811
55927
  }
55812
- }, F4 = {
55928
+ }, W4 = {
55813
55929
  __name: "App",
55814
55930
  setup(e) {
55815
55931
  return br("discussion", OV()), (e, t) => {
@@ -55820,7 +55936,7 @@ var Q1 = {
55820
55936
  toaster: null
55821
55937
  }, {
55822
55938
  default: L(() => [q(I(Qz), { "reduced-motion": "user" }, {
55823
- default: L(() => [q(P4)]),
55939
+ default: L(() => [q(U4)]),
55824
55940
  _: 1
55825
55941
  })]),
55826
55942
  _: 1
@@ -55830,8 +55946,8 @@ var Q1 = {
55830
55946
  };
55831
55947
  //#endregion
55832
55948
  //#region frontend/main.js
55833
- function I4() {
55834
- bu(F4).use(ph).mount("#modern-root");
55949
+ function G4() {
55950
+ bu(W4).use(ph).mount("#modern-root");
55835
55951
  }
55836
- document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", I4) : I4();
55952
+ document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", G4) : G4();
55837
55953
  //#endregion