@blueking/chat-x 0.0.41 → 0.0.42
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/dist/index.css +1 -1
- package/dist/index.js +209 -212
- package/dist/index.js.map +1 -1
- package/dist/mcp/generated/index.json +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -7062,10 +7062,7 @@ var ld = ["src"], ud = {
|
|
|
7062
7062
|
}), Ed = ["onClick"], Dd = ["src", "onError"], Od = {
|
|
7063
7063
|
key: 1,
|
|
7064
7064
|
class: "ai-skill-list-item-icon ai-skill-list-item-icon--fallback"
|
|
7065
|
-
}, kd = { class: "ai-skill-list-item-info" }, Ad = { class: "ai-skill-list-item-name" }, jd = {
|
|
7066
|
-
key: 0,
|
|
7067
|
-
class: "ai-skill-list-item-desc"
|
|
7068
|
-
}, Md = /* @__PURE__ */ m({
|
|
7065
|
+
}, kd = { class: "ai-skill-list-item-info" }, Ad = { class: "ai-skill-list-item-name" }, jd = /* @__PURE__ */ m({
|
|
7069
7066
|
__name: "ai-skill-list",
|
|
7070
7067
|
props: {
|
|
7071
7068
|
onSelect: { type: Function },
|
|
@@ -7095,10 +7092,10 @@ var ld = ["src"], ud = {
|
|
|
7095
7092
|
alt: "",
|
|
7096
7093
|
class: "ai-skill-list-item-icon",
|
|
7097
7094
|
onError: (t) => r.add(e.skill_code)
|
|
7098
|
-
}, null, 40, Dd)) : (k(), c("div", Od, I((i = e.skill_name) == null || (i = i[0]) == null ? void 0 : i.toUpperCase()), 1)), l("div", kd, [l("div", Ad, I(e.skill_name), 1)
|
|
7095
|
+
}, null, 40, Dd)) : (k(), c("div", Od, I((i = e.skill_name) == null || (i = i[0]) == null ? void 0 : i.toUpperCase()), 1)), l("div", kd, [l("div", Ad, I(e.skill_name), 1)])], 10, Ed);
|
|
7099
7096
|
}), 128))], 512));
|
|
7100
7097
|
}
|
|
7101
|
-
}),
|
|
7098
|
+
}), Md = { class: "ai-slash-item ai-slash-group-title" }, Nd = ["onClick"], Pd = ["onClick"], Fd = ["title"], Id = /* @__PURE__ */ m({
|
|
7102
7099
|
__name: "ai-slash-menu",
|
|
7103
7100
|
props: {
|
|
7104
7101
|
onSelect: { type: Function },
|
|
@@ -7144,13 +7141,13 @@ var ld = ["src"], ud = {
|
|
|
7144
7141
|
}, [(k(!0), c(e, null, M(o.value, (n, r) => (k(), c(e, null, [n.items.length > 0 ? (k(), c("div", {
|
|
7145
7142
|
key: r,
|
|
7146
7143
|
class: "ai-slash-group"
|
|
7147
|
-
}, [l("div",
|
|
7144
|
+
}, [l("div", Md, [
|
|
7148
7145
|
(k(), c("svg", {
|
|
7149
7146
|
class: "title-icon",
|
|
7150
7147
|
style: w({ transform: i.value.includes(n.type) ? "rotate(90deg)" : "rotate(0deg)" }),
|
|
7151
7148
|
viewBox: "0 0 1024 1024",
|
|
7152
7149
|
onClick: (e) => f(n)
|
|
7153
|
-
}, [...p[0] || (p[0] = [l("path", { d: "M800 512L288 928V96z" }, null, -1)])], 12,
|
|
7150
|
+
}, [...p[0] || (p[0] = [l("path", { d: "M800 512L288 928V96z" }, null, -1)])], 12, Nd)),
|
|
7154
7151
|
l("span", { class: S(`mark-${n.type}`) }, null, 2),
|
|
7155
7152
|
d(" " + I(n.name) + " (" + I(n.items.length) + ") ", 1)
|
|
7156
7153
|
]), i.value.includes(n.type) ? (k(!0), c(e, { key: 0 }, M(n.items, (e) => {
|
|
@@ -7162,20 +7159,20 @@ var ld = ["src"], ud = {
|
|
|
7162
7159
|
}, [U((k(), c("span", {
|
|
7163
7160
|
class: "ellipsis-text",
|
|
7164
7161
|
title: e.name
|
|
7165
|
-
}, [d(I(e.name), 1)], 8,
|
|
7162
|
+
}, [d(I(e.name), 1)], 8, Fd)), [[R(Zr), {
|
|
7166
7163
|
text: e.name,
|
|
7167
7164
|
zIndex: 9999999,
|
|
7168
7165
|
placement: "right-start",
|
|
7169
7166
|
theme: "ai-slash-editor-overflow-tips-theme"
|
|
7170
|
-
}]])], 10,
|
|
7167
|
+
}]])], 10, Pd);
|
|
7171
7168
|
}), 128)) : s("", !0)])) : s("", !0)], 64))), 256))], 512)) : s("", !0);
|
|
7172
7169
|
};
|
|
7173
7170
|
}
|
|
7174
|
-
}),
|
|
7171
|
+
}), Ld = (e, t, n, r) => new Cl().delete(n, r), Rd = (e, t, n, r) => new Cl().insert(n, [[{ data: {
|
|
7175
7172
|
label: r.name,
|
|
7176
7173
|
value: r.name,
|
|
7177
7174
|
type: r.type
|
|
7178
|
-
} }]]),
|
|
7175
|
+
} }]]), zd = (e, t, n, r) => new Cl().insert(n, [[{ text: r }]]), Bd = Bu({
|
|
7179
7176
|
multiline: !0,
|
|
7180
7177
|
void: { tag: zu({
|
|
7181
7178
|
is: (e) => e.contentEditable === "false" && e.dataset.tagType !== void 0,
|
|
@@ -7186,7 +7183,7 @@ var ld = ["src"], ud = {
|
|
|
7186
7183
|
}),
|
|
7187
7184
|
plain: (e) => e.label
|
|
7188
7185
|
}) }
|
|
7189
|
-
}),
|
|
7186
|
+
}), Vd = { class: "ai-slash-input-wrapper" }, Hd = ["aria-placeholder"], Ud = { key: 0 }, Wd = ["data-tag-type"], Gd = { key: 1 }, Kd = /* @__PURE__ */ m({
|
|
7190
7187
|
__name: "ai-slash-input",
|
|
7191
7188
|
props: {
|
|
7192
7189
|
modelValue: {},
|
|
@@ -7284,7 +7281,7 @@ var ld = ["src"], ud = {
|
|
|
7284
7281
|
var t;
|
|
7285
7282
|
x.command(D);
|
|
7286
7283
|
let { column: n, line: r } = T.value;
|
|
7287
|
-
x.command(
|
|
7284
|
+
x.command(Ld, [r, n - _.value.length - 1], [r, n]), x.command(Rd, [r, n], e), x.command(zd, [r, n + _.value.length + 1 + 1], " "), (t = a.value) == null || t.hide(), ne();
|
|
7288
7285
|
}, ne = () => {
|
|
7289
7286
|
setTimeout(() => {
|
|
7290
7287
|
let e = window.getSelection(), t = document.createRange();
|
|
@@ -7310,7 +7307,7 @@ var ld = ["src"], ud = {
|
|
|
7310
7307
|
let U = (e, t, n, r) => {
|
|
7311
7308
|
if (t.type === "tag") {
|
|
7312
7309
|
let t = te(e, n);
|
|
7313
|
-
x.command(
|
|
7310
|
+
x.command(Ld, [r, t], [r, t + 1]);
|
|
7314
7311
|
}
|
|
7315
7312
|
}, oe = (e) => {
|
|
7316
7313
|
var t;
|
|
@@ -7325,7 +7322,7 @@ var ld = ["src"], ud = {
|
|
|
7325
7322
|
}, se = () => {
|
|
7326
7323
|
C == null || C(), x = Iu({
|
|
7327
7324
|
doc: h.value,
|
|
7328
|
-
schema:
|
|
7325
|
+
schema: Bd,
|
|
7329
7326
|
onChange: function() {
|
|
7330
7327
|
var e = X(function* (e) {
|
|
7331
7328
|
h.value = e, j();
|
|
@@ -7350,13 +7347,13 @@ var ld = ["src"], ud = {
|
|
|
7350
7347
|
focus: ne
|
|
7351
7348
|
}), (n, r) => {
|
|
7352
7349
|
var u;
|
|
7353
|
-
return k(), c("div",
|
|
7350
|
+
return k(), c("div", Vd, [l("div", {
|
|
7354
7351
|
ref_key: "editorRef",
|
|
7355
7352
|
ref: i,
|
|
7356
7353
|
"aria-placeholder": t.placeholder,
|
|
7357
7354
|
class: "ai-slash-input",
|
|
7358
7355
|
spellcheck: "false"
|
|
7359
|
-
}, [(u = h.value) != null && u.length && h.value.some((e) => e.length) ? (k(!0), c(e, { key: 0 }, M(h.value, (t, n) => (k(), c("div", { key: n }, [t.length ? (k(!0), c(e, { key: 0 }, M(t, (r, i) => (k(), c(e, { key: i }, [r.type === "text" ? (k(), c("span",
|
|
7356
|
+
}, [(u = h.value) != null && u.length && h.value.some((e) => e.length) ? (k(!0), c(e, { key: 0 }, M(h.value, (t, n) => (k(), c("div", { key: n }, [t.length ? (k(!0), c(e, { key: 0 }, M(t, (r, i) => (k(), c(e, { key: i }, [r.type === "text" ? (k(), c("span", Ud, I(r.text), 1)) : r.type === "tag" ? (k(), c("span", {
|
|
7360
7357
|
key: 1,
|
|
7361
7358
|
class: S(`mention-tag-${r.data.type}`),
|
|
7362
7359
|
contenteditable: "false",
|
|
@@ -7364,7 +7361,7 @@ var ld = ["src"], ud = {
|
|
|
7364
7361
|
}, [d(I(r.data.label) + " ", 1), f(R(zt), {
|
|
7365
7362
|
class: "mention-tag-remove-icon",
|
|
7366
7363
|
onClick: (e) => U(t, r, i, n)
|
|
7367
|
-
}, null, 8, ["onClick"])], 10,
|
|
7364
|
+
}, null, 8, ["onClick"])], 10, Wd)) : s("", !0)], 64))), 128)) : (k(), c("br", Gd))]))), 128)) : s("", !0)], 8, Hd), f(R(ye), {
|
|
7368
7365
|
ref_key: "tippyRef",
|
|
7369
7366
|
ref: a,
|
|
7370
7367
|
"append-to": w,
|
|
@@ -7380,11 +7377,11 @@ var ld = ["src"], ud = {
|
|
|
7380
7377
|
onHidden: P,
|
|
7381
7378
|
onShow: ce
|
|
7382
7379
|
}, {
|
|
7383
|
-
content: H(() => [g.value === "slash" ? (k(), o(
|
|
7380
|
+
content: H(() => [g.value === "slash" ? (k(), o(Id, {
|
|
7384
7381
|
key: 0,
|
|
7385
7382
|
"on-select": z,
|
|
7386
7383
|
"resource-list": v.value
|
|
7387
|
-
}, null, 8, ["resource-list"])) : g.value === "skill" ? (k(), o(
|
|
7384
|
+
}, null, 8, ["resource-list"])) : g.value === "skill" ? (k(), o(jd, {
|
|
7388
7385
|
key: 1,
|
|
7389
7386
|
"on-select": ae,
|
|
7390
7387
|
skills: y.value
|
|
@@ -7397,7 +7394,7 @@ var ld = ["src"], ud = {
|
|
|
7397
7394
|
}, 8, ["trigger-target", "z-index"])]);
|
|
7398
7395
|
};
|
|
7399
7396
|
}
|
|
7400
|
-
}),
|
|
7397
|
+
}), qd = { class: "ai-input-attachment" }, Jd = /* @__PURE__ */ m({
|
|
7401
7398
|
__name: "input-attachment",
|
|
7402
7399
|
props: {
|
|
7403
7400
|
messageState: {},
|
|
@@ -7410,7 +7407,7 @@ var ld = ["src"], ud = {
|
|
|
7410
7407
|
}, a = () => {
|
|
7411
7408
|
n.messageState === K.Disabled || n.messageState === K.Pending || n.messageState === K.Streaming || r("sendMessage");
|
|
7412
7409
|
};
|
|
7413
|
-
return (t, r) => (k(), c("div",
|
|
7410
|
+
return (t, r) => (k(), c("div", qd, [N(t.$slots, "default"), N(t.$slots, "send-icon", {}, () => [l("div", { class: S(["send-message-icon", { ["send-message-icon__" + e.messageState]: !0 }]) }, [e.messageState === R(K).Streaming || e.messageState === R(K).Pending || e.messageState === R(K).Fetching ? U((k(), o(R(pn), {
|
|
7414
7411
|
key: 0,
|
|
7415
7412
|
onClick: i
|
|
7416
7413
|
}, null, 512)), [[R(be), Y(Y({}, e.tippyOptions), {}, {
|
|
@@ -7426,10 +7423,10 @@ var ld = ["src"], ud = {
|
|
|
7426
7423
|
offset: [0, 16]
|
|
7427
7424
|
})]])], 2)])]));
|
|
7428
7425
|
}
|
|
7429
|
-
}),
|
|
7426
|
+
}), Yd = {
|
|
7430
7427
|
key: 1,
|
|
7431
7428
|
class: "ai-divider"
|
|
7432
|
-
},
|
|
7429
|
+
}, Xd = /* @__PURE__ */ m({
|
|
7433
7430
|
__name: "chat-input",
|
|
7434
7431
|
props: /* @__PURE__ */ y({
|
|
7435
7432
|
defaultUploadFiles: {},
|
|
@@ -7619,7 +7616,7 @@ var ld = ["src"], ud = {
|
|
|
7619
7616
|
files: g.value,
|
|
7620
7617
|
onDeleteFile: ee
|
|
7621
7618
|
}, null, 8, ["files"])], 512)) : s("", !0)]),
|
|
7622
|
-
f(
|
|
7619
|
+
f(Kd, {
|
|
7623
7620
|
ref_key: "aiSlashInputRef",
|
|
7624
7621
|
ref: r,
|
|
7625
7622
|
"model-value": e.modelValue,
|
|
@@ -7637,7 +7634,7 @@ var ld = ["src"], ud = {
|
|
|
7637
7634
|
"resources",
|
|
7638
7635
|
"skills"
|
|
7639
7636
|
]),
|
|
7640
|
-
f(
|
|
7637
|
+
f(Jd, {
|
|
7641
7638
|
"message-state": v.value,
|
|
7642
7639
|
"tippy-options": e.tippyOptions,
|
|
7643
7640
|
onSendMessage: y,
|
|
@@ -7651,7 +7648,7 @@ var ld = ["src"], ud = {
|
|
|
7651
7648
|
"tippy-options": e.tippyOptions,
|
|
7652
7649
|
onUpload: A
|
|
7653
7650
|
}, null, 8, ["tippy-options"])) : s("", !0),
|
|
7654
|
-
e.supportUpload && ((n = e.shortcuts) != null && n.length || _.value) ? (k(), c("span",
|
|
7651
|
+
e.supportUpload && ((n = e.shortcuts) != null && n.length || _.value) ? (k(), c("span", Yd)) : s("", !0),
|
|
7655
7652
|
N(t.$slots, "attachment", {}, () => [e.shortcuts && !_.value ? (k(), o(Qn, {
|
|
7656
7653
|
key: 0,
|
|
7657
7654
|
shortcuts: e.shortcuts,
|
|
@@ -7671,7 +7668,7 @@ var ld = ["src"], ud = {
|
|
|
7671
7668
|
}, 8, ["message-state", "tippy-options"])
|
|
7672
7669
|
], 4)], 4));
|
|
7673
7670
|
}
|
|
7674
|
-
}),
|
|
7671
|
+
}), Zd = { class: "ai-delete-confirm" }, Qd = { class: "ai-delete-confirm__title" }, $d = { class: "ai-delete-confirm__desc" }, ef = { class: "ai-delete-confirm__actions" }, tf = /* @__PURE__ */ m({
|
|
7675
7672
|
__name: "delete-tool",
|
|
7676
7673
|
props: {
|
|
7677
7674
|
description: {},
|
|
@@ -7711,10 +7708,10 @@ var ld = ["src"], ud = {
|
|
|
7711
7708
|
ref_key: "tippyRef",
|
|
7712
7709
|
ref: i
|
|
7713
7710
|
}, c.value, { onShow: u }), {
|
|
7714
|
-
content: H(() => [l("div",
|
|
7715
|
-
l("div",
|
|
7716
|
-
l("div",
|
|
7717
|
-
l("div",
|
|
7711
|
+
content: H(() => [l("div", Zd, [
|
|
7712
|
+
l("div", Qd, I(R(q)("确认删除该回答?")), 1),
|
|
7713
|
+
l("div", $d, I(R(q)("删除操作无法撤回,请谨慎操作!")), 1),
|
|
7714
|
+
l("div", ef, [f(R(se), {
|
|
7718
7715
|
size: "small",
|
|
7719
7716
|
theme: "danger",
|
|
7720
7717
|
onClick: m
|
|
@@ -7733,7 +7730,7 @@ var ld = ["src"], ud = {
|
|
|
7733
7730
|
_: 1
|
|
7734
7731
|
}, 16));
|
|
7735
7732
|
}
|
|
7736
|
-
}),
|
|
7733
|
+
}), nf = { class: "ai-feedback-title" }, rf = { class: "ai-feedback-reason-list" }, af = ["onClick"], of = { class: "ai-feedback-other" }, sf = { class: "ai-feedback-footer" }, cf = /* @__PURE__ */ m({
|
|
7737
7734
|
__name: "user-feedback",
|
|
7738
7735
|
props: {
|
|
7739
7736
|
loading: { type: Boolean },
|
|
@@ -7753,23 +7750,23 @@ var ld = ["src"], ud = {
|
|
|
7753
7750
|
class: "ai-user-feedback",
|
|
7754
7751
|
onMouseenter: r[1] || (r[1] = oe(() => {}, ["stop", "prevent"]))
|
|
7755
7752
|
}, [
|
|
7756
|
-
l("div",
|
|
7757
|
-
l("div",
|
|
7753
|
+
l("div", nf, I(t.title), 1),
|
|
7754
|
+
l("div", rf, [t.loading ? (k(), c(e, { key: 0 }, M(8, (e) => l("div", {
|
|
7758
7755
|
key: e,
|
|
7759
7756
|
class: "reason-item ai-skeleton-element"
|
|
7760
7757
|
})), 64)) : (k(!0), c(e, { key: 1 }, M(t.reasonList, (e) => (k(), c("div", {
|
|
7761
7758
|
key: e,
|
|
7762
7759
|
class: S(["reason-item", { "is-active": a.value.includes(e) }]),
|
|
7763
7760
|
onClick: (t) => o(e)
|
|
7764
|
-
}, I(e), 11,
|
|
7765
|
-
l("div",
|
|
7761
|
+
}, I(e), 11, af))), 128))]),
|
|
7762
|
+
l("div", of, [f(R(de), {
|
|
7766
7763
|
modelValue: i.value,
|
|
7767
7764
|
"onUpdate:modelValue": r[0] || (r[0] = (e) => i.value = e),
|
|
7768
7765
|
placeholder: R(q)("说出您的想法"),
|
|
7769
7766
|
rows: 3,
|
|
7770
7767
|
type: "textarea"
|
|
7771
7768
|
}, null, 8, ["modelValue", "placeholder"])]),
|
|
7772
|
-
l("div",
|
|
7769
|
+
l("div", sf, [f(R(se), {
|
|
7773
7770
|
class: "custom-btn",
|
|
7774
7771
|
disabled: !i.value && a.value.length === 0,
|
|
7775
7772
|
size: "small",
|
|
@@ -7789,17 +7786,17 @@ var ld = ["src"], ud = {
|
|
|
7789
7786
|
})])
|
|
7790
7787
|
], 32));
|
|
7791
7788
|
}
|
|
7792
|
-
}),
|
|
7789
|
+
}), lf = {
|
|
7793
7790
|
ref: "messageToolsRef",
|
|
7794
7791
|
class: "message-tools-container"
|
|
7795
|
-
},
|
|
7792
|
+
}, uf = {
|
|
7796
7793
|
class: "message-tools",
|
|
7797
7794
|
style: { "margin-right": "8px" }
|
|
7798
|
-
},
|
|
7795
|
+
}, df = {
|
|
7799
7796
|
key: 0,
|
|
7800
7797
|
class: "ai-divider",
|
|
7801
7798
|
style: { "margin-right": "8px" }
|
|
7802
|
-
},
|
|
7799
|
+
}, ff = { class: "message-tools" }, pf = /* @__PURE__ */ m({
|
|
7803
7800
|
__name: "message-tools",
|
|
7804
7801
|
props: {
|
|
7805
7802
|
messageTools: { default: () => vt },
|
|
@@ -7860,8 +7857,8 @@ var ld = ["src"], ud = {
|
|
|
7860
7857
|
};
|
|
7861
7858
|
return O(() => {
|
|
7862
7859
|
v(), p.value = [];
|
|
7863
|
-
}), (n, r) => (k(), c("div",
|
|
7864
|
-
l("div",
|
|
7860
|
+
}), (n, r) => (k(), c("div", lf, [
|
|
7861
|
+
l("div", uf, [(k(!0), c(e, null, M(t.messageTools, (n) => (k(), c(e, { key: n.id }, [n.id === "delete" ? (k(), o(tf, b({
|
|
7865
7862
|
key: 0,
|
|
7866
7863
|
ref_for: !0
|
|
7867
7864
|
}, n, {
|
|
@@ -7884,14 +7881,14 @@ var ld = ["src"], ud = {
|
|
|
7884
7881
|
"tippy-options",
|
|
7885
7882
|
"onClick"
|
|
7886
7883
|
]))], 64))), 128))]),
|
|
7887
|
-
t.updateTools.length > 0 ? (k(), c("div",
|
|
7888
|
-
l("div",
|
|
7884
|
+
t.updateTools.length > 0 ? (k(), c("div", df)) : s("", !0),
|
|
7885
|
+
l("div", ff, [(k(!0), c(e, null, M(t.updateTools, (n) => (k(), c(e, { key: n.id }, [["like", "unlike"].includes(n.id) ? (k(), o(R(ye), b({
|
|
7889
7886
|
key: 0,
|
|
7890
7887
|
ref_for: !0,
|
|
7891
7888
|
ref_key: "feedbackTippyRef",
|
|
7892
7889
|
ref: u
|
|
7893
7890
|
}, { ref_for: !0 }, h.value, { onShow: (e) => C(n.id) }), {
|
|
7894
|
-
content: H(() => [f(
|
|
7891
|
+
content: H(() => [f(cf, {
|
|
7895
7892
|
loading: d.value,
|
|
7896
7893
|
"reason-list": p.value,
|
|
7897
7894
|
title: n.id === "like" ? R(q)("什么原因让你满意?") : R(q)("什么原因让你不满意?"),
|
|
@@ -7917,7 +7914,7 @@ var ld = ["src"], ud = {
|
|
|
7917
7914
|
"onClick"
|
|
7918
7915
|
])]),
|
|
7919
7916
|
_: 2
|
|
7920
|
-
}, 1040, ["onShow"])) : n.id === "delete" ? (k(), o(
|
|
7917
|
+
}, 1040, ["onShow"])) : n.id === "delete" ? (k(), o(tf, b({
|
|
7921
7918
|
key: 1,
|
|
7922
7919
|
ref_for: !0
|
|
7923
7920
|
}, n, {
|
|
@@ -7942,7 +7939,7 @@ var ld = ["src"], ud = {
|
|
|
7942
7939
|
]))], 64))), 128))])
|
|
7943
7940
|
], 512));
|
|
7944
7941
|
}
|
|
7945
|
-
}),
|
|
7942
|
+
}), mf = m({
|
|
7946
7943
|
name: "HighlightKeyword",
|
|
7947
7944
|
props: { text: {
|
|
7948
7945
|
type: String,
|
|
@@ -7959,7 +7956,7 @@ var ld = ["src"], ud = {
|
|
|
7959
7956
|
});
|
|
7960
7957
|
return () => g("span", r.value);
|
|
7961
7958
|
}
|
|
7962
|
-
}),
|
|
7959
|
+
}), hf = { class: "ai-activity-message" }, gf = { class: "ai-activity-message-content" }, _f = /* @__PURE__ */ m({
|
|
7963
7960
|
__name: "activity-layout",
|
|
7964
7961
|
props: /* @__PURE__ */ y({ activityType: {} }, {
|
|
7965
7962
|
collapsed: Y({ type: Boolean }, { default: !1 }),
|
|
@@ -7968,53 +7965,53 @@ var ld = ["src"], ud = {
|
|
|
7968
7965
|
emits: ["update:collapsed"],
|
|
7969
7966
|
setup(e) {
|
|
7970
7967
|
let t = z(e, "collapsed");
|
|
7971
|
-
return (n, r) => (k(), c("div",
|
|
7968
|
+
return (n, r) => (k(), c("div", hf, [l("div", {
|
|
7972
7969
|
class: "ai-activity-message-title",
|
|
7973
7970
|
onClick: r[0] || (r[0] = (e) => t.value = !t.value)
|
|
7974
7971
|
}, [N(n.$slots, "title", C(h({ collapsed: t.value }))), e.activityType === R(W).FlowAgent ? s("", !0) : (k(), c("span", {
|
|
7975
7972
|
key: 0,
|
|
7976
7973
|
class: S(["ai-activity-message-title-icon collapsed-icon", { "is-collapsed": t.value }])
|
|
7977
|
-
}, [f(R(hn))], 2))]), U(l("div",
|
|
7974
|
+
}, [f(R(hn))], 2))]), U(l("div", gf, [N(n.$slots, "default")], 512), [[re, !t.value]])]));
|
|
7978
7975
|
}
|
|
7979
|
-
}),
|
|
7976
|
+
}), vf = { class: "ai-detail-section" }, yf = { class: "section-heading" }, bf = { class: "section-text" }, xf = /* @__PURE__ */ m({
|
|
7980
7977
|
__name: "detail-section",
|
|
7981
7978
|
props: { title: {} },
|
|
7982
7979
|
setup(e) {
|
|
7983
|
-
return (t, n) => (k(), c("div",
|
|
7980
|
+
return (t, n) => (k(), c("div", vf, [l("div", yf, [n[0] || (n[0] = l("span", { class: "section-bar" }, null, -1)), l("span", bf, I(e.title), 1)]), N(t.$slots, "default")]));
|
|
7984
7981
|
}
|
|
7985
|
-
}),
|
|
7982
|
+
}), Sf = { class: "ai-simple-table" }, Cf = { key: 0 }, wf = ["colspan"], Tf = /* @__PURE__ */ m({
|
|
7986
7983
|
__name: "simple-table",
|
|
7987
7984
|
props: {
|
|
7988
7985
|
columns: {},
|
|
7989
7986
|
data: {}
|
|
7990
7987
|
},
|
|
7991
7988
|
setup(t) {
|
|
7992
|
-
return (n, r) => (k(), c("table",
|
|
7989
|
+
return (n, r) => (k(), c("table", Sf, [l("thead", null, [l("tr", null, [(k(!0), c(e, null, M(t.columns, (e) => (k(), c("th", { key: e.key }, I(e.label), 1))), 128))])]), l("tbody", null, [(k(!0), c(e, null, M(t.data, (n, r) => (k(), c("tr", { key: r }, [(k(!0), c(e, null, M(t.columns, (e) => {
|
|
7993
7990
|
var t;
|
|
7994
7991
|
return k(), c("td", {
|
|
7995
7992
|
key: e.key,
|
|
7996
7993
|
class: S({ "is-break-all": e.breakAll })
|
|
7997
7994
|
}, I((t = n[e.key]) == null ? "--" : t), 3);
|
|
7998
|
-
}), 128))]))), 128)), t.data.length ? s("", !0) : (k(), c("tr",
|
|
7995
|
+
}), 128))]))), 128)), t.data.length ? s("", !0) : (k(), c("tr", Cf, [l("td", {
|
|
7999
7996
|
class: "is-empty",
|
|
8000
7997
|
colspan: t.columns.length
|
|
8001
|
-
}, " -- ", 8,
|
|
7998
|
+
}, " -- ", 8, wf)]))])]));
|
|
8002
7999
|
}
|
|
8003
|
-
}),
|
|
8000
|
+
}), Ef = { class: "flow-agent-node-detail" }, Df = { class: "detail-title" }, Of = {
|
|
8004
8001
|
key: 1,
|
|
8005
8002
|
class: "detail-title-content"
|
|
8006
|
-
},
|
|
8003
|
+
}, kf = { class: "detail-tab-bar" }, Af = ["onClick"], jf = { class: "detail-body" }, Mf = { class: "skeleton-section" }, Nf = { class: "skeleton-section" }, Pf = { class: "info-form" }, Ff = { class: "info-label" }, If = { class: "info-value" }, Lf = { class: "info-row" }, Rf = { class: "info-label" }, zf = { class: "info-value" }, Bf = {
|
|
8007
8004
|
key: 0,
|
|
8008
8005
|
class: "failure-item"
|
|
8009
|
-
},
|
|
8006
|
+
}, Vf = {
|
|
8010
8007
|
key: 1,
|
|
8011
8008
|
class: "failure-item"
|
|
8012
|
-
},
|
|
8009
|
+
}, Hf = { class: "info-row" }, Uf = { class: "info-label" }, Wf = { class: "info-value" }, Gf = {
|
|
8013
8010
|
key: 0,
|
|
8014
8011
|
class: "skeleton-section"
|
|
8015
|
-
},
|
|
8012
|
+
}, Kf = /* @__PURE__ */ function(e) {
|
|
8016
8013
|
return e.Config = "config", e.Output = "output", e;
|
|
8017
|
-
}(
|
|
8014
|
+
}(Kf || {}), qf = /* @__PURE__ */ m({
|
|
8018
8015
|
__name: "flow-agent-node-detail",
|
|
8019
8016
|
props: {
|
|
8020
8017
|
data: {},
|
|
@@ -8027,10 +8024,10 @@ var ld = ["src"], ud = {
|
|
|
8027
8024
|
},
|
|
8028
8025
|
setup(t) {
|
|
8029
8026
|
let n = [{
|
|
8030
|
-
key:
|
|
8027
|
+
key: Kf.Config,
|
|
8031
8028
|
label: q("节点配置")
|
|
8032
8029
|
}, {
|
|
8033
|
-
key:
|
|
8030
|
+
key: Kf.Output,
|
|
8034
8031
|
label: q("节点输出")
|
|
8035
8032
|
}], r = [{
|
|
8036
8033
|
key: "key",
|
|
@@ -8059,7 +8056,7 @@ var ld = ["src"], ud = {
|
|
|
8059
8056
|
breakAll: !0,
|
|
8060
8057
|
key: "value",
|
|
8061
8058
|
label: q("参数值")
|
|
8062
|
-
}], p = { forced_fail: dt ? "Force Fail" : "强制失败" }, m = t, h = F(
|
|
8059
|
+
}], p = { forced_fail: dt ? "Force Fail" : "强制失败" }, m = t, h = F(Kf.Config), g = a(() => {
|
|
8063
8060
|
var e;
|
|
8064
8061
|
return (e = m.data) == null ? void 0 : e.basic_info;
|
|
8065
8062
|
}), _ = a(() => {
|
|
@@ -8124,56 +8121,56 @@ var ld = ["src"], ud = {
|
|
|
8124
8121
|
}
|
|
8125
8122
|
return (a, p) => {
|
|
8126
8123
|
var m;
|
|
8127
|
-
return k(), c("div",
|
|
8128
|
-
l("h3",
|
|
8129
|
-
l("div",
|
|
8124
|
+
return k(), c("div", Ef, [
|
|
8125
|
+
l("h3", Df, [t.loading ? (k(), c(e, { key: 0 }, [l("span", null, I(R(q)("节点")) + ":", 1), p[0] || (p[0] = l("span", { class: "skeleton-title ai-skeleton-element" }, null, -1))], 64)) : (k(), c("div", Of, I(R(q)("节点")) + ":" + I((m = g.value) == null ? void 0 : m.node_name), 1)), N(a.$slots, "locateButton")]),
|
|
8126
|
+
l("div", kf, [(k(), c(e, null, M(n, (e) => l("div", {
|
|
8130
8127
|
key: e.key,
|
|
8131
8128
|
class: S(["detail-tab", { "is-active": h.value === e.key }]),
|
|
8132
8129
|
onClick: (t) => h.value = e.key
|
|
8133
|
-
}, [(k(), o(P(e.key ===
|
|
8134
|
-
l("div",
|
|
8130
|
+
}, [(k(), o(P(e.key === Kf.Config ? R(Yt) : R(Jt)), { class: "detail-tab-icon" })), d(" " + I(e.label), 1)], 10, Af)), 64))]),
|
|
8131
|
+
l("div", jf, [h.value === Kf.Config ? (k(), c(e, { key: 0 }, [t.loading ? (k(), c(e, { key: 0 }, [l("div", Mf, [p[1] || (p[1] = l("div", { class: "skeleton-heading ai-skeleton-element" }, null, -1)), (k(), c(e, null, M(6, (e) => l("div", {
|
|
8135
8132
|
key: e,
|
|
8136
8133
|
class: "skeleton-row ai-skeleton-element"
|
|
8137
|
-
})), 64))]), l("div",
|
|
8134
|
+
})), 64))]), l("div", Nf, [p[2] || (p[2] = l("div", { class: "skeleton-heading ai-skeleton-element" }, null, -1)), (k(), c(e, null, M(4, (e) => l("div", {
|
|
8138
8135
|
key: e,
|
|
8139
8136
|
class: "skeleton-row ai-skeleton-element"
|
|
8140
8137
|
})), 64))])], 64)) : (k(), c(e, { key: 1 }, [
|
|
8141
|
-
f(
|
|
8138
|
+
f(xf, { title: R(q)("基础信息") }, {
|
|
8142
8139
|
default: H(() => {
|
|
8143
8140
|
var t, n, r;
|
|
8144
|
-
return [l("div",
|
|
8141
|
+
return [l("div", Pf, [
|
|
8145
8142
|
(k(!0), c(e, null, M(_.value, (e) => (k(), c("div", {
|
|
8146
8143
|
key: e.label,
|
|
8147
8144
|
class: "info-row"
|
|
8148
|
-
}, [l("div",
|
|
8149
|
-
l("div",
|
|
8150
|
-
l("div",
|
|
8145
|
+
}, [l("div", Ff, I(e.label), 1), l("div", If, I(e.value), 1)]))), 128)),
|
|
8146
|
+
l("div", Lf, [l("div", Rf, I(R(q)("失败处理")), 1), l("div", zf, [v.value ? (k(), c(e, { key: 0 }, [(t = g.value) != null && t.skippable ? (k(), c("span", Bf, [p[3] || (p[3] = l("span", { class: "tag-badge" }, "MS", -1)), d(" " + I(R(q)("手动跳过")) + I(!((n = g.value) == null || (n = n.auto_retry) == null) && n.enable ? ";" : ""), 1)])) : s("", !0), !((r = g.value) == null || (r = r.auto_retry) == null) && r.enable ? (k(), c("span", Vf, [p[4] || (p[4] = l("span", { class: "tag-badge" }, "AR", -1)), d(" " + I(y.value), 1)])) : s("", !0)], 64)) : (k(), c(e, { key: 1 }, [d("--")], 64))])]),
|
|
8147
|
+
l("div", Hf, [l("div", Uf, I(R(q)("超时控制")), 1), l("div", Wf, I(b.value), 1)])
|
|
8151
8148
|
])];
|
|
8152
8149
|
}),
|
|
8153
8150
|
_: 1
|
|
8154
8151
|
}, 8, ["title"]),
|
|
8155
|
-
f(
|
|
8156
|
-
default: H(() => [f(
|
|
8152
|
+
f(xf, { title: R(q)("输入参数") }, {
|
|
8153
|
+
default: H(() => [f(Tf, {
|
|
8157
8154
|
columns: r,
|
|
8158
8155
|
data: x.value
|
|
8159
8156
|
}, null, 8, ["data"])]),
|
|
8160
8157
|
_: 1
|
|
8161
8158
|
}, 8, ["title"]),
|
|
8162
|
-
f(
|
|
8163
|
-
default: H(() => [f(
|
|
8159
|
+
f(xf, { title: R(q)("输出参数") }, {
|
|
8160
|
+
default: H(() => [f(Tf, {
|
|
8164
8161
|
columns: i,
|
|
8165
8162
|
data: C.value
|
|
8166
8163
|
}, null, 8, ["data"])]),
|
|
8167
8164
|
_: 1
|
|
8168
8165
|
}, 8, ["title"])
|
|
8169
|
-
], 64))], 64)) : (k(), c(e, { key: 1 }, [t.loading ? (k(), c("div",
|
|
8166
|
+
], 64))], 64)) : (k(), c(e, { key: 1 }, [t.loading ? (k(), c("div", Gf, [p[5] || (p[5] = l("div", { class: "skeleton-heading ai-skeleton-element" }, null, -1)), (k(), c(e, null, M(5, (e) => l("div", {
|
|
8170
8167
|
key: e,
|
|
8171
8168
|
class: "skeleton-row ai-skeleton-element"
|
|
8172
|
-
})), 64))])) : (k(), o(
|
|
8169
|
+
})), 64))])) : (k(), o(xf, {
|
|
8173
8170
|
key: 1,
|
|
8174
8171
|
title: R(q)("结构化输出")
|
|
8175
8172
|
}, {
|
|
8176
|
-
default: H(() => [f(
|
|
8173
|
+
default: H(() => [f(Tf, {
|
|
8177
8174
|
columns: u,
|
|
8178
8175
|
data: w.value
|
|
8179
8176
|
}, null, 8, ["data"])]),
|
|
@@ -8182,16 +8179,16 @@ var ld = ["src"], ud = {
|
|
|
8182
8179
|
]);
|
|
8183
8180
|
};
|
|
8184
8181
|
}
|
|
8185
|
-
}),
|
|
8182
|
+
}), Jf = { class: "ai-activity-message-title-text" }, Yf = { class: "flow-agent-title-label" }, Xf = { class: "flow-agent-task-state-icon" }, Zf = { class: "flow-agent-task-name" }, Qf = {
|
|
8186
8183
|
key: 0,
|
|
8187
8184
|
class: "flow-agent-task-trailing"
|
|
8188
|
-
},
|
|
8185
|
+
}, $f = { class: "flow-agent-task-time" }, ep = ["onClick"], tp = { class: "flow-agent-task-nodes" }, np = {
|
|
8189
8186
|
key: 1,
|
|
8190
8187
|
class: "flow-agent-status-dot"
|
|
8191
|
-
},
|
|
8188
|
+
}, rp = ["title"], ip = {
|
|
8192
8189
|
key: 0,
|
|
8193
8190
|
class: "flow-agent-node-trailing"
|
|
8194
|
-
},
|
|
8191
|
+
}, ap = { class: "flow-agent-node-time" }, op = ["onClick"], sp = /* @__PURE__ */ m({
|
|
8195
8192
|
__name: "flow-agent-content",
|
|
8196
8193
|
props: /* @__PURE__ */ y({
|
|
8197
8194
|
content: {},
|
|
@@ -8291,7 +8288,7 @@ var ld = ["src"], ud = {
|
|
|
8291
8288
|
label: t.name,
|
|
8292
8289
|
name: L(e, t),
|
|
8293
8290
|
data: {
|
|
8294
|
-
component:
|
|
8291
|
+
component: qf,
|
|
8295
8292
|
messageUid: h.messageUid,
|
|
8296
8293
|
props: {
|
|
8297
8294
|
loading: !0,
|
|
@@ -8309,7 +8306,7 @@ var ld = ["src"], ud = {
|
|
|
8309
8306
|
label: q("有效证据"),
|
|
8310
8307
|
name: N(e),
|
|
8311
8308
|
data: {
|
|
8312
|
-
component:
|
|
8309
|
+
component: qf,
|
|
8313
8310
|
messageUid: h.messageUid,
|
|
8314
8311
|
props: {
|
|
8315
8312
|
loading: !0,
|
|
@@ -8330,7 +8327,7 @@ var ld = ["src"], ud = {
|
|
|
8330
8327
|
_ == null || _(j(e)), _ == null || _(N(e));
|
|
8331
8328
|
for (let t of de(e)) _ == null || _(L(e, t));
|
|
8332
8329
|
}
|
|
8333
|
-
}), (t, r) => (k(), o(
|
|
8330
|
+
}), (t, r) => (k(), o(_f, {
|
|
8334
8331
|
collapsed: C.value,
|
|
8335
8332
|
"onUpdate:collapsed": r[0] || (r[0] = (e) => C.value = e),
|
|
8336
8333
|
"activity-type": R(W).FlowAgent,
|
|
@@ -8339,7 +8336,7 @@ var ld = ["src"], ud = {
|
|
|
8339
8336
|
title: H(() => [l("span", { class: S(["ai-activity-message-title-icon", { "icon-collapsed": C.value }]) }, [D.value ? (k(), o(Hn, {
|
|
8340
8337
|
key: 0,
|
|
8341
8338
|
size: 12
|
|
8342
|
-
})) : (k(), o(R(Bt), { key: 1 }))], 2), l("span",
|
|
8339
|
+
})) : (k(), o(R(Bt), { key: 1 }))], 2), l("span", Jf, [l("span", Yf, I(R(q)("执行情况")) + ": ", 1), (k(!0), c(e, null, M(me.value, (e) => (k(), c("span", {
|
|
8343
8340
|
key: e.key,
|
|
8344
8341
|
class: "flow-agent-stat-item"
|
|
8345
8342
|
}, [d(I(e.label) + ":", 1), l("span", {
|
|
@@ -8354,19 +8351,19 @@ var ld = ["src"], ud = {
|
|
|
8354
8351
|
"is-selected": B(t)
|
|
8355
8352
|
}]) }, [
|
|
8356
8353
|
l("span", { class: S(["flow-agent-task-arrow", { "is-expanded": ae(t) }]) }, [f(R(Bt), { onClick: oe((e) => se(t), ["stop"]) }, null, 8, ["onClick"])], 2),
|
|
8357
|
-
l("span",
|
|
8354
|
+
l("span", Xf, [ce(t) === "running" ? (k(), o(R(fe), {
|
|
8358
8355
|
key: 0,
|
|
8359
8356
|
mode: "spin",
|
|
8360
8357
|
size: "mini",
|
|
8361
8358
|
theme: "primary"
|
|
8362
8359
|
})) : (k(), o(P(le(t)), { key: 1 }))]),
|
|
8363
|
-
U((k(), c("span",
|
|
8364
|
-
R(T) === R(wt).Share ? s("", !0) : (k(), c("span",
|
|
8360
|
+
U((k(), c("span", Zf, [f(R(mf), { text: t.task_name }, null, 8, ["text"])])), [[R(Zr), Y({}, R(n))]]),
|
|
8361
|
+
R(T) === R(wt).Share ? s("", !0) : (k(), c("span", Qf, [l("span", $f, I(ue(t)), 1), t.has_confidence ? (k(), c("span", {
|
|
8365
8362
|
key: 0,
|
|
8366
8363
|
class: "flow-agent-task-action-btn flow-agent-task-confidence-btn",
|
|
8367
8364
|
onClick: oe((e) => ge(t), ["stop"])
|
|
8368
|
-
}, [f(R(Jt)), d(" " + I(R(q)("有效证据")), 1)], 8,
|
|
8369
|
-
], 2), U(l("div",
|
|
8365
|
+
}, [f(R(Jt)), d(" " + I(R(q)("有效证据")), 1)], 8, ep)) : s("", !0)]))
|
|
8366
|
+
], 2), U(l("div", tp, [(k(!0), c(e, null, M(de(t), (e) => (k(), c("div", {
|
|
8370
8367
|
key: e.id,
|
|
8371
8368
|
class: S(["flow-agent-node-item", { "is-selected": ie(t, e) }])
|
|
8372
8369
|
}, [
|
|
@@ -8375,20 +8372,20 @@ var ld = ["src"], ud = {
|
|
|
8375
8372
|
mode: "spin",
|
|
8376
8373
|
size: "mini",
|
|
8377
8374
|
theme: "primary"
|
|
8378
|
-
})) : (k(), c("span",
|
|
8375
|
+
})) : (k(), c("span", np))], 2),
|
|
8379
8376
|
U((k(), c("span", {
|
|
8380
8377
|
class: "flow-agent-node-name",
|
|
8381
8378
|
title: e.name
|
|
8382
|
-
}, [f(R(
|
|
8383
|
-
R(T) === R(wt).Share ? s("", !0) : (k(), c("span",
|
|
8379
|
+
}, [f(R(mf), { text: e.name }, null, 8, ["text"])], 8, rp)), [[R(Zr), Y({}, R(n))]]),
|
|
8380
|
+
R(T) === R(wt).Share ? s("", !0) : (k(), c("span", ip, [l("span", ap, I(R(ut)(e.elapsed_time)), 1), l("span", {
|
|
8384
8381
|
class: "flow-agent-node-detail-btn",
|
|
8385
8382
|
onClick: oe((n) => he(t, e), ["stop"])
|
|
8386
|
-
}, [f(R(Jt)), d(" " + I(R(q)("详情")), 1)], 8,
|
|
8383
|
+
}, [f(R(Jt)), d(" " + I(R(q)("详情")), 1)], 8, op)]))
|
|
8387
8384
|
], 2))), 128))], 512), [[re, ae(t)]])]))), 128))]),
|
|
8388
8385
|
_: 1
|
|
8389
8386
|
}, 8, ["collapsed", "activity-type"]));
|
|
8390
8387
|
}
|
|
8391
|
-
}),
|
|
8388
|
+
}), cp = { class: "ai-activity-message-title-icon" }, lp = { class: "ai-activity-message-title-text" }, up = { class: "knowledge-rag-content" }, dp = /* @__PURE__ */ m({
|
|
8392
8389
|
__name: "knowledge-rag-content",
|
|
8393
8390
|
props: /* @__PURE__ */ y({
|
|
8394
8391
|
content: {},
|
|
@@ -8401,22 +8398,22 @@ var ld = ["src"], ud = {
|
|
|
8401
8398
|
emits: ["update:collapsed"],
|
|
8402
8399
|
setup(e) {
|
|
8403
8400
|
let t = e, n = z(e, "collapsed"), r = a(() => t.status === K.Pending || t.status === K.Streaming), i = a(() => r.value ? q("检索中") : q("检索完成"));
|
|
8404
|
-
return (t, a) => (k(), o(
|
|
8401
|
+
return (t, a) => (k(), o(_f, {
|
|
8405
8402
|
collapsed: n.value,
|
|
8406
8403
|
"onUpdate:collapsed": a[0] || (a[0] = (e) => n.value = e)
|
|
8407
8404
|
}, {
|
|
8408
|
-
title: H(() => [l("span",
|
|
8405
|
+
title: H(() => [l("span", cp, [r.value ? (k(), o(Hn, { key: 0 })) : (k(), o(R(It), {
|
|
8409
8406
|
key: 1,
|
|
8410
8407
|
style: { "font-size": "12px" }
|
|
8411
|
-
}))]), l("span",
|
|
8408
|
+
}))]), l("span", lp, I(i.value), 1)]),
|
|
8412
8409
|
default: H(() => {
|
|
8413
8410
|
var t, n;
|
|
8414
|
-
return [l("div",
|
|
8411
|
+
return [l("div", up, [f(ul, { content: ((t = e.content) == null ? void 0 : t.content) || "" }, null, 8, ["content"])]), f(fl, { content: ((n = e.content) == null ? void 0 : n.referenceDocument) || [] }, null, 8, ["content"])];
|
|
8415
8412
|
}),
|
|
8416
8413
|
_: 1
|
|
8417
8414
|
}, 8, ["collapsed"]));
|
|
8418
8415
|
}
|
|
8419
|
-
}),
|
|
8416
|
+
}), fp = { class: "ai-activity-message-title-icon" }, pp = { class: "ai-activity-message-title-text" }, mp = /* @__PURE__ */ m({
|
|
8420
8417
|
__name: "reference-doc-content",
|
|
8421
8418
|
props: /* @__PURE__ */ y({
|
|
8422
8419
|
content: {},
|
|
@@ -8432,16 +8429,16 @@ var ld = ["src"], ud = {
|
|
|
8432
8429
|
let r = (e = (n = t.content) == null ? void 0 : n.length) == null ? 0 : e;
|
|
8433
8430
|
return dt ? `Reference ${r} documents as reference` : `引用 ${r} 篇资料作为参考`;
|
|
8434
8431
|
});
|
|
8435
|
-
return (t, i) => (k(), o(
|
|
8432
|
+
return (t, i) => (k(), o(_f, {
|
|
8436
8433
|
collapsed: n.value,
|
|
8437
8434
|
"onUpdate:collapsed": i[0] || (i[0] = (e) => n.value = e)
|
|
8438
8435
|
}, {
|
|
8439
|
-
title: H(() => [l("span",
|
|
8436
|
+
title: H(() => [l("span", fp, [f(R(It), { style: { "font-size": "12px" } })]), l("span", pp, I(r.value), 1)]),
|
|
8440
8437
|
default: H(() => [f(fl, { content: e.content || [] }, null, 8, ["content"])]),
|
|
8441
8438
|
_: 1
|
|
8442
8439
|
}, 8, ["collapsed"]));
|
|
8443
8440
|
}
|
|
8444
|
-
}),
|
|
8441
|
+
}), hp = /* @__PURE__ */ m({
|
|
8445
8442
|
__name: "activity-message",
|
|
8446
8443
|
props: /* @__PURE__ */ y({
|
|
8447
8444
|
activityType: {},
|
|
@@ -8460,9 +8457,9 @@ var ld = ["src"], ud = {
|
|
|
8460
8457
|
emits: ["update:collapsed"],
|
|
8461
8458
|
setup(e) {
|
|
8462
8459
|
let t = {
|
|
8463
|
-
[W.FlowAgent]:
|
|
8464
|
-
[W.KnowledgeRag]:
|
|
8465
|
-
[W.ReferenceDocument]:
|
|
8460
|
+
[W.FlowAgent]: sp,
|
|
8461
|
+
[W.KnowledgeRag]: dp,
|
|
8462
|
+
[W.ReferenceDocument]: mp
|
|
8466
8463
|
}, n = e, r = z(e, "collapsed"), i = a(() => {
|
|
8467
8464
|
var e;
|
|
8468
8465
|
return t[(e = n.activityType) == null ? "" : e];
|
|
@@ -8481,7 +8478,7 @@ var ld = ["src"], ud = {
|
|
|
8481
8478
|
"status"
|
|
8482
8479
|
])) : s("", !0);
|
|
8483
8480
|
}
|
|
8484
|
-
}),
|
|
8481
|
+
}), gp = { class: "toolcall-desc" }, _p = { class: "desc-title" }, vp = { class: "desc-panel" }, yp = { class: "desc-label" }, bp = { class: "desc-value" }, xp = /* @__PURE__ */ m({
|
|
8485
8482
|
__name: "desc-panel",
|
|
8486
8483
|
props: {
|
|
8487
8484
|
desc: {},
|
|
@@ -8495,19 +8492,19 @@ var ld = ["src"], ud = {
|
|
|
8495
8492
|
return n.desc;
|
|
8496
8493
|
}
|
|
8497
8494
|
});
|
|
8498
|
-
return (n, i) => (k(), c("div",
|
|
8495
|
+
return (n, i) => (k(), c("div", gp, [l("div", _p, I(t.title), 1), l("div", vp, [typeof r.value == "object" ? (k(!0), c(e, { key: 0 }, M(r.value, (e, t) => (k(), c("div", {
|
|
8499
8496
|
key: t,
|
|
8500
8497
|
class: "desc-panel-item"
|
|
8501
|
-
}, [l("span",
|
|
8498
|
+
}, [l("span", yp, [f(R(mf), { text: t }, null, 8, ["text"]), i[0] || (i[0] = d(":", -1))]), l("span", bp, [f(R(mf), {
|
|
8502
8499
|
style: { "word-break": "break-all" },
|
|
8503
8500
|
text: typeof e == "object" && e ? JSON.stringify(e) : e
|
|
8504
|
-
}, null, 8, ["text"])])]))), 128)) : (k(), o(R(
|
|
8501
|
+
}, null, 8, ["text"])])]))), 128)) : (k(), o(R(mf), {
|
|
8505
8502
|
key: 1,
|
|
8506
8503
|
style: { wordBreak: "break-all" },
|
|
8507
8504
|
text: r.value
|
|
8508
8505
|
}, null, 8, ["text"]))])]));
|
|
8509
8506
|
}
|
|
8510
|
-
}),
|
|
8507
|
+
}), Sp = { class: "tool-message" }, Cp = /* @__PURE__ */ m({
|
|
8511
8508
|
__name: "tool-message",
|
|
8512
8509
|
props: {
|
|
8513
8510
|
duration: {},
|
|
@@ -8523,15 +8520,15 @@ var ld = ["src"], ud = {
|
|
|
8523
8520
|
property: {}
|
|
8524
8521
|
},
|
|
8525
8522
|
setup(e) {
|
|
8526
|
-
return (t, n) => (k(), c("div",
|
|
8523
|
+
return (t, n) => (k(), c("div", Sp, [f(xp, {
|
|
8527
8524
|
desc: e.content || (typeof e.error == "string" ? e.error : void 0),
|
|
8528
8525
|
title: R(q)("返回内容")
|
|
8529
8526
|
}, null, 8, ["desc", "title"])]));
|
|
8530
8527
|
}
|
|
8531
|
-
}),
|
|
8528
|
+
}), wp = { class: "ai-toolcall-render" }, Tp = { class: "toolcall-header-title" }, Ep = { class: "toolcall-status-title" }, Dp = {
|
|
8532
8529
|
key: 1,
|
|
8533
8530
|
class: "toolcall-duration"
|
|
8534
|
-
},
|
|
8531
|
+
}, Op = { class: "ai-toolcall-render-content" }, kp = /* @__PURE__ */ m({
|
|
8535
8532
|
__name: "toolcall-render",
|
|
8536
8533
|
props: {
|
|
8537
8534
|
duration: {},
|
|
@@ -8575,40 +8572,40 @@ var ld = ["src"], ud = {
|
|
|
8575
8572
|
});
|
|
8576
8573
|
return (t, n) => {
|
|
8577
8574
|
var r, a, u, p;
|
|
8578
|
-
return k(), c("div",
|
|
8575
|
+
return k(), c("div", wp, [l("div", {
|
|
8579
8576
|
class: S(["ai-toolcall-render-header", `toolcall-status-${e.status}`]),
|
|
8580
8577
|
onClick: h
|
|
8581
8578
|
}, [
|
|
8582
8579
|
f(R(Bt), { class: S({ "is-collapsed": m.value }) }, null, 8, ["class"]),
|
|
8583
8580
|
d(" " + I((r = e.toolCall) != null && r.function.mcpName ? R(q)("调用 MCP:") : R(q)("调用工具:")) + " ", 1),
|
|
8584
|
-
U((k(), c("span",
|
|
8581
|
+
U((k(), c("span", Tp, [f(R(mf), { text: g.value }, null, 8, ["text"])])), [[R(Zr), Y(Y({}, R(i)), {}, {
|
|
8585
8582
|
text: g.value,
|
|
8586
8583
|
appendTo: "parent"
|
|
8587
8584
|
})]]),
|
|
8588
|
-
l("span",
|
|
8585
|
+
l("span", Ep, [
|
|
8589
8586
|
e.status === R(K).Pending || e.status === R(K).Streaming ? (k(), o(R(fe), {
|
|
8590
8587
|
key: 0,
|
|
8591
8588
|
mode: "spin",
|
|
8592
8589
|
size: "mini",
|
|
8593
8590
|
theme: "primary"
|
|
8594
8591
|
})) : s("", !0),
|
|
8595
|
-
f(R(
|
|
8596
|
-
v.value ? (k(), c("span",
|
|
8592
|
+
f(R(mf), { text: _.value }, null, 8, ["text"]),
|
|
8593
|
+
v.value ? (k(), c("span", Dp, " (" + I(v.value) + ") ", 1)) : s("", !0)
|
|
8597
8594
|
])
|
|
8598
|
-
], 2), U(l("div",
|
|
8599
|
-
f(
|
|
8595
|
+
], 2), U(l("div", Op, [
|
|
8596
|
+
f(xp, {
|
|
8600
8597
|
desc: (a = e.toolCall) == null ? void 0 : a.function.description,
|
|
8601
8598
|
title: R(q)("描述")
|
|
8602
8599
|
}, null, 8, ["desc", "title"]),
|
|
8603
|
-
f(
|
|
8600
|
+
f(xp, {
|
|
8604
8601
|
desc: (u = e.toolCall) == null ? void 0 : u.function.arguments,
|
|
8605
8602
|
title: R(q)("参数")
|
|
8606
8603
|
}, null, 8, ["desc", "title"]),
|
|
8607
|
-
(p = e.toolCall) != null && p.toolMessage ? (k(), o(
|
|
8604
|
+
(p = e.toolCall) != null && p.toolMessage ? (k(), o(Cp, C(b({ key: 0 }, e.toolCall.toolMessage)), null, 16)) : s("", !0)
|
|
8608
8605
|
], 512), [[re, !m.value]])]);
|
|
8609
8606
|
};
|
|
8610
8607
|
}
|
|
8611
|
-
}),
|
|
8608
|
+
}), Ap = { class: "ai-assistant-message" }, jp = { class: "ai-assistant-message-content" }, Mp = /* @__PURE__ */ m({
|
|
8612
8609
|
__name: "assistant-message",
|
|
8613
8610
|
props: {
|
|
8614
8611
|
toolCalls: {},
|
|
@@ -8622,7 +8619,7 @@ var ld = ["src"], ud = {
|
|
|
8622
8619
|
property: {}
|
|
8623
8620
|
},
|
|
8624
8621
|
setup(t) {
|
|
8625
|
-
return (n, r) => (k(), c("div",
|
|
8622
|
+
return (n, r) => (k(), c("div", Ap, [l("div", jp, [N(n.$slots, "default", C(h({ content: t.content })), () => [f(pl, {
|
|
8626
8623
|
content: t.content || "",
|
|
8627
8624
|
status: t.status,
|
|
8628
8625
|
type: R(W).Text
|
|
@@ -8630,13 +8627,13 @@ var ld = ["src"], ud = {
|
|
|
8630
8627
|
"content",
|
|
8631
8628
|
"status",
|
|
8632
8629
|
"type"
|
|
8633
|
-
])])]), t.toolCalls && t.toolCalls.length > 0 ? (k(!0), c(e, { key: 0 }, M(t.toolCalls, (e) => (k(), o(
|
|
8630
|
+
])])]), t.toolCalls && t.toolCalls.length > 0 ? (k(!0), c(e, { key: 0 }, M(t.toolCalls, (e) => (k(), o(kp, {
|
|
8634
8631
|
key: e.id,
|
|
8635
8632
|
status: t.status,
|
|
8636
8633
|
"tool-call": e
|
|
8637
8634
|
}, null, 8, ["status", "tool-call"]))), 128)) : s("", !0)]));
|
|
8638
8635
|
}
|
|
8639
|
-
}),
|
|
8636
|
+
}), Np = { class: "info-message" }, Pp = /* @__PURE__ */ m({
|
|
8640
8637
|
__name: "info-message",
|
|
8641
8638
|
props: {
|
|
8642
8639
|
content: {},
|
|
@@ -8649,20 +8646,20 @@ var ld = ["src"], ud = {
|
|
|
8649
8646
|
property: {}
|
|
8650
8647
|
},
|
|
8651
8648
|
setup(t) {
|
|
8652
|
-
return (n, r) => (k(), c("div",
|
|
8649
|
+
return (n, r) => (k(), c("div", Np, [(k(!0), c(e, null, M(Array.isArray(t.content) ? t.content : [t.content], (e, t) => (k(), c("div", {
|
|
8653
8650
|
key: t,
|
|
8654
8651
|
class: "info-message-content"
|
|
8655
8652
|
}, I(e), 1))), 128))]));
|
|
8656
8653
|
}
|
|
8657
|
-
}),
|
|
8654
|
+
}), Fp = { class: "ai-loading-message" }, Ip = /* @__PURE__ */ m({
|
|
8658
8655
|
__name: "loading-message",
|
|
8659
8656
|
setup(e) {
|
|
8660
|
-
return (e, t) => (k(), c("div",
|
|
8657
|
+
return (e, t) => (k(), c("div", Fp, [f(Hn, { size: 18 }), N(e.$slots, "default", {}, () => [d(I(R(q)("请求中...")), 1)])]));
|
|
8661
8658
|
}
|
|
8662
|
-
}),
|
|
8659
|
+
}), Lp = { class: "ai-reasoning-message" }, Rp = {
|
|
8663
8660
|
key: 0,
|
|
8664
8661
|
class: "ai-reasoning-message-title-icon"
|
|
8665
|
-
},
|
|
8662
|
+
}, zp = { class: "ai-reasoning-message-title-text" }, Bp = { class: "ai-reasoning-message-content" }, Vp = /* @__PURE__ */ m({
|
|
8666
8663
|
__name: "reasoning-message",
|
|
8667
8664
|
props: /* @__PURE__ */ y({
|
|
8668
8665
|
duration: {},
|
|
@@ -8698,7 +8695,7 @@ var ld = ["src"], ud = {
|
|
|
8698
8695
|
});
|
|
8699
8696
|
return (n, i) => {
|
|
8700
8697
|
var a;
|
|
8701
|
-
return k(), c("div",
|
|
8698
|
+
return k(), c("div", Lp, [l("div", {
|
|
8702
8699
|
class: S(["ai-reasoning-message-title", {
|
|
8703
8700
|
"ai-reasoning-message-title-collapsed": r.value,
|
|
8704
8701
|
"is-thinking": t.status === R(K).Pending || t.status === R(K).Streaming,
|
|
@@ -8707,10 +8704,10 @@ var ld = ["src"], ud = {
|
|
|
8707
8704
|
}]),
|
|
8708
8705
|
onClick: i[0] || (i[0] = (e) => r.value = !r.value)
|
|
8709
8706
|
}, [
|
|
8710
|
-
t.status === R(K).Pending || t.status === R(K).Streaming ? (k(), c("span",
|
|
8711
|
-
l("span",
|
|
8707
|
+
t.status === R(K).Pending || t.status === R(K).Streaming ? (k(), c("span", Rp, [f(Hn)])) : s("", !0),
|
|
8708
|
+
l("span", zp, I(u.value), 1),
|
|
8712
8709
|
l("span", { class: S(["ai-reasoning-message-title-icon collapsed-icon", { "is-collapsed": r.value }]) }, [f(R(hn))], 2)
|
|
8713
|
-
], 2), U(l("div",
|
|
8710
|
+
], 2), U(l("div", Bp, [t.status === R(K).Error ? (k(), o(Gc, {
|
|
8714
8711
|
key: 0,
|
|
8715
8712
|
content: ((a = t.content) == null ? void 0 : a.join("\n")) || ""
|
|
8716
8713
|
}, null, 8, ["content"])) : (k(!0), c(e, { key: 1 }, M(Array.isArray(t.content) ? t.content : [t.content], (e) => (k(), o(ul, {
|
|
@@ -8719,32 +8716,32 @@ var ld = ["src"], ud = {
|
|
|
8719
8716
|
}, null, 8, ["content"]))), 128))], 512), [[re, !r.value]])]);
|
|
8720
8717
|
};
|
|
8721
8718
|
}
|
|
8722
|
-
}),
|
|
8719
|
+
}), Hp = { class: "ai-key-value-content" }, Up = {
|
|
8723
8720
|
key: 0,
|
|
8724
8721
|
class: "ai-key-value-title"
|
|
8725
|
-
},
|
|
8722
|
+
}, Wp = { class: "ai-key-value-content" }, Gp = { class: "item-key" }, Kp = { class: "item-value" }, qp = /* @__PURE__ */ m({
|
|
8726
8723
|
__name: "key-value-content",
|
|
8727
8724
|
props: {
|
|
8728
8725
|
content: {},
|
|
8729
8726
|
title: {}
|
|
8730
8727
|
},
|
|
8731
8728
|
setup(t) {
|
|
8732
|
-
return (n, r) => (k(), c("div",
|
|
8729
|
+
return (n, r) => (k(), c("div", Hp, [t.title ? (k(), c("div", Up, [f(R(mn)), d(" " + I(t.title), 1)])) : s("", !0), l("div", Wp, [(k(!0), c(e, null, M(t.content, (e) => (k(), c("div", {
|
|
8733
8730
|
key: e.key,
|
|
8734
8731
|
class: "key-value-item"
|
|
8735
8732
|
}, [
|
|
8736
|
-
l("div",
|
|
8733
|
+
l("div", Gp, I(e.key), 1),
|
|
8737
8734
|
r[0] || (r[0] = d(" : ", -1)),
|
|
8738
|
-
l("div",
|
|
8735
|
+
l("div", Kp, I(e.value), 1)
|
|
8739
8736
|
]))), 128))])]));
|
|
8740
8737
|
}
|
|
8741
|
-
}),
|
|
8738
|
+
}), Jp = { class: "ai-user-message" }, Yp = {
|
|
8742
8739
|
key: 0,
|
|
8743
8740
|
class: "ai-user-message-binary-files"
|
|
8744
|
-
},
|
|
8741
|
+
}, Xp = {
|
|
8745
8742
|
key: 1,
|
|
8746
8743
|
class: "ai-user-message-content"
|
|
8747
|
-
},
|
|
8744
|
+
}, Zp = { class: "user-edit-footer" }, Qp = /* @__PURE__ */ m({
|
|
8748
8745
|
__name: "user-message",
|
|
8749
8746
|
props: {
|
|
8750
8747
|
content: {},
|
|
@@ -8853,7 +8850,7 @@ var ld = ["src"], ud = {
|
|
|
8853
8850
|
}();
|
|
8854
8851
|
return (n, i) => {
|
|
8855
8852
|
var a, v;
|
|
8856
|
-
return k(), c("div",
|
|
8853
|
+
return k(), c("div", Jp, [g.value && typeof g.value == "string" ? (k(), o(Ku, {
|
|
8857
8854
|
key: 0,
|
|
8858
8855
|
class: "ai-user-message-cite",
|
|
8859
8856
|
content: g.value
|
|
@@ -8861,7 +8858,7 @@ var ld = ["src"], ud = {
|
|
|
8861
8858
|
class: "user-shortcut-render",
|
|
8862
8859
|
onClose: D,
|
|
8863
8860
|
onSubmit: O
|
|
8864
|
-
}), null, 16)) : (k(), o(
|
|
8861
|
+
}), null, 16)) : (k(), o(Xd, {
|
|
8865
8862
|
key: 1,
|
|
8866
8863
|
ref_key: "chatInputRef",
|
|
8867
8864
|
ref: m,
|
|
@@ -8872,7 +8869,7 @@ var ld = ["src"], ud = {
|
|
|
8872
8869
|
"on-send-message": A,
|
|
8873
8870
|
"support-upload": (a = (v = R(r)) == null ? void 0 : v.supportUpload.value) == null ? !1 : a
|
|
8874
8871
|
}, {
|
|
8875
|
-
"send-icon": H(() => [l("div",
|
|
8872
|
+
"send-icon": H(() => [l("div", Zp, [f(R(se), {
|
|
8876
8873
|
size: "small",
|
|
8877
8874
|
onClick: E
|
|
8878
8875
|
}, {
|
|
@@ -8892,7 +8889,7 @@ var ld = ["src"], ud = {
|
|
|
8892
8889
|
"default-upload-files",
|
|
8893
8890
|
"support-upload"
|
|
8894
8891
|
]))], 64)) : (k(), c(e, { key: 1 }, [
|
|
8895
|
-
y.value.length ? (k(), c(e, { key: 0 }, [x.value.length ? (k(), c("div",
|
|
8892
|
+
y.value.length ? (k(), c(e, { key: 0 }, [x.value.length ? (k(), c("div", Yp, [f(Cd, {
|
|
8896
8893
|
files: x.value,
|
|
8897
8894
|
readonly: !0
|
|
8898
8895
|
}, null, 8, ["files"])])) : s("", !0), (k(!0), c(e, null, M(S.value, (e, t) => {
|
|
@@ -8905,7 +8902,7 @@ var ld = ["src"], ud = {
|
|
|
8905
8902
|
readonly: !0
|
|
8906
8903
|
}, null, 8, ["files"])]);
|
|
8907
8904
|
}), 128))], 64)) : s("", !0),
|
|
8908
|
-
(g.value || C.value).length ? (k(), c("div",
|
|
8905
|
+
(g.value || C.value).length ? (k(), c("div", Xp, [Array.isArray(g.value) ? (k(), o(qp, {
|
|
8909
8906
|
key: 0,
|
|
8910
8907
|
content: g.value,
|
|
8911
8908
|
title: h.value
|
|
@@ -8916,7 +8913,7 @@ var ld = ["src"], ud = {
|
|
|
8916
8913
|
key: 1,
|
|
8917
8914
|
content: t.text
|
|
8918
8915
|
}, null, 8, ["content"])) : s("", !0)], 64))), 128)) : s("", !0)])) : s("", !0),
|
|
8919
|
-
t.messageToolsStatus === R(Yr).Hidden ? s("", !0) : (k(), o(
|
|
8916
|
+
t.messageToolsStatus === R(Yr).Hidden ? s("", !0) : (k(), o(pf, {
|
|
8920
8917
|
key: 2,
|
|
8921
8918
|
class: "ai-user-message-tools",
|
|
8922
8919
|
"message-tools": R(yt),
|
|
@@ -8932,7 +8929,7 @@ var ld = ["src"], ud = {
|
|
|
8932
8929
|
], 64))]);
|
|
8933
8930
|
};
|
|
8934
8931
|
}
|
|
8935
|
-
}),
|
|
8932
|
+
}), $p = /* @__PURE__ */ m({
|
|
8936
8933
|
__name: "message-render",
|
|
8937
8934
|
props: {
|
|
8938
8935
|
messageToolsStatus: {},
|
|
@@ -8945,35 +8942,35 @@ var ld = ["src"], ud = {
|
|
|
8945
8942
|
setup(e) {
|
|
8946
8943
|
let t = e, n = ne(), r = a(() => {
|
|
8947
8944
|
switch (t.message.role) {
|
|
8948
|
-
case G.User: return g(
|
|
8945
|
+
case G.User: return g(Qp, Y(Y({}, t.message), {}, {
|
|
8949
8946
|
onAction: t.onAction,
|
|
8950
8947
|
onInputConfirm: t.onInputConfirm,
|
|
8951
8948
|
onShortcutConfirm: t.onShortcutConfirm,
|
|
8952
8949
|
messageToolsStatus: t.messageToolsStatus,
|
|
8953
8950
|
tippyOptions: t.tippyOptions
|
|
8954
8951
|
}));
|
|
8955
|
-
case G.Assistant: return g(
|
|
8952
|
+
case G.Assistant: return g(Mp, t.message, { default: (e) => N(n, "default", e, () => [g(pl, {
|
|
8956
8953
|
content: t.message.content || "",
|
|
8957
8954
|
status: t.message.status
|
|
8958
8955
|
}, n.codeHeader ? { codeHeader: (e) => {
|
|
8959
8956
|
var t;
|
|
8960
8957
|
return (t = n.codeHeader) == null ? void 0 : t.call(n, e);
|
|
8961
8958
|
} } : void 0)]) });
|
|
8962
|
-
case G.Info: return g(
|
|
8963
|
-
case G.Reasoning: return g(
|
|
8964
|
-
case G.Tool: return g(
|
|
8965
|
-
case G.Activity: return console.log("props.message", t.message.content), g(
|
|
8966
|
-
case G.Loading: return g(
|
|
8959
|
+
case G.Info: return g(Pp, t.message);
|
|
8960
|
+
case G.Reasoning: return g(Vp, t.message);
|
|
8961
|
+
case G.Tool: return g(Cp, t.message);
|
|
8962
|
+
case G.Activity: return console.log("props.message", t.message.content), g(hp, t.message);
|
|
8963
|
+
case G.Loading: return g(Ip, t.message);
|
|
8967
8964
|
default: return null;
|
|
8968
8965
|
}
|
|
8969
8966
|
});
|
|
8970
8967
|
return (e, t) => (k(), o(P(r.value)));
|
|
8971
8968
|
}
|
|
8972
|
-
}),
|
|
8969
|
+
}), em = [
|
|
8973
8970
|
"id",
|
|
8974
8971
|
"onMouseenter",
|
|
8975
8972
|
"onMouseleave"
|
|
8976
|
-
],
|
|
8973
|
+
], tm = { class: "ai-message-fixed-bottom" }, nm = /* @__PURE__ */ m({
|
|
8977
8974
|
__name: "message-container",
|
|
8978
8975
|
props: /* @__PURE__ */ y({
|
|
8979
8976
|
enableSelection: {
|
|
@@ -9072,7 +9069,7 @@ var ld = ["src"], ud = {
|
|
|
9072
9069
|
}, {
|
|
9073
9070
|
message: e,
|
|
9074
9071
|
messageToolsStatus: t.messageToolsStatus
|
|
9075
|
-
}), () => [(k(), o(
|
|
9072
|
+
}), () => [(k(), o($p, {
|
|
9076
9073
|
key: n,
|
|
9077
9074
|
message: e,
|
|
9078
9075
|
"message-tools-status": t.messageToolsStatus,
|
|
@@ -9087,7 +9084,7 @@ var ld = ["src"], ud = {
|
|
|
9087
9084
|
"on-input-confirm",
|
|
9088
9085
|
"on-shortcut-confirm",
|
|
9089
9086
|
"tippy-options"
|
|
9090
|
-
]))])), 128)), t.renderMode !== R(wt).Share && !(t.enableSelection && i.type !== R(G).Loading) && !i.pause && i.type === R(G).Assistant && t.messageToolsStatus !== R(Yr).Hidden ? (k(), o(
|
|
9087
|
+
]))])), 128)), t.renderMode !== R(wt).Share && !(t.enableSelection && i.type !== R(G).Loading) && !i.pause && i.type === R(G).Assistant && t.messageToolsStatus !== R(Yr).Hidden ? (k(), o(pf, {
|
|
9091
9088
|
key: 0,
|
|
9092
9089
|
"message-tools": h.value,
|
|
9093
9090
|
"message-tools-status": t.messageToolsStatus,
|
|
@@ -9105,14 +9102,14 @@ var ld = ["src"], ud = {
|
|
|
9105
9102
|
"style",
|
|
9106
9103
|
"tippy-options",
|
|
9107
9104
|
"onFeedback"
|
|
9108
|
-
])) : s("", !0)], 6)], 44,
|
|
9105
|
+
])) : s("", !0)], 6)], 44, em))), 128)),
|
|
9109
9106
|
l("div", {
|
|
9110
9107
|
ref_key: "messageContainerBottomRef",
|
|
9111
9108
|
ref: u,
|
|
9112
9109
|
class: "message-container-bottom",
|
|
9113
9110
|
tabindex: "0"
|
|
9114
9111
|
}, null, 512),
|
|
9115
|
-
l("div",
|
|
9112
|
+
l("div", tm, [U(f(Fn, {
|
|
9116
9113
|
loading: t.messageStatus === R(K).StopLoading,
|
|
9117
9114
|
title: t.messageStatus === R(K).StopLoading ? R(q)("正在停止") : R(q)("停止生成"),
|
|
9118
9115
|
onClick: a[0] || (a[0] = (e) => r.$emit("stopStreaming"))
|
|
@@ -9128,13 +9125,13 @@ var ld = ["src"], ud = {
|
|
|
9128
9125
|
}, 8, ["title", "onClick"]), [[re, R(p)]])])
|
|
9129
9126
|
], 512));
|
|
9130
9127
|
}
|
|
9131
|
-
}),
|
|
9128
|
+
}), rm = { class: "execution-summary" }, im = { class: "execution-summary-header" }, am = { class: "execution-summary-content" }, om = ["onMouseenter"], sm = { class: "content-item-header" }, cm = { class: "content-item-title" }, lm = { class: "content-item-messages" }, um = {
|
|
9132
9129
|
key: 0,
|
|
9133
9130
|
class: "timeline-line"
|
|
9134
|
-
},
|
|
9131
|
+
}, dm = {
|
|
9135
9132
|
key: 1,
|
|
9136
9133
|
class: "execution-summary-content-empty"
|
|
9137
|
-
},
|
|
9134
|
+
}, fm = { class: "execution-summary-content-empty-text" }, pm = /* @__PURE__ */ m({
|
|
9138
9135
|
__name: "execution-summary",
|
|
9139
9136
|
props: { messageGroups: {} },
|
|
9140
9137
|
emits: ["locateMessageGroup", "updateKeyword"],
|
|
@@ -9148,21 +9145,21 @@ var ld = ["src"], ud = {
|
|
|
9148
9145
|
}, h = () => {
|
|
9149
9146
|
a.value = "", r("updateKeyword", "");
|
|
9150
9147
|
};
|
|
9151
|
-
return (n, g) => (k(), c("div",
|
|
9148
|
+
return (n, g) => (k(), c("div", rm, [l("div", im, [f(R(de), {
|
|
9152
9149
|
modelValue: R(a),
|
|
9153
9150
|
"onUpdate:modelValue": [g[0] || (g[0] = (e) => v(a) ? a.value = e : null), g[1] || (g[1] = (e) => r("updateKeyword", e))],
|
|
9154
9151
|
class: "execution-summary-header-input",
|
|
9155
9152
|
clearable: "",
|
|
9156
9153
|
placeholder: R(q)("搜索 关键字")
|
|
9157
|
-
}, null, 8, ["modelValue", "placeholder"])]), l("div",
|
|
9154
|
+
}, null, 8, ["modelValue", "placeholder"])]), l("div", am, [t.messageGroups.length ? (k(!0), c(e, { key: 0 }, M(t.messageGroups, (n, r) => (k(), c("div", {
|
|
9158
9155
|
key: n.uid,
|
|
9159
9156
|
class: "execution-summary-content-item",
|
|
9160
9157
|
onMouseenter: (e) => u.value = n.uid,
|
|
9161
9158
|
onMouseleave: g[2] || (g[2] = (e) => u.value = void 0)
|
|
9162
9159
|
}, [
|
|
9163
|
-
l("div",
|
|
9160
|
+
l("div", sm, [
|
|
9164
9161
|
g[3] || (g[3] = l("span", { class: "timeline-dot" }, null, -1)),
|
|
9165
|
-
U((k(), c("span",
|
|
9162
|
+
U((k(), c("span", cm, [d(I(typeof n.userMessageTitle == "number" ? p(n.userMessageTitle) : n.userMessageTitle), 1)])), [[R(Zr), Y({}, R(i))]]),
|
|
9166
9163
|
U(f(R(se), {
|
|
9167
9164
|
class: "content-item-locate",
|
|
9168
9165
|
text: "",
|
|
@@ -9173,15 +9170,15 @@ var ld = ["src"], ud = {
|
|
|
9173
9170
|
_: 1
|
|
9174
9171
|
}, 8, ["onClick"]), [[re, u.value === n.uid]])
|
|
9175
9172
|
]),
|
|
9176
|
-
l("div",
|
|
9173
|
+
l("div", lm, [(k(!0), c(e, null, M(n.messages, (e, t) => (k(), o($p, {
|
|
9177
9174
|
key: t,
|
|
9178
9175
|
message: e
|
|
9179
9176
|
}, null, 8, ["message"]))), 128))]),
|
|
9180
|
-
r < t.messageGroups.length - 1 ? (k(), c("div",
|
|
9181
|
-
], 40,
|
|
9177
|
+
r < t.messageGroups.length - 1 ? (k(), c("div", um)) : s("", !0)
|
|
9178
|
+
], 40, om))), 128)) : (k(), c("div", dm, [f(R(le), {
|
|
9182
9179
|
class: "empty-exception",
|
|
9183
9180
|
type: "empty"
|
|
9184
|
-
}), l("div",
|
|
9181
|
+
}), l("div", fm, [d(I(R(a) ? R(q)("搜索结果为空") : R(q)("暂无数据")) + " ", 1), R(a) ? (k(), o(R(se), {
|
|
9185
9182
|
key: 0,
|
|
9186
9183
|
text: "",
|
|
9187
9184
|
theme: "primary",
|
|
@@ -9191,14 +9188,14 @@ var ld = ["src"], ud = {
|
|
|
9191
9188
|
_: 1
|
|
9192
9189
|
})) : s("", !0)])]))])]));
|
|
9193
9190
|
}
|
|
9194
|
-
}),
|
|
9191
|
+
}), mm = ["class", "style"], hm = { class: "ai-message-loading-row" }, gm = { class: "ai-message-loading-icon-wrap" }, _m = {
|
|
9195
9192
|
key: 0,
|
|
9196
9193
|
class: "ai-message-loading-text ai-message-loading-text-custom"
|
|
9197
|
-
},
|
|
9194
|
+
}, vm = {
|
|
9198
9195
|
key: 1,
|
|
9199
9196
|
"aria-live": "polite",
|
|
9200
9197
|
class: "ai-message-loading-text"
|
|
9201
|
-
},
|
|
9198
|
+
}, ym = /* @__PURE__ */ m(Y(Y({}, {
|
|
9202
9199
|
name: "MessageLoading",
|
|
9203
9200
|
inheritAttrs: !1
|
|
9204
9201
|
}), {}, {
|
|
@@ -9213,7 +9210,7 @@ var ld = ["src"], ud = {
|
|
|
9213
9210
|
setup(t) {
|
|
9214
9211
|
let n = t, r = te(), i = a(() => {
|
|
9215
9212
|
let { class: e, style: t } = r;
|
|
9216
|
-
return er(r,
|
|
9213
|
+
return er(r, mm);
|
|
9217
9214
|
}), o = a(() => ({
|
|
9218
9215
|
display: "block",
|
|
9219
9216
|
width: `${n.iconSize}px`,
|
|
@@ -9229,16 +9226,16 @@ var ld = ["src"], ud = {
|
|
|
9229
9226
|
return (t, n) => (k(), c("div", b({
|
|
9230
9227
|
class: ["ai-message-loading", R(r).class],
|
|
9231
9228
|
style: u.value
|
|
9232
|
-
}, i.value), [l("div",
|
|
9229
|
+
}, i.value), [l("div", hm, [l("span", gm, [N(t.$slots, "icon", {}, () => [f(R(Pt), {
|
|
9233
9230
|
class: "ai-message-loading-icon-svg",
|
|
9234
9231
|
style: w(o.value)
|
|
9235
|
-
}, null, 8, ["style"])])]), t.$slots.text ? (k(), c("span",
|
|
9232
|
+
}, null, 8, ["style"])])]), t.$slots.text ? (k(), c("span", _m, [N(t.$slots, "text")])) : (k(), c("span", vm, [(k(!0), c(e, null, M(s.value, (e, t) => (k(), c("span", {
|
|
9236
9233
|
key: `${t}-${e}`,
|
|
9237
9234
|
class: "ai-message-loading-char",
|
|
9238
9235
|
style: w({ "--char-index": t })
|
|
9239
9236
|
}, I(e), 5))), 128))]))])], 16));
|
|
9240
9237
|
}
|
|
9241
|
-
})),
|
|
9238
|
+
})), bm = { class: "ai-selection-footer" }, xm = { class: "ai-selection-footer-left" }, Sm = { class: "select-all-text" }, Cm = { class: "ai-selection-footer-right" }, wm = /* @__PURE__ */ m({
|
|
9242
9239
|
__name: "selection-footer",
|
|
9243
9240
|
props: {
|
|
9244
9241
|
isAllSelected: { type: Boolean },
|
|
@@ -9252,10 +9249,10 @@ var ld = ["src"], ud = {
|
|
|
9252
9249
|
],
|
|
9253
9250
|
setup(e, { emit: t }) {
|
|
9254
9251
|
let n = t;
|
|
9255
|
-
return (t, r) => (k(), c("div",
|
|
9252
|
+
return (t, r) => (k(), c("div", bm, [l("div", xm, [f(R(ce), {
|
|
9256
9253
|
"model-value": e.isAllSelected,
|
|
9257
9254
|
"onUpdate:modelValue": r[0] || (r[0] = (e) => n("toggle-all", e))
|
|
9258
|
-
}, null, 8, ["model-value"]), l("span",
|
|
9255
|
+
}, null, 8, ["model-value"]), l("span", Sm, I(R(q)("全选")), 1)]), l("div", Cm, [f(R(se), {
|
|
9259
9256
|
disabled: e.loading,
|
|
9260
9257
|
onClick: r[1] || (r[1] = (e) => n("cancel"))
|
|
9261
9258
|
}, {
|
|
@@ -9271,16 +9268,16 @@ var ld = ["src"], ud = {
|
|
|
9271
9268
|
_: 1
|
|
9272
9269
|
}, 8, ["disabled", "loading"])])]));
|
|
9273
9270
|
}
|
|
9274
|
-
}),
|
|
9271
|
+
}), Tm = {
|
|
9275
9272
|
key: 0,
|
|
9276
9273
|
class: "ai-chat-container-loading"
|
|
9277
|
-
},
|
|
9274
|
+
}, Em = {
|
|
9278
9275
|
key: 1,
|
|
9279
9276
|
class: "ai-welcome-content"
|
|
9280
|
-
},
|
|
9277
|
+
}, Dm = { class: "ai-welcome-title" }, Om = {
|
|
9281
9278
|
key: 0,
|
|
9282
9279
|
class: "ai-welcome-remark"
|
|
9283
|
-
},
|
|
9280
|
+
}, km = /* @__PURE__ */ m({
|
|
9284
9281
|
__name: "chat-container",
|
|
9285
9282
|
props: /* @__PURE__ */ y({
|
|
9286
9283
|
chatLoading: { type: Boolean },
|
|
@@ -9461,7 +9458,7 @@ var ld = ["src"], ud = {
|
|
|
9461
9458
|
return k(), c("div", {
|
|
9462
9459
|
class: "ai-chat-container",
|
|
9463
9460
|
style: w({ "--resize-main-width": ae.value })
|
|
9464
|
-
}, [t.chatLoading ? (k(), c("div",
|
|
9461
|
+
}, [t.chatLoading ? (k(), c("div", Tm, [f(ym)])) : (k(), o(R(he), b({
|
|
9465
9462
|
key: 1,
|
|
9466
9463
|
class: ["ai-chat-container-resize-layout", { "ai-is-collapse": R(A) || !((a = B.value) != null && a.length) && ((u = R(ce)) == null ? void 0 : u.length) < 1 || p.value === R(wt).Share }]
|
|
9467
9464
|
}, m.value, { onResizing: Oe }), {
|
|
@@ -9503,7 +9500,7 @@ var ld = ["src"], ud = {
|
|
|
9503
9500
|
}, null, 8, ["label", "name"]))), 128))]),
|
|
9504
9501
|
_: 1
|
|
9505
9502
|
}, 8, ["active"]),
|
|
9506
|
-
((l = R(D)) == null ? void 0 : l.name) === R("execution") ? (k(), c(e, { key: 0 }, [R(A) ? s("", !0) : (k(), o(
|
|
9503
|
+
((l = R(D)) == null ? void 0 : l.name) === R("execution") ? (k(), c(e, { key: 0 }, [R(A) ? s("", !0) : (k(), o(pm, {
|
|
9507
9504
|
key: 0,
|
|
9508
9505
|
"message-groups": R(ce),
|
|
9509
9506
|
style: { height: "calc(100% - 40px)" },
|
|
@@ -9552,7 +9549,7 @@ var ld = ["src"], ud = {
|
|
|
9552
9549
|
onUserShortcutConfirm: t.onUserShortcutConfirm
|
|
9553
9550
|
})), () => {
|
|
9554
9551
|
var e;
|
|
9555
|
-
return [(e = t.messages) != null && e.length ? (k(), o(
|
|
9552
|
+
return [(e = t.messages) != null && e.length ? (k(), o(nm, {
|
|
9556
9553
|
key: 0,
|
|
9557
9554
|
"selected-user-messages": re.value,
|
|
9558
9555
|
"onUpdate:selectedUserMessages": r[1] || (r[1] = (e) => re.value = e),
|
|
@@ -9589,17 +9586,17 @@ var ld = ["src"], ud = {
|
|
|
9589
9586
|
"on-user-shortcut-confirm",
|
|
9590
9587
|
"render-mode"
|
|
9591
9588
|
])) : s("", !0)];
|
|
9592
|
-
}) : (k(), c("div",
|
|
9589
|
+
}) : (k(), c("div", Em, [N(n.$slots, "welcome", C(h({
|
|
9593
9590
|
openingRemark: t.openingRemark,
|
|
9594
9591
|
welcomeTitle: t.welcomeTitle
|
|
9595
9592
|
})), () => {
|
|
9596
9593
|
var e;
|
|
9597
9594
|
return [
|
|
9598
9595
|
f(R(Ft)),
|
|
9599
|
-
l("h2",
|
|
9600
|
-
t.openingRemark ? (k(), c("div",
|
|
9596
|
+
l("h2", Dm, I((e = t.welcomeTitle) == null ? R(q)("你好,我是小鲸") : e), 1),
|
|
9597
|
+
t.openingRemark ? (k(), c("div", Om, [f(pl, { content: t.openingRemark }, null, 8, ["content"])])) : s("", !0)
|
|
9601
9598
|
];
|
|
9602
|
-
})])), p.value === R(wt).Share ? s("", !0) : (k(), c(e, { key: 2 }, [R(le) ? (k(), o(
|
|
9599
|
+
})])), p.value === R(wt).Share ? s("", !0) : (k(), c(e, { key: 2 }, [R(le) ? (k(), o(wm, {
|
|
9603
9600
|
key: 0,
|
|
9604
9601
|
"is-all-selected": R(ue),
|
|
9605
9602
|
loading: !1,
|
|
@@ -9615,7 +9612,7 @@ var ld = ["src"], ud = {
|
|
|
9615
9612
|
])) : !((a = v.value) == null || (a = a.components) == null) && a.length ? (k(), o(lr, b({ key: 1 }, v.value, {
|
|
9616
9613
|
onClose: ge,
|
|
9617
9614
|
onSubmit: _e
|
|
9618
|
-
}), null, 16)) : (k(), o(
|
|
9615
|
+
}), null, 16)) : (k(), o(Xd, {
|
|
9619
9616
|
key: 2,
|
|
9620
9617
|
cite: y.value,
|
|
9621
9618
|
"onUpdate:cite": r[3] || (r[3] = (e) => y.value = e),
|
|
@@ -9656,7 +9653,7 @@ var ld = ["src"], ud = {
|
|
|
9656
9653
|
}, 16, ["class"]))], 4);
|
|
9657
9654
|
};
|
|
9658
9655
|
}
|
|
9659
|
-
}),
|
|
9656
|
+
}), Am = { class: "ai-image-preview-group" }, jm = /* @__PURE__ */ m(Y(Y({}, { name: "ImagePreviewGroup" }), {}, {
|
|
9660
9657
|
__name: "image-preview-group",
|
|
9661
9658
|
props: {
|
|
9662
9659
|
maskClosable: {
|
|
@@ -9685,7 +9682,7 @@ var ld = ["src"], ud = {
|
|
|
9685
9682
|
let a = [...t.keys()], o = a.map((e) => t.get(e)()), s = a.indexOf(e);
|
|
9686
9683
|
r.value = o, i.value = s >= 0 ? s : 0, n.value = !0;
|
|
9687
9684
|
}
|
|
9688
|
-
}), (t, a) => (k(), c("div",
|
|
9685
|
+
}), (t, a) => (k(), c("div", Am, [N(t.$slots, "default"), n.value ? (k(), o(md, {
|
|
9689
9686
|
key: 0,
|
|
9690
9687
|
current: i.value,
|
|
9691
9688
|
"onUpdate:current": a[0] || (a[0] = (e) => i.value = e),
|
|
@@ -9708,10 +9705,10 @@ var ld = ["src"], ud = {
|
|
|
9708
9705
|
"show-info"
|
|
9709
9706
|
])) : s("", !0)]));
|
|
9710
9707
|
}
|
|
9711
|
-
})),
|
|
9708
|
+
})), Mm = ["alt", "src"], Nm = {
|
|
9712
9709
|
key: 1,
|
|
9713
9710
|
class: "ai-image-error"
|
|
9714
|
-
},
|
|
9711
|
+
}, Pm = /* @__PURE__ */ m(Y(Y({}, { name: "AiImage" }), {}, {
|
|
9715
9712
|
__name: "image",
|
|
9716
9713
|
props: {
|
|
9717
9714
|
alt: { default: "" },
|
|
@@ -9803,8 +9800,8 @@ var ld = ["src"], ud = {
|
|
|
9803
9800
|
style: ee,
|
|
9804
9801
|
onError: P,
|
|
9805
9802
|
onLoad: M
|
|
9806
|
-
}, null, 40,
|
|
9807
|
-
h.value === "error" ? (k(), c("div",
|
|
9803
|
+
}, null, 40, Mm)) : s("", !0),
|
|
9804
|
+
h.value === "error" ? (k(), c("div", Nm, [f(R(Ht), { class: "ai-image-error-icon" })])) : s("", !0),
|
|
9808
9805
|
h.value === "error" ? (k(), c("div", {
|
|
9809
9806
|
key: 2,
|
|
9810
9807
|
class: "ai-image-error-overlay",
|
|
@@ -9832,4 +9829,4 @@ var ld = ["src"], ud = {
|
|
|
9832
9829
|
}
|
|
9833
9830
|
}));
|
|
9834
9831
|
//#endregion
|
|
9835
|
-
export { Ft as AIBluekingBannerIcon, Pt as AIBluekingIcon, jn as ActiveLikeIcon, Mn as ActiveUnLikeIcon, xn as AgentIcon,
|
|
9832
|
+
export { Ft as AIBluekingBannerIcon, Pt as AIBluekingIcon, jn as ActiveLikeIcon, Mn as ActiveUnLikeIcon, xn as AgentIcon, Pm as AiImage, Hn as AiLoading, Jn as AiSelection, vn as ArrowDownIcon, nn as ArrowLeftIcon, Bt as ArrowRightIcon, rn as ArrowRightPreviewIcon, Wt as BkFlowFailedIcon, Kt as BkFlowPendingIcon, Ut as BkFlowSuccessIcon, Gt as BkFlowSuspendedIcon, pt as CHAT_Z_INDEX, vt as CONST_MESSAGE_TOOLS, bt as CONST_UPDATE_TOOLS, yt as CONST_USER_MESSAGE_TOOLS, hr as CONTAINER_SCROLL_TOKEN, yr as CUSTOM_TAB_TOKEN, km as ChatContainer, Xd as ChatInput, wn as CiteIcon, cn as CloseCircleIcon, yn as CloseIcon, jc as CodeContent, hn as CollapsedIcon, _n as ContentLoadingIcon, pl as ContentRender, Cn as CopyIcon, Pn as DEFAULT_SHORTCUTS, Il as Delete, un as DeleteCircleIcon, kn as DeleteIcon, ln as DocLinkIcon, It as DocumentIcon, en as DownloadIcon, ht as EDITOR_MENU_Z_INDEX, mt as EDITOR_Z_INDEX, br as EXECUTION_TAB_NAME, An as EditIcon, gn as ErrorIcon, qt as ExecutionIcon, pm as ExecutionSummary, dn as FileUploadIcon, $t as FitScreenIcon, Cr as GLOBAL_CONFIG_TOKEN, Ct as HIGHLIGHT_KEYWORD_CLASS_NAME, mf as HighlightKeyword, Kr as IMAGE_PREVIEW_GROUP_KEY, on as ImageBrokenIcon, Rc as ImageContent, Ht as ImageErrorIcon, md as ImagePreview, jm as ImagePreviewGroup, sn as ImageSizeIcon, Ll as InsertText, Tt as LOADING_MESSAGE_ID, Bc as LatexContent, Dn as LikeIcon, Vt as LinkIcon, pn as LoadingMessageIcon, xt as MAX_UPLOAD_FILES, St as MAX_UPLOAD_FILE_SIZE, Et as MarkdownLanguageMap, Hc as MermaidContent, nm as MessageContainer, W as MessageContentType, ym as MessageLoading, $p as MessageRender, G as MessageRole, qr as MessageState, K as MessageStatus, pf as MessageTools, Yr as MessageToolsStatus, cf as MessageUserFeedback, Sn as MoreAgentIcon, bn as MoreIcon, Jt as NodeOutputIcon, Yt as NodeTabIcon, Zr as OverflowTips, tn as PreviewCloseIcon, Lt as PreviewIcon, Tn as RebuildIcon, an as ReloadIcon, zt as RemoveIcon, wt as RenderMode, Rl as ReplaceAll, Qt as RotateIcon, _t as SELECTION_Z_INDEX, gt as SHORTCUT_MENU_Z_INDEX, gr as SHOW_SCROLL_BOTTOM_BTN_DISTANCE, Fn as ScrollBtn, wm as SelectionFooter, fn as SendMessageIcon, En as ShareIcon, Gn as ShortcutBtn, Qn as ShortcutBtns, lr as ShortcutRender, Rt as TargetIcon, mn as ThinkingIcon, kp as ToolCallRender, Nn as ToolIconsMap, On as UnLikeIcon, Jr as UploadStatus, sl as VNodeRenderer, Xt as ZoomInIcon, Zt as ZoomOutIcon, Gc as commonErrorContent, J as commonSVGProps, Ye as completeMarkdownSyntax, Iu as createEditor, _l as docToString, ct as formatDuration, ut as formatElapsedTime, Re as formatFileSize, ze as formatUploadNotAddedMessage, lt as generateUUID, st as getCookieByName, Le as getFileExtension, Ie as getFilePreviewUrl, Mr as getScrollParent, Tr as injectGlobalConfig, dt as isEn, Fe as isImageFile, ft as lang, ac as markdownAnimationAttrs, fc as markdownItBkInlineStyle, _c as markdownItLatex, yc as markdownItMermaid, Bl as microtask, zl as min, Be as needsMarkdownCompletion, Gr as noop, Lu as plainSchema, Ve as removeCompletionSuffix, Wr as resourceTypeMap, Bu as schema, vl as stringToDoc, q as t, ur as useAnimationText, pr as useClipboard, mr as useCommandSelection, vr as useContainerScrollConsumer, _r as useContainerScrollProvider, Sr as useCustomTabConsumer, xr as useCustomTabProvider, wr as useGlobalConfig, Er as useMenuKeydown, jr as useMessageGroup, Yn as useObserverVisibleList, Nr as useParentScrolling, zu as voidNode };
|