@ai-group/chat-sdk 3.3.5 → 3.3.7

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.
@@ -22,13 +22,15 @@ var combineTextParts = function combineTextParts(parts) {
22
22
  try {
23
23
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
24
24
  var part = _step.value;
25
- if (part.text) {
25
+ // 纯文本 part(没有 fileData 等其他字段)才合并
26
+ var isPureText = part.text && !part.fileData;
27
+ if (isPureText) {
26
28
  // 如果没有 combined 或 combined 思考类型跟当前 part 不同,则创建新的合并引用
27
29
  if (!combinedTextPart || combinedTextPart.thought !== part.thought) {
28
30
  combinedTextPart = _objectSpread({}, part);
29
31
  result.push(combinedTextPart);
30
32
  } else {
31
- combinedTextPart.text += part.text;
33
+ combinedTextPart.text = (combinedTextPart.text || "") + (part.text || "");
32
34
  }
33
35
  } else {
34
36
  combinedTextPart = undefined;
@@ -61,55 +63,60 @@ function useADKChat(_ref) {
61
63
  _useState2 = _slicedToArray(_useState, 2),
62
64
  loading = _useState2[0],
63
65
  setLoading = _useState2[1];
66
+ var _useState3 = useState(false),
67
+ _useState4 = _slicedToArray(_useState3, 2),
68
+ sessionLoading = _useState4[0],
69
+ setSessionLoading = _useState4[1];
70
+ var sendingRef = useRef(false); // 同步锁,防止快速重复点击
64
71
  var ctrl = useRef(null);
65
72
  // 应用配置
66
73
  var _ref2 = config || {},
67
74
  appNo = _ref2.appNo,
68
75
  showFirstSession = _ref2.showFirstSession;
69
- var _useState3 = useState(null),
70
- _useState4 = _slicedToArray(_useState3, 2),
71
- appInfo = _useState4[0],
72
- setAppInfo = _useState4[1];
73
- // 初始化完成
74
- var _useState5 = useState(false),
76
+ var _useState5 = useState(null),
75
77
  _useState6 = _slicedToArray(_useState5, 2),
76
- initialized = _useState6[0],
77
- setInitialized = _useState6[1];
78
- // 会话记录
79
- var _useState7 = useState([]),
78
+ appInfo = _useState6[0],
79
+ setAppInfo = _useState6[1];
80
+ // 初始化完成
81
+ var _useState7 = useState(false),
80
82
  _useState8 = _slicedToArray(_useState7, 2),
81
- sessionList = _useState8[0],
82
- setSessionList = _useState8[1];
83
+ initialized = _useState8[0],
84
+ setInitialized = _useState8[1];
85
+ // 会话记录
86
+ var _useState9 = useState([]),
87
+ _useState10 = _slicedToArray(_useState9, 2),
88
+ sessionList = _useState10[0],
89
+ setSessionList = _useState10[1];
83
90
  // 当前会话
84
- var _useState9 = useState(function () {
91
+ var _useState11 = useState(function () {
85
92
  return v4();
86
93
  }),
87
- _useState10 = _slicedToArray(_useState9, 2),
88
- currentSessionId = _useState10[0],
89
- setCurrentSessionId = _useState10[1];
94
+ _useState12 = _slicedToArray(_useState11, 2),
95
+ currentSessionId = _useState12[0],
96
+ setCurrentSessionId = _useState12[1];
90
97
  // 会话分页设置
91
- var _useState11 = useState({
98
+ var _useState13 = useState({
92
99
  total: 0,
93
100
  pageNum: 1,
94
101
  pageSize: SESSION_PAGE_SIZE
95
102
  }),
96
- _useState12 = _slicedToArray(_useState11, 2),
97
- sessionPagination = _useState12[0],
98
- setSessionPagination = _useState12[1];
99
- // 开场白
100
- var _useState13 = useState(""),
101
103
  _useState14 = _slicedToArray(_useState13, 2),
102
- prologue = _useState14[0],
103
- setPrologue = _useState14[1];
104
- // 建议问题
105
- var _useState15 = useState([]),
104
+ sessionPagination = _useState14[0],
105
+ setSessionPagination = _useState14[1];
106
+ // 开场白
107
+ var _useState15 = useState(""),
106
108
  _useState16 = _slicedToArray(_useState15, 2),
107
- suggestedQuestions = _useState16[0],
108
- setSuggestedQuestions = _useState16[1];
109
+ prologue = _useState16[0],
110
+ setPrologue = _useState16[1];
111
+ // 建议问题
109
112
  var _useState17 = useState([]),
110
113
  _useState18 = _slicedToArray(_useState17, 2),
111
- messages = _useState18[0],
112
- setMessages = _useState18[1];
114
+ suggestedQuestions = _useState18[0],
115
+ setSuggestedQuestions = _useState18[1];
116
+ var _useState19 = useState([]),
117
+ _useState20 = _slicedToArray(_useState19, 2),
118
+ messages = _useState20[0],
119
+ setMessages = _useState20[1];
113
120
  // 用户自定义业务参数 (stateDelta),每次发送请求时携带
114
121
  var stateDeltaRef = useRef(undefined);
115
122
  var mergedMessages = useMemo(function () {
@@ -301,11 +308,6 @@ function useADKChat(_ref) {
301
308
  // 插入消息
302
309
  insertMessage(newMessage);
303
310
  } else {
304
- if (event.partial === false) {
305
- storeEvents(part, event);
306
- textMsgRef.current = null;
307
- return;
308
- }
309
311
  if (renderedContent) {
310
312
  textMsgRef.current = _objectSpread(_objectSpread({}, textMsgRef.current), {}, {
311
313
  renderedContent: renderedContent
@@ -315,6 +317,10 @@ function useADKChat(_ref) {
315
317
  text: (textMsgRef.current.text || "") + newChunk
316
318
  });
317
319
  updateMessage(textMsgRef.current);
320
+ if (event.partial === false) {
321
+ storeEvents(part, event);
322
+ textMsgRef.current = null;
323
+ }
318
324
  }
319
325
  } else {
320
326
  textMsgRef.current = null;
@@ -474,7 +480,7 @@ function useADKChat(_ref) {
474
480
  while (1) switch (_context2.prev = _context2.next) {
475
481
  case 0:
476
482
  _ref3$text = _ref3.text, text = _ref3$text === void 0 ? "" : _ref3$text, _ref3$files = _ref3.files, files = _ref3$files === void 0 ? [] : _ref3$files, functionResponse = _ref3.functionResponse;
477
- if (!loading) {
483
+ if (!(loading || sendingRef.current)) {
478
484
  _context2.next = 3;
479
485
  break;
480
486
  }
@@ -486,6 +492,7 @@ function useADKChat(_ref) {
486
492
  }
487
493
  return _context2.abrupt("return");
488
494
  case 5:
495
+ sendingRef.current = true;
489
496
  // 清空建议问题
490
497
  setSuggestedQuestions([]);
491
498
  // 发送消息
@@ -524,7 +531,8 @@ function useADKChat(_ref) {
524
531
  }
525
532
  return temp;
526
533
  });
527
- _context2.next = 9;
534
+ _context2.prev = 8;
535
+ _context2.next = 11;
528
536
  return sendMessageRequest(_objectSpread({
529
537
  stream: true,
530
538
  sessionId: currentSessionId,
@@ -549,14 +557,18 @@ function useADKChat(_ref) {
549
557
  }, stateDeltaRef.current !== undefined && {
550
558
  stateDelta: stateDeltaRef.current
551
559
  }));
552
- case 9:
560
+ case 11:
561
+ _context2.prev = 11;
562
+ sendingRef.current = false;
563
+ return _context2.finish(11);
564
+ case 14:
553
565
  // 获取聊天记录
554
566
  initAppConversations();
555
- case 10:
567
+ case 15:
556
568
  case "end":
557
569
  return _context2.stop();
558
570
  }
559
- }, _callee2);
571
+ }, _callee2, null, [[8,, 11, 14]]);
560
572
  }));
561
573
  return function startChat(_x) {
562
574
  return _ref4.apply(this, arguments);
@@ -564,52 +576,78 @@ function useADKChat(_ref) {
564
576
  }();
565
577
 
566
578
  // 重新发送会话
567
- var reChat = function reChat() {
568
- if (loading) return;
569
- if (messages.length === 0) return;
570
- setMessages(function (prev) {
571
- var newMessages = _toConsumableArray(prev);
572
- // 删除最后一条 AI 消息
573
- var lastAIIndex = newMessages.findLastIndex(function (msg) {
574
- return msg.role === "bot";
575
- });
576
- if (lastAIIndex !== -1) {
577
- newMessages.splice(lastAIIndex, 1);
578
- }
579
- // 清空建议问题
580
- setSuggestedQuestions([]);
581
- // 重新发送最后一条用户消息
582
- var lastUserMessage = newMessages.findLast(function (msg) {
583
- return msg.role === "user";
584
- });
585
- if (lastUserMessage) {
586
- var _lastUserMessage$text = lastUserMessage.text,
587
- text = _lastUserMessage$text === void 0 ? "" : _lastUserMessage$text,
588
- _lastUserMessage$file = lastUserMessage.fileData,
589
- fileData = _lastUserMessage$file === void 0 ? [] : _lastUserMessage$file;
590
- sendMessageRequest(_objectSpread({
591
- stream: true,
592
- sessionId: currentSessionId,
593
- content: {
594
- role: "user",
595
- parts: [{
596
- text: text
597
- }]
598
- },
599
- files: fileData === null || fileData === void 0 ? void 0 : fileData.map(function (file) {
600
- return {
601
- fileName: file.displayName,
602
- tempUrl: file.fileUri,
603
- mimeType: file.mimeType
604
- };
605
- })
606
- }, stateDeltaRef.current !== undefined && {
607
- stateDelta: stateDeltaRef.current
608
- }));
609
- }
610
- return newMessages;
611
- });
612
- };
579
+ var reChat = /*#__PURE__*/function () {
580
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
581
+ var lastUserIndex, newMessages, lastUserMessage, _lastUserMessage$text, text, _lastUserMessage$file, fileData;
582
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
583
+ while (1) switch (_context3.prev = _context3.next) {
584
+ case 0:
585
+ if (!(loading || sendingRef.current)) {
586
+ _context3.next = 2;
587
+ break;
588
+ }
589
+ return _context3.abrupt("return");
590
+ case 2:
591
+ if (!(messages.length === 0)) {
592
+ _context3.next = 4;
593
+ break;
594
+ }
595
+ return _context3.abrupt("return");
596
+ case 4:
597
+ sendingRef.current = true;
598
+ // 清空建议问题
599
+ setSuggestedQuestions([]);
600
+
601
+ // 找到最后一条用户消息的索引,删除其后所有 bot 消息
602
+ lastUserIndex = messages.findLastIndex(function (msg) {
603
+ return msg.role === "user" && !msg.functionResponse;
604
+ });
605
+ if (!(lastUserIndex === -1)) {
606
+ _context3.next = 10;
607
+ break;
608
+ }
609
+ sendingRef.current = false;
610
+ return _context3.abrupt("return");
611
+ case 10:
612
+ newMessages = messages.slice(0, lastUserIndex + 1);
613
+ setMessages(newMessages);
614
+ lastUserMessage = newMessages[lastUserIndex];
615
+ _lastUserMessage$text = lastUserMessage.text, text = _lastUserMessage$text === void 0 ? "" : _lastUserMessage$text, _lastUserMessage$file = lastUserMessage.fileData, fileData = _lastUserMessage$file === void 0 ? [] : _lastUserMessage$file;
616
+ _context3.prev = 14;
617
+ _context3.next = 17;
618
+ return sendMessageRequest(_objectSpread({
619
+ stream: true,
620
+ sessionId: currentSessionId,
621
+ content: {
622
+ role: "user",
623
+ parts: [{
624
+ text: text
625
+ }]
626
+ },
627
+ files: fileData === null || fileData === void 0 ? void 0 : fileData.map(function (file) {
628
+ return {
629
+ fileName: file.displayName,
630
+ tempUrl: file.fileUri,
631
+ mimeType: file.mimeType
632
+ };
633
+ })
634
+ }, stateDeltaRef.current !== undefined && {
635
+ stateDelta: stateDeltaRef.current
636
+ }));
637
+ case 17:
638
+ _context3.prev = 17;
639
+ sendingRef.current = false;
640
+ return _context3.finish(17);
641
+ case 20:
642
+ case "end":
643
+ return _context3.stop();
644
+ }
645
+ }, _callee3, null, [[14,, 17, 20]]);
646
+ }));
647
+ return function reChat() {
648
+ return _ref5.apply(this, arguments);
649
+ };
650
+ }();
613
651
 
614
652
  // 确认函数调用
615
653
  var confirmFnCall = function confirmFnCall(fnCall, confirmed) {
@@ -772,25 +810,25 @@ function useADKChat(_ref) {
772
810
 
773
811
  // 设置当前会话详情
774
812
  var setCurrentSession = /*#__PURE__*/function () {
775
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(sessionId) {
813
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(sessionId) {
776
814
  var _yield$fetchSessionDe, data, result, _appInfo$onboardingIn3, _appInfo$onboardingIn4;
777
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
778
- while (1) switch (_context3.prev = _context3.next) {
815
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
816
+ while (1) switch (_context4.prev = _context4.next) {
779
817
  case 0:
780
818
  if (!sessionId) {
781
- _context3.next = 13;
819
+ _context4.next = 13;
782
820
  break;
783
821
  }
784
822
  if (!(sessionId === currentSessionId)) {
785
- _context3.next = 3;
823
+ _context4.next = 3;
786
824
  break;
787
825
  }
788
- return _context3.abrupt("return");
826
+ return _context4.abrupt("return");
789
827
  case 3:
790
828
  // 切换会话时,abort 当前流式请求,防止数据污染和 loading 状态泄漏
791
829
  stopChat();
792
830
  setCurrentSessionId(sessionId); // 设置当前会话 id;
793
- _context3.next = 7;
831
+ _context4.next = 7;
794
832
  return fetchSessionDetail({
795
833
  url: url,
796
834
  appNo: appNo,
@@ -798,7 +836,7 @@ function useADKChat(_ref) {
798
836
  token: token
799
837
  });
800
838
  case 7:
801
- _yield$fetchSessionDe = _context3.sent;
839
+ _yield$fetchSessionDe = _context4.sent;
802
840
  data = _yield$fetchSessionDe.data;
803
841
  result = _yield$fetchSessionDe.result;
804
842
  if ((result === null || result === void 0 ? void 0 : result.code) === API_SUCCESS_CODE) {
@@ -810,25 +848,25 @@ function useADKChat(_ref) {
810
848
  setSuggestedQuestions((appInfo === null || appInfo === void 0 || (_appInfo$onboardingIn4 = appInfo.onboardingInfo) === null || _appInfo$onboardingIn4 === void 0 ? void 0 : _appInfo$onboardingIn4.suggested_questions) || []);
811
849
  }
812
850
  }
813
- _context3.next = 14;
851
+ _context4.next = 14;
814
852
  break;
815
853
  case 13:
816
854
  // 兼容 无 session异常
817
855
  setCurrentSessionId(v4());
818
856
  case 14:
819
857
  case "end":
820
- return _context3.stop();
858
+ return _context4.stop();
821
859
  }
822
- }, _callee3);
860
+ }, _callee4);
823
861
  }));
824
862
  return function setCurrentSession(_x2) {
825
- return _ref5.apply(this, arguments);
863
+ return _ref6.apply(this, arguments);
826
864
  };
827
865
  }();
828
866
 
829
867
  // 获取聊天记录
830
868
  var initAppConversations = /*#__PURE__*/function () {
831
- var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
869
+ var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
832
870
  var fetchDetail,
833
871
  _yield$fetchSessionLi,
834
872
  _yield$fetchSessionLi2,
@@ -840,14 +878,14 @@ function useADKChat(_ref) {
840
878
  sessionId,
841
879
  _appInfo$onboardingIn5,
842
880
  _appInfo$onboardingIn6,
843
- _args4 = arguments;
844
- return _regeneratorRuntime().wrap(function _callee4$(_context4) {
845
- while (1) switch (_context4.prev = _context4.next) {
881
+ _args5 = arguments;
882
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
883
+ while (1) switch (_context5.prev = _context5.next) {
846
884
  case 0:
847
- fetchDetail = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : false;
848
- _context4.prev = 1;
849
- setLoading(true);
850
- _context4.next = 5;
885
+ fetchDetail = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : false;
886
+ _context5.prev = 1;
887
+ setSessionLoading(true);
888
+ _context5.next = 5;
851
889
  return fetchSessionList({
852
890
  url: url,
853
891
  appNo: appNo,
@@ -855,7 +893,7 @@ function useADKChat(_ref) {
855
893
  pageSize: sessionPagination.pageSize
856
894
  });
857
895
  case 5:
858
- _yield$fetchSessionLi = _context4.sent;
896
+ _yield$fetchSessionLi = _context5.sent;
859
897
  _yield$fetchSessionLi2 = _yield$fetchSessionLi.data;
860
898
  data = _yield$fetchSessionLi2 === void 0 ? [] : _yield$fetchSessionLi2;
861
899
  pagination = _yield$fetchSessionLi.pagination;
@@ -906,44 +944,44 @@ function useADKChat(_ref) {
906
944
  setPrologue("");
907
945
  setSuggestedQuestions([]);
908
946
  }
909
- _context4.next = 16;
947
+ _context5.next = 16;
910
948
  break;
911
949
  case 13:
912
- _context4.prev = 13;
913
- _context4.t0 = _context4["catch"](1);
950
+ _context5.prev = 13;
951
+ _context5.t0 = _context5["catch"](1);
914
952
  onError === null || onError === void 0 || onError({
915
953
  code: ErrorCode.API_ERROR,
916
954
  message: "获取会话列表失败"
917
955
  });
918
956
  case 16:
919
- _context4.prev = 16;
920
- setLoading(false);
921
- return _context4.finish(16);
957
+ _context5.prev = 16;
958
+ setSessionLoading(false);
959
+ return _context5.finish(16);
922
960
  case 19:
923
961
  case "end":
924
- return _context4.stop();
962
+ return _context5.stop();
925
963
  }
926
- }, _callee4, null, [[1, 13, 16, 19]]);
964
+ }, _callee5, null, [[1, 13, 16, 19]]);
927
965
  }));
928
966
  return function initAppConversations() {
929
- return _ref6.apply(this, arguments);
967
+ return _ref7.apply(this, arguments);
930
968
  };
931
969
  }();
932
970
 
933
971
  // 删除会话
934
972
  var deleteSession = /*#__PURE__*/function () {
935
- var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(sessionId) {
973
+ var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(sessionId) {
936
974
  var _yield$closeSession, result;
937
- return _regeneratorRuntime().wrap(function _callee5$(_context5) {
938
- while (1) switch (_context5.prev = _context5.next) {
975
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
976
+ while (1) switch (_context6.prev = _context6.next) {
939
977
  case 0:
940
978
  if (sessionId) {
941
- _context5.next = 2;
979
+ _context6.next = 2;
942
980
  break;
943
981
  }
944
- return _context5.abrupt("return");
982
+ return _context6.abrupt("return");
945
983
  case 2:
946
- _context5.next = 4;
984
+ _context6.next = 4;
947
985
  return closeSession({
948
986
  url: url,
949
987
  appNo: appNo,
@@ -951,7 +989,7 @@ function useADKChat(_ref) {
951
989
  token: token
952
990
  });
953
991
  case 4:
954
- _yield$closeSession = _context5.sent;
992
+ _yield$closeSession = _context6.sent;
955
993
  result = _yield$closeSession.result;
956
994
  if ((result === null || result === void 0 ? void 0 : result.code) === API_SUCCESS_CODE) {
957
995
  // 删除成功后,重新获取会话列表
@@ -965,29 +1003,29 @@ function useADKChat(_ref) {
965
1003
  }
966
1004
  case 7:
967
1005
  case "end":
968
- return _context5.stop();
1006
+ return _context6.stop();
969
1007
  }
970
- }, _callee5);
1008
+ }, _callee6);
971
1009
  }));
972
1010
  return function deleteSession(_x3) {
973
- return _ref7.apply(this, arguments);
1011
+ return _ref8.apply(this, arguments);
974
1012
  };
975
1013
  }();
976
1014
 
977
1015
  // 点赞/点踩
978
1016
  var likeMessage = /*#__PURE__*/function () {
979
- var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(invocationId, isLike, feedbackData) {
1017
+ var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(invocationId, isLike, feedbackData) {
980
1018
  var _yield$addFeedback, result;
981
- return _regeneratorRuntime().wrap(function _callee6$(_context6) {
982
- while (1) switch (_context6.prev = _context6.next) {
1019
+ return _regeneratorRuntime().wrap(function _callee7$(_context7) {
1020
+ while (1) switch (_context7.prev = _context7.next) {
983
1021
  case 0:
984
1022
  if (!(!appNo || !invocationId)) {
985
- _context6.next = 2;
1023
+ _context7.next = 2;
986
1024
  break;
987
1025
  }
988
- return _context6.abrupt("return", false);
1026
+ return _context7.abrupt("return", false);
989
1027
  case 2:
990
- _context6.next = 4;
1028
+ _context7.next = 4;
991
1029
  return addFeedback(_objectSpread({
992
1030
  url: url,
993
1031
  appNo: appNo,
@@ -996,10 +1034,10 @@ function useADKChat(_ref) {
996
1034
  isLike: isLike
997
1035
  }, feedbackData));
998
1036
  case 4:
999
- _yield$addFeedback = _context6.sent;
1037
+ _yield$addFeedback = _context7.sent;
1000
1038
  result = _yield$addFeedback.result;
1001
1039
  if (!((result === null || result === void 0 ? void 0 : result.code) === API_SUCCESS_CODE)) {
1002
- _context6.next = 9;
1040
+ _context7.next = 9;
1003
1041
  break;
1004
1042
  }
1005
1043
  setMessages(function (prev) {
@@ -1009,34 +1047,34 @@ function useADKChat(_ref) {
1009
1047
  }) : m;
1010
1048
  });
1011
1049
  });
1012
- return _context6.abrupt("return", true);
1050
+ return _context7.abrupt("return", true);
1013
1051
  case 9:
1014
- return _context6.abrupt("return", false);
1052
+ return _context7.abrupt("return", false);
1015
1053
  case 10:
1016
1054
  case "end":
1017
- return _context6.stop();
1055
+ return _context7.stop();
1018
1056
  }
1019
- }, _callee6);
1057
+ }, _callee7);
1020
1058
  }));
1021
1059
  return function likeMessage(_x4, _x5, _x6) {
1022
- return _ref8.apply(this, arguments);
1060
+ return _ref9.apply(this, arguments);
1023
1061
  };
1024
1062
  }();
1025
1063
 
1026
1064
  // 更新会话名称
1027
1065
  var updateSession = /*#__PURE__*/function () {
1028
- var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(sessionId, title) {
1066
+ var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(sessionId, title) {
1029
1067
  var _yield$updateSessionT, result;
1030
- return _regeneratorRuntime().wrap(function _callee7$(_context7) {
1031
- while (1) switch (_context7.prev = _context7.next) {
1068
+ return _regeneratorRuntime().wrap(function _callee8$(_context8) {
1069
+ while (1) switch (_context8.prev = _context8.next) {
1032
1070
  case 0:
1033
- if (!(!sessionId && !title)) {
1034
- _context7.next = 2;
1071
+ if (!(!sessionId || !title)) {
1072
+ _context8.next = 2;
1035
1073
  break;
1036
1074
  }
1037
- return _context7.abrupt("return");
1075
+ return _context8.abrupt("return");
1038
1076
  case 2:
1039
- _context7.next = 4;
1077
+ _context8.next = 4;
1040
1078
  return updateSessionTitle({
1041
1079
  url: url,
1042
1080
  appNo: appNo,
@@ -1045,7 +1083,7 @@ function useADKChat(_ref) {
1045
1083
  token: token
1046
1084
  });
1047
1085
  case 4:
1048
- _yield$updateSessionT = _context7.sent;
1086
+ _yield$updateSessionT = _context8.sent;
1049
1087
  result = _yield$updateSessionT.result;
1050
1088
  if ((result === null || result === void 0 ? void 0 : result.code) === API_SUCCESS_CODE) {
1051
1089
  // 编辑成功后,重新获取会话列表
@@ -1055,31 +1093,31 @@ function useADKChat(_ref) {
1055
1093
  }
1056
1094
  case 7:
1057
1095
  case "end":
1058
- return _context7.stop();
1096
+ return _context8.stop();
1059
1097
  }
1060
- }, _callee7);
1098
+ }, _callee8);
1061
1099
  }));
1062
1100
  return function updateSession(_x7, _x8) {
1063
- return _ref9.apply(this, arguments);
1101
+ return _ref10.apply(this, arguments);
1064
1102
  };
1065
1103
  }();
1066
1104
 
1067
1105
  // 初始化应用
1068
1106
  var initConfig = /*#__PURE__*/function () {
1069
- var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
1107
+ var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
1070
1108
  var _yield$fetchAppConfig, data, result;
1071
- return _regeneratorRuntime().wrap(function _callee8$(_context8) {
1072
- while (1) switch (_context8.prev = _context8.next) {
1109
+ return _regeneratorRuntime().wrap(function _callee9$(_context9) {
1110
+ while (1) switch (_context9.prev = _context9.next) {
1073
1111
  case 0:
1074
- _context8.prev = 0;
1075
- setLoading(true);
1076
- _context8.next = 4;
1112
+ _context9.prev = 0;
1113
+ setSessionLoading(true);
1114
+ _context9.next = 4;
1077
1115
  return fetchAppConfig({
1078
1116
  url: url,
1079
1117
  appNo: appNo
1080
1118
  });
1081
1119
  case 4:
1082
- _yield$fetchAppConfig = _context8.sent;
1120
+ _yield$fetchAppConfig = _context9.sent;
1083
1121
  data = _yield$fetchAppConfig.data;
1084
1122
  result = _yield$fetchAppConfig.result;
1085
1123
  if (result.code === API_SUCCESS_CODE) {
@@ -1095,27 +1133,27 @@ function useADKChat(_ref) {
1095
1133
  message: result.message || "获取应用配置失败"
1096
1134
  });
1097
1135
  }
1098
- _context8.next = 13;
1136
+ _context9.next = 13;
1099
1137
  break;
1100
1138
  case 10:
1101
- _context8.prev = 10;
1102
- _context8.t0 = _context8["catch"](0);
1139
+ _context9.prev = 10;
1140
+ _context9.t0 = _context9["catch"](0);
1103
1141
  onError === null || onError === void 0 || onError({
1104
1142
  code: ErrorCode.API_ERROR,
1105
1143
  message: "获取应用配置失败"
1106
1144
  });
1107
1145
  case 13:
1108
- _context8.prev = 13;
1109
- setLoading(false);
1110
- return _context8.finish(13);
1146
+ _context9.prev = 13;
1147
+ setSessionLoading(false);
1148
+ return _context9.finish(13);
1111
1149
  case 16:
1112
1150
  case "end":
1113
- return _context8.stop();
1151
+ return _context9.stop();
1114
1152
  }
1115
- }, _callee8, null, [[0, 10, 13, 16]]);
1153
+ }, _callee9, null, [[0, 10, 13, 16]]);
1116
1154
  }));
1117
1155
  return function initConfig() {
1118
- return _ref10.apply(this, arguments);
1156
+ return _ref11.apply(this, arguments);
1119
1157
  };
1120
1158
  }();
1121
1159
 
@@ -1148,6 +1186,7 @@ function useADKChat(_ref) {
1148
1186
  prologue: prologue,
1149
1187
  suggestions: suggestedQuestions,
1150
1188
  loading: loading,
1189
+ sessionLoading: sessionLoading,
1151
1190
  messages: mergedMessages,
1152
1191
  insertSuggestedQuestions: insertSuggestedQuestions,
1153
1192
  insertPrologue: insertPrologue,