@next-bricks/ai 1.32.8 → 1.32.9

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.
Files changed (59) hide show
  1. package/dist/bricks.json +1 -1
  2. package/dist/chunks/{1045.25d6e587.js → 1045.d50bd8ce.js} +2 -2
  3. package/dist/chunks/{1045.25d6e587.js.map → 1045.d50bd8ce.js.map} +1 -1
  4. package/dist/chunks/{114.5f3aa4c2.js → 114.983654eb.js} +2 -2
  5. package/dist/chunks/{114.5f3aa4c2.js.map → 114.983654eb.js.map} +1 -1
  6. package/dist/chunks/{1370.e8101b88.js → 1370.70034def.js} +2 -2
  7. package/dist/chunks/{1370.e8101b88.js.map → 1370.70034def.js.map} +1 -1
  8. package/dist/chunks/1438.04dccef5.js +2 -0
  9. package/dist/chunks/1438.04dccef5.js.map +1 -0
  10. package/dist/chunks/3171.d7d20cb6.js +2 -0
  11. package/dist/chunks/{3171.fb39d41f.js.map → 3171.d7d20cb6.js.map} +1 -1
  12. package/dist/chunks/{4145.29283973.js → 4145.1fb1e954.js} +2 -2
  13. package/dist/chunks/{4145.29283973.js.map → 4145.1fb1e954.js.map} +1 -1
  14. package/dist/chunks/{4306.a80e205b.js → 4306.128090c0.js} +2 -2
  15. package/dist/chunks/4306.128090c0.js.map +1 -0
  16. package/dist/chunks/{7146.5c65bb50.js → 4765.fbeda196.js} +2 -2
  17. package/dist/chunks/4765.fbeda196.js.map +1 -0
  18. package/dist/chunks/{7218.b743168b.js → 4837.b16a8f15.js} +2 -2
  19. package/dist/chunks/{7218.b743168b.js.map → 4837.b16a8f15.js.map} +1 -1
  20. package/dist/chunks/5552.40005d7f.js +2 -0
  21. package/dist/chunks/{5552.147306b2.js.map → 5552.40005d7f.js.map} +1 -1
  22. package/dist/chunks/{4765.5f38010e.js → 7146.44b5d654.js} +2 -2
  23. package/dist/chunks/7146.44b5d654.js.map +1 -0
  24. package/dist/chunks/{4837.9a769f6d.js → 7218.89f39536.js} +2 -2
  25. package/dist/chunks/{4837.9a769f6d.js.map → 7218.89f39536.js.map} +1 -1
  26. package/dist/chunks/{7733.d6ab6500.js → 7733.9982c1d9.js} +2 -2
  27. package/dist/chunks/{7733.d6ab6500.js.map → 7733.9982c1d9.js.map} +1 -1
  28. package/dist/chunks/{8420.22f8ae89.js → 8420.bc36541b.js} +2 -2
  29. package/dist/chunks/{8420.22f8ae89.js.map → 8420.bc36541b.js.map} +1 -1
  30. package/dist/chunks/{8989.dad35fc8.js → 8989.ac8bf2fd.js} +2 -2
  31. package/dist/chunks/8989.ac8bf2fd.js.map +1 -0
  32. package/dist/chunks/9140.f7e5ef46.js +3 -0
  33. package/dist/chunks/9140.f7e5ef46.js.map +1 -0
  34. package/dist/chunks/9443.67394047.js +3 -0
  35. package/dist/chunks/9443.67394047.js.map +1 -0
  36. package/dist/chunks/{chat-agent.197057e9.js → chat-agent.aa17c1b8.js} +2 -2
  37. package/dist/chunks/chat-agent.aa17c1b8.js.map +1 -0
  38. package/dist/chunks/main.633eb62c.js +2 -0
  39. package/dist/chunks/{main.d3ec1e0e.js.map → main.633eb62c.js.map} +1 -1
  40. package/dist/index.cc2b66f1.js +2 -0
  41. package/dist/{index.f78afc41.js.map → index.cc2b66f1.js.map} +1 -1
  42. package/package.json +3 -3
  43. package/dist/chunks/1438.f8a4f394.js +0 -2
  44. package/dist/chunks/1438.f8a4f394.js.map +0 -1
  45. package/dist/chunks/3171.fb39d41f.js +0 -2
  46. package/dist/chunks/4306.a80e205b.js.map +0 -1
  47. package/dist/chunks/4765.5f38010e.js.map +0 -1
  48. package/dist/chunks/5552.147306b2.js +0 -2
  49. package/dist/chunks/7146.5c65bb50.js.map +0 -1
  50. package/dist/chunks/8977.2cfa0827.js +0 -3
  51. package/dist/chunks/8977.2cfa0827.js.map +0 -1
  52. package/dist/chunks/8989.dad35fc8.js.map +0 -1
  53. package/dist/chunks/9140.0256faab.js +0 -3
  54. package/dist/chunks/9140.0256faab.js.map +0 -1
  55. package/dist/chunks/chat-agent.197057e9.js.map +0 -1
  56. package/dist/chunks/main.d3ec1e0e.js +0 -2
  57. package/dist/index.f78afc41.js +0 -2
  58. /package/dist/chunks/{9140.0256faab.js.LICENSE.txt → 9140.f7e5ef46.js.LICENSE.txt} +0 -0
  59. /package/dist/chunks/{8977.2cfa0827.js.LICENSE.txt → 9443.67394047.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_ai=globalThis.webpackChunk_next_bricks_ai||[]).push([[4145],{356:(e,t,s)=>{s.d(t,{A:()=>r});var n=s(6758),a=s.n(n),i=s(935),o=s.n(i)()(a());o.push([e.id,":host{display:none}",""]);const r=o.toString()},4145:(e,t,s)=>{var n,a=s(4635),i=s(918),o=s(6902),r=s(5536),h=s(6121),l=s(829),u=s(2740),c=s(8769),d=s.n(c),A=s(7921),g=s(1280),w=s(15),p=s(2046),v=s(2442),k=s(3830),I=s(205);let m,y,f,C,S,b,M,L,W,E,B,R,T,q,N,x,U,F,_,D,P,Q,H,O,$,J,Z,j,z,G,K,V,X,Y,ee,te,se,ne,ae,ie,oe,re,he,le,ue,ce,de,Ae;s(5168),s(2896),s(3262);const{defineElement:ge,property:we,method:pe,event:ve}=(0,A.createDecorators)();function ke(e,t){let{agentId:s,robotId:n,sessionId:a,showAvatar:i,showSessionList:o=!0,readonly:r=!1,showLike:h=!0,showShare:l=!0,quickAnswerConfig:u,snippetList:A,enterInterval:g,debug:m=!1,useSpiltWord:y=!1,commandBricks:f,answerLanguage:C,inputToolbarBrick:S,showToolCalls:b,onSessionIdChange:M,onRobotIdChange:L,onQaFinish:W}=e;const{sessionEnd:E,sessionLoading:B,activeSessionId:R,msgEnd:T,msgLoading:q,msgList:N,sessionList:x,loading:U,chatting:F,searchStr:_,toolNames:D,setAgent:P,handleIsLike:Q,handleChat:H,stopChat:O,createSession:$,deleteSession:J,updateSession:Z,checkSession:j,setSearchStr:z,querySessionHistory:G,setConfig:K,setFormData:V}=(0,v.Fn)({agentId:s,robotId:n,sessionId:a,enterInterval:g,debug:m,answerLanguage:C,useSpiltWord:y,showToolCalls:b});(0,c.useEffect)((()=>{var e;R&&(M(R),L(null===(e=x.find((e=>e.conversationId===R)))||void 0===e?void 0:e.robotId))}),[R,L,M,x]),(0,c.useEffect)((()=>{!F&&R&&W(R)}),[F]);const X=(0,c.useRef)(null);return(0,c.useImperativeHandle)(t,(()=>({handleInsertQuestion(e){var t;return null===(t=X.current)||void 0===t?void 0:t.handleInsertQuestion(e)},sendMsg(e){var t;return null===(t=X.current)||void 0===t?void 0:t.sendMsg(e)},setConfig:K,setFormData:V})),[K,V]),d().createElement(w.t.Provider,{value:{sessionEnd:E,sessionLoading:B,activeSessionId:R,sessionList:x,msgEnd:T,msgLoading:q,msgList:N,chatting:F,loading:U,searchStr:_,showLike:h,showShare:l,readonly:r,quickAnswerConfig:u,snippetList:A,commandBricks:f,showToolCalls:b,toolNames:D,setAgent:P,handleIsLike:Q,handleChat:H,stopChat:O,createSession:$,deleteSession:J,updateSession:Z,checkSession:j,setSearchStr:z,querySessionHistory:G}},d().createElement("div",{className:"chat-view-container"},o&&d().createElement("div",{className:"chat-view-selector"},d().createElement(k.Z,null)),d().createElement("div",{className:"chat-view-content"},d().createElement(p.M,{showAvatar:i}),!r&&d().createElement(I.D,{inputToolbarBrick:S,ref:X}))))}const Ie=(0,c.forwardRef)(ke);let me;var ye=new WeakMap,fe=new WeakMap,Ce=new WeakMap,Se=new WeakMap,be=new WeakMap,Me=new WeakMap,Le=new WeakMap,We=new WeakMap,Ee=new WeakMap,Be=new WeakMap,Re=new WeakMap,Te=new WeakMap,qe=new WeakMap,Ne=new WeakMap,xe=new WeakMap,Ue=new WeakMap,Fe=new WeakMap,_e=new WeakMap,De=new WeakMap,Pe=new WeakSet,Qe=new WeakMap,He=new WeakMap,Oe=new WeakMap,$e=new WeakMap,Je=new WeakMap;class Ze extends g.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Pe),(0,i.A)(this,ye,(m(this),f(this))),(0,i.A)(this,fe,(C(this),S(this))),(0,i.A)(this,Ce,(b(this),M(this))),(0,i.A)(this,Se,(L(this),W(this))),(0,i.A)(this,be,(E(this),B(this))),(0,i.A)(this,Me,(R(this),T(this))),(0,i.A)(this,Le,(q(this),N(this))),(0,i.A)(this,We,(x(this),U(this))),(0,i.A)(this,Ee,(F(this),_(this))),(0,i.A)(this,Be,(D(this),P(this))),(0,i.A)(this,Re,(Q(this),H(this))),(0,i.A)(this,Te,(O(this),$(this))),(0,i.A)(this,qe,(J(this),Z(this))),(0,i.A)(this,Ne,(j(this),z(this))),(0,i.A)(this,xe,(G(this),K(this))),(0,i.A)(this,Ue,(V(this),X(this))),(0,i.A)(this,Fe,(Y(this),ee(this))),(0,i.A)(this,_e,(te(this),d().createRef())),(0,i.A)(this,De,se(this)),(0,i.A)(this,Qe,(ie(this),e=>{(0,r.A)(Pe,this,ne).emit(e)})),(0,i.A)(this,He,oe(this)),(0,i.A)(this,Oe,(le(this),e=>{(0,r.A)(Pe,this,re).emit(e)})),(0,i.A)(this,$e,ue(this)),(0,i.A)(this,Je,(Ae(this),e=>{(0,r.A)(Pe,this,ce).emit(e)}))}get sessionId(){return(0,l.A)(ye,this)}set sessionId(e){(0,h.A)(ye,this,e)}get agentId(){return(0,l.A)(fe,this)}set agentId(e){(0,h.A)(fe,this,e)}get robotId(){return(0,l.A)(Ce,this)}set robotId(e){(0,h.A)(Ce,this,e)}get answerLanguage(){return(0,l.A)(Se,this)}set answerLanguage(e){(0,h.A)(Se,this,e)}get debug(){return(0,l.A)(be,this)}set debug(e){(0,h.A)(be,this,e)}get showAvatar(){return(0,l.A)(Me,this)}set showAvatar(e){(0,h.A)(Me,this,e)}get showSessionList(){return(0,l.A)(Le,this)}set showSessionList(e){(0,h.A)(Le,this,e)}get readonly(){return(0,l.A)(We,this)}set readonly(e){(0,h.A)(We,this,e)}get showLike(){return(0,l.A)(Ee,this)}set showLike(e){(0,h.A)(Ee,this,e)}get showShare(){return(0,l.A)(Be,this)}set showShare(e){(0,h.A)(Be,this,e)}get useSpiltWord(){return(0,l.A)(Re,this)}set useSpiltWord(e){(0,h.A)(Re,this,e)}get enterInterval(){return(0,l.A)(Te,this)}set enterInterval(e){(0,h.A)(Te,this,e)}get quickAnswerConfig(){return(0,l.A)(qe,this)}set quickAnswerConfig(e){(0,h.A)(qe,this,e)}get snippetList(){return(0,l.A)(Ne,this)}set snippetList(e){(0,h.A)(Ne,this,e)}get commandBricks(){return(0,l.A)(xe,this)}set commandBricks(e){(0,h.A)(xe,this,e)}get inputToolbarBrick(){return(0,l.A)(Ue,this)}set inputToolbarBrick(e){(0,h.A)(Ue,this,e)}get showToolCalls(){return(0,l.A)(Fe,this)}set showToolCalls(e){(0,h.A)(Fe,this,e)}setConfig(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.setConfig(e)}setFormData(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.setFormData(e)}insertQuestion(e){var t;const{value:s}=e;s&&(null===(t=(0,l.A)(_e,this).current)||void 0===t||t.handleInsertQuestion(s))}sendMsg(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.sendMsg(e)}render(){return d().createElement(Ie,{agentId:this.agentId,robotId:this.robotId,debug:this.debug,sessionId:this.sessionId,readonly:this.readonly,showAvatar:this.showAvatar,showSessionList:this.showSessionList,showLike:this.showLike,showShare:this.showShare,useSpiltWord:this.useSpiltWord,quickAnswerConfig:this.quickAnswerConfig,snippetList:this.snippetList,enterInterval:this.enterInterval,commandBricks:this.commandBricks,answerLanguage:this.answerLanguage,inputToolbarBrick:this.inputToolbarBrick,showToolCalls:this.showToolCalls,onSessionIdChange:(0,l.A)(Qe,this),onRobotIdChange:(0,l.A)(Oe,this),onQaFinish:(0,l.A)(Je,this),ref:(0,l.A)(_e,this)})}}n=Ze,({e:[f,C,S,b,M,L,W,E,B,R,T,q,N,x,U,F,_,D,P,Q,H,O,$,J,Z,j,z,G,K,V,X,Y,ee,te,se,ne,ae,ie,oe,re,he,le,ue,ce,de,Ae,m],c:[me,y]}=(0,u.A)(n,[ge("ai.chat-view",{shadowOptions:!1})],[[we(),1,"sessionId"],[we(),1,"agentId"],[we(),1,"robotId"],[we(),1,"answerLanguage"],[we({type:Boolean}),1,"debug"],[we({type:Boolean}),1,"showAvatar"],[we({type:Boolean}),1,"showSessionList"],[we({type:Boolean}),1,"readonly"],[we({type:Boolean}),1,"showLike"],[we({type:Boolean}),1,"showShare"],[we({type:Boolean}),1,"useSpiltWord"],[we({type:Number}),1,"enterInterval"],[we({attribute:!1}),1,"quickAnswerConfig"],[we({attribute:!1}),1,"snippetList"],[we({attribute:!1}),1,"commandBricks"],[we({attribute:!1}),1,"inputToolbarBrick"],[we({type:Boolean}),1,"showToolCalls"],[pe(),2,"setConfig"],[pe(),2,"setFormData"],[ve({type:"sessionId.change"}),1,"sessionIdChange",e=>(0,l.A)(De,e),(e,t)=>(0,h.A)(De,e,t)],[ve({type:"robotId.change"}),1,"robotIdChange",e=>(0,l.A)(He,e),(e,t)=>(0,h.A)(He,e,t)],[ve({type:"qa.finish"}),1,"qaFinish",e=>(0,l.A)($e,e),(e,t)=>(0,h.A)($e,e,t)],[pe(),2,"insertQuestion"],[pe(),2,"sendMsg"]],0,(e=>Je.has((0,o.A)(e))),g.ReactNextElement)),y();var je,ze=s(3081),Ge=s(7732),Ke=s(356);let Ve,Xe,Ye,et,tt,st,nt,at,it,ot,rt,ht,lt,ut,ct,dt,At,gt,wt,pt,vt,kt;const{defineElement:It,property:mt,event:yt,method:ft}=(0,A.createDecorators)(),Ct=(0,c.forwardRef)(_t);let St;var bt=new WeakMap,Mt=new WeakMap,Lt=new WeakMap,Wt=new WeakMap,Et=new WeakMap,Bt=new WeakSet,Rt=new WeakMap,Tt=new WeakMap,qt=new WeakMap,Nt=new WeakMap,xt=new WeakMap,Ut=new WeakMap;class Ft extends g.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Bt),(0,i.A)(this,bt,(Ve(this),Ye(this))),(0,i.A)(this,Mt,(et(this),tt(this))),(0,i.A)(this,Lt,(st(this),nt(this))),(0,i.A)(this,Wt,(at(this),it(this))),(0,i.A)(this,Et,(ot(this),rt(this))),(0,i.A)(this,Rt,(ut(this),e=>{(0,r.A)(Bt,this,ht).emit(e)})),(0,i.A)(this,Tt,ct(this)),(0,i.A)(this,qt,(gt(this),e=>{(0,r.A)(Bt,this,dt).emit(e)})),(0,i.A)(this,Nt,wt(this)),(0,i.A)(this,xt,(kt(this),e=>{(0,r.A)(Bt,this,pt).emit(e)})),(0,i.A)(this,Ut,(0,c.createRef)())}get agentId(){return(0,l.A)(bt,this)}set agentId(e){(0,h.A)(bt,this,e)}get robotId(){return(0,l.A)(Mt,this)}set robotId(e){(0,h.A)(Mt,this,e)}get conversationId(){return(0,l.A)(Lt,this)}set conversationId(e){(0,h.A)(Lt,this,e)}get alwaysUseNewConversation(){return(0,l.A)(Wt,this)}set alwaysUseNewConversation(e){(0,h.A)(Wt,this,e)}postMessage(e){var t;return null===(t=(0,l.A)(Ut,this).current)||void 0===t?void 0:t.postMessage(e)}sendRequest(e,t,s){var n;return null===(n=(0,l.A)(Ut,this).current)||void 0===n?void 0:n.sendRequest(e,t,s)}lowLevelSendRequest(e,t,s){var n;return null===(n=(0,l.A)(Ut,this).current)||void 0===n?void 0:n.lowLevelSendRequest(e,t,s)}newConversation(){var e;null===(e=(0,l.A)(Ut,this).current)||void 0===e||e.newConversation()}render(){return d().createElement(Ct,{ref:(0,l.A)(Ut,this),agentId:this.agentId,robotId:this.robotId,conversationId:this.conversationId,alwaysUseNewConversation:this.alwaysUseNewConversation,onMessagesUpdate:(0,l.A)(Rt,this),onBusyChange:(0,l.A)(qt,this),onConversationIdChange:(0,l.A)(xt,this)})}}function _t(e,t){let{agentId:s,robotId:n,conversationId:a,alwaysUseNewConversation:i,onMessageChunkPush:o,onMessagesUpdate:r,onBusyChange:h,onConversationIdChange:l}=e;const u=(0,c.useRef)(!1),d=(0,c.useRef)(1),A=(0,c.useRef)(!1),[g,w]=(0,c.useState)(null);(0,c.useEffect)((()=>{w(null!=a?a:null)}),[a]),(0,c.useEffect)((()=>{u.current&&(null==l||l(g))}),[g,l]);const p=(0,c.useRef)(0),v=(0,c.useCallback)((()=>p.current++),[]),[k,I]=(0,c.useState)([]),m=(0,c.useCallback)((e=>{null==o||o(e),I((t=>{const s=t[t.length-1];return s&&s.key===e.key?(s.content+=e.delta.content,[...t]):(null!=s&&s.partial&&(s.partial=!1),[...t,{...e.delta,key:e.key,partial:e.partial}])}))}),[o]),y=(0,c.useCallback)((async(e,t,s,n)=>{if(A.current)return null;(i||e)&&I((e=>0===e.length?e:[]));const a=d.current;let o;const r=async()=>{if(a!==d.current)throw o||(o=new Error("New conversation started")),o},l=v(),u=v();let c=i||e?null:g;null==h||h(A.current=!0);try{if(Array.isArray(t))for(const e of t){const t="assistant"===e.role;(t||"user"===e.role)&&(null==m||m({key:t?u:l,delta:{role:e.role,content:e.content}}))}else null==m||m({key:l,delta:{content:t,role:"user"}});const a=(0,Ge.createSSEStream)(new URL(s,`${location.origin}${(0,ze.getBasePath)()}`).toString(),n);await Promise.race([a,new Promise((e=>setTimeout(e,1e3)))]),await r(),null==m||m({key:u,delta:{content:"",role:"assistant"},partial:!0});const o=await a;for await(const t of o)if(await r(),e){var p;const e=null===(p=t.choices)||void 0===p||null===(p=p[0])||void 0===p?void 0:p.delta;null!=e&&e.content&&m({delta:{role:e.role,content:e.content},key:u,partial:!0})}else null==m||m({delta:t.delta,key:u,partial:!0}),i||!t.conversationId||c||w(c=t.conversationId);await r(),I((e=>{const t=e[e.length-1];return null!=t&&t.partial&&(t.partial=!1),[...e]}))}catch(e){if(e&&e===o)throw e;console.error("stream failed:",e),await r(),I((e=>{const t=e[e.length-1];let s=e;return(null==t?void 0:t.key)===u&&(t.content?(t.partial=!1,t.failed=!0):s=e.slice(0,-1)),[...s,{role:"assistant",content:"系统错误",key:v(),failed:!0}]}))}return await r(),null==h||h(A.current=!1),c}),[g,i,v,h,m]);return(0,c.useImperativeHandle)(t,(()=>({lowLevelSendRequest:function(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];return y(!0,...t)},sendRequest:function(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];return y(!1,...t)},postMessage:e=>y(!1,e,"api/gateway/easyops.api.aiops_chat.manage.LLMChatProxy@1.0.0/api/aiops_chat/v1/chat/completions",{method:"POST",body:JSON.stringify({agentId:s,robotId:n,input:e,stream:!0,conversationId:i||null===g?void 0:g}),headers:{"giraffe-contract-name":"easyops.api.aiops_chat.manage.LLMChatProxy"}}),newConversation(){d.current++,w(null),I((e=>0===e.length?e:[])),A.current&&(null==h||h(A.current=!1))}})),[y,s,n,i,g,h]),(0,c.useEffect)((()=>{u.current&&(null==r||r(k))}),[k,r]),(0,c.useEffect)((()=>{u.current=!0}),[]),null}je=Ft,({e:[Ye,et,tt,st,nt,at,it,ot,rt,ht,lt,ut,ct,dt,At,gt,wt,pt,vt,kt,Ve],c:[St,Xe]}=(0,u.A)(je,[It("ai.chat-agent",{styleTexts:[Ke.A]})],[[mt(),1,"agentId"],[mt(),1,"robotId"],[mt(),1,"conversationId"],[mt(),1,"alwaysUseNewConversation"],[ft(),2,"postMessage"],[ft(),2,"sendRequest"],[ft(),2,"lowLevelSendRequest"],[ft(),2,"newConversation"],[yt({type:"messages.update"}),1,"messagesUpdate",e=>(0,l.A)(Et,e),(e,t)=>(0,h.A)(Et,e,t)],[yt({type:"busy.change"}),1,"busyChangeEvent",e=>(0,l.A)(Tt,e),(e,t)=>(0,h.A)(Tt,e,t)],[yt({type:"conversationId.change"}),1,"conversationIdChangeEvent",e=>(0,l.A)(Nt,e),(e,t)=>(0,h.A)(Nt,e,t)]],0,(e=>Ut.has((0,o.A)(e))),g.ReactNextElement)),Xe()}}]);
2
- //# sourceMappingURL=4145.29283973.js.map
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai=globalThis.webpackChunk_next_bricks_ai||[]).push([[4145],{356:(e,t,s)=>{s.d(t,{A:()=>r});var n=s(6758),a=s.n(n),i=s(935),o=s.n(i)()(a());o.push([e.id,":host{display:none}",""]);const r=o.toString()},4145:(e,t,s)=>{var n,a=s(4635),i=s(918),o=s(6902),r=s(5536),h=s(6121),l=s(829),u=s(2740),c=s(8769),d=s.n(c),A=s(7921),g=s(1280),w=s(15),p=s(2046),v=s(2442),k=s(3830),I=s(205);let m,y,f,C,S,b,M,L,W,E,B,R,T,q,N,x,U,F,_,D,P,Q,H,O,$,J,Z,j,z,G,K,V,X,Y,ee,te,se,ne,ae,ie,oe,re,he,le,ue,ce,de,Ae;s(5168),s(2896),s(3262);const{defineElement:ge,property:we,method:pe,event:ve}=(0,A.createDecorators)();function ke(e,t){let{agentId:s,robotId:n,sessionId:a,showAvatar:i,showSessionList:o=!0,readonly:r=!1,showLike:h=!0,showShare:l=!0,quickAnswerConfig:u,snippetList:A,enterInterval:g,debug:m=!1,useSpiltWord:y=!1,commandBricks:f,answerLanguage:C,inputToolbarBrick:S,showToolCalls:b,onSessionIdChange:M,onRobotIdChange:L,onQaFinish:W}=e;const{sessionEnd:E,sessionLoading:B,activeSessionId:R,msgEnd:T,msgLoading:q,msgList:N,sessionList:x,loading:U,chatting:F,searchStr:_,toolNames:D,setAgent:P,handleIsLike:Q,handleChat:H,stopChat:O,createSession:$,deleteSession:J,updateSession:Z,checkSession:j,setSearchStr:z,querySessionHistory:G,setConfig:K,setFormData:V}=(0,v.Fn)({agentId:s,robotId:n,sessionId:a,enterInterval:g,debug:m,answerLanguage:C,useSpiltWord:y,showToolCalls:b});(0,c.useEffect)((()=>{var e;R&&(M(R),L(null===(e=x.find((e=>e.conversationId===R)))||void 0===e?void 0:e.robotId))}),[R,L,M,x]),(0,c.useEffect)((()=>{!F&&R&&W(R)}),[F]);const X=(0,c.useRef)(null);return(0,c.useImperativeHandle)(t,(()=>({handleInsertQuestion(e){var t;return null===(t=X.current)||void 0===t?void 0:t.handleInsertQuestion(e)},sendMsg(e){var t;return null===(t=X.current)||void 0===t?void 0:t.sendMsg(e)},setConfig:K,setFormData:V})),[K,V]),d().createElement(w.t.Provider,{value:{sessionEnd:E,sessionLoading:B,activeSessionId:R,sessionList:x,msgEnd:T,msgLoading:q,msgList:N,chatting:F,loading:U,searchStr:_,showLike:h,showShare:l,readonly:r,quickAnswerConfig:u,snippetList:A,commandBricks:f,showToolCalls:b,toolNames:D,setAgent:P,handleIsLike:Q,handleChat:H,stopChat:O,createSession:$,deleteSession:J,updateSession:Z,checkSession:j,setSearchStr:z,querySessionHistory:G}},d().createElement("div",{className:"chat-view-container"},o&&d().createElement("div",{className:"chat-view-selector"},d().createElement(k.Z,null)),d().createElement("div",{className:"chat-view-content"},d().createElement(p.M,{showAvatar:i}),!r&&d().createElement(I.D,{inputToolbarBrick:S,ref:X}))))}const Ie=(0,c.forwardRef)(ke);let me;var ye=new WeakMap,fe=new WeakMap,Ce=new WeakMap,Se=new WeakMap,be=new WeakMap,Me=new WeakMap,Le=new WeakMap,We=new WeakMap,Ee=new WeakMap,Be=new WeakMap,Re=new WeakMap,Te=new WeakMap,qe=new WeakMap,Ne=new WeakMap,xe=new WeakMap,Ue=new WeakMap,Fe=new WeakMap,_e=new WeakMap,De=new WeakMap,Pe=new WeakSet,Qe=new WeakMap,He=new WeakMap,Oe=new WeakMap,$e=new WeakMap,Je=new WeakMap;class Ze extends g.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Pe),(0,i.A)(this,ye,(m(this),f(this))),(0,i.A)(this,fe,(C(this),S(this))),(0,i.A)(this,Ce,(b(this),M(this))),(0,i.A)(this,Se,(L(this),W(this))),(0,i.A)(this,be,(E(this),B(this))),(0,i.A)(this,Me,(R(this),T(this))),(0,i.A)(this,Le,(q(this),N(this))),(0,i.A)(this,We,(x(this),U(this))),(0,i.A)(this,Ee,(F(this),_(this))),(0,i.A)(this,Be,(D(this),P(this))),(0,i.A)(this,Re,(Q(this),H(this))),(0,i.A)(this,Te,(O(this),$(this))),(0,i.A)(this,qe,(J(this),Z(this))),(0,i.A)(this,Ne,(j(this),z(this))),(0,i.A)(this,xe,(G(this),K(this))),(0,i.A)(this,Ue,(V(this),X(this))),(0,i.A)(this,Fe,(Y(this),ee(this))),(0,i.A)(this,_e,(te(this),d().createRef())),(0,i.A)(this,De,se(this)),(0,i.A)(this,Qe,(ie(this),e=>{(0,r.A)(Pe,this,ne).emit(e)})),(0,i.A)(this,He,oe(this)),(0,i.A)(this,Oe,(le(this),e=>{(0,r.A)(Pe,this,re).emit(e)})),(0,i.A)(this,$e,ue(this)),(0,i.A)(this,Je,(Ae(this),e=>{(0,r.A)(Pe,this,ce).emit(e)}))}get sessionId(){return(0,l.A)(ye,this)}set sessionId(e){(0,h.A)(ye,this,e)}get agentId(){return(0,l.A)(fe,this)}set agentId(e){(0,h.A)(fe,this,e)}get robotId(){return(0,l.A)(Ce,this)}set robotId(e){(0,h.A)(Ce,this,e)}get answerLanguage(){return(0,l.A)(Se,this)}set answerLanguage(e){(0,h.A)(Se,this,e)}get debug(){return(0,l.A)(be,this)}set debug(e){(0,h.A)(be,this,e)}get showAvatar(){return(0,l.A)(Me,this)}set showAvatar(e){(0,h.A)(Me,this,e)}get showSessionList(){return(0,l.A)(Le,this)}set showSessionList(e){(0,h.A)(Le,this,e)}get readonly(){return(0,l.A)(We,this)}set readonly(e){(0,h.A)(We,this,e)}get showLike(){return(0,l.A)(Ee,this)}set showLike(e){(0,h.A)(Ee,this,e)}get showShare(){return(0,l.A)(Be,this)}set showShare(e){(0,h.A)(Be,this,e)}get useSpiltWord(){return(0,l.A)(Re,this)}set useSpiltWord(e){(0,h.A)(Re,this,e)}get enterInterval(){return(0,l.A)(Te,this)}set enterInterval(e){(0,h.A)(Te,this,e)}get quickAnswerConfig(){return(0,l.A)(qe,this)}set quickAnswerConfig(e){(0,h.A)(qe,this,e)}get snippetList(){return(0,l.A)(Ne,this)}set snippetList(e){(0,h.A)(Ne,this,e)}get commandBricks(){return(0,l.A)(xe,this)}set commandBricks(e){(0,h.A)(xe,this,e)}get inputToolbarBrick(){return(0,l.A)(Ue,this)}set inputToolbarBrick(e){(0,h.A)(Ue,this,e)}get showToolCalls(){return(0,l.A)(Fe,this)}set showToolCalls(e){(0,h.A)(Fe,this,e)}setConfig(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.setConfig(e)}setFormData(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.setFormData(e)}insertQuestion(e){var t;const{value:s}=e;s&&(null===(t=(0,l.A)(_e,this).current)||void 0===t||t.handleInsertQuestion(s))}sendMsg(e){var t;null===(t=(0,l.A)(_e,this).current)||void 0===t||t.sendMsg(e)}render(){return d().createElement(Ie,{agentId:this.agentId,robotId:this.robotId,debug:this.debug,sessionId:this.sessionId,readonly:this.readonly,showAvatar:this.showAvatar,showSessionList:this.showSessionList,showLike:this.showLike,showShare:this.showShare,useSpiltWord:this.useSpiltWord,quickAnswerConfig:this.quickAnswerConfig,snippetList:this.snippetList,enterInterval:this.enterInterval,commandBricks:this.commandBricks,answerLanguage:this.answerLanguage,inputToolbarBrick:this.inputToolbarBrick,showToolCalls:this.showToolCalls,onSessionIdChange:(0,l.A)(Qe,this),onRobotIdChange:(0,l.A)(Oe,this),onQaFinish:(0,l.A)(Je,this),ref:(0,l.A)(_e,this)})}}n=Ze,({e:[f,C,S,b,M,L,W,E,B,R,T,q,N,x,U,F,_,D,P,Q,H,O,$,J,Z,j,z,G,K,V,X,Y,ee,te,se,ne,ae,ie,oe,re,he,le,ue,ce,de,Ae,m],c:[me,y]}=(0,u.A)(n,[ge("ai.chat-view",{shadowOptions:!1})],[[we(),1,"sessionId"],[we(),1,"agentId"],[we(),1,"robotId"],[we(),1,"answerLanguage"],[we({type:Boolean}),1,"debug"],[we({type:Boolean}),1,"showAvatar"],[we({type:Boolean}),1,"showSessionList"],[we({type:Boolean}),1,"readonly"],[we({type:Boolean}),1,"showLike"],[we({type:Boolean}),1,"showShare"],[we({type:Boolean}),1,"useSpiltWord"],[we({type:Number}),1,"enterInterval"],[we({attribute:!1}),1,"quickAnswerConfig"],[we({attribute:!1}),1,"snippetList"],[we({attribute:!1}),1,"commandBricks"],[we({attribute:!1}),1,"inputToolbarBrick"],[we({type:Boolean}),1,"showToolCalls"],[pe(),2,"setConfig"],[pe(),2,"setFormData"],[ve({type:"sessionId.change"}),1,"sessionIdChange",e=>(0,l.A)(De,e),(e,t)=>(0,h.A)(De,e,t)],[ve({type:"robotId.change"}),1,"robotIdChange",e=>(0,l.A)(He,e),(e,t)=>(0,h.A)(He,e,t)],[ve({type:"qa.finish"}),1,"qaFinish",e=>(0,l.A)($e,e),(e,t)=>(0,h.A)($e,e,t)],[pe(),2,"insertQuestion"],[pe(),2,"sendMsg"]],0,(e=>Je.has((0,o.A)(e))),g.ReactNextElement)),y();var je,ze=s(9475),Ge=s(4558),Ke=s(356);let Ve,Xe,Ye,et,tt,st,nt,at,it,ot,rt,ht,lt,ut,ct,dt,At,gt,wt,pt,vt,kt;const{defineElement:It,property:mt,event:yt,method:ft}=(0,A.createDecorators)(),Ct=(0,c.forwardRef)(_t);let St;var bt=new WeakMap,Mt=new WeakMap,Lt=new WeakMap,Wt=new WeakMap,Et=new WeakMap,Bt=new WeakSet,Rt=new WeakMap,Tt=new WeakMap,qt=new WeakMap,Nt=new WeakMap,xt=new WeakMap,Ut=new WeakMap;class Ft extends g.ReactNextElement{constructor(){super(...arguments),(0,a.A)(this,Bt),(0,i.A)(this,bt,(Ve(this),Ye(this))),(0,i.A)(this,Mt,(et(this),tt(this))),(0,i.A)(this,Lt,(st(this),nt(this))),(0,i.A)(this,Wt,(at(this),it(this))),(0,i.A)(this,Et,(ot(this),rt(this))),(0,i.A)(this,Rt,(ut(this),e=>{(0,r.A)(Bt,this,ht).emit(e)})),(0,i.A)(this,Tt,ct(this)),(0,i.A)(this,qt,(gt(this),e=>{(0,r.A)(Bt,this,dt).emit(e)})),(0,i.A)(this,Nt,wt(this)),(0,i.A)(this,xt,(kt(this),e=>{(0,r.A)(Bt,this,pt).emit(e)})),(0,i.A)(this,Ut,(0,c.createRef)())}get agentId(){return(0,l.A)(bt,this)}set agentId(e){(0,h.A)(bt,this,e)}get robotId(){return(0,l.A)(Mt,this)}set robotId(e){(0,h.A)(Mt,this,e)}get conversationId(){return(0,l.A)(Lt,this)}set conversationId(e){(0,h.A)(Lt,this,e)}get alwaysUseNewConversation(){return(0,l.A)(Wt,this)}set alwaysUseNewConversation(e){(0,h.A)(Wt,this,e)}postMessage(e){var t;return null===(t=(0,l.A)(Ut,this).current)||void 0===t?void 0:t.postMessage(e)}sendRequest(e,t,s){var n;return null===(n=(0,l.A)(Ut,this).current)||void 0===n?void 0:n.sendRequest(e,t,s)}lowLevelSendRequest(e,t,s){var n;return null===(n=(0,l.A)(Ut,this).current)||void 0===n?void 0:n.lowLevelSendRequest(e,t,s)}newConversation(){var e;null===(e=(0,l.A)(Ut,this).current)||void 0===e||e.newConversation()}render(){return d().createElement(Ct,{ref:(0,l.A)(Ut,this),agentId:this.agentId,robotId:this.robotId,conversationId:this.conversationId,alwaysUseNewConversation:this.alwaysUseNewConversation,onMessagesUpdate:(0,l.A)(Rt,this),onBusyChange:(0,l.A)(qt,this),onConversationIdChange:(0,l.A)(xt,this)})}}function _t(e,t){let{agentId:s,robotId:n,conversationId:a,alwaysUseNewConversation:i,onMessageChunkPush:o,onMessagesUpdate:r,onBusyChange:h,onConversationIdChange:l}=e;const u=(0,c.useRef)(!1),d=(0,c.useRef)(1),A=(0,c.useRef)(!1),[g,w]=(0,c.useState)(null);(0,c.useEffect)((()=>{w(null!=a?a:null)}),[a]),(0,c.useEffect)((()=>{u.current&&(null==l||l(g))}),[g,l]);const p=(0,c.useRef)(0),v=(0,c.useCallback)((()=>p.current++),[]),[k,I]=(0,c.useState)([]),m=(0,c.useCallback)((e=>{null==o||o(e),I((t=>{const s=t[t.length-1];return s&&s.key===e.key?(s.content+=e.delta.content,[...t]):(null!=s&&s.partial&&(s.partial=!1),[...t,{...e.delta,key:e.key,partial:e.partial}])}))}),[o]),y=(0,c.useCallback)((async(e,t,s,n)=>{if(A.current)return null;(i||e)&&I((e=>0===e.length?e:[]));const a=d.current;let o;const r=async()=>{if(a!==d.current)throw o||(o=new Error("New conversation started")),o},l=v(),u=v();let c=i||e?null:g;null==h||h(A.current=!0);try{if(Array.isArray(t))for(const e of t){const t="assistant"===e.role;(t||"user"===e.role)&&(null==m||m({key:t?u:l,delta:{role:e.role,content:e.content}}))}else null==m||m({key:l,delta:{content:t,role:"user"}});const a=(0,Ge.createSSEStream)(new URL(s,`${location.origin}${(0,ze.getBasePath)()}`).toString(),n);await Promise.race([a,new Promise((e=>setTimeout(e,1e3)))]),await r(),null==m||m({key:u,delta:{content:"",role:"assistant"},partial:!0});const o=await a;for await(const t of o)if(await r(),e){var p;const e=null===(p=t.choices)||void 0===p||null===(p=p[0])||void 0===p?void 0:p.delta;null!=e&&e.content&&m({delta:{role:e.role,content:e.content},key:u,partial:!0})}else null==m||m({delta:t.delta,key:u,partial:!0}),i||!t.conversationId||c||w(c=t.conversationId);await r(),I((e=>{const t=e[e.length-1];return null!=t&&t.partial&&(t.partial=!1),[...e]}))}catch(e){if(e&&e===o)throw e;console.error("stream failed:",e),await r(),I((e=>{const t=e[e.length-1];let s=e;return(null==t?void 0:t.key)===u&&(t.content?(t.partial=!1,t.failed=!0):s=e.slice(0,-1)),[...s,{role:"assistant",content:"系统错误",key:v(),failed:!0}]}))}return await r(),null==h||h(A.current=!1),c}),[g,i,v,h,m]);return(0,c.useImperativeHandle)(t,(()=>({lowLevelSendRequest:function(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];return y(!0,...t)},sendRequest:function(){for(var e=arguments.length,t=new Array(e),s=0;s<e;s++)t[s]=arguments[s];return y(!1,...t)},postMessage:e=>y(!1,e,"api/gateway/easyops.api.aiops_chat.manage.LLMChatProxy@1.0.0/api/aiops_chat/v1/chat/completions",{method:"POST",body:JSON.stringify({agentId:s,robotId:n,input:e,stream:!0,conversationId:i||null===g?void 0:g}),headers:{"giraffe-contract-name":"easyops.api.aiops_chat.manage.LLMChatProxy"}}),newConversation(){d.current++,w(null),I((e=>0===e.length?e:[])),A.current&&(null==h||h(A.current=!1))}})),[y,s,n,i,g,h]),(0,c.useEffect)((()=>{u.current&&(null==r||r(k))}),[k,r]),(0,c.useEffect)((()=>{u.current=!0}),[]),null}je=Ft,({e:[Ye,et,tt,st,nt,at,it,ot,rt,ht,lt,ut,ct,dt,At,gt,wt,pt,vt,kt,Ve],c:[St,Xe]}=(0,u.A)(je,[It("ai.chat-agent",{styleTexts:[Ke.A]})],[[mt(),1,"agentId"],[mt(),1,"robotId"],[mt(),1,"conversationId"],[mt(),1,"alwaysUseNewConversation"],[ft(),2,"postMessage"],[ft(),2,"sendRequest"],[ft(),2,"lowLevelSendRequest"],[ft(),2,"newConversation"],[yt({type:"messages.update"}),1,"messagesUpdate",e=>(0,l.A)(Et,e),(e,t)=>(0,h.A)(Et,e,t)],[yt({type:"busy.change"}),1,"busyChangeEvent",e=>(0,l.A)(Tt,e),(e,t)=>(0,h.A)(Tt,e,t)],[yt({type:"conversationId.change"}),1,"conversationIdChangeEvent",e=>(0,l.A)(Nt,e),(e,t)=>(0,h.A)(Nt,e,t)]],0,(e=>Ut.has((0,o.A)(e))),g.ReactNextElement)),Xe()}}]);
2
+ //# sourceMappingURL=4145.1fb1e954.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/4145.29283973.js","mappings":"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","sources":["webpack:///./src/chat-agent/styles.shadow.css","webpack:///./src/chat-view/index.tsx","webpack:///./src/chat-agent/index.tsx"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport {\n ChatViewContext,\n QuickAnswerConfig,\n snippet,\n} from \"./ChatViewContext.js\";\nimport { MessageList } from \"./components/MessageList.js\";\nimport { useChatViewInfo } from \"./hooks/useChatViewInfo.js\";\nimport { SessionList } from \"./components/SessionList.js\";\nimport { SearchInput, SearchInputRef } from \"./components/SearchInput.js\";\nimport \"@next-core/theme\";\nimport \"./host-context.css\";\nimport \"./index.css\";\nimport { commandBrickConf } from \"./ChatViewContext\";\nimport { UseBrickConf } from \"@next-core/types\";\nimport { ChatBody } from \"./ChatService.js\";\n\nconst { defineElement, property, method, event } = createDecorators();\n\ntype InputToolbarBrick = { useBrick: UseBrickConf };\n\nexport interface ChatViewRef extends SearchInputRef {\n setConfig(config: Record<string, unknown> | undefined): void;\n setFormData(formData: Record<string, unknown> | undefined): void;\n}\n\nexport interface ChatViewProps {\n agentId: string;\n robotId: string;\n sessionId?: string;\n readonly?: boolean;\n showAvatar?: boolean;\n showSessionList?: boolean;\n showLike?: boolean;\n showShare?: boolean;\n useSpiltWord?: boolean;\n quickAnswerConfig?: QuickAnswerConfig;\n snippetList?: snippet[];\n enterInterval?: number;\n debug?: boolean;\n commandBricks?: commandBrickConf;\n answerLanguage?: string;\n inputToolbarBrick?: InputToolbarBrick;\n showToolCalls?: boolean;\n onSessionIdChange: (sessionId: string | undefined) => void;\n onRobotIdChange: (robotId: string | undefined) => void;\n onQaFinish: (sessionId: string | undefined) => void;\n}\n\nexport function LegacyChatViewComponent(\n {\n agentId,\n robotId,\n sessionId,\n showAvatar,\n showSessionList = true,\n readonly = false,\n showLike = true,\n showShare = true,\n quickAnswerConfig,\n snippetList,\n enterInterval,\n debug = false,\n useSpiltWord = false,\n commandBricks,\n answerLanguage,\n inputToolbarBrick,\n showToolCalls,\n onSessionIdChange,\n onRobotIdChange,\n onQaFinish,\n }: ChatViewProps,\n ref: React.Ref<ChatViewRef>\n) {\n const {\n sessionEnd,\n sessionLoading,\n activeSessionId,\n msgEnd,\n msgLoading,\n msgList,\n sessionList,\n loading,\n chatting,\n searchStr,\n toolNames,\n setAgent,\n handleIsLike,\n handleChat,\n stopChat,\n createSession,\n deleteSession,\n updateSession,\n checkSession,\n setSearchStr,\n querySessionHistory,\n setConfig,\n setFormData,\n } = useChatViewInfo({\n agentId,\n robotId,\n sessionId,\n enterInterval,\n debug,\n answerLanguage,\n useSpiltWord,\n showToolCalls,\n });\n\n useEffect(() => {\n if (activeSessionId) {\n onSessionIdChange(activeSessionId);\n onRobotIdChange(\n sessionList.find((item) => item.conversationId === activeSessionId)\n ?.robotId\n );\n }\n }, [activeSessionId, onRobotIdChange, onSessionIdChange, sessionList]);\n\n useEffect(() => {\n if (!chatting && activeSessionId) {\n // 当此时存在activeSessionId,且chatting是从true变为false时触发,不需要加入activeSessionId的依赖判断\n onQaFinish(activeSessionId);\n }\n }, [chatting]);\n\n const inputRef = useRef<SearchInputRef>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n handleInsertQuestion(value) {\n return inputRef.current?.handleInsertQuestion(value);\n },\n sendMsg(msg) {\n return inputRef.current?.sendMsg(msg);\n },\n setConfig,\n setFormData,\n }),\n [setConfig, setFormData]\n );\n\n return (\n <ChatViewContext.Provider\n value={{\n sessionEnd,\n sessionLoading,\n activeSessionId,\n sessionList,\n msgEnd,\n msgLoading,\n msgList,\n chatting,\n loading,\n searchStr,\n showLike,\n showShare,\n readonly,\n quickAnswerConfig,\n snippetList,\n commandBricks,\n showToolCalls,\n toolNames,\n setAgent,\n handleIsLike,\n handleChat,\n stopChat,\n createSession,\n deleteSession,\n updateSession,\n checkSession,\n setSearchStr,\n querySessionHistory,\n }}\n >\n <div className=\"chat-view-container\">\n {showSessionList && (\n <div className=\"chat-view-selector\">\n <SessionList />\n </div>\n )}\n <div className=\"chat-view-content\">\n <MessageList showAvatar={showAvatar} />\n {!readonly && (\n <SearchInput inputToolbarBrick={inputToolbarBrick} ref={inputRef} />\n )}\n </div>\n </div>\n </ChatViewContext.Provider>\n );\n}\n\nexport const ChatViewComponent = forwardRef(LegacyChatViewComponent);\n\n/**\n * AI 对话终端\n */\nexport\n@defineElement(\"ai.chat-view\", {\n // shadow 模式下,会导致 useBrick 样式丢失\n // 如:commandBricks 配置 cmdb-instances.instance-list\n shadowOptions: false,\n})\nclass ChatView extends ReactNextElement {\n @property()\n accessor sessionId: string | undefined;\n\n /**\n * 智能体id\n */\n @property()\n accessor agentId!: string;\n\n /**\n * 机器人id\n */\n @property()\n accessor robotId!: string;\n\n /**\n * 指定智能体回答代码时所使用的语言\n */\n @property()\n accessor answerLanguage: string | undefined;\n\n /**\n * 是否为debug模式\n */\n @property({\n type: Boolean,\n })\n accessor debug: boolean | undefined;\n\n /**\n * 是否展示对话用户头像\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showAvatar: boolean | undefined;\n\n /**\n * 是否展示历史会话信息\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showSessionList: boolean | undefined;\n\n /**\n * 只读模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n /**\n * 是否展示点赞能力\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showLike: boolean | undefined;\n\n /**\n * 是否展示分享能力\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showShare: boolean | undefined;\n\n /**\n * 是否开启前端分词\n * @default false\n */\n @property({\n type: Boolean,\n })\n accessor useSpiltWord: boolean | undefined;\n\n /**\n * 输入间隔,设置为 -1 使用新的方式对大段消息进行模拟打字效果节流输出\n *\n * @default 50\n */\n @property({\n type: Number,\n })\n accessor enterInterval: number | undefined;\n\n /**\n * 快速入口列表\n */\n @property({\n attribute: false,\n })\n accessor quickAnswerConfig: QuickAnswerConfig | undefined;\n\n /**\n * 常用语列表\n */\n @property({\n attribute: false,\n })\n accessor snippetList: snippet[] | undefined;\n\n /**\n * 自定义语言配置\n */\n @property({\n attribute: false,\n })\n accessor commandBricks: commandBrickConf | undefined;\n\n /**\n * 输入框工具栏 useBrick\n */\n @property({\n attribute: false,\n })\n accessor inputToolbarBrick: InputToolbarBrick | undefined;\n\n /**\n * 是否显示工具调用过程\n */\n @property({ type: Boolean })\n accessor showToolCalls: boolean | undefined;\n\n /** 设置接口 config */\n @method()\n setConfig(config: Record<string, unknown> | undefined): void {\n this.#ref.current?.setConfig(config);\n }\n\n /** 设置接口 formData */\n @method()\n setFormData(formData: Record<string, unknown> | undefined): void {\n this.#ref.current?.setFormData(formData);\n }\n\n #ref = React.createRef<ChatViewRef>();\n\n @event({ type: \"sessionId.change\" })\n accessor #sessionIdChange!: EventEmitter<string | undefined>;\n\n #handleSessionIdChange = (activeSessionId: string | undefined) => {\n this.#sessionIdChange.emit(activeSessionId);\n };\n\n @event({ type: \"robotId.change\" })\n accessor #robotIdChange!: EventEmitter<string | undefined>;\n\n #handleRobotIdChange = (robotId: string | undefined) => {\n this.#robotIdChange.emit(robotId);\n };\n\n @event({ type: \"qa.finish\" })\n accessor #qaFinish!: EventEmitter<string | undefined>;\n\n #handleQaFinish = (activeSessionId: string | undefined) => {\n this.#qaFinish.emit(activeSessionId);\n };\n\n /**\n *\n * @description 调用方法进行提问\n */\n @method()\n insertQuestion(args: { value: string }): void {\n const { value } = args;\n if (!value) return;\n this.#ref.current?.handleInsertQuestion(value);\n }\n\n /**\n * @description 外部提问\n */\n @method()\n sendMsg(msg: string | ChatBody): void {\n this.#ref.current?.sendMsg(msg);\n }\n\n render() {\n return (\n <ChatViewComponent\n agentId={this.agentId}\n robotId={this.robotId}\n debug={this.debug}\n sessionId={this.sessionId}\n readonly={this.readonly}\n showAvatar={this.showAvatar}\n showSessionList={this.showSessionList}\n showLike={this.showLike}\n showShare={this.showShare}\n useSpiltWord={this.useSpiltWord}\n quickAnswerConfig={this.quickAnswerConfig}\n snippetList={this.snippetList}\n enterInterval={this.enterInterval}\n commandBricks={this.commandBricks}\n answerLanguage={this.answerLanguage}\n inputToolbarBrick={this.inputToolbarBrick}\n showToolCalls={this.showToolCalls}\n onSessionIdChange={this.#handleSessionIdChange}\n onRobotIdChange={this.#handleRobotIdChange}\n onQaFinish={this.#handleQaFinish}\n ref={this.#ref}\n />\n );\n }\n}\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { getBasePath } from \"@next-core/runtime\";\nimport { createSSEStream, type Options } from \"@next-core/utils/general\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface ChatAgentProps {\n agentId?: string;\n robotId?: string;\n conversationId?: string;\n alwaysUseNewConversation?: boolean;\n}\n\nexport interface Message extends BaseMessage {\n key: number;\n partial?: boolean;\n failed?: boolean;\n}\n\nexport interface BaseMessage {\n role: \"user\" | \"assistant\";\n content: string;\n}\n\nexport interface MessageChunk {\n delta: BaseMessage;\n conversationId?: string;\n key: number;\n partial?: boolean;\n}\n\nexport interface LowLevelMessageChunk {\n choices: LowLevelChoice[];\n}\n\nexport interface LowLevelChoice {\n delta: {\n role: \"assistant\";\n content?: string;\n };\n}\n\nexport const ChatAgentComponent = forwardRef(LegacyChatAgentComponent);\n\n/**\n * 用于与 AI 机器人进行对话的代理构件,处理通信并整合消息。\n */\nexport\n@defineElement(\"ai.chat-agent\", {\n styleTexts: [styleText],\n})\nclass ChatAgent extends ReactNextElement implements ChatAgentProps {\n @property()\n accessor agentId: string | undefined;\n\n @property()\n accessor robotId: string | undefined;\n\n @property()\n accessor conversationId: string | undefined;\n\n @property()\n accessor alwaysUseNewConversation: boolean | undefined;\n\n /**\n * 发送消息到默认的聊天 API\n */\n @method()\n postMessage(content: string) {\n return this.#ref.current?.postMessage(content);\n }\n\n /**\n * 发送聊天请求到指定的 URL\n */\n @method()\n sendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ) {\n return this.#ref.current?.sendRequest(leadingMessages, url, options);\n }\n\n /**\n * 发送底层聊天请求到指定的 URL。接口的请求和响应的数据结构和 OpenAI 聊天接口一致。\n */\n @method()\n lowLevelSendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ) {\n return this.#ref.current?.lowLevelSendRequest(\n leadingMessages,\n url,\n options\n );\n }\n\n @method()\n newConversation() {\n this.#ref.current?.newConversation();\n }\n\n // @event({ type: \"messageChunk.push\" })\n // accessor #messageChunkPushEvent!: EventEmitter<MessageChunk>;\n\n // #handleMessageChunkPush = (msg: MessageChunk) => {\n // this.#messageChunkPushEvent.emit(msg);\n // };\n\n @event({ type: \"messages.update\" })\n accessor #messagesUpdate!: EventEmitter<Message[]>;\n\n #handleMessagesUpdate = (messages: Message[]) => {\n this.#messagesUpdate.emit(messages);\n };\n\n @event({ type: \"busy.change\" })\n accessor #busyChangeEvent!: EventEmitter<boolean>;\n\n #handleBusyChange = (busy: boolean) => {\n this.#busyChangeEvent.emit(busy);\n };\n\n @event({ type: \"conversationId.change\" })\n accessor #conversationIdChangeEvent!: EventEmitter<string | null>;\n\n #handleConversationIdChange = (conversationId: string | null) => {\n this.#conversationIdChangeEvent.emit(conversationId);\n };\n\n #ref = createRef<ChatAgentRef>();\n\n render() {\n return (\n <ChatAgentComponent\n ref={this.#ref}\n agentId={this.agentId}\n robotId={this.robotId}\n conversationId={this.conversationId}\n alwaysUseNewConversation={this.alwaysUseNewConversation}\n // onMessageChunkPush={this.#handleMessageChunkPush}\n onMessagesUpdate={this.#handleMessagesUpdate}\n onBusyChange={this.#handleBusyChange}\n onConversationIdChange={this.#handleConversationIdChange}\n />\n );\n }\n}\n\nexport interface ChatAgentComponentProps extends ChatAgentProps {\n onMessageChunkPush?(msg: MessageChunk): void;\n onMessagesUpdate?(messages: Message[]): void;\n onBusyChange?(busy: boolean): void;\n onConversationIdChange?(conversationId: string | null): void;\n}\n\nexport interface ChatAgentRef {\n postMessage(content: string): Promise<string | null>;\n sendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ): Promise<string | null>;\n lowLevelSendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ): Promise<string | null>;\n newConversation(): void;\n}\n\nexport function LegacyChatAgentComponent(\n {\n agentId,\n robotId,\n conversationId: propConversationId,\n alwaysUseNewConversation,\n onMessageChunkPush,\n onMessagesUpdate,\n onBusyChange,\n onConversationIdChange,\n }: ChatAgentComponentProps,\n ref: React.Ref<ChatAgentRef>\n) {\n const didMountRef = useRef(false);\n const chatIdRef = useRef(1);\n const busyRef = useRef(false);\n const [conversationId, setConversationId] = useState<string | null>(null);\n\n useEffect(() => {\n setConversationId(propConversationId ?? null);\n }, [propConversationId]);\n\n useEffect(() => {\n didMountRef.current && onConversationIdChange?.(conversationId);\n }, [conversationId, onConversationIdChange]);\n\n const counterRef = useRef(0);\n const getMessageChunkKey = useCallback(() => counterRef.current++, []);\n\n const [fullMessages, setFullMessages] = useState<Message[]>([]);\n\n const pushPartialMessage = useCallback(\n (chunk: MessageChunk) => {\n onMessageChunkPush?.(chunk);\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n if (last && last.key === chunk.key) {\n last.content += chunk.delta.content;\n return [...prev];\n }\n if (last?.partial) {\n last.partial = false;\n }\n return [\n ...prev,\n { ...chunk.delta, key: chunk.key, partial: chunk.partial },\n ];\n });\n },\n [onMessageChunkPush]\n );\n\n const legacySendRequest = useCallback(\n async (\n isLowLevel: boolean,\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk | LowLevelMessageChunk>\n ) => {\n // Use ref instead of state to handle sync sequential calls.\n if (busyRef.current) {\n return null;\n }\n if (alwaysUseNewConversation || isLowLevel) {\n setFullMessages((prev) => (prev.length === 0 ? prev : []));\n }\n const thisChatId = chatIdRef.current;\n let newConversationError: Error | undefined;\n const checkNewConversation = async () => {\n if (thisChatId !== chatIdRef.current) {\n // istanbul ignore else: should never happen\n if (!newConversationError) {\n newConversationError = new Error(\"New conversation started\");\n }\n throw newConversationError;\n }\n };\n\n const userKey = getMessageChunkKey();\n const assistantKey = getMessageChunkKey();\n let currentConversationId =\n alwaysUseNewConversation || isLowLevel ? null : conversationId;\n\n onBusyChange?.((busyRef.current = true));\n\n try {\n if (Array.isArray(leadingMessages)) {\n for (const msg of leadingMessages) {\n const isAssistant = msg.role === \"assistant\";\n if (isAssistant || msg.role === \"user\") {\n pushPartialMessage?.({\n key: isAssistant ? assistantKey : userKey,\n delta: {\n role: msg.role,\n content: msg.content,\n },\n });\n }\n }\n } else {\n pushPartialMessage?.({\n key: userKey,\n delta: {\n content: leadingMessages,\n role: \"user\",\n },\n });\n }\n const request = createSSEStream<MessageChunk | LowLevelMessageChunk>(\n new URL(url, `${location.origin}${getBasePath()}`).toString(),\n options\n );\n\n // Put a placeholder assistant message to indicate that the assistant\n // is processing if the request takes longer than one second.\n await Promise.race([\n request,\n new Promise((resolve) => setTimeout(resolve, 1000)),\n ]);\n\n await checkNewConversation();\n\n pushPartialMessage?.({\n key: assistantKey,\n delta: {\n content: \"\",\n role: \"assistant\",\n },\n partial: true,\n });\n\n const stream = await request;\n for await (const value of stream) {\n // istanbul ignore next\n // if (process.env.NODE_ENV === \"development\") {\n // // eslint-disable-next-line no-console\n // console.log(\"stream iterated:\", value);\n // }\n\n await checkNewConversation();\n\n if (isLowLevel) {\n const delta = (value as LowLevelMessageChunk).choices?.[0]?.delta;\n if (delta?.content) {\n pushPartialMessage({\n delta: {\n role: delta.role,\n content: delta.content,\n },\n key: assistantKey,\n partial: true,\n });\n }\n } else {\n pushPartialMessage?.({\n delta: (value as MessageChunk).delta,\n key: assistantKey,\n partial: true,\n });\n if (\n !alwaysUseNewConversation &&\n (value as MessageChunk).conversationId &&\n !currentConversationId\n ) {\n setConversationId(\n (currentConversationId = (value as MessageChunk)\n .conversationId!)\n );\n }\n }\n }\n\n await checkNewConversation();\n\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n if (last?.partial) {\n last.partial = false;\n }\n return [...prev];\n });\n } catch (error) {\n if (error && error === newConversationError) {\n throw error;\n }\n\n // eslint-disable-next-line no-console\n console.error(\"stream failed:\", error);\n await checkNewConversation();\n\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n let keep = prev;\n if (last?.key === assistantKey) {\n if (last.content) {\n last.partial = false;\n last.failed = true;\n } else {\n // Ignore the empty assistant message.\n keep = prev.slice(0, -1);\n }\n }\n return [\n ...keep,\n {\n role: \"assistant\",\n content: \"系统错误\",\n key: getMessageChunkKey(),\n failed: true,\n },\n ];\n });\n }\n\n await checkNewConversation();\n\n onBusyChange?.((busyRef.current = false));\n\n return currentConversationId;\n },\n [\n conversationId,\n alwaysUseNewConversation,\n getMessageChunkKey,\n onBusyChange,\n pushPartialMessage,\n ]\n );\n\n useImperativeHandle(\n ref,\n () => ({\n lowLevelSendRequest: (...args) => legacySendRequest(true, ...args),\n sendRequest: (...args) => legacySendRequest(false, ...args),\n postMessage(content: string) {\n return legacySendRequest(\n false,\n content,\n \"api/gateway/easyops.api.aiops_chat.manage.LLMChatProxy@1.0.0/api/aiops_chat/v1/chat/completions\",\n {\n method: \"POST\",\n body: JSON.stringify({\n agentId,\n robotId,\n input: content,\n stream: true,\n conversationId:\n alwaysUseNewConversation || conversationId === null\n ? undefined\n : conversationId,\n }),\n headers: {\n \"giraffe-contract-name\":\n \"easyops.api.aiops_chat.manage.LLMChatProxy\",\n },\n }\n );\n },\n newConversation() {\n chatIdRef.current++;\n setConversationId(null);\n setFullMessages((prev) => (prev.length === 0 ? prev : []));\n if (busyRef.current) {\n onBusyChange?.((busyRef.current = false));\n }\n },\n }),\n [\n legacySendRequest,\n agentId,\n robotId,\n alwaysUseNewConversation,\n conversationId,\n onBusyChange,\n ]\n );\n\n useEffect(() => {\n didMountRef.current && onMessagesUpdate?.(fullMessages);\n }, [fullMessages, onMessagesUpdate]);\n\n useEffect(() => {\n didMountRef.current = true;\n }, []);\n\n return null;\n}\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","toString","defineElement","property","method","event","createDecorators","LegacyChatViewComponent","_ref","ref","agentId","robotId","sessionId","showAvatar","showSessionList","readonly","showLike","showShare","quickAnswerConfig","snippetList","enterInterval","debug","useSpiltWord","commandBricks","answerLanguage","inputToolbarBrick","showToolCalls","onSessionIdChange","onRobotIdChange","onQaFinish","sessionEnd","sessionLoading","activeSessionId","msgEnd","msgLoading","msgList","sessionList","loading","chatting","searchStr","toolNames","setAgent","handleIsLike","handleChat","stopChat","createSession","deleteSession","updateSession","checkSession","setSearchStr","querySessionHistory","setConfig","setFormData","useChatViewInfo","useEffect","_sessionList$find","find","item","conversationId","inputRef","useRef","useImperativeHandle","handleInsertQuestion","value","_inputRef$current","current","sendMsg","msg","_inputRef$current2","React","ChatViewContext","Provider","className","SessionList","MessageList","SearchInput","ChatViewComponent","forwardRef","_ChatView","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ref2","_R","_ChatView_brand","WeakSet","_handleSessionIdChange","_S","_handleRobotIdChange","_T","_handleQaFinish","ChatView","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_sessionId","_init_extra_sessionId","_init_agentId","_init_extra_agentId","_init_robotId","_init_extra_robotId","_init_answerLanguage","_init_extra_answerLanguage","_init_debug","_init_extra_debug","_init_showAvatar","_init_extra_showAvatar","_init_showSessionList","_init_extra_showSessionList","_init_readonly","_init_extra_readonly","_init_showLike","_init_extra_showLike","_init_showShare","_init_extra_showShare","_init_useSpiltWord","_init_extra_useSpiltWord","_init_enterInterval","_init_extra_enterInterval","_init_quickAnswerConfig","_init_extra_quickAnswerConfig","_init_snippetList","_init_extra_snippetList","_init_commandBricks","_init_extra_commandBricks","_init_inputToolbarBrick","_init_extra_inputToolbarBrick","_init_showToolCalls","_init_extra_showToolCalls","_init_sessionIdChange","_init_extra_sessionIdChange","_classPrivateGetter","this","_get_sessionIdChange","emit","_init_robotIdChange","_init_extra_robotIdChange","_get_robotIdChange","_init_qaFinish","_init_extra_qaFinish","_get_qaFinish","_classPrivateFieldGet","v","_classPrivateFieldSet","config","_classPrivateFieldGet2","formData","_classPrivateFieldGet3","insertQuestion","args","_classPrivateFieldGet4","_classPrivateFieldGet5","render","_ChatView2","e","_set_sessionIdChange","_set_robotIdChange","_set_qaFinish","c","_initClass","_applyDecs","shadowOptions","type","Boolean","Number","attribute","o","_","has","_checkInRHS","ChatAgentComponent","LegacyChatAgentComponent","_ChatAgent","_ChatAgent_brand","_handleMessagesUpdate","_handleBusyChange","_handleConversationIdChange","ChatAgent","_init_conversationId","_init_extra_conversationId","_init_alwaysUseNewConversation","_init_extra_alwaysUseNewConversation","_init_messagesUpdate","_init_extra_messagesUpdate","messages","_get_messagesUpdate","_init_busyChangeEvent","_init_extra_busyChangeEvent","busy","_get_busyChangeEvent","_init_conversationIdChangeEvent","_init_extra_conversationIdChangeEvent","_get_conversationIdChangeEvent","createRef","alwaysUseNewConversation","postMessage","content","sendRequest","leadingMessages","url","options","lowLevelSendRequest","newConversation","onMessagesUpdate","onBusyChange","onConversationIdChange","propConversationId","onMessageChunkPush","didMountRef","chatIdRef","busyRef","setConversationId","useState","counterRef","getMessageChunkKey","useCallback","fullMessages","setFullMessages","pushPartialMessage","chunk","prev","last","length","key","delta","partial","legacySendRequest","async","isLowLevel","thisChatId","newConversationError","checkNewConversation","Error","userKey","assistantKey","currentConversationId","Array","isArray","isAssistant","role","request","createSSEStream","URL","location","origin","getBasePath","Promise","race","resolve","setTimeout","stream","_choices","choices","error","console","keep","failed","slice","_len","_key","_len2","_key2","body","JSON","stringify","input","undefined","headers","_ChatAgent2","_set_messagesUpdate","_set_busyChangeEvent","_set_conversationIdChangeEvent","styleTexts","styleText"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/4145.1fb1e954.js","mappings":"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","sources":["webpack:///./src/chat-agent/styles.shadow.css","webpack:///./src/chat-view/index.tsx","webpack:///./src/chat-agent/index.tsx"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:none}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import React, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n} from \"react\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport {\n ChatViewContext,\n QuickAnswerConfig,\n snippet,\n} from \"./ChatViewContext.js\";\nimport { MessageList } from \"./components/MessageList.js\";\nimport { useChatViewInfo } from \"./hooks/useChatViewInfo.js\";\nimport { SessionList } from \"./components/SessionList.js\";\nimport { SearchInput, SearchInputRef } from \"./components/SearchInput.js\";\nimport \"@next-core/theme\";\nimport \"./host-context.css\";\nimport \"./index.css\";\nimport { commandBrickConf } from \"./ChatViewContext\";\nimport { UseBrickConf } from \"@next-core/types\";\nimport { ChatBody } from \"./ChatService.js\";\n\nconst { defineElement, property, method, event } = createDecorators();\n\ntype InputToolbarBrick = { useBrick: UseBrickConf };\n\nexport interface ChatViewRef extends SearchInputRef {\n setConfig(config: Record<string, unknown> | undefined): void;\n setFormData(formData: Record<string, unknown> | undefined): void;\n}\n\nexport interface ChatViewProps {\n agentId: string;\n robotId: string;\n sessionId?: string;\n readonly?: boolean;\n showAvatar?: boolean;\n showSessionList?: boolean;\n showLike?: boolean;\n showShare?: boolean;\n useSpiltWord?: boolean;\n quickAnswerConfig?: QuickAnswerConfig;\n snippetList?: snippet[];\n enterInterval?: number;\n debug?: boolean;\n commandBricks?: commandBrickConf;\n answerLanguage?: string;\n inputToolbarBrick?: InputToolbarBrick;\n showToolCalls?: boolean;\n onSessionIdChange: (sessionId: string | undefined) => void;\n onRobotIdChange: (robotId: string | undefined) => void;\n onQaFinish: (sessionId: string | undefined) => void;\n}\n\nexport function LegacyChatViewComponent(\n {\n agentId,\n robotId,\n sessionId,\n showAvatar,\n showSessionList = true,\n readonly = false,\n showLike = true,\n showShare = true,\n quickAnswerConfig,\n snippetList,\n enterInterval,\n debug = false,\n useSpiltWord = false,\n commandBricks,\n answerLanguage,\n inputToolbarBrick,\n showToolCalls,\n onSessionIdChange,\n onRobotIdChange,\n onQaFinish,\n }: ChatViewProps,\n ref: React.Ref<ChatViewRef>\n) {\n const {\n sessionEnd,\n sessionLoading,\n activeSessionId,\n msgEnd,\n msgLoading,\n msgList,\n sessionList,\n loading,\n chatting,\n searchStr,\n toolNames,\n setAgent,\n handleIsLike,\n handleChat,\n stopChat,\n createSession,\n deleteSession,\n updateSession,\n checkSession,\n setSearchStr,\n querySessionHistory,\n setConfig,\n setFormData,\n } = useChatViewInfo({\n agentId,\n robotId,\n sessionId,\n enterInterval,\n debug,\n answerLanguage,\n useSpiltWord,\n showToolCalls,\n });\n\n useEffect(() => {\n if (activeSessionId) {\n onSessionIdChange(activeSessionId);\n onRobotIdChange(\n sessionList.find((item) => item.conversationId === activeSessionId)\n ?.robotId\n );\n }\n }, [activeSessionId, onRobotIdChange, onSessionIdChange, sessionList]);\n\n useEffect(() => {\n if (!chatting && activeSessionId) {\n // 当此时存在activeSessionId,且chatting是从true变为false时触发,不需要加入activeSessionId的依赖判断\n onQaFinish(activeSessionId);\n }\n }, [chatting]);\n\n const inputRef = useRef<SearchInputRef>(null);\n\n useImperativeHandle(\n ref,\n () => ({\n handleInsertQuestion(value) {\n return inputRef.current?.handleInsertQuestion(value);\n },\n sendMsg(msg) {\n return inputRef.current?.sendMsg(msg);\n },\n setConfig,\n setFormData,\n }),\n [setConfig, setFormData]\n );\n\n return (\n <ChatViewContext.Provider\n value={{\n sessionEnd,\n sessionLoading,\n activeSessionId,\n sessionList,\n msgEnd,\n msgLoading,\n msgList,\n chatting,\n loading,\n searchStr,\n showLike,\n showShare,\n readonly,\n quickAnswerConfig,\n snippetList,\n commandBricks,\n showToolCalls,\n toolNames,\n setAgent,\n handleIsLike,\n handleChat,\n stopChat,\n createSession,\n deleteSession,\n updateSession,\n checkSession,\n setSearchStr,\n querySessionHistory,\n }}\n >\n <div className=\"chat-view-container\">\n {showSessionList && (\n <div className=\"chat-view-selector\">\n <SessionList />\n </div>\n )}\n <div className=\"chat-view-content\">\n <MessageList showAvatar={showAvatar} />\n {!readonly && (\n <SearchInput inputToolbarBrick={inputToolbarBrick} ref={inputRef} />\n )}\n </div>\n </div>\n </ChatViewContext.Provider>\n );\n}\n\nexport const ChatViewComponent = forwardRef(LegacyChatViewComponent);\n\n/**\n * AI 对话终端\n */\nexport\n@defineElement(\"ai.chat-view\", {\n // shadow 模式下,会导致 useBrick 样式丢失\n // 如:commandBricks 配置 cmdb-instances.instance-list\n shadowOptions: false,\n})\nclass ChatView extends ReactNextElement {\n @property()\n accessor sessionId: string | undefined;\n\n /**\n * 智能体id\n */\n @property()\n accessor agentId!: string;\n\n /**\n * 机器人id\n */\n @property()\n accessor robotId!: string;\n\n /**\n * 指定智能体回答代码时所使用的语言\n */\n @property()\n accessor answerLanguage: string | undefined;\n\n /**\n * 是否为debug模式\n */\n @property({\n type: Boolean,\n })\n accessor debug: boolean | undefined;\n\n /**\n * 是否展示对话用户头像\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showAvatar: boolean | undefined;\n\n /**\n * 是否展示历史会话信息\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showSessionList: boolean | undefined;\n\n /**\n * 只读模式\n */\n @property({\n type: Boolean,\n })\n accessor readonly: boolean | undefined;\n\n /**\n * 是否展示点赞能力\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showLike: boolean | undefined;\n\n /**\n * 是否展示分享能力\n * @default true\n */\n @property({\n type: Boolean,\n })\n accessor showShare: boolean | undefined;\n\n /**\n * 是否开启前端分词\n * @default false\n */\n @property({\n type: Boolean,\n })\n accessor useSpiltWord: boolean | undefined;\n\n /**\n * 输入间隔,设置为 -1 使用新的方式对大段消息进行模拟打字效果节流输出\n *\n * @default 50\n */\n @property({\n type: Number,\n })\n accessor enterInterval: number | undefined;\n\n /**\n * 快速入口列表\n */\n @property({\n attribute: false,\n })\n accessor quickAnswerConfig: QuickAnswerConfig | undefined;\n\n /**\n * 常用语列表\n */\n @property({\n attribute: false,\n })\n accessor snippetList: snippet[] | undefined;\n\n /**\n * 自定义语言配置\n */\n @property({\n attribute: false,\n })\n accessor commandBricks: commandBrickConf | undefined;\n\n /**\n * 输入框工具栏 useBrick\n */\n @property({\n attribute: false,\n })\n accessor inputToolbarBrick: InputToolbarBrick | undefined;\n\n /**\n * 是否显示工具调用过程\n */\n @property({ type: Boolean })\n accessor showToolCalls: boolean | undefined;\n\n /** 设置接口 config */\n @method()\n setConfig(config: Record<string, unknown> | undefined): void {\n this.#ref.current?.setConfig(config);\n }\n\n /** 设置接口 formData */\n @method()\n setFormData(formData: Record<string, unknown> | undefined): void {\n this.#ref.current?.setFormData(formData);\n }\n\n #ref = React.createRef<ChatViewRef>();\n\n @event({ type: \"sessionId.change\" })\n accessor #sessionIdChange!: EventEmitter<string | undefined>;\n\n #handleSessionIdChange = (activeSessionId: string | undefined) => {\n this.#sessionIdChange.emit(activeSessionId);\n };\n\n @event({ type: \"robotId.change\" })\n accessor #robotIdChange!: EventEmitter<string | undefined>;\n\n #handleRobotIdChange = (robotId: string | undefined) => {\n this.#robotIdChange.emit(robotId);\n };\n\n @event({ type: \"qa.finish\" })\n accessor #qaFinish!: EventEmitter<string | undefined>;\n\n #handleQaFinish = (activeSessionId: string | undefined) => {\n this.#qaFinish.emit(activeSessionId);\n };\n\n /**\n *\n * @description 调用方法进行提问\n */\n @method()\n insertQuestion(args: { value: string }): void {\n const { value } = args;\n if (!value) return;\n this.#ref.current?.handleInsertQuestion(value);\n }\n\n /**\n * @description 外部提问\n */\n @method()\n sendMsg(msg: string | ChatBody): void {\n this.#ref.current?.sendMsg(msg);\n }\n\n render() {\n return (\n <ChatViewComponent\n agentId={this.agentId}\n robotId={this.robotId}\n debug={this.debug}\n sessionId={this.sessionId}\n readonly={this.readonly}\n showAvatar={this.showAvatar}\n showSessionList={this.showSessionList}\n showLike={this.showLike}\n showShare={this.showShare}\n useSpiltWord={this.useSpiltWord}\n quickAnswerConfig={this.quickAnswerConfig}\n snippetList={this.snippetList}\n enterInterval={this.enterInterval}\n commandBricks={this.commandBricks}\n answerLanguage={this.answerLanguage}\n inputToolbarBrick={this.inputToolbarBrick}\n showToolCalls={this.showToolCalls}\n onSessionIdChange={this.#handleSessionIdChange}\n onRobotIdChange={this.#handleRobotIdChange}\n onQaFinish={this.#handleQaFinish}\n ref={this.#ref}\n />\n );\n }\n}\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport { createDecorators, type EventEmitter } from \"@next-core/element\";\nimport { ReactNextElement } from \"@next-core/react-element\";\nimport { getBasePath } from \"@next-core/runtime\";\nimport { createSSEStream, type Options } from \"@next-core/utils/general\";\nimport styleText from \"./styles.shadow.css\";\n\nconst { defineElement, property, event, method } = createDecorators();\n\nexport interface ChatAgentProps {\n agentId?: string;\n robotId?: string;\n conversationId?: string;\n alwaysUseNewConversation?: boolean;\n}\n\nexport interface Message extends BaseMessage {\n key: number;\n partial?: boolean;\n failed?: boolean;\n}\n\nexport interface BaseMessage {\n role: \"user\" | \"assistant\";\n content: string;\n}\n\nexport interface MessageChunk {\n delta: BaseMessage;\n conversationId?: string;\n key: number;\n partial?: boolean;\n}\n\nexport interface LowLevelMessageChunk {\n choices: LowLevelChoice[];\n}\n\nexport interface LowLevelChoice {\n delta: {\n role: \"assistant\";\n content?: string;\n };\n}\n\nexport const ChatAgentComponent = forwardRef(LegacyChatAgentComponent);\n\n/**\n * 用于与 AI 机器人进行对话的代理构件,处理通信并整合消息。\n */\nexport\n@defineElement(\"ai.chat-agent\", {\n styleTexts: [styleText],\n})\nclass ChatAgent extends ReactNextElement implements ChatAgentProps {\n @property()\n accessor agentId: string | undefined;\n\n @property()\n accessor robotId: string | undefined;\n\n @property()\n accessor conversationId: string | undefined;\n\n @property()\n accessor alwaysUseNewConversation: boolean | undefined;\n\n /**\n * 发送消息到默认的聊天 API\n */\n @method()\n postMessage(content: string) {\n return this.#ref.current?.postMessage(content);\n }\n\n /**\n * 发送聊天请求到指定的 URL\n */\n @method()\n sendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ) {\n return this.#ref.current?.sendRequest(leadingMessages, url, options);\n }\n\n /**\n * 发送底层聊天请求到指定的 URL。接口的请求和响应的数据结构和 OpenAI 聊天接口一致。\n */\n @method()\n lowLevelSendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ) {\n return this.#ref.current?.lowLevelSendRequest(\n leadingMessages,\n url,\n options\n );\n }\n\n @method()\n newConversation() {\n this.#ref.current?.newConversation();\n }\n\n // @event({ type: \"messageChunk.push\" })\n // accessor #messageChunkPushEvent!: EventEmitter<MessageChunk>;\n\n // #handleMessageChunkPush = (msg: MessageChunk) => {\n // this.#messageChunkPushEvent.emit(msg);\n // };\n\n @event({ type: \"messages.update\" })\n accessor #messagesUpdate!: EventEmitter<Message[]>;\n\n #handleMessagesUpdate = (messages: Message[]) => {\n this.#messagesUpdate.emit(messages);\n };\n\n @event({ type: \"busy.change\" })\n accessor #busyChangeEvent!: EventEmitter<boolean>;\n\n #handleBusyChange = (busy: boolean) => {\n this.#busyChangeEvent.emit(busy);\n };\n\n @event({ type: \"conversationId.change\" })\n accessor #conversationIdChangeEvent!: EventEmitter<string | null>;\n\n #handleConversationIdChange = (conversationId: string | null) => {\n this.#conversationIdChangeEvent.emit(conversationId);\n };\n\n #ref = createRef<ChatAgentRef>();\n\n render() {\n return (\n <ChatAgentComponent\n ref={this.#ref}\n agentId={this.agentId}\n robotId={this.robotId}\n conversationId={this.conversationId}\n alwaysUseNewConversation={this.alwaysUseNewConversation}\n // onMessageChunkPush={this.#handleMessageChunkPush}\n onMessagesUpdate={this.#handleMessagesUpdate}\n onBusyChange={this.#handleBusyChange}\n onConversationIdChange={this.#handleConversationIdChange}\n />\n );\n }\n}\n\nexport interface ChatAgentComponentProps extends ChatAgentProps {\n onMessageChunkPush?(msg: MessageChunk): void;\n onMessagesUpdate?(messages: Message[]): void;\n onBusyChange?(busy: boolean): void;\n onConversationIdChange?(conversationId: string | null): void;\n}\n\nexport interface ChatAgentRef {\n postMessage(content: string): Promise<string | null>;\n sendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ): Promise<string | null>;\n lowLevelSendRequest(\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk>\n ): Promise<string | null>;\n newConversation(): void;\n}\n\nexport function LegacyChatAgentComponent(\n {\n agentId,\n robotId,\n conversationId: propConversationId,\n alwaysUseNewConversation,\n onMessageChunkPush,\n onMessagesUpdate,\n onBusyChange,\n onConversationIdChange,\n }: ChatAgentComponentProps,\n ref: React.Ref<ChatAgentRef>\n) {\n const didMountRef = useRef(false);\n const chatIdRef = useRef(1);\n const busyRef = useRef(false);\n const [conversationId, setConversationId] = useState<string | null>(null);\n\n useEffect(() => {\n setConversationId(propConversationId ?? null);\n }, [propConversationId]);\n\n useEffect(() => {\n didMountRef.current && onConversationIdChange?.(conversationId);\n }, [conversationId, onConversationIdChange]);\n\n const counterRef = useRef(0);\n const getMessageChunkKey = useCallback(() => counterRef.current++, []);\n\n const [fullMessages, setFullMessages] = useState<Message[]>([]);\n\n const pushPartialMessage = useCallback(\n (chunk: MessageChunk) => {\n onMessageChunkPush?.(chunk);\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n if (last && last.key === chunk.key) {\n last.content += chunk.delta.content;\n return [...prev];\n }\n if (last?.partial) {\n last.partial = false;\n }\n return [\n ...prev,\n { ...chunk.delta, key: chunk.key, partial: chunk.partial },\n ];\n });\n },\n [onMessageChunkPush]\n );\n\n const legacySendRequest = useCallback(\n async (\n isLowLevel: boolean,\n leadingMessages: string | BaseMessage[],\n url: string,\n options: Options<MessageChunk | LowLevelMessageChunk>\n ) => {\n // Use ref instead of state to handle sync sequential calls.\n if (busyRef.current) {\n return null;\n }\n if (alwaysUseNewConversation || isLowLevel) {\n setFullMessages((prev) => (prev.length === 0 ? prev : []));\n }\n const thisChatId = chatIdRef.current;\n let newConversationError: Error | undefined;\n const checkNewConversation = async () => {\n if (thisChatId !== chatIdRef.current) {\n // istanbul ignore else: should never happen\n if (!newConversationError) {\n newConversationError = new Error(\"New conversation started\");\n }\n throw newConversationError;\n }\n };\n\n const userKey = getMessageChunkKey();\n const assistantKey = getMessageChunkKey();\n let currentConversationId =\n alwaysUseNewConversation || isLowLevel ? null : conversationId;\n\n onBusyChange?.((busyRef.current = true));\n\n try {\n if (Array.isArray(leadingMessages)) {\n for (const msg of leadingMessages) {\n const isAssistant = msg.role === \"assistant\";\n if (isAssistant || msg.role === \"user\") {\n pushPartialMessage?.({\n key: isAssistant ? assistantKey : userKey,\n delta: {\n role: msg.role,\n content: msg.content,\n },\n });\n }\n }\n } else {\n pushPartialMessage?.({\n key: userKey,\n delta: {\n content: leadingMessages,\n role: \"user\",\n },\n });\n }\n const request = createSSEStream<MessageChunk | LowLevelMessageChunk>(\n new URL(url, `${location.origin}${getBasePath()}`).toString(),\n options\n );\n\n // Put a placeholder assistant message to indicate that the assistant\n // is processing if the request takes longer than one second.\n await Promise.race([\n request,\n new Promise((resolve) => setTimeout(resolve, 1000)),\n ]);\n\n await checkNewConversation();\n\n pushPartialMessage?.({\n key: assistantKey,\n delta: {\n content: \"\",\n role: \"assistant\",\n },\n partial: true,\n });\n\n const stream = await request;\n for await (const value of stream) {\n // istanbul ignore next\n // if (process.env.NODE_ENV === \"development\") {\n // // eslint-disable-next-line no-console\n // console.log(\"stream iterated:\", value);\n // }\n\n await checkNewConversation();\n\n if (isLowLevel) {\n const delta = (value as LowLevelMessageChunk).choices?.[0]?.delta;\n if (delta?.content) {\n pushPartialMessage({\n delta: {\n role: delta.role,\n content: delta.content,\n },\n key: assistantKey,\n partial: true,\n });\n }\n } else {\n pushPartialMessage?.({\n delta: (value as MessageChunk).delta,\n key: assistantKey,\n partial: true,\n });\n if (\n !alwaysUseNewConversation &&\n (value as MessageChunk).conversationId &&\n !currentConversationId\n ) {\n setConversationId(\n (currentConversationId = (value as MessageChunk)\n .conversationId!)\n );\n }\n }\n }\n\n await checkNewConversation();\n\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n if (last?.partial) {\n last.partial = false;\n }\n return [...prev];\n });\n } catch (error) {\n if (error && error === newConversationError) {\n throw error;\n }\n\n // eslint-disable-next-line no-console\n console.error(\"stream failed:\", error);\n await checkNewConversation();\n\n setFullMessages((prev) => {\n const last = prev[prev.length - 1];\n let keep = prev;\n if (last?.key === assistantKey) {\n if (last.content) {\n last.partial = false;\n last.failed = true;\n } else {\n // Ignore the empty assistant message.\n keep = prev.slice(0, -1);\n }\n }\n return [\n ...keep,\n {\n role: \"assistant\",\n content: \"系统错误\",\n key: getMessageChunkKey(),\n failed: true,\n },\n ];\n });\n }\n\n await checkNewConversation();\n\n onBusyChange?.((busyRef.current = false));\n\n return currentConversationId;\n },\n [\n conversationId,\n alwaysUseNewConversation,\n getMessageChunkKey,\n onBusyChange,\n pushPartialMessage,\n ]\n );\n\n useImperativeHandle(\n ref,\n () => ({\n lowLevelSendRequest: (...args) => legacySendRequest(true, ...args),\n sendRequest: (...args) => legacySendRequest(false, ...args),\n postMessage(content: string) {\n return legacySendRequest(\n false,\n content,\n \"api/gateway/easyops.api.aiops_chat.manage.LLMChatProxy@1.0.0/api/aiops_chat/v1/chat/completions\",\n {\n method: \"POST\",\n body: JSON.stringify({\n agentId,\n robotId,\n input: content,\n stream: true,\n conversationId:\n alwaysUseNewConversation || conversationId === null\n ? undefined\n : conversationId,\n }),\n headers: {\n \"giraffe-contract-name\":\n \"easyops.api.aiops_chat.manage.LLMChatProxy\",\n },\n }\n );\n },\n newConversation() {\n chatIdRef.current++;\n setConversationId(null);\n setFullMessages((prev) => (prev.length === 0 ? prev : []));\n if (busyRef.current) {\n onBusyChange?.((busyRef.current = false));\n }\n },\n }),\n [\n legacySendRequest,\n agentId,\n robotId,\n alwaysUseNewConversation,\n conversationId,\n onBusyChange,\n ]\n );\n\n useEffect(() => {\n didMountRef.current && onMessagesUpdate?.(fullMessages);\n }, [fullMessages, onMessagesUpdate]);\n\n useEffect(() => {\n didMountRef.current = true;\n }, []);\n\n return null;\n}\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","toString","defineElement","property","method","event","createDecorators","LegacyChatViewComponent","_ref","ref","agentId","robotId","sessionId","showAvatar","showSessionList","readonly","showLike","showShare","quickAnswerConfig","snippetList","enterInterval","debug","useSpiltWord","commandBricks","answerLanguage","inputToolbarBrick","showToolCalls","onSessionIdChange","onRobotIdChange","onQaFinish","sessionEnd","sessionLoading","activeSessionId","msgEnd","msgLoading","msgList","sessionList","loading","chatting","searchStr","toolNames","setAgent","handleIsLike","handleChat","stopChat","createSession","deleteSession","updateSession","checkSession","setSearchStr","querySessionHistory","setConfig","setFormData","useChatViewInfo","useEffect","_sessionList$find","find","item","conversationId","inputRef","useRef","useImperativeHandle","handleInsertQuestion","value","_inputRef$current","current","sendMsg","msg","_inputRef$current2","React","ChatViewContext","Provider","className","SessionList","MessageList","SearchInput","ChatViewComponent","forwardRef","_ChatView","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_K","_L","_M","_N","_O","_P","_Q","_ref2","_R","_ChatView_brand","WeakSet","_handleSessionIdChange","_S","_handleRobotIdChange","_T","_handleQaFinish","ChatView","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","_init_sessionId","_init_extra_sessionId","_init_agentId","_init_extra_agentId","_init_robotId","_init_extra_robotId","_init_answerLanguage","_init_extra_answerLanguage","_init_debug","_init_extra_debug","_init_showAvatar","_init_extra_showAvatar","_init_showSessionList","_init_extra_showSessionList","_init_readonly","_init_extra_readonly","_init_showLike","_init_extra_showLike","_init_showShare","_init_extra_showShare","_init_useSpiltWord","_init_extra_useSpiltWord","_init_enterInterval","_init_extra_enterInterval","_init_quickAnswerConfig","_init_extra_quickAnswerConfig","_init_snippetList","_init_extra_snippetList","_init_commandBricks","_init_extra_commandBricks","_init_inputToolbarBrick","_init_extra_inputToolbarBrick","_init_showToolCalls","_init_extra_showToolCalls","_init_sessionIdChange","_init_extra_sessionIdChange","_classPrivateGetter","this","_get_sessionIdChange","emit","_init_robotIdChange","_init_extra_robotIdChange","_get_robotIdChange","_init_qaFinish","_init_extra_qaFinish","_get_qaFinish","_classPrivateFieldGet","v","_classPrivateFieldSet","config","_classPrivateFieldGet2","formData","_classPrivateFieldGet3","insertQuestion","args","_classPrivateFieldGet4","_classPrivateFieldGet5","render","_ChatView2","e","_set_sessionIdChange","_set_robotIdChange","_set_qaFinish","c","_initClass","_applyDecs","shadowOptions","type","Boolean","Number","attribute","o","_","has","_checkInRHS","ChatAgentComponent","LegacyChatAgentComponent","_ChatAgent","_ChatAgent_brand","_handleMessagesUpdate","_handleBusyChange","_handleConversationIdChange","ChatAgent","_init_conversationId","_init_extra_conversationId","_init_alwaysUseNewConversation","_init_extra_alwaysUseNewConversation","_init_messagesUpdate","_init_extra_messagesUpdate","messages","_get_messagesUpdate","_init_busyChangeEvent","_init_extra_busyChangeEvent","busy","_get_busyChangeEvent","_init_conversationIdChangeEvent","_init_extra_conversationIdChangeEvent","_get_conversationIdChangeEvent","createRef","alwaysUseNewConversation","postMessage","content","sendRequest","leadingMessages","url","options","lowLevelSendRequest","newConversation","onMessagesUpdate","onBusyChange","onConversationIdChange","propConversationId","onMessageChunkPush","didMountRef","chatIdRef","busyRef","setConversationId","useState","counterRef","getMessageChunkKey","useCallback","fullMessages","setFullMessages","pushPartialMessage","chunk","prev","last","length","key","delta","partial","legacySendRequest","async","isLowLevel","thisChatId","newConversationError","checkNewConversation","Error","userKey","assistantKey","currentConversationId","Array","isArray","isAssistant","role","request","createSSEStream","URL","location","origin","getBasePath","Promise","race","resolve","setTimeout","stream","_choices","choices","error","console","keep","failed","slice","_len","_key","_len2","_key2","body","JSON","stringify","input","undefined","headers","_ChatAgent2","_set_messagesUpdate","_set_busyChangeEvent","_set_conversationIdChangeEvent","styleTexts","styleText"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_ai=globalThis.webpackChunk_next_bricks_ai||[]).push([[4306],{4306:(i,e,n)=>{n.r(e),n.d(e,{pipes:()=>t,utils:()=>r});var r={};n.r(r),n.d(r,{convertUnitValueByPrecision:()=>Gi,formatUnitValue:()=>Li});var t={};function s(i,e){return i+e}function a(i){return"0"!==i&&Boolean(i)}n.r(t),n.d(t,{add:()=>s,atobUnicode:()=>Ii,bool:()=>o,boolean:()=>a,btoaUnicode:()=>Oi,cmdbInstanceShowName:()=>d,countBy:()=>c,datetime:()=>p,deltaTime:()=>v,divide:()=>B,equal:()=>m,find:()=>g,findIndex:()=>h,findLast:()=>M,findLastIndex:()=>w,get:()=>k,graphTree:()=>S,groupBy:()=>P,groupByToIndex:()=>C,includes:()=>A,join:()=>N,json:()=>x,jsonStringify:()=>j,keyBy:()=>I,map:()=>O,mapToArray:()=>R,mergeArrayByKey:()=>D,multiply:()=>_,not:()=>U,nullish:()=>H,number:()=>Y,parseTimeRange:()=>q,randomString:()=>F,reverse:()=>J,round:()=>ji,slice:()=>W,sort:()=>z,split:()=>V,string:()=>Q,substr:()=>X,substring:()=>Z,subtract:()=>$,ternary:()=>ii,uniq:()=>ei,unitFormat:()=>Ci,yaml:()=>Ni,yamlStringify:()=>xi});var o=a;function d(i){if(Array.isArray(i)){var e=i[0]||"",n=i.slice(1,i.length).join(",");return n?e+(e?"("+n+")":""+n):e||"-"}return i}var u=n(563);function c(i,e){return(0,u.countBy)(i,e)}var l=n(1916),y=n.n(l);function p(i,e){return y()(i).format(e)}function f(i){return"object"==typeof i&&null!==i}function b(i,e){return"number"==typeof i?y()(i):y()(i,e)}function v(i,e,n){if(void 0===e&&(e=!0),void 0===n&&(n="YYYY-MM-DD HH:mm:ss"),!i)return"";if(f(i)&&i.startTime&&i.endTime){var r=b(i.startTime,n),t=b(i.endTime,n);return y().duration(t.diff(r)).humanize(e)}var s=b(f(i)?i.startTime||i.endTime:i,n);return y().duration(s.diff(y()())).humanize(e)}function B(i,e){return i/e}function m(i,e){return(0,u.isEqual)(i,e)}function g(i,e,n){return(0,u.find)(i,e,n)}function h(i,e,n){return(0,u.findIndex)(i,e,n)}function M(i,e,n){return(0,u.findLast)(i,e,n)}function w(i,e,n){return(0,u.findLastIndex)(i,e,n)}function k(i,e,n){return(0,u.get)(i,e,n)}function S(i,e){var n,r;if(!i)return[];var t=null==e?void 0:e.sort,s=(0,u.groupBy)(i.edges,"out"),a=function(e){var n=s[e.instanceId];if((0,u.forEach)(n,(function(n){var r=n.out_name,t=(0,u.find)(i.vertices,["instanceId",n.in]);if(t){var s=a(t);e[r]?e[r].push(s):e[r]=[s]}})),t){var r=(0,u.uniq)((0,u.map)(n,"out_name"));(0,u.forEach)(r,(function(i){(0,u.isEmpty)(e[i])||(e[i]=(0,u.orderBy)(e[i],(function(i){var e;return null!==(e=(0,u.get)(i,t.key))&&void 0!==e?e:-1/0}),-1===t.order?"desc":"asc"))}))}return e};return null!==(r=null===(n=i.topic_vertices)||void 0===n?void 0:n.map((function(i){return a(i)})))&&void 0!==r?r:[]}function P(i,e){return(0,u.groupBy)(i,e)}var K,T,G=function(){return G=Object.assign||function(i){for(var e,n=1,r=arguments.length;n<r;n++)for(var t in e=arguments[n])Object.prototype.hasOwnProperty.call(e,t)&&(i[t]=e[t]);return i},G.apply(this,arguments)};function L(){for(var i=0,e=0,n=arguments.length;e<n;e++)i+=arguments[e].length;var r=Array(i),t=0;for(e=0;e<n;e++)for(var s=arguments[e],a=0,o=s.length;a<o;a++,t++)r[t]=s[a];return r}function C(i,e,n){var r=i;if(!(0,u.isNil)(e)&&!(0,u.isNil)(n)){var t=(0,u.groupBy)(i,e),s=(0,u.keys)(t).sort();r=r.map((function(i){var r=G({},i);return(0,u.set)(r,n,(0,u.indexOf)(s,(0,u.get)(i,e))),r}))}return r}function A(i,e){return i.includes(e)}function N(i,e){return void 0===e&&(e=","),Array.isArray(i)?i.join(e):""}function x(i){if((0,u.isNil)(i))return i;try{return JSON.parse(i)}catch(i){return void console.error(i)}}function j(i,e){void 0===e&&(e=2);try{return JSON.stringify(i,null,e)}catch(i){return void console.error(i)}}function I(i,e){return(0,u.keyBy)(i,e)}function O(i,e){return Array.isArray(i)?i.map((function(i){return(0,u.get)(i,e)})):[]}function R(i,e,n){return"object"==typeof i&&i?Object.entries(i).map((function(i){var r,t=i[0],s=i[1];return(r={})[e]=t,r[n]=s,r})):[]}function D(i,e){return i.reduce((function(i,n){return Object.values((0,u.mergeWith)((0,u.keyBy)(i,e),(0,u.keyBy)(n,e),E))}),[])}function E(i,e){if((0,u.isArray)(i))return i.concat(e)}function _(i,e){return i*e}function U(i){return!i}function H(i,e){return null!=i?i:e}function Y(i){return Number(i)}function q(i){if("now/d"===i)return+y()().startOf("day");if("now/y"===i)return+y()().startOf("year");var e=/^now-(\d+)(\w+)/.exec(i);if(null!==e){var n=e[1],r=e[2];return+y()().subtract(n,r)}return i?+i:+y()()}function F(i,e){i=i>0?i:8,e="string"==typeof e?e:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(var n="",r=0;r<i;r++)n+=e.charAt(Math.floor(Math.random()*e.length));return n}function J(i){return Array.isArray(i)?i.slice().reverse():[]}function W(i,e,n){return i.slice(e,n)}function z(i,e){return Array.isArray(i)?(0,u.sortBy)(i,e):[]}function V(i,e){return"string"==typeof i?i.split(e):[]}function Q(i){return null==i?"":String(i)}function X(i,e,n){return"string"==typeof i?i.substr(e,n):""}function Z(i,e,n){return"string"==typeof i?i.substring(e,n):""}function $(i,e){return i-e}function ii(i,e,n){return i?e:n}function ei(i){return(0,u.uniq)(i)}Object.create,Object.create,"function"==typeof SuppressedError&&SuppressedError,function(i){i.Time="time",i.Byte="byte",i.Bibyte="bibyte",i.BitRate="bitRate",i.ByteRate="byteRate"}(K||(K={})),function(i){i.Percent1="percent(1)",i.Percent100="percent(100)"}(T||(T={}));var ni,ri=[T.Percent1,T.Percent100];!function(i){i.Bytes="bytes",i.Kilobytes="kilobytes",i.Megabytes="megabytes",i.Gigabytes="gigabytes",i.Terabytes="terabytes",i.Petabytes="petabytes",i.Bibytes="bibytes",i.Kibibytes="kibibytes",i.Mebibytes="mebibytes",i.Gibibytes="gibibytes",i.Tebibytes="tebibytes",i.Pebibytes="pebibytes",i.b="b",i.B="B",i.KB="KB",i.MB="MB",i.GB="GB"}(ni||(ni={}));var ti,si=[{id:ni.Bytes,alias:["B","bytes(B)"],divisor:1,display:"B"},{id:ni.Kilobytes,alias:["KB","kilobytes(KB)"],divisor:1e3,display:"KB"},{id:ni.Megabytes,alias:["MB","megabytes(MB)"],divisor:Math.pow(1e3,2),display:"MB"},{id:ni.Gigabytes,alias:["GB","gigabytes(GB)"],divisor:Math.pow(1e3,3),display:"GB"},{id:ni.Terabytes,alias:["TB","terabytes(TB)"],divisor:Math.pow(1e3,4),display:"TB"},{id:ni.Petabytes,alias:["PB","petabytes(PB)"],divisor:Math.pow(1e3,5),display:"PB"}],ai=[{id:ni.Bibytes,alias:["B","bibytes(B)"],divisor:1,display:"B"},{id:ni.Kibibytes,alias:["KiB","kibibytes(KiB)"],divisor:1024,display:"KiB"},{id:ni.Mebibytes,alias:["MiB","mebibytes(MiB)"],divisor:Math.pow(1024,2),display:"MiB"},{id:ni.Gibibytes,alias:["GiB","gibibytes(GiB)"],divisor:Math.pow(1024,3),display:"GiB"},{id:ni.Tebibytes,alias:["TiB","tebibytes(TiB)"],divisor:Math.pow(1024,4),display:"TiB"},{id:ni.Pebibytes,alias:["PiB","pebibytes(PiB)"],divisor:Math.pow(1024,5),display:"PiB"}],oi=[{id:ni.b,divisor:1,display:"b"},{id:ni.B,divisor:8,display:"B"},{id:ni.KB,divisor:8192,display:"KB"},{id:ni.MB,divisor:8388608,display:"MB"},{id:ni.GB,divisor:8589934592,display:"GB"}];!function(i){i.BitsPerSecond="bits/sec",i.KilobitsPerSecond="kilobits/sec",i.MegabitsPerSecond="megabits/sec",i.GigabitsPerSecond="gigabits/sec",i.BytesPerSecond="bytes/sec",i.KilobytesPerSecond="kilobytes/sec",i.MegabytesPerSecond="megabytes/sec",i.GigabytesPerSecond="gigabytes/sec",i.bps="bps",i.Bps="Bps",i.KBps="KBps",i.MBps="MBps",i.GBps="GBps"}(ti||(ti={}));var di,ui=[{id:ti.BitsPerSecond,alias:["bps","bits/sec(bps)"],divisor:1,display:"bps"},{id:ti.KilobitsPerSecond,alias:["Kbps","kilobits/sec(Kbps)"],divisor:1024,display:"Kbps"},{id:ti.MegabitsPerSecond,alias:["Mbps","megabits/sec(Mbps)"],divisor:1048576,display:"Mbps"},{id:ti.GigabitsPerSecond,alias:["Gbps","gigabits/sec(Gbps)"],divisor:1073741824,display:"Gbps"}],ci=[{id:ti.BytesPerSecond,alias:["Bps","bytes/sec(Bps)"],divisor:8,display:"Bps"},{id:ti.KilobytesPerSecond,alias:["KBps","kilobytes/sec(KBps)"],divisor:8192,display:"KBps"},{id:ti.MegabytesPerSecond,alias:["MBps","megabytes/sec(MBps)"],divisor:8388608,display:"MBps"},{id:ti.GigabytesPerSecond,alias:["GBps","gigabytes/sec(GBps)"],divisor:8589934592,display:"GBps"}],li=[{id:ti.bps,divisor:1,display:"bps"},{id:ti.Bps,divisor:8,display:"Bps"},{id:ti.KBps,divisor:8192,display:"KBps"},{id:ti.MBps,divisor:8388608,display:"MBps"},{id:ti.GBps,divisor:8589934592,display:"GBps"}];!function(i){i.Nanosecond="nanoseconds",i.Microsecond="microseconds",i.Milliseconds="milliseconds",i.Seconds="seconds",i.Minutes="minutes",i.Hours="hours",i.Days="days",i.Weeks="weeks",i.Months="months",i.Years="years",i.ms="ms",i.s="s",i.min="min",i.hour="hour",i.day="day",i.week="week"}(di||(di={}));var yi,pi,fi=[{id:di.Nanosecond,alias:["ns","nanoseconds(ns)"],divisor:1,display:"ns"},{id:di.Microsecond,alias:["μs","microseconds(μs)"],divisor:1e3,display:"μs"},{id:di.Milliseconds,alias:["ms","milliseconds(ms)"],divisor:1e6,display:"ms"},{id:di.Seconds,alias:["s","seconds(s)"],divisor:1e9,display:"s"},{id:di.Minutes,alias:["min","minutes(min)"],divisor:6e10,display:"min"},{id:di.Hours,alias:["hour","hours(hour)"],divisor:36e11,display:"hour"},{id:di.Days,alias:["day","days(day)"],divisor:864e11,display:"day"},{id:di.Weeks,alias:["week","weeks(week)"],divisor:6048e11,display:"week"},{id:di.Months,alias:["month","months(month)"],divisor:2592e12,display:"month"},{id:di.Years,alias:["year","years(year)"],divisor:31536e12,display:"year"}];di.ms,di.s,di.min,di.hour,di.day,di.week,(yi={})[K.Time]=fi,yi[K.Byte]=si,yi[K.Bibyte]=ai,yi[K.BitRate]=ui,yi[K.ByteRate]=ci,function(i){i.None="none",i.K="K",i.M="M",i.B="B",i.T="T"}(pi||(pi={}));var bi,vi,Bi=[{id:pi.None,divisor:1,display:""},{id:pi.K,divisor:1e3,display:"K"},{id:pi.M,divisor:1e6,display:"M"},{id:pi.B,divisor:1e9,display:"B"},{id:pi.T,divisor:1e12,display:"T"}],mi=function(i,e){return i.id.toLocaleLowerCase()===(null==e?void 0:e.toLocaleLowerCase())||i.alias&&i.alias.map((function(i){return i.toLocaleLowerCase()})).includes(e)},gi=function(i,e){return i.id.toLocaleLowerCase()===(null==e?void 0:e.toLocaleLowerCase())||i.alias&&i.alias.includes(e)},hi=[fi],Mi=[].concat.apply([],hi.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),wi=[si,ai,oi],ki=[].concat.apply([],wi.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),Si=[ui,ci,li],Pi=[].concat.apply([],Si.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),Ki=function(i,e,n){var r=0,t=Math.sign(i),s=Math.abs(i);if(e){var a=Bi.findIndex((function(i){return i.id.toLocaleLowerCase()===e.toLocaleLowerCase()}));-1!==a&&(r=a)}for(var o=Bi[r],d=r+1;d<Bi.length&&s/(Bi[d].divisor/Bi[r].divisor)>=1;++d)o=Bi[d];return o.id===pi.None?(t*s).toFixed(null!=n?n:2):(s/(o.divisor/Bi[r].divisor)*t).toFixed(null!=n?n:2)+o.display};!function(i){i.None="none",i.Short="short",i.Percent="percent",i.Time="time",i.Data="data",i.DataRate="data_rate"}(vi||(vi={}));var Ti=((bi={})[vi.None]=[],bi[vi.Short]=[],bi[vi.Percent]=ri,bi[vi.Time]=Mi,bi[vi.Data]=ki,bi[vi.DataRate]=Pi,bi),Gi=function(i,e){return void 0===e?i.toString():i.toFixed(e)},Li=function(i,e){if(!e)return[Ki(i),null];var n=e.type;n||(e.unit?(n=vi.Short,Object.entries(Ti).map((function(i){var r=i[0];i[1].map((function(i){return i.toLocaleLowerCase()})).includes(e.unit.toLocaleLowerCase())&&(n=r)}))):n=vi.None);var r=void 0===(null==e?void 0:e.precision)?2:e.precision;switch(n){case vi.Percent:var t=function(i,e){return e&&e.toLocaleLowerCase()===T.Percent100.toLocaleLowerCase()?i:100*i}(i,e.unit);return[Gi(t,r)+"%",null];case vi.Time:var s=function(i,e,n){var r=0,t=2,s=-1;if(e)for(var a=function(i){var a=-1,o=-1;if(hi[i].forEach((function(i,r){mi(i,e)&&(a=r),mi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},o=0;o<hi.length&&"break"!==a(o);++o);else n&&(s=hi[r].findIndex((function(i){return mi(i,n)})));var d=hi[r],u=d[t],c=u;if(-1===s)for(o=t+1;o<d.length&&i/(d[o].divisor/u.divisor)>=1;++o)c=d[o];else c=d[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||u.display)+'" to "'+n+'"'),[i/(c.divisor/u.divisor),c.display]}(i,e.unit,e.targetUnit),a=s[0],o=s[1];return[""+Gi(a,void 0===(null==e?void 0:e.precision)?1:e.precision),o];case vi.Data:var d=function(i,e,n){var r=wi.length-1,t=0,s=-1,a=Math.sign(i),o=Math.abs(i);if(e)for(var d=function(i){var a=-1,o=-1;if(wi[i].forEach((function(i,r){gi(i,e)&&(a=r),gi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},u=0;u<wi.length&&"break"!==d(u);++u);else n&&(s=wi[r].findIndex((function(i){return gi(i,n)})));var c=wi[r],l=c[t],y=l;if(-1===s)for(u=t+1;u<c.length&&o/(c[u].divisor/l.divisor)>=1;++u)y=c[u];else y=c[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||l.display)+'" to "'+n+'"'),[o/(y.divisor/l.divisor)*a,y.display]}(i,e.unit,e.targetUnit),u=d[0],c=d[1];return[""+Gi(u,r),c];case vi.DataRate:var l=function(i,e,n){var r=Si.length-1,t=0,s=-1,a=Math.sign(i),o=Math.abs(i);if(e)for(var d=function(i){var a=-1,o=-1;if(Si[i].forEach((function(i,r){mi(i,e)&&(a=r),mi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},u=0;u<Si.length&&"break"!==d(u);++u);else n&&(s=Si[r].findIndex((function(i){return mi(i,n)})));var c=Si[r],l=c[t],y=l;if(-1===s)for(u=t+1;u<c.length&&o/(c[u].divisor/l.divisor)>=1;++u)y=c[u];else y=c[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||l.display)+'" to "'+n+'"'),[o/(y.divisor/l.divisor)*a,y.display]}(i,e.unit,e.targetUnit),y=l[0],p=l[1];return[""+Gi(y,r),p];case vi.None:return[Gi(i,r),""];default:return[Ki(i,e.unit,r),e.unit]}};function Ci(i,e,n,r){return void 0===n&&(n=2),Li(i,{unit:e,precision:n,targetUnit:r})}var Ai=n(8679);function Ni(i){var e;try{e=(0,Ai.safeLoad)(i,{schema:Ai.JSON_SCHEMA,json:!0})}catch(i){console.error(i)}return e}function xi(i,e,n){var r;void 0===e&&(e=2);try{r=(0,Ai.safeDump)(i,{indent:e,schema:Ai.JSON_SCHEMA,skipInvalid:!0,noRefs:!0,noCompatMode:!0,sortKeys:null==n?void 0:n.sortKeys})}catch(i){console.error(i)}return r}function ji(i,e){return(0,u.round)(i,e)}function Ii(i){return decodeURIComponent(atob(i).split("").map((function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)})).join(""))}function Oi(i){return btoa(encodeURIComponent(i).replace(/%([0-9A-F]{2})/g,(function(i,e){return String.fromCharCode(Number("0x"+e))})))}}}]);
2
- //# sourceMappingURL=4306.a80e205b.js.map
1
+ "use strict";(globalThis.webpackChunk_next_bricks_ai=globalThis.webpackChunk_next_bricks_ai||[]).push([[4306],{4306:(i,e,n)=>{n.r(e),n.d(e,{pipes:()=>t,utils:()=>r});var r={};n.r(r),n.d(r,{convertUnitValueByPrecision:()=>Gi,formatUnitValue:()=>Li});var t={};function s(i,e){return i+e}function a(i){return"0"!==i&&Boolean(i)}n.r(t),n.d(t,{add:()=>s,atobUnicode:()=>Ii,bool:()=>o,boolean:()=>a,btoaUnicode:()=>Oi,cmdbInstanceShowName:()=>d,countBy:()=>c,datetime:()=>p,deltaTime:()=>v,divide:()=>B,equal:()=>m,find:()=>g,findIndex:()=>h,findLast:()=>M,findLastIndex:()=>w,get:()=>k,graphTree:()=>S,groupBy:()=>P,groupByToIndex:()=>C,includes:()=>A,join:()=>N,json:()=>x,jsonStringify:()=>j,keyBy:()=>I,map:()=>O,mapToArray:()=>R,mergeArrayByKey:()=>D,multiply:()=>_,not:()=>U,nullish:()=>H,number:()=>Y,parseTimeRange:()=>q,randomString:()=>F,reverse:()=>J,round:()=>ji,slice:()=>W,sort:()=>z,split:()=>V,string:()=>Q,substr:()=>X,substring:()=>Z,subtract:()=>$,ternary:()=>ii,uniq:()=>ei,unitFormat:()=>Ci,yaml:()=>Ni,yamlStringify:()=>xi});var o=a;function d(i){if(Array.isArray(i)){var e=i[0]||"",n=i.slice(1,i.length).join(",");return n?e+(e?"("+n+")":""+n):e||"-"}return i}var u=n(563);function c(i,e){return(0,u.countBy)(i,e)}var l=n(1916),y=n.n(l);function p(i,e){return y()(i).format(e)}function f(i){return"object"==typeof i&&null!==i}function b(i,e){return"number"==typeof i?y()(i):y()(i,e)}function v(i,e,n){if(void 0===e&&(e=!0),void 0===n&&(n="YYYY-MM-DD HH:mm:ss"),!i)return"";if(f(i)&&i.startTime&&i.endTime){var r=b(i.startTime,n),t=b(i.endTime,n);return y().duration(t.diff(r)).humanize(e)}var s=b(f(i)?i.startTime||i.endTime:i,n);return y().duration(s.diff(y()())).humanize(e)}function B(i,e){return i/e}function m(i,e){return(0,u.isEqual)(i,e)}function g(i,e,n){return(0,u.find)(i,e,n)}function h(i,e,n){return(0,u.findIndex)(i,e,n)}function M(i,e,n){return(0,u.findLast)(i,e,n)}function w(i,e,n){return(0,u.findLastIndex)(i,e,n)}function k(i,e,n){return(0,u.get)(i,e,n)}function S(i,e){var n,r;if(!i)return[];var t=null==e?void 0:e.sort,s=(0,u.groupBy)(i.edges,"out"),a=function(e){var n=s[e.instanceId];if((0,u.forEach)(n,(function(n){var r=n.out_name,t=(0,u.find)(i.vertices,["instanceId",n.in]);if(t){var s=a(t);e[r]?e[r].push(s):e[r]=[s]}})),t){var r=(0,u.uniq)((0,u.map)(n,"out_name"));(0,u.forEach)(r,(function(i){(0,u.isEmpty)(e[i])||(e[i]=(0,u.orderBy)(e[i],(function(i){var e;return null!==(e=(0,u.get)(i,t.key))&&void 0!==e?e:-1/0}),-1===t.order?"desc":"asc"))}))}return e};return null!==(r=null===(n=i.topic_vertices)||void 0===n?void 0:n.map((function(i){return a(i)})))&&void 0!==r?r:[]}function P(i,e){return(0,u.groupBy)(i,e)}var K,T,G=function(){return G=Object.assign||function(i){for(var e,n=1,r=arguments.length;n<r;n++)for(var t in e=arguments[n])Object.prototype.hasOwnProperty.call(e,t)&&(i[t]=e[t]);return i},G.apply(this,arguments)};function L(){for(var i=0,e=0,n=arguments.length;e<n;e++)i+=arguments[e].length;var r=Array(i),t=0;for(e=0;e<n;e++)for(var s=arguments[e],a=0,o=s.length;a<o;a++,t++)r[t]=s[a];return r}function C(i,e,n){var r=i;if(!(0,u.isNil)(e)&&!(0,u.isNil)(n)){var t=(0,u.groupBy)(i,e),s=(0,u.keys)(t).sort();r=r.map((function(i){var r=G({},i);return(0,u.set)(r,n,(0,u.indexOf)(s,(0,u.get)(i,e))),r}))}return r}function A(i,e){return i.includes(e)}function N(i,e){return void 0===e&&(e=","),Array.isArray(i)?i.join(e):""}function x(i){if((0,u.isNil)(i))return i;try{return JSON.parse(i)}catch(i){return void console.error(i)}}function j(i,e){void 0===e&&(e=2);try{return JSON.stringify(i,null,e)}catch(i){return void console.error(i)}}function I(i,e){return(0,u.keyBy)(i,e)}function O(i,e){return Array.isArray(i)?i.map((function(i){return(0,u.get)(i,e)})):[]}function R(i,e,n){return"object"==typeof i&&i?Object.entries(i).map((function(i){var r,t=i[0],s=i[1];return(r={})[e]=t,r[n]=s,r})):[]}function D(i,e){return i.reduce((function(i,n){return Object.values((0,u.mergeWith)((0,u.keyBy)(i,e),(0,u.keyBy)(n,e),E))}),[])}function E(i,e){if((0,u.isArray)(i))return i.concat(e)}function _(i,e){return i*e}function U(i){return!i}function H(i,e){return null!=i?i:e}function Y(i){return Number(i)}function q(i){if("now/d"===i)return+y()().startOf("day");if("now/y"===i)return+y()().startOf("year");var e=/^now-(\d+)(\w+)/.exec(i);if(null!==e){var n=e[1],r=e[2];return+y()().subtract(n,r)}return i?+i:+y()()}function F(i,e){i=i>0?i:8,e="string"==typeof e?e:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(var n="",r=0;r<i;r++)n+=e.charAt(Math.floor(Math.random()*e.length));return n}function J(i){return Array.isArray(i)?i.slice().reverse():[]}function W(i,e,n){return i.slice(e,n)}function z(i,e){return Array.isArray(i)?(0,u.sortBy)(i,e):[]}function V(i,e){return"string"==typeof i?i.split(e):[]}function Q(i){return null==i?"":String(i)}function X(i,e,n){return"string"==typeof i?i.substr(e,n):""}function Z(i,e,n){return"string"==typeof i?i.substring(e,n):""}function $(i,e){return i-e}function ii(i,e,n){return i?e:n}function ei(i){return(0,u.uniq)(i)}Object.create,Object.create,"function"==typeof SuppressedError&&SuppressedError,function(i){i.Time="time",i.Byte="byte",i.Bibyte="bibyte",i.BitRate="bitRate",i.ByteRate="byteRate"}(K||(K={})),function(i){i.Percent1="percent(1)",i.Percent100="percent(100)"}(T||(T={}));var ni,ri=[T.Percent1,T.Percent100];!function(i){i.Bytes="bytes",i.Kilobytes="kilobytes",i.Megabytes="megabytes",i.Gigabytes="gigabytes",i.Terabytes="terabytes",i.Petabytes="petabytes",i.Bibytes="bibytes",i.Kibibytes="kibibytes",i.Mebibytes="mebibytes",i.Gibibytes="gibibytes",i.Tebibytes="tebibytes",i.Pebibytes="pebibytes",i.b="b",i.B="B",i.KB="KB",i.MB="MB",i.GB="GB"}(ni||(ni={}));var ti,si=[{id:ni.Bytes,alias:["B","bytes(B)"],divisor:1,display:"B"},{id:ni.Kilobytes,alias:["KB","kilobytes(KB)"],divisor:1e3,display:"KB"},{id:ni.Megabytes,alias:["MB","megabytes(MB)"],divisor:Math.pow(1e3,2),display:"MB"},{id:ni.Gigabytes,alias:["GB","gigabytes(GB)"],divisor:Math.pow(1e3,3),display:"GB"},{id:ni.Terabytes,alias:["TB","terabytes(TB)"],divisor:Math.pow(1e3,4),display:"TB"},{id:ni.Petabytes,alias:["PB","petabytes(PB)"],divisor:Math.pow(1e3,5),display:"PB"}],ai=[{id:ni.Bibytes,alias:["B","bibytes(B)"],divisor:1,display:"B"},{id:ni.Kibibytes,alias:["KiB","kibibytes(KiB)"],divisor:1024,display:"KiB"},{id:ni.Mebibytes,alias:["MiB","mebibytes(MiB)"],divisor:Math.pow(1024,2),display:"MiB"},{id:ni.Gibibytes,alias:["GiB","gibibytes(GiB)"],divisor:Math.pow(1024,3),display:"GiB"},{id:ni.Tebibytes,alias:["TiB","tebibytes(TiB)"],divisor:Math.pow(1024,4),display:"TiB"},{id:ni.Pebibytes,alias:["PiB","pebibytes(PiB)"],divisor:Math.pow(1024,5),display:"PiB"}],oi=[{id:ni.b,divisor:1,display:"b"},{id:ni.B,divisor:8,display:"B"},{id:ni.KB,divisor:8192,display:"KB"},{id:ni.MB,divisor:8388608,display:"MB"},{id:ni.GB,divisor:8589934592,display:"GB"}];!function(i){i.BitsPerSecond="bits/sec",i.KilobitsPerSecond="kilobits/sec",i.MegabitsPerSecond="megabits/sec",i.GigabitsPerSecond="gigabits/sec",i.BytesPerSecond="bytes/sec",i.KilobytesPerSecond="kilobytes/sec",i.MegabytesPerSecond="megabytes/sec",i.GigabytesPerSecond="gigabytes/sec",i.bps="bps",i.Bps="Bps",i.KBps="KBps",i.MBps="MBps",i.GBps="GBps"}(ti||(ti={}));var di,ui=[{id:ti.BitsPerSecond,alias:["bps","bits/sec(bps)"],divisor:1,display:"bps"},{id:ti.KilobitsPerSecond,alias:["Kbps","kilobits/sec(Kbps)"],divisor:1024,display:"Kbps"},{id:ti.MegabitsPerSecond,alias:["Mbps","megabits/sec(Mbps)"],divisor:1048576,display:"Mbps"},{id:ti.GigabitsPerSecond,alias:["Gbps","gigabits/sec(Gbps)"],divisor:1073741824,display:"Gbps"}],ci=[{id:ti.BytesPerSecond,alias:["Bps","bytes/sec(Bps)"],divisor:8,display:"Bps"},{id:ti.KilobytesPerSecond,alias:["KBps","kilobytes/sec(KBps)"],divisor:8192,display:"KBps"},{id:ti.MegabytesPerSecond,alias:["MBps","megabytes/sec(MBps)"],divisor:8388608,display:"MBps"},{id:ti.GigabytesPerSecond,alias:["GBps","gigabytes/sec(GBps)"],divisor:8589934592,display:"GBps"}],li=[{id:ti.bps,divisor:1,display:"bps"},{id:ti.Bps,divisor:8,display:"Bps"},{id:ti.KBps,divisor:8192,display:"KBps"},{id:ti.MBps,divisor:8388608,display:"MBps"},{id:ti.GBps,divisor:8589934592,display:"GBps"}];!function(i){i.Nanosecond="nanoseconds",i.Microsecond="microseconds",i.Milliseconds="milliseconds",i.Seconds="seconds",i.Minutes="minutes",i.Hours="hours",i.Days="days",i.Weeks="weeks",i.Months="months",i.Years="years",i.ms="ms",i.s="s",i.min="min",i.hour="hour",i.day="day",i.week="week"}(di||(di={}));var yi,pi,fi=[{id:di.Nanosecond,alias:["ns","nanoseconds(ns)"],divisor:1,display:"ns"},{id:di.Microsecond,alias:["μs","microseconds(μs)"],divisor:1e3,display:"μs"},{id:di.Milliseconds,alias:["ms","milliseconds(ms)"],divisor:1e6,display:"ms"},{id:di.Seconds,alias:["s","seconds(s)"],divisor:1e9,display:"s"},{id:di.Minutes,alias:["min","minutes(min)"],divisor:6e10,display:"min"},{id:di.Hours,alias:["hour","hours(hour)"],divisor:36e11,display:"hour"},{id:di.Days,alias:["day","days(day)"],divisor:864e11,display:"day"},{id:di.Weeks,alias:["week","weeks(week)"],divisor:6048e11,display:"week"},{id:di.Months,alias:["month","months(month)"],divisor:2592e12,display:"month"},{id:di.Years,alias:["year","years(year)"],divisor:31536e12,display:"year"}];di.ms,di.s,di.min,di.hour,di.day,di.week,(yi={})[K.Time]=fi,yi[K.Byte]=si,yi[K.Bibyte]=ai,yi[K.BitRate]=ui,yi[K.ByteRate]=ci,function(i){i.None="none",i.K="K",i.M="M",i.B="B",i.T="T"}(pi||(pi={}));var bi,vi,Bi=[{id:pi.None,divisor:1,display:""},{id:pi.K,divisor:1e3,display:"K"},{id:pi.M,divisor:1e6,display:"M"},{id:pi.B,divisor:1e9,display:"B"},{id:pi.T,divisor:1e12,display:"T"}],mi=function(i,e){return i.id.toLocaleLowerCase()===(null==e?void 0:e.toLocaleLowerCase())||i.alias&&i.alias.map((function(i){return i.toLocaleLowerCase()})).includes(e)},gi=function(i,e){return i.id.toLocaleLowerCase()===(null==e?void 0:e.toLocaleLowerCase())||i.alias&&i.alias.includes(e)},hi=[fi],Mi=[].concat.apply([],hi.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),wi=[si,ai,oi],ki=[].concat.apply([],wi.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),Si=[ui,ci,li],Pi=[].concat.apply([],Si.map((function(i){return L(i.map((function(i){return i.id})),[].concat.apply([],i.map((function(i){return i.alias?i.alias:[]}))))}))),Ki=function(i,e,n){var r=0,t=Math.sign(i),s=Math.abs(i);if(e){var a=Bi.findIndex((function(i){return i.id.toLocaleLowerCase()===e.toLocaleLowerCase()}));-1!==a&&(r=a)}for(var o=Bi[r],d=r+1;d<Bi.length&&s/(Bi[d].divisor/Bi[r].divisor)>=1;++d)o=Bi[d];return o.id===pi.None?(t*s).toFixed(null!=n?n:2):(s/(o.divisor/Bi[r].divisor)*t).toFixed(null!=n?n:2)+o.display};!function(i){i.None="none",i.Short="short",i.Percent="percent",i.Time="time",i.Data="data",i.DataRate="data_rate"}(vi||(vi={}));var Ti=((bi={})[vi.None]=[],bi[vi.Short]=[],bi[vi.Percent]=ri,bi[vi.Time]=Mi,bi[vi.Data]=ki,bi[vi.DataRate]=Pi,bi),Gi=function(i,e){return void 0===e?i.toString():i.toFixed(e)},Li=function(i,e){if(!e)return[Ki(i),null];var n=e.type;n||(e.unit?(n=vi.Short,Object.entries(Ti).map((function(i){var r=i[0];i[1].map((function(i){return i.toLocaleLowerCase()})).includes(e.unit.toLocaleLowerCase())&&(n=r)}))):n=vi.None);var r=void 0===(null==e?void 0:e.precision)?2:e.precision;switch(n){case vi.Percent:var t=function(i,e){return e&&e.toLocaleLowerCase()===T.Percent100.toLocaleLowerCase()?i:100*i}(i,e.unit);return[Gi(t,r)+"%",null];case vi.Time:var s=function(i,e,n){var r=0,t=2,s=-1;if(e)for(var a=function(i){var a=-1,o=-1;if(hi[i].forEach((function(i,r){mi(i,e)&&(a=r),mi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},o=0;o<hi.length&&"break"!==a(o);++o);else n&&(s=hi[r].findIndex((function(i){return mi(i,n)})));var d=hi[r],u=d[t],c=u;if(-1===s)for(o=t+1;o<d.length&&i/(d[o].divisor/u.divisor)>=1;++o)c=d[o];else c=d[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||u.display)+'" to "'+n+'"'),[i/(c.divisor/u.divisor),c.display]}(i,e.unit,e.targetUnit),a=s[0],o=s[1];return[""+Gi(a,void 0===(null==e?void 0:e.precision)?1:e.precision),o];case vi.Data:var d=function(i,e,n){var r=wi.length-1,t=0,s=-1,a=Math.sign(i),o=Math.abs(i);if(e)for(var d=function(i){var a=-1,o=-1;if(wi[i].forEach((function(i,r){gi(i,e)&&(a=r),gi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},u=0;u<wi.length&&"break"!==d(u);++u);else n&&(s=wi[r].findIndex((function(i){return gi(i,n)})));var c=wi[r],l=c[t],y=l;if(-1===s)for(u=t+1;u<c.length&&o/(c[u].divisor/l.divisor)>=1;++u)y=c[u];else y=c[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||l.display)+'" to "'+n+'"'),[o/(y.divisor/l.divisor)*a,y.display]}(i,e.unit,e.targetUnit),u=d[0],c=d[1];return[""+Gi(u,r),c];case vi.DataRate:var l=function(i,e,n){var r=Si.length-1,t=0,s=-1,a=Math.sign(i),o=Math.abs(i);if(e)for(var d=function(i){var a=-1,o=-1;if(Si[i].forEach((function(i,r){mi(i,e)&&(a=r),mi(i,n)&&(o=r)})),-1!==a)return r=i,t=a,s=o,"break"},u=0;u<Si.length&&"break"!==d(u);++u);else n&&(s=Si[r].findIndex((function(i){return mi(i,n)})));var c=Si[r],l=c[t],y=l;if(-1===s)for(u=t+1;u<c.length&&o/(c[u].divisor/l.divisor)>=1;++u)y=c[u];else y=c[s];return n&&-1===s&&console.warn('Cannot convert unit "'+(e||l.display)+'" to "'+n+'"'),[o/(y.divisor/l.divisor)*a,y.display]}(i,e.unit,e.targetUnit),y=l[0],p=l[1];return[""+Gi(y,r),p];case vi.None:return[Gi(i,r),""];default:return[Ki(i,e.unit,r),e.unit]}};function Ci(i,e,n,r){return void 0===n&&(n=2),Li(i,{unit:e,precision:n,targetUnit:r})}var Ai=n(8679);function Ni(i){var e;try{e=(0,Ai.safeLoad)(i,{schema:Ai.JSON_SCHEMA,json:!0})}catch(i){console.error(i)}return e}function xi(i,e,n){var r;void 0===e&&(e=2);try{r=(0,Ai.safeDump)(i,G({indent:e,schema:Ai.JSON_SCHEMA,skipInvalid:!0,noRefs:!0,noCompatMode:!0},n))}catch(i){console.error(i)}return r}function ji(i,e){return(0,u.round)(i,e)}function Ii(i){return decodeURIComponent(atob(i).split("").map((function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)})).join(""))}function Oi(i){return btoa(encodeURIComponent(i).replace(/%([0-9A-F]{2})/g,(function(i,e){return String.fromCharCode(Number("0x"+e))})))}}}]);
2
+ //# sourceMappingURL=4306.128090c0.js.map