zj-plugin-intelligent 1.2.6-beta.5 → 1.2.6-beta.6

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.
@@ -1047,7 +1047,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
1047
1047
  /***/ (function(module, exports, __webpack_require__) {
1048
1048
 
1049
1049
  "use strict";
1050
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])])]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1050
+ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading && !_vm.isMobile ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : !_vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])]) : _vm._e()]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1051
1051
 
1052
1052
  /***/ }),
1053
1053
 
@@ -12716,7 +12716,7 @@ eval("module.exports = function(originalModule) {\n\tif (!originalModule.webpack
12716
12716
  /*! exports provided: name, version, main, private, scripts, dependencies, devDependencies, browserslist, directories, keywords, license, default */
12717
12717
  /***/ (function(module) {
12718
12718
 
12719
- eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.5\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12719
+ eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.6\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12720
12720
 
12721
12721
  /***/ }),
12722
12722
 
@@ -13608,7 +13608,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
13608
13608
  /***/ (function(module, exports, __webpack_require__) {
13609
13609
 
13610
13610
  "use strict";
13611
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 15:46:55\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13611
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 18:09:42\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13612
13612
 
13613
13613
  /***/ }),
13614
13614
 
@@ -1056,7 +1056,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
1056
1056
  /***/ (function(module, exports, __webpack_require__) {
1057
1057
 
1058
1058
  "use strict";
1059
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])])]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1059
+ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading && !_vm.isMobile ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : !_vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])]) : _vm._e()]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1060
1060
 
1061
1061
  /***/ }),
1062
1062
 
@@ -12725,7 +12725,7 @@ eval("module.exports = function(originalModule) {\n\tif (!originalModule.webpack
12725
12725
  /*! exports provided: name, version, main, private, scripts, dependencies, devDependencies, browserslist, directories, keywords, license, default */
12726
12726
  /***/ (function(module) {
12727
12727
 
12728
- eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.5\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12728
+ eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.6\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12729
12729
 
12730
12730
  /***/ }),
12731
12731
 
@@ -13617,7 +13617,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
13617
13617
  /***/ (function(module, exports, __webpack_require__) {
13618
13618
 
13619
13619
  "use strict";
13620
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 15:46:55\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13620
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 18:09:42\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13621
13621
 
13622
13622
  /***/ }),
13623
13623
 
@@ -1056,7 +1056,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
1056
1056
  /***/ (function(module, exports, __webpack_require__) {
1057
1057
 
1058
1058
  "use strict";
1059
- eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])])]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1059
+ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.staticRenderFns = exports.render = void 0;\nvar render = exports.render = function render() {\n var _vm = this,\n _c = _vm._self._c;\n return _c(\"div\", {\n staticClass: \"chat-sidebar\",\n class: {\n open: _vm.showSidebar || _vm.isMobile && _vm.showH5List\n }\n }, [!_vm.isIntelShow ? _c(\"div\", {\n staticClass: \"sidebar-header\"\n }, [_vm.isMobile ? _c(\"button\", {\n staticClass: \"sidebar-back-btn\",\n on: {\n click: function ($event) {\n return _vm.$emit(\"sidebar-back\");\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"22\",\n height: \"22\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M15 18l-6-6 6-6\",\n stroke: \"currentColor\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])]) : _vm._e(), _c(\"span\", {\n staticClass: \"sidebar-title\"\n }, [_vm._v(_vm._s(_vm.isMobile ? \"AI\" : \"AI助理(内测版)\"))]), _c(\"img\", {\n attrs: {\n src: __webpack_require__(/*! @/assets/aiagent/AImore.png */ \"./src/assets/aiagent/AImore.png\"),\n alt: \"\"\n },\n on: {\n click: function ($event) {\n return _vm.$emit(\"agent-jump-click\");\n }\n }\n })]) : _vm._e(), _c(\"div\", {\n staticClass: \"sidebar-search\"\n }, [_c(\"div\", {\n staticClass: \"search-wrap\"\n }, [_c(\"svg\", {\n staticClass: \"search-icon\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"11\",\n cy: \"11\",\n r: \"7\",\n stroke: \"#999\",\n \"stroke-width\": \"2\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M21 21l-4.35-4.35\",\n stroke: \"#999\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]), _c(\"input\", {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.searchKeyword,\n expression: \"searchKeyword\"\n }],\n staticClass: \"search-input\",\n attrs: {\n type: \"text\",\n placeholder: \"搜索助手...\"\n },\n domProps: {\n value: _vm.searchKeyword\n },\n on: {\n input: function ($event) {\n if ($event.target.composing) return;\n _vm.searchKeyword = $event.target.value;\n }\n }\n }), _vm.searchKeyword ? _c(\"svg\", {\n staticClass: \"search-clear\",\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n },\n on: {\n click: _vm.onSearchClear,\n touchend: function ($event) {\n $event.preventDefault();\n return _vm.onSearchClear.apply(null, arguments);\n }\n }\n }, [_c(\"circle\", {\n attrs: {\n cx: \"12\",\n cy: \"12\",\n r: \"10\",\n fill: \"#ccc\"\n }\n }), _c(\"path\", {\n attrs: {\n d: \"M9 9l6 6M15 9l-6 6\",\n stroke: \"#fff\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\"\n }\n })]) : _vm._e()]), _vm.showAgentSuggestions && _vm.agentSuggestions.length > 0 && _vm.searchKeyword ? _c(\"div\", {\n staticClass: \"search-suggestions\"\n }, _vm._l(_vm.agentSuggestions, function (a) {\n return _c(\"div\", {\n key: a.agentCode,\n staticClass: \"suggestion-item\",\n on: {\n click: function ($event) {\n return _vm.selectSuggestion(a);\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar suggestion-avatar\",\n class: {\n \"has-agent-img\": a.avatar\n },\n style: {\n width: \"20px\",\n height: \"20px\",\n background: a.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [a.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: a.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(a.agentName || a.agentCode)))]], 2), _c(\"span\", {\n staticClass: \"suggestion-name\"\n }, [_vm._v(_vm._s(a.agentName || a.agentCode))]), _c(\"span\", {\n staticClass: \"suggestion-desc\"\n }, [_vm._v(_vm._s(a.description ? a.description.substring(0, 30) : \"\"))])]);\n }), 0) : _vm._e()]), _vm.localFilteredSessions.length > 0 ? _c(\"div\", {\n staticClass: \"sidebar-list\"\n }, _vm._l(_vm.localFilteredSessions, function (s) {\n return _c(\"div\", {\n key: s.sessionId,\n staticClass: \"session-item\",\n class: {\n active: s.sessionId === _vm.activeSessionId\n },\n on: {\n click: function ($event) {\n return _vm.onSessionClick(s);\n },\n touchstart: function ($event) {\n return _vm.onSessionTouchStart(s, $event);\n },\n touchend: function ($event) {\n return _vm.onSessionTouchEnd($event, s);\n },\n touchmove: _vm.onSessionTouchMove,\n contextmenu: function ($event) {\n $event.preventDefault();\n }\n }\n }, [_c(\"div\", {\n staticClass: \"agent-list-avatar session-avatar session-left-item\",\n class: {\n \"has-agent-img\": s.avatar\n },\n style: {\n background: s.color || \"linear-gradient(135deg, #1677ff, #4096ff)\"\n }\n }, [s.avatar ? _c(\"img\", {\n staticClass: \"avatar-pic\",\n attrs: {\n src: s.avatar,\n alt: \"\"\n }\n }) : [_vm._v(_vm._s(_vm.getInitial(s.agentName || s.agentCode)))]], 2), _c(\"div\", {\n staticClass: \"session-info\"\n }, [_c(\"div\", {\n staticClass: \"session-agent\"\n }, [_vm._v(_vm._s(s.agentName || s.agentCode))]), _c(\"div\", {\n staticClass: \"session-preview\"\n }, [_vm._v(_vm._s(s.greeting || s.lastContent || \"空会话\"))])]), _c(\"button\", {\n staticClass: \"session-delete\",\n on: {\n click: function ($event) {\n $event.stopPropagation();\n return _vm.$emit(\"delete-session\", s);\n }\n }\n }, [_c(\"svg\", {\n attrs: {\n width: \"14\",\n height: \"14\",\n viewBox: \"0 0 24 24\",\n fill: \"none\"\n }\n }, [_c(\"path\", {\n attrs: {\n d: \"M6 7h12M9 7V5a1 1 0 011-1h4a1 1 0 011 1v2M10 11v6M14 11v6M7 7l1 13a1 1 0 001 1h6a1 1 0 001-1l1-13\",\n stroke: \"currentColor\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }\n })])])]);\n }), 0) : _vm.loading && !_vm.isMobile ? _c(\"div\", {\n staticClass: \"sidebar-loading\"\n }, [_c(\"div\", {\n staticClass: \"loading-spinner\"\n }), _c(\"div\", [_vm._v(\"加载中...\")])]) : !_vm.loading ? _c(\"div\", {\n staticClass: \"sidebar-empty\"\n }, [_c(\"div\", {\n staticClass: \"empty-icon\"\n }, [_vm._v(\"💬\")]), _c(\"div\", [_vm._v(_vm._s(_vm.searchKeyword ? \"没有匹配的会话\" : \"暂无会话\"))]), _c(\"div\", {\n staticClass: \"empty-hint\"\n }, [_vm._v(_vm._s(_vm.searchKeyword ? \"试试其他关键词\" : \"选择助手开始对话\"))])]) : _vm._e()]);\n};\nvar staticRenderFns = exports.staticRenderFns = [];\nrender._withStripped = true;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/components/chatMain/ChatSidebar.vue?./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js?%7B%22cacheDirectory%22:%22node_modules/.cache/vue-loader%22,%22cacheIdentifier%22:%224b66220e-vue-loader-template%22%7D!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--13-0!./node_modules/_babel-loader@8.4.1@babel-loader/lib!./node_modules/_vue-loader@15.11.1@vue-loader/lib/loaders/templateLoader.js??ref--6!./node_modules/_cache-loader@4.1.0@cache-loader/dist/cjs.js??ref--1-0!./node_modules/_vue-loader@15.11.1@vue-loader/lib??vue-loader-options");
1060
1060
 
1061
1061
  /***/ }),
1062
1062
 
@@ -12725,7 +12725,7 @@ eval("module.exports = function(originalModule) {\n\tif (!originalModule.webpack
12725
12725
  /*! exports provided: name, version, main, private, scripts, dependencies, devDependencies, browserslist, directories, keywords, license, default */
12726
12726
  /***/ (function(module) {
12727
12727
 
12728
- eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.5\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12728
+ eval("module.exports = JSON.parse(\"{\\\"name\\\":\\\"zj-plugin-intelligent\\\",\\\"version\\\":\\\"1.2.6-beta.6\\\",\\\"main\\\":\\\"lib/ZjPluginIntelligent.umd.min.js\\\",\\\"private\\\":false,\\\"scripts\\\":{\\\"serve\\\":\\\"vue-cli-service serve\\\",\\\"build\\\":\\\"vue-cli-service build\\\",\\\"lib\\\":\\\"vue-cli-service build --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\",\\\"lib:test\\\":\\\"vue-cli-service build --mode test --target lib --name ZjPluginIntelligent --dest lib src/lib/index.js\\\"},\\\"dependencies\\\":{\\\"html2canvas\\\":\\\"^1.4.1\\\",\\\"markdown-it\\\":\\\"^14.1.0\\\"},\\\"devDependencies\\\":{\\\"@babel/preset-env\\\":\\\"^7.14.9\\\",\\\"@vue/cli-plugin-babel\\\":\\\"~4.5.0\\\",\\\"@vue/cli-plugin-eslint\\\":\\\"^4.5.13\\\",\\\"@vue/cli-plugin-vuex\\\":\\\"~4.5.0\\\",\\\"@vue/cli-service\\\":\\\"~4.5.0\\\",\\\"axios\\\":\\\"^0.27.2\\\",\\\"babel-eslint\\\":\\\"^10.1.0\\\",\\\"babel-plugin-component\\\":\\\"^1.1.1\\\",\\\"compression-webpack-plugin\\\":\\\"^6.0.3\\\",\\\"core-js\\\":\\\"^3.6.5\\\",\\\"element-ui\\\":\\\"^2.15.4\\\",\\\"eslint\\\":\\\"^7.30.0\\\",\\\"eslint-plugin-vue\\\":\\\"^7.13.0\\\",\\\"js-cookie\\\":\\\"^2.2.1\\\",\\\"node-sass\\\":\\\"^4.12.0\\\",\\\"obs-upload\\\":\\\"^1.0.4-alpha.0\\\",\\\"reconnecting-websocket\\\":\\\"^4.4.0\\\",\\\"sass-loader\\\":\\\"^8.0.2\\\",\\\"snowflake-id\\\":\\\"^1.1.0\\\",\\\"vue\\\":\\\"^2.6.11\\\",\\\"vue-template-compiler\\\":\\\"^2.6.11\\\",\\\"vuex\\\":\\\"^3.4.0\\\",\\\"pako\\\":\\\"^2.1.0\\\",\\\"webpack-bundle-analyzer\\\":\\\"^4.4.2\\\"},\\\"browserslist\\\":[\\\"> 1%\\\",\\\"last 2 versions\\\",\\\"not dead\\\"],\\\"directories\\\":{\\\"lib\\\":\\\"lib\\\"},\\\"keywords\\\":[],\\\"license\\\":\\\"ISC\\\"}\");\n\n//# sourceURL=webpack://ZjPluginIntelligent/./package.json?");
12729
12729
 
12730
12730
  /***/ }),
12731
12731
 
@@ -13617,7 +13617,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
13617
13617
  /***/ (function(module, exports, __webpack_require__) {
13618
13618
 
13619
13619
  "use strict";
13620
- eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 15:46:55\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13620
+ eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js */ \"./node_modules/_@babel_runtime@7.29.7@@babel/runtime/helpers/interopRequireDefault.js\").default;\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.getAuth = getAuth;\nexports.setAuth = setAuth;\nexports.setBaseURL = setBaseURL;\nexports.setToken = setToken;\nexports.signQueryParams = signQueryParams;\n__webpack_require__(/*! core-js/modules/es.error.cause.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.error.cause.js\");\n__webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.array.push.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.constructor.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.constructor.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.filter.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.filter.js\");\n__webpack_require__(/*! core-js/modules/es.iterator.map.js */ \"./node_modules/_core-js@3.49.0@core-js/modules/es.iterator.map.js\");\nvar _axios = _interopRequireDefault(__webpack_require__(/*! axios */ \"./node_modules/_axios@0.27.2@axios/index.js\"));\nvar _cookie = __webpack_require__(/*! @lib/utils/cookie.js */ \"./src/lib/utils/cookie.js\");\nvar _message = __webpack_require__(/*! @lib/utils/message.js */ \"./src/lib/utils/message.js\");\n/*\r\n * @Author: 高瑞廷 2419056691@qq.com\r\n * @Date: 2026-06-04 11:27:13\r\n * @LastEditors: 高瑞廷 2419056691@qq.com\r\n * @LastEditTime: 2026-07-23 18:09:42\r\n * @FilePath: \\zjkj-nodejs-npm_customer-client\\src\\lib\\utils\\request.js\r\n * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE\r\n */\n\nlet runtimeAK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_AK || '';\nlet runtimeSK = Object({\"NODE_ENV\":\"test\",\"VUE_APP_API\":\"https://api.qgbtech.cn\",\"VUE_APP_BASE_API\":\"https://ai.jybtech.cn\",\"VUE_APP_NAME\":\"development\",\"BASE_URL\":\"/\"}).VUE_APP_BASE_SK || '';\nlet runtimeToken = '';\n\n// let _user = '202007091611352'\n// let _companyNo = '201912241159840'\nlet _user = '';\nlet _companyNo = '';\nlet runtimeBaseURL = \"https://ai.jybtech.cn\" || false;\nconst CryptoJS = __webpack_require__(/*! crypto-js */ \"./node_modules/_crypto-js@4.2.0@crypto-js/index.js\");\nconst service = _axios.default.create({\n baseURL: runtimeBaseURL,\n timeout: 15000\n});\nfunction hmacSha256Base64(rawSignStr, sk) {\n const hmac = CryptoJS.HmacSHA256(rawSignStr, sk);\n // 转为 Base64\n return CryptoJS.enc.Base64.stringify(hmac);\n}\nfunction setAuth(ak, sk, user, companyNo, token) {\n runtimeAK = ak || '';\n runtimeSK = sk || '';\n _user = user;\n _companyNo = companyNo;\n runtimeToken = token || '';\n}\nfunction setToken(token) {\n runtimeToken = token || '';\n}\nfunction getAuth() {\n return {\n ak: runtimeAK,\n sk: runtimeSK,\n token: runtimeToken,\n user: _user,\n companyNo: _companyNo\n };\n}\nfunction setBaseURL(url) {\n runtimeBaseURL = url || '';\n service.defaults.baseURL = runtimeBaseURL;\n}\nfunction signQueryParams(params, secretKey) {\n const keys = Object.keys(params).filter(k => k !== 'ak' && k !== 'sign').sort();\n const raw = keys.map(k => `${k}=${params[k] || ''}`).join('&');\n return hmacSha256Base64(raw, secretKey);\n}\nservice.interceptors.request.use(config => {\n // 流式接口跳过 Header 签名\n if (config.url.includes('/chat/stream')) {\n return config;\n }\n const ts = Date.now().toString();\n const token = runtimeToken || (0, _cookie.getToken)();\n const externalUser = _user || '';\n const signParts = [];\n // 1. 第一位:token(有值才加入)\n if (_companyNo) {\n signParts.push(`companyNo=${_companyNo}`);\n }\n if (token) {\n signParts.push(`token=${token}`);\n }\n // 2. 第二位:user(有值才加入)\n if (externalUser) {\n signParts.push(`user=${externalUser}`);\n }\n // 3. 第三位:ts(必选,永远存在)\n signParts.push(`ts=${ts}`);\n\n // 拼接最终待签字符串\n const signStr = signParts.join('&');\n // 计算签名\n const sign = hmacSha256Base64(signStr, runtimeSK);\n if (_companyNo) {\n config.headers['X-Company-No'] = _companyNo;\n }\n\n // 设置请求头\n config.headers['X-AK'] = runtimeAK;\n config.headers['X-Ts'] = ts;\n config.headers['X-Sign'] = sign;\n if (token) {\n config.headers['X-Auth-Token'] = `${token}`;\n config.headers.Authorization = `Bearer ${token}`;\n }\n config.headers['X-External-User'] = externalUser;\n config.headers['Content-Type'] = 'application/json';\n\n // console.log('排序后key:', sortedKeys)\n\n return config;\n}, error => Promise.reject(error));\nservice.interceptors.response.use(response => {\n const res = response.data;\n if (res.code === 200) {\n return res;\n } else if (res.code === 40101) {\n (0, _message.showMessage)('登录已过期,请重新登录');\n return Promise.reject(new Error(res.message));\n } else {\n (0, _message.showMessage)(res.message || '请求失败');\n return Promise.reject(new Error(res.message));\n }\n}, error => {\n (0, _message.showMessage)(error.message || '网络异常');\n return Promise.reject(error);\n});\nvar _default = exports.default = service;\n\n//# sourceURL=webpack://ZjPluginIntelligent/./src/lib/utils/request.js?");
13621
13621
 
13622
13622
  /***/ }),
13623
13623
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zj-plugin-intelligent",
3
- "version": "1.2.6-beta.5",
3
+ "version": "1.2.6-beta.6",
4
4
  "main": "lib/ZjPluginIntelligent.umd.min.js",
5
5
  "private": false,
6
6
  "scripts": {