@blueking/ai-blueking 2.1.1-beta.21 → 2.1.1-beta.22

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.
@@ -1,10 +1,10 @@
1
1
  import { Fragment as e, Teleport as t, computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createSlots as s, createTextVNode as c, createVNode as l, defineComponent as u, guardReactiveProps as d, h as f, isRef as p, mergeDefaults as m, nextTick as h, normalizeClass as g, normalizeProps as _, normalizeStyle as v, onBeforeUnmount as y, onMounted as b, onUnmounted as x, openBlock as S, reactive as C, ref as w, render as T, renderList as E, renderSlot as D, shallowRef as O, toDisplayString as k, toValue as A, unref as j, useCssVars as M, useTemplateRef as N, vShow as P, watch as F, withCtx as I, withDirectives as L, withModifiers as R } from "vue";
2
- import { AiSelection as z, ChatContainer as B, MessageContentType as V, MessageRender as ee, MessageRole as H, MessageStatus as U, MessageToolsStatus as te, RenderMode as ne, RenderMode as W } from "@blueking/chat-x";
2
+ import { AiSelection as z, ChatContainer as B, MessageContentType as V, MessageRender as H, MessageRole as U, MessageStatus as W, MessageToolsStatus as ee, RenderMode as te, RenderMode as ne } from "@blueking/chat-x";
3
3
  import { Exception as re, Input as ie, Loading as ae, Message as oe, OverflowTitle as se, PopConfirm as ce, bkTooltips as le } from "bkui-vue";
4
4
  import { Tippy as ue, directive as de } from "vue-tippy";
5
5
  import fe from "tippy.js";
6
- import { Search as G } from "bkui-vue/lib/icon";
7
- import { AGUIProtocol as pe, AGUIProtocol as K, MessageRole as me, useChatHelper as he, useChatHelper as ge } from "@blueking/chat-helper";
6
+ import { Search as pe } from "bkui-vue/lib/icon";
7
+ import { AGUIProtocol as G, AGUIProtocol as K, MessageRole as q, useChatHelper as me, useChatHelper as he } from "@blueking/chat-helper";
8
8
  import "tippy.js/dist/tippy.css";
9
9
  //#region src/assets/icon/iconcool.js
10
10
  (function() {
@@ -15,33 +15,33 @@ import "tippy.js/dist/tippy.css";
15
15
  })();
16
16
  //#endregion
17
17
  //#region src/assets/images/avatar.png
18
- var _e = "data:image/png;base64,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";
18
+ var ge = "data:image/png;base64,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";
19
19
  //#endregion
20
20
  //#region src/utils/message-utils.ts
21
- function ve(e, t) {
21
+ function _e(e, t) {
22
22
  let n = null;
23
23
  for (let r of e) if (r.role === "user" && r.id !== void 0 && (n = r), r === t) break;
24
24
  return n;
25
25
  }
26
- function ye(e, t) {
27
- let n = ve(e, t);
26
+ function ve(e, t) {
27
+ let n = _e(e, t);
28
28
  if (n?.id !== void 0) return typeof n.id == "number" ? n.id : Number(n.id);
29
29
  }
30
30
  //#endregion
31
31
  //#region src/utils/index.ts
32
- var be = (e) => {
32
+ var ye = (e) => {
33
33
  let t = document.cookie.match(RegExp(`(^| )${e}=([^;]*)(;|$)`));
34
34
  return t ? t[2] : "";
35
- }, xe = (e) => e.endsWith("/") ? e : `${e}/`, Se = (e) => {
35
+ }, be = (e) => e.endsWith("/") ? e : `${e}/`, xe = (e) => {
36
36
  if (!e) return e;
37
37
  try {
38
38
  let t = new URL(e, window.location.origin);
39
- return t.protocol = window.location.protocol, xe(t.toString());
39
+ return t.protocol = window.location.protocol, be(t.toString());
40
40
  } catch (t) {
41
- return console.warn("Failed to normalize URL:", t), xe(e);
41
+ return console.warn("Failed to normalize URL:", t), be(e);
42
42
  }
43
43
  };
44
- async function Ce(e) {
44
+ async function Se(e) {
45
45
  if (typeof navigator < "u" && "clipboard" in navigator) try {
46
46
  return await navigator.clipboard.writeText(e), !0;
47
47
  } catch {}
@@ -55,23 +55,23 @@ async function Ce(e) {
55
55
  document.body.removeChild(t);
56
56
  }
57
57
  }
58
- function we() {
58
+ function Ce() {
59
59
  let e = window.navigator.userAgent.toLowerCase(), t = window.navigator.platform.toLowerCase();
60
60
  return t.includes("mac") || e.includes("mac") ? "mac" : t.includes("win") || e.includes("win") ? "windows" : t.includes("linux") || e.includes("linux") ? "linux" : "unknown";
61
61
  }
62
- function Te() {
63
- return Ee() ? "Cmd + I" : "Ctrl + I";
62
+ function we() {
63
+ return Te() ? "Cmd + I" : "Ctrl + I";
64
64
  }
65
- function Ee() {
66
- return we() === "mac";
65
+ function Te() {
66
+ return Ce() === "mac";
67
67
  }
68
- function De(e) {
69
- let t = Ee() ? e.metaKey : e.ctrlKey, n = e.key.toLowerCase() === "i";
68
+ function Ee(e) {
69
+ let t = Te() ? e.metaKey : e.ctrlKey, n = e.key.toLowerCase() === "i";
70
70
  return t && n && !e.shiftKey && !e.altKey;
71
71
  }
72
72
  //#endregion
73
73
  //#region src/lang/index.ts
74
- var Oe = be("blueking_language") || "zh-cn", ke = {
74
+ var De = ye("blueking_language") || "zh-cn", Oe = {
75
75
  小鲸: "BK GPT",
76
76
  关闭: "close",
77
77
  发送: "Send",
@@ -106,7 +106,7 @@ var Oe = be("blueking_language") || "zh-cn", ke = {
106
106
  取消: "Cancel",
107
107
  确定: "Confirm",
108
108
  分享链接已复制到剪贴板: "Share link copied to clipboard"
109
- }, Ae = {
109
+ }, ke = {
110
110
  重命名: "重命名",
111
111
  自动生成命名: "自动生成命名",
112
112
  分享会话: "分享会话",
@@ -114,10 +114,10 @@ var Oe = be("blueking_language") || "zh-cn", ke = {
114
114
  取消: "取消",
115
115
  确定: "确定",
116
116
  分享链接已复制到剪贴板: "分享链接已复制到剪贴板"
117
- }, q = (e) => Oe === "en" ? ke[e] || e : Ae[e] || e;
117
+ }, J = (e) => De === "en" ? Oe[e] || e : ke[e] || e;
118
118
  //#endregion
119
119
  //#region src/composables/use-history-panel.ts
120
- function je(e) {
120
+ function Ae(e) {
121
121
  let { triggerRef: t, panelComponent: n, panelProps: r = {}, tippyOptions: i = {} } = e, a = w(null), o = null, s = () => (o ||= document.createElement("div"), T(f(n, {
122
122
  ...r,
123
123
  onClose: d
@@ -180,7 +180,7 @@ function je(e) {
180
180
  }
181
181
  //#endregion
182
182
  //#region src/components/ai-header/history-dropdown/history-group.vue?vue&type=script&setup=true&lang.ts
183
- var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe = { class: "history-group-list" }, Fe = /* @__PURE__ */ u({
183
+ var je = { class: "history-group" }, Me = { class: "history-group-title" }, Ne = { class: "history-group-list" }, Pe = /* @__PURE__ */ u({
184
184
  __name: "history-group",
185
185
  props: {
186
186
  currentSessionCode: {},
@@ -189,13 +189,13 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
189
189
  },
190
190
  setup(e) {
191
191
  let t = e;
192
- return (e, n) => (S(), a("div", Me, [o("div", Ne, [o("span", null, k(t.title), 1)]), o("div", Pe, [D(e.$slots, "default", {}, void 0, !0)])]));
192
+ return (e, n) => (S(), a("div", je, [o("div", Me, [o("span", null, k(t.title), 1)]), o("div", Ne, [D(e.$slots, "default", {}, void 0, !0)])]));
193
193
  }
194
- }), J = (e, t) => {
194
+ }), Y = (e, t) => {
195
195
  let n = e.__vccOpts || e;
196
196
  for (let [e, r] of t) n[e] = r;
197
197
  return n;
198
- }, Ie = /* @__PURE__ */ J(Fe, [["__scopeId", "data-v-3b603cb6"]]), Le = { class: "history-item-actions" }, Re = /* @__PURE__ */ J(/* @__PURE__ */ u({
198
+ }, Fe = /* @__PURE__ */ Y(Pe, [["__scopeId", "data-v-3b603cb6"]]), Ie = { class: "history-item-actions" }, Le = /* @__PURE__ */ Y(/* @__PURE__ */ u({
199
199
  __name: "history-item",
200
200
  props: {
201
201
  isActive: { type: Boolean },
@@ -256,14 +256,14 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
256
256
  }, null, 8, ["modelValue"])) : (S(), a(e, { key: 0 }, [l(j(se), { style: { width: "calc(100% - 42px)" } }, {
257
257
  default: I(() => [c(k(i.session.sessionName), 1)]),
258
258
  _: 1
259
- }), o("span", Le, [L(o("i", {
259
+ }), o("span", Ie, [L(o("i", {
260
260
  class: "bkai-icon bkai-bianji",
261
261
  onClick: R(m, ["stop"])
262
262
  }, null, 512), [[j(u), {
263
- content: j(q)("编辑"),
263
+ content: j(J)("编辑"),
264
264
  boundary: "parent"
265
265
  }]]), l(j(ce), {
266
- title: j(q)("确认删除会话 ?"),
266
+ title: j(J)("确认删除会话 ?"),
267
267
  content: "删除操作无法撤回,请谨慎操作!",
268
268
  "confirm-config": { theme: "danger" },
269
269
  trigger: "click",
@@ -274,13 +274,13 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
274
274
  class: "bkai-icon bkai-shanchu",
275
275
  onClick: n[0] ||= R(() => {}, ["stop"])
276
276
  }, null, 512), [[j(u), {
277
- content: j(q)("删除"),
277
+ content: j(J)("删除"),
278
278
  boundary: "parent"
279
279
  }]])]),
280
280
  _: 1
281
281
  }, 8, ["title"])])], 64))], 2));
282
282
  }
283
- }), [["__scopeId", "data-v-fea14d3a"]]), ze = { class: "history-search" }, Be = { class: "input-icon" }, Ve = /* @__PURE__ */ J(/* @__PURE__ */ u({
283
+ }), [["__scopeId", "data-v-fea14d3a"]]), Re = { class: "history-search" }, ze = { class: "input-icon" }, Be = /* @__PURE__ */ Y(/* @__PURE__ */ u({
284
284
  __name: "history-search",
285
285
  props: {
286
286
  modelValue: { default: "" },
@@ -291,18 +291,18 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
291
291
  let n = e, r = t, i = (e) => {
292
292
  r("update:modelValue", e);
293
293
  };
294
- return (e, t) => (S(), a("div", ze, [l(j(ie), {
294
+ return (e, t) => (S(), a("div", Re, [l(j(ie), {
295
295
  "model-value": n.modelValue,
296
296
  behavior: "simplicity",
297
- placeholder: n.placeholder || j(q)("搜索会话名称"),
297
+ placeholder: n.placeholder || j(J)("搜索会话名称"),
298
298
  style: { height: "22px" },
299
299
  "onUpdate:modelValue": i
300
300
  }, {
301
- suffix: I(() => [o("span", Be, [l(j(G))])]),
301
+ suffix: I(() => [o("span", ze, [l(j(pe))])]),
302
302
  _: 1
303
303
  }, 8, ["model-value", "placeholder"])]));
304
304
  }
305
- }), [["__scopeId", "data-v-e7ff40b2"]]), He = { class: "bkai-history-dropdown" }, Ue = { class: "history-dropdown-header" }, We = { class: "history-dropdown-header-title" }, Ge = { class: "history-dropdown-content" }, Ke = /* @__PURE__ */ J(/* @__PURE__ */ u({
305
+ }), [["__scopeId", "data-v-e7ff40b2"]]), Ve = { class: "bkai-history-dropdown" }, He = { class: "history-dropdown-header" }, Ue = { class: "history-dropdown-header-title" }, We = { class: "history-dropdown-content" }, Ge = /* @__PURE__ */ Y(/* @__PURE__ */ u({
306
306
  __name: "index",
307
307
  props: { sessionBusinessManager: {} },
308
308
  emits: [
@@ -316,32 +316,32 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
316
316
  let e = {
317
317
  today: {
318
318
  key: "today",
319
- alias: q("今天"),
319
+ alias: J("今天"),
320
320
  sessionList: []
321
321
  },
322
322
  yesterday: {
323
323
  key: "yesterday",
324
- alias: q("昨天"),
324
+ alias: J("昨天"),
325
325
  sessionList: []
326
326
  },
327
327
  "3days": {
328
328
  key: "3days",
329
- alias: q("3天前"),
329
+ alias: J("3天前"),
330
330
  sessionList: []
331
331
  },
332
332
  "5days": {
333
333
  key: "5days",
334
- alias: q("5天前"),
334
+ alias: J("5天前"),
335
335
  sessionList: []
336
336
  },
337
337
  "1week": {
338
338
  key: "1week",
339
- alias: q("1周前"),
339
+ alias: J("1周前"),
340
340
  sessionList: []
341
341
  },
342
342
  before: {
343
343
  key: "before",
344
- alias: q("更早"),
344
+ alias: J("更早"),
345
345
  sessionList: []
346
346
  }
347
347
  }, t = s.sessionBusinessManager.sessionList.value.filter((e) => e.sessionName.toLowerCase().includes(u.value.toLowerCase())), n = /* @__PURE__ */ new Date(), r = new Date(n);
@@ -373,17 +373,17 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
373
373
  }, y = () => {
374
374
  d.value = null;
375
375
  };
376
- return (t, n) => (S(), a("div", He, [o("div", Ue, [o("h1", We, k(j(q)("历史会话")), 1), l(Ve, {
376
+ return (t, n) => (S(), a("div", Ve, [o("div", He, [o("h1", Ue, k(j(J)("历史会话")), 1), l(Be, {
377
377
  modelValue: u.value,
378
378
  "onUpdate:modelValue": n[0] ||= (e) => u.value = e,
379
- placeholder: j(q)("搜索会话名称")
380
- }, null, 8, ["modelValue", "placeholder"])]), o("div", Ge, [p.value.length > 0 ? (S(!0), a(e, { key: 0 }, E(p.value, (t) => (S(), r(Ie, {
379
+ placeholder: j(J)("搜索会话名称")
380
+ }, null, 8, ["modelValue", "placeholder"])]), o("div", We, [p.value.length > 0 ? (S(!0), a(e, { key: 0 }, E(p.value, (t) => (S(), r(Fe, {
381
381
  key: t.key,
382
382
  "current-session-code": f.value,
383
383
  sessions: t.sessionList,
384
384
  title: t.alias
385
385
  }, {
386
- default: I(() => [(S(!0), a(e, null, E(t.sessionList, (e) => (S(), r(Re, {
386
+ default: I(() => [(S(!0), a(e, null, E(t.sessionList, (e) => (S(), r(Le, {
387
387
  key: e.sessionCode,
388
388
  "is-active": m(e.sessionCode),
389
389
  "is-editing": d.value === e.sessionCode,
@@ -405,7 +405,7 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
405
405
  "title"
406
406
  ]))), 128)) : (S(), r(j(re), {
407
407
  key: 1,
408
- description: u.value ? j(q)("搜索为空") : j(q)("暂无对话"),
408
+ description: u.value ? j(J)("搜索为空") : j(J)("暂无对话"),
409
409
  scene: "part",
410
410
  style: { "margin-top": "100px" },
411
411
  type: u.value ? "search-empty" : "empty"
@@ -414,10 +414,10 @@ var Me = { class: "history-group" }, Ne = { class: "history-group-title" }, Pe =
414
414
  }), [["__scopeId", "data-v-143fb0ef"]]);
415
415
  //#endregion
416
416
  //#region src/components/ai-header/history-dropdown/use-history-dropdown.ts
417
- function qe(e) {
418
- return e.sessionBusinessManager ? je({
417
+ function Ke(e) {
418
+ return e.sessionBusinessManager ? Ae({
419
419
  triggerRef: e.triggerRef,
420
- panelComponent: Ke,
420
+ panelComponent: Ge,
421
421
  panelProps: {
422
422
  sessionBusinessManager: e.sessionBusinessManager,
423
423
  onSessionSwitch: e.onSessionSwitch,
@@ -440,16 +440,16 @@ function qe(e) {
440
440
  }
441
441
  //#endregion
442
442
  //#region src/components/ai-header/index.vue?vue&type=script&setup=true&lang.ts
443
- var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
443
+ var qe = { class: "left-section" }, Je = { class: "logo" }, Ye = ["src"], Xe = {
444
444
  key: 0,
445
445
  class: "rename-tooltip"
446
- }, Qe = { class: "rename-content" }, $e = {
446
+ }, Ze = { class: "rename-content" }, Qe = {
447
447
  key: 0,
448
448
  class: "tippy-dropdown-menu"
449
- }, et = {
449
+ }, $e = {
450
450
  key: 1,
451
451
  class: "bkai-icon bkai-auto-refresh-line"
452
- }, tt = { class: "right-section" }, nt = /* @__PURE__ */ J(/* @__PURE__ */ u({
452
+ }, et = { class: "right-section" }, tt = /* @__PURE__ */ Y(/* @__PURE__ */ u({
453
453
  __name: "index",
454
454
  props: {
455
455
  title: { default: "" },
@@ -500,7 +500,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
500
500
  showShare: !1
501
501
  }) },
502
502
  sessionBusinessManager: { default: void 0 },
503
- renderMode: { default: W.Chat }
503
+ renderMode: { default: ne.Chat }
504
504
  },
505
505
  emits: [
506
506
  "close",
@@ -513,42 +513,55 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
513
513
  "share",
514
514
  "history-session-switch",
515
515
  "history-session-delete",
516
- "history-session-rename"
516
+ "history-session-rename",
517
+ "new-chat-created"
517
518
  ],
518
519
  setup(e, { expose: t, emit: s }) {
519
520
  let u = e, d = s, f = le, p = w(null), m = w(null), h = N("moreMenuTippyRef"), _ = w(!1), x = w(""), C = w(null), T = w(!1), E = () => document.querySelector(".ai-blueking-panel") || document.body, O = null, A = () => {
520
- !m.value || !u.sessionBusinessManager || (O = qe({
521
+ !m.value || !u.sessionBusinessManager || (O = Ke({
521
522
  triggerRef: m,
522
523
  sessionBusinessManager: u.sessionBusinessManager,
523
524
  onSessionSwitch: (e) => d("history-session-switch", e),
524
525
  onSessionDelete: (e) => d("history-session-delete", e),
525
526
  onSessionRename: (e, t) => d("history-session-rename", e, t)
526
527
  }));
527
- }, M = n(() => u.hasPermission ? u.enableChatSession ? u.title || `${u.agentName || ""}-${u.sessionName || ""}` : u.agentName : q("无智能体使用权限")), P = n(() => u.isCompressionHeight ? "bkai-morenchicun" : "bkai-yasuo"), R = n(() => u.isCompressionHeight ? q("恢复默认尺寸") : q("缩小高度")), z = n(() => u.hasPermission), B = (e) => z.value ? e : q("暂无使用权限"), V = () => ({ cursor: z.value ? "pointer" : "not-allowed" }), ee = async () => {
528
- if (u.sessionBusinessManager) try {
529
- await u.sessionBusinessManager.createNewSession();
530
- } catch (e) {
531
- console.error("Failed to create new session:", e), oe({
532
- theme: "error",
533
- message: q("创建会话失败")
534
- });
528
+ }, M = n(() => u.hasPermission ? u.enableChatSession ? u.title || `${u.agentName || ""}-${u.sessionName || ""}` : u.agentName : J("无智能体使用权限")), P = n(() => u.isCompressionHeight ? "bkai-morenchicun" : "bkai-yasuo"), R = n(() => u.isCompressionHeight ? J("恢复默认尺寸") : J("缩小高度")), z = n(() => u.hasPermission), B = (e) => z.value ? e : J("暂无使用权限"), V = () => ({ cursor: z.value ? "pointer" : "not-allowed" }), H = w(!1), U = async () => {
529
+ if (!H.value) {
530
+ H.value = !0;
531
+ try {
532
+ if (u.sessionBusinessManager) try {
533
+ let e = await u.sessionBusinessManager.createNewSession();
534
+ e && d("new-chat-created", {
535
+ sessionCode: e.sessionCode,
536
+ sessionName: e.sessionName,
537
+ createdAt: e.createdAt
538
+ });
539
+ } catch (e) {
540
+ console.error("Failed to create new session:", e), oe({
541
+ theme: "error",
542
+ message: J("创建会话失败")
543
+ });
544
+ }
545
+ d("new-chat");
546
+ } finally {
547
+ H.value = !1;
548
+ }
535
549
  }
536
- d("new-chat");
537
- }, H = (e) => {
550
+ }, W = (e) => {
538
551
  e.stopPropagation(), u.sessionBusinessManager ? (O || A(), O && O.handleTriggerClick(e)) : d("history-click", e);
539
- }, U = () => {
552
+ }, ee = () => {
540
553
  d("help-click");
541
554
  }, te = (e) => {
542
555
  e.stopPropagation(), O && O.isVisible() && O.hide(), h.value && (T.value ? h.value.hide() : h.value.show());
543
- }, ne = () => {
544
- h.value?.hide(), ce();
545
556
  }, re = () => {
546
- !u.hasSessionContents || u.autoGenerateLoading || d("auto-generate-name");
557
+ h.value?.hide(), fe();
547
558
  }, se = () => {
548
- u.hasSessionContents && (h.value?.hide(), d("share"));
559
+ !u.hasSessionContents || u.autoGenerateLoading || d("auto-generate-name");
549
560
  }, ce = () => {
550
- document.removeEventListener("click", K), x.value = u.sessionName || "", _.value = !0, setTimeout(() => {
551
- document.addEventListener("click", K);
561
+ u.hasSessionContents && (h.value?.hide(), d("share"));
562
+ }, fe = () => {
563
+ document.removeEventListener("click", q), x.value = u.sessionName || "", _.value = !0, setTimeout(() => {
564
+ document.addEventListener("click", q);
552
565
  }, 100), setTimeout(() => {
553
566
  if (C.value) try {
554
567
  let e = C.value;
@@ -559,7 +572,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
559
572
  console.warn("Failed to focus rename input:", e);
560
573
  }
561
574
  }, 100);
562
- }, fe = () => {
575
+ }, pe = () => {
563
576
  let e = x.value.trim();
564
577
  if (!e) {
565
578
  G();
@@ -568,9 +581,9 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
568
581
  d("rename", e), _.value = !1, x.value = "";
569
582
  }, G = () => {
570
583
  _.value = !1, x.value = "";
571
- }, pe = (e, t) => {
572
- x.value = e, t.key === "Enter" ? fe() : t.key === "Escape" && G();
573
- }, K = (e) => {
584
+ }, K = (e, t) => {
585
+ x.value = e, t.key === "Enter" ? pe() : t.key === "Escape" && G();
586
+ }, q = (e) => {
574
587
  if (!_.value) return;
575
588
  let t = e.target, n = document.querySelector(".rename-tooltip");
576
589
  n && !n.contains(t) && G();
@@ -578,9 +591,9 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
578
591
  return F(() => u.autoGenerateLoading, (e, t) => {
579
592
  t && !e && T.value && h.value?.hide();
580
593
  }), b(() => {
581
- u.sessionBusinessManager && A(), document.addEventListener("click", K);
594
+ u.sessionBusinessManager && A(), document.addEventListener("click", q);
582
595
  }), y(() => {
583
- O &&= (O.destroy(), null), document.removeEventListener("click", K);
596
+ O &&= (O.destroy(), null), document.removeEventListener("click", q);
584
597
  }), t({
585
598
  headerRef: p,
586
599
  historyIconRef: m
@@ -589,25 +602,25 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
589
602
  ref: p,
590
603
  class: g(["ai-header drag-handle", { draggable: u.draggable }])
591
604
  }, [
592
- o("div", Je, [
593
- o("div", Ye, [o("img", {
605
+ o("div", qe, [
606
+ o("div", Je, [o("img", {
594
607
  alt: "logo",
595
- src: j(_e)
596
- }, null, 8, Xe)]),
608
+ src: j(ge)
609
+ }, null, 8, Ye)]),
597
610
  o("div", { class: g(["title", { "title-with-tooltip": _.value }]) }, [
598
611
  c(k(M.value) + " ", 1),
599
612
  i(" 重命名 tooltip 直接绑定在 title 上 "),
600
- _.value ? (S(), a("div", Ze, [o("div", Qe, [l(j(ie), {
613
+ _.value ? (S(), a("div", Xe, [o("div", Ze, [l(j(ie), {
601
614
  ref_key: "renameInputRef",
602
615
  ref: C,
603
616
  modelValue: x.value,
604
617
  "onUpdate:modelValue": n[0] ||= (e) => x.value = e,
605
618
  class: "rename-input",
606
- placeholder: j(q)("请输入新的会话名称"),
607
- onKeyup: pe
619
+ placeholder: j(J)("请输入新的会话名称"),
620
+ onKeyup: K
608
621
  }, null, 8, ["modelValue", "placeholder"]), o("div", { class: "rename-buttons" }, [o("i", {
609
622
  class: "bkai-icon bkai-check-1 rename-btn confirm-btn",
610
- onClick: fe
623
+ onClick: pe
611
624
  }), o("i", {
612
625
  class: "bkai-icon bkai-close rename-btn cancel-btn",
613
626
  onClick: G
@@ -628,34 +641,34 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
628
641
  onHidden: n[1] ||= (e) => T.value = !1,
629
642
  onShown: n[2] ||= (e) => T.value = !0
630
643
  }, {
631
- content: I(() => [T.value ? (S(), a("div", $e, [
644
+ content: I(() => [T.value ? (S(), a("div", Qe, [
632
645
  u.dropdownMenuConfig?.showRename ? (S(), a("div", {
633
646
  key: 0,
634
647
  class: "tippy-menu-item",
635
- onClick: ne
636
- }, [n[7] ||= o("i", { class: "bkai-icon bkai-bianji" }, null, -1), o("span", null, k(j(q)("重命名")), 1)])) : i("v-if", !0),
648
+ onClick: re
649
+ }, [n[7] ||= o("i", { class: "bkai-icon bkai-bianji" }, null, -1), o("span", null, k(j(J)("重命名")), 1)])) : i("v-if", !0),
637
650
  u.dropdownMenuConfig?.showAutoGenerate ? L((S(), a("div", {
638
651
  key: 1,
639
652
  class: g(["tippy-menu-item", { disabled: !u.hasSessionContents || u.autoGenerateLoading }]),
640
- onClick: re
653
+ onClick: se
641
654
  }, [u.autoGenerateLoading ? (S(), r(j(ae), {
642
655
  key: 0,
643
656
  mode: "spin",
644
657
  size: "mini",
645
658
  theme: "primary"
646
- })) : (S(), a("i", et)), o("span", null, k(j(q)("自动生成命名")), 1)], 2)), [[j(de), {
647
- content: u.hasSessionContents ? "" : j(q)("请先发起会话"),
659
+ })) : (S(), a("i", $e)), o("span", null, k(j(J)("自动生成命名")), 1)], 2)), [[j(de), {
660
+ content: u.hasSessionContents ? "" : j(J)("请先发起会话"),
648
661
  theme: "ai-blueking-tooltip",
649
662
  arrow: !0,
650
663
  delay: [300, 0],
651
664
  appendTo: E
652
665
  }]]) : i("v-if", !0),
653
- u.dropdownMenuConfig?.showShare && u.renderMode !== j(W).Test ? L((S(), a("div", {
666
+ u.dropdownMenuConfig?.showShare && u.renderMode !== j(ne).Test ? L((S(), a("div", {
654
667
  key: 2,
655
668
  class: g(["tippy-menu-item", { disabled: !u.hasSessionContents }]),
656
- onClick: se
657
- }, [n[8] ||= o("i", { class: "bkai-icon bkai-fenxiang" }, null, -1), o("span", null, k(j(q)("分享会话")), 1)], 2)), [[j(de), {
658
- content: u.hasSessionContents ? "" : j(q)("请先发起会话"),
669
+ onClick: ce
670
+ }, [n[8] ||= o("i", { class: "bkai-icon bkai-fenxiang" }, null, -1), o("span", null, k(j(J)("分享会话")), 1)], 2)), [[j(de), {
671
+ content: u.hasSessionContents ? "" : j(J)("请先发起会话"),
659
672
  theme: "ai-blueking-tooltip",
660
673
  arrow: !0,
661
674
  delay: [300, 0],
@@ -670,19 +683,19 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
670
683
  }, 512)) : i("v-if", !0)
671
684
  ]),
672
685
  D(t.$slots, "headerLeft", {}, void 0, !0),
673
- o("div", tt, [
686
+ o("div", et, [
674
687
  i(" 新增会话按钮 "),
675
688
  u.showNewChatIcon && e.enableChatSession !== !1 ? L((S(), a("i", {
676
689
  key: 0,
677
690
  class: g([
678
691
  "bkai-icon",
679
692
  "bkai-xinzengliaotian",
680
- { disabled: !z.value }
693
+ { disabled: !z.value || H.value }
681
694
  ]),
682
695
  style: v(V()),
683
- onClick: n[3] ||= (e) => z.value ? ee() : void 0
696
+ onClick: n[3] ||= (e) => z.value && !H.value ? U() : void 0
684
697
  }, null, 6)), [[j(f), {
685
- content: B(j(q)("新增会话")),
698
+ content: H.value ? j(J)("正在创建会话...") : B(j(J)("新增会话")),
686
699
  boundary: "parent"
687
700
  }]]) : i("v-if", !0),
688
701
  i(" 历史会话按钮 "),
@@ -696,17 +709,17 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
696
709
  { disabled: !z.value }
697
710
  ]),
698
711
  style: v(V()),
699
- onClick: n[4] ||= (e) => z.value ? H(e) : void 0
712
+ onClick: n[4] ||= (e) => z.value ? W(e) : void 0
700
713
  }, null, 6)), [[j(f), {
701
- content: B(j(q)("历史会话")),
714
+ content: B(j(J)("历史会话")),
702
715
  boundary: "parent"
703
716
  }]]) : i("v-if", !0),
704
717
  e.chatGroup?.enabled ? L((S(), a("i", {
705
718
  key: 2,
706
719
  class: "bkai-icon bkai-zhushou",
707
- onClick: U
720
+ onClick: ee
708
721
  }, null, 512)), [[j(f), {
709
- content: j(q)("转人工"),
722
+ content: j(J)("转人工"),
710
723
  boundary: "parent"
711
724
  }]]) : i("v-if", !0),
712
725
  u.showCompressionIcon ? L((S(), a("i", {
@@ -721,13 +734,13 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
721
734
  class: "bkai-icon bkai-close-line-2",
722
735
  onClick: n[6] ||= (e) => d("close")
723
736
  }, null, 512), [[j(f), {
724
- content: j(q)("关闭"),
737
+ content: j(J)("关闭"),
725
738
  boundary: "parent"
726
739
  }]])
727
740
  ])
728
741
  ], 2));
729
742
  }
730
- }), [["__scopeId", "data-v-a9cf2dc2"]]), rt = class {
743
+ }), [["__scopeId", "data-v-de3b1a3b"]]), nt = class {
731
744
  _isGenerating;
732
745
  _isStopLoading;
733
746
  agentModule;
@@ -798,7 +811,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
798
811
  async regenerateFromAIMessages(e, t) {
799
812
  try {
800
813
  if (!e || e.length === 0) throw Error("No AI messages provided");
801
- let n = this.messages.value, r = ve(n, e[0]);
814
+ let n = this.messages.value, r = _e(n, e[0]);
802
815
  if (!r) throw Error("No user message found before AI messages");
803
816
  let i = r.id;
804
817
  if (i === void 0) throw Error("User message has no id");
@@ -815,7 +828,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
815
828
  let n = this.messages.value, r = n.findIndex((t) => String(t.id) === e);
816
829
  if (r === -1) throw Error(`Message not found: ${e}`);
817
830
  let i = n[r];
818
- if (i.role !== me.User) throw Error("Can only regenerate from user messages");
831
+ if (i.role !== q.User) throw Error("Can only regenerate from user messages");
819
832
  let a = n.slice(r), o = typeof i.content == "string" ? i.content : JSON.stringify(i.content), s = i.property;
820
833
  this._isGenerating.value = !0;
821
834
  let c = this.messageModule.deleteMessages(a);
@@ -833,7 +846,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
833
846
  try {
834
847
  let i = this.messages.value, a = i.findIndex((t) => String(t.id) === e);
835
848
  if (a === -1) throw Error(`Message not found: ${e}`);
836
- if (i[a].role !== me.User) throw Error("Can only resend user messages");
849
+ if (i[a].role !== q.User) throw Error("Can only resend user messages");
837
850
  let o = i.slice(a);
838
851
  this._isGenerating.value = !0;
839
852
  let s = this.messageModule.deleteMessages(o);
@@ -882,7 +895,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
882
895
  this._isStopLoading.value = !1;
883
896
  }
884
897
  }
885
- }, it = class {
898
+ }, rt = class {
886
899
  agentModule;
887
900
  config;
888
901
  eventEmitter;
@@ -915,10 +928,10 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
915
928
  return this.sessionModule.list;
916
929
  }
917
930
  async createNewSession() {
918
- return this.createSession({
931
+ return await this.createSession({
919
932
  name: "新会话",
920
933
  sessionCode: `new_session_${Date.now()}`
921
- });
934
+ }), this.sessionModule.current.value;
922
935
  }
923
936
  async createSession(e = {}) {
924
937
  if (this.config.enableChatSession === !1) throw Error("Chat session is disabled");
@@ -1011,7 +1024,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
1011
1024
  }), e;
1012
1025
  }
1013
1026
  }
1014
- }, at = class {
1027
+ }, it = class {
1015
1028
  messageModule;
1016
1029
  sessionModule;
1017
1030
  constructor(e, t) {
@@ -1028,7 +1041,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
1028
1041
  userMessageIds: e.map((e) => String(e.id))
1029
1042
  };
1030
1043
  }
1031
- }, ot = class {
1044
+ }, at = class {
1032
1045
  _agentShortcuts;
1033
1046
  _effectiveShortcuts;
1034
1047
  _propsShortcuts;
@@ -1085,7 +1098,7 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
1085
1098
  setShortcuts(e) {
1086
1099
  this._propsShortcuts.value = e;
1087
1100
  }
1088
- }, st = class {
1101
+ }, ot = class {
1089
1102
  _isCompressed;
1090
1103
  _isDraggingOrResizing;
1091
1104
  _nimbusMinimized;
@@ -1300,12 +1313,12 @@ var Je = { class: "left-section" }, Ye = { class: "logo" }, Xe = ["src"], Ze = {
1300
1313
  };
1301
1314
  }
1302
1315
  };
1303
- function ct(e) {
1304
- return new st(e);
1316
+ function st(e) {
1317
+ return new ot(e);
1305
1318
  }
1306
1319
  //#endregion
1307
1320
  //#region src/manager/event-types.ts
1308
- var lt = {
1321
+ var ct = {
1309
1322
  "panel-show": "show",
1310
1323
  "panel-hide": "close",
1311
1324
  "panel-toggle": null,
@@ -1342,6 +1355,7 @@ var lt = {
1342
1355
  "chat-error": null,
1343
1356
  "sdk-error": "sdk-error",
1344
1357
  "new-chat": "new-chat",
1358
+ "new-chat-created": "new-chat-created",
1345
1359
  "history-click": "history-click",
1346
1360
  "auto-generate-name": "auto-generate-name",
1347
1361
  "help-click": "help-click",
@@ -1354,7 +1368,7 @@ var lt = {
1354
1368
  "agent-info-loaded": null,
1355
1369
  error: null
1356
1370
  };
1357
- function ut(e, t) {
1371
+ function lt(e, t) {
1358
1372
  switch (e) {
1359
1373
  case "send-message": return [t.content];
1360
1374
  case "rename": return [t.newName];
@@ -1367,7 +1381,8 @@ function ut(e, t) {
1367
1381
  case "session-initialized":
1368
1382
  case "sdk-error":
1369
1383
  case "transfer-messages":
1370
- case "share-messages": return [t];
1384
+ case "share-messages":
1385
+ case "new-chat-created": return [t];
1371
1386
  case "panel-show":
1372
1387
  case "panel-hide":
1373
1388
  case "receive-start":
@@ -1384,7 +1399,7 @@ function ut(e, t) {
1384
1399
  }
1385
1400
  //#endregion
1386
1401
  //#region src/manager/ui/ui-state-manager.ts
1387
- var dt = class {
1402
+ var ut = class {
1388
1403
  _selectedMessageIds;
1389
1404
  _isSelectionMode;
1390
1405
  _editingSessionCode;
@@ -1460,7 +1475,7 @@ var dt = class {
1460
1475
  };
1461
1476
  //#endregion
1462
1477
  //#region src/components/composables/use-chatbot-init.ts
1463
- function ft(e) {
1478
+ function dt(e) {
1464
1479
  let { props: t, emit: n, scrollToBottom: r } = e, i = O(null), a = O(null), o = O(null), s = O(null), c = w(!1), l = w(!t.chatHelper), u = w(null), d = () => t.chatHelper ? !t.chatHelper.agent || !t.chatHelper.session || !t.chatHelper.message ? {
1465
1480
  valid: !1,
1466
1481
  error: "[ChatBot] Invalid chatHelper: missing required modules (agent, session, message)"
@@ -1484,9 +1499,9 @@ function ft(e) {
1484
1499
  onError: (e) => {
1485
1500
  n("error", e);
1486
1501
  }
1487
- }), a = ge({
1502
+ }), a = he({
1488
1503
  requestData: {
1489
- urlPrefix: Se(t.url),
1504
+ urlPrefix: xe(t.url),
1490
1505
  headers: t.requestOptions?.headers,
1491
1506
  data: t.requestOptions?.data
1492
1507
  },
@@ -1503,16 +1518,16 @@ function ft(e) {
1503
1518
  c.value = !1, u.value = null, l.value = !t.chatHelper, await p(r, d), i.value = null, a.value = null, o.value = null, s.value = null;
1504
1519
  let h = f();
1505
1520
  if (!h) return;
1506
- let g = new it(h.session, h.agent, null, {
1521
+ let g = new rt(h.session, h.agent, null, {
1507
1522
  enableChatSession: !0,
1508
1523
  autoSwitchToInitialSession: !!t.sessionCode,
1509
1524
  loadRecentSessionOnMount: t.autoLoad,
1510
1525
  initialSessionCode: t.sessionCode
1511
- }), _ = new rt(h.agent, h.message, h.session, null, {
1526
+ }), _ = new nt(h.agent, h.message, h.session, null, {
1512
1527
  openingRemark: t.helloText,
1513
1528
  predefinedQuestions: t.prompts,
1514
1529
  placeholder: t.placeholder
1515
- }), v = new ot(null, t.shortcuts || []);
1530
+ }), v = new at(null, t.shortcuts || []);
1516
1531
  i.value = h, a.value = g, o.value = _, s.value = v;
1517
1532
  try {
1518
1533
  if (l.value && (await Promise.all([h.agent.getAgentInfo(), h.session.getSessions()]), e !== m || (await g.loadRecentSession({ skipLoadSessions: !0 }), e !== m))) return;
@@ -1536,8 +1551,8 @@ function ft(e) {
1536
1551
  }
1537
1552
  //#endregion
1538
1553
  //#region src/components/composables/use-chatbot-state.ts
1539
- function pt(e) {
1540
- let { props: t, chatHelper: r, chatBusinessManager: i, sessionBusinessManager: a, shortcutManager: o, isStandaloneMode: s, isInitialized: c, selectedShortcut: l } = e, u = n(() => i.value?.isStopLoading.value ? U.StopLoading : ((t.chatHelper || r.value)?.agent)?.isChatting?.value ? U.Streaming : U.Complete), d = n(() => u.value === U.Streaming ? te.Disabled : void 0), f = n(() => i.value?.messages.value ?? []), p = n(() => i.value?.isMessagesLoading.value ?? !1);
1554
+ function ft(e) {
1555
+ let { props: t, chatHelper: r, chatBusinessManager: i, sessionBusinessManager: a, shortcutManager: o, isStandaloneMode: s, isInitialized: c, selectedShortcut: l } = e, u = n(() => i.value?.isStopLoading.value ? W.StopLoading : ((t.chatHelper || r.value)?.agent)?.isChatting?.value ? W.Streaming : W.Complete), d = n(() => u.value === W.Streaming ? ee.Disabled : void 0), f = n(() => i.value?.messages.value ?? []), p = n(() => i.value?.isMessagesLoading.value ?? !1);
1541
1556
  return {
1542
1557
  messageStatus: u,
1543
1558
  messageToolsStatus: d,
@@ -1559,7 +1574,7 @@ function pt(e) {
1559
1574
  }
1560
1575
  //#endregion
1561
1576
  //#region src/components/composables/use-message-sender.ts
1562
- function mt(e) {
1577
+ function pt(e) {
1563
1578
  let { emit: t, chatHelper: n, chatBusinessManager: r, selectedShortcut: i, selectedResources: a } = e, o = O([[]]), s = O(""), c = (e, t) => {
1564
1579
  o.value = e, a.value = t;
1565
1580
  }, l = async (e, i = {}) => {
@@ -1602,10 +1617,10 @@ function mt(e) {
1602
1617
  }
1603
1618
  //#endregion
1604
1619
  //#region src/components/composables/use-share-selection.ts
1605
- function ht(e) {
1620
+ function mt(e) {
1606
1621
  let { emit: t, chatHelper: n, isStandaloneMode: r } = e, i = async (e) => {
1607
1622
  if (!(!n.value || e.length === 0)) try {
1608
- await Ce((await new at(n.value.message, n.value.session).shareMessages(e)).shareUrl), oe({
1623
+ await Se((await new it(n.value.message, n.value.session).shareMessages(e)).shareUrl), oe({
1609
1624
  message: "分享链接已复制到剪贴板",
1610
1625
  theme: "success"
1611
1626
  });
@@ -1622,7 +1637,7 @@ function ht(e) {
1622
1637
  }
1623
1638
  //#endregion
1624
1639
  //#region src/components/composables/use-shortcuts.ts
1625
- function gt(e) {
1640
+ function ht(e) {
1626
1641
  let { props: t, emit: r, shortcutManager: i, doSendMessage: a, selectedShortcut: o } = e, s = n(() => i.value?.effectiveShortcuts.value ?? []), c = (e, t) => {
1627
1642
  let n = e, r;
1628
1643
  if (r = n.enable_fill_back && n.fill_back_component_key ? n.fill_back_component_key : n.components?.find((e) => e.fillBack)?.key, r && t) {
@@ -1716,14 +1731,14 @@ function gt(e) {
1716
1731
  }
1717
1732
  //#endregion
1718
1733
  //#region src/components/composables/use-tool-actions.ts
1719
- function _t(e) {
1734
+ function gt(e) {
1720
1735
  let { emit: t, chatHelper: n, chatBusinessManager: r, cite: i, focusInput: a, scrollToBottom: o, getShortcutFromMessage: s, buildShortcutProperty: c } = e, l = async (e) => {
1721
1736
  if (!r.value || !n.value) {
1722
1737
  console.error("[ChatBot] Cannot delete messages: chatBusinessManager not initialized");
1723
1738
  return;
1724
1739
  }
1725
1740
  try {
1726
- let t = r.value.messages.value, i = ve(t, e[0]);
1741
+ let t = r.value.messages.value, i = _e(t, e[0]);
1727
1742
  if (!i) {
1728
1743
  console.error("[ChatBot] No user message found before AI messages");
1729
1744
  return;
@@ -1762,7 +1777,7 @@ function _t(e) {
1762
1777
  let a = [];
1763
1778
  for (let e = i + 1; e < t.length; e++) {
1764
1779
  let n = t[e];
1765
- if (n.role === H.User) break;
1780
+ if (n.role === U.User) break;
1766
1781
  a.push(n);
1767
1782
  }
1768
1783
  let o = [e, ...a];
@@ -1774,7 +1789,7 @@ function _t(e) {
1774
1789
  return {
1775
1790
  handleAgentAction: async (e, t) => {
1776
1791
  if (e.id === "cite") {
1777
- i.value = t.filter((e) => e.role !== H.Reasoning).map((e) => typeof e.content == "string" ? e.content : JSON.stringify(e.content || "")).join("\n"), a();
1792
+ i.value = t.filter((e) => e.role !== U.Reasoning).map((e) => typeof e.content == "string" ? e.content : JSON.stringify(e.content || "")).join("\n"), a();
1778
1793
  return;
1779
1794
  }
1780
1795
  if (e.id === "rebuild") {
@@ -1805,7 +1820,7 @@ function _t(e) {
1805
1820
  console.error("[ChatBot] Cannot submit feedback: no active session");
1806
1821
  return;
1807
1822
  }
1808
- let c = ye(r.value?.messages.value || [], i[0]);
1823
+ let c = ve(r.value?.messages.value || [], i[0]);
1809
1824
  if (c === void 0) {
1810
1825
  console.error("[ChatBot] Cannot submit feedback: no user message found");
1811
1826
  return;
@@ -1893,7 +1908,7 @@ function _t(e) {
1893
1908
  }
1894
1909
  //#endregion
1895
1910
  //#region src/components/chat-bot.vue
1896
- var vt = /* @__PURE__ */ u({
1911
+ var _t = /* @__PURE__ */ u({
1897
1912
  __name: "chat-bot",
1898
1913
  props: {
1899
1914
  autoLoad: {
@@ -1905,7 +1920,7 @@ var vt = /* @__PURE__ */ u({
1905
1920
  type: Boolean,
1906
1921
  default: !1
1907
1922
  },
1908
- renderMode: { default: W.Chat },
1923
+ renderMode: { default: ne.Chat },
1909
1924
  extCls: {},
1910
1925
  height: {},
1911
1926
  helloText: {},
@@ -1943,30 +1958,30 @@ var vt = /* @__PURE__ */ u({
1943
1958
  ],
1944
1959
  setup(e, { expose: t, emit: r }) {
1945
1960
  let i = e, o = r, c = w(), u = w(), f = w(), m = O([]), y = w(null), b = n({
1946
- get: () => i.renderMode ?? W.Chat,
1961
+ get: () => i.renderMode ?? ne.Chat,
1947
1962
  set: () => {}
1948
1963
  }), x = async () => {
1949
1964
  await h(), c.value && (c.value.scrollTop = c.value.scrollHeight);
1950
1965
  }, C = () => {
1951
1966
  f.value?.focus?.();
1952
- }, { chatHelper: T, isStandaloneMode: E, isInitialized: k, initError: A, chatBusinessManager: M, sessionBusinessManager: N, shortcutManager: P } = ft({
1967
+ }, { chatHelper: T, isStandaloneMode: E, isInitialized: k, initError: A, chatBusinessManager: M, sessionBusinessManager: N, shortcutManager: P } = dt({
1953
1968
  props: i,
1954
1969
  emit: o,
1955
1970
  scrollToBottom: x
1956
- }), { userInput: F, cite: L, handleUpdateModelValue: R, doSendMessage: z, handleSendMessage: V, handleUpload: H, handleStopSending: U, stopGeneration: te } = mt({
1971
+ }), { userInput: F, cite: L, handleUpdateModelValue: R, doSendMessage: z, handleSendMessage: V, handleUpload: U, handleStopSending: W, stopGeneration: ee } = pt({
1957
1972
  emit: o,
1958
1973
  chatHelper: T,
1959
1974
  chatBusinessManager: M,
1960
1975
  selectedShortcut: y,
1961
1976
  selectedResources: m
1962
- }), { handleSelectShortcut: ne, handleCloseShortcut: re, handleShortcutSubmit: ie, selectShortcutWithText: ae, getShortcutFromMessage: oe, buildShortcutProperty: se, sendShortcutDirectly: ce } = gt({
1977
+ }), { handleSelectShortcut: te, handleCloseShortcut: re, handleShortcutSubmit: ie, selectShortcutWithText: ae, getShortcutFromMessage: oe, buildShortcutProperty: se, sendShortcutDirectly: ce } = ht({
1963
1978
  props: i,
1964
1979
  emit: o,
1965
1980
  chatHelper: T,
1966
1981
  shortcutManager: P,
1967
1982
  doSendMessage: z,
1968
1983
  selectedShortcut: y
1969
- }), { messageStatus: le, messageToolsStatus: ue, messages: de, isMessagesLoading: fe, isGenerating: G, currentSession: pe, isWelcomeState: K, openingRemark: me, effectiveResources: he, effectivePrompts: ge, effectiveSupportUpload: _e, chatbotStyle: ve, filteredShortcuts: ye } = pt({
1984
+ }), { messageStatus: le, messageToolsStatus: ue, messages: de, isMessagesLoading: fe, isGenerating: pe, currentSession: G, isWelcomeState: K, openingRemark: q, effectiveResources: me, effectivePrompts: he, effectiveSupportUpload: ge, chatbotStyle: _e, filteredShortcuts: ve } = ft({
1970
1985
  props: i,
1971
1986
  chatHelper: T,
1972
1987
  chatBusinessManager: M,
@@ -1975,7 +1990,7 @@ var vt = /* @__PURE__ */ u({
1975
1990
  isStandaloneMode: E,
1976
1991
  isInitialized: k,
1977
1992
  selectedShortcut: y
1978
- }), { handleAgentAction: be, handleAgentFeedback: xe, handleUserAction: Se, handleUserInputConfirm: Ce, handleUserShortcutConfirm: we, handleStopStreaming: Te } = _t({
1993
+ }), { handleAgentAction: ye, handleAgentFeedback: be, handleUserAction: xe, handleUserInputConfirm: Se, handleUserShortcutConfirm: Ce, handleStopStreaming: we } = gt({
1979
1994
  emit: o,
1980
1995
  chatHelper: T,
1981
1996
  chatBusinessManager: M,
@@ -1984,19 +1999,19 @@ var vt = /* @__PURE__ */ u({
1984
1999
  scrollToBottom: x,
1985
2000
  getShortcutFromMessage: oe,
1986
2001
  buildShortcutProperty: se
1987
- }), Ee = n(() => !k.value || fe.value), { handleConfirmShare: De } = ht({
2002
+ }), Te = n(() => !k.value || fe.value), { handleConfirmShare: Ee } = mt({
1988
2003
  emit: o,
1989
2004
  chatHelper: T,
1990
2005
  isStandaloneMode: E
1991
- }), Oe = (e) => {
2006
+ }), De = (e) => {
1992
2007
  o("execution-panel-change", e);
1993
- }, ke = async (e) => {
2008
+ }, Oe = async (e) => {
1994
2009
  let t = e.data?.props;
1995
2010
  if (t?.task_id != null && t?.node_id) return T.value?.message.getFlowAgentTaskNodeInfo(t.task_id, t.node_id);
1996
2011
  };
1997
2012
  return t({
1998
2013
  sendMessage: (e) => V(e, [[]]),
1999
- stopGeneration: te,
2014
+ stopGeneration: ee,
2000
2015
  switchSession: async (e) => {
2001
2016
  if (!N.value) {
2002
2017
  console.error("[ChatBot] Cannot switch session: sessionBusinessManager not initialized");
@@ -2009,8 +2024,8 @@ var vt = /* @__PURE__ */ u({
2009
2024
  }
2010
2025
  },
2011
2026
  messages: de,
2012
- currentSession: pe,
2013
- isGenerating: G,
2027
+ currentSession: G,
2028
+ isGenerating: pe,
2014
2029
  getChatHelper: () => T.value,
2015
2030
  setCiteText: (e) => {
2016
2031
  L.value = e;
@@ -2028,7 +2043,7 @@ var vt = /* @__PURE__ */ u({
2028
2043
  i.extCls,
2029
2044
  { "welcome-state": j(K) }
2030
2045
  ]),
2031
- style: v(j(ve))
2046
+ style: v(j(_e))
2032
2047
  }, [l(j(B), {
2033
2048
  ref_key: "chatContainerRef",
2034
2049
  ref: u,
@@ -2038,45 +2053,45 @@ var vt = /* @__PURE__ */ u({
2038
2053
  "onUpdate:selectedShortcut": n[1] ||= (e) => y.value = e,
2039
2054
  "render-mode": b.value,
2040
2055
  "onUpdate:renderMode": n[2] ||= (e) => b.value = e,
2041
- "chat-loading": Ee.value,
2056
+ "chat-loading": Te.value,
2042
2057
  "common-tippy-options": e.messageToolsTippyOptions,
2043
2058
  "message-status": j(le),
2044
2059
  "message-tools-status": j(ue),
2045
2060
  messages: j(de),
2046
2061
  "model-value": j(F),
2047
- "on-agent-action": j(be),
2048
- "on-agent-feedback": j(xe),
2049
- "on-custom-tab-change": ke,
2062
+ "on-agent-action": j(ye),
2063
+ "on-agent-feedback": j(be),
2064
+ "on-custom-tab-change": Oe,
2050
2065
  "on-send-message": j(V),
2051
- "on-stop-sending": j(U),
2052
- "on-upload": j(H),
2053
- "on-user-action": j(Se),
2054
- "on-user-input-confirm": j(Ce),
2055
- "on-user-shortcut-confirm": j(we),
2056
- "opening-remark": j(me),
2066
+ "on-stop-sending": j(W),
2067
+ "on-upload": j(U),
2068
+ "on-user-action": j(xe),
2069
+ "on-user-input-confirm": j(Se),
2070
+ "on-user-shortcut-confirm": j(Ce),
2071
+ "opening-remark": j(q),
2057
2072
  placeholder: i.placeholder,
2058
2073
  placement: i.placement,
2059
- prompts: j(ge),
2074
+ prompts: j(he),
2060
2075
  "resize-props": i.resizeProps,
2061
- resources: j(he),
2076
+ resources: j(me),
2062
2077
  "shortcut-id": y.value?.id,
2063
- shortcuts: j(ye),
2064
- "support-upload": j(_e),
2065
- onCollapseChange: Oe,
2066
- onConfirmShare: j(De),
2078
+ shortcuts: j(ve),
2079
+ "support-upload": j(ge),
2080
+ onCollapseChange: De,
2081
+ onConfirmShare: j(Ee),
2067
2082
  onDeleteShortcut: j(re),
2068
- onSelectShortcut: j(ne),
2083
+ onSelectShortcut: j(te),
2069
2084
  onShortcutClose: j(re),
2070
2085
  onShortcutSubmit: j(ie),
2071
- onStopStreaming: j(Te),
2086
+ onStopStreaming: j(we),
2072
2087
  "onUpdate:modelValue": j(R)
2073
2088
  }, {
2074
- message: I(({ message: n, messageToolsStatus: r }) => [l(j(ee), {
2089
+ message: I(({ message: n, messageToolsStatus: r }) => [l(j(H), {
2075
2090
  message: n,
2076
2091
  "message-tools-status": r,
2077
- "on-action": (e) => j(Se)(e, n),
2078
- "on-input-confirm": (e, t) => j(Ce)(n, e, t),
2079
- "on-shortcut-confirm": (e) => j(we)(n, e),
2092
+ "on-action": (e) => j(xe)(e, n),
2093
+ "on-input-confirm": (e, t) => j(Se)(n, e, t),
2094
+ "on-shortcut-confirm": (e) => j(Ce)(n, e),
2080
2095
  "tippy-options": e.messageToolsTippyOptions
2081
2096
  }, s({ _: 2 }, [t.$slots.codeHeader ? {
2082
2097
  name: "codeHeader",
@@ -2093,13 +2108,13 @@ var vt = /* @__PURE__ */ u({
2093
2108
  _: 3
2094
2109
  }, 8, /* @__PURE__ */ "cite.selected-shortcut.render-mode.chat-loading.common-tippy-options.message-status.message-tools-status.messages.model-value.on-agent-action.on-agent-feedback.on-send-message.on-stop-sending.on-upload.on-user-action.on-user-input-confirm.on-user-shortcut-confirm.opening-remark.placeholder.placement.prompts.resize-props.resources.shortcut-id.shortcuts.support-upload.onConfirmShare.onDeleteShortcut.onSelectShortcut.onShortcutClose.onShortcutSubmit.onStopStreaming.onUpdate:modelValue".split("."))], 6));
2095
2110
  }
2096
- }), Y = /* @__PURE__ */ function(e) {
2111
+ }), X = /* @__PURE__ */ function(e) {
2097
2112
  return e.ERROR = "error", e.IDLE = "idle", e.LOADING_AGENT = "loading_agent", e.READY = "ready", e;
2098
2113
  }({});
2099
- function yt(e) {
2114
+ function vt(e) {
2100
2115
  let { url: t, requestOptions: r, autoInit: i = !0, protocolCallbacks: a } = e, o = A(t);
2101
2116
  if (!o) throw Error("[useChatBootstrap] url is required");
2102
- let s = w(Y.IDLE), c = w(null), l = w(!1), u = /* @__PURE__ */ new Map(), d = new K({
2117
+ let s = w(X.IDLE), c = w(null), l = w(!1), u = /* @__PURE__ */ new Map(), d = new K({
2103
2118
  onStart: () => {
2104
2119
  a?.onStart?.();
2105
2120
  },
@@ -2112,7 +2127,7 @@ function yt(e) {
2112
2127
  onError: (e) => {
2113
2128
  a?.onError?.(e);
2114
2129
  }
2115
- }), f = ge({
2130
+ }), f = he({
2116
2131
  requestData: {
2117
2132
  urlPrefix: o,
2118
2133
  headers: r?.headers,
@@ -2121,19 +2136,19 @@ function yt(e) {
2121
2136
  protocol: d
2122
2137
  });
2123
2138
  d.injectMessageModule(f.message);
2124
- let p = n(() => s.value === Y.LOADING_AGENT), m = n(() => s.value === Y.READY), h = n(() => f.agent.info.value ?? null), g = n(() => h.value?.agentName ?? ""), _ = n(() => f.session.current.value ?? null), v = n(() => f.session.list.value ?? []), y = async () => {
2139
+ let p = n(() => s.value === X.LOADING_AGENT), m = n(() => s.value === X.READY), h = n(() => f.agent.info.value ?? null), g = n(() => h.value?.agentName ?? ""), _ = n(() => f.session.current.value ?? null), v = n(() => f.session.list.value ?? []), y = async () => {
2125
2140
  if (!l.value && !p.value) {
2126
2141
  c.value = null;
2127
2142
  try {
2128
- s.value = Y.LOADING_AGENT, await Promise.all([f.agent.getAgentInfo(), f.session.getSessions()]), s.value = Y.READY, l.value = !0;
2143
+ s.value = X.LOADING_AGENT, await Promise.all([f.agent.getAgentInfo(), f.session.getSessions()]), s.value = X.READY, l.value = !0;
2129
2144
  } catch (e) {
2130
- throw console.error("[useChatBootstrap] Initialization failed:", e), c.value = e, s.value = Y.ERROR, e;
2145
+ throw console.error("[useChatBootstrap] Initialization failed:", e), c.value = e, s.value = X.ERROR, e;
2131
2146
  }
2132
2147
  }
2133
2148
  }, b = async () => {
2134
- s.value = Y.IDLE, c.value = null, l.value = !1, await y();
2149
+ s.value = X.IDLE, c.value = null, l.value = !1, await y();
2135
2150
  }, x = async (e) => {
2136
- s.value = Y.IDLE, c.value = null, l.value = !1;
2151
+ s.value = X.IDLE, c.value = null, l.value = !1;
2137
2152
  let t = f.http;
2138
2153
  t?.updateConfig ? t.updateConfig({ urlPrefix: e }) : console.warn("[useChatBootstrap] chatHelper.http.updateConfig is not implemented yet, URL change may not take effect"), await y();
2139
2154
  };
@@ -2163,7 +2178,7 @@ function yt(e) {
2163
2178
  }
2164
2179
  //#endregion
2165
2180
  //#region src/composables/use-event-bridge.ts
2166
- function bt(e) {
2181
+ function yt(e) {
2167
2182
  return {
2168
2183
  sendMessage: (t) => e("send-message", { content: t }),
2169
2184
  receiveStart: () => e("receive-start", {}),
@@ -2171,6 +2186,7 @@ function bt(e) {
2171
2186
  receiveEnd: () => e("receive-end", {}),
2172
2187
  stop: () => e("stop", {}),
2173
2188
  newChat: () => e("new-chat", {}),
2189
+ newChatCreated: (t) => e("new-chat-created", { session: t }),
2174
2190
  historyClick: (t) => e("history-click", { event: t }),
2175
2191
  autoGenerateName: () => e("auto-generate-name", {}),
2176
2192
  helpClick: () => e("help-click", {}),
@@ -2180,12 +2196,12 @@ function bt(e) {
2180
2196
  shareMessages: (t) => e("share-messages", { messageIds: t })
2181
2197
  };
2182
2198
  }
2183
- function xt(e) {
2199
+ function bt(e) {
2184
2200
  let { componentManager: t, emit: n, debug: r = !1 } = e, i = [], a = () => {
2185
- for (let [e, a] of Object.entries(lt)) {
2201
+ for (let [e, a] of Object.entries(ct)) {
2186
2202
  if (a === null) continue;
2187
2203
  let o = t.on(e, (t) => {
2188
- let i = ut(e, t);
2204
+ let i = lt(e, t);
2189
2205
  r && console.debug(`[useEventBridge] ${e} -> ${a}`, i), n(a, ...i);
2190
2206
  });
2191
2207
  i.push(o);
@@ -2207,17 +2223,17 @@ function xt(e) {
2207
2223
  }
2208
2224
  //#endregion
2209
2225
  //#region src/composables/use-ai-blueking-init.ts
2210
- function St(e) {
2211
- let { props: t, emit: r } = e, i = w(), a = w(), o = n(() => Se(t.url ?? "")), s = ct({
2226
+ function xt(e) {
2227
+ let { props: t, emit: r } = e, i = w(), a = w(), o = n(() => xe(t.url ?? "")), s = st({
2212
2228
  initialPanelVisible: !1,
2213
2229
  initialNimbusMinimized: t.defaultMinimize,
2214
2230
  enablePopup: t.enablePopup,
2215
2231
  enableNimbus: !t.hideNimbus,
2216
2232
  enableDraggable: t.draggable
2217
- }), c = s.panelVisible, l = s.nimbusMinimized, { forwardToManager: u } = xt({
2233
+ }), c = s.panelVisible, l = s.nimbusMinimized, { forwardToManager: u } = bt({
2218
2234
  componentManager: s,
2219
2235
  emit: r
2220
- }), d = bt(u), f = (e, t) => {
2236
+ }), d = yt(u), f = (e, t) => {
2221
2237
  let n = t instanceof Error ? t.message : String(t);
2222
2238
  console.error(`[AIBlueking] ${e} error:`, t), s.emitInternal("sdk-error", {
2223
2239
  apiName: e,
@@ -2227,7 +2243,7 @@ function St(e) {
2227
2243
  });
2228
2244
  }, p = (e) => {
2229
2245
  f("chat", e);
2230
- }, { chatHelper: m, isReady: h, error: g, agentInfo: _, agentName: v, currentSession: x } = yt({
2246
+ }, { chatHelper: m, isReady: h, error: g, agentInfo: _, agentName: v, currentSession: x } = vt({
2231
2247
  url: o,
2232
2248
  requestOptions: t.requestOptions,
2233
2249
  autoInit: !0,
@@ -2245,10 +2261,10 @@ function St(e) {
2245
2261
  f("chat", e);
2246
2262
  }
2247
2263
  }
2248
- }), S = m, C = new it(S.session, S.agent, null, {
2264
+ }), S = m, C = new rt(S.session, S.agent, null, {
2249
2265
  enableChatSession: t.enableChatSession,
2250
2266
  initialSessionCode: t.initialSessionCode
2251
- }), T = new at(S.message, S.session), E = new ot(null, t.shortcuts || []), D = { appendTo: (e) => {
2267
+ }), T = new it(S.message, S.session), E = new at(null, t.shortcuts || []), D = { appendTo: (e) => {
2252
2268
  let t = e.closest(".draggable-container-content");
2253
2269
  return console.log("[ai-blueking] appendTo called, ref:", e), console.log("[ai-blueking] appendTo closest result:", t), t ?? document.body;
2254
2270
  } }, O = n(() => s.isCompressed.value), k = n(() => v.value), A = n(() => S.message.list.value.length === 0), j = n(() => t.resources?.length ? t.resources : _.value?.resources ?? []), M = n(() => t.prompts?.length ? t.prompts : _.value?.conversationSettings?.predefinedQuestions ?? []);
@@ -2273,7 +2289,7 @@ function St(e) {
2273
2289
  E.setShortcuts(e || []);
2274
2290
  }, { immediate: !0 });
2275
2291
  let N = (e) => {
2276
- De(e) && (e.preventDefault(), c.value ? s.hidePanel() : s.showPanel());
2292
+ Ee(e) && (e.preventDefault(), c.value ? s.hidePanel() : s.showPanel());
2277
2293
  };
2278
2294
  return b(async () => {
2279
2295
  i.value && s.setContainerRef(i.value), window.addEventListener("keydown", N);
@@ -2305,7 +2321,7 @@ function St(e) {
2305
2321
  }
2306
2322
  //#endregion
2307
2323
  //#region src/composables/use-ai-selection.ts
2308
- function Ct(e) {
2324
+ function St(e) {
2309
2325
  let { shortcutManager: t, chatBotRef: r, forwardToManager: i, show: a, props: o } = e, s = w(!1), c = w("");
2310
2326
  return {
2311
2327
  aiSelectionVisible: s,
@@ -2327,7 +2343,7 @@ function Ct(e) {
2327
2343
  }
2328
2344
  //#endregion
2329
2345
  //#region src/composables/use-nimbus.ts
2330
- function wt(e, t = !1) {
2346
+ function Ct(e, t = !1) {
2331
2347
  let n = window.innerHeight - 48 - 40, r = window.innerWidth - 48 - 16, i = w(r), a = w(n), o = w(0), s = w(t), c = w(!1), l = w(!1), u = 0, d = (e) => {
2332
2348
  e ? i.value = window.innerWidth - 12 : i.value = r;
2333
2349
  }, f = (e, t) => {
@@ -2380,8 +2396,8 @@ function wt(e, t = !1) {
2380
2396
  }
2381
2397
  //#endregion
2382
2398
  //#region src/composables/use-panel-container.ts
2383
- var Tt = 420;
2384
- function Et(e) {
2399
+ var wt = 420;
2400
+ function Tt(e) {
2385
2401
  let { componentManager: t, chatBotRef: n, forwarders: r, forwardToManager: i, beforeNimbusClick: a } = e, o = async (e) => {
2386
2402
  t.showPanel(e), e && n.value && await n.value.switchSession(e);
2387
2403
  }, s = async (e) => {
@@ -2422,7 +2438,7 @@ function Et(e) {
2422
2438
  t.setCompressed(e);
2423
2439
  },
2424
2440
  handleExecutionPanelChange: (e) => {
2425
- e ? t.collapseSidePanel() : t.expandForSidePanel(Tt);
2441
+ e ? t.collapseSidePanel() : t.expandForSidePanel(wt);
2426
2442
  },
2427
2443
  sendMessage: async (e) => {
2428
2444
  n.value && await n.value.sendMessage(e);
@@ -2469,7 +2485,7 @@ function Et(e) {
2469
2485
  }
2470
2486
  //#endregion
2471
2487
  //#region src/composables/use-session-handlers.ts
2472
- function Dt(e) {
2488
+ function Et(e) {
2473
2489
  let { chatHelper: t, sessionBusinessManager: n, chatBotRef: r, forwarders: i, handleError: a, currentSession: o } = e, s = w(""), c = w(!0), l = w(!1), u = w(!1), d = () => t.message.list.value.some((e) => {
2474
2490
  if (!("property" in e)) return !0;
2475
2491
  let { property: t } = e;
@@ -2487,6 +2503,9 @@ function Dt(e) {
2487
2503
  handleNewChat: async () => {
2488
2504
  r.value?.exitShareMode(), i.newChat();
2489
2505
  },
2506
+ handleNewChatCreated: (e) => {
2507
+ i.newChatCreated(e);
2508
+ },
2490
2509
  handleHistoryClick: (e) => {
2491
2510
  i.historyClick(e);
2492
2511
  },
@@ -2556,7 +2575,7 @@ function Dt(e) {
2556
2575
  }
2557
2576
  //#endregion
2558
2577
  //#region src/composables/use-share-handlers.ts
2559
- function Ot(e) {
2578
+ function Dt(e) {
2560
2579
  let { shareBusinessManager: t, chatBotRef: n, forwarders: r, handleError: i } = e, a = w(!1);
2561
2580
  return {
2562
2581
  isShareLoading: a,
@@ -2570,8 +2589,8 @@ function Ot(e) {
2570
2589
  a.value = !0;
2571
2590
  try {
2572
2591
  let { shareUrl: i, userMessageIds: a } = await t.shareMessages(e);
2573
- await Ce(i), oe({
2574
- message: q("分享链接已复制到剪贴板"),
2592
+ await Se(i), oe({
2593
+ message: J("分享链接已复制到剪贴板"),
2575
2594
  theme: "success"
2576
2595
  }), n.value?.exitShareMode(), r.shareMessages(a);
2577
2596
  } catch (e) {
@@ -2584,7 +2603,7 @@ function Ot(e) {
2584
2603
  }
2585
2604
  //#endregion
2586
2605
  //#region src/composables/use-tippy.ts
2587
- function kt(e = {}) {
2606
+ function Ot(e = {}) {
2588
2607
  let t = w([]), n = (n, r, i = {}) => {
2589
2608
  try {
2590
2609
  let a = typeof n == "string" ? document.querySelector(n) : n;
@@ -2637,7 +2656,7 @@ function kt(e = {}) {
2637
2656
  }
2638
2657
  //#endregion
2639
2658
  //#region src/config/prop-defaults.ts
2640
- var At = {
2659
+ var kt = {
2641
2660
  url: "",
2642
2661
  title: "",
2643
2662
  extCls: "",
@@ -2646,7 +2665,7 @@ var At = {
2646
2665
  enablePopup: !0,
2647
2666
  draggable: !0,
2648
2667
  enableChatSession: !0,
2649
- renderMode: W.Chat,
2668
+ renderMode: ne.Chat,
2650
2669
  defaultWidth: 400,
2651
2670
  defaultHeight: void 0,
2652
2671
  defaultTop: 0,
@@ -2662,7 +2681,7 @@ var At = {
2662
2681
  requestOptions: () => ({}),
2663
2682
  teleportTo: "body",
2664
2683
  placeholder: void 0,
2665
- helloText: q("你好,我是小鲸"),
2684
+ helloText: J("你好,我是小鲸"),
2666
2685
  disabledInput: !1,
2667
2686
  showHistoryIcon: !0,
2668
2687
  showNewChatIcon: !0,
@@ -2678,7 +2697,7 @@ var At = {
2678
2697
  showShare: !0
2679
2698
  }),
2680
2699
  defaultChatInputPosition: void 0
2681
- }, jt = class extends K {
2700
+ }, At = class extends K {
2682
2701
  eventEmitter;
2683
2702
  constructor(e = {}) {
2684
2703
  super({
@@ -2707,7 +2726,7 @@ var At = {
2707
2726
  super.handleToolCallStartEvent(e), this.eventEmitter?.emit("tool-call-start", { event: e });
2708
2727
  }
2709
2728
  };
2710
- function Mt(e = {}) {
2729
+ function jt(e = {}) {
2711
2730
  let { eventEmitter: t, onStart: n, onMessage: r, onDone: i, onError: a, onTextChunk: o } = e;
2712
2731
  return new K({
2713
2732
  onStart: () => {
@@ -2726,31 +2745,31 @@ function Mt(e = {}) {
2726
2745
  }
2727
2746
  //#endregion
2728
2747
  //#region ../../node_modules/.pnpm/vue-draggable-resizable@3.0.0_vue@3.5.32_typescript@5.9.3_/node_modules/vue-draggable-resizable/dist/vue-draggable-resizable.js
2729
- function Nt(e) {
2748
+ function Mt(e) {
2730
2749
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Function]";
2731
2750
  }
2732
- function Pt(e, t, n, r = 1) {
2751
+ function Nt(e, t, n, r = 1) {
2733
2752
  let [i, a] = typeof r == "number" ? [r, r] : r;
2734
2753
  return [Math.round(t / i / e[0]) * e[0], Math.round(n / a / e[1]) * e[1]];
2735
2754
  }
2736
- function Ft(e, t, n) {
2755
+ function Pt(e, t, n) {
2737
2756
  return e - t - n;
2738
2757
  }
2739
- function It(e, t, n) {
2758
+ function Ft(e, t, n) {
2740
2759
  return e - t - n;
2741
2760
  }
2742
- function X(e, t, n) {
2761
+ function Z(e, t, n) {
2743
2762
  return t !== null && e < t ? t : n !== null && n < e ? n : e;
2744
2763
  }
2745
- function Lt(e, t, n) {
2764
+ function It(e, t, n) {
2746
2765
  let r = e, i = [
2747
2766
  "matches",
2748
2767
  "webkitMatchesSelector",
2749
2768
  "mozMatchesSelector",
2750
2769
  "msMatchesSelector",
2751
2770
  "oMatchesSelector"
2752
- ].find((e) => Nt(r[e]));
2753
- if (!Nt(r[i])) return !1;
2771
+ ].find((e) => Mt(r[e]));
2772
+ if (!Mt(r[i])) return !1;
2754
2773
  do {
2755
2774
  if (r[i](t)) return !0;
2756
2775
  if (r === n) return !1;
@@ -2758,11 +2777,11 @@ function Lt(e, t, n) {
2758
2777
  } while (r);
2759
2778
  return !1;
2760
2779
  }
2761
- function Rt(e) {
2780
+ function Lt(e) {
2762
2781
  let t = window.getComputedStyle(e);
2763
2782
  return [parseFloat(t.getPropertyValue("width"), 10), parseFloat(t.getPropertyValue("height"), 10)];
2764
2783
  }
2765
- function Z(e, t, n) {
2784
+ function Rt(e, t, n) {
2766
2785
  e && (e.attachEvent ? e.attachEvent("on" + t, n) : e.addEventListener ? e.addEventListener(t, n, !0) : e["on" + t] = n);
2767
2786
  }
2768
2787
  function Q(e, t, n) {
@@ -2998,8 +3017,8 @@ var zt = (e, t) => {
2998
3017
  this.enableNativeDrag || (this.$el.ondragstart = () => !1);
2999
3018
  let [e, t] = this.getParentSize();
3000
3019
  this.parentWidth = e, this.parentHeight = t;
3001
- let [n, r] = Rt(this.$el);
3002
- this.aspectFactor = (this.w === "auto" ? n : this.w) / (this.h === "auto" ? r : this.h), this.width = this.w === "auto" ? n : this.w, this.height = this.h === "auto" ? r : this.h, this.right = this.parentWidth - this.width - this.left, this.bottom = this.parentHeight - this.height - this.top, this.active && this.$emit("activated"), Z(document.documentElement, "mousedown", this.deselect), Z(document.documentElement, "touchend touchcancel", this.deselect), Z(window, "resize", this.checkParentSize);
3020
+ let [n, r] = Lt(this.$el);
3021
+ this.aspectFactor = (this.w === "auto" ? n : this.w) / (this.h === "auto" ? r : this.h), this.width = this.w === "auto" ? n : this.w, this.height = this.h === "auto" ? r : this.h, this.right = this.parentWidth - this.width - this.left, this.bottom = this.parentHeight - this.height - this.top, this.active && this.$emit("activated"), Rt(document.documentElement, "mousedown", this.deselect), Rt(document.documentElement, "touchend touchcancel", this.deselect), Rt(window, "resize", this.checkParentSize);
3003
3022
  },
3004
3023
  beforeUnmount: function() {
3005
3024
  Q(document.documentElement, "mousedown", this.deselect), Q(document.documentElement, "touchstart", this.handleUp), Q(document.documentElement, "mousemove", this.move), Q(document.documentElement, "touchmove", this.move), Q(document.documentElement, "mouseup", this.handleUp), Q(document.documentElement, "touchend touchcancel", this.deselect), Q(window, "resize", this.checkParentSize);
@@ -3048,11 +3067,11 @@ var zt = (e, t) => {
3048
3067
  let t = e.target || e.srcElement;
3049
3068
  if (this.$el.contains(t)) {
3050
3069
  if (this.onDragStart(e) === !1) return;
3051
- if (this.dragHandle && !Lt(t, this.dragHandle, this.$el) || this.dragCancel && Lt(t, this.dragCancel, this.$el)) {
3070
+ if (this.dragHandle && !It(t, this.dragHandle, this.$el) || this.dragCancel && It(t, this.dragCancel, this.$el)) {
3052
3071
  this.dragging = !1;
3053
3072
  return;
3054
3073
  }
3055
- this.enabled || (this.enabled = !0, this.$emit("activated"), this.$emit("update:active", !0)), this.draggable && (this.dragEnable = !0), this.mouseClickPosition.mouseX = e.touches ? e.touches[0].pageX : e.pageX, this.mouseClickPosition.mouseY = e.touches ? e.touches[0].pageY : e.pageY, this.mouseClickPosition.left = this.left, this.mouseClickPosition.right = this.right, this.mouseClickPosition.top = this.top, this.mouseClickPosition.bottom = this.bottom, this.parent && (this.bounds = this.calcDragLimits()), Z(document.documentElement, $.move, this.move), Z(document.documentElement, $.stop, this.handleUp);
3074
+ this.enabled || (this.enabled = !0, this.$emit("activated"), this.$emit("update:active", !0)), this.draggable && (this.dragEnable = !0), this.mouseClickPosition.mouseX = e.touches ? e.touches[0].pageX : e.pageX, this.mouseClickPosition.mouseY = e.touches ? e.touches[0].pageY : e.pageY, this.mouseClickPosition.left = this.left, this.mouseClickPosition.right = this.right, this.mouseClickPosition.top = this.top, this.mouseClickPosition.bottom = this.bottom, this.parent && (this.bounds = this.calcDragLimits()), Rt(document.documentElement, $.move, this.move), Rt(document.documentElement, $.stop, this.handleUp);
3056
3075
  }
3057
3076
  },
3058
3077
  calcDragLimits() {
@@ -3075,7 +3094,7 @@ var zt = (e, t) => {
3075
3094
  $ = Bt.touch, this.handleDown(e, t);
3076
3095
  },
3077
3096
  handleDown(e, t) {
3078
- t instanceof MouseEvent && t.which !== 1 || this.onResizeStart(e, t) !== !1 && (t.stopPropagation && t.stopPropagation(), this.lockAspectRatio && !e.includes("m") ? this.handle = "m" + e.substring(1) : this.handle = e, this.resizeEnable = !0, this.mouseClickPosition.mouseX = t.touches ? t.touches[0].pageX : t.pageX, this.mouseClickPosition.mouseY = t.touches ? t.touches[0].pageY : t.pageY, this.mouseClickPosition.left = this.left, this.mouseClickPosition.right = this.right, this.mouseClickPosition.top = this.top, this.mouseClickPosition.bottom = this.bottom, this.bounds = this.calcResizeLimits(), Z(document.documentElement, $.move, this.handleResize), Z(document.documentElement, $.stop, this.handleUp));
3097
+ t instanceof MouseEvent && t.which !== 1 || this.onResizeStart(e, t) !== !1 && (t.stopPropagation && t.stopPropagation(), this.lockAspectRatio && !e.includes("m") ? this.handle = "m" + e.substring(1) : this.handle = e, this.resizeEnable = !0, this.mouseClickPosition.mouseX = t.touches ? t.touches[0].pageX : t.pageX, this.mouseClickPosition.mouseY = t.touches ? t.touches[0].pageY : t.pageY, this.mouseClickPosition.left = this.left, this.mouseClickPosition.right = this.right, this.mouseClickPosition.top = this.top, this.mouseClickPosition.bottom = this.bottom, this.bounds = this.calcResizeLimits(), Rt(document.documentElement, $.move, this.handleResize), Rt(document.documentElement, $.stop, this.handleUp));
3079
3098
  },
3080
3099
  calcResizeLimits() {
3081
3100
  let e = this.minW, t = this.minH, n = this.maxW, r = this.maxH, i = this.aspectFactor, [a, o] = this.grid, s = this.width, c = this.height, l = this.left, u = this.top, d = this.right, f = this.bottom;
@@ -3096,37 +3115,37 @@ var zt = (e, t) => {
3096
3115
  this.resizing ? this.handleResize(e) : this.dragEnable && this.handleDrag(e);
3097
3116
  },
3098
3117
  handleDrag(e) {
3099
- let t = this.axis, n = this.grid, r = this.bounds, i = this.mouseClickPosition, [a, o] = Pt(n, t && t !== "y" ? i.mouseX - (e.touches ? e.touches[0].pageX : e.pageX) : 0, t && t !== "x" ? i.mouseY - (e.touches ? e.touches[0].pageY : e.pageY) : 0, this.scale), s = X(i.left - a, r.minLeft, r.maxLeft), c = X(i.top - o, r.minTop, r.maxTop);
3118
+ let t = this.axis, n = this.grid, r = this.bounds, i = this.mouseClickPosition, [a, o] = Nt(n, t && t !== "y" ? i.mouseX - (e.touches ? e.touches[0].pageX : e.pageX) : 0, t && t !== "x" ? i.mouseY - (e.touches ? e.touches[0].pageY : e.pageY) : 0, this.scale), s = Z(i.left - a, r.minLeft, r.maxLeft), c = Z(i.top - o, r.minTop, r.maxTop);
3100
3119
  if (this.onDrag(s, c) === !1) return;
3101
- let l = X(i.right + a, r.minRight, r.maxRight), u = X(i.bottom + o, r.minBottom, r.maxBottom);
3120
+ let l = Z(i.right + a, r.minRight, r.maxRight), u = Z(i.bottom + o, r.minBottom, r.maxBottom);
3102
3121
  this.left = s, this.top = c, this.right = l, this.bottom = u, this.$emit("dragging", this.left, this.top), this.dragging = !0;
3103
3122
  },
3104
3123
  moveHorizontally(e) {
3105
- let [t, n] = Pt(this.grid, e, this.top, 1), r = X(t, this.bounds.minLeft, this.bounds.maxLeft);
3124
+ let [t, n] = Nt(this.grid, e, this.top, 1), r = Z(t, this.bounds.minLeft, this.bounds.maxLeft);
3106
3125
  this.left = r, this.right = this.parentWidth - this.width - r;
3107
3126
  },
3108
3127
  moveVertically(e) {
3109
- let [t, n] = Pt(this.grid, this.left, e, 1), r = X(n, this.bounds.minTop, this.bounds.maxTop);
3128
+ let [t, n] = Nt(this.grid, this.left, e, 1), r = Z(n, this.bounds.minTop, this.bounds.maxTop);
3110
3129
  this.top = r, this.bottom = this.parentHeight - this.height - r;
3111
3130
  },
3112
3131
  handleResize(e) {
3113
3132
  let t = this.left, n = this.top, r = this.right, i = this.bottom, a = this.mouseClickPosition, o = this.aspectFactor, s = a.mouseX - (e.touches ? e.touches[0].pageX : e.pageX), c = a.mouseY - (e.touches ? e.touches[0].pageY : e.pageY);
3114
3133
  !this.widthTouched && s && (this.widthTouched = !0), !this.heightTouched && c && (this.heightTouched = !0);
3115
- let [l, u] = Pt(this.grid, s, c, this.scale);
3116
- this.handle.includes("b") ? (i = X(a.bottom + u, this.bounds.minBottom, this.bounds.maxBottom), this.lockAspectRatio && this.resizingOnY && (r = this.right - (this.bottom - i) * o)) : this.handle.includes("t") && (n = X(a.top - u, this.bounds.minTop, this.bounds.maxTop), this.lockAspectRatio && this.resizingOnY && (t = this.left - (this.top - n) * o)), this.handle.includes("r") ? (r = X(a.right + l, this.bounds.minRight, this.bounds.maxRight), this.lockAspectRatio && this.resizingOnX && (i = this.bottom - (this.right - r) / o)) : this.handle.includes("l") && (t = X(a.left - l, this.bounds.minLeft, this.bounds.maxLeft), this.lockAspectRatio && this.resizingOnX && (n = this.top - (this.left - t) / o));
3117
- let d = Ft(this.parentWidth, t, r), f = It(this.parentHeight, n, i);
3134
+ let [l, u] = Nt(this.grid, s, c, this.scale);
3135
+ this.handle.includes("b") ? (i = Z(a.bottom + u, this.bounds.minBottom, this.bounds.maxBottom), this.lockAspectRatio && this.resizingOnY && (r = this.right - (this.bottom - i) * o)) : this.handle.includes("t") && (n = Z(a.top - u, this.bounds.minTop, this.bounds.maxTop), this.lockAspectRatio && this.resizingOnY && (t = this.left - (this.top - n) * o)), this.handle.includes("r") ? (r = Z(a.right + l, this.bounds.minRight, this.bounds.maxRight), this.lockAspectRatio && this.resizingOnX && (i = this.bottom - (this.right - r) / o)) : this.handle.includes("l") && (t = Z(a.left - l, this.bounds.minLeft, this.bounds.maxLeft), this.lockAspectRatio && this.resizingOnX && (n = this.top - (this.left - t) / o));
3136
+ let d = Pt(this.parentWidth, t, r), f = Ft(this.parentHeight, n, i);
3118
3137
  this.onResize(this.handle, t, n, d, f) !== !1 && (this.left = t, this.top = n, this.right = r, this.bottom = i, this.width = d, this.height = f, this.$emit("resizing", this.left, this.top, this.width, this.height), this.resizing = !0);
3119
3138
  },
3120
3139
  changeWidth(e) {
3121
- let [t, n] = Pt(this.grid, e, 0, 1), r = X(this.parentWidth - t - this.left, this.bounds.minRight, this.bounds.maxRight), i = this.bottom;
3140
+ let [t, n] = Nt(this.grid, e, 0, 1), r = Z(this.parentWidth - t - this.left, this.bounds.minRight, this.bounds.maxRight), i = this.bottom;
3122
3141
  this.lockAspectRatio && (i = this.bottom - (this.right - r) / this.aspectFactor);
3123
- let a = Ft(this.parentWidth, this.left, r), o = It(this.parentHeight, this.top, i);
3142
+ let a = Pt(this.parentWidth, this.left, r), o = Ft(this.parentHeight, this.top, i);
3124
3143
  this.right = r, this.bottom = i, this.width = a, this.height = o;
3125
3144
  },
3126
3145
  changeHeight(e) {
3127
- let [t, n] = Pt(this.grid, 0, e, 1), r = X(this.parentHeight - n - this.top, this.bounds.minBottom, this.bounds.maxBottom), i = this.right;
3146
+ let [t, n] = Nt(this.grid, 0, e, 1), r = Z(this.parentHeight - n - this.top, this.bounds.minBottom, this.bounds.maxBottom), i = this.right;
3128
3147
  this.lockAspectRatio && (i = this.right - (this.bottom - r) * this.aspectFactor);
3129
- let a = Ft(this.parentWidth, this.left, i), o = It(this.parentHeight, this.top, r);
3148
+ let a = Pt(this.parentWidth, this.left, i), o = Ft(this.parentHeight, this.top, r);
3130
3149
  this.right = i, this.bottom = r, this.width = a, this.height = o;
3131
3150
  },
3132
3151
  handleUp(e) {
@@ -3324,7 +3343,7 @@ function Xt(e = {}, t) {
3324
3343
  }
3325
3344
  //#endregion
3326
3345
  //#region src/containers/draggable-container.vue?vue&type=script&setup=true&lang.ts
3327
- var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__PURE__ */ u({
3346
+ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ Y(/* @__PURE__ */ u({
3328
3347
  __name: "draggable-container",
3329
3348
  props: {
3330
3349
  className: { default: "" },
@@ -3389,13 +3408,13 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3389
3408
  document.querySelectorAll("iframe").forEach((e) => {
3390
3409
  e.style.pointerEvents = "";
3391
3410
  });
3392
- }, ee = (e, t) => {
3411
+ }, H = (e, t) => {
3393
3412
  c.value || (c.value = !0, B()), b(e, t);
3394
- }, H = (e, t, n, r) => {
3413
+ }, U = (e, t, n, r) => {
3395
3414
  c.value || (c.value = !0, B()), x(e, t, n, r);
3396
- }, U = (e, t) => {
3415
+ }, W = (e, t) => {
3397
3416
  C(e, t), c.value = !1, V();
3398
- }, te = (e, t, n, r) => {
3417
+ }, ee = (e, t, n, r) => {
3399
3418
  T(e, t, n, r), c.value = !1, V();
3400
3419
  };
3401
3420
  return F(_, (e) => {
@@ -3428,10 +3447,10 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3428
3447
  w: j(m),
3429
3448
  x: j(p),
3430
3449
  y: j(f),
3431
- onDragStop: U,
3432
- onDragging: ee,
3433
- onResizeStop: te,
3434
- onResizing: H
3450
+ onDragStop: W,
3451
+ onDragging: H,
3452
+ onResizeStop: ee,
3453
+ onResizing: U
3435
3454
  }, {
3436
3455
  default: I(() => [o("div", Zt, [D(e.$slots, "default", {}, void 0, !0)])]),
3437
3456
  _: 3
@@ -3455,7 +3474,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3455
3474
  "width",
3456
3475
  "height",
3457
3476
  "src"
3458
- ], tn = /* @__PURE__ */ J(/* @__PURE__ */ u({
3477
+ ], tn = /* @__PURE__ */ Y(/* @__PURE__ */ u({
3459
3478
  name: "NimbusButton",
3460
3479
  __name: "nimbus",
3461
3480
  props: {
@@ -3507,11 +3526,11 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3507
3526
  right: -6
3508
3527
  }
3509
3528
  }
3510
- }, c = n(() => s[i.size]), l = w(null), u = w(null), { nimbusLeft: d, nimbusTop: f, isMinimize: p, handleClick: m, handleMinimize: _, handleDragging: v, handleMouseEnter: x, handleMouseLeave: C, handleMouseDown: T, handleMouseUp: E } = wt(a, i.isMinimize);
3529
+ }, c = n(() => s[i.size]), l = w(null), u = w(null), { nimbusLeft: d, nimbusTop: f, isMinimize: p, handleClick: m, handleMinimize: _, handleDragging: v, handleMouseEnter: x, handleMouseLeave: C, handleMouseDown: T, handleMouseUp: E } = Ct(a, i.isMinimize);
3511
3530
  F(p, (e) => {
3512
3531
  a("update:isMinimize", e);
3513
3532
  });
3514
- let D = n(() => p.value ? q("恢复默认大小") : q("最小化,将缩成锚点")), { createTooltip: O, destroyAll: k } = kt({
3533
+ let D = n(() => p.value ? J("恢复默认大小") : J("最小化,将缩成锚点")), { createTooltip: O, destroyAll: k } = Ot({
3515
3534
  theme: "ai-blueking",
3516
3535
  delay: [0, 0]
3517
3536
  }), A = () => {
@@ -3519,7 +3538,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3519
3538
  N();
3520
3539
  });
3521
3540
  }, N = () => {
3522
- k(), l.value && !p.value && O(l.value, Te(), { placement: "left" }), u.value && O(u.value, D.value, { placement: "top" });
3541
+ k(), l.value && !p.value && O(l.value, we(), { placement: "left" }), u.value && O(u.value, D.value, { placement: "top" });
3523
3542
  };
3524
3543
  return F(() => p.value, () => {
3525
3544
  h(() => {
@@ -3556,7 +3575,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3556
3575
  }, [o("div", $t, [o("img", {
3557
3576
  width: c.value.img,
3558
3577
  height: c.value.img,
3559
- src: j(_e),
3578
+ src: j(ge),
3560
3579
  alt: "nimbus"
3561
3580
  }, null, 8, en)]), o("i", {
3562
3581
  ref_key: "minimizeButtonRef",
@@ -3574,7 +3593,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3574
3593
  "onDragging"
3575
3594
  ]));
3576
3595
  }
3577
- }), [["__scopeId", "data-v-26b6f3ea"]]), nn = /* @__PURE__ */ J(/* @__PURE__ */ u({
3596
+ }), [["__scopeId", "data-v-26b6f3ea"]]), nn = /* @__PURE__ */ Y(/* @__PURE__ */ u({
3578
3597
  __name: "ai-blueking",
3579
3598
  props: /* @__PURE__ */ m({
3580
3599
  autoSwitchToInitialSession: { type: Boolean },
@@ -3616,7 +3635,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3616
3635
  renderMode: {},
3617
3636
  shortcutFilter: { type: Function },
3618
3637
  resizeProps: {}
3619
- }, At),
3638
+ }, kt),
3620
3639
  emits: [
3621
3640
  "show",
3622
3641
  "close",
@@ -3635,6 +3654,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3635
3654
  "transfer-messages",
3636
3655
  "share-messages",
3637
3656
  "new-chat",
3657
+ "new-chat-created",
3638
3658
  "history-click",
3639
3659
  "auto-generate-name",
3640
3660
  "help-click",
@@ -3642,54 +3662,54 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3642
3662
  "share"
3643
3663
  ],
3644
3664
  setup(e, { expose: n, emit: a }) {
3645
- let c = e, { chatHelper: u, componentManager: f, sessionBusinessManager: m, shareBusinessManager: h, shortcutManager: y, forwarders: b, forwardToManager: x, chatBotRef: C, draggableContainerRef: w, panelVisible: T, nimbusMinimized: E, normalizedUrl: O, agentName: k, currentSession: A, isCompressed: M, isWelcomeState: N, messageToolsTippyOptions: P, agentResources: F, agentPrompts: L, handleError: R } = St({
3665
+ let c = e, { chatHelper: u, componentManager: f, sessionBusinessManager: m, shareBusinessManager: h, shortcutManager: y, forwarders: b, forwardToManager: x, chatBotRef: C, draggableContainerRef: w, panelVisible: T, nimbusMinimized: E, normalizedUrl: O, agentName: k, currentSession: A, isCompressed: M, isWelcomeState: N, messageToolsTippyOptions: P, agentResources: F, agentPrompts: L, handleError: R } = xt({
3646
3666
  props: c,
3647
3667
  emit: a
3648
- }), { show: B, hide: V, handleShow: ee, handleClose: H, handleNimbusClick: U, handleDragging: te, handleResizing: ne, handleDragStop: W, handleResizeStop: re, handleToggleCompression: ie, handleCompressionChange: ae, handleExecutionPanelChange: oe, sendMessage: se, handleReceiveStart: ce, handleReceiveText: le, handleReceiveEnd: ue, handleStop: de, stopGeneration: fe, setCiteText: G, focusInput: pe, selectShortcut: K, sendShortcut: me, getChatHelper: he, updatePosition: ge, updateSize: _e, updatePositionAndSize: ve, handleShortcutClick: ye } = Et({
3668
+ }), { show: B, hide: V, handleShow: H, handleClose: U, handleNimbusClick: W, handleDragging: ee, handleResizing: te, handleDragStop: ne, handleResizeStop: re, handleToggleCompression: ie, handleCompressionChange: ae, handleExecutionPanelChange: oe, sendMessage: se, handleReceiveStart: ce, handleReceiveText: le, handleReceiveEnd: ue, handleStop: de, stopGeneration: fe, setCiteText: pe, focusInput: G, selectShortcut: K, sendShortcut: q, getChatHelper: me, updatePosition: he, updateSize: ge, updatePositionAndSize: _e, handleShortcutClick: ve } = Tt({
3649
3669
  componentManager: f,
3650
3670
  chatBotRef: C,
3651
3671
  forwarders: b,
3652
3672
  forwardToManager: x,
3653
3673
  beforeNimbusClick: c.beforeNimbusClick
3654
- }), { sessionName: be, hasPermission: xe, hasSessionContents: Se, autoGenerateLoading: Ce, handleNewChat: we, handleHistoryClick: Te, handleHistorySessionSwitch: Ee, handleHistorySessionDelete: De, handleHistorySessionRename: Oe, handleAutoGenerateName: ke, handleHelpClick: Ae, handleRename: q, handleSessionSwitched: je, addNewSession: Me, switchToSession: Ne, updateSessionName: Pe } = Dt({
3674
+ }), { sessionName: ye, hasPermission: be, hasSessionContents: xe, autoGenerateLoading: Se, handleNewChat: Ce, handleNewChatCreated: we, handleHistoryClick: Te, handleHistorySessionSwitch: Ee, handleHistorySessionDelete: De, handleHistorySessionRename: Oe, handleAutoGenerateName: ke, handleHelpClick: J, handleRename: Ae, handleSessionSwitched: je, addNewSession: Me, switchToSession: Ne, updateSessionName: Pe } = Et({
3655
3675
  chatHelper: u,
3656
3676
  sessionBusinessManager: m,
3657
3677
  chatBotRef: C,
3658
3678
  forwarders: b,
3659
3679
  handleError: R,
3660
3680
  currentSession: A
3661
- }), { isShareLoading: Fe, handleShare: J, handleCancelShare: Ie, handleConfirmShare: Le } = Ot({
3681
+ }), { isShareLoading: Y, handleShare: Fe, handleCancelShare: Ie, handleConfirmShare: Le } = Dt({
3662
3682
  shareBusinessManager: h,
3663
3683
  chatBotRef: C,
3664
3684
  forwarders: b,
3665
3685
  handleError: R
3666
- }), { aiSelectionVisible: Re, filteredPopupShortcuts: ze, handleSelectionChange: Be, handleAiSelectionShortcut: Ve } = Ct({
3686
+ }), { aiSelectionVisible: Re, filteredPopupShortcuts: ze, handleSelectionChange: Be, handleAiSelectionShortcut: Ve } = St({
3667
3687
  shortcutManager: y,
3668
3688
  chatBotRef: C,
3669
3689
  forwardToManager: x,
3670
3690
  show: B,
3671
3691
  props: c
3672
3692
  }), He = (e) => {
3673
- Se.value = !0, b.sendMessage(e);
3693
+ xe.value = !0, b.sendMessage(e);
3674
3694
  };
3675
3695
  return n({
3676
3696
  show: B,
3677
- handleShow: ee,
3678
- handleClose: H,
3697
+ handleShow: H,
3698
+ handleClose: U,
3679
3699
  hide: V,
3680
3700
  sendMessage: se,
3681
3701
  selectShortcut: K,
3682
- sendShortcut: me,
3683
- getChatHelper: he,
3702
+ sendShortcut: q,
3703
+ getChatHelper: me,
3684
3704
  stopGeneration: fe,
3685
3705
  addNewSession: Me,
3686
3706
  switchToSession: Ne,
3687
3707
  updateSessionName: Pe,
3688
- updatePosition: ge,
3689
- updateSize: _e,
3690
- updatePositionAndSize: ve,
3691
- setCiteText: G,
3692
- focusInput: pe
3708
+ updatePosition: he,
3709
+ updateSize: ge,
3710
+ updatePositionAndSize: _e,
3711
+ setCiteText: pe,
3712
+ focusInput: G
3693
3713
  }), (e, n) => (S(), r(t, { to: c.teleportTo }, [o("div", { class: g(["ai-blueking-v2", c.extCls]) }, [
3694
3714
  i(" 可拖拽容器 "),
3695
3715
  l(j(Qt), {
@@ -3706,50 +3726,51 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3706
3726
  "max-width-percent": 80,
3707
3727
  visible: j(T),
3708
3728
  onCompressionChange: j(ae),
3709
- onDragStop: j(W),
3710
- onDragging: j(te),
3729
+ onDragStop: j(ne),
3730
+ onDragging: j(ee),
3711
3731
  onResizeStop: j(re),
3712
- onResizing: j(ne)
3732
+ onResizing: j(te)
3713
3733
  }, {
3714
3734
  default: I(() => [o("div", { class: g(["ai-blueking-panel", { "has-messages": !j(N) }]) }, [
3715
3735
  i(" 独立的 Header 组件 "),
3716
- c.hideHeader ? i("v-if", !0) : (S(), r(nt, {
3736
+ c.hideHeader ? i("v-if", !0) : (S(), r(tt, {
3717
3737
  key: 0,
3718
3738
  "agent-name": j(k),
3719
3739
  "chat-helper": j(u),
3720
3740
  draggable: c.draggable,
3721
3741
  "dropdown-menu-config": c.dropdownMenuConfig,
3722
3742
  "enable-chat-session": c.enableChatSession,
3723
- "has-permission": j(xe),
3724
- "has-session-contents": j(Se),
3725
- "auto-generate-loading": j(Ce),
3743
+ "has-permission": j(be),
3744
+ "has-session-contents": j(xe),
3745
+ "auto-generate-loading": j(Se),
3726
3746
  "is-compression-height": j(M),
3727
3747
  "render-mode": c.renderMode,
3728
3748
  "session-business-manager": j(m),
3729
- "session-name": j(be),
3749
+ "session-name": j(ye),
3730
3750
  "show-compression-icon": c.showCompressionIcon,
3731
3751
  "show-history-icon": c.showHistoryIcon,
3732
3752
  "show-more-icon": c.showMoreIcon,
3733
3753
  "show-new-chat-icon": c.showNewChatIcon,
3734
3754
  title: c.title,
3735
3755
  onAutoGenerateName: j(ke),
3736
- onClose: j(H),
3737
- onHelpClick: j(Ae),
3756
+ onClose: j(U),
3757
+ onHelpClick: j(J),
3738
3758
  onHistoryClick: j(Te),
3739
3759
  onHistorySessionDelete: j(De),
3740
3760
  onHistorySessionRename: j(Oe),
3741
3761
  onHistorySessionSwitch: j(Ee),
3742
- onNewChat: j(we),
3743
- onRename: j(q),
3744
- onShare: j(J),
3762
+ onNewChat: j(Ce),
3763
+ onNewChatCreated: j(we),
3764
+ onRename: j(Ae),
3765
+ onShare: j(Fe),
3745
3766
  onToggleCompression: j(ie)
3746
3767
  }, s({ _: 2 }, [e.$slots.headerLeft ? {
3747
3768
  name: "headerLeft",
3748
3769
  fn: I(() => [D(e.$slots, "headerLeft", {}, void 0, !0)]),
3749
3770
  key: "0"
3750
- } : void 0]), 1032, /* @__PURE__ */ "agent-name.chat-helper.draggable.dropdown-menu-config.enable-chat-session.has-permission.has-session-contents.auto-generate-loading.is-compression-height.render-mode.session-business-manager.session-name.show-compression-icon.show-history-icon.show-more-icon.show-new-chat-icon.title.onAutoGenerateName.onClose.onHelpClick.onHistoryClick.onHistorySessionDelete.onHistorySessionRename.onHistorySessionSwitch.onNewChat.onRename.onShare.onToggleCompression".split("."))),
3771
+ } : void 0]), 1032, /* @__PURE__ */ "agent-name.chat-helper.draggable.dropdown-menu-config.enable-chat-session.has-permission.has-session-contents.auto-generate-loading.is-compression-height.render-mode.session-business-manager.session-name.show-compression-icon.show-history-icon.show-more-icon.show-new-chat-icon.title.onAutoGenerateName.onClose.onHelpClick.onHistoryClick.onHistorySessionDelete.onHistorySessionRename.onHistorySessionSwitch.onNewChat.onNewChatCreated.onRename.onShare.onToggleCompression".split("."))),
3751
3772
  i(" ChatBot 核心组件(仅聊天区域) "),
3752
- l(vt, {
3773
+ l(_t, {
3753
3774
  ref_key: "chatBotRef",
3754
3775
  ref: C,
3755
3776
  "auto-load": c.loadRecentSessionOnMount,
@@ -3763,7 +3784,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3763
3784
  "resize-props": c.resizeProps,
3764
3785
  resources: j(F),
3765
3786
  "session-code": c.initialSessionCode,
3766
- "share-loading": j(Fe),
3787
+ "share-loading": j(Y),
3767
3788
  shortcuts: c.shortcuts,
3768
3789
  style: v({ height: c.hideHeader ? "100%" : "calc(100% - 48px)" }),
3769
3790
  url: j(O),
@@ -3774,10 +3795,10 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3774
3795
  onReceiveEnd: j(ue),
3775
3796
  onReceiveStart: j(ce),
3776
3797
  onReceiveText: j(le),
3777
- onRequestShare: j(J),
3798
+ onRequestShare: j(Fe),
3778
3799
  onSendMessage: n[2] ||= (e) => He(e),
3779
3800
  onSessionSwitched: n[3] ||= (e) => j(je)(e),
3780
- onShortcutClick: j(ye),
3801
+ onShortcutClick: j(ve),
3781
3802
  onStop: j(de)
3782
3803
  }, s({ _: 2 }, [e.$slots.codeHeader ? {
3783
3804
  name: "codeHeader",
@@ -3834,7 +3855,7 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3834
3855
  "onUpdate:isPanelShow": n[5] ||= (e) => p(T) ? T.value = e : null,
3835
3856
  "default-minimize": c.defaultMinimize,
3836
3857
  size: c.nimbusSize,
3837
- onClick: j(U)
3858
+ onClick: j(W)
3838
3859
  }, null, 8, [
3839
3860
  "is-minimize",
3840
3861
  "is-panel-show",
@@ -3861,6 +3882,6 @@ var Zt = { class: "draggable-container-content" }, Qt = /* @__PURE__ */ J(/* @__
3861
3882
  ])) : i("v-if", !0)
3862
3883
  ], 2)], 8, ["to"]));
3863
3884
  }
3864
- }), [["__scopeId", "data-v-055b074c"]]);
3885
+ }), [["__scopeId", "data-v-85e21a14"]]);
3865
3886
  //#endregion
3866
- export { pe as AGUIProtocol, nn as AIBlueking, nn as default, jt as BluekingProtocol, Y as BootstrapPhase, vt as ChatBot, rt as ChatBusinessManager, st as ComponentManager, Qt as DraggableContainer, V as MessageContentType, ne as RenderMode, it as SessionBusinessManager, ot as ShortcutManager, dt as UIStateManager, Mt as createBluekingProtocol, ct as createComponentManager, At as defaultProps, yt as useChatBootstrap, he as useChatHelper, Xt as useDraggable };
3887
+ export { G as AGUIProtocol, nn as AIBlueking, nn as default, At as BluekingProtocol, X as BootstrapPhase, _t as ChatBot, nt as ChatBusinessManager, ot as ComponentManager, Qt as DraggableContainer, V as MessageContentType, te as RenderMode, rt as SessionBusinessManager, at as ShortcutManager, ut as UIStateManager, jt as createBluekingProtocol, st as createComponentManager, kt as defaultProps, vt as useChatBootstrap, me as useChatHelper, Xt as useDraggable };