@myun/gimi-chat 0.8.0 → 0.8.2

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.
@@ -7,7 +7,7 @@ import { Badge } from '@douyinfe/semi-ui';
7
7
  import GHIcon from "../../assets/image/gtrs_logo_lt.png";
8
8
  /**
9
9
  * 根据URL获取网页favicon图标地址
10
- * @param {string} url - 目标网页的URL(如https://www.baidu.com)
10
+ * @param {string} url - 目标网页的URL
11
11
  * @returns {string} favicon的完整URL
12
12
  */
13
13
  function getFaviconByUrl(url) {
@@ -1,3 +1,8 @@
1
1
  import React from 'react';
2
+ export interface IReasoningSearchItem {
3
+ title: string;
4
+ sitename: string;
5
+ url: string;
6
+ }
2
7
  declare const ReasoningSearchContent: React.FC;
3
8
  export default ReasoningSearchContent;
@@ -1,42 +1,38 @@
1
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
1
  import React from 'react';
8
2
  import styles from "../reasoning-search/index.module.css";
9
3
  import { useAppSelector } from "../../store/hooks";
10
4
  import { Badge } from '@douyinfe/semi-ui';
11
5
  import GHIcon from "../../assets/image/gtrs_logo_lt.png";
6
+ var DEFAULT_ICON_URL = 'https://simg01.gaodunwangxiao.com/uploadimgs/tmp/upload/202602/04/a24f0_20260204165906.png';
12
7
  var getFaviconByUrl = function getFaviconByUrl(url) {
13
8
  try {
14
- var urlObj = new URL(url);
15
- return "".concat(urlObj.origin, "/favicon.ico");
16
- } catch (_unused) {
9
+ // 解析URL,获取域名部分
10
+ var parsedUrl = new URL(url);
11
+ // 单独处理政府网站图标
12
+ if (parsedUrl.host.indexOf('gov.cn') !== -1) {
13
+ return GHIcon;
14
+ }
15
+ // 拼接标准favicon路径
16
+ var faviconUrl = "".concat(parsedUrl.protocol, "//").concat(parsedUrl.host, "/favicon.ico");
17
+ return faviconUrl;
18
+ } catch (error) {
19
+ console.error('URL格式错误:', error);
17
20
  return '';
18
21
  }
19
22
  };
20
23
  var IconComponent = function IconComponent(_ref) {
21
- var iconUrl = _ref.iconUrl;
22
- var _React$useState = React.useState(false),
23
- _React$useState2 = _slicedToArray(_React$useState, 2),
24
- iconError = _React$useState2[0],
25
- setIconError = _React$useState2[1];
26
- if (iconError || !iconUrl) {
27
- return /*#__PURE__*/React.createElement("img", {
28
- src: GHIcon,
29
- alt: "icon",
30
- className: styles.icon
31
- });
32
- }
24
+ var iconUrl = _ref.iconUrl,
25
+ item = _ref.item;
26
+ var handleImageError = function handleImageError(e) {
27
+ e.target.src = DEFAULT_ICON_URL;
28
+ };
33
29
  return /*#__PURE__*/React.createElement("img", {
34
- src: iconUrl,
35
- alt: "icon",
36
30
  className: styles.icon,
37
- onError: function onError() {
38
- return setIconError(true);
39
- }
31
+ src: iconUrl || DEFAULT_ICON_URL,
32
+ alt: item.sitename
33
+ // 图片加载失败
34
+ ,
35
+ onError: handleImageError
40
36
  });
41
37
  };
42
38
  var ReasoningSearchContent = function ReasoningSearchContent() {
@@ -838,7 +838,7 @@ var useCommonChatAPI = function useCommonChatAPI(props) {
838
838
  return _regeneratorRuntime().wrap(function _callee10$(_context10) {
839
839
  while (1) switch (_context10.prev = _context10.next) {
840
840
  case 0:
841
- agent = _args10.length > 1 && _args10[1] !== undefined ? _args10[1] : agentObjRef.current;
841
+ agent = _args10.length > 1 && _args10[1] !== undefined ? _args10[1] : agentObj;
842
842
  isSystemAuto = _args10.length > 2 && _args10[2] !== undefined ? _args10[2] : false;
843
843
  conversationId = _args10.length > 3 ? _args10[3] : undefined;
844
844
  value = val.trim();
@@ -913,7 +913,7 @@ var useCommonChatAPI = function useCommonChatAPI(props) {
913
913
  return function (_x15) {
914
914
  return _ref12.apply(this, arguments);
915
915
  };
916
- }(), [dispatch, startChat, chatInputConfig, createUserChat, fillInputModel, isPlaying, status, stopTTSByText, msgLoading]);
916
+ }(), [dispatch, startChat, chatInputConfig, createUserChat, fillInputModel, isPlaying, status, stopTTSByText, msgLoading, agentObj]);
917
917
 
918
918
  // 获取对话标题
919
919
  var getHeaderValue = React.useCallback( /*#__PURE__*/function () {