ai_co_discuss 0.2.64 → 0.2.65
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/free_room.py +1042 -1042
- package/backend/server.py +1 -1
- package/docs/workflow.md +2 -0
- package/package.json +1 -1
- package/web/app.js +17 -11
- package/web/modern.css +1 -1
- package/web/modern.js +807 -791
package/web/modern.js
CHANGED
|
@@ -41793,7 +41793,7 @@ var _H = {
|
|
|
41793
41793
|
}, BW = ["aria-pressed", "onClick"], VW = {
|
|
41794
41794
|
key: 1,
|
|
41795
41795
|
class: "channel-composer-identity"
|
|
41796
|
-
}, HW = { class: "channel-composer-note" }, UW = { key: 0 }, WW = { key: 1 }, GW = { class: "channel-draft-length" }, KW = 240, qW = 6, JW = .9, YW = 160, XW = 100, ZW = 4, QW = 3, $W = 320, eG = 34, tG = 12, nG = 16, rG = 14, iG = 8, aG = 28, oG = 18, sG = 1, cG = 1.5, lG = 3, uG = 6, dG = .62, fG = .72, pG = .88, mG = .16, hG = 12, gG = 450, _G = 8, vG = 70, yG = 20, bG = 1, xG = 18.566573373612275, SG = 78.16726685662772 / 8, CG = 1e3, wG =
|
|
41796
|
+
}, HW = { class: "channel-composer-note" }, UW = { key: 0 }, WW = { key: 1 }, GW = { class: "channel-draft-length" }, KW = 240, qW = 6, JW = .9, YW = 160, XW = 100, ZW = 4, QW = 3, $W = 320, eG = 34, tG = 12, nG = 16, rG = 14, iG = 8, aG = 28, oG = 18, sG = 1, cG = 1.5, lG = 3, uG = 6, dG = .62, fG = .72, pG = .88, mG = .16, hG = 12, gG = 450, _G = 8, vG = 70, yG = 20, bG = 1, xG = 18.566573373612275, SG = 78.16726685662772 / 8, CG = 1e3, wG = "全体成员", TG = 2e3, EG = /*#__PURE__*/ MH({
|
|
41797
41797
|
__name: "ChannelDiscussion",
|
|
41798
41798
|
emits: ["detail", "edit"],
|
|
41799
41799
|
setup(e, { emit: t }) {
|
|
@@ -41803,7 +41803,7 @@ var _H = {
|
|
|
41803
41803
|
}, {
|
|
41804
41804
|
value: "submitter",
|
|
41805
41805
|
label: "代发者整理"
|
|
41806
|
-
}], b = c("search-input"), x = /* @__PURE__ */ F(null), S = /* @__PURE__ */ F(/* @__PURE__ */ new Set()), C = /* @__PURE__ */ new WeakMap(), w = Z(() => new Map(o.value.messages.map((e) => (C.has(e) || C.set(e,
|
|
41806
|
+
}], b = c("search-input"), x = /* @__PURE__ */ F(null), S = /* @__PURE__ */ F(/* @__PURE__ */ new Set()), C = /* @__PURE__ */ new WeakMap(), w = Z(() => new Map(o.value.messages.map((e) => (C.has(e) || C.set(e, Wt(e)), [e.id, C.get(e)])))), T = Z(() => {
|
|
41807
41807
|
let e = N.value || {}, t = e.user_request?.trim() ? {
|
|
41808
41808
|
label: "用户原文",
|
|
41809
41809
|
text: e.user_request
|
|
@@ -41831,7 +41831,7 @@ var _H = {
|
|
|
41831
41831
|
mass: 1,
|
|
41832
41832
|
stiffness: 604.0197893466687,
|
|
41833
41833
|
damping: 44.729801589453814
|
|
41834
|
-
}, de = null, fe = !1, A = TV(0, ue), me = TV(0, ue), he = TV(0, ue), ge = CV(he, [0, 1], [.96, 1]), _e = CV(he, [0, 1], [-8, 0]), M = CV(he, [0, 1], [0, 1]), ve = Z(() => o.value.messages.find((e) => e.id === ne.value)), ye = Z(() =>
|
|
41834
|
+
}, de = null, fe = !1, A = TV(0, ue), me = TV(0, ue), he = TV(0, ue), ge = CV(he, [0, 1], [.96, 1]), _e = CV(he, [0, 1], [-8, 0]), M = CV(he, [0, 1], [0, 1]), ve = Z(() => o.value.messages.find((e) => e.id === ne.value)), ye = Z(() => Jt.value.find((e) => e.messages.some((e) => e.id === ne.value))), be = Z(() => ye.value?.label), xe = Z(() => ae.value ? Qt.value.findIndex((e) => e.key === re.value) : -1), Se = /* @__PURE__ */ F(null), Ce = /* @__PURE__ */ F(!0), N = Z(() => o.value.room);
|
|
41835
41835
|
async function we() {
|
|
41836
41836
|
await Qn(), a.value = (i.value?.scrollHeight || 0) > KW;
|
|
41837
41837
|
}
|
|
@@ -41858,21 +41858,27 @@ var _H = {
|
|
|
41858
41858
|
return De(e) ? e.registered_at ? `${t} 是手动启动,轮到它时需到其 AI 会话触发;不接入可在进度看板点「跳过」本次发言` : "" : d.value.trim() ? `新消息会在 ${t} 回复后交给主持人;可在进度看板点「跳过」本次发言` : "";
|
|
41859
41859
|
}), je = Z(() => N.value?.mode === "free"), Me = Z(() => !je.value || N.value.archived ? [] : (N.value.free?.members || []).flatMap((e) => {
|
|
41860
41860
|
let t = e.execution;
|
|
41861
|
-
|
|
41861
|
+
if (t && ["dispatched", "started"].includes(t.status)) return [{
|
|
41862
41862
|
id: `free-${t.id}`,
|
|
41863
41863
|
author: e.name,
|
|
41864
41864
|
member_id: e.id,
|
|
41865
41865
|
text: t.stale ? "执行失联:网站已不再接受本次回答,软件停止未确认" : "正在处理",
|
|
41866
41866
|
working: !t.stale,
|
|
41867
41867
|
created_at: t.created_at
|
|
41868
|
-
}]
|
|
41869
|
-
|
|
41870
|
-
|
|
41871
|
-
|
|
41872
|
-
|
|
41873
|
-
|
|
41874
|
-
|
|
41875
|
-
|
|
41868
|
+
}];
|
|
41869
|
+
if (e.pending > 0 && e.access === "manual") {
|
|
41870
|
+
let t = Math.min(...(N.value.free?.requests || []).filter((t) => t.member_id === e.id && t.status === "pending").map((e) => e.created_at));
|
|
41871
|
+
return [{
|
|
41872
|
+
id: `free-wait-${e.id}`,
|
|
41873
|
+
author: e.name,
|
|
41874
|
+
member_id: e.id,
|
|
41875
|
+
text: `待投递 ${e.pending} 条:需在其 AI 会话中触发`,
|
|
41876
|
+
working: !1,
|
|
41877
|
+
waiting: !0,
|
|
41878
|
+
created_at: Number.isFinite(t) ? t : null
|
|
41879
|
+
}];
|
|
41880
|
+
}
|
|
41881
|
+
return [];
|
|
41876
41882
|
})), Ne = /* @__PURE__ */ F(Math.floor(Date.now() / 1e3));
|
|
41877
41883
|
R(() => Me.value.length > 0, (e, t, n) => {
|
|
41878
41884
|
if (!e) return;
|
|
@@ -41884,9 +41890,9 @@ var _H = {
|
|
|
41884
41890
|
}, { immediate: !0 });
|
|
41885
41891
|
let Pe = Z(() => o.value.query || o.value.mention_only ? [] : Me.value), Fe = Z(() => {
|
|
41886
41892
|
if (o.value.free_proxy) return `本条作为 ${s.display_name(o.value.free_proxy)} 的回答原文保存,并关闭它的待处理请求`;
|
|
41887
|
-
let e = Le.value.filter((e) => We(e.name).test(Ge.value));
|
|
41893
|
+
let e = At.some((e) => We(e).test(Ge.value)) ? Le.value : Le.value.filter((e) => We(e.name).test(Ge.value));
|
|
41888
41894
|
return e.length ? `发给 ${e.map((e) => s.display_name(e.name)).join("、")}` : Le.value.length === 1 ? `发给 ${s.display_name(Le.value[0].name)}` : Re.value ? `发给主持人 ${s.display_name(Re.value.name)};@ 其他成员让它们发言` : "未 @ 任何成员:只作留言,不会唤醒 AI";
|
|
41889
|
-
}), Ie = Z(() => !!(d.value.trim() || o.value.attachment_drafts.length)), Le = Z(() => je.value ? (N.value.free?.members || []).filter((e) => e.status === "active" && (e.access !== "manual" || e.registered_at)) : []), Re = Z(() => Le.value.find((e) => e.role === "host")), ze = Z(() => Le.value.filter((e) => e.access === "online")), Be = Z(() => je.value ? [] : (N.value?.members || []).filter((e) => e.status === "active" && e.name !== "用户")), Ve = Z(() => Be.value.filter((e) => We(e.name).test(Ge.value)).map((e) => s.display_name(e.name))), He = Z(() => je.value ? Le.value : Be.value), Ue = Z(() => {
|
|
41895
|
+
}), Ie = Z(() => !!(d.value.trim() || o.value.attachment_drafts.length)), Le = Z(() => je.value ? (N.value.free?.members || []).filter((e) => e.status === "active" && (e.access !== "manual" || e.registered_at)) : []), Re = Z(() => Le.value.find((e) => e.role === "host")), ze = Z(() => Le.value.filter((e) => e.access === "online")), Be = Z(() => je.value ? [] : (N.value?.members || []).filter((e) => e.status === "active" && e.name !== "用户")), Ve = Z(() => Be.value.filter((e) => We(e.name).test(Ge.value)).map((e) => s.display_name(e.name))), He = Z(() => je.value ? [...jt.value ? At.map((e) => ({ name: e })) : [], ...Le.value] : Be.value), Ue = Z(() => {
|
|
41890
41896
|
if (!je.value) return /* @__PURE__ */ new Map();
|
|
41891
41897
|
let e = new Map((N.value.free?.members || []).map((e) => [e.id, e])), t = new Map((N.value.free?.requests || []).map((e) => [`${e.message_id}:${e.member_id}`, e]));
|
|
41892
41898
|
return new Map(o.value.messages.map((n) => [n.id, (n.suggestions || []).map((r) => {
|
|
@@ -42092,7 +42098,7 @@ var _H = {
|
|
|
42092
42098
|
return Number.isFinite(n) ? Math.max(0, n) : null;
|
|
42093
42099
|
}
|
|
42094
42100
|
function vt(e) {
|
|
42095
|
-
return e.elapsed_seconds == null ?
|
|
42101
|
+
return e.elapsed_seconds == null ? ((je.value ? N.value.free : N.value.asks)?.executions || []).find((t) => t.answer_id === e.id)?.seconds ?? null : e.elapsed_seconds;
|
|
42096
42102
|
}
|
|
42097
42103
|
let yt = Z(() => ["用户", ...Object.keys(N.value?.experts || {}).filter((e) => N.value.experts[e] === "online")].map((e) => {
|
|
42098
42104
|
let t = s.identities[e];
|
|
@@ -42145,14 +42151,14 @@ var _H = {
|
|
|
42145
42151
|
Dt.value && Se.value?.textareaRef && (Dt.value.scrollTop = Se.value.textareaRef.scrollTop);
|
|
42146
42152
|
}
|
|
42147
42153
|
R(Et, () => Qn(Ot), { flush: "post" });
|
|
42148
|
-
let kt = /* @__PURE__ */ F(null), At = /* @__PURE__ */ F(0),
|
|
42149
|
-
let e = je.value ? Le.value.map((e) => e.name) : [.../* @__PURE__ */ new Set([N.value?.host, ...Object.keys(N.value?.experts || {})])].filter((e) => e && e !== "用户"), t = kt.value?.query.toLocaleLowerCase() || "";
|
|
42150
|
-
return e.filter((e) => `${e} ${s.display_name(e)}
|
|
42151
|
-
}),
|
|
42154
|
+
let kt = /* @__PURE__ */ F(null), At = [wG, "all"], jt = Z(() => Le.value.length > 1), Mt = /* @__PURE__ */ F(0), Nt = /* @__PURE__ */ F(null), Pt = !1, Ft = Z(() => {
|
|
42155
|
+
let e = je.value ? [...jt.value ? [wG] : [], ...Le.value.map((e) => e.name)] : [.../* @__PURE__ */ new Set([N.value?.host, ...Object.keys(N.value?.experts || {})])].filter((e) => e && e !== "用户"), t = kt.value?.query.toLocaleLowerCase() || "";
|
|
42156
|
+
return e.filter((e) => (e === wG ? `${e} all` : `${e} ${s.display_name(e)}`).toLocaleLowerCase().includes(t));
|
|
42157
|
+
}), It = Z(() => Ft.value[Math.min(Mt.value, Ft.value.length - 1)]);
|
|
42152
42158
|
R([() => N.value?.id, () => o.value.tab], () => {
|
|
42153
42159
|
kt.value = null;
|
|
42154
42160
|
});
|
|
42155
|
-
function
|
|
42161
|
+
function Lt(e, t, n = t) {
|
|
42156
42162
|
if (t !== n) return null;
|
|
42157
42163
|
let r = e.slice(0, t), i = r.match(/(?:^|[\s((,,。;;::])@([^\s@`,,。;;::()()]*)$/u);
|
|
42158
42164
|
if (!i) return null;
|
|
@@ -42165,42 +42171,42 @@ var _H = {
|
|
|
42165
42171
|
query: i[1]
|
|
42166
42172
|
};
|
|
42167
42173
|
}
|
|
42168
|
-
function
|
|
42174
|
+
function Rt(e) {
|
|
42169
42175
|
let t = Se.value?.textareaRef;
|
|
42170
|
-
if (e.target !== t ||
|
|
42176
|
+
if (e.target !== t || Pt || e.type === "keyup" && ![
|
|
42171
42177
|
"ArrowLeft",
|
|
42172
42178
|
"ArrowRight",
|
|
42173
42179
|
"Home",
|
|
42174
42180
|
"End"
|
|
42175
42181
|
].includes(e.key)) return;
|
|
42176
|
-
let n =
|
|
42177
|
-
(n?.query !== kt.value?.query || n?.start !== kt.value?.start) && (
|
|
42182
|
+
let n = Lt(t.value, t.selectionStart, t.selectionEnd);
|
|
42183
|
+
(n?.query !== kt.value?.query || n?.start !== kt.value?.start) && (Mt.value = 0), kt.value = n;
|
|
42178
42184
|
}
|
|
42179
|
-
async function
|
|
42180
|
-
if (!kt.value || !
|
|
42185
|
+
async function zt(e) {
|
|
42186
|
+
if (!kt.value || !Ft.value.includes(e)) return;
|
|
42181
42187
|
let { start: t, end: n } = kt.value, r = `@${e} `;
|
|
42182
42188
|
d.value = d.value.slice(0, t) + r + d.value.slice(n).replace(/^ /, ""), kt.value = null, await Qn();
|
|
42183
42189
|
let i = Se.value?.textareaRef;
|
|
42184
42190
|
i?.focus(), i?.setSelectionRange(t + r.length, t + r.length);
|
|
42185
42191
|
}
|
|
42186
|
-
function
|
|
42192
|
+
function Bt(e) {
|
|
42187
42193
|
if (e.target === Se.value?.textareaRef && kt.value && !e.isComposing && e.keyCode !== 229 && !(e.ctrlKey || e.metaKey || e.altKey || e.shiftKey)) {
|
|
42188
42194
|
if (e.key === "Escape") kt.value = null;
|
|
42189
|
-
else if (["ArrowDown", "ArrowUp"].includes(e.key) &&
|
|
42195
|
+
else if (["ArrowDown", "ArrowUp"].includes(e.key) && Ft.value.length) {
|
|
42190
42196
|
let t = e.key === "ArrowDown" ? 1 : -1;
|
|
42191
|
-
|
|
42192
|
-
} else if (["Enter", "Tab"].includes(e.key) &&
|
|
42197
|
+
Mt.value = (Ft.value.indexOf(It.value) + t + Ft.value.length) % Ft.value.length, Qn(() => Nt.value?.querySelector("[aria-selected=\"true\"]")?.scrollIntoView({ block: "nearest" }));
|
|
42198
|
+
} else if (["Enter", "Tab"].includes(e.key) && It.value) zt(It.value);
|
|
42193
42199
|
else return;
|
|
42194
42200
|
e.preventDefault(), e.stopPropagation();
|
|
42195
42201
|
}
|
|
42196
42202
|
}
|
|
42197
|
-
function
|
|
42198
|
-
|
|
42203
|
+
function Vt(e) {
|
|
42204
|
+
Pt = e.type === "compositionstart", kt.value = null, Pt || Rt(e);
|
|
42199
42205
|
}
|
|
42200
|
-
function
|
|
42206
|
+
function Ht(e) {
|
|
42201
42207
|
e.preventDefault();
|
|
42202
42208
|
}
|
|
42203
|
-
function
|
|
42209
|
+
function Ut(e) {
|
|
42204
42210
|
for (let t of e.querySelectorAll("pre code, tbody")) {
|
|
42205
42211
|
let n = e.ownerDocument.createRange();
|
|
42206
42212
|
if (t.tagName === "TBODY") {
|
|
@@ -42215,7 +42221,7 @@ var _H = {
|
|
|
42215
42221
|
}
|
|
42216
42222
|
return !1;
|
|
42217
42223
|
}
|
|
42218
|
-
function
|
|
42224
|
+
function Wt(e) {
|
|
42219
42225
|
let t = {
|
|
42220
42226
|
truncated: !1,
|
|
42221
42227
|
html: e.rendered_text
|
|
@@ -42223,7 +42229,7 @@ var _H = {
|
|
|
42223
42229
|
if (e.kind === "receipt") return t;
|
|
42224
42230
|
let n = document.createElement("template");
|
|
42225
42231
|
n.innerHTML = e.rendered_text;
|
|
42226
|
-
let r =
|
|
42232
|
+
let r = Ut(n.content), i = document.createTreeWalker(n.content, NodeFilter.SHOW_TEXT, { acceptNode: (e) => e.parentElement?.closest(".katex-mathml") ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT }), a = [];
|
|
42227
42233
|
for (; i.nextNode();) a.push(i.currentNode);
|
|
42228
42234
|
let o = [...a.map((e) => e.textContent).join("").trimEnd()];
|
|
42229
42235
|
if (o.length <= YW) return {
|
|
@@ -42245,22 +42251,22 @@ var _H = {
|
|
|
42245
42251
|
html: n.innerHTML
|
|
42246
42252
|
};
|
|
42247
42253
|
}
|
|
42248
|
-
let
|
|
42254
|
+
let Gt = Z(() => je.value || o.value.query || o.value.mention_only ? [] : (N.value.runtime?.failures || []).map((e) => ({
|
|
42249
42255
|
id: `execution-${e.id}`,
|
|
42250
42256
|
author: e.participant,
|
|
42251
42257
|
created_at: e.created_at,
|
|
42252
42258
|
failure: e,
|
|
42253
42259
|
can_retry: !!(o.value.access?.can_manage && s.can_retry_execution(e, N.value))
|
|
42254
|
-
}))),
|
|
42260
|
+
}))), Kt = Z(() => {
|
|
42255
42261
|
let e = [...o.value.messages];
|
|
42256
|
-
for (let t of
|
|
42262
|
+
for (let t of Gt.value) {
|
|
42257
42263
|
let n = e.findIndex((e) => new Date(e.created_at) > new Date(t.created_at) || !e.failure && t.failure.turn_id && e.turn_id === t.failure.turn_id);
|
|
42258
42264
|
e.splice(n < 0 ? e.length : n, 0, t);
|
|
42259
42265
|
}
|
|
42260
42266
|
return e;
|
|
42261
|
-
}),
|
|
42267
|
+
}), qt = Z(() => {
|
|
42262
42268
|
let e = [];
|
|
42263
|
-
for (let t of
|
|
42269
|
+
for (let t of Kt.value) {
|
|
42264
42270
|
let n = new Date(t.created_at), r = n.toLocaleDateString();
|
|
42265
42271
|
e.at(-1)?.key !== r && e.push({
|
|
42266
42272
|
key: r,
|
|
@@ -42269,7 +42275,7 @@ var _H = {
|
|
|
42269
42275
|
}), e.at(-1).messages.push(t);
|
|
42270
42276
|
}
|
|
42271
42277
|
return e;
|
|
42272
|
-
}),
|
|
42278
|
+
}), Jt = Z(() => {
|
|
42273
42279
|
let e = [];
|
|
42274
42280
|
for (let t of o.value.messages) {
|
|
42275
42281
|
let n = s.round_groups(N.value)?.findLast((e) => e.start_id <= t.id), r = n?.number || 0;
|
|
@@ -42285,9 +42291,9 @@ var _H = {
|
|
|
42285
42291
|
e.at(-1).messages.push(t);
|
|
42286
42292
|
}
|
|
42287
42293
|
return e;
|
|
42288
|
-
}),
|
|
42294
|
+
}), Yt = Z(() => Jt.value.find((e) => e.messages.some((e) => e.id === O.value))?.number), Xt = Z(() => new Map(je.value ? [] : Jt.value.flatMap((e) => e.messages.map((t) => [t.id, e.label])))), Zt = Z(() => {
|
|
42289
42295
|
let e = 0;
|
|
42290
|
-
return
|
|
42296
|
+
return Jt.value.map((t) => ({
|
|
42291
42297
|
number: t.number,
|
|
42292
42298
|
count: t.messages.length,
|
|
42293
42299
|
entries: [{
|
|
@@ -42305,15 +42311,15 @@ var _H = {
|
|
|
42305
42311
|
index: e++
|
|
42306
42312
|
}))]
|
|
42307
42313
|
}));
|
|
42308
|
-
}),
|
|
42309
|
-
function
|
|
42314
|
+
}), Qt = Z(() => Zt.value.flatMap((e) => e.entries));
|
|
42315
|
+
function $t(e) {
|
|
42310
42316
|
return e.getBoundingClientRect().top + (parseFloat(getComputedStyle(e).getPropertyValue("--channel-topbar-height")) || 0);
|
|
42311
42317
|
}
|
|
42312
|
-
function
|
|
42318
|
+
function en() {
|
|
42313
42319
|
let e = x.value;
|
|
42314
42320
|
if (!e || !e.clientHeight) return;
|
|
42315
42321
|
Ce.value = e.scrollHeight - e.scrollTop - e.clientHeight < vG;
|
|
42316
|
-
let t = e.getBoundingClientRect(), n =
|
|
42322
|
+
let t = e.getBoundingClientRect(), n = $t(e), r = [...e.querySelectorAll("[data-message-id]")], i = r.find((e) => Number(e.dataset.messageId) === te.value);
|
|
42317
42323
|
if (i && i.getBoundingClientRect().bottom > n && i.getBoundingClientRect().top < t.bottom) {
|
|
42318
42324
|
O.value = te.value;
|
|
42319
42325
|
return;
|
|
@@ -42322,32 +42328,32 @@ var _H = {
|
|
|
42322
42328
|
let a = r.find((e) => e.getBoundingClientRect().bottom > n + yG);
|
|
42323
42329
|
O.value = a ? Number(a.dataset.messageId) : null;
|
|
42324
42330
|
}
|
|
42325
|
-
async function
|
|
42326
|
-
await Qn(), Ce.value && x.value && (x.value.scrollTop = x.value.scrollHeight),
|
|
42331
|
+
async function tn() {
|
|
42332
|
+
await Qn(), Ce.value && x.value && (x.value.scrollTop = x.value.scrollHeight), en();
|
|
42327
42333
|
}
|
|
42328
42334
|
R([
|
|
42329
42335
|
() => o.value.messages,
|
|
42330
42336
|
Xe,
|
|
42331
42337
|
Pe,
|
|
42332
|
-
|
|
42333
|
-
],
|
|
42338
|
+
Gt
|
|
42339
|
+
], tn, { immediate: !0 }), R([
|
|
42334
42340
|
() => o.value.room?.id,
|
|
42335
42341
|
() => o.value.query,
|
|
42336
42342
|
() => o.value.mention_only
|
|
42337
42343
|
], () => {
|
|
42338
|
-
te.value = null, O.value = null,
|
|
42344
|
+
te.value = null, O.value = null, xn(), Ce.value = !0;
|
|
42339
42345
|
}), R(() => o.value.tab, (e) => {
|
|
42340
|
-
|
|
42346
|
+
xn(), e === "discussion" && tn();
|
|
42341
42347
|
}), R(() => o.value.room?.id, () => S.value.clear());
|
|
42342
|
-
async function
|
|
42348
|
+
async function nn(e, t) {
|
|
42343
42349
|
let n = t.currentTarget.closest("[data-message-id]"), r = S.value.has(e.id), i = x.value.scrollTop;
|
|
42344
|
-
Ce.value = !1, r ? S.value.delete(e.id) : S.value.add(e.id),
|
|
42350
|
+
Ce.value = !1, r ? S.value.delete(e.id) : S.value.add(e.id), xn(), await Qn(), r || (x.value.scrollTop = i), r && n.getBoundingClientRect().top < $t(x.value) && (x.value.scrollTop += n.getBoundingClientRect().top - $t(x.value) - yG), en();
|
|
42345
42351
|
}
|
|
42346
|
-
function
|
|
42352
|
+
function rn(e) {
|
|
42347
42353
|
let t = x.value, n = t?.querySelector(`[data-message-id="${e}"]`);
|
|
42348
|
-
n && (
|
|
42354
|
+
n && (bn(), te.value = e, O.value = e, t.scrollTop += n.getBoundingClientRect().top - $t(t) - yG, n.focus({ preventScroll: !0 }), en());
|
|
42349
42355
|
}
|
|
42350
|
-
function
|
|
42356
|
+
function an(e) {
|
|
42351
42357
|
(e.type !== "keydown" || [
|
|
42352
42358
|
"ArrowUp",
|
|
42353
42359
|
"ArrowDown",
|
|
@@ -42358,34 +42364,34 @@ var _H = {
|
|
|
42358
42364
|
" "
|
|
42359
42365
|
].includes(e.key)) && (te.value = null);
|
|
42360
42366
|
}
|
|
42361
|
-
function
|
|
42367
|
+
function on(e, t) {
|
|
42362
42368
|
let n = {
|
|
42363
42369
|
ArrowUp: t - 1,
|
|
42364
42370
|
ArrowDown: t + 1,
|
|
42365
42371
|
Home: 0,
|
|
42366
|
-
End:
|
|
42372
|
+
End: Qt.value.length - 1
|
|
42367
42373
|
};
|
|
42368
42374
|
if (!Object.hasOwn(n, e.key)) return;
|
|
42369
42375
|
e.preventDefault();
|
|
42370
|
-
let r = Math.max(0, Math.min(n[e.key],
|
|
42376
|
+
let r = Math.max(0, Math.min(n[e.key], Qt.value.length - 1));
|
|
42371
42377
|
E.value.querySelectorAll("button")[r].focus({ preventScroll: !0 });
|
|
42372
42378
|
}
|
|
42373
|
-
function
|
|
42379
|
+
function sn(e) {
|
|
42374
42380
|
let t = E.value;
|
|
42375
42381
|
if (!t?.clientHeight || !e) return;
|
|
42376
42382
|
let n = t.getBoundingClientRect(), r = e.getBoundingClientRect();
|
|
42377
42383
|
r.top < n.top + hG ? t.scrollTop += r.top - n.top - hG : r.bottom > n.bottom - hG && (t.scrollTop += r.bottom - n.bottom + hG);
|
|
42378
42384
|
}
|
|
42379
|
-
async function
|
|
42380
|
-
await Qn(),
|
|
42385
|
+
async function cn() {
|
|
42386
|
+
await Qn(), sn(E.value?.querySelector(`[data-jump-id="${O.value}"]`));
|
|
42381
42387
|
}
|
|
42382
|
-
R(O,
|
|
42383
|
-
function
|
|
42384
|
-
!de && t.currentTarget.matches(":focus-visible") && (D.value = !0,
|
|
42388
|
+
R(O, cn);
|
|
42389
|
+
function un(e, t) {
|
|
42390
|
+
!de && t.currentTarget.matches(":focus-visible") && (D.value = !0, sn(e.round ? t.currentTarget.parentElement.querySelector("[data-jump-id]") : t.currentTarget), yn(e, t));
|
|
42385
42391
|
}
|
|
42386
|
-
function
|
|
42392
|
+
function dn(e, t) {
|
|
42387
42393
|
if (fe = !1, !["touch", "pen"].includes(t.pointerType)) return;
|
|
42388
|
-
|
|
42394
|
+
bn(), D.value = !1;
|
|
42389
42395
|
let n = {
|
|
42390
42396
|
pointer: t.pointerId,
|
|
42391
42397
|
x: t.clientX,
|
|
@@ -42393,31 +42399,31 @@ var _H = {
|
|
|
42393
42399
|
target: t.currentTarget
|
|
42394
42400
|
};
|
|
42395
42401
|
de = n, n.timer = setTimeout(() => {
|
|
42396
|
-
de === n && (fe = !0,
|
|
42402
|
+
de === n && (fe = !0, yn(e, { currentTarget: n.target }));
|
|
42397
42403
|
}, gG);
|
|
42398
42404
|
}
|
|
42399
|
-
function
|
|
42405
|
+
function fn() {
|
|
42400
42406
|
de && clearTimeout(de.timer), de = null;
|
|
42401
42407
|
}
|
|
42402
|
-
function
|
|
42403
|
-
de?.pointer === e.pointerId && (e.type === "pointercancel" && (fe = !0),
|
|
42408
|
+
function pn(e) {
|
|
42409
|
+
de?.pointer === e.pointerId && (e.type === "pointercancel" && (fe = !0), bn());
|
|
42404
42410
|
}
|
|
42405
|
-
function
|
|
42406
|
-
["touch", "pen"].includes(t.pointerType) ? de?.pointer === t.pointerId && Math.hypot(t.clientX - de.x, t.clientY - de.y) > _G && (fe = !0,
|
|
42411
|
+
function mn(e, t) {
|
|
42412
|
+
["touch", "pen"].includes(t.pointerType) ? de?.pointer === t.pointerId && Math.hypot(t.clientX - de.x, t.clientY - de.y) > _G && (fe = !0, bn()) : t.type === "pointerenter" && D.value || (D.value = !1, (re.value !== e.key || !ae.value) && yn(e, t));
|
|
42407
42413
|
}
|
|
42408
|
-
function
|
|
42409
|
-
fe && t.detail !== 0 ? (fe = !1, t.preventDefault()) :
|
|
42414
|
+
function hn(e, t) {
|
|
42415
|
+
fe && t.detail !== 0 ? (fe = !1, t.preventDefault()) : rn(e.message.id);
|
|
42410
42416
|
}
|
|
42411
|
-
function
|
|
42417
|
+
function gn(e) {
|
|
42412
42418
|
de && e.preventDefault();
|
|
42413
42419
|
}
|
|
42414
|
-
function
|
|
42415
|
-
(e.deltaX || e.deltaY) && (D.value = !1,
|
|
42420
|
+
function _n(e) {
|
|
42421
|
+
(e.deltaX || e.deltaY) && (D.value = !1, bn());
|
|
42416
42422
|
}
|
|
42417
|
-
function
|
|
42418
|
-
|
|
42423
|
+
function vn() {
|
|
42424
|
+
bn(), te.value = null, Ce.value = !0, tn();
|
|
42419
42425
|
}
|
|
42420
|
-
async function
|
|
42426
|
+
async function yn(e, t) {
|
|
42421
42427
|
let n = e.message, r = t.currentTarget.getBoundingClientRect(), i = E.value.getBoundingClientRect(), a = Math.min($W, innerWidth - 24), o = i.right + nG;
|
|
42422
42428
|
if (k.value = Math.max(tG, Math.min(o, innerWidth - a - tG)), ne.value = n.id, re.value = e.key, ie.value = e.round, ae.value = !0, await Qn(), !ae.value || re.value !== e.key) return;
|
|
42423
42429
|
ce.value = oe.value.scrollHeight + eG;
|
|
@@ -42426,20 +42432,20 @@ var _H = {
|
|
|
42426
42432
|
let c = le.value || he.get() === 0;
|
|
42427
42433
|
A[c ? "jump" : "set"](se.value), me[c ? "jump" : "set"](ce.value);
|
|
42428
42434
|
}
|
|
42429
|
-
function
|
|
42430
|
-
e?.relatedTarget?.closest?.(".channel-message-map, .channel-nav-preview") || (
|
|
42435
|
+
function bn(e) {
|
|
42436
|
+
e?.relatedTarget?.closest?.(".channel-message-map, .channel-nav-preview") || (fn(), ae.value = !1);
|
|
42431
42437
|
}
|
|
42432
|
-
function
|
|
42433
|
-
|
|
42438
|
+
function xn() {
|
|
42439
|
+
fn(), ae.value = !1, he.jump(0), ne.value = null;
|
|
42434
42440
|
}
|
|
42435
|
-
async function
|
|
42436
|
-
|
|
42441
|
+
async function Sn() {
|
|
42442
|
+
xn(), we(), await tn(), await cn();
|
|
42437
42443
|
}
|
|
42438
|
-
function
|
|
42444
|
+
function Cn(e) {
|
|
42439
42445
|
let t = e.entries.length - 1;
|
|
42440
42446
|
return Math.max(-3, Math.min(t + lG, xe.value - e.entries[0].index));
|
|
42441
42447
|
}
|
|
42442
|
-
function
|
|
42448
|
+
function wn(e, t) {
|
|
42443
42449
|
let n = xe.value < 0 ? Infinity : Math.abs(t - xe.value), r = Math.max(0, 1 - n / lG), i = O.value === e.message.id, a = n === 0 || i && xe.value < 0, o = iG;
|
|
42444
42450
|
return {
|
|
42445
42451
|
scaleX: a ? aG / o : i ? oG / o : 1 + r * uG / o,
|
|
@@ -42450,48 +42456,48 @@ var _H = {
|
|
|
42450
42456
|
R([ae, le], () => {
|
|
42451
42457
|
let e = +!!ae.value;
|
|
42452
42458
|
le.value ? (he.jump(e), A.jump(se.value), me.jump(ce.value)) : he.set(e);
|
|
42453
|
-
}), Qi(() => window.addEventListener("resize",
|
|
42454
|
-
function
|
|
42459
|
+
}), Qi(() => window.addEventListener("resize", Sn)), ta(() => window.removeEventListener("resize", Sn));
|
|
42460
|
+
function Tn() {
|
|
42455
42461
|
let e = Se.value?.textareaRef;
|
|
42456
42462
|
if (!e) return;
|
|
42457
42463
|
e.rows = 1;
|
|
42458
42464
|
let t = getComputedStyle(e), n = (e.scrollHeight - parseFloat(t.paddingTop) - parseFloat(t.paddingBottom)) / parseFloat(t.lineHeight);
|
|
42459
42465
|
e.rows = Math.min(Math.max(Math.floor(n), 1), qW);
|
|
42460
42466
|
}
|
|
42461
|
-
let
|
|
42462
|
-
Math.round(e.contentRect.width) !==
|
|
42467
|
+
let En = 0, Dn = new ResizeObserver(([e]) => {
|
|
42468
|
+
Math.round(e.contentRect.width) !== En && (En = Math.round(e.contentRect.width), Tn());
|
|
42463
42469
|
});
|
|
42464
|
-
Qi(() => Se.value?.textareaRef &&
|
|
42465
|
-
let
|
|
42466
|
-
function
|
|
42467
|
-
clearTimeout(
|
|
42470
|
+
Qi(() => Se.value?.textareaRef && Dn.observe(Se.value.textareaRef)), ta(() => Dn.disconnect()), ta(fn);
|
|
42471
|
+
let On = /* @__PURE__ */ F(""), kn;
|
|
42472
|
+
function An() {
|
|
42473
|
+
clearTimeout(kn), On.value = "";
|
|
42468
42474
|
}
|
|
42469
|
-
async function
|
|
42475
|
+
async function jn(e) {
|
|
42470
42476
|
let t = N.value.id;
|
|
42471
|
-
|
|
42477
|
+
An(), await l("copy_member_launch", e) && N.value?.id === t && (On.value = e, kn = setTimeout(An, TG));
|
|
42472
42478
|
}
|
|
42473
|
-
R([() => N.value?.id, () => Ee.value?.id],
|
|
42474
|
-
function
|
|
42479
|
+
R([() => N.value?.id, () => Ee.value?.id], An), ta(An);
|
|
42480
|
+
function Mn(e) {
|
|
42475
42481
|
return [[{
|
|
42476
42482
|
label: "复制原文链接",
|
|
42477
42483
|
icon: "i-lucide-link",
|
|
42478
|
-
onSelect: () =>
|
|
42484
|
+
onSelect: () => In(e)
|
|
42479
42485
|
}, {
|
|
42480
42486
|
label: "查看原文",
|
|
42481
42487
|
icon: "i-lucide-expand",
|
|
42482
42488
|
onSelect: () => n("detail", e.id)
|
|
42483
42489
|
}]];
|
|
42484
42490
|
}
|
|
42485
|
-
async function
|
|
42491
|
+
async function Nn(e) {
|
|
42486
42492
|
await l("reply", e), Se.value?.textareaRef?.focus();
|
|
42487
42493
|
}
|
|
42488
|
-
async function
|
|
42489
|
-
!Ie.value || u.value || o.value.sending_message || (kt.value = null, Ce.value = !0, await l("send"), await
|
|
42494
|
+
async function Pn() {
|
|
42495
|
+
!Ie.value || u.value || o.value.sending_message || (kt.value = null, Ce.value = !0, await l("send"), await tn());
|
|
42490
42496
|
}
|
|
42491
|
-
function
|
|
42492
|
-
e.key !== "Enter" || e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || e.isComposing || d.value.trim() || o.value.attachment_drafts.length && (e.preventDefault(), e.stopPropagation(),
|
|
42497
|
+
function Fn(e) {
|
|
42498
|
+
e.key !== "Enter" || e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || e.isComposing || d.value.trim() || o.value.attachment_drafts.length && (e.preventDefault(), e.stopPropagation(), Pn());
|
|
42493
42499
|
}
|
|
42494
|
-
function
|
|
42500
|
+
function In(e) {
|
|
42495
42501
|
l("copy", `${location.origin}/r/${N.value.id}/messages/${e.id}`);
|
|
42496
42502
|
}
|
|
42497
42503
|
return (e, t) => {
|
|
@@ -42520,18 +42526,18 @@ var _H = {
|
|
|
42520
42526
|
class: "channel-message-map",
|
|
42521
42527
|
style: pe({ "--nav-entry-height": `${rG}px` }),
|
|
42522
42528
|
"aria-label": "发言快速导航",
|
|
42523
|
-
onWheelPassive: uu(
|
|
42524
|
-
onPointerleave:
|
|
42525
|
-
onFocusout:
|
|
42526
|
-
onKeydown: fu(uu(
|
|
42527
|
-
onContextmenu:
|
|
42528
|
-
}, [K("div", FH, [(U(!0), W(H, null, B(
|
|
42529
|
+
onWheelPassive: uu(_n, ["stop"]),
|
|
42530
|
+
onPointerleave: bn,
|
|
42531
|
+
onFocusout: bn,
|
|
42532
|
+
onKeydown: fu(uu(bn, ["stop"]), ["esc"]),
|
|
42533
|
+
onContextmenu: gn
|
|
42534
|
+
}, [K("div", FH, [(U(!0), W(H, null, B(Zt.value, (e, t, n, r) => {
|
|
42529
42535
|
let i = [
|
|
42530
42536
|
e,
|
|
42531
42537
|
I(le),
|
|
42532
42538
|
ae.value,
|
|
42533
|
-
|
|
42534
|
-
|
|
42539
|
+
Yt.value === e.number ? O.value : null,
|
|
42540
|
+
Cn(e)
|
|
42535
42541
|
];
|
|
42536
42542
|
if (r && r.el && r.key === e.number && rc(r, i)) return r;
|
|
42537
42543
|
let a = (U(), W("div", {
|
|
@@ -42549,21 +42555,21 @@ var _H = {
|
|
|
42549
42555
|
tabindex: !e.round && e.message.id === (O.value || I(o).messages[0]?.id) ? 0 : -1,
|
|
42550
42556
|
"aria-current": !e.round && O.value === e.message.id ? "location" : void 0,
|
|
42551
42557
|
"aria-describedby": ae.value && re.value === e.key ? "channel-navigation-preview" : void 0,
|
|
42552
|
-
onPointerenter: (t) =>
|
|
42553
|
-
onPointermove: (t) =>
|
|
42554
|
-
onPointerdown: (t) =>
|
|
42555
|
-
onPointerup:
|
|
42556
|
-
onPointercancel:
|
|
42557
|
-
onFocus: (t) =>
|
|
42558
|
-
onKeydown: (t) =>
|
|
42559
|
-
onClick: (t) =>
|
|
42558
|
+
onPointerenter: (t) => mn(e, t),
|
|
42559
|
+
onPointermove: (t) => mn(e, t),
|
|
42560
|
+
onPointerdown: (t) => dn(e, t),
|
|
42561
|
+
onPointerup: pn,
|
|
42562
|
+
onPointercancel: pn,
|
|
42563
|
+
onFocus: (t) => un(e, t),
|
|
42564
|
+
onKeydown: (t) => on(t, e.index),
|
|
42565
|
+
onClick: (t) => hn(e, t)
|
|
42560
42566
|
}, [e.round ? (U(), W("span", LH, P(e.number || "–"), 1)) : (U(), G(I(bV).span, {
|
|
42561
42567
|
key: 1,
|
|
42562
42568
|
class: "channel-jump-tick",
|
|
42563
42569
|
"aria-hidden": "true",
|
|
42564
42570
|
initial: !1,
|
|
42565
|
-
animate: I(le) ? void 0 :
|
|
42566
|
-
style: pe(I(le) ?
|
|
42571
|
+
animate: I(le) ? void 0 : wn(e, e.index),
|
|
42572
|
+
style: pe(I(le) ? wn(e, e.index) : void 0),
|
|
42567
42573
|
transition: ue
|
|
42568
42574
|
}, null, 8, ["animate", "style"]))], 42, IH))), 128))], 4));
|
|
42569
42575
|
return a.memo = i, a;
|
|
@@ -42585,9 +42591,9 @@ var _H = {
|
|
|
42585
42591
|
height: I(me),
|
|
42586
42592
|
"--preview-gap": `${nG}px`
|
|
42587
42593
|
}),
|
|
42588
|
-
onPointerleave:
|
|
42589
|
-
onFocusout:
|
|
42590
|
-
onKeydown: fu(uu(
|
|
42594
|
+
onPointerleave: bn,
|
|
42595
|
+
onFocusout: bn,
|
|
42596
|
+
onKeydown: fu(uu(bn, ["stop"]), ["esc"])
|
|
42591
42597
|
}, {
|
|
42592
42598
|
default: L(() => [K("div", {
|
|
42593
42599
|
ref_key: "preview_content",
|
|
@@ -42626,8 +42632,8 @@ var _H = {
|
|
|
42626
42632
|
"onKeydown"
|
|
42627
42633
|
])) : Y("", !0)])),
|
|
42628
42634
|
nc([
|
|
42629
|
-
|
|
42630
|
-
|
|
42635
|
+
qt.value,
|
|
42636
|
+
Xt.value,
|
|
42631
42637
|
O.value,
|
|
42632
42638
|
S.value.size,
|
|
42633
42639
|
N.value.title,
|
|
@@ -42652,10 +42658,10 @@ var _H = {
|
|
|
42652
42658
|
ref: x,
|
|
42653
42659
|
class: "channel-transcript",
|
|
42654
42660
|
"aria-label": "聊天记录",
|
|
42655
|
-
onScroll:
|
|
42656
|
-
onWheelPassive:
|
|
42657
|
-
onTouchstartPassive:
|
|
42658
|
-
onKeydown:
|
|
42661
|
+
onScroll: en,
|
|
42662
|
+
onWheelPassive: an,
|
|
42663
|
+
onTouchstartPassive: an,
|
|
42664
|
+
onKeydown: an
|
|
42659
42665
|
}, [
|
|
42660
42666
|
!I(o).query && !I(o).mention_only ? (U(), W("div", WH, [K("section", {
|
|
42661
42667
|
class: j(["channel-message channel-topic-card", { "is-expanded": r.value }]),
|
|
@@ -42742,7 +42748,7 @@ var _H = {
|
|
|
42742
42748
|
default: L(() => [(U(!0), W(H, null, B(e.turns, (t) => (U(), W("p", { key: `${e.id}-${t.expert}-${t.question}` }, [K("span", null, P(I(s).display_name(t.expert)) + ":" + P(t.question), 1)]))), 128))]),
|
|
42743
42749
|
_: 2
|
|
42744
42750
|
}, 1032, ["title"]))), 128))])) : Y("", !0),
|
|
42745
|
-
(U(!0), W(H, null, B(
|
|
42751
|
+
(U(!0), W(H, null, B(qt.value, (e) => (U(), W("div", {
|
|
42746
42752
|
key: e.key,
|
|
42747
42753
|
class: "channel-message-group"
|
|
42748
42754
|
}, [q(te, {
|
|
@@ -42805,7 +42811,7 @@ var _H = {
|
|
|
42805
42811
|
nc([
|
|
42806
42812
|
e,
|
|
42807
42813
|
I(o).admin?.identity_version,
|
|
42808
|
-
|
|
42814
|
+
Xt.value.get(e.id),
|
|
42809
42815
|
S.value.has(e.id),
|
|
42810
42816
|
O.value === e.id,
|
|
42811
42817
|
Qe(e),
|
|
@@ -42847,7 +42853,7 @@ var _H = {
|
|
|
42847
42853
|
]),
|
|
42848
42854
|
K("div", yU, [K("div", bU, [
|
|
42849
42855
|
K("strong", null, P(I(s).display_name(e.author)), 1),
|
|
42850
|
-
K("span", xU, P(
|
|
42856
|
+
K("span", xU, P(Xt.value.get(e.id)), 1),
|
|
42851
42857
|
q(ne, {
|
|
42852
42858
|
size: "xs",
|
|
42853
42859
|
color: "neutral",
|
|
@@ -42952,7 +42958,7 @@ var _H = {
|
|
|
42952
42958
|
"aria-label": `${S.value.has(e.id) ? "收起回答" : "展开完整回答"} #${e.id}`,
|
|
42953
42959
|
"aria-expanded": S.value.has(e.id),
|
|
42954
42960
|
"aria-controls": `channel-answer-${e.id}`,
|
|
42955
|
-
onClick: (t) =>
|
|
42961
|
+
onClick: (t) => nn(e, t)
|
|
42956
42962
|
}, null, 8, [
|
|
42957
42963
|
"label",
|
|
42958
42964
|
"trailing-icon",
|
|
@@ -43054,11 +43060,11 @@ var _H = {
|
|
|
43054
43060
|
color: "neutral",
|
|
43055
43061
|
variant: "ghost",
|
|
43056
43062
|
"aria-label": `回复 #${e.id}`,
|
|
43057
|
-
onClick: (t) =>
|
|
43063
|
+
onClick: (t) => Nn(e)
|
|
43058
43064
|
}, null, 8, ["aria-label", "onClick"])]),
|
|
43059
43065
|
_: 2
|
|
43060
43066
|
}, 1024), q(ce, {
|
|
43061
|
-
items:
|
|
43067
|
+
items: Mn(e),
|
|
43062
43068
|
content: {
|
|
43063
43069
|
align: "end",
|
|
43064
43070
|
sideOffset: 5
|
|
@@ -43295,7 +43301,7 @@ var _H = {
|
|
|
43295
43301
|
"class"
|
|
43296
43302
|
]),
|
|
43297
43303
|
K("div", gW, [K("div", _W, [K("strong", null, P(I(s).display_name(e.author)), 1)])]),
|
|
43298
|
-
K("span", vW, P(e.waiting ? "
|
|
43304
|
+
K("span", vW, P(e.waiting ? `手动启动${e.created_at ? ` · 已等 ${mt(Math.max(0, Ne.value - e.created_at))}` : ""}` : `已用 ${mt(Math.max(0, Ne.value - e.created_at))}`), 1)
|
|
43299
43305
|
]), K("div", {
|
|
43300
43306
|
class: "channel-message-text",
|
|
43301
43307
|
role: "status",
|
|
@@ -43313,19 +43319,19 @@ var _H = {
|
|
|
43313
43319
|
]])) : Y("", !0)], 512))], 8, yW)]),
|
|
43314
43320
|
_: 2
|
|
43315
43321
|
}, 1032, ["id", "data-author"]))), 128))])) : Y("", !0),
|
|
43316
|
-
!
|
|
43322
|
+
!Kt.value.length && !Xe.value && !Pe.value.length ? (U(), W("div", SW, [
|
|
43317
43323
|
q(D, { name: I(o).query || I(o).mention_only ? "i-lucide-search" : "i-lucide-hash" }, null, 8, ["name"]),
|
|
43318
43324
|
K("h2", null, P(I(o).query || I(o).mention_only ? "没有找到消息" : N.value.title), 1),
|
|
43319
43325
|
K("p", null, P(I(o).query || I(o).mention_only ? "试试其他关键词,或清除筛选。" : I(s).empty_discussion_message(N.value)), 1)
|
|
43320
43326
|
])) : Y("", !0)
|
|
43321
43327
|
], 544)), t, 12),
|
|
43322
|
-
(
|
|
43328
|
+
(Kt.value.length || Xe.value) && !Ce.value ? (U(), W("div", CW, [q(c, {
|
|
43323
43329
|
icon: "i-lucide-arrow-down",
|
|
43324
43330
|
color: "neutral",
|
|
43325
43331
|
variant: "outline",
|
|
43326
43332
|
"aria-label": "回到最新消息",
|
|
43327
43333
|
class: "channel-latest-button",
|
|
43328
|
-
onClick:
|
|
43334
|
+
onClick: vn
|
|
43329
43335
|
})])) : Y("", !0),
|
|
43330
43336
|
K("div", wW, [K("div", {
|
|
43331
43337
|
class: "channel-composer-column",
|
|
@@ -43333,14 +43339,14 @@ var _H = {
|
|
|
43333
43339
|
onDrop: t[25] ||= (...e) => I(s).drop_attachments && I(s).drop_attachments(...e),
|
|
43334
43340
|
onPaste: t[26] ||= (...e) => I(s).paste_attachments && I(s).paste_attachments(...e),
|
|
43335
43341
|
onKeydownCapture: t[27] ||= (e) => {
|
|
43336
|
-
|
|
43342
|
+
Bt(e), Fn(e);
|
|
43337
43343
|
},
|
|
43338
|
-
onInput:
|
|
43339
|
-
onClick:
|
|
43340
|
-
onKeyup:
|
|
43341
|
-
onSelect:
|
|
43342
|
-
onCompositionstart:
|
|
43343
|
-
onCompositionend:
|
|
43344
|
+
onInput: Rt,
|
|
43345
|
+
onClick: Rt,
|
|
43346
|
+
onKeyup: Rt,
|
|
43347
|
+
onSelect: Rt,
|
|
43348
|
+
onCompositionstart: Vt,
|
|
43349
|
+
onCompositionend: Vt,
|
|
43344
43350
|
onScrollCapture: Ot
|
|
43345
43351
|
}, [
|
|
43346
43352
|
q(fe, {
|
|
@@ -43350,8 +43356,8 @@ var _H = {
|
|
|
43350
43356
|
side: "top",
|
|
43351
43357
|
align: "start",
|
|
43352
43358
|
sideOffset: 8,
|
|
43353
|
-
onOpenAutoFocus:
|
|
43354
|
-
onCloseAutoFocus:
|
|
43359
|
+
onOpenAutoFocus: Ht,
|
|
43360
|
+
onCloseAutoFocus: Ht
|
|
43355
43361
|
},
|
|
43356
43362
|
ui: { content: "channel-select-menu channel-mention-menu" },
|
|
43357
43363
|
"onUpdate:open": t[14] ||= (e) => !e && (kt.value = null)
|
|
@@ -43359,23 +43365,30 @@ var _H = {
|
|
|
43359
43365
|
content: L(() => [t[45] ||= K("div", { class: "channel-mention-heading" }, [K("span", null, "选择成员"), K("small", null, "↑↓ 选择 · Enter 确认")], -1), K("div", {
|
|
43360
43366
|
id: "channel-mention-list",
|
|
43361
43367
|
ref_key: "mention_list",
|
|
43362
|
-
ref:
|
|
43368
|
+
ref: Nt,
|
|
43363
43369
|
role: "listbox",
|
|
43364
43370
|
"aria-label": "选择成员",
|
|
43365
43371
|
class: "channel-mention-list"
|
|
43366
|
-
}, [(U(!0), W(H, null, B(
|
|
43372
|
+
}, [(U(!0), W(H, null, B(Ft.value, (e, n) => (U(), W("button", {
|
|
43367
43373
|
id: `channel-mention-${n}`,
|
|
43368
43374
|
key: e,
|
|
43369
43375
|
type: "button",
|
|
43370
43376
|
role: "option",
|
|
43371
|
-
"aria-selected": e ===
|
|
43377
|
+
"aria-selected": e === It.value,
|
|
43372
43378
|
tabindex: "-1",
|
|
43373
43379
|
class: "channel-mention-option",
|
|
43374
43380
|
onPointerdown: t[13] ||= uu(() => {}, ["prevent"]),
|
|
43375
|
-
onClick: (t) =>
|
|
43376
|
-
onPointermove: (e) =>
|
|
43381
|
+
onClick: (t) => zt(e),
|
|
43382
|
+
onPointermove: (e) => Mt.value = n
|
|
43377
43383
|
}, [
|
|
43378
|
-
|
|
43384
|
+
e === wG ? (U(), G(C, {
|
|
43385
|
+
key: 0,
|
|
43386
|
+
icon: "i-lucide-users",
|
|
43387
|
+
alt: e,
|
|
43388
|
+
size: "xs",
|
|
43389
|
+
class: "channel-avatar"
|
|
43390
|
+
}, null, 8, ["alt"])) : (U(), G(C, {
|
|
43391
|
+
key: 1,
|
|
43379
43392
|
src: I(s).identities[e]?.icon,
|
|
43380
43393
|
text: I(s).identities[e]?.initials,
|
|
43381
43394
|
alt: I(s).display_name(e),
|
|
@@ -43386,10 +43399,10 @@ var _H = {
|
|
|
43386
43399
|
"text",
|
|
43387
43400
|
"alt",
|
|
43388
43401
|
"class"
|
|
43389
|
-
]),
|
|
43390
|
-
K("span", null, P(I(s).display_name(e)), 1),
|
|
43402
|
+
])),
|
|
43403
|
+
K("span", null, P(e === wG ? `全体成员(${Le.value.length} 位)` : I(s).display_name(e)), 1),
|
|
43391
43404
|
K("small", null, "@" + P(e), 1)
|
|
43392
|
-
], 40, TW))), 128)),
|
|
43405
|
+
], 40, TW))), 128)), Ft.value.length ? Y("", !0) : (U(), W("p", EW, "没有匹配的成员"))], 512)]),
|
|
43393
43406
|
_: 1
|
|
43394
43407
|
}, 8, [
|
|
43395
43408
|
"open",
|
|
@@ -43413,7 +43426,7 @@ var _H = {
|
|
|
43413
43426
|
"aria-haspopup": "listbox",
|
|
43414
43427
|
"aria-expanded": !!kt.value,
|
|
43415
43428
|
"aria-controls": kt.value ? "channel-mention-list" : void 0,
|
|
43416
|
-
"aria-activedescendant": kt.value &&
|
|
43429
|
+
"aria-activedescendant": kt.value && It.value ? `channel-mention-${Ft.value.indexOf(It.value)}` : void 0,
|
|
43417
43430
|
variant: "outline",
|
|
43418
43431
|
color: "neutral",
|
|
43419
43432
|
class: j(["channel-composer", { "has-mentions": Et.value }]),
|
|
@@ -43422,7 +43435,7 @@ var _H = {
|
|
|
43422
43435
|
base: "channel-editor",
|
|
43423
43436
|
footer: "channel-composer-footer"
|
|
43424
43437
|
},
|
|
43425
|
-
onSubmit:
|
|
43438
|
+
onSubmit: Pn
|
|
43426
43439
|
}, {
|
|
43427
43440
|
header: L(() => [
|
|
43428
43441
|
I(o).attachment_drafts.length ? (U(), W("div", DW, [(U(!0), W(H, null, B(I(o).attachment_drafts, (e) => (U(), W("div", {
|
|
@@ -43450,14 +43463,14 @@ var _H = {
|
|
|
43450
43463
|
K("span", null, P(I(s).display_name(ke.value.name)) + " 尚未注册:需把启动指令粘贴到其 AI 会话,由它自己注册后才算到场", 1),
|
|
43451
43464
|
I(o).access?.can_manage ? (U(), G(c, {
|
|
43452
43465
|
key: 0,
|
|
43453
|
-
icon:
|
|
43454
|
-
label:
|
|
43466
|
+
icon: On.value === ke.value.name ? "i-lucide-check" : "i-lucide-copy",
|
|
43467
|
+
label: On.value === ke.value.name ? "已复制" : "复制启动指令",
|
|
43455
43468
|
"aria-live": "polite",
|
|
43456
43469
|
size: "xs",
|
|
43457
43470
|
color: "neutral",
|
|
43458
43471
|
variant: "ghost",
|
|
43459
43472
|
class: "channel-launch-copy",
|
|
43460
|
-
onClick: t[15] ||= (e) =>
|
|
43473
|
+
onClick: t[15] ||= (e) => jn(ke.value.name)
|
|
43461
43474
|
}, null, 8, ["icon", "label"])) : Y("", !0)
|
|
43462
43475
|
])) : Y("", !0),
|
|
43463
43476
|
Ae.value ? (U(), W("div", FW, [
|
|
@@ -43465,14 +43478,14 @@ var _H = {
|
|
|
43465
43478
|
K("span", null, P(Ae.value), 1),
|
|
43466
43479
|
De(Oe.value) && I(o).access?.can_manage ? (U(), G(c, {
|
|
43467
43480
|
key: 0,
|
|
43468
|
-
icon:
|
|
43469
|
-
label:
|
|
43481
|
+
icon: On.value === Oe.value.name ? "i-lucide-check" : "i-lucide-copy",
|
|
43482
|
+
label: On.value === Oe.value.name ? "已复制" : "复制启动指令",
|
|
43470
43483
|
"aria-live": "polite",
|
|
43471
43484
|
size: "xs",
|
|
43472
43485
|
color: "neutral",
|
|
43473
43486
|
variant: "ghost",
|
|
43474
43487
|
class: "channel-launch-copy",
|
|
43475
|
-
onClick: t[16] ||= (e) =>
|
|
43488
|
+
onClick: t[16] ||= (e) => jn(Oe.value.name)
|
|
43476
43489
|
}, null, 8, ["icon", "label"])) : Y("", !0)
|
|
43477
43490
|
])) : Y("", !0),
|
|
43478
43491
|
I(o).reply_to || I(o).turn_reply_to ? (U(), W("div", IW, [
|
|
@@ -43576,7 +43589,7 @@ var _H = {
|
|
|
43576
43589
|
title: "发送 · Enter",
|
|
43577
43590
|
disabled: !Ie.value || v.value && !I(g).trim(),
|
|
43578
43591
|
loading: I(u) === "send" || I(o).sending_message,
|
|
43579
|
-
onClick:
|
|
43592
|
+
onClick: Pn
|
|
43580
43593
|
}, null, 8, ["disabled", "loading"])
|
|
43581
43594
|
]),
|
|
43582
43595
|
default: L(() => [Et.value ? (U(), W("div", {
|
|
@@ -43622,7 +43635,7 @@ var _H = {
|
|
|
43622
43635
|
], 2);
|
|
43623
43636
|
};
|
|
43624
43637
|
}
|
|
43625
|
-
}, [["__scopeId", "data-v-
|
|
43638
|
+
}, [["__scopeId", "data-v-0a19b1a3"]]), DG = {
|
|
43626
43639
|
slots: {
|
|
43627
43640
|
root: "relative inline-flex items-center",
|
|
43628
43641
|
base: ["rounded-md", "transition-colors"],
|
|
@@ -44050,7 +44063,7 @@ var _H = {
|
|
|
44050
44063
|
color: "primary",
|
|
44051
44064
|
variant: "outline"
|
|
44052
44065
|
}
|
|
44053
|
-
},
|
|
44066
|
+
}, OG = /*@__PURE__*/ Object.assign({ inheritAttrs: !1 }, {
|
|
44054
44067
|
__name: "InputMenu",
|
|
44055
44068
|
props: /*@__PURE__*/ Fa({
|
|
44056
44069
|
as: {
|
|
@@ -44330,7 +44343,7 @@ var _H = {
|
|
|
44330
44343
|
required: !1
|
|
44331
44344
|
}
|
|
44332
44345
|
} }), ve = Z(() => oA({
|
|
44333
|
-
extend:
|
|
44346
|
+
extend: DG,
|
|
44334
44347
|
...l.ui?.inputMenu || {}
|
|
44335
44348
|
})({
|
|
44336
44349
|
color: de.value,
|
|
@@ -44824,16 +44837,16 @@ var _H = {
|
|
|
44824
44837
|
])
|
|
44825
44838
|
], 64));
|
|
44826
44839
|
}
|
|
44827
|
-
}),
|
|
44840
|
+
}), kG = { class: "api-settings" }, AG = {
|
|
44828
44841
|
class: "api-field",
|
|
44829
44842
|
title: "Base URL"
|
|
44830
|
-
},
|
|
44843
|
+
}, jG = {
|
|
44831
44844
|
class: "api-field",
|
|
44832
44845
|
title: "OpenRouter 等兼容服务可选 Chat Completions,并填写该服务的完整模型 ID。"
|
|
44833
|
-
},
|
|
44846
|
+
}, MG = { class: "api-field" }, NG = { class: "api-field" }, PG = { class: "api-inline" }, FG = {
|
|
44834
44847
|
key: 0,
|
|
44835
44848
|
role: "alert"
|
|
44836
|
-
},
|
|
44849
|
+
}, IG = "••••••••••••", LG = /*#__PURE__*/ MH({
|
|
44837
44850
|
__name: "ApiSettings",
|
|
44838
44851
|
props: { name: {
|
|
44839
44852
|
type: String,
|
|
@@ -44875,9 +44888,9 @@ var _H = {
|
|
|
44875
44888
|
}
|
|
44876
44889
|
}
|
|
44877
44890
|
return (t, n) => {
|
|
44878
|
-
let u = YV, m = bH, h = MA, g =
|
|
44879
|
-
return U(), W("div",
|
|
44880
|
-
K("label",
|
|
44891
|
+
let u = YV, m = bH, h = MA, g = OG;
|
|
44892
|
+
return U(), W("div", kG, [
|
|
44893
|
+
K("label", AG, [n[6] ||= K("span", null, "地址", -1), q(u, {
|
|
44881
44894
|
"model-value": i.value.base_url || "",
|
|
44882
44895
|
"aria-label": `${e.name} Base URL`,
|
|
44883
44896
|
placeholder: "Base URL",
|
|
@@ -44885,7 +44898,7 @@ var _H = {
|
|
|
44885
44898
|
size: "xs",
|
|
44886
44899
|
"onUpdate:modelValue": n[0] ||= (e) => f("base_url", e)
|
|
44887
44900
|
}, null, 8, ["model-value", "aria-label"])]),
|
|
44888
|
-
K("div",
|
|
44901
|
+
K("div", jG, [n[7] ||= K("span", null, "协议", -1), q(m, {
|
|
44889
44902
|
"model-value": i.value.api_protocol || "",
|
|
44890
44903
|
items: d,
|
|
44891
44904
|
"aria-label": `${e.name} API 请求协议`,
|
|
@@ -44893,7 +44906,7 @@ var _H = {
|
|
|
44893
44906
|
size: "xs",
|
|
44894
44907
|
"onUpdate:modelValue": n[1] ||= (e) => f("api_protocol", e)
|
|
44895
44908
|
}, null, 8, ["model-value", "aria-label"])]),
|
|
44896
|
-
K("div",
|
|
44909
|
+
K("div", MG, [n[8] ||= K("span", null, "密钥", -1), q(u, {
|
|
44897
44910
|
modelValue: o.value,
|
|
44898
44911
|
"onUpdate:modelValue": n[3] ||= (e) => o.value = e,
|
|
44899
44912
|
type: "text",
|
|
@@ -44901,7 +44914,7 @@ var _H = {
|
|
|
44901
44914
|
spellcheck: "false",
|
|
44902
44915
|
"data-1p-ignore": "",
|
|
44903
44916
|
"data-lpignore": "true",
|
|
44904
|
-
placeholder: i.value.api_key_ref ?
|
|
44917
|
+
placeholder: i.value.api_key_ref ? IG : "填写 API Key",
|
|
44905
44918
|
title: i.value.api_key_ref && !o.value ? "已保存;本机不回传密钥,输入新 Key 可更换" : void 0,
|
|
44906
44919
|
"aria-label": `${e.name} API Key`,
|
|
44907
44920
|
size: "xs",
|
|
@@ -44937,7 +44950,7 @@ var _H = {
|
|
|
44937
44950
|
"loading",
|
|
44938
44951
|
"ui"
|
|
44939
44952
|
])]),
|
|
44940
|
-
K("div",
|
|
44953
|
+
K("div", NG, [n[9] ||= K("span", null, "模型", -1), K("div", PG, [q(g, {
|
|
44941
44954
|
mode: "autocomplete",
|
|
44942
44955
|
"ignore-filter": "",
|
|
44943
44956
|
"model-value": i.value.model || "",
|
|
@@ -44967,26 +44980,26 @@ var _H = {
|
|
|
44967
44980
|
"loading",
|
|
44968
44981
|
"disabled"
|
|
44969
44982
|
])])]),
|
|
44970
|
-
l.value || a.value.error ? (U(), W("p",
|
|
44983
|
+
l.value || a.value.error ? (U(), W("p", FG, P(l.value || a.value.error), 1)) : Y("", !0)
|
|
44971
44984
|
]);
|
|
44972
44985
|
};
|
|
44973
44986
|
}
|
|
44974
|
-
}, [["__scopeId", "data-v-9bf1d860"]]),
|
|
44987
|
+
}, [["__scopeId", "data-v-9bf1d860"]]), RG = {
|
|
44975
44988
|
class: "launch-settings",
|
|
44976
44989
|
"aria-label": "启动配置"
|
|
44977
|
-
},
|
|
44990
|
+
}, zG = { class: "launch-connect-command" }, BG = {
|
|
44978
44991
|
key: 0,
|
|
44979
44992
|
role: "alert",
|
|
44980
44993
|
class: "fine-print"
|
|
44981
|
-
},
|
|
44994
|
+
}, VG = { class: "launch-effective" }, HG = { class: "launch-client-fields" }, UG = ["onClick"], WG = { key: 7 }, GG = { class: "launch-client-fields" }, KG = { class: "form-two-columns" }, qG = {
|
|
44982
44995
|
key: 0,
|
|
44983
44996
|
role: "alert",
|
|
44984
44997
|
class: "fine-print"
|
|
44985
|
-
},
|
|
44998
|
+
}, JG = {
|
|
44986
44999
|
key: 1,
|
|
44987
45000
|
role: "status",
|
|
44988
45001
|
class: "fine-print"
|
|
44989
|
-
},
|
|
45002
|
+
}, YG = /*#__PURE__*/ MH({
|
|
44990
45003
|
__name: "LaunchSettings",
|
|
44991
45004
|
props: {
|
|
44992
45005
|
participants: {
|
|
@@ -45027,7 +45040,7 @@ var _H = {
|
|
|
45027
45040
|
e && t && o.value.forEach((e) => r.load_launch_models(e));
|
|
45028
45041
|
}, { immediate: !0 }), (e, m) => {
|
|
45029
45042
|
let h = MA, g = bH, _ = zV, v = YV, y = HV;
|
|
45030
|
-
return U(), W("section",
|
|
45043
|
+
return U(), W("section", RG, [I(n).launch.available ? (U(), W(H, { key: 1 }, [
|
|
45031
45044
|
m[10] ||= K("h3", null, "启动配置", -1),
|
|
45032
45045
|
m[11] ||= K("p", { class: "fine-print" }, "接入配置可保存供后续讨论复用。API 不需要安装 AI 软件;App 需要保持运行;CLI 按需启动。", -1),
|
|
45033
45046
|
(U(!0), W(H, null, B(o.value, (e) => (U(), W("details", {
|
|
@@ -45036,12 +45049,12 @@ var _H = {
|
|
|
45036
45049
|
class: "launch-client"
|
|
45037
45050
|
}, [
|
|
45038
45051
|
K("summary", null, P(e) + " · " + P(I(r).launch_summary(e).client) + " · " + P(I(r).launch_summary(e).session), 1),
|
|
45039
|
-
K("p",
|
|
45052
|
+
K("p", VG, [
|
|
45040
45053
|
J("工作目录:" + P(I(r).launch_summary(e).cwd) + "(" + P(I(r).launch_summary(e).access) + ")", 1),
|
|
45041
45054
|
m[8] ||= K("br", null, null, -1),
|
|
45042
45055
|
J("项目:" + P(I(r).launch_summary(e).project), 1)
|
|
45043
45056
|
]),
|
|
45044
|
-
K("div",
|
|
45057
|
+
K("div", HG, [
|
|
45045
45058
|
q(_, { label: `${e} 执行客户端` }, {
|
|
45046
45059
|
default: L(() => [q(g, {
|
|
45047
45060
|
"model-value": s(e).adapter || "",
|
|
@@ -45084,7 +45097,7 @@ var _H = {
|
|
|
45084
45097
|
])]),
|
|
45085
45098
|
_: 2
|
|
45086
45099
|
}, 1024)),
|
|
45087
|
-
s(e).adapter === "api" ? (U(), G(
|
|
45100
|
+
s(e).adapter === "api" ? (U(), G(LG, {
|
|
45088
45101
|
key: 2,
|
|
45089
45102
|
name: e
|
|
45090
45103
|
}, null, 8, ["name"])) : t.modelSelection && f(e).supported ? (U(), G(_, {
|
|
@@ -45108,7 +45121,7 @@ var _H = {
|
|
|
45108
45121
|
type: "button",
|
|
45109
45122
|
class: "model-retry",
|
|
45110
45123
|
onClick: (t) => I(r).load_launch_models(e, !0)
|
|
45111
|
-
}, "重新读取模型列表", 8,
|
|
45124
|
+
}, "重新读取模型列表", 8, UG)) : Y("", !0)]),
|
|
45112
45125
|
_: 2
|
|
45113
45126
|
}, 1032, ["help"])) : Y("", !0),
|
|
45114
45127
|
t.modelSelection && f(e).efforts?.length ? (U(), G(_, {
|
|
@@ -45152,7 +45165,7 @@ var _H = {
|
|
|
45152
45165
|
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
45153
45166
|
_: 2
|
|
45154
45167
|
}, 1024)) : Y("", !0),
|
|
45155
|
-
s(e).adapter === "api" ? Y("", !0) : (U(), W("details",
|
|
45168
|
+
s(e).adapter === "api" ? Y("", !0) : (U(), W("details", WG, [m[9] ||= K("summary", null, "会话与目录覆盖(可选)", -1), K("div", GG, [
|
|
45156
45169
|
q(_, { label: "复用会话 ID(仅本次)" }, {
|
|
45157
45170
|
default: L(() => [q(v, {
|
|
45158
45171
|
"model-value": s(e).session_id || "",
|
|
@@ -45211,7 +45224,7 @@ var _H = {
|
|
|
45211
45224
|
])]))
|
|
45212
45225
|
])
|
|
45213
45226
|
]))), 128)),
|
|
45214
|
-
K("div",
|
|
45227
|
+
K("div", KG, [
|
|
45215
45228
|
t.workspace ? (U(), G(_, {
|
|
45216
45229
|
key: 0,
|
|
45217
45230
|
label: "本次工作目录(可选)",
|
|
@@ -45255,11 +45268,11 @@ var _H = {
|
|
|
45255
45268
|
loading: I(a) === "save_launch_defaults",
|
|
45256
45269
|
onClick: m[5] ||= (e) => I(i)("save_launch_defaults")
|
|
45257
45270
|
}, null, 8, ["loading"]),
|
|
45258
|
-
I(n).launch.error ? (U(), W("p",
|
|
45271
|
+
I(n).launch.error ? (U(), W("p", qG, P(I(n).launch.error), 1)) : I(n).launch.notice ? (U(), W("p", JG, P(I(n).launch.notice), 1)) : Y("", !0)
|
|
45259
45272
|
], 64)) : (U(), W(H, { key: 0 }, [
|
|
45260
45273
|
m[6] ||= K("h3", null, "连接这台电脑", -1),
|
|
45261
45274
|
m[7] ||= K("p", { class: "fine-print" }, "先安装并配置 codiscuss,在运行 AI 的这台电脑上执行以下命令,使用命令打开的网页完成连接。浏览器询问时允许访问本机网络。", -1),
|
|
45262
|
-
K("div",
|
|
45275
|
+
K("div", zG, [K("code", null, P(I(n).launch.connect_command), 1), q(h, {
|
|
45263
45276
|
icon: "i-lucide-copy",
|
|
45264
45277
|
"aria-label": "复制本机连接命令",
|
|
45265
45278
|
variant: "ghost",
|
|
@@ -45273,93 +45286,93 @@ var _H = {
|
|
|
45273
45286
|
loading: I(a) === "retry_launch_connection",
|
|
45274
45287
|
onClick: m[1] ||= (e) => I(i)("retry_launch_connection")
|
|
45275
45288
|
}, null, 8, ["loading"]),
|
|
45276
|
-
I(n).launch.error ? (U(), W("p",
|
|
45289
|
+
I(n).launch.error ? (U(), W("p", BG, P(I(n).launch.error), 1)) : Y("", !0)
|
|
45277
45290
|
], 64))]);
|
|
45278
45291
|
};
|
|
45279
45292
|
}
|
|
45280
|
-
}, [["__scopeId", "data-v-b8f8fe3c"]]),
|
|
45293
|
+
}, [["__scopeId", "data-v-b8f8fe3c"]]), XG = { class: "page-heading" }, ZG = { class: "topic-brief" }, QG = { class: "host-status" }, $G = {
|
|
45281
45294
|
key: 0,
|
|
45282
45295
|
class: "turn-panel"
|
|
45283
|
-
},
|
|
45296
|
+
}, eK = { class: "turn-header" }, tK = { class: "turn-panel host-turn" }, nK = { class: "turn-header" }, rK = { class: "turn-expert" }, iK = { class: "turn-question" }, aK = {
|
|
45284
45297
|
key: 0,
|
|
45285
45298
|
class: "button-row turn-actions"
|
|
45286
|
-
},
|
|
45299
|
+
}, oK = {
|
|
45287
45300
|
key: 1,
|
|
45288
45301
|
class: "turn-empty"
|
|
45289
|
-
},
|
|
45302
|
+
}, sK = {
|
|
45290
45303
|
key: 2,
|
|
45291
45304
|
class: "fine-print"
|
|
45292
|
-
},
|
|
45305
|
+
}, cK = { class: "form-footer" }, lK = ["href"], uK = {
|
|
45293
45306
|
key: 0,
|
|
45294
45307
|
class: "fine-print host-schedule-hint"
|
|
45295
|
-
},
|
|
45308
|
+
}, dK = { class: "page-heading access-heading" }, fK = {
|
|
45296
45309
|
key: 0,
|
|
45297
45310
|
class: "access-evidence",
|
|
45298
45311
|
"aria-label": "实际执行进展",
|
|
45299
45312
|
role: "status"
|
|
45300
|
-
},
|
|
45313
|
+
}, pK = {
|
|
45301
45314
|
key: 0,
|
|
45302
45315
|
class: "fine-print"
|
|
45303
|
-
},
|
|
45316
|
+
}, mK = {
|
|
45304
45317
|
key: 1,
|
|
45305
45318
|
class: "access-setup",
|
|
45306
45319
|
"aria-label": "网页启动入口"
|
|
45307
|
-
},
|
|
45320
|
+
}, hK = {
|
|
45308
45321
|
key: 1,
|
|
45309
45322
|
class: "access-repair"
|
|
45310
|
-
},
|
|
45323
|
+
}, gK = { class: "access-repair-heading" }, _K = {
|
|
45311
45324
|
key: 0,
|
|
45312
45325
|
class: "access-repair-fields"
|
|
45313
|
-
},
|
|
45326
|
+
}, vK = {
|
|
45314
45327
|
key: 0,
|
|
45315
45328
|
role: "status",
|
|
45316
45329
|
class: "fine-print"
|
|
45317
|
-
},
|
|
45330
|
+
}, yK = {
|
|
45318
45331
|
key: 1,
|
|
45319
45332
|
role: "alert",
|
|
45320
45333
|
class: "fine-print"
|
|
45321
|
-
},
|
|
45334
|
+
}, bK = {
|
|
45322
45335
|
key: 2,
|
|
45323
45336
|
class: "fine-print"
|
|
45324
|
-
},
|
|
45337
|
+
}, xK = {
|
|
45325
45338
|
key: 3,
|
|
45326
45339
|
class: "fine-print"
|
|
45327
|
-
},
|
|
45340
|
+
}, SK = {
|
|
45328
45341
|
key: 4,
|
|
45329
45342
|
class: "fine-print"
|
|
45330
|
-
},
|
|
45343
|
+
}, CK = {
|
|
45331
45344
|
key: 2,
|
|
45332
45345
|
class: "access-setup",
|
|
45333
45346
|
"aria-label": "全自动接入步骤"
|
|
45334
|
-
},
|
|
45347
|
+
}, wK = { class: "access-section-title" }, TK = {
|
|
45335
45348
|
href: "https://github.com/huyan1458/ai_co_discuss/blob/main/docs/runner.md#常驻讨论服务",
|
|
45336
45349
|
target: "_blank",
|
|
45337
45350
|
rel: "noopener",
|
|
45338
45351
|
class: "subtle-link"
|
|
45339
|
-
},
|
|
45352
|
+
}, EK = { class: "access-steps" }, DK = { class: "access-command" }, OK = { class: "access-command" }, kK = {
|
|
45340
45353
|
key: 3,
|
|
45341
45354
|
class: "access-disclosure access-workspace"
|
|
45342
|
-
},
|
|
45355
|
+
}, AK = { class: "access-disclosure-body" }, jK = { class: "form-two-columns" }, MK = ["open"], NK = { class: "access-disclosure-body" }, PK = {
|
|
45343
45356
|
key: 0,
|
|
45344
45357
|
class: "fine-print"
|
|
45345
|
-
},
|
|
45358
|
+
}, FK = {
|
|
45346
45359
|
class: "access-member-list",
|
|
45347
45360
|
"aria-label": "成员接入"
|
|
45348
|
-
},
|
|
45361
|
+
}, IK = { class: "access-member-copy" }, LK = { key: 1 }, RK = { class: "button-row" }, zK = {
|
|
45349
45362
|
key: 1,
|
|
45350
45363
|
role: "alert",
|
|
45351
45364
|
class: "access-member-error"
|
|
45352
|
-
},
|
|
45365
|
+
}, BK = {
|
|
45353
45366
|
key: 2,
|
|
45354
45367
|
role: "status",
|
|
45355
45368
|
class: "fine-print"
|
|
45356
|
-
},
|
|
45369
|
+
}, VK = { class: "access-reading" }, HK = { class: "access-address" }, UK = {
|
|
45357
45370
|
key: 3,
|
|
45358
45371
|
class: "fine-print"
|
|
45359
|
-
},
|
|
45372
|
+
}, WK = {
|
|
45360
45373
|
key: 4,
|
|
45361
45374
|
class: "access-disclosure access-limits"
|
|
45362
|
-
},
|
|
45375
|
+
}, GK = { class: "access-limit-summary" }, KK = { class: "access-disclosure-body" }, qK = { class: "button-row" }, JK = /*#__PURE__*/ MH({
|
|
45363
45376
|
__name: "TopicPanel",
|
|
45364
45377
|
emits: ["open", "detail"],
|
|
45365
45378
|
setup(e) {
|
|
@@ -45411,7 +45424,7 @@ var _H = {
|
|
|
45411
45424
|
transition: { duration: .16 }
|
|
45412
45425
|
}, {
|
|
45413
45426
|
default: L(() => [I(t).tab === "topic" ? (U(), W(H, { key: 0 }, [
|
|
45414
|
-
K("div",
|
|
45427
|
+
K("div", XG, [K("div", null, [
|
|
45415
45428
|
C[19] ||= K("span", { class: "eyebrow" }, "讨论进程", -1),
|
|
45416
45429
|
C[20] ||= K("h2", null, "主持与安排", -1),
|
|
45417
45430
|
K("p", null, "当前由 " + P(I(n).display_name(o.value.host)) + " 主持,围绕具体问题组织下一轮发言。", 1)
|
|
@@ -45423,9 +45436,9 @@ var _H = {
|
|
|
45423
45436
|
class: "channel-surface-button",
|
|
45424
45437
|
onClick: C[0] ||= (t) => e.$emit("open", "edit")
|
|
45425
45438
|
})]),
|
|
45426
|
-
K("div",
|
|
45427
|
-
K("div",
|
|
45428
|
-
K("div",
|
|
45439
|
+
K("div", ZG, [K("div", null, [C[21] ||= K("h3", null, "讨论目标", -1), K("p", null, P(o.value.goal || "待主持人根据用户原文补全"), 1)]), K("div", null, [C[22] ||= K("h3", null, "当前焦点", -1), K("p", null, P(o.value.focus || "尚未设置当前焦点"), 1)])]),
|
|
45440
|
+
K("div", QG, [o.value.limits ? (U(), W("section", $G, [
|
|
45441
|
+
K("div", eK, [C[23] ||= K("h3", null, "讨论上限与进度", -1), q(T, {
|
|
45429
45442
|
color: o.value.limits.reached && o.value.phase !== "concluded" ? "warning" : "neutral",
|
|
45430
45443
|
variant: "subtle"
|
|
45431
45444
|
}, {
|
|
@@ -45443,8 +45456,8 @@ var _H = {
|
|
|
45443
45456
|
}, null, 8, ["loading"])) : Y("", !0),
|
|
45444
45457
|
C[24] ||= K("p", { class: "fine-print" }, "在“编辑议题”中调整参数。自动模式由接入程序检查;手动模式由主持人或此按钮执行到限处理。", -1)
|
|
45445
45458
|
])) : Y("", !0)]),
|
|
45446
|
-
K("section",
|
|
45447
|
-
K("div",
|
|
45459
|
+
K("section", tK, [
|
|
45460
|
+
K("div", nK, [C[25] ||= K("h3", null, "当前发言安排", -1), q(T, {
|
|
45448
45461
|
color: c.value ? "primary" : "neutral",
|
|
45449
45462
|
variant: "subtle"
|
|
45450
45463
|
}, {
|
|
@@ -45452,7 +45465,7 @@ var _H = {
|
|
|
45452
45465
|
_: 1
|
|
45453
45466
|
}, 8, ["color"])]),
|
|
45454
45467
|
s.value ? (U(), W(H, { key: 0 }, [
|
|
45455
|
-
K("div",
|
|
45468
|
+
K("div", rK, [q(ee, {
|
|
45456
45469
|
src: I(n).identities[s.value.expert]?.icon,
|
|
45457
45470
|
text: I(n).identities[s.value.expert]?.initials,
|
|
45458
45471
|
alt: s.value.expert,
|
|
@@ -45463,8 +45476,8 @@ var _H = {
|
|
|
45463
45476
|
"alt",
|
|
45464
45477
|
"class"
|
|
45465
45478
|
]), K("div", null, [K("strong", null, P(s.value.expert), 1), K("small", null, "发言安排 #" + P(s.value.id), 1)])]),
|
|
45466
|
-
K("p",
|
|
45467
|
-
c.value ? (U(), W("div",
|
|
45479
|
+
K("p", iK, P(s.value.question), 1),
|
|
45480
|
+
c.value ? (U(), W("div", aK, [
|
|
45468
45481
|
q(w, {
|
|
45469
45482
|
icon: "i-lucide-copy",
|
|
45470
45483
|
label: "复制通知",
|
|
@@ -45508,24 +45521,24 @@ var _H = {
|
|
|
45508
45521
|
class: "channel-surface-button",
|
|
45509
45522
|
onClick: C[6] ||= (t) => e.$emit("detail", s.value.answer_id)
|
|
45510
45523
|
})) : Y("", !0)
|
|
45511
|
-
], 64)) : (U(), W("p",
|
|
45512
|
-
c.value ? (U(), W("p",
|
|
45524
|
+
], 64)) : (U(), W("p", oK, "把下一轮需要回答的问题,交给一位参与者。")),
|
|
45525
|
+
c.value ? (U(), W("p", sK, P(I(n).turn_guidance(s.value, o.value)), 1)) : Y("", !0)
|
|
45513
45526
|
]),
|
|
45514
|
-
K("div",
|
|
45527
|
+
K("div", cK, [K("a", {
|
|
45515
45528
|
href: `${d.value}/turns`,
|
|
45516
45529
|
target: "_blank",
|
|
45517
45530
|
rel: "noopener",
|
|
45518
45531
|
class: "subtle-link"
|
|
45519
|
-
}, [C[26] ||= J("发言安排历史 ", -1), q(E, { name: "i-lucide-arrow-up-right" })], 8,
|
|
45532
|
+
}, [C[26] ||= J("发言安排历史 ", -1), q(E, { name: "i-lucide-arrow-up-right" })], 8, lK), q(w, {
|
|
45520
45533
|
icon: "i-lucide-plus",
|
|
45521
45534
|
label: "安排下一位专家",
|
|
45522
45535
|
class: "channel-primary-button",
|
|
45523
45536
|
disabled: !u.value,
|
|
45524
45537
|
onClick: C[7] ||= (t) => e.$emit("open", "schedule")
|
|
45525
45538
|
}, null, 8, ["disabled"])]),
|
|
45526
|
-
u.value ? Y("", !0) : (U(), W("p",
|
|
45539
|
+
u.value ? Y("", !0) : (U(), W("p", uK, P(l.value ? "话题已暂停或收束,修改阶段后可以继续安排。" : c.value ? "先完成或取消当前安排,再安排下一位。" : o.value.limits?.reached ? "已达到讨论上限,请检查到限处理;需要继续时先暂停并调整参数。" : "请先在议题资料中配置参与专家。"), 1))
|
|
45527
45540
|
], 64)) : (U(), W(H, { key: 1 }, [
|
|
45528
|
-
K("div",
|
|
45541
|
+
K("div", dK, [C[27] ||= K("div", null, [K("h2", null, "接入 AI"), K("p", null, "讨论由本机服务唤醒 AI:在这里启动、修正软件连接或查看参与说明;成员进出在进度看板操作。")], -1), f.value ? (U(), G(T, {
|
|
45529
45542
|
key: 0,
|
|
45530
45543
|
color: o.value.runtime?.status === "running" ? "primary" : "neutral",
|
|
45531
45544
|
variant: "subtle"
|
|
@@ -45533,21 +45546,21 @@ var _H = {
|
|
|
45533
45546
|
default: L(() => [J(P(g.value), 1)]),
|
|
45534
45547
|
_: 1
|
|
45535
45548
|
}, 8, ["color"])) : Y("", !0)]),
|
|
45536
|
-
f.value ? (U(), W("section",
|
|
45549
|
+
f.value ? (U(), W("section", fK, [
|
|
45537
45550
|
C[28] ||= K("strong", null, "实际执行进展", -1),
|
|
45538
45551
|
K("p", null, P(I(n).execution_label(m.value)), 1),
|
|
45539
|
-
o.value.runtime?.status === "running" && (!m.value || ["pending", "dispatched"].includes(m.value.status)) ? (U(), W("p",
|
|
45552
|
+
o.value.runtime?.status === "running" && (!m.value || ["pending", "dispatched"].includes(m.value.status)) ? (U(), W("p", pK, "尚无 AI 进入记录。请核对本机服务及对应软件的登录和工具权限。")) : Y("", !0)
|
|
45540
45553
|
])) : Y("", !0),
|
|
45541
|
-
f.value && I(t).launch.available ? (U(), W("section",
|
|
45554
|
+
f.value && I(t).launch.available ? (U(), W("section", mK, [
|
|
45542
45555
|
C[31] ||= K("div", { class: "access-section-title" }, [K("h3", null, "从网页启动"), K("span", { class: "fine-print" }, "本机执行")], -1),
|
|
45543
|
-
o.value.runtime?.status === "ready" ? (U(), W(H, { key: 0 }, [q(
|
|
45556
|
+
o.value.runtime?.status === "ready" ? (U(), W(H, { key: 0 }, [q(YG, { participants: v.value }, null, 8, ["participants"]), q(w, {
|
|
45544
45557
|
label: "启动讨论",
|
|
45545
45558
|
icon: "i-lucide-play",
|
|
45546
45559
|
class: "channel-primary-button",
|
|
45547
45560
|
loading: I(i) === "launch_current_room",
|
|
45548
45561
|
onClick: C[8] ||= (e) => I(r)("launch_current_room")
|
|
45549
|
-
}, null, 8, ["loading"])], 64)) : o.value.runtime?.status === "paused" && !o.value.archived && !I(t).launch.remote ? (U(), W("div",
|
|
45550
|
-
K("div",
|
|
45562
|
+
}, null, 8, ["loading"])], 64)) : o.value.runtime?.status === "paused" && !o.value.archived && !I(t).launch.remote ? (U(), W("div", hK, [
|
|
45563
|
+
K("div", gK, [C[29] ||= K("h3", null, "修正本场软件连接", -1), q(w, {
|
|
45551
45564
|
label: "读取本场配置",
|
|
45552
45565
|
variant: "outline",
|
|
45553
45566
|
color: "neutral",
|
|
@@ -45556,7 +45569,7 @@ var _H = {
|
|
|
45556
45569
|
onClick: C[9] ||= (e) => I(r)("load_room_configuration")
|
|
45557
45570
|
}, null, 8, ["loading"])]),
|
|
45558
45571
|
C[30] ||= K("div", { class: "access-repair-description" }, [K("p", null, "修正软件路径,或切换 Codex 的 App / CLI 接入。保留原房间、发言进度和会话,保存后到进度看板重启。"), K("p", { class: "fine-print" }, "App 需保持运行,模型与文件权限在 App 内设置。切回 CLI 前须让 App 释放原聊天;未释放时执行仍会暂停。")], -1),
|
|
45559
|
-
h.value ? (U(), W("div",
|
|
45572
|
+
h.value ? (U(), W("div", _K, [
|
|
45560
45573
|
(U(!0), W(H, null, B(h.value.participants, (e, t) => (U(), W("div", {
|
|
45561
45574
|
key: t,
|
|
45562
45575
|
class: "form-two-columns"
|
|
@@ -45591,19 +45604,19 @@ var _H = {
|
|
|
45591
45604
|
loading: I(i) === "save_room_configuration",
|
|
45592
45605
|
onClick: C[10] ||= (e) => I(r)("save_room_configuration")
|
|
45593
45606
|
}, null, 8, ["loading"]),
|
|
45594
|
-
h.value.notice ? (U(), W("p",
|
|
45607
|
+
h.value.notice ? (U(), W("p", vK, P(h.value.notice), 1)) : Y("", !0)
|
|
45595
45608
|
])) : Y("", !0),
|
|
45596
|
-
I(t).launch.repair_error ? (U(), W("p",
|
|
45597
|
-
])) : o.value.runtime?.status === "paused" && I(t).launch.remote ? (U(), W("p",
|
|
45609
|
+
I(t).launch.repair_error ? (U(), W("p", yK, P(I(t).launch.repair_error), 1)) : Y("", !0)
|
|
45610
|
+
])) : o.value.runtime?.status === "paused" && I(t).launch.remote ? (U(), W("p", bK, "讨论已暂停,可在进度看板重启。线上连接暂不提供已登记房间的软件路径修正。")) : o.value.runtime?.status === "running" ? (U(), W("p", xK, "讨论正在运行。")) : (U(), W("p", SK, "本场讨论已停止或结束,已有记录保留。")),
|
|
45598
45611
|
C[32] ||= K("p", { class: "access-host-entry" }, [
|
|
45599
45612
|
J("另一种入口:在 AI 工具对话中调用 "),
|
|
45600
45613
|
K("code", null, "discuss-host"),
|
|
45601
45614
|
J(",由当前会话主持。")
|
|
45602
45615
|
], -1)
|
|
45603
|
-
])) : f.value ? (U(), W("section",
|
|
45616
|
+
])) : f.value ? (U(), W("section", CK, [q(YG, { participants: v.value }, null, 8, ["participants"]), K("details", null, [
|
|
45604
45617
|
C[44] ||= K("summary", null, "手动下载与登记配置", -1),
|
|
45605
|
-
K("div",
|
|
45606
|
-
K("ol",
|
|
45618
|
+
K("div", wK, [C[34] ||= K("h3", null, "首次接入", -1), K("a", TK, [C[33] ||= J("配置说明 ", -1), q(E, { name: "i-lucide-arrow-up-right" })])]),
|
|
45619
|
+
K("ol", EK, [
|
|
45607
45620
|
K("li", null, [
|
|
45608
45621
|
C[35] ||= K("span", { class: "access-step-number" }, "1", -1),
|
|
45609
45622
|
C[36] ||= K("div", null, [K("h4", null, "下载接入配置"), K("p", null, "包含当前房间信息。下载后,补齐本机软件路径与会话配置。")], -1),
|
|
@@ -45619,7 +45632,7 @@ var _H = {
|
|
|
45619
45632
|
K("li", null, [C[39] ||= K("span", { class: "access-step-number" }, "2", -1), K("div", null, [
|
|
45620
45633
|
C[37] ||= K("h4", null, "登记到本机服务", -1),
|
|
45621
45634
|
C[38] ||= K("p", null, "在下载文件所在目录执行;也可以将文件名换成完整路径。", -1),
|
|
45622
|
-
K("div",
|
|
45635
|
+
K("div", DK, [K("code", null, P(_.value), 1), q(w, {
|
|
45623
45636
|
icon: "i-lucide-copy",
|
|
45624
45637
|
color: "neutral",
|
|
45625
45638
|
variant: "ghost",
|
|
@@ -45630,7 +45643,7 @@ var _H = {
|
|
|
45630
45643
|
K("li", null, [C[43] ||= K("span", { class: "access-step-number" }, "3", -1), K("div", null, [
|
|
45631
45644
|
C[41] ||= K("h4", null, "启动服务,保持终端打开", -1),
|
|
45632
45645
|
C[42] ||= K("p", null, "启动服务不会自动开始讨论。已暂停的讨论可在进度看板点“重启”。", -1),
|
|
45633
|
-
K("div",
|
|
45646
|
+
K("div", OK, [C[40] ||= K("code", null, "codiscuss", -1), q(w, {
|
|
45634
45647
|
icon: "i-lucide-copy",
|
|
45635
45648
|
color: "neutral",
|
|
45636
45649
|
variant: "ghost",
|
|
@@ -45640,10 +45653,10 @@ var _H = {
|
|
|
45640
45653
|
])])
|
|
45641
45654
|
])
|
|
45642
45655
|
])])) : Y("", !0),
|
|
45643
|
-
!f.value || !I(t).launch.available ? (U(), W("details",
|
|
45656
|
+
!f.value || !I(t).launch.available ? (U(), W("details", kK, [K("summary", null, [C[45] ||= K("span", null, [J("项目与工作目录 "), K("small", null, "可选")], -1), q(E, {
|
|
45644
45657
|
name: "i-lucide-chevron-down",
|
|
45645
45658
|
class: "disclosure-icon"
|
|
45646
|
-
})]), K("div",
|
|
45659
|
+
})]), K("div", AK, [C[46] ||= K("p", null, "指定 AI 使用的本机项目和目录,留空使用默认位置。仅保存在本机配置中。", -1), K("div", jK, [q(O, { label: "AI 软件中的项目" }, {
|
|
45647
45660
|
default: L(() => [q(te, {
|
|
45648
45661
|
"model-value": I(t).fields["runtime-project"],
|
|
45649
45662
|
placeholder: "项目名称",
|
|
@@ -45666,9 +45679,9 @@ var _H = {
|
|
|
45666
45679
|
}, [K("summary", null, [K("span", null, P(f.value ? "成员参与说明与阅读地址" : "复制指令,交给对应的 AI"), 1), q(E, {
|
|
45667
45680
|
name: "i-lucide-chevron-down",
|
|
45668
45681
|
class: "disclosure-icon"
|
|
45669
|
-
})]), K("div",
|
|
45670
|
-
y.value || b.value ? (U(), W("p",
|
|
45671
|
-
K("ul",
|
|
45682
|
+
})]), K("div", NK, [
|
|
45683
|
+
y.value || b.value ? (U(), W("p", PK, P([y.value && "手动成员:复制启动指令,交给你自己的 AI 会话。", b.value && "网页成员只读,回答由你或授权主持人代发。"].filter(Boolean).join("")), 1)) : Y("", !0),
|
|
45684
|
+
K("ul", FK, [(U(!0), W(H, null, B(p.value.members || [], (e) => (U(), W("li", { key: e.name }, [
|
|
45672
45685
|
q(ee, {
|
|
45673
45686
|
src: I(n).identities[e.name]?.icon,
|
|
45674
45687
|
text: I(n).identities[e.name]?.initials,
|
|
@@ -45681,16 +45694,16 @@ var _H = {
|
|
|
45681
45694
|
"alt",
|
|
45682
45695
|
"class"
|
|
45683
45696
|
]),
|
|
45684
|
-
K("div",
|
|
45697
|
+
K("div", IK, [
|
|
45685
45698
|
K("strong", null, P(e.name), 1),
|
|
45686
45699
|
K("span", null, P(e.access === "online" ? "网页代发" : e.access === "runner" ? "本机唤醒 · 自行发言" : "手动接入 · 自行发言"), 1),
|
|
45687
45700
|
e.access === "manual" ? (U(), W("small", {
|
|
45688
45701
|
key: 0,
|
|
45689
45702
|
class: j({ "is-registered": (o.value.members || []).find((t) => t.name === e.name)?.registered_at })
|
|
45690
45703
|
}, P((o.value.members || []).find((t) => t.name === e.name)?.registered_at ? "已注册" : "待注册"), 3)) : Y("", !0),
|
|
45691
|
-
e.access !== "online" && !e.available ? (U(), W("small",
|
|
45704
|
+
e.access !== "online" && !e.available ? (U(), W("small", LK, "当前浏览器没有此成员的私有配置")) : Y("", !0)
|
|
45692
45705
|
]),
|
|
45693
|
-
K("div",
|
|
45706
|
+
K("div", RK, [e.access === "manual" ? (U(), W(H, { key: 0 }, [q(w, {
|
|
45694
45707
|
icon: "i-lucide-rocket",
|
|
45695
45708
|
label: "复制启动指令",
|
|
45696
45709
|
"aria-label": `复制 ${e.name} 含凭证的启动指令`,
|
|
@@ -45744,25 +45757,25 @@ var _H = {
|
|
|
45744
45757
|
"onClick"
|
|
45745
45758
|
])], 64))])
|
|
45746
45759
|
]))), 128))]),
|
|
45747
|
-
p.value.error ? (U(), W("p",
|
|
45760
|
+
p.value.error ? (U(), W("p", zK, P(p.value.error), 1)) : p.value.notice ? (U(), W("p", BK, P(p.value.notice), 1)) : Y("", !0),
|
|
45748
45761
|
C[48] ||= K("p", { class: "fine-print" }, "复制说明或下载配置不代表 AI 已接入,请以实际回答和运行记录为准。", -1),
|
|
45749
|
-
K("details",
|
|
45762
|
+
K("details", VK, [C[47] ||= K("summary", null, "查看房间阅读地址", -1), K("div", HK, [K("code", null, P(d.value), 1), q(w, {
|
|
45750
45763
|
icon: "i-lucide-copy",
|
|
45751
45764
|
color: "neutral",
|
|
45752
45765
|
variant: "ghost",
|
|
45753
45766
|
"aria-label": "复制阅读地址",
|
|
45754
45767
|
onClick: C[16] ||= (e) => I(r)("copy", d.value)
|
|
45755
45768
|
})])]),
|
|
45756
|
-
d.value.includes("127.0.0.1") || d.value.includes("localhost") ? (U(), W("p",
|
|
45757
|
-
])], 8,
|
|
45758
|
-
o.value.limits ? (U(), W("details",
|
|
45769
|
+
d.value.includes("127.0.0.1") || d.value.includes("localhost") ? (U(), W("p", UK, "本机地址仅本机可访问。在线 AI 需要公网阅读地址,或由用户提供材料。")) : Y("", !0)
|
|
45770
|
+
])], 8, MK),
|
|
45771
|
+
o.value.limits ? (U(), W("details", WK, [K("summary", null, [
|
|
45759
45772
|
C[49] ||= K("span", null, "讨论上限与进度", -1),
|
|
45760
|
-
K("span",
|
|
45773
|
+
K("span", GK, P(S.value), 1),
|
|
45761
45774
|
q(E, {
|
|
45762
45775
|
name: "i-lucide-chevron-down",
|
|
45763
45776
|
class: "disclosure-icon"
|
|
45764
45777
|
})
|
|
45765
|
-
]), K("div",
|
|
45778
|
+
]), K("div", KK, [K("p", null, P(I(n).limits_label(o.value.limits)), 1), K("div", qK, [q(w, {
|
|
45766
45779
|
icon: "i-lucide-pencil",
|
|
45767
45780
|
label: "编辑讨论上限",
|
|
45768
45781
|
variant: "outline",
|
|
@@ -45787,7 +45800,7 @@ var _H = {
|
|
|
45787
45800
|
]);
|
|
45788
45801
|
};
|
|
45789
45802
|
}
|
|
45790
|
-
}, [["__scopeId", "data-v-9f594065"]]),
|
|
45803
|
+
}, [["__scopeId", "data-v-9f594065"]]), YK = {
|
|
45791
45804
|
slots: {
|
|
45792
45805
|
overlay: "fixed inset-0",
|
|
45793
45806
|
content: "bg-default divide-y divide-default flex flex-col focus:outline-none",
|
|
@@ -45829,7 +45842,7 @@ var _H = {
|
|
|
45829
45842
|
fullscreen: !1,
|
|
45830
45843
|
class: { content: "top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 max-h-[calc(100dvh-2rem)] sm:max-h-[calc(100dvh-4rem)] overflow-hidden" }
|
|
45831
45844
|
}]
|
|
45832
|
-
},
|
|
45845
|
+
}, XK = {
|
|
45833
45846
|
__name: "Modal",
|
|
45834
45847
|
props: {
|
|
45835
45848
|
title: {
|
|
@@ -45920,7 +45933,7 @@ var _H = {
|
|
|
45920
45933
|
let n = e, r = t, i = Aa(), a = AE("modal", n), { t: o } = th(), s = Cm(), c = jE(om(a, "open", "defaultOpen", "modal", "unmountOnHide"), r), l = SE(/* @__PURE__ */ Sn(() => a.portal)), u = /* @__PURE__ */ Sn(() => a.content), d = Z(() => a.dismissible ? { pointerDownOutside: (e) => jV(e, { scrollable: a.scrollable }) } : ["interactOutside", "escapeKeyDown"].reduce((e, t) => (e[t] = (e) => {
|
|
45921
45934
|
e.preventDefault(), r("close:prevent");
|
|
45922
45935
|
}, e), {})), [f, p] = _m(), m = Z(() => oA({
|
|
45923
|
-
extend:
|
|
45936
|
+
extend: YK,
|
|
45924
45937
|
...s.ui?.modal || {}
|
|
45925
45938
|
})({
|
|
45926
45939
|
transition: a.transition,
|
|
@@ -46045,10 +46058,10 @@ var _H = {
|
|
|
46045
46058
|
_: 3
|
|
46046
46059
|
}, 16));
|
|
46047
46060
|
}
|
|
46048
|
-
},
|
|
46061
|
+
}, ZK = { slots: {
|
|
46049
46062
|
root: "",
|
|
46050
46063
|
content: "data-[state=open]:animate-[collapsible-down_200ms_var(--ease-out)] data-[state=closed]:animate-[collapsible-up_200ms_var(--ease-out)] data-[state=closed]:overflow-hidden"
|
|
46051
|
-
} },
|
|
46064
|
+
} }, QK = {
|
|
46052
46065
|
__name: "Collapsible",
|
|
46053
46066
|
props: {
|
|
46054
46067
|
as: {
|
|
@@ -46084,7 +46097,7 @@ var _H = {
|
|
|
46084
46097
|
emits: ["update:open"],
|
|
46085
46098
|
setup(e, { emit: t }) {
|
|
46086
46099
|
let n = e, r = t, i = Aa(), a = AE("collapsible", n), o = Cm(), s = jE(om(a, "as", "defaultOpen", "open", "disabled", "unmountOnHide"), r), c = Z(() => oA({
|
|
46087
|
-
extend:
|
|
46100
|
+
extend: ZK,
|
|
46088
46101
|
...o.ui?.collapsible || {}
|
|
46089
46102
|
})());
|
|
46090
46103
|
return (e, t) => (U(), G(I(Kg), X(I(s), {
|
|
@@ -46107,7 +46120,7 @@ var _H = {
|
|
|
46107
46120
|
_: 3
|
|
46108
46121
|
}, 16, ["class"]));
|
|
46109
46122
|
}
|
|
46110
|
-
},
|
|
46123
|
+
}, $K = {
|
|
46111
46124
|
slots: {
|
|
46112
46125
|
root: "relative flex items-start",
|
|
46113
46126
|
container: "flex items-center",
|
|
@@ -46495,7 +46508,7 @@ var _H = {
|
|
|
46495
46508
|
variant: "list",
|
|
46496
46509
|
indicator: "start"
|
|
46497
46510
|
}
|
|
46498
|
-
},
|
|
46511
|
+
}, eq = /*@__PURE__*/ Object.assign({ inheritAttrs: !1 }, {
|
|
46499
46512
|
__name: "Checkbox",
|
|
46500
46513
|
props: {
|
|
46501
46514
|
as: {
|
|
@@ -46589,7 +46602,7 @@ var _H = {
|
|
|
46589
46602
|
let { "data-state": e, ...t } = C;
|
|
46590
46603
|
return t;
|
|
46591
46604
|
}), T = Z(() => oA({
|
|
46592
|
-
extend:
|
|
46605
|
+
extend: $K,
|
|
46593
46606
|
...o.ui?.checkbox || {}
|
|
46594
46607
|
})({
|
|
46595
46608
|
size: b.value,
|
|
@@ -46680,18 +46693,18 @@ var _H = {
|
|
|
46680
46693
|
"class"
|
|
46681
46694
|
]));
|
|
46682
46695
|
}
|
|
46683
|
-
}),
|
|
46696
|
+
}), tq = ["aria-label"], nq = { class: "limit-field-heading" }, rq = ["for"], iq = [
|
|
46684
46697
|
"aria-pressed",
|
|
46685
46698
|
"aria-label",
|
|
46686
46699
|
"onClick"
|
|
46687
|
-
],
|
|
46700
|
+
], aq = [
|
|
46688
46701
|
"id",
|
|
46689
46702
|
"disabled",
|
|
46690
46703
|
"aria-label"
|
|
46691
|
-
],
|
|
46704
|
+
], oq = { key: 0 }, sq = {
|
|
46692
46705
|
key: 1,
|
|
46693
46706
|
class: "limit-trigger-value"
|
|
46694
|
-
},
|
|
46707
|
+
}, cq = { class: "limit-editor" }, lq = { class: "limit-editor-heading" }, uq = ["aria-label", "onClick"], dq = { class: "limit-columns" }, fq = [
|
|
46695
46708
|
"onKeydown",
|
|
46696
46709
|
"onWheel",
|
|
46697
46710
|
"onPointerdown",
|
|
@@ -46699,16 +46712,16 @@ var _H = {
|
|
|
46699
46712
|
"onPointerup",
|
|
46700
46713
|
"onPointercancel",
|
|
46701
46714
|
"onLostpointercapture"
|
|
46702
|
-
],
|
|
46715
|
+
], pq = [
|
|
46703
46716
|
"aria-label",
|
|
46704
46717
|
"aria-valuemin",
|
|
46705
46718
|
"aria-valuemax",
|
|
46706
46719
|
"aria-valuenow",
|
|
46707
46720
|
"aria-valuetext"
|
|
46708
|
-
],
|
|
46721
|
+
], mq = {
|
|
46709
46722
|
class: "limit-wheel-rows",
|
|
46710
46723
|
"aria-hidden": "true"
|
|
46711
|
-
},
|
|
46724
|
+
}, hq = { class: "limit-exact-value" }, gq = [
|
|
46712
46725
|
"min",
|
|
46713
46726
|
"max",
|
|
46714
46727
|
"value",
|
|
@@ -46717,12 +46730,12 @@ var _H = {
|
|
|
46717
46730
|
"onInput",
|
|
46718
46731
|
"onBlur",
|
|
46719
46732
|
"onKeydown"
|
|
46720
|
-
],
|
|
46721
|
-
function
|
|
46733
|
+
], _q = { "aria-hidden": "true" };
|
|
46734
|
+
function vq(e) {
|
|
46722
46735
|
let t = Math.floor(e / 60), n = e % 60;
|
|
46723
46736
|
return [t && `${t} 小时`, n && `${n} 分钟`].filter(Boolean).join(" ") || "0 分钟";
|
|
46724
46737
|
}
|
|
46725
|
-
var
|
|
46738
|
+
var yq = /*#__PURE__*/ MH({
|
|
46726
46739
|
__name: "LimitPicker",
|
|
46727
46740
|
props: {
|
|
46728
46741
|
rounds: {
|
|
@@ -46787,7 +46800,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46787
46800
|
target: null,
|
|
46788
46801
|
hand: null,
|
|
46789
46802
|
pointer: null
|
|
46790
|
-
}))), u = 0, d = 0, f = (e, t, n = 0) => Math.min(t, Math.max(n, e)), p = (e) => f(Math.round(e.x), e.max, e.min), m = Z(() => r.append ? c.slice(0, 1) : c), h = (e) => r.append ? "追加轮数" : e.label, g = (e) => l.filter((t) => t.field === e.key), _ = (e) => c.find((t) => t.key === e.field), v = (e) => e.key === "rounds" ? `${e.selected} 轮` :
|
|
46803
|
+
}))), u = 0, d = 0, f = (e, t, n = 0) => Math.min(t, Math.max(n, e)), p = (e) => f(Math.round(e.x), e.max, e.min), m = Z(() => r.append ? c.slice(0, 1) : c), h = (e) => r.append ? "追加轮数" : e.label, g = (e) => l.filter((t) => t.field === e.key), _ = (e) => c.find((t) => t.key === e.field), v = (e) => e.key === "rounds" ? `${e.selected} 轮` : vq(e.selected), y = (e, t, n) => -((2 * Math.PI * n) ** 2) * e - 4 * Math.PI * n * t;
|
|
46791
46804
|
function b(e, t) {
|
|
46792
46805
|
O(e, t), e.selected = e.x, e.draft = String(e.selected);
|
|
46793
46806
|
}
|
|
@@ -46931,7 +46944,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46931
46944
|
}, [(U(!0), W(H, null, B(m.value, (t) => (U(), W("div", {
|
|
46932
46945
|
key: t.key,
|
|
46933
46946
|
class: "limit-field"
|
|
46934
|
-
}, [K("div",
|
|
46947
|
+
}, [K("div", nq, [K("label", { for: `limit-trigger-${t.key}` }, P(h(t)), 9, rq), e.append ? Y("", !0) : (U(), W("button", {
|
|
46935
46948
|
key: 0,
|
|
46936
46949
|
type: "button",
|
|
46937
46950
|
class: "limit-unlimited",
|
|
@@ -46941,7 +46954,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46941
46954
|
}, [q(r, {
|
|
46942
46955
|
name: "i-lucide-infinity",
|
|
46943
46956
|
"aria-hidden": "true"
|
|
46944
|
-
}), n[0] ||= K("span", null, "不限", -1)], 8,
|
|
46957
|
+
}), n[0] ||= K("span", null, "不限", -1)], 8, iq))]), q(i, {
|
|
46945
46958
|
open: t.open,
|
|
46946
46959
|
content: {
|
|
46947
46960
|
align: t.key === "rounds" ? "start" : "end",
|
|
@@ -46951,12 +46964,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46951
46964
|
ui: { content: `limit-popover-content ${t.key === "minutes" ? "limit-duration-content" : ""}` },
|
|
46952
46965
|
"onUpdate:open": (e) => C(t, e)
|
|
46953
46966
|
}, {
|
|
46954
|
-
content: L(() => [K("div",
|
|
46967
|
+
content: L(() => [K("div", cq, [K("div", lq, [K("span", null, P(t.label), 1), K("button", {
|
|
46955
46968
|
type: "button",
|
|
46956
46969
|
class: "limit-close",
|
|
46957
46970
|
"aria-label": `关闭${t.label}选择`,
|
|
46958
46971
|
onClick: (e) => C(t, !1)
|
|
46959
|
-
}, [q(r, { name: "i-lucide-x" })], 8,
|
|
46972
|
+
}, [q(r, { name: "i-lucide-x" })], 8, uq)]), K("div", dq, [(U(!0), W(H, null, B(g(t), (e) => (U(), W("div", {
|
|
46960
46973
|
key: e.key,
|
|
46961
46974
|
class: j(["limit-track", { "is-editing": e.editing }]),
|
|
46962
46975
|
onKeydown: (t) => ie(e, t),
|
|
@@ -46978,11 +46991,11 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46978
46991
|
}, [n[1] ||= K("div", {
|
|
46979
46992
|
class: "limit-selection",
|
|
46980
46993
|
"aria-hidden": "true"
|
|
46981
|
-
}, null, -1), K("div",
|
|
46994
|
+
}, null, -1), K("div", mq, [(U(!0), W(H, null, B(ce(e), (t) => (U(), W("span", {
|
|
46982
46995
|
key: t.index,
|
|
46983
46996
|
class: j(["limit-wheel-row", { "is-current": t.index === p(e) }]),
|
|
46984
46997
|
style: pe(t.style)
|
|
46985
|
-
}, P(t.text), 7))), 128))])], 8,
|
|
46998
|
+
}, P(t.text), 7))), 128))])], 8, pq), K("div", hq, [K("input", {
|
|
46986
46999
|
type: "number",
|
|
46987
47000
|
inputmode: "numeric",
|
|
46988
47001
|
min: e.min,
|
|
@@ -46996,27 +47009,27 @@ var vq = /*#__PURE__*/ MH({
|
|
|
46996
47009
|
onKeydown: fu(uu((n) => {
|
|
46997
47010
|
T(e), C(t, !1);
|
|
46998
47011
|
}, ["stop", "prevent"]), ["enter"])
|
|
46999
|
-
}, null, 40,
|
|
47012
|
+
}, null, 40, gq), K("span", _q, P(e.unit), 1)])], 42, fq))), 128))])])]),
|
|
47000
47013
|
default: L(() => [K("button", {
|
|
47001
47014
|
id: `limit-trigger-${t.key}`,
|
|
47002
47015
|
type: "button",
|
|
47003
47016
|
class: "limit-trigger",
|
|
47004
47017
|
disabled: t.unlimited,
|
|
47005
47018
|
"aria-label": `${t.label}:${t.unlimited ? "不限" : v(t)}`
|
|
47006
|
-
}, [t.unlimited ? (U(), W("span",
|
|
47019
|
+
}, [t.unlimited ? (U(), W("span", oq, "不限" + P(t.key === "rounds" ? "轮次" : "时长"), 1)) : (U(), W("span", sq, [(U(!0), W(H, null, B(v(t).match(/\d+ \S+/g), (e) => (U(), W("span", { key: e }, P(e), 1))), 128))])), q(r, { name: "i-lucide-chevrons-up-down" })], 8, aq)]),
|
|
47007
47020
|
_: 2
|
|
47008
47021
|
}, 1032, [
|
|
47009
47022
|
"open",
|
|
47010
47023
|
"content",
|
|
47011
47024
|
"ui",
|
|
47012
47025
|
"onUpdate:open"
|
|
47013
|
-
])]))), 128))], 10,
|
|
47026
|
+
])]))), 128))], 10, tq);
|
|
47014
47027
|
};
|
|
47015
47028
|
}
|
|
47016
|
-
}, [["__scopeId", "data-v-c7ed15d7"]]),
|
|
47029
|
+
}, [["__scopeId", "data-v-c7ed15d7"]]), bq = ["disabled"], xq = ["open"], Sq = {
|
|
47017
47030
|
class: "discussion-limits-rule",
|
|
47018
47031
|
"aria-live": "polite"
|
|
47019
|
-
},
|
|
47032
|
+
}, Cq = 60, wq = /*#__PURE__*/ MH({
|
|
47020
47033
|
__name: "DiscussionLimits",
|
|
47021
47034
|
props: {
|
|
47022
47035
|
rounds: {
|
|
@@ -47044,7 +47057,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47044
47057
|
],
|
|
47045
47058
|
setup(e, { expose: t, emit: n }) {
|
|
47046
47059
|
let r = e, i = n, a = /* @__PURE__ */ F(null), o = Z(() => {
|
|
47047
|
-
let e = [r.rounds && `${r.rounds} 轮`, r.minutes &&
|
|
47060
|
+
let e = [r.rounds && `${r.rounds} 轮`, r.minutes && vq(r.minutes)].filter(Boolean);
|
|
47048
47061
|
return e.length ? `最多 ${e.join(" 或 ")},${e.length === 2 ? "先到则" : "到限后"}暂停,由你决定追加轮次或结束。` : "不设轮次和时长上限。";
|
|
47049
47062
|
});
|
|
47050
47063
|
function s() {
|
|
@@ -47056,7 +47069,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47056
47069
|
class: "discussion-limits",
|
|
47057
47070
|
disabled: e.disabled
|
|
47058
47071
|
}, [
|
|
47059
|
-
q(
|
|
47072
|
+
q(yq, {
|
|
47060
47073
|
ref_key: "picker",
|
|
47061
47074
|
ref: a,
|
|
47062
47075
|
rounds: e.rounds,
|
|
@@ -47077,29 +47090,29 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47077
47090
|
"model-value": Number(e.execution_minutes) ? e.execution_minutes : "",
|
|
47078
47091
|
type: "number",
|
|
47079
47092
|
min: 0,
|
|
47080
|
-
max:
|
|
47093
|
+
max: Cq,
|
|
47081
47094
|
step: 1,
|
|
47082
47095
|
placeholder: "不限时长",
|
|
47083
47096
|
class: "w-40",
|
|
47084
47097
|
"onUpdate:modelValue": n[2] ||= (e) => i("update:execution_minutes", e)
|
|
47085
47098
|
}, null, 8, ["model-value"])]),
|
|
47086
47099
|
_: 1
|
|
47087
|
-
})], 8,
|
|
47100
|
+
})], 8, xq)) : Y("", !0),
|
|
47088
47101
|
V(t.$slots, "default", {}, void 0, !0),
|
|
47089
|
-
K("p",
|
|
47090
|
-
], 8,
|
|
47102
|
+
K("p", Sq, [q(c, { name: "i-lucide-flag" }), J(P(o.value), 1)])
|
|
47103
|
+
], 8, bq);
|
|
47091
47104
|
};
|
|
47092
47105
|
}
|
|
47093
|
-
}, [["__scopeId", "data-v-d1a3dff2"]]),
|
|
47106
|
+
}, [["__scopeId", "data-v-d1a3dff2"]]), Tq = { class: "effort-field" }, Eq = {
|
|
47094
47107
|
key: 0,
|
|
47095
47108
|
class: "effort-caption",
|
|
47096
47109
|
"aria-hidden": "true"
|
|
47097
|
-
},
|
|
47110
|
+
}, Dq = [
|
|
47098
47111
|
"aria-label",
|
|
47099
47112
|
"aria-valuemax",
|
|
47100
47113
|
"aria-valuenow",
|
|
47101
47114
|
"aria-valuetext"
|
|
47102
|
-
],
|
|
47115
|
+
], Oq = ["title"], kq = 4.5, Aq = 6, jq = 8, Mq = 1 / 240, Nq = .001, Pq = .01, Fq = .05, Iq = 10, Lq = 4, Rq = /*#__PURE__*/ MH({
|
|
47103
47116
|
__name: "EffortSlider",
|
|
47104
47117
|
props: {
|
|
47105
47118
|
items: {
|
|
@@ -47129,18 +47142,18 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47129
47142
|
pointer: null
|
|
47130
47143
|
}), l = Z(() => Math.min(o.value, Math.max(0, c.x)) / o.value), u = Z(() => Math.round(Math.min(o.value, Math.max(0, c.x)))), d = 0, f = 0, p = 0, m = 0, h = !1, g = (e) => Math.min(o.value, Math.max(0, e)), _ = (e, t, n) => -((2 * Math.PI * n) ** 2) * e - 4 * Math.PI * n * t;
|
|
47131
47144
|
function v(e) {
|
|
47132
|
-
let t = c.hand ?? c.target, n = c.hand === null ?
|
|
47145
|
+
let t = c.hand ?? c.target, n = c.hand === null ? kq : Aq, r = (e, r) => _(e - t, r, n) + (e < 0 || e > o.value ? _(e - g(e), r, jq) : 0), i = c.x, a = c.v, s = r(i, a), l = a + s * e / 2, u = r(i + a * e / 2, l), d = a + u * e / 2, f = r(i + l * e / 2, d), p = a + f * e, m = r(i + d * e, p);
|
|
47133
47146
|
c.x += e * (a + 2 * l + 2 * d + p) / 6, c.v += e * (s + 2 * u + 2 * f + m) / 6;
|
|
47134
47147
|
}
|
|
47135
47148
|
function y(e) {
|
|
47136
47149
|
d = 0;
|
|
47137
|
-
let t = Math.min(
|
|
47150
|
+
let t = Math.min(Fq, (e - f) / 1e3);
|
|
47138
47151
|
for (f = e; t > 0;) {
|
|
47139
|
-
let e = Math.min(
|
|
47152
|
+
let e = Math.min(Mq, t);
|
|
47140
47153
|
v(e), t -= e;
|
|
47141
47154
|
}
|
|
47142
47155
|
let n = c.hand ?? c.target;
|
|
47143
|
-
Math.abs(c.x - n) <
|
|
47156
|
+
Math.abs(c.x - n) < Nq && Math.abs(c.v) < Pq ? (c.x = n, c.v = 0) : d = requestAnimationFrame(y);
|
|
47144
47157
|
}
|
|
47145
47158
|
function b() {
|
|
47146
47159
|
i.value ? (cancelAnimationFrame(d), d = 0, c.x = c.hand ?? c.target, c.v = 0) : d ||= (f = performance.now(), requestAnimationFrame(y));
|
|
@@ -47150,17 +47163,17 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47150
47163
|
}
|
|
47151
47164
|
function S(e) {
|
|
47152
47165
|
let t = a.value.getBoundingClientRect();
|
|
47153
|
-
return g((e.clientX - t.left -
|
|
47166
|
+
return g((e.clientX - t.left - Iq) / Math.max(1, t.width - 20) * o.value);
|
|
47154
47167
|
}
|
|
47155
47168
|
function C(e) {
|
|
47156
47169
|
e.isPrimary && e.button === 0 && c.pointer === null && (e.preventDefault(), a.value.focus(), a.value.setPointerCapture(e.pointerId), c.pointer = e.pointerId, p = e.clientX, h = !1, m = e.target.closest(".effort-slider-thumb") ? c.x - S(e) : 0, c.hand = g(S(e) + m), b());
|
|
47157
47170
|
}
|
|
47158
47171
|
function w(e) {
|
|
47159
|
-
c.pointer === e.pointerId && (h ||= Math.abs(e.clientX - p) >
|
|
47172
|
+
c.pointer === e.pointerId && (h ||= Math.abs(e.clientX - p) > Lq, c.hand = g(S(e) + m), b());
|
|
47160
47173
|
}
|
|
47161
47174
|
function T(e) {
|
|
47162
47175
|
if (c.pointer !== e.pointerId) return;
|
|
47163
|
-
let t = h ? c.x + c.v / (4 * Math.PI *
|
|
47176
|
+
let t = h ? c.x + c.v / (4 * Math.PI * kq) : c.hand;
|
|
47164
47177
|
c.hand = null, c.pointer = null, x(t);
|
|
47165
47178
|
}
|
|
47166
47179
|
function ee(e) {
|
|
@@ -47183,7 +47196,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47183
47196
|
i
|
|
47184
47197
|
], () => {
|
|
47185
47198
|
c.target = s.value, b();
|
|
47186
|
-
}), ta(() => cancelAnimationFrame(d)), (t, n) => (U(), W("div",
|
|
47199
|
+
}), ta(() => cancelAnimationFrame(d)), (t, n) => (U(), W("div", Tq, [e.caption ? (U(), W("div", Eq, [K("span", null, P(e.caption), 1), q(Cc, {
|
|
47187
47200
|
name: I(i) ? "" : "effort-value",
|
|
47188
47201
|
mode: "out-in"
|
|
47189
47202
|
}, {
|
|
@@ -47221,59 +47234,59 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47221
47234
|
"aria-hidden": "true",
|
|
47222
47235
|
style: pe({ "--at": t / o.value }),
|
|
47223
47236
|
title: e.label
|
|
47224
|
-
}, null, 14,
|
|
47237
|
+
}, null, 14, Oq))), 128)),
|
|
47225
47238
|
n[1] ||= K("span", {
|
|
47226
47239
|
class: "effort-slider-thumb",
|
|
47227
47240
|
"aria-hidden": "true"
|
|
47228
47241
|
}, null, -1)
|
|
47229
|
-
], 46,
|
|
47242
|
+
], 46, Dq)]));
|
|
47230
47243
|
}
|
|
47231
|
-
}, [["__scopeId", "data-v-f27db748"]]),
|
|
47244
|
+
}, [["__scopeId", "data-v-f27db748"]]), zq = ["data-identity", "data-face"], Bq = ["inert", "aria-hidden"], Vq = { class: "expert-card-identity" }, Hq = {
|
|
47232
47245
|
key: 0,
|
|
47233
47246
|
class: "expert-card-badge"
|
|
47234
|
-
},
|
|
47247
|
+
}, Uq = { class: "expert-card-facts" }, Wq = ["title"], Gq = {
|
|
47235
47248
|
key: 0,
|
|
47236
47249
|
"aria-hidden": "true"
|
|
47237
|
-
},
|
|
47250
|
+
}, Kq = {
|
|
47238
47251
|
key: 0,
|
|
47239
47252
|
class: "expert-card-manual"
|
|
47240
|
-
},
|
|
47253
|
+
}, qq = { key: 0 }, Jq = {
|
|
47241
47254
|
key: 1,
|
|
47242
47255
|
class: "expert-card-flip"
|
|
47243
|
-
},
|
|
47256
|
+
}, Yq = ["aria-label"], Xq = [
|
|
47244
47257
|
"aria-checked",
|
|
47245
47258
|
"tabindex",
|
|
47246
47259
|
"data-mode",
|
|
47247
47260
|
"onClick"
|
|
47248
|
-
],
|
|
47261
|
+
], Zq = { class: "expert-card-tools" }, Qq = [
|
|
47249
47262
|
"aria-pressed",
|
|
47250
47263
|
"aria-label",
|
|
47251
47264
|
"title"
|
|
47252
|
-
],
|
|
47265
|
+
], $q = ["aria-label"], eJ = ["inert", "aria-hidden"], tJ = { class: "expert-card-back-body" }, nJ = { class: "expert-card-heading" }, rJ = ["role"], iJ = {
|
|
47253
47266
|
key: 1,
|
|
47254
47267
|
class: "expert-card-field"
|
|
47255
|
-
},
|
|
47268
|
+
}, aJ = {
|
|
47256
47269
|
key: 2,
|
|
47257
47270
|
class: "expert-card-field"
|
|
47258
|
-
},
|
|
47271
|
+
}, oJ = {
|
|
47259
47272
|
key: 3,
|
|
47260
47273
|
class: "expert-card-check"
|
|
47261
|
-
},
|
|
47274
|
+
}, sJ = {
|
|
47262
47275
|
key: 4,
|
|
47263
47276
|
class: "expert-card-field"
|
|
47264
|
-
},
|
|
47277
|
+
}, cJ = ["aria-label"], lJ = ["aria-checked", "onClick"], uJ = { class: "expert-card-field" }, dJ = {
|
|
47265
47278
|
key: 0,
|
|
47266
47279
|
class: "expert-card-catalog"
|
|
47267
|
-
},
|
|
47280
|
+
}, fJ = {
|
|
47268
47281
|
key: 1,
|
|
47269
47282
|
class: "expert-card-effort"
|
|
47270
|
-
},
|
|
47283
|
+
}, pJ = {
|
|
47271
47284
|
key: 2,
|
|
47272
47285
|
class: "expert-card-note"
|
|
47273
|
-
},
|
|
47286
|
+
}, mJ = ["aria-label", "disabled"], hJ = {
|
|
47274
47287
|
key: 7,
|
|
47275
47288
|
class: "expert-card-note"
|
|
47276
|
-
},
|
|
47289
|
+
}, gJ = { class: "expert-card-flip-actions" }, _J = ["aria-label"], vJ = ["aria-label"], yJ = 180, bJ = "[role='listbox'], [role='menu'], [data-reka-popper-content-wrapper]", xJ = /*#__PURE__*/ MH({
|
|
47277
47290
|
__name: "ExpertCard",
|
|
47278
47291
|
props: {
|
|
47279
47292
|
name: {
|
|
@@ -47426,7 +47439,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47426
47439
|
});
|
|
47427
47440
|
}
|
|
47428
47441
|
function ge(e) {
|
|
47429
|
-
let t = e >=
|
|
47442
|
+
let t = e >= yJ / 2;
|
|
47430
47443
|
f.value !== t && (f.value = t, he());
|
|
47431
47444
|
}
|
|
47432
47445
|
let _e = o.on("change", ge), M = o.on("animationComplete", he), ve = null, ye = "";
|
|
@@ -47458,12 +47471,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47458
47471
|
d.value && (e.stopPropagation(), e.preventDefault(), xe());
|
|
47459
47472
|
}
|
|
47460
47473
|
function we(e) {
|
|
47461
|
-
c.value?.contains(e.target) || e.target.closest?.(
|
|
47474
|
+
c.value?.contains(e.target) || e.target.closest?.(bJ) || be(!1);
|
|
47462
47475
|
}
|
|
47463
47476
|
return R(d, (e) => {
|
|
47464
47477
|
e ? document.addEventListener("pointerdown", we, !0) : document.removeEventListener("pointerdown", we, !0);
|
|
47465
47478
|
}), R([d, s], ([e, t]) => {
|
|
47466
|
-
let n = e ?
|
|
47479
|
+
let n = e ? yJ : 0;
|
|
47467
47480
|
t ? (o.jump(n), he()) : o.set(n);
|
|
47468
47481
|
}), R(() => [
|
|
47469
47482
|
te.value,
|
|
@@ -47509,7 +47522,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47509
47522
|
onClick: n[0] ||= (e) => be(!0)
|
|
47510
47523
|
}, {
|
|
47511
47524
|
default: L(() => [
|
|
47512
|
-
K("span",
|
|
47525
|
+
K("span", Vq, [
|
|
47513
47526
|
q(s, {
|
|
47514
47527
|
src: I(a).identities[e.name]?.icon,
|
|
47515
47528
|
text: I(a).identities[e.name]?.initials,
|
|
@@ -47523,14 +47536,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47523
47536
|
"class"
|
|
47524
47537
|
]),
|
|
47525
47538
|
K("strong", null, P(e.name), 1),
|
|
47526
|
-
e.host ? (U(), W("span",
|
|
47539
|
+
e.host ? (U(), W("span", Hq, "主持")) : Y("", !0)
|
|
47527
47540
|
]),
|
|
47528
|
-
K("dl",
|
|
47541
|
+
K("dl", Uq, [(U(!0), W(H, null, B(ue.value, (e) => (U(), W("div", { key: e.label }, [K("dt", null, P(e.label), 1), K("dd", {
|
|
47529
47542
|
class: j(e.tone ? ["expert-card-status", `is-${e.tone}`] : ""),
|
|
47530
47543
|
title: e.value
|
|
47531
|
-
}, [e.tone ? (U(), W("i",
|
|
47532
|
-
S.value ? (U(), W("div",
|
|
47533
|
-
E.value ? (U(), W("span",
|
|
47544
|
+
}, [e.tone ? (U(), W("i", Gq)) : Y("", !0), J(P(e.value), 1)], 10, Wq)]))), 128))]),
|
|
47545
|
+
S.value ? (U(), W("div", Kq, [n[9] ||= K("p", null, "会话自行注册后才算到场。", -1), w.value ? (U(), W("p", qq, P(w.value), 1)) : Y("", !0)])) : Y("", !0),
|
|
47546
|
+
E.value ? (U(), W("span", Jq, [q(d, { name: "i-lucide-settings-2" }), n[10] ||= J("设置", -1)])) : Y("", !0)
|
|
47534
47547
|
]),
|
|
47535
47548
|
_: 1
|
|
47536
47549
|
}, 8, [
|
|
@@ -47553,8 +47566,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47553
47566
|
tabindex: e.mode === t ? 0 : -1,
|
|
47554
47567
|
"data-mode": t,
|
|
47555
47568
|
onClick: (e) => r("mode", t)
|
|
47556
|
-
}, P(_[t]), 9,
|
|
47557
|
-
K("span",
|
|
47569
|
+
}, P(_[t]), 9, Xq))), 128))], 40, Yq)) : Y("", !0),
|
|
47570
|
+
K("span", Zq, [e.hostable ? (U(), W("button", {
|
|
47558
47571
|
key: 0,
|
|
47559
47572
|
type: "button",
|
|
47560
47573
|
class: "expert-card-host",
|
|
@@ -47562,19 +47575,19 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47562
47575
|
"aria-label": e.host ? `${e.name} 是主持人` : `设 ${e.name} 为主持人`,
|
|
47563
47576
|
title: e.host ? "主持人" : "设为主持人",
|
|
47564
47577
|
onClick: n[1] ||= (e) => r("host")
|
|
47565
|
-
}, [q(d, { name: "i-lucide-crown" })], 8,
|
|
47578
|
+
}, [q(d, { name: "i-lucide-crown" })], 8, Qq)) : Y("", !0), K("button", {
|
|
47566
47579
|
type: "button",
|
|
47567
47580
|
"aria-label": `移出 ${e.name}`,
|
|
47568
47581
|
title: "移出",
|
|
47569
47582
|
onClick: n[2] ||= (e) => r("remove")
|
|
47570
|
-
}, [q(d, { name: "i-lucide-x" })], 8,
|
|
47571
|
-
], 8,
|
|
47583
|
+
}, [q(d, { name: "i-lucide-x" })], 8, $q)])
|
|
47584
|
+
], 8, Bq), E.value ? (U(), W("div", {
|
|
47572
47585
|
key: 0,
|
|
47573
47586
|
class: "expert-card-face expert-card-back",
|
|
47574
47587
|
inert: !f.value,
|
|
47575
47588
|
"aria-hidden": !f.value
|
|
47576
|
-
}, [K("div",
|
|
47577
|
-
K("div",
|
|
47589
|
+
}, [K("div", tJ, [
|
|
47590
|
+
K("div", nJ, [K("strong", null, [J(P(e.name), 1), K("span", null, "设置" + P(oe.value ? " · 不访问项目" : ""), 1)]), v.value ? (U(), G(x, {
|
|
47578
47591
|
key: 0,
|
|
47579
47592
|
icon: "i-lucide-zap",
|
|
47580
47593
|
"aria-label": `检查 ${e.name} 的 API 配置`,
|
|
@@ -47595,8 +47608,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47595
47608
|
key: 0,
|
|
47596
47609
|
role: y.value.state === "error" ? "alert" : "status",
|
|
47597
47610
|
class: "expert-card-check"
|
|
47598
|
-
}, P(y.value.message), 9,
|
|
47599
|
-
g.value && m.value.length > 1 ? (U(), W("div",
|
|
47611
|
+
}, P(y.value.message), 9, rJ)) : Y("", !0),
|
|
47612
|
+
g.value && m.value.length > 1 ? (U(), W("div", iJ, [n[11] ||= K("span", null, "接入", -1), q(C, {
|
|
47600
47613
|
"model-value": p.value.adapter || "",
|
|
47601
47614
|
items: m.value,
|
|
47602
47615
|
placeholder: "选择 API / App / CLI",
|
|
@@ -47625,7 +47638,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47625
47638
|
"aria-label",
|
|
47626
47639
|
"onUpdate:modelValue"
|
|
47627
47640
|
])]))), 128)),
|
|
47628
|
-
T.value ? (U(), W("div",
|
|
47641
|
+
T.value ? (U(), W("div", aJ, [n[12] ||= K("span", null, "会话", -1), q(ee, {
|
|
47629
47642
|
"model-value": e.session,
|
|
47630
47643
|
placeholder: "续接已有会话 ID,留空则新建",
|
|
47631
47644
|
"aria-label": `${e.name} 要续接的已有会话 ID`,
|
|
@@ -47633,8 +47646,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47633
47646
|
class: "w-full",
|
|
47634
47647
|
"onUpdate:modelValue": n[4] ||= (e) => r("session", e)
|
|
47635
47648
|
}, null, 8, ["model-value", "aria-label"])])) : Y("", !0),
|
|
47636
|
-
T.value && e.session.trim() && w.value ? (U(), W("p",
|
|
47637
|
-
ae.value ? (U(), W("div",
|
|
47649
|
+
T.value && e.session.trim() && w.value ? (U(), W("p", oJ, P(w.value), 1)) : Y("", !0),
|
|
47650
|
+
ae.value ? (U(), W("div", sJ, [n[13] ||= K("span", null, "项目", -1), K("div", {
|
|
47638
47651
|
class: "expert-card-modes",
|
|
47639
47652
|
role: "radiogroup",
|
|
47640
47653
|
"aria-label": `${e.name} 的项目文件权限`
|
|
@@ -47650,12 +47663,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47650
47663
|
role: "radio",
|
|
47651
47664
|
"aria-checked": se.value === t.value,
|
|
47652
47665
|
onClick: (n) => I(a).write_launch(e.name, "project_access", t.value)
|
|
47653
|
-
}, P(t.label), 9,
|
|
47654
|
-
v.value ? (U(), G(
|
|
47666
|
+
}, P(t.label), 9, lJ)), 64))], 8, cJ)])) : Y("", !0),
|
|
47667
|
+
v.value ? (U(), G(LG, {
|
|
47655
47668
|
key: 5,
|
|
47656
47669
|
name: e.name
|
|
47657
47670
|
}, null, 8, ["name"])) : te.value && !me.value.length ? (U(), W(H, { key: 6 }, [
|
|
47658
|
-
K("div",
|
|
47671
|
+
K("div", uJ, [n[14] ||= K("span", null, "模型", -1), q(C, {
|
|
47659
47672
|
"model-value": p.value.model || "__default__",
|
|
47660
47673
|
items: O.value.items,
|
|
47661
47674
|
title: O.value.source,
|
|
@@ -47669,12 +47682,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47669
47682
|
"title",
|
|
47670
47683
|
"aria-label"
|
|
47671
47684
|
])]),
|
|
47672
|
-
O.value.loading || O.value.error ? (U(), W("div",
|
|
47685
|
+
O.value.loading || O.value.error ? (U(), W("div", dJ, [K("span", null, P(O.value.loading ? "正在读取软件模型列表…" : O.value.error), 1), !O.value.loading && O.value.error && I(i).launch.available ? (U(), W("button", {
|
|
47673
47686
|
key: 0,
|
|
47674
47687
|
type: "button",
|
|
47675
47688
|
onClick: n[6] ||= (t) => I(a).load_launch_models(e.name, !0)
|
|
47676
47689
|
}, "重试")) : Y("", !0)])) : Y("", !0),
|
|
47677
|
-
re.value ? (U(), W("div",
|
|
47690
|
+
re.value ? (U(), W("div", fJ, [q(Rq, {
|
|
47678
47691
|
caption: "强度",
|
|
47679
47692
|
items: re.value,
|
|
47680
47693
|
"model-value": p.value.effort || "",
|
|
@@ -47684,7 +47697,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47684
47697
|
"items",
|
|
47685
47698
|
"model-value",
|
|
47686
47699
|
"label"
|
|
47687
|
-
])])) : (U(), W("p",
|
|
47700
|
+
])])) : (U(), W("p", pJ, P(O.value.effort_note), 1)),
|
|
47688
47701
|
K("button", {
|
|
47689
47702
|
type: "button",
|
|
47690
47703
|
class: "expert-card-defaults",
|
|
@@ -47692,33 +47705,33 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47692
47705
|
"aria-label": `恢复 ${e.name} 的默认模型与强度`,
|
|
47693
47706
|
disabled: !p.value.model && !p.value.effort,
|
|
47694
47707
|
onClick: Se
|
|
47695
|
-
}, "恢复默认", 8,
|
|
47696
|
-
], 64)) : (U(), W("p",
|
|
47697
|
-
]), K("span",
|
|
47708
|
+
}, "恢复默认", 8, mJ)
|
|
47709
|
+
], 64)) : (U(), W("p", hJ, [q(d, { name: e.mode === "online" ? "i-lucide-globe" : "i-lucide-monitor" }, null, 8, ["name"]), J(P(ne.value), 1)]))
|
|
47710
|
+
]), K("span", gJ, [K("button", {
|
|
47698
47711
|
type: "button",
|
|
47699
47712
|
class: "expert-card-flip is-cancel",
|
|
47700
47713
|
"aria-label": `放弃 ${e.name} 的修改`,
|
|
47701
47714
|
onClick: xe
|
|
47702
|
-
}, "取消", 8,
|
|
47715
|
+
}, "取消", 8, _J), K("button", {
|
|
47703
47716
|
ref_key: "back_button",
|
|
47704
47717
|
ref: u,
|
|
47705
47718
|
type: "button",
|
|
47706
47719
|
class: "expert-card-flip is-done",
|
|
47707
47720
|
"aria-label": `保存并返回 ${e.name} 角色卡片`,
|
|
47708
47721
|
onClick: n[8] ||= (e) => be(!1)
|
|
47709
|
-
}, [q(d, { name: "i-lucide-check" }), n[15] ||= J("完成", -1)], 8,
|
|
47722
|
+
}, [q(d, { name: "i-lucide-check" }), n[15] ||= J("完成", -1)], 8, vJ)])], 8, eJ)) : Y("", !0)]),
|
|
47710
47723
|
_: 1
|
|
47711
|
-
}, 8, ["style"])], 42,
|
|
47724
|
+
}, 8, ["style"])], 42, zq);
|
|
47712
47725
|
};
|
|
47713
47726
|
}
|
|
47714
|
-
}, [["__scopeId", "data-v-e1a2ab87"]]),
|
|
47727
|
+
}, [["__scopeId", "data-v-e1a2ab87"]]), SJ = { class: "scheduler-settings" }, CJ = { class: "scheduler-title" }, wJ = {
|
|
47715
47728
|
key: 0,
|
|
47716
47729
|
class: "scheduler-cards"
|
|
47717
|
-
},
|
|
47730
|
+
}, TJ = { class: "scheduler-facts" }, EJ = ["title"], DJ = { class: "scheduler-flip" }, OJ = { class: "scheduler-back" }, kJ = { class: "scheduler-heading" }, AJ = { class: "scheduler-field" }, jJ = { class: "scheduler-field" }, MJ = { class: "scheduler-field" }, NJ = {
|
|
47718
47731
|
key: 0,
|
|
47719
47732
|
role: "alert",
|
|
47720
47733
|
class: "scheduler-error"
|
|
47721
|
-
},
|
|
47734
|
+
}, PJ = ["role"], FJ = { class: "scheduler-flip-actions" }, IJ = "••••••••••••", LJ = /*#__PURE__*/ MH({
|
|
47722
47735
|
__name: "SchedulerSettings",
|
|
47723
47736
|
props: {
|
|
47724
47737
|
free: {
|
|
@@ -47814,14 +47827,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47814
47827
|
}
|
|
47815
47828
|
}
|
|
47816
47829
|
return (t, f) => {
|
|
47817
|
-
let x = WV, S =
|
|
47818
|
-
return U(), W("div",
|
|
47830
|
+
let x = WV, S = eq, C = sA, w = MA, T = bH, ee = OG, E = YV;
|
|
47831
|
+
return U(), W("div", SJ, [q(S, {
|
|
47819
47832
|
"model-value": !!i.value.enabled && !e.blocker,
|
|
47820
47833
|
disabled: !!e.blocker,
|
|
47821
47834
|
description: e.blocker ? `${y.value}(${e.blocker})` : y.value,
|
|
47822
47835
|
"onUpdate:modelValue": f[0] ||= (e) => I(r).write_scheduler("enabled", e)
|
|
47823
47836
|
}, {
|
|
47824
|
-
label: L(() => [K("span",
|
|
47837
|
+
label: L(() => [K("span", CJ, [
|
|
47825
47838
|
f[7] ||= J("智能调度", -1),
|
|
47826
47839
|
q(x, {
|
|
47827
47840
|
size: "xs",
|
|
@@ -47838,8 +47851,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47838
47851
|
"model-value",
|
|
47839
47852
|
"disabled",
|
|
47840
47853
|
"description"
|
|
47841
|
-
]), i.value.enabled && !e.blocker ? (U(), W("div",
|
|
47842
|
-
K("div",
|
|
47854
|
+
]), i.value.enabled && !e.blocker ? (U(), W("div", wJ, [K("div", { class: j(["scheduler-card", { "is-editing": d.value }]) }, [d.value ? (U(), W(H, { key: 1 }, [K("div", OJ, [
|
|
47855
|
+
K("div", kJ, [f[15] ||= K("strong", null, [J("决策模型"), K("span", null, "设置")], -1), q(w, {
|
|
47843
47856
|
icon: "i-lucide-zap",
|
|
47844
47857
|
"aria-label": "检查智能调度配置",
|
|
47845
47858
|
title: "检查配置:向决策模型发送一道极短的是非题,核对供应商、模型与密钥",
|
|
@@ -47854,7 +47867,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47854
47867
|
"loading",
|
|
47855
47868
|
"disabled"
|
|
47856
47869
|
])]),
|
|
47857
|
-
K("div",
|
|
47870
|
+
K("div", AJ, [f[16] ||= K("span", null, "供应商", -1), q(T, {
|
|
47858
47871
|
"model-value": i.value.provider || "",
|
|
47859
47872
|
items: a.value,
|
|
47860
47873
|
"aria-label": "智能调度供应商",
|
|
@@ -47862,7 +47875,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47862
47875
|
class: "w-full",
|
|
47863
47876
|
"onUpdate:modelValue": f[1] ||= (e) => I(r).write_scheduler("provider", e)
|
|
47864
47877
|
}, null, 8, ["model-value", "items"])]),
|
|
47865
|
-
K("div",
|
|
47878
|
+
K("div", jJ, [f[17] ||= K("span", null, "模型", -1), q(ee, {
|
|
47866
47879
|
mode: "autocomplete",
|
|
47867
47880
|
"ignore-filter": "",
|
|
47868
47881
|
"model-value": i.value.model || "",
|
|
@@ -47874,7 +47887,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47874
47887
|
class: "w-full",
|
|
47875
47888
|
"onUpdate:modelValue": f[2] ||= (e) => I(r).write_scheduler("model", e)
|
|
47876
47889
|
}, null, 8, ["model-value", "items"])]),
|
|
47877
|
-
K("div",
|
|
47890
|
+
K("div", MJ, [f[18] ||= K("span", null, "密钥", -1), q(E, {
|
|
47878
47891
|
modelValue: s.value,
|
|
47879
47892
|
"onUpdate:modelValue": f[4] ||= (e) => s.value = e,
|
|
47880
47893
|
type: "text",
|
|
@@ -47882,7 +47895,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47882
47895
|
spellcheck: "false",
|
|
47883
47896
|
"data-1p-ignore": "",
|
|
47884
47897
|
"data-lpignore": "true",
|
|
47885
|
-
placeholder: i.value.api_key_ref ?
|
|
47898
|
+
placeholder: i.value.api_key_ref ? IJ : "填写所选供应商的 API Key",
|
|
47886
47899
|
title: i.value.api_key_ref && !s.value ? "已保存;本机不回传密钥,输入新 Key 可更换" : void 0,
|
|
47887
47900
|
"aria-label": "智能调度 API Key",
|
|
47888
47901
|
size: "xs",
|
|
@@ -47917,14 +47930,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47917
47930
|
"loading",
|
|
47918
47931
|
"ui"
|
|
47919
47932
|
])]),
|
|
47920
|
-
u.value ? (U(), W("p",
|
|
47933
|
+
u.value ? (U(), W("p", NJ, P(u.value), 1)) : Y("", !0),
|
|
47921
47934
|
_.value.message ? (U(), W("p", {
|
|
47922
47935
|
key: 1,
|
|
47923
47936
|
role: _.value.state === "error" ? "alert" : "status",
|
|
47924
47937
|
class: j(_.value.state === "error" ? "scheduler-error" : "scheduler-ok")
|
|
47925
|
-
}, P(_.value.message), 11,
|
|
47938
|
+
}, P(_.value.message), 11, PJ)) : Y("", !0),
|
|
47926
47939
|
f[19] ||= K("p", { class: "scheduler-note" }, "决策模型只做选择、不生成文本,只按输入计费。判断时会把房间标题和最近 10 条消息发给所选供应商;密钥只存本机。", -1)
|
|
47927
|
-
]), K("span",
|
|
47940
|
+
]), K("span", FJ, [K("button", {
|
|
47928
47941
|
type: "button",
|
|
47929
47942
|
class: "scheduler-flip is-cancel",
|
|
47930
47943
|
"aria-label": "放弃决策模型的修改",
|
|
@@ -47943,46 +47956,46 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47943
47956
|
onClick: p
|
|
47944
47957
|
}, [
|
|
47945
47958
|
f[14] ||= K("strong", null, "决策模型", -1),
|
|
47946
|
-
K("dl",
|
|
47959
|
+
K("dl", TJ, [
|
|
47947
47960
|
K("div", null, [f[10] ||= K("dt", null, "状态", -1), K("dd", { class: j(`is-${g.value.tone}`) }, [f[9] ||= K("i", { "aria-hidden": "true" }, null, -1), J(P(g.value.text), 1)], 2)]),
|
|
47948
47961
|
K("div", null, [f[11] ||= K("dt", null, "供应商", -1), K("dd", null, P(h.value), 1)]),
|
|
47949
|
-
K("div", null, [f[12] ||= K("dt", null, "模型", -1), K("dd", { title: i.value.model }, P(i.value.model || "未选择"), 9,
|
|
47962
|
+
K("div", null, [f[12] ||= K("dt", null, "模型", -1), K("dd", { title: i.value.model }, P(i.value.model || "未选择"), 9, EJ)])
|
|
47950
47963
|
]),
|
|
47951
|
-
K("span",
|
|
47964
|
+
K("span", DJ, [q(C, { name: "i-lucide-settings-2" }), f[13] ||= J("设置", -1)])
|
|
47952
47965
|
]))], 2)])) : Y("", !0)]);
|
|
47953
47966
|
};
|
|
47954
47967
|
}
|
|
47955
|
-
}, [["__scopeId", "data-v-6b186313"]]),
|
|
47968
|
+
}, [["__scopeId", "data-v-6b186313"]]), RJ = { class: "create-discussion" }, zJ = {
|
|
47956
47969
|
key: 0,
|
|
47957
47970
|
class: "create-connect",
|
|
47958
47971
|
role: "status"
|
|
47959
|
-
},
|
|
47972
|
+
}, BJ = { class: "create-connect-command" }, VJ = {
|
|
47960
47973
|
key: 1,
|
|
47961
47974
|
class: "channel-create-location"
|
|
47962
|
-
},
|
|
47975
|
+
}, HJ = { class: "create-section" }, UJ = { class: "create-section" }, WJ = {
|
|
47963
47976
|
key: 0,
|
|
47964
47977
|
class: "fine-print create-hint"
|
|
47965
|
-
},
|
|
47978
|
+
}, GJ = [
|
|
47979
|
+
"disabled",
|
|
47980
|
+
"title",
|
|
47981
|
+
"aria-label",
|
|
47982
|
+
"onClick"
|
|
47983
|
+
], KJ = {
|
|
47966
47984
|
key: 1,
|
|
47967
47985
|
class: "create-experts",
|
|
47968
47986
|
role: "group",
|
|
47969
47987
|
"aria-label": "参与的 AI"
|
|
47970
|
-
},
|
|
47988
|
+
}, qJ = {
|
|
47971
47989
|
key: 2,
|
|
47972
47990
|
class: "create-experts-empty"
|
|
47973
|
-
},
|
|
47974
|
-
"disabled",
|
|
47975
|
-
"title",
|
|
47976
|
-
"aria-label",
|
|
47977
|
-
"onClick"
|
|
47978
|
-
], qJ = {
|
|
47991
|
+
}, JJ = {
|
|
47979
47992
|
key: 3,
|
|
47980
47993
|
class: "fine-print create-hint create-host-hint"
|
|
47981
|
-
},
|
|
47994
|
+
}, YJ = { class: "create-section" }, XJ = { class: "create-footer" }, ZJ = {
|
|
47982
47995
|
key: 0,
|
|
47983
47996
|
role: "alert",
|
|
47984
47997
|
class: "create-error"
|
|
47985
|
-
},
|
|
47998
|
+
}, QJ = { class: "create-footer-row" }, $J = ["title"], eY = "new-expert-modes", tY = 3e3, nY = /*#__PURE__*/ MH({
|
|
47986
47999
|
__name: "CreateDiscussion",
|
|
47987
48000
|
props: { targetFolder: {
|
|
47988
48001
|
type: Object,
|
|
@@ -47990,7 +48003,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
47990
48003
|
} },
|
|
47991
48004
|
emits: ["submit", "cancel"],
|
|
47992
48005
|
setup(e, { emit: t }) {
|
|
47993
|
-
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[
|
|
48006
|
+
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[eY] || {}), p = /* @__PURE__ */ F([]), m = Z(() => Object.keys(f.value).filter((e) => f.value[e]));
|
|
47994
48007
|
R(m, (e) => {
|
|
47995
48008
|
p.value = [...p.value.filter((t) => e.includes(t)), ...e.filter((e) => !p.value.includes(e))];
|
|
47996
48009
|
}, { immediate: !0 });
|
|
@@ -48013,14 +48026,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48013
48026
|
Qi(() => {
|
|
48014
48027
|
ae(), re = window.setInterval(() => {
|
|
48015
48028
|
ne.value && !document.hidden && o("check_launch_connection");
|
|
48016
|
-
},
|
|
48029
|
+
}, tY);
|
|
48017
48030
|
}), ta(() => window.clearInterval(re));
|
|
48018
48031
|
function oe(e) {
|
|
48019
48032
|
i.write_create_discussion(e), Qn(ae);
|
|
48020
48033
|
}
|
|
48021
48034
|
let k = (e) => i.launch_clients[e]?.some((e) => e.value !== "api"), se = (e) => d.value && e === v.value ? [] : ["cli", "manual"];
|
|
48022
48035
|
function ce(e, t) {
|
|
48023
|
-
t === "cli" && !k(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), i.write_expert(
|
|
48036
|
+
t === "cli" && !k(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), i.write_expert(eY, e, t), ae();
|
|
48024
48037
|
}
|
|
48025
48038
|
function le(e) {
|
|
48026
48039
|
if (f.value[e] === "online") return {
|
|
@@ -48044,7 +48057,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48044
48057
|
return g(e) ? `已加入 ${g(e)} 位 · 可继续添加` : k(e) ? "API / 本地 App / CLI / 手动启动" : "API / 手动启动";
|
|
48045
48058
|
}
|
|
48046
48059
|
function de(e) {
|
|
48047
|
-
i.launch_clients[e] && (!k(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), g(e) ? i.add_instance(
|
|
48060
|
+
i.launch_clients[e] && (!k(e) && !r.value.launch.profiles[e]?.adapter && i.write_launch(e, "adapter", "api"), g(e) ? i.add_instance(eY, e, "cli") : ce(e, "cli"), ae());
|
|
48048
48061
|
}
|
|
48049
48062
|
function fe(e) {
|
|
48050
48063
|
ce(e, ""), Qn(() => _.value?.querySelector("button:not(:disabled)")?.focus({ preventScroll: !0 }));
|
|
@@ -48069,26 +48082,26 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48069
48082
|
];
|
|
48070
48083
|
if (d.value) {
|
|
48071
48084
|
let e = l("limit-max_rounds"), n = l("limit-max_minutes");
|
|
48072
|
-
t.push("开启讨论", [e && Number(e) ? `${e} 轮` : "不限轮次", n && Number(n) ?
|
|
48085
|
+
t.push("开启讨论", [e && Number(e) ? `${e} 轮` : "不限轮次", n && Number(n) ? vq(Number(n)) : "不限时长"].join(" / "));
|
|
48073
48086
|
}
|
|
48074
48087
|
return t.join(" · ");
|
|
48075
48088
|
});
|
|
48076
48089
|
return (t, c) => {
|
|
48077
|
-
let p = sA, m = MA, g = YV, x = zV, C = pA, w =
|
|
48078
|
-
return U(), W("div",
|
|
48090
|
+
let p = sA, m = MA, g = YV, x = zV, C = pA, w = eq, E = HV;
|
|
48091
|
+
return U(), W("div", RJ, [K("form", {
|
|
48079
48092
|
id: "create-discussion-form",
|
|
48080
48093
|
class: "create-scroll dialog-form",
|
|
48081
48094
|
onSubmit: uu(me, ["prevent"])
|
|
48082
48095
|
}, [
|
|
48083
|
-
ne.value ? (U(), W("div",
|
|
48096
|
+
ne.value ? (U(), W("div", zJ, [K("p", null, [q(p, { name: "i-lucide-plug-zap" }), c[10] ||= J("本机服务未连接,连接后才能唤醒本机 AI。在运行 AI 的电脑上执行下面的命令并完成网页授权,连上后自动检测。", -1)]), K("div", BJ, [K("code", null, P(I(r).launch.connect_command), 1), q(m, {
|
|
48084
48097
|
icon: "i-lucide-copy",
|
|
48085
48098
|
"aria-label": "复制本机连接命令",
|
|
48086
48099
|
variant: "ghost",
|
|
48087
48100
|
color: "neutral",
|
|
48088
48101
|
onClick: c[0] ||= (e) => I(o)("copy", I(r).launch.connect_command)
|
|
48089
48102
|
})])])) : Y("", !0),
|
|
48090
|
-
e.targetFolder?.id ? (U(), W("p",
|
|
48091
|
-
K("section",
|
|
48103
|
+
e.targetFolder?.id ? (U(), W("p", VJ, [q(p, { name: "i-lucide-folder" }), J(P(e.targetFolder.name), 1)])) : Y("", !0),
|
|
48104
|
+
K("section", HJ, [
|
|
48092
48105
|
c[11] ||= K("h3", null, [K("span", null, "1"), J("这次做什么")], -1),
|
|
48093
48106
|
q(x, {
|
|
48094
48107
|
label: "话题名称",
|
|
@@ -48133,32 +48146,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48133
48146
|
_: 1
|
|
48134
48147
|
}, 8, ["description"])
|
|
48135
48148
|
]),
|
|
48136
|
-
K("section",
|
|
48149
|
+
K("section", UJ, [
|
|
48137
48150
|
c[13] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
|
|
48138
|
-
h.value.length ? (U(), W("p",
|
|
48139
|
-
h.value.length ? (U(), W("div", WJ, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(bJ, {
|
|
48140
|
-
key: e,
|
|
48141
|
-
name: e,
|
|
48142
|
-
mode: f.value[e],
|
|
48143
|
-
choices: se(e),
|
|
48144
|
-
status: le(e),
|
|
48145
|
-
host: v.value === e,
|
|
48146
|
-
hostable: y.value.includes(e),
|
|
48147
|
-
hosting: "",
|
|
48148
|
-
onHost: (t) => u("host", e),
|
|
48149
|
-
onRemove: (t) => fe(e),
|
|
48150
|
-
onMode: (t) => ce(e, t)
|
|
48151
|
-
}, null, 8, [
|
|
48152
|
-
"name",
|
|
48153
|
-
"mode",
|
|
48154
|
-
"choices",
|
|
48155
|
-
"status",
|
|
48156
|
-
"host",
|
|
48157
|
-
"hostable",
|
|
48158
|
-
"onHost",
|
|
48159
|
-
"onRemove",
|
|
48160
|
-
"onMode"
|
|
48161
|
-
]))), 128))])) : (U(), W("p", GJ, "可以先不添加成员,建房后再邀请。同一平台可添加多位,各自独立会话。")),
|
|
48151
|
+
h.value.length ? (U(), W("p", WJ, "每位成员可选本机唤醒,或手动(你来启动或代发,网页 AI 选手动)。")) : Y("", !0),
|
|
48162
48152
|
K("div", {
|
|
48163
48153
|
ref_key: "library",
|
|
48164
48154
|
ref: _,
|
|
@@ -48187,14 +48177,37 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48187
48177
|
]),
|
|
48188
48178
|
J(P(e), 1),
|
|
48189
48179
|
q(p, { name: "i-lucide-plus" })
|
|
48190
|
-
], 8,
|
|
48191
|
-
h.value.length ? (U(), W("div",
|
|
48192
|
-
|
|
48180
|
+
], 8, GJ))), 128))], 512),
|
|
48181
|
+
h.value.length ? (U(), W("div", KJ, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(xJ, {
|
|
48182
|
+
key: e,
|
|
48183
|
+
name: e,
|
|
48184
|
+
mode: f.value[e],
|
|
48185
|
+
choices: se(e),
|
|
48186
|
+
status: le(e),
|
|
48187
|
+
host: v.value === e,
|
|
48188
|
+
hostable: y.value.includes(e),
|
|
48189
|
+
hosting: "",
|
|
48190
|
+
onHost: (t) => u("host", e),
|
|
48191
|
+
onRemove: (t) => fe(e),
|
|
48192
|
+
onMode: (t) => ce(e, t)
|
|
48193
|
+
}, null, 8, [
|
|
48194
|
+
"name",
|
|
48195
|
+
"mode",
|
|
48196
|
+
"choices",
|
|
48197
|
+
"status",
|
|
48198
|
+
"host",
|
|
48199
|
+
"hostable",
|
|
48200
|
+
"onHost",
|
|
48201
|
+
"onRemove",
|
|
48202
|
+
"onMode"
|
|
48203
|
+
]))), 128))])) : (U(), W("p", qJ, "可以先不添加成员,建房后再邀请。同一平台可添加多位,各自独立会话。")),
|
|
48204
|
+
h.value.length ? (U(), W("div", JJ, [q(p, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "需要一位本地 AI 做主持人,没 @ 的消息才有人接。"), 1)])) : Y("", !0),
|
|
48205
|
+
q(LJ, {
|
|
48193
48206
|
free: !0,
|
|
48194
48207
|
blocker: O.value
|
|
48195
48208
|
}, null, 8, ["blocker"])
|
|
48196
48209
|
]),
|
|
48197
|
-
K("section",
|
|
48210
|
+
K("section", YJ, [
|
|
48198
48211
|
c[14] ||= K("h3", null, [K("span", null, "3"), J("推进方式(可选)")], -1),
|
|
48199
48212
|
q(w, {
|
|
48200
48213
|
"model-value": d.value,
|
|
@@ -48217,7 +48230,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48217
48230
|
"onUpdate:modelValue": c[4] ||= (e) => u("goal", e)
|
|
48218
48231
|
}, null, 8, ["model-value"])]),
|
|
48219
48232
|
_: 1
|
|
48220
|
-
}), q(
|
|
48233
|
+
}), q(wq, {
|
|
48221
48234
|
ref_key: "limit_picker",
|
|
48222
48235
|
ref: b,
|
|
48223
48236
|
rounds: Number(l("limit-max_rounds")),
|
|
@@ -48240,7 +48253,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48240
48253
|
"execution_minutes"
|
|
48241
48254
|
])], 64)) : Y("", !0)
|
|
48242
48255
|
])
|
|
48243
|
-
], 32), K("footer",
|
|
48256
|
+
], 32), K("footer", XJ, [T.value && I(r).launch.error ? (U(), W("p", ZJ, P(I(r).launch.error), 1)) : Y("", !0), K("div", QJ, [
|
|
48244
48257
|
K("span", {
|
|
48245
48258
|
class: j(["create-summary", { "is-blocked": ie.value }]),
|
|
48246
48259
|
title: ie.value || he.value,
|
|
@@ -48248,7 +48261,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48248
48261
|
}, [ie.value ? (U(), G(p, {
|
|
48249
48262
|
key: 0,
|
|
48250
48263
|
name: "i-lucide-circle-alert"
|
|
48251
|
-
})) : Y("", !0), J(P(ie.value ? `还差:${ie.value}` : h.value.length || d.value ? he.value : ""), 1)], 10,
|
|
48264
|
+
})) : Y("", !0), J(P(ie.value ? `还差:${ie.value}` : h.value.length || d.value ? he.value : ""), 1)], 10, $J),
|
|
48252
48265
|
q(m, {
|
|
48253
48266
|
label: "取消",
|
|
48254
48267
|
color: "neutral",
|
|
@@ -48272,46 +48285,46 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48272
48285
|
])])]);
|
|
48273
48286
|
};
|
|
48274
48287
|
}
|
|
48275
|
-
}, [["__scopeId", "data-v-
|
|
48288
|
+
}, [["__scopeId", "data-v-e3d9b738"]]), rY = {
|
|
48276
48289
|
class: "account-settings",
|
|
48277
48290
|
"aria-labelledby": "account-heading"
|
|
48278
|
-
},
|
|
48291
|
+
}, iY = {
|
|
48279
48292
|
key: 0,
|
|
48280
48293
|
class: "fine-print",
|
|
48281
48294
|
role: "status"
|
|
48282
|
-
},
|
|
48295
|
+
}, aY = ["aria-label"], oY = { class: "fine-print account-intro" }, sY = {
|
|
48283
48296
|
key: 0,
|
|
48284
48297
|
class: "account-message is-error",
|
|
48285
48298
|
role: "status"
|
|
48286
|
-
}, sY = {
|
|
48287
|
-
key: 1,
|
|
48288
|
-
class: "fine-print"
|
|
48289
48299
|
}, cY = {
|
|
48290
48300
|
key: 1,
|
|
48291
48301
|
class: "fine-print"
|
|
48292
48302
|
}, lY = {
|
|
48303
|
+
key: 1,
|
|
48304
|
+
class: "fine-print"
|
|
48305
|
+
}, uY = {
|
|
48293
48306
|
key: 2,
|
|
48294
48307
|
class: "account-message is-error",
|
|
48295
48308
|
role: "alert"
|
|
48296
|
-
},
|
|
48309
|
+
}, dY = {
|
|
48297
48310
|
key: 3,
|
|
48298
48311
|
class: "account-message",
|
|
48299
48312
|
role: "status"
|
|
48300
|
-
},
|
|
48313
|
+
}, fY = { class: "account-actions" }, pY = {
|
|
48301
48314
|
key: 2,
|
|
48302
48315
|
class: "account-profile"
|
|
48303
|
-
},
|
|
48316
|
+
}, mY = { class: "account-identity" }, hY = { class: "account-avatar-actions" }, gY = { class: "account-actions" }, _Y = {
|
|
48304
48317
|
key: 0,
|
|
48305
48318
|
class: "account-message is-error",
|
|
48306
48319
|
role: "alert"
|
|
48307
|
-
},
|
|
48320
|
+
}, vY = {
|
|
48308
48321
|
key: 1,
|
|
48309
48322
|
class: "account-message",
|
|
48310
48323
|
role: "status"
|
|
48311
|
-
},
|
|
48324
|
+
}, yY = {
|
|
48312
48325
|
key: 2,
|
|
48313
48326
|
class: "account-signout account-actions"
|
|
48314
|
-
},
|
|
48327
|
+
}, bY = {
|
|
48315
48328
|
__name: "AccountSettings",
|
|
48316
48329
|
setup(e) {
|
|
48317
48330
|
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({
|
|
@@ -48379,13 +48392,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48379
48392
|
}
|
|
48380
48393
|
return (e, t) => {
|
|
48381
48394
|
let p = YV, y = zV, b = MA, x = pA;
|
|
48382
|
-
return U(), W("section",
|
|
48395
|
+
return U(), W("section", rY, [t[8] ||= K("h3", { id: "account-heading" }, "账号", -1), a.value === "loading" ? (U(), W("p", iY, "正在读取账号状态…")) : a.value === "register" || a.value === "login" ? (U(), W("form", {
|
|
48383
48396
|
key: 1,
|
|
48384
48397
|
class: "dialog-form account-form",
|
|
48385
48398
|
"aria-label": a.value === "register" ? "设置管理员账号" : "登录管理员账号",
|
|
48386
48399
|
onSubmit: uu(m, ["prevent"])
|
|
48387
48400
|
}, [
|
|
48388
|
-
K("p",
|
|
48401
|
+
K("p", oY, [a.value === "register" ? (U(), W(H, { key: 0 }, [J("设置站点管理员账号:名称和头像对所有访客可见,登录后可在没有房间凭据的浏览器中存档、恢复、删除房间。")], 64)) : (U(), W(H, { key: 1 }, [J("登录后可管理房间;未登录时仍可阅读并使用本浏览器创建的房间。")], 64))]),
|
|
48389
48402
|
q(y, {
|
|
48390
48403
|
label: "用户名",
|
|
48391
48404
|
description: a.value === "register" ? "1–30 个字符,也是公开显示的名称" : void 0,
|
|
@@ -48452,18 +48465,18 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48452
48465
|
}, null, 8, ["modelValue", "disabled"])]),
|
|
48453
48466
|
_: 1
|
|
48454
48467
|
}),
|
|
48455
|
-
f.value ? (U(), W("p",
|
|
48468
|
+
f.value ? (U(), W("p", sY, "服务端未配置安装令牌,暂时无法注册。本地版请设置环境变量 DISCUSS_ADMIN_SETUP_KEY 后重启;Cloudflare 版请配置部署机密 ADMIN_SETUP_KEY。")) : (U(), W("p", cY, [...t[6] ||= [
|
|
48456
48469
|
J("首个注册者需要安装令牌,防止他人抢注。本地版见服务端启动日志;Cloudflare 版为部署机密 ADMIN_SETUP_KEY。忘记密码:本地版运行 ", -1),
|
|
48457
48470
|
K("code", null, "python server.py --reset-admin", -1),
|
|
48458
48471
|
J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
|
|
48459
48472
|
]]))
|
|
48460
|
-
], 64)) : (U(), W("p",
|
|
48473
|
+
], 64)) : (U(), W("p", lY, [...t[7] ||= [
|
|
48461
48474
|
J("忘记密码:本地版运行 ", -1),
|
|
48462
48475
|
K("code", null, "python server.py --reset-admin", -1),
|
|
48463
48476
|
J(" 后重新注册;Cloudflare 版需清空管理员表(见部署文档)。", -1)
|
|
48464
48477
|
]])),
|
|
48465
|
-
s.auth.error ? (U(), W("p",
|
|
48466
|
-
K("div",
|
|
48478
|
+
s.auth.error ? (U(), W("p", uY, P(s.auth.error), 1)) : s.auth.notice ? (U(), W("p", dY, P(s.auth.notice), 1)) : Y("", !0),
|
|
48479
|
+
K("div", fY, [q(b, {
|
|
48467
48480
|
type: "submit",
|
|
48468
48481
|
class: "channel-primary-button",
|
|
48469
48482
|
label: a.value === "register" ? "创建并登录" : "登录",
|
|
@@ -48474,13 +48487,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48474
48487
|
"loading",
|
|
48475
48488
|
"disabled"
|
|
48476
48489
|
])])
|
|
48477
|
-
], 40,
|
|
48478
|
-
K("div",
|
|
48490
|
+
], 40, aY)) : (U(), W("div", pY, [
|
|
48491
|
+
K("div", mY, [q(x, {
|
|
48479
48492
|
src: I(n).identities.用户.icon,
|
|
48480
48493
|
alt: `${I(n).display_name("用户")} 的头像`,
|
|
48481
48494
|
size: "lg",
|
|
48482
48495
|
class: "channel-avatar user account-avatar"
|
|
48483
|
-
}, null, 8, ["src", "alt"]), K("div",
|
|
48496
|
+
}, null, 8, ["src", "alt"]), K("div", hY, [
|
|
48484
48497
|
K("input", {
|
|
48485
48498
|
ref_key: "avatar_input",
|
|
48486
48499
|
ref: u,
|
|
@@ -48528,7 +48541,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48528
48541
|
"aria-label": "显示名称"
|
|
48529
48542
|
}, null, 8, ["modelValue"])]),
|
|
48530
48543
|
_: 1
|
|
48531
|
-
}), K("div",
|
|
48544
|
+
}), K("div", gY, [q(b, {
|
|
48532
48545
|
type: "submit",
|
|
48533
48546
|
label: "保存名称",
|
|
48534
48547
|
color: "neutral",
|
|
@@ -48537,8 +48550,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48537
48550
|
loading: o.value === "name",
|
|
48538
48551
|
disabled: !!o.value || !d.value || !l.value.trim()
|
|
48539
48552
|
}, null, 8, ["loading", "disabled"])])], 32),
|
|
48540
|
-
s.profile.error ? (U(), W("p",
|
|
48541
|
-
r.value.local ? Y("", !0) : (U(), W("div",
|
|
48553
|
+
s.profile.error ? (U(), W("p", _Y, P(s.profile.error), 1)) : s.profile.notice ? (U(), W("p", vY, P(s.profile.notice), 1)) : Y("", !0),
|
|
48554
|
+
r.value.local ? Y("", !0) : (U(), W("div", yY, [q(b, {
|
|
48542
48555
|
label: "退出登录",
|
|
48543
48556
|
icon: "i-lucide-log-out",
|
|
48544
48557
|
color: "neutral",
|
|
@@ -48551,65 +48564,65 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48551
48564
|
]))]);
|
|
48552
48565
|
};
|
|
48553
48566
|
}
|
|
48554
|
-
},
|
|
48567
|
+
}, xY = {
|
|
48555
48568
|
key: 0,
|
|
48556
48569
|
class: "channel-archive-manager"
|
|
48557
|
-
},
|
|
48570
|
+
}, SY = { class: "channel-archive-toolbar" }, CY = {
|
|
48558
48571
|
key: 0,
|
|
48559
48572
|
class: "channel-archive-confirm channel-archive-bulk",
|
|
48560
48573
|
role: "alert"
|
|
48561
|
-
},
|
|
48574
|
+
}, wY = {
|
|
48562
48575
|
key: 1,
|
|
48563
48576
|
role: "alert",
|
|
48564
48577
|
class: "channel-directory-error"
|
|
48565
|
-
},
|
|
48578
|
+
}, TY = { class: "channel-archive-results" }, EY = {
|
|
48566
48579
|
key: 0,
|
|
48567
48580
|
class: "channel-archive-list",
|
|
48568
48581
|
"aria-label": "已存档房间列表"
|
|
48569
|
-
},
|
|
48582
|
+
}, DY = { class: "channel-archive-row" }, OY = { class: "channel-archive-info" }, kY = [
|
|
48570
48583
|
"title",
|
|
48571
48584
|
"disabled",
|
|
48572
48585
|
"onClick"
|
|
48573
|
-
],
|
|
48586
|
+
], AY = { key: 0 }, jY = ["datetime"], MY = { class: "channel-archive-actions" }, NY = {
|
|
48574
48587
|
key: 0,
|
|
48575
48588
|
class: "channel-archive-confirm channel-archive-bulk",
|
|
48576
48589
|
role: "alert"
|
|
48577
|
-
},
|
|
48590
|
+
}, PY = {
|
|
48578
48591
|
key: 1,
|
|
48579
48592
|
class: "channel-archive-empty"
|
|
48580
|
-
},
|
|
48593
|
+
}, FY = { class: "fine-print" }, IY = { class: "dialog-actions" }, LY = { class: "dialog-actions" }, RY = { class: "channel-management-target" }, zY = {
|
|
48581
48594
|
key: 0,
|
|
48582
48595
|
class: "fine-print"
|
|
48583
|
-
},
|
|
48596
|
+
}, BY = {
|
|
48584
48597
|
key: 1,
|
|
48585
48598
|
class: "fine-print"
|
|
48586
|
-
},
|
|
48599
|
+
}, VY = {
|
|
48587
48600
|
key: 2,
|
|
48588
48601
|
class: "fine-print"
|
|
48589
|
-
},
|
|
48602
|
+
}, HY = { class: "dialog-actions" }, UY = { key: 4 }, WY = { class: "theme-choices" }, GY = ["aria-pressed", "onClick"], KY = { class: "theme-check" }, qY = { class: "channel-reading-setting" }, JY = {
|
|
48590
48603
|
class: "channel-reading-options",
|
|
48591
48604
|
role: "group",
|
|
48592
48605
|
"aria-labelledby": "channel-reading-label"
|
|
48593
|
-
},
|
|
48606
|
+
}, YY = { class: "channel-reading-setting" }, XY = {
|
|
48594
48607
|
class: "channel-reading-options channel-effect-options",
|
|
48595
48608
|
role: "group",
|
|
48596
48609
|
"aria-labelledby": "channel-effects-label"
|
|
48597
|
-
},
|
|
48610
|
+
}, ZY = { class: "form-two-columns" }, QY = { class: "advanced-content" }, $Y = {
|
|
48598
48611
|
key: 0,
|
|
48599
48612
|
class: "fine-print"
|
|
48600
|
-
},
|
|
48613
|
+
}, eX = { class: "advanced-content" }, tX = { class: "expert-fields" }, nX = { class: "dialog-actions" }, rX = { class: "dialog-actions" }, iX = {
|
|
48601
48614
|
key: 8,
|
|
48602
48615
|
class: "original-message"
|
|
48603
|
-
},
|
|
48616
|
+
}, aX = {
|
|
48604
48617
|
key: 0,
|
|
48605
48618
|
role: "alert"
|
|
48606
|
-
},
|
|
48619
|
+
}, oX = { class: "original-meta" }, sX = { class: "fine-print" }, cX = {
|
|
48607
48620
|
key: 0,
|
|
48608
48621
|
class: "channel-answer-summary"
|
|
48609
|
-
},
|
|
48622
|
+
}, lX = { class: "message-prose" }, uX = { class: "message-prose" }, dX = ["innerHTML"], fX = {
|
|
48610
48623
|
key: 2,
|
|
48611
48624
|
class: "fine-print"
|
|
48612
|
-
},
|
|
48625
|
+
}, pX = "topic-expert-modes", mX = {
|
|
48613
48626
|
__name: "WorkspaceDialogs",
|
|
48614
48627
|
props: /*@__PURE__*/ Fa({
|
|
48615
48628
|
detailId: {
|
|
@@ -48859,7 +48872,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48859
48872
|
}
|
|
48860
48873
|
let Ce = (e) => e.preventDefault();
|
|
48861
48874
|
return (t, c) => {
|
|
48862
|
-
let x = YV, S = bH, de = MA, fe = zV, ye = sA, N = HV, we =
|
|
48875
|
+
let x = YV, S = bH, de = MA, fe = zV, ye = sA, N = HV, we = QK, Te = WV, Ee = XK;
|
|
48863
48876
|
return U(), G(Ee, {
|
|
48864
48877
|
open: d.value,
|
|
48865
48878
|
"onUpdate:open": c[25] ||= (e) => d.value = e,
|
|
@@ -48880,8 +48893,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48880
48893
|
} : void 0,
|
|
48881
48894
|
"onAfter:leave": xe
|
|
48882
48895
|
}, {
|
|
48883
|
-
body: L(() => [a.value === "archives" ? (U(), W("section",
|
|
48884
|
-
K("div",
|
|
48896
|
+
body: L(() => [a.value === "archives" ? (U(), W("section", xY, [
|
|
48897
|
+
K("div", SY, [
|
|
48885
48898
|
q(x, {
|
|
48886
48899
|
modelValue: h.value,
|
|
48887
48900
|
"onUpdate:modelValue": c[0] ||= (e) => h.value = e,
|
|
@@ -48910,7 +48923,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48910
48923
|
}
|
|
48911
48924
|
}, null, 8, ["label", "disabled"])
|
|
48912
48925
|
]),
|
|
48913
|
-
b.value && v.value.length ? (U(), W("div",
|
|
48926
|
+
b.value && v.value.length ? (U(), W("div", CY, [
|
|
48914
48927
|
K("span", null, "将永久删除当前列表中的 " + P(v.value.length) + " 个房间及其全部记录,无法撤销。", 1),
|
|
48915
48928
|
q(de, {
|
|
48916
48929
|
label: "取消",
|
|
@@ -48926,20 +48939,20 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48926
48939
|
onClick: E
|
|
48927
48940
|
})
|
|
48928
48941
|
])) : Y("", !0),
|
|
48929
|
-
I(o).directory_error ? (U(), W("p",
|
|
48930
|
-
K("div",
|
|
48942
|
+
I(o).directory_error ? (U(), W("p", wY, P(I(o).directory_error), 1)) : Y("", !0),
|
|
48943
|
+
K("div", TY, [v.value.length ? (U(), W("ul", EY, [(U(!0), W(H, null, B(v.value, (e) => (U(), W("li", {
|
|
48931
48944
|
key: e.id,
|
|
48932
48945
|
class: "channel-archive-item"
|
|
48933
|
-
}, [K("div",
|
|
48946
|
+
}, [K("div", DY, [K("div", OY, [K("button", {
|
|
48934
48947
|
class: "channel-archive-title",
|
|
48935
48948
|
title: e.title,
|
|
48936
48949
|
disabled: !!I(u),
|
|
48937
48950
|
onClick: (t) => T(e)
|
|
48938
|
-
}, P(e.title), 9,
|
|
48951
|
+
}, P(e.title), 9, kY), K("small", null, [e.created_at ? (U(), W("span", AY, [
|
|
48939
48952
|
c[26] ||= J("创建于 ", -1),
|
|
48940
|
-
K("time", { datetime: e.created_at }, P(C(e.created_at)), 9,
|
|
48953
|
+
K("time", { datetime: e.created_at }, P(C(e.created_at)), 9, jY),
|
|
48941
48954
|
c[27] ||= J(" · ", -1)
|
|
48942
|
-
])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div",
|
|
48955
|
+
])) : Y("", !0), J(P(e.message_count) + " 条消息", 1)])]), K("div", MY, [q(de, {
|
|
48943
48956
|
"aria-label": `彻底删除 ${e.title}`,
|
|
48944
48957
|
title: "彻底删除",
|
|
48945
48958
|
icon: "i-lucide-trash-2",
|
|
@@ -48971,7 +48984,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48971
48984
|
"aria-label",
|
|
48972
48985
|
"disabled",
|
|
48973
48986
|
"onClick"
|
|
48974
|
-
])])]), y.value === e.id ? (U(), W("div",
|
|
48987
|
+
])])]), y.value === e.id ? (U(), W("div", NY, [
|
|
48975
48988
|
K("span", null, "永久删除「" + P(e.title) + "」及其全部记录,无法撤销。", 1),
|
|
48976
48989
|
q(de, {
|
|
48977
48990
|
label: "取消",
|
|
@@ -48987,12 +49000,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
48987
49000
|
disabled: w(e),
|
|
48988
49001
|
onClick: ee
|
|
48989
49002
|
}, null, 8, ["disabled"])
|
|
48990
|
-
])) : Y("", !0)]))), 128))])) : (U(), W("p",
|
|
49003
|
+
])) : Y("", !0)]))), 128))])) : (U(), W("p", PY, P(m.value.length ? "没有匹配的存档房间" : "暂无已存档房间"), 1))])
|
|
48991
49004
|
])) : a.value === "delete-folder" ? (U(), W("form", {
|
|
48992
49005
|
key: 1,
|
|
48993
49006
|
class: "dialog-form",
|
|
48994
49007
|
onSubmit: uu(ie, ["prevent"])
|
|
48995
|
-
}, [K("p",
|
|
49008
|
+
}, [K("p", FY, "移除「" + P(e.targetFolder?.name) + "」后,房间不再归属文件夹,所有消息和存档状态都会保留。", 1), K("div", IY, [q(de, {
|
|
48996
49009
|
label: "取消",
|
|
48997
49010
|
color: "neutral",
|
|
48998
49011
|
variant: "ghost",
|
|
@@ -49023,7 +49036,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49023
49036
|
"modelValue",
|
|
49024
49037
|
"aria-label",
|
|
49025
49038
|
"readonly"
|
|
49026
|
-
]), K("div",
|
|
49039
|
+
]), K("div", LY, [q(de, {
|
|
49027
49040
|
label: "取消",
|
|
49028
49041
|
color: "neutral",
|
|
49029
49042
|
variant: "ghost",
|
|
@@ -49048,10 +49061,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49048
49061
|
class: "dialog-form",
|
|
49049
49062
|
onSubmit: uu(ne, ["prevent"])
|
|
49050
49063
|
}, [
|
|
49051
|
-
K("p",
|
|
49052
|
-
a.value === "archive" ? (U(), W("p",
|
|
49053
|
-
a.value === "restore" ? (U(), W("p",
|
|
49054
|
-
a.value === "delete" ? (U(), W("p",
|
|
49064
|
+
K("p", RY, [J(P(e.targetRoom?.title) + " ", 1), K("span", null, "· " + P(e.targetRoom?.message_count) + " 条消息", 1)]),
|
|
49065
|
+
a.value === "archive" ? (U(), W("p", zY, "存档后可在侧栏「已存档」中查阅与恢复。已有发言安排会保留;专家需在下次检查时停止自己的定时任务。")) : Y("", !0),
|
|
49066
|
+
a.value === "restore" ? (U(), W("p", BY, "恢复不会自动继续讨论;需要继续时,在主持设置中调整阶段。")) : Y("", !0),
|
|
49067
|
+
a.value === "delete" ? (U(), W("p", VY, "消息、共识和发言安排将一起删除,无法撤销。")) : Y("", !0),
|
|
49055
49068
|
a.value === "rename" ? (U(), G(fe, {
|
|
49056
49069
|
key: 3,
|
|
49057
49070
|
label: "房间名称",
|
|
@@ -49068,7 +49081,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49068
49081
|
}, null, 8, ["modelValue"])]),
|
|
49069
49082
|
_: 1
|
|
49070
49083
|
})) : Y("", !0),
|
|
49071
|
-
K("div",
|
|
49084
|
+
K("div", HY, [q(de, {
|
|
49072
49085
|
label: "取消",
|
|
49073
49086
|
color: "neutral",
|
|
49074
49087
|
variant: "ghost",
|
|
@@ -49085,10 +49098,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49085
49098
|
"loading",
|
|
49086
49099
|
"disabled"
|
|
49087
49100
|
])])
|
|
49088
|
-
], 32)) : a.value === "settings" ? (U(), W("div",
|
|
49089
|
-
q(
|
|
49101
|
+
], 32)) : a.value === "settings" ? (U(), W("div", UY, [
|
|
49102
|
+
q(bY),
|
|
49090
49103
|
c[32] ||= K("h3", { class: "account-appearance-heading" }, "外观", -1),
|
|
49091
|
-
K("div",
|
|
49104
|
+
K("div", WY, [(U(), W(H, null, B(ge, (e) => K("button", {
|
|
49092
49105
|
key: e.value,
|
|
49093
49106
|
class: j({ chosen: I(o).theme === e.value }),
|
|
49094
49107
|
"aria-pressed": I(o).theme === e.value,
|
|
@@ -49103,12 +49116,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49103
49116
|
K("b")
|
|
49104
49117
|
], -1)]], 2),
|
|
49105
49118
|
K("span", null, [K("strong", null, P(e.title), 1), K("small", null, P(e.description), 1)]),
|
|
49106
|
-
K("span",
|
|
49119
|
+
K("span", KY, [I(o).theme === e.value ? (U(), G(ye, {
|
|
49107
49120
|
key: 0,
|
|
49108
49121
|
name: "i-lucide-check"
|
|
49109
49122
|
})) : Y("", !0)])
|
|
49110
|
-
], 10,
|
|
49111
|
-
K("section",
|
|
49123
|
+
], 10, GY)), 64))]),
|
|
49124
|
+
K("section", qY, [c[29] ||= K("h3", { id: "channel-reading-label" }, "对话宽度", -1), K("div", JY, [(U(!0), W(H, null, B(e.readingOptions, (e) => (U(), G(de, {
|
|
49112
49125
|
key: e.value,
|
|
49113
49126
|
label: e.label,
|
|
49114
49127
|
color: "neutral",
|
|
@@ -49122,9 +49135,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49122
49135
|
"aria-pressed",
|
|
49123
49136
|
"onClick"
|
|
49124
49137
|
]))), 128))])]),
|
|
49125
|
-
K("section",
|
|
49138
|
+
K("section", YY, [
|
|
49126
49139
|
c[30] ||= K("h3", { id: "channel-effects-label" }, "视觉效果", -1),
|
|
49127
|
-
K("div",
|
|
49140
|
+
K("div", XY, [(U(!0), W(H, null, B(e.effectOptions, (e) => (U(), G(de, {
|
|
49128
49141
|
key: e.value,
|
|
49129
49142
|
label: e.label,
|
|
49130
49143
|
color: "neutral",
|
|
@@ -49140,7 +49153,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49140
49153
|
]))), 128))]),
|
|
49141
49154
|
c[31] ||= K("p", { class: "fine-print" }, "精简模式关闭毛玻璃模糊与多层阴影,适合配置较低或需要更流畅滚动的设备。", -1)
|
|
49142
49155
|
])
|
|
49143
|
-
])) : a.value === "create" ? (U(), G(
|
|
49156
|
+
])) : a.value === "create" ? (U(), G(nY, {
|
|
49144
49157
|
key: 5,
|
|
49145
49158
|
"target-folder": e.targetFolder,
|
|
49146
49159
|
onSubmit: M,
|
|
@@ -49175,7 +49188,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49175
49188
|
}, null, 8, ["model-value"])]),
|
|
49176
49189
|
_: 1
|
|
49177
49190
|
}),
|
|
49178
|
-
K("div",
|
|
49191
|
+
K("div", ZY, [q(fe, { label: "主持人" }, {
|
|
49179
49192
|
default: L(() => [q(S, {
|
|
49180
49193
|
"model-value": I(o).fields[_e("host")],
|
|
49181
49194
|
items: I(oe),
|
|
@@ -49209,9 +49222,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49209
49222
|
}, null, 8, ["model-value"])]),
|
|
49210
49223
|
_: 1
|
|
49211
49224
|
})) : Y("", !0),
|
|
49212
|
-
K("section",
|
|
49225
|
+
K("section", QY, [
|
|
49213
49226
|
c[33] ||= K("h3", null, "讨论上限", -1),
|
|
49214
|
-
q(
|
|
49227
|
+
q(wq, {
|
|
49215
49228
|
ref_key: "topic_limits",
|
|
49216
49229
|
ref: le,
|
|
49217
49230
|
rounds: Number(I(o).fields[_e("limit-max_rounds")]),
|
|
@@ -49229,14 +49242,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49229
49242
|
"execution",
|
|
49230
49243
|
"disabled"
|
|
49231
49244
|
]),
|
|
49232
|
-
ue.value ? (U(), W("p",
|
|
49245
|
+
ue.value ? (U(), W("p", $Y, "修改上限前,请先把阶段保存为“已暂停”。")) : Y("", !0)
|
|
49233
49246
|
]),
|
|
49234
49247
|
q(we, {
|
|
49235
49248
|
open: ce.value,
|
|
49236
49249
|
"onUpdate:open": c[20] ||= (e) => ce.value = e,
|
|
49237
49250
|
class: "advanced-fields"
|
|
49238
49251
|
}, {
|
|
49239
|
-
content: L(() => [K("div",
|
|
49252
|
+
content: L(() => [K("div", eX, [
|
|
49240
49253
|
(U(), W(H, null, B([
|
|
49241
49254
|
{
|
|
49242
49255
|
key: "user_request",
|
|
@@ -49263,11 +49276,11 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49263
49276
|
}, null, 8, ["model-value", "onUpdate:modelValue"])]),
|
|
49264
49277
|
_: 2
|
|
49265
49278
|
}, 1032, ["label"])), 64)),
|
|
49266
|
-
K("div",
|
|
49267
|
-
"model-value": I(o).experts[
|
|
49279
|
+
K("div", tX, [(U(!0), W(H, null, B(I(ae), (e) => (U(), W("div", { key: e }, [K("label", null, P(e), 1), q(S, {
|
|
49280
|
+
"model-value": I(o).experts[pX]?.[e] || "none",
|
|
49268
49281
|
items: se,
|
|
49269
49282
|
"aria-label": `${e} 参与方式`,
|
|
49270
|
-
"onUpdate:modelValue": (t) => I(s).write_expert(
|
|
49283
|
+
"onUpdate:modelValue": (t) => I(s).write_expert(pX, e, t === "none" ? "" : t)
|
|
49271
49284
|
}, null, 8, [
|
|
49272
49285
|
"model-value",
|
|
49273
49286
|
"aria-label",
|
|
@@ -49285,7 +49298,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49285
49298
|
}, null, 8, ["trailing-icon"])]),
|
|
49286
49299
|
_: 1
|
|
49287
49300
|
}, 8, ["open"]),
|
|
49288
|
-
K("div",
|
|
49301
|
+
K("div", nX, [q(de, {
|
|
49289
49302
|
label: "取消",
|
|
49290
49303
|
color: "neutral",
|
|
49291
49304
|
variant: "ghost",
|
|
@@ -49329,7 +49342,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49329
49342
|
_: 1
|
|
49330
49343
|
}),
|
|
49331
49344
|
c[35] ||= K("p", { class: "fine-print" }, "创建后为待通知状态;由主持人实际联系专家。", -1),
|
|
49332
|
-
K("div",
|
|
49345
|
+
K("div", rX, [q(de, {
|
|
49333
49346
|
label: "取消",
|
|
49334
49347
|
variant: "ghost",
|
|
49335
49348
|
color: "neutral",
|
|
@@ -49340,8 +49353,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49340
49353
|
label: "创建发言安排",
|
|
49341
49354
|
loading: I(u) === "schedule"
|
|
49342
49355
|
}, null, 8, ["loading"])])
|
|
49343
|
-
], 32)) : a.value === "message" ? (U(), W("div",
|
|
49344
|
-
K("div",
|
|
49356
|
+
], 32)) : a.value === "message" ? (U(), W("div", iX, [pe.value ? (U(), W("p", aX, P(pe.value), 1)) : A.value ? (U(), W(H, { key: 1 }, [
|
|
49357
|
+
K("div", oX, [
|
|
49345
49358
|
K("strong", null, P(I(s).display_name(A.value.author)), 1),
|
|
49346
49359
|
K("span", null, "#" + P(A.value.id), 1),
|
|
49347
49360
|
q(Te, {
|
|
@@ -49352,14 +49365,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49352
49365
|
_: 1
|
|
49353
49366
|
})
|
|
49354
49367
|
]),
|
|
49355
|
-
K("p",
|
|
49356
|
-
A.value.summary ? (U(), W("section",
|
|
49357
|
-
K("p",
|
|
49368
|
+
K("p", sX, P(I(s).provenance(A.value)) + " · " + P(new Date(A.value.created_at).toLocaleString("zh-CN")), 1),
|
|
49369
|
+
A.value.summary ? (U(), W("section", cX, [K("small", null, "回答摘要 · " + P(I(s).display_name(A.value.summary_by)), 1), K("p", lX, P(A.value.summary), 1)])) : Y("", !0),
|
|
49370
|
+
K("p", uX, P(A.value.text), 1),
|
|
49358
49371
|
A.value.attachments?.length ? (U(), W("div", {
|
|
49359
49372
|
key: 1,
|
|
49360
49373
|
onClick: be,
|
|
49361
49374
|
innerHTML: I(s).attachment_markup(A.value.attachments)
|
|
49362
|
-
}, null, 8,
|
|
49375
|
+
}, null, 8, dX)) : Y("", !0),
|
|
49363
49376
|
A.value.reply_to ? (U(), G(de, {
|
|
49364
49377
|
key: 2,
|
|
49365
49378
|
label: `查看被回复的原文 #${A.value.reply_to}`,
|
|
@@ -49369,7 +49382,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49369
49382
|
class: "channel-surface-button",
|
|
49370
49383
|
onClick: Se
|
|
49371
49384
|
}, null, 8, ["label"])) : Y("", !0)
|
|
49372
|
-
], 64)) : (U(), W("p",
|
|
49385
|
+
], 64)) : (U(), W("p", fX, "正在读取原文…"))])) : Y("", !0)]),
|
|
49373
49386
|
_: 1
|
|
49374
49387
|
}, 8, [
|
|
49375
49388
|
"open",
|
|
@@ -49380,7 +49393,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49380
49393
|
]);
|
|
49381
49394
|
};
|
|
49382
49395
|
}
|
|
49383
|
-
},
|
|
49396
|
+
}, hX = {
|
|
49384
49397
|
__name: "ContextMenuContent",
|
|
49385
49398
|
props: {
|
|
49386
49399
|
items: {
|
|
@@ -49675,7 +49688,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49675
49688
|
"disabled",
|
|
49676
49689
|
"text-value",
|
|
49677
49690
|
"class"
|
|
49678
|
-
]), q(
|
|
49691
|
+
]), q(hX, X({
|
|
49679
49692
|
sub: "",
|
|
49680
49693
|
class: r.ui?.content,
|
|
49681
49694
|
ui: e.ui,
|
|
@@ -49786,7 +49799,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49786
49799
|
_: 3
|
|
49787
49800
|
}, 16)], 64));
|
|
49788
49801
|
}
|
|
49789
|
-
},
|
|
49802
|
+
}, gX = {
|
|
49790
49803
|
slots: {
|
|
49791
49804
|
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",
|
|
49792
49805
|
viewport: "relative divide-y divide-default scroll-py-1 overflow-y-auto flex-1",
|
|
@@ -49974,7 +49987,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
49974
49987
|
}
|
|
49975
49988
|
],
|
|
49976
49989
|
defaultVariants: { size: "md" }
|
|
49977
|
-
},
|
|
49990
|
+
}, _X = {
|
|
49978
49991
|
__name: "ContextMenu",
|
|
49979
49992
|
props: {
|
|
49980
49993
|
size: {
|
|
@@ -50044,7 +50057,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50044
50057
|
emits: ["update:open"],
|
|
50045
50058
|
setup(e, { emit: t }) {
|
|
50046
50059
|
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({
|
|
50047
|
-
extend:
|
|
50060
|
+
extend: gX,
|
|
50048
50061
|
...o.ui?.contextMenu || {}
|
|
50049
50062
|
})({ size: a.size }));
|
|
50050
50063
|
return (e, t) => (U(), G(I(iC), M(Ss(I(s))), {
|
|
@@ -50056,7 +50069,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50056
50069
|
}, {
|
|
50057
50070
|
default: L(() => [V(e.$slots, "default")]),
|
|
50058
50071
|
_: 3
|
|
50059
|
-
}, 8, ["disabled", "class"])) : Y("", !0), q(
|
|
50072
|
+
}, 8, ["disabled", "class"])) : Y("", !0), q(hX, X({
|
|
50060
50073
|
class: u.value.content({ class: [!i.default && I(a).class, I(a).ui?.content] }),
|
|
50061
50074
|
ui: u.value,
|
|
50062
50075
|
"ui-override": I(a).ui
|
|
@@ -50086,47 +50099,47 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50086
50099
|
_: 3
|
|
50087
50100
|
}, 16));
|
|
50088
50101
|
}
|
|
50089
|
-
},
|
|
50102
|
+
}, vX = { class: "channel-directory-manager" }, yX = { class: "channel-directory-heading" }, bX = ["aria-expanded"], xX = { class: "channel-directory-actions" }, SX = {
|
|
50090
50103
|
"aria-label": "协作房间列表",
|
|
50091
50104
|
class: "channel-room-list",
|
|
50092
50105
|
"data-room-directory": ""
|
|
50093
|
-
},
|
|
50106
|
+
}, CX = ["data-room-folder", "data-drag-folder"], wX = [
|
|
50094
50107
|
"disabled",
|
|
50095
50108
|
"aria-label",
|
|
50096
50109
|
"aria-expanded",
|
|
50097
50110
|
"onKeydown",
|
|
50098
50111
|
"onClick"
|
|
50099
|
-
],
|
|
50112
|
+
], TX = { class: "channel-folder-name" }, EX = { class: "channel-folder-actions" }, DX = {
|
|
50100
50113
|
class: "channel-directory-count",
|
|
50101
50114
|
"aria-hidden": "true"
|
|
50102
|
-
},
|
|
50115
|
+
}, OX = ["data-drop-folder"], kX = {
|
|
50103
50116
|
key: 0,
|
|
50104
50117
|
class: "channel-directory-empty",
|
|
50105
50118
|
role: "status"
|
|
50106
|
-
},
|
|
50119
|
+
}, AX = ["data-drag-room"], jX = [
|
|
50107
50120
|
"aria-label",
|
|
50108
50121
|
"disabled",
|
|
50109
50122
|
"onKeydown"
|
|
50110
|
-
],
|
|
50123
|
+
], MX = [
|
|
50111
50124
|
"title",
|
|
50112
50125
|
"aria-label",
|
|
50113
50126
|
"aria-current",
|
|
50114
50127
|
"onClick"
|
|
50115
|
-
],
|
|
50128
|
+
], NX = { class: "channel-room-actions" }, PX = {
|
|
50116
50129
|
key: 0,
|
|
50117
50130
|
class: "channel-directory-empty"
|
|
50118
|
-
},
|
|
50131
|
+
}, FX = {
|
|
50119
50132
|
key: 0,
|
|
50120
50133
|
class: "channel-archive-count"
|
|
50121
|
-
},
|
|
50134
|
+
}, IX = {
|
|
50122
50135
|
key: 0,
|
|
50123
50136
|
role: "status",
|
|
50124
50137
|
class: "channel-directory-notice"
|
|
50125
|
-
},
|
|
50138
|
+
}, LX = {
|
|
50126
50139
|
key: 1,
|
|
50127
50140
|
role: "alert",
|
|
50128
50141
|
class: "channel-directory-error"
|
|
50129
|
-
},
|
|
50142
|
+
}, RX = {
|
|
50130
50143
|
__name: "ChannelDirectory",
|
|
50131
50144
|
emits: [
|
|
50132
50145
|
"select",
|
|
@@ -50340,8 +50353,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50340
50353
|
];
|
|
50341
50354
|
}
|
|
50342
50355
|
return (e, t) => {
|
|
50343
|
-
let u = MA, _ = sA, v = TH, x = $V, S =
|
|
50344
|
-
return U(), W("div",
|
|
50356
|
+
let u = MA, _ = sA, v = TH, x = $V, S = _X;
|
|
50357
|
+
return U(), W("div", vX, [
|
|
50345
50358
|
q(u, {
|
|
50346
50359
|
label: "新建对话",
|
|
50347
50360
|
icon: "i-lucide-plus",
|
|
@@ -50350,12 +50363,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50350
50363
|
disabled: I(r).directory_pending.includes("create-room"),
|
|
50351
50364
|
onClick: t[0] ||= (e) => n("create", null)
|
|
50352
50365
|
}, null, 8, ["disabled"]),
|
|
50353
|
-
K("div",
|
|
50366
|
+
K("div", yX, [K("button", {
|
|
50354
50367
|
type: "button",
|
|
50355
50368
|
class: "channel-section-toggle",
|
|
50356
50369
|
"aria-expanded": m.value,
|
|
50357
50370
|
onClick: t[1] ||= (e) => m.value = !m.value
|
|
50358
|
-
}, [q(_, { name: m.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[7] ||= J("协作房间", -1)], 8,
|
|
50371
|
+
}, [q(_, { name: m.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), t[7] ||= J("协作房间", -1)], 8, bX), K("div", xX, [
|
|
50359
50372
|
q(v, {
|
|
50360
50373
|
items: d.value,
|
|
50361
50374
|
content: {
|
|
@@ -50397,7 +50410,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50397
50410
|
onChange: p
|
|
50398
50411
|
}, null, 544)
|
|
50399
50412
|
])]),
|
|
50400
|
-
vr(K("nav",
|
|
50413
|
+
vr(K("nav", SX, [(U(!0), W(H, null, B(l.value, (e, s) => (U(), W("section", {
|
|
50401
50414
|
key: e.order_id,
|
|
50402
50415
|
class: "channel-folder-section",
|
|
50403
50416
|
"data-room-folder": e.id,
|
|
@@ -50427,9 +50440,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50427
50440
|
}, [
|
|
50428
50441
|
q(_, { name: h.value.has(e.id) ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
|
|
50429
50442
|
q(_, { name: "i-lucide-folder" }),
|
|
50430
|
-
K("span",
|
|
50431
|
-
], 40,
|
|
50432
|
-
K("div",
|
|
50443
|
+
K("span", TX, P(e.name), 1)
|
|
50444
|
+
], 40, wX),
|
|
50445
|
+
K("div", EX, [q(v, {
|
|
50433
50446
|
items: g(e, s),
|
|
50434
50447
|
content: {
|
|
50435
50448
|
align: "start",
|
|
@@ -50463,12 +50476,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50463
50476
|
])]),
|
|
50464
50477
|
_: 2
|
|
50465
50478
|
}, 1032, ["text"])]),
|
|
50466
|
-
K("small",
|
|
50479
|
+
K("small", DX, P(e.pending ? "保存中" : e.rooms.length), 1)
|
|
50467
50480
|
], 2)) : Y("", !0), !e.id || !h.value.has(e.id) ? (U(), W("div", {
|
|
50468
50481
|
key: 1,
|
|
50469
50482
|
class: j(e.id ? "channel-folder-rooms" : "channel-root-rooms"),
|
|
50470
50483
|
"data-drop-folder": e.id ? void 0 : ""
|
|
50471
|
-
}, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p",
|
|
50484
|
+
}, [I(r).creating_room && (I(r).creating_room.folder_id || "") === e.id ? (U(), W("p", kX, "正在创建:" + P(I(r).creating_room.title), 1)) : Y("", !0), (U(!0), W(H, null, B(e.rooms, (s, c) => (U(), G(S, {
|
|
50472
50485
|
key: s.id,
|
|
50473
50486
|
items: b(s, c, s.folder_id || null, e.rooms.length),
|
|
50474
50487
|
ui: { content: "channel-menu channel-topic-menu" }
|
|
@@ -50493,7 +50506,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50493
50506
|
direction: 1,
|
|
50494
50507
|
folder_id: s.folder_id || null
|
|
50495
50508
|
}), ["prevent"]), ["down"])]
|
|
50496
|
-
}, [q(_, { name: "i-lucide-grip-vertical" })], 40,
|
|
50509
|
+
}, [q(_, { name: "i-lucide-grip-vertical" })], 40, jX),
|
|
50497
50510
|
K("button", {
|
|
50498
50511
|
class: "channel-room-select",
|
|
50499
50512
|
"data-drag-title": "",
|
|
@@ -50502,8 +50515,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50502
50515
|
"aria-current": s.id === I(r).room?.id ? "page" : void 0,
|
|
50503
50516
|
onPointerdown: t[5] ||= (e) => !I(o) && I(i).start_drag(e),
|
|
50504
50517
|
onClick: (e) => n("select", s.id)
|
|
50505
|
-
}, [K("span", null, P(s.title), 1)], 40,
|
|
50506
|
-
K("div",
|
|
50518
|
+
}, [K("span", null, P(s.title), 1)], 40, MX),
|
|
50519
|
+
K("div", NX, [q(x, {
|
|
50507
50520
|
text: s.archived ? "恢复房间" : "存档房间",
|
|
50508
50521
|
ui: { content: "channel-topic-tooltip" }
|
|
50509
50522
|
}, {
|
|
@@ -50544,9 +50557,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50544
50557
|
}, null, 8, ["aria-label"])]),
|
|
50545
50558
|
_: 2
|
|
50546
50559
|
}, 1032, ["items"])])
|
|
50547
|
-
], 10,
|
|
50560
|
+
], 10, AX)]),
|
|
50548
50561
|
_: 2
|
|
50549
|
-
}, 1032, ["items"]))), 128))], 10,
|
|
50562
|
+
}, 1032, ["items"]))), 128))], 10, OX)) : Y("", !0)], 8, CX))), 128)), s.value.length ? Y("", !0) : (U(), W("p", PX, "暂无协作房间"))], 512), [[Vc, m.value]]),
|
|
50550
50563
|
vr(q(u, {
|
|
50551
50564
|
icon: "i-lucide-archive",
|
|
50552
50565
|
color: "neutral",
|
|
@@ -50555,48 +50568,48 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50555
50568
|
"aria-haspopup": "dialog",
|
|
50556
50569
|
onClick: t[6] ||= (e) => n("archives")
|
|
50557
50570
|
}, {
|
|
50558
|
-
default: L(() => [t[8] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small",
|
|
50571
|
+
default: L(() => [t[8] ||= K("span", { class: "channel-archive-label" }, "已存档", -1), c.value ? (U(), W("small", FX, P(c.value), 1)) : Y("", !0)]),
|
|
50559
50572
|
_: 1
|
|
50560
50573
|
}, 512), [[Vc, m.value]]),
|
|
50561
|
-
I(r).directory_notice ? (U(), W("p",
|
|
50562
|
-
I(r).directory_error ? (U(), W("p",
|
|
50574
|
+
I(r).directory_notice ? (U(), W("p", IX, P(I(r).directory_notice), 1)) : Y("", !0),
|
|
50575
|
+
I(r).directory_error ? (U(), W("p", LX, P(I(r).directory_error), 1)) : Y("", !0)
|
|
50563
50576
|
]);
|
|
50564
50577
|
};
|
|
50565
50578
|
}
|
|
50566
|
-
},
|
|
50579
|
+
}, zX = {
|
|
50567
50580
|
key: 0,
|
|
50568
50581
|
class: "pb-invite",
|
|
50569
50582
|
"aria-label": "启动手动成员"
|
|
50570
|
-
},
|
|
50583
|
+
}, BX = { class: "pb-invite-lead" }, VX = {
|
|
50571
50584
|
key: 0,
|
|
50572
50585
|
role: "alert",
|
|
50573
50586
|
class: "pb-free-note is-error"
|
|
50574
|
-
},
|
|
50587
|
+
}, HX = { class: "pb-invite-launches" }, UX = { class: "pb-invite-footer" }, WX = {
|
|
50575
50588
|
class: "pb-invite-library",
|
|
50576
50589
|
role: "group",
|
|
50577
50590
|
"aria-label": "选择 AI(可多选)"
|
|
50578
|
-
},
|
|
50591
|
+
}, GX = [
|
|
50579
50592
|
"aria-pressed",
|
|
50580
50593
|
"title",
|
|
50581
50594
|
"onClick"
|
|
50582
|
-
],
|
|
50595
|
+
], KX = {
|
|
50583
50596
|
key: 0,
|
|
50584
50597
|
class: "pb-invite-cards"
|
|
50585
|
-
},
|
|
50598
|
+
}, qX = {
|
|
50586
50599
|
key: 0,
|
|
50587
50600
|
class: "fine-print"
|
|
50588
|
-
},
|
|
50601
|
+
}, JX = ["aria-hidden"], YX = {
|
|
50589
50602
|
key: 2,
|
|
50590
50603
|
class: "pb-invite-empty"
|
|
50591
|
-
},
|
|
50604
|
+
}, XX = {
|
|
50592
50605
|
key: 3,
|
|
50593
50606
|
role: "alert",
|
|
50594
50607
|
class: "fine-print"
|
|
50595
|
-
},
|
|
50608
|
+
}, ZX = {
|
|
50596
50609
|
key: 4,
|
|
50597
50610
|
role: "alert",
|
|
50598
50611
|
class: "pb-free-note is-error"
|
|
50599
|
-
},
|
|
50612
|
+
}, QX = { class: "pb-invite-footer" }, $X = 2e3, eZ = /*#__PURE__*/ MH({
|
|
50600
50613
|
__name: "InviteDialog",
|
|
50601
50614
|
props: /*@__PURE__*/ Fa({ description: {
|
|
50602
50615
|
type: String,
|
|
@@ -50614,7 +50627,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50614
50627
|
async function u(e) {
|
|
50615
50628
|
clearTimeout(l), c.value = "", await i("copy_member_launch", e) && (c.value = e, l = setTimeout(() => {
|
|
50616
50629
|
c.value = "";
|
|
50617
|
-
},
|
|
50630
|
+
}, $X));
|
|
50618
50631
|
}
|
|
50619
50632
|
let d = /* @__PURE__ */ F([]), f = 0, p = /* @__PURE__ */ F([]), m = /* @__PURE__ */ F(!1), h = Z(() => Object.keys(r.launch_clients)), g = Z(() => (o.value.members || []).map((e) => e.name)), _ = (e) => g.value.filter((t) => r.platform_of(t) === e).length, v = Z(() => [...d.value.filter((e) => e.mode !== "manual"), ...d.value.filter((e) => e.mode === "manual")]), y = Z(() => {
|
|
50620
50633
|
let e = [...g.value];
|
|
@@ -50667,7 +50680,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50667
50680
|
p.value = [...p.value, ...e], !d.value.length && !p.value.length && (t.value = !1);
|
|
50668
50681
|
}
|
|
50669
50682
|
return (i, o) => {
|
|
50670
|
-
let l = pA, f = MA, g =
|
|
50683
|
+
let l = pA, f = MA, g = XK;
|
|
50671
50684
|
return U(), G(g, {
|
|
50672
50685
|
open: t.value,
|
|
50673
50686
|
"onUpdate:open": o[2] ||= (e) => t.value = e,
|
|
@@ -50678,10 +50691,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50678
50691
|
body: "dialog-body"
|
|
50679
50692
|
}
|
|
50680
50693
|
}, {
|
|
50681
|
-
body: L(() => [p.value.length && !d.value.length ? (U(), W("div",
|
|
50682
|
-
K("p",
|
|
50683
|
-
I(n).access?.error ? (U(), W("p",
|
|
50684
|
-
K("ul",
|
|
50694
|
+
body: L(() => [p.value.length && !d.value.length ? (U(), W("div", zX, [
|
|
50695
|
+
K("p", BX, P(p.value.length > 1 ? `${p.value.length} 位手动成员已加入` : "手动成员已加入") + ",把启动指令交给各自的 AI 会话,注册后才算到场。", 1),
|
|
50696
|
+
I(n).access?.error ? (U(), W("p", VX, P(I(n).access.error), 1)) : Y("", !0),
|
|
50697
|
+
K("ul", HX, [(U(!0), W(H, null, B(p.value, (e) => (U(), W("li", { key: e }, [
|
|
50685
50698
|
q(l, {
|
|
50686
50699
|
src: I(r).identities[I(r).platform_of(e)]?.icon,
|
|
50687
50700
|
text: I(r).identities[I(r).platform_of(e)]?.initials,
|
|
@@ -50716,7 +50729,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50716
50729
|
])
|
|
50717
50730
|
]))), 128))]),
|
|
50718
50731
|
o[3] ||= K("p", { class: "fine-print" }, "指令含该成员的凭证,只交给对应的会话;关闭后仍可在参与者列表中复制。", -1),
|
|
50719
|
-
K("div",
|
|
50732
|
+
K("div", UX, [q(f, {
|
|
50720
50733
|
label: "完成",
|
|
50721
50734
|
class: "channel-primary-button",
|
|
50722
50735
|
onClick: o[0] ||= (e) => t.value = !1
|
|
@@ -50727,7 +50740,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50727
50740
|
"aria-label": "邀请专家",
|
|
50728
50741
|
onSubmit: uu(w, ["prevent"])
|
|
50729
50742
|
}, [
|
|
50730
|
-
K("div",
|
|
50743
|
+
K("div", WX, [(U(!0), W(H, null, B(h.value, (e) => (U(), W("button", {
|
|
50731
50744
|
key: e,
|
|
50732
50745
|
type: "button",
|
|
50733
50746
|
"aria-pressed": d.value.some((t) => t.name === e),
|
|
@@ -50744,11 +50757,11 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50744
50757
|
"text",
|
|
50745
50758
|
"alt",
|
|
50746
50759
|
"class"
|
|
50747
|
-
]), J(P(e), 1)], 8,
|
|
50748
|
-
d.value.length ? (U(), W("div",
|
|
50760
|
+
]), J(P(e), 1)], 8, GX))), 128))]),
|
|
50761
|
+
d.value.length ? (U(), W("div", KX, [(U(!0), W(H, null, B(d.value, (e) => (U(), W("div", {
|
|
50749
50762
|
key: e.id,
|
|
50750
50763
|
class: "pb-invite-pick"
|
|
50751
|
-
}, [q(
|
|
50764
|
+
}, [q(xJ, {
|
|
50752
50765
|
name: e.name,
|
|
50753
50766
|
mode: e.mode,
|
|
50754
50767
|
choices: ["cli", "manual"],
|
|
@@ -50765,15 +50778,15 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50765
50778
|
"onMode",
|
|
50766
50779
|
"onSession",
|
|
50767
50780
|
"onRemove"
|
|
50768
|
-
]), y.value.get(e) === e.name ? Y("", !0) : (U(), W("p",
|
|
50781
|
+
]), y.value.get(e) === e.name ? Y("", !0) : (U(), W("p", qX, "同一 AI 已有实例,将以 " + P(y.value.get(e)) + " 加入,使用独立会话。", 1))]))), 128))])) : Y("", !0),
|
|
50769
50782
|
d.value.length ? (U(), W("p", {
|
|
50770
50783
|
key: 1,
|
|
50771
50784
|
class: j(["fine-print", { "pb-invite-reserved": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual")) }]),
|
|
50772
50785
|
"aria-hidden": !(d.value.some((e) => e.mode === "manual") && d.value.some((e) => e.mode !== "manual"))
|
|
50773
|
-
}, "手动启动的成员排在程序启动的成员之后加入队列。", 10,
|
|
50774
|
-
d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p",
|
|
50775
|
-
m.value && I(n).free_error ? (U(), W("p",
|
|
50776
|
-
K("div",
|
|
50786
|
+
}, "手动启动的成员排在程序启动的成员之后加入队列。", 10, JX)) : (U(), W("p", YX, "选择一位或多位 AI(同一 AI 可重复添加),点卡片翻面设置软件、模型与项目权限。")),
|
|
50787
|
+
d.value.some((e) => e.mode === "cli") && !I(n).launch.available ? (U(), W("p", XX, "邀请需要本机服务,请在运行 AI 的电脑打开本机网站。")) : Y("", !0),
|
|
50788
|
+
m.value && I(n).free_error ? (U(), W("p", ZX, P(I(n).free_error), 1)) : Y("", !0),
|
|
50789
|
+
K("div", QX, [q(f, {
|
|
50777
50790
|
label: "取消",
|
|
50778
50791
|
color: "neutral",
|
|
50779
50792
|
variant: "ghost",
|
|
@@ -50795,73 +50808,73 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50795
50808
|
}, 8, ["open", "description"]);
|
|
50796
50809
|
};
|
|
50797
50810
|
}
|
|
50798
|
-
}, [["__scopeId", "data-v-3ca69064"]]),
|
|
50811
|
+
}, [["__scopeId", "data-v-3ca69064"]]), tZ = {
|
|
50799
50812
|
key: 0,
|
|
50800
50813
|
class: "pb-header"
|
|
50801
|
-
},
|
|
50814
|
+
}, nZ = { class: "pb-mode" }, rZ = { class: "pb-status-line" }, iZ = { role: "status" }, aZ = {
|
|
50802
50815
|
key: 0,
|
|
50803
50816
|
class: "pb-mode"
|
|
50804
|
-
},
|
|
50817
|
+
}, oZ = {
|
|
50805
50818
|
key: 0,
|
|
50806
50819
|
class: "pb-status-detail"
|
|
50807
|
-
},
|
|
50820
|
+
}, sZ = {
|
|
50808
50821
|
key: 1,
|
|
50809
50822
|
class: "pb-status-detail"
|
|
50810
|
-
},
|
|
50823
|
+
}, cZ = { class: "pb-error-detail" }, lZ = {
|
|
50811
50824
|
key: 3,
|
|
50812
50825
|
class: "pb-meters"
|
|
50813
|
-
},
|
|
50826
|
+
}, uZ = { class: "pb-meter-label" }, dZ = {
|
|
50814
50827
|
key: 0,
|
|
50815
50828
|
class: "pb-bar"
|
|
50816
|
-
},
|
|
50829
|
+
}, fZ = {
|
|
50817
50830
|
key: 1,
|
|
50818
50831
|
class: "pb-section",
|
|
50819
50832
|
"aria-label": "当前焦点"
|
|
50820
|
-
},
|
|
50833
|
+
}, pZ = {
|
|
50821
50834
|
class: "pb-section",
|
|
50822
50835
|
"aria-label": "参与者"
|
|
50823
|
-
},
|
|
50836
|
+
}, mZ = { class: "pb-heading" }, hZ = {
|
|
50824
50837
|
key: 0,
|
|
50825
50838
|
class: "pb-status-detail pb-held"
|
|
50826
|
-
},
|
|
50839
|
+
}, gZ = { class: "pb-members" }, _Z = { class: "pb-member-body" }, vZ = { class: "pb-member-name" }, yZ = {
|
|
50827
50840
|
key: 0,
|
|
50828
50841
|
class: "pb-member-model",
|
|
50829
50842
|
title: "本场启动配置;默认模型与默认强度由对应软件决定"
|
|
50830
|
-
},
|
|
50843
|
+
}, bZ = {
|
|
50831
50844
|
key: 1,
|
|
50832
50845
|
class: "pb-member-model",
|
|
50833
50846
|
title: "续接你已有的会话;它工作时请不要在原窗口继续操作"
|
|
50834
|
-
},
|
|
50847
|
+
}, xZ = { key: 0 }, SZ = {
|
|
50835
50848
|
key: 3,
|
|
50836
50849
|
class: "pb-member-manual"
|
|
50837
|
-
},
|
|
50850
|
+
}, CZ = { key: 0 }, wZ = ["onClick"], TZ = { class: "pb-member-body" }, EZ = { class: "pb-member-name" }, DZ = {
|
|
50838
50851
|
key: 1,
|
|
50839
50852
|
role: "alert",
|
|
50840
50853
|
class: "pb-free-note is-error"
|
|
50841
|
-
},
|
|
50854
|
+
}, OZ = {
|
|
50842
50855
|
key: 2,
|
|
50843
50856
|
role: "status",
|
|
50844
50857
|
class: "pb-free-note"
|
|
50845
|
-
},
|
|
50858
|
+
}, kZ = {
|
|
50846
50859
|
key: 2,
|
|
50847
50860
|
class: "pb-actions",
|
|
50848
50861
|
"aria-label": "操作"
|
|
50849
|
-
},
|
|
50862
|
+
}, AZ = {
|
|
50850
50863
|
key: 3,
|
|
50851
50864
|
class: "pb-section",
|
|
50852
50865
|
"aria-label": "阶段耗时"
|
|
50853
|
-
},
|
|
50866
|
+
}, jZ = { class: "pb-timing-heading" }, MZ = ["aria-label"], NZ = { class: "pb-timing-totals" }, PZ = ["title"], FZ = { class: "pb-timings" }, IZ = { class: "pb-timing-who" }, LZ = { class: "pb-timing-stages" }, RZ = ["title"], zZ = {
|
|
50854
50867
|
key: 0,
|
|
50855
50868
|
class: "pb-note"
|
|
50856
|
-
},
|
|
50869
|
+
}, BZ = { class: "pb-connection" }, VZ = { class: "fine-print" }, HZ = {
|
|
50857
50870
|
key: 0,
|
|
50858
50871
|
role: "status",
|
|
50859
50872
|
class: "fine-print"
|
|
50860
|
-
},
|
|
50873
|
+
}, UZ = {
|
|
50861
50874
|
key: 2,
|
|
50862
50875
|
role: "alert",
|
|
50863
50876
|
class: "fine-print"
|
|
50864
|
-
},
|
|
50877
|
+
}, WZ = { key: 2 }, GZ = { class: "pb-invite-footer" }, KZ = { class: "pb-invite-footer" }, qZ = { class: "progress-ending pb-decision-summary" }, JZ = ["disabled"], YZ = { class: "progress-ending" }, XZ = ["disabled"], ZZ = 2e3, QZ = 90, $Z = 100, eQ = /*#__PURE__*/ MH({
|
|
50865
50878
|
__name: "ProgressBoard",
|
|
50866
50879
|
props: { docked: {
|
|
50867
50880
|
type: Boolean,
|
|
@@ -50872,7 +50885,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50872
50885
|
async function l(e) {
|
|
50873
50886
|
clearTimeout(c), s.value = "", await i("copy_member_launch", e) && (s.value = e, c = setTimeout(() => {
|
|
50874
50887
|
s.value = "";
|
|
50875
|
-
},
|
|
50888
|
+
}, ZZ));
|
|
50876
50889
|
}
|
|
50877
50890
|
let u = /* @__PURE__ */ F(!1), d = /* @__PURE__ */ F(null), f = /* @__PURE__ */ F(!1), p = ["pending", "notified"], m = {
|
|
50878
50891
|
dispatched: "已交付,等待开始",
|
|
@@ -50904,7 +50917,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50904
50917
|
R(() => _.value.id, () => {
|
|
50905
50918
|
ye.value = !1;
|
|
50906
50919
|
});
|
|
50907
|
-
let be = Z(() => x.value?.question || _.value.focus || _.value.goal || ""), xe = Z(() => be.value.length >
|
|
50920
|
+
let be = Z(() => x.value?.question || _.value.focus || _.value.goal || ""), xe = Z(() => be.value.length > QZ), Se = Z(() => y.value.timings || {
|
|
50908
50921
|
items: [],
|
|
50909
50922
|
totals: {},
|
|
50910
50923
|
count: 0
|
|
@@ -50938,7 +50951,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
50938
50951
|
};
|
|
50939
50952
|
let e = me.value;
|
|
50940
50953
|
if (e) {
|
|
50941
|
-
let t = e.result.startsWith(e.name) ? e.result : `${r.display_name(e.name)} 执行失败:${e.result}`, n = t.split("\n")[0], i = n.length >
|
|
50954
|
+
let t = e.result.startsWith(e.name) ? e.result : `${r.display_name(e.name)} 执行失败:${e.result}`, n = t.split("\n")[0], i = n.length > $Z ? `${n.slice(0, $Z)}…` : n;
|
|
50942
50955
|
return {
|
|
50943
50956
|
tone: "error",
|
|
50944
50957
|
title: "已暂停",
|
|
@@ -51083,20 +51096,20 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51083
51096
|
te.value?.settle(), await i("extend_rounds", ee.value) && (E.value = !1);
|
|
51084
51097
|
}
|
|
51085
51098
|
return (e, c) => {
|
|
51086
|
-
let f = MA, p = sA, m = pA, v = TH, T = bH, ie = zV, me =
|
|
51099
|
+
let f = MA, p = sA, m = pA, v = TH, T = bH, ie = zV, me = XK;
|
|
51087
51100
|
return U(), W("div", { class: j(["progress-board", { "is-docked": t.docked }]) }, [
|
|
51088
|
-
t.docked ? (U(), W("header",
|
|
51101
|
+
t.docked ? (U(), W("header", tZ, [c[23] ||= K("strong", null, "讨论进度", -1), K("span", nZ, P(b.value ? "全自动" : "手动"), 1)])) : Y("", !0),
|
|
51089
51102
|
K("section", {
|
|
51090
51103
|
class: j(["pb-status", `is-${we.value.tone}`]),
|
|
51091
51104
|
"aria-label": "讨论状态"
|
|
51092
51105
|
}, [
|
|
51093
|
-
K("div",
|
|
51106
|
+
K("div", rZ, [
|
|
51094
51107
|
c[24] ||= K("span", { class: "pb-dot" }, null, -1),
|
|
51095
|
-
K("strong",
|
|
51096
|
-
t.docked ? Y("", !0) : (U(), W("span",
|
|
51108
|
+
K("strong", iZ, P(we.value.title), 1),
|
|
51109
|
+
t.docked ? Y("", !0) : (U(), W("span", aZ, P(b.value ? "全自动" : "手动"), 1))
|
|
51097
51110
|
]),
|
|
51098
|
-
we.value.detail ? (U(), W("p",
|
|
51099
|
-
we.value.full_detail ? (U(), W("details",
|
|
51111
|
+
we.value.detail ? (U(), W("p", oZ, P(we.value.detail), 1)) : Y("", !0),
|
|
51112
|
+
we.value.full_detail ? (U(), W("details", sZ, [c[25] ||= K("summary", null, "查看错误详情", -1), K("pre", cZ, P(we.value.full_detail), 1)])) : Y("", !0),
|
|
51100
51113
|
ge.value && I(n).launch.available && !I(n).launch.remote ? (U(), G(f, {
|
|
51101
51114
|
key: 2,
|
|
51102
51115
|
icon: "i-lucide-arrow-left-right",
|
|
@@ -51108,12 +51121,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51108
51121
|
disabled: !!I(a),
|
|
51109
51122
|
onClick: c[0] ||= (e) => ke(ge.value, "codex")
|
|
51110
51123
|
}, null, 8, ["disabled"])) : Y("", !0),
|
|
51111
|
-
Te.value.length ? (U(), W("div",
|
|
51124
|
+
Te.value.length ? (U(), W("div", lZ, [(U(!0), W(H, null, B(Te.value, (e) => (U(), W("div", {
|
|
51112
51125
|
key: e.label,
|
|
51113
51126
|
class: "pb-meter"
|
|
51114
|
-
}, [K("div",
|
|
51127
|
+
}, [K("div", uZ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", dZ, [K("i", { style: pe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])) : Y("", !0)
|
|
51115
51128
|
], 2),
|
|
51116
|
-
be.value ? (U(), W("section",
|
|
51129
|
+
be.value ? (U(), W("section", fZ, [
|
|
51117
51130
|
c[26] ||= K("h4", null, "当前焦点", -1),
|
|
51118
51131
|
K("p", { class: j(["pb-focus", { "is-expanded": u.value }]) }, P(be.value), 3),
|
|
51119
51132
|
xe.value ? (U(), W("button", {
|
|
@@ -51123,15 +51136,15 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51123
51136
|
onClick: c[1] ||= (e) => u.value = !u.value
|
|
51124
51137
|
}, P(u.value ? "收起" : "展开"), 1)) : Y("", !0)
|
|
51125
51138
|
])) : Y("", !0),
|
|
51126
|
-
K("section",
|
|
51127
|
-
K("div",
|
|
51139
|
+
K("section", pZ, [
|
|
51140
|
+
K("div", mZ, [c[28] ||= K("h4", null, "参与者", -1), ve.value ? (U(), W("button", {
|
|
51128
51141
|
key: 0,
|
|
51129
51142
|
type: "button",
|
|
51130
51143
|
class: "pb-link",
|
|
51131
51144
|
onClick: Oe
|
|
51132
51145
|
}, [q(p, { name: "i-lucide-plus" }), c[27] ||= J("邀请", -1)])) : Y("", !0)]),
|
|
51133
|
-
_.value.held_since && x.value && !S.value ? (U(), W("p",
|
|
51134
|
-
K("ul",
|
|
51146
|
+
_.value.held_since && x.value && !S.value ? (U(), W("p", hZ, "用户有新操作," + P(I(r).display_name(x.value.expert)) + " 说完后交给主持人", 1)) : Y("", !0),
|
|
51147
|
+
K("ul", gZ, [(U(!0), W(H, null, B(A.value, (e) => (U(), W("li", {
|
|
51135
51148
|
key: e.name,
|
|
51136
51149
|
class: "pb-member"
|
|
51137
51150
|
}, [
|
|
@@ -51147,8 +51160,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51147
51160
|
"alt",
|
|
51148
51161
|
"class"
|
|
51149
51162
|
]),
|
|
51150
|
-
K("div",
|
|
51151
|
-
K("div",
|
|
51163
|
+
K("div", _Z, [
|
|
51164
|
+
K("div", vZ, [
|
|
51152
51165
|
J(P(I(r).display_name(e.name)), 1),
|
|
51153
51166
|
e.is_host ? (U(), G(p, {
|
|
51154
51167
|
key: 0,
|
|
@@ -51157,22 +51170,22 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51157
51170
|
})) : Y("", !0),
|
|
51158
51171
|
K("small", null, P(e.is_host ? `主持 · ${e.mode}` : e.mode), 1)
|
|
51159
51172
|
]),
|
|
51160
|
-
e.model ? (U(), W("div",
|
|
51161
|
-
M(e.name)?.session_mode === "borrowed" ? (U(), W("div",
|
|
51173
|
+
e.model ? (U(), W("div", yZ, P(e.model), 1)) : Y("", !0),
|
|
51174
|
+
M(e.name)?.session_mode === "borrowed" ? (U(), W("div", bZ, "借用已有会话")) : Y("", !0),
|
|
51162
51175
|
w.value ? Y("", !0) : (U(), W("div", {
|
|
51163
51176
|
key: 2,
|
|
51164
51177
|
class: j(["pb-member-status", `is-${e.tone}`])
|
|
51165
51178
|
}, [
|
|
51166
51179
|
c[29] ||= K("span", { class: "pb-dot" }, null, -1),
|
|
51167
51180
|
J(P(e.text), 1),
|
|
51168
|
-
e.failures ? (U(), W("small",
|
|
51181
|
+
e.failures ? (U(), W("small", xZ, " · 失败 " + P(e.failures) + " 次", 1)) : Y("", !0)
|
|
51169
51182
|
], 2)),
|
|
51170
|
-
e.manual && !w.value ? (U(), W("div",
|
|
51183
|
+
e.manual && !w.value ? (U(), W("div", SZ, [!M(e.name)?.registered_at && !e.is_host ? (U(), W("span", CZ, "需在它的会话中注册,才算到场")) : Y("", !0), ce.value ? (U(), W("button", {
|
|
51171
51184
|
key: 1,
|
|
51172
51185
|
type: "button",
|
|
51173
51186
|
class: "pb-link",
|
|
51174
51187
|
onClick: (t) => l(e.name)
|
|
51175
|
-
}, [q(p, { name: s.value === e.name ? "i-lucide-check" : "i-lucide-rocket" }, null, 8, ["name"]), J(P(s.value === e.name ? "已复制" : "复制启动指令"), 1)], 8,
|
|
51188
|
+
}, [q(p, { name: s.value === e.name ? "i-lucide-check" : "i-lucide-rocket" }, null, 8, ["name"]), J(P(s.value === e.name ? "已复制" : "复制启动指令"), 1)], 8, wZ)) : Y("", !0)])) : Y("", !0)
|
|
51176
51189
|
]),
|
|
51177
51190
|
De(e).length ? (U(), G(v, {
|
|
51178
51191
|
key: 0,
|
|
@@ -51206,7 +51219,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51206
51219
|
"alt",
|
|
51207
51220
|
"class"
|
|
51208
51221
|
]),
|
|
51209
|
-
K("div",
|
|
51222
|
+
K("div", TZ, [K("div", EZ, [J(P(I(r).display_name(e.name)), 1), c[30] ||= K("small", null, "暂离", -1)]), c[31] ||= K("div", { class: "pb-member-status is-neutral" }, [K("span", { class: "pb-dot" }), J("保留位置和会话,不参与安排")], -1)]),
|
|
51210
51223
|
De({ name: e.name }).length ? (U(), G(v, {
|
|
51211
51224
|
key: 0,
|
|
51212
51225
|
items: De({ name: e.name }),
|
|
@@ -51224,9 +51237,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51224
51237
|
_: 2
|
|
51225
51238
|
}, 1032, ["items"])) : Y("", !0)
|
|
51226
51239
|
]))), 128))]),
|
|
51227
|
-
!ye.value && I(n).free_error && _.value.phase !== "paused" ? (U(), W("p",
|
|
51240
|
+
!ye.value && I(n).free_error && _.value.phase !== "paused" ? (U(), W("p", DZ, P(I(n).free_error), 1)) : I(n).free_notice ? (U(), W("p", OZ, P(I(n).free_notice), 1)) : Y("", !0)
|
|
51228
51241
|
]),
|
|
51229
|
-
fe.value ? (U(), W("section",
|
|
51242
|
+
fe.value ? (U(), W("section", kZ, [
|
|
51230
51243
|
ue.value ? (U(), G(f, {
|
|
51231
51244
|
key: 0,
|
|
51232
51245
|
icon: "i-lucide-list-checks",
|
|
@@ -51320,8 +51333,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51320
51333
|
onClick: c[7] ||= (e) => o.value = !0
|
|
51321
51334
|
}, null, 8, ["disabled"])) : Y("", !0)
|
|
51322
51335
|
])) : Y("", !0),
|
|
51323
|
-
b.value && Se.value.count ? (U(), W("section",
|
|
51324
|
-
K("div",
|
|
51336
|
+
b.value && Se.value.count ? (U(), W("section", AZ, [
|
|
51337
|
+
K("div", jZ, [c[32] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(Se.value.count) + " 次执行", 1)]),
|
|
51325
51338
|
K("div", {
|
|
51326
51339
|
class: "pb-timing-bar",
|
|
51327
51340
|
role: "img",
|
|
@@ -51330,18 +51343,18 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51330
51343
|
key: e.key,
|
|
51331
51344
|
class: j(`is-${e.key}`),
|
|
51332
51345
|
style: pe({ width: `${e.percent}%` })
|
|
51333
|
-
}, null, 6))), 128))], 8,
|
|
51334
|
-
K("dl",
|
|
51346
|
+
}, null, 6))), 128))], 8, MZ),
|
|
51347
|
+
K("dl", NZ, [(U(!0), W(H, null, B(je.value, (e) => (U(), W("div", {
|
|
51335
51348
|
key: e.key,
|
|
51336
51349
|
title: e.hint
|
|
51337
|
-
}, [K("dt", null, [K("span", { class: j(`pb-timing-dot is-${e.key}`) }, null, 2), J(P(e.label), 1)]), K("dd", null, [J(P(Me(e.seconds)), 1), K("small", null, P(e.percent) + "%", 1)])], 8,
|
|
51338
|
-
K("details",
|
|
51350
|
+
}, [K("dt", null, [K("span", { class: j(`pb-timing-dot is-${e.key}`) }, null, 2), J(P(e.label), 1)]), K("dd", null, [J(P(Me(e.seconds)), 1), K("small", null, P(e.percent) + "%", 1)])], 8, PZ))), 128))]),
|
|
51351
|
+
K("details", FZ, [
|
|
51339
51352
|
c[33] ||= K("summary", null, "查看每次执行", -1),
|
|
51340
|
-
K("ol", null, [(U(!0), W(H, null, B(Se.value.items, (e) => (U(), W("li", { key: e.id }, [K("span",
|
|
51353
|
+
K("ol", null, [(U(!0), W(H, null, B(Se.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", IZ, [J("#" + P(e.id) + " " + P(I(r).display_name(e.participant)), 1), K("small", null, P(e.role === "host" ? "主持" : "专家") + " · " + P(g[e.status] || e.status), 1)]), K("span", LZ, [(U(), W(H, null, B(h, (t) => K("span", {
|
|
51341
51354
|
key: t.key,
|
|
51342
51355
|
title: t.hint
|
|
51343
|
-
}, P(t.label) + " " + P(Me(e[t.key])), 9,
|
|
51344
|
-
Se.value.count > Se.value.items.length ? (U(), W("p",
|
|
51356
|
+
}, P(t.label) + " " + P(Me(e[t.key])), 9, RZ)), 64))])]))), 128))]),
|
|
51357
|
+
Se.value.count > Se.value.items.length ? (U(), W("p", zZ, "只列出最近 " + P(Se.value.items.length) + " 次,共 " + P(Se.value.count) + " 次执行。", 1)) : Y("", !0)
|
|
51345
51358
|
])
|
|
51346
51359
|
])) : Y("", !0),
|
|
51347
51360
|
q(me, {
|
|
@@ -51354,7 +51367,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51354
51367
|
body: "dialog-body"
|
|
51355
51368
|
}
|
|
51356
51369
|
}, {
|
|
51357
|
-
body: L(() => [K("div",
|
|
51370
|
+
body: L(() => [K("div", BZ, [y.value.status === "running" ? (U(), W(H, { key: 0 }, [c[34] ||= K("p", null, "切换前需要暂停讨论,当前执行会停止,原发言安排保留。", -1), q(f, {
|
|
51358
51371
|
label: "暂停并读取配置",
|
|
51359
51372
|
icon: "i-lucide-pause",
|
|
51360
51373
|
class: "channel-primary-button",
|
|
@@ -51377,7 +51390,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51377
51390
|
}, null, 8, ["model-value", "disabled"])]),
|
|
51378
51391
|
_: 1
|
|
51379
51392
|
}),
|
|
51380
|
-
K("p",
|
|
51393
|
+
K("p", VZ, P(N.value.adapter === "codex" ? "App 需保持运行,模型与权限沿用原聊天设置。" : "切回 CLI 前,需让 App 释放原聊天;仍被占用时无法执行。"), 1),
|
|
51381
51394
|
q(f, {
|
|
51382
51395
|
label: "保存接入方式",
|
|
51383
51396
|
class: "channel-primary-button",
|
|
@@ -51385,7 +51398,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51385
51398
|
disabled: !!I(a),
|
|
51386
51399
|
onClick: c[9] ||= (e) => I(i)("save_room_configuration")
|
|
51387
51400
|
}, null, 8, ["loading", "disabled"]),
|
|
51388
|
-
I(n).launch.repair?.notice ? (U(), W("p",
|
|
51401
|
+
I(n).launch.repair?.notice ? (U(), W("p", HZ, P(I(n).launch.repair.notice), 1)) : Y("", !0),
|
|
51389
51402
|
I(n).launch.repair?.applied && oe.value ? (U(), G(f, {
|
|
51390
51403
|
key: 1,
|
|
51391
51404
|
label: "重启讨论",
|
|
@@ -51405,10 +51418,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51405
51418
|
color: "neutral",
|
|
51406
51419
|
loading: !!I(a),
|
|
51407
51420
|
onClick: Ae
|
|
51408
|
-
}, null, 8, ["loading"])), I(n).launch.repair_error ? (U(), W("p",
|
|
51421
|
+
}, null, 8, ["loading"])), I(n).launch.repair_error ? (U(), W("p", UZ, P(I(n).launch.repair_error), 1)) : Y("", !0)], 64)) : (U(), W("p", WZ, "本场状态已变化,请关闭后重新核对。"))])]),
|
|
51409
51422
|
_: 1
|
|
51410
51423
|
}, 8, ["open"]),
|
|
51411
|
-
q(
|
|
51424
|
+
q(eZ, {
|
|
51412
51425
|
open: ye.value,
|
|
51413
51426
|
"onUpdate:open": c[12] ||= (e) => ye.value = e,
|
|
51414
51427
|
description: "新专家由程序按本机软件配置启动,或由你手动启动,加入本轮发言队列。"
|
|
@@ -51426,7 +51439,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51426
51439
|
body: L(() => [K("form", {
|
|
51427
51440
|
class: "pb-reopen",
|
|
51428
51441
|
onSubmit: uu(Pe, ["prevent"])
|
|
51429
|
-
}, [q(
|
|
51442
|
+
}, [q(wq, {
|
|
51430
51443
|
ref_key: "reopen_limits",
|
|
51431
51444
|
ref: O,
|
|
51432
51445
|
rounds: ne.value,
|
|
@@ -51434,7 +51447,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51434
51447
|
minutes: re.value,
|
|
51435
51448
|
"onUpdate:minutes": c[14] ||= (e) => re.value = e,
|
|
51436
51449
|
execution: !1
|
|
51437
|
-
}, null, 8, ["rounds", "minutes"]), K("div",
|
|
51450
|
+
}, null, 8, ["rounds", "minutes"]), K("div", GZ, [q(f, {
|
|
51438
51451
|
label: "取消",
|
|
51439
51452
|
color: "neutral",
|
|
51440
51453
|
variant: "ghost",
|
|
@@ -51462,13 +51475,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51462
51475
|
body: L(() => [K("form", {
|
|
51463
51476
|
class: "pb-reopen",
|
|
51464
51477
|
onSubmit: uu(Ie, ["prevent"])
|
|
51465
|
-
}, [q(
|
|
51478
|
+
}, [q(yq, {
|
|
51466
51479
|
ref_key: "extend_picker",
|
|
51467
51480
|
ref: te,
|
|
51468
51481
|
rounds: ee.value,
|
|
51469
51482
|
"onUpdate:rounds": c[17] ||= (e) => ee.value = e,
|
|
51470
51483
|
append: ""
|
|
51471
|
-
}, null, 8, ["rounds"]), K("div",
|
|
51484
|
+
}, null, 8, ["rounds"]), K("div", KZ, [q(f, {
|
|
51472
51485
|
label: "取消",
|
|
51473
51486
|
color: "neutral",
|
|
51474
51487
|
variant: "ghost",
|
|
@@ -51480,12 +51493,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51480
51493
|
class: "channel-primary-button",
|
|
51481
51494
|
loading: I(a) === "extend_rounds",
|
|
51482
51495
|
disabled: !!I(a) || !(ee.value >= 1 && ee.value <= 100)
|
|
51483
|
-
}, null, 8, ["loading", "disabled"])])], 32), K("div",
|
|
51496
|
+
}, null, 8, ["loading", "disabled"])])], 32), K("div", qZ, [K("button", {
|
|
51484
51497
|
type: "button",
|
|
51485
51498
|
class: "progress-ending-option",
|
|
51486
51499
|
disabled: !!I(a),
|
|
51487
51500
|
onClick: c[19] ||= (e) => Fe("end_room_discussion", "deciding")
|
|
51488
|
-
}, [...c[35] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8,
|
|
51501
|
+
}, [...c[35] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8, JZ)])]),
|
|
51489
51502
|
_: 1
|
|
51490
51503
|
}, 8, ["open"]),
|
|
51491
51504
|
q(me, {
|
|
@@ -51498,18 +51511,18 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51498
51511
|
body: "dialog-body"
|
|
51499
51512
|
}
|
|
51500
51513
|
}, {
|
|
51501
|
-
body: L(() => [K("div",
|
|
51514
|
+
body: L(() => [K("div", YZ, [K("button", {
|
|
51502
51515
|
type: "button",
|
|
51503
51516
|
class: "progress-ending-option",
|
|
51504
51517
|
disabled: C.value || !!I(a),
|
|
51505
51518
|
onClick: c[21] ||= (e) => Fe("end_room_discussion")
|
|
51506
|
-
}, [...c[36] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,自动运行随之停止,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8,
|
|
51519
|
+
}, [...c[36] ||= [K("strong", null, "结束讨论", -1), K("span", null, "保留全部记录,自动运行随之停止,房间回到自由协作;需要总结时可直接请主持人写一份。", -1)]], 8, XZ)])]),
|
|
51507
51520
|
_: 1
|
|
51508
51521
|
}, 8, ["open"])
|
|
51509
51522
|
], 2);
|
|
51510
51523
|
};
|
|
51511
51524
|
}
|
|
51512
|
-
}, [["__scopeId", "data-v-4bffe952"]]),
|
|
51525
|
+
}, [["__scopeId", "data-v-4bffe952"]]), tQ = { class: "progress-panel-anchor" }, nQ = ["aria-expanded", "aria-label"], rQ = { class: "progress-chip-text" }, iQ = { class: "progress-chip-rounds" }, aQ = {
|
|
51513
51526
|
__name: "ProgressPanel",
|
|
51514
51527
|
setup(e) {
|
|
51515
51528
|
let { view: t, bridge: n } = xr("discussion"), r = /* @__PURE__ */ F(!1), i = Z(() => t.value.room), a = Z(() => i.value.limits || {}), o = Z(() => {
|
|
@@ -51536,7 +51549,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51536
51549
|
}), 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}`);
|
|
51537
51550
|
return (e, t) => {
|
|
51538
51551
|
let n = $V, a = NV;
|
|
51539
|
-
return U(), W("div",
|
|
51552
|
+
return U(), W("div", tQ, [q(n, { text: "查看讨论进度" }, {
|
|
51540
51553
|
default: L(() => [K("button", {
|
|
51541
51554
|
type: "button",
|
|
51542
51555
|
class: j(["progress-chip", `is-${o.value.tone}`]),
|
|
@@ -51544,7 +51557,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51544
51557
|
"aria-expanded": r.value,
|
|
51545
51558
|
"aria-label": `查看讨论进度:${c.value}`,
|
|
51546
51559
|
onClick: t[0] ||= (e) => r.value = !0
|
|
51547
|
-
}, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span",
|
|
51560
|
+
}, [t[2] ||= K("span", { class: "progress-dot" }, null, -1), K("span", rQ, [J(P(o.value.title), 1), K("span", iQ, " · " + P(s.value), 1)])], 10, nQ)]),
|
|
51548
51561
|
_: 1
|
|
51549
51562
|
}), q(a, {
|
|
51550
51563
|
open: r.value,
|
|
@@ -51557,12 +51570,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51557
51570
|
body: "progress-drawer-body"
|
|
51558
51571
|
}
|
|
51559
51572
|
}, {
|
|
51560
|
-
body: L(() => [q(
|
|
51573
|
+
body: L(() => [q(eQ)]),
|
|
51561
51574
|
_: 1
|
|
51562
51575
|
}, 8, ["open", "description"])]);
|
|
51563
51576
|
};
|
|
51564
51577
|
}
|
|
51565
|
-
},
|
|
51578
|
+
}, oQ = { class: "start-discussion-footer" }, sQ = 3, cQ = /*#__PURE__*/ MH({
|
|
51566
51579
|
__name: "StartDiscussionDialog",
|
|
51567
51580
|
props: {
|
|
51568
51581
|
open: {
|
|
@@ -51573,9 +51586,9 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51573
51586
|
},
|
|
51574
51587
|
emits: ["update:open"],
|
|
51575
51588
|
setup(e) {
|
|
51576
|
-
let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(
|
|
51589
|
+
let t = ro(e, "open"), { view: n, act: r, pending: i } = xr("discussion"), a = /* @__PURE__ */ F(""), o = /* @__PURE__ */ F(sQ), s = /* @__PURE__ */ F(0), c = /* @__PURE__ */ F(""), l = /* @__PURE__ */ F(!1), u = /* @__PURE__ */ F(null);
|
|
51577
51590
|
R(t, (e) => {
|
|
51578
|
-
e && (a.value = "", o.value =
|
|
51591
|
+
e && (a.value = "", o.value = sQ, s.value = 0, c.value = "", l.value = !1);
|
|
51579
51592
|
});
|
|
51580
51593
|
async function d() {
|
|
51581
51594
|
u.value?.settle();
|
|
@@ -51589,7 +51602,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51589
51602
|
}) && (t.value = !1);
|
|
51590
51603
|
}
|
|
51591
51604
|
return (e, r) => {
|
|
51592
|
-
let f = HV, p = zV, m =
|
|
51605
|
+
let f = HV, p = zV, m = eq, h = MA, g = XK;
|
|
51593
51606
|
return U(), G(g, {
|
|
51594
51607
|
open: t.value,
|
|
51595
51608
|
"onUpdate:open": r[6] ||= (e) => t.value = e,
|
|
@@ -51621,7 +51634,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51621
51634
|
}, null, 8, ["modelValue"])]),
|
|
51622
51635
|
_: 1
|
|
51623
51636
|
}),
|
|
51624
|
-
q(
|
|
51637
|
+
q(wq, {
|
|
51625
51638
|
ref_key: "limits",
|
|
51626
51639
|
ref: u,
|
|
51627
51640
|
rounds: o.value,
|
|
@@ -51643,7 +51656,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51643
51656
|
"minutes",
|
|
51644
51657
|
"execution_minutes"
|
|
51645
51658
|
]),
|
|
51646
|
-
K("div",
|
|
51659
|
+
K("div", oQ, [q(h, {
|
|
51647
51660
|
label: "取消",
|
|
51648
51661
|
color: "neutral",
|
|
51649
51662
|
variant: "ghost",
|
|
@@ -51661,55 +51674,58 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51661
51674
|
}, 8, ["open"]);
|
|
51662
51675
|
};
|
|
51663
51676
|
}
|
|
51664
|
-
}, [["__scopeId", "data-v-dee972d6"]]),
|
|
51677
|
+
}, [["__scopeId", "data-v-dee972d6"]]), lQ = { class: "progress-board is-docked" }, uQ = { class: "pb-header" }, dQ = { class: "pb-mode" }, fQ = { class: "pb-status-line" }, pQ = { role: "status" }, mQ = {
|
|
51665
51678
|
key: 0,
|
|
51666
51679
|
class: "pb-status-detail"
|
|
51667
|
-
},
|
|
51680
|
+
}, hQ = { class: "pb-meters" }, gQ = { class: "pb-meter-label" }, _Q = {
|
|
51668
51681
|
key: 0,
|
|
51669
51682
|
class: "pb-bar"
|
|
51670
|
-
},
|
|
51683
|
+
}, vQ = {
|
|
51671
51684
|
key: 0,
|
|
51672
51685
|
class: "pb-section",
|
|
51673
51686
|
"aria-label": "当前任务"
|
|
51674
|
-
},
|
|
51687
|
+
}, yQ = {
|
|
51675
51688
|
class: "pb-section",
|
|
51676
51689
|
"aria-label": "成员"
|
|
51677
|
-
},
|
|
51690
|
+
}, bQ = { class: "pb-members" }, xQ = { class: "pb-member-body" }, SQ = { class: "pb-member-name" }, CQ = {
|
|
51678
51691
|
key: 0,
|
|
51692
|
+
class: "pb-member-model"
|
|
51693
|
+
}, wQ = {
|
|
51694
|
+
key: 1,
|
|
51679
51695
|
class: "pb-member-model",
|
|
51680
51696
|
title: "它工作时请不要在原窗口继续操作"
|
|
51681
|
-
},
|
|
51697
|
+
}, TQ = {
|
|
51682
51698
|
key: 0,
|
|
51683
51699
|
role: "alert",
|
|
51684
51700
|
class: "pb-free-note is-error"
|
|
51685
|
-
},
|
|
51701
|
+
}, EQ = {
|
|
51686
51702
|
key: 1,
|
|
51687
51703
|
role: "status",
|
|
51688
51704
|
class: "pb-free-note"
|
|
51689
|
-
},
|
|
51705
|
+
}, DQ = {
|
|
51690
51706
|
key: 2,
|
|
51691
51707
|
role: "alert",
|
|
51692
51708
|
class: "pb-free-note is-error"
|
|
51693
|
-
},
|
|
51709
|
+
}, OQ = {
|
|
51694
51710
|
key: 3,
|
|
51695
51711
|
role: "status",
|
|
51696
51712
|
class: "pb-free-note"
|
|
51697
|
-
},
|
|
51713
|
+
}, kQ = {
|
|
51698
51714
|
key: 1,
|
|
51699
51715
|
class: "pb-section",
|
|
51700
51716
|
"aria-label": "头脑风暴"
|
|
51701
|
-
},
|
|
51717
|
+
}, AQ = ["onClick"], jQ = {
|
|
51702
51718
|
key: 2,
|
|
51703
51719
|
class: "pb-actions",
|
|
51704
51720
|
"aria-label": "操作"
|
|
51705
|
-
},
|
|
51721
|
+
}, MQ = {
|
|
51706
51722
|
key: 0,
|
|
51707
51723
|
class: "pb-free-note"
|
|
51708
|
-
},
|
|
51724
|
+
}, NQ = {
|
|
51709
51725
|
key: 3,
|
|
51710
51726
|
class: "pb-section",
|
|
51711
51727
|
"aria-label": "执行耗时"
|
|
51712
|
-
},
|
|
51728
|
+
}, PQ = { class: "pb-timing-heading" }, FQ = { class: "pb-timings" }, IQ = { class: "pb-timing-who" }, LQ = { class: "pb-timing-stages" }, RQ = 90, zQ = /*#__PURE__*/ MH({
|
|
51713
51729
|
__name: "FreeBoard",
|
|
51714
51730
|
setup(e) {
|
|
51715
51731
|
let { view: t, bridge: n, act: r, pending: i } = xr("discussion"), a = ["dispatched", "started"], o = {
|
|
@@ -51728,12 +51744,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51728
51744
|
}
|
|
51729
51745
|
function g(e) {
|
|
51730
51746
|
if (e.status === "away") return "已离开:不会被唤醒,可请回";
|
|
51731
|
-
if (m(e)) return "
|
|
51747
|
+
if (m(e)) return "待注册";
|
|
51732
51748
|
let t = e.execution;
|
|
51733
|
-
return t && a.includes(t.status) ? t.stale ? "执行失联,停止未确认" : "正在处理" : e.pending ? `待投递 ${e.pending} 条` : t?.status === "failed" ? `上次失败:${t.result}` : t
|
|
51749
|
+
return t && a.includes(t.status) ? t.stale ? "执行失联,停止未确认" : "正在处理" : e.pending ? `待投递 ${e.pending} 条` : t?.status === "failed" ? `上次失败:${t.result}` : !t && e.access === "manual" ? "已注册" : "空闲";
|
|
51734
51750
|
}
|
|
51735
51751
|
function _(e) {
|
|
51736
|
-
return e.access === "
|
|
51752
|
+
return e.access === "runner" ? n.participant_model(e.name, c.value, t.value.launch.room_models) : "";
|
|
51737
51753
|
}
|
|
51738
51754
|
let v = Z(() => {
|
|
51739
51755
|
if (c.value.archived) return {
|
|
@@ -51865,32 +51881,32 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51865
51881
|
ee.value = !1;
|
|
51866
51882
|
}), (e, i) => {
|
|
51867
51883
|
let a = pA, f = sA, m = MA, D = TH;
|
|
51868
|
-
return U(), W("div",
|
|
51869
|
-
K("header",
|
|
51884
|
+
return U(), W("div", lQ, [
|
|
51885
|
+
K("header", uQ, [i[5] ||= K("strong", null, "自由协作", -1), K("span", dQ, P(u.value ? `${I(n).display_name(u.value.name)} 主持` : "无主持人"), 1)]),
|
|
51870
51886
|
K("section", {
|
|
51871
51887
|
class: j(["pb-status", `is-${v.value.tone}`]),
|
|
51872
51888
|
"aria-label": "房间状态"
|
|
51873
51889
|
}, [
|
|
51874
|
-
K("div",
|
|
51875
|
-
v.value.detail ? (U(), W("p",
|
|
51876
|
-
K("div",
|
|
51890
|
+
K("div", fQ, [i[6] ||= K("span", { class: "pb-dot" }, null, -1), K("strong", pQ, P(v.value.title), 1)]),
|
|
51891
|
+
v.value.detail ? (U(), W("p", mQ, P(v.value.detail), 1)) : Y("", !0),
|
|
51892
|
+
K("div", hQ, [(U(!0), W(H, null, B(y.value, (e) => (U(), W("div", {
|
|
51877
51893
|
key: e.label,
|
|
51878
51894
|
class: "pb-meter"
|
|
51879
|
-
}, [K("div",
|
|
51895
|
+
}, [K("div", gQ, [K("span", null, P(e.label), 1), K("b", null, P(e.text), 1)]), e.ratio === null ? Y("", !0) : (U(), W("div", _Q, [K("i", { style: pe({ width: `${Math.min(100, Math.round(e.ratio * 100))}%` }) }, null, 4)]))]))), 128))])
|
|
51880
51896
|
], 2),
|
|
51881
|
-
b.value ? (U(), W("section",
|
|
51897
|
+
b.value ? (U(), W("section", vQ, [
|
|
51882
51898
|
i[7] ||= K("h4", null, "当前任务", -1),
|
|
51883
51899
|
K("p", { class: j(["pb-focus", { "is-expanded": x.value }]) }, P(b.value), 3),
|
|
51884
|
-
b.value.length >
|
|
51900
|
+
b.value.length > RQ ? (U(), W("button", {
|
|
51885
51901
|
key: 0,
|
|
51886
51902
|
type: "button",
|
|
51887
51903
|
class: "pb-link",
|
|
51888
51904
|
onClick: i[0] ||= (e) => x.value = !x.value
|
|
51889
51905
|
}, P(x.value ? "收起" : "展开"), 1)) : Y("", !0)
|
|
51890
51906
|
])) : Y("", !0),
|
|
51891
|
-
K("section",
|
|
51907
|
+
K("section", yQ, [
|
|
51892
51908
|
i[9] ||= K("h4", null, "成员", -1),
|
|
51893
|
-
K("ul",
|
|
51909
|
+
K("ul", bQ, [(U(!0), W(H, null, B(d.value, (e) => (U(), W("li", {
|
|
51894
51910
|
key: e.id,
|
|
51895
51911
|
class: j(["pb-member", { "is-away": e.status === "away" }])
|
|
51896
51912
|
}, [
|
|
@@ -51906,8 +51922,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51906
51922
|
"alt",
|
|
51907
51923
|
"class"
|
|
51908
51924
|
]),
|
|
51909
|
-
K("div",
|
|
51910
|
-
K("div",
|
|
51925
|
+
K("div", xQ, [
|
|
51926
|
+
K("div", SQ, [
|
|
51911
51927
|
J(P(I(n).display_name(e.name)), 1),
|
|
51912
51928
|
e.role === "host" ? (U(), G(f, {
|
|
51913
51929
|
key: 0,
|
|
@@ -51916,8 +51932,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51916
51932
|
})) : Y("", !0),
|
|
51917
51933
|
K("small", null, P(e.role === "host" ? `主持 · ${s[e.access]}` : s[e.access]), 1)
|
|
51918
51934
|
]),
|
|
51919
|
-
|
|
51920
|
-
e.session_mode === "borrowed" ? (U(), W("div",
|
|
51935
|
+
_(e) ? (U(), W("div", CQ, P(_(e)), 1)) : Y("", !0),
|
|
51936
|
+
e.session_mode === "borrowed" ? (U(), W("div", wQ, "借用已有会话")) : Y("", !0),
|
|
51921
51937
|
K("div", { class: j(["pb-member-status", `is-${h(e)}`]) }, [i[8] ||= K("span", { class: "pb-dot" }, null, -1), J(P(g(e)), 1)], 2)
|
|
51922
51938
|
]),
|
|
51923
51939
|
q(D, {
|
|
@@ -51940,8 +51956,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51940
51956
|
key: e.executions.join("-"),
|
|
51941
51957
|
class: "pb-free-note is-warning"
|
|
51942
51958
|
}, "可能冲突:" + P(e.members.map((e) => I(n).display_name(e)).join(" 与 ")) + " 的重叠执行观察到 " + P(e.files.join("、")) + " 变化;修改者未确认。", 1))), 128)),
|
|
51943
|
-
I(t).free_error ? (U(), W("p",
|
|
51944
|
-
I(t).access?.error ? (U(), W("p",
|
|
51959
|
+
I(t).free_error ? (U(), W("p", TQ, P(I(t).free_error), 1)) : I(t).free_notice ? (U(), W("p", EQ, P(I(t).free_notice), 1)) : Y("", !0),
|
|
51960
|
+
I(t).access?.error ? (U(), W("p", DQ, P(I(t).access.error), 1)) : I(t).access?.notice ? (U(), W("p", OQ, P(I(t).access.notice), 1)) : Y("", !0),
|
|
51945
51961
|
c.value.archived ? Y("", !0) : (U(), G(m, {
|
|
51946
51962
|
key: 4,
|
|
51947
51963
|
icon: "i-lucide-plus",
|
|
@@ -51953,13 +51969,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51953
51969
|
onClick: i[1] ||= (e) => T.value = !0
|
|
51954
51970
|
}))
|
|
51955
51971
|
]),
|
|
51956
|
-
c.value.linked_rooms?.length ? (U(), W("section",
|
|
51972
|
+
c.value.linked_rooms?.length ? (U(), W("section", kQ, [i[10] ||= K("h4", null, "头脑风暴", -1), (U(!0), W(H, null, B(c.value.linked_rooms, (e) => (U(), W("button", {
|
|
51957
51973
|
key: e.id,
|
|
51958
51974
|
type: "button",
|
|
51959
51975
|
class: "pb-link pb-free-linked",
|
|
51960
51976
|
onClick: (t) => I(r)("room", e.id)
|
|
51961
|
-
}, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8,
|
|
51962
|
-
c.value.archived ? Y("", !0) : (U(), W("section",
|
|
51977
|
+
}, [J(P(e.title), 1), K("small", null, P(I(n).phases[e.phase] || e.phase), 1)], 8, AQ))), 128))])) : Y("", !0),
|
|
51978
|
+
c.value.archived ? Y("", !0) : (U(), W("section", jQ, [q(m, {
|
|
51963
51979
|
icon: "i-lucide-messages-square",
|
|
51964
51980
|
label: "开启讨论",
|
|
51965
51981
|
size: "sm",
|
|
@@ -51969,13 +51985,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51969
51985
|
title: "由主持人推进成员轮流发言,到上限或结束后房间回到自由协作",
|
|
51970
51986
|
disabled: !E.value,
|
|
51971
51987
|
onClick: i[2] ||= (e) => ee.value = !0
|
|
51972
|
-
}, null, 8, ["disabled"]), E.value ? Y("", !0) : (U(), W("p",
|
|
51973
|
-
S.value.items.length ? (U(), W("section",
|
|
51974
|
-
q(
|
|
51988
|
+
}, null, 8, ["disabled"]), E.value ? Y("", !0) : (U(), W("p", MQ, "开启讨论需要一位由本机唤醒的 AI 主持人。"))])),
|
|
51989
|
+
S.value.items.length ? (U(), W("section", NQ, [K("div", PQ, [i[11] ||= K("h4", null, "耗时", -1), K("small", null, "共 " + P(S.value.items.length) + " 次执行 · " + P(C(S.value.total)), 1)]), K("details", FQ, [i[12] ||= K("summary", null, "查看每次执行", -1), K("ol", null, [(U(!0), W(H, null, B(S.value.items, (e) => (U(), W("li", { key: e.id }, [K("span", IQ, [J("#" + P(e.id) + " " + P(p(e.member_id)), 1), K("small", null, P(o[e.status] || e.status), 1)]), K("span", LQ, [K("span", null, "用时 " + P(C(e.seconds)), 1)])]))), 128))])])])) : Y("", !0),
|
|
51990
|
+
q(cQ, {
|
|
51975
51991
|
open: ee.value,
|
|
51976
51992
|
"onUpdate:open": i[3] ||= (e) => ee.value = e
|
|
51977
51993
|
}, null, 8, ["open"]),
|
|
51978
|
-
q(
|
|
51994
|
+
q(eZ, {
|
|
51979
51995
|
open: T.value,
|
|
51980
51996
|
"onUpdate:open": i[4] ||= (e) => T.value = e,
|
|
51981
51997
|
description: "新成员加入后不打断其他成员;点卡片翻面可设置软件、模型、项目权限和要续接的已有会话。"
|
|
@@ -51983,47 +51999,47 @@ var vq = /*#__PURE__*/ MH({
|
|
|
51983
51999
|
]);
|
|
51984
52000
|
};
|
|
51985
52001
|
}
|
|
51986
|
-
}, [["__scopeId", "data-v-
|
|
52002
|
+
}, [["__scopeId", "data-v-567c6ac8"]]), BQ = {
|
|
51987
52003
|
id: "channel-sidebar",
|
|
51988
52004
|
class: "channel-sidebar",
|
|
51989
52005
|
"aria-label": "房间导航"
|
|
51990
|
-
},
|
|
52006
|
+
}, VQ = { class: "channel-sidebar-content" }, HQ = { class: "channel-directory-heading channel-tools-heading" }, UQ = ["aria-expanded"], WQ = { class: "channel-sidebar-footer" }, GQ = ["aria-label"], KQ = { class: "channel-self" }, qQ = ["title"], JQ = [
|
|
51991
52007
|
"aria-valuemax",
|
|
51992
52008
|
"aria-valuenow",
|
|
51993
52009
|
"aria-valuetext"
|
|
51994
|
-
],
|
|
52010
|
+
], YQ = { class: "channel-main" }, XQ = { class: "channel-header" }, ZQ = { class: "channel-title-icon" }, QQ = { class: "channel-title" }, $Q = { class: "channel-title-copy" }, e$ = ["title"], t$ = {
|
|
51995
52011
|
key: 0,
|
|
51996
52012
|
class: "channel-header-context"
|
|
51997
|
-
},
|
|
52013
|
+
}, n$ = { class: "channel-header-actions" }, r$ = {
|
|
51998
52014
|
key: 0,
|
|
51999
52015
|
class: "channel-launch-recovery",
|
|
52000
52016
|
"aria-label": "未完成的创建或启动请求"
|
|
52001
|
-
},
|
|
52017
|
+
}, i$ = { role: "status" }, a$ = { class: "button-row" }, o$ = {
|
|
52002
52018
|
key: 1,
|
|
52003
52019
|
class: "channel-tabbar"
|
|
52004
|
-
},
|
|
52020
|
+
}, s$ = { class: "channel-brief-inner" }, c$ = { class: "channel-brief-heading" }, l$ = ["aria-label", "aria-expanded"], u$ = {
|
|
52005
52021
|
key: 0,
|
|
52006
52022
|
class: "channel-brief-preview"
|
|
52007
|
-
},
|
|
52023
|
+
}, d$ = {
|
|
52008
52024
|
id: "channel-brief-content",
|
|
52009
52025
|
class: "channel-brief-content"
|
|
52010
|
-
},
|
|
52026
|
+
}, f$ = ["innerHTML"], p$ = { class: "channel-brief-footer" }, m$ = { class: "channel-brief-status" }, h$ = { class: "channel-content" }, g$ = {
|
|
52011
52027
|
key: 0,
|
|
52012
52028
|
class: "content-page channel-summary",
|
|
52013
52029
|
role: "tabpanel",
|
|
52014
52030
|
"aria-label": "共识"
|
|
52015
|
-
},
|
|
52031
|
+
}, _$ = { class: "page-heading" }, v$ = { class: "form-footer" }, y$ = {
|
|
52016
52032
|
key: 1,
|
|
52017
52033
|
class: "channel-empty"
|
|
52018
|
-
},
|
|
52034
|
+
}, b$ = ["aria-valuenow", "aria-valuetext"], x$ = {
|
|
52019
52035
|
key: 2,
|
|
52020
52036
|
id: "channel-member-rail",
|
|
52021
52037
|
class: "channel-member-rail",
|
|
52022
52038
|
"aria-label": "当前焦点与讨论进度"
|
|
52023
|
-
},
|
|
52039
|
+
}, S$ = { class: "channel-rail-board" }, C$ = {
|
|
52024
52040
|
key: 2,
|
|
52025
52041
|
class: "progress-board is-docked"
|
|
52026
|
-
},
|
|
52042
|
+
}, w$ = { class: "channel-detail-title" }, T$ = { class: "info-section" }, E$ = "ai-codiscuss-channel-layout", D$ = 220, O$ = 440, k$ = 280, A$ = 16, j$ = 180, M$ = 400, N$ = 248, P$ = 16, F$ = 480, I$ = 1200, L$ = 0, R$ = {
|
|
52027
52043
|
__name: "ChannelWorkspace",
|
|
52028
52044
|
setup(e) {
|
|
52029
52045
|
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 = [{
|
|
@@ -52045,14 +52061,14 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52045
52061
|
label: "宽",
|
|
52046
52062
|
width: 1240
|
|
52047
52063
|
}
|
|
52048
|
-
}, b = Te(), x = /* @__PURE__ */ F(b.reading), S = /* @__PURE__ */ F(b.effects), C = /* @__PURE__ */ F(b.rail), w = /* @__PURE__ */ F(b.nav), T = /* @__PURE__ */ F(typeof window > "u" ? 728 : window.innerWidth), ee = /* @__PURE__ */ F(b.collapsed), E = /* @__PURE__ */ F(!0), D = /* @__PURE__ */ F(b.rail_collapsed), O = Z(() => T.value >=
|
|
52064
|
+
}, b = Te(), x = /* @__PURE__ */ F(b.reading), S = /* @__PURE__ */ F(b.effects), C = /* @__PURE__ */ F(b.rail), w = /* @__PURE__ */ F(b.nav), T = /* @__PURE__ */ F(typeof window > "u" ? 728 : window.innerWidth), ee = /* @__PURE__ */ F(b.collapsed), E = /* @__PURE__ */ F(!0), D = /* @__PURE__ */ F(b.rail_collapsed), O = Z(() => T.value >= I$), te = Z(() => t.value.tab === "discussion" && !D.value), ne = Z(() => O.value && t.value.tab === "discussion" ? D.value ? "展开房间概览" : "收起房间概览" : "房间资料与参与者"), re = Z(() => {
|
|
52049
52065
|
let e = document.createElement("template");
|
|
52050
52066
|
return e.innerHTML = o.value?.rendered_brief || "", e.content.textContent.replace(/\s+/g, " ").trim();
|
|
52051
|
-
}), ie = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(0), oe = null, k = /* @__PURE__ */ F(null), se = /* @__PURE__ */ F(null), ce = Z(() => Math.min(
|
|
52067
|
+
}), ie = /* @__PURE__ */ F(null), ae = /* @__PURE__ */ F(0), oe = null, k = /* @__PURE__ */ F(null), se = /* @__PURE__ */ F(null), ce = Z(() => Math.min(M$, Math.max(j$, T.value - F$ - L$))), le = Z(() => Math.min(w.value, ce.value)), ue = Z(() => ({
|
|
52052
52068
|
"--channel-reading-width": `${y[x.value].width}px`,
|
|
52053
52069
|
"--channel-rail-width": `${C.value}px`,
|
|
52054
52070
|
"--channel-topbar-height": `${ae.value}px`,
|
|
52055
|
-
"--channel-main-columns": ee.value ? "minmax(0, 1fr)" : `${le.value}px ${
|
|
52071
|
+
"--channel-main-columns": ee.value ? "minmax(0, 1fr)" : `${le.value}px ${L$}px minmax(0, 1fr)`
|
|
52056
52072
|
})), de = Object.entries(y).map(([e, t]) => ({
|
|
52057
52073
|
value: e,
|
|
52058
52074
|
label: t.label
|
|
@@ -52135,12 +52151,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52135
52151
|
}
|
|
52136
52152
|
function Te() {
|
|
52137
52153
|
try {
|
|
52138
|
-
let e = JSON.parse(localStorage.getItem(
|
|
52154
|
+
let e = JSON.parse(localStorage.getItem(E$)) || {};
|
|
52139
52155
|
return {
|
|
52140
52156
|
reading: Object.hasOwn(y, e.reading) ? e.reading : "default",
|
|
52141
52157
|
effects: e.effects === "reduced" ? "reduced" : "full",
|
|
52142
|
-
rail: Number.isFinite(e.rail) ? Math.min(
|
|
52143
|
-
nav: Number.isFinite(e.nav) ? Math.min(
|
|
52158
|
+
rail: Number.isFinite(e.rail) ? Math.min(O$, Math.max(D$, e.rail)) : k$,
|
|
52159
|
+
nav: Number.isFinite(e.nav) ? Math.min(M$, Math.max(j$, e.nav)) : Ee(),
|
|
52144
52160
|
collapsed: e.collapsed === !0,
|
|
52145
52161
|
brief_collapsed: e.brief_collapsed === !0,
|
|
52146
52162
|
rail_collapsed: e.rail_collapsed === !0
|
|
@@ -52149,7 +52165,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52149
52165
|
return {
|
|
52150
52166
|
reading: "default",
|
|
52151
52167
|
effects: "full",
|
|
52152
|
-
rail:
|
|
52168
|
+
rail: k$,
|
|
52153
52169
|
nav: Ee(),
|
|
52154
52170
|
collapsed: !1,
|
|
52155
52171
|
brief_collapsed: !1,
|
|
@@ -52158,11 +52174,11 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52158
52174
|
}
|
|
52159
52175
|
}
|
|
52160
52176
|
function Ee() {
|
|
52161
|
-
return typeof window > "u" ?
|
|
52177
|
+
return typeof window > "u" ? N$ : window.innerWidth >= 1900 ? 280 : window.innerWidth <= 980 ? 220 : N$;
|
|
52162
52178
|
}
|
|
52163
52179
|
function De() {
|
|
52164
52180
|
try {
|
|
52165
|
-
localStorage.setItem(
|
|
52181
|
+
localStorage.setItem(E$, JSON.stringify({
|
|
52166
52182
|
reading: x.value,
|
|
52167
52183
|
effects: S.value,
|
|
52168
52184
|
rail: C.value,
|
|
@@ -52193,19 +52209,19 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52193
52209
|
}, e.currentTarget.setPointerCapture(e.pointerId));
|
|
52194
52210
|
}
|
|
52195
52211
|
function Ne(e) {
|
|
52196
|
-
k.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(
|
|
52212
|
+
k.value?.pointer === e.pointerId && (C.value = Math.round(Math.min(O$, Math.max(D$, k.value.width + k.value.x - e.clientX))));
|
|
52197
52213
|
}
|
|
52198
52214
|
function Pe(e) {
|
|
52199
52215
|
k.value?.pointer === e.pointerId && (k.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), De());
|
|
52200
52216
|
}
|
|
52201
52217
|
function Fe(e) {
|
|
52202
52218
|
let t = {
|
|
52203
|
-
ArrowLeft: C.value +
|
|
52204
|
-
ArrowRight: C.value -
|
|
52205
|
-
Home:
|
|
52206
|
-
End:
|
|
52219
|
+
ArrowLeft: C.value + A$,
|
|
52220
|
+
ArrowRight: C.value - A$,
|
|
52221
|
+
Home: D$,
|
|
52222
|
+
End: O$
|
|
52207
52223
|
};
|
|
52208
|
-
Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(
|
|
52224
|
+
Object.hasOwn(t, e.key) && (e.preventDefault(), C.value = Math.min(O$, Math.max(D$, t[e.key])), De());
|
|
52209
52225
|
}
|
|
52210
52226
|
function Ie(e) {
|
|
52211
52227
|
e.button === 0 && (e.preventDefault(), e.currentTarget.focus(), se.value = {
|
|
@@ -52215,19 +52231,19 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52215
52231
|
}, e.currentTarget.setPointerCapture(e.pointerId));
|
|
52216
52232
|
}
|
|
52217
52233
|
function Le(e) {
|
|
52218
|
-
se.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(ce.value, Math.max(
|
|
52234
|
+
se.value?.pointer === e.pointerId && (w.value = Math.round(Math.min(ce.value, Math.max(j$, se.value.width + e.clientX - se.value.x))));
|
|
52219
52235
|
}
|
|
52220
52236
|
function Re(e) {
|
|
52221
52237
|
se.value?.pointer === e.pointerId && (se.value = null, e.currentTarget.hasPointerCapture(e.pointerId) && e.currentTarget.releasePointerCapture(e.pointerId), De());
|
|
52222
52238
|
}
|
|
52223
52239
|
function ze(e) {
|
|
52224
52240
|
let t = {
|
|
52225
|
-
ArrowLeft: le.value -
|
|
52226
|
-
ArrowRight: le.value +
|
|
52227
|
-
Home:
|
|
52241
|
+
ArrowLeft: le.value - P$,
|
|
52242
|
+
ArrowRight: le.value + P$,
|
|
52243
|
+
Home: j$,
|
|
52228
52244
|
End: ce.value
|
|
52229
52245
|
};
|
|
52230
|
-
Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(ce.value, Math.max(
|
|
52246
|
+
Object.hasOwn(t, e.key) && (e.preventDefault(), w.value = Math.min(ce.value, Math.max(j$, t[e.key])), De());
|
|
52231
52247
|
}
|
|
52232
52248
|
return (e, r) => {
|
|
52233
52249
|
let y = sA, b = lH, w = pA, T = MA, D = $V, ae = WV, oe = YV, A = KV, Te = HV, Ee = zV, De = NV, ke = AV;
|
|
@@ -52239,10 +52255,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52239
52255
|
}]),
|
|
52240
52256
|
style: pe(ue.value)
|
|
52241
52257
|
}, [
|
|
52242
|
-
K("aside",
|
|
52258
|
+
K("aside", BQ, [
|
|
52243
52259
|
r[25] ||= ws("<header class=\"channel-workspace-heading\"><span class=\"channel-brand-icon\" aria-hidden=\"true\"><svg class=\"channel-brand-dark\" viewBox=\"0 0 100 100\"><defs><linearGradient id=\"brand-d0\" gradientUnits=\"userSpaceOnUse\" x1=\"4.5\" y1=\"64\" x2=\"95.5\" y2=\"64\"><stop offset=\"0.0%\" stop-color=\"#e9ebed\"></stop><stop offset=\"6.3%\" stop-color=\"#e2e5e7\"></stop><stop offset=\"12.5%\" stop-color=\"#dcdee1\"></stop><stop offset=\"18.8%\" stop-color=\"#d5d8db\"></stop><stop offset=\"25.0%\" stop-color=\"#ced2d5\"></stop><stop offset=\"31.3%\" stop-color=\"#c8cbcf\"></stop><stop offset=\"37.5%\" stop-color=\"#c1c5ca\"></stop><stop offset=\"43.8%\" stop-color=\"#babfc4\"></stop><stop offset=\"50.0%\" stop-color=\"#b4b9be\"></stop><stop offset=\"56.3%\" stop-color=\"#a9aeb3\"></stop><stop offset=\"62.5%\" stop-color=\"#9ea3a9\"></stop><stop offset=\"68.8%\" stop-color=\"#93999f\"></stop><stop offset=\"75.0%\" stop-color=\"#888e95\"></stop><stop offset=\"81.3%\" stop-color=\"#7e848a\"></stop><stop offset=\"87.5%\" stop-color=\"#737a80\"></stop><stop offset=\"93.8%\" stop-color=\"#697077\"></stop><stop offset=\"100.0%\" stop-color=\"#5f666d\"></stop></linearGradient><linearGradient id=\"brand-d1\" gradientUnits=\"userSpaceOnUse\" x1=\"8.5\" y1=\"36\" x2=\"91.5\" y2=\"36\"><stop offset=\"0.0%\" stop-color=\"#3f86ff\"></stop><stop offset=\"6.3%\" stop-color=\"#5588ff\"></stop><stop offset=\"12.5%\" stop-color=\"#6889ff\"></stop><stop offset=\"18.8%\" stop-color=\"#788aff\"></stop><stop offset=\"25.0%\" stop-color=\"#878bff\"></stop><stop offset=\"31.3%\" stop-color=\"#958cff\"></stop><stop offset=\"37.5%\" stop-color=\"#a78aef\"></stop><stop offset=\"43.8%\" stop-color=\"#b986d7\"></stop><stop offset=\"50.0%\" stop-color=\"#ca80bf\"></stop><stop offset=\"56.3%\" stop-color=\"#da78a6\"></stop><stop offset=\"62.5%\" stop-color=\"#ea6e8c\"></stop><stop offset=\"68.8%\" stop-color=\"#f56d78\"></stop><stop offset=\"75.0%\" stop-color=\"#f77f72\"></stop><stop offset=\"81.3%\" stop-color=\"#f8906b\"></stop><stop offset=\"87.5%\" stop-color=\"#f9a163\"></stop><stop offset=\"93.8%\" stop-color=\"#fab058\"></stop><stop offset=\"100.0%\" stop-color=\"#fac04a\"></stop></linearGradient><linearGradient id=\"brand-d2\" gradientUnits=\"userSpaceOnUse\" x1=\"28.021\" y1=\"95.435\" x2=\"39.978\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#d06a49\"></stop><stop offset=\"6.3%\" stop-color=\"#d36f4f\"></stop><stop offset=\"12.5%\" stop-color=\"#d67456\"></stop><stop offset=\"18.8%\" stop-color=\"#d97a5c\"></stop><stop offset=\"25.0%\" stop-color=\"#dc7f62\"></stop><stop offset=\"31.3%\" stop-color=\"#df8468\"></stop><stop offset=\"37.5%\" stop-color=\"#e2896e\"></stop><stop offset=\"43.8%\" stop-color=\"#e58e74\"></stop><stop offset=\"50.0%\" stop-color=\"#e8937a\"></stop><stop offset=\"56.3%\" stop-color=\"#eb9d85\"></stop><stop offset=\"62.5%\" stop-color=\"#eea68f\"></stop><stop offset=\"68.8%\" stop-color=\"#f1b09a\"></stop><stop offset=\"75.0%\" stop-color=\"#f4baa4\"></stop><stop offset=\"81.3%\" stop-color=\"#f6c3af\"></stop><stop offset=\"87.5%\" stop-color=\"#f9cdb9\"></stop><stop offset=\"93.8%\" stop-color=\"#fbd6c4\"></stop><stop offset=\"100.0%\" stop-color=\"#fde0cf\"></stop></linearGradient><linearGradient id=\"brand-d3\" gradientUnits=\"userSpaceOnUse\" x1=\"71.978\" y1=\"95.435\" x2=\"60.021\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#4a5cff\"></stop><stop offset=\"6.3%\" stop-color=\"#5062ff\"></stop><stop offset=\"12.5%\" stop-color=\"#5768ff\"></stop><stop offset=\"18.8%\" stop-color=\"#5d6dff\"></stop><stop offset=\"25.0%\" stop-color=\"#6472ff\"></stop><stop offset=\"31.3%\" stop-color=\"#6b77ff\"></stop><stop offset=\"37.5%\" stop-color=\"#717cff\"></stop><stop offset=\"43.8%\" stop-color=\"#7881ff\"></stop><stop offset=\"50.0%\" stop-color=\"#7f86ff\"></stop><stop offset=\"56.3%\" stop-color=\"#8990ff\"></stop><stop offset=\"62.5%\" stop-color=\"#9399ff\"></stop><stop offset=\"68.8%\" stop-color=\"#9da2ff\"></stop><stop offset=\"75.0%\" stop-color=\"#a8abff\"></stop><stop offset=\"81.3%\" stop-color=\"#b3b4ff\"></stop><stop offset=\"87.5%\" stop-color=\"#bebdff\"></stop><stop offset=\"93.8%\" stop-color=\"#c9c5ff\"></stop><stop offset=\"100.0%\" stop-color=\"#d4ceff\"></stop></linearGradient><clipPath id=\"brand-d4\"><polygon points=\"16,46.5 84,46.5 84,25.5 16,25.5\"></polygon></clipPath><clipPath id=\"brand-d5\"><polygon points=\"16,48.5 84,48.5 84,23.5 16,23.5\"></polygon></clipPath><clipPath id=\"brand-d6\"><polygon points=\"81.410,86.630 71.410,10.630 50.589,13.369 60.589,89.369\"></polygon></clipPath><clipPath id=\"brand-d7\"><polygon points=\"83.393,86.369 73.393,10.369 48.606,13.630 58.606,89.630\"></polygon></clipPath><clipPath id=\"brand-d8\"><polygon points=\"12,74.5 88,74.5 88,53.5 12,53.5\"></polygon></clipPath><clipPath id=\"brand-d9\"><polygon points=\"12,76.5 88,76.5 88,51.5 12,51.5\"></polygon></clipPath><clipPath id=\"brand-d10\"><polygon points=\"39.410,89.369 49.410,13.369 28.589,10.630 18.589,86.630\"></polygon></clipPath><clipPath id=\"brand-d11\"><polygon points=\"41.393,89.630 51.393,13.630 26.606,10.369 16.606,86.369\"></polygon></clipPath></defs><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-d0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-d1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-d2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-d3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><g clip-path=\"url(#brand-d4)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d5)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-d2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d6)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d7)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-d1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d8)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d9)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-d3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d10)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"#202127\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-d11)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-d0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g></svg><svg class=\"channel-brand-light\" viewBox=\"0 0 100 100\"><defs><linearGradient id=\"brand-l0\" gradientUnits=\"userSpaceOnUse\" x1=\"4.5\" y1=\"64\" x2=\"95.5\" y2=\"64\"><stop offset=\"0.0%\" stop-color=\"#0b0d0f\"></stop><stop offset=\"6.3%\" stop-color=\"#101315\"></stop><stop offset=\"12.5%\" stop-color=\"#16191b\"></stop><stop offset=\"18.8%\" stop-color=\"#1c1f22\"></stop><stop offset=\"25.0%\" stop-color=\"#222529\"></stop><stop offset=\"31.3%\" stop-color=\"#282c2f\"></stop><stop offset=\"37.5%\" stop-color=\"#2e3237\"></stop><stop offset=\"43.8%\" stop-color=\"#34393e\"></stop><stop offset=\"50.0%\" stop-color=\"#3b4045\"></stop><stop offset=\"56.3%\" stop-color=\"#484d52\"></stop><stop offset=\"62.5%\" stop-color=\"#555a5f\"></stop><stop offset=\"68.8%\" stop-color=\"#62676d\"></stop><stop offset=\"75.0%\" stop-color=\"#70757b\"></stop><stop offset=\"81.3%\" stop-color=\"#7e8389\"></stop><stop offset=\"87.5%\" stop-color=\"#8c9297\"></stop><stop offset=\"93.8%\" stop-color=\"#9aa0a6\"></stop><stop offset=\"100.0%\" stop-color=\"#a9afb5\"></stop></linearGradient><linearGradient id=\"brand-l1\" gradientUnits=\"userSpaceOnUse\" x1=\"8.5\" y1=\"36\" x2=\"91.5\" y2=\"36\"><stop offset=\"0.0%\" stop-color=\"#2f7bff\"></stop><stop offset=\"6.3%\" stop-color=\"#487cff\"></stop><stop offset=\"12.5%\" stop-color=\"#5a7cff\"></stop><stop offset=\"18.8%\" stop-color=\"#6a7dff\"></stop><stop offset=\"25.0%\" stop-color=\"#797dff\"></stop><stop offset=\"31.3%\" stop-color=\"#877dff\"></stop><stop offset=\"37.5%\" stop-color=\"#997cee\"></stop><stop offset=\"43.8%\" stop-color=\"#ae79d3\"></stop><stop offset=\"50.0%\" stop-color=\"#c174b8\"></stop><stop offset=\"56.3%\" stop-color=\"#d36b9d\"></stop><stop offset=\"62.5%\" stop-color=\"#e56080\"></stop><stop offset=\"68.8%\" stop-color=\"#f15d69\"></stop><stop offset=\"75.0%\" stop-color=\"#f37162\"></stop><stop offset=\"81.3%\" stop-color=\"#f5835a\"></stop><stop offset=\"87.5%\" stop-color=\"#f79550\"></stop><stop offset=\"93.8%\" stop-color=\"#f8a542\"></stop><stop offset=\"100.0%\" stop-color=\"#f8b52c\"></stop></linearGradient><linearGradient id=\"brand-l2\" gradientUnits=\"userSpaceOnUse\" x1=\"28.021\" y1=\"95.435\" x2=\"39.978\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#b9502f\"></stop><stop offset=\"6.3%\" stop-color=\"#bd5534\"></stop><stop offset=\"12.5%\" stop-color=\"#c15a39\"></stop><stop offset=\"18.8%\" stop-color=\"#c55f3e\"></stop><stop offset=\"25.0%\" stop-color=\"#c96443\"></stop><stop offset=\"31.3%\" stop-color=\"#cd6848\"></stop><stop offset=\"37.5%\" stop-color=\"#d16d4d\"></stop><stop offset=\"43.8%\" stop-color=\"#d57252\"></stop><stop offset=\"50.0%\" stop-color=\"#d97757\"></stop><stop offset=\"56.3%\" stop-color=\"#dd8060\"></stop><stop offset=\"62.5%\" stop-color=\"#e08a69\"></stop><stop offset=\"68.8%\" stop-color=\"#e49372\"></stop><stop offset=\"75.0%\" stop-color=\"#e79c7b\"></stop><stop offset=\"81.3%\" stop-color=\"#eaa584\"></stop><stop offset=\"87.5%\" stop-color=\"#edae8d\"></stop><stop offset=\"93.8%\" stop-color=\"#f0b796\"></stop><stop offset=\"100.0%\" stop-color=\"#f3c09f\"></stop></linearGradient><linearGradient id=\"brand-l3\" gradientUnits=\"userSpaceOnUse\" x1=\"71.978\" y1=\"95.435\" x2=\"60.021\" y2=\"4.564\"><stop offset=\"0.0%\" stop-color=\"#2b33e6\"></stop><stop offset=\"6.3%\" stop-color=\"#3139e9\"></stop><stop offset=\"12.5%\" stop-color=\"#363fec\"></stop><stop offset=\"18.8%\" stop-color=\"#3c44ef\"></stop><stop offset=\"25.0%\" stop-color=\"#4249f3\"></stop><stop offset=\"31.3%\" stop-color=\"#484ef6\"></stop><stop offset=\"37.5%\" stop-color=\"#4e53f9\"></stop><stop offset=\"43.8%\" stop-color=\"#5457fc\"></stop><stop offset=\"50.0%\" stop-color=\"#5a5cff\"></stop><stop offset=\"56.3%\" stop-color=\"#6569ff\"></stop><stop offset=\"62.5%\" stop-color=\"#7075ff\"></stop><stop offset=\"68.8%\" stop-color=\"#7c80ff\"></stop><stop offset=\"75.0%\" stop-color=\"#888bff\"></stop><stop offset=\"81.3%\" stop-color=\"#9595ff\"></stop><stop offset=\"87.5%\" stop-color=\"#a29fff\"></stop><stop offset=\"93.8%\" stop-color=\"#afa9ff\"></stop><stop offset=\"100.0%\" stop-color=\"#bdb3ff\"></stop></linearGradient><clipPath id=\"brand-l4\"><polygon points=\"16,46.5 84,46.5 84,25.5 16,25.5\"></polygon></clipPath><clipPath id=\"brand-l5\"><polygon points=\"16,48.5 84,48.5 84,23.5 16,23.5\"></polygon></clipPath><clipPath id=\"brand-l6\"><polygon points=\"81.410,86.630 71.410,10.630 50.589,13.369 60.589,89.369\"></polygon></clipPath><clipPath id=\"brand-l7\"><polygon points=\"83.393,86.369 73.393,10.369 48.606,13.630 58.606,89.630\"></polygon></clipPath><clipPath id=\"brand-l8\"><polygon points=\"12,74.5 88,74.5 88,53.5 12,53.5\"></polygon></clipPath><clipPath id=\"brand-l9\"><polygon points=\"12,76.5 88,76.5 88,51.5 12,51.5\"></polygon></clipPath><clipPath id=\"brand-l10\"><polygon points=\"39.410,89.369 49.410,13.369 28.589,10.630 18.589,86.630\"></polygon></clipPath><clipPath id=\"brand-l11\"><polygon points=\"41.393,89.630 51.393,13.630 26.606,10.369 16.606,86.369\"></polygon></clipPath></defs><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-l0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-l1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-l2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-l3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line><g clip-path=\"url(#brand-l4)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l5)\"><line x1=\"29\" y1=\"88\" x2=\"39\" y2=\"12\" stroke=\"url(#brand-l2)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l6)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l7)\"><line x1=\"16\" y1=\"36\" x2=\"84\" y2=\"36\" stroke=\"url(#brand-l1)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l8)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l9)\"><line x1=\"71\" y1=\"88\" x2=\"61\" y2=\"12\" stroke=\"url(#brand-l3)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l10)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"#f6f6f6\" stroke-width=\"21\" stroke-linecap=\"round\"></line></g><g clip-path=\"url(#brand-l11)\"><line x1=\"12\" y1=\"64\" x2=\"88\" y2=\"64\" stroke=\"url(#brand-l0)\" stroke-width=\"15\" stroke-linecap=\"round\"></line></g></svg></span><span class=\"channel-brand-text\"><strong>共议</strong><span>AI CoDiscuss</span></span></header>", 1),
|
|
52244
|
-
K("div",
|
|
52245
|
-
q(
|
|
52260
|
+
K("div", VQ, [
|
|
52261
|
+
q(RX, {
|
|
52246
52262
|
onSelect: be,
|
|
52247
52263
|
onManage: ve,
|
|
52248
52264
|
onCreate: Se,
|
|
@@ -52251,12 +52267,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52251
52267
|
onDeleteFolder: we,
|
|
52252
52268
|
onArchives: ye
|
|
52253
52269
|
}),
|
|
52254
|
-
K("div",
|
|
52270
|
+
K("div", HQ, [K("button", {
|
|
52255
52271
|
type: "button",
|
|
52256
52272
|
class: "channel-section-toggle",
|
|
52257
52273
|
"aria-expanded": f.value,
|
|
52258
52274
|
onClick: r[0] ||= (e) => f.value = !f.value
|
|
52259
|
-
}, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[24] ||= J("频道工具", -1)], 8,
|
|
52275
|
+
}, [q(y, { name: f.value ? "i-lucide-chevron-down" : "i-lucide-chevron-right" }, null, 8, ["name"]), r[24] ||= J("频道工具", -1)], 8, UQ)]),
|
|
52260
52276
|
f.value ? (U(), G(b, {
|
|
52261
52277
|
key: 0,
|
|
52262
52278
|
items: ge.value,
|
|
@@ -52272,7 +52288,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52272
52288
|
}
|
|
52273
52289
|
}, null, 8, ["items"])) : Y("", !0)
|
|
52274
52290
|
]),
|
|
52275
|
-
K("footer",
|
|
52291
|
+
K("footer", WQ, [K("button", {
|
|
52276
52292
|
type: "button",
|
|
52277
52293
|
class: "channel-self-button",
|
|
52278
52294
|
"aria-label": `账号与设置:${I(n).display_name(I(_))}${_e.value ? "," + _e.value : ""}`,
|
|
@@ -52288,10 +52304,10 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52288
52304
|
"text",
|
|
52289
52305
|
"alt",
|
|
52290
52306
|
"class"
|
|
52291
|
-
]), K("span",
|
|
52307
|
+
]), K("span", KQ, [K("strong", null, P(I(n).display_name(I(_))), 1), K("span", { class: j(["channel-connection", { "is-action": _e.value }]) }, [K("span", {
|
|
52292
52308
|
class: j({ connected: I(t).connected }),
|
|
52293
52309
|
title: I(t).connected ? "网站已连接" : "网站未连接"
|
|
52294
|
-
}, null, 10,
|
|
52310
|
+
}, null, 10, qQ), J(P(_e.value || (I(t).connected ? "网站已连接" : "网站未连接")), 1)], 2)])], 8, GQ), q(D, { text: "设置" }, {
|
|
52295
52311
|
default: L(() => [q(T, {
|
|
52296
52312
|
icon: "i-lucide-settings-2",
|
|
52297
52313
|
color: "neutral",
|
|
@@ -52312,7 +52328,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52312
52328
|
"aria-label": "调整房间栏宽度",
|
|
52313
52329
|
"aria-orientation": "vertical",
|
|
52314
52330
|
"aria-controls": "channel-sidebar",
|
|
52315
|
-
"aria-valuemin":
|
|
52331
|
+
"aria-valuemin": j$,
|
|
52316
52332
|
"aria-valuemax": ce.value,
|
|
52317
52333
|
"aria-valuenow": le.value,
|
|
52318
52334
|
"aria-valuetext": `${le.value} 像素`,
|
|
@@ -52323,13 +52339,13 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52323
52339
|
onPointercancel: Re,
|
|
52324
52340
|
onLostpointercapture: Re,
|
|
52325
52341
|
onKeydown: ze
|
|
52326
|
-
}, null, 40,
|
|
52327
|
-
K("main",
|
|
52342
|
+
}, null, 40, JQ)),
|
|
52343
|
+
K("main", YQ, [K("div", {
|
|
52328
52344
|
ref_key: "topbar",
|
|
52329
52345
|
ref: ie,
|
|
52330
52346
|
class: j(["channel-topbar", { "is-overlay": o.value && I(t).tab === "discussion" }])
|
|
52331
52347
|
}, [
|
|
52332
|
-
K("header",
|
|
52348
|
+
K("header", XQ, [
|
|
52333
52349
|
q(D, { text: ee.value ? "展开房间栏" : "收起房间栏" }, {
|
|
52334
52350
|
default: L(() => [q(T, {
|
|
52335
52351
|
icon: "i-lucide-panel-left",
|
|
@@ -52354,8 +52370,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52354
52370
|
"aria-expanded": d.value,
|
|
52355
52371
|
onClick: r[4] ||= (e) => d.value = !0
|
|
52356
52372
|
}, null, 8, ["aria-expanded"]),
|
|
52357
|
-
K("span",
|
|
52358
|
-
K("div",
|
|
52373
|
+
K("span", ZQ, [q(y, { name: "i-lucide-hash" })]),
|
|
52374
|
+
K("div", QQ, [K("div", $Q, [K("h1", { title: o.value?.title }, P(o.value?.title || "共议"), 9, e$)]), o.value?.archived ? (U(), G(ae, {
|
|
52359
52375
|
key: 0,
|
|
52360
52376
|
color: "neutral",
|
|
52361
52377
|
variant: "subtle",
|
|
@@ -52364,12 +52380,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52364
52380
|
default: L(() => [...r[26] ||= [J("已存档", -1)]]),
|
|
52365
52381
|
_: 1
|
|
52366
52382
|
})) : Y("", !0)]),
|
|
52367
|
-
o.value ? (U(), W("span",
|
|
52383
|
+
o.value ? (U(), W("span", t$, [
|
|
52368
52384
|
J(P(he.value.find((e) => e.value === I(t).tab)?.label), 1),
|
|
52369
52385
|
r[27] ||= K("span", null, "·", -1),
|
|
52370
52386
|
J(P(o.value.message_count) + " 条记录", 1)
|
|
52371
52387
|
])) : Y("", !0),
|
|
52372
|
-
K("div",
|
|
52388
|
+
K("div", n$, [
|
|
52373
52389
|
I(t).tab === "discussion" ? (U(), W("form", {
|
|
52374
52390
|
key: 0,
|
|
52375
52391
|
class: "channel-search",
|
|
@@ -52427,7 +52443,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52427
52443
|
])]),
|
|
52428
52444
|
_: 1
|
|
52429
52445
|
})) : Y("", !0),
|
|
52430
|
-
o.value && !(te.value && O.value) ? (U(), G(
|
|
52446
|
+
o.value && !(te.value && O.value) ? (U(), G(aQ, { key: 2 })) : Y("", !0)
|
|
52431
52447
|
]),
|
|
52432
52448
|
q(D, { text: ne.value }, {
|
|
52433
52449
|
default: L(() => [q(T, {
|
|
@@ -52448,12 +52464,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52448
52464
|
_: 1
|
|
52449
52465
|
}, 8, ["text"])
|
|
52450
52466
|
]),
|
|
52451
|
-
I(t).launch.recoveries.length ? (U(), W("section",
|
|
52467
|
+
I(t).launch.recoveries.length ? (U(), W("section", r$, [
|
|
52452
52468
|
r[28] ||= K("h2", null, "继续未完成的请求", -1),
|
|
52453
52469
|
(U(!0), W(H, null, B(I(t).launch.recoveries, (e) => (U(), W("article", { key: e.id }, [
|
|
52454
52470
|
K("strong", null, P(e.title), 1),
|
|
52455
|
-
K("p",
|
|
52456
|
-
K("div",
|
|
52471
|
+
K("p", i$, P(e.error || "启动结果尚未确认;原请求已保存在此浏览器中。"), 1),
|
|
52472
|
+
K("div", a$, [
|
|
52457
52473
|
q(T, {
|
|
52458
52474
|
label: e.direct ? "继续创建房间" : "继续本次启动",
|
|
52459
52475
|
size: "sm",
|
|
@@ -52486,7 +52502,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52486
52502
|
]))), 128)),
|
|
52487
52503
|
r[29] ||= K("small", null, "移除待办不会删除房间或停止讨论。", -1)
|
|
52488
52504
|
])) : Y("", !0),
|
|
52489
|
-
o.value ? (U(), W("div",
|
|
52505
|
+
o.value ? (U(), W("div", o$, [q(A, {
|
|
52490
52506
|
modelValue: fe.value,
|
|
52491
52507
|
"onUpdate:modelValue": r[9] ||= (e) => fe.value = e,
|
|
52492
52508
|
items: he.value,
|
|
@@ -52501,7 +52517,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52501
52517
|
key: 2,
|
|
52502
52518
|
class: j(["channel-host-brief", { "is-collapsed": E.value }]),
|
|
52503
52519
|
"aria-label": "主持简报"
|
|
52504
|
-
}, [K("div",
|
|
52520
|
+
}, [K("div", s$, [K("div", c$, [K("button", {
|
|
52505
52521
|
type: "button",
|
|
52506
52522
|
class: "channel-brief-toggle",
|
|
52507
52523
|
"aria-label": E.value ? "展开主持简报" : "收起主持简报",
|
|
@@ -52511,8 +52527,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52511
52527
|
}, [
|
|
52512
52528
|
q(y, { name: E.value ? "i-lucide-chevron-right" : "i-lucide-chevron-down" }, null, 8, ["name"]),
|
|
52513
52529
|
K("strong", null, "主持简报" + P(E.value ? ":" : ""), 1),
|
|
52514
|
-
E.value ? (U(), W("span",
|
|
52515
|
-
], 8,
|
|
52530
|
+
E.value ? (U(), W("span", u$, P(re.value), 1)) : Y("", !0)
|
|
52531
|
+
], 8, l$), E.value ? Y("", !0) : (U(), G(T, {
|
|
52516
52532
|
key: 0,
|
|
52517
52533
|
label: "更新简报",
|
|
52518
52534
|
color: "neutral",
|
|
@@ -52520,19 +52536,19 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52520
52536
|
size: "xs",
|
|
52521
52537
|
class: "channel-brief-update",
|
|
52522
52538
|
onClick: r[10] ||= (e) => I(i)("tab", "context")
|
|
52523
|
-
}))]), vr(K("div",
|
|
52539
|
+
}))]), vr(K("div", d$, [K("div", {
|
|
52524
52540
|
class: "channel-brief-text markdown-body",
|
|
52525
52541
|
innerHTML: o.value.rendered_brief
|
|
52526
|
-
}, null, 8,
|
|
52542
|
+
}, null, 8, f$), K("div", p$, [K("span", m$, 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)
|
|
52527
52543
|
], 2), o.value ? (U(), W("div", {
|
|
52528
52544
|
key: 0,
|
|
52529
52545
|
class: j(["channel-body", { "channel-body-discussion": I(t).tab === "discussion" }])
|
|
52530
|
-
}, [K("div",
|
|
52531
|
-
vr(q(
|
|
52546
|
+
}, [K("div", h$, [
|
|
52547
|
+
vr(q(EG, {
|
|
52532
52548
|
onDetail: xe,
|
|
52533
52549
|
onEdit: r[11] ||= (e) => s.value = "edit"
|
|
52534
52550
|
}, null, 512), [[Vc, I(t).tab === "discussion"]]),
|
|
52535
|
-
I(t).tab === "context" ? (U(), W("section",
|
|
52551
|
+
I(t).tab === "context" ? (U(), W("section", g$, [K("div", _$, [r[30] ||= K("div", null, [K("h2", null, "共识与分歧"), K("p", null, "整理讨论进展,用 #消息编号 保留依据。")], -1), q(ae, {
|
|
52536
52552
|
color: "neutral",
|
|
52537
52553
|
variant: "outline"
|
|
52538
52554
|
}, {
|
|
@@ -52573,7 +52589,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52573
52589
|
}, null, 8, ["modelValue"])]),
|
|
52574
52590
|
_: 1
|
|
52575
52591
|
}),
|
|
52576
|
-
K("div",
|
|
52592
|
+
K("div", v$, [K("span", null, "依据消息截止 #" + P(I(t).snapshot_id), 1), q(T, {
|
|
52577
52593
|
type: "submit",
|
|
52578
52594
|
color: "neutral",
|
|
52579
52595
|
icon: "i-lucide-check",
|
|
@@ -52582,12 +52598,12 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52582
52598
|
loading: I(a) === "save_context"
|
|
52583
52599
|
}, null, 8, ["loading"])])
|
|
52584
52600
|
], 32)])) : Y("", !0),
|
|
52585
|
-
I(t).tab === "topic" || I(t).tab === "access" ? (U(), G(
|
|
52601
|
+
I(t).tab === "topic" || I(t).tab === "access" ? (U(), G(JK, {
|
|
52586
52602
|
key: I(t).tab,
|
|
52587
52603
|
onOpen: r[15] ||= (e) => s.value = e,
|
|
52588
52604
|
onDetail: xe
|
|
52589
52605
|
})) : Y("", !0)
|
|
52590
|
-
])], 2)) : (U(), W("div",
|
|
52606
|
+
])], 2)) : (U(), W("div", y$, [
|
|
52591
52607
|
q(y, { name: "i-lucide-hash" }),
|
|
52592
52608
|
r[31] ||= K("h2", null, "新建一个协作房间", -1),
|
|
52593
52609
|
r[32] ||= K("p", null, "邀请 AI 一起协作,随时 @ 提问;需要时开启讨论,保留所有人的观点。", -1),
|
|
@@ -52606,8 +52622,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52606
52622
|
"aria-label": "调整右侧栏宽度",
|
|
52607
52623
|
"aria-orientation": "vertical",
|
|
52608
52624
|
"aria-controls": "channel-member-rail",
|
|
52609
|
-
"aria-valuemin":
|
|
52610
|
-
"aria-valuemax":
|
|
52625
|
+
"aria-valuemin": D$,
|
|
52626
|
+
"aria-valuemax": O$,
|
|
52611
52627
|
"aria-valuenow": C.value,
|
|
52612
52628
|
"aria-valuetext": `${C.value} 像素`,
|
|
52613
52629
|
title: "拖动调整右侧栏宽度,也可使用左右方向键",
|
|
@@ -52617,11 +52633,11 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52617
52633
|
onPointercancel: Pe,
|
|
52618
52634
|
onLostpointercapture: Pe,
|
|
52619
52635
|
onKeydown: Fe
|
|
52620
|
-
}, null, 40,
|
|
52621
|
-
te.value ? (U(), W("aside",
|
|
52636
|
+
}, null, 40, b$)) : Y("", !0),
|
|
52637
|
+
te.value ? (U(), W("aside", x$, [K("section", S$, [o.value && me.value ? (U(), G(zQ, { key: 0 })) : o.value ? (U(), G(eQ, {
|
|
52622
52638
|
key: 1,
|
|
52623
52639
|
docked: ""
|
|
52624
|
-
})) : (U(), W("div",
|
|
52640
|
+
})) : (U(), W("div", C$, [...r[33] ||= [K("header", { class: "pb-header" }, [K("strong", null, "讨论进度")], -1), K("p", { class: "channel-rail-empty" }, "暂无房间,新建讨论后在这里查看进度与参与者。", -1)]]))])])) : Y("", !0),
|
|
52625
52641
|
q(De, {
|
|
52626
52642
|
open: d.value,
|
|
52627
52643
|
"onUpdate:open": r[18] ||= (e) => d.value = e,
|
|
@@ -52633,7 +52649,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52633
52649
|
body: "channel-drawer-body"
|
|
52634
52650
|
}
|
|
52635
52651
|
}, {
|
|
52636
|
-
body: L(() => [q(
|
|
52652
|
+
body: L(() => [q(RX, {
|
|
52637
52653
|
onSelect: be,
|
|
52638
52654
|
onManage: ve,
|
|
52639
52655
|
onCreate: Se,
|
|
@@ -52664,7 +52680,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52664
52680
|
}
|
|
52665
52681
|
}, {
|
|
52666
52682
|
body: L(() => [o.value ? (U(), W(H, { key: 0 }, [
|
|
52667
|
-
K("div",
|
|
52683
|
+
K("div", w$, [q(y, { name: "i-lucide-hash" }), K("h2", null, P(o.value.title), 1)]),
|
|
52668
52684
|
(U(), W(H, null, B([
|
|
52669
52685
|
{
|
|
52670
52686
|
key: "goal",
|
|
@@ -52691,7 +52707,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52691
52707
|
class: "info-section"
|
|
52692
52708
|
}, [K("h3", null, P(e.label), 1), K("p", null, P(o.value[e.key] || "尚未填写"), 1)])), 64)),
|
|
52693
52709
|
q(ke),
|
|
52694
|
-
K("section",
|
|
52710
|
+
K("section", T$, [r[34] ||= K("h3", null, "参与身份", -1), (U(!0), W(H, null, B(M.value, (e) => (U(), W("div", {
|
|
52695
52711
|
key: e.name,
|
|
52696
52712
|
class: "expert-row"
|
|
52697
52713
|
}, [
|
|
@@ -52724,7 +52740,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52724
52740
|
], 64)) : Y("", !0)]),
|
|
52725
52741
|
_: 1
|
|
52726
52742
|
}, 8, ["open"]),
|
|
52727
|
-
q(
|
|
52743
|
+
q(mX, {
|
|
52728
52744
|
modelValue: s.value,
|
|
52729
52745
|
"onUpdate:modelValue": r[21] ||= (e) => s.value = e,
|
|
52730
52746
|
"reading-width": x.value,
|
|
@@ -52748,7 +52764,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52748
52764
|
], 6);
|
|
52749
52765
|
};
|
|
52750
52766
|
}
|
|
52751
|
-
},
|
|
52767
|
+
}, z$ = {
|
|
52752
52768
|
__name: "App",
|
|
52753
52769
|
setup(e) {
|
|
52754
52770
|
return br("discussion", OV()), (e, t) => {
|
|
@@ -52759,7 +52775,7 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52759
52775
|
toaster: null
|
|
52760
52776
|
}, {
|
|
52761
52777
|
default: L(() => [q(I(Qz), { "reduced-motion": "user" }, {
|
|
52762
|
-
default: L(() => [q(
|
|
52778
|
+
default: L(() => [q(R$)]),
|
|
52763
52779
|
_: 1
|
|
52764
52780
|
})]),
|
|
52765
52781
|
_: 1
|
|
@@ -52769,8 +52785,8 @@ var vq = /*#__PURE__*/ MH({
|
|
|
52769
52785
|
};
|
|
52770
52786
|
//#endregion
|
|
52771
52787
|
//#region frontend/main.js
|
|
52772
|
-
function
|
|
52773
|
-
bu(
|
|
52788
|
+
function B$() {
|
|
52789
|
+
bu(z$).use(ph).mount("#modern-root");
|
|
52774
52790
|
}
|
|
52775
|
-
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded",
|
|
52791
|
+
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", B$) : B$();
|
|
52776
52792
|
//#endregion
|