Files
qhmes/deploy-qhmes/frontend/js/chat-DuCSnM5H.js

4 lines
33 KiB
Java
Raw Normal View History

2026-05-15 11:34:12 +08:00
var ct=Object.defineProperty,dt=Object.defineProperties;var vt=Object.getOwnPropertyDescriptors;var Fe=Object.getOwnPropertySymbols;var pt=Object.prototype.hasOwnProperty,ft=Object.prototype.propertyIsEnumerable;var Re=(i,T,l)=>T in i?ct(i,T,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[T]=l,D=(i,T)=>{for(var l in T||(T={}))pt.call(T,l)&&Re(i,l,T[l]);if(Fe)for(var l of Fe(T))ft.call(T,l)&&Re(i,l,T[l]);return i},He=(i,T)=>dt(i,vt(T));var M=(i,T,l)=>new Promise((W,X)=>{var A=z=>{try{x(l.next(z))}catch(F){X(F)}},$=z=>{try{x(l.throw(z))}catch(F){X(F)}},x=z=>z.done?W(z.value):Promise.resolve(z.value).then(A,$);x((l=l.apply(i,T)).next())});import{f as c,n as xe,d as gt,b as ht,w as pe,o as mt,ah as Q,ar as S,as as p,au as o,ag as L,aC as B,av as le,aF as y,k as w,u as b,G as Y,F as se,aD as fe,at as oe,e as Ue,aB as Ie}from"./vue-vendor-C7Zq48Yl.js";import Ct from"./chatMessage-CDt25ZTi.js";import wt from"./presetQuestion-Dc2H1JYo.js";import{f as h,h as yt,d as _t,M as Tt,b2 as xt}from"./antd-vue-vendor-BPnV8VqP.js";import"./style-B73oiFPg.js";import{av as It,aM as kt,q as St,M as K,bm as Ve,bn as Lt,bo as bt,f as ne,b as Ot,d as Dt}from"./index-BI6CMai0.js";import{c as Mt}from"./index-Dg4HCEvo.js";import"./chatText-C4gWoDxb.js";import"./ImageViewer-CG7dKb6F.js";import"./JeecgToolExec-CmPLPOlm.js";import"./ChartRender-CBSgK0U5.js";import"./LineMulti-CtYwss5s.js";import"./useECharts-9qzd7Dce.js";import"./useTimeout-DDl4l82I.js";import"./vxe-table-vendor-B88kchpX.js";import"./echarts-6xk1er_c.js";import"./Gauge-B_IiN0XO.js";import"./Pie-Css2jUUJ.js";import"./BarAndLine-TnM25Vnx.js";import"./SingleLine-Bu7dNANj.js";import"./knowledge-CcZcIqwT.js";import"./ThinkText-C0AjwXgL.js";import"./ailogo-D9r5yA-q.js";import"./CardTemplate-DbIZYbq2.js";function Et(){const i=c(null);return{scrollRef:i,scrollToBottom:()=>M(null,null,function*(){yield xe(),i.value&&(i.value.scrollTop=i.value.scrollHeight)}),scrollToTop:()=>M(null,null,function*(){yield xe(),i.value&&(i.value.scrollTop=0)}),scrollToBottomIfAtBottom:()=>M(null,null,function*(){yield xe(),i.value&&i.value.scrollHeight-i.value.scrollTop-i.value.clientHeight<=100&&(i.value.scrollTop=i.value.scrollHeight)})}}const qt={class:"chatWrap"},Bt={class:"content"},Nt={key:0,class:"header-title"},At={class:"title-content"},zt={class:"header-actions"},Ft={key:0,class:"header-advertisint"},Rt={class:"main"},Ht={key:0,class:"chatContentArea"},Ut={class:"footer"},Vt={class:"topArea"},Qt={class:"bottomArea"},Kt={key:0,class:"textarea-top"},$t=["src","onClick"],Gt=["onClick"],Zt={key:1,class:"file-card-container",style:{display:"flex",gap:"8px","flex-wrap":"wrap"}},Wt={class:"file-card-icon"},Jt=["src","onClick"],jt={class:"file-card-info"},Pt=["title"],Yt={class:"file-size"},Xt=["onClick"],e1={key:0,class:"file-card"},t1={class:"file-card-icon"},a1={class:"file-card-info"},l1=["title"],s1={class:"file-size"},o1=["onClick"],n1={class:"textarea-bottom"},r1={class:"textarea-action-bar"},i1={class:"left-actions"},u1={style:{display:"flex","align-items":"center"}},c1={style:{display:"flex","align-items":"center"}},d1={class:"right-actions"},v1=gt({__name:"chat",props:["uuid","prologue","formState","url","type","historyData","chatTitle","presetQuestion","quickCommandData","showAdvertising","hasExtraFlowInputs","conversationSettings","sessionType"],emits:["save","reload-message-title","edit-settings"],setup(i,{emit:T}){h.config({prefixCls:"ai-chat-message"});const l=i,W=T,{scrollRef:X,scrollToBottom:A}=Et(),$=c(""),x=c(!1),z=c(null),F=c(l.chatTitle),r=c([]),I=c({}),G=c(!0),u=c(l.uuid),Z=c(""),re=c(""),{getIsMobile:Qe}=It(),ie=Ue(()=>r.value.filter(e=>e.inversion!="user"&&!!e.conversationOptions)),Ke=Ue(()=>Qe.value?"来说点什么吧...":"来说点什么吧...Shift + Enter = 换行"),ke=kt(),ge=c(!1),$e=St().uploadUrl,Se=c(`${$e}/airag/chat/upload`),ue=c(!1),he=c(!1),R=c(!1),J=c(!1),Le=c(""),j=c(!1),H=c(!1),be=c(""),q=c(!1),ce=c(!1),me=c(""),E=c([]),O=c([]),Ce=c("");function Ge(e){e.key==="Enter"&&!e.shiftKey&&(e.preventDefault(),Oe())}function Oe(){let e=$.value;!e||e.trim()===""||($.va
`);for(let f of s)if(f.startsWith("data:")){let k=f.replace("data:","").trim();if(!k)continue;if(!k.endsWith("}")){m=m+k;continue}m="";try{k.indexOf(":::card:::")!==-1&&(k=k.replace(/\s+/g,""));let V=JSON.parse(k);yield Ee(V,v,C,t).then(ae=>{C=ae.returnText,v=ae.conversationId})}catch(V){}}else{if(!f)continue;if(!f.endsWith("}")){m=m+f;continue}m="";try{f.indexOf(":::card:::")!==-1&&(f=f.replace(/\s+/g,""));let k=JSON.parse(f);yield Ee(k,v,C,t).then(V=>{C=V.returnText,v=V.conversationId})}catch(k){}}}if(!C&&ue&&r.value.length>1){const _=r.value[r.value.length-1];_&&_.inversion==="ai"&&_.content==="请稍后"&&(r.value.splice(r.value.length-1,1),r.value.splice(r.value.length-1,1)),localStorage.removeItem("chat_requestId_"+u.value),x.value=!1}})}function tt(){return M(this,null,function*(){var t;let e=localStorage.getItem("chat_requestId_"+u.value);if(e){let a=JSON.parse(e),n=a.message,v=a.requestId;const m=yield ne.get({url:"/airag/chat/receive/"+v,adapter:"fetch",responseType:"stream",timeout:300*1e3},{isTransformResponse:!1}).catch(C=>M(null,null,function*(){x.value=!1,localStorage.removeItem("chat_requestId_"+u.value)}));if(m&&n){x.value=!0,ue.value=!0,ee(u.value,{dateTime:new Date().toLocaleString(),content:n,images:g.value?g.value:[],inversion:"user",error:!1,conversationOptions:null,requestOptions:{prompt:n,options:null},eventType:"message"});let C={};const _=(t=ie.value[ie.value.length-1])==null?void 0:t.conversationOptions;_&&G.value&&(C=D({},_)),ee(u.value,{dateTime:new Date().toLocaleString(),content:"请稍后",loading:!1,inversion:"ai",error:!1,conversationOptions:null,requestOptions:{prompt:n,options:D({},C)},referenceKnowledge:[],eventType:"message"}),C.message=n,A(),yield Ae(m,C)}else x.value=!1,localStorage.removeItem("chat_requestId_"+u.value),ue.value=!1}else ue.value=!1})}pe(()=>l.prologue,e=>{try{e&&de(e)}catch(t){}}),pe(()=>l.presetQuestion,e=>{de(l.prologue)}),pe(()=>l.formState,e=>{try{e&&(I.value=e,ze())}catch(t){}},{deep:!0,immediate:!0});function at(){W("edit-settings")}function lt(){R.value=!R.value,R.value?h.success("已开启联网搜索"):h.info("已关闭联网搜索")}function st(){H.value=!H.value,H.value?h.success("已开启深度思考"):h.info("已关闭深度思考")}function ze(){if(I.value&&I.value.metadata)try{const e=typeof I.value.metadata=="string"?JSON.parse(I.value.metadata):I.value.metadata;ce.value=e.izDraw==="1",q.value=e.izDraw==="1",me.value=e.drawModelId,e&&e.modelInfo?(Le.value=e.modelInfo.provider||"",be.value=e.modelInfo.modelName||"",J.value=Le.value==="QWEN",j.value=be.value==="deepseek-reasoner"):(J.value=!1,j.value=!1)}catch(e){J.value=!1,j.value=!1}else J.value=!1,j.value=!1,ce.value=!1}function ot(){q.value=!q.value,q.value?h.success("已开启生成图片"):h.info("已关闭生成图片")}function nt(e){const t=e.name,a=t.substring(t.lastIndexOf(".")+1).toLowerCase();return["txt","pdf","docx","doc","pptx","ppt","xlsx","xls","md"].indexOf(a)===-1?(h.warning("不支持该文件类型上传,请上传 txt, pdf, docx, doc, pptx, ppt, xlsx, xls, md 格式文件"),!1):!0}function rt(e){var n;let{file:t,fileList:a}=e;if(O.value=a,t.status==="error"||t.response&&t.response.code==500){h.error(((n=t.response)==null?void 0:n.message)||`${t.name} 上传失败,请查看服务端日志`);return}E.value=O.value.filter(v=>v.status==="done"&&v.response).map(v=>v.response.message)}function it(e){O.value.splice(e,1),E.value=O.value.filter(t=>t.status==="done"&&t.response).map(t=>t.response.message)}return pe(()=>l.historyData,e=>{try{e&&e.length>0?(r.value=yt(e),r.value[0]&&(Z.value=r.value[0].topicId)):(r.value=[],F.value=l.chatTitle),(l.prologue||l.presetQuestion)&&l.chatTitle&&de(l.prologue),tt()}catch(t){}},{deep:!0,immediate:!0}),mt(()=>{A(),g.value=[],N.value=[],E.value=[],O.value=[],ze()}),(e,t)=>{const a=Q("a-button"),n=Q("a-textarea"),v=Q("a-upload"),m=Q("a-menu-item"),C=Q("a-menu"),_=Q("a-dropdown"),P=Q("a-divider"),d=Q("a-tooltip");return p(),S("div",qt,[o("div",Bt,[i.type==="view"&&F.value?(p(),S("div",Nt,[o("div",At,[o("span",null,le(F.value),1),i.hasExtraFlowInputs