@blueking/chat-helper 0.0.10-beta.1 → 0.0.10-beta.3

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,4 +1,4 @@
1
- import { ApprovalInterruptTicketStatus, RunFinishedOutcomeType } from '../event';
1
+ import { ApprovalInterruptTicketStatus, RunFinishedOutcomeType, type IResume } from '../event';
2
2
  import { MessageRole, MessageStatus, UserOperation } from '../message';
3
3
  import type { IRequestConfig, ISSEProtocol } from '../http';
4
4
  import type { IMediatorModule } from '../mediator';
@@ -1895,5 +1895,12 @@ export declare const useAgent: (mediator: IMediatorModule, protocol: ISSEProtoco
1895
1895
  reset: (protocol: ISSEProtocol) => void;
1896
1896
  pollResumeSession: (sessionCode: string) => void;
1897
1897
  userOperationStreamRequest: (sessionCode: string, operation: UserOperation, payload: IUserOperationPayload, config?: IRequestConfig) => Promise<void>;
1898
+ streamRequest: ({ sessionCode, url, config, resume, input, }: {
1899
+ sessionCode: string;
1900
+ url?: string;
1901
+ config?: IRequestConfig;
1902
+ resume?: IResume;
1903
+ input?: string;
1904
+ }) => Promise<void>;
1898
1905
  };
1899
1906
  export type IAgentModule = ReturnType<typeof useAgent>;
@@ -140,11 +140,31 @@ import { SessionStatus } from '../session/type.ts.js';
140
140
  if (usedProtocol instanceof AGUIProtocol) {
141
141
  usedProtocol.injectMessageModule(mediator.message);
142
142
  }
143
+ if (input) {
144
+ var // 列表新增一个用户消息
145
+ _mediator_message;
146
+ (_mediator_message = mediator.message) === null || _mediator_message === void 0 ? void 0 : _mediator_message.list.value.push({
147
+ role: MessageRole.User,
148
+ content: input,
149
+ status: MessageStatus.Complete,
150
+ sessionCode
151
+ });
152
+ }
143
153
  // 事件代理
144
154
  const onDone = ()=>{
145
155
  var _usedProtocol_onDone;
146
156
  isChatting.value = false;
147
157
  (_usedProtocol_onDone = usedProtocol.onDone) === null || _usedProtocol_onDone === void 0 ? void 0 : _usedProtocol_onDone.call(usedProtocol);
158
+ if (input) {
159
+ var // 刷新列表,获取前端 mock message 的 id,并更新到列表中
160
+ _mediator_http_message, _mediator_http;
161
+ (_mediator_http = mediator.http) === null || _mediator_http === void 0 ? void 0 : (_mediator_http_message = _mediator_http.message) === null || _mediator_http_message === void 0 ? void 0 : _mediator_http_message.getMessages(sessionCode).then((res)=>{
162
+ var _mediator_message;
163
+ const lastUserMessage = (_mediator_message = mediator.message) === null || _mediator_message === void 0 ? void 0 : _mediator_message.list.value.findLast((item)=>item.role === MessageRole.User);
164
+ const lastApiUserMessage = res.findLast((item)=>item.role === MessageRole.User);
165
+ lastUserMessage.id = lastApiUserMessage.id;
166
+ });
167
+ }
148
168
  };
149
169
  const onError = (error)=>{
150
170
  var _usedProtocol_onError;
@@ -359,6 +379,7 @@ import { SessionStatus } from '../session/type.ts.js';
359
379
  getAgentInfo,
360
380
  reset,
361
381
  pollResumeSession,
362
- userOperationStreamRequest
382
+ userOperationStreamRequest,
383
+ streamRequest
363
384
  };
364
385
  };
@@ -229,7 +229,9 @@ import { CustomEventName, EventType, FlowTaskState, RunFinishedOutcomeType } fro
229
229
  */ handleRunFinishedEvent(event) {
230
230
  var _event_outcome, _event_outcome1;
231
231
  const message = this.messageModule.getCurrentLoadingMessage();
232
- message.status = MessageStatus.Complete;
232
+ if (message) {
233
+ message.status = MessageStatus.Complete;
234
+ }
233
235
  // 如果是中断消息,则创建一个中断消息
234
236
  if (((_event_outcome = event.outcome) === null || _event_outcome === void 0 ? void 0 : _event_outcome.type) === RunFinishedOutcomeType.Interrupt) {
235
237
  this.messageModule.plusMessage({
package/dist/index.d.ts CHANGED
@@ -1897,6 +1897,13 @@ export declare const useChatHelper: (options: IUseChatHelperOptions) => {
1897
1897
  reset: (protocol: import("./http").ISSEProtocol) => void;
1898
1898
  pollResumeSession: (sessionCode: string) => void;
1899
1899
  userOperationStreamRequest: (sessionCode: string, operation: import("./message").UserOperation, payload: import("./message").IUserOperationPayload, config?: import("./http").IRequestConfig) => Promise<void>;
1900
+ streamRequest: ({ sessionCode, url, config, resume, input, }: {
1901
+ sessionCode: string;
1902
+ url?: string;
1903
+ config?: import("./http").IRequestConfig;
1904
+ resume?: import("./event").IResume;
1905
+ input?: string;
1906
+ }) => Promise<void>;
1900
1907
  };
1901
1908
  session: {
1902
1909
  list: import("vue").Ref<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blueking/chat-helper",
3
- "version": "0.0.10-beta.1",
3
+ "version": "0.0.10-beta.3",
4
4
  "description": "",
5
5
  "main": "./dist/index.ts.js",
6
6
  "types": "./dist/index.d.ts",