ai_co_discuss 0.2.49 → 0.2.50
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 +2 -2
- package/package.json +1 -1
- package/web/modern.css +1 -1
- package/web/modern.js +58 -48
package/web/modern.js
CHANGED
|
@@ -47736,12 +47736,12 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47736
47736
|
"title",
|
|
47737
47737
|
"aria-label",
|
|
47738
47738
|
"onClick"
|
|
47739
|
-
], DJ = { class: "fine-print create-hint create-host-hint" }, OJ = { class: "create-section" },
|
|
47739
|
+
], DJ = { class: "fine-print create-hint create-host-hint" }, OJ = ["open"], kJ = { class: "create-section" }, AJ = { class: "form-two-columns" }, jJ = {
|
|
47740
47740
|
class: "create-limit-rule",
|
|
47741
47741
|
"aria-live": "polite"
|
|
47742
|
-
},
|
|
47743
|
-
key:
|
|
47744
|
-
class: "
|
|
47742
|
+
}, MJ = {
|
|
47743
|
+
key: 2,
|
|
47744
|
+
class: "create-section"
|
|
47745
47745
|
}, NJ = { class: "create-footer" }, PJ = {
|
|
47746
47746
|
key: 0,
|
|
47747
47747
|
role: "alert",
|
|
@@ -47761,11 +47761,10 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47761
47761
|
let h = Z(() => [...m.value].sort((e, t) => p.value.indexOf(e) - p.value.indexOf(t))), g = (e) => h.value.filter((t) => i.platform_of(t) === e).length, _ = /* @__PURE__ */ F(null), v = Z(() => l("host")), y = Z(() => h.value.filter((e) => f.value[e] !== "online" && (!d.value || f.value[e] !== "manual"))), b = /* @__PURE__ */ F(null), x = Z(() => h.value.filter((e) => f.value[e] === "cli")), S = Z(() => x.value.length > 0 || D.value), C = (e) => {
|
|
47762
47762
|
let t = r.value.launch.profiles[e] || {};
|
|
47763
47763
|
return t.adapter === "api" ? !!(t.base_url && t.api_protocol && t.api_key_ref && t.model) : !!(t.adapter && (t.adapter === "antigravity" ? t.ipc_directory : t.executable));
|
|
47764
|
-
}, w = Z(() => S.value && r.value.launch.available), T = Z(() =>
|
|
47764
|
+
}, w = Z(() => S.value && r.value.launch.available), T = Z(() => x.value.every(C) && (!x.value.length || r.value.launch.available)), E = Z(() => r.value.launch.available), D = Z(() => E.value && !!r.value.launch.scheduler?.enabled), O = Z(() => r.value.launch.available ? "" : "连接本机服务后可开启"), k = Z(() => {
|
|
47765
47765
|
let e = r.value.launch.scheduler || {};
|
|
47766
47766
|
return E.value && e.enabled && !(e.provider && e.model && e.api_key_ref);
|
|
47767
47767
|
}), ee = Z(() => S.value && !r.value.launch.available), te = 0, ne = Z(() => {
|
|
47768
|
-
if (!h.value.length) return "先添加 AI";
|
|
47769
47768
|
if (ee.value || d.value && !r.value.launch.available) return "先连接本机服务";
|
|
47770
47769
|
if (d.value && f.value[v.value] !== "cli") return "开启讨论需要一位由本机唤醒的主持人";
|
|
47771
47770
|
let e = x.value.filter((e) => !C(e));
|
|
@@ -47829,19 +47828,19 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47829
47828
|
let e = Number(l("limit-max_rounds")), t = Number(l("limit-max_minutes")), n = [e && `${e} 轮`, t && rq(t)].filter(Boolean);
|
|
47830
47829
|
return n.length ? `最多 ${n.join(" 或 ")},${n.length === 2 ? "先到则" : "到限后"}暂停,由你决定追加轮次或结束。` : "不设轮次和时长上限。";
|
|
47831
47830
|
}), me = Z(() => {
|
|
47832
|
-
let e = [
|
|
47831
|
+
let e = Object.keys(f.value), t = [
|
|
47833
47832
|
"协作房间",
|
|
47834
|
-
`${
|
|
47835
|
-
v.value ? `${v.value} 主持` : "
|
|
47833
|
+
e.length ? `${e.length} 位 AI` : "暂无成员",
|
|
47834
|
+
v.value ? `${v.value} 主持` : "暂无主持人"
|
|
47836
47835
|
];
|
|
47837
47836
|
if (d.value) {
|
|
47838
|
-
let
|
|
47839
|
-
|
|
47837
|
+
let e = l("limit-max_rounds"), n = l("limit-max_minutes");
|
|
47838
|
+
t.push("开启讨论", [e && Number(e) ? `${e} 轮` : "不限轮次", n && Number(n) ? rq(Number(n)) : "不限时长"].join(" / "));
|
|
47840
47839
|
}
|
|
47841
|
-
return
|
|
47840
|
+
return t.join(" · ");
|
|
47842
47841
|
});
|
|
47843
47842
|
return (t, c) => {
|
|
47844
|
-
let p = sA, m = MA, g = YV, x = zV, C = pA, E = zK,
|
|
47843
|
+
let p = sA, m = MA, g = YV, x = zV, C = pA, E = zK, te = HV;
|
|
47845
47844
|
return U(), W("div", vJ, [K("form", {
|
|
47846
47845
|
id: "create-discussion-form",
|
|
47847
47846
|
class: "create-scroll dialog-form",
|
|
@@ -47872,8 +47871,8 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47872
47871
|
_: 1
|
|
47873
47872
|
})]),
|
|
47874
47873
|
K("section", CJ, [
|
|
47875
|
-
c[
|
|
47876
|
-
c[
|
|
47874
|
+
c[14] ||= K("h3", null, [K("span", null, "2"), J("谁来参与")], -1),
|
|
47875
|
+
c[15] ||= K("p", { class: "fine-print create-hint" }, "每位成员可选本机唤醒,或手动(你来启动或代发,网页 AI 选手动)。", -1),
|
|
47877
47876
|
h.value.length ? (U(), W("div", wJ, [(U(!0), W(H, null, B(h.value, (e) => (U(), G(tJ, {
|
|
47878
47877
|
key: e,
|
|
47879
47878
|
name: e,
|
|
@@ -47896,7 +47895,7 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47896
47895
|
"onHost",
|
|
47897
47896
|
"onRemove",
|
|
47898
47897
|
"onMode"
|
|
47899
|
-
]))), 128))])) : (U(), W("p", TJ, "
|
|
47898
|
+
]))), 128))])) : (U(), W("p", TJ, "可以先不添加成员,建房后再邀请;同一平台可添加多位,各自独立会话。")),
|
|
47900
47899
|
K("div", {
|
|
47901
47900
|
ref_key: "library",
|
|
47902
47901
|
ref: _,
|
|
@@ -47927,13 +47926,16 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47927
47926
|
q(p, { name: "i-lucide-plus" })
|
|
47928
47927
|
], 8, EJ))), 128))], 512),
|
|
47929
47928
|
K("div", DJ, [q(p, { name: "i-lucide-crown" }), K("span", null, P(y.value.length ? "点卡片上的皇冠指定主持人:没 @ 任何人的消息由它分配;其他成员只在被你或主持人点名时发言。" : "添加一位本地 AI 后,没 @ 的消息才有人接。"), 1)]),
|
|
47930
|
-
|
|
47929
|
+
K("details", {
|
|
47930
|
+
class: "create-advanced",
|
|
47931
|
+
open: D.value
|
|
47932
|
+
}, [c[13] ||= K("summary", null, "高级:智能调度(可选)", -1), q(_J, {
|
|
47931
47933
|
free: !0,
|
|
47932
47934
|
blocker: O.value
|
|
47933
|
-
}, null, 8, ["blocker"])
|
|
47935
|
+
}, null, 8, ["blocker"])], 8, OJ)
|
|
47934
47936
|
]),
|
|
47935
|
-
K("section",
|
|
47936
|
-
c[
|
|
47937
|
+
K("section", kJ, [
|
|
47938
|
+
c[17] ||= K("h3", null, [K("span", null, "3"), J("推进方式(可选)")], -1),
|
|
47937
47939
|
q(E, {
|
|
47938
47940
|
"model-value": d.value,
|
|
47939
47941
|
label: "创建后开启讨论",
|
|
@@ -47945,7 +47947,7 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47945
47947
|
label: "讨论目标",
|
|
47946
47948
|
description: "写下问题、背景和顾虑,主持人据此推进。"
|
|
47947
47949
|
}, {
|
|
47948
|
-
default: L(() => [q(
|
|
47950
|
+
default: L(() => [q(te, {
|
|
47949
47951
|
"model-value": l("goal"),
|
|
47950
47952
|
maxlength: 1e3,
|
|
47951
47953
|
rows: 4,
|
|
@@ -47965,14 +47967,14 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47965
47967
|
"onUpdate:rounds": c[4] ||= (e) => u("limit-max_rounds", String(e)),
|
|
47966
47968
|
"onUpdate:minutes": c[5] ||= (e) => u("limit-max_minutes", String(e))
|
|
47967
47969
|
}, null, 8, ["rounds", "minutes"]),
|
|
47968
|
-
c[
|
|
47970
|
+
c[16] ||= K("p", { class: "fine-print create-hint" }, "一轮指每位专家各完成一次观点;开启后计时,暂停期间不计时。", -1),
|
|
47969
47971
|
q(E, {
|
|
47970
47972
|
"model-value": !!I(r).named_followup,
|
|
47971
47973
|
label: "点名追问",
|
|
47972
47974
|
description: "开启后,主持人每轮读完回答再逐位点名追问;关闭时专家之间互相回应、互相提问,主持人只开场和收尾。",
|
|
47973
47975
|
"onUpdate:modelValue": c[6] ||= (e) => I(i).write_named_followup(e)
|
|
47974
47976
|
}, null, 8, ["model-value"]),
|
|
47975
|
-
K("div",
|
|
47977
|
+
K("div", AJ, [q(x, {
|
|
47976
47978
|
label: "单次 AI 执行(分钟)",
|
|
47977
47979
|
description: "留空或 0 表示不限"
|
|
47978
47980
|
}, {
|
|
@@ -47988,36 +47990,44 @@ var iq = /*#__PURE__*/ jH({
|
|
|
47988
47990
|
}, null, 8, ["model-value"])]),
|
|
47989
47991
|
_: 1
|
|
47990
47992
|
})]),
|
|
47991
|
-
K("p",
|
|
47993
|
+
K("p", jJ, [q(p, { name: "i-lucide-flag" }), J(P(pe.value), 1)])
|
|
47992
47994
|
], 64)) : Y("", !0)
|
|
47993
47995
|
]),
|
|
47994
|
-
|
|
47995
|
-
|
|
47996
|
-
|
|
47997
|
-
|
|
47998
|
-
|
|
47999
|
-
|
|
48000
|
-
|
|
48001
|
-
|
|
48002
|
-
|
|
48003
|
-
|
|
48004
|
-
|
|
48005
|
-
|
|
48006
|
-
|
|
48007
|
-
|
|
48008
|
-
|
|
48009
|
-
|
|
48010
|
-
|
|
48011
|
-
|
|
47996
|
+
w.value ? (U(), W("section", MJ, [
|
|
47997
|
+
c[18] ||= K("h3", null, [K("span", null, "4"), J("项目目录")], -1),
|
|
47998
|
+
q(x, { label: "可选,供本地软件查看" }, {
|
|
47999
|
+
default: L(() => [q(g, {
|
|
48000
|
+
"model-value": I(r).launch.workspace.cwd || "",
|
|
48001
|
+
placeholder: "输入完整路径,或点右侧图标选择",
|
|
48002
|
+
class: "w-full",
|
|
48003
|
+
ui: { trailing: "pe-1" },
|
|
48004
|
+
"onUpdate:modelValue": c[8] ||= (e) => I(i).write_launch("workspace", "cwd", e)
|
|
48005
|
+
}, {
|
|
48006
|
+
trailing: L(() => [q(m, {
|
|
48007
|
+
icon: "i-lucide-folder-open",
|
|
48008
|
+
color: "neutral",
|
|
48009
|
+
variant: "ghost",
|
|
48010
|
+
size: "xs",
|
|
48011
|
+
"aria-label": "在本机选择项目目录",
|
|
48012
|
+
title: de.value ? "目录选择窗口已打开,请在本机窗口中选择" : "在本机选择文件夹",
|
|
48013
|
+
disabled: de.value,
|
|
48014
|
+
onClick: fe
|
|
48015
|
+
}, null, 8, ["title", "disabled"])]),
|
|
48016
|
+
_: 1
|
|
48017
|
+
}, 8, ["model-value"])]),
|
|
48012
48018
|
_: 1
|
|
48013
|
-
}
|
|
48014
|
-
|
|
48015
|
-
|
|
48019
|
+
}),
|
|
48020
|
+
c[19] ||= K("p", { class: "fine-print create-hint" }, "读写权限在专家卡片上设置;API 仅使用房间上下文。", -1)
|
|
48021
|
+
])) : Y("", !0)
|
|
48016
48022
|
], 32), K("footer", NJ, [w.value && I(r).launch.error ? (U(), W("p", PJ, P(I(r).launch.error), 1)) : Y("", !0), K("div", FJ, [
|
|
48017
48023
|
K("span", {
|
|
48018
48024
|
class: M(["create-summary", { "is-blocked": ne.value }]),
|
|
48019
|
-
title: me.value
|
|
48020
|
-
|
|
48025
|
+
title: ne.value || me.value,
|
|
48026
|
+
role: "status"
|
|
48027
|
+
}, [ne.value ? (U(), G(p, {
|
|
48028
|
+
key: 0,
|
|
48029
|
+
name: "i-lucide-circle-alert"
|
|
48030
|
+
})) : Y("", !0), J(P(ne.value ? `还差:${ne.value}` : me.value), 1)], 10, IJ),
|
|
48021
48031
|
q(m, {
|
|
48022
48032
|
label: "取消",
|
|
48023
48033
|
color: "neutral",
|
|
@@ -48041,7 +48051,7 @@ var iq = /*#__PURE__*/ jH({
|
|
|
48041
48051
|
])])]);
|
|
48042
48052
|
};
|
|
48043
48053
|
}
|
|
48044
|
-
}, [["__scopeId", "data-v-
|
|
48054
|
+
}, [["__scopeId", "data-v-386f472e"]]), BJ = {
|
|
48045
48055
|
class: "account-settings",
|
|
48046
48056
|
"aria-labelledby": "account-heading"
|
|
48047
48057
|
}, VJ = {
|