ai_co_discuss 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/backend/schema.sql +339 -0
- package/backend/server.py +22 -0
- package/docs/deployment.md +1 -1
- package/package.json +1 -1
- package/runner/discussion_adapters.mjs +3 -3
- package/runner/discussion_launch.mjs +1 -1
- package/runner/discussion_runner.mjs +1 -1
- package/runner/discussion_service.mjs +57 -3
- package/runner/expert_prompts.mjs +2 -2
- package/runner/free_runner.mjs +12 -0
- package/web/app.js +33 -7
- package/web/modern.css +1 -1
- package/web/modern.js +662 -626
package/web/modern.js
CHANGED
|
@@ -47372,7 +47372,7 @@ var mU = /*#__PURE__*/ YH({
|
|
|
47372
47372
|
read: "只读",
|
|
47373
47373
|
write: "可写",
|
|
47374
47374
|
auto: "自动",
|
|
47375
|
-
full: "
|
|
47375
|
+
full: "全放开"
|
|
47376
47376
|
}, Oq = {
|
|
47377
47377
|
claude: {
|
|
47378
47378
|
read: "只放行网站命令与草稿,不改项目文件、不跑其他命令",
|
|
@@ -47655,7 +47655,9 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
47655
47655
|
});
|
|
47656
47656
|
function Ne() {
|
|
47657
47657
|
if (Ee.value) return a.save_expert_preset(n.name);
|
|
47658
|
-
|
|
47658
|
+
let e = new Set(a.expert_presets().map((e) => e.name)), t = a.platform_of(n.name), r = 1;
|
|
47659
|
+
for (; e.has(a.preset_identity(n.name, `${t}-${r}`));) r += 1;
|
|
47660
|
+
Oe.value = `${t}-${r}`, De.value = !0;
|
|
47659
47661
|
}
|
|
47660
47662
|
async function Pe() {
|
|
47661
47663
|
Ae.value || (await a.save_expert_preset(n.name, ke.value), De.value = !1);
|
|
@@ -47866,7 +47868,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
47866
47868
|
inert: !f.value,
|
|
47867
47869
|
"aria-hidden": !f.value
|
|
47868
47870
|
}, [K("div", cJ, [
|
|
47869
|
-
K("div", lJ, [K("strong", null, [J(P(I(a).member_label(e.name)), 1), K("span", null, "设置"
|
|
47871
|
+
K("div", lJ, [K("strong", null, [J(P(I(a).member_label(e.name)), 1), n[19] ||= K("span", null, "设置", -1)]), K("span", uJ, [
|
|
47870
47872
|
K("button", {
|
|
47871
47873
|
type: "button",
|
|
47872
47874
|
class: j(["expert-card-back-tool", { "is-set": Se.value }]),
|
|
@@ -47908,7 +47910,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
47908
47910
|
role: y.value.state === "error" ? "alert" : "status",
|
|
47909
47911
|
class: "expert-card-check"
|
|
47910
47912
|
}, P(y.value.message), 9, pJ)) : Y("", !0),
|
|
47911
|
-
g.value && m.value.length > 1 ? (U(), W("div", mJ, [n[
|
|
47913
|
+
g.value && m.value.length > 1 ? (U(), W("div", mJ, [n[20] ||= K("span", null, "接入", -1), q(S, {
|
|
47912
47914
|
"model-value": p.value.adapter || "",
|
|
47913
47915
|
items: m.value,
|
|
47914
47916
|
placeholder: "选择 API / App / CLI",
|
|
@@ -47937,7 +47939,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
47937
47939
|
"aria-label",
|
|
47938
47940
|
"onUpdate:modelValue"
|
|
47939
47941
|
])]))), 128)),
|
|
47940
|
-
k.value ? (U(), W("div", hJ, [n[
|
|
47942
|
+
k.value ? (U(), W("div", hJ, [n[21] ||= K("span", null, "项目", -1), K("div", {
|
|
47941
47943
|
class: "expert-card-modes",
|
|
47942
47944
|
role: "radiogroup",
|
|
47943
47945
|
"aria-label": `${e.name} 的项目文件权限`
|
|
@@ -47953,7 +47955,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
47953
47955
|
key: 3,
|
|
47954
47956
|
name: e.name
|
|
47955
47957
|
}, null, 8, ["name"])) : te.value && !ge.value.length ? (U(), W(H, { key: 4 }, [
|
|
47956
|
-
K("div", vJ, [n[
|
|
47958
|
+
K("div", vJ, [n[22] ||= K("span", null, "模型", -1), q(S, {
|
|
47957
47959
|
"model-value": p.value.model || "__default__",
|
|
47958
47960
|
items: O.value.items,
|
|
47959
47961
|
title: O.value.source,
|
|
@@ -48020,7 +48022,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48020
48022
|
class: "expert-card-flip is-done",
|
|
48021
48023
|
"aria-label": `保存并返回 ${e.name} 角色卡片`,
|
|
48022
48024
|
onClick: n[10] ||= (e) => be(!1)
|
|
48023
|
-
}, [q(d, { name: "i-lucide-check" }), n[
|
|
48025
|
+
}, [q(d, { name: "i-lucide-check" }), n[23] ||= J("完成", -1)], 8, OJ)
|
|
48024
48026
|
])], 8, sJ)) : Y("", !0)]),
|
|
48025
48027
|
_: 1
|
|
48026
48028
|
}, 8, ["style"]),
|
|
@@ -48107,7 +48109,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48107
48109
|
], 42, Rq);
|
|
48108
48110
|
};
|
|
48109
48111
|
}
|
|
48110
|
-
}, [["__scopeId", "data-v-
|
|
48112
|
+
}, [["__scopeId", "data-v-765548c6"]]), NJ = {
|
|
48111
48113
|
key: 0,
|
|
48112
48114
|
class: "project-field"
|
|
48113
48115
|
}, PJ = ["disabled"], FJ = {
|
|
@@ -48467,6 +48469,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48467
48469
|
"disabled",
|
|
48468
48470
|
"title",
|
|
48469
48471
|
"aria-label",
|
|
48472
|
+
"aria-pressed",
|
|
48470
48473
|
"onClick"
|
|
48471
48474
|
], ZJ = /*#__PURE__*/ YH({
|
|
48472
48475
|
__name: "RosterAdd",
|
|
@@ -48499,9 +48502,11 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48499
48502
|
"aria-hidden": "true"
|
|
48500
48503
|
}, null, -1), n[1] ||= K("span", { class: "roster-add-label" }, "预设", -1)], 64)) : Y("", !0), K("button", {
|
|
48501
48504
|
type: "button",
|
|
48505
|
+
class: j({ "is-selected": e.selected }),
|
|
48502
48506
|
disabled: e.disabled,
|
|
48503
48507
|
title: e.title,
|
|
48504
48508
|
"aria-label": e.aria_label,
|
|
48509
|
+
"aria-pressed": e.selected === void 0 ? void 0 : e.selected,
|
|
48505
48510
|
onClick: (t) => r("add", e.value)
|
|
48506
48511
|
}, [
|
|
48507
48512
|
q(a, {
|
|
@@ -48517,18 +48522,18 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48517
48522
|
"class"
|
|
48518
48523
|
]),
|
|
48519
48524
|
J(P(e.name), 1),
|
|
48520
|
-
q(o, { name: "i-lucide-plus" })
|
|
48521
|
-
],
|
|
48525
|
+
q(o, { name: e.selected ? "i-lucide-check" : "i-lucide-plus" }, null, 8, ["name"])
|
|
48526
|
+
], 10, XJ)], 64))), 128))], 8, YJ);
|
|
48522
48527
|
};
|
|
48523
48528
|
}
|
|
48524
|
-
}, [["__scopeId", "data-v-
|
|
48529
|
+
}, [["__scopeId", "data-v-b682fa87"]]), QJ = { class: "scheduler-settings" }, $J = { class: "scheduler-title" }, eY = { class: "scheduler-description" }, tY = { class: "scheduler-cards" }, nY = {
|
|
48525
48530
|
key: 0,
|
|
48526
|
-
class: "scheduler-
|
|
48527
|
-
},
|
|
48531
|
+
class: "scheduler-slot"
|
|
48532
|
+
}, rY = { class: "scheduler-identity" }, iY = { class: "scheduler-facts" }, aY = ["title"], oY = { class: "scheduler-flip" }, sY = { class: "scheduler-tools" }, cY = ["aria-label"], lY = { class: "scheduler-back" }, uY = { class: "scheduler-heading" }, dY = { class: "scheduler-field" }, fY = { class: "scheduler-field" }, pY = {
|
|
48528
48533
|
key: 0,
|
|
48529
48534
|
role: "alert",
|
|
48530
48535
|
class: "scheduler-error"
|
|
48531
|
-
},
|
|
48536
|
+
}, mY = ["role"], hY = { class: "scheduler-flip-actions" }, gY = "••••••••••••", _Y = /*#__PURE__*/ YH({
|
|
48532
48537
|
__name: "SchedulerSettings",
|
|
48533
48538
|
props: {
|
|
48534
48539
|
free: {
|
|
@@ -48553,15 +48558,19 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48553
48558
|
icon: "/icons/openai.svg",
|
|
48554
48559
|
style: "codex"
|
|
48555
48560
|
}
|
|
48556
|
-
}, c = Z(() => !!i.value.enabled && !t.blocker), l = /* @__PURE__ */ F(null), u = Z(() => a.value.map(({ value: e, label: n }) =>
|
|
48557
|
-
value
|
|
48558
|
-
|
|
48559
|
-
|
|
48560
|
-
|
|
48561
|
-
|
|
48562
|
-
|
|
48563
|
-
|
|
48564
|
-
|
|
48561
|
+
}, c = Z(() => !!i.value.enabled && !t.blocker), l = /* @__PURE__ */ F(null), u = Z(() => a.value.map(({ value: e, label: n }) => {
|
|
48562
|
+
let r = c.value && i.value.provider === e;
|
|
48563
|
+
return {
|
|
48564
|
+
value: e,
|
|
48565
|
+
name: n,
|
|
48566
|
+
initials: n.slice(0, 2),
|
|
48567
|
+
...s[e],
|
|
48568
|
+
disabled: !!t.blocker,
|
|
48569
|
+
selected: r,
|
|
48570
|
+
title: r ? "当前决策模型" : c.value ? `替换为 ${n}` : n,
|
|
48571
|
+
aria_label: c.value && !r ? `替换决策模型为 ${n}` : `添加决策模型 ${n}`
|
|
48572
|
+
};
|
|
48573
|
+
})), d = /* @__PURE__ */ F(""), f = /* @__PURE__ */ F(!1), p = /* @__PURE__ */ F(!1), m = /* @__PURE__ */ F(""), h = /* @__PURE__ */ F(!1), g = null;
|
|
48565
48574
|
function _() {
|
|
48566
48575
|
let { model: e, api_key_ref: t } = i.value;
|
|
48567
48576
|
g = {
|
|
@@ -48574,7 +48583,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48574
48583
|
g = null, d.value = "", m.value = "", h.value = !1;
|
|
48575
48584
|
}
|
|
48576
48585
|
function y(e) {
|
|
48577
|
-
r.write_scheduler("provider", e), r.write_scheduler("enabled", !0);
|
|
48586
|
+
c.value && i.value.provider === e || (h.value = !1, g = null, r.write_scheduler("provider", e), r.write_scheduler("enabled", !0));
|
|
48578
48587
|
}
|
|
48579
48588
|
function b() {
|
|
48580
48589
|
r.write_scheduler("enabled", !1), Qn(() => l.value?.focus_first());
|
|
@@ -48639,7 +48648,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48639
48648
|
}
|
|
48640
48649
|
}
|
|
48641
48650
|
return (t, a) => {
|
|
48642
|
-
let g = WV, E =
|
|
48651
|
+
let g = WV, E = sA, D = pA, O = MA, te = oq, ne = YV;
|
|
48643
48652
|
return U(), W("div", QJ, [
|
|
48644
48653
|
K("div", null, [K("p", $J, [
|
|
48645
48654
|
a[5] ||= J("智能调度", -1),
|
|
@@ -48660,8 +48669,11 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48660
48669
|
items: u.value,
|
|
48661
48670
|
onAdd: y
|
|
48662
48671
|
}, null, 8, ["items"]),
|
|
48663
|
-
|
|
48664
|
-
|
|
48672
|
+
K("div", tY, [c.value ? (U(), W("div", {
|
|
48673
|
+
key: 1,
|
|
48674
|
+
class: j(["scheduler-card", { "is-editing": h.value }])
|
|
48675
|
+
}, [h.value ? (U(), W(H, { key: 1 }, [K("div", lY, [
|
|
48676
|
+
K("div", uY, [K("strong", null, [J(P(x.value), 1), a[13] ||= K("span", null, "设置", -1)]), q(O, {
|
|
48665
48677
|
icon: "i-lucide-zap",
|
|
48666
48678
|
"aria-label": "检查智能调度配置",
|
|
48667
48679
|
title: "检查配置:向决策模型发送一道极短的是非题,核对供应商、模型与密钥",
|
|
@@ -48676,7 +48688,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48676
48688
|
"loading",
|
|
48677
48689
|
"disabled"
|
|
48678
48690
|
])]),
|
|
48679
|
-
K("div",
|
|
48691
|
+
K("div", dY, [a[14] ||= K("span", null, "模型", -1), q(te, {
|
|
48680
48692
|
mode: "autocomplete",
|
|
48681
48693
|
"ignore-filter": "",
|
|
48682
48694
|
"model-value": i.value.model || "",
|
|
@@ -48688,7 +48700,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48688
48700
|
class: "w-full",
|
|
48689
48701
|
"onUpdate:modelValue": a[0] ||= (e) => I(r).write_scheduler("model", e)
|
|
48690
48702
|
}, null, 8, ["model-value", "items"])]),
|
|
48691
|
-
K("div",
|
|
48703
|
+
K("div", fY, [a[15] ||= K("span", null, "密钥", -1), q(ne, {
|
|
48692
48704
|
modelValue: d.value,
|
|
48693
48705
|
"onUpdate:modelValue": a[2] ||= (e) => d.value = e,
|
|
48694
48706
|
type: "text",
|
|
@@ -48696,7 +48708,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48696
48708
|
spellcheck: "false",
|
|
48697
48709
|
"data-1p-ignore": "",
|
|
48698
48710
|
"data-lpignore": "true",
|
|
48699
|
-
placeholder: i.value.api_key_ref ?
|
|
48711
|
+
placeholder: i.value.api_key_ref ? gY : "填写所选供应商的 API Key",
|
|
48700
48712
|
title: i.value.api_key_ref && !d.value ? "已保存;本机不回传密钥,输入新 Key 可更换" : void 0,
|
|
48701
48713
|
"aria-label": "智能调度 API Key",
|
|
48702
48714
|
size: "xs",
|
|
@@ -48731,14 +48743,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48731
48743
|
"loading",
|
|
48732
48744
|
"ui"
|
|
48733
48745
|
])]),
|
|
48734
|
-
m.value ? (U(), W("p",
|
|
48746
|
+
m.value ? (U(), W("p", pY, P(m.value), 1)) : Y("", !0),
|
|
48735
48747
|
C.value.message ? (U(), W("p", {
|
|
48736
48748
|
key: 1,
|
|
48737
48749
|
role: C.value.state === "error" ? "alert" : "status",
|
|
48738
48750
|
class: j(C.value.state === "error" ? "scheduler-error" : "scheduler-ok")
|
|
48739
|
-
}, P(C.value.message), 11,
|
|
48740
|
-
a[
|
|
48741
|
-
]), K("span",
|
|
48751
|
+
}, P(C.value.message), 11, mY)) : Y("", !0),
|
|
48752
|
+
a[16] ||= K("p", { class: "scheduler-note" }, "决策模型只做选择、不生成文本,只按输入计费。判断时会把房间标题和最近 10~20 条消息发给所选供应商;密钥只存本机。", -1)
|
|
48753
|
+
]), K("span", hY, [K("button", {
|
|
48742
48754
|
type: "button",
|
|
48743
48755
|
class: "scheduler-flip is-cancel",
|
|
48744
48756
|
"aria-label": "放弃决策模型的修改",
|
|
@@ -48748,14 +48760,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48748
48760
|
class: "scheduler-flip is-done",
|
|
48749
48761
|
"aria-label": "完成并返回决策模型卡片",
|
|
48750
48762
|
onClick: a[3] ||= (e) => h.value = !1
|
|
48751
|
-
}, [q(
|
|
48763
|
+
}, [q(E, { name: "i-lucide-check" }), a[17] ||= J("完成", -1)])])], 64)) : (U(), W(H, { key: 0 }, [K("button", {
|
|
48752
48764
|
type: "button",
|
|
48753
48765
|
class: "scheduler-open",
|
|
48754
48766
|
"aria-label": "设置智能调度的决策模型",
|
|
48755
48767
|
title: "点击设置",
|
|
48756
48768
|
onClick: _
|
|
48757
48769
|
}, [
|
|
48758
|
-
K("span",
|
|
48770
|
+
K("span", rY, [q(D, {
|
|
48759
48771
|
src: s[i.value.provider]?.icon,
|
|
48760
48772
|
text: x.value.slice(0, 2),
|
|
48761
48773
|
alt: x.value,
|
|
@@ -48767,40 +48779,44 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48767
48779
|
"alt",
|
|
48768
48780
|
"class"
|
|
48769
48781
|
]), K("strong", null, P(x.value), 1)]),
|
|
48770
|
-
K("dl",
|
|
48771
|
-
K("span",
|
|
48772
|
-
]), K("span",
|
|
48782
|
+
K("dl", iY, [K("div", null, [a[10] ||= K("dt", null, "状态", -1), K("dd", { class: j(`is-${S.value.tone}`) }, [a[9] ||= K("i", { "aria-hidden": "true" }, null, -1), J(P(S.value.text), 1)], 2)]), K("div", null, [a[11] ||= K("dt", null, "模型", -1), K("dd", { title: i.value.model }, P(i.value.model || "未选择"), 9, aY)])]),
|
|
48783
|
+
K("span", oY, [q(E, { name: "i-lucide-settings-2" }), a[12] ||= J("设置", -1)])
|
|
48784
|
+
]), K("span", sY, [K("button", {
|
|
48773
48785
|
type: "button",
|
|
48774
48786
|
"aria-label": `移出决策模型 ${x.value}`,
|
|
48775
48787
|
title: "移出",
|
|
48776
48788
|
onClick: b
|
|
48777
|
-
}, [q(
|
|
48789
|
+
}, [q(E, { name: "i-lucide-x" })], 8, cY)])], 64))], 2)) : (U(), W("div", nY, [
|
|
48790
|
+
q(E, { name: "i-lucide-zap" }),
|
|
48791
|
+
a[7] ||= K("strong", null, "决策模型槽位", -1),
|
|
48792
|
+
a[8] ||= K("span", null, "只能放一个;从上方添加,再点其他会替换", -1)
|
|
48793
|
+
]))])
|
|
48778
48794
|
]);
|
|
48779
48795
|
};
|
|
48780
48796
|
}
|
|
48781
|
-
}, [["__scopeId", "data-v-
|
|
48797
|
+
}, [["__scopeId", "data-v-3324f536"]]), vY = { class: "create-discussion" }, yY = {
|
|
48782
48798
|
key: 0,
|
|
48783
48799
|
class: "create-connect",
|
|
48784
48800
|
role: "status"
|
|
48785
|
-
},
|
|
48801
|
+
}, bY = { class: "create-connect-command" }, xY = {
|
|
48786
48802
|
key: 1,
|
|
48787
48803
|
class: "channel-create-location"
|
|
48788
|
-
},
|
|
48804
|
+
}, SY = { class: "create-section" }, CY = { class: "create-section" }, wY = {
|
|
48789
48805
|
key: 0,
|
|
48790
48806
|
class: "create-experts",
|
|
48791
48807
|
role: "group",
|
|
48792
48808
|
"aria-label": "参与的 AI"
|
|
48793
|
-
},
|
|
48809
|
+
}, TY = {
|
|
48794
48810
|
key: 1,
|
|
48795
48811
|
class: "create-experts-empty"
|
|
48796
|
-
},
|
|
48812
|
+
}, EY = {
|
|
48797
48813
|
key: 2,
|
|
48798
48814
|
class: "fine-print create-hint create-host-hint"
|
|
48799
|
-
},
|
|
48815
|
+
}, DY = { class: "create-section" }, OY = { class: "create-advanced" }, kY = { class: "create-footer" }, AY = {
|
|
48800
48816
|
key: 0,
|
|
48801
48817
|
role: "alert",
|
|
48802
48818
|
class: "create-error"
|
|
48803
|
-
},
|
|
48819
|
+
}, jY = { class: "create-footer-row" }, MY = ["title"], NY = "new-expert-modes", PY = 3e3, FY = "preset:", IY = /*#__PURE__*/ YH({
|
|
48804
48820
|
__name: "CreateDiscussion",
|
|
48805
48821
|
props: { targetFolder: {
|
|
48806
48822
|
type: Object,
|
|
@@ -48808,7 +48824,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48808
48824
|
} },
|
|
48809
48825
|
emits: ["submit", "cancel"],
|
|
48810
48826
|
setup(e, { emit: t }) {
|
|
48811
|
-
let n = t, { view: r, bridge: i, pending: a, act: o } = xr("discussion"), s = Object.keys(i.identities).filter((e) => e !== "用户"), c = (e) => `new-room-${e}`, l = (e) => r.value.fields[c(e)] ?? "", u = (e, t) => i.write_field(c(e), t), d = Z(() => !!r.value.create_discussion), f = Z(() => r.value.experts[
|
|
48827
|
+
let n = t, { view: r, bridge: i, pending: a, act: o } = xr("discussion"), s = Object.keys(i.identities).filter((e) => e !== "用户"), c = (e) => `new-room-${e}`, l = (e) => r.value.fields[c(e)] ?? "", u = (e, t) => i.write_field(c(e), t), d = Z(() => !!r.value.create_discussion), f = Z(() => r.value.experts[NY] || {}), p = /* @__PURE__ */ F([]), m = Z(() => Object.keys(f.value).filter((e) => f.value[e]));
|
|
48812
48828
|
R(m, (e) => {
|
|
48813
48829
|
p.value = [...p.value.filter((t) => e.includes(t)), ...e.filter((e) => !p.value.includes(e))];
|
|
48814
48830
|
}, { immediate: !0 });
|
|
@@ -48832,14 +48848,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48832
48848
|
Qi(() => {
|
|
48833
48849
|
se(), ae = window.setInterval(() => {
|
|
48834
48850
|
ie.value && !document.hidden && o("check_launch_connection");
|
|
48835
|
-
},
|
|
48851
|
+
}, PY);
|
|
48836
48852
|
}), ta(() => window.clearInterval(ae));
|
|
48837
48853
|
function ce(e) {
|
|
48838
48854
|
i.write_create_discussion(e), Qn(se);
|
|
48839
48855
|
}
|
|
48840
48856
|
let le = (e) => i.launch_clients[e]?.some((e) => e.value !== "api"), ue = (e) => d.value && e === v.value ? [] : ["cli", "manual"];
|
|
48841
48857
|
function de(e, t) {
|
|
48842
|
-
i.write_expert(
|
|
48858
|
+
i.write_expert(NY, e, t), se();
|
|
48843
48859
|
}
|
|
48844
48860
|
function fe(e) {
|
|
48845
48861
|
if (C.value) return ee(e) ? {
|
|
@@ -48869,7 +48885,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48869
48885
|
title: pe(e),
|
|
48870
48886
|
aria_label: `添加 ${e} 实例`
|
|
48871
48887
|
})), ...r.value && i.expert_presets().map((e, t) => ({
|
|
48872
|
-
value:
|
|
48888
|
+
value: FY + e.name,
|
|
48873
48889
|
name: e.label || e.name,
|
|
48874
48890
|
...i.identities[i.platform_of(e.name)],
|
|
48875
48891
|
separated: t === 0,
|
|
@@ -48877,11 +48893,11 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48877
48893
|
aria_label: `添加预设 ${e.label || e.name}`
|
|
48878
48894
|
}))]);
|
|
48879
48895
|
function me(e) {
|
|
48880
|
-
if (e.startsWith(
|
|
48896
|
+
if (e.startsWith(FY)) {
|
|
48881
48897
|
let t = i.expert_presets().find((t) => t.name === e.slice(7));
|
|
48882
|
-
return t && i.add_preset(
|
|
48898
|
+
return t && i.add_preset(NY, t, "cli"), se();
|
|
48883
48899
|
}
|
|
48884
|
-
i.launch_clients[e] && (i.default_launch_entry(e), g(e) ? i.add_instance(
|
|
48900
|
+
i.launch_clients[e] && (i.default_launch_entry(e), g(e) ? i.add_instance(NY, e, "cli") : de(e, "cli"), se());
|
|
48885
48901
|
}
|
|
48886
48902
|
function he(e) {
|
|
48887
48903
|
de(e, ""), Qn(() => _.value?.focus_first());
|
|
@@ -48903,20 +48919,20 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48903
48919
|
});
|
|
48904
48920
|
return (t, s) => {
|
|
48905
48921
|
let c = sA, p = MA, m = YV, g = zV, x = FK, T = HV;
|
|
48906
|
-
return U(), W("div",
|
|
48922
|
+
return U(), W("div", vY, [K("form", {
|
|
48907
48923
|
id: "create-discussion-form",
|
|
48908
48924
|
class: "create-scroll dialog-form",
|
|
48909
48925
|
onSubmit: uu(ge, ["prevent"])
|
|
48910
48926
|
}, [
|
|
48911
|
-
ie.value ? (U(), W("div",
|
|
48927
|
+
ie.value ? (U(), W("div", yY, [K("p", null, [q(c, { name: "i-lucide-plug-zap" }), s[10] ||= J("本机服务未连接,连接后才能唤醒本机 AI。在运行 AI 的电脑上执行下面的命令并完成网页授权,连上后自动检测。", -1)]), K("div", bY, [K("code", null, P(I(r).launch.connect_command), 1), q(p, {
|
|
48912
48928
|
icon: "i-lucide-copy",
|
|
48913
48929
|
"aria-label": "复制本机连接命令",
|
|
48914
48930
|
variant: "ghost",
|
|
48915
48931
|
color: "neutral",
|
|
48916
48932
|
onClick: s[0] ||= (e) => I(o)("copy", I(r).launch.connect_command)
|
|
48917
48933
|
})])])) : Y("", !0),
|
|
48918
|
-
e.targetFolder?.id ? (U(), W("p",
|
|
48919
|
-
K("section",
|
|
48934
|
+
e.targetFolder?.id ? (U(), W("p", xY, [q(c, { name: "i-lucide-folder" }), J(P(e.targetFolder.name), 1)])) : Y("", !0),
|
|
48935
|
+
K("section", SY, [
|
|
48920
48936
|
s[11] ||= K("h3", null, [K("span", null, "1"), J("这次做什么")], -1),
|
|
48921
48937
|
q(g, {
|
|
48922
48938
|
label: "话题名称",
|
|
@@ -48942,7 +48958,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48942
48958
|
_: 1
|
|
48943
48959
|
}, 8, ["description"])
|
|
48944
48960
|
]),
|
|
48945
|
-
K("section",
|
|
48961
|
+
K("section", CY, [
|
|
48946
48962
|
s[12] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
|
|
48947
48963
|
q(ZJ, {
|
|
48948
48964
|
ref_key: "library",
|
|
@@ -48951,7 +48967,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48951
48967
|
items: A.value,
|
|
48952
48968
|
onAdd: me
|
|
48953
48969
|
}, null, 8, ["items"]),
|
|
48954
|
-
h.value.length ? (U(), W("div",
|
|
48970
|
+
h.value.length ? (U(), W("div", wY, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(MJ, {
|
|
48955
48971
|
key: e,
|
|
48956
48972
|
name: e,
|
|
48957
48973
|
mode: f.value[e],
|
|
@@ -48973,14 +48989,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
48973
48989
|
"onHost",
|
|
48974
48990
|
"onRemove",
|
|
48975
48991
|
"onMode"
|
|
48976
|
-
]))), 128))])) : (U(), W("p",
|
|
48977
|
-
h.value.length ? (U(), W("div",
|
|
48978
|
-
q(
|
|
48992
|
+
]))), 128))])) : (U(), W("p", TY, "请至少添加一位成员。同一平台可添加多位,各自独立会话。")),
|
|
48993
|
+
h.value.length ? (U(), W("div", EY, [q(c, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "需要一位本地 AI 做主持人,没 @ 的消息才有人接。"), 1)])) : Y("", !0),
|
|
48994
|
+
q(_Y, {
|
|
48979
48995
|
free: !0,
|
|
48980
48996
|
blocker: ne.value
|
|
48981
48997
|
}, null, 8, ["blocker"])
|
|
48982
48998
|
]),
|
|
48983
|
-
K("section",
|
|
48999
|
+
K("section", DY, [
|
|
48984
49000
|
s[13] ||= K("h3", null, [K("span", null, "3"), J("讨论(可选)")], -1),
|
|
48985
49001
|
q(x, {
|
|
48986
49002
|
"model-value": d.value,
|
|
@@ -49026,7 +49042,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49026
49042
|
"execution_minutes"
|
|
49027
49043
|
])], 64)) : Y("", !0)
|
|
49028
49044
|
]),
|
|
49029
|
-
K("details",
|
|
49045
|
+
K("details", OY, [K("summary", null, [
|
|
49030
49046
|
q(c, {
|
|
49031
49047
|
name: "i-lucide-chevron-right",
|
|
49032
49048
|
class: "create-advanced-icon"
|
|
@@ -49040,7 +49056,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49040
49056
|
default: L(() => [...s[15] ||= [J("建房后可在房间页修改。", -1)]]),
|
|
49041
49057
|
_: 1
|
|
49042
49058
|
}, 8, ["model-value"])])
|
|
49043
|
-
], 32), K("footer",
|
|
49059
|
+
], 32), K("footer", kY, [E.value && I(r).launch.error ? (U(), W("p", AY, P(I(r).launch.error), 1)) : Y("", !0), K("div", jY, [
|
|
49044
49060
|
K("span", {
|
|
49045
49061
|
class: j(["create-summary", { "is-blocked": oe.value }]),
|
|
49046
49062
|
title: oe.value || _e.value,
|
|
@@ -49048,7 +49064,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49048
49064
|
}, [oe.value ? (U(), G(c, {
|
|
49049
49065
|
key: 0,
|
|
49050
49066
|
name: "i-lucide-circle-alert"
|
|
49051
|
-
})) : Y("", !0), J(P(oe.value ? `还差:${oe.value}` : h.value.length || d.value ? _e.value : ""), 1)], 10,
|
|
49067
|
+
})) : Y("", !0), J(P(oe.value ? `还差:${oe.value}` : h.value.length || d.value ? _e.value : ""), 1)], 10, MY),
|
|
49052
49068
|
q(p, {
|
|
49053
49069
|
label: "取消",
|
|
49054
49070
|
color: "neutral",
|
|
@@ -49072,46 +49088,46 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49072
49088
|
])])]);
|
|
49073
49089
|
};
|
|
49074
49090
|
}
|
|
49075
|
-
}, [["__scopeId", "data-v-4da10016"]]),
|
|
49091
|
+
}, [["__scopeId", "data-v-4da10016"]]), LY = {
|
|
49076
49092
|
class: "account-settings",
|
|
49077
49093
|
"aria-labelledby": "account-heading"
|
|
49078
|
-
},
|
|
49094
|
+
}, RY = {
|
|
49079
49095
|
key: 0,
|
|
49080
49096
|
class: "fine-print",
|
|
49081
49097
|
role: "status"
|
|
49082
|
-
},
|
|
49098
|
+
}, zY = ["aria-label"], BY = { class: "fine-print account-intro" }, VY = {
|
|
49083
49099
|
key: 0,
|
|
49084
49100
|
class: "account-message is-error",
|
|
49085
49101
|
role: "status"
|
|
49086
|
-
}, VY = {
|
|
49087
|
-
key: 1,
|
|
49088
|
-
class: "fine-print"
|
|
49089
49102
|
}, HY = {
|
|
49090
49103
|
key: 1,
|
|
49091
49104
|
class: "fine-print"
|
|
49092
49105
|
}, UY = {
|
|
49106
|
+
key: 1,
|
|
49107
|
+
class: "fine-print"
|
|
49108
|
+
}, WY = {
|
|
49093
49109
|
key: 2,
|
|
49094
49110
|
class: "account-message is-error",
|
|
49095
49111
|
role: "alert"
|
|
49096
|
-
},
|
|
49112
|
+
}, GY = {
|
|
49097
49113
|
key: 3,
|
|
49098
49114
|
class: "account-message",
|
|
49099
49115
|
role: "status"
|
|
49100
|
-
},
|
|
49116
|
+
}, KY = { class: "account-actions" }, qY = {
|
|
49101
49117
|
key: 2,
|
|
49102
49118
|
class: "account-profile"
|
|
49103
|
-
},
|
|
49119
|
+
}, JY = { class: "account-identity" }, YY = { class: "account-avatar-actions" }, XY = { class: "account-name-row" }, ZY = {
|
|
49104
49120
|
key: 0,
|
|
49105
49121
|
class: "account-message is-error",
|
|
49106
49122
|
role: "alert"
|
|
49107
|
-
},
|
|
49123
|
+
}, QY = {
|
|
49108
49124
|
key: 1,
|
|
49109
49125
|
class: "account-message",
|
|
49110
49126
|
role: "status"
|
|
49111
|
-
},
|
|
49127
|
+
}, $Y = {
|
|
49112
49128
|
key: 2,
|
|
49113
49129
|
class: "account-signout account-actions"
|
|
49114
|
-
},
|
|
49130
|
+
}, eX = {
|
|
49115
49131
|
__name: "AccountSettings",
|
|
49116
49132
|
setup(e) {
|
|
49117
49133
|
let { view: t, bridge: n } = xr("discussion"), r = Z(() => t.value.admin), i = Z(() => r.value.profile), a = Z(() => r.value.loaded ? r.value.registered ? r.value.logged_in ? "profile" : "login" : "register" : "loading"), o = /* @__PURE__ */ F(""), s = /* @__PURE__ */ Yt({
|
|
@@ -49179,13 +49195,13 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49179
49195
|
}
|
|
49180
49196
|
return (e, t) => {
|
|
49181
49197
|
let p = YV, y = zV, b = MA, x = pA;
|
|
49182
|
-
return U(), W("section",
|
|
49198
|
+
return U(), W("section", LY, [t[9] ||= K("h3", { id: "account-heading" }, "账号", -1), a.value === "loading" ? (U(), W("p", RY, "正在读取账号状态…")) : a.value === "register" || a.value === "login" ? (U(), W("form", {
|
|
49183
49199
|
key: 1,
|
|
49184
49200
|
class: "dialog-form account-form",
|
|
49185
49201
|
"aria-label": a.value === "register" ? "设置管理员账号" : "登录管理员账号",
|
|
49186
49202
|
onSubmit: uu(m, ["prevent"])
|
|
49187
49203
|
}, [
|
|
49188
|
-
K("p",
|
|
49204
|
+
K("p", BY, [a.value === "register" ? (U(), W(H, { key: 0 }, [J("设置站点管理员账号:名称和头像对所有访客可见,登录后可在没有房间凭据的浏览器中存档、恢复、删除房间。")], 64)) : (U(), W(H, { key: 1 }, [J("登录后可管理房间;未登录时仍可阅读并使用本浏览器创建的房间。")], 64))]),
|
|
49189
49205
|
q(y, {
|
|
49190
49206
|
label: "用户名",
|
|
49191
49207
|
description: a.value === "register" ? "1–30 个字符,也是公开显示的名称" : void 0,
|
|
@@ -49252,24 +49268,24 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49252
49268
|
}, null, 8, ["modelValue", "disabled"])]),
|
|
49253
49269
|
_: 1
|
|
49254
49270
|
}),
|
|
49255
|
-
f.value ? (U(), W("p",
|
|
49271
|
+
f.value ? (U(), W("p", VY, [...t[6] ||= [
|
|
49256
49272
|
J("尚无可用的注册令牌。请在部署网站的电脑上运行 ", -1),
|
|
49257
49273
|
K("code", null, "codiscuss token", -1),
|
|
49258
49274
|
J(",再刷新本页;本地版也可设置环境变量 DISCUSS_ADMIN_SETUP_KEY 后重启。", -1)
|
|
49259
|
-
]])) : (U(), W("p",
|
|
49275
|
+
]])) : (U(), W("p", HY, [...t[7] ||= [
|
|
49260
49276
|
J("首个注册者需要令牌,防止他人抢注:在部署网站的电脑上运行 ", -1),
|
|
49261
49277
|
K("code", null, "codiscuss token", -1),
|
|
49262
49278
|
J(" 获取(一次性);本地版也可用服务端启动日志里的安装令牌。在已连接本机服务的电脑上注册时,账号与密码会保存到 ~/.codiscuss。忘记密码:本地版运行 ", -1),
|
|
49263
49279
|
K("code", null, "python server.py --reset-admin", -1),
|
|
49264
49280
|
J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
|
|
49265
49281
|
]]))
|
|
49266
|
-
], 64)) : (U(), W("p",
|
|
49282
|
+
], 64)) : (U(), W("p", UY, [...t[8] ||= [
|
|
49267
49283
|
J("忘记密码:本地版运行 ", -1),
|
|
49268
49284
|
K("code", null, "python server.py --reset-admin", -1),
|
|
49269
49285
|
J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
|
|
49270
49286
|
]])),
|
|
49271
|
-
s.auth.error ? (U(), W("p",
|
|
49272
|
-
K("div",
|
|
49287
|
+
s.auth.error ? (U(), W("p", WY, P(s.auth.error), 1)) : s.auth.notice ? (U(), W("p", GY, P(s.auth.notice), 1)) : Y("", !0),
|
|
49288
|
+
K("div", KY, [q(b, {
|
|
49273
49289
|
type: "submit",
|
|
49274
49290
|
class: "channel-primary-button",
|
|
49275
49291
|
label: a.value === "register" ? "创建并登录" : "登录",
|
|
@@ -49280,13 +49296,13 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49280
49296
|
"loading",
|
|
49281
49297
|
"disabled"
|
|
49282
49298
|
])])
|
|
49283
|
-
], 40,
|
|
49284
|
-
K("div",
|
|
49299
|
+
], 40, zY)) : (U(), W("div", qY, [
|
|
49300
|
+
K("div", JY, [q(x, {
|
|
49285
49301
|
src: I(n).identities.用户.icon,
|
|
49286
49302
|
alt: `${I(n).display_name("用户")} 的头像`,
|
|
49287
49303
|
size: "lg",
|
|
49288
49304
|
class: "channel-avatar user account-avatar"
|
|
49289
|
-
}, null, 8, ["src", "alt"]), K("div",
|
|
49305
|
+
}, null, 8, ["src", "alt"]), K("div", YY, [
|
|
49290
49306
|
K("input", {
|
|
49291
49307
|
ref_key: "avatar_input",
|
|
49292
49308
|
ref: u,
|
|
@@ -49324,7 +49340,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49324
49340
|
label: "显示名称",
|
|
49325
49341
|
description: "即用户名,对所有访客可见"
|
|
49326
49342
|
}, {
|
|
49327
|
-
default: L(() => [K("div",
|
|
49343
|
+
default: L(() => [K("div", XY, [q(p, {
|
|
49328
49344
|
modelValue: l.value,
|
|
49329
49345
|
"onUpdate:modelValue": t[5] ||= (e) => l.value = e,
|
|
49330
49346
|
autocomplete: "username",
|
|
@@ -49342,8 +49358,8 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49342
49358
|
}, null, 8, ["loading", "disabled"])])]),
|
|
49343
49359
|
_: 1
|
|
49344
49360
|
})], 32),
|
|
49345
|
-
s.profile.error ? (U(), W("p",
|
|
49346
|
-
r.value.local ? Y("", !0) : (U(), W("div",
|
|
49361
|
+
s.profile.error ? (U(), W("p", ZY, P(s.profile.error), 1)) : s.profile.notice ? (U(), W("p", QY, P(s.profile.notice), 1)) : Y("", !0),
|
|
49362
|
+
r.value.local ? Y("", !0) : (U(), W("div", $Y, [q(b, {
|
|
49347
49363
|
label: "退出登录",
|
|
49348
49364
|
icon: "i-lucide-log-out",
|
|
49349
49365
|
color: "neutral",
|
|
@@ -49356,68 +49372,68 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49356
49372
|
]))]);
|
|
49357
49373
|
};
|
|
49358
49374
|
}
|
|
49359
|
-
},
|
|
49375
|
+
}, tX = {
|
|
49360
49376
|
key: 0,
|
|
49361
49377
|
class: "channel-archive-manager"
|
|
49362
|
-
},
|
|
49378
|
+
}, nX = { class: "channel-archive-toolbar" }, rX = {
|
|
49363
49379
|
key: 0,
|
|
49364
49380
|
class: "channel-archive-confirm channel-archive-bulk",
|
|
49365
49381
|
role: "alert"
|
|
49366
|
-
},
|
|
49382
|
+
}, iX = {
|
|
49367
49383
|
key: 1,
|
|
49368
49384
|
role: "alert",
|
|
49369
49385
|
class: "channel-directory-error"
|
|
49370
|
-
},
|
|
49386
|
+
}, aX = { class: "channel-archive-results" }, oX = {
|
|
49371
49387
|
key: 0,
|
|
49372
49388
|
class: "channel-archive-list",
|
|
49373
49389
|
"aria-label": "已存档房间列表"
|
|
49374
|
-
},
|
|
49390
|
+
}, sX = { class: "channel-archive-row" }, cX = { class: "channel-archive-info" }, lX = [
|
|
49375
49391
|
"title",
|
|
49376
49392
|
"disabled",
|
|
49377
49393
|
"onClick"
|
|
49378
|
-
],
|
|
49394
|
+
], uX = { key: 0 }, dX = ["datetime"], fX = { class: "channel-archive-actions" }, pX = {
|
|
49379
49395
|
key: 0,
|
|
49380
49396
|
class: "channel-archive-confirm channel-archive-bulk",
|
|
49381
49397
|
role: "alert"
|
|
49382
|
-
},
|
|
49398
|
+
}, mX = {
|
|
49383
49399
|
key: 1,
|
|
49384
49400
|
class: "channel-archive-empty"
|
|
49385
|
-
},
|
|
49401
|
+
}, hX = { class: "fine-print" }, gX = {
|
|
49386
49402
|
key: 0,
|
|
49387
49403
|
class: "fine-print"
|
|
49388
|
-
},
|
|
49404
|
+
}, _X = { class: "dialog-actions" }, vX = { class: "fine-print" }, yX = { class: "dialog-actions" }, bX = { class: "dialog-actions" }, xX = { class: "channel-management-target" }, SX = {
|
|
49389
49405
|
key: 0,
|
|
49390
49406
|
class: "fine-print"
|
|
49391
|
-
},
|
|
49407
|
+
}, CX = {
|
|
49392
49408
|
key: 1,
|
|
49393
49409
|
class: "fine-print"
|
|
49394
|
-
},
|
|
49410
|
+
}, wX = {
|
|
49395
49411
|
key: 2,
|
|
49396
49412
|
class: "fine-print"
|
|
49397
|
-
},
|
|
49413
|
+
}, TX = { class: "dialog-actions" }, EX = { key: 5 }, DX = { class: "theme-choices" }, OX = ["aria-pressed", "onClick"], kX = { class: "theme-check" }, AX = { class: "channel-reading-setting" }, jX = {
|
|
49398
49414
|
class: "channel-reading-options",
|
|
49399
49415
|
role: "group",
|
|
49400
49416
|
"aria-labelledby": "channel-reading-label"
|
|
49401
|
-
},
|
|
49417
|
+
}, MX = { class: "channel-reading-setting" }, NX = {
|
|
49402
49418
|
class: "channel-reading-options channel-effect-options",
|
|
49403
49419
|
role: "group",
|
|
49404
49420
|
"aria-labelledby": "channel-effects-label"
|
|
49405
|
-
},
|
|
49421
|
+
}, PX = { class: "advanced-content" }, FX = {
|
|
49406
49422
|
key: 0,
|
|
49407
49423
|
class: "fine-print"
|
|
49408
|
-
},
|
|
49424
|
+
}, IX = { class: "advanced-content" }, LX = { class: "expert-fields" }, RX = { class: "dialog-actions" }, zX = { class: "dialog-actions" }, BX = {
|
|
49409
49425
|
key: 9,
|
|
49410
49426
|
class: "original-message"
|
|
49411
|
-
},
|
|
49427
|
+
}, VX = {
|
|
49412
49428
|
key: 0,
|
|
49413
49429
|
role: "alert"
|
|
49414
|
-
},
|
|
49430
|
+
}, HX = { class: "original-meta" }, UX = { class: "fine-print" }, WX = {
|
|
49415
49431
|
key: 0,
|
|
49416
49432
|
class: "channel-answer-summary"
|
|
49417
|
-
},
|
|
49433
|
+
}, GX = { class: "message-prose" }, KX = { class: "message-prose" }, qX = ["innerHTML"], JX = {
|
|
49418
49434
|
key: 2,
|
|
49419
49435
|
class: "fine-print"
|
|
49420
|
-
},
|
|
49436
|
+
}, YX = "topic-expert-modes", XX = {
|
|
49421
49437
|
__name: "WorkspaceDialogs",
|
|
49422
49438
|
props: /*@__PURE__*/ Fa({
|
|
49423
49439
|
detailId: {
|
|
@@ -49709,8 +49725,8 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49709
49725
|
} : void 0,
|
|
49710
49726
|
"onAfter:leave": xe
|
|
49711
49727
|
}, {
|
|
49712
|
-
body: L(() => [a.value === "archives" ? (U(), W("section",
|
|
49713
|
-
K("div",
|
|
49728
|
+
body: L(() => [a.value === "archives" ? (U(), W("section", tX, [
|
|
49729
|
+
K("div", nX, [
|
|
49714
49730
|
q(x, {
|
|
49715
49731
|
modelValue: h.value,
|
|
49716
49732
|
"onUpdate:modelValue": c[0] ||= (e) => h.value = e,
|
|
@@ -49739,7 +49755,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49739
49755
|
}
|
|
49740
49756
|
}, null, 8, ["label", "disabled"])
|
|
49741
49757
|
]),
|
|
49742
|
-
b.value && v.value.length ? (U(), W("div",
|
|
49758
|
+
b.value && v.value.length ? (U(), W("div", rX, [
|
|
49743
49759
|
K("span", null, "将永久删除当前列表中的 " + P(v.value.length) + " 个房间及其全部记录,无法撤销。", 1),
|
|
49744
49760
|
q(fe, {
|
|
49745
49761
|
label: "取消",
|
|
@@ -49755,20 +49771,20 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49755
49771
|
onClick: E
|
|
49756
49772
|
})
|
|
49757
49773
|
])) : Y("", !0),
|
|
49758
|
-
I(o).directory_error ? (U(), W("p",
|
|
49759
|
-
K("div",
|
|
49774
|
+
I(o).directory_error ? (U(), W("p", iX, P(I(o).directory_error), 1)) : Y("", !0),
|
|
49775
|
+
K("div", aX, [v.value.length ? (U(), W("ul", oX, [(U(!0), W(H, null, B(v.value, (e) => (U(), W("li", {
|
|
49760
49776
|
key: e.id,
|
|
49761
49777
|
class: "channel-archive-item"
|
|
49762
|
-
}, [K("div",
|
|
49778
|
+
}, [K("div", sX, [K("div", cX, [K("button", {
|
|
49763
49779
|
class: "channel-archive-title",
|
|
49764
49780
|
title: e.title,
|
|
49765
49781
|
disabled: !!I(u),
|
|
49766
49782
|
onClick: (t) => T(e)
|
|
49767
|
-
}, P(e.title), 9,
|
|
49783
|
+
}, P(e.title), 9, lX), K("small", null, [e.created_at ? (U(), W("span", uX, [
|
|
49768
49784
|
c[28] ||= J("创建于 ", -1),
|
|
49769
|
-
K("time", { datetime: e.created_at }, P(C(e.created_at)), 9,
|
|
49785
|
+
K("time", { datetime: e.created_at }, P(C(e.created_at)), 9, dX),
|
|
49770
49786
|
c[29] ||= J(" · ", -1)
|
|
49771
|
-
])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div",
|
|
49787
|
+
])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div", fX, [q(fe, {
|
|
49772
49788
|
"aria-label": `彻底删除 ${e.title}`,
|
|
49773
49789
|
title: "彻底删除",
|
|
49774
49790
|
icon: "i-lucide-trash-2",
|
|
@@ -49800,7 +49816,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49800
49816
|
"aria-label",
|
|
49801
49817
|
"disabled",
|
|
49802
49818
|
"onClick"
|
|
49803
|
-
])])]), y.value === e.id ? (U(), W("div",
|
|
49819
|
+
])])]), y.value === e.id ? (U(), W("div", pX, [
|
|
49804
49820
|
K("span", null, "永久删除「" + P(e.title) + "」及其全部记录,无法撤销。", 1),
|
|
49805
49821
|
q(fe, {
|
|
49806
49822
|
label: "取消",
|
|
@@ -49816,15 +49832,15 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49816
49832
|
disabled: w(e),
|
|
49817
49833
|
onClick: ee
|
|
49818
49834
|
}, null, 8, ["disabled"])
|
|
49819
|
-
])) : Y("", !0)]))), 128))])) : (U(), W("p",
|
|
49835
|
+
])) : Y("", !0)]))), 128))])) : (U(), W("p", mX, P(m.value.length ? "没有匹配的存档房间" : "暂无已存档房间"), 1))])
|
|
49820
49836
|
])) : a.value === "delete-folder" ? (U(), W("form", {
|
|
49821
49837
|
key: 1,
|
|
49822
49838
|
class: "dialog-form",
|
|
49823
49839
|
onSubmit: c[7] ||= uu((e) => ae(!1), ["prevent"])
|
|
49824
49840
|
}, [
|
|
49825
|
-
K("p",
|
|
49826
|
-
ie.value.length ? (U(), W("p",
|
|
49827
|
-
K("div",
|
|
49841
|
+
K("p", hX, "仅移除「" + P(e.targetFolder?.name) + "」时,房间变为未分组,所有消息和存档状态都会保留。", 1),
|
|
49842
|
+
ie.value.length ? (U(), W("p", gX, "也可以连同其中的 " + P(ie.value.length) + " 个房间一起永久删除,无法撤销。", 1)) : Y("", !0),
|
|
49843
|
+
K("div", _X, [
|
|
49828
49844
|
q(fe, {
|
|
49829
49845
|
label: "取消",
|
|
49830
49846
|
color: "neutral",
|
|
@@ -49849,7 +49865,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49849
49865
|
key: 2,
|
|
49850
49866
|
class: "dialog-form",
|
|
49851
49867
|
onSubmit: uu(oe, ["prevent"])
|
|
49852
|
-
}, [K("p",
|
|
49868
|
+
}, [K("p", vX, "存档「" + P(e.targetFolder?.name) + "」中的 " + P(ie.value.length) + " 个房间,文件夹保留。存档后可在侧栏「已存档」中查阅与恢复;尚未收束的讨论会暂停。", 1), K("div", yX, [q(fe, {
|
|
49853
49869
|
label: "取消",
|
|
49854
49870
|
color: "neutral",
|
|
49855
49871
|
variant: "ghost",
|
|
@@ -49879,7 +49895,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49879
49895
|
"modelValue",
|
|
49880
49896
|
"aria-label",
|
|
49881
49897
|
"readonly"
|
|
49882
|
-
]), K("div",
|
|
49898
|
+
]), K("div", bX, [q(fe, {
|
|
49883
49899
|
label: "取消",
|
|
49884
49900
|
color: "neutral",
|
|
49885
49901
|
variant: "ghost",
|
|
@@ -49904,10 +49920,10 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49904
49920
|
class: "dialog-form",
|
|
49905
49921
|
onSubmit: uu(ne, ["prevent"])
|
|
49906
49922
|
}, [
|
|
49907
|
-
K("p",
|
|
49908
|
-
a.value === "archive" ? (U(), W("p",
|
|
49909
|
-
a.value === "restore" ? (U(), W("p",
|
|
49910
|
-
a.value === "delete" ? (U(), W("p",
|
|
49923
|
+
K("p", xX, [J(P(e.targetRoom?.title) + " ", 1), K("span", null, "· " + P(e.targetRoom?.message_count) + " 条消息", 1)]),
|
|
49924
|
+
a.value === "archive" ? (U(), W("p", SX, "存档后可在侧栏「已存档」中查阅与恢复。已有发言安排会保留;专家需在下次检查时停止自己的定时任务。")) : Y("", !0),
|
|
49925
|
+
a.value === "restore" ? (U(), W("p", CX, "恢复不会自动继续讨论;需要继续时,在主持设置中调整阶段。")) : Y("", !0),
|
|
49926
|
+
a.value === "delete" ? (U(), W("p", wX, "消息、共识和发言安排将一起删除,无法撤销。")) : Y("", !0),
|
|
49911
49927
|
a.value === "rename" ? (U(), G(pe, {
|
|
49912
49928
|
key: 3,
|
|
49913
49929
|
label: "房间名称",
|
|
@@ -49924,7 +49940,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49924
49940
|
}, null, 8, ["modelValue"])]),
|
|
49925
49941
|
_: 1
|
|
49926
49942
|
})) : Y("", !0),
|
|
49927
|
-
K("div",
|
|
49943
|
+
K("div", TX, [q(fe, {
|
|
49928
49944
|
label: "取消",
|
|
49929
49945
|
color: "neutral",
|
|
49930
49946
|
variant: "ghost",
|
|
@@ -49941,10 +49957,10 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49941
49957
|
"loading",
|
|
49942
49958
|
"disabled"
|
|
49943
49959
|
])])
|
|
49944
|
-
], 32)) : a.value === "settings" ? (U(), W("div",
|
|
49945
|
-
q(
|
|
49960
|
+
], 32)) : a.value === "settings" ? (U(), W("div", EX, [
|
|
49961
|
+
q(eX),
|
|
49946
49962
|
c[34] ||= K("h3", { class: "account-appearance-heading" }, "外观", -1),
|
|
49947
|
-
K("div",
|
|
49963
|
+
K("div", DX, [(U(), W(H, null, B(_e, (e) => K("button", {
|
|
49948
49964
|
key: e.value,
|
|
49949
49965
|
class: j({ chosen: I(o).theme === e.value }),
|
|
49950
49966
|
"aria-pressed": I(o).theme === e.value,
|
|
@@ -49959,12 +49975,12 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49959
49975
|
K("b")
|
|
49960
49976
|
], -1)]], 2),
|
|
49961
49977
|
K("span", null, [K("strong", null, P(e.title), 1), K("small", null, P(e.description), 1)]),
|
|
49962
|
-
K("span",
|
|
49978
|
+
K("span", kX, [I(o).theme === e.value ? (U(), G(ye, {
|
|
49963
49979
|
key: 0,
|
|
49964
49980
|
name: "i-lucide-check"
|
|
49965
49981
|
})) : Y("", !0)])
|
|
49966
|
-
], 10,
|
|
49967
|
-
K("section",
|
|
49982
|
+
], 10, OX)), 64))]),
|
|
49983
|
+
K("section", AX, [c[31] ||= K("h3", { id: "channel-reading-label" }, "对话宽度", -1), K("div", jX, [(U(!0), W(H, null, B(e.readingOptions, (e) => (U(), G(fe, {
|
|
49968
49984
|
key: e.value,
|
|
49969
49985
|
label: e.label,
|
|
49970
49986
|
color: "neutral",
|
|
@@ -49978,9 +49994,9 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49978
49994
|
"aria-pressed",
|
|
49979
49995
|
"onClick"
|
|
49980
49996
|
]))), 128))])]),
|
|
49981
|
-
K("section",
|
|
49997
|
+
K("section", MX, [
|
|
49982
49998
|
c[32] ||= K("h3", { id: "channel-effects-label" }, "视觉效果", -1),
|
|
49983
|
-
K("div",
|
|
49999
|
+
K("div", NX, [(U(!0), W(H, null, B(e.effectOptions, (e) => (U(), G(fe, {
|
|
49984
50000
|
key: e.value,
|
|
49985
50001
|
label: e.label,
|
|
49986
50002
|
color: "neutral",
|
|
@@ -49996,7 +50012,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
49996
50012
|
]))), 128))]),
|
|
49997
50013
|
c[33] ||= K("p", { class: "fine-print" }, "精简模式关闭毛玻璃模糊与多层阴影,适合配置较低或需要更流畅滚动的设备。", -1)
|
|
49998
50014
|
])
|
|
49999
|
-
])) : a.value === "create" ? (U(), G(
|
|
50015
|
+
])) : a.value === "create" ? (U(), G(IY, {
|
|
50000
50016
|
key: 6,
|
|
50001
50017
|
"target-folder": e.targetFolder,
|
|
50002
50018
|
onSubmit: N,
|
|
@@ -50054,7 +50070,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50054
50070
|
}, null, 8, ["model-value"])]),
|
|
50055
50071
|
_: 1
|
|
50056
50072
|
})) : Y("", !0),
|
|
50057
|
-
K("section",
|
|
50073
|
+
K("section", PX, [
|
|
50058
50074
|
c[35] ||= K("h3", null, "讨论上限", -1),
|
|
50059
50075
|
q(yU, {
|
|
50060
50076
|
ref_key: "topic_limits",
|
|
@@ -50074,14 +50090,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50074
50090
|
"execution",
|
|
50075
50091
|
"disabled"
|
|
50076
50092
|
]),
|
|
50077
|
-
de.value ? (U(), W("p",
|
|
50093
|
+
de.value ? (U(), W("p", FX, "讨论未结束时,上限不可在此修改。")) : Y("", !0)
|
|
50078
50094
|
]),
|
|
50079
50095
|
q(Te, {
|
|
50080
50096
|
open: le.value,
|
|
50081
50097
|
"onUpdate:open": c[22] ||= (e) => le.value = e,
|
|
50082
50098
|
class: "advanced-fields"
|
|
50083
50099
|
}, {
|
|
50084
|
-
content: L(() => [K("div",
|
|
50100
|
+
content: L(() => [K("div", IX, [
|
|
50085
50101
|
(U(), W(H, null, B([
|
|
50086
50102
|
{
|
|
50087
50103
|
key: "user_request",
|
|
@@ -50108,11 +50124,11 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50108
50124
|
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
50109
50125
|
_: 2
|
|
50110
50126
|
}, 1032, ["label"])), 64)),
|
|
50111
|
-
K("div",
|
|
50112
|
-
"model-value": I(o).experts[
|
|
50127
|
+
K("div", LX, [(U(!0), W(H, null, B(I(k), (e) => (U(), W("div", { key: e }, [K("label", null, P(e), 1), q(S, {
|
|
50128
|
+
"model-value": I(o).experts[YX]?.[e] || "none",
|
|
50113
50129
|
items: ce,
|
|
50114
50130
|
"aria-label": `${e} 参与方式`,
|
|
50115
|
-
"onUpdate:modelValue": (t) => I(s).write_expert(
|
|
50131
|
+
"onUpdate:modelValue": (t) => I(s).write_expert(YX, e, t === "none" ? "" : t)
|
|
50116
50132
|
}, null, 8, [
|
|
50117
50133
|
"model-value",
|
|
50118
50134
|
"aria-label",
|
|
@@ -50130,7 +50146,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50130
50146
|
}, null, 8, ["trailing-icon"])]),
|
|
50131
50147
|
_: 1
|
|
50132
50148
|
}, 8, ["open"]),
|
|
50133
|
-
K("div",
|
|
50149
|
+
K("div", RX, [q(fe, {
|
|
50134
50150
|
label: "取消",
|
|
50135
50151
|
color: "neutral",
|
|
50136
50152
|
variant: "ghost",
|
|
@@ -50174,7 +50190,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50174
50190
|
_: 1
|
|
50175
50191
|
}),
|
|
50176
50192
|
c[37] ||= K("p", { class: "fine-print" }, "创建后为待通知状态;由主持人实际联系专家。", -1),
|
|
50177
|
-
K("div",
|
|
50193
|
+
K("div", zX, [q(fe, {
|
|
50178
50194
|
label: "取消",
|
|
50179
50195
|
variant: "ghost",
|
|
50180
50196
|
color: "neutral",
|
|
@@ -50185,8 +50201,8 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50185
50201
|
label: "创建发言安排",
|
|
50186
50202
|
loading: I(u) === "schedule"
|
|
50187
50203
|
}, null, 8, ["loading"])])
|
|
50188
|
-
], 32)) : a.value === "message" ? (U(), W("div",
|
|
50189
|
-
K("div",
|
|
50204
|
+
], 32)) : a.value === "message" ? (U(), W("div", BX, [me.value ? (U(), W("p", VX, P(me.value), 1)) : A.value ? (U(), W(H, { key: 1 }, [
|
|
50205
|
+
K("div", HX, [
|
|
50190
50206
|
K("strong", null, P(I(s).display_name(A.value.author)), 1),
|
|
50191
50207
|
K("span", null, "#" + P(A.value.id), 1),
|
|
50192
50208
|
q(Ee, {
|
|
@@ -50197,14 +50213,14 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50197
50213
|
_: 1
|
|
50198
50214
|
})
|
|
50199
50215
|
]),
|
|
50200
|
-
K("p",
|
|
50201
|
-
A.value.summary ? (U(), W("section",
|
|
50202
|
-
K("p",
|
|
50216
|
+
K("p", UX, P(I(s).provenance(A.value)) + " · " + P(new Date(A.value.created_at).toLocaleString("zh-CN")), 1),
|
|
50217
|
+
A.value.summary ? (U(), W("section", WX, [K("small", null, "回答摘要 · " + P(I(s).display_name(A.value.summary_by)), 1), K("p", GX, P(A.value.summary), 1)])) : Y("", !0),
|
|
50218
|
+
K("p", KX, P(A.value.text), 1),
|
|
50203
50219
|
A.value.attachments?.length ? (U(), W("div", {
|
|
50204
50220
|
key: 1,
|
|
50205
50221
|
onClick: be,
|
|
50206
50222
|
innerHTML: I(s).attachment_markup(A.value.attachments)
|
|
50207
|
-
}, null, 8,
|
|
50223
|
+
}, null, 8, qX)) : Y("", !0),
|
|
50208
50224
|
A.value.reply_to ? (U(), G(fe, {
|
|
50209
50225
|
key: 2,
|
|
50210
50226
|
label: `查看被回复的原文 #${A.value.reply_to}`,
|
|
@@ -50214,7 +50230,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50214
50230
|
class: "channel-surface-button",
|
|
50215
50231
|
onClick: Se
|
|
50216
50232
|
}, null, 8, ["label"])) : Y("", !0)
|
|
50217
|
-
], 64)) : (U(), W("p",
|
|
50233
|
+
], 64)) : (U(), W("p", JX, "正在读取原文…"))])) : Y("", !0)]),
|
|
50218
50234
|
_: 1
|
|
50219
50235
|
}, 8, [
|
|
50220
50236
|
"open",
|
|
@@ -50225,7 +50241,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50225
50241
|
]);
|
|
50226
50242
|
};
|
|
50227
50243
|
}
|
|
50228
|
-
},
|
|
50244
|
+
}, ZX = {
|
|
50229
50245
|
__name: "ContextMenuContent",
|
|
50230
50246
|
props: {
|
|
50231
50247
|
items: {
|
|
@@ -50520,7 +50536,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50520
50536
|
"disabled",
|
|
50521
50537
|
"text-value",
|
|
50522
50538
|
"class"
|
|
50523
|
-
]), q(
|
|
50539
|
+
]), q(ZX, X({
|
|
50524
50540
|
sub: "",
|
|
50525
50541
|
class: r.ui?.content,
|
|
50526
50542
|
ui: e.ui,
|
|
@@ -50631,7 +50647,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50631
50647
|
_: 3
|
|
50632
50648
|
}, 16)], 64));
|
|
50633
50649
|
}
|
|
50634
|
-
},
|
|
50650
|
+
}, QX = {
|
|
50635
50651
|
slots: {
|
|
50636
50652
|
content: "min-w-32 max-h-(--reka-context-menu-content-available-height) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_var(--ease-out)] data-[state=closed]:animate-[scale-out_100ms_var(--ease-out)] origin-(--reka-context-menu-content-transform-origin) flex flex-col",
|
|
50637
50653
|
viewport: "relative divide-y divide-default scroll-py-1 overflow-y-auto flex-1",
|
|
@@ -50819,7 +50835,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50819
50835
|
}
|
|
50820
50836
|
],
|
|
50821
50837
|
defaultVariants: { size: "md" }
|
|
50822
|
-
},
|
|
50838
|
+
}, $X = {
|
|
50823
50839
|
__name: "ContextMenu",
|
|
50824
50840
|
props: {
|
|
50825
50841
|
size: {
|
|
@@ -50889,7 +50905,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50889
50905
|
emits: ["update:open"],
|
|
50890
50906
|
setup(e, { emit: t }) {
|
|
50891
50907
|
let n = e, r = t, i = Aa(), a = AE("contextMenu", n), o = Cm(), s = jE(om(a, "modal"), r), c = /* @__PURE__ */ Sn(() => a.content), l = () => Vm(i, ["default"]), u = Z(() => oA({
|
|
50892
|
-
extend:
|
|
50908
|
+
extend: QX,
|
|
50893
50909
|
...o.ui?.contextMenu || {}
|
|
50894
50910
|
})({ size: a.size }));
|
|
50895
50911
|
return (e, t) => (U(), G(I(iC), M(Ss(I(s))), {
|
|
@@ -50901,7 +50917,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50901
50917
|
}, {
|
|
50902
50918
|
default: L(() => [V(e.$slots, "default")]),
|
|
50903
50919
|
_: 3
|
|
50904
|
-
}, 8, ["disabled", "class"])) : Y("", !0), q(
|
|
50920
|
+
}, 8, ["disabled", "class"])) : Y("", !0), q(ZX, X({
|
|
50905
50921
|
class: u.value.content({ class: [!i.default && I(a).class, I(a).ui?.content] }),
|
|
50906
50922
|
ui: u.value,
|
|
50907
50923
|
"ui-override": I(a).ui
|
|
@@ -50931,20 +50947,20 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
50931
50947
|
_: 3
|
|
50932
50948
|
}, 16));
|
|
50933
50949
|
}
|
|
50934
|
-
},
|
|
50950
|
+
}, eZ = {
|
|
50935
50951
|
key: 0,
|
|
50936
50952
|
class: "channel-import-reading"
|
|
50937
|
-
},
|
|
50953
|
+
}, tZ = {
|
|
50938
50954
|
class: "channel-import-list",
|
|
50939
50955
|
"aria-live": "polite"
|
|
50940
|
-
},
|
|
50956
|
+
}, nZ = { class: "channel-import-head" }, rZ = ["title"], iZ = {
|
|
50941
50957
|
key: 0,
|
|
50942
50958
|
role: "alert",
|
|
50943
50959
|
class: "channel-import-error"
|
|
50944
|
-
},
|
|
50960
|
+
}, aZ = {
|
|
50945
50961
|
key: 1,
|
|
50946
50962
|
class: "channel-import-members"
|
|
50947
|
-
},
|
|
50963
|
+
}, oZ = ["title"], sZ = { class: "dialog-actions" }, cZ = /*#__PURE__*/ YH({
|
|
50948
50964
|
__name: "ImportDialog",
|
|
50949
50965
|
props: {
|
|
50950
50966
|
open: {
|
|
@@ -51000,21 +51016,21 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51000
51016
|
}
|
|
51001
51017
|
}, {
|
|
51002
51018
|
body: L(() => [
|
|
51003
|
-
!r.value.done && !r.value.rooms.length ? (U(), W("p",
|
|
51004
|
-
K("ul",
|
|
51019
|
+
!r.value.done && !r.value.rooms.length ? (U(), W("p", eZ, "正在读取备份文件…")) : Y("", !0),
|
|
51020
|
+
K("ul", tZ, [(U(!0), W(H, null, B(r.value.rooms, (e, t) => (U(), W("li", {
|
|
51005
51021
|
key: t,
|
|
51006
51022
|
class: j(["channel-import-room", `is-${e.status}`])
|
|
51007
51023
|
}, [
|
|
51008
|
-
K("div",
|
|
51024
|
+
K("div", nZ, [
|
|
51009
51025
|
q(o, {
|
|
51010
51026
|
name: i[e.status].icon,
|
|
51011
51027
|
class: j({ "animate-spin": e.status === "importing" })
|
|
51012
51028
|
}, null, 8, ["name", "class"]),
|
|
51013
|
-
K("strong", { title: e.title }, P(e.title), 9,
|
|
51029
|
+
K("strong", { title: e.title }, P(e.title), 9, rZ),
|
|
51014
51030
|
K("span", null, P(i[e.status].label), 1)
|
|
51015
51031
|
]),
|
|
51016
|
-
e.error ? (U(), W("p",
|
|
51017
|
-
e.members.length ? (U(), W("ul",
|
|
51032
|
+
e.error ? (U(), W("p", iZ, P(e.error), 1)) : Y("", !0),
|
|
51033
|
+
e.members.length ? (U(), W("ul", aZ, [(U(!0), W(H, null, B(e.members, (e) => (U(), W("li", {
|
|
51018
51034
|
key: e.name,
|
|
51019
51035
|
class: j({ "is-failed": e.failed })
|
|
51020
51036
|
}, [
|
|
@@ -51023,7 +51039,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51023
51039
|
e.resume ? (U(), W("code", {
|
|
51024
51040
|
key: 0,
|
|
51025
51041
|
title: `没有开着的原窗口时,在 ${e.resume.cwd} 运行`
|
|
51026
|
-
}, P(e.resume.command), 9,
|
|
51042
|
+
}, P(e.resume.command), 9, oZ)) : Y("", !0)
|
|
51027
51043
|
], 2))), 128))])) : Y("", !0),
|
|
51028
51044
|
(U(!0), W(H, null, B(e.problems, (e) => (U(), W("p", {
|
|
51029
51045
|
key: e,
|
|
@@ -51035,7 +51051,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51035
51051
|
role: "alert",
|
|
51036
51052
|
class: "channel-import-error is-file"
|
|
51037
51053
|
}, P(e), 1))), 128)),
|
|
51038
|
-
K("div",
|
|
51054
|
+
K("div", sZ, [q(s, {
|
|
51039
51055
|
label: "完成",
|
|
51040
51056
|
class: "channel-primary-button",
|
|
51041
51057
|
disabled: !r.value.done,
|
|
@@ -51051,47 +51067,47 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51051
51067
|
]);
|
|
51052
51068
|
};
|
|
51053
51069
|
}
|
|
51054
|
-
}, [["__scopeId", "data-v-03a2f1dd"]]),
|
|
51070
|
+
}, [["__scopeId", "data-v-03a2f1dd"]]), lZ = { class: "channel-directory-manager" }, uZ = { class: "channel-directory-heading" }, dZ = ["aria-expanded"], fZ = { class: "channel-directory-actions" }, pZ = {
|
|
51055
51071
|
"aria-label": "协作房间列表",
|
|
51056
51072
|
class: "channel-room-list",
|
|
51057
51073
|
"data-room-directory": ""
|
|
51058
|
-
},
|
|
51074
|
+
}, mZ = ["data-room-folder", "data-drag-folder"], hZ = [
|
|
51059
51075
|
"disabled",
|
|
51060
51076
|
"aria-label",
|
|
51061
51077
|
"aria-expanded",
|
|
51062
51078
|
"onKeydown",
|
|
51063
51079
|
"onClick"
|
|
51064
|
-
],
|
|
51080
|
+
], gZ = { class: "channel-folder-name" }, _Z = {
|
|
51065
51081
|
class: "channel-directory-count",
|
|
51066
51082
|
"aria-hidden": "true"
|
|
51067
|
-
},
|
|
51083
|
+
}, vZ = { class: "channel-folder-actions" }, yZ = ["data-drop-folder"], bZ = {
|
|
51068
51084
|
key: 0,
|
|
51069
51085
|
class: "channel-directory-empty",
|
|
51070
51086
|
role: "status"
|
|
51071
|
-
},
|
|
51087
|
+
}, xZ = ["data-drag-room"], SZ = [
|
|
51072
51088
|
"aria-label",
|
|
51073
51089
|
"disabled",
|
|
51074
51090
|
"onKeydown"
|
|
51075
|
-
],
|
|
51091
|
+
], CZ = [
|
|
51076
51092
|
"title",
|
|
51077
51093
|
"aria-label",
|
|
51078
51094
|
"aria-current",
|
|
51079
51095
|
"onClick"
|
|
51080
|
-
],
|
|
51096
|
+
], wZ = { class: "channel-room-actions" }, TZ = {
|
|
51081
51097
|
key: 0,
|
|
51082
51098
|
class: "channel-directory-empty"
|
|
51083
|
-
},
|
|
51099
|
+
}, EZ = {
|
|
51084
51100
|
key: 0,
|
|
51085
51101
|
class: "channel-archive-count"
|
|
51086
|
-
},
|
|
51102
|
+
}, DZ = {
|
|
51087
51103
|
key: 0,
|
|
51088
51104
|
role: "status",
|
|
51089
51105
|
class: "channel-directory-notice"
|
|
51090
|
-
},
|
|
51106
|
+
}, OZ = {
|
|
51091
51107
|
key: 1,
|
|
51092
51108
|
role: "alert",
|
|
51093
51109
|
class: "channel-directory-error"
|
|
51094
|
-
},
|
|
51110
|
+
}, kZ = {
|
|
51095
51111
|
__name: "ChannelDirectory",
|
|
51096
51112
|
emits: [
|
|
51097
51113
|
"select",
|
|
@@ -51322,8 +51338,8 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51322
51338
|
];
|
|
51323
51339
|
}
|
|
51324
51340
|
return (e, t) => {
|
|
51325
|
-
let u = MA, m = sA, h = $V, b = CH, x =
|
|
51326
|
-
return U(), W("div",
|
|
51341
|
+
let u = MA, m = sA, h = $V, b = CH, x = $X;
|
|
51342
|
+
return U(), W("div", lZ, [
|
|
51327
51343
|
q(u, {
|
|
51328
51344
|
label: "新建对话",
|
|
51329
51345
|
icon: "i-lucide-plus",
|
|
@@ -51332,12 +51348,12 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51332
51348
|
disabled: I(r).directory_pending.includes("create-room"),
|
|
51333
51349
|
onClick: t[0] ||= (e) => n("create", null)
|
|
51334
51350
|
}, null, 8, ["disabled"]),
|
|
51335
|
-
K("div",
|
|
51351
|
+
K("div", uZ, [K("button", {
|
|
51336
51352
|
type: "button",
|
|
51337
51353
|
class: "channel-section-toggle",
|
|
51338
51354
|
"aria-expanded": _.value,
|
|
51339
51355
|
onClick: t[1] ||= (e) => _.value = !_.value
|
|
51340
|
-
}, [q(m, { name: _.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[8] ||= J("协作房间", -1)], 8,
|
|
51356
|
+
}, [q(m, { name: _.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[8] ||= J("协作房间", -1)], 8, dZ), K("div", fZ, [
|
|
51341
51357
|
q(h, { text: "新建文件夹" }, {
|
|
51342
51358
|
default: L(() => [q(u, {
|
|
51343
51359
|
icon: "i-lucide-plus",
|
|
@@ -51379,7 +51395,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51379
51395
|
onChange: g
|
|
51380
51396
|
}, null, 544)
|
|
51381
51397
|
])]),
|
|
51382
|
-
vr(K("nav",
|
|
51398
|
+
vr(K("nav", pZ, [(U(!0), W(H, null, B(l.value, (e, s) => (U(), W("section", {
|
|
51383
51399
|
key: e.order_id,
|
|
51384
51400
|
class: "channel-folder-section",
|
|
51385
51401
|
"data-room-folder": e.id,
|
|
@@ -51408,9 +51424,9 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51408
51424
|
}, [
|
|
51409
51425
|
q(m, { name: v.value.has(e.id) ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
|
|
51410
51426
|
q(m, { name: "i-lucide-folder" }),
|
|
51411
|
-
K("span",
|
|
51412
|
-
K("small",
|
|
51413
|
-
], 40,
|
|
51427
|
+
K("span", gZ, P(e.name), 1),
|
|
51428
|
+
K("small", _Z, P(e.pending ? "保存中" : e.rooms.length), 1)
|
|
51429
|
+
], 40, hZ), K("div", vZ, [q(h, { text: `在${e.name}中新建对话` }, {
|
|
51414
51430
|
default: L(() => [q(u, {
|
|
51415
51431
|
icon: "i-lucide-square-pen",
|
|
51416
51432
|
"aria-label": `在${e.name}中新建对话`,
|
|
@@ -51447,7 +51463,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51447
51463
|
key: 1,
|
|
51448
51464
|
class: j(e.id ? "channel-folder-rooms" : "channel-root-rooms"),
|
|
51449
51465
|
"data-drop-folder": e.id ? void 0 : ""
|
|
51450
|
-
}, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p",
|
|
51466
|
+
}, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p", bZ, "正在创建:" + P(I(r).creating_room.title), 1)) : Y("", !0), (U(!0), W(H, null, B(e.rooms, (s, c) => (U(), G(x, {
|
|
51451
51467
|
key: s.id,
|
|
51452
51468
|
items: C(s, c, s.folder_id || null, e.rooms.length),
|
|
51453
51469
|
ui: { content: "channel-menu channel-topic-menu" }
|
|
@@ -51472,7 +51488,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51472
51488
|
direction: 1,
|
|
51473
51489
|
folder_id: s.folder_id || null
|
|
51474
51490
|
}), ["prevent"]), ["down"])]
|
|
51475
|
-
}, [q(m, { name: "i-lucide-grip-vertical" })], 40,
|
|
51491
|
+
}, [q(m, { name: "i-lucide-grip-vertical" })], 40, SZ),
|
|
51476
51492
|
K("button", {
|
|
51477
51493
|
class: "channel-room-select",
|
|
51478
51494
|
"data-drag-title": "",
|
|
@@ -51481,8 +51497,8 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51481
51497
|
"aria-current": s.id === I(r).room?.id ? "page" : void 0,
|
|
51482
51498
|
onPointerdown: t[5] ||= (e) => !I(o) && I(i).start_drag(e),
|
|
51483
51499
|
onClick: (e) => n("select", s.id)
|
|
51484
|
-
}, [K("span", null, P(s.title), 1)], 40,
|
|
51485
|
-
K("div",
|
|
51500
|
+
}, [K("span", null, P(s.title), 1)], 40, CZ),
|
|
51501
|
+
K("div", wZ, [q(h, {
|
|
51486
51502
|
text: s.archived ? "恢复房间" : "存档房间",
|
|
51487
51503
|
ui: { content: "channel-topic-tooltip" }
|
|
51488
51504
|
}, {
|
|
@@ -51523,9 +51539,9 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51523
51539
|
}, null, 8, ["aria-label"])]),
|
|
51524
51540
|
_: 2
|
|
51525
51541
|
}, 1032, ["items"])])
|
|
51526
|
-
], 10,
|
|
51542
|
+
], 10, xZ)]),
|
|
51527
51543
|
_: 2
|
|
51528
|
-
}, 1032, ["items"]))), 128))], 10,
|
|
51544
|
+
}, 1032, ["items"]))), 128))], 10, yZ)) : Y("", !0)], 8, mZ))), 128)), s.value.length ? Y("", !0) : (U(), W("p", TZ, "暂无协作房间"))], 512), [[Vc, _.value]]),
|
|
51529
51545
|
vr(q(u, {
|
|
51530
51546
|
icon: "i-lucide-archive",
|
|
51531
51547
|
color: "neutral",
|
|
@@ -51534,44 +51550,44 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51534
51550
|
"aria-haspopup": "dialog",
|
|
51535
51551
|
onClick: t[6] ||= (e) => n("archives")
|
|
51536
51552
|
}, {
|
|
51537
|
-
default: L(() => [t[9] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small",
|
|
51553
|
+
default: L(() => [t[9] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small", EZ, P(c.value), 1)) : Y("", !0)]),
|
|
51538
51554
|
_: 1
|
|
51539
51555
|
}, 512), [[Vc, _.value]]),
|
|
51540
|
-
I(r).directory_notice ? (U(), W("p",
|
|
51541
|
-
I(r).directory_error ? (U(), W("p",
|
|
51542
|
-
q(
|
|
51556
|
+
I(r).directory_notice ? (U(), W("p", DZ, P(I(r).directory_notice), 1)) : Y("", !0),
|
|
51557
|
+
I(r).directory_error ? (U(), W("p", OZ, P(I(r).directory_error), 1)) : Y("", !0),
|
|
51558
|
+
q(cZ, {
|
|
51543
51559
|
open: p.value,
|
|
51544
51560
|
"onUpdate:open": t[7] ||= (e) => p.value = e
|
|
51545
51561
|
}, null, 8, ["open"])
|
|
51546
51562
|
]);
|
|
51547
51563
|
};
|
|
51548
51564
|
}
|
|
51549
|
-
},
|
|
51565
|
+
}, AZ = {
|
|
51550
51566
|
key: 0,
|
|
51551
51567
|
class: "pb-invite",
|
|
51552
51568
|
"aria-label": "启动手动成员"
|
|
51553
|
-
},
|
|
51569
|
+
}, jZ = { class: "pb-invite-lead" }, MZ = {
|
|
51554
51570
|
key: 0,
|
|
51555
51571
|
role: "alert",
|
|
51556
51572
|
class: "pb-free-note is-error"
|
|
51557
|
-
},
|
|
51573
|
+
}, NZ = { class: "pb-invite-launches" }, PZ = { class: "pb-invite-footer" }, FZ = {
|
|
51558
51574
|
key: 0,
|
|
51559
51575
|
class: "pb-invite-cards"
|
|
51560
|
-
},
|
|
51576
|
+
}, IZ = {
|
|
51561
51577
|
key: 0,
|
|
51562
51578
|
class: "fine-print"
|
|
51563
|
-
},
|
|
51579
|
+
}, LZ = ["aria-hidden"], RZ = {
|
|
51564
51580
|
key: 2,
|
|
51565
51581
|
class: "pb-invite-empty"
|
|
51566
|
-
},
|
|
51582
|
+
}, zZ = {
|
|
51567
51583
|
key: 3,
|
|
51568
51584
|
role: "alert",
|
|
51569
51585
|
class: "fine-print"
|
|
51570
|
-
},
|
|
51586
|
+
}, BZ = {
|
|
51571
51587
|
key: 4,
|
|
51572
51588
|
role: "alert",
|
|
51573
51589
|
class: "pb-free-note is-error"
|
|
51574
|
-
},
|
|
51590
|
+
}, VZ = { class: "pb-invite-footer" }, HZ = 2e3, UZ = "preset:", WZ = /*#__PURE__*/ YH({
|
|
51575
51591
|
__name: "InviteDialog",
|
|
51576
51592
|
props: /*@__PURE__*/ Fa({ description: {
|
|
51577
51593
|
type: String,
|
|
@@ -51589,7 +51605,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51589
51605
|
async function u(e) {
|
|
51590
51606
|
clearTimeout(l), c.value = "", await i("copy_member_launch", e) && (c.value = e, l = setTimeout(() => {
|
|
51591
51607
|
c.value = "";
|
|
51592
|
-
},
|
|
51608
|
+
}, HZ));
|
|
51593
51609
|
}
|
|
51594
51610
|
let d = /* @__PURE__ */ F([]), f = 0, p = /* @__PURE__ */ F([]), m = /* @__PURE__ */ F(!1), h = Z(() => Object.keys(r.launch_clients)), g = Z(() => n.value && r.expert_presets()), _ = Z(() => (o.value.members || []).map((e) => e.name)), v = (e) => _.value.filter((t) => r.platform_of(t) === e).length, y = Z(() => [...d.value.filter((e) => e.mode !== "manual"), ...d.value.filter((e) => e.mode === "manual")]), b = Z(() => {
|
|
51595
51611
|
let e = /* @__PURE__ */ new Set([..._.value, ...d.value.filter((e) => e.preset).map((e) => e.name)]);
|
|
@@ -51628,7 +51644,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51628
51644
|
title: v(e) ? `已在场 ${v(e)} 位 · 将添加新实例` : "",
|
|
51629
51645
|
aria_label: `添加 ${e} 实例`
|
|
51630
51646
|
})), ...g.value.map((e, t) => ({
|
|
51631
|
-
value:
|
|
51647
|
+
value: UZ + e.name,
|
|
51632
51648
|
name: e.label || e.name,
|
|
51633
51649
|
...r.identities[r.platform_of(e.name)],
|
|
51634
51650
|
separated: t === 0,
|
|
@@ -51636,7 +51652,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51636
51652
|
aria_label: `添加预设 ${e.label || e.name}`
|
|
51637
51653
|
}))]);
|
|
51638
51654
|
function T(e) {
|
|
51639
|
-
if (!e.startsWith(
|
|
51655
|
+
if (!e.startsWith(UZ)) return C(e);
|
|
51640
51656
|
let t = g.value.find((t) => t.name === e.slice(7));
|
|
51641
51657
|
t && ee(t);
|
|
51642
51658
|
}
|
|
@@ -51675,10 +51691,10 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51675
51691
|
body: "dialog-body"
|
|
51676
51692
|
}
|
|
51677
51693
|
}, {
|
|
51678
|
-
body: L(() => [p.value.length && !d.value.length ? (U(), W("div",
|
|
51679
|
-
K("p",
|
|
51680
|
-
I(n).access?.error ? (U(), W("p",
|
|
51681
|
-
K("ul",
|
|
51694
|
+
body: L(() => [p.value.length && !d.value.length ? (U(), W("div", AZ, [
|
|
51695
|
+
K("p", jZ, P(p.value.length > 1 ? `${p.value.length} 位手动成员已加入` : "手动成员已加入") + ",把启动指令交给各自的 AI 会话,注册后才算到场。", 1),
|
|
51696
|
+
I(n).access?.error ? (U(), W("p", MZ, P(I(n).access.error), 1)) : Y("", !0),
|
|
51697
|
+
K("ul", NZ, [(U(!0), W(H, null, B(p.value, (e) => (U(), W("li", { key: e }, [
|
|
51682
51698
|
q(l, {
|
|
51683
51699
|
src: I(r).identities[I(r).platform_of(e)]?.icon,
|
|
51684
51700
|
text: I(r).identities[I(r).platform_of(e)]?.initials,
|
|
@@ -51713,7 +51729,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51713
51729
|
])
|
|
51714
51730
|
]))), 128))]),
|
|
51715
51731
|
o[3] ||= K("p", { class: "fine-print" }, "指令含该成员的凭证,只交给对应的会话;关闭后仍可在参与者列表中复制。", -1),
|
|
51716
|
-
K("div",
|
|
51732
|
+
K("div", PZ, [q(f, {
|
|
51717
51733
|
label: "完成",
|
|
51718
51734
|
class: "channel-primary-button",
|
|
51719
51735
|
onClick: o[0] ||= (e) => t.value = !1
|
|
@@ -51729,7 +51745,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51729
51745
|
items: w.value,
|
|
51730
51746
|
onAdd: T
|
|
51731
51747
|
}, null, 8, ["items"]),
|
|
51732
|
-
d.value.length ? (U(), W("div",
|
|
51748
|
+
d.value.length ? (U(), W("div", FZ, [(U(!0), W(H, null, B(d.value, (e) => (U(), W("div", {
|
|
51733
51749
|
key: e.id,
|
|
51734
51750
|
class: "pb-invite-pick"
|
|
51735
51751
|
}, [q(MJ, {
|
|
@@ -51745,15 +51761,15 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51745
51761
|
"status",
|
|
51746
51762
|
"onMode",
|
|
51747
51763
|
"onRemove"
|
|
51748
|
-
]), b.value.get(e) === e.name ? Y("", !0) : (U(), W("p",
|
|
51764
|
+
]), b.value.get(e) === e.name ? Y("", !0) : (U(), W("p", IZ, "同一 AI 已有实例,将以 " + P(b.value.get(e)) + " 加入,使用独立会话。", 1))]))), 128))])) : Y("", !0),
|
|
51749
51765
|
d.value.length ? (U(), W("p", {
|
|
51750
51766
|
key: 1,
|
|
51751
51767
|
class: j(["fine-print", { "pb-invite-reserved": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual")) }]),
|
|
51752
51768
|
"aria-hidden": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual"))
|
|
51753
|
-
}, "手动启动的成员排在程序启动的成员之后加入队列。", 10,
|
|
51754
|
-
d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p",
|
|
51755
|
-
m.value && I(n).free_error ? (U(), W("p",
|
|
51756
|
-
K("div",
|
|
51769
|
+
}, "手动启动的成员排在程序启动的成员之后加入队列。", 10, LZ)) : (U(), W("p", RZ, "选择一位或多位 AI(同一 AI 可重复添加),点卡片翻面设置软件、模型与项目权限。")),
|
|
51770
|
+
d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p", zZ, "邀请需要本机服务,请在运行 AI 的电脑打开本机网站。")) : Y("", !0),
|
|
51771
|
+
m.value && I(n).free_error ? (U(), W("p", BZ, P(I(n).free_error), 1)) : Y("", !0),
|
|
51772
|
+
K("div", VZ, [q(f, {
|
|
51757
51773
|
label: "取消",
|
|
51758
51774
|
color: "neutral",
|
|
51759
51775
|
variant: "ghost",
|
|
@@ -51775,7 +51791,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51775
51791
|
}, 8, ["open", "description"]);
|
|
51776
51792
|
};
|
|
51777
51793
|
}
|
|
51778
|
-
}, [["__scopeId", "data-v-95048b60"]]),
|
|
51794
|
+
}, [["__scopeId", "data-v-95048b60"]]), GZ = { class: "start-discussion-footer" }, KZ = 3, qZ = /*#__PURE__*/ YH({
|
|
51779
51795
|
__name: "StartDiscussionDialog",
|
|
51780
51796
|
props: {
|
|
51781
51797
|
open: {
|
|
@@ -51786,9 +51802,9 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51786
51802
|
},
|
|
51787
51803
|
emits: ["update:open"],
|
|
51788
51804
|
setup(e) {
|
|
51789
|
-
let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(
|
|
51805
|
+
let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(KZ), s = /* @__PURE__ */ F(0), c = /* @__PURE__ */ F(""), l = /* @__PURE__ */ F(!1), u = /* @__PURE__ */ F(null);
|
|
51790
51806
|
R(t, (e) => {
|
|
51791
|
-
e && (a.value = "", o.value =
|
|
51807
|
+
e && (a.value = "", o.value = KZ, s.value = 0, c.value = "", l.value = !1);
|
|
51792
51808
|
});
|
|
51793
51809
|
async function d() {
|
|
51794
51810
|
u.value?.settle();
|
|
@@ -51856,7 +51872,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51856
51872
|
"minutes",
|
|
51857
51873
|
"execution_minutes"
|
|
51858
51874
|
]),
|
|
51859
|
-
K("div",
|
|
51875
|
+
K("div", GZ, [q(h, {
|
|
51860
51876
|
label: "取消",
|
|
51861
51877
|
color: "neutral",
|
|
51862
51878
|
variant: "ghost",
|
|
@@ -51874,21 +51890,21 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51874
51890
|
}, 8, ["open"]);
|
|
51875
51891
|
};
|
|
51876
51892
|
}
|
|
51877
|
-
}, [["__scopeId", "data-v-dee972d6"]]),
|
|
51893
|
+
}, [["__scopeId", "data-v-dee972d6"]]), JZ = { class: "pb-status-line" }, YZ = { role: "status" }, XZ = {
|
|
51878
51894
|
key: 0,
|
|
51879
51895
|
class: "pb-status-detail"
|
|
51880
|
-
},
|
|
51896
|
+
}, ZZ = { class: "pb-meters" }, QZ = { class: "pb-meter-label" }, $Z = {
|
|
51881
51897
|
key: 0,
|
|
51882
51898
|
class: "pb-bar"
|
|
51883
|
-
},
|
|
51899
|
+
}, eQ = {
|
|
51884
51900
|
key: 0,
|
|
51885
51901
|
class: "pb-section",
|
|
51886
51902
|
"aria-label": "当前焦点"
|
|
51887
|
-
},
|
|
51903
|
+
}, tQ = {
|
|
51888
51904
|
key: 1,
|
|
51889
51905
|
class: "pb-actions",
|
|
51890
51906
|
"aria-label": "讨论操作"
|
|
51891
|
-
},
|
|
51907
|
+
}, nQ = { class: "progress-ending" }, rQ = ["disabled"], iQ = 90, aQ = {
|
|
51892
51908
|
__name: "ProgressBoard",
|
|
51893
51909
|
setup(e) {
|
|
51894
51910
|
let { view: t, bridge: n, act: r, pending: i } = xr("discussion"), a = Z(() => t.value.room), o = Z(() => a.value.session), s = Z(() => a.value.limits || {}), c = /* @__PURE__ */ F(0);
|
|
@@ -51954,24 +51970,24 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
51954
51970
|
class: j(["pb-status", `is-${h.value.tone}`]),
|
|
51955
51971
|
"aria-label": "讨论状态"
|
|
51956
51972
|
}, [
|
|
51957
|
-
K("div",
|
|
51958
|
-
h.value.detail ? (U(), W("p",
|
|
51959
|
-
K("div",
|
|
51973
|
+
K("div", JZ, [t[6] ||= K("span", { class: "pb-dot" }, null, -1), K("strong", YZ, P(h.value.title), 1)]),
|
|
51974
|
+
h.value.detail ? (U(), W("p", XZ, P(h.value.detail), 1)) : Y("", !0),
|
|
51975
|
+
K("div", ZZ, [(U(!0), W(H, null, B(_.value, (e) => (U(), W("div", {
|
|
51960
51976
|
key: e.label,
|
|
51961
51977
|
class: "pb-meter"
|
|
51962
|
-
}, [K("div",
|
|
51978
|
+
}, [K("div", QZ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", $Z, [K("i", { style: A({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])
|
|
51963
51979
|
], 2),
|
|
51964
|
-
m.value ? (U(), W("section",
|
|
51980
|
+
m.value ? (U(), W("section", eQ, [
|
|
51965
51981
|
t[7] ||= K("h4", null, "当前焦点", -1),
|
|
51966
51982
|
K("p", { class: j(["pb-focus", { "is-expanded": p.value }]) }, P(m.value), 3),
|
|
51967
|
-
m.value.length >
|
|
51983
|
+
m.value.length > iQ ? (U(), W("button", {
|
|
51968
51984
|
key: 0,
|
|
51969
51985
|
type: "button",
|
|
51970
51986
|
class: "pb-link",
|
|
51971
51987
|
onClick: t[0] ||= (e) => p.value = !p.value
|
|
51972
51988
|
}, P(p.value ? "收起" : "展开"), 1)) : Y("", !0)
|
|
51973
51989
|
])) : Y("", !0),
|
|
51974
|
-
a.value.archived ? Y("", !0) : (U(), W("section",
|
|
51990
|
+
a.value.archived ? Y("", !0) : (U(), W("section", tQ, [
|
|
51975
51991
|
l.value ? (U(), G(o, {
|
|
51976
51992
|
key: 0,
|
|
51977
51993
|
icon: "i-lucide-play",
|
|
@@ -52034,51 +52050,51 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
52034
52050
|
body: "dialog-body"
|
|
52035
52051
|
}
|
|
52036
52052
|
}, {
|
|
52037
|
-
body: L(() => [K("div",
|
|
52053
|
+
body: L(() => [K("div", nQ, [K("button", {
|
|
52038
52054
|
type: "button",
|
|
52039
52055
|
class: "progress-ending-option",
|
|
52040
52056
|
disabled: !!I(i),
|
|
52041
52057
|
onClick: v
|
|
52042
|
-
}, [...t[8] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8,
|
|
52058
|
+
}, [...t[8] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8, rQ)])]),
|
|
52043
52059
|
_: 1
|
|
52044
52060
|
}, 8, ["open"])
|
|
52045
52061
|
], 64);
|
|
52046
52062
|
};
|
|
52047
52063
|
}
|
|
52048
|
-
},
|
|
52064
|
+
}, oQ = { class: "speaking-order" }, sQ = {
|
|
52049
52065
|
key: 0,
|
|
52050
52066
|
class: "speaking-order-divider",
|
|
52051
52067
|
"aria-hidden": "true"
|
|
52052
|
-
},
|
|
52068
|
+
}, cQ = ["data-key", "data-movable"], lQ = [
|
|
52053
52069
|
"aria-disabled",
|
|
52054
52070
|
"aria-label",
|
|
52055
52071
|
"title",
|
|
52056
52072
|
"onPointerdown",
|
|
52057
52073
|
"onKeydown"
|
|
52058
|
-
],
|
|
52074
|
+
], uQ = { class: "speaking-order-number" }, dQ = {
|
|
52059
52075
|
key: 1,
|
|
52060
52076
|
class: "speaking-order-place",
|
|
52061
52077
|
title: "已发言",
|
|
52062
52078
|
"aria-label": "已发言"
|
|
52063
|
-
},
|
|
52079
|
+
}, fQ = ["title"], pQ = {
|
|
52064
52080
|
key: 0,
|
|
52065
52081
|
class: "speaking-order-later"
|
|
52066
|
-
},
|
|
52082
|
+
}, mQ = {
|
|
52067
52083
|
key: 1,
|
|
52068
52084
|
class: "speaking-order-divider",
|
|
52069
52085
|
"aria-hidden": "true"
|
|
52070
|
-
},
|
|
52086
|
+
}, hQ = {
|
|
52071
52087
|
key: 0,
|
|
52072
52088
|
role: "status",
|
|
52073
52089
|
class: "pb-free-note"
|
|
52074
|
-
},
|
|
52090
|
+
}, gQ = {
|
|
52075
52091
|
key: 1,
|
|
52076
52092
|
role: "alert",
|
|
52077
52093
|
class: "pb-free-note is-error"
|
|
52078
|
-
},
|
|
52094
|
+
}, _Q = {
|
|
52079
52095
|
class: "speaking-order-live",
|
|
52080
52096
|
"aria-live": "polite"
|
|
52081
|
-
},
|
|
52097
|
+
}, vQ = "发言顺序刚有变化,已更新为最新顺序,请重新调整", yQ = /*#__PURE__*/ YH({
|
|
52082
52098
|
__name: "SpeakingOrder",
|
|
52083
52099
|
props: {
|
|
52084
52100
|
away: {
|
|
@@ -52098,7 +52114,7 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
52098
52114
|
}), c = Z(() => s.value.kind === "default" ? "idle" : "queued"), l = Z(() => !!n.value.access?.can_manage && !o.value.archived && s.value.movable.length > 1), u = {
|
|
52099
52115
|
queue: "不在本次依次回答中",
|
|
52100
52116
|
turns: "本轮未安排"
|
|
52101
|
-
}, d = Z(() => s.value.kind === "default" ? "拖动设置默认发言顺序,@全体依次 按此顺序;聚焦后可用上下方向键" : "拖动调整还没发言的顺序,立即生效;聚焦后可用上下方向键"), f = /* @__PURE__ */ F(!1), p = Z(() => f.value ?
|
|
52117
|
+
}, d = Z(() => s.value.kind === "default" ? "拖动设置默认发言顺序,@全体依次 按此顺序;聚焦后可用上下方向键" : "拖动调整还没发言的顺序,立即生效;聚焦后可用上下方向键"), f = /* @__PURE__ */ F(!1), p = Z(() => f.value ? vQ : n.value.order_error?.room_id === o.value.id ? n.value.order_error.message : ""), m = /* @__PURE__ */ F(null), h = /* @__PURE__ */ F(null), g = /* @__PURE__ */ F(null), _ = /* @__PURE__ */ F("");
|
|
52102
52118
|
R(() => s.value.revision, () => {
|
|
52103
52119
|
g.value = null;
|
|
52104
52120
|
}), R(() => o.value.id, () => {
|
|
@@ -52185,13 +52201,13 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
52185
52201
|
}
|
|
52186
52202
|
return (e, n) => {
|
|
52187
52203
|
let i = sA;
|
|
52188
|
-
return U(), W("div",
|
|
52204
|
+
return U(), W("div", oQ, [
|
|
52189
52205
|
K("ul", {
|
|
52190
52206
|
ref_key: "list",
|
|
52191
52207
|
ref: m,
|
|
52192
52208
|
class: j(["pb-members", { "is-dragging": h.value }])
|
|
52193
52209
|
}, [
|
|
52194
|
-
(U(!0), W(H, null, B(y.value, (t, r) => (U(), W(H, { key: t.key }, [t.outside ? (U(), W("li",
|
|
52210
|
+
(U(!0), W(H, null, B(y.value, (t, r) => (U(), W(H, { key: t.key }, [t.outside ? (U(), W("li", sQ, [K("span", null, P(u[s.value.kind]), 1)])) : Y("", !0), K("li", {
|
|
52195
52211
|
class: j(["pb-member speaking-order-row", [
|
|
52196
52212
|
`is-${t.state}`,
|
|
52197
52213
|
ee(r),
|
|
@@ -52212,19 +52228,19 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
52212
52228
|
onPointercancel: n[0] ||= (e) => w(e, !0),
|
|
52213
52229
|
onLostpointercapture: n[1] ||= (e) => w(e, !0),
|
|
52214
52230
|
onKeydown: [fu((e) => E(e, b(r), -1), ["up"]), fu((e) => E(e, b(r), 1), ["down"])]
|
|
52215
|
-
}, [K("span",
|
|
52231
|
+
}, [K("span", uQ, P(t.place), 1), q(i, {
|
|
52216
52232
|
name: "i-lucide-grip-vertical",
|
|
52217
52233
|
class: "speaking-order-handle"
|
|
52218
|
-
})], 40,
|
|
52234
|
+
})], 40, lQ)) : t.state === "done" ? (U(), W("span", dQ, [q(i, { name: "i-lucide-check" })])) : (U(), W("span", {
|
|
52219
52235
|
key: 2,
|
|
52220
52236
|
class: "speaking-order-place",
|
|
52221
52237
|
title: t.state === "speaking" ? "正在发言" : void 0
|
|
52222
|
-
}, P(t.place || ""), 9,
|
|
52238
|
+
}, P(t.place || ""), 9, fQ)), V(e.$slots, "default", {
|
|
52223
52239
|
item: t,
|
|
52224
52240
|
place: t.place
|
|
52225
|
-
}, void 0, !0)], 10,
|
|
52226
|
-
s.value.later?.length ? (U(), W("li",
|
|
52227
|
-
t.away.length ? (U(), W("li",
|
|
52241
|
+
}, void 0, !0)], 10, cQ)], 64))), 128)),
|
|
52242
|
+
s.value.later?.length ? (U(), W("li", pQ, [K("details", null, [K("summary", null, "后续已排 " + P(s.value.later.length) + " 轮", 1), K("ol", null, [(U(!0), W(H, null, B(s.value.later, (e, n) => (U(), W("li", { key: n }, [K("span", null, P(t.round ? `第 ${t.round + n + 1} 轮` : `后续第 ${n + 1} 轮`), 1), J(P(e.map((e) => I(r).display_name(e)).join(" → ")), 1)]))), 128))])])])) : Y("", !0),
|
|
52243
|
+
t.away.length ? (U(), W("li", mQ, [...n[2] ||= [K("span", null, "已离开", -1)]])) : Y("", !0),
|
|
52228
52244
|
(U(!0), W(H, null, B(t.away, (t) => (U(), W("li", {
|
|
52229
52245
|
key: `away-${t}`,
|
|
52230
52246
|
class: "pb-member speaking-order-row is-away"
|
|
@@ -52236,13 +52252,13 @@ var Rq = ["data-identity", "data-face"], zq = ["inert", "aria-hidden"], Bq = { c
|
|
|
52236
52252
|
place: 0
|
|
52237
52253
|
}, void 0, !0)]))), 128))
|
|
52238
52254
|
], 2),
|
|
52239
|
-
p.value ===
|
|
52240
|
-
K("p",
|
|
52255
|
+
p.value === vQ ? (U(), W("p", hQ, P(p.value), 1)) : p.value ? (U(), W("p", gQ, P(p.value), 1)) : Y("", !0),
|
|
52256
|
+
K("p", _Q, P(_.value), 1)
|
|
52241
52257
|
]);
|
|
52242
52258
|
};
|
|
52243
52259
|
}
|
|
52244
|
-
}, [["__scopeId", "data-v-dc33a051"]]),
|
|
52245
|
-
function
|
|
52260
|
+
}, [["__scopeId", "data-v-dc33a051"]]), bQ = ["dispatched", "started"], xQ = (e) => e.pending > 0 || bQ.includes(e.execution?.status);
|
|
52261
|
+
function SQ(e, { view: t, act: n, describe: r }) {
|
|
52246
52262
|
let i = t.access, a = i?.members?.find((t) => t.name === e.name)?.available, o = !i?.can_manage, s = e.manual_source === "web" || e.access === "online", c = ["active", "paused"].includes(t.room?.session?.status) && e.role === "host", l = (t, r, i, a = {}) => ({
|
|
52247
52263
|
label: t,
|
|
52248
52264
|
icon: r,
|
|
@@ -52288,7 +52304,7 @@ function xQ(e, { view: t, act: n, describe: r }) {
|
|
|
52288
52304
|
}] : []
|
|
52289
52305
|
],
|
|
52290
52306
|
[
|
|
52291
|
-
...
|
|
52307
|
+
...xQ(e) ? [l("停止", "i-lucide-square", "interrupt")] : [],
|
|
52292
52308
|
...s && e.pending ? [{
|
|
52293
52309
|
label: "复制阅读通知",
|
|
52294
52310
|
icon: "i-lucide-copy",
|
|
@@ -52309,54 +52325,54 @@ function xQ(e, { view: t, act: n, describe: r }) {
|
|
|
52309
52325
|
}
|
|
52310
52326
|
//#endregion
|
|
52311
52327
|
//#region frontend/FreeBoard.vue
|
|
52312
|
-
var
|
|
52328
|
+
var CQ = { class: "progress-board is-docked" }, wQ = { class: "pb-header" }, TQ = { class: "pb-mode" }, EQ = { class: "pb-status-line" }, DQ = { role: "status" }, OQ = {
|
|
52313
52329
|
key: 0,
|
|
52314
52330
|
class: "pb-status-detail"
|
|
52315
|
-
},
|
|
52331
|
+
}, kQ = {
|
|
52316
52332
|
key: 1,
|
|
52317
52333
|
class: "pb-chain-actions"
|
|
52318
|
-
},
|
|
52334
|
+
}, AQ = { class: "pb-meters" }, jQ = { class: "pb-meter-label" }, MQ = {
|
|
52319
52335
|
key: 0,
|
|
52320
52336
|
class: "pb-bar"
|
|
52321
|
-
},
|
|
52337
|
+
}, NQ = {
|
|
52322
52338
|
key: 2,
|
|
52323
52339
|
class: "pb-section",
|
|
52324
52340
|
"aria-label": "当前任务"
|
|
52325
|
-
},
|
|
52341
|
+
}, PQ = {
|
|
52326
52342
|
class: "pb-section",
|
|
52327
52343
|
"aria-label": "发言顺序"
|
|
52328
|
-
},
|
|
52344
|
+
}, FQ = { class: "pb-member-body" }, IQ = ["title"], LQ = ["title"], RQ = ["title"], zQ = ["title"], BQ = {
|
|
52329
52345
|
key: 0,
|
|
52330
52346
|
role: "alert",
|
|
52331
52347
|
class: "pb-free-note is-error"
|
|
52332
|
-
},
|
|
52348
|
+
}, VQ = {
|
|
52333
52349
|
key: 1,
|
|
52334
52350
|
role: "status",
|
|
52335
52351
|
class: "pb-free-note"
|
|
52336
|
-
},
|
|
52352
|
+
}, HQ = {
|
|
52337
52353
|
key: 2,
|
|
52338
52354
|
role: "alert",
|
|
52339
52355
|
class: "pb-free-note is-error"
|
|
52340
|
-
},
|
|
52356
|
+
}, UQ = {
|
|
52341
52357
|
key: 3,
|
|
52342
52358
|
role: "status",
|
|
52343
52359
|
class: "pb-free-note"
|
|
52344
|
-
},
|
|
52360
|
+
}, WQ = {
|
|
52345
52361
|
key: 3,
|
|
52346
52362
|
class: "pb-section",
|
|
52347
52363
|
"aria-label": "头脑风暴"
|
|
52348
|
-
},
|
|
52364
|
+
}, GQ = ["onClick"], KQ = {
|
|
52349
52365
|
key: 4,
|
|
52350
52366
|
class: "pb-actions",
|
|
52351
52367
|
"aria-label": "操作"
|
|
52352
|
-
},
|
|
52368
|
+
}, qQ = {
|
|
52353
52369
|
key: 0,
|
|
52354
52370
|
class: "pb-free-note"
|
|
52355
|
-
},
|
|
52371
|
+
}, JQ = {
|
|
52356
52372
|
key: 5,
|
|
52357
52373
|
class: "pb-section",
|
|
52358
52374
|
"aria-label": "执行耗时"
|
|
52359
|
-
},
|
|
52375
|
+
}, YQ = { class: "pb-timing-heading" }, XQ = { class: "pb-timings" }, ZQ = { class: "pb-timing-who" }, QQ = { class: "pb-timing-stages" }, $Q = 90, e$ = /*#__PURE__*/ YH({
|
|
52360
52376
|
__name: "FreeBoard",
|
|
52361
52377
|
setup(e) {
|
|
52362
52378
|
let { view: t, bridge: n, act: r, pending: i } = xr("discussion"), a = ["dispatched", "started"], o = {
|
|
@@ -52371,7 +52387,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52371
52387
|
online: "网页代发"
|
|
52372
52388
|
}, c = Z(() => t.value.room), l = Z(() => c.value.free || {}), u = Z(() => ["active", "paused"].includes(c.value.session?.status)), d = Z(() => u.value ? c.value.current_turn?.round || (c.value.completed_rounds || 0) + 1 : 0), f = Z(() => (l.value.members || []).find((e) => e.role === "host" && e.status === "active")), p = (e) => (l.value.members || []).find((t) => t.name === e), m = Z(() => (l.value.members || []).filter((e) => e.status === "away").map((e) => e.name)), h = (e) => n.display_name((l.value.members || []).find((t) => t.id === e)?.name || "成员"), g = (e) => e.access === "manual" && e.manual_source !== "web" && e.status === "active" && !e.registered_at;
|
|
52373
52389
|
function _(e) {
|
|
52374
|
-
return e.status === "away" ? "neutral" : g(e) ? "warning" : e.execution?.stale ? "error" :
|
|
52390
|
+
return e.status === "away" ? "neutral" : g(e) ? "warning" : e.execution?.stale ? "error" : xQ(e) ? e.pending && !a.includes(e.execution?.status) ? "warning" : "primary" : e.execution?.status === "failed" ? "error" : "success";
|
|
52375
52391
|
}
|
|
52376
52392
|
function v(e, t) {
|
|
52377
52393
|
if (e.status === "away") return "已离开:不会被唤醒,可请回";
|
|
@@ -52403,7 +52419,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52403
52419
|
title: "已存档",
|
|
52404
52420
|
detail: ""
|
|
52405
52421
|
};
|
|
52406
|
-
let e = (l.value.members || []).filter(
|
|
52422
|
+
let e = (l.value.members || []).filter(xQ);
|
|
52407
52423
|
if (e.some((e) => e.execution?.stale)) return {
|
|
52408
52424
|
tone: "error",
|
|
52409
52425
|
title: "执行失联",
|
|
@@ -52471,7 +52487,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52471
52487
|
return e == null ? "—" : e < 60 ? `${e}秒` : e < 3600 ? `${Math.floor(e / 60)}分${String(e % 60).padStart(2, "0")}秒` : `${Math.floor(e / 3600)}小时${Math.floor(e % 3600 / 60)}分`;
|
|
52472
52488
|
}
|
|
52473
52489
|
function re(e) {
|
|
52474
|
-
return
|
|
52490
|
+
return SQ(e, {
|
|
52475
52491
|
view: t.value,
|
|
52476
52492
|
act: r,
|
|
52477
52493
|
describe: (e) => {
|
|
@@ -52496,16 +52512,16 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52496
52512
|
se.value = !1;
|
|
52497
52513
|
}), (e, i) => {
|
|
52498
52514
|
let a = MA, s = pA, g = sA, ee = CH;
|
|
52499
|
-
return U(), W("div",
|
|
52500
|
-
K("header",
|
|
52501
|
-
u.value ? (U(), G(
|
|
52515
|
+
return U(), W("div", CQ, [
|
|
52516
|
+
K("header", wQ, [K("strong", null, P(u.value ? "讨论进度" : "自由协作"), 1), K("span", TQ, P(f.value ? `${I(n).display_name(f.value.name)} 主持` : "无主持人"), 1)]),
|
|
52517
|
+
u.value ? (U(), G(aQ, { key: 0 })) : (U(), W("section", {
|
|
52502
52518
|
key: 1,
|
|
52503
52519
|
class: j(["pb-status", `is-${T.value.tone}`]),
|
|
52504
52520
|
"aria-label": "房间状态"
|
|
52505
52521
|
}, [
|
|
52506
|
-
K("div",
|
|
52507
|
-
T.value.detail ? (U(), W("p",
|
|
52508
|
-
T.value.continue_chain && I(t).access?.can_manage ? (U(), W("div",
|
|
52522
|
+
K("div", EQ, [i[6] ||= K("span", { class: "pb-dot" }, null, -1), K("strong", DQ, P(T.value.title), 1)]),
|
|
52523
|
+
T.value.detail ? (U(), W("p", OQ, P(T.value.detail), 1)) : Y("", !0),
|
|
52524
|
+
T.value.continue_chain && I(t).access?.can_manage ? (U(), W("div", kQ, [(U(!0), W(H, null, B(S.value, (e) => (U(), G(a, {
|
|
52509
52525
|
key: e,
|
|
52510
52526
|
label: `继续 ${e} 轮`,
|
|
52511
52527
|
icon: "i-lucide-play",
|
|
@@ -52521,24 +52537,24 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52521
52537
|
"disabled",
|
|
52522
52538
|
"onClick"
|
|
52523
52539
|
]))), 128))])) : Y("", !0),
|
|
52524
|
-
K("div",
|
|
52540
|
+
K("div", AQ, [(U(!0), W(H, null, B(E.value, (e) => (U(), W("div", {
|
|
52525
52541
|
key: e.label,
|
|
52526
52542
|
class: "pb-meter"
|
|
52527
|
-
}, [K("div",
|
|
52543
|
+
}, [K("div", jQ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", MQ, [K("i", { style: A({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])
|
|
52528
52544
|
], 2)),
|
|
52529
|
-
D.value && !u.value ? (U(), W("section",
|
|
52545
|
+
D.value && !u.value ? (U(), W("section", NQ, [
|
|
52530
52546
|
i[7] ||= K("h4", null, "当前任务", -1),
|
|
52531
52547
|
K("p", { class: j(["pb-focus", { "is-expanded": O.value }]) }, P(D.value), 3),
|
|
52532
|
-
D.value.length >
|
|
52548
|
+
D.value.length > $Q ? (U(), W("button", {
|
|
52533
52549
|
key: 0,
|
|
52534
52550
|
type: "button",
|
|
52535
52551
|
class: "pb-link",
|
|
52536
52552
|
onClick: i[0] ||= (e) => O.value = !O.value
|
|
52537
52553
|
}, P(O.value ? "收起" : "展开"), 1)) : Y("", !0)
|
|
52538
52554
|
])) : Y("", !0),
|
|
52539
|
-
K("section",
|
|
52555
|
+
K("section", PQ, [
|
|
52540
52556
|
i[9] ||= K("h4", null, "发言顺序", -1),
|
|
52541
|
-
q(
|
|
52557
|
+
q(yQ, {
|
|
52542
52558
|
away: m.value,
|
|
52543
52559
|
round: d.value
|
|
52544
52560
|
}, {
|
|
@@ -52555,7 +52571,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52555
52571
|
"alt",
|
|
52556
52572
|
"class"
|
|
52557
52573
|
]),
|
|
52558
|
-
K("div",
|
|
52574
|
+
K("div", FQ, [
|
|
52559
52575
|
K("div", {
|
|
52560
52576
|
class: "pb-member-name",
|
|
52561
52577
|
title: c.value.descriptions?.[r.name] || void 0
|
|
@@ -52566,17 +52582,17 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52566
52582
|
name: "i-lucide-crown",
|
|
52567
52583
|
title: "主持人"
|
|
52568
52584
|
})) : Y("", !0),
|
|
52569
|
-
K("small", { title: b(r) || void 0 }, P(y(r)), 9,
|
|
52570
|
-
], 8,
|
|
52585
|
+
K("small", { title: b(r) || void 0 }, P(y(r)), 9, LQ)
|
|
52586
|
+
], 8, IQ),
|
|
52571
52587
|
x(r) ? (U(), W("div", {
|
|
52572
52588
|
key: 0,
|
|
52573
52589
|
class: "pb-member-model",
|
|
52574
52590
|
title: I(n).participant_session_hint(r.name, c.value, I(t).launch.room_models)
|
|
52575
|
-
}, P(x(r)), 9,
|
|
52591
|
+
}, P(x(r)), 9, RQ)) : Y("", !0),
|
|
52576
52592
|
K("div", { class: j(["pb-member-status", `is-${_(r)}`]) }, [i[8] ||= K("span", { class: "pb-dot" }, null, -1), K("span", {
|
|
52577
52593
|
class: "pb-member-status-text",
|
|
52578
52594
|
title: r.execution?.status === "failed" ? r.execution.result : void 0
|
|
52579
|
-
}, P(v(r, e.state)), 9,
|
|
52595
|
+
}, P(v(r, e.state)), 9, zQ)], 2)
|
|
52580
52596
|
]),
|
|
52581
52597
|
q(ee, {
|
|
52582
52598
|
items: re(r),
|
|
@@ -52600,8 +52616,8 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52600
52616
|
key: e.executions.join("-"),
|
|
52601
52617
|
class: "pb-free-note is-warning"
|
|
52602
52618
|
}, "可能冲突:" + P(e.members.map((e) => I(n).display_name(e)).join(" 与 ")) + " 的重叠执行观察到 " + P(e.files.join("、")) + " 变化;修改者未确认。", 1))), 128)),
|
|
52603
|
-
I(t).free_error ? (U(), W("p",
|
|
52604
|
-
I(t).access?.error ? (U(), W("p",
|
|
52619
|
+
I(t).free_error ? (U(), W("p", BQ, P(I(t).free_error), 1)) : I(t).free_notice ? (U(), W("p", VQ, P(I(t).free_notice), 1)) : Y("", !0),
|
|
52620
|
+
I(t).access?.error ? (U(), W("p", HQ, P(I(t).access.error), 1)) : I(t).access?.notice ? (U(), W("p", UQ, P(I(t).access.notice), 1)) : Y("", !0),
|
|
52605
52621
|
c.value.archived ? Y("", !0) : (U(), G(a, {
|
|
52606
52622
|
key: 4,
|
|
52607
52623
|
icon: "i-lucide-plus",
|
|
@@ -52613,13 +52629,13 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52613
52629
|
onClick: i[1] ||= (e) => ie.value = !0
|
|
52614
52630
|
}))
|
|
52615
52631
|
]),
|
|
52616
|
-
c.value.linked_rooms?.length ? (U(), W("section",
|
|
52632
|
+
c.value.linked_rooms?.length ? (U(), W("section", WQ, [i[10] ||= K("h4", null, "头脑风暴", -1), (U(!0), W(H, null, B(c.value.linked_rooms, (e) => (U(), W("button", {
|
|
52617
52633
|
key: e.id,
|
|
52618
52634
|
type: "button",
|
|
52619
52635
|
class: "pb-link pb-free-linked",
|
|
52620
52636
|
onClick: (t) => I(r)("room", e.id)
|
|
52621
|
-
}, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8,
|
|
52622
|
-
!c.value.archived && !u.value ? (U(), W("section",
|
|
52637
|
+
}, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8, GQ))), 128))])) : Y("", !0),
|
|
52638
|
+
!c.value.archived && !u.value ? (U(), W("section", KQ, [q(a, {
|
|
52623
52639
|
icon: "i-lucide-messages-square",
|
|
52624
52640
|
label: "开启讨论",
|
|
52625
52641
|
size: "sm",
|
|
@@ -52629,13 +52645,13 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52629
52645
|
title: "由主持人推进成员轮流发言,到上限或结束后房间回到自由协作",
|
|
52630
52646
|
disabled: !ce.value,
|
|
52631
52647
|
onClick: i[2] ||= (e) => se.value = !0
|
|
52632
|
-
}, null, 8, ["disabled"]), ce.value ? Y("", !0) : (U(), W("p",
|
|
52633
|
-
te.value.items.length ? (U(), W("section",
|
|
52634
|
-
q(
|
|
52648
|
+
}, null, 8, ["disabled"]), ce.value ? Y("", !0) : (U(), W("p", qQ, "开启讨论需要一位由本机唤醒的 AI 主持人。"))])) : Y("", !0),
|
|
52649
|
+
te.value.items.length ? (U(), W("section", JQ, [K("div", YQ, [i[11] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(te.value.items.length) + " 次执行 · " + P(ne(te.value.total)), 1)]), K("details", XQ, [i[12] ||= K("summary", null, "查看每次执行", -1), K("ol", null, [(U(!0), W(H, null, B(te.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", ZQ, [J("#" + P(e.id) + " " + P(h(e.member_id)), 1), K("small", null, P(o[e.status] || e.status), 1)]), K("span", QQ, [K("span", null, "用时 " + P(ne(e.seconds)), 1)])]))), 128))])])])) : Y("", !0),
|
|
52650
|
+
q(qZ, {
|
|
52635
52651
|
open: se.value,
|
|
52636
52652
|
"onUpdate:open": i[3] ||= (e) => se.value = e
|
|
52637
52653
|
}, null, 8, ["open"]),
|
|
52638
|
-
q(
|
|
52654
|
+
q(WZ, {
|
|
52639
52655
|
open: ie.value,
|
|
52640
52656
|
"onUpdate:open": i[4] ||= (e) => ie.value = e,
|
|
52641
52657
|
description: "新成员加入后不打断其他成员;点卡片翻面可设置软件、模型、项目权限和要续接的已有会话。"
|
|
@@ -52662,7 +52678,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52662
52678
|
]);
|
|
52663
52679
|
};
|
|
52664
52680
|
}
|
|
52665
|
-
}, [["__scopeId", "data-v-81d8efa9"]]),
|
|
52681
|
+
}, [["__scopeId", "data-v-81d8efa9"]]), t$ = { class: "progress-panel-anchor" }, n$ = ["aria-expanded", "aria-label"], r$ = { class: "progress-chip-text" }, i$ = { class: "progress-chip-rounds" }, a$ = {
|
|
52666
52682
|
__name: "ProgressPanel",
|
|
52667
52683
|
setup(e) {
|
|
52668
52684
|
let { view: t, bridge: n } = xr("discussion"), r = /* @__PURE__ */ F(!1), i = Z(() => t.value.room), a = Z(() => i.value.limits || {}), o = Z(() => {
|
|
@@ -52689,7 +52705,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52689
52705
|
}), s = Z(() => a.value.round_cap || a.value.max_rounds ? n.limit_rounds(a.value).text.replace(" / ", "/") : n.progress_round(i.value)), c = Z(() => `${o.value.title} · ${s.value}`);
|
|
52690
52706
|
return (e, t) => {
|
|
52691
52707
|
let n = $V, a = NV;
|
|
52692
|
-
return U(), W("div",
|
|
52708
|
+
return U(), W("div", t$, [q(n, { text: "查看讨论进度" }, {
|
|
52693
52709
|
default: L(() => [K("button", {
|
|
52694
52710
|
type: "button",
|
|
52695
52711
|
class: j(["progress-chip", `is-${o.value.tone}`]),
|
|
@@ -52697,7 +52713,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52697
52713
|
"aria-expanded": r.value,
|
|
52698
52714
|
"aria-label": `查看讨论进度:${c.value}`,
|
|
52699
52715
|
onClick: t[0] ||= (e) => r.value = !0
|
|
52700
|
-
}, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span",
|
|
52716
|
+
}, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span", r$, [J(P(o.value.title), 1), K("span", i$, " · " + P(s.value), 1)])], 10, n$)]),
|
|
52701
52717
|
_: 1
|
|
52702
52718
|
}), q(a, {
|
|
52703
52719
|
open: r.value,
|
|
@@ -52710,36 +52726,36 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52710
52726
|
body: "progress-drawer-body"
|
|
52711
52727
|
}
|
|
52712
52728
|
}, {
|
|
52713
|
-
body: L(() => [q($
|
|
52729
|
+
body: L(() => [q(e$)]),
|
|
52714
52730
|
_: 1
|
|
52715
52731
|
}, 8, ["open", "description"])]);
|
|
52716
52732
|
};
|
|
52717
52733
|
}
|
|
52718
|
-
},
|
|
52734
|
+
}, o$ = {
|
|
52719
52735
|
class: "merged-section discussion-history",
|
|
52720
52736
|
"aria-label": "讨论记录"
|
|
52721
|
-
},
|
|
52737
|
+
}, s$ = {
|
|
52722
52738
|
key: 0,
|
|
52723
52739
|
class: "fine-print"
|
|
52724
|
-
},
|
|
52740
|
+
}, c$ = { class: "history-timeline" }, l$ = {
|
|
52725
52741
|
key: 0,
|
|
52726
52742
|
class: "history-free"
|
|
52727
|
-
},
|
|
52743
|
+
}, u$ = {
|
|
52728
52744
|
key: 1,
|
|
52729
52745
|
class: "history-discussion"
|
|
52730
|
-
},
|
|
52746
|
+
}, d$ = { class: "history-meta" }, f$ = {
|
|
52731
52747
|
key: 0,
|
|
52732
52748
|
class: "fine-print"
|
|
52733
|
-
},
|
|
52749
|
+
}, p$ = {
|
|
52734
52750
|
key: 1,
|
|
52735
52751
|
class: "fine-print"
|
|
52736
|
-
},
|
|
52752
|
+
}, m$ = {
|
|
52737
52753
|
key: 2,
|
|
52738
52754
|
class: "history-conclusion"
|
|
52739
|
-
},
|
|
52755
|
+
}, h$ = ["onClick"], g$ = ["innerHTML"], _$ = {
|
|
52740
52756
|
key: 1,
|
|
52741
52757
|
class: "fine-print"
|
|
52742
|
-
},
|
|
52758
|
+
}, v$ = ["aria-expanded", "onClick"], y$ = ["innerHTML"], b$ = /*#__PURE__*/ YH({
|
|
52743
52759
|
__name: "DiscussionHistory",
|
|
52744
52760
|
emits: ["detail"],
|
|
52745
52761
|
setup(e) {
|
|
@@ -52797,16 +52813,16 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52797
52813
|
}
|
|
52798
52814
|
return (e, t) => {
|
|
52799
52815
|
let l = WV, d = sA;
|
|
52800
|
-
return U(), W("section",
|
|
52816
|
+
return U(), W("section", o$, [
|
|
52801
52817
|
t[2] ||= K("div", { class: "page-heading" }, [K("div", null, [K("h2", null, "讨论记录"), K("p", null, "每场讨论及其结束时的结论,最新的在上;自由协作的消息按段汇总。")])], -1),
|
|
52802
|
-
i.value.discussions?.length ? Y("", !0) : (U(), W("p",
|
|
52803
|
-
K("ol",
|
|
52818
|
+
i.value.discussions?.length ? Y("", !0) : (U(), W("p", s$, "还没有开启过讨论。")),
|
|
52819
|
+
K("ol", c$, [(U(!0), W(H, null, B(c.value, (i) => (U(), W("li", {
|
|
52804
52820
|
key: i.key,
|
|
52805
52821
|
class: j(`is-${i.kind}`)
|
|
52806
52822
|
}, [t[1] ||= K("span", {
|
|
52807
52823
|
class: "history-dot",
|
|
52808
52824
|
"aria-hidden": "true"
|
|
52809
|
-
}, null, -1), i.kind === "free" ? (U(), W("p",
|
|
52825
|
+
}, null, -1), i.kind === "free" ? (U(), W("p", l$, "自由协作 · " + P(i.count) + " 条消息", 1)) : (U(), W("article", u$, [
|
|
52810
52826
|
K("header", null, [K("h3", null, [K("small", null, "讨论 " + P(i.number), 1), J(P(i.goal || "未填写目标"), 1)]), q(l, {
|
|
52811
52827
|
color: r[i.status]?.color || "neutral",
|
|
52812
52828
|
variant: "subtle",
|
|
@@ -52815,74 +52831,74 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52815
52831
|
default: L(() => [J(P(r[i.status]?.label || i.status), 1)]),
|
|
52816
52832
|
_: 2
|
|
52817
52833
|
}, 1032, ["color"])]),
|
|
52818
|
-
K("p",
|
|
52834
|
+
K("p", d$, [
|
|
52819
52835
|
J(P(s(i.created_at)) + " 开始 · " + P(i.count) + " 条消息", 1),
|
|
52820
52836
|
i.status === "concluded" && i.state !== null ? (U(), W(H, { key: 0 }, [J(" · " + P(I(n).stop_reason_label(i)), 1)], 64)) : Y("", !0),
|
|
52821
52837
|
i.concluded_at ? (U(), W(H, { key: 1 }, [J(" · " + P(s(i.concluded_at)) + " 结束", 1)], 64)) : Y("", !0)
|
|
52822
52838
|
]),
|
|
52823
|
-
i.result?.current ? (U(), W("p",
|
|
52839
|
+
i.result?.current ? (U(), W("p", f$, "结论即上方的当前共识。")) : i.result?.missing ? (U(), W("p", p$, "这场讨论结束于结论快照功能之前,没有保存当时的结论。")) : i.result ? (U(), W("div", m$, [
|
|
52824
52840
|
K("small", null, [J(P(i.result.label), 1), i.result.until ? (U(), W("button", {
|
|
52825
52841
|
key: 0,
|
|
52826
52842
|
type: "button",
|
|
52827
52843
|
class: "subtle-link",
|
|
52828
52844
|
onClick: (t) => e.$emit("detail", i.result.until)
|
|
52829
|
-
}, "整理至 #" + P(i.result.until), 9,
|
|
52845
|
+
}, "整理至 #" + P(i.result.until), 9, h$)) : Y("", !0)]),
|
|
52830
52846
|
i.result.brief ? (U(), W("div", {
|
|
52831
52847
|
key: 0,
|
|
52832
52848
|
class: "markdown-body",
|
|
52833
52849
|
innerHTML: o(i.result.brief)
|
|
52834
|
-
}, null, 8,
|
|
52850
|
+
}, null, 8, g$)) : i.result.state ? Y("", !0) : (U(), W("p", _$, "主持人没有留下简报或共识。")),
|
|
52835
52851
|
i.result.state ? (U(), W(H, { key: 2 }, [K("button", {
|
|
52836
52852
|
type: "button",
|
|
52837
52853
|
class: "history-toggle",
|
|
52838
52854
|
"aria-expanded": a.value.has(i.id),
|
|
52839
52855
|
onClick: (e) => u(i.id)
|
|
52840
|
-
}, [t[0] ||= J("详细共识与进度", -1), q(d, { name: a.value.has(i.id) ? "i-lucide-chevron-up" : "i-lucide-chevron-down" }, null, 8, ["name"])], 8,
|
|
52856
|
+
}, [t[0] ||= J("详细共识与进度", -1), q(d, { name: a.value.has(i.id) ? "i-lucide-chevron-up" : "i-lucide-chevron-down" }, null, 8, ["name"])], 8, v$), a.value.has(i.id) ? (U(), W("div", {
|
|
52841
52857
|
key: 0,
|
|
52842
52858
|
class: "markdown-body history-state",
|
|
52843
52859
|
innerHTML: o(i.result.state)
|
|
52844
|
-
}, null, 8,
|
|
52860
|
+
}, null, 8, y$)) : Y("", !0)], 64)) : Y("", !0)
|
|
52845
52861
|
])) : Y("", !0)
|
|
52846
52862
|
]))], 2))), 128))])
|
|
52847
52863
|
]);
|
|
52848
52864
|
};
|
|
52849
52865
|
}
|
|
52850
|
-
}, [["__scopeId", "data-v-8daffdea"]]),
|
|
52866
|
+
}, [["__scopeId", "data-v-8daffdea"]]), x$ = {
|
|
52851
52867
|
class: "merged-section room-overview",
|
|
52852
52868
|
"aria-label": "成员与设置"
|
|
52853
|
-
},
|
|
52869
|
+
}, S$ = { class: "page-heading" }, C$ = { class: "overview-section" }, w$ = {
|
|
52854
52870
|
key: 0,
|
|
52855
52871
|
class: "overview-local",
|
|
52856
52872
|
role: "status"
|
|
52857
|
-
},
|
|
52873
|
+
}, T$ = {
|
|
52858
52874
|
class: "member-cards",
|
|
52859
52875
|
"aria-label": "成员"
|
|
52860
|
-
},
|
|
52876
|
+
}, E$ = { class: "member-card-head" }, D$ = { class: "member-card-name" }, O$ = ["title"], k$ = { class: "member-card-facts" }, A$ = ["aria-label", "title"], j$ = [
|
|
52861
52877
|
"aria-checked",
|
|
52862
52878
|
"disabled",
|
|
52863
52879
|
"onClick"
|
|
52864
|
-
],
|
|
52880
|
+
], M$ = { key: 1 }, N$ = ["title"], P$ = [
|
|
52865
52881
|
"aria-label",
|
|
52866
52882
|
"aria-busy",
|
|
52867
52883
|
"title"
|
|
52868
|
-
],
|
|
52884
|
+
], F$ = [
|
|
52869
52885
|
"aria-checked",
|
|
52870
52886
|
"title",
|
|
52871
52887
|
"disabled",
|
|
52872
52888
|
"onClick"
|
|
52873
|
-
],
|
|
52889
|
+
], I$ = ["title"], L$ = ["aria-label"], R$ = { key: 0 }, z$ = {
|
|
52874
52890
|
key: 1,
|
|
52875
52891
|
class: "overview-result is-error",
|
|
52876
52892
|
role: "alert"
|
|
52877
|
-
},
|
|
52893
|
+
}, B$ = {
|
|
52878
52894
|
key: 2,
|
|
52879
52895
|
class: "overview-result",
|
|
52880
52896
|
role: "status"
|
|
52881
|
-
},
|
|
52897
|
+
}, V$ = ["role"], H$ = { class: "overview-section" }, U$ = { class: "overview-settings" }, W$ = { key: 0 }, G$ = {
|
|
52882
52898
|
key: 0,
|
|
52883
52899
|
role: "status",
|
|
52884
52900
|
class: "overview-saved"
|
|
52885
|
-
},
|
|
52901
|
+
}, K$ = { key: 1 }, q$ = { key: 1 }, J$ = { class: "overview-address" }, Y$ = { key: 2 }, X$ = 2e3, Z$ = "设为主持人", Q$ = /*#__PURE__*/ YH({
|
|
52886
52902
|
__name: "RoomOverview",
|
|
52887
52903
|
setup(e) {
|
|
52888
52904
|
let { view: t, bridge: n, act: r } = xr("discussion"), i = {
|
|
@@ -52917,7 +52933,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
52917
52933
|
try {
|
|
52918
52934
|
await n.set_chain_rounds(e), v.value = !0, setTimeout(() => {
|
|
52919
52935
|
v.value = !1;
|
|
52920
|
-
},
|
|
52936
|
+
}, X$);
|
|
52921
52937
|
} catch {
|
|
52922
52938
|
_.value = u.value.free?.max_rounds || 0;
|
|
52923
52939
|
} finally {
|
|
@@ -53027,16 +53043,21 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53027
53043
|
}
|
|
53028
53044
|
let E = Z(() => p.value ? "—" : f.value.scheduler ? `${t.value.launch.scheduler_providers?.[f.value.scheduler.provider]?.label || f.value.scheduler.provider} · ${f.value.scheduler.model}` : "未开启");
|
|
53029
53045
|
function D(e) {
|
|
53030
|
-
let [n, i, a] =
|
|
53046
|
+
let [n, i, a] = SQ(C(e), {
|
|
53031
53047
|
view: t.value,
|
|
53032
53048
|
act: r,
|
|
53033
53049
|
describe: (e) => {
|
|
53034
53050
|
te.value = e;
|
|
53035
53051
|
}
|
|
53036
53052
|
});
|
|
53037
|
-
return {
|
|
53053
|
+
return d.value ? {
|
|
53054
|
+
taking_part: n,
|
|
53055
|
+
host: i.find((e) => e.label === Z$) || null,
|
|
53056
|
+
place: [...i.filter((e) => e.label !== Z$), ...a]
|
|
53057
|
+
} : {
|
|
53038
53058
|
taking_part: n,
|
|
53039
|
-
|
|
53059
|
+
host: null,
|
|
53060
|
+
place: []
|
|
53040
53061
|
};
|
|
53041
53062
|
}
|
|
53042
53063
|
let O = /* @__PURE__ */ F(!1), te = /* @__PURE__ */ F(""), ne = /* @__PURE__ */ F(!1);
|
|
@@ -53059,8 +53080,8 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53059
53080
|
let ie = Z(() => `${location.origin}/r/${u.value.id}`), ae = Z(() => u.value.created_at ? new Date(u.value.created_at).toLocaleString("zh-CN", { hour12: !1 }) : "");
|
|
53060
53081
|
return (e, i) => {
|
|
53061
53082
|
let s = MA, l = pA, oe = sA, k = WV;
|
|
53062
|
-
return U(), W("section",
|
|
53063
|
-
K("div",
|
|
53083
|
+
return U(), W("section", x$, [
|
|
53084
|
+
K("div", S$, [i[5] ||= K("div", null, [K("h2", null, "成员与设置"), K("p", null, "成员的接入、权限与全部操作,以及房间的协作设置;右栏成员菜单是同样操作的快捷入口。")], -1), u.value.archived ? Y("", !0) : (U(), G(s, {
|
|
53064
53085
|
key: 0,
|
|
53065
53086
|
icon: "i-lucide-plus",
|
|
53066
53087
|
label: "邀请 AI 加入",
|
|
@@ -53070,19 +53091,19 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53070
53091
|
disabled: !I(t).access?.can_manage,
|
|
53071
53092
|
onClick: i[0] ||= (e) => O.value = !0
|
|
53072
53093
|
}, null, 8, ["disabled"]))]),
|
|
53073
|
-
K("section",
|
|
53094
|
+
K("section", C$, [
|
|
53074
53095
|
i[9] ||= K("h3", null, "成员", -1),
|
|
53075
|
-
p.value ? (U(), W("p",
|
|
53096
|
+
p.value ? (U(), W("p", w$, [J(P(p.value.text), 1), p.value.retry ? (U(), W("button", {
|
|
53076
53097
|
key: 0,
|
|
53077
53098
|
type: "button",
|
|
53078
53099
|
class: "subtle-link",
|
|
53079
53100
|
onClick: i[1] ||= (e) => I(n).reload_room_models()
|
|
53080
53101
|
}, "重试")) : Y("", !0)])) : Y("", !0),
|
|
53081
|
-
K("ul",
|
|
53102
|
+
K("ul", T$, [(U(!0), W(H, null, B(x.value, (e) => (U(), W("li", {
|
|
53082
53103
|
key: e.name,
|
|
53083
53104
|
class: "member-card"
|
|
53084
53105
|
}, [
|
|
53085
|
-
K("header",
|
|
53106
|
+
K("header", E$, [
|
|
53086
53107
|
q(l, {
|
|
53087
53108
|
src: I(n).identities[e.name]?.icon,
|
|
53088
53109
|
text: I(n).identities[e.name]?.initials,
|
|
@@ -53095,14 +53116,29 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53095
53116
|
"alt",
|
|
53096
53117
|
"class"
|
|
53097
53118
|
]),
|
|
53098
|
-
K("div",
|
|
53119
|
+
K("div", D$, [K("strong", null, [J(P(I(n).display_name(e.name)), 1), e.role === "host" ? (U(), G(oe, {
|
|
53099
53120
|
key: 0,
|
|
53100
53121
|
name: "i-lucide-crown",
|
|
53101
53122
|
title: "主持人"
|
|
53102
53123
|
})) : Y("", !0)]), u.value.descriptions?.[e.name] ? (U(), W("small", {
|
|
53103
53124
|
key: 0,
|
|
53104
53125
|
title: u.value.descriptions[e.name]
|
|
53105
|
-
}, P(u.value.descriptions[e.name]), 9,
|
|
53126
|
+
}, P(u.value.descriptions[e.name]), 9, O$)) : Y("", !0)]),
|
|
53127
|
+
D(e).host ? (U(), G(s, {
|
|
53128
|
+
key: 0,
|
|
53129
|
+
icon: D(e).host.icon,
|
|
53130
|
+
label: D(e).host.label,
|
|
53131
|
+
size: "xs",
|
|
53132
|
+
variant: "ghost",
|
|
53133
|
+
color: "neutral",
|
|
53134
|
+
disabled: D(e).host.disabled,
|
|
53135
|
+
onClick: (t) => D(e).host.onSelect()
|
|
53136
|
+
}, null, 8, [
|
|
53137
|
+
"icon",
|
|
53138
|
+
"label",
|
|
53139
|
+
"disabled",
|
|
53140
|
+
"onClick"
|
|
53141
|
+
])) : Y("", !0),
|
|
53106
53142
|
q(k, {
|
|
53107
53143
|
color: o(e) ? "warning" : e.status === "active" ? "success" : "neutral",
|
|
53108
53144
|
variant: "subtle",
|
|
@@ -53112,7 +53148,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53112
53148
|
_: 2
|
|
53113
53149
|
}, 1032, ["color"])
|
|
53114
53150
|
]),
|
|
53115
|
-
K("dl",
|
|
53151
|
+
K("dl", k$, [
|
|
53116
53152
|
K("div", null, [i[6] ||= K("dt", null, "接入", -1), K("dd", null, [S(C(e)).value ? (U(), W("div", {
|
|
53117
53153
|
key: 0,
|
|
53118
53154
|
class: j(["expert-card-modes overview-switch", { "is-locked": !S(C(e)).editable }]),
|
|
@@ -53126,11 +53162,11 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53126
53162
|
"aria-checked": S(C(e)).value === t.value,
|
|
53127
53163
|
disabled: !S(C(e)).editable || !!h.value,
|
|
53128
53164
|
onClick: (n) => w(e, t.value)
|
|
53129
|
-
}, P(t.label), 9,
|
|
53165
|
+
}, P(t.label), 9, j$)), 64))], 10, A$)) : (U(), W("span", M$, P(S(e).text), 1))])]),
|
|
53130
53166
|
K("div", null, [i[7] ||= K("dt", null, "模型", -1), K("dd", {
|
|
53131
53167
|
class: j(["overview-model", { "overview-muted": m(e.name) }]),
|
|
53132
53168
|
title: I(n).participant_model(e.name, u.value, f.value) || void 0
|
|
53133
|
-
}, P(e.access === "runner" ? I(n).participant_model(e.name, u.value, f.value) || "—" : "在它自己的会话里设置"), 11,
|
|
53169
|
+
}, P(e.access === "runner" ? I(n).participant_model(e.name, u.value, f.value) || "—" : "在它自己的会话里设置"), 11, N$)]),
|
|
53134
53170
|
K("div", null, [i[8] ||= K("dt", null, "项目文件", -1), K("dd", null, [T(e).value ? (U(), W("div", {
|
|
53135
53171
|
key: 0,
|
|
53136
53172
|
class: j(["expert-card-modes overview-switch", { "is-locked": !T(e).editable }]),
|
|
@@ -53146,11 +53182,11 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53146
53182
|
title: t.hint,
|
|
53147
53183
|
disabled: !T(e).editable || !!h.value,
|
|
53148
53184
|
onClick: (n) => ee(e, t.value)
|
|
53149
|
-
}, P(t.label), 9,
|
|
53185
|
+
}, P(t.label), 9, F$))), 128))], 10, P$)) : (U(), W("span", {
|
|
53150
53186
|
key: 1,
|
|
53151
53187
|
class: "overview-muted",
|
|
53152
53188
|
title: T(e).hint
|
|
53153
|
-
}, P(T(e).text), 9,
|
|
53189
|
+
}, P(T(e).text), 9, I$))])])
|
|
53154
53190
|
]),
|
|
53155
53191
|
K("footer", {
|
|
53156
53192
|
class: "member-card-actions",
|
|
@@ -53169,7 +53205,7 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53169
53205
|
"label",
|
|
53170
53206
|
"disabled",
|
|
53171
53207
|
"onClick"
|
|
53172
|
-
]))), 128))]), D(e).place.length ? (U(), W("div",
|
|
53208
|
+
]))), 128))]), D(e).place.length ? (U(), W("div", R$, [(U(!0), W(H, null, B(D(e).place, (e) => (U(), G(s, {
|
|
53173
53209
|
key: e.label,
|
|
53174
53210
|
icon: e.icon,
|
|
53175
53211
|
label: e.label,
|
|
@@ -53184,26 +53220,26 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53184
53220
|
"color",
|
|
53185
53221
|
"disabled",
|
|
53186
53222
|
"onClick"
|
|
53187
|
-
]))), 128))])) : Y("", !0)], 8,
|
|
53223
|
+
]))), 128))])) : Y("", !0)], 8, L$)
|
|
53188
53224
|
]))), 128))]),
|
|
53189
|
-
I(t).access?.error || I(t).free_error ? (U(), W("p",
|
|
53225
|
+
I(t).access?.error || I(t).free_error ? (U(), W("p", z$, P(I(t).access?.error || I(t).free_error), 1)) : I(t).access?.notice || I(t).free_notice ? (U(), W("p", B$, P(I(t).access?.notice || I(t).free_notice), 1)) : Y("", !0),
|
|
53190
53226
|
i[10] ||= K("p", { class: "overview-result" }, "复制说明或下载配置不代表 AI 已接入,以实际回答和运行记录为准。", -1),
|
|
53191
53227
|
b.value.text ? (U(), W("p", {
|
|
53192
53228
|
key: 3,
|
|
53193
53229
|
class: j(["overview-result", { "is-error": b.value.tone === "error" }]),
|
|
53194
53230
|
role: b.value.tone === "error" ? "alert" : "status"
|
|
53195
|
-
}, P(b.value.text), 11,
|
|
53231
|
+
}, P(b.value.text), 11, V$)) : Y("", !0)
|
|
53196
53232
|
]),
|
|
53197
|
-
K("section",
|
|
53233
|
+
K("section", H$, [i[17] ||= K("h3", null, "协作设置", -1), K("dl", U$, [
|
|
53198
53234
|
K("div", null, [i[11] ||= K("dt", null, "主持人", -1), K("dd", null, P(u.value.host ? I(n).display_name(u.value.host) : "未指定"), 1)]),
|
|
53199
53235
|
K("div", null, [i[12] ||= K("dt", null, "智能调度", -1), K("dd", null, P(E.value), 1)]),
|
|
53200
|
-
u.value.free?.max_rounds ? (U(), W("div",
|
|
53236
|
+
u.value.free?.max_rounds ? (U(), W("div", W$, [i[13] ||= K("dt", null, "连续派活上限", -1), K("dd", null, [I(t).access?.can_manage ? (U(), W(H, { key: 0 }, [q(WK, {
|
|
53201
53237
|
"model-value": _.value,
|
|
53202
53238
|
disabled: g.value,
|
|
53203
53239
|
"onUpdate:modelValue": y
|
|
53204
|
-
}, null, 8, ["model-value", "disabled"]), v.value ? (U(), W("small",
|
|
53205
|
-
d.value ? Y("", !0) : (U(), W("div",
|
|
53206
|
-
K("div", null, [i[15] ||= K("dt", null, "阅读地址", -1), K("dd",
|
|
53240
|
+
}, null, 8, ["model-value", "disabled"]), v.value ? (U(), W("small", G$, "已保存,进行中的任务链也按新值")) : Y("", !0)], 64)) : (U(), W("span", K$, "主持人收到你的一条消息后,最多连续派活 " + P(u.value.free.max_rounds) + " 轮(派活 → 成员回答 → 交回汇总为一轮),然后停下等你", 1))])])) : Y("", !0),
|
|
53241
|
+
d.value ? Y("", !0) : (U(), W("div", q$, [i[14] ||= K("dt", null, "逐人追问", -1), K("dd", null, P(u.value.named_followup ? "开启:主持人每轮给每位专家写针对性追问" : "关闭:首轮后请专家回应上一轮观点"), 1)])),
|
|
53242
|
+
K("div", null, [i[15] ||= K("dt", null, "阅读地址", -1), K("dd", J$, [K("code", null, P(ie.value), 1), q(s, {
|
|
53207
53243
|
icon: "i-lucide-copy",
|
|
53208
53244
|
color: "neutral",
|
|
53209
53245
|
variant: "ghost",
|
|
@@ -53211,9 +53247,9 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53211
53247
|
"aria-label": "复制阅读地址",
|
|
53212
53248
|
onClick: i[2] ||= (e) => I(r)("copy", ie.value)
|
|
53213
53249
|
})])]),
|
|
53214
|
-
ae.value ? (U(), W("div",
|
|
53250
|
+
ae.value ? (U(), W("div", Y$, [i[16] ||= K("dt", null, "创建时间", -1), K("dd", null, P(ae.value), 1)])) : Y("", !0)
|
|
53215
53251
|
])]),
|
|
53216
|
-
q(
|
|
53252
|
+
q(WZ, {
|
|
53217
53253
|
open: O.value,
|
|
53218
53254
|
"onUpdate:open": i[3] ||= (e) => O.value = e,
|
|
53219
53255
|
description: d.value ? "新成员加入后不打断其他成员;点卡片翻面可设置软件、模型、项目权限和要续接的已有会话。" : "新专家由程序按本机软件配置启动,或由你手动启动,加入本轮发言队列。"
|
|
@@ -53240,31 +53276,31 @@ var SQ = { class: "progress-board is-docked" }, CQ = { class: "pb-header" }, wQ
|
|
|
53240
53276
|
]);
|
|
53241
53277
|
};
|
|
53242
53278
|
}
|
|
53243
|
-
}, [["__scopeId", "data-v-
|
|
53279
|
+
}, [["__scopeId", "data-v-cfcbc22f"]]), $$ = {
|
|
53244
53280
|
thinking: "思考",
|
|
53245
53281
|
command: "命令",
|
|
53246
53282
|
tool: "工具",
|
|
53247
53283
|
editing: "编辑",
|
|
53248
53284
|
writing: "撰写"
|
|
53249
|
-
},
|
|
53285
|
+
}, e1 = {
|
|
53250
53286
|
thinking: "model",
|
|
53251
53287
|
writing: "model",
|
|
53252
53288
|
command: "tool",
|
|
53253
53289
|
tool: "tool",
|
|
53254
53290
|
editing: "tool"
|
|
53255
|
-
},
|
|
53291
|
+
}, t1 = {
|
|
53256
53292
|
running: "进行中",
|
|
53257
53293
|
done: "完成",
|
|
53258
53294
|
failed: "失败",
|
|
53259
53295
|
cancelled: "已撤销"
|
|
53260
|
-
},
|
|
53261
|
-
function
|
|
53296
|
+
}, n1 = 3e5, r1 = .03;
|
|
53297
|
+
function i1(e) {
|
|
53262
53298
|
if (e < 1e3) return `${Math.max(0, Math.round(e))}ms`;
|
|
53263
53299
|
if (e < 1e4) return `${(e / 1e3).toFixed(1)}s`;
|
|
53264
53300
|
let t = Math.round(e / 1e3);
|
|
53265
53301
|
return t < 60 ? `${t}s` : t < 3600 ? `${Math.floor(t / 60)}m ${String(t % 60).padStart(2, "0")}s` : `${Math.floor(t / 3600)}h ${String(Math.floor(t % 3600 / 60)).padStart(2, "0")}m`;
|
|
53266
53302
|
}
|
|
53267
|
-
function
|
|
53303
|
+
function a1(e, t) {
|
|
53268
53304
|
let n = e.state === "running", r = e.finished_at ? e.finished_at * 1e3 : t, i = e.dispatched_at ? e.dispatched_at * 1e3 : 0, a = Math.min(e.queued_at ? e.queued_at * 1e3 : i || r, i || r), o = i ? e.segments.map((t, a) => {
|
|
53269
53305
|
let o = n && a === e.segments.length - 1, s = Math.min(i + t.end_ms, r);
|
|
53270
53306
|
return {
|
|
@@ -53290,8 +53326,8 @@ function r1(e, t) {
|
|
|
53290
53326
|
notes: l
|
|
53291
53327
|
};
|
|
53292
53328
|
}
|
|
53293
|
-
var
|
|
53294
|
-
function
|
|
53329
|
+
var o1 = 18e4;
|
|
53330
|
+
function s1(e, t) {
|
|
53295
53331
|
let { item: n } = e;
|
|
53296
53332
|
if (n.state === "failed") return {
|
|
53297
53333
|
tone: "failed",
|
|
@@ -53315,22 +53351,22 @@ function a1(e, t) {
|
|
|
53315
53351
|
let r = n.dispatched_at * 1e3, i = n.segments.at(-1), a = Math.max(n.activity_at ? n.activity_at * 1e3 : 0, i ? r + i.end_ms : 0, ...(n.notes || []).map((e) => e * 1e3)), o = a ? t - a : 0;
|
|
53316
53352
|
return o >= 18e4 ? i?.phase === "command" ? {
|
|
53317
53353
|
tone: "warn",
|
|
53318
|
-
text: `命令已运行 ${
|
|
53354
|
+
text: `命令已运行 ${i1(o)}`
|
|
53319
53355
|
} : {
|
|
53320
53356
|
tone: "warn",
|
|
53321
|
-
text: `已 ${
|
|
53357
|
+
text: `已 ${i1(o)} 无输出,可能卡住`
|
|
53322
53358
|
} : n.last_note ? {
|
|
53323
53359
|
tone: "live",
|
|
53324
53360
|
text: n.last_note
|
|
53325
53361
|
} : i ? {
|
|
53326
53362
|
tone: "live",
|
|
53327
|
-
text: `${
|
|
53363
|
+
text: `${$$[i.phase]}${i.tool ? ` · ${i.tool}` : ""}中`
|
|
53328
53364
|
} : {
|
|
53329
53365
|
tone: "live",
|
|
53330
53366
|
text: "处理中"
|
|
53331
53367
|
};
|
|
53332
53368
|
}
|
|
53333
|
-
function
|
|
53369
|
+
function c1(e, t) {
|
|
53334
53370
|
return [...e.segments.map((e) => ({
|
|
53335
53371
|
at: e.start,
|
|
53336
53372
|
kind: "phase",
|
|
@@ -53344,7 +53380,7 @@ function o1(e, t) {
|
|
|
53344
53380
|
text: t?.[e.index] ?? (t ? "(未能读取)" : "读取中…")
|
|
53345
53381
|
}))].sort((e, t) => e.at - t.at || (e.kind === "note") - (t.kind === "note"));
|
|
53346
53382
|
}
|
|
53347
|
-
function
|
|
53383
|
+
function l1(e, t, n = /* @__PURE__ */ new Map()) {
|
|
53348
53384
|
let r = t / 1e3, i = [];
|
|
53349
53385
|
for (let t of e.executions) {
|
|
53350
53386
|
if ((t.queued_at || t.dispatched_at || Infinity) > r) continue;
|
|
@@ -53378,7 +53414,7 @@ function s1(e, t, n = /* @__PURE__ */ new Map()) {
|
|
|
53378
53414
|
executions: i
|
|
53379
53415
|
};
|
|
53380
53416
|
}
|
|
53381
|
-
function
|
|
53417
|
+
function u1(e, t, n) {
|
|
53382
53418
|
let r = e.filter((e) => e.at >= t && e.at <= n);
|
|
53383
53419
|
if (r.length) return {
|
|
53384
53420
|
notes: r,
|
|
@@ -53390,13 +53426,13 @@ function c1(e, t, n) {
|
|
|
53390
53426
|
earlier: !!i
|
|
53391
53427
|
};
|
|
53392
53428
|
}
|
|
53393
|
-
function
|
|
53429
|
+
function d1(e, t) {
|
|
53394
53430
|
let n = e.executions.map((n) => ({
|
|
53395
53431
|
key: `${n.source}:${n.id}`,
|
|
53396
53432
|
parent: n.parent_id ? `free:${n.parent_id}` : "",
|
|
53397
53433
|
item: n,
|
|
53398
53434
|
truncated: n.segments.length >= e.segment_limit,
|
|
53399
|
-
...
|
|
53435
|
+
...a1(n, t)
|
|
53400
53436
|
})), r = new Map(n.map((e) => [e.key, e])), i = (e) => {
|
|
53401
53437
|
let t = r.get(e.parent);
|
|
53402
53438
|
for (let n = /* @__PURE__ */ new Set([e.key]); t?.item.member === e.item.member && !n.has(t.key); t = r.get(t.parent)) n.add(t.key);
|
|
@@ -53425,18 +53461,18 @@ function l1(e, t) {
|
|
|
53425
53461
|
});
|
|
53426
53462
|
return o;
|
|
53427
53463
|
}
|
|
53428
|
-
function
|
|
53464
|
+
function f1(e, t) {
|
|
53429
53465
|
if (e.source === "discussion") return `run:${e.run_id || e.id}`;
|
|
53430
53466
|
let n = e;
|
|
53431
53467
|
for (let r = /* @__PURE__ */ new Set([e.id]); n.parent_id && t.has(n.parent_id) && !r.has(n.parent_id); n = t.get(n.parent_id)) r.add(n.parent_id);
|
|
53432
53468
|
return n.task_id ? `task:${n.task_id}` : `exec:${n.id}`;
|
|
53433
53469
|
}
|
|
53434
|
-
function
|
|
53470
|
+
function p1(e, t) {
|
|
53435
53471
|
let n = new Map(e.executions.filter((e) => e.source === "free").map((e) => [e.id, e])), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
|
|
53436
53472
|
for (let a of e.executions) {
|
|
53437
|
-
let e =
|
|
53473
|
+
let e = f1(a, n);
|
|
53438
53474
|
i.set(`${a.source}:${a.id}`, e);
|
|
53439
|
-
let o =
|
|
53475
|
+
let o = a1(a, t), s = r.get(e) || {
|
|
53440
53476
|
key: e,
|
|
53441
53477
|
source: a.source,
|
|
53442
53478
|
start: o.start,
|
|
@@ -53454,7 +53490,7 @@ function d1(e, t) {
|
|
|
53454
53490
|
of: i
|
|
53455
53491
|
};
|
|
53456
53492
|
}
|
|
53457
|
-
function
|
|
53493
|
+
function m1(e, t) {
|
|
53458
53494
|
let n = new Map(e.map((e, t) => [e.key, t])), r = /* @__PURE__ */ new Map(), i = (e, t) => {
|
|
53459
53495
|
r.has(e) || r.set(e, []), r.get(e).push(t);
|
|
53460
53496
|
};
|
|
@@ -53480,7 +53516,7 @@ function f1(e, t) {
|
|
|
53480
53516
|
});
|
|
53481
53517
|
}), r;
|
|
53482
53518
|
}
|
|
53483
|
-
var
|
|
53519
|
+
var h1 = [
|
|
53484
53520
|
5,
|
|
53485
53521
|
10,
|
|
53486
53522
|
15,
|
|
@@ -53504,8 +53540,8 @@ var p1 = [
|
|
|
53504
53540
|
21600,
|
|
53505
53541
|
43200,
|
|
53506
53542
|
86400
|
|
53507
|
-
].map((e) => e * 1e3),
|
|
53508
|
-
function
|
|
53543
|
+
].map((e) => e * 1e3), g1 = .75;
|
|
53544
|
+
function _1(e, t = !1) {
|
|
53509
53545
|
let n = e.map((e) => [e.start, e.end]).sort((e, t) => e[0] - t[0]);
|
|
53510
53546
|
if (!n.length) return {
|
|
53511
53547
|
start: 0,
|
|
@@ -53521,8 +53557,8 @@ function h1(e, t = !1) {
|
|
|
53521
53557
|
n && e <= n[1] + 3e5 ? n[1] = Math.max(n[1], t) : r.push([e, t]);
|
|
53522
53558
|
}
|
|
53523
53559
|
let i = r.reduce((e, [t, n]) => e + (n - t), 0), a = i;
|
|
53524
|
-
t && i && (a =
|
|
53525
|
-
let o = Math.min(
|
|
53560
|
+
t && i && (a = h1.find((e) => e >= i / g1) ?? Math.ceil(i / g1), r.at(-1)[1] += a - i);
|
|
53561
|
+
let o = Math.min(r1, .5 / Math.max(1, r.length - 1)), s = a ? (1 - o * (r.length - 1)) / a : 0, c = [], l = 0;
|
|
53526
53562
|
return r.forEach(([e, t], n) => {
|
|
53527
53563
|
if (n) {
|
|
53528
53564
|
let t = r[n - 1][1];
|
|
@@ -53565,7 +53601,7 @@ function h1(e, t = !1) {
|
|
|
53565
53601
|
}))
|
|
53566
53602
|
};
|
|
53567
53603
|
}
|
|
53568
|
-
var
|
|
53604
|
+
var v1 = [
|
|
53569
53605
|
1,
|
|
53570
53606
|
2,
|
|
53571
53607
|
5,
|
|
@@ -53584,14 +53620,14 @@ var g1 = [
|
|
|
53584
53620
|
21600,
|
|
53585
53621
|
43200,
|
|
53586
53622
|
86400
|
|
53587
|
-
].map((e) => e * 1e3),
|
|
53588
|
-
function
|
|
53623
|
+
].map((e) => e * 1e3), y1 = .12;
|
|
53624
|
+
function b1(e, t = 6, n = {
|
|
53589
53625
|
from: 0,
|
|
53590
53626
|
span: 1
|
|
53591
53627
|
}) {
|
|
53592
53628
|
let r = (e.total_ms ?? e.busy_ms) * n.span;
|
|
53593
53629
|
if (!r) return [];
|
|
53594
|
-
let i =
|
|
53630
|
+
let i = v1.find((e) => r / e <= t) ?? v1.at(-1), a = y1 * n.span, o = [];
|
|
53595
53631
|
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) {
|
|
53596
53632
|
let t = e.x(r);
|
|
53597
53633
|
t < n.from || t > n.from + n.span || (!o.length || t - o.at(-1).x >= a) && o.push({
|
|
@@ -53604,8 +53640,8 @@ function v1(e, t = 6, n = {
|
|
|
53604
53640
|
seconds: i < 6e4
|
|
53605
53641
|
}));
|
|
53606
53642
|
}
|
|
53607
|
-
var
|
|
53608
|
-
function
|
|
53643
|
+
var x1 = .01, S1 = 2e3;
|
|
53644
|
+
function C1(e, t) {
|
|
53609
53645
|
let n = (e) => (e - t.from) / t.span;
|
|
53610
53646
|
return {
|
|
53611
53647
|
...e,
|
|
@@ -53622,20 +53658,20 @@ function x1(e, t) {
|
|
|
53622
53658
|
}))
|
|
53623
53659
|
};
|
|
53624
53660
|
}
|
|
53625
|
-
function
|
|
53626
|
-
let i = Math.max(
|
|
53661
|
+
function w1(e, t, n, r = 0) {
|
|
53662
|
+
let i = Math.max(x1, r ? S1 / r : 0), a = Math.min(1, Math.max(i, e.span * n)), o = e.from + t * e.span;
|
|
53627
53663
|
return {
|
|
53628
53664
|
from: Math.min(1 - a, Math.max(0, o - t * a)),
|
|
53629
53665
|
span: a
|
|
53630
53666
|
};
|
|
53631
53667
|
}
|
|
53632
|
-
function
|
|
53668
|
+
function T1(e, t) {
|
|
53633
53669
|
return {
|
|
53634
53670
|
from: Math.min(1 - e.span, Math.max(0, e.from + t * e.span)),
|
|
53635
53671
|
span: e.span
|
|
53636
53672
|
};
|
|
53637
53673
|
}
|
|
53638
|
-
function
|
|
53674
|
+
function E1(e, t = Date.now()) {
|
|
53639
53675
|
let n = null;
|
|
53640
53676
|
for (let t of e) for (let e of t.segments) (!n || e.seen - e.start > n.end - n.start) && (n = {
|
|
53641
53677
|
...e,
|
|
@@ -53647,7 +53683,7 @@ function w1(e, t = Date.now()) {
|
|
|
53647
53683
|
executions: e.length,
|
|
53648
53684
|
running: e.filter((e) => e.item.state === "running").length,
|
|
53649
53685
|
failed: e.filter((e) => e.item.state === "failed").length,
|
|
53650
|
-
stalled: e.filter((e) => e.item.state === "running" &&
|
|
53686
|
+
stalled: e.filter((e) => e.item.state === "running" && s1(e, t).tone === "warn").length,
|
|
53651
53687
|
tool_segments: e.reduce((e, t) => e + t.segments.filter((e) => [
|
|
53652
53688
|
"command",
|
|
53653
53689
|
"tool",
|
|
@@ -53658,116 +53694,116 @@ function w1(e, t = Date.now()) {
|
|
|
53658
53694
|
}
|
|
53659
53695
|
//#endregion
|
|
53660
53696
|
//#region frontend/ExecutionTimeline.vue
|
|
53661
|
-
var
|
|
53697
|
+
var D1 = {
|
|
53662
53698
|
class: "merged-section execution-timeline",
|
|
53663
53699
|
"aria-label": "执行时间线"
|
|
53664
|
-
},
|
|
53700
|
+
}, O1 = {
|
|
53665
53701
|
key: 0,
|
|
53666
53702
|
role: "alert",
|
|
53667
53703
|
class: "fine-print wf-error"
|
|
53668
|
-
},
|
|
53704
|
+
}, k1 = {
|
|
53669
53705
|
key: 1,
|
|
53670
53706
|
class: "fine-print"
|
|
53671
|
-
},
|
|
53707
|
+
}, A1 = { class: "wf-head" }, j1 = {
|
|
53672
53708
|
key: 0,
|
|
53673
53709
|
class: "wf-state is-replay"
|
|
53674
|
-
},
|
|
53710
|
+
}, M1 = {
|
|
53675
53711
|
key: 2,
|
|
53676
53712
|
class: "wf-headline"
|
|
53677
|
-
},
|
|
53713
|
+
}, N1 = { class: "wf-summary" }, P1 = ["title"], F1 = ["title"], I1 = { title: "连续调用同一工具合并为一段" }, L1 = {
|
|
53678
53714
|
class: "wf-legend",
|
|
53679
53715
|
"aria-label": "图例"
|
|
53680
|
-
},
|
|
53716
|
+
}, R1 = {
|
|
53681
53717
|
key: 0,
|
|
53682
53718
|
class: "wf-legend-note"
|
|
53683
|
-
},
|
|
53719
|
+
}, z1 = {
|
|
53684
53720
|
key: 1,
|
|
53685
53721
|
class: "wf-legend-note"
|
|
53686
|
-
},
|
|
53722
|
+
}, B1 = { class: "wf-axis-label" }, V1 = {
|
|
53687
53723
|
key: 0,
|
|
53688
53724
|
class: "wf-zoom"
|
|
53689
|
-
},
|
|
53725
|
+
}, H1 = {
|
|
53690
53726
|
key: 1,
|
|
53691
53727
|
class: "wf-zoom-hint",
|
|
53692
53728
|
title: "Ctrl + 滚轮缩放;放大后按住中键或拖动时间轴平移,双击时间轴还原"
|
|
53693
|
-
},
|
|
53729
|
+
}, U1 = {
|
|
53694
53730
|
key: 2,
|
|
53695
53731
|
class: "wf-branch"
|
|
53696
|
-
},
|
|
53732
|
+
}, W1 = ["title"], G1 = {
|
|
53697
53733
|
key: 0,
|
|
53698
53734
|
class: "wf-guides",
|
|
53699
53735
|
"aria-hidden": "true"
|
|
53700
|
-
},
|
|
53736
|
+
}, K1 = [
|
|
53701
53737
|
"aria-expanded",
|
|
53702
53738
|
"aria-label",
|
|
53703
53739
|
"onClick"
|
|
53704
|
-
],
|
|
53740
|
+
], q1 = {
|
|
53705
53741
|
key: 2,
|
|
53706
53742
|
class: "wf-toggle-space"
|
|
53707
|
-
},
|
|
53743
|
+
}, J1 = [
|
|
53708
53744
|
"aria-expanded",
|
|
53709
53745
|
"onClick",
|
|
53710
53746
|
"onMouseenter",
|
|
53711
53747
|
"onMouseleave"
|
|
53712
|
-
],
|
|
53748
|
+
], Y1 = { class: "wf-name-line" }, X1 = {
|
|
53713
53749
|
key: 0,
|
|
53714
53750
|
class: "wf-spinner",
|
|
53715
53751
|
"aria-hidden": "true"
|
|
53716
|
-
},
|
|
53752
|
+
}, Z1 = {
|
|
53717
53753
|
key: 1,
|
|
53718
53754
|
class: "wf-pill is-slowest"
|
|
53719
|
-
},
|
|
53755
|
+
}, Q1 = {
|
|
53720
53756
|
key: 0,
|
|
53721
53757
|
class: "wf-live-dot",
|
|
53722
53758
|
"aria-hidden": "true"
|
|
53723
|
-
},
|
|
53759
|
+
}, $1 = ["aria-label", "onMouseleave"], e0 = { class: "wf-track" }, t0 = ["data-tone"], n0 = ["onMouseenter", "onClick"], r0 = ["onMouseenter", "onClick"], i0 = [
|
|
53724
53760
|
"data-tone",
|
|
53725
53761
|
"onMouseenter",
|
|
53726
53762
|
"onClick"
|
|
53727
|
-
],
|
|
53763
|
+
], a0 = [
|
|
53728
53764
|
"data-tone",
|
|
53729
53765
|
"onMouseenter",
|
|
53730
53766
|
"onClick"
|
|
53731
|
-
],
|
|
53767
|
+
], o0 = [
|
|
53732
53768
|
"data-tone",
|
|
53733
53769
|
"onMouseenter",
|
|
53734
53770
|
"onClick"
|
|
53735
|
-
],
|
|
53771
|
+
], s0 = [
|
|
53736
53772
|
"aria-label",
|
|
53737
53773
|
"onMouseenter",
|
|
53738
53774
|
"onClick",
|
|
53739
53775
|
"onFocus",
|
|
53740
53776
|
"onBlur"
|
|
53741
|
-
],
|
|
53777
|
+
], c0 = { class: "wf-end" }, l0 = { key: 1 }, u0 = ["aria-label"], d0 = { class: "wf-detail-head" }, f0 = { key: 0 }, p0 = { key: 1 }, m0 = { class: "is-failed" }, h0 = { key: 2 }, g0 = { key: 3 }, _0 = {
|
|
53742
53778
|
key: 0,
|
|
53743
53779
|
class: "wf-log",
|
|
53744
53780
|
"aria-label": "过程"
|
|
53745
|
-
},
|
|
53781
|
+
}, v0 = ["data-tone"], y0 = {
|
|
53746
53782
|
key: 1,
|
|
53747
53783
|
class: "wf-log-note"
|
|
53748
|
-
},
|
|
53784
|
+
}, b0 = {
|
|
53749
53785
|
key: 1,
|
|
53750
53786
|
class: "fine-print"
|
|
53751
|
-
},
|
|
53787
|
+
}, x0 = {
|
|
53752
53788
|
key: 1,
|
|
53753
53789
|
class: "wf-player"
|
|
53754
|
-
},
|
|
53790
|
+
}, S0 = {
|
|
53755
53791
|
key: 2,
|
|
53756
53792
|
class: "wf-player"
|
|
53757
|
-
},
|
|
53793
|
+
}, C0 = ["aria-label"], w0 = ["disabled"], T0 = ["max", "value"], E0 = { class: "wf-player-time" }, D0 = {
|
|
53758
53794
|
key: 3,
|
|
53759
53795
|
class: "wf-foot"
|
|
53760
|
-
},
|
|
53796
|
+
}, O0 = { key: 0 }, k0 = { key: 1 }, A0 = ["role"], j0 = {
|
|
53761
53797
|
key: 1,
|
|
53762
53798
|
class: "wf-card-text"
|
|
53763
|
-
},
|
|
53799
|
+
}, M0 = {
|
|
53764
53800
|
key: 2,
|
|
53765
53801
|
class: "wf-card-reason"
|
|
53766
|
-
},
|
|
53802
|
+
}, N0 = { class: "wf-card-label" }, P0 = 2e3, F0 = 6e4, I0 = 100, L0 = 60, R0 = 2e4, z0 = 600, B0 = 5, V0 = 16, H0 = 90, U0 = 2, W0 = 8, G0 = 560, K0 = .0015, q0 = "latest", J0 = "all", Y0 = 22, X0 = 5, Z0 = 52, Q0 = /*#__PURE__*/ YH({
|
|
53767
53803
|
__name: "ExecutionTimeline",
|
|
53768
53804
|
emits: ["detail"],
|
|
53769
53805
|
setup(e, { emit: t }) {
|
|
53770
|
-
let n = t, { view: r, bridge: i } = xr("discussion"), a =
|
|
53806
|
+
let n = t, { view: r, bridge: i } = xr("discussion"), a = o1 / 6e4, o = [
|
|
53771
53807
|
1,
|
|
53772
53808
|
2,
|
|
53773
53809
|
4,
|
|
@@ -53783,7 +53819,7 @@ var T1 = {
|
|
|
53783
53819
|
let t = d.value;
|
|
53784
53820
|
if (!t || w) return;
|
|
53785
53821
|
w = !0;
|
|
53786
|
-
let n = e || !S || Date.now() - C >=
|
|
53822
|
+
let n = e || !S || Date.now() - C >= F0 ? 0 : S - B0;
|
|
53787
53823
|
try {
|
|
53788
53824
|
let e = await i.request(`/api/rooms/${t}/timeline${n ? `?after=${n}` : ""}`);
|
|
53789
53825
|
if (t !== d.value) return;
|
|
@@ -53806,7 +53842,7 @@ var T1 = {
|
|
|
53806
53842
|
R(Z(() => re.value?.executions.some((e) => e.state === "running")), (e) => {
|
|
53807
53843
|
clearInterval(T), e && (T = setInterval(() => {
|
|
53808
53844
|
document.hidden || ne();
|
|
53809
|
-
},
|
|
53845
|
+
}, P0));
|
|
53810
53846
|
}, { immediate: !0 }), R(d, () => {
|
|
53811
53847
|
f.value = /* @__PURE__ */ new Map(), p.value = null, g.value = /* @__PURE__ */ new Set(), _.value = /* @__PURE__ */ new Map(), v.value = null, y.value = "", S = 0, ne(!0);
|
|
53812
53848
|
}, { immediate: !0 }), R(() => r.value.room, (e, t) => {
|
|
@@ -53821,7 +53857,7 @@ var T1 = {
|
|
|
53821
53857
|
};
|
|
53822
53858
|
}
|
|
53823
53859
|
function oe(e) {
|
|
53824
|
-
c.value && e.target.closest?.(".wf-track, .wf-axis") && (e.ctrlKey || e.metaKey ? (e.preventDefault(), De.value =
|
|
53860
|
+
c.value && e.target.closest?.(".wf-track, .wf-axis") && (e.ctrlKey || e.metaKey ? (e.preventDefault(), De.value = w1(De.value, ae(e).share, Math.exp(e.deltaY * K0), Te.value.total_ms)) : Oe.value && (e.shiftKey || Math.abs(e.deltaX) > Math.abs(e.deltaY)) && (e.preventDefault(), De.value = T1(De.value, (e.shiftKey ? e.deltaY : e.deltaX) / ae(e).width)));
|
|
53825
53861
|
}
|
|
53826
53862
|
function k(e) {
|
|
53827
53863
|
let t = e.target.closest?.(".wf-axis");
|
|
@@ -53832,7 +53868,7 @@ var T1 = {
|
|
|
53832
53868
|
}, e.currentTarget.setPointerCapture(e.pointerId));
|
|
53833
53869
|
}
|
|
53834
53870
|
function se(e) {
|
|
53835
|
-
ie && (De.value =
|
|
53871
|
+
ie && (De.value = T1({
|
|
53836
53872
|
from: ie.from,
|
|
53837
53873
|
span: De.value.span
|
|
53838
53874
|
}, -(e.clientX - ie.x) / ie.width));
|
|
@@ -53858,15 +53894,15 @@ var T1 = {
|
|
|
53858
53894
|
}), ta(() => {
|
|
53859
53895
|
clearInterval(T), cancelAnimationFrame(ee), document.removeEventListener("pointerdown", ue), document.removeEventListener("keydown", de), u?.disconnect();
|
|
53860
53896
|
});
|
|
53861
|
-
let fe = /* @__PURE__ */ F(
|
|
53897
|
+
let fe = /* @__PURE__ */ F(q0), pe = Z(() => re.value ? p1(re.value, h.value) : {
|
|
53862
53898
|
list: [],
|
|
53863
53899
|
of: /* @__PURE__ */ new Map()
|
|
53864
|
-
}), me = Z(() => fe.value ===
|
|
53900
|
+
}), me = Z(() => fe.value === q0 ? pe.value.list[0]?.key : fe.value === J0 || pe.value.list.some((e) => e.key === fe.value) ? fe.value : pe.value.list[0]?.key), he = Z(() => !re.value || me.value === J0 ? re.value : {
|
|
53865
53901
|
...re.value,
|
|
53866
53902
|
executions: re.value.executions.filter((e) => pe.value.of.get(`${e.source}:${e.id}`) === me.value)
|
|
53867
53903
|
});
|
|
53868
53904
|
R(d, () => {
|
|
53869
|
-
fe.value =
|
|
53905
|
+
fe.value = q0;
|
|
53870
53906
|
});
|
|
53871
53907
|
let ge = (e) => new Date(e).toLocaleString("zh-CN", {
|
|
53872
53908
|
month: "numeric",
|
|
@@ -53876,13 +53912,13 @@ var T1 = {
|
|
|
53876
53912
|
hour12: !1
|
|
53877
53913
|
});
|
|
53878
53914
|
function _e(e) {
|
|
53879
|
-
let t = e.task ? `${e.task.replace(/\s+/g, " ").slice(0,
|
|
53915
|
+
let t = e.task ? `${e.task.replace(/\s+/g, " ").slice(0, Y0)}${e.task.length > Y0 ? "…" : ""}` : e.source === "discussion" ? "讨论" : "执行";
|
|
53880
53916
|
return `${ge(e.start)} · ${t} · ${e.count} 次${e.running ? " · 进行中" : e.failed ? " · 有失败" : ""}`;
|
|
53881
53917
|
}
|
|
53882
53918
|
let M = Z(() => [
|
|
53883
53919
|
{
|
|
53884
53920
|
label: "最近一轮(自动跟随)",
|
|
53885
|
-
value:
|
|
53921
|
+
value: q0
|
|
53886
53922
|
},
|
|
53887
53923
|
...pe.value.list.map((e) => ({
|
|
53888
53924
|
label: _e(e),
|
|
@@ -53890,9 +53926,9 @@ var T1 = {
|
|
|
53890
53926
|
})),
|
|
53891
53927
|
{
|
|
53892
53928
|
label: "全部执行",
|
|
53893
|
-
value:
|
|
53929
|
+
value: J0
|
|
53894
53930
|
}
|
|
53895
|
-
]), N = Z(() => he.value ?
|
|
53931
|
+
]), N = Z(() => he.value ? d1(he.value, h.value) : []), ve = Z(() => N.value.some((e) => e.item.state === "running")), ye = Z(() => {
|
|
53896
53932
|
let e = Math.min(...N.value.map((e) => e.start)), t = Math.max(...N.value.map((e) => e.end));
|
|
53897
53933
|
return Number.isFinite(e) ? {
|
|
53898
53934
|
start: e,
|
|
@@ -53903,17 +53939,17 @@ var T1 = {
|
|
|
53903
53939
|
end: 0,
|
|
53904
53940
|
duration: 0
|
|
53905
53941
|
};
|
|
53906
|
-
}), be = Z(() => O.position !== null && !ve.value), xe = Z(() => be.value ? ye.value.start + O.position : h.value), Se = Z(() => be.value ? l1(
|
|
53942
|
+
}), be = Z(() => O.position !== null && !ve.value), xe = Z(() => be.value ? ye.value.start + O.position : h.value), Se = Z(() => be.value ? d1(l1(he.value, xe.value, _.value), xe.value) : N.value), Ce = Z(() => Se.value.filter((e) => !e.ancestors.some((e) => g.value.has(e)))), we = Z(() => Se.value.some((e) => e.item.state === "running")), Te = Z(() => _1(Se.value, we.value)), Ee = {
|
|
53907
53943
|
from: 0,
|
|
53908
53944
|
span: 1
|
|
53909
53945
|
}, De = /* @__PURE__ */ F(Ee), Oe = Z(() => De.value.span < 1);
|
|
53910
53946
|
R([me, d], () => {
|
|
53911
53947
|
De.value = Ee;
|
|
53912
53948
|
});
|
|
53913
|
-
let ke = Z(() =>
|
|
53949
|
+
let ke = Z(() => C1(Te.value, De.value)), Ae = Z(() => {
|
|
53914
53950
|
let e = we.value ? ke.value.x(xe.value) : null;
|
|
53915
53951
|
return e === null || e < 0 || e > 1 ? null : e;
|
|
53916
|
-
}), je = Z(() => Math.max(1, ye.value.duration /
|
|
53952
|
+
}), je = Z(() => Math.max(1, ye.value.duration / R0)), Me = Z(() => [{
|
|
53917
53953
|
label: `自动 · ${Math.round(je.value)}×`,
|
|
53918
53954
|
value: 0
|
|
53919
53955
|
}, ...o.map((e) => ({
|
|
@@ -53923,7 +53959,7 @@ var T1 = {
|
|
|
53923
53959
|
function Pe(e) {
|
|
53924
53960
|
let t = E ? Math.min(e - E, 250) : 0;
|
|
53925
53961
|
E = e;
|
|
53926
|
-
let n = Se.value.length <=
|
|
53962
|
+
let n = Se.value.length <= L0 || e - D >= I0;
|
|
53927
53963
|
O.playing && (te += t * Ne.value, te >= ye.value.duration ? Object.assign(O, {
|
|
53928
53964
|
position: null,
|
|
53929
53965
|
playing: !1
|
|
@@ -53976,15 +54012,15 @@ var T1 = {
|
|
|
53976
54012
|
let t = e.filter((e) => !Ve.has(e));
|
|
53977
54013
|
t.forEach((e) => Ve.add(e)), t.length && (Be.value = /* @__PURE__ */ new Set([...Be.value, ...t]), setTimeout(() => {
|
|
53978
54014
|
Be.value = new Set([...Be.value].filter((e) => !t.includes(e)));
|
|
53979
|
-
},
|
|
54015
|
+
}, z0));
|
|
53980
54016
|
}), R([me, d], () => {
|
|
53981
54017
|
Ve = null;
|
|
53982
54018
|
});
|
|
53983
|
-
let Ue = Z(() =>
|
|
54019
|
+
let Ue = Z(() => m1(Ce.value, ke.value)), We = Z(() => b1(Te.value, Math.min(W0, Math.max(U0, Math.round((l.value || 540) / H0))), De.value).map((e) => ({
|
|
53984
54020
|
...e,
|
|
53985
54021
|
x: (e.x - De.value.from) / De.value.span
|
|
53986
|
-
}))), Ge = Z(() =>
|
|
53987
|
-
let e = Se.value, t = new Set(e.flatMap((e) => e.segments.map((e) =>
|
|
54022
|
+
}))), Ge = Z(() => E1(Se.value, xe.value)), Ke = Z(() => Se.value.filter((e) => e.has_children).map((e) => e.key)), qe = Z(() => Se.value.find((e) => e.key === y.value)), Je = Z(() => qe.value ? c1(qe.value, _.value.get(qe.value.item.id)) : []), Ye = Z(() => {
|
|
54023
|
+
let e = Se.value, t = new Set(e.flatMap((e) => e.segments.map((e) => e1[e.phase])));
|
|
53988
54024
|
return [
|
|
53989
54025
|
...e.some((e) => e.queue[1] > e.queue[0]) ? [["queue", "排队"]] : [],
|
|
53990
54026
|
...e.some((e) => e.wake) ? [["wake", "唤醒"]] : [],
|
|
@@ -53997,10 +54033,10 @@ var T1 = {
|
|
|
53997
54033
|
];
|
|
53998
54034
|
}), Xe = Z(() => Se.value.length > 0 && Se.value.every((e) => !e.segments.length)), Ze = Z(() => {
|
|
53999
54035
|
let e = /* @__PURE__ */ new Map();
|
|
54000
|
-
for (let t of [...Se.value].sort((e, t) => e.start - t.start)) e.has(t.item.member) || e.set(t.item.member, e.size %
|
|
54036
|
+
for (let t of [...Se.value].sort((e, t) => e.start - t.start)) e.has(t.item.member) || e.set(t.item.member, e.size % X0 + 1);
|
|
54001
54037
|
return e;
|
|
54002
54038
|
}), Qe = Z(() => {
|
|
54003
|
-
let e =
|
|
54039
|
+
let e = Z0 / (l.value || 800), t = [];
|
|
54004
54040
|
for (let n of ke.value.folds) {
|
|
54005
54041
|
let r = n.from + n.width / 2;
|
|
54006
54042
|
r < 0 || r > 1 || (!t.length || r - t.at(-1).middle >= e) && t.push({
|
|
@@ -54010,12 +54046,12 @@ var T1 = {
|
|
|
54010
54046
|
}
|
|
54011
54047
|
return t;
|
|
54012
54048
|
}), $e = Z(() => {
|
|
54013
|
-
let e =
|
|
54049
|
+
let e = Z0 / (l.value || 800);
|
|
54014
54050
|
return We.value.filter((t) => !Qe.value.some((n) => Math.abs(t.x - n.middle) < e));
|
|
54015
54051
|
});
|
|
54016
54052
|
function et(e, t) {
|
|
54017
54053
|
if (y.value = y.value === e.key ? "" : e.key, !y.value) return;
|
|
54018
|
-
let n = t.currentTarget.getBoundingClientRect(), r = x.value.getBoundingClientRect(), i = Math.min(
|
|
54054
|
+
let n = t.currentTarget.getBoundingClientRect(), r = x.value.getBoundingClientRect(), i = Math.min(G0, r.width - 16);
|
|
54019
54055
|
b.value = {
|
|
54020
54056
|
top: n.bottom - r.top + 4,
|
|
54021
54057
|
left: Math.max(8, Math.min(n.left - r.left, r.width - i - 8))
|
|
@@ -54042,15 +54078,15 @@ var T1 = {
|
|
|
54042
54078
|
function it(e) {
|
|
54043
54079
|
return [...e.item.source === "discussion" ? ["讨论"] : [], ...e.item.role === "host" ? ["主持"] : []];
|
|
54044
54080
|
}
|
|
54045
|
-
let at = (e) =>
|
|
54081
|
+
let at = (e) => s1(e, xe.value);
|
|
54046
54082
|
function ot(e) {
|
|
54047
54083
|
let t = [
|
|
54048
54084
|
i.display_name(e.item.member),
|
|
54049
54085
|
rt(e),
|
|
54050
|
-
|
|
54051
|
-
`用时 ${
|
|
54086
|
+
t1[e.item.state],
|
|
54087
|
+
`用时 ${i1(e.end - e.start)}`
|
|
54052
54088
|
];
|
|
54053
|
-
return e.wake && t.push(`唤醒 ${
|
|
54089
|
+
return e.wake && t.push(`唤醒 ${i1(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(",");
|
|
54054
54090
|
}
|
|
54055
54091
|
async function st(e) {
|
|
54056
54092
|
let t = e.item.id;
|
|
@@ -54074,7 +54110,7 @@ var T1 = {
|
|
|
54074
54110
|
let i = e.currentTarget.getBoundingClientRect(), a = n.note ? {
|
|
54075
54111
|
notes: [n.note],
|
|
54076
54112
|
earlier: !1
|
|
54077
|
-
} :
|
|
54113
|
+
} : u1(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;
|
|
54078
54114
|
v.value = {
|
|
54079
54115
|
key: t.key,
|
|
54080
54116
|
id: dt(t, n),
|
|
@@ -54098,7 +54134,7 @@ var T1 = {
|
|
|
54098
54134
|
}
|
|
54099
54135
|
let ht = Z(() => {
|
|
54100
54136
|
let e = v.value?.piece;
|
|
54101
|
-
return e ? e.note ? `过程说明 · ${ct(e.note.at)}` : `${e.kind === "segment" ? `${
|
|
54137
|
+
return e ? e.note ? `过程说明 · ${ct(e.note.at)}` : `${e.kind === "segment" ? `${$$[e.phase]}${e.tool ? ` · ${e.tool}` : ""}` : e.label} · ${i1(e.end - e.start)}${e.live ? " · 进行中" : ""}` : "";
|
|
54102
54138
|
}), gt = Z(() => {
|
|
54103
54139
|
if (!v.value) return [];
|
|
54104
54140
|
let e = _.value.get(v.value.row.item.id);
|
|
@@ -54109,17 +54145,17 @@ var T1 = {
|
|
|
54109
54145
|
});
|
|
54110
54146
|
return (e, t) => {
|
|
54111
54147
|
let r = bH, o = sA, s = pA;
|
|
54112
|
-
return U(), W("section",
|
|
54148
|
+
return U(), W("section", D1, [
|
|
54113
54149
|
t[30] ||= K("div", { class: "page-heading" }, [K("div", null, [K("h2", null, "执行时间线"), K("p", null, "本机接入程序唤醒的每次执行;点名字看详情,悬停条形看当时的过程说明。")])], -1),
|
|
54114
|
-
m.value ? (U(), W("p",
|
|
54115
|
-
re.value && !Se.value.length ? (U(), W("p",
|
|
54150
|
+
m.value ? (U(), W("p", O1, P(m.value), 1)) : Y("", !0),
|
|
54151
|
+
re.value && !Se.value.length ? (U(), W("p", k1, "还没有执行记录。")) : Y("", !0),
|
|
54116
54152
|
Se.value.length ? (U(), W("div", {
|
|
54117
54153
|
key: 2,
|
|
54118
54154
|
ref_key: "wf_element",
|
|
54119
54155
|
ref: x,
|
|
54120
54156
|
class: "wf"
|
|
54121
54157
|
}, [
|
|
54122
|
-
K("header",
|
|
54158
|
+
K("header", A1, [
|
|
54123
54159
|
t[12] ||= K("span", { class: "wf-title" }, "执行瀑布", -1),
|
|
54124
54160
|
q(r, {
|
|
54125
54161
|
modelValue: fe.value,
|
|
@@ -54138,17 +54174,17 @@ var T1 = {
|
|
|
54138
54174
|
trailingIcon: "wf-select-icon"
|
|
54139
54175
|
}
|
|
54140
54176
|
}, null, 8, ["modelValue", "items"]),
|
|
54141
|
-
be.value ? (U(), W("span",
|
|
54177
|
+
be.value ? (U(), W("span", j1, "回放中 · " + P(ct(xe.value)), 1)) : (U(), W("span", {
|
|
54142
54178
|
key: 1,
|
|
54143
54179
|
class: j(["wf-state", { "is-live": Ge.value.running }])
|
|
54144
54180
|
}, P(Ge.value.running ? `${Ge.value.running} 个进行中` : "均已结束"), 3)),
|
|
54145
|
-
Ge.value.slowest ? (U(), W("span",
|
|
54181
|
+
Ge.value.slowest ? (U(), W("span", M1, [
|
|
54146
54182
|
t[11] ||= J("最慢一步 ", -1),
|
|
54147
|
-
K("b", null, [J(P(I(i).display_name(Ge.value.slowest.member)) + " · " + P(I(
|
|
54148
|
-
J(" · " + P(I(
|
|
54183
|
+
K("b", null, [J(P(I(i).display_name(Ge.value.slowest.member)) + " · " + P(I($$)[Ge.value.slowest.phase]), 1), Ge.value.slowest.tool ? (U(), W(H, { key: 0 }, [J(P(Ge.value.slowest.tool), 1)], 64)) : Y("", !0)]),
|
|
54184
|
+
J(" · " + P(I(i1)(Ge.value.slowest.end - Ge.value.slowest.start)), 1)
|
|
54149
54185
|
])) : Y("", !0)
|
|
54150
54186
|
]),
|
|
54151
|
-
K("dl",
|
|
54187
|
+
K("dl", N1, [
|
|
54152
54188
|
K("div", null, [t[13] ||= K("dt", null, "执行", -1), K("dd", null, [(U(), W("span", {
|
|
54153
54189
|
key: Ge.value.executions,
|
|
54154
54190
|
class: "wf-roll"
|
|
@@ -54164,17 +54200,17 @@ var T1 = {
|
|
|
54164
54200
|
K("div", { title: `超过 ${a} 分钟没有输出` }, [t[16] ||= K("dt", null, "可能卡住", -1), K("dd", { class: j(Ge.value.stalled ? "is-warn" : "is-zero") }, [(U(), W("span", {
|
|
54165
54201
|
key: Ge.value.stalled,
|
|
54166
54202
|
class: "wf-roll"
|
|
54167
|
-
}, P(Ge.value.stalled), 1))], 2)], 8,
|
|
54168
|
-
K("div", { title: Te.value.folds.length ? `已折叠 ${Te.value.folds.length} 段超过 ${I(
|
|
54169
|
-
K("div",
|
|
54203
|
+
}, P(Ge.value.stalled), 1))], 2)], 8, P1),
|
|
54204
|
+
K("div", { title: Te.value.folds.length ? `已折叠 ${Te.value.folds.length} 段超过 ${I(n1) / 6e4} 分钟的空闲` : void 0 }, [t[17] ||= K("dt", null, "有效时长", -1), K("dd", null, P(I(i1)(Te.value.busy_ms)), 1)], 8, F1),
|
|
54205
|
+
K("div", I1, [t[19] ||= K("dt", null, "工具与命令", -1), K("dd", { class: j({ "is-zero": !Ge.value.tool_segments }) }, [(U(), W("span", {
|
|
54170
54206
|
key: Ge.value.tool_segments,
|
|
54171
54207
|
class: "wf-roll"
|
|
54172
54208
|
}, P(Ge.value.tool_segments), 1)), t[18] ||= J(" 段", -1)], 2)])
|
|
54173
54209
|
]),
|
|
54174
|
-
K("ul",
|
|
54210
|
+
K("ul", L1, [
|
|
54175
54211
|
(U(!0), W(H, null, B(Ye.value, ([e, t]) => (U(), W("li", { key: e }, [K("i", { class: j(["wf-swatch", `is-${e}`]) }, null, 2), J(P(t), 1)]))), 128)),
|
|
54176
|
-
Ze.value.size > 1 ? (U(), W("li",
|
|
54177
|
-
Xe.value ? (U(), W("li",
|
|
54212
|
+
Ze.value.size > 1 ? (U(), W("li", R1, "颜色区分成员,深浅区分模型与工具")) : Y("", !0),
|
|
54213
|
+
Xe.value ? (U(), W("li", z1, "这些执行都没有阶段明细:发生在接入程序上报阶段之前,或来自手动接入、在线 AI、Codex App")) : Y("", !0)
|
|
54178
54214
|
]),
|
|
54179
54215
|
K("div", {
|
|
54180
54216
|
class: j(["wf-grid", {
|
|
@@ -54182,7 +54218,7 @@ var T1 = {
|
|
|
54182
54218
|
"is-panning": I(ie)
|
|
54183
54219
|
}]),
|
|
54184
54220
|
role: "list",
|
|
54185
|
-
style: A({ "--wf-depth-px": `${
|
|
54221
|
+
style: A({ "--wf-depth-px": `${V0}px` }),
|
|
54186
54222
|
onWheel: oe,
|
|
54187
54223
|
onMousedown: le,
|
|
54188
54224
|
onPointerdown: k,
|
|
@@ -54190,14 +54226,14 @@ var T1 = {
|
|
|
54190
54226
|
onPointerup: ce,
|
|
54191
54227
|
onPointercancel: ce
|
|
54192
54228
|
}, [
|
|
54193
|
-
K("div",
|
|
54229
|
+
K("div", B1, [
|
|
54194
54230
|
K("span", null, "执行 · " + P(Ce.value.length) + "/" + P(Se.value.length), 1),
|
|
54195
|
-
Oe.value ? (U(), W("span",
|
|
54231
|
+
Oe.value ? (U(), W("span", V1, [J("放大 " + P((1 / De.value.span).toFixed(1)) + "×", 1), K("button", {
|
|
54196
54232
|
type: "button",
|
|
54197
54233
|
class: "wf-text-button",
|
|
54198
54234
|
onClick: t[1] ||= (e) => De.value = Ee
|
|
54199
|
-
}, "重置")])) : (U(), W("span",
|
|
54200
|
-
Ke.value.length ? (U(), W("span",
|
|
54235
|
+
}, "重置")])) : (U(), W("span", H1, "Ctrl + 滚轮缩放")),
|
|
54236
|
+
Ke.value.length ? (U(), W("span", U1, [K("button", {
|
|
54201
54237
|
type: "button",
|
|
54202
54238
|
class: "wf-text-button",
|
|
54203
54239
|
onClick: t[2] ||= (e) => g.value = /* @__PURE__ */ new Set()
|
|
@@ -54224,7 +54260,7 @@ var T1 = {
|
|
|
54224
54260
|
class: "wf-fold-label",
|
|
54225
54261
|
style: A({ left: `${e.middle * 100}%` }),
|
|
54226
54262
|
title: `${ct(e.start)} – ${ct(e.end)} 没有执行,已折叠`
|
|
54227
|
-
}, "⋯ " + P(I(
|
|
54263
|
+
}, "⋯ " + P(I(i1)(e.end - e.start)), 13, W1))), 128)),
|
|
54228
54264
|
Ae.value === null ? Y("", !0) : (U(), W("span", {
|
|
54229
54265
|
key: 0,
|
|
54230
54266
|
class: "wf-cursor-head",
|
|
@@ -54244,7 +54280,7 @@ var T1 = {
|
|
|
54244
54280
|
class: "wf-label",
|
|
54245
54281
|
style: A({ "--depth": e.depth })
|
|
54246
54282
|
}, [
|
|
54247
|
-
e.depth ? (U(), W("span",
|
|
54283
|
+
e.depth ? (U(), W("span", G1)) : Y("", !0),
|
|
54248
54284
|
e.has_children ? (U(), W("button", {
|
|
54249
54285
|
key: 1,
|
|
54250
54286
|
type: "button",
|
|
@@ -54252,7 +54288,7 @@ var T1 = {
|
|
|
54252
54288
|
"aria-expanded": !g.value.has(e.key),
|
|
54253
54289
|
"aria-label": `${g.value.has(e.key) ? "展开" : "收起"} ${I(i).display_name(e.item.member)} 派出的执行`,
|
|
54254
54290
|
onClick: (t) => tt(e.key)
|
|
54255
|
-
}, [q(o, { name: "i-lucide-chevron-right" })], 10,
|
|
54291
|
+
}, [q(o, { name: "i-lucide-chevron-right" })], 10, K1)) : (U(), W("span", q1)),
|
|
54256
54292
|
q(s, {
|
|
54257
54293
|
src: I(i).identities[e.item.member]?.icon,
|
|
54258
54294
|
text: I(i).identities[e.item.member]?.initials,
|
|
@@ -54271,29 +54307,29 @@ var T1 = {
|
|
|
54271
54307
|
"aria-expanded": y.value === e.key,
|
|
54272
54308
|
onClick: (t) => et(e, t),
|
|
54273
54309
|
onMouseenter: (t) => ft(t, e, {
|
|
54274
|
-
label: I(
|
|
54310
|
+
label: I(t1)[e.item.state],
|
|
54275
54311
|
start: e.start,
|
|
54276
54312
|
end: e.end,
|
|
54277
54313
|
text: at(e).text,
|
|
54278
54314
|
live: e.item.state === "running"
|
|
54279
54315
|
}),
|
|
54280
54316
|
onMouseleave: (t) => mt(e)
|
|
54281
|
-
}, [K("span",
|
|
54282
|
-
e.item.state === "running" ? (U(), W("i",
|
|
54317
|
+
}, [K("span", Y1, [
|
|
54318
|
+
e.item.state === "running" ? (U(), W("i", X1)) : Y("", !0),
|
|
54283
54319
|
K("strong", null, P(I(i).display_name(e.item.member)), 1),
|
|
54284
54320
|
(U(!0), W(H, null, B(it(e), (e) => (U(), W("em", {
|
|
54285
54321
|
key: e,
|
|
54286
54322
|
class: "wf-pill is-role"
|
|
54287
54323
|
}, P(e), 1))), 128)),
|
|
54288
|
-
Ge.value.slowest?.row === e.key ? (U(), W("em",
|
|
54289
|
-
]), K("span", { class: j(["wf-status", `is-${at(e).tone}`]) }, [at(e).tone === "live" ? (U(), W("i",
|
|
54324
|
+
Ge.value.slowest?.row === e.key ? (U(), W("em", Z1, "最慢")) : Y("", !0)
|
|
54325
|
+
]), K("span", { class: j(["wf-status", `is-${at(e).tone}`]) }, [at(e).tone === "live" ? (U(), W("i", Q1)) : Y("", !0), J(P(at(e).text), 1)], 2)], 40, J1)
|
|
54290
54326
|
], 4),
|
|
54291
54327
|
K("div", {
|
|
54292
54328
|
class: "wf-lane",
|
|
54293
54329
|
role: "img",
|
|
54294
54330
|
"aria-label": ot(e),
|
|
54295
54331
|
onMouseleave: (t) => mt(e)
|
|
54296
|
-
}, [K("div",
|
|
54332
|
+
}, [K("div", e0, [
|
|
54297
54333
|
(U(!0), W(H, null, B($e.value, (e) => (U(), W("i", {
|
|
54298
54334
|
key: e.at,
|
|
54299
54335
|
class: "wf-gridline",
|
|
@@ -54313,7 +54349,7 @@ var T1 = {
|
|
|
54313
54349
|
class: j(["wf-link", `is-${e.part}`]),
|
|
54314
54350
|
"data-tone": Ze.value.get(e.member),
|
|
54315
54351
|
style: A({ left: `${e.x * 100}%` })
|
|
54316
|
-
}, null, 14,
|
|
54352
|
+
}, null, 14, t0))), 128)),
|
|
54317
54353
|
Ae.value === null ? Y("", !0) : (U(), W("i", {
|
|
54318
54354
|
key: 0,
|
|
54319
54355
|
class: "wf-cursor",
|
|
@@ -54332,7 +54368,7 @@ var T1 = {
|
|
|
54332
54368
|
start: e.queue[0],
|
|
54333
54369
|
end: e.queue[1]
|
|
54334
54370
|
})
|
|
54335
|
-
}, null, 44,
|
|
54371
|
+
}, null, 44, n0),
|
|
54336
54372
|
e.wake ? (U(), W("i", {
|
|
54337
54373
|
key: 1,
|
|
54338
54374
|
class: "wf-bar is-wake",
|
|
@@ -54347,7 +54383,7 @@ var T1 = {
|
|
|
54347
54383
|
start: e.wake[0],
|
|
54348
54384
|
end: e.wake[1]
|
|
54349
54385
|
})
|
|
54350
|
-
}, null, 44,
|
|
54386
|
+
}, null, 44, r0)) : Y("", !0),
|
|
54351
54387
|
e.work ? (U(), W("i", {
|
|
54352
54388
|
key: 2,
|
|
54353
54389
|
class: j(["wf-bar is-work", { "has-detail": e.segments.length }]),
|
|
@@ -54365,9 +54401,9 @@ var T1 = {
|
|
|
54365
54401
|
end: e.work[1],
|
|
54366
54402
|
live: e.item.state === "running"
|
|
54367
54403
|
})
|
|
54368
|
-
}, null, 46,
|
|
54404
|
+
}, null, 46, i0)) : Y("", !0),
|
|
54369
54405
|
(U(!0), W(H, null, B(e.segments, (t) => (U(), W(H, { key: t.start + t.phase }, [K("i", {
|
|
54370
|
-
class: j(["wf-bar wf-seg", [`is-${I(
|
|
54406
|
+
class: j(["wf-bar wf-seg", [`is-${I(e1)[t.phase]}`, { "is-live": t.live }]]),
|
|
54371
54407
|
"data-tone": Ze.value.get(e.item.member),
|
|
54372
54408
|
style: A(nt(t.start, t.seen, !0)),
|
|
54373
54409
|
onMouseenter: (n) => ft(n, e, {
|
|
@@ -54378,9 +54414,9 @@ var T1 = {
|
|
|
54378
54414
|
kind: "segment",
|
|
54379
54415
|
...t
|
|
54380
54416
|
})
|
|
54381
|
-
}, null, 46,
|
|
54417
|
+
}, null, 46, a0), t.end > t.seen ? (U(), W("i", {
|
|
54382
54418
|
key: 0,
|
|
54383
|
-
class: j(["wf-bar wf-seg is-tail", `is-${I(
|
|
54419
|
+
class: j(["wf-bar wf-seg is-tail", `is-${I(e1)[t.phase]}`]),
|
|
54384
54420
|
"data-tone": Ze.value.get(e.item.member),
|
|
54385
54421
|
style: A(nt(t.seen, t.end)),
|
|
54386
54422
|
onMouseenter: (n) => ft(n, e, {
|
|
@@ -54391,7 +54427,7 @@ var T1 = {
|
|
|
54391
54427
|
kind: "segment",
|
|
54392
54428
|
...t
|
|
54393
54429
|
})
|
|
54394
|
-
}, null, 46,
|
|
54430
|
+
}, null, 46, o0)) : Y("", !0)], 64))), 128)),
|
|
54395
54431
|
(U(!0), W(H, null, B(e.notes, (t) => (U(), W("button", {
|
|
54396
54432
|
key: `note-${t.index}`,
|
|
54397
54433
|
type: "button",
|
|
@@ -54414,15 +54450,15 @@ var T1 = {
|
|
|
54414
54450
|
end: t.at
|
|
54415
54451
|
}),
|
|
54416
54452
|
onBlur: (t) => mt(e)
|
|
54417
|
-
}, null, 44,
|
|
54418
|
-
])], 40,
|
|
54419
|
-
K("span",
|
|
54420
|
-
J(P(I(
|
|
54453
|
+
}, null, 44, s0))), 128))
|
|
54454
|
+
])], 40, $1),
|
|
54455
|
+
K("span", c0, [
|
|
54456
|
+
J(P(I(i1)(e.end - e.start)) + P(e.wake_approx && e.wake ? "~" : ""), 1),
|
|
54421
54457
|
e.item.state === "done" ? Y("", !0) : (U(), W("small", {
|
|
54422
54458
|
key: 0,
|
|
54423
54459
|
class: j(`is-${e.item.state}`)
|
|
54424
|
-
}, P(I(
|
|
54425
|
-
e.truncated ? (U(), W("small",
|
|
54460
|
+
}, P(I(t1)[e.item.state]), 3)),
|
|
54461
|
+
e.truncated ? (U(), W("small", l0, "明细已截断")) : Y("", !0)
|
|
54426
54462
|
])
|
|
54427
54463
|
], 2))), 128))
|
|
54428
54464
|
], 38),
|
|
@@ -54436,9 +54472,9 @@ var T1 = {
|
|
|
54436
54472
|
left: `${b.value.left}px`
|
|
54437
54473
|
})
|
|
54438
54474
|
}, [
|
|
54439
|
-
K("header",
|
|
54475
|
+
K("header", d0, [
|
|
54440
54476
|
K("strong", null, P(I(i).display_name(qe.value.item.member)), 1),
|
|
54441
|
-
K("small", null, P(rt(qe.value)) + " · " + P(I(
|
|
54477
|
+
K("small", null, P(rt(qe.value)) + " · " + P(I(t1)[qe.value.item.state]) + " · " + P(I(i1)(qe.value.end - qe.value.start)), 1),
|
|
54442
54478
|
K("button", {
|
|
54443
54479
|
type: "button",
|
|
54444
54480
|
class: "wf-card-close",
|
|
@@ -54447,47 +54483,47 @@ var T1 = {
|
|
|
54447
54483
|
}, [q(o, { name: "i-lucide-x" })])
|
|
54448
54484
|
]),
|
|
54449
54485
|
K("dl", null, [
|
|
54450
|
-
qe.value.item.task ? (U(), W("div",
|
|
54486
|
+
qe.value.item.task ? (U(), W("div", f0, [t[22] ||= K("dt", null, "任务", -1), K("dd", null, [J(P(qe.value.item.task), 1), qe.value.item.task_id ? (U(), W("button", {
|
|
54451
54487
|
key: 0,
|
|
54452
54488
|
type: "button",
|
|
54453
54489
|
class: "subtle-link",
|
|
54454
54490
|
onClick: t[6] ||= (e) => n("detail", qe.value.item.task_id)
|
|
54455
54491
|
}, "#" + P(qe.value.item.task_id), 1)) : Y("", !0)])])) : Y("", !0),
|
|
54456
|
-
qe.value.item.state === "failed" ? (U(), W("div",
|
|
54492
|
+
qe.value.item.state === "failed" ? (U(), W("div", p0, [t[23] ||= K("dt", null, "失败原因", -1), K("dd", m0, P(qe.value.item.reason || "执行失败"), 1)])) : qe.value.item.result || qe.value.item.answer_id ? (U(), W("div", h0, [t[24] ||= K("dt", null, "结果", -1), K("dd", null, [J(P(qe.value.item.result), 1), qe.value.item.answer_id ? (U(), W("button", {
|
|
54457
54493
|
key: 0,
|
|
54458
54494
|
type: "button",
|
|
54459
54495
|
class: "subtle-link",
|
|
54460
54496
|
onClick: t[7] ||= (e) => n("detail", qe.value.item.answer_id)
|
|
54461
54497
|
}, "在消息中查看 #" + P(qe.value.item.answer_id), 1)) : Y("", !0)])])) : Y("", !0),
|
|
54462
|
-
qe.value.item.changes ? (U(), W("div",
|
|
54498
|
+
qe.value.item.changes ? (U(), W("div", g0, [t[25] ||= K("dt", null, "改动", -1), K("dd", null, P(qe.value.item.changes) + " 个文件", 1)])) : Y("", !0)
|
|
54463
54499
|
]),
|
|
54464
|
-
Je.value.length ? (U(), W("ol",
|
|
54500
|
+
Je.value.length ? (U(), W("ol", _0, [(U(!0), W(H, null, B(Je.value, (e) => (U(), W("li", {
|
|
54465
54501
|
key: `${e.kind}-${e.at}-${e.phase || ""}`,
|
|
54466
54502
|
class: j(`log-${e.kind}`)
|
|
54467
54503
|
}, [K("time", null, P(ct(e.at)), 1), e.kind === "phase" ? (U(), W(H, { key: 0 }, [K("i", {
|
|
54468
|
-
class: j(["wf-swatch", `is-${I(
|
|
54504
|
+
class: j(["wf-swatch", `is-${I(e1)[e.phase]}`]),
|
|
54469
54505
|
"data-tone": Ze.value.get(qe.value.item.member),
|
|
54470
54506
|
"aria-hidden": "true"
|
|
54471
|
-
}, null, 10,
|
|
54472
|
-
J(P(I(
|
|
54507
|
+
}, null, 10, v0), K("span", null, [
|
|
54508
|
+
J(P(I($$)[e.phase]), 1),
|
|
54473
54509
|
e.tool ? (U(), W(H, { key: 0 }, [J(" · " + P(e.tool), 1)], 64)) : Y("", !0),
|
|
54474
|
-
J(" · " + P(e.live ? "进行中" : I(
|
|
54475
|
-
])], 64)) : (U(), W("span",
|
|
54476
|
-
], 12,
|
|
54477
|
-
me.value ===
|
|
54510
|
+
J(" · " + P(e.live ? "进行中" : I(i1)(e.duration)), 1)
|
|
54511
|
+
])], 64)) : (U(), W("span", y0, P(e.text), 1))], 2))), 128))])) : (U(), W("p", b0, "这次执行没有阶段明细或过程说明。"))
|
|
54512
|
+
], 12, u0)) : Y("", !0),
|
|
54513
|
+
me.value === J0 ? (U(), W("div", x0, [...t[26] ||= [K("span", { class: "wf-player-note" }, "回放按轮进行:在上方选一轮即可回放", -1)]])) : (U(), W("div", S0, [ve.value ? (U(), W(H, { key: 0 }, [t[27] ||= K("span", { class: "wf-state is-live" }, "实时", -1), t[28] ||= K("span", { class: "wf-player-note" }, "这一轮结束后可以回放", -1)], 64)) : (U(), W(H, { key: 1 }, [
|
|
54478
54514
|
K("button", {
|
|
54479
54515
|
type: "button",
|
|
54480
54516
|
class: "wf-player-button",
|
|
54481
54517
|
"aria-label": O.playing ? "暂停回放" : "回放这一轮",
|
|
54482
54518
|
onClick: t[8] ||= (e) => O.playing ? Le() : Fe()
|
|
54483
|
-
}, [q(o, { name: O.playing ? "i-lucide-pause" : "i-lucide-play" }, null, 8, ["name"])], 8,
|
|
54519
|
+
}, [q(o, { name: O.playing ? "i-lucide-pause" : "i-lucide-play" }, null, 8, ["name"])], 8, C0),
|
|
54484
54520
|
K("button", {
|
|
54485
54521
|
type: "button",
|
|
54486
54522
|
class: "wf-player-button",
|
|
54487
54523
|
"aria-label": "从头回放",
|
|
54488
54524
|
disabled: !be.value,
|
|
54489
54525
|
onClick: Re
|
|
54490
|
-
}, [q(o, { name: "i-lucide-rotate-ccw" })], 8,
|
|
54526
|
+
}, [q(o, { name: "i-lucide-rotate-ccw" })], 8, w0),
|
|
54491
54527
|
q(r, {
|
|
54492
54528
|
modelValue: O.speed,
|
|
54493
54529
|
"onUpdate:modelValue": t[9] ||= (e) => O.speed = e,
|
|
@@ -54514,13 +54550,13 @@ var T1 = {
|
|
|
54514
54550
|
value: be.value ? O.position : ye.value.duration,
|
|
54515
54551
|
"aria-label": "回放位置",
|
|
54516
54552
|
onInput: ze
|
|
54517
|
-
}, null, 40,
|
|
54518
|
-
K("span",
|
|
54553
|
+
}, null, 40, T0),
|
|
54554
|
+
K("span", E0, P(I(i1)(be.value ? O.position : ye.value.duration)) + " / " + P(I(i1)(ye.value.duration)), 1)
|
|
54519
54555
|
], 64))])),
|
|
54520
|
-
Te.value.folds.length || re.value.executions.length >= re.value.execution_limit ? (U(), W("footer",
|
|
54556
|
+
Te.value.folds.length || re.value.executions.length >= re.value.execution_limit ? (U(), W("footer", D0, [Te.value.folds.length ? (U(), W("span", O0, [t[29] ||= K("i", {
|
|
54521
54557
|
class: "wf-swatch is-fold",
|
|
54522
54558
|
"aria-hidden": "true"
|
|
54523
|
-
}, null, -1), J("已折叠 " + P(Te.value.folds.length) + " 段超过 " + P(I(
|
|
54559
|
+
}, null, -1), J("已折叠 " + P(Te.value.folds.length) + " 段超过 " + P(I(n1) / 6e4) + " 分钟的空闲", 1)])) : Y("", !0), re.value.executions.length >= re.value.execution_limit ? (U(), W("span", k0, "只列出最近 " + P(re.value.execution_limit) + " 次讨论执行与 " + P(re.value.execution_limit) + " 次协作执行", 1)) : Y("", !0)])) : Y("", !0)
|
|
54524
54560
|
], 512)) : Y("", !0),
|
|
54525
54561
|
v.value ? (U(), W("div", {
|
|
54526
54562
|
key: 3,
|
|
@@ -54540,79 +54576,79 @@ var T1 = {
|
|
|
54540
54576
|
onClick: t[10] ||= (e) => v.value = null
|
|
54541
54577
|
}, [q(o, { name: "i-lucide-x" })])) : Y("", !0),
|
|
54542
54578
|
K("small", null, [J(P(ct(v.value.piece.start)), 1), v.value.piece.end > v.value.piece.start ? (U(), W(H, { key: 0 }, [J(" – " + P(v.value.piece.live ? "现在" : ct(v.value.piece.end)), 1)], 64)) : Y("", !0)]),
|
|
54543
|
-
v.value.piece.text ? (U(), W("p",
|
|
54544
|
-
gt.value.length ? (U(), W(H, { key: 3 }, [K("small",
|
|
54545
|
-
], 14,
|
|
54579
|
+
v.value.piece.text ? (U(), W("p", j0, P(v.value.piece.text), 1)) : v.value.row.item.reason ? (U(), W("p", M0, P(v.value.row.item.reason), 1)) : Y("", !0),
|
|
54580
|
+
gt.value.length ? (U(), W(H, { key: 3 }, [K("small", N0, P(v.value.related.earlier ? "此前的过程说明" : "过程说明"), 1), K("ol", null, [(U(!0), W(H, null, B(gt.value, (e) => (U(), W("li", { key: e.at + e.text }, [K("time", null, P(ct(e.at)), 1), J(P(e.text), 1)]))), 128))])], 64)) : Y("", !0)
|
|
54581
|
+
], 14, A0)) : Y("", !0)
|
|
54546
54582
|
]);
|
|
54547
54583
|
};
|
|
54548
54584
|
}
|
|
54549
|
-
}, [["__scopeId", "data-v-ae571187"]]),
|
|
54585
|
+
}, [["__scopeId", "data-v-ae571187"]]), $0 = {
|
|
54550
54586
|
id: "channel-sidebar",
|
|
54551
54587
|
class: "channel-sidebar",
|
|
54552
54588
|
"aria-label": "房间导航"
|
|
54553
|
-
},
|
|
54589
|
+
}, e2 = { class: "channel-sidebar-content" }, t2 = { class: "channel-directory-heading channel-tools-heading" }, n2 = ["aria-expanded"], r2 = { class: "channel-sidebar-footer" }, i2 = ["aria-label"], a2 = { class: "channel-self" }, o2 = ["title"], s2 = [
|
|
54554
54590
|
"aria-valuemax",
|
|
54555
54591
|
"aria-valuenow",
|
|
54556
54592
|
"aria-valuetext"
|
|
54557
|
-
],
|
|
54593
|
+
], c2 = { class: "channel-main" }, l2 = { class: "channel-header" }, u2 = { class: "channel-title-icon" }, d2 = { class: "channel-title" }, f2 = { class: "channel-title-copy" }, p2 = ["title"], m2 = {
|
|
54558
54594
|
key: 2,
|
|
54559
54595
|
class: "channel-header-context"
|
|
54560
|
-
},
|
|
54596
|
+
}, h2 = { class: "channel-header-actions" }, g2 = {
|
|
54561
54597
|
key: 0,
|
|
54562
54598
|
class: "channel-launch-recovery",
|
|
54563
54599
|
"aria-label": "未完成的创建或启动请求"
|
|
54564
|
-
},
|
|
54600
|
+
}, _2 = { role: "status" }, v2 = { class: "button-row" }, y2 = {
|
|
54565
54601
|
key: 1,
|
|
54566
54602
|
class: "channel-tabbar"
|
|
54567
|
-
},
|
|
54603
|
+
}, b2 = { class: "channel-brief-inner" }, x2 = { class: "channel-brief-heading" }, S2 = ["aria-label", "aria-expanded"], C2 = {
|
|
54568
54604
|
key: 0,
|
|
54569
54605
|
class: "channel-brief-preview"
|
|
54570
|
-
},
|
|
54606
|
+
}, w2 = {
|
|
54571
54607
|
id: "channel-brief-content",
|
|
54572
54608
|
class: "channel-brief-content"
|
|
54573
|
-
},
|
|
54609
|
+
}, T2 = ["innerHTML"], E2 = { class: "channel-brief-footer" }, D2 = { class: "channel-brief-status" }, O2 = { class: "channel-content" }, k2 = {
|
|
54574
54610
|
key: 0,
|
|
54575
54611
|
class: "content-page merged-page",
|
|
54576
54612
|
role: "tabpanel",
|
|
54577
54613
|
"aria-label": "讨论"
|
|
54578
|
-
},
|
|
54614
|
+
}, A2 = {
|
|
54579
54615
|
key: 1,
|
|
54580
54616
|
class: "merged-section",
|
|
54581
54617
|
"aria-label": "当前讨论"
|
|
54582
|
-
},
|
|
54618
|
+
}, j2 = { class: "page-heading" }, M2 = {
|
|
54583
54619
|
key: 0,
|
|
54584
54620
|
class: "fine-print"
|
|
54585
|
-
},
|
|
54621
|
+
}, N2 = {
|
|
54586
54622
|
class: "merged-section channel-summary",
|
|
54587
54623
|
"aria-label": "当前共识"
|
|
54588
|
-
},
|
|
54624
|
+
}, P2 = { class: "page-heading" }, F2 = { class: "form-footer" }, I2 = { class: "button-row" }, L2 = { class: "consensus-card is-brief" }, R2 = ["innerHTML"], z2 = {
|
|
54589
54625
|
key: 0,
|
|
54590
54626
|
class: "consensus-card"
|
|
54591
|
-
},
|
|
54627
|
+
}, B2 = ["innerHTML"], V2 = {
|
|
54592
54628
|
key: 2,
|
|
54593
54629
|
class: "fine-print"
|
|
54594
|
-
},
|
|
54630
|
+
}, H2 = {
|
|
54595
54631
|
key: 1,
|
|
54596
54632
|
class: "content-page merged-page",
|
|
54597
54633
|
role: "tabpanel",
|
|
54598
54634
|
"aria-label": "房间"
|
|
54599
|
-
},
|
|
54635
|
+
}, U2 = {
|
|
54600
54636
|
key: 2,
|
|
54601
54637
|
class: "content-page merged-page",
|
|
54602
54638
|
role: "tabpanel",
|
|
54603
54639
|
"aria-label": "执行"
|
|
54604
|
-
},
|
|
54640
|
+
}, W2 = {
|
|
54605
54641
|
key: 1,
|
|
54606
54642
|
class: "channel-empty"
|
|
54607
|
-
},
|
|
54643
|
+
}, G2 = ["aria-valuenow", "aria-valuetext"], K2 = {
|
|
54608
54644
|
key: 2,
|
|
54609
54645
|
id: "channel-member-rail",
|
|
54610
54646
|
class: "channel-member-rail",
|
|
54611
54647
|
"aria-label": "当前焦点与讨论进度"
|
|
54612
|
-
},
|
|
54648
|
+
}, q2 = { class: "channel-rail-board" }, J2 = {
|
|
54613
54649
|
key: 1,
|
|
54614
54650
|
class: "progress-board is-docked"
|
|
54615
|
-
},
|
|
54651
|
+
}, Y2 = { class: "channel-detail-title" }, X2 = { class: "info-section" }, Z2 = "ai-codiscuss-channel-layout", Q2 = 220, $2 = 440, e4 = 280, t4 = 16, n4 = 180, r4 = 400, i4 = 248, a4 = 16, o4 = 480, s4 = 1200, c4 = 0, l4 = {
|
|
54616
54652
|
__name: "ChannelWorkspace",
|
|
54617
54653
|
setup(e) {
|
|
54618
54654
|
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 = [{
|
|
@@ -54634,14 +54670,14 @@ var T1 = {
|
|
|
54634
54670
|
label: "宽",
|
|
54635
54671
|
width: 1240
|
|
54636
54672
|
}
|
|
54637
|
-
}, b = Ne(), 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), ee = /* @__PURE__ */ F(b.collapsed), E = /* @__PURE__ */ F(!0), D = /* @__PURE__ */ F(b.rail_collapsed), O = Z(() => T.value >=
|
|
54673
|
+
}, b = Ne(), 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), ee = /* @__PURE__ */ F(b.collapsed), E = /* @__PURE__ */ F(!0), D = /* @__PURE__ */ F(b.rail_collapsed), O = Z(() => T.value >= s4), te = Z(() => O.value && !ee.value), ne = Z(() => t.value.tab === "discussion" && !D.value), re = Z(() => O.value && t.value.tab === "discussion" ? D.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), ie = Z(() => {
|
|
54638
54674
|
let e = document.createElement("template");
|
|
54639
54675
|
return e.innerHTML = o.value?.rendered_brief || "", e.content.textContent.replace(/\s+/g, " ").trim();
|
|
54640
|
-
}), ae = /* @__PURE__ */ F(null), oe = /* @__PURE__ */ F(0), k = null, se = /* @__PURE__ */ F(null), ce = /* @__PURE__ */ F(null), le = Z(() => Math.min(
|
|
54676
|
+
}), ae = /* @__PURE__ */ F(null), oe = /* @__PURE__ */ F(0), k = null, se = /* @__PURE__ */ F(null), ce = /* @__PURE__ */ F(null), le = Z(() => Math.min(r4, Math.max(n4, T.value - o4 - c4))), ue = Z(() => Math.min(w.value, le.value)), de = Z(() => ({
|
|
54641
54677
|
"--channel-reading-width": `${y[x.value].width}px`,
|
|
54642
54678
|
"--channel-rail-width": `${C.value}px`,
|
|
54643
54679
|
"--channel-topbar-height": `${oe.value}px`,
|
|
54644
|
-
"--channel-main-columns": te.value ? `${ue.value}px ${
|
|
54680
|
+
"--channel-main-columns": te.value ? `${ue.value}px ${c4}px minmax(0, 1fr)` : "minmax(0, 1fr)"
|
|
54645
54681
|
})), fe = Object.entries(y).map(([e, t]) => ({
|
|
54646
54682
|
value: e,
|
|
54647
54683
|
label: t.label
|
|
@@ -54738,12 +54774,12 @@ var T1 = {
|
|
|
54738
54774
|
}
|
|
54739
54775
|
function Ne() {
|
|
54740
54776
|
try {
|
|
54741
|
-
let e = JSON.parse(localStorage.getItem(
|
|
54777
|
+
let e = JSON.parse(localStorage.getItem(Z2)) || {};
|
|
54742
54778
|
return {
|
|
54743
54779
|
reading: Object.hasOwn(y, e.reading) ? e.reading : "default",
|
|
54744
54780
|
effects: e.effects === "reduced" ? "reduced" : "full",
|
|
54745
|
-
rail: Number.isFinite(e.rail) ? Math.min(
|
|
54746
|
-
nav: Number.isFinite(e.nav) ? Math.min(
|
|
54781
|
+
rail: Number.isFinite(e.rail) ? Math.min($2, Math.max(Q2, e.rail)) : e4,
|
|
54782
|
+
nav: Number.isFinite(e.nav) ? Math.min(r4, Math.max(n4, e.nav)) : Pe(),
|
|
54747
54783
|
collapsed: e.collapsed === !0,
|
|
54748
54784
|
brief_collapsed: e.brief_collapsed === !0,
|
|
54749
54785
|
rail_collapsed: e.rail_collapsed === !0
|
|
@@ -54752,7 +54788,7 @@ var T1 = {
|
|
|
54752
54788
|
return {
|
|
54753
54789
|
reading: "default",
|
|
54754
54790
|
effects: "full",
|
|
54755
|
-
rail:
|
|
54791
|
+
rail: e4,
|
|
54756
54792
|
nav: Pe(),
|
|
54757
54793
|
collapsed: !1,
|
|
54758
54794
|
brief_collapsed: !1,
|
|
@@ -54761,11 +54797,11 @@ var T1 = {
|
|
|
54761
54797
|
}
|
|
54762
54798
|
}
|
|
54763
54799
|
function Pe() {
|
|
54764
|
-
return typeof window > "u" ?
|
|
54800
|
+
return typeof window > "u" ? i4 : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : i4;
|
|
54765
54801
|
}
|
|
54766
54802
|
function Fe() {
|
|
54767
54803
|
try {
|
|
54768
|
-
localStorage.setItem(
|
|
54804
|
+
localStorage.setItem(Z2, JSON.stringify({
|
|
54769
54805
|
reading: x.value,
|
|
54770
54806
|
effects: S.value,
|
|
54771
54807
|
rail: C.value,
|
|
@@ -54796,19 +54832,19 @@ var T1 = {
|
|
|
54796
54832
|
}, e.currentTarget.setPointerCapture(e.pointerId));
|
|
54797
54833
|
}
|
|
54798
54834
|
function Ve(e) {
|
|
54799
|
-
se.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(
|
|
54835
|
+
se.value?.pointer === e.pointerId && (C.value = Math.round(Math.min($2, Math.max(Q2, se.value.width + se.value.x - e.clientX))));
|
|
54800
54836
|
}
|
|
54801
54837
|
function He(e) {
|
|
54802
54838
|
se.value?.pointer === e.pointerId && (se.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), Fe());
|
|
54803
54839
|
}
|
|
54804
54840
|
function Ue(e) {
|
|
54805
54841
|
let t = {
|
|
54806
|
-
ArrowLeft: C.value +
|
|
54807
|
-
ArrowRight: C.value -
|
|
54808
|
-
Home:
|
|
54809
|
-
End:
|
|
54842
|
+
ArrowLeft: C.value + t4,
|
|
54843
|
+
ArrowRight: C.value - t4,
|
|
54844
|
+
Home: Q2,
|
|
54845
|
+
End: $2
|
|
54810
54846
|
};
|
|
54811
|
-
Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(
|
|
54847
|
+
Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min($2, Math.max(Q2, t[e.key])), Fe());
|
|
54812
54848
|
}
|
|
54813
54849
|
function We(e) {
|
|
54814
54850
|
e.button === 0 && (e.preventDefault(), e.currentTarget.focus(), ce.value = {
|
|
@@ -54818,19 +54854,19 @@ var T1 = {
|
|
|
54818
54854
|
}, e.currentTarget.setPointerCapture(e.pointerId));
|
|
54819
54855
|
}
|
|
54820
54856
|
function Ge(e) {
|
|
54821
|
-
ce.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(le.value, Math.max(
|
|
54857
|
+
ce.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(le.value, Math.max(n4, ce.value.width + e.clientX - ce.value.x))));
|
|
54822
54858
|
}
|
|
54823
54859
|
function Ke(e) {
|
|
54824
54860
|
ce.value?.pointer === e.pointerId && (ce.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), Fe());
|
|
54825
54861
|
}
|
|
54826
54862
|
function qe(e) {
|
|
54827
54863
|
let t = {
|
|
54828
|
-
ArrowLeft: ue.value -
|
|
54829
|
-
ArrowRight: ue.value +
|
|
54830
|
-
Home:
|
|
54864
|
+
ArrowLeft: ue.value - a4,
|
|
54865
|
+
ArrowRight: ue.value + a4,
|
|
54866
|
+
Home: n4,
|
|
54831
54867
|
End: le.value
|
|
54832
54868
|
};
|
|
54833
|
-
Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(le.value, Math.max(
|
|
54869
|
+
Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(le.value, Math.max(n4, t[e.key])), Fe());
|
|
54834
54870
|
}
|
|
54835
54871
|
return (e, r) => {
|
|
54836
54872
|
let y = sA, b = lH, w = pA, T = MA, D = $V, oe = WV, k = YV, he = KV, N = HV, Ne = zV, Pe = NV, Fe = AV;
|
|
@@ -54842,10 +54878,10 @@ var T1 = {
|
|
|
54842
54878
|
}]),
|
|
54843
54879
|
style: A(de.value)
|
|
54844
54880
|
}, [
|
|
54845
|
-
K("aside",
|
|
54881
|
+
K("aside", $0, [
|
|
54846
54882
|
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),
|
|
54847
|
-
K("div",
|
|
54848
|
-
q(
|
|
54883
|
+
K("div", e2, [
|
|
54884
|
+
q(kZ, {
|
|
54849
54885
|
onSelect: Ee,
|
|
54850
54886
|
onManage: we,
|
|
54851
54887
|
onCreate: Oe,
|
|
@@ -54855,12 +54891,12 @@ var T1 = {
|
|
|
54855
54891
|
onArchiveFolder: Me,
|
|
54856
54892
|
onArchives: Te
|
|
54857
54893
|
}),
|
|
54858
|
-
K("div",
|
|
54894
|
+
K("div", t2, [K("button", {
|
|
54859
54895
|
type: "button",
|
|
54860
54896
|
class: "channel-section-toggle",
|
|
54861
54897
|
"aria-expanded": f.value,
|
|
54862
54898
|
onClick: r[0] ||= (e) => f.value = !f.value
|
|
54863
|
-
}, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[29] ||= J("频道工具", -1)], 8,
|
|
54899
|
+
}, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[29] ||= J("频道工具", -1)], 8, n2)]),
|
|
54864
54900
|
f.value ? (U(), G(b, {
|
|
54865
54901
|
key: 0,
|
|
54866
54902
|
items: xe.value,
|
|
@@ -54876,7 +54912,7 @@ var T1 = {
|
|
|
54876
54912
|
}
|
|
54877
54913
|
}, null, 8, ["items"])) : Y("", !0)
|
|
54878
54914
|
]),
|
|
54879
|
-
K("footer",
|
|
54915
|
+
K("footer", r2, [K("button", {
|
|
54880
54916
|
type: "button",
|
|
54881
54917
|
class: "channel-self-button",
|
|
54882
54918
|
"aria-label": `账号与设置:${I(n).display_name(I(_))}${Se.value ? "," + Se.value : ""}`,
|
|
@@ -54892,10 +54928,10 @@ var T1 = {
|
|
|
54892
54928
|
"text",
|
|
54893
54929
|
"alt",
|
|
54894
54930
|
"class"
|
|
54895
|
-
]), K("span",
|
|
54931
|
+
]), K("span", a2, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: j(["channel-connection", { "is-action": Se.value }]) }, [K("span", {
|
|
54896
54932
|
class: j({ connected: I(t).connected }),
|
|
54897
54933
|
title: I(t).connected ? "网站已连接" : "网站未连接"
|
|
54898
|
-
}, null, 10,
|
|
54934
|
+
}, null, 10, o2), J(P(Se.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, i2), q(D, { text: "设置" }, {
|
|
54899
54935
|
default: L(() => [q(T, {
|
|
54900
54936
|
icon: "i-lucide-settings-2",
|
|
54901
54937
|
color: "neutral",
|
|
@@ -54916,7 +54952,7 @@ var T1 = {
|
|
|
54916
54952
|
"aria-label": "调整房间栏宽度",
|
|
54917
54953
|
"aria-orientation": "vertical",
|
|
54918
54954
|
"aria-controls": "channel-sidebar",
|
|
54919
|
-
"aria-valuemin":
|
|
54955
|
+
"aria-valuemin": n4,
|
|
54920
54956
|
"aria-valuemax": le.value,
|
|
54921
54957
|
"aria-valuenow": ue.value,
|
|
54922
54958
|
"aria-valuetext": `${ue.value} 像素`,
|
|
@@ -54927,13 +54963,13 @@ var T1 = {
|
|
|
54927
54963
|
onPointercancel: Ke,
|
|
54928
54964
|
onLostpointercapture: Ke,
|
|
54929
54965
|
onKeydown: qe
|
|
54930
|
-
}, null, 40,
|
|
54931
|
-
K("main",
|
|
54966
|
+
}, null, 40, s2)) : Y("", !0),
|
|
54967
|
+
K("main", c2, [K("div", {
|
|
54932
54968
|
ref_key: "topbar",
|
|
54933
54969
|
ref: ae,
|
|
54934
54970
|
class: j(["channel-topbar", { "is-overlay": o.value && I(t).tab === "discussion" }])
|
|
54935
54971
|
}, [
|
|
54936
|
-
K("header",
|
|
54972
|
+
K("header", l2, [
|
|
54937
54973
|
O.value ? (U(), G(D, {
|
|
54938
54974
|
key: 0,
|
|
54939
54975
|
text: ee.value ? "展开房间栏" : "收起房间栏"
|
|
@@ -54961,8 +54997,8 @@ var T1 = {
|
|
|
54961
54997
|
"aria-expanded": d.value,
|
|
54962
54998
|
onClick: r[4] ||= (e) => d.value = !0
|
|
54963
54999
|
}, null, 8, ["aria-expanded"])),
|
|
54964
|
-
K("span",
|
|
54965
|
-
K("div",
|
|
55000
|
+
K("span", u2, [q(y, { name: "i-lucide-hash" })]),
|
|
55001
|
+
K("div", d2, [K("div", f2, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, p2)]), o.value?.archived ? (U(), G(oe, {
|
|
54966
55002
|
key: 0,
|
|
54967
55003
|
color: "neutral",
|
|
54968
55004
|
variant: "subtle",
|
|
@@ -54971,12 +55007,12 @@ var T1 = {
|
|
|
54971
55007
|
default: L(() => [...r[31] ||= [J("已存档", -1)]]),
|
|
54972
55008
|
_: 1
|
|
54973
55009
|
})) : Y("", !0)]),
|
|
54974
|
-
o.value ? (U(), W("span",
|
|
55010
|
+
o.value ? (U(), W("span", m2, [
|
|
54975
55011
|
J(P(me.find((e) => e.value === I(t).tab)?.label), 1),
|
|
54976
55012
|
r[32] ||= K("span", null, "·", -1),
|
|
54977
55013
|
J(P(o.value.message_count) + " 条记录", 1)
|
|
54978
55014
|
])) : Y("", !0),
|
|
54979
|
-
K("div",
|
|
55015
|
+
K("div", h2, [
|
|
54980
55016
|
I(t).tab === "discussion" ? (U(), W("form", {
|
|
54981
55017
|
key: 0,
|
|
54982
55018
|
class: "channel-search",
|
|
@@ -55034,7 +55070,7 @@ var T1 = {
|
|
|
55034
55070
|
])]),
|
|
55035
55071
|
_: 1
|
|
55036
55072
|
})) : Y("", !0),
|
|
55037
|
-
o.value && !(ne.value && O.value) ? (U(), G(
|
|
55073
|
+
o.value && !(ne.value && O.value) ? (U(), G(a$, { key: 2 })) : Y("", !0)
|
|
55038
55074
|
]),
|
|
55039
55075
|
q(D, { text: re.value }, {
|
|
55040
55076
|
default: L(() => [q(T, {
|
|
@@ -55055,12 +55091,12 @@ var T1 = {
|
|
|
55055
55091
|
_: 1
|
|
55056
55092
|
}, 8, ["text"])
|
|
55057
55093
|
]),
|
|
55058
|
-
I(t).launch.recoveries.length ? (U(), W("section",
|
|
55094
|
+
I(t).launch.recoveries.length ? (U(), W("section", g2, [
|
|
55059
55095
|
r[33] ||= K("h2", null, "继续未完成的请求", -1),
|
|
55060
55096
|
(U(!0), W(H, null, B(I(t).launch.recoveries, (e) => (U(), W("article", { key: e.id }, [
|
|
55061
55097
|
K("strong", null, P(e.title), 1),
|
|
55062
|
-
K("p",
|
|
55063
|
-
K("div",
|
|
55098
|
+
K("p", _2, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
|
|
55099
|
+
K("div", v2, [
|
|
55064
55100
|
q(T, {
|
|
55065
55101
|
label: e.direct ? "继续创建房间" : "继续本次启动",
|
|
55066
55102
|
size: "sm",
|
|
@@ -55093,7 +55129,7 @@ var T1 = {
|
|
|
55093
55129
|
]))), 128)),
|
|
55094
55130
|
r[34] ||= K("small", null, "移除待办不会删除房间或停止讨论。", -1)
|
|
55095
55131
|
])) : Y("", !0),
|
|
55096
|
-
o.value ? (U(), W("div",
|
|
55132
|
+
o.value ? (U(), W("div", y2, [q(he, {
|
|
55097
55133
|
modelValue: pe.value,
|
|
55098
55134
|
"onUpdate:modelValue": r[9] ||= (e) => pe.value = e,
|
|
55099
55135
|
items: me,
|
|
@@ -55108,7 +55144,7 @@ var T1 = {
|
|
|
55108
55144
|
key: 2,
|
|
55109
55145
|
class: j(["channel-host-brief", { "is-collapsed": E.value }]),
|
|
55110
55146
|
"aria-label": "主持简报"
|
|
55111
|
-
}, [K("div",
|
|
55147
|
+
}, [K("div", b2, [K("div", x2, [K("button", {
|
|
55112
55148
|
type: "button",
|
|
55113
55149
|
class: "channel-brief-toggle",
|
|
55114
55150
|
"aria-label": E.value ? "展开主持简报" : "收起主持简报",
|
|
@@ -55118,8 +55154,8 @@ var T1 = {
|
|
|
55118
55154
|
}, [
|
|
55119
55155
|
q(y, { name: E.value ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
|
|
55120
55156
|
K("strong", null, "主持简报" + P(E.value ? ":" : ""), 1),
|
|
55121
|
-
E.value ? (U(), W("span",
|
|
55122
|
-
], 8,
|
|
55157
|
+
E.value ? (U(), W("span", C2, P(ie.value), 1)) : Y("", !0)
|
|
55158
|
+
], 8, S2), E.value ? Y("", !0) : (U(), G(T, {
|
|
55123
55159
|
key: 0,
|
|
55124
55160
|
label: "更新简报",
|
|
55125
55161
|
color: "neutral",
|
|
@@ -55127,20 +55163,20 @@ var T1 = {
|
|
|
55127
55163
|
size: "xs",
|
|
55128
55164
|
class: "channel-brief-update",
|
|
55129
55165
|
onClick: r[10] ||= (e) => I(i)("tab", "context")
|
|
55130
|
-
}))]), vr(K("div",
|
|
55166
|
+
}))]), vr(K("div", w2, [K("div", {
|
|
55131
55167
|
class: "channel-brief-text markdown-body",
|
|
55132
55168
|
innerHTML: o.value.rendered_brief
|
|
55133
|
-
}, null, 8,
|
|
55169
|
+
}, null, 8, T2), K("div", E2, [K("span", D2, P(I(n).progress_speaker(o.value)), 1), K("small", null, P(I(n).brief_meta(o.value)), 1)])], 512), [[Vc, !E.value]])])], 2)) : Y("", !0)
|
|
55134
55170
|
], 2), o.value ? (U(), W("div", {
|
|
55135
55171
|
key: 0,
|
|
55136
55172
|
class: j(["channel-body", { "channel-body-discussion": I(t).tab === "discussion" }])
|
|
55137
|
-
}, [K("div",
|
|
55173
|
+
}, [K("div", O2, [
|
|
55138
55174
|
vr(q(uK, {
|
|
55139
55175
|
onDetail: De,
|
|
55140
55176
|
onEdit: r[11] ||= (e) => s.value = "edit"
|
|
55141
55177
|
}, null, 512), [[Vc, I(t).tab === "discussion"]]),
|
|
55142
|
-
I(t).tab === "history" ? (U(), W("div",
|
|
55143
|
-
ge.value ? (U(), W("section",
|
|
55178
|
+
I(t).tab === "history" ? (U(), W("div", k2, [
|
|
55179
|
+
ge.value ? (U(), W("section", A2, [K("div", j2, [r[35] ||= K("div", null, [K("h2", null, "当前讨论"), K("p", null, "没有进行中的讨论。开启后由主持人推进成员轮流发言,到上限或结束后房间回到自由协作,记录与结论保留。")], -1), q(T, {
|
|
55144
55180
|
icon: "i-lucide-messages-square",
|
|
55145
55181
|
label: "开启讨论",
|
|
55146
55182
|
variant: "outline",
|
|
@@ -55148,13 +55184,13 @@ var T1 = {
|
|
|
55148
55184
|
class: "channel-surface-button",
|
|
55149
55185
|
disabled: !ve.value,
|
|
55150
55186
|
onClick: r[13] ||= (e) => _e.value = !0
|
|
55151
|
-
}, null, 8, ["disabled"])]), !ve.value && !o.value.archived ? (U(), W("p",
|
|
55187
|
+
}, null, 8, ["disabled"])]), !ve.value && !o.value.archived ? (U(), W("p", M2, "开启讨论需要一位由本机唤醒的 AI 主持人,且本机服务在线。")) : Y("", !0)])) : (U(), G(jK, {
|
|
55152
55188
|
key: 0,
|
|
55153
55189
|
section: "host",
|
|
55154
55190
|
onOpen: r[12] ||= (e) => s.value = e,
|
|
55155
55191
|
onDetail: De
|
|
55156
55192
|
})),
|
|
55157
|
-
K("section",
|
|
55193
|
+
K("section", N2, [K("div", P2, [r[36] ||= K("div", null, [K("h2", null, "当前共识"), K("p", null, "主持人整理的结论、共识与分歧,用 #消息编号 保留依据;讨论结束时保存进下方记录。")], -1), M.value ? Y("", !0) : (U(), G(T, {
|
|
55158
55194
|
key: 0,
|
|
55159
55195
|
icon: "i-lucide-pencil",
|
|
55160
55196
|
label: "编辑",
|
|
@@ -55198,7 +55234,7 @@ var T1 = {
|
|
|
55198
55234
|
}, null, 8, ["modelValue"])]),
|
|
55199
55235
|
_: 1
|
|
55200
55236
|
}),
|
|
55201
|
-
K("div",
|
|
55237
|
+
K("div", F2, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), K("div", I2, [q(T, {
|
|
55202
55238
|
label: "取消",
|
|
55203
55239
|
color: "neutral",
|
|
55204
55240
|
variant: "ghost",
|
|
@@ -55211,7 +55247,7 @@ var T1 = {
|
|
|
55211
55247
|
class: "channel-primary-button",
|
|
55212
55248
|
loading: I(a) === "save_context"
|
|
55213
55249
|
}, null, 8, ["loading"])])])
|
|
55214
|
-
], 32)) : o.value.host_brief?.text || o.value.state_text ? (U(), W(H, { key: 1 }, [K("div",
|
|
55250
|
+
], 32)) : o.value.host_brief?.text || o.value.state_text ? (U(), W(H, { key: 1 }, [K("div", L2, [K("h3", null, [r[37] ||= J("主持简报", -1), o.value.state_until ? (U(), W("button", {
|
|
55215
55251
|
key: 0,
|
|
55216
55252
|
type: "button",
|
|
55217
55253
|
class: "subtle-link",
|
|
@@ -55219,7 +55255,7 @@ var T1 = {
|
|
|
55219
55255
|
}, "整理至 #" + P(o.value.state_until), 1)) : Y("", !0)]), K("div", {
|
|
55220
55256
|
class: "markdown-body",
|
|
55221
55257
|
innerHTML: o.value.rendered_brief
|
|
55222
|
-
}, null, 8,
|
|
55258
|
+
}, null, 8, R2)]), ye.value ? (U(), W("details", z2, [K("summary", null, [
|
|
55223
55259
|
r[38] ||= K("h3", null, "详细共识与进度", -1),
|
|
55224
55260
|
r[39] ||= K("span", null, "依据、已处理内容、未决问题与下一步", -1),
|
|
55225
55261
|
q(y, {
|
|
@@ -55229,21 +55265,21 @@ var T1 = {
|
|
|
55229
55265
|
]), K("div", {
|
|
55230
55266
|
class: "markdown-body consensus-state",
|
|
55231
55267
|
innerHTML: ye.value
|
|
55232
|
-
}, null, 8,
|
|
55233
|
-
q(
|
|
55234
|
-
q(
|
|
55268
|
+
}, null, 8, B2)])) : Y("", !0)], 64)) : (U(), W("p", V2, "还没有共识。主持人会在讨论中整理,也可以点“编辑”自己写。"))]),
|
|
55269
|
+
q(b$, { onDetail: De }),
|
|
55270
|
+
q(qZ, {
|
|
55235
55271
|
open: _e.value,
|
|
55236
55272
|
"onUpdate:open": r[19] ||= (e) => _e.value = e
|
|
55237
55273
|
}, null, 8, ["open"])
|
|
55238
55274
|
])) : Y("", !0),
|
|
55239
|
-
I(t).tab === "overview" ? (U(), W("div",
|
|
55275
|
+
I(t).tab === "overview" ? (U(), W("div", H2, [q(Q$), ge.value ? Y("", !0) : (U(), G(jK, {
|
|
55240
55276
|
key: 0,
|
|
55241
55277
|
section: "access",
|
|
55242
55278
|
onOpen: r[20] ||= (e) => s.value = e,
|
|
55243
55279
|
onDetail: De
|
|
55244
55280
|
}))])) : Y("", !0),
|
|
55245
|
-
I(t).tab === "timeline" ? (U(), W("div",
|
|
55246
|
-
])], 2)) : (U(), W("div",
|
|
55281
|
+
I(t).tab === "timeline" ? (U(), W("div", U2, [q(Q0, { onDetail: De })])) : Y("", !0)
|
|
55282
|
+
])], 2)) : (U(), W("div", W2, [
|
|
55247
55283
|
q(y, { name: "i-lucide-hash" }),
|
|
55248
55284
|
r[40] ||= K("h2", null, "新建一个协作房间", -1),
|
|
55249
55285
|
r[41] ||= K("p", null, "邀请 AI 一起协作,随时 @ 提问;需要时开启讨论,保留所有人的观点。", -1),
|
|
@@ -55262,8 +55298,8 @@ var T1 = {
|
|
|
55262
55298
|
"aria-label": "调整右侧栏宽度",
|
|
55263
55299
|
"aria-orientation": "vertical",
|
|
55264
55300
|
"aria-controls": "channel-member-rail",
|
|
55265
|
-
"aria-valuemin":
|
|
55266
|
-
"aria-valuemax":
|
|
55301
|
+
"aria-valuemin": Q2,
|
|
55302
|
+
"aria-valuemax": $2,
|
|
55267
55303
|
"aria-valuenow": C.value,
|
|
55268
55304
|
"aria-valuetext": `${C.value} 像素`,
|
|
55269
55305
|
title: "拖动调整右侧栏宽度,也可使用左右方向键",
|
|
@@ -55273,8 +55309,8 @@ var T1 = {
|
|
|
55273
55309
|
onPointercancel: He,
|
|
55274
55310
|
onLostpointercapture: He,
|
|
55275
55311
|
onKeydown: Ue
|
|
55276
|
-
}, null, 40,
|
|
55277
|
-
ne.value ? (U(), W("aside",
|
|
55312
|
+
}, null, 40, G2)) : Y("", !0),
|
|
55313
|
+
ne.value ? (U(), W("aside", K2, [K("section", q2, [o.value ? (U(), G(e$, { key: 0 })) : (U(), W("div", J2, [...r[42] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
|
|
55278
55314
|
q(Pe, {
|
|
55279
55315
|
open: d.value,
|
|
55280
55316
|
"onUpdate:open": r[23] ||= (e) => d.value = e,
|
|
@@ -55286,7 +55322,7 @@ var T1 = {
|
|
|
55286
55322
|
body: "channel-drawer-body"
|
|
55287
55323
|
}
|
|
55288
55324
|
}, {
|
|
55289
|
-
body: L(() => [q(
|
|
55325
|
+
body: L(() => [q(kZ, {
|
|
55290
55326
|
onSelect: Ee,
|
|
55291
55327
|
onManage: we,
|
|
55292
55328
|
onCreate: Oe,
|
|
@@ -55318,7 +55354,7 @@ var T1 = {
|
|
|
55318
55354
|
}
|
|
55319
55355
|
}, {
|
|
55320
55356
|
body: L(() => [o.value ? (U(), W(H, { key: 0 }, [
|
|
55321
|
-
K("div",
|
|
55357
|
+
K("div", Y2, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
|
|
55322
55358
|
(U(), W(H, null, B([
|
|
55323
55359
|
{
|
|
55324
55360
|
key: "goal",
|
|
@@ -55345,7 +55381,7 @@ var T1 = {
|
|
|
55345
55381
|
class: "info-section"
|
|
55346
55382
|
}, [K("h3", null, P(e.label), 1), K("p", null, P(o.value[e.key] || "尚未填写"), 1)])), 64)),
|
|
55347
55383
|
q(Fe),
|
|
55348
|
-
K("section",
|
|
55384
|
+
K("section", X2, [r[43] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(Ce.value, (e) => (U(), W("div", {
|
|
55349
55385
|
key: e.name,
|
|
55350
55386
|
class: "expert-row"
|
|
55351
55387
|
}, [
|
|
@@ -55378,7 +55414,7 @@ var T1 = {
|
|
|
55378
55414
|
], 64)) : Y("", !0)]),
|
|
55379
55415
|
_: 1
|
|
55380
55416
|
}, 8, ["open"]),
|
|
55381
|
-
q(
|
|
55417
|
+
q(XX, {
|
|
55382
55418
|
modelValue: s.value,
|
|
55383
55419
|
"onUpdate:modelValue": r[26] ||= (e) => s.value = e,
|
|
55384
55420
|
"reading-width": x.value,
|
|
@@ -55402,7 +55438,7 @@ var T1 = {
|
|
|
55402
55438
|
], 6);
|
|
55403
55439
|
};
|
|
55404
55440
|
}
|
|
55405
|
-
},
|
|
55441
|
+
}, u4 = {
|
|
55406
55442
|
__name: "App",
|
|
55407
55443
|
setup(e) {
|
|
55408
55444
|
return br("discussion", OV()), (e, t) => {
|
|
@@ -55413,7 +55449,7 @@ var T1 = {
|
|
|
55413
55449
|
toaster: null
|
|
55414
55450
|
}, {
|
|
55415
55451
|
default: L(() => [q(I(Qz), { "reduced-motion": "user" }, {
|
|
55416
|
-
default: L(() => [q(
|
|
55452
|
+
default: L(() => [q(l4)]),
|
|
55417
55453
|
_: 1
|
|
55418
55454
|
})]),
|
|
55419
55455
|
_: 1
|
|
@@ -55423,8 +55459,8 @@ var T1 = {
|
|
|
55423
55459
|
};
|
|
55424
55460
|
//#endregion
|
|
55425
55461
|
//#region frontend/main.js
|
|
55426
|
-
function
|
|
55427
|
-
bu(
|
|
55462
|
+
function d4() {
|
|
55463
|
+
bu(u4).use(ph).mount("#modern-root");
|
|
55428
55464
|
}
|
|
55429
|
-
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded",
|
|
55465
|
+
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", d4) : d4();
|
|
55430
55466
|
//#endregion
|