byt-lingxiao-ai 0.3.22 → 0.3.24

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.
package/dist/index.css CHANGED
@@ -8,4 +8,4 @@
8
8
 
9
9
  Outdated base version: https://github.com/primer/github-syntax-light
10
10
  Current colors taken from GitHub's CSS
11
- */.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.ai-loading[data-v-0d2964f2]{display:flex;align-items:center;padding:12px 0;height:24px}.dot[data-v-0d2964f2]{width:8px;height:8px;margin-right:6px;background-color:#86909c;border-radius:50%;animation:dot-bounce-0d2964f2 1.4s ease-in-out infinite both}.dot[data-v-0d2964f2]:first-child{animation-delay:-.32s}.dot[data-v-0d2964f2]:nth-child(2){animation-delay:-.16s}.dot[data-v-0d2964f2]:nth-child(3){animation-delay:0s}@keyframes dot-bounce-0d2964f2{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-window-message-ai[data-v-0d2964f2]{display:flex;gap:12px;align-items:flex-start;max-width:100%;border-radius:12px;background:#f6f8fc;padding:8px 12px}.ai-render[data-v-0d2964f2]{width:100%}.ai-thinking[data-v-0d2964f2]{margin-bottom:8px}.ai-thinking-time[data-v-0d2964f2]{border-radius:9px;background:#ecedf4;color:#86909c;font-family:"Alibaba PuHuiTi 2.0";font-size:16px;font-style:normal;font-weight:500;padding:0 30px 0 30px;height:28px;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.ai-thinking-time[data-v-0d2964f2]:before{left:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAMAAAC6V+0/AAAAYFBMVEUAAADu8P/u8P/u8P/u8P/u8P/u8P/s7//v8v/s7//v7//t7//v8f/u8P/l6P/Iz/+stv+1v//S1/9Xbf/b3/+/x/+irv/b4P+Zpv9yhP+Pnv+Glv+Qnv99jf9hdf/R1/8RfKwjAAAADXRSTlMA36/vz5CAYF9QEHBvMEqmkAAAAM9JREFUGNNNkIkSgyAMRAG1niEoouDV///LJvFqZmDgkZ0Nq6SazmiA3FTqrTqDq/SDC7nbE39O9iHQA/S0HL0UzEppG3gfpbsmqPnwXcFtsAQ+Zw032ol7A2vBkaRVRsRpOPbN44r8YFTOinmxKbpjjKPMpQAGmCx6R/6+h2gRgCDe0BGcgKEWecQUpzSuMll+Gs07+rR63C+j9hppDoFdHG2VaiQMXMAtsAUx54jeb87yzeoOibwDh2L/Y3qrUFeV+kYZR/Rgk5OD6Rq5/QAhCBJvrLC2lgAAAABJRU5ErkJggg==) no-repeat;background-size:cover}.ai-thinking-time[data-v-0d2964f2]:after,.ai-thinking-time[data-v-0d2964f2]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px}.ai-thinking-time[data-v-0d2964f2]:after{right:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAACDj5eGkJyGj5uFj5uGj5uAj5/flAqRAAAAB3RSTlMAIN+ggHAQx7ts8QAAAClJREFUCNdjIBWwCUAZQooQmlHZSAAiYMCsCBFgYAALsRowMDA7kGY8AIDkAfQcVWSDAAAAAElFTkSuQmCC) no-repeat;background-size:cover}.ai-thinking-content[data-v-0d2964f2]{color:#86909c;font-size:14px;padding:8px 0 8px 12px}.ai-content[data-v-0d2964f2],.ai-thinking-content[data-v-0d2964f2]{font-family:"Alibaba PuHuiTi 2.0";font-style:normal;font-weight:400;line-height:24px}.ai-content[data-v-0d2964f2]{color:#4e5969;font-size:16px}.markdown-body[data-v-0d2964f2]{word-wrap:break-word}.markdown-body[data-v-0d2964f2] h1,.markdown-body[data-v-0d2964f2] h2,.markdown-body[data-v-0d2964f2] h3,.markdown-body[data-v-0d2964f2] h4{margin:16px 0 8px 0;font-weight:600;line-height:1.4;color:#1f2937}.markdown-body[data-v-0d2964f2] h1{font-size:24px;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.markdown-body[data-v-0d2964f2] h2{font-size:20px;border-bottom:1px solid #e5e7eb;padding-bottom:6px}.markdown-body[data-v-0d2964f2] h3{font-size:18px}.markdown-body[data-v-0d2964f2] h4{font-size:16px}.markdown-body[data-v-0d2964f2] ol{list-style-type:decimal;padding-left:24px;margin:8px 0}.markdown-body[data-v-0d2964f2] ul{list-style-type:disc;padding-left:24px;margin:8px 0}.markdown-body[data-v-0d2964f2] li{display:list-item}.markdown-body[data-v-0d2964f2] code{background-color:rgba(175,184,193,.2);border-radius:3px;font-size:85%;margin:0;padding:.2em .4em;font-family:Monaco,Menlo,Consolas,Courier New,monospace;color:#e83e8c}.markdown-body[data-v-0d2964f2] pre{background-color:#f6f8fa;border-radius:6px;padding:16px;overflow:auto;margin:12px 0;border:1px solid #e1e4e8}.markdown-body[data-v-0d2964f2] pre code{background-color:transparent;border:0;display:inline;line-height:inherit;margin:0;overflow:visible;padding:0;word-wrap:normal;color:#24292e;font-size:14px}.markdown-body[data-v-0d2964f2] table{border:1px solid #dfe2e5;max-height:500px;margin:12px 0;border-collapse:collapse;width:100%;display:block;overflow:auto}.markdown-body[data-v-0d2964f2] table::-webkit-scrollbar{height:6px}.markdown-body[data-v-0d2964f2] table::-webkit-scrollbar-track{background-color:#f3f4f6}.markdown-body[data-v-0d2964f2] table::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:3px}.markdown-body[data-v-0d2964f2] table::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.markdown-body[data-v-0d2964f2] table td,.markdown-body[data-v-0d2964f2] table th{border:1px solid #dfe2e5;padding:10px 14px;text-align:left}.markdown-body[data-v-0d2964f2] table th{background-color:#f3f4f6;font-weight:600;color:#374151}.markdown-body[data-v-0d2964f2] table tr:nth-child(2n){background-color:#f9fafb}.markdown-body[data-v-0d2964f2] .markdown-table tr:hover{background-color:#f3f4f6;transition:background-color .2s}.markdown-body[data-v-0d2964f2] ol,.markdown-body[data-v-0d2964f2] ul{padding-left:24px;margin:8px 0}.markdown-body[data-v-0d2964f2] li{margin:4px 0;line-height:1.6}.markdown-body[data-v-0d2964f2] strong{font-weight:600;color:#1f2937}.markdown-body[data-v-0d2964f2] em{font-style:italic}.markdown-body[data-v-0d2964f2] del{text-decoration:line-through;opacity:.7}.markdown-body[data-v-0d2964f2] blockquote{border-left:4px solid #dfe2e5;padding-left:16px;margin:12px 0;color:#6b7280;font-style:italic}.markdown-body[data-v-0d2964f2] a{color:#3b82f6;text-decoration:none}.markdown-body[data-v-0d2964f2] a:hover{text-decoration:underline;color:#2563eb}.markdown-body[data-v-0d2964f2] img{max-width:100%;border-radius:6px;margin:12px 0}.markdown-body[data-v-0d2964f2] hr{border:none;border-top:1px solid #e5e7eb;margin:16px 0}.markdown-body[data-v-0d2964f2] br{line-height:.8em}.chat-window-empty[data-v-dfc4454c]{width:300px;height:300px;background:url(img/empty.f36cb82e.png) no-repeat;background-size:cover;margin:auto}.chat-window-content[data-v-dfc4454c]{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.scrollbar-hide[data-v-dfc4454c]::-webkit-scrollbar{display:none}.scrollbar-hide[data-v-dfc4454c]{-ms-overflow-style:none;scrollbar-width:none}[data-v-2cd84254] .el-textarea__inner{border:none!important;padding:0 5px;font-family:PingFang SC!important}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar{width:6px;height:6px}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar-thumb{background:rgba(0,0,0,.1);border-radius:3px}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar-track{background:transparent}.chat-window-footer[data-v-2cd84254]{padding:16px}.chat-window-textarea[data-v-2cd84254]{min-height:99px;max-height:180px;border-radius:8px;border:1px solid #f2f2f2;background:#fff;display:flex;flex-direction:column}.chat-window-input[data-v-2cd84254]{padding:10px 12px;font-size:16px;font-family:PingFang SC;box-sizing:border-box}.chat-window-bar[data-v-2cd84254]{display:flex;justify-content:flex-end;padding:8px}.chat-window-send[data-v-2cd84254]{width:70px;height:36px;flex-shrink:0;border-radius:6px;background:rgba(43,128,246,.1);display:flex;align-items:center;justify-content:center;cursor:pointer}.chat-overlay[data-v-bc074e36]{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;z-index:9999;pointer-events:none}.chat-window[data-v-bc074e36]{width:480px;height:740px;border-radius:14px;background:#fff;box-shadow:0 2px 20px 0 rgba(0,0,0,.16);position:absolute;bottom:0;right:60px;overflow:hidden;display:flex;flex-direction:column;z-index:10000}.hidden-audio[data-v-244aa1c1]{position:absolute;left:-9999px;opacity:0;pointer-events:none}.chat[data-v-244aa1c1]{position:fixed;bottom:20px;right:10px;z-index:10001}
11
+ */.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.ai-loading[data-v-7f2cec94]{display:flex;align-items:center;padding:12px 0;height:24px}.dot[data-v-7f2cec94]{width:8px;height:8px;margin-right:6px;background-color:#86909c;border-radius:50%;animation:dot-bounce-7f2cec94 1.4s ease-in-out infinite both}.dot[data-v-7f2cec94]:first-child{animation-delay:-.32s}.dot[data-v-7f2cec94]:nth-child(2){animation-delay:-.16s}.dot[data-v-7f2cec94]:nth-child(3){animation-delay:0s}@keyframes dot-bounce-7f2cec94{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-window-message-ai[data-v-7f2cec94]{display:flex;gap:12px;align-items:flex-start;max-width:100%;border-radius:12px;background:#f6f8fc;padding:8px 12px}.ai-render[data-v-7f2cec94]{width:100%}.ai-thinking[data-v-7f2cec94]{margin-bottom:8px}.ai-thinking-time[data-v-7f2cec94]{border-radius:9px;background:#ecedf4;color:#86909c;font-family:"Alibaba PuHuiTi 2.0";font-size:16px;font-style:normal;font-weight:500;padding:0 30px 0 30px;height:28px;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.ai-thinking-time[data-v-7f2cec94]:before{left:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAMAAAC6V+0/AAAAYFBMVEUAAADu8P/u8P/u8P/u8P/u8P/u8P/s7//v8v/s7//v7//t7//v8f/u8P/l6P/Iz/+stv+1v//S1/9Xbf/b3/+/x/+irv/b4P+Zpv9yhP+Pnv+Glv+Qnv99jf9hdf/R1/8RfKwjAAAADXRSTlMA36/vz5CAYF9QEHBvMEqmkAAAAM9JREFUGNNNkIkSgyAMRAG1niEoouDV///LJvFqZmDgkZ0Nq6SazmiA3FTqrTqDq/SDC7nbE39O9iHQA/S0HL0UzEppG3gfpbsmqPnwXcFtsAQ+Zw032ol7A2vBkaRVRsRpOPbN44r8YFTOinmxKbpjjKPMpQAGmCx6R/6+h2gRgCDe0BGcgKEWecQUpzSuMll+Gs07+rR63C+j9hppDoFdHG2VaiQMXMAtsAUx54jeb87yzeoOibwDh2L/Y3qrUFeV+kYZR/Rgk5OD6Rq5/QAhCBJvrLC2lgAAAABJRU5ErkJggg==) no-repeat;background-size:cover}.ai-thinking-time[data-v-7f2cec94]:after,.ai-thinking-time[data-v-7f2cec94]:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:16px;height:16px}.ai-thinking-time[data-v-7f2cec94]:after{right:6px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAACDj5eGkJyGj5uFj5uGj5uAj5/flAqRAAAAB3RSTlMAIN+ggHAQx7ts8QAAAClJREFUCNdjIBWwCUAZQooQmlHZSAAiYMCsCBFgYAALsRowMDA7kGY8AIDkAfQcVWSDAAAAAElFTkSuQmCC) no-repeat;background-size:cover}.ai-thinking-content[data-v-7f2cec94]{color:#86909c;font-size:14px;padding:8px 0 8px 12px}.ai-content[data-v-7f2cec94],.ai-thinking-content[data-v-7f2cec94]{font-family:"Alibaba PuHuiTi 2.0";font-style:normal;font-weight:400;line-height:24px}.ai-content[data-v-7f2cec94]{color:#4e5969;font-size:16px}.markdown-body[data-v-7f2cec94]{word-wrap:break-word}.markdown-body[data-v-7f2cec94] h1,.markdown-body[data-v-7f2cec94] h2,.markdown-body[data-v-7f2cec94] h3,.markdown-body[data-v-7f2cec94] h4{margin:16px 0 8px 0;font-weight:600;line-height:1.4;color:#1f2937}.markdown-body[data-v-7f2cec94] h1{font-size:24px;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.markdown-body[data-v-7f2cec94] h2{font-size:20px;border-bottom:1px solid #e5e7eb;padding-bottom:6px}.markdown-body[data-v-7f2cec94] h3{font-size:18px}.markdown-body[data-v-7f2cec94] h4{font-size:16px}.markdown-body[data-v-7f2cec94] ol{list-style-type:decimal;padding-left:24px;margin:8px 0}.markdown-body[data-v-7f2cec94] ul{list-style-type:disc;padding-left:24px;margin:8px 0}.markdown-body[data-v-7f2cec94] li{display:list-item}.markdown-body[data-v-7f2cec94] code{background-color:rgba(175,184,193,.2);border-radius:3px;font-size:85%;margin:0;padding:.2em .4em;font-family:Monaco,Menlo,Consolas,Courier New,monospace;color:#e83e8c}.markdown-body[data-v-7f2cec94] pre{background-color:#f6f8fa;border-radius:6px;padding:16px;overflow:auto;margin:12px 0;border:1px solid #e1e4e8}.markdown-body[data-v-7f2cec94] pre code{background-color:transparent;border:0;display:inline;line-height:inherit;margin:0;overflow:visible;padding:0;word-wrap:normal;color:#24292e;font-size:14px}.markdown-body[data-v-7f2cec94] table{border:1px solid #dfe2e5;max-height:500px;margin:12px 0;border-collapse:collapse;width:100%;display:block;overflow:auto}.markdown-body[data-v-7f2cec94] table::-webkit-scrollbar{height:6px}.markdown-body[data-v-7f2cec94] table::-webkit-scrollbar-track{background-color:#f3f4f6}.markdown-body[data-v-7f2cec94] table::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:3px}.markdown-body[data-v-7f2cec94] table::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.markdown-body[data-v-7f2cec94] table td,.markdown-body[data-v-7f2cec94] table th{border:1px solid #dfe2e5;padding:10px 14px;text-align:left}.markdown-body[data-v-7f2cec94] table th{background-color:#f3f4f6;font-weight:600;color:#374151}.markdown-body[data-v-7f2cec94] table tr:nth-child(2n){background-color:#f9fafb}.markdown-body[data-v-7f2cec94] .markdown-table tr:hover{background-color:#f3f4f6;transition:background-color .2s}.markdown-body[data-v-7f2cec94] ol,.markdown-body[data-v-7f2cec94] ul{padding-left:24px;margin:8px 0}.markdown-body[data-v-7f2cec94] li{margin:4px 0;line-height:1.6}.markdown-body[data-v-7f2cec94] strong{font-weight:600;color:#1f2937}.markdown-body[data-v-7f2cec94] em{font-style:italic}.markdown-body[data-v-7f2cec94] del{text-decoration:line-through;opacity:.7}.markdown-body[data-v-7f2cec94] blockquote{border-left:4px solid #dfe2e5;padding-left:16px;margin:12px 0;color:#6b7280;font-style:italic}.markdown-body[data-v-7f2cec94] a{color:#3b82f6;text-decoration:none}.markdown-body[data-v-7f2cec94] a:hover{text-decoration:underline;color:#2563eb}.markdown-body[data-v-7f2cec94] img{max-width:100%;border-radius:6px;margin:12px 0}.markdown-body[data-v-7f2cec94] hr{border:none;border-top:1px solid #e5e7eb;margin:16px 0}.markdown-body[data-v-7f2cec94] br{line-height:.8em}.chat-window-empty[data-v-dfc4454c]{width:300px;height:300px;background:url(img/empty.f36cb82e.png) no-repeat;background-size:cover;margin:auto}.chat-window-content[data-v-dfc4454c]{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.scrollbar-hide[data-v-dfc4454c]::-webkit-scrollbar{display:none}.scrollbar-hide[data-v-dfc4454c]{-ms-overflow-style:none;scrollbar-width:none}[data-v-2cd84254] .el-textarea__inner{border:none!important;padding:0 5px;font-family:PingFang SC!important}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar{width:6px;height:6px}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar-thumb{background:rgba(0,0,0,.1);border-radius:3px}[data-v-2cd84254] .el-textarea__inner::-webkit-scrollbar-track{background:transparent}.chat-window-footer[data-v-2cd84254]{padding:16px}.chat-window-textarea[data-v-2cd84254]{min-height:99px;max-height:180px;border-radius:8px;border:1px solid #f2f2f2;background:#fff;display:flex;flex-direction:column}.chat-window-input[data-v-2cd84254]{padding:10px 12px;font-size:16px;font-family:PingFang SC;box-sizing:border-box}.chat-window-bar[data-v-2cd84254]{display:flex;justify-content:flex-end;padding:8px}.chat-window-send[data-v-2cd84254]{width:70px;height:36px;flex-shrink:0;border-radius:6px;background:rgba(43,128,246,.1);display:flex;align-items:center;justify-content:center;cursor:pointer}.chat-overlay[data-v-bc074e36]{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;z-index:9999;pointer-events:none}.chat-window[data-v-bc074e36]{width:480px;height:740px;border-radius:14px;background:#fff;box-shadow:0 2px 20px 0 rgba(0,0,0,.16);position:absolute;bottom:0;right:60px;overflow:hidden;display:flex;flex-direction:column;z-index:10000}.hidden-audio[data-v-67cef8d6]{position:absolute;left:-9999px;opacity:0;pointer-events:none}.chat[data-v-67cef8d6]{position:fixed;bottom:20px;right:10px;z-index:10001}
package/dist/index.umd.js CHANGED
@@ -28614,7 +28614,7 @@ if (typeof window !== 'undefined') {
28614
28614
  var es_iterator_constructor = __webpack_require__(8111);
28615
28615
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
28616
28616
  var es_iterator_for_each = __webpack_require__(7588);
28617
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/ChatWindow.vue?vue&type=template&id=244aa1c1&scoped=true
28617
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/ChatWindow.vue?vue&type=template&id=67cef8d6&scoped=true
28618
28618
  var render = function render() {
28619
28619
  var _vm = this,
28620
28620
  _c = _vm._self._c;
@@ -29177,8 +29177,8 @@ var UserMessage_component = normalizeComponent(
29177
29177
  )
29178
29178
 
29179
29179
  /* harmony default export */ var UserMessage = (UserMessage_component.exports);
29180
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/AiMessage.vue?vue&type=template&id=0d2964f2&scoped=true
29181
- var AiMessagevue_type_template_id_0d2964f2_scoped_true_render = function render() {
29180
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/AiMessage.vue?vue&type=template&id=7f2cec94&scoped=true
29181
+ var AiMessagevue_type_template_id_7f2cec94_scoped_true_render = function render() {
29182
29182
  var _vm = this,
29183
29183
  _c = _vm._self._c;
29184
29184
  return _c('div', {
@@ -29193,39 +29193,28 @@ var AiMessagevue_type_template_id_0d2964f2_scoped_true_render = function render(
29193
29193
  staticClass: "dot"
29194
29194
  }), _c('div', {
29195
29195
  staticClass: "dot"
29196
- })]) : _vm._e(), _vm._l(_vm.mergedTimeline, function (item) {
29197
- return _c('div', {
29198
- key: item.id,
29199
- staticClass: "ai-timeline-item"
29200
- }, [item.type === 'thinking' ? _c('div', {
29201
- staticClass: "ai-thinking",
29202
- on: {
29203
- "click": function ($event) {
29204
- return _vm.$emit('thinking-toggle');
29205
- }
29206
- }
29207
- }, [_c('div', {
29208
- staticClass: "ai-thinking-time"
29209
- }, [_vm._v(" " + _vm._s(_vm.message.time ? `思考用时 ${_vm.message.time} 秒` : '思考中...') + " ")]), _vm.thinkingExpanded ? _c('div', {
29210
- staticClass: "ai-thinking-content"
29211
- }, [_vm._v(" " + _vm._s(item.text) + " ")]) : _vm._e()]) : item.type === 'tool' ? _c('div', {
29212
- staticClass: "ai-tool"
29213
- }, [_c('div', {
29214
- staticClass: "ai-tool-header"
29215
- }, [_vm._v(" 调用工具:" + _vm._s(item.tool.name) + " ")]), _c('details', [_c('summary', [_vm._v("参数")]), _c('pre', [_vm._v(_vm._s(item.tool.args))])]), item.tool.result ? _c('details', [_c('summary', [_vm._v("结果")]), _c('pre', [_vm._v(_vm._s(item.tool.result))])]) : _vm._e()]) : item.type === 'content' ? _c('div', {
29216
- staticClass: "ai-content markdown-body",
29217
- domProps: {
29218
- "innerHTML": _vm._s(_vm.renderMarkdown(item.text))
29219
- },
29220
- on: {
29221
- "click": _vm.handleLinkClick
29196
+ })]) : _vm._e(), _vm.message.thinking ? _c('div', {
29197
+ staticClass: "ai-thinking",
29198
+ on: {
29199
+ "click": function ($event) {
29200
+ return _vm.$emit('thinking-toggle');
29222
29201
  }
29223
- }) : _vm._e(), item.type === 'protocol_error' ? _c('div', {
29224
- staticClass: "ai-protocol-error"
29225
- }, [_vm._v(" " + _vm._s(item.raw) + " ")]) : _vm._e()]);
29226
- })], 2)]);
29202
+ }
29203
+ }, [_c('div', {
29204
+ staticClass: "ai-thinking-time"
29205
+ }, [_vm._v(_vm._s(_vm.message.time ? `思考用时${_vm.message.time}秒` : '思考中...'))]), _vm.thinkingExpanded ? _c('div', {
29206
+ staticClass: "ai-thinking-content"
29207
+ }, [_vm._v(_vm._s(_vm.message.thinking))]) : _vm._e()]) : _vm._e(), _c('div', {
29208
+ staticClass: "ai-content markdown-body",
29209
+ domProps: {
29210
+ "innerHTML": _vm._s(_vm.renderedContent)
29211
+ },
29212
+ on: {
29213
+ "click": _vm.handleLinkClick
29214
+ }
29215
+ })])]);
29227
29216
  };
29228
- var AiMessagevue_type_template_id_0d2964f2_scoped_true_staticRenderFns = [];
29217
+ var AiMessagevue_type_template_id_7f2cec94_scoped_true_staticRenderFns = [];
29229
29218
 
29230
29219
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.url-search-params.delete.js
29231
29220
  var web_url_search_params_delete = __webpack_require__(4603);
@@ -31011,6 +31000,8 @@ var lib = __webpack_require__(336);
31011
31000
 
31012
31001
 
31013
31002
 
31003
+
31004
+ // 创建自定义渲染器
31014
31005
  const renderer = new d.Renderer();
31015
31006
 
31016
31007
  // 自定义链接渲染
@@ -31030,8 +31021,8 @@ renderer.link = function ({
31030
31021
  }
31031
31022
  };
31032
31023
  d.setOptions({
31033
- renderer,
31034
- highlight(code, lang) {
31024
+ renderer: renderer,
31025
+ highlight: function (code, lang) {
31035
31026
  if (lang && es.getLanguage(lang)) {
31036
31027
  return es.highlight(code, {
31037
31028
  language: lang
@@ -31054,34 +31045,19 @@ d.setOptions({
31054
31045
  thinkingExpanded() {
31055
31046
  return this.message.thinkingExpanded !== false;
31056
31047
  },
31048
+ renderedContent() {
31049
+ return d.parse(this.message.content || '');
31050
+ },
31057
31051
  isLoading() {
31058
31052
  return this.message.loading === true;
31059
- },
31060
- mergedTimeline() {
31061
- const result = [];
31062
- let last = null;
31063
- for (const item of this.message.timeline || []) {
31064
- if (item.type === 'content') {
31065
- if (last && last.type === 'content') {
31066
- last.text += item.text;
31067
- } else {
31068
- last = {
31069
- ...item
31070
- };
31071
- result.push(last);
31072
- }
31073
- } else {
31074
- last = null;
31075
- result.push(item);
31076
- }
31077
- }
31078
- return result;
31053
+ }
31054
+ },
31055
+ watch: {
31056
+ thinkStatus(newVal, oldVal) {
31057
+ console.log('thinkStatus 变化:', newVal, oldVal);
31079
31058
  }
31080
31059
  },
31081
31060
  methods: {
31082
- renderMarkdown(text) {
31083
- return d.parse(text || '');
31084
- },
31085
31061
  handleLinkClick(event) {
31086
31062
  const link = event.target.closest('a');
31087
31063
  if (!link) return;
@@ -31111,10 +31087,10 @@ d.setOptions({
31111
31087
  });
31112
31088
  ;// ./components/AiMessage.vue?vue&type=script&lang=js
31113
31089
  /* harmony default export */ var components_AiMessagevue_type_script_lang_js = (AiMessagevue_type_script_lang_js);
31114
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/AiMessage.vue?vue&type=style&index=0&id=0d2964f2&prod&scoped=true&lang=css
31090
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/AiMessage.vue?vue&type=style&index=0&id=7f2cec94&prod&scoped=true&lang=css
31115
31091
  // extracted by mini-css-extract-plugin
31116
31092
 
31117
- ;// ./components/AiMessage.vue?vue&type=style&index=0&id=0d2964f2&prod&scoped=true&lang=css
31093
+ ;// ./components/AiMessage.vue?vue&type=style&index=0&id=7f2cec94&prod&scoped=true&lang=css
31118
31094
 
31119
31095
  ;// ./components/AiMessage.vue
31120
31096
 
@@ -31127,11 +31103,11 @@ d.setOptions({
31127
31103
 
31128
31104
  var AiMessage_component = normalizeComponent(
31129
31105
  components_AiMessagevue_type_script_lang_js,
31130
- AiMessagevue_type_template_id_0d2964f2_scoped_true_render,
31131
- AiMessagevue_type_template_id_0d2964f2_scoped_true_staticRenderFns,
31106
+ AiMessagevue_type_template_id_7f2cec94_scoped_true_render,
31107
+ AiMessagevue_type_template_id_7f2cec94_scoped_true_staticRenderFns,
31132
31108
  false,
31133
31109
  null,
31134
- "0d2964f2",
31110
+ "7f2cec94",
31135
31111
  null
31136
31112
 
31137
31113
  )
@@ -31561,7 +31537,9 @@ const TIME_JUMP_POINTS_URL = '/minio/lingxiaoai/timeJumpPoints.json'; // 语音u
31561
31537
  try {
31562
31538
  // this.ws = new WebSocket('ws://10.2.233.41:9999');
31563
31539
  // 测试
31540
+ // console.log('WS_URL:', WS_URL)
31564
31541
  this.ws = new WebSocket(WS_URL);
31542
+ // this.ws = new WebSocket('ws://192.168.8.87/audio/ws/');
31565
31543
  this.ws.binaryType = 'arraybuffer';
31566
31544
  this.ws.onopen = async () => {
31567
31545
  console.log('WebSocket 连接成功');
@@ -31652,138 +31630,99 @@ const TIME_JUMP_POINTS_URL = '/minio/lingxiaoai/timeJumpPoints.json'; // 语音u
31652
31630
  });
31653
31631
  ;// ./components/utils/StreamParser.js
31654
31632
 
31655
- // utils/StreamParser.js
31656
31633
  class StreamParser {
31657
31634
  constructor(options = {}) {
31658
31635
  this.options = {
31659
31636
  updateInterval: 16,
31637
+ // 每16ms刷新一次(约60fps)
31660
31638
  debug: false,
31661
31639
  ...options
31662
31640
  };
31663
31641
  this.reset();
31664
31642
  }
31643
+
31644
+ // 重置解析器状态
31665
31645
  reset() {
31646
+ this.buffer = '';
31666
31647
  this.contentBuffer = [];
31667
31648
  this.thinkingBuffer = [];
31668
- this.completedThinkingSegments = [];
31669
- this.completedToolCalls = [];
31670
- this.currentToolCall = null;
31671
- this.protocolErrorBuffer = []; // ✅ 新增
31672
-
31673
31649
  this.inTag = false;
31674
31650
  this.tagBuffer = '';
31675
31651
  this.updateTimer = null;
31676
- this.status = 'output'; // thinking | output | tool_call | tool_result
31652
+ this.status = 'output'; // thinking | output
31677
31653
  }
31654
+
31655
+ // 处理接收到的流数据块
31678
31656
  processChunk(chunk, callback) {
31679
31657
  if (!chunk) return;
31680
31658
  this.parseContent(chunk, callback);
31681
31659
  }
31660
+
31661
+ // 核心内容解析,支持 <think> 标签
31682
31662
  parseContent(content, callback) {
31683
31663
  let i = 0;
31684
31664
  while (i < content.length) {
31685
31665
  if (this.inTag) {
31686
- const end = content.indexOf('>', i);
31687
- if (end !== -1) {
31688
- this.tagBuffer += content.slice(i, end + 1);
31666
+ const endIndex = content.indexOf('>', i);
31667
+ if (endIndex !== -1) {
31668
+ this.tagBuffer += content.substring(i, endIndex + 1);
31689
31669
  this.handleTag(this.tagBuffer);
31690
31670
  this.tagBuffer = '';
31691
31671
  this.inTag = false;
31692
- i = end + 1;
31672
+ i = endIndex + 1;
31693
31673
  } else {
31694
- this.tagBuffer += content.slice(i);
31674
+ // 标签未闭合,超过50字符强制输出,防止阻塞
31675
+ this.tagBuffer += content.substring(i);
31676
+ if (this.tagBuffer.length > 50) {
31677
+ this.appendText(this.tagBuffer);
31678
+ this.tagBuffer = '';
31679
+ this.inTag = false;
31680
+ }
31695
31681
  break;
31696
31682
  }
31697
31683
  } else {
31698
- const start = content.indexOf('<', i);
31699
- if (start === -1) {
31700
- this.appendText(content.slice(i));
31701
- break;
31702
- }
31703
- if (start > i) {
31704
- this.appendText(content.slice(i, start));
31705
- }
31706
- const end = content.indexOf('>', start);
31707
- if (end === -1) {
31708
- this.inTag = true;
31709
- this.tagBuffer = content.slice(start);
31684
+ const startIndex = content.indexOf('<', i);
31685
+ if (startIndex !== -1) {
31686
+ if (startIndex > i) this.appendText(content.substring(i, startIndex));
31687
+ const endIndex = content.indexOf('>', startIndex);
31688
+ if (endIndex !== -1) {
31689
+ const tag = content.substring(startIndex, endIndex + 1);
31690
+ this.handleTag(tag);
31691
+ i = endIndex + 1;
31692
+ } else {
31693
+ const nextChar = content[startIndex + 1];
31694
+ if (!/[a-zA-Z/]/.test(nextChar)) {
31695
+ // 很可能不是标签,直接当文本输出
31696
+ this.appendText('<');
31697
+ i = startIndex + 1;
31698
+ } else {
31699
+ this.inTag = true;
31700
+ this.tagBuffer = content.substring(startIndex);
31701
+ break;
31702
+ }
31703
+ }
31704
+ } else {
31705
+ this.appendText(content.substring(i));
31710
31706
  break;
31711
31707
  }
31712
- const tag = content.slice(start, end + 1);
31713
- this.handleTag(tag);
31714
- i = end + 1;
31715
31708
  }
31716
31709
  }
31717
31710
  this.scheduleUpdate(callback);
31718
31711
  }
31712
+
31713
+ // 处理标签
31719
31714
  handleTag(tag) {
31720
31715
  const t = tag.toLowerCase();
31721
-
31722
- // ---------- think ----------
31723
- if (t === '<think>') {
31724
- this.status = 'thinking';
31725
- return;
31726
- }
31727
- if (t === '</think>') {
31728
- if (this.thinkingBuffer.length) {
31729
- this.completedThinkingSegments.push(this.thinkingBuffer.join(''));
31730
- this.thinkingBuffer = [];
31731
- }
31732
- this.status = 'output';
31733
- return;
31734
- }
31735
-
31736
- // ---------- tool_call ----------
31737
- if (t.startsWith('<tool_call')) {
31738
- const nameMatch = tag.match(/name\s*=\s*["'](.+?)["']/);
31739
- this.currentToolCall = {
31740
- id: `${Date.now()}-${Math.random()}`,
31741
- name: nameMatch ? nameMatch[1] : 'unknown',
31742
- args: '',
31743
- result: '',
31744
- status: 'calling'
31745
- };
31746
- this.status = 'tool_call';
31747
- return;
31748
- }
31749
- if (t === '</tool_call>') {
31750
- this.status = 'output';
31751
- return;
31752
- }
31753
-
31754
- // ---------- tool_result ----------
31755
- if (t === '<tool_result>') {
31756
- this.status = 'tool_result';
31757
- return;
31758
- }
31759
- if (t === '</tool_result>') {
31760
- if (this.currentToolCall) {
31761
- this.currentToolCall.status = 'done';
31762
- this.completedToolCalls.push(this.currentToolCall);
31763
- this.currentToolCall = null;
31764
- }
31765
- this.status = 'output';
31766
- return;
31767
- }
31768
-
31769
- // ---------- ❌ 协议错误 ----------
31770
- if (t.startsWith('<') && t.endsWith('>')) {
31771
- this.protocolErrorBuffer.push(tag);
31772
- this.status = 'output';
31773
- }
31716
+ if (t === '<think>') this.status = 'thinking';else if (t === '</think>') this.status = 'output';
31774
31717
  }
31718
+
31719
+ // 添加文本到缓冲区
31775
31720
  appendText(text) {
31776
31721
  if (!text) return;
31777
- if (this.status === 'thinking') {
31778
- this.thinkingBuffer.push(text);
31779
- } else if (this.status === 'tool_call') {
31780
- this.currentToolCall && (this.currentToolCall.args += text);
31781
- } else if (this.status === 'tool_result') {
31782
- this.currentToolCall && (this.currentToolCall.result += text);
31783
- } else {
31784
- this.contentBuffer.push(text);
31785
- }
31722
+ if (this.status === 'thinking') this.thinkingBuffer.push(text);else this.contentBuffer.push(text);
31786
31723
  }
31724
+
31725
+ // 防抖刷新
31787
31726
  scheduleUpdate(callback) {
31788
31727
  if (this.updateTimer) return;
31789
31728
  this.updateTimer = setTimeout(() => {
@@ -31791,39 +31730,32 @@ class StreamParser {
31791
31730
  this.updateTimer = null;
31792
31731
  }, this.options.updateInterval);
31793
31732
  }
31733
+
31734
+ // 刷新缓冲区
31794
31735
  flush(callback) {
31795
31736
  if (!callback) return;
31796
31737
  const result = {
31797
- thinkingSegment: null,
31798
- toolCall: null,
31799
- content: null,
31800
- protocolError: null,
31738
+ thinking: this.thinkingBuffer.length ? this.thinkingBuffer.join('') : null,
31739
+ content: this.contentBuffer.length ? this.contentBuffer.join('') : null,
31801
31740
  status: this.status
31802
31741
  };
31803
- if (this.protocolErrorBuffer.length) {
31804
- result.protocolError = this.protocolErrorBuffer.join('\n');
31805
- this.protocolErrorBuffer = [];
31806
- }
31807
- if (this.completedThinkingSegments.length) {
31808
- result.thinkingSegment = this.completedThinkingSegments.shift();
31809
- }
31810
- if (this.completedToolCalls.length) {
31811
- result.toolCall = this.completedToolCalls.shift();
31812
- }
31813
- if (this.contentBuffer.length) {
31814
- result.content = this.contentBuffer.join('');
31815
- this.contentBuffer = [];
31816
- }
31742
+ this.thinkingBuffer = [];
31743
+ this.contentBuffer = [];
31817
31744
  callback(result);
31818
31745
  }
31746
+
31747
+ // 完成解析
31819
31748
  finish(callback) {
31820
- if (this.thinkingBuffer.length) {
31821
- this.completedThinkingSegments.push(this.thinkingBuffer.join(''));
31822
- this.thinkingBuffer = [];
31749
+ if (this.inTag && this.tagBuffer) {
31750
+ this.appendText(this.tagBuffer);
31751
+ this.tagBuffer = '';
31752
+ this.inTag = false;
31823
31753
  }
31824
31754
  this.flush(callback);
31825
31755
  if (this.updateTimer) clearTimeout(this.updateTimer);
31826
31756
  }
31757
+
31758
+ // 销毁解析器
31827
31759
  destroy() {
31828
31760
  if (this.updateTimer) clearTimeout(this.updateTimer);
31829
31761
  this.reset();
@@ -31873,7 +31805,9 @@ const getCookie = cname => {
31873
31805
  type: 'ai',
31874
31806
  sender: 'AI',
31875
31807
  time: '',
31876
- timeline: [],
31808
+ thinking: '',
31809
+ charts: [],
31810
+ content: '',
31877
31811
  loading: true,
31878
31812
  thinkingExpanded: true
31879
31813
  };
@@ -31906,7 +31840,7 @@ const getCookie = cname => {
31906
31840
  const controller = new AbortController();
31907
31841
  try {
31908
31842
  const startTime = Date.now();
31909
- const token = getCookie('bonyear-access_token') || `b6dd936e-4b8b-4e10-ba70-573eb35673f1`;
31843
+ const token = getCookie('bonyear-access_token') || `44e7f112-63f3-429d-908d-2c97ec380de2`;
31910
31844
  const response = await fetch(API_URL, {
31911
31845
  method: 'POST',
31912
31846
  signal: controller.signal,
@@ -31986,38 +31920,27 @@ const getCookie = cname => {
31986
31920
  */
31987
31921
  handleStreamUpdate(result) {
31988
31922
  if (!this.currentMessage) return;
31989
- this.currentMessage.loading = false;
31990
- if (result.protocolError) {
31991
- this.currentMessage.timeline.push({
31992
- type: 'protocol_error',
31993
- id: Date.now() + Math.random(),
31994
- raw: result.protocolError
31995
- });
31923
+ console.log('收到更新:', result);
31924
+ if (this.currentMessage.loading) {
31925
+ this.currentMessage.loading = false;
31996
31926
  }
31997
- if (result.thinkingSegment) {
31998
- this.currentMessage.timeline.push({
31999
- type: 'thinking',
32000
- id: Date.now() + Math.random(),
32001
- text: result.thinkingSegment
32002
- });
32003
- }
32004
- if (result.toolCall) {
32005
- this.currentMessage.timeline.push({
32006
- type: 'tool',
32007
- id: result.toolCall.id,
32008
- tool: result.toolCall
32009
- });
31927
+ // 更新思考内容
31928
+ if (result.thinking) {
31929
+ this.currentMessage.thinking += result.thinking;
32010
31930
  }
31931
+
31932
+ // 更新回复内容
31933
+ console.log('更新回复内容:', result.content);
32011
31934
  if (result.content) {
32012
- this.currentMessage.timeline.push({
32013
- type: 'content',
32014
- id: Date.now() + Math.random(),
32015
- text: result.content
32016
- });
31935
+ this.currentMessage.content += result.content;
32017
31936
  }
32018
31937
 
32019
31938
  // 更新状态
32020
- this.avaterStatus = result.status === 'thinking' ? 'thinking' : 'output';
31939
+ if (result.status === 'thinking') {
31940
+ this.avaterStatus = 'thinking';
31941
+ } else {
31942
+ this.avaterStatus = 'output';
31943
+ }
32021
31944
 
32022
31945
  // 触发视图更新
32023
31946
  this.$forceUpdate();
@@ -32099,7 +32022,8 @@ const startTime = null;
32099
32022
  currentY: 20,
32100
32023
  initialX: 10,
32101
32024
  initialY: 20,
32102
- hasMoved: false
32025
+ hasMoved: false,
32026
+ timeJumpPoints: []
32103
32027
  };
32104
32028
  },
32105
32029
  computed: {
@@ -32122,6 +32046,7 @@ const startTime = null;
32122
32046
  if (this.appendToBody) {
32123
32047
  this.appendToBodyHandler();
32124
32048
  }
32049
+ this.fetchTimeJumpPoints();
32125
32050
  this.$nextTick(() => {
32126
32051
  const chatEl = this.$el;
32127
32052
  const style = window.getComputedStyle(chatEl);
@@ -32218,41 +32143,42 @@ const startTime = null;
32218
32143
  }
32219
32144
  });
32220
32145
  },
32146
+ async fetchTimeJumpPoints() {
32147
+ try {
32148
+ const res = await fetch(TIME_JUMP_POINTS_URL);
32149
+ const data = await res.json();
32150
+ this.timeJumpPoints = Array.isArray(data) ? data : [];
32151
+ console.log('时间跳转点加载完成:', this.timeJumpPoints);
32152
+ } catch (err) {
32153
+ console.error('获取时间跳转点失败:', err);
32154
+ this.timeJumpPoints = [];
32155
+ }
32156
+ },
32221
32157
  // 音频时间更新处理
32222
32158
  onTimeUpdate() {
32223
32159
  const audio = this.$refs.audioPlayer;
32224
32160
  const currentTime = audio.currentTime;
32225
- if (!this.jumpedTimePoints) {
32226
- this.jumpedTimePoints = new Set();
32227
- }
32228
- fetch(TIME_JUMP_POINTS_URL).then(response => response.json()).then(data => {
32229
- console.log('时间跳转点:', data);
32230
- console.log('当前时间:', currentTime);
32231
- data.forEach(point => {
32232
- console.log('跳转点:', point);
32233
- console.log('跳转时间:', point.time);
32234
- console.log('当前时间:', currentTime);
32235
- console.log('是否已跳转:', this.jumpedTimePoints.has(point.time));
32236
- console.log('跳转时间范围:', currentTime >= point.time && currentTime < point.time + 1);
32237
- if (currentTime >= point.time && currentTime < point.time + 1 && !this.jumpedTimePoints.has(point.time)) {
32238
- this.jumpedTimePoints.add(point.time);
32239
- this.$appOptions.store.dispatch('tags/addTagview', {
32240
- path: point.url,
32241
- fullPath: point.url,
32242
- label: point.title,
32243
- name: point.title,
32244
- meta: {
32245
- title: point.title
32246
- },
32247
- query: {},
32248
- params: {}
32249
- });
32250
- this.$appOptions.router.push({
32251
- path: point.url
32252
- });
32253
- }
32254
- });
32255
- }).catch(error => console.error('获取时间跳转点失败:', error));
32161
+ if (!this.timeJumpPoints.length) return;
32162
+ this.timeJumpPoints.forEach(point => {
32163
+ if (currentTime >= point.time && currentTime < point.time + 1 && !this.jumpedTimePoints.has(point.time)) {
32164
+ console.log('触发跳转:', point.url);
32165
+ this.jumpedTimePoints.add(point.time);
32166
+ this.$appOptions.store.dispatch('tags/addTagview', {
32167
+ path: point.url,
32168
+ fullPath: point.url,
32169
+ label: point.title,
32170
+ name: point.title,
32171
+ meta: {
32172
+ title: point.title
32173
+ },
32174
+ query: {},
32175
+ params: {}
32176
+ });
32177
+ this.$appOptions.router.push({
32178
+ path: point.url
32179
+ });
32180
+ }
32181
+ });
32256
32182
  },
32257
32183
  onAudioEnded() {
32258
32184
  this.robotStatus = 'leaving';
@@ -32263,10 +32189,10 @@ const startTime = null;
32263
32189
  });
32264
32190
  ;// ./components/ChatWindow.vue?vue&type=script&lang=js
32265
32191
  /* harmony default export */ var components_ChatWindowvue_type_script_lang_js = (ChatWindowvue_type_script_lang_js);
32266
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/ChatWindow.vue?vue&type=style&index=0&id=244aa1c1&prod&scoped=true&lang=css
32192
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-54.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-54.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-54.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./components/ChatWindow.vue?vue&type=style&index=0&id=67cef8d6&prod&scoped=true&lang=css
32267
32193
  // extracted by mini-css-extract-plugin
32268
32194
 
32269
- ;// ./components/ChatWindow.vue?vue&type=style&index=0&id=244aa1c1&prod&scoped=true&lang=css
32195
+ ;// ./components/ChatWindow.vue?vue&type=style&index=0&id=67cef8d6&prod&scoped=true&lang=css
32270
32196
 
32271
32197
  ;// ./components/ChatWindow.vue
32272
32198
 
@@ -32283,7 +32209,7 @@ var ChatWindow_component = normalizeComponent(
32283
32209
  staticRenderFns,
32284
32210
  false,
32285
32211
  null,
32286
- "244aa1c1",
32212
+ "67cef8d6",
32287
32213
  null
32288
32214
 
32289
32215
  )