@blueking/ai-blueking 2.2.0-beta.4 → 2.2.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/standalone/index.es.min.js +43 -34
- package/dist/standalone/index.iife.min.js +152 -152
- package/dist/standalone/index.umd.min.js +170 -170
- package/dist/vue2/index.es.min.js +43 -34
- package/dist/vue2/index.iife.min.js +2 -2
- package/dist/vue2/index.umd.min.js +2 -2
- package/dist/vue3/index.es.min.js +43 -34
- package/dist/vue3/index.iife.min.js +2 -2
- package/dist/vue3/index.umd.min.js +2 -2
- package/package.json +2 -2
|
@@ -3482,8 +3482,8 @@ Use Shift + Enter to enter a new line`:`输入 "/" 唤出 Skill
|
|
|
3482
3482
|
输入 "@" 唤出 工具和 MCP
|
|
3483
3483
|
通过 Shift + Enter 进行换行输入`},prompts:{default:()=>[]},resources:{default:()=>[]},sendDisabledTip:{},shortcutId:{},shortcuts:{},skills:{default:()=>[]},supportUpload:{type:Boolean,default:!0},tippyOptions:{}},{cite:{required:!1,default:``},citeModifiers:{}}),emits:(0,t.mergeModels)([`selectShortcut`,`deleteShortcut`,`update:modelValue`],[`update:cite`]),setup(e,{expose:n,emit:r}){let i=(0,t.useTemplateRef)(`aiSlashInputRef`),a=(0,t.useTemplateRef)(`filesRef`),o=(0,t.useModel)(e,`cite`),s=(0,t.shallowRef)(200),l=e,u=r,d=(0,t.ref)(l.defaultUploadFiles||[]),f=(0,t.computed)(()=>l.shortcuts?.find(e=>e.id===l.shortcutId)),p=(0,t.computed)(()=>l.messageStatus&&[X8.Pending,X8.Streaming,X8.Fetching].includes(l.messageStatus)?l.messageStatus:l.modelValue?.length<1||Array.isArray(l.modelValue)&&!Z7(l.modelValue).trim()?X8.Disabled:l.messageStatus);(0,t.watchPostEffect)(()=>{let e=l.inputMaxHeight||200;if(d.value.length<1||!a.value){s.value=e;return}s.value=e+(a.value?.clientHeight||0)});let m=function(){var e=c5(function*(){try{var e,t,n,r;if(l.sendDisabledTip)return;(e=i.value)==null||(t=e.cleanup)==null||t.call(e);let a;(n=d.value)!=null&&n.length?(a=d.value?.slice().map(e=>({type:J8.Binary,url:e.url,mimeType:e.file?.type||``,filename:e.file?.name||``})),l.modelValue&&a.push({type:J8.Text,text:Z7(l.modelValue)})):a=typeof l.modelValue==`string`?l.modelValue:Z7(l.modelValue),(r=l.onSendMessage)==null||r.call(l,a,l.modelValue),d.value=[]}catch(e){console.error(e)}});return function(){return e.apply(this,arguments)}}(),h=e=>{if(e.key===`Enter`||e.key===`NumpadEnter`){if(e.shiftKey||p.value===X8.Disabled||l.sendDisabledTip||p.value===X8.Fetching||p.value===X8.Streaming||p.value===X8.Pending)return;m()}},g=function(){var e=c5(function*(){try{var e;(e=l.onStopSending)==null||e.call(l)}catch(e){console.error(e)}});return function(){return e.apply(this,arguments)}}(),_=()=>{o.value=``},v=e=>{u(`selectShortcut`,e)},y=()=>{u(`deleteShortcut`)},b=e=>`${e.name}_${e.size}_${e.lastModified}`,x=(XDt/(1024*1024)).toFixed(1),S=function(){var e=c5(function*(e){if(!l.supportUpload)return;if(d.value.length>=3){e.length>0&&rc({message:B8(e.length,x,W8),theme:`error`});return}let t=new Set(d.value.map(e=>e.file?b(e.file):``)),n=0;for(let i=0;i<e.length;i++){var r;let a=e[i];if(d.value.length>=3){n+=e.length-i;break}let o=b(a);if(t.has(o)){n+=1;continue}if(a.size<=0||a.size>=2516582.4){n+=1;continue}t.add(o);let s={file:a,status:Q7.Pending};d.value.push(s),(r=l.onUpload)==null||r.call(l,a).then(e=>{if(e&&typeof e==`object`&&`download_url`in e){s.url=e.download_url,s.status=Q7.Success;return}s.status=Q7.Error}).catch(()=>{s.status=Q7.Error})}n>0&&rc({message:B8(n,x,W8),theme:`error`})});return function(t){return e.apply(this,arguments)}}(),C=e=>{d.value=d.value.filter(t=>t.file?t.file!==e.file:t.url?t.url!==e.url:t.filename?t.filename!==e.filename:!0)},w=(e,t)=>{u(`update:modelValue`,e,t)};return n({focus:()=>{var e,t;(e=i.value)==null||(t=e.focus)==null||t.call(e)},triggerSendMessage:m}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`chat-input-container`,style:(0,t.normalizeStyle)({"--chat-z-index":(0,t.unref)(UDt)})},[(0,t.renderSlot)(n.$slots,`top`),(0,t.renderSlot)(n.$slots,`interrupt`),(0,t.createElementVNode)(`div`,{class:`chat-input`,style:(0,t.normalizeStyle)({maxHeight:s.value+`px`})},[(0,t.renderSlot)(n.$slots,`input-header`,{},()=>[o.value?((0,t.openBlock)(),(0,t.createBlock)(bFt,{key:0,class:`chat-input-cite`,content:o.value,onClose:_},null,8,[`content`])):(0,t.createCommentVNode)(``,!0)]),(0,t.renderSlot)(n.$slots,`files`,(0,t.normalizeProps)((0,t.guardReactiveProps)({files:d.value})),()=>[d.value.length?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,ref_key:`filesRef`,ref:a,class:`chat-input-files`},[(0,t.createVNode)(t9,{files:d.value,onDeleteFile:C},null,8,[`files`])],512)):(0,t.createCommentVNode)(``,!0)]),(0,t.createVNode)(_It,{ref_key:`aiSlashInputRef`,ref:i,"model-value":e.modelValue,placeholder:e.placeholder,prompts:e.prompts,resources:e.resources,skills:e.skills,onKeydown:h,"onUpdate:modelValue":w,onUpload:S},null,8,[`model-value`,`placeholder`,`prompts`,`resources`,`skills`]),(0,t.createVNode)(yIt,{"message-state":p.value,"send-disabled-tip":e.sendDisabledTip,"tippy-options":e.tippyOptions,onSendMessage:m,onStopSending:g},{default:(0,t.withCtx)(()=>{var r;return[e.supportUpload?((0,t.openBlock)(),(0,t.createBlock)(_Ft,{key:0,"tippy-options":e.tippyOptions,onUpload:S},null,8,[`tippy-options`])):(0,t.createCommentVNode)(``,!0),e.supportUpload&&((r=e.shortcuts)!=null&&r.length||f.value)?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,bIt)):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`attachment`,{},()=>[e.shortcuts&&!f.value?((0,t.openBlock)(),(0,t.createBlock)(hkt,{key:0,shortcuts:e.shortcuts,onSelectShortcut:v},null,8,[`shortcuts`])):(0,t.createCommentVNode)(``,!0),f.value?((0,t.openBlock)(),(0,t.createBlock)(l5,{key:1,class:`selected-shortcut-btn`,shortcut:f.value},{append:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(o5),{onClick:y})]),_:1},8,[`shortcut`])):(0,t.createCommentVNode)(``,!0)])]}),"send-icon":(0,t.withCtx)(()=>[(0,t.renderSlot)(n.$slots,`send-icon`)]),_:3},8,[`message-state`,`send-disabled-tip`,`tippy-options`])],4)],4))}}),SIt={class:`chat-input-info-alert`},CIt={class:`chat-input-info-alert__text`},wIt=(0,t.defineComponent)({__name:`input-info-alert`,props:{content:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,SIt,[(0,t.createVNode)((0,t.unref)(LOt),{class:`chat-input-info-alert__icon`}),(0,t.createElementVNode)(`span`,CIt,(0,t.toDisplayString)(e.content),1)]))}}),r9=`others`,TIt=e=>e<26?String.fromCharCode(65+e):String(e+1),EIt=e=>{let n=(0,t.computed)(()=>{var t;return((t=e())==null||(t=t.metadata)==null?void 0:t.questions)??[]}),r=(0,t.shallowRef)({}),i=e=>r.value[e],a=(e,t)=>{r.value=$($({},r.value),{},{[e]:t})},o=(0,t.computed)(()=>n.value.length),s=(0,t.computed)(()=>n.value.reduce((e,t,n)=>e+ +!!r.value[n],0)),l=(0,t.computed)(()=>o.value>0&&s.value===o.value),u=()=>n.value.map((e,t)=>r.value[t]??{question:e.question,answer:[]});return{questions:n,answeredCount:s,totalCount:o,completed:l,getAnswer:i,setAnswer:a,buildResolvePayload:()=>({interruptId:e()?.id??``,reason:q8.UserQuestion,status:`resolved`,payload:{answers:u()}}),buildSkipPayload:()=>DIt(e())}},DIt=e=>({interruptId:e?.id??``,reason:q8.UserQuestion,status:`cancelled`,payload:{answers:[]}}),OIt={class:`ai-user-question-answered`},kIt={class:`ai-user-question-answered__header`},AIt={class:`ai-user-question-answered__title-wrap`},jIt={class:`ai-user-question-answered__title`},MIt={class:`ai-user-question-answered__status`},NIt={class:`ai-user-question-answered__body`},PIt={class:`ai-user-question-answered__question`},FIt={class:`ai-user-question-answered__question-text`},IIt={key:0,class:`ai-user-question-answered__tag`},LIt=(0,t.defineComponent)({__name:`user-question-answered-card`,props:{answers:{},status:{default:`resolved`}},setup(e){let n=e,r=(0,t.computed)(()=>n.status===`cancelled`?G8(`已取消`):G8(`已回复`));return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`section`,OIt,[(0,t.createElementVNode)(`header`,kIt,[(0,t.createElementVNode)(`div`,AIt,[(0,t.createVNode)((0,t.unref)(IOt),{class:`ai-user-question-answered__help-icon`}),(0,t.createElementVNode)(`span`,jIt,(0,t.toDisplayString)((0,t.unref)(G8)(`回答内容`)),1)]),(0,t.createElementVNode)(`span`,MIt,(0,t.toDisplayString)(r.value),1)]),(0,t.createElementVNode)(`div`,NIt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.answers,(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:i,class:`ai-user-question-answered__item`},[(0,t.createElementVNode)(`div`,PIt,[(0,t.createElementVNode)(`span`,FIt,(0,t.toDisplayString)(i+1)+`. `+(0,t.toDisplayString)(r.question),1),r.multiSelect===void 0?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,IIt,(0,t.toDisplayString)(r.multiSelect?(0,t.unref)(G8)(`多选`):(0,t.unref)(G8)(`单选`)),1))]),(0,t.renderSlot)(n.$slots,`answer`,(0,t.mergeProps)({ref_for:!0},{item:r,index:i,status:e.status}),()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(r.answer,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`p`,{key:n,class:`ai-user-question-answered__answer`},(0,t.toDisplayString)(e.description||e.label),1))),128))])]))),128))])]))}}),RIt={class:`ai-user-question-option__badge`},zIt=[`placeholder`,`value`],BIt={key:1,class:`ai-user-question-option__text`},VIt=(0,t.defineComponent)({__name:`user-question-option`,props:{option:{},othersText:{},selected:{type:Boolean}},emits:[`confirm`,`select`,`update:othersText`],setup(e,{emit:n}){let r=e,i=n,a=()=>{i(`select`)},o=()=>{r.selected||i(`select`)},s=e=>{let t=e.target.value;i(`update:othersText`,t),r.selected||i(`select`)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`ai-user-question-option`,{"ai-user-question-option--selected":e.selected,"ai-user-question-option--others":e.option.isOthers}]),onClick:a},[(0,t.createElementVNode)(`span`,RIt,(0,t.toDisplayString)(e.option.letter),1),e.option.isOthers?((0,t.openBlock)(),(0,t.createElementBlock)(`input`,{key:0,class:`ai-user-question-option__input`,placeholder:(0,t.unref)(G8)(`请输入...`),value:e.othersText,onClick:r[0]||=(0,t.withModifiers)(()=>{},[`stop`]),onFocus:o,onInput:s,onKeydown:r[1]||=(0,t.withKeys)((0,t.withModifiers)(e=>i(`confirm`),[`stop`]),[`enter`])},null,40,zIt)):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,BIt,(0,t.toDisplayString)(e.option.description),1))],2))}}),HIt={class:`ai-user-question-choice`},UIt=(0,t.defineComponent)({__name:`user-question-choice`,props:{question:{}},emits:[`answer`,`confirm`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.shallowRef)([]),o=(0,t.shallowRef)(``),s=(0,t.computed)(()=>{let e=(r.question.options??[]).filter(e=>e.label!==r9).map((e,t)=>$($({},e),{},{isOthers:!1,letter:TIt(t)}));return e.push({label:r9,description:``,isOthers:!0,letter:TIt(e.length)}),e}),l=(0,t.computed)(()=>s.value.findIndex(e=>e.isOthers)),u=e=>a.value.includes(e),d=(0,t.computed)(()=>a.value.length?l.value>=0&&a.value.includes(l.value)?o.value.trim().length>0:!0:!1),f=()=>({question:r.question.question,multiSelect:r.question.multiSelect,answer:a.value.map(e=>{let t=s.value[e];return t!=null&&t.isOthers?{label:r9,description:o.value.trim()}:{label:t?.label??``,description:t?.description??``}})}),p=()=>i(`answer`,d.value?f():void 0),m=e=>{let t=a.value;a.value=r.question.multiSelect?t.includes(e)?t.filter(t=>t!==e):[...t,e]:[e],p()},h=e=>{o.value=e,p()};return(0,t.watch)(()=>r.question,()=>{a.value=[],o.value=``,p()}),(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,HIt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(s.value,(e,r)=>((0,t.openBlock)(),(0,t.createBlock)(VIt,{key:r,option:e,"others-text":o.value,selected:u(r),onConfirm:n[0]||=e=>i(`confirm`),onSelect:e=>m(r),"onUpdate:othersText":h},null,8,[`option`,`others-text`,`selected`,`onSelect`]))),128))]))}}),WIt={class:`ai-user-question-card__title-wrap`},GIt={class:`ai-user-question-card__title`},KIt={class:`ai-user-question-card__counter-wrap`},qIt={class:`ai-user-question-card__counter`},JIt={class:`ai-user-question-card__body`},YIt={class:`ai-user-question-card__question-title`},XIt={class:`ai-user-question-card__question-text`},ZIt={key:0,class:`ai-user-question-card__tag`},QIt={class:`ai-user-question-card__options`},$It={class:`ai-user-question-card__footer`},eLt=(0,t.defineComponent)({__name:`user-question-card`,props:{interrupt:{},onResume:{type:Function}},setup(e){let n=e,r=m5(),i=(0,t.shallowRef)(!1),{questions:a,answeredCount:o,totalCount:s,completed:l,getAnswer:u,setAnswer:d,buildResolvePayload:f,buildSkipPayload:p}=EIt(()=>n.interrupt),m=(0,t.computed)(()=>{var e;return((e=n.interrupt.metadata)==null||(e=e.questions)==null||(e=e[0])==null?void 0:e.header)||n.interrupt.message||``}),h=()=>{i.value=!i.value},g=()=>{i.value&&=!1},_=(0,t.shallowRef)(null),v=()=>{var e;!l.value||_.value!==null||(_.value=`complete`,(e=n.onResume)==null||e.call(n,f(),n.interrupt))},y=()=>{var e;_.value===null&&(_.value=`skip`,(e=n.onResume)==null||e.call(n,p(),n.interrupt))};return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`section`,{class:(0,t.normalizeClass)([`ai-user-question-card`,{"ai-user-question-card--collapsed":i.value}])},[(0,t.createElementVNode)(`header`,{class:`ai-user-question-card__header`,onClick:g},[(0,t.createElementVNode)(`div`,WIt,[(0,t.createVNode)((0,t.unref)(IOt),{class:`ai-user-question-card__help-icon`}),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,GIt,[(0,t.createTextVNode)((0,t.toDisplayString)(m.value),1)])),[[(0,t.unref)(h5),$({},(0,t.unref)(r))]])]),(0,t.createElementVNode)(`div`,KIt,[(0,t.createElementVNode)(`span`,qIt,(0,t.toDisplayString)((0,t.unref)(o))+` / `+(0,t.toDisplayString)((0,t.unref)(s)),1),(0,t.createVNode)((0,t.unref)(COt),{class:`ai-user-question-card__arrow`,style:(0,t.normalizeStyle)({transform:i.value?`rotate(180deg)`:`rotate(-90deg)`}),onClick:(0,t.withModifiers)(h,[`stop`])},null,8,[`style`])])]),(0,t.withDirectives)((0,t.createElementVNode)(`div`,JIt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(a),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:r,class:`ai-user-question-card__question`},[(0,t.createElementVNode)(`div`,YIt,[(0,t.createElementVNode)(`span`,XIt,(0,t.toDisplayString)(r+1)+`. `+(0,t.toDisplayString)(n.question),1),n.multiSelect===void 0?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,ZIt,(0,t.toDisplayString)(n.multiSelect?(0,t.unref)(G8)(`多选`):(0,t.unref)(G8)(`单选`)),1))]),(0,t.createElementVNode)(`div`,QIt,[(0,t.renderSlot)(e.$slots,`question`,(0,t.mergeProps)({ref_for:!0},{question:n,qIndex:r,answer:(0,t.unref)(u)(r),setAnswer:e=>(0,t.unref)(d)(r,e),confirm:v}),()=>[(0,t.createVNode)(UIt,{question:n,onAnswer:e=>(0,t.unref)(d)(r,e),onConfirm:v},null,8,[`question`,`onAnswer`])])])]))),128))],512),[[t.vShow,!i.value]]),(0,t.withDirectives)((0,t.createElementVNode)(`footer`,$It,[(0,t.createVNode)((0,t.unref)(Wo),{class:`ai-user-question-card__complete`,disabled:!(0,t.unref)(l)||_.value===`skip`,loading:_.value===`complete`,size:`small`,theme:`primary`,onClick:v},{default:(0,t.withCtx)(()=>[_.value===`complete`?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(ROt),{key:0,class:`ai-user-question-card__enter-icon`})),(0,t.createTextVNode)(` `+(0,t.toDisplayString)((0,t.unref)(G8)(`完成`)),1)]),_:1},8,[`disabled`,`loading`]),(0,t.createVNode)((0,t.unref)(Wo),{class:`ai-user-question-card__skip`,disabled:_.value===`complete`,loading:_.value===`skip`,size:`small`,text:``,onClick:y},{default:(0,t.withCtx)(()=>[_.value===`skip`?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(zOt),{key:0,class:`ai-user-question-card__skip-icon`})),(0,t.createTextVNode)(` `+(0,t.toDisplayString)((0,t.unref)(G8)(`跳过`)),1)]),_:1},8,[`disabled`,`loading`])],512),[[t.vShow,!i.value]])],2))}}),tLt={class:`ai-delete-confirm`},nLt={class:`ai-delete-confirm__title`},rLt={class:`ai-delete-confirm__desc`},iLt={class:`ai-delete-confirm__actions`},aLt=(0,t.defineComponent)({__name:`delete-tool`,props:{description:{},id:{},name:{},disabled:{type:Boolean},tippyOptions:{}},emits:[`confirm`,`cancel`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.useTemplateRef)(`tippyRef`),o=(0,t.computed)(()=>({id:r.id,name:r.name,description:r.description,disabled:r.disabled,tippyOptions:r.tippyOptions})),s=(0,t.computed)(()=>$({arrow:!1,interactive:!0,offset:[0,6],theme:`ai-chat-box-light light`,trigger:`click`,appendTo:()=>document.body},r.tippyOptions||{})),l=()=>{if(r.disabled)return!1},u=()=>{var e,t;(e=a.value)==null||(t=e.hide)==null||t.call(e)},d=()=>{u(),i(`confirm`)},f=()=>{u(),i(`cancel`)};return(0,t.onUnmounted)(()=>{u()}),(e,n)=>((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(ql),(0,t.mergeProps)({ref_key:`tippyRef`,ref:a},s.value,{onShow:l}),{content:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,tLt,[(0,t.createElementVNode)(`div`,nLt,(0,t.toDisplayString)((0,t.unref)(G8)(`确认删除该回答?`)),1),(0,t.createElementVNode)(`div`,rLt,(0,t.toDisplayString)((0,t.unref)(G8)(`删除操作无法撤回,请谨慎操作!`)),1),(0,t.createElementVNode)(`div`,iLt,[(0,t.createVNode)((0,t.unref)(Wo),{size:`small`,theme:`danger`,onClick:d},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`删除`)),1)]),_:1}),(0,t.createVNode)((0,t.unref)(Wo),{size:`small`,onClick:f},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消`)),1)]),_:1})])])]),default:(0,t.withCtx)(()=>[(0,t.createVNode)(g5,(0,t.normalizeProps)((0,t.guardReactiveProps)(o.value)),null,16)]),_:1},16))}}),oLt={class:`ai-feedback-title`},sLt={class:`ai-feedback-reason-list`},cLt=[`onClick`],lLt={class:`ai-feedback-other`},uLt={class:`ai-feedback-footer`},dLt=(0,t.defineComponent)({__name:`user-feedback`,props:{loading:{type:Boolean},reasonList:{},title:{}},emits:[`submit`,`cancel`],setup(e,{emit:n}){let r=n,i=(0,t.shallowRef)(``),a=(0,t.shallowRef)([]),o=e=>{a.value.includes(e)?a.value=a.value.filter(t=>t!==e):a.value=[...a.value,e]},s=()=>{r(`submit`,a.value,i.value)},l=()=>{a.value=[],i.value=``,r(`cancel`)};return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`ai-user-feedback`,onMouseenter:r[1]||=(0,t.withModifiers)(()=>{},[`stop`,`prevent`])},[(0,t.createElementVNode)(`div`,oLt,(0,t.toDisplayString)(e.title),1),(0,t.createElementVNode)(`div`,sLt,[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(8,e=>(0,t.createElementVNode)(`div`,{key:e,class:`reason-item ai-skeleton-element`})),64)):((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(e.reasonList,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e,class:(0,t.normalizeClass)([`reason-item`,{"is-active":a.value.includes(e)}]),onClick:t=>o(e)},(0,t.toDisplayString)(e),11,cLt))),128))]),(0,t.createElementVNode)(`div`,lLt,[(0,t.createVNode)((0,t.unref)(ts),{modelValue:i.value,"onUpdate:modelValue":r[0]||=e=>i.value=e,placeholder:(0,t.unref)(G8)(`说出您的想法`),rows:3,type:`textarea`},null,8,[`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,uLt,[(0,t.createVNode)((0,t.unref)(Wo),{class:`custom-btn`,disabled:!i.value&&a.value.length===0,size:`small`,theme:`primary`,onClick:s},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`提交`)),1)]),_:1},8,[`disabled`]),(0,t.createVNode)((0,t.unref)(Wo),{class:`custom-btn`,size:`small`,width:`80px`,onClick:l},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消`)),1)]),_:1})])],32))}}),fLt={ref:`messageToolsRef`,class:`message-tools-container`},pLt={class:`message-tools`,style:{"margin-right":`8px`}},mLt={key:0,class:`ai-divider`,style:{"margin-right":`8px`}},hLt={class:`message-tools`},gLt=(0,t.defineComponent)({__name:`message-tools`,props:{messageTools:{default:()=>qDt},messageToolsStatus:{},onAction:{},tippyOptions:{},updateTools:{default:()=>YDt}},emits:[`feedback`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.useTemplateRef)(`feedbackTippyRef`),o=(0,t.shallowRef)(!1),s=(0,t.shallowRef)([]),l=(0,t.shallowRef)(null),u=(0,t.computed)(()=>$({arrow:!1,interactive:!0,offset:[0,6],theme:`ai-chat-box-light light`,trigger:`click`,appendTo:()=>document.body},r.tippyOptions||{})),d=function(){var e=c5(function*(e){if(e.id===`like`||e.id===`unlike`){try{o.value=!0,s.value=[],s.value=(yield r.onAction?.call(r,e))||[]}finally{o.value=!1}return}yield r.onAction?.call(r,e)});return function(t){return e.apply(this,arguments)}}(),f=function(){var e=c5(function*(e){yield r.onAction?.call(r,e)});return function(t){return e.apply(this,arguments)}}(),p=()=>{var e;(e=a.value)==null||e.forEach(e=>{var t;return e==null||(t=e.hide)==null?void 0:t.call(e)})},m=e=>l.value?l.value===`like`&&e===`like`?`activeLike`:l.value===`unlike`&&e===`unlike`?`activeUnLike`:e:e,h=e=>{var t;let n=m(e);return n===`activeLike`?G8(`取消满意`):n===`activeUnLike`?G8(`取消不满意`):((t=r.updateTools)==null||(t=t.find(e=>e.id===n))==null?void 0:t.description)||``},g=(e,t,n)=>{p(),l.value===e.id?l.value=null:l.value=e.id,i(`feedback`,e,t,n)},_=e=>{if(r.messageToolsStatus===$7.Disabled)return!1;if(l.value&&l.value===e)return l.value=null,!1};return(0,t.onUnmounted)(()=>{p(),s.value=[]}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,fLt,[(0,t.createElementVNode)(`div`,pLt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.messageTools,n=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.id},[n.id===`delete`?((0,t.openBlock)(),(0,t.createBlock)(aLt,(0,t.mergeProps)({key:0,ref_for:!0},n,{disabled:e.messageToolsStatus===(0,t.unref)($7).Disabled,"tippy-options":e.tippyOptions,onConfirm:e=>f(n)}),null,16,[`disabled`,`tippy-options`,`onConfirm`])):((0,t.openBlock)(),(0,t.createBlock)(g5,(0,t.mergeProps)({key:1,ref_for:!0},n,{disabled:e.messageToolsStatus===(0,t.unref)($7).Disabled,"tippy-options":e.tippyOptions,onClick:e=>d(n)}),null,16,[`disabled`,`tippy-options`,`onClick`]))],64))),128))]),e.updateTools.length>0?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,mLt)):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,hLt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.updateTools,n=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.id},[n.id===`like`||n.id===`unlike`?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(ql),(0,t.mergeProps)({key:0,ref_for:!0,ref_key:`feedbackTippyRef`,ref:a},{ref_for:!0},u.value,{onShow:e=>_(n.id)}),{content:(0,t.withCtx)(()=>[(0,t.createVNode)(dLt,{loading:o.value,"reason-list":s.value,title:n.id===`like`?(0,t.unref)(G8)(`什么原因让你满意?`):(0,t.unref)(G8)(`什么原因让你不满意?`),onCancel:p,onSubmit:(e,t)=>g(n,e,t)},null,8,[`loading`,`reason-list`,`title`,`onSubmit`])]),default:(0,t.withCtx)(()=>[(0,t.createVNode)(g5,(0,t.mergeProps)({ref_for:!0},n,{id:m(n.id),active:l.value===n.id,disabled:e.messageToolsStatus===(0,t.unref)($7).Disabled,"tippy-options":$($({},e.tippyOptions),{},{content:h(n.id)}),onClick:e=>d(n)}),null,16,[`id`,`active`,`disabled`,`tippy-options`,`onClick`])]),_:2},1040,[`onShow`])):n.id===`delete`?((0,t.openBlock)(),(0,t.createBlock)(aLt,(0,t.mergeProps)({key:1,ref_for:!0},n,{disabled:e.messageToolsStatus===(0,t.unref)($7).Disabled,"tippy-options":e.tippyOptions,onConfirm:e=>f(n)}),null,16,[`disabled`,`tippy-options`,`onConfirm`])):((0,t.openBlock)(),(0,t.createBlock)(g5,(0,t.mergeProps)({key:2,ref_for:!0},n,{disabled:e.messageToolsStatus===(0,t.unref)($7).Disabled,"tippy-options":e.tippyOptions,onClick:e=>d(n)}),null,16,[`disabled`,`tippy-options`,`onClick`]))],64))),128))])],512))}}),i9=(0,t.defineComponent)({name:`HighlightKeyword`,props:{text:{type:String,required:!0}},setup(e){let n=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),r=nAt(),i=(0,t.computed)(()=>{if(!e.text||!(r!=null&&r.value))return e.text;let i=r.value.trim();if(!i)return e.text;let a=RegExp(`(${n(i)})`,`ig`),o=e.text?.toString().split(a);return o.length<=1?e.text:o.map(e=>a.test(e)?(0,t.h)(`span`,{class:ZDt},e):e)});return()=>(0,t.h)(`span`,i.value)}}),_Lt={class:`ai-activity-message`},vLt={class:`ai-activity-message-content`},a9=(0,t.defineComponent)({__name:`activity-layout`,props:(0,t.mergeModels)({activityType:{}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n=(0,t.useModel)(e,`collapsed`);return(r,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,_Lt,[(0,t.createElementVNode)(`div`,{class:`ai-activity-message-title`,onClick:i[0]||=e=>n.value=!n.value},[(0,t.renderSlot)(r.$slots,`title`,(0,t.normalizeProps)((0,t.guardReactiveProps)({collapsed:n.value}))),e.activityType===(0,t.unref)(J8).FlowAgent?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:(0,t.normalizeClass)([`ai-activity-message-title-icon collapsed-icon`,{"is-collapsed":n.value}])},[(0,t.createVNode)((0,t.unref)(a5))],2))]),(0,t.withDirectives)((0,t.createElementVNode)(`div`,vLt,[(0,t.renderSlot)(r.$slots,`default`)],512),[[t.vShow,!n.value]])]))}}),o9=[{color:`#3A84FF`,icon:null,key:`running`,label:G8(`执行中`),rawStates:[`CREATED`,`LOOP_READY`,`READY`,`RUNNING`,`BLOCKED`,`ROLLING_BACK`,`ROLL_BACK_SUCCESS`]},{color:`#65C389`,icon:uOt,key:`success`,label:G8(`成功`),rawStates:[`FINISHED`]},{color:`#EA3636`,icon:dOt,key:`failed`,label:G8(`失败`),rawStates:[`FAILED`,`REVOKED`,`ROLL_BACK_FAILED`]},{color:`#F59500`,icon:fOt,key:`suspended`,label:G8(`挂起`),rawStates:[`SUSPENDED`]},{color:`#4D4F56`,dotColor:`#DCDEE5`,icon:pOt,key:`pending`,label:G8(`待执行`),rawStates:[`PENDING`]},{color:`#5B7290`,icon:mOt,key:`skipped`,label:G8(`跳过`),rawStates:[`SKIPPED`]}],s9=Object.fromEntries(o9.map(e=>[e.key,e])),yLt=Object.fromEntries(o9.flatMap(e=>e.rawStates.map(t=>[t,e.key]))),c9=e=>yLt[e]??`running`,bLt=e=>s9[e].dotColor??s9[e].color,xLt=e=>{let n=s9[e].icon;return n?(0,t.cloneVNode)(n):null},SLt=e=>{let n=(0,t.computed)(()=>Array.isArray(e.value)?e.value:[e.value??{}]),r=(0,t.shallowRef)({}),i=e=>r.value[e.task_id]!==!1;return{isTaskExpanded:i,taskList:n,toggleTaskExpanded:e=>{r.value=$($({},r.value),{},{[e.task_id]:!i(e)})},viewTasks:(0,t.computed)(()=>n.value.map(e=>{let t=Object.values(e.nodes??{}).map(e=>{let t=c9(e.state);return{convergedState:t,dotColor:bLt(t),elapsedTimeText:BDt(e.elapsed_time),id:e.id,name:e.name,raw:e,retryable:!!e.retryable,skippable:!!e.skippable}}),n=t.reduce((e,t)=>e+t.raw.elapsed_time,0),r=c9(e.task_state??``);return{convergedState:r,hasConfidence:!!e.has_confidence,confidenceTitle:e.confidence_title,isActive:!!e.is_active,nodes:t,raw:e,stateIcon:xLt(r),taskId:e.task_id,taskName:e.task_name,totalTimeText:BDt(n)}})),visibleStats:(0,t.computed)(()=>{let e={};for(let t of o9)e[t.key]=0;for(let t of n.value)for(let[n,r]of Object.entries(t.statistics?.state_counts??{}))e[c9(n)]+=r;return o9.filter(t=>e[t.key]>0).map(t=>({color:t.color,display:e[t.key]>99?`99+`:String(e[t.key]),dotColor:bLt(t.key),key:t.key,label:t.label}))})}},CLt=[{blockedTip:()=>G8(`任务正在跳过中,不可重试`),icon:ZOt,id:Z8.FlowNodeRetry,label:()=>G8(`重试`),pendingLabel:()=>G8(`重试中`),visible:e=>e.convergedState===`failed`&&e.retryable},{blockedTip:()=>G8(`任务正在重试中,不可跳过`),icon:zOt,id:Z8.FlowNodeSkip,label:()=>G8(`跳过`),pendingLabel:()=>G8(`跳过中`),visible:e=>e.convergedState===`failed`&&e.skippable}],l9=(e,t)=>`${e.task_id}:${t.id}:${t.retry}`,wLt=e=>{let{hideResumeActions:n,onInterruptResume:r,openNodeDetail:i}=e,a=(0,t.shallowRef)({}),o=(e,t,n)=>{var i;let o=l9(t,n);a.value[o]||(a.value=$($({},a.value),{},{[o]:e}),(i=r.value)==null||i.call(r,{payload:{node_id:n.id,task_id:t.task_id},operation:e}))};return{getNodeActions:(e,t)=>{let r=a.value[l9(e.raw,t.raw)],s=(n!=null&&n.value?[]:CLt).filter(e=>e.visible(t)).map(n=>{let i=r===n.id,a=r!==void 0&&!i;return{disabled:r!==void 0,icon:n.icon,id:n.id,label:i?n.pendingLabel():n.label(),loading:i,run:()=>o(n.id,e.raw,t.raw),tooltip:a?n.blockedTip():void 0}});return s.push({disabled:!1,icon:i5,id:`detail`,label:G8(`详情`),loading:!1,run:()=>i(e.raw,t.raw)}),s},isNodePending:(e,t)=>a.value[l9(e.raw,t.raw)]!==void 0}},TLt={class:`ai-detail-section`},ELt={class:`section-heading`},DLt={class:`section-text`},u9=(0,t.defineComponent)({__name:`detail-section`,props:{title:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,TLt,[(0,t.createElementVNode)(`div`,ELt,[r[0]||=(0,t.createElementVNode)(`span`,{class:`section-bar`},null,-1),(0,t.createElementVNode)(`span`,DLt,(0,t.toDisplayString)(e.title),1)]),(0,t.renderSlot)(n.$slots,`default`)]))}}),OLt={class:`ai-simple-table`},kLt={key:0},ALt=[`colspan`],d9=(0,t.defineComponent)({__name:`simple-table`,props:{columns:{},data:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`table`,OLt,[(0,t.createElementVNode)(`thead`,null,[(0,t.createElementVNode)(`tr`,null,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.columns,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`th`,{key:e.key},(0,t.toDisplayString)(e.label),1))),128))])]),(0,t.createElementVNode)(`tbody`,null,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.data,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`tr`,{key:r},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.columns,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`td`,{key:e.key,class:(0,t.normalizeClass)({"is-break-all":e.breakAll})},(0,t.toDisplayString)(n[e.key]??`--`),3))),128))]))),128)),e.data.length?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`tr`,kLt,[(0,t.createElementVNode)(`td`,{class:`is-empty`,colspan:e.columns.length},` -- `,8,ALt)]))])]))}}),jLt={class:`flow-agent-node-detail`},MLt={class:`detail-title`},NLt={key:1,class:`detail-title-content`},PLt={class:`detail-tab-bar`},FLt=[`onClick`],ILt={class:`detail-body`},LLt={class:`skeleton-section`},RLt={class:`skeleton-section`},zLt={class:`info-form`},BLt={class:`info-label`},VLt={class:`info-value`},HLt={class:`info-row`},ULt={class:`info-label`},WLt={class:`info-value`},GLt={key:0,class:`failure-item`},KLt={key:1,class:`failure-item`},qLt={class:`info-row`},JLt={class:`info-label`},YLt={class:`info-value`},XLt={key:0,class:`skeleton-section`},f9=function(e){return e.Config=`config`,e.Output=`output`,e}(f9||{}),ZLt=(0,t.defineComponent)({__name:`flow-agent-node-detail`,props:{data:{},has_confidence:{type:Boolean},loading:{type:Boolean},node_id:{},node_name:{},task_id:{},task_name:{}},setup(e){let n=[{key:f9.Config,label:G8(`节点配置`)},{key:f9.Output,label:G8(`节点输出`)}],r=[{key:`key`,label:G8(`参数名`)},{breakAll:!0,key:`value`,label:G8(`参数值`)}],i=[{key:`name`,label:G8(`名称`)},{key:`description`,label:G8(`变量说明`)},{key:`key`,label:`KEY`}],a=[{key:`key`,label:G8(`参数名`)},{breakAll:!0,key:`value`,label:G8(`参数值`)}],o={forced_fail:W8?`Force Fail`:`强制失败`},s=e,l=(0,t.shallowRef)(f9.Config),u=(0,t.computed)(()=>s.data?.basic_info),d=(0,t.computed)(()=>{let e=u.value;return e?[{label:G8(`流程模板`),value:e.template_name||`--`},{label:G8(`节点名称`),value:e.node_name||`--`},{label:G8(`步骤名称`),value:e.stage_name||`--`},{label:G8(`是否可选`),value:e.optional?G8(`是`):G8(`否`)}]:[]}),f=(0,t.computed)(()=>{var e;let t=u.value;return t?.skippable||(t==null||(e=t.auto_retry)==null?void 0:e.enable)}),p=(0,t.computed)(()=>{let e=u.value?.auto_retry;return e!=null&&e.enable?W8?`In ${e.interval} seconds, auto retry ${e.times} times`:`在 ${e.interval} 秒后,自动重试 ${e.times} 次`:``}),m=(0,t.computed)(()=>{let e=u.value?.timeout_config;if(!(e!=null&&e.enable))return`--`;let t=o[e.action]??e.action;return W8?`Timeout ${e.seconds} seconds later, ${t}`:`超时 ${e.seconds} 秒后则${t}`}),h=(0,t.computed)(()=>Object.entries(s.data?.inputs??{}).map(([e,t])=>({key:e,value:v(t)}))),g=(0,t.computed)(()=>(s.data?.plugin_output??[]).map(e=>({description:e.schema?.description||`--`,name:e.name,key:e.key}))),_=(0,t.computed)(()=>(s.data?.outputs??[]).map(e=>({key:e.key,value:v(e.value)}))),v=e=>e==null?`--`:typeof e==`object`?JSON.stringify(e):String(e);return(o,s)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,jLt,[(0,t.createElementVNode)(`h3`,MLt,[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(G8)(`节点`))+`:`,1),s[0]||=(0,t.createElementVNode)(`span`,{class:`skeleton-title ai-skeleton-element`},null,-1)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,NLt,(0,t.toDisplayString)((0,t.unref)(G8)(`节点`))+`:`+(0,t.toDisplayString)(u.value?.node_name),1)),(0,t.renderSlot)(o.$slots,`locateButton`)]),(0,t.createElementVNode)(`div`,PLt,[((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n,e=>(0,t.createElementVNode)(`div`,{key:e.key,class:(0,t.normalizeClass)([`detail-tab`,{"is-active":l.value===e.key}]),onClick:t=>l.value=e.key},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.key===f9.Config?(0,t.unref)(gOt):(0,t.unref)(i5)),{class:`detail-tab-icon`})),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],10,FLt)),64))]),(0,t.createElementVNode)(`div`,ILt,[l.value===f9.Config?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createElementVNode)(`div`,LLt,[s[1]||=(0,t.createElementVNode)(`div`,{class:`skeleton-heading ai-skeleton-element`},null,-1),((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(6,e=>(0,t.createElementVNode)(`div`,{key:e,class:`skeleton-row ai-skeleton-element`})),64))]),(0,t.createElementVNode)(`div`,RLt,[s[2]||=(0,t.createElementVNode)(`div`,{class:`skeleton-heading ai-skeleton-element`},null,-1),((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(4,e=>(0,t.createElementVNode)(`div`,{key:e,class:`skeleton-row ai-skeleton-element`})),64))])],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createVNode)(u9,{title:(0,t.unref)(G8)(`基础信息`)},{default:(0,t.withCtx)(()=>{var e,n,r;return[(0,t.createElementVNode)(`div`,zLt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(d.value,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.label,class:`info-row`},[(0,t.createElementVNode)(`div`,BLt,(0,t.toDisplayString)(e.label),1),(0,t.createElementVNode)(`div`,VLt,(0,t.toDisplayString)(e.value),1)]))),128)),(0,t.createElementVNode)(`div`,HLt,[(0,t.createElementVNode)(`div`,ULt,(0,t.toDisplayString)((0,t.unref)(G8)(`失败处理`)),1),(0,t.createElementVNode)(`div`,WLt,[f.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(e=u.value)!=null&&e.skippable?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,GLt,[s[3]||=(0,t.createElementVNode)(`span`,{class:`tag-badge`},`MS`,-1),(0,t.createTextVNode)(` `+(0,t.toDisplayString)((0,t.unref)(G8)(`手动跳过`))+(0,t.toDisplayString)(!((n=u.value)==null||(n=n.auto_retry)==null)&&n.enable?`;`:``),1)])):(0,t.createCommentVNode)(``,!0),!((r=u.value)==null||(r=r.auto_retry)==null)&&r.enable?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,KLt,[s[4]||=(0,t.createElementVNode)(`span`,{class:`tag-badge`},`AR`,-1),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(p.value),1)])):(0,t.createCommentVNode)(``,!0)],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createTextVNode)(`--`)],64))])]),(0,t.createElementVNode)(`div`,qLt,[(0,t.createElementVNode)(`div`,JLt,(0,t.toDisplayString)((0,t.unref)(G8)(`超时控制`)),1),(0,t.createElementVNode)(`div`,YLt,(0,t.toDisplayString)(m.value),1)])])]}),_:1},8,[`title`]),(0,t.createVNode)(u9,{title:(0,t.unref)(G8)(`输入参数`)},{default:(0,t.withCtx)(()=>[(0,t.createVNode)(d9,{columns:r,data:h.value},null,8,[`data`])]),_:1},8,[`title`]),(0,t.createVNode)(u9,{title:(0,t.unref)(G8)(`输出参数`)},{default:(0,t.withCtx)(()=>[(0,t.createVNode)(d9,{columns:i,data:g.value},null,8,[`data`])]),_:1},8,[`title`])],64))],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[e.loading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,XLt,[s[5]||=(0,t.createElementVNode)(`div`,{class:`skeleton-heading ai-skeleton-element`},null,-1),((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(5,e=>(0,t.createElementVNode)(`div`,{key:e,class:`skeleton-row ai-skeleton-element`})),64))])):((0,t.openBlock)(),(0,t.createBlock)(u9,{key:1,title:(0,t.unref)(G8)(`结构化输出`)},{default:(0,t.withCtx)(()=>[(0,t.createVNode)(d9,{columns:a,data:_.value},null,8,[`data`])]),_:1},8,[`title`]))],64))])]))}}),p9=e=>e.task_id==null?``:`${e.task_id}`,m9=p9,h9=(e,t)=>e.task_id==null?``:`${e.task_id}|${t.id}|${t.name}`,QLt=e=>{let{messageUid:n,taskList:r}=e,i=Fkt(),a=jkt(),o=(0,t.computed)(()=>i.selectedTab.value?.name??``),s=(0,t.shallowRef)(!1),l=()=>{s.value=!0},u=(0,t.computed)(()=>{if(s.value)return o.value;let e=r.value.find(e=>e.is_active);return e?.task_id==null?o.value:p9(e)}),d=e=>{let t=u.value;return t===p9(e)||t===m9(e)},f=(e,t)=>u.value===h9(e,t),p=(e,t)=>{var r;let a=e.task_id;a!=null&&(l(),(r=i.addCustomTab)==null||r.call(i,{closable:t.closable,label:t.name,name:h9(e,t),order:t.tab_order??100,data:{component:ZLt,messageUid:n.value,props:{data:{},loading:!0,node_id:t.id,node_name:t.name,task_id:a,task_name:e.task_name}}}))},m=e=>{var t;let r=e?.task_id;r&&(l(),(t=i.addCustomTab)==null||t.call(i,{closable:e.closable,label:G8(`有效证据`),name:m9(e),order:e.tab_order??10,data:{component:ZLt,messageUid:n.value,props:{data:{},has_confidence:e.has_confidence,loading:!0,task_id:r,task_name:e.task_name}}}))};return(0,t.watch)(o,(e,t)=>{t!==void 0&&l()}),(0,t.onMounted)(()=>{a!=null&&a.value&&m(r.value.find(e=>e.is_active&&e.has_confidence))}),(0,t.onUnmounted)(()=>{if(a!=null&&a.value)for(let a of r.value){var e,t;(e=i.removeCustomTab)==null||e.call(i,p9(a)),(t=i.removeCustomTab)==null||t.call(i,m9(a));for(let e of Object.values(a.nodes??{})){var n;(n=i.removeCustomTab)==null||n.call(i,h9(a,e))}}}),{displaySelectedTabName:u,isNodeSelected:f,isTaskSelected:d,markUserTabSelection:l,openConfidence:m,openNodeDetail:p}},$Lt={class:`ai-activity-message-title-text`},eRt={class:`flow-agent-title-label`},tRt={class:`flow-agent-stat-tooltip`},nRt={class:`flow-agent-stat-tooltip-status`},rRt={class:`flow-agent-stat-tooltip-label`},iRt=[`onClick`],aRt={class:`flow-agent-task-state-icon`},oRt={class:`flow-agent-task-name`},sRt={class:`flow-agent-task-trailing`},cRt={class:`flow-agent-task-time`},lRt=[`onClick`],uRt={class:`flow-agent-task-nodes`},dRt={class:`flow-agent-node-status`},fRt=[`title`],pRt={class:`flow-agent-node-trailing`},mRt={class:`flow-agent-node-time`},hRt={class:`flow-agent-node-actions`},gRt=[`onClick`],_Rt=(0,t.defineComponent)({__name:`flow-agent-content`,props:(0,t.mergeModels)({content:{},messageUid:{},onInterruptResume:{type:Function},status:{}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n=e,r=m5(),i=(0,t.useModel)(e,`collapsed`),a=eAt(),o=(0,t.computed)(()=>a.value===Q8.Share),s=(0,t.computed)(()=>n.status===X8.Pending||n.status===X8.Streaming),{isTaskExpanded:l,taskList:u,toggleTaskExpanded:d,viewTasks:f,visibleStats:p}=SLt((0,t.toRef)(n,`content`)),{isNodeSelected:m,isTaskSelected:h,openConfidence:g,openNodeDetail:_}=QLt({messageUid:(0,t.toRef)(n,`messageUid`),taskList:u}),{getNodeActions:v,isNodePending:y}=wLt({hideResumeActions:o,onInterruptResume:(0,t.toRef)(n,`onInterruptResume`),openNodeDetail:_}),b=e=>{e.disabled||e.run()};return(e,n)=>((0,t.openBlock)(),(0,t.createBlock)(a9,{collapsed:i.value,"onUpdate:collapsed":n[0]||=e=>i.value=e,"activity-type":(0,t.unref)(J8).FlowAgent,class:`flow-agent-activity`},{title:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(ql),(0,t.mergeProps)({class:`flow-agent-title-bar`,theme:`ai-chat-box-light light`},$($({},(0,t.unref)(r)),{},{tag:`div`,arrow:!0,followCursor:!1,offset:[0,10]})),{content:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,tRt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(p),e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.key,class:`flow-agent-stat-tooltip-item`},[(0,t.createElementVNode)(`span`,nRt,[e.key===`running`?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:`flow-agent-stat-dot`,style:(0,t.normalizeStyle)({borderColor:e.dotColor})},null,4))]),(0,t.createElementVNode)(`span`,rRt,(0,t.toDisplayString)(e.label)+`:`,1),(0,t.createElementVNode)(`span`,{class:`flow-agent-stat-tooltip-count`,style:(0,t.normalizeStyle)({color:e.color})},(0,t.toDisplayString)(e.display),5)]))),128))])]),default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`ai-activity-message-title-icon`,{"icon-collapsed":i.value}])},[s.value?((0,t.openBlock)(),(0,t.createBlock)(s5,{key:0,size:12})):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(r5),{key:1}))],2),(0,t.createElementVNode)(`span`,$Lt,[(0,t.createElementVNode)(`span`,eRt,(0,t.toDisplayString)((0,t.unref)(G8)(`执行情况`))+`:`,1),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(p),e=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:e.key,class:`flow-agent-stat-item`},[e.key===`running`?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,class:`flow-agent-stat-loading`,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:`flow-agent-stat-dot`,style:(0,t.normalizeStyle)({borderColor:e.dotColor})},null,4)),(0,t.createElementVNode)(`span`,{class:`flow-agent-stat-count`,style:(0,t.normalizeStyle)({color:e.color})},(0,t.toDisplayString)(e.display),5)]))),128))])]),_:1},16)]),default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(f),e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.taskId,class:`flow-agent-task-group`},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`flow-agent-task-header`,{"has-confidence":e.hasConfidence,"is-selected":(0,t.unref)(h)(e.raw)}])},[(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`flow-agent-task-arrow`,{"is-expanded":(0,t.unref)(l)(e.raw)}]),onClick:(0,t.withModifiers)(n=>(0,t.unref)(d)(e.raw),[`stop`])},[(0,t.createVNode)((0,t.unref)(r5))],10,iRt),(0,t.createElementVNode)(`span`,aRt,[e.convergedState===`running`?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.stateIcon),{key:1}))]),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,oRt,[(0,t.createVNode)((0,t.unref)(i9),{text:e.taskName},null,8,[`text`])])),[[(0,t.unref)(h5),$({},(0,t.unref)(r))]]),(0,t.createElementVNode)(`span`,sRt,[(0,t.createElementVNode)(`span`,cRt,(0,t.toDisplayString)(e.totalTimeText),1),e.hasConfidence?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:0,class:`flow-agent-task-action-btn flow-agent-task-confidence-btn`,onClick:(0,t.withModifiers)(n=>(0,t.unref)(g)(e.raw),[`stop`])},[(0,t.createVNode)((0,t.unref)(i5)),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.confidenceTitle??(0,t.unref)(G8)(`有效证据`)),1)],8,lRt)):(0,t.createCommentVNode)(``,!0)])],2),(0,t.withDirectives)((0,t.createElementVNode)(`div`,uRt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.nodes,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.id,class:(0,t.normalizeClass)([`flow-agent-node-item`,{"is-selected":(0,t.unref)(m)(e.raw,n.raw),"is-pending":(0,t.unref)(y)(e,n)}])},[(0,t.createElementVNode)(`span`,dRt,[n.convergedState===`running`?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:1,class:`flow-agent-status-dot`,style:(0,t.normalizeStyle)({borderColor:n.dotColor})},null,4))]),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{class:`flow-agent-node-name`,title:n.name},[(0,t.createVNode)((0,t.unref)(i9),{text:n.name},null,8,[`text`])],8,fRt)),[[(0,t.unref)(h5),$({},(0,t.unref)(r))]]),(0,t.createElementVNode)(`span`,pRt,[(0,t.createElementVNode)(`span`,mRt,(0,t.toDisplayString)(n.elapsedTimeText),1),(0,t.createElementVNode)(`span`,hRt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(v)(e,n),e=>(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:e.id,class:(0,t.normalizeClass)([`flow-agent-node-action-btn`,{"is-disabled":e.disabled}]),onClick:(0,t.withModifiers)(t=>b(e),[`stop`])},[e.loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,class:`flow-agent-node-action-loading`,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(e.icon),{key:1})),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.label),1)],10,gRt)),[[(0,t.unref)(Yl),e.tooltip?$($({},(0,t.unref)(r)),{},{content:e.tooltip,theme:`ai-chat-box`,offset:[0,8]}):{content:``}]])),128))])])],2))),128))],512),[[t.vShow,(0,t.unref)(l)(e.raw)]])]))),128))]),_:1},8,[`collapsed`,`activity-type`]))}}),vRt={class:`ai-activity-message-title-icon`},yRt={class:`ai-activity-message-title-text`},bRt={class:`knowledge-rag-content`},xRt=(0,t.defineComponent)({__name:`knowledge-rag-content`,props:(0,t.mergeModels)({content:{},messageUid:{},status:{}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n=e,r=(0,t.useModel)(e,`collapsed`),i=(0,t.computed)(()=>n.status===X8.Pending||n.status===X8.Streaming),a=(0,t.computed)(()=>i.value?G8(`检索中`):G8(`检索完成`));return(n,o)=>((0,t.openBlock)(),(0,t.createBlock)(a9,{collapsed:r.value,"onUpdate:collapsed":o[0]||=e=>r.value=e},{title:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`span`,vRt,[i.value?((0,t.openBlock)(),(0,t.createBlock)(s5,{key:0})):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(n5),{key:1,style:{"font-size":`12px`}}))]),(0,t.createElementVNode)(`span`,yRt,(0,t.toDisplayString)(a.value),1)]),default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,bRt,[(0,t.createVNode)(C7,{content:e.content?.content||``},null,8,[`content`])]),(0,t.createVNode)(w7,{content:e.content?.referenceDocument||[]},null,8,[`content`])]),_:1},8,[`collapsed`]))}}),SRt={class:`ai-activity-message-title-icon`},CRt={class:`ai-activity-message-title-text`},wRt=(0,t.defineComponent)({__name:`reference-doc-content`,props:(0,t.mergeModels)({content:{},messageUid:{}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n=e,r=(0,t.useModel)(e,`collapsed`),i=(0,t.computed)(()=>{let e=n.content?.length??0;return W8?`Reference ${e} documents as reference`:`引用 ${e} 篇资料作为参考`});return(n,a)=>((0,t.openBlock)(),(0,t.createBlock)(a9,{collapsed:r.value,"onUpdate:collapsed":a[0]||=e=>r.value=e},{title:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`span`,SRt,[(0,t.createVNode)((0,t.unref)(n5),{style:{"font-size":`12px`}})]),(0,t.createElementVNode)(`span`,CRt,(0,t.toDisplayString)(i.value),1)]),default:(0,t.withCtx)(()=>[(0,t.createVNode)(w7,{content:e.content||[]},null,8,[`content`])]),_:1},8,[`collapsed`]))}}),TRt=(0,t.defineComponent)({__name:`activity-message`,props:(0,t.mergeModels)({activityType:{},content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{},onInterruptResume:{type:Function}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n={[J8.FlowAgent]:_Rt,[J8.KnowledgeRag]:xRt,[J8.ReferenceDocument]:wRt},r=e,i=(0,t.useModel)(e,`collapsed`),a=(0,t.computed)(()=>n[r.activityType??``]);return(n,r)=>a.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(a.value),{key:0,collapsed:i.value,"onUpdate:collapsed":r[0]||=e=>i.value=e,content:e.content,"message-uid":e.uid,"on-interrupt-resume":e.onInterruptResume,status:e.status},null,40,[`collapsed`,`content`,`message-uid`,`on-interrupt-resume`,`status`])):(0,t.createCommentVNode)(``,!0)}}),ERt={class:`toolcall-desc`},DRt={class:`desc-title`},ORt={class:`desc-panel`},kRt={class:`desc-label`},ARt={class:`desc-value`},g9=(0,t.defineComponent)({__name:`desc-panel`,props:{desc:{},title:{}},setup(e){let n=e,r=e=>e==null?``:typeof e==`object`?JSON.stringify(e):String(e),i=(0,t.computed)(()=>{try{return JSON.parse(n.desc||``)}catch{return n.desc}});return(n,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,ERt,[(0,t.createElementVNode)(`div`,DRt,(0,t.toDisplayString)(e.title),1),(0,t.createElementVNode)(`div`,ORt,[i.value!==null&&typeof i.value==`object`?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(i.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n,class:`desc-panel-item`},[(0,t.createElementVNode)(`span`,kRt,[(0,t.createVNode)((0,t.unref)(i9),{text:String(n)},null,8,[`text`]),a[0]||=(0,t.createTextVNode)(`:`,-1)]),(0,t.createElementVNode)(`span`,ARt,[(0,t.createVNode)((0,t.unref)(i9),{style:{"word-break":`break-all`},text:r(e)},null,8,[`text`])])]))),128)):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(i9),{key:1,style:{wordBreak:`break-all`},text:r(i.value)},null,8,[`text`]))])]))}}),jRt={class:`tool-message`},MRt=(0,t.defineComponent)({__name:`tool-message`,props:{duration:{},error:{type:[Boolean,String]},toolCallId:{},content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,jRt,[(0,t.createVNode)(g9,{desc:e.content||(typeof e.error==`string`?e.error:void 0),title:(0,t.unref)(G8)(`返回内容`)},null,8,[`desc`,`title`])]))}}),NRt={class:`ai-toolcall-render`},PRt={class:`toolcall-header-title`},FRt={class:`toolcall-status-title`},IRt={key:1,class:`toolcall-duration`},LRt={class:`ai-toolcall-render-content`},RRt=(0,t.defineComponent)({__name:`toolcall-render`,props:{duration:{},status:{},toolCall:{}},setup(e){let n=e,r=(0,t.shallowRef)(!0),i=(0,t.shallowRef)(null),a=m5(),{keywordMatched:o,keyword:s}=rAt(()=>[n.toolCall?.function.name,n.toolCall?.function.mcpName,n.toolCall?.function.description,n.toolCall?.function.arguments,n.toolCall?.id]),l=(0,t.computed)(()=>{var e;return i.value===null?!(s==null||(e=s.value)==null)&&e.trim()?!o.value:r.value:i.value});function u(){r.value=!l.value,i.value=r.value}let d=(0,t.computed)(()=>{let e=n.toolCall?.function.mcpName||``,t=n.toolCall?.function.name||n.toolCall?.id||``;return e?`${e} / ${t}`:t}),f=(0,t.computed)(()=>{var e;switch(n.status){default:case X8.Pending:return G8(`调用中`);case X8.Complete:case X8.Success:return G8(`调用成功`);case X8.Error||((e=n.toolCall)==null||(e=e.toolMessage)==null?void 0:e.error):return G8(`调用失败`)}}),p=(0,t.computed)(()=>{var e;let t=n.duration||((e=n.toolCall)==null||(e=e.toolMessage)==null?void 0:e.duration);return t?zDt(t):``});return(n,r)=>{var i,o;return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,NRt,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`ai-toolcall-render-header`,`toolcall-status-${e.status}`]),onClick:u},[(0,t.createVNode)((0,t.unref)(r5),{class:(0,t.normalizeClass)({"is-collapsed":l.value})},null,8,[`class`]),(0,t.createTextVNode)(` `+(0,t.toDisplayString)((i=e.toolCall)!=null&&i.function.mcpName?(0,t.unref)(G8)(`调用 MCP:`):(0,t.unref)(G8)(`调用工具:`))+` `,1),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,PRt,[(0,t.createVNode)((0,t.unref)(i9),{text:d.value},null,8,[`text`])])),[[(0,t.unref)(h5),$($({},(0,t.unref)(a)),{},{text:d.value,appendTo:`parent`})]]),(0,t.createElementVNode)(`span`,FRt,[e.status===(0,t.unref)(X8).Pending||e.status===(0,t.unref)(X8).Streaming?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,mode:`spin`,size:`mini`,theme:`primary`})):(0,t.createCommentVNode)(``,!0),(0,t.createVNode)((0,t.unref)(i9),{text:f.value},null,8,[`text`]),p.value?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,IRt,` (`+(0,t.toDisplayString)(p.value)+`) `,1)):(0,t.createCommentVNode)(``,!0)])],2),(0,t.withDirectives)((0,t.createElementVNode)(`div`,LRt,[(0,t.createVNode)(g9,{desc:e.toolCall?.function.description,title:(0,t.unref)(G8)(`描述`)},null,8,[`desc`,`title`]),(0,t.createVNode)(g9,{desc:e.toolCall?.function.arguments,title:(0,t.unref)(G8)(`参数`)},null,8,[`desc`,`title`]),(o=e.toolCall)!=null&&o.toolMessage?((0,t.openBlock)(),(0,t.createBlock)(MRt,(0,t.normalizeProps)((0,t.mergeProps)({key:0},e.toolCall.toolMessage)),null,16)):(0,t.createCommentVNode)(``,!0)],512),[[t.vShow,!l.value]])])}}}),zRt={class:`ai-assistant-message`},BRt={key:0,class:`ai-assistant-message-content`},VRt=(0,t.defineComponent)({__name:`assistant-message`,props:{toolCalls:{},content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,zRt,[e.content?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,BRt,[(0,t.renderSlot)(n.$slots,`default`,(0,t.normalizeProps)((0,t.guardReactiveProps)({content:e.content})),()=>[(0,t.createVNode)(T7,{content:e.content||``,status:e.status,type:(0,t.unref)(J8).Text},null,8,[`content`,`status`,`type`])])])):(0,t.createCommentVNode)(``,!0),e.toolCalls&&e.toolCalls.length>0?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(e.toolCalls,n=>((0,t.openBlock)(),(0,t.createBlock)(RRt,{key:n.id,status:n.toolMessage?.status??e.status,"tool-call":n},null,8,[`status`,`tool-call`]))),128)):(0,t.createCommentVNode)(``,!0)]))}}),HRt={class:`info-message`},URt=(0,t.defineComponent)({__name:`info-message`,props:{content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,HRt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(Array.isArray(e.content)?e.content:[e.content],(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n,class:`info-message-content`},(0,t.toDisplayString)(e),1))),128))]))}}),WRt={class:`ai-tool-approval-card`},GRt={class:`ai-tool-approval-card__header`},KRt={class:`ai-tool-approval-card__title-wrap`},qRt={class:`ai-tool-approval-card__title`},JRt={class:`ai-tool-approval-card__fields`},YRt={class:`ai-tool-approval-card__field`},XRt={class:`ai-tool-approval-card__field`},ZRt={class:`ai-tool-approval-card__processor`},QRt={class:`ai-tool-approval-card__processor-text`},$Rt={class:`ai-tool-approval-card__actions`},ezt=(0,t.defineComponent)({__name:`tool-approval-card`,props:{interrupt:{},onInterruptResume:{type:Function},readonly:{type:Boolean}},setup(e){let n=e,r=m5(),i=eAt(),a=(0,t.computed)(()=>i.value===Q8.Share),{copy:o}=d5(),s=new Set([K8.PENDING,K8.DRAFT]),l=new Set([K8.ABANDONED,K8.CANCELLED,K8.EXPIRED,K8.REJECTED]),u=(0,t.computed)(()=>n.interrupt.metadata?.ticket??{approvers:[],sn:``,status:K8.PENDING,submit_time:``,title:``,url:``}),d=(0,t.computed)(()=>s.has(u.value.status)),f=(0,t.computed)(()=>d.value?`pending`:u.value.status),p=(0,t.computed)(()=>d.value?G8(`评审中`):HDt[u.value.status]??u.value.status),m=(0,t.computed)(()=>u.value.approvers.filter(Boolean).join(`、`)||G8(`无`)),h=(0,t.computed)(()=>u.value.url||u.value.sn),g=()=>{u.value.url&&window.open(u.value.url,`_blank`,`noopener`)},_=()=>{h.value&&o(h.value)},v=(0,t.shallowRef)(!1),y=()=>{var e;v.value||(v.value=!0,(e=n.onInterruptResume)==null||e.call(n,{operation:Z8.ApprovalCancel,payload:{interrupt_id:n.interrupt.id}},n.interrupt))};return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`section`,WRt,[(0,t.createElementVNode)(`header`,GRt,[(0,t.createElementVNode)(`div`,KRt,[i[0]||=(0,t.createElementVNode)(`span`,{class:`ai-tool-approval-card__title-bar`},null,-1),(0,t.createElementVNode)(`span`,qRt,(0,t.toDisplayString)(u.value.title||(0,t.unref)(G8)(`算法方案评审单`)),1),(0,t.withDirectives)((0,t.createVNode)((0,t.unref)(YOt),{class:(0,t.normalizeClass)([`ai-tool-approval-card__copy-icon`,{"is-disabled":!h.value}]),onClick:_},null,8,[`class`]),[[(0,t.unref)(Yl),$($({},(0,t.unref)(r)),{},{content:(0,t.unref)(G8)(`复制单据链接`),theme:`ai-chat-box`,offset:[0,8]})]])]),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`ai-tool-approval-card__status`,`ai-tool-approval-card__status--${f.value}`])},[u.value.status===(0,t.unref)(K8).APPROVED?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(MOt),{key:0,class:`ai-tool-approval-card__status-icon`})):(0,t.unref)(l).has(u.value.status)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(POt),{key:1,class:`ai-tool-approval-card__status-icon`})):u.value.status===(0,t.unref)(K8).REVOKED?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(FOt),{key:2,class:(0,t.normalizeClass)([`ai-tool-approval-card__status-icon`,{"ai-tool-approval-card__status-icon--revoked":u.value.status===(0,t.unref)(K8).REVOKED}])},null,8,[`class`])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:3,class:`ai-tool-approval-card__status-icon`,mode:`spin`,size:`mini`,theme:`primary`})),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(p.value),1)],2)]),(0,t.createElementVNode)(`dl`,JRt,[(0,t.createElementVNode)(`div`,YRt,[(0,t.createElementVNode)(`dt`,null,(0,t.toDisplayString)((0,t.unref)(G8)(`单据编号`)),1),(0,t.createElementVNode)(`dd`,null,(0,t.toDisplayString)(u.value.sn||`--`),1)]),(0,t.createElementVNode)(`div`,XRt,[(0,t.createElementVNode)(`dt`,null,(0,t.toDisplayString)((0,t.unref)(G8)(`提交时间`)),1),(0,t.createElementVNode)(`dd`,null,(0,t.toDisplayString)(u.value.submit_time||`--`),1)])]),(0,t.createElementVNode)(`div`,ZRt,[(0,t.createVNode)((0,t.unref)(NOt),{class:`ai-tool-approval-card__processor-icon`}),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,QRt,[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`当前处理人`))+`:`+(0,t.toDisplayString)(m.value),1)])),[[(0,t.unref)(h5),$({},(0,t.unref)(r))]])]),(0,t.createElementVNode)(`div`,$Rt,[(0,t.createVNode)((0,t.unref)(Wo),{class:`ai-tool-approval-card__detail`,disabled:!u.value.url,theme:`primary`,onClick:g},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`查看单据详情`))+` `,1),i[1]||=(0,t.createElementVNode)(`span`,{class:`ai-tool-approval-card__detail-icon`},null,-1)]),_:1},8,[`disabled`]),d.value&&!e.readonly?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Wo),{key:0,class:`ai-tool-approval-card__cancel`,disabled:v.value||a.value,loading:v.value,outline:``,theme:`primary`,onClick:y},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消审批`)),1)]),_:1},8,[`disabled`,`loading`])):(0,t.createCommentVNode)(``,!0)])]))}}),tzt={class:`ai-interrupt-message`},nzt={key:0,class:`ai-interrupt-message__content`},rzt={key:1,class:`ai-interrupt-message__fallback`},izt=(0,t.defineComponent)({__name:`interrupt-message`,props:{content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{},onInterruptResume:{type:Function}},setup(e){let n={[q8.AIDevToolApproval]:ezt},r=e=>({id:e.interruptId||e.id||``,reason:q8.AIDevToolApproval,toolCallId:``,metadata:e.payload.metadata}),i={[q8.AIDevToolApproval]:e=>({component:ezt,props:{interrupt:r(e),readonly:!0}}),[q8.UserQuestion]:e=>({component:LIt,props:{answers:e.payload?.answers??[],status:e.status}})},a=new Set([q8.UserQuestion]),o=e,s=(0,t.computed)(()=>{var e;return((e=o.content)==null||(e=e.outcome)==null?void 0:e.type)===`interrupt`?o.content.outcome.interrupts:[]}),l=(0,t.computed)(()=>o.content?.message),u=e=>n[e.reason],d=e=>a.has(e.reason),f=(0,t.computed)(()=>{var e;if(((e=o.content)==null||(e=e.outcome)==null?void 0:e.type)!==`success`)return;let t=o.content?.result;if(t)return i[t.reason]?.call(i,t)});return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,tzt,[l.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,nzt,(0,t.toDisplayString)(l.value),1)):(0,t.createCommentVNode)(``,!0),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(s.value,n=>((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:n.toolCallId},[u(n)?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(u(n)),{key:0,interrupt:n,"on-interrupt-resume":e.onInterruptResume},null,40,[`interrupt`,`on-interrupt-resume`])):d(n)?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,rzt,(0,t.toDisplayString)(n.message||(0,t.unref)(G8)(`暂不支持的中断消息`)),1))],64))),128)),f.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(f.value.component),(0,t.normalizeProps)((0,t.mergeProps)({key:1},f.value.props)),(0,t.createSlots)({_:2},[n.$slots.answeredQuestion?{name:`answer`,fn:(0,t.withCtx)(e=>[(0,t.renderSlot)(n.$slots,`answeredQuestion`,(0,t.normalizeProps)((0,t.guardReactiveProps)(e)))]),key:`0`}:void 0]),1040)):(0,t.createCommentVNode)(``,!0)]))}}),azt={class:`ai-loading-message`},ozt=(0,t.defineComponent)({__name:`loading-message`,setup(e){return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,azt,[(0,t.createVNode)(s5,{size:18}),(0,t.renderSlot)(e.$slots,`default`,{},()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`请求中...`)),1)])]))}}),szt={class:`ai-reasoning-message`},czt={key:0,class:`ai-reasoning-message-title-icon`},lzt={class:`ai-reasoning-message-title-text`},uzt={class:`ai-reasoning-message-content`},dzt=(0,t.defineComponent)({__name:`reasoning-message`,props:(0,t.mergeModels)({duration:{},content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{}},{collapsed:$({type:Boolean},{default:!1}),collapsedModifiers:{}}),emits:[`update:collapsed`],setup(e){let n=e,r=(0,t.useModel)(e,`collapsed`),{stop:i}=(0,t.watch)(()=>n.duration,function(){var e=c5(function*(e){e&&(r.value=!0,yield(0,t.nextTick)(),i?.())});return function(t){return e.apply(this,arguments)}}(),{immediate:!0}),a=(0,t.computed)(()=>{switch(n.status){case X8.Pending:return G8(`思考中`);case X8.Success:case X8.Complete:return G8(`已思考完成`)+(n.duration?` (${G8(`耗时`)} :${zDt(n.duration)})`:``);case X8.Error:return G8(`思考失败`);default:return G8(`思考中`)}});return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,szt,[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`ai-reasoning-message-title`,{"ai-reasoning-message-title-collapsed":r.value,"is-thinking":e.status===(0,t.unref)(X8).Pending||e.status===(0,t.unref)(X8).Streaming,"is-complete":e.status===(0,t.unref)(X8).Complete||e.status===(0,t.unref)(X8).Success,"is-error":e.status===(0,t.unref)(X8).Error}]),onClick:i[0]||=e=>r.value=!r.value},[e.status===(0,t.unref)(X8).Pending||e.status===(0,t.unref)(X8).Streaming?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,czt,[(0,t.createVNode)(s5)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`span`,lzt,(0,t.toDisplayString)(a.value),1),(0,t.createElementVNode)(`span`,{class:(0,t.normalizeClass)([`ai-reasoning-message-title-icon collapsed-icon`,{"is-collapsed":r.value}])},[(0,t.createVNode)((0,t.unref)(a5))],2)],2),(0,t.withDirectives)((0,t.createElementVNode)(`div`,uzt,[e.status===(0,t.unref)(X8).Error?((0,t.openBlock)(),(0,t.createBlock)(QNt,{key:0,content:e.content?.join(`
|
|
3484
3484
|
`)||``},null,8,[`content`])):((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(Array.isArray(e.content)?e.content:[e.content],e=>((0,t.openBlock)(),(0,t.createBlock)(C7,{key:e,content:e},null,8,[`content`]))),128))],512),[[t.vShow,!r.value]])]))}}),fzt={class:`ai-key-value-content`},pzt={key:0,class:`ai-key-value-title`},mzt={class:`ai-key-value-content`},hzt={class:`item-key`},gzt={class:`item-value`},_zt=(0,t.defineComponent)({__name:`key-value-content`,props:{content:{},title:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,fzt,[e.title?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,pzt,[(0,t.createVNode)((0,t.unref)(HOt)),(0,t.createTextVNode)(` `+(0,t.toDisplayString)(e.title),1)])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,mzt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.content,e=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.key,class:`key-value-item`},[(0,t.createElementVNode)(`div`,hzt,(0,t.toDisplayString)(e.key),1),r[0]||=(0,t.createTextVNode)(` : `,-1),(0,t.createElementVNode)(`div`,gzt,(0,t.toDisplayString)(e.value),1)]))),128))])]))}}),vzt={class:`text-content`},yzt=(0,t.defineComponent)({__name:`text-content`,props:{content:{}},setup(e){return(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,vzt,(0,t.toDisplayString)(e.content),1))}}),bzt={class:`ai-user-message`},xzt={key:0,class:`ai-user-message-binary-files`},Szt={key:1,class:`ai-user-message-content`},Czt={class:`user-edit-footer`},wzt=(0,t.defineComponent)({__name:`user-message`,props:{content:{},id:{},messageId:{},name:{},role:{},status:{},uid:{},property:{},onAction:{type:Function},tippyOptions:{},messageToolsStatus:{},onInputConfirm:{type:Function},onShortcutConfirm:{type:Function}},setup(e){let n=e,r=zkt(),{copy:i}=d5(),a=(0,t.shallowRef)(!1),o=(0,t.shallowRef)(``),s=(0,t.useTemplateRef)(`chatInputRef`),l=(0,t.computed)(()=>{var e;let t=(e=n.property)==null||(e=e.extra)==null?void 0:e.cite;if(!(!t||typeof t==`string`))return t.title}),u=(0,t.computed)(()=>{var e;let t=(e=n.property)==null||(e=e.extra)==null?void 0:e.cite;return!t||typeof t==`string`?t:t.data}),d=(0,t.computed)(()=>{var e,t;if(!((e=n.property)!=null&&e.extra))return null;let{extra:r}=n.property,{shortcut:i,cite:a,context:o}=r||{};if(i)return i;if(a&&typeof a==`object`&&(t=a.data)!=null&&t.length){let e=[];for(let t of a.data){let n=o?.find(e=>e.__label===t.key);n!=null&&n.__key&&e.push({formItemProps:{label:n.__label,required:!!n.fillBack},props:{default:n.__value},key:n.__key,type:`textarea`})}return{components:e,name:a.title}}return null}),f=e=>!!e.url||gDt(e.mimeType||e.file?.type),p=(0,t.computed)(()=>Array.isArray(n.content)?n.content?.filter(e=>e.type===J8.Binary):[]),m=(0,t.computed)(()=>p.value.filter(e=>f(e))),h=(0,t.computed)(()=>p.value.filter(e=>!f(e))),g=(0,t.computed)(()=>n.content?typeof n.content==`string`?[n.content]:n.content.filter(e=>{var t;return e.type===J8.Text&&!!((t=e.text)!=null&&t.trim())}).map(e=>e.text):[]),_=function(){var e=c5(function*(e){e.id===`edit`?(g.value.length&&(o.value=g.value[0]??``,a.value=!0),p.value.length&&(a.value=!0)):e.id===`copy`&&i(typeof n.content==`string`?n.content:JSON.stringify(n.content||``)),yield n.onAction?.call(n,e)});return function(t){return e.apply(this,arguments)}}(),v=function(){var e=c5(function*(){var e,t;yield(e=s.value)==null||(t=e.triggerSendMessage)==null?void 0:t.call(e),a.value=!1});return function(){return e.apply(this,arguments)}}(),y=()=>{a.value=!1},b=()=>{a.value=!1},x=function(){var e=c5(function*(e){var t;(t=n.onShortcutConfirm)==null||t.call(n,e),a.value=!1});return function(t){return e.apply(this,arguments)}}(),S=function(){var e=c5(function*(e,t){var r;(r=n.onInputConfirm)==null||r.call(n,e,t),a.value=!1});return function(t,n){return e.apply(this,arguments)}}();return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,bzt,[u.value&&typeof u.value==`string`?((0,t.openBlock)(),(0,t.createBlock)(bFt,{key:0,class:`ai-user-message-cite`,content:u.value},null,8,[`content`])):(0,t.createCommentVNode)(``,!0),a.value?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[d.value?((0,t.openBlock)(),(0,t.createBlock)(Tkt,(0,t.mergeProps)({key:0},d.value,{class:`user-shortcut-render`,onClose:b,onSubmit:x}),null,16)):((0,t.openBlock)(),(0,t.createBlock)(xIt,{key:1,ref_key:`chatInputRef`,ref:s,modelValue:o.value,"onUpdate:modelValue":i[0]||=e=>o.value=e,class:`user-edit-input`,"default-upload-files":p.value,"on-send-message":S,"support-upload":(0,t.unref)(r)?.supportUpload.value??!1},{"send-icon":(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,Czt,[(0,t.createVNode)((0,t.unref)(Wo),{size:`small`,onClick:y},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消`)),1)]),_:1}),(0,t.createVNode)((0,t.unref)(Wo),{size:`small`,theme:`primary`,onClick:v},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`发送`)),1)]),_:1})])]),_:1},8,[`modelValue`,`default-upload-files`,`support-upload`]))],64)):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[p.value.length?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[m.value.length?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,xzt,[(0,t.createVNode)(t9,{files:m.value,readonly:!0},null,8,[`files`])])):(0,t.createCommentVNode)(``,!0),((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(h.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:e.url??n,class:`ai-user-message-binary-files`},[(0,t.createVNode)(t9,{files:[e],readonly:!0},null,8,[`files`])]))),128))],64)):(0,t.createCommentVNode)(``,!0),u.value||g.value.length?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Szt,[Array.isArray(u.value)?((0,t.openBlock)(),(0,t.createBlock)(_zt,{key:0,content:u.value,title:l.value},null,8,[`content`,`title`])):e.content?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:1},(0,t.renderList)(g.value,(e,n)=>((0,t.openBlock)(),(0,t.createBlock)(yzt,{key:n,content:e},null,8,[`content`]))),128)):(0,t.createCommentVNode)(``,!0)])):(0,t.createCommentVNode)(``,!0),e.messageToolsStatus===(0,t.unref)($7).Hidden?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createBlock)(gLt,{key:2,class:`ai-user-message-tools`,"message-tools":(0,t.unref)(JDt),"message-tools-status":e.messageToolsStatus,"on-action":_,"tippy-options":e.tippyOptions,"update-tools":[]},null,8,[`message-tools`,`message-tools-status`,`tippy-options`]))],64))]))}}),_9=(0,t.defineComponent)({__name:`message-render`,props:{messageToolsStatus:{},onInputConfirm:{type:Function},onShortcutConfirm:{type:Function},onAction:{type:Function},tippyOptions:{},message:{},onInterruptResume:{type:Function}},setup(e){let n=e,r=(0,t.useSlots)(),i=(0,t.computed)(()=>{switch(n.message.role){case Y8.User:return(0,t.h)(wzt,$($({},n.message),{},{onAction:n.onAction,onInputConfirm:n.onInputConfirm,onShortcutConfirm:n.onShortcutConfirm,messageToolsStatus:n.messageToolsStatus,tippyOptions:n.tippyOptions}));case Y8.Assistant:return(0,t.h)(VRt,n.message,{default:e=>(0,t.renderSlot)(r,`default`,e,()=>[(0,t.h)(T7,{content:n.message.content||``,status:n.message.status},r.codeHeader?{codeHeader:e=>r.codeHeader?.call(r,e)}:void 0)])});case Y8.Info:return(0,t.h)(URt,n.message);case Y8.Reasoning:return(0,t.h)(dzt,n.message);case Y8.Tool:return(0,t.h)(MRt,n.message);case Y8.Activity:return(0,t.h)(TRt,$($({},n.message),{},{onInterruptResume:n.onInterruptResume}));case Y8.Interrupt:return(0,t.h)(izt,$($({},n.message),{},{onInterruptResume:n.onInterruptResume}),r.answeredQuestion?{answeredQuestion:e=>r.answeredQuestion?.call(r,e)}:void 0);case Y8.Loading:return(0,t.h)(ozt,n.message);default:return null}});return(e,n)=>((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(i.value)))}}),Tzt=[`id`,`onMouseenter`,`onMouseleave`],Ezt={class:`ai-message-fixed-bottom`},Dzt=(0,t.defineComponent)({__name:`message-container`,props:(0,t.mergeModels)({enableSelection:{type:Boolean,default:!1},messageGroups:{},messages:{},messageStatus:{},messageToolsStatus:{},messageToolsTippyOptions:{},onAgentAction:{},onAgentFeedback:{},onInterruptResume:{},onUserAction:{},renderMode:{},onUserInputConfirm:{},onUserShortcutConfirm:{}},{selectedUserMessages:{required:!1},selectedUserMessagesModifiers:{}}),emits:(0,t.mergeModels)([`stopStreaming`],[`update:selectedUserMessages`]),setup(e){let n=e,r=(0,t.useModel)(e,`selectedUserMessages`),i=(0,t.useTemplateRef)(`messageContainerRef`),a=(0,t.useTemplateRef)(`messageContainerBottomRef`),{toScrollBottom:o,debouncedShowScrollBottomBtn:s}=Akt(i,a),{copy:l}=d5(),u=(0,t.computed)(()=>qDt.filter(e=>n.renderMode!==Q8.Test||e.id!==`share`)),d=(0,t.computed)(()=>n.renderMode===Q8.Share?n.messageGroups.filter(e=>e.type!==Y8.Loading):n.messageGroups),f=e=>{e.messages?.at(-1)?.role!==Y8.Interrupt&&(e.isHover=!0)},p=(e,t)=>{let n=t.toElement??t.relatedTarget;n instanceof Element&&n.classList.contains(`ai-user-feedback`)||(e.isHover=!1)},m=(e,t)=>{var i;let a=e.type===Y8.User;(i=n.messageGroups)==null||i.forEach((r,i)=>{if(r===e){r.checked=t;let e=a?n.messageGroups.at(i+1):n.messageGroups.at(i-1);e&&(e.checked=t)}}),r.value=n.messageGroups?.filter(e=>e.checked).map(e=>e.messages).flat()},h=function(){var e=c5(function*(e,t){return e.id===`copy`&&l(t.filter(e=>e.role!==Y8.Reasoning).map(e=>typeof e.content==`string`?e.content:JSON.stringify(e.content||``)).join(`
|
|
3485
|
-
`)),n.onAgentAction?.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}(),g=function(){var e=c5(function*(e,t){var r;(r=n.onUserAction)==null||r.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}(),_=function(){var e=c5(function*(e,t,r){var i;(i=n.onUserInputConfirm)==null||i.call(n,e,t,r)});return function(t,n,r){return e.apply(this,arguments)}}(),v=function(){var e=c5(function*(e,t){var r;(r=n.onUserShortcutConfirm)==null||r.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}();return(r,l)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`messageContainerRef`,ref:i,class:`ai-message-container`},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(d.value,(i,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{id:i.uid,key:a,class:`message-group`,style:(0,t.normalizeStyle)({backgroundColor:i.checked?`#f5f7fa`:`transparent`}),onMouseenter:e=>f(i),onMouseleave:e=>p(i,e)},[(0,t.renderSlot)(r.$slots,`group`,(0,t.mergeProps)({ref_for:!0},{group:i}),()=>[e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(cs),{key:0,class:`message-group-checkbox`,"model-value":i.checked,"onUpdate:modelValue":e=>m(i,e)},null,8,[`model-value`,`onUpdate:modelValue`])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`message-group-messages`,{"message-group-enabled-selection":e.renderMode===(0,t.unref)(Q8).Share||e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading}]),style:(0,t.normalizeStyle)({width:e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading?`calc(100% - 16px)`:`100%`})},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(i.messages,(i,a)=>(0,t.renderSlot)(r.$slots,`default`,(0,t.mergeProps)({key:a,ref_for:!0},{message:i,messageToolsStatus:e.messageToolsStatus,onInterruptResume:n.onInterruptResume}),()=>[((0,t.openBlock)(),(0,t.createBlock)(_9,{key:a,message:i,"message-tools-status":e.messageToolsStatus,"on-action":e=>g(e,i),"on-input-confirm":(e,t)=>_(i,e,t),"on-interrupt-resume":n.onInterruptResume,"on-shortcut-confirm":e=>v(i,e),"tippy-options":e.messageToolsTippyOptions},(0,t.createSlots)({_:2},[r.$slots.answeredQuestion?{name:`answeredQuestion`,fn:(0,t.withCtx)(e=>[(0,t.renderSlot)(r.$slots,`answeredQuestion`,(0,t.mergeProps)({ref_for:!0},e))]),key:`0`}:void 0]),1032,[`message`,`message-tools-status`,`on-action`,`on-input-confirm`,`on-interrupt-resume`,`on-shortcut-confirm`,`tippy-options`]))])),128)),e.renderMode!==(0,t.unref)(Q8).Share&&!(e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading)&&!i.pause&&i.type===(0,t.unref)(Y8).Assistant&&e.messageToolsStatus!==(0,t.unref)($7).Hidden?((0,t.openBlock)(),(0,t.createBlock)(gLt,{key:0,"message-tools":u.value,"message-tools-status":e.messageToolsStatus,"on-action":e=>h(e,i.messages),style:(0,t.normalizeStyle)({visibility:i.isHover?`visible`:`hidden`}),"tippy-options":n.messageToolsTippyOptions,onFeedback:(e,t,r)=>n.onAgentFeedback?.call(n,e,i.messages,t,r)},null,8,[`message-tools`,`message-tools-status`,`on-action`,`style`,`tippy-options`,`onFeedback`])):(0,t.createCommentVNode)(``,!0)],6)])],44,Tzt))),128)),(0,t.createElementVNode)(`div`,{ref_key:`messageContainerBottomRef`,ref:a,class:`message-container-bottom`,tabindex:`0`},null,512),(0,t.createElementVNode)(`div`,Ezt,[(0,t.withDirectives)((0,t.createVNode)(ekt,{loading:e.messageStatus===(0,t.unref)(X8).StopLoading,title:e.messageStatus===(0,t.unref)(X8).StopLoading?(0,t.unref)(G8)(`正在停止`):(0,t.unref)(G8)(`停止生成`),onClick:l[0]||=e=>r.$emit(`stopStreaming`)},{icon:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(OOt))]),_:1},8,[`loading`,`title`]),[[t.vShow,e.renderMode!==(0,t.unref)(Q8).Share&&(e.messageStatus===(0,t.unref)(X8).Streaming||e.messageStatus===(0,t.unref)(X8).StopLoading||e.messageStatus===(0,t.unref)(X8).Fetching||e.messageStatus===(0,t.unref)(X8).Pending)]]),(0,t.withDirectives)((0,t.createVNode)(ekt,{title:(0,t.unref)(G8)(`返回底部`),onClick:(0,t.unref)(o)},{icon:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(WOt))]),_:1},8,[`title`,`onClick`]),[[t.vShow,(0,t.unref)(s)]])])],512))}}),Ozt={class:`execution-summary`},kzt={class:`execution-summary-header`},Azt={class:`execution-summary-content`},jzt=[`onMouseenter`],Mzt={class:`content-item-header`},Nzt={class:`content-item-title`},Pzt={class:`content-item-messages`},Fzt={key:0,class:`timeline-line`},Izt={key:1,class:`execution-summary-content-empty`},Lzt={class:`execution-summary-content-empty-text`},Rzt=(0,t.defineComponent)({__name:`execution-summary`,props:{messageGroups:{}},emits:[`locateMessageGroup`,`updateKeyword`],setup(e,{emit:n}){let r=n,i=m5(),{keyword:a}=Qkt(),o=(0,t.shallowRef)(void 0),s=e=>{if(!e)return``;let t=new Date(e),n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}`},l=e=>{r(`locateMessageGroup`,e.uid,e)},u=()=>{a.value=``,r(`updateKeyword`,``)};return(n,d)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Ozt,[(0,t.createElementVNode)(`div`,kzt,[(0,t.createVNode)((0,t.unref)(ts),{modelValue:(0,t.unref)(a),"onUpdate:modelValue":[d[0]||=e=>(0,t.isRef)(a)?a.value=e:null,d[1]||=e=>r(`updateKeyword`,e)],class:`execution-summary-header-input`,clearable:``,placeholder:(0,t.unref)(G8)(`搜索 关键字`)},null,8,[`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,Azt,[e.messageGroups.length?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(e.messageGroups,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.uid,class:`execution-summary-content-item`,onMouseenter:e=>o.value=n.uid,onMouseleave:d[2]||=e=>o.value=void 0},[(0,t.createElementVNode)(`div`,Mzt,[d[3]||=(0,t.createElementVNode)(`span`,{class:`timeline-dot`},null,-1),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Nzt,[(0,t.createTextVNode)((0,t.toDisplayString)(typeof n.userMessageTitle==`number`?s(n.userMessageTitle):n.userMessageTitle),1)])),[[(0,t.unref)(h5),$({},(0,t.unref)(i))]]),(0,t.withDirectives)((0,t.createVNode)((0,t.unref)(Wo),{class:`content-item-locate`,text:``,theme:`primary`,onClick:e=>l(n)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`在对话中定位`)),1)]),_:1},8,[`onClick`]),[[t.vShow,o.value===n.uid]])]),(0,t.createElementVNode)(`div`,Pzt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n.messages,(e,n)=>((0,t.openBlock)(),(0,t.createBlock)(_9,{key:n,message:e},null,8,[`message`]))),128))]),r<e.messageGroups.length-1?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Fzt)):(0,t.createCommentVNode)(``,!0)],40,jzt))),128)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Izt,[(0,t.createVNode)((0,t.unref)(Ys),{class:`empty-exception`,type:`empty`}),(0,t.createElementVNode)(`div`,Lzt,[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(a)?(0,t.unref)(G8)(`搜索结果为空`):(0,t.unref)(G8)(`暂无数据`))+` `,1),(0,t.unref)(a)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Wo),{key:0,text:``,theme:`primary`,onClick:u},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`清空搜索`)),1)]),_:1})):(0,t.createCommentVNode)(``,!0)])]))])]))}}),zzt=[`class`,`style`],Bzt={class:`ai-message-loading-row`},Vzt={class:`ai-message-loading-icon-wrap`},Hzt={key:0,class:`ai-message-loading-text ai-message-loading-text-custom`},Uzt={key:1,"aria-live":`polite`,class:`ai-message-loading-text`},Wzt=(0,t.defineComponent)($($({},{name:`MessageLoading`,inheritAttrs:!1}),{},{__name:`message-loading`,props:{duration:{default:1.8},gap:{default:8},iconSize:{default:32},stagger:{default:.135},text:{default:`加载中...`}},setup(e){let n=e,r=(0,t.useAttrs)(),i=(0,t.computed)(()=>{let{class:e,style:t}=r;return u5(r,zzt)}),a=(0,t.computed)(()=>({display:`block`,width:`${n.iconSize}px`,height:`${n.iconSize}px`})),o=(0,t.computed)(()=>[...n.text]),s=(0,t.computed)(()=>{let e=r.style,t={"--ai-message-loading-duration":`${n.duration}s`,"--ai-message-loading-stagger":`${n.stagger}s`,"--ai-message-loading-gap":`${n.gap}px`};return e&&typeof e==`object`&&!Array.isArray(e)?$($({},t),e):t});return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,(0,t.mergeProps)({class:[`ai-message-loading`,(0,t.unref)(r).class],style:s.value},i.value),[(0,t.createElementVNode)(`div`,Bzt,[(0,t.createElementVNode)(`span`,Vzt,[(0,t.renderSlot)(e.$slots,`icon`,{},()=>[(0,t.createVNode)((0,t.unref)(iOt),{class:`ai-message-loading-icon-svg`,style:(0,t.normalizeStyle)(a.value)},null,8,[`style`])])]),e.$slots.text?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Hzt,[(0,t.renderSlot)(e.$slots,`text`)])):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Uzt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:`${n}-${e}`,class:`ai-message-loading-char`,style:(0,t.normalizeStyle)({"--char-index":n})},(0,t.toDisplayString)(e),5))),128))]))])],16))}})),Gzt={class:`ai-selection-footer`},Kzt={class:`ai-selection-footer-left`},qzt={class:`select-all-text`},Jzt={class:`ai-selection-footer-right`},Yzt=(0,t.defineComponent)({__name:`selection-footer`,props:{isAllSelected:{type:Boolean},loading:{type:Boolean},selectedCount:{}},emits:[`cancel`,`confirm`,`toggle-all`],setup(e,{emit:n}){let r=n;return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Gzt,[(0,t.createElementVNode)(`div`,Kzt,[(0,t.createVNode)((0,t.unref)(cs),{"model-value":e.isAllSelected,"onUpdate:modelValue":i[0]||=e=>r(`toggle-all`,e)},null,8,[`model-value`]),(0,t.createElementVNode)(`span`,qzt,(0,t.toDisplayString)((0,t.unref)(G8)(`全选`)),1)]),(0,t.createElementVNode)(`div`,Jzt,[(0,t.createVNode)((0,t.unref)(Wo),{disabled:e.loading,onClick:i[1]||=e=>r(`cancel`)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消`)),1)]),_:1},8,[`disabled`]),(0,t.createVNode)((0,t.unref)(Wo),{disabled:e.selectedCount===0,loading:e.loading,theme:`primary`,onClick:i[2]||=e=>r(`confirm`)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`确定`)),1)]),_:1},8,[`disabled`,`loading`])])]))}}),Xzt=[`data-ai-size`],Zzt={key:0,class:`ai-chat-container-loading`},Qzt={class:`screen-wrapper`},$zt={key:1,class:`ai-welcome-content`},eBt={class:`ai-welcome-title`},tBt={key:0,class:`ai-welcome-remark`},nBt=(0,t.defineComponent)({__name:`chat-container`,props:(0,t.mergeModels)({chatLoading:{type:Boolean},commonTippyOptions:{},executionTabVisible:{type:Boolean,default:!0},getSideRenderComponent:{},getSideTabRenderComponent:{},onCustomTabChange:{},openingRemark:{},placement:{default:`left`},resizeProps:{},size:{default:`small`},welcomeTitle:{},defaultUploadFiles:{},inputMaxHeight:{},messageStatus:{},modelValue:{},onSendMessage:{},onStopSending:{},onUpload:{},placeholder:{},prompts:{},resources:{},sendDisabledTip:{},shortcutId:{},shortcuts:{},skills:{},supportUpload:{type:Boolean},tippyOptions:{},messages:{},messageToolsStatus:{},onAgentAction:{},onAgentFeedback:{},onInterruptResume:{},onUserAction:{},renderMode:{},onUserInputConfirm:{},onUserShortcutConfirm:{}},{renderMode:{required:!1,default:Q8.Chat},renderModeModifiers:{},selectedShortcut:{required:!1},selectedShortcutModifiers:{},cite:{required:!1,default:``},citeModifiers:{}}),emits:(0,t.mergeModels)([`selectShortcut`,`deleteShortcut`,`update:modelValue`,`stopStreaming`,`shortcutClose`,`shortcutSubmit`,`confirmShare`,`collapseChange`],[`update:renderMode`,`update:selectedShortcut`,`update:cite`]),setup(e,{expose:n,emit:r}){let i=hhe.TabPanel,a=e,o=(0,t.useModel)(e,`renderMode`),s=(0,t.useTemplateRef)(`fullScreenRef`),{isFullScreen:l,enter:u,exit:d}=Ikt(s);$kt({renderMode:o});let f=(0,t.computed)(()=>$($({collapsible:!1,immediate:!0,min:400},a.resizeProps),{},{placement:a.placement})),p=(0,t.computed)(()=>a.getSideRenderComponent?.call(a,t.h,y.value.data?.props??{})??y.value.data?.component);Rkt({size:(0,t.computed)(()=>a.size??`small`),supportUpload:(0,t.computed)(()=>a.supportUpload??!1)}),(0,t.watch)(()=>a.size??`small`,e=>{typeof document<`u`&&(document.body.dataset.aiSize=e)},{immediate:!0});let m=(0,t.useModel)(e,`selectedShortcut`),h=(0,t.useModel)(e,`cite`),g=r;tAt({tippyOptions:(0,t.computed)(()=>a.commonTippyOptions??{})});let{displayTabs:_,tabs:v,selectedTab:y,isCollapse:b,addCustomTab:x,removeCustomTab:S,selectCustomTab:C,resetCustomTab:w}=Pkt({executionTabVisible:()=>a.executionTabVisible,onTabChange:function(){var e=c5(function*(e){let t=y.value.data?.props||{loading:!0,data:{}};y.value.data=$($({},y.value.data),{},{props:t});let n=yield a.onCustomTabChange?.call(a,e);y.value.data=$($({},y.value.data),{},{props:$($({},t),{},{loading:!1,data:n})})});return function(t){return e.apply(this,arguments)}}()}),T=(0,t.shallowRef)(``),E=(0,t.ref)([]),D=(0,t.shallowRef)(400),O=(0,t.computed)(()=>`calc(100% - ${D.value}px)`),{messageGroups:k,executionGroups:A,isShareMode:j,isAllSelected:M,onToggleShareAll:N,onCancelShare:P,onConfirmShare:F,pendingApprovalTipText:I,activeUserQuestionInterrupt:L}=qkt({keyword:T,messages:(0,t.computed)(()=>a.messages),renderMode:(0,t.computed)(()=>o.value),selectedUserMessages:E});(0,t.watch)(b,e=>{e&&(T.value=``,D.value=0),g(`collapseChange`,e,D.value)}),(0,t.watch)(()=>A.value,e=>{!e.length&&!T.value&&w()},{immediate:!0,deep:!1});let R=(0,t.computed)(()=>{var e;return a.messageStatus===X8.StopLoading?X8.StopLoading:(e=k.value)!=null&&e.some(e=>e.messages.some(e=>e.id===`__loading__`))?X8.Fetching:a.messageStatus}),ee=()=>{m.value=null,g(`shortcutClose`)},z=e=>{g(`shortcutSubmit`,e)},B=()=>{g(`deleteShortcut`)},V=e=>{g(`selectShortcut`,e)},te=(e,t)=>{g(`update:modelValue`,e,t)},ne=function(){var e=c5(function*(e,t){let n=L.value;return a.onSendMessage?.call(a,e,t,n?{payload:DIt(n),interrupt:n}:void 0)});return function(t,n){return e.apply(this,arguments)}}(),re=()=>{b.value=!b.value},ie=e=>{if(!e)return;let t=document.getElementById(e);if(!t){let t=k.value.find(t=>t.messages.some(t=>t.uid===e));if(t){var n;(n=document.getElementById(t.uid))==null||n.scrollIntoView({behavior:`smooth`})}return}t.scrollIntoView({behavior:`smooth`})},ae=e=>{C(v.value.find(t=>t.name===e))},H=e=>{T.value=e},oe=function(){var e=c5(function*(e,t){if(e.id===`share`){j.value=!0;return}return a.onAgentAction?.call(a,e,t)});return function(t,n){return e.apply(this,arguments)}}(),se=()=>{g(`confirmShare`,F()),(0,t.nextTick)(()=>{j.value=!1,E.value=[]})},ce=e=>{D.value=e};return(0,t.onUnmounted)(()=>{w(),typeof document<`u`&&delete document.body.dataset.aiSize}),n({selectedTab:y,addCustomTab:x,removeCustomTab:S,selectCustomTab:C,enterShareMode:()=>{j.value=!0},exitShareMode:()=>{P()}}),(n,r)=>{var a;return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`ai-chat-container`,"data-ai-size":e.size,style:(0,t.normalizeStyle)({"--resize-main-width":O.value,borderTopColor:(0,t.unref)(b)?`transparent`:`#eaebf0`})},[e.chatLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Zzt,[(0,t.createVNode)(Wzt)])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(the),(0,t.mergeProps)({key:1,class:[`ai-chat-container-resize-layout`,{"ai-is-collapse":(0,t.unref)(b)||(0,t.unref)(_).length>0&&!((a=T.value)!=null&&a.length)&&(0,t.unref)(A)?.length<1}]},f.value,{onResizing:ce}),{aside:(0,t.withCtx)(()=>{var n,a,o,f;return[!(0,t.unref)(b)&&(0,t.unref)(_).length>0&&((n=(0,t.unref)(A))!=null&&n.length||(a=T.value)!=null&&a.length)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,ref_key:`fullScreenRef`,ref:s,class:`ai-full-screen-wrapper`},[(0,t.createVNode)((0,t.unref)(hhe),{active:(0,t.unref)(y).name,class:`ai-chat-container-tab`,"label-height":40,type:`unborder-card`,onChange:ae},{setting:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,Qzt,[(0,t.createVNode)(g5,{class:`screen-btn`,"tippy-options":$($({},e.commonTippyOptions),{},{appendTo:(0,t.unref)(l)?s.value:e.commonTippyOptions?.appendTo,content:(0,t.unref)(l)?(0,t.unref)(G8)(`退出全屏`):(0,t.unref)(G8)(`全屏`)})},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(KOt),{key:1,onClick:(0,t.unref)(d)},null,8,[`onClick`])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(GOt),{key:0,onClick:(0,t.unref)(u)},null,8,[`onClick`]))]),_:1},8,[`tippy-options`])])]),default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(_),n=>((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(i),{key:n.name,class:`ai-chat-container-tab-panel`,label:()=>(0,t.h)(`div`,{class:`ai-execution-summary-label`,onVnodeMounted:e=>{if((0,t.unref)(y).name===n.name){var r;(r=e.el)==null||r.scrollIntoView({behavior:`smooth`})}}},e.getSideTabRenderComponent?.call(e,t.h,n,{removeCustomTab:(0,t.unref)(S)})??[(0,t.h)(n.name===(0,t.unref)(`execution`)?(0,t.unref)(hOt):(0,t.unref)(gOt),{class:`ai-execution-summary-icon`}),(0,t.withDirectives)((0,t.h)(`span`,{class:`ai-execution-summary-label-text`},n.label??``),[[(0,t.unref)(h5),$($({},e.commonTippyOptions),{},{text:n.label??``})]]),n.closable!==!1&&n.name!==(0,t.unref)(`execution`)?(0,t.h)((0,t.unref)(o5),{class:`ai-execution-close-icon`,onClick:()=>{(0,t.unref)(S)(n.name)}}):null]),name:n.name},null,8,[`label`,`name`]))),128))]),_:1},8,[`active`]),(0,t.unref)(y)?.name===(0,t.unref)(`execution`)&&e.executionTabVisible!==!1?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.unref)(b)?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createBlock)(Rzt,{key:0,"message-groups":(0,t.unref)(A),style:{height:`calc(100% - 40px)`},onLocateMessageGroup:ie,onUpdateKeyword:H},null,8,[`message-groups`]))],64)):(0,t.createCommentVNode)(``,!0),(0,t.unref)(y)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:(0,t.unref)(y).name,class:`ai-chat-container-message-slot`},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(p.value),(0,t.mergeProps)({key:(0,t.unref)(y).name},(o=(0,t.unref)(y))==null||(o=o.data)==null?void 0:o.props),{locateButton:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(Wo),{class:`ai-locate-button`,size:`small`,text:``,theme:`primary`,onClick:r[0]||=e=>{var n;return ie((n=(0,t.unref)(y))==null||(n=n.data)==null?void 0:n.messageUid)}},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`在对话中定位`)),1)]),_:1})]),_:1},16))])):(0,t.createCommentVNode)(``,!0)],512)):(0,t.createCommentVNode)(``,!0),(0,t.unref)(_).length>0&&(f=(0,t.unref)(A))!=null&&f.length?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`collapse-button`,{"is-right":e.placement===`right`,"is-collapsed":(0,t.unref)(b)}]),onClick:re},[(0,t.createVNode)((0,t.unref)(a5))],2)):(0,t.createCommentVNode)(``,!0)]}),main:(0,t.withCtx)(()=>{var i,a,s;return[(i=e.messages)!=null&&i.length?(0,t.renderSlot)(n.$slots,`default`,(0,t.normalizeProps)((0,t.mergeProps)({key:0},{messages:e.messages,messageStatus:e.messageStatus,messageGroups:(0,t.unref)(k),selectedUserMessages:E.value,messageToolsStatus:e.messageToolsStatus,isShareMode:(0,t.unref)(j),commonTippyOptions:e.commonTippyOptions,handleAgentAction:oe,onAgentFeedback:e.onAgentFeedback,onInterruptResume:e.onInterruptResume,onUserAction:e.onUserAction,onUserInputConfirm:e.onUserInputConfirm,onUserShortcutConfirm:e.onUserShortcutConfirm})),()=>{var i;return[(i=e.messages)!=null&&i.length?((0,t.openBlock)(),(0,t.createBlock)(Dzt,{key:0,"selected-user-messages":E.value,"onUpdate:selectedUserMessages":r[1]||=e=>E.value=e,"enable-selection":(0,t.unref)(j),"message-groups":(0,t.unref)(k),"message-status":R.value,"message-tools-status":e.messageToolsStatus,"message-tools-tippy-options":e.commonTippyOptions,messages:e.messages,"on-agent-action":oe,"on-agent-feedback":e.onAgentFeedback,"on-interrupt-resume":e.onInterruptResume,"on-user-action":e.onUserAction,"on-user-input-confirm":e.onUserInputConfirm,"on-user-shortcut-confirm":e.onUserShortcutConfirm,"render-mode":o.value,onStopStreaming:r[2]||=e=>g(`stopStreaming`)},{group:(0,t.withCtx)(({group:e})=>[(0,t.renderSlot)(n.$slots,`group`,(0,t.normalizeProps)((0,t.guardReactiveProps)({group:e})))]),default:(0,t.withCtx)(({message:e,messageToolsStatus:r,onInterruptResume:i})=>[(0,t.renderSlot)(n.$slots,`message`,(0,t.normalizeProps)((0,t.guardReactiveProps)({message:e,messageToolsStatus:r,onInterruptResume:i})))]),_:3},8,[`selected-user-messages`,`enable-selection`,`message-groups`,`message-status`,`message-tools-status`,`message-tools-tippy-options`,`messages`,`on-agent-feedback`,`on-interrupt-resume`,`on-user-action`,`on-user-input-confirm`,`on-user-shortcut-confirm`,`render-mode`])):(0,t.createCommentVNode)(``,!0)]}):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,$zt,[(0,t.renderSlot)(n.$slots,`welcome`,(0,t.normalizeProps)((0,t.guardReactiveProps)({openingRemark:e.openingRemark,welcomeTitle:e.welcomeTitle})),()=>[(0,t.createVNode)((0,t.unref)(aOt)),(0,t.createElementVNode)(`h2`,eBt,(0,t.toDisplayString)(e.welcomeTitle??(0,t.unref)(G8)(`你好,我是小鲸`)),1),e.openingRemark?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,tBt,[(0,t.createVNode)(T7,{content:e.openingRemark},null,8,[`content`])])):(0,t.createCommentVNode)(``,!0)])])),o.value===(0,t.unref)(Q8).Share?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.unref)(j)?((0,t.openBlock)(),(0,t.createBlock)(Yzt,{key:0,"is-all-selected":(0,t.unref)(M),loading:!1,"selected-count":E.value.length,onCancel:(0,t.unref)(P),onConfirm:se,onToggleAll:(0,t.unref)(N)},null,8,[`is-all-selected`,`selected-count`,`onCancel`,`onToggleAll`])):!((a=m.value)==null||(a=a.components)==null)&&a.length?((0,t.openBlock)(),(0,t.createBlock)(Tkt,(0,t.mergeProps)({key:1},m.value,{class:{"is-welcome-overlay":!((s=e.messages)!=null&&s.length)},onClose:ee,onSubmit:z}),null,16,[`class`])):((0,t.openBlock)(),(0,t.createBlock)(xIt,{key:2,cite:h.value,"onUpdate:cite":r[3]||=e=>h.value=e,"message-status":R.value,"model-value":e.modelValue,"on-send-message":ne,"on-stop-sending":e.onStopSending,"on-upload":e.onUpload,placeholder:e.placeholder,prompts:e.prompts,resources:e.resources,"send-disabled-tip":(0,t.unref)(I),"shortcut-id":m.value?.id,shortcuts:e.shortcuts,skills:e.skills,"support-upload":e.supportUpload,"tippy-options":e.commonTippyOptions,onDeleteShortcut:B,onSelectShortcut:V,"onUpdate:modelValue":te},{interrupt:(0,t.withCtx)(()=>[(0,t.unref)(L)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(eLt),{key:0,interrupt:(0,t.unref)(L),"on-resume":e.onInterruptResume},{question:(0,t.withCtx)(({question:e,qIndex:r,answer:i,setAnswer:a,confirm:o})=>[(0,t.renderSlot)(n.$slots,`interruptQuestion`,(0,t.normalizeProps)((0,t.guardReactiveProps)({question:e,qIndex:r,answer:i,setAnswer:a,confirm:o})))]),_:3},8,[`interrupt`,`on-resume`])):(0,t.createCommentVNode)(``,!0),(0,t.unref)(I)?((0,t.openBlock)(),(0,t.createBlock)(wIt,{key:1,content:(0,t.unref)(I)},null,8,[`content`])):(0,t.createCommentVNode)(``,!0)]),_:3},8,[`cite`,`message-status`,`model-value`,`on-stop-sending`,`on-upload`,`placeholder`,`prompts`,`resources`,`send-disabled-tip`,`shortcut-id`,`shortcuts`,`skills`,`support-upload`,`tippy-options`]))],64))]}),_:3},16,[`class`]))],12,Xzt)}}}),rBt={class:`ai-image-preview-group`};$($({},{name:`ImagePreviewGroup`}),{},{__name:`image-preview-group`,props:{maskClosable:{type:Boolean,default:!0},onDownload:{type:Function,default:void 0},showInfo:{type:Boolean,default:!1}},setup(e){let n=new Map,r=(0,t.shallowRef)(!1),i=(0,t.shallowRef)([]),a=(0,t.shallowRef)(0);return(0,t.provide)(mFt,{register:(e,t)=>{n.set(e,t)},unregister:e=>{n.delete(e)},preview:e=>{let t=[...n.keys()],o=t.map(e=>n.get(e)()),s=t.indexOf(e);i.value=o,a.value=s>=0?s:0,r.value=!0}}),(n,o)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,rBt,[(0,t.renderSlot)(n.$slots,`default`),r.value?((0,t.openBlock)(),(0,t.createBlock)(e9,{key:0,current:a.value,"onUpdate:current":o[0]||=e=>a.value=e,visible:r.value,"onUpdate:visible":o[1]||=e=>r.value=e,images:i.value,"mask-closable":e.maskClosable,"on-download":e.onDownload,"show-info":e.showInfo},(0,t.createSlots)({_:2},[n.$slots.extra?{name:`extra`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(n.$slots,`extra`)]),key:`0`}:void 0]),1032,[`current`,`visible`,`images`,`mask-closable`,`on-download`,`show-info`])):(0,t.createCommentVNode)(``,!0)]))}});var iBt=[`alt`,`src`],aBt={key:1,class:`ai-image-error`};$($({},{name:`AiImage`}),{},{__name:`image`,props:{alt:{default:``},height:{default:void 0},lazy:{type:Boolean,default:!1},onDownload:{},preview:{type:Boolean,default:!0},previewProps:{default:void 0},showInfo:{type:Boolean,default:!1},src:{},width:{default:void 0}},emits:[`load`,`error`,`preview`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=Symbol(),s=(0,t.inject)(mFt,null),l=(0,t.ref)(),u=(0,t.shallowRef)(`loading`),d=(0,t.shallowRef)(!1),f=(0,t.shallowRef)(!i.lazy),p=null,m=(0,t.computed)(()=>i.previewProps?.src||i.src),h=()=>{let e=i.previewProps;return{url:m.value,name:e?.name,width:e?.width,height:e?.height,resolution:e?.resolution,downloadUrl:e?.downloadUrl}},g=(0,t.shallowRef)(0),_=(0,t.computed)(()=>{if(!i.lazy||f.value){let e=i.src;return g.value===0?e:`${e}${e.includes(`?`)?`&`:`?`}_t=${g.value}`}return``}),v=(0,t.computed)(()=>[h()]),y=(0,t.computed)(()=>{let e={};return i.width&&(e.width=typeof i.width==`number`?`${i.width}px`:i.width),i.height&&(e.height=typeof i.height==`number`?`${i.height}px`:i.height),e}),b={width:`100%`,height:`100%`,objectFit:`cover`},x=e=>{u.value=`loaded`,a(`load`,e)},S=e=>{u.value=`error`,a(`error`,e)},C=()=>{u.value=`loading`,g.value=Date.now()},w=()=>{!i.preview||u.value!==`loaded`||(s?s.preview(o):d.value=!0,a(`preview`))},T=()=>{!i.lazy||!l.value||(p=new IntersectionObserver(e=>{var t;(t=e[0])!=null&&t.isIntersecting&&(f.value=!0,p?.disconnect(),p=null)},{rootMargin:`200px`}),p.observe(l.value))},E=()=>{p?.disconnect(),p=null};return(0,t.onMounted)(()=>{T(),s?.register(o,h)}),(0,t.onBeforeUnmount)(()=>{E(),s?.unregister(o)}),n({previewVisible:d}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`containerRef`,ref:l,class:(0,t.normalizeClass)([`ai-image`,{"ai-image--error":u.value===`error`,"ai-image--preview":e.preview&&u.value===`loaded`}]),style:(0,t.normalizeStyle)(y.value),onClick:w},[u.value!==`error`&&_.value?((0,t.openBlock)(),(0,t.createElementBlock)(`img`,{key:0,alt:e.alt,class:`ai-image-inner`,src:_.value,style:b,onError:S,onLoad:x},null,40,iBt)):(0,t.createCommentVNode)(``,!0),u.value===`error`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,aBt,[(0,t.createVNode)((0,t.unref)(lOt),{class:`ai-image-error-icon`})])):(0,t.createCommentVNode)(``,!0),u.value===`error`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:`ai-image-error-overlay`,onClick:C},[(0,t.createVNode)((0,t.unref)(TOt),{class:`ai-image-reload-icon`}),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(G8)(`重新加载`)),1)])):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`),!(0,t.unref)(s)&&e.preview&&d.value?((0,t.openBlock)(),(0,t.createBlock)(e9,{key:3,visible:d.value,"onUpdate:visible":r[0]||=e=>d.value=e,images:v.value,"on-download":e.onDownload,"show-info":e.showInfo},(0,t.createSlots)({_:2},[n.$slots.extra?{name:`extra`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(n.$slots,`extra`)]),key:`0`}:void 0]),1032,[`visible`,`images`,`on-download`,`show-info`])):(0,t.createCommentVNode)(``,!0)],6))}});var oBt=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAAGVn0euAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAYKADAAQAAAABAAAAYAAAAACpM19OAAAj4UlEQVR4Ae1dB4AURbqu7pnZyOICShIVBI5TDPgwR0yn5yknKigIy+5KMCJ4ohgQMGdP8BQDsAsqHsZTnnqcPlEU1DNwnnqKYATxRDIsuxO63/f91dXTMzuzzBLEd28Leqq66q+//lR/he7qVWpbh35lsYVBnHbwJpjuPqB2Be/3s9X+jH9TFnMZZwxdBkVXdhkc+02w8E8VifoVOg+Kurze/tRxuw2OuodU1tUHMlgI2GdczH1/kSPXR1847ieLE+6AC2uk0v7DoxKn8DDkt7aaMOFOtWaNq8YjXr/WVS3DupEehXHBLRWInXc/rXbV22/NU+vWOurNN+epmnWoENEV9g9WWDIjzyoOuWo9AG694xlVi/ihe55SsfUJtOAI5h5FCYnD8oufj6ryrVcLNrknHmyrkO2qSEgpx3ZUK7SAf5Y11rIIKz+mEuM/jNzgtgDdpd4l6ZCjGO99Vat68MG6v5R09/61NfVoGe/6+vITBqg2HLoJevnK3DO+61v3CXPvi7VbpVsSj8XW7b2HUsNPDamrQ3VuKXRzVlF+wYhJVj9TwRcTtT1rbBgyVyqM3BBS190VVS0i7psfRMNHLnwwT2CFpD3LYmM6trXU8lWuWvzlCrV6jaO+/GqFumpoRLUMOUfu72mZrdgdyzd1tFz3liP3sdRaGNuI84eoDYiHDhuqatdrTRvDYwWfpIMr6tzKk21VBLoLYRqFaJvxFwuiqhtaOHZsiyRJrEmbef31mIoCa3yDqxIbHOXiYr4BTmmBNxeN2PgWbOjwUtoOACklY1c9r2npU0PYX07YYrL69nXzrKJ4ncfKglnVkcOZ3nNgbNyXj0YmGBZzauCSo39yPUBHWRZ0Y/We9HrLFwwSNlZYGFuUb1l7FECxBTCqAmWPu6E6dH2DDRjfYxCZ2EatAstV/6zOt24uc1vZduKnMVW0V6VeqUwsOWFqqLOBzdiAQdyji6VuroSRaz+miJiB5j1kQlQaKYArem5yoY+n7Xnx73+YEm4vgPjxC0yGQT71ct2PCEDENthmHMIF4pF2JT3pATQEof1pYrF10sW1IsqX7ytgNQnSmzsPqluOakXIac7cy84KqR/Q74jswvLTBbBqxrPSaQcO7CP3Tz/+jJTT65ILhgPQY8jty/pWfv2WDOWkkl3s4tNtQUjJRnAxTl5oHBxFIKu3X9EcjLqtuTXzOnRqwPWfsBN+dfD9EccGZh1SWesU2Mp65sWEOvUoW5DHIY48tJxQDly/gtMHIGKKjRyw3zNg7FgOBtrpO/3rtxTMZLo/xkBygsZExrSaQogieM+05LHMdh4+7roWwy0LN03hP0cCvXq5vhVm4yqrFWWrYPL7DY5ehM55H+9tK97piarCr01Zo+J9zqkd0X1A9C5W6n5u3d6YXc4zCG4sjz9k0oyPw0zzlLL45GDeZjkYAVcNF60mvt7KMm574hs7p9TrPzB2IvrDnHxgLgBsAfxFfjjcavwUa1UKYLBlk24/zC0q3BR7Bfc90XFnLnk0r9yUpcf3VsTdfHSz86voVHTwEybDxJg7TwFspbkPxnnorEUF8fbvP1S8/Nby+DfwIhddMS08+6+D3OKTZlgbg7AZGzCOzwCOHRhSR3S31FPzHDXjpYTnMuBGLGvBq4/ky1BpYNPjeg0Ekb94M8YEz7NwRktgXptqXXXZ7THto2znlKceKH6JiNtVxh+37dAVyx6xlvKewfOD+ib4y4nbhk1KbajVVw1iIubFSvdeERG3XmRbL5p6rSNO/11Cse/MPeOUBgz1V/UPqfVEjmvjJlfVeohr0Yi5YlGFaZr2tCNH1owksnYRR7XFhCoYUhowBe1aErmrNgLx0PIKHymRDyqrUDGsQ+pQdkllnioSl+7cw7ptMDa0Cev1hMHlDZnRtSaDMSmnzC/2hktyEAYpZd5wGfXuuUThYMOxgkFTn5kDjsUyHhOwBgjqsFBrvlML3kq6DhyVlur7GKZbnHIlAFPozWYJR+rTRSQccLg08o+AmjqIIgHKrr1hiozDMn8DR3fcPAVjsQPEmH9x8Mb/QsCbQb9dXir1bNTXARvJt1VdEXJehL1TDJpSxi4oxhQaiB0o14nhQtrFxSGTdRgy6cBvgACfVucVcBzeuC6h4kBEpDE0RFHIhTzGDi4XaRfK1uN2UgdtvcUj8THU8+eg6B5Mm0bNmx9X+3a2VBtYVAKiCIEUh8pELMtJxOtWOUJ9Pohi2HtM/Tk+qtYPfS+oeRrWcQYtJN/SEyuxFpokZY58mU3gPh/3wkXY6tfr2tIn07FlbMAAjbx0o0vqfORAXIAlcSEUzOmiXGwAejBw+cr9qNtVrWQnwuBpipsksF0l0Lfcbbs1DcCud1zoNzjmWm58OeKjs1HR4TwXniR72GEMXFQRf5Bzt50xrLVS6m+j+rqF6WTuPyh6futobGV6fvC+QT8UBGwofeqp2OiDM+UQi/D3F2Y3P/i001bt7jrhb3SexXHpsednlwxMx1N9Xnzw4Cnh6mB+X0g9EY+v5KYkXJysESPKemBKdfjCIBzT24SBINJ7enw/G7uO7wPxWEw2mg1/v339LbpghbT05Zh5WnZ8acSySkk8xyq5gBAMnfeHqvDUYJWtYqDzoNizGNn0JkAQa+Z03Lat47+ojryRqfiWytgJV02NcP7uh8cqEj9hht7KKrBL+t1vbfALAolGM4B5DXeZKZycAzc7/P0H2JpOu5fPn1ogS6Zby9zdlZV4dUx1uGs60oWVsWN7TI28lp5v7nNmwEzITEUT331BSO3bKTMazskYGI15IK6+/I7EY/MEGWQihHSerapfmFxYTrgtCV4T2at2Hlh3O3rn6CDEeb+11WmHYYtFz4L8Iq8Tc74kRBsGCMCGvEmmuvTmqDDiawWMzLy/KIWWzkOjj6Pr9zfIFz9MtuuHjJkGrPPA2DPYNdMbW17mo1fVmwL6jHBzjQh5CfFkBDf01YxNGVF9vthRz74Y88yJGsETi0nFBJFw5IWYlQbCm/fn+2WBbMEZvPfTXc51m7t2LGU1MnmkNn0j+SBRJi3EAksmwrUGkkz+6zM8l3krrvfkQB40Er3zj8VcxKszR2yCM9M0u2jw6YnJ7UyfSCTqi9MrBfH/HQQ893hbllMmj6gfuf8u9e78eSZLTX/8WV/6LL9v0t1qfqD8mT/rcs2cq7p2stR7C3Sf4MYiGMgzyNpiESmjBzJkkDEFabHPALZLX4bcTkor9293b20JA5QwJckrSDwBudoykmd5kHiWc6Fk6pJBEs2FqXRozQDBJMjaxdMAirIG0iNhyYz8k5FY592mRELMx45eX8I0uZDldd3ND/twRcUlKooyvZrTK7k7bnvILy9GeRyLLC7E9AoPMRZeXFVwycKLzJjQFktIMiFXnn6KZ8qCMQVRL3QeGK2C/gYn/beW0nm/C6FD6s0JI0nCUAoSI22hnD2FwmMscF5MibNBA8t6781N9Ujn39KcIOr5CWuwoyxJ1HJV73Gl+oaFgeCbUCBPebtY5T3Koz3gqz8Udwcks16Oq95HhVR+hESAGAhMVpxAzR0JwtETcS9bd3fYL5vlJSFpQpQ1pqIiecGPNGMTKPlgJzb56XFGBgzQwqq8hScMc0vjTt0aujkCv4blMhs67pAQYpCBtDFVGaKNUbIMgWWOEKalT3gyJaWIuSDlkw/BL/lwPhBN+7C7m2O73wkSV62SOMMPquQWThu+aQEIP1QaA5HB0bRjB1vtglk7GRNzwg81YMxL5+vnJ9Qc82vwLHz9DwlNOOxMM6HUqeN3shvzQCBnBgybZRfXnI3GniBRhgkjPeb5aVTg85aUPJZT2syX2AIOzZDGpfsP02SU9SO2NXa/MS1uNO2nxwDdujBm1IZRIGgCCCrRxCYZEyKEqQBjICwMIzGM+oQDjszQTIVB1vOYJUynK/5vPOHfOmk21W6SQJMEmiTQKAmcUxE7vFEVMgBjqNhxwXGsR/HmiJk2bREhO4yBfoPjWO+6nfCOzepslHcZXNc9W5nJb3AyZ4C2ZXxmeW3XsGP/DXPWPTy8JdwjxQyvfNb00HRM//QsEIWuY41ANLyh9n92DTxdVfCFsynyK+yHck9U7azjG2dND1cHiSfRWBkMO3BwvDfT2QJmGVsZ8CZf90XRhUDUPJyX12NhlbXGYNzn3Lo/YzpzMt7JOfNfjxek7LoR5iY8IQfR114zLXSTqWPiY8pif4kotze2GNVL1ZwNZQ5ZCzKD18897dT1eOHGxYt+GlVBYbPwk09aCWz4rkNeCWugXM2erVdaQQzTKhPjK6aGxgfzmO4D4tGze8vkEPfs5TU14SLgxVPa1LDVfaDTOkhZWZdqtBDouuinI3utPslZFxPi9dIls5zauPafDDnnVLi7hZ34KBA0SmarQCU7FRCMzFiLEzXXDI4vjoTcC8ZNDb/KRQ/rZsZssDYynrjf0g4JO4QNRHc+OtfckQvbX9NIFOryisTFIdedJNNqVGZMDWAV+83GjqEu48dbXPj5YZswgLdFT8ALoIOA9Rhc7XCth2i+sFzr+ZrC8L3fP2Q1aov9wWFupCaaiAoToBD94O4hU0N/8KkOJLaYgT3PrdsXT9Q/BK6cBiLsVsxePCP/tEDbfvLWisTwMdNCD/oZSMysdNu7bmJZWFnf9JsW6hgsC6YbzUC3cza2j0ci3wJJToSbxrgCo0fBKmvmwur8ASb/lor42SjCK8bWJ0Uldk+8PVxnyuZUJlbN393eGWaTdWOoUQxgs/dy9J07TAO5xGzALB8DS05nwdR8XwC3Do6vyLdCXUcFXDBxf1jpnnvAVOuxhtqhmeUU8HzgA3iUAzIBQ7Cq8mRb7benpbp1sNRK7O99vhQbsm846gt5JpDcdeA6OWxb9rFDat2CRKz1S9NKVuDl+EPTiWc7zVw1J1N7wbycNADiq1GpLFiR6b12xztjF/uC9IsNUjLG9Cdf4TjBw9yFTmpDXCNc1YsPJt9p9RE0ImHaylqly6C6vtiSmpUOwPeiigtSc0lwMPDWXMy/c3pcLfrK8bdaZNsF+15PT+b2VmrYdYjbIeHE30Xnn7t8ap7fZ1KhchgHMj1aehabKMFgCOdzAyEYP4wZGHN/1NzPfTehnn81AW2wU3OLhVpRMx+7vyiFyC5Dk4dWMK7MXPJwZiagxOyhc1m03vzliWvDKoahhBcf9/GqwztEvOJIx7FJKjHTuGKY7sRAC6840kf9l6326ojRFS2b/R+kMbVODcXYqW7mXSWh+uUGukEGIKTjDSDjS88ICYGG8CiI5kVmgsRGQSwvEpzwyshYzGNy8BlhjKz6wYY2I1edP2LjC8G2SvA6WDPvKoamsoWsDOw5MOrNb5JV6WUo6SDhRhuUtJF8AsTyMmWSj3qOl58A7KAzI2I+NCPp0Mo9NdkSPJBIn7FSZCZbyMoA7Fqe4ZqKfMRkJBsFAeYyJqI1kNQG7yl9wwzjOI5WkXjmt9tF74vqPgAm0FHG42VV014zdOtivF7Fi8xkC1kZQIUUz3DIr/EEDg3L5Wnh3z/+pC4cUqEm3nOXL32jBcY//rhCVVRUqNvvvMsnPMjYrnhsRemTeGoi2myjr/ViDL6mD/D8VbaQ6k6yQSGfhAcDOb/sgiGStQAnwFwM9hdefJlsr/N5AMuHDx8q5TwhBpNXl43Q5XywwfK9u4XU2yvxqBVpMSPL5errFlZCx0WV7IQThsHXANzl2sBV71lZ0O6NlDUK/fv2/HkBG9fmEyx/E8fdHJiQXBAGTaoFnhppDfgDXFdTJ+iF2A+yhaAGmmcDYj41QH9PXIgQ15cOvQysQS68mMlqKYG2z1zC8FlaMSyefUBLX7bcuUyWQA+URJF1LifaM3Ugk1S7NwWM6VH4ZIVvX7JzpJO3E96UpXQlH1ymC41vzrpogeXGxEhWYDATZpAlgX1AXoA1GVlivx0nkeicBQYEw3OgcRmMIGXTEflo1YTLx9wm3oVEJgiDi49WTZhwNcuJB0x6poQXdaUD66m2ZsbAsw/440ADXsg3oa8eL/wGfYBe4F6DhLE31Kt16zGw4KUwStB0wutvmQ5z0B0SypE+QPuiVGgmf7yjSqflnoSna4BPZMx0Qo8HAJUgJiTGytt0fWsY/voa4A1eQZ4ITXREEgZjiNcNzP0Ap/jEh2s/rn28SWviKGGHFyWM2KXNk2iROmLmMR0oMwOZ54XYrAR23FzGAV8DpiI1gXSk8yC3dcSK/ttoYMVKEgWx4r8RjKyTeM8MXxOQFns77qUESa01aEhyMLcFcUamMpUAjG4HCS+Q+FxCigaCFZbMsH7kAKMRc6TEcbG3cCyLNg4J+hfmPEFps1xLmbE2K1OuIH1yQc0wzbGDEgyakaFB+oA3mdvSkRjvfFtHknCeKGMjUbzM8ekizQQJdUCIeB4QYswmJZ8Eg1kRvUPz0UzxsT6ZcPDuBPHLSAz82DrxQ8o4EFLL/YK0RFYNEO69KZG3MGtcTuKlIZjFMuzDffElvDyIE+KFEWohQBzyDJHa/j27J0PeRfNb96P3oBt4iZ/eyAR04lWcD/FqbrkHm/z0OGl06SWB+5OG1bqyMEeemcMX422SnvuG5IE0Hq2Lq+U4gfbkbX1KhmlzRDI9TdjvPo5JvaCp/n5C5pc6gCpjqNeJM0E1L84vim6qrdG2qideCdj+hwsTqrTEUp12gyuFG4Gc9XsQtHMiApHsz3InHdvcK7X0c/26Gbda9OqMDCc1wFq5BEGfC+BpmOoWh2s3pmgCDZpOzljMAMgEBvfBMuYJsYgFVspNfU08NRGynKtsJ/TUseN3WpwLXTkzYJBVXFzzAwho4zPiESSmRYbEcyFOY8T4ec1UJubABIWQyvjKvGiL9t3HW1HTfnrcaAaI4PxLag6O2O47WqqGGB2LObBDGu0gTaJ8M6EmPK+WnRlqgtqh1rDeDsWa7T+6bcpBOMMI+1qjw+RJRe9OuhevSFqJVnB9L4uXEsl53gTEa/eoGfGZAoxI2GPOeB4hVBjVBBvC89A/yORObvj1RhPZVKFJAk0SaJJAkwSaJNAkgSYJbE8JDBjgtsBEH1OVHRe2aCa348jdti3Hw/ELzh6cSHmutW1b2Dy2/7cKwBtid2O5exMWwI+eXR6VDz9sXlypELtvgx60Q7tfKjvb/45L+qLa+Fg4Hb70EtyBYuNxfMJo9J+r8v6YKyU4pVOG9eKixY/lvZ1rnXS4/3gFlJe7pQkr1s1NWMfjWMtQbPt0pBB4ModH6+qllfWVYzkTsXP7Wl048vWTD1kpxwClAn743ZySTbGlWNgv/df0vP1MfmPj/3gFZBLImIr4EMj+ITAPA5aA50DuKbdNi/w1E3x63uHYsnes2KchZeE8CR9VWZ9YdvjAuVUWto0bF34RCjjijI34YKZ1vU+6Z5mw2K9DcXX0G38p+s4vQ+LIPhtOVrb9HEw4X/I9a0aER3fW0fOeKXorCJ8pfTfO64fjic8xDnx5SVXoUPP2YybYZJ5rnVSWeATbPZXUHAdQ9ADFJ1+M8X/ck9WRJB/JillTvwgFDDpxzWoQUso9YWFDYtJM8pDnWsNmvFL6MHPKTljzBB7Nne2XMdPAMbbcp2fMaXGWZG/m5+nz3CPwBctvT59mpSg4WI2fQmvdMVZmu9YECBwH5TzBoy2mpQdA83hZU+5DklaLbVuNundaCAeBTScLYk2mfxEKGNbTjbQJ//siHDA9GRw1c1zXsW27peM4e6NngDcw59oHgZcT8EDlFrBLvqLIXohixC5PLa62HPfh8e+2nZ1kr/Epjhm2XdcmlAgfCJxHwbrPgXXvJMIOCFnf621oipjb0RRmUkHsFdZ3IP55fNNoTsgNLY5H1LIxaWPKL0IBDYnpNVjgNz8umw93g89jqUPB7MTyz3Yb3VCd7VE2Hm/fWk6iCgI+0RcyNGRTKZCi5IFAGMQsFbWHjnjMqveSSSa6dqgCOuJzPKFErB+8TD+YDx/epU8NM9GcKY8PPd4B/8/godfjfCycCWhzeTeWubsWbVKrLsvwar+pOwvnfFY3S7yKT4IeQ6F7gzAVUD1oWqjcwOUa/6wK2LOs9leWa08AcfDh0mNzpbNRcLRIPghF9CYeb4/9uCoyd3MIbocx4LtwH+DVgRXhhH346LSvIabXf7YicQXw30afj0d5fU6ZEn4uHSaXe+DYvqHLwFgvDJo416Fab8+WIAdxA/6giG5FvwxLxSVuYi3Gjf7vTS14KUjHbXAtGGt6w1ffAFCeQmL4Cou1a2wr9PqVU63vdVb93zfPS8zAGLHo8KmhG+qX5pazXRTAz4knYvFpmNWcmRsZWw5FgcurAeCEzKR8JyKlTCuEMDiUU11YmDf8pcDhBFJw6+DERbbtfsNvgvJ+c+GzSvdAwHz+66nW+s3BZivfpgroibMuazfF/hu++MRsDWbK79nVUr32t9Vhe+PzTXjVEPUzBhLLMkM002vA+oJPHDX/n476x2L9qQdt+VAMyvEVKc8dmcFSK0wU5aoFdmHBsemKQLWfLRhetrpBfEvmRojmmlwQtcNXJIecYit+5X5LQ7oyiIduiBr6+6eOmjnHUStWOvKijCyaUCaKQQx3k0yjCl4CuPy5yUUpb1YT388RSPJWhe593Wa1BfHPwPmum0N06qG2GgrBY5GyRQFykykfYxIuAmfsYTMxM5h28JLPrL/G1et/TySniiiQxRLdEy6TxmC9NhJ39noUnyf20GWMeI4ERw7+gUJ8uSQlrMLLWvsHPwKcUprlxqc5S3mD2V0H1e2FTRQS0+D08bf4ix38YyIiOLTImIECNHk6J/NvkEimteCJhEuyYGzKNB5Tj/Gzf0uo+R9AEUjrebtxSWkKse1jq+4rnKsx1P/de1gdBmW7Xf0S5jjLP30ov33mssy5hsbMpQ3k4ot+x0F8rzYAolrjz17cVBGSt3sbgksvCxJl3AphdD78vGf6Wvgm34sBZOqnx7U4D/jgo1G1Bp+BpOWzBxBGjxlUjB4foNZeD08qfD2dLt4fdH4dVt0aM1foTDNmYPrdB/TfD5CMHH4MjTmAJkG6nFvTwbXDXyOH0+2MoXN7S/Ej4Y0JJEYIwo8mTAuIOPx88Orx78Hoew1v6jUcz3gqqpb/QGFrgcuADATY1cQ/GR/iiTxn18l3ltRb0B17Ib4j5jWmoXmrM6iI1+5v3Bm+nF6wTBcihD8DeVmly8OIo/D3L9IPqJBM7TA0RqbpErgJRyY8NjwL9/mUfI/nFOH7ecDBtK8Y3HCgJQa6G/o5bbUa54A+EfXs7Jhatky7IYIEZ07YuwnnRa2nkH00rpTA9+eTlGp8ehORYLonpFTYzE2jh0PtelSvbHgphDLslvBsFs9imZjpOi+PMS++t89zW3xnn2ex5NAZ3k/Wx/uQx/zghTJzyoJ1dZnGo48K6jTfvuW9/ya61DNnAuCpgfPEY3DqDtybNxP51qG8eYheIW8jhtRR+ExVyt/iIs98+5wvcPPiQTYTywk95DU2NL4HWO6QhhR98kG2yseXEdOtn4TR0hholatW/aTGXTlKbdyQuoYpblaibrr9HtWqpV6UGgthXW3h2gJZf/Toy+rVb4b6d995t9oZ9dkOJkK6F7BhyIc46GZI44E9Quqjf3Bg1j2BbckFGIlthw/s57CqCTz+iKdlEihu0mXEznRjg4eqEdVcdVhD0Lvtog82meOSJvYtWSxcqRuuGV1PeMRLhYy/erT0ClqwtnTPsr3ewvyrr7oiY/0NqH8lysx5DMZx9Aj2CjkF4+FgL2iDz0On9wDpFRCy7h32Mem80gWZHsDzF0z7Bwu3RQ/AeaWv0GjH9IZzvW+Nl/yN9XNyoH2wthTjo5m3ds3qrCjXoIyCF2sFDm21AWtGHmGyhdWrV8sRDG3xADZ0oAKt1OArxV9BoqBphRwD2DMkDQK9wbjelFLOUAFfpmBmR5nKsuVlcEH8WzXundkqbC5/FQ6V7cyPvXgMYZ0gzJBxBjJIt7C5QMv1FQhg1qer0C7FYMuOheMKDFkWfZydUGZUfHrMt8nrT0mNS3LhqFKDPnWUrf1cOEvFR3mkhCUzIncB/eMpmTnekKxlK+iC6DI4COJvZiE27kcPtvr+gIOOyor1wIOPkh7Ak008niinoBDzyKO4FqQPAUy2cNghR8qBOgeno+iuzAkpcxiJdOiDeMlX+vkqf3AglrR039RWxN3ADWlXhHPN4pLM4exU2FzusqlS7VlWNwAPuB/LFYnZZ2mPBXq/XtgERj9nN2YD5iIuwxPz1q1doWY/N0Mt+eJjFqkuXfdRv+8zSLUs3dl3E6auxPhJ3rtq9dqV6qmnZ6jPF+n6v/5Vd3XOmWWo3yq1vldPWxutm1hAG7rDvDlR6ZWkSy7ks9ykL7k19dtNVWPxV9y8oDkkj8RHjK4qvyH51908sAYjXbMBkM5ldXwA/iBw75QORoYMobKnAo6YdzR2NvfaA2UB0gzTLDeNsi7TcgXSzNdzd42DrEkesrUQk3WC+aYe26LyGUy5aSf9/p3/ierNORRo2rRL8sYAZT5TLMjw89Q4fK5YFEgSOU4Bkr7SC2dt65NuS6bn82EKL9VpwKY9LDt0Os5U9Uezh/gbWSjjBpth4J2PcAIOfwOoDV59Ja3Mp3WIXPFjhKEztJAoGPLBP7BHdgwMDyczzTzioZeVaaAHxLPtUo6G8Lk0D1bHxCnwqCMB9wa3pFCHc34svAKDsFY22+KYkx64DtAjEWmkmvQoRzhNeXqNhu8zDMLZK3hnie8FxL3dB9dNA/HlevagiTVpxq+966gj8OeHO+DbEJppMOZJmRH+S6CCKCTDKhlnGfNZk72I/8XKdFLxoCiScglKpImBeRKzMu71e88QkxRo8Zh2BBTKxd83kHpUhKGLZ9SEDo1QQM0PzzGn9gCPNgDodgxkbnGjFBBE+Ul1fsWB5bV7gvqjzSyCDGjLQYzEe/9MqG9b2OrQ/bRP5clbwiCSmII3TBuGtcVSmPyH4PUAMifwQgQQeEI2eRS2EQBFzbTpUewlgh91+f4KlWNguQ4Qny8xe4K2a21MKeqSlnn6l/UzhizZGWG9TNK1xeG9qoJjMFuYLIsZYNInH71DhsDKE5Fr8aep58xLqK+/Q2f1FkFyEB1pakIOoyOW49MyY2EaLFJLkK5MR5lmnl+OviFpNMJ8agGxzHI4w/HSrE84gSEcLrZpMQZc3UZHaNQHHfU3RPgn2/SWBGdF7IO6H6GGBMyCZpqFV3pcElYzDVyuMc1hq0OvIXVnwV8+qZf0tHZt6VwY0r9yY8xYWUtMEvbqHFIR/MkbWj/E4lkd4HBnegTT4oJokahPixVrQexbJ2RjdjSJh+W8fFiDD3RIHuoGcS5bFFdxbG5qGtl2kk7jTvtcjw+9sxsGwtLbVnYIh9TtyOrFdoF1LvaeruhwZaulAbCckuRzm4Tx+Kbou9/XPYlB9AwjCApTLiMc3qM15pHBEpzW3Q2PNpqXMDcgQA+GhBGW7BsB0q+IcJChFUuh6ktgpQ4Uxhi/FCplZJTC/GiNo376Fr6cikUhnoYB1msfAEEafzeucV/aB/pGBdKzTUPfivW7OPmRl6CInsIcWmAjZMpYrhkzmE/rE4YJg4xm+FM5zfENgQKsQcPoJXnwBxGMVDzNLo8yIUxjnYIXP75VCw4tfFMm7iyOP+JY46oaPIjh31RkO7pN0/u0Uv38QPlJ40rReVN7AJrZZoF0bqfgWgMu2nQLxqwrjTBoZWaQEwGgIFUpWpgGhmVaKNo10GKTCjMWq63XWDHbSsGJDKnH2GufbVOmHE9ThM720mg0yjY48UrLGiB6BXB/sWO1zxw4vnF/iCxd2KR3u4fykatLw4m8m8HwcDFkj1EzLlAIRujiCuAvjIUGy9KFEbz3BUlXIvg9KxfcWvimPdOWESpdlVas7j1GMb7CDL2QlOA2+BnDKODmPsSHZXp33ZFjQGO0OGLExp6Ya18EIfcH4/IMj8IQy/St1BMk8ikQ42a0gjzhIp+CkzIKEbBaaIwJwx6TqkxRrNdWUtnJtpLlyCN+GkMK3tReLOWe0kHLqE6jW+V8xAnohU7GOzzw4/bdO9QcELLdY7DSwqMSaxf4/J0hfHyr0N0FwigUJXHwxVQRjLsUkBE40m7SOkVIWERDiFSAWKkuFyXRlbE+3BAV5Slf18e9pzhdXyuL31GTb6kBFjVdfY/miQO4OMYTz6rdRrdqhWRTaJJAkwSaJNAkgSYJNEmgSQJNEmhQAv8Lix8k/gNx6O4AAAAASUVORK5CYII=`,sBt=e=>({conversationSettings:{openingRemark:e?.conversation_settings?.opening_remark,predefinedQuestions:e?.conversation_settings?.predefined_questions,commands:e?.conversation_settings?.commands?.map(e=>({id:e.id,name:e.name,alias:e.alias,icon:e.icon,components:e.components.map(e=>({type:e.type,name:e.name,key:e.key,placeholder:e.placeholder,default:e.default,required:e.required,fillBack:e.fill_back,fillRegx:e.fill_regx,rows:e.rows,min:e.min,max:e.max,options:e.options})),content:e.content,agentId:e.agent_id,status:e.status,supportUpload:e.support_upload})),enableChatSession:e?.conversation_settings?.enable_chat_session},promptSetting:e?.prompt_setting?{content:e.prompt_setting.content,supportUpload:e.prompt_setting.support_upload}:void 0,agentName:e?.agent_name,relatedSkills:e?.related_skills?.map(e=>({id:e.id,skill_name:e.skill_name,skill_code:e.skill_code,description:e.description,icon:e.icon})),chatGroup:e?.chat_group?{enabled:e.chat_group.enabled,staff:e.chat_group.staff,username:e.chat_group.username}:void 0,saasUrl:e?.saas_url,resources:e?.resources}),v9=function(e){return e.FlowAgent=`flow_agent`,e.KnowledgeRag=`knowledge_rag`,e.ReferenceDocument=`reference_document`,e}({}),y9=function(e){return e.Activity=`activity`,e.Assistant=`assistant`,e.Developer=`developer`,e.Guide=`guide`,e.Hidden=`hidden`,e.HiddenAssistant=`hidden-assistant`,e.HiddenGuide=`hidden-guide`,e.HiddenSystem=`hidden-system`,e.HiddenUser=`hidden-user`,e.Info=`info`,e.Pause=`pause`,e.Placeholder=`placeholder`,e.Reasoning=`reasoning`,e.System=`system`,e.TemplateAssistant=`template-assistant`,e.TemplateGuide=`template-guide`,e.TemplateHidden=`template-hidden`,e.TemplateSystem=`template-system`,e.TemplateUser=`template-user`,e.Tool=`tool`,e.User=`user`,e.Interrupt=`interrupt`,e}({}),b9=function(e){return e.Complete=`complete`,e.Error=`error`,e.Pending=`pending`,e.Stop=`stop`,e.Streaming=`streaming`,e}({}),x9=function(e){return e.Binary=`binary`,e.Function=`function`,e.Text=`text`,e}({}),S9=function(e){return e.FlowNodeRetry=`flow_node_retry`,e.FlowNodeSkip=`flow_node_skip`,e.ApprovalCancel=`approval_cancel`,e}({}),C9=e=>{let t={id:e.id,messageId:e.message_id,name:e.name,role:e.role,sessionCode:e.session_code,status:e.status};switch(e.role){case y9.Activity:{let n=e,r=e=>e.map(e=>({name:e.name,originFileUrl:e.origin_file_url,url:e.url})),i;switch(n.activity_type){case v9.ReferenceDocument:i=r(n.content);break;case v9.KnowledgeRag:{let e=n.content;i={content:e.content,referenceDocument:r(e.reference_document)};break}case v9.FlowAgent:default:i=n.content;break}return{...t,activityType:n.activity_type,content:i,role:n.role}}case y9.Assistant:{let n=e;return{...t,content:n.content,property:n.property,role:n.role,toolCalls:n.tool_calls?.map(e=>({function:{arguments:e.function.arguments,name:e.function.name,description:e.function.description,mcpName:e.function.mcp_name},id:e.id,type:e.type}))}}case y9.Developer:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Guide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Hidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Info:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Pause:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Placeholder:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Reasoning:{let n=e;return{...t,content:n.content,duration:n.duration,role:n.role}}case y9.System:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateHidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Tool:{let n=e;return{...t,content:n.content,duration:n.duration,error:n.error,role:n.role,toolCallId:n.tool_call_id}}case y9.User:{let n=e,r=n.content;return{...t,content:Array.isArray(r)?r.map(e=>{if(e.type===x9.Binary){let t=e;return{data:t.data,filename:t.filename,id:t.id,mimeType:t.mime_type,type:t.type,url:t.url}}return e}):r,property:n.property,role:n.role}}case y9.Interrupt:return{...t,...e}}},cBt=e=>{let t={id:e.id,message_id:e.messageId,name:e.name,role:e.role,session_code:e.sessionCode,status:e.status};switch(e.role){case y9.Activity:{let n=e,r=e=>e.map(e=>({name:e.name,origin_file_url:e.originFileUrl,url:e.url})),i;switch(n.activityType){case v9.ReferenceDocument:i=r(n.content);break;case v9.KnowledgeRag:{let e=n.content;i={content:e.content,reference_document:r(e.referenceDocument)};break}case v9.FlowAgent:default:i=n.content;break}return{...t,activity_type:n.activityType,content:i,role:n.role}}case y9.Assistant:{let n=e;return{...t,property:n.property,content:n.content,role:n.role,tool_calls:n.toolCalls?.map(e=>({function:{arguments:e.function.arguments,name:e.function.name,description:e.function.description,mcp_name:e.function.mcpName},id:e.id,type:e.type}))}}case y9.Developer:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Guide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Hidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Info:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Pause:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Placeholder:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Reasoning:{let n=e;return{...t,content:n.content,duration:n.duration,role:n.role}}case y9.System:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateHidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Tool:{let n=e;return{...t,content:n.content,duration:n.duration,error:n.error,role:n.role,tool_call_id:n.toolCallId}}case y9.User:{let n=e,r=n.content;return{...t,content:Array.isArray(r)?r.map(e=>{if(e.type===x9.Binary){let t=e;return{data:t.data,filename:t.filename,id:t.id,mime_type:t.mimeType,type:t.type,url:t.url}}return e}):r,property:n.property,role:n.role}}case y9.Interrupt:return{...t,...e}}},w9=e=>({sessionCode:e.session_code,sessionContentCount:e.session_content_count,sessionName:e.session_name,isTemporary:e.is_temporary,model:e.model,comment:e.comment,rate:e.rate,updatedAt:e.updated_at,createdAt:e.created_at,status:e.status,roleInfo:e.role_info?{collectionId:e.role_info.collection_id,collectionName:e.role_info.collection_name,content:e.role_info.content,variables:e.role_info.variables}:void 0,sessionProperty:{isAutoClear:e.session_property?.is_auto_clear,isAutoCalcPrompt:e.session_property?.is_auto_clac_prompt,labels:e.session_property?.labels}}),lBt=e=>({session_code:e.sessionCode,session_content_count:e.sessionContentCount,session_name:e.sessionName,is_temporary:e.isTemporary,model:e.model,comment:e.comment,rate:e.rate,updated_at:e.updatedAt,created_at:e.createdAt,status:e.status,role_info:e.roleInfo?{collection_id:e.roleInfo.collectionId,collection_name:e.roleInfo.collectionName,content:e.roleInfo.content,variables:e.roleInfo.variables}:void 0,session_property:{is_auto_clear:e.sessionProperty?.isAutoClear,is_auto_clac_prompt:e.sessionProperty?.isAutoCalcPrompt,labels:e.sessionProperty?.labels}}),uBt=e=>({session_code:e.sessionCode,session_content_ids:e.sessionContentIds,rate:e.rate,comment:e.comment,labels:e.labels}),dBt=e=>({sessionCode:e.session_code,sessionContentIds:e.session_content_ids,rate:e.rate,comment:e.comment,labels:e.lables}),fBt=()=>`temp_${Date.now()}_${Math.random().toString(36).slice(2,9)}`,pBt=e=>{let n=(0,t.ref)([]),r=(0,t.ref)(!1),i=(0,t.ref)(!1),a=t=>(r.value=!0,e.http?.message.getMessages(t).then(e=>{n.value=e}).finally(()=>{r.value=!1})),o=()=>p(n.value),s=e=>{n.value=n.value.map(t=>t.messageId===e.messageId?e:t)},l=e=>{n.value.push(e)},u=()=>n.value.findLast(e=>[b9.Pending,b9.Streaming].includes(e.status)),d=e=>n.value.find(t=>t.messageId===e),f=async t=>{let r=fBt(),i={...t,id:r,messageId:r};n.value.push(i);try{let i=await e.http?.message.plusMessage(t);if(i){let e=n.value.findIndex(e=>e.messageId===r);if(e!==-1){let r={...i,...`property`in t&&t.property?{property:t.property}:{}};n.value[e]=r}}}catch(e){let t=n.value.findIndex(e=>e.messageId===r);throw t!==-1&&(n.value[t]={...n.value[t],status:b9.Error}),e}},p=async t=>{let r=t.reduce((e,t)=>(t.role===y9.User&&e.push(t.id),e),[]);if(r.length<=0)return;let a=[...n.value];n.value=n.value.filter(e=>!t.includes(e)),i.value=!0;try{await e.http?.message.batchDeleteMessages(r)}catch(e){throw n.value=a,e}finally{i.value=!1}};return{list:n,isListLoading:r,isDeleteLoading:i,getMessages:a,clearMessages:o,getCurrentLoadingMessage:u,getMessageByMessageId:d,modifyMessage:s,plusMessage:l,createAndPlusMessage:f,deleteMessages:p,shareMessages:async(t,n,r)=>{let i=n.reduce((e,t)=>(t.role===y9.User&&e.push(t.id),e),[]);if(!(i.length<=0))return e.http?.message.shareMessages(t,i,r)},getFlowAgentTaskInfo:t=>e.http?.message.getFlowAgentTaskInfo(t),getFlowAgentTaskNodeInfo:(t,n)=>e.http?.message.getFlowAgentTaskNodeInfo(t,n),reset:()=>{n.value=[],r.value=!1,i.value=!1}}},T9=function(e){return e.FlowAgentEnd=`flow_agent_end`,e.FlowAgentResult=`flow_agent_result`,e.FlowAgentStart=`flow_agent_start`,e.FlowAgentUpdate=`flow_agent_update`,e.KnowledgeRagEnd=`knowledge_rag_end`,e.KnowledgeRagResult=`knowledge_rag_result`,e.KnowledgeRagStart=`knowledge_rag_start`,e.KnowledgeRagTextContent=`knowledge_rag_text_content`,e.ReferenceDocument=`reference_document`,e.TempMessage=`temp_message`,e.ApprovalResult=`approval_result`,e}({}),E9=function(e){return e.ActivityDelta=`ACTIVITY_DELTA`,e.ActivitySnapshot=`ACTIVITY_SNAPSHOT`,e.Custom=`CUSTOM`,e.MessagesSnapshot=`MESSAGES_SNAPSHOT`,e.Raw=`RAW`,e.RunError=`RUN_ERROR`,e.RunFinished=`RUN_FINISHED`,e.RunStarted=`RUN_STARTED`,e.StateDelta=`STATE_DELTA`,e.StateSnapshot=`STATE_SNAPSHOT`,e.StepFinished=`STEP_FINISHED`,e.StepStarted=`STEP_STARTED`,e.TextMessageChunk=`TEXT_MESSAGE_CHUNK`,e.TextMessageContent=`TEXT_MESSAGE_CONTENT`,e.TextMessageEnd=`TEXT_MESSAGE_END`,e.TextMessageStart=`TEXT_MESSAGE_START`,e.ThinkingEnd=`THINKING_END`,e.ThinkingStart=`THINKING_START`,e.ThinkingTextMessageContent=`THINKING_TEXT_MESSAGE_CONTENT`,e.ThinkingTextMessageEnd=`THINKING_TEXT_MESSAGE_END`,e.ThinkingTextMessageStart=`THINKING_TEXT_MESSAGE_START`,e.ToolCallArgs=`TOOL_CALL_ARGS`,e.ToolCallChunk=`TOOL_CALL_CHUNK`,e.ToolCallEnd=`TOOL_CALL_END`,e.ToolCallResult=`TOOL_CALL_RESULT`,e.ToolCallStart=`TOOL_CALL_START`,e}({}),mBt=function(e){return e.Blocked=`BLOCKED`,e.Created=`CREATED`,e.Failed=`FAILED`,e.Finished=`FINISHED`,e.LoopReady=`LOOP_READY`,e.Ready=`READY`,e.Revoked=`REVOKED`,e.RollBackFailed=`ROLL_BACK_FAILED`,e.RollBackSuccess=`ROLL_BACK_SUCCESS`,e.RollingBack=`ROLLING_BACK`,e.Running=`RUNNING`,e.Suspended=`SUSPENDED`,e}({}),D9=function(e){return e.Success=`success`,e.Interrupt=`interrupt`,e}({}),hBt=function(e){return e.Abandoned=`abandoned`,e.Approved=`approved`,e.Cancelled=`cancelled`,e.Draft=`draft`,e.Expired=`expired`,e.Rejected=`rejected`,e.Pending=`pending`,e}({}),O9=function(e){return e.Resolved=`resolved`,e.Cancelled=`cancelled`,e}({}),k9=class{messageModule;onDoneCallback;onErrorCallback;onMessageCallback;onStartCallback;constructor(e){this.onDoneCallback=e?.onDone,this.onErrorCallback=e?.onError,this.onMessageCallback=e?.onMessage,this.onStartCallback=e?.onStart}handleActivityDeltaEvent(e){}handleActivitySnapshotEvent(e){}handleCustomEvent(e){switch(e.name){case T9.FlowAgentStart:this.handleFlowAgentStartCustomEvent(e);break;case T9.FlowAgentResult:this.handleFlowAgentResultCustomEvent(e);break;case T9.FlowAgentEnd:this.handleFlowAgentEndCustomEvent(e);break;case T9.ReferenceDocument:this.handleReferenceDocumentCustomEvent(e);break;case T9.KnowledgeRagStart:this.handleKnowledgeRagStartCustomEvent(e);break;case T9.KnowledgeRagTextContent:this.handleKnowledgeRagTextContentCustomEvent(e);break;case T9.KnowledgeRagResult:this.handleKnowledgeRagResultCustomEvent(e);break;case T9.KnowledgeRagEnd:this.handleKnowledgeRagEndCustomEvent(e);break;case T9.TempMessage:this.handleTempMessageCustomEvent(e);break;case T9.ApprovalResult:this.handleApprovalResultCustomEvent(e);break;case T9.FlowAgentUpdate:this.handleFlowAgentUpdateCustomEvent(e);break;default:break}}handleFlowAgentEndCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();if(t&&t.role===y9.Activity&&t.activityType===v9.FlowAgent){t.status=b9.Complete;let n=e.value;this.messageModule.plusMessage({role:y9.Assistant,content:n.map(e=>e.task_outputs.join(`
|
|
3485
|
+
`)),n.onAgentAction?.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}(),g=function(){var e=c5(function*(e,t){var r;(r=n.onUserAction)==null||r.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}(),_=function(){var e=c5(function*(e,t,r){var i;(i=n.onUserInputConfirm)==null||i.call(n,e,t,r)});return function(t,n,r){return e.apply(this,arguments)}}(),v=function(){var e=c5(function*(e,t){var r;(r=n.onUserShortcutConfirm)==null||r.call(n,e,t)});return function(t,n){return e.apply(this,arguments)}}();return(r,l)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`messageContainerRef`,ref:i,class:`ai-message-container`},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(d.value,(i,a)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{id:i.uid,key:a,class:`message-group`,style:(0,t.normalizeStyle)({backgroundColor:i.checked?`#f5f7fa`:`transparent`}),onMouseenter:e=>f(i),onMouseleave:e=>p(i,e)},[(0,t.renderSlot)(r.$slots,`group`,(0,t.mergeProps)({ref_for:!0},{group:i}),()=>[e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(cs),{key:0,class:`message-group-checkbox`,"model-value":i.checked,"onUpdate:modelValue":e=>m(i,e)},null,8,[`model-value`,`onUpdate:modelValue`])):(0,t.createCommentVNode)(``,!0),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`message-group-messages`,{"message-group-enabled-selection":e.renderMode===(0,t.unref)(Q8).Share||e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading}]),style:(0,t.normalizeStyle)({width:e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading?`calc(100% - 16px)`:`100%`})},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(i.messages,(i,a)=>(0,t.renderSlot)(r.$slots,`default`,(0,t.mergeProps)({key:a,ref_for:!0},{message:i,messageToolsStatus:e.messageToolsStatus,onInterruptResume:n.onInterruptResume}),()=>[((0,t.openBlock)(),(0,t.createBlock)(_9,{key:a,message:i,"message-tools-status":e.messageToolsStatus,"on-action":e=>g(e,i),"on-input-confirm":(e,t)=>_(i,e,t),"on-interrupt-resume":n.onInterruptResume,"on-shortcut-confirm":e=>v(i,e),"tippy-options":e.messageToolsTippyOptions},(0,t.createSlots)({_:2},[r.$slots.answeredQuestion?{name:`answeredQuestion`,fn:(0,t.withCtx)(e=>[(0,t.renderSlot)(r.$slots,`answeredQuestion`,(0,t.mergeProps)({ref_for:!0},e))]),key:`0`}:void 0]),1032,[`message`,`message-tools-status`,`on-action`,`on-input-confirm`,`on-interrupt-resume`,`on-shortcut-confirm`,`tippy-options`]))])),128)),e.renderMode!==(0,t.unref)(Q8).Share&&!(e.enableSelection&&i.type!==(0,t.unref)(Y8).Loading)&&!i.pause&&i.type===(0,t.unref)(Y8).Assistant&&e.messageToolsStatus!==(0,t.unref)($7).Hidden?((0,t.openBlock)(),(0,t.createBlock)(gLt,{key:0,"message-tools":u.value,"message-tools-status":e.messageToolsStatus,"on-action":e=>h(e,i.messages),style:(0,t.normalizeStyle)({visibility:i.isHover?`visible`:`hidden`}),"tippy-options":n.messageToolsTippyOptions,onFeedback:(e,t,r)=>n.onAgentFeedback?.call(n,e,i.messages,t,r)},null,8,[`message-tools`,`message-tools-status`,`on-action`,`style`,`tippy-options`,`onFeedback`])):(0,t.createCommentVNode)(``,!0)],6)])],44,Tzt))),128)),(0,t.createElementVNode)(`div`,{ref_key:`messageContainerBottomRef`,ref:a,class:`message-container-bottom`,tabindex:`0`},null,512),(0,t.createElementVNode)(`div`,Ezt,[(0,t.withDirectives)((0,t.createVNode)(ekt,{loading:e.messageStatus===(0,t.unref)(X8).StopLoading,title:e.messageStatus===(0,t.unref)(X8).StopLoading?(0,t.unref)(G8)(`正在停止`):(0,t.unref)(G8)(`停止生成`),onClick:l[0]||=e=>r.$emit(`stopStreaming`)},{icon:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(OOt))]),_:1},8,[`loading`,`title`]),[[t.vShow,e.renderMode!==(0,t.unref)(Q8).Share&&(e.messageStatus===(0,t.unref)(X8).Streaming||e.messageStatus===(0,t.unref)(X8).StopLoading||e.messageStatus===(0,t.unref)(X8).Fetching||e.messageStatus===(0,t.unref)(X8).Pending)]]),(0,t.withDirectives)((0,t.createVNode)(ekt,{title:(0,t.unref)(G8)(`返回底部`),onClick:(0,t.unref)(o)},{icon:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(WOt))]),_:1},8,[`title`,`onClick`]),[[t.vShow,(0,t.unref)(s)]])])],512))}}),Ozt={class:`execution-summary`},kzt={class:`execution-summary-header`},Azt={class:`execution-summary-content`},jzt=[`onMouseenter`],Mzt={class:`content-item-header`},Nzt={class:`content-item-title`},Pzt={class:`content-item-messages`},Fzt={key:0,class:`timeline-line`},Izt={key:1,class:`execution-summary-content-empty`},Lzt={class:`execution-summary-content-empty-text`},Rzt=(0,t.defineComponent)({__name:`execution-summary`,props:{messageGroups:{}},emits:[`locateMessageGroup`,`updateKeyword`],setup(e,{emit:n}){let r=n,i=m5(),{keyword:a}=Qkt(),o=(0,t.shallowRef)(void 0),s=e=>{if(!e)return``;let t=new Date(e),n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}`},l=e=>{r(`locateMessageGroup`,e.uid,e)},u=()=>{a.value=``,r(`updateKeyword`,``)};return(n,d)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Ozt,[(0,t.createElementVNode)(`div`,kzt,[(0,t.createVNode)((0,t.unref)(ts),{modelValue:(0,t.unref)(a),"onUpdate:modelValue":[d[0]||=e=>(0,t.isRef)(a)?a.value=e:null,d[1]||=e=>r(`updateKeyword`,e)],class:`execution-summary-header-input`,clearable:``,placeholder:(0,t.unref)(G8)(`搜索 关键字`)},null,8,[`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,Azt,[e.messageGroups.length?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(e.messageGroups,(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n.uid,class:`execution-summary-content-item`,onMouseenter:e=>o.value=n.uid,onMouseleave:d[2]||=e=>o.value=void 0},[(0,t.createElementVNode)(`div`,Mzt,[d[3]||=(0,t.createElementVNode)(`span`,{class:`timeline-dot`},null,-1),(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Nzt,[(0,t.createTextVNode)((0,t.toDisplayString)(typeof n.userMessageTitle==`number`?s(n.userMessageTitle):n.userMessageTitle),1)])),[[(0,t.unref)(h5),$({},(0,t.unref)(i))]]),(0,t.withDirectives)((0,t.createVNode)((0,t.unref)(Wo),{class:`content-item-locate`,text:``,theme:`primary`,onClick:e=>l(n)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`在对话中定位`)),1)]),_:1},8,[`onClick`]),[[t.vShow,o.value===n.uid]])]),(0,t.createElementVNode)(`div`,Pzt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(n.messages,(e,n)=>((0,t.openBlock)(),(0,t.createBlock)(_9,{key:n,message:e},null,8,[`message`]))),128))]),r<e.messageGroups.length-1?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Fzt)):(0,t.createCommentVNode)(``,!0)],40,jzt))),128)):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Izt,[(0,t.createVNode)((0,t.unref)(Ys),{class:`empty-exception`,type:`empty`}),(0,t.createElementVNode)(`div`,Lzt,[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(a)?(0,t.unref)(G8)(`搜索结果为空`):(0,t.unref)(G8)(`暂无数据`))+` `,1),(0,t.unref)(a)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Wo),{key:0,text:``,theme:`primary`,onClick:u},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`清空搜索`)),1)]),_:1})):(0,t.createCommentVNode)(``,!0)])]))])]))}}),zzt=[`class`,`style`],Bzt={class:`ai-message-loading-row`},Vzt={class:`ai-message-loading-icon-wrap`},Hzt={key:0,class:`ai-message-loading-text ai-message-loading-text-custom`},Uzt={key:1,"aria-live":`polite`,class:`ai-message-loading-text`},Wzt=(0,t.defineComponent)($($({},{name:`MessageLoading`,inheritAttrs:!1}),{},{__name:`message-loading`,props:{duration:{default:1.8},gap:{default:8},iconSize:{default:32},stagger:{default:.135},text:{default:`加载中...`}},setup(e){let n=e,r=(0,t.useAttrs)(),i=(0,t.computed)(()=>{let{class:e,style:t}=r;return u5(r,zzt)}),a=(0,t.computed)(()=>({display:`block`,width:`${n.iconSize}px`,height:`${n.iconSize}px`})),o=(0,t.computed)(()=>[...n.text]),s=(0,t.computed)(()=>{let e=r.style,t={"--ai-message-loading-duration":`${n.duration}s`,"--ai-message-loading-stagger":`${n.stagger}s`,"--ai-message-loading-gap":`${n.gap}px`};return e&&typeof e==`object`&&!Array.isArray(e)?$($({},t),e):t});return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,(0,t.mergeProps)({class:[`ai-message-loading`,(0,t.unref)(r).class],style:s.value},i.value),[(0,t.createElementVNode)(`div`,Bzt,[(0,t.createElementVNode)(`span`,Vzt,[(0,t.renderSlot)(e.$slots,`icon`,{},()=>[(0,t.createVNode)((0,t.unref)(iOt),{class:`ai-message-loading-icon-svg`,style:(0,t.normalizeStyle)(a.value)},null,8,[`style`])])]),e.$slots.text?((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Hzt,[(0,t.renderSlot)(e.$slots,`text`)])):((0,t.openBlock)(),(0,t.createElementBlock)(`span`,Uzt,[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.value,(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`span`,{key:`${n}-${e}`,class:`ai-message-loading-char`,style:(0,t.normalizeStyle)({"--char-index":n})},(0,t.toDisplayString)(e),5))),128))]))])],16))}})),Gzt={class:`ai-selection-footer`},Kzt={class:`ai-selection-footer-left`},qzt={class:`select-all-text`},Jzt={class:`ai-selection-footer-right`},Yzt=(0,t.defineComponent)({__name:`selection-footer`,props:{isAllSelected:{type:Boolean},loading:{type:Boolean},selectedCount:{}},emits:[`cancel`,`confirm`,`toggle-all`],setup(e,{emit:n}){let r=n;return(n,i)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Gzt,[(0,t.createElementVNode)(`div`,Kzt,[(0,t.createVNode)((0,t.unref)(cs),{"model-value":e.isAllSelected,"onUpdate:modelValue":i[0]||=e=>r(`toggle-all`,e)},null,8,[`model-value`]),(0,t.createElementVNode)(`span`,qzt,(0,t.toDisplayString)((0,t.unref)(G8)(`全选`)),1)]),(0,t.createElementVNode)(`div`,Jzt,[(0,t.createVNode)((0,t.unref)(Wo),{disabled:e.loading,onClick:i[1]||=e=>r(`cancel`)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`取消`)),1)]),_:1},8,[`disabled`]),(0,t.createVNode)((0,t.unref)(Wo),{disabled:e.selectedCount===0,loading:e.loading,theme:`primary`,onClick:i[2]||=e=>r(`confirm`)},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`确定`)),1)]),_:1},8,[`disabled`,`loading`])])]))}}),Xzt=[`data-ai-size`],Zzt={key:0,class:`ai-chat-container-loading`},Qzt={class:`screen-wrapper`},$zt={key:1,class:`ai-welcome-content`},eBt={class:`ai-welcome-title`},tBt={key:0,class:`ai-welcome-remark`},nBt=(0,t.defineComponent)({__name:`chat-container`,props:(0,t.mergeModels)({chatLoading:{type:Boolean},commonTippyOptions:{},executionTabVisible:{type:Boolean,default:!0},getSideRenderComponent:{},getSideTabRenderComponent:{},onCustomTabChange:{},openingRemark:{},placement:{default:`left`},resizeProps:{},size:{default:`small`},welcomeTitle:{},defaultUploadFiles:{},inputMaxHeight:{},messageStatus:{},modelValue:{},onSendMessage:{},onStopSending:{},onUpload:{},placeholder:{},prompts:{},resources:{},sendDisabledTip:{},shortcutId:{},shortcuts:{},skills:{},supportUpload:{type:Boolean},tippyOptions:{},messages:{},messageToolsStatus:{},onAgentAction:{},onAgentFeedback:{},onInterruptResume:{},onUserAction:{},renderMode:{},onUserInputConfirm:{},onUserShortcutConfirm:{}},{renderMode:{required:!1,default:Q8.Chat},renderModeModifiers:{},selectedShortcut:{required:!1},selectedShortcutModifiers:{},cite:{required:!1,default:``},citeModifiers:{}}),emits:(0,t.mergeModels)([`selectShortcut`,`deleteShortcut`,`update:modelValue`,`stopStreaming`,`shortcutClose`,`shortcutSubmit`,`confirmShare`,`collapseChange`],[`update:renderMode`,`update:selectedShortcut`,`update:cite`]),setup(e,{expose:n,emit:r}){let i=hhe.TabPanel,a=e,o=(0,t.useModel)(e,`renderMode`),s=(0,t.useTemplateRef)(`fullScreenRef`),{isFullScreen:l,enter:u,exit:d}=Ikt(s);$kt({renderMode:o});let f=(0,t.computed)(()=>$($({collapsible:!1,immediate:!0,min:400},a.resizeProps),{},{placement:a.placement})),p=(0,t.computed)(()=>a.getSideRenderComponent?.call(a,t.h,y.value.data?.props??{})??y.value.data?.component);Rkt({size:(0,t.computed)(()=>a.size??`small`),supportUpload:(0,t.computed)(()=>a.supportUpload??!1)}),(0,t.watch)(()=>a.size??`small`,e=>{typeof document<`u`&&(document.body.dataset.aiSize=e)},{immediate:!0});let m=(0,t.useModel)(e,`selectedShortcut`),h=(0,t.useModel)(e,`cite`),g=r;tAt({tippyOptions:(0,t.computed)(()=>a.commonTippyOptions??{})});let{displayTabs:_,tabs:v,selectedTab:y,isCollapse:b,addCustomTab:x,removeCustomTab:S,selectCustomTab:C,resetCustomTab:w}=Pkt({executionTabVisible:()=>a.executionTabVisible,onTabChange:function(){var e=c5(function*(e){let t=y.value.data?.props||{loading:!0,data:{}};y.value.data=$($({},y.value.data),{},{props:t});let n=yield a.onCustomTabChange?.call(a,e);y.value.data=$($({},y.value.data),{},{props:$($({},t),{},{loading:!1,data:n})})});return function(t){return e.apply(this,arguments)}}()}),T=(0,t.shallowRef)(``),E=(0,t.ref)([]),D=(0,t.shallowRef)(400),O=(0,t.computed)(()=>`calc(100% - ${D.value}px)`),{messageGroups:k,executionGroups:A,isShareMode:j,isAllSelected:M,onToggleShareAll:N,onCancelShare:P,onConfirmShare:F,pendingApprovalTipText:I,activeUserQuestionInterrupt:L}=qkt({keyword:T,messages:(0,t.computed)(()=>a.messages),renderMode:(0,t.computed)(()=>o.value),selectedUserMessages:E});(0,t.watch)(b,e=>{e&&(T.value=``,D.value=0),g(`collapseChange`,e,D.value)}),(0,t.watch)(()=>A.value,e=>{!e.length&&!T.value&&w()},{immediate:!0,deep:!1});let R=(0,t.computed)(()=>{var e;return a.messageStatus===X8.StopLoading?X8.StopLoading:(e=k.value)!=null&&e.some(e=>e.messages.some(e=>e.id===`__loading__`))?X8.Fetching:a.messageStatus}),ee=()=>{m.value=null,g(`shortcutClose`)},z=e=>{g(`shortcutSubmit`,e)},B=()=>{g(`deleteShortcut`)},V=e=>{g(`selectShortcut`,e)},te=(e,t)=>{g(`update:modelValue`,e,t)},ne=function(){var e=c5(function*(e,t){let n=L.value;return a.onSendMessage?.call(a,e,t,n?{payload:DIt(n),interrupt:n}:void 0)});return function(t,n){return e.apply(this,arguments)}}(),re=()=>{b.value=!b.value},ie=e=>{if(!e)return;let t=document.getElementById(e);if(!t){let t=k.value.find(t=>t.messages.some(t=>t.uid===e));if(t){var n;(n=document.getElementById(t.uid))==null||n.scrollIntoView({behavior:`smooth`})}return}t.scrollIntoView({behavior:`smooth`})},ae=e=>{C(v.value.find(t=>t.name===e))},H=e=>{T.value=e},oe=function(){var e=c5(function*(e,t){if(e.id===`share`){j.value=!0;return}return a.onAgentAction?.call(a,e,t)});return function(t,n){return e.apply(this,arguments)}}(),se=()=>{g(`confirmShare`,F()),(0,t.nextTick)(()=>{j.value=!1,E.value=[]})},ce=e=>{D.value=e};return(0,t.onUnmounted)(()=>{w(),typeof document<`u`&&delete document.body.dataset.aiSize}),n({selectedTab:y,addCustomTab:x,removeCustomTab:S,selectCustomTab:C,enterShareMode:()=>{j.value=!0},exitShareMode:()=>{P()}}),(n,r)=>{var a;return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:`ai-chat-container`,"data-ai-size":e.size,style:(0,t.normalizeStyle)({"--resize-main-width":O.value,borderTopColor:(0,t.unref)(b)?`transparent`:`#eaebf0`})},[e.chatLoading?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,Zzt,[(0,t.createVNode)(Wzt)])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(the),(0,t.mergeProps)({key:1,class:[`ai-chat-container-resize-layout`,{"ai-is-collapse":(0,t.unref)(b)||(0,t.unref)(_).length>0&&!((a=T.value)!=null&&a.length)&&(0,t.unref)(A)?.length<1}]},f.value,{onResizing:ce}),{aside:(0,t.withCtx)(()=>{var n,a,o,f;return[!(0,t.unref)(b)&&(0,t.unref)(_).length>0&&((n=(0,t.unref)(A))!=null&&n.length||(a=T.value)!=null&&a.length)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,ref_key:`fullScreenRef`,ref:s,class:`ai-full-screen-wrapper`},[(0,t.createVNode)((0,t.unref)(hhe),{active:(0,t.unref)(y).name,class:`ai-chat-container-tab`,"label-height":40,type:`unborder-card`,onChange:ae},{setting:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,Qzt,[(0,t.createVNode)(g5,{class:`screen-btn`,"tippy-options":$($({},e.commonTippyOptions),{},{appendTo:(0,t.unref)(l)?s.value:e.commonTippyOptions?.appendTo,content:(0,t.unref)(l)?(0,t.unref)(G8)(`退出全屏`):(0,t.unref)(G8)(`全屏`)})},{default:(0,t.withCtx)(()=>[(0,t.unref)(l)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(KOt),{key:1,onClick:(0,t.unref)(d)},null,8,[`onClick`])):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(GOt),{key:0,onClick:(0,t.unref)(u)},null,8,[`onClick`]))]),_:1},8,[`tippy-options`])])]),default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)((0,t.unref)(_),n=>((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(i),{key:n.name,class:`ai-chat-container-tab-panel`,label:()=>(0,t.h)(`div`,{class:`ai-execution-summary-label`,onVnodeMounted:e=>{if((0,t.unref)(y).name===n.name){var r;(r=e.el)==null||r.scrollIntoView({behavior:`smooth`})}}},e.getSideTabRenderComponent?.call(e,t.h,n,{removeCustomTab:(0,t.unref)(S)})??[(0,t.h)(n.name===(0,t.unref)(`execution`)?(0,t.unref)(hOt):(0,t.unref)(gOt),{class:`ai-execution-summary-icon`}),(0,t.withDirectives)((0,t.h)(`span`,{class:`ai-execution-summary-label-text`},n.label??``),[[(0,t.unref)(h5),$($({},e.commonTippyOptions),{},{text:n.label??``})]]),n.closable!==!1&&n.name!==(0,t.unref)(`execution`)?(0,t.h)((0,t.unref)(o5),{class:`ai-execution-close-icon`,onClick:()=>{(0,t.unref)(S)(n.name)}}):null]),name:n.name},null,8,[`label`,`name`]))),128))]),_:1},8,[`active`]),(0,t.unref)(y)?.name===(0,t.unref)(`execution`)&&e.executionTabVisible!==!1?((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.unref)(b)?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createBlock)(Rzt,{key:0,"message-groups":(0,t.unref)(A),style:{height:`calc(100% - 40px)`},onLocateMessageGroup:ie,onUpdateKeyword:H},null,8,[`message-groups`]))],64)):(0,t.createCommentVNode)(``,!0),(0,t.unref)(y)?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:(0,t.unref)(y).name,class:`ai-chat-container-message-slot`},[((0,t.openBlock)(),(0,t.createBlock)((0,t.resolveDynamicComponent)(p.value),(0,t.mergeProps)({key:(0,t.unref)(y).name},(o=(0,t.unref)(y))==null||(o=o.data)==null?void 0:o.props),{locateButton:(0,t.withCtx)(()=>[(0,t.createVNode)((0,t.unref)(Wo),{class:`ai-locate-button`,size:`small`,text:``,theme:`primary`,onClick:r[0]||=e=>{var n;return ie((n=(0,t.unref)(y))==null||(n=n.data)==null?void 0:n.messageUid)}},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)((0,t.unref)(G8)(`在对话中定位`)),1)]),_:1})]),_:1},16))])):(0,t.createCommentVNode)(``,!0)],512)):(0,t.createCommentVNode)(``,!0),(0,t.unref)(_).length>0&&(f=(0,t.unref)(A))!=null&&f.length?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`collapse-button`,{"is-right":e.placement===`right`,"is-collapsed":(0,t.unref)(b)}]),onClick:re},[(0,t.createVNode)((0,t.unref)(a5))],2)):(0,t.createCommentVNode)(``,!0)]}),main:(0,t.withCtx)(()=>{var i,a,s;return[(i=e.messages)!=null&&i.length?(0,t.renderSlot)(n.$slots,`default`,(0,t.normalizeProps)((0,t.mergeProps)({key:0},{messages:e.messages,messageStatus:e.messageStatus,messageGroups:(0,t.unref)(k),selectedUserMessages:E.value,messageToolsStatus:e.messageToolsStatus,isShareMode:(0,t.unref)(j),commonTippyOptions:e.commonTippyOptions,handleAgentAction:oe,onAgentFeedback:e.onAgentFeedback,onInterruptResume:e.onInterruptResume,onUserAction:e.onUserAction,onUserInputConfirm:e.onUserInputConfirm,onUserShortcutConfirm:e.onUserShortcutConfirm})),()=>{var i;return[(i=e.messages)!=null&&i.length?((0,t.openBlock)(),(0,t.createBlock)(Dzt,{key:0,"selected-user-messages":E.value,"onUpdate:selectedUserMessages":r[1]||=e=>E.value=e,"enable-selection":(0,t.unref)(j),"message-groups":(0,t.unref)(k),"message-status":R.value,"message-tools-status":e.messageToolsStatus,"message-tools-tippy-options":e.commonTippyOptions,messages:e.messages,"on-agent-action":oe,"on-agent-feedback":e.onAgentFeedback,"on-interrupt-resume":e.onInterruptResume,"on-user-action":e.onUserAction,"on-user-input-confirm":e.onUserInputConfirm,"on-user-shortcut-confirm":e.onUserShortcutConfirm,"render-mode":o.value,onStopStreaming:r[2]||=e=>g(`stopStreaming`)},{group:(0,t.withCtx)(({group:e})=>[(0,t.renderSlot)(n.$slots,`group`,(0,t.normalizeProps)((0,t.guardReactiveProps)({group:e})))]),default:(0,t.withCtx)(({message:e,messageToolsStatus:r,onInterruptResume:i})=>[(0,t.renderSlot)(n.$slots,`message`,(0,t.normalizeProps)((0,t.guardReactiveProps)({message:e,messageToolsStatus:r,onInterruptResume:i})))]),_:3},8,[`selected-user-messages`,`enable-selection`,`message-groups`,`message-status`,`message-tools-status`,`message-tools-tippy-options`,`messages`,`on-agent-feedback`,`on-interrupt-resume`,`on-user-action`,`on-user-input-confirm`,`on-user-shortcut-confirm`,`render-mode`])):(0,t.createCommentVNode)(``,!0)]}):((0,t.openBlock)(),(0,t.createElementBlock)(`div`,$zt,[(0,t.renderSlot)(n.$slots,`welcome`,(0,t.normalizeProps)((0,t.guardReactiveProps)({openingRemark:e.openingRemark,welcomeTitle:e.welcomeTitle})),()=>[(0,t.createVNode)((0,t.unref)(aOt)),(0,t.createElementVNode)(`h2`,eBt,(0,t.toDisplayString)(e.welcomeTitle??(0,t.unref)(G8)(`你好,我是小鲸`)),1),e.openingRemark?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,tBt,[(0,t.createVNode)(T7,{content:e.openingRemark},null,8,[`content`])])):(0,t.createCommentVNode)(``,!0)])])),o.value===(0,t.unref)(Q8).Share?(0,t.createCommentVNode)(``,!0):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:2},[(0,t.unref)(j)?((0,t.openBlock)(),(0,t.createBlock)(Yzt,{key:0,"is-all-selected":(0,t.unref)(M),loading:!1,"selected-count":E.value.length,onCancel:(0,t.unref)(P),onConfirm:se,onToggleAll:(0,t.unref)(N)},null,8,[`is-all-selected`,`selected-count`,`onCancel`,`onToggleAll`])):!((a=m.value)==null||(a=a.components)==null)&&a.length?((0,t.openBlock)(),(0,t.createBlock)(Tkt,(0,t.mergeProps)({key:1},m.value,{class:{"is-welcome-overlay":!((s=e.messages)!=null&&s.length)},onClose:ee,onSubmit:z}),null,16,[`class`])):((0,t.openBlock)(),(0,t.createBlock)(xIt,{key:2,cite:h.value,"onUpdate:cite":r[3]||=e=>h.value=e,"message-status":R.value,"model-value":e.modelValue,"on-send-message":ne,"on-stop-sending":e.onStopSending,"on-upload":e.onUpload,placeholder:e.placeholder,prompts:e.prompts,resources:e.resources,"send-disabled-tip":(0,t.unref)(I),"shortcut-id":m.value?.id,shortcuts:e.shortcuts,skills:e.skills,"support-upload":e.supportUpload,"tippy-options":e.commonTippyOptions,onDeleteShortcut:B,onSelectShortcut:V,"onUpdate:modelValue":te},{interrupt:(0,t.withCtx)(()=>[(0,t.unref)(L)?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(eLt),{key:0,interrupt:(0,t.unref)(L),"on-resume":e.onInterruptResume},{question:(0,t.withCtx)(({question:e,qIndex:r,answer:i,setAnswer:a,confirm:o})=>[(0,t.renderSlot)(n.$slots,`interruptQuestion`,(0,t.normalizeProps)((0,t.guardReactiveProps)({question:e,qIndex:r,answer:i,setAnswer:a,confirm:o})))]),_:3},8,[`interrupt`,`on-resume`])):(0,t.createCommentVNode)(``,!0),(0,t.unref)(I)?((0,t.openBlock)(),(0,t.createBlock)(wIt,{key:1,content:(0,t.unref)(I)},null,8,[`content`])):(0,t.createCommentVNode)(``,!0)]),_:3},8,[`cite`,`message-status`,`model-value`,`on-stop-sending`,`on-upload`,`placeholder`,`prompts`,`resources`,`send-disabled-tip`,`shortcut-id`,`shortcuts`,`skills`,`support-upload`,`tippy-options`]))],64))]}),_:3},16,[`class`]))],12,Xzt)}}}),rBt={class:`ai-image-preview-group`};$($({},{name:`ImagePreviewGroup`}),{},{__name:`image-preview-group`,props:{maskClosable:{type:Boolean,default:!0},onDownload:{type:Function,default:void 0},showInfo:{type:Boolean,default:!1}},setup(e){let n=new Map,r=(0,t.shallowRef)(!1),i=(0,t.shallowRef)([]),a=(0,t.shallowRef)(0);return(0,t.provide)(mFt,{register:(e,t)=>{n.set(e,t)},unregister:e=>{n.delete(e)},preview:e=>{let t=[...n.keys()],o=t.map(e=>n.get(e)()),s=t.indexOf(e);i.value=o,a.value=s>=0?s:0,r.value=!0}}),(n,o)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,rBt,[(0,t.renderSlot)(n.$slots,`default`),r.value?((0,t.openBlock)(),(0,t.createBlock)(e9,{key:0,current:a.value,"onUpdate:current":o[0]||=e=>a.value=e,visible:r.value,"onUpdate:visible":o[1]||=e=>r.value=e,images:i.value,"mask-closable":e.maskClosable,"on-download":e.onDownload,"show-info":e.showInfo},(0,t.createSlots)({_:2},[n.$slots.extra?{name:`extra`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(n.$slots,`extra`)]),key:`0`}:void 0]),1032,[`current`,`visible`,`images`,`mask-closable`,`on-download`,`show-info`])):(0,t.createCommentVNode)(``,!0)]))}});var iBt=[`alt`,`src`],aBt={key:1,class:`ai-image-error`};$($({},{name:`AiImage`}),{},{__name:`image`,props:{alt:{default:``},height:{default:void 0},lazy:{type:Boolean,default:!1},onDownload:{},preview:{type:Boolean,default:!0},previewProps:{default:void 0},showInfo:{type:Boolean,default:!1},src:{},width:{default:void 0}},emits:[`load`,`error`,`preview`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=Symbol(),s=(0,t.inject)(mFt,null),l=(0,t.ref)(),u=(0,t.shallowRef)(`loading`),d=(0,t.shallowRef)(!1),f=(0,t.shallowRef)(!i.lazy),p=null,m=(0,t.computed)(()=>i.previewProps?.src||i.src),h=()=>{let e=i.previewProps;return{url:m.value,name:e?.name,width:e?.width,height:e?.height,resolution:e?.resolution,downloadUrl:e?.downloadUrl}},g=(0,t.shallowRef)(0),_=(0,t.computed)(()=>{if(!i.lazy||f.value){let e=i.src;return g.value===0?e:`${e}${e.includes(`?`)?`&`:`?`}_t=${g.value}`}return``}),v=(0,t.computed)(()=>[h()]),y=(0,t.computed)(()=>{let e={};return i.width&&(e.width=typeof i.width==`number`?`${i.width}px`:i.width),i.height&&(e.height=typeof i.height==`number`?`${i.height}px`:i.height),e}),b={width:`100%`,height:`100%`,objectFit:`cover`},x=e=>{u.value=`loaded`,a(`load`,e)},S=e=>{u.value=`error`,a(`error`,e)},C=()=>{u.value=`loading`,g.value=Date.now()},w=()=>{!i.preview||u.value!==`loaded`||(s?s.preview(o):d.value=!0,a(`preview`))},T=()=>{!i.lazy||!l.value||(p=new IntersectionObserver(e=>{var t;(t=e[0])!=null&&t.isIntersecting&&(f.value=!0,p?.disconnect(),p=null)},{rootMargin:`200px`}),p.observe(l.value))},E=()=>{p?.disconnect(),p=null};return(0,t.onMounted)(()=>{T(),s?.register(o,h)}),(0,t.onBeforeUnmount)(()=>{E(),s?.unregister(o)}),n({previewVisible:d}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`containerRef`,ref:l,class:(0,t.normalizeClass)([`ai-image`,{"ai-image--error":u.value===`error`,"ai-image--preview":e.preview&&u.value===`loaded`}]),style:(0,t.normalizeStyle)(y.value),onClick:w},[u.value!==`error`&&_.value?((0,t.openBlock)(),(0,t.createElementBlock)(`img`,{key:0,alt:e.alt,class:`ai-image-inner`,src:_.value,style:b,onError:S,onLoad:x},null,40,iBt)):(0,t.createCommentVNode)(``,!0),u.value===`error`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,aBt,[(0,t.createVNode)((0,t.unref)(lOt),{class:`ai-image-error-icon`})])):(0,t.createCommentVNode)(``,!0),u.value===`error`?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:`ai-image-error-overlay`,onClick:C},[(0,t.createVNode)((0,t.unref)(TOt),{class:`ai-image-reload-icon`}),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(G8)(`重新加载`)),1)])):(0,t.createCommentVNode)(``,!0),(0,t.renderSlot)(n.$slots,`default`),!(0,t.unref)(s)&&e.preview&&d.value?((0,t.openBlock)(),(0,t.createBlock)(e9,{key:3,visible:d.value,"onUpdate:visible":r[0]||=e=>d.value=e,images:v.value,"on-download":e.onDownload,"show-info":e.showInfo},(0,t.createSlots)({_:2},[n.$slots.extra?{name:`extra`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(n.$slots,`extra`)]),key:`0`}:void 0]),1032,[`visible`,`images`,`on-download`,`show-info`])):(0,t.createCommentVNode)(``,!0)],6))}});var oBt=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAAGVn0euAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAYKADAAQAAAABAAAAYAAAAACpM19OAAAj4UlEQVR4Ae1dB4AURbqu7pnZyOICShIVBI5TDPgwR0yn5yknKigIy+5KMCJ4ohgQMGdP8BQDsAsqHsZTnnqcPlEU1DNwnnqKYATxRDIsuxO63/f91dXTMzuzzBLEd28Leqq66q+//lR/he7qVWpbh35lsYVBnHbwJpjuPqB2Be/3s9X+jH9TFnMZZwxdBkVXdhkc+02w8E8VifoVOg+Kurze/tRxuw2OuodU1tUHMlgI2GdczH1/kSPXR1847ieLE+6AC2uk0v7DoxKn8DDkt7aaMOFOtWaNq8YjXr/WVS3DupEehXHBLRWInXc/rXbV22/NU+vWOurNN+epmnWoENEV9g9WWDIjzyoOuWo9AG694xlVi/ihe55SsfUJtOAI5h5FCYnD8oufj6ryrVcLNrknHmyrkO2qSEgpx3ZUK7SAf5Y11rIIKz+mEuM/jNzgtgDdpd4l6ZCjGO99Vat68MG6v5R09/61NfVoGe/6+vITBqg2HLoJevnK3DO+61v3CXPvi7VbpVsSj8XW7b2HUsNPDamrQ3VuKXRzVlF+wYhJVj9TwRcTtT1rbBgyVyqM3BBS190VVS0i7psfRMNHLnwwT2CFpD3LYmM6trXU8lWuWvzlCrV6jaO+/GqFumpoRLUMOUfu72mZrdgdyzd1tFz3liP3sdRaGNuI84eoDYiHDhuqatdrTRvDYwWfpIMr6tzKk21VBLoLYRqFaJvxFwuiqhtaOHZsiyRJrEmbef31mIoCa3yDqxIbHOXiYr4BTmmBNxeN2PgWbOjwUtoOACklY1c9r2npU0PYX07YYrL69nXzrKJ4ncfKglnVkcOZ3nNgbNyXj0YmGBZzauCSo39yPUBHWRZ0Y/We9HrLFwwSNlZYGFuUb1l7FECxBTCqAmWPu6E6dH2DDRjfYxCZ2EatAstV/6zOt24uc1vZduKnMVW0V6VeqUwsOWFqqLOBzdiAQdyji6VuroSRaz+miJiB5j1kQlQaKYArem5yoY+n7Xnx73+YEm4vgPjxC0yGQT71ct2PCEDENthmHMIF4pF2JT3pATQEof1pYrF10sW1IsqX7ytgNQnSmzsPqluOakXIac7cy84KqR/Q74jswvLTBbBqxrPSaQcO7CP3Tz/+jJTT65ILhgPQY8jty/pWfv2WDOWkkl3s4tNtQUjJRnAxTl5oHBxFIKu3X9EcjLqtuTXzOnRqwPWfsBN+dfD9EccGZh1SWesU2Mp65sWEOvUoW5DHIY48tJxQDly/gtMHIGKKjRyw3zNg7FgOBtrpO/3rtxTMZLo/xkBygsZExrSaQogieM+05LHMdh4+7roWwy0LN03hP0cCvXq5vhVm4yqrFWWrYPL7DY5ehM55H+9tK97piarCr01Zo+J9zqkd0X1A9C5W6n5u3d6YXc4zCG4sjz9k0oyPw0zzlLL45GDeZjkYAVcNF60mvt7KMm574hs7p9TrPzB2IvrDnHxgLgBsAfxFfjjcavwUa1UKYLBlk24/zC0q3BR7Bfc90XFnLnk0r9yUpcf3VsTdfHSz86voVHTwEybDxJg7TwFspbkPxnnorEUF8fbvP1S8/Nby+DfwIhddMS08+6+D3OKTZlgbg7AZGzCOzwCOHRhSR3S31FPzHDXjpYTnMuBGLGvBq4/ky1BpYNPjeg0Ekb94M8YEz7NwRktgXptqXXXZ7THto2znlKceKH6JiNtVxh+37dAVyx6xlvKewfOD+ib4y4nbhk1KbajVVw1iIubFSvdeERG3XmRbL5p6rSNO/11Cse/MPeOUBgz1V/UPqfVEjmvjJlfVeohr0Yi5YlGFaZr2tCNH1owksnYRR7XFhCoYUhowBe1aErmrNgLx0PIKHymRDyqrUDGsQ+pQdkllnioSl+7cw7ptMDa0Cev1hMHlDZnRtSaDMSmnzC/2hktyEAYpZd5wGfXuuUThYMOxgkFTn5kDjsUyHhOwBgjqsFBrvlML3kq6DhyVlur7GKZbnHIlAFPozWYJR+rTRSQccLg08o+AmjqIIgHKrr1hiozDMn8DR3fcPAVjsQPEmH9x8Mb/QsCbQb9dXir1bNTXARvJt1VdEXJehL1TDJpSxi4oxhQaiB0o14nhQtrFxSGTdRgy6cBvgACfVucVcBzeuC6h4kBEpDE0RFHIhTzGDi4XaRfK1uN2UgdtvcUj8THU8+eg6B5Mm0bNmx9X+3a2VBtYVAKiCIEUh8pELMtJxOtWOUJ9Pohi2HtM/Tk+qtYPfS+oeRrWcQYtJN/SEyuxFpokZY58mU3gPh/3wkXY6tfr2tIn07FlbMAAjbx0o0vqfORAXIAlcSEUzOmiXGwAejBw+cr9qNtVrWQnwuBpipsksF0l0Lfcbbs1DcCud1zoNzjmWm58OeKjs1HR4TwXniR72GEMXFQRf5Bzt50xrLVS6m+j+rqF6WTuPyh6futobGV6fvC+QT8UBGwofeqp2OiDM+UQi/D3F2Y3P/i001bt7jrhb3SexXHpsednlwxMx1N9Xnzw4Cnh6mB+X0g9EY+v5KYkXJysESPKemBKdfjCIBzT24SBINJ7enw/G7uO7wPxWEw2mg1/v339LbpghbT05Zh5WnZ8acSySkk8xyq5gBAMnfeHqvDUYJWtYqDzoNizGNn0JkAQa+Z03Lat47+ojryRqfiWytgJV02NcP7uh8cqEj9hht7KKrBL+t1vbfALAolGM4B5DXeZKZycAzc7/P0H2JpOu5fPn1ogS6Zby9zdlZV4dUx1uGs60oWVsWN7TI28lp5v7nNmwEzITEUT331BSO3bKTMazskYGI15IK6+/I7EY/MEGWQihHSerapfmFxYTrgtCV4T2at2Hlh3O3rn6CDEeb+11WmHYYtFz4L8Iq8Tc74kRBsGCMCGvEmmuvTmqDDiawWMzLy/KIWWzkOjj6Pr9zfIFz9MtuuHjJkGrPPA2DPYNdMbW17mo1fVmwL6jHBzjQh5CfFkBDf01YxNGVF9vthRz74Y88yJGsETi0nFBJFw5IWYlQbCm/fn+2WBbMEZvPfTXc51m7t2LGU1MnmkNn0j+SBRJi3EAksmwrUGkkz+6zM8l3krrvfkQB40Er3zj8VcxKszR2yCM9M0u2jw6YnJ7UyfSCTqi9MrBfH/HQQ893hbllMmj6gfuf8u9e78eSZLTX/8WV/6LL9v0t1qfqD8mT/rcs2cq7p2stR7C3Sf4MYiGMgzyNpiESmjBzJkkDEFabHPALZLX4bcTkor9293b20JA5QwJckrSDwBudoykmd5kHiWc6Fk6pJBEs2FqXRozQDBJMjaxdMAirIG0iNhyYz8k5FY592mRELMx45eX8I0uZDldd3ND/twRcUlKooyvZrTK7k7bnvILy9GeRyLLC7E9AoPMRZeXFVwycKLzJjQFktIMiFXnn6KZ8qCMQVRL3QeGK2C/gYn/beW0nm/C6FD6s0JI0nCUAoSI22hnD2FwmMscF5MibNBA8t6781N9Ujn39KcIOr5CWuwoyxJ1HJV73Gl+oaFgeCbUCBPebtY5T3Koz3gqz8Udwcks16Oq95HhVR+hESAGAhMVpxAzR0JwtETcS9bd3fYL5vlJSFpQpQ1pqIiecGPNGMTKPlgJzb56XFGBgzQwqq8hScMc0vjTt0aujkCv4blMhs67pAQYpCBtDFVGaKNUbIMgWWOEKalT3gyJaWIuSDlkw/BL/lwPhBN+7C7m2O73wkSV62SOMMPquQWThu+aQEIP1QaA5HB0bRjB1vtglk7GRNzwg81YMxL5+vnJ9Qc82vwLHz9DwlNOOxMM6HUqeN3shvzQCBnBgybZRfXnI3GniBRhgkjPeb5aVTg85aUPJZT2syX2AIOzZDGpfsP02SU9SO2NXa/MS1uNO2nxwDdujBm1IZRIGgCCCrRxCYZEyKEqQBjICwMIzGM+oQDjszQTIVB1vOYJUynK/5vPOHfOmk21W6SQJMEmiTQKAmcUxE7vFEVMgBjqNhxwXGsR/HmiJk2bREhO4yBfoPjWO+6nfCOzepslHcZXNc9W5nJb3AyZ4C2ZXxmeW3XsGP/DXPWPTy8JdwjxQyvfNb00HRM//QsEIWuY41ANLyh9n92DTxdVfCFsynyK+yHck9U7azjG2dND1cHiSfRWBkMO3BwvDfT2QJmGVsZ8CZf90XRhUDUPJyX12NhlbXGYNzn3Lo/YzpzMt7JOfNfjxek7LoR5iY8IQfR114zLXSTqWPiY8pif4kotze2GNVL1ZwNZQ5ZCzKD18897dT1eOHGxYt+GlVBYbPwk09aCWz4rkNeCWugXM2erVdaQQzTKhPjK6aGxgfzmO4D4tGze8vkEPfs5TU14SLgxVPa1LDVfaDTOkhZWZdqtBDouuinI3utPslZFxPi9dIls5zauPafDDnnVLi7hZ34KBA0SmarQCU7FRCMzFiLEzXXDI4vjoTcC8ZNDb/KRQ/rZsZssDYynrjf0g4JO4QNRHc+OtfckQvbX9NIFOryisTFIdedJNNqVGZMDWAV+83GjqEu48dbXPj5YZswgLdFT8ALoIOA9Rhc7XCth2i+sFzr+ZrC8L3fP2Q1aov9wWFupCaaiAoToBD94O4hU0N/8KkOJLaYgT3PrdsXT9Q/BK6cBiLsVsxePCP/tEDbfvLWisTwMdNCD/oZSMysdNu7bmJZWFnf9JsW6hgsC6YbzUC3cza2j0ci3wJJToSbxrgCo0fBKmvmwur8ASb/lor42SjCK8bWJ0Uldk+8PVxnyuZUJlbN393eGWaTdWOoUQxgs/dy9J07TAO5xGzALB8DS05nwdR8XwC3Do6vyLdCXUcFXDBxf1jpnnvAVOuxhtqhmeUU8HzgA3iUAzIBQ7Cq8mRb7benpbp1sNRK7O99vhQbsm846gt5JpDcdeA6OWxb9rFDat2CRKz1S9NKVuDl+EPTiWc7zVw1J1N7wbycNADiq1GpLFiR6b12xztjF/uC9IsNUjLG9Cdf4TjBw9yFTmpDXCNc1YsPJt9p9RE0ImHaylqly6C6vtiSmpUOwPeiigtSc0lwMPDWXMy/c3pcLfrK8bdaZNsF+15PT+b2VmrYdYjbIeHE30Xnn7t8ap7fZ1KhchgHMj1aehabKMFgCOdzAyEYP4wZGHN/1NzPfTehnn81AW2wU3OLhVpRMx+7vyiFyC5Dk4dWMK7MXPJwZiagxOyhc1m03vzliWvDKoahhBcf9/GqwztEvOJIx7FJKjHTuGKY7sRAC6840kf9l6326ojRFS2b/R+kMbVODcXYqW7mXSWh+uUGukEGIKTjDSDjS88ICYGG8CiI5kVmgsRGQSwvEpzwyshYzGNy8BlhjKz6wYY2I1edP2LjC8G2SvA6WDPvKoamsoWsDOw5MOrNb5JV6WUo6SDhRhuUtJF8AsTyMmWSj3qOl58A7KAzI2I+NCPp0Mo9NdkSPJBIn7FSZCZbyMoA7Fqe4ZqKfMRkJBsFAeYyJqI1kNQG7yl9wwzjOI5WkXjmt9tF74vqPgAm0FHG42VV014zdOtivF7Fi8xkC1kZQIUUz3DIr/EEDg3L5Wnh3z/+pC4cUqEm3nOXL32jBcY//rhCVVRUqNvvvMsnPMjYrnhsRemTeGoi2myjr/ViDL6mD/D8VbaQ6k6yQSGfhAcDOb/sgiGStQAnwFwM9hdefJlsr/N5AMuHDx8q5TwhBpNXl43Q5XywwfK9u4XU2yvxqBVpMSPL5errFlZCx0WV7IQThsHXANzl2sBV71lZ0O6NlDUK/fv2/HkBG9fmEyx/E8fdHJiQXBAGTaoFnhppDfgDXFdTJ+iF2A+yhaAGmmcDYj41QH9PXIgQ15cOvQysQS68mMlqKYG2z1zC8FlaMSyefUBLX7bcuUyWQA+URJF1LifaM3Ugk1S7NwWM6VH4ZIVvX7JzpJO3E96UpXQlH1ymC41vzrpogeXGxEhWYDATZpAlgX1AXoA1GVlivx0nkeicBQYEw3OgcRmMIGXTEflo1YTLx9wm3oVEJgiDi49WTZhwNcuJB0x6poQXdaUD66m2ZsbAsw/440ADXsg3oa8eL/wGfYBe4F6DhLE31Kt16zGw4KUwStB0wutvmQ5z0B0SypE+QPuiVGgmf7yjSqflnoSna4BPZMx0Qo8HAJUgJiTGytt0fWsY/voa4A1eQZ4ITXREEgZjiNcNzP0Ap/jEh2s/rn28SWviKGGHFyWM2KXNk2iROmLmMR0oMwOZ54XYrAR23FzGAV8DpiI1gXSk8yC3dcSK/ttoYMVKEgWx4r8RjKyTeM8MXxOQFns77qUESa01aEhyMLcFcUamMpUAjG4HCS+Q+FxCigaCFZbMsH7kAKMRc6TEcbG3cCyLNg4J+hfmPEFps1xLmbE2K1OuIH1yQc0wzbGDEgyakaFB+oA3mdvSkRjvfFtHknCeKGMjUbzM8ekizQQJdUCIeB4QYswmJZ8Eg1kRvUPz0UzxsT6ZcPDuBPHLSAz82DrxQ8o4EFLL/YK0RFYNEO69KZG3MGtcTuKlIZjFMuzDffElvDyIE+KFEWohQBzyDJHa/j27J0PeRfNb96P3oBt4iZ/eyAR04lWcD/FqbrkHm/z0OGl06SWB+5OG1bqyMEeemcMX422SnvuG5IE0Hq2Lq+U4gfbkbX1KhmlzRDI9TdjvPo5JvaCp/n5C5pc6gCpjqNeJM0E1L84vim6qrdG2qideCdj+hwsTqrTEUp12gyuFG4Gc9XsQtHMiApHsz3InHdvcK7X0c/26Gbda9OqMDCc1wFq5BEGfC+BpmOoWh2s3pmgCDZpOzljMAMgEBvfBMuYJsYgFVspNfU08NRGynKtsJ/TUseN3WpwLXTkzYJBVXFzzAwho4zPiESSmRYbEcyFOY8T4ec1UJubABIWQyvjKvGiL9t3HW1HTfnrcaAaI4PxLag6O2O47WqqGGB2LObBDGu0gTaJ8M6EmPK+WnRlqgtqh1rDeDsWa7T+6bcpBOMMI+1qjw+RJRe9OuhevSFqJVnB9L4uXEsl53gTEa/eoGfGZAoxI2GPOeB4hVBjVBBvC89A/yORObvj1RhPZVKFJAk0SaJJAkwSaJNAkgSYJbE8JDBjgtsBEH1OVHRe2aCa348jdti3Hw/ELzh6cSHmutW1b2Dy2/7cKwBtid2O5exMWwI+eXR6VDz9sXlypELtvgx60Q7tfKjvb/45L+qLa+Fg4Hb70EtyBYuNxfMJo9J+r8v6YKyU4pVOG9eKixY/lvZ1rnXS4/3gFlJe7pQkr1s1NWMfjWMtQbPt0pBB4ModH6+qllfWVYzkTsXP7Wl048vWTD1kpxwClAn743ZySTbGlWNgv/df0vP1MfmPj/3gFZBLImIr4EMj+ITAPA5aA50DuKbdNi/w1E3x63uHYsnes2KchZeE8CR9VWZ9YdvjAuVUWto0bF34RCjjijI34YKZ1vU+6Z5mw2K9DcXX0G38p+s4vQ+LIPhtOVrb9HEw4X/I9a0aER3fW0fOeKXorCJ8pfTfO64fjic8xDnx5SVXoUPP2YybYZJ5rnVSWeATbPZXUHAdQ9ADFJ1+M8X/ck9WRJB/JillTvwgFDDpxzWoQUso9YWFDYtJM8pDnWsNmvFL6MHPKTljzBB7Nne2XMdPAMbbcp2fMaXGWZG/m5+nz3CPwBctvT59mpSg4WI2fQmvdMVZmu9YECBwH5TzBoy2mpQdA83hZU+5DklaLbVuNundaCAeBTScLYk2mfxEKGNbTjbQJ//siHDA9GRw1c1zXsW27peM4e6NngDcw59oHgZcT8EDlFrBLvqLIXohixC5PLa62HPfh8e+2nZ1kr/Epjhm2XdcmlAgfCJxHwbrPgXXvJMIOCFnf621oipjb0RRmUkHsFdZ3IP55fNNoTsgNLY5H1LIxaWPKL0IBDYnpNVjgNz8umw93g89jqUPB7MTyz3Yb3VCd7VE2Hm/fWk6iCgI+0RcyNGRTKZCi5IFAGMQsFbWHjnjMqveSSSa6dqgCOuJzPKFErB+8TD+YDx/epU8NM9GcKY8PPd4B/8/godfjfCycCWhzeTeWubsWbVKrLsvwar+pOwvnfFY3S7yKT4IeQ6F7gzAVUD1oWqjcwOUa/6wK2LOs9leWa08AcfDh0mNzpbNRcLRIPghF9CYeb4/9uCoyd3MIbocx4LtwH+DVgRXhhH346LSvIabXf7YicQXw30afj0d5fU6ZEn4uHSaXe+DYvqHLwFgvDJo416Fab8+WIAdxA/6giG5FvwxLxSVuYi3Gjf7vTS14KUjHbXAtGGt6w1ffAFCeQmL4Cou1a2wr9PqVU63vdVb93zfPS8zAGLHo8KmhG+qX5pazXRTAz4knYvFpmNWcmRsZWw5FgcurAeCEzKR8JyKlTCuEMDiUU11YmDf8pcDhBFJw6+DERbbtfsNvgvJ+c+GzSvdAwHz+66nW+s3BZivfpgroibMuazfF/hu++MRsDWbK79nVUr32t9Vhe+PzTXjVEPUzBhLLMkM002vA+oJPHDX/n476x2L9qQdt+VAMyvEVKc8dmcFSK0wU5aoFdmHBsemKQLWfLRhetrpBfEvmRojmmlwQtcNXJIecYit+5X5LQ7oyiIduiBr6+6eOmjnHUStWOvKijCyaUCaKQQx3k0yjCl4CuPy5yUUpb1YT388RSPJWhe593Wa1BfHPwPmum0N06qG2GgrBY5GyRQFykykfYxIuAmfsYTMxM5h28JLPrL/G1et/TySniiiQxRLdEy6TxmC9NhJ39noUnyf20GWMeI4ERw7+gUJ8uSQlrMLLWvsHPwKcUprlxqc5S3mD2V0H1e2FTRQS0+D08bf4ix38YyIiOLTImIECNHk6J/NvkEimteCJhEuyYGzKNB5Tj/Gzf0uo+R9AEUjrebtxSWkKse1jq+4rnKsx1P/de1gdBmW7Xf0S5jjLP30ov33mssy5hsbMpQ3k4ot+x0F8rzYAolrjz17cVBGSt3sbgksvCxJl3AphdD78vGf6Wvgm34sBZOqnx7U4D/jgo1G1Bp+BpOWzBxBGjxlUjB4foNZeD08qfD2dLt4fdH4dVt0aM1foTDNmYPrdB/TfD5CMHH4MjTmAJkG6nFvTwbXDXyOH0+2MoXN7S/Ej4Y0JJEYIwo8mTAuIOPx88Orx78Hoew1v6jUcz3gqqpb/QGFrgcuADATY1cQ/GR/iiTxn18l3ltRb0B17Ib4j5jWmoXmrM6iI1+5v3Bm+nF6wTBcihD8DeVmly8OIo/D3L9IPqJBM7TA0RqbpErgJRyY8NjwL9/mUfI/nFOH7ecDBtK8Y3HCgJQa6G/o5bbUa54A+EfXs7Jhatky7IYIEZ07YuwnnRa2nkH00rpTA9+eTlGp8ehORYLonpFTYzE2jh0PtelSvbHgphDLslvBsFs9imZjpOi+PMS++t89zW3xnn2ex5NAZ3k/Wx/uQx/zghTJzyoJ1dZnGo48K6jTfvuW9/ya61DNnAuCpgfPEY3DqDtybNxP51qG8eYheIW8jhtRR+ExVyt/iIs98+5wvcPPiQTYTywk95DU2NL4HWO6QhhR98kG2yseXEdOtn4TR0hholatW/aTGXTlKbdyQuoYpblaibrr9HtWqpV6UGgthXW3h2gJZf/Toy+rVb4b6d995t9oZ9dkOJkK6F7BhyIc46GZI44E9Quqjf3Bg1j2BbckFGIlthw/s57CqCTz+iKdlEihu0mXEznRjg4eqEdVcdVhD0Lvtog82meOSJvYtWSxcqRuuGV1PeMRLhYy/erT0ClqwtnTPsr3ewvyrr7oiY/0NqH8lysx5DMZx9Aj2CjkF4+FgL2iDz0On9wDpFRCy7h32Mem80gWZHsDzF0z7Bwu3RQ/AeaWv0GjH9IZzvW+Nl/yN9XNyoH2wthTjo5m3ds3qrCjXoIyCF2sFDm21AWtGHmGyhdWrV8sRDG3xADZ0oAKt1OArxV9BoqBphRwD2DMkDQK9wbjelFLOUAFfpmBmR5nKsuVlcEH8WzXundkqbC5/FQ6V7cyPvXgMYZ0gzJBxBjJIt7C5QMv1FQhg1qer0C7FYMuOheMKDFkWfZydUGZUfHrMt8nrT0mNS3LhqFKDPnWUrf1cOEvFR3mkhCUzIncB/eMpmTnekKxlK+iC6DI4COJvZiE27kcPtvr+gIOOyor1wIOPkh7Ak008niinoBDzyKO4FqQPAUy2cNghR8qBOgeno+iuzAkpcxiJdOiDeMlX+vkqf3AglrR039RWxN3ADWlXhHPN4pLM4exU2FzusqlS7VlWNwAPuB/LFYnZZ2mPBXq/XtgERj9nN2YD5iIuwxPz1q1doWY/N0Mt+eJjFqkuXfdRv+8zSLUs3dl3E6auxPhJ3rtq9dqV6qmnZ6jPF+n6v/5Vd3XOmWWo3yq1vldPWxutm1hAG7rDvDlR6ZWkSy7ks9ykL7k19dtNVWPxV9y8oDkkj8RHjK4qvyH51908sAYjXbMBkM5ldXwA/iBw75QORoYMobKnAo6YdzR2NvfaA2UB0gzTLDeNsi7TcgXSzNdzd42DrEkesrUQk3WC+aYe26LyGUy5aSf9/p3/ierNORRo2rRL8sYAZT5TLMjw89Q4fK5YFEgSOU4Bkr7SC2dt65NuS6bn82EKL9VpwKY9LDt0Os5U9Uezh/gbWSjjBpth4J2PcAIOfwOoDV59Ja3Mp3WIXPFjhKEztJAoGPLBP7BHdgwMDyczzTzioZeVaaAHxLPtUo6G8Lk0D1bHxCnwqCMB9wa3pFCHc34svAKDsFY22+KYkx64DtAjEWmkmvQoRzhNeXqNhu8zDMLZK3hnie8FxL3dB9dNA/HlevagiTVpxq+966gj8OeHO+DbEJppMOZJmRH+S6CCKCTDKhlnGfNZk72I/8XKdFLxoCiScglKpImBeRKzMu71e88QkxRo8Zh2BBTKxd83kHpUhKGLZ9SEDo1QQM0PzzGn9gCPNgDodgxkbnGjFBBE+Ul1fsWB5bV7gvqjzSyCDGjLQYzEe/9MqG9b2OrQ/bRP5clbwiCSmII3TBuGtcVSmPyH4PUAMifwQgQQeEI2eRS2EQBFzbTpUewlgh91+f4KlWNguQ4Qny8xe4K2a21MKeqSlnn6l/UzhizZGWG9TNK1xeG9qoJjMFuYLIsZYNInH71DhsDKE5Fr8aep58xLqK+/Q2f1FkFyEB1pakIOoyOW49MyY2EaLFJLkK5MR5lmnl+OviFpNMJ8agGxzHI4w/HSrE84gSEcLrZpMQZc3UZHaNQHHfU3RPgn2/SWBGdF7IO6H6GGBMyCZpqFV3pcElYzDVyuMc1hq0OvIXVnwV8+qZf0tHZt6VwY0r9yY8xYWUtMEvbqHFIR/MkbWj/E4lkd4HBnegTT4oJokahPixVrQexbJ2RjdjSJh+W8fFiDD3RIHuoGcS5bFFdxbG5qGtl2kk7jTvtcjw+9sxsGwtLbVnYIh9TtyOrFdoF1LvaeruhwZaulAbCckuRzm4Tx+Kbou9/XPYlB9AwjCApTLiMc3qM15pHBEpzW3Q2PNpqXMDcgQA+GhBGW7BsB0q+IcJChFUuh6ktgpQ4Uxhi/FCplZJTC/GiNo376Fr6cikUhnoYB1msfAEEafzeucV/aB/pGBdKzTUPfivW7OPmRl6CInsIcWmAjZMpYrhkzmE/rE4YJg4xm+FM5zfENgQKsQcPoJXnwBxGMVDzNLo8yIUxjnYIXP75VCw4tfFMm7iyOP+JY46oaPIjh31RkO7pN0/u0Uv38QPlJ40rReVN7AJrZZoF0bqfgWgMu2nQLxqwrjTBoZWaQEwGgIFUpWpgGhmVaKNo10GKTCjMWq63XWDHbSsGJDKnH2GufbVOmHE9ThM720mg0yjY48UrLGiB6BXB/sWO1zxw4vnF/iCxd2KR3u4fykatLw4m8m8HwcDFkj1EzLlAIRujiCuAvjIUGy9KFEbz3BUlXIvg9KxfcWvimPdOWESpdlVas7j1GMb7CDL2QlOA2+BnDKODmPsSHZXp33ZFjQGO0OGLExp6Ya18EIfcH4/IMj8IQy/St1BMk8ikQ42a0gjzhIp+CkzIKEbBaaIwJwx6TqkxRrNdWUtnJtpLlyCN+GkMK3tReLOWe0kHLqE6jW+V8xAnohU7GOzzw4/bdO9QcELLdY7DSwqMSaxf4/J0hfHyr0N0FwigUJXHwxVQRjLsUkBE40m7SOkVIWERDiFSAWKkuFyXRlbE+3BAV5Slf18e9pzhdXyuL31GTb6kBFjVdfY/miQO4OMYTz6rdRrdqhWRTaJJAkwSaJNAkgSYJNEmgSQJNEmhQAv8Lix8k/gNx6O4AAAAASUVORK5CYII=`,sBt=e=>({conversationSettings:{openingRemark:e?.conversation_settings?.opening_remark,predefinedQuestions:e?.conversation_settings?.predefined_questions,commands:e?.conversation_settings?.commands?.map(e=>({id:e.id,name:e.name,alias:e.alias,icon:e.icon,components:e.components.map(e=>({type:e.type,name:e.name,key:e.key,placeholder:e.placeholder,default:e.default,required:e.required,fillBack:e.fill_back,fillRegx:e.fill_regx,rows:e.rows,min:e.min,max:e.max,options:e.options})),content:e.content,agentId:e.agent_id,status:e.status,supportUpload:e.support_upload})),enableChatSession:e?.conversation_settings?.enable_chat_session},promptSetting:e?.prompt_setting?{content:e.prompt_setting.content,supportUpload:e.prompt_setting.support_upload}:void 0,agentName:e?.agent_name,relatedSkills:e?.related_skills?.map(e=>({id:e.id,skill_name:e.skill_name,skill_code:e.skill_code,description:e.description,icon:e.icon})),chatGroup:e?.chat_group?{enabled:e.chat_group.enabled,staff:e.chat_group.staff,username:e.chat_group.username}:void 0,saasUrl:e?.saas_url,resources:e?.resources}),v9=function(e){return e.FlowAgent=`flow_agent`,e.KnowledgeRag=`knowledge_rag`,e.ReferenceDocument=`reference_document`,e}({}),y9=function(e){return e.Activity=`activity`,e.Assistant=`assistant`,e.Developer=`developer`,e.Guide=`guide`,e.Hidden=`hidden`,e.HiddenAssistant=`hidden-assistant`,e.HiddenGuide=`hidden-guide`,e.HiddenSystem=`hidden-system`,e.HiddenUser=`hidden-user`,e.Info=`info`,e.Pause=`pause`,e.Placeholder=`placeholder`,e.Reasoning=`reasoning`,e.System=`system`,e.TemplateAssistant=`template-assistant`,e.TemplateGuide=`template-guide`,e.TemplateHidden=`template-hidden`,e.TemplateSystem=`template-system`,e.TemplateUser=`template-user`,e.Tool=`tool`,e.User=`user`,e.Interrupt=`interrupt`,e}({}),b9=function(e){return e.Complete=`complete`,e.Error=`error`,e.Pending=`pending`,e.Stop=`stop`,e.Streaming=`streaming`,e}({}),x9=function(e){return e.Binary=`binary`,e.Function=`function`,e.Text=`text`,e}({}),S9=function(e){return e.FlowNodeRetry=`flow_node_retry`,e.FlowNodeSkip=`flow_node_skip`,e.ApprovalCancel=`approval_cancel`,e}({}),C9=e=>{let t={id:e.id,messageId:e.message_id,name:e.name,role:e.role,sessionCode:e.session_code,status:e.status};switch(e.role){case y9.Activity:{let n=e,r=e=>e.map(e=>({name:e.name,originFileUrl:e.origin_file_url,url:e.url})),i;switch(n.activity_type){case v9.ReferenceDocument:i=r(n.content);break;case v9.KnowledgeRag:{let e=n.content;i={content:e.content,referenceDocument:r(e.reference_document)};break}case v9.FlowAgent:default:i=n.content;break}return{...t,activityType:n.activity_type,content:i,role:n.role}}case y9.Assistant:{let n=e;return{...t,content:n.content,property:n.property,role:n.role,toolCalls:n.tool_calls?.map(e=>({function:{arguments:e.function.arguments,name:e.function.name,description:e.function.description,mcpName:e.function.mcp_name},id:e.id,type:e.type}))}}case y9.Developer:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Guide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Hidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Info:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Pause:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Placeholder:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Reasoning:{let n=e;return{...t,content:n.content,duration:n.duration,role:n.role}}case y9.System:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateHidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Tool:{let n=e;return{...t,content:n.content,duration:n.duration,error:n.error,role:n.role,toolCallId:n.tool_call_id}}case y9.User:{let n=e,r=n.content;return{...t,content:Array.isArray(r)?r.map(e=>{if(e.type===x9.Binary){let t=e;return{data:t.data,filename:t.filename,id:t.id,mimeType:t.mime_type,type:t.type,url:t.url}}return e}):r,property:n.property,role:n.role}}case y9.Interrupt:return{...t,...e}}},cBt=e=>{let t={id:e.id,message_id:e.messageId,name:e.name,role:e.role,session_code:e.sessionCode,status:e.status};switch(e.role){case y9.Activity:{let n=e,r=e=>e.map(e=>({name:e.name,origin_file_url:e.originFileUrl,url:e.url})),i;switch(n.activityType){case v9.ReferenceDocument:i=r(n.content);break;case v9.KnowledgeRag:{let e=n.content;i={content:e.content,reference_document:r(e.referenceDocument)};break}case v9.FlowAgent:default:i=n.content;break}return{...t,activity_type:n.activityType,content:i,role:n.role}}case y9.Assistant:{let n=e;return{...t,property:n.property,content:n.content,role:n.role,tool_calls:n.toolCalls?.map(e=>({function:{arguments:e.function.arguments,name:e.function.name,description:e.function.description,mcp_name:e.function.mcpName},id:e.id,type:e.type}))}}case y9.Developer:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Guide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Hidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.HiddenUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Info:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Pause:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Placeholder:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Reasoning:{let n=e;return{...t,content:n.content,duration:n.duration,role:n.role}}case y9.System:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateAssistant:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateGuide:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateHidden:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateSystem:{let n=e;return{...t,content:n.content,role:n.role}}case y9.TemplateUser:{let n=e;return{...t,content:n.content,role:n.role}}case y9.Tool:{let n=e;return{...t,content:n.content,duration:n.duration,error:n.error,role:n.role,tool_call_id:n.toolCallId}}case y9.User:{let n=e,r=n.content;return{...t,content:Array.isArray(r)?r.map(e=>{if(e.type===x9.Binary){let t=e;return{data:t.data,filename:t.filename,id:t.id,mime_type:t.mimeType,type:t.type,url:t.url}}return e}):r,property:n.property,role:n.role}}case y9.Interrupt:return{...t,...e}}},w9=e=>({sessionCode:e.session_code,sessionContentCount:e.session_content_count,sessionName:e.session_name,isTemporary:e.is_temporary,model:e.model,comment:e.comment,rate:e.rate,updatedAt:e.updated_at,createdAt:e.created_at,status:e.status,roleInfo:e.role_info?{collectionId:e.role_info.collection_id,collectionName:e.role_info.collection_name,content:e.role_info.content,variables:e.role_info.variables}:void 0,sessionProperty:{isAutoClear:e.session_property?.is_auto_clear,isAutoCalcPrompt:e.session_property?.is_auto_clac_prompt,labels:e.session_property?.labels}}),lBt=e=>({session_code:e.sessionCode,session_content_count:e.sessionContentCount,session_name:e.sessionName,is_temporary:e.isTemporary,model:e.model,comment:e.comment,rate:e.rate,updated_at:e.updatedAt,created_at:e.createdAt,status:e.status,role_info:e.roleInfo?{collection_id:e.roleInfo.collectionId,collection_name:e.roleInfo.collectionName,content:e.roleInfo.content,variables:e.roleInfo.variables}:void 0,session_property:{is_auto_clear:e.sessionProperty?.isAutoClear,is_auto_clac_prompt:e.sessionProperty?.isAutoCalcPrompt,labels:e.sessionProperty?.labels}}),uBt=e=>({session_code:e.sessionCode,session_content_ids:e.sessionContentIds,rate:e.rate,comment:e.comment,labels:e.labels}),dBt=e=>({sessionCode:e.session_code,sessionContentIds:e.session_content_ids,rate:e.rate,comment:e.comment,labels:e.lables}),fBt=()=>`temp_${Date.now()}_${Math.random().toString(36).slice(2,9)}`,pBt=e=>{let n=(0,t.ref)([]),r=(0,t.ref)(!1),i=(0,t.ref)(!1),a=t=>(r.value=!0,e.http?.message.getMessages(t).then(e=>{n.value=e}).finally(()=>{r.value=!1})),o=()=>p(n.value),s=e=>{n.value=n.value.map(t=>t.messageId===e.messageId?e:t)},l=e=>{n.value.push(e)},u=()=>n.value.findLast(e=>[b9.Pending,b9.Streaming].includes(e.status)),d=e=>n.value.find(t=>t.messageId===e),f=async t=>{let r=fBt(),i={...t,id:r,messageId:r};n.value.push(i);try{let i=await e.http?.message.plusMessage(t);if(i){let e=n.value.findIndex(e=>e.messageId===r);if(e!==-1){let r={...i,...`property`in t&&t.property?{property:t.property}:{}};n.value[e]=r}}}catch(e){let t=n.value.findIndex(e=>e.messageId===r);throw t!==-1&&(n.value[t]={...n.value[t],status:b9.Error}),e}},p=async t=>{let r=t.reduce((e,t)=>(t.role===y9.User&&e.push(t.id),e),[]);if(r.length<=0)return;let a=[...n.value];n.value=n.value.filter(e=>!t.includes(e)),i.value=!0;try{await e.http?.message.batchDeleteMessages(r)}catch(e){throw n.value=a,e}finally{i.value=!1}};return{list:n,isListLoading:r,isDeleteLoading:i,getMessages:a,clearMessages:o,getCurrentLoadingMessage:u,getMessageByMessageId:d,modifyMessage:s,plusMessage:l,createAndPlusMessage:f,deleteMessages:p,shareMessages:async(t,n,r)=>{let i=n.reduce((e,t)=>(t.role===y9.User&&e.push(t.id),e),[]);if(!(i.length<=0))return e.http?.message.shareMessages(t,i,r)},getFlowAgentTaskInfo:t=>e.http?.message.getFlowAgentTaskInfo(t),getFlowAgentTaskNodeInfo:(t,n)=>e.http?.message.getFlowAgentTaskNodeInfo(t,n),reset:()=>{n.value=[],r.value=!1,i.value=!1}}},T9=function(e){return e.FlowAgentEnd=`flow_agent_end`,e.FlowAgentResult=`flow_agent_result`,e.FlowAgentStart=`flow_agent_start`,e.FlowAgentUpdate=`flow_agent_update`,e.FlowAgentRestart=`flow_agent_restart`,e.KnowledgeRagEnd=`knowledge_rag_end`,e.KnowledgeRagResult=`knowledge_rag_result`,e.KnowledgeRagStart=`knowledge_rag_start`,e.KnowledgeRagTextContent=`knowledge_rag_text_content`,e.ReferenceDocument=`reference_document`,e.TempMessage=`temp_message`,e.ApprovalResult=`approval_result`,e}({}),E9=function(e){return e.ActivityDelta=`ACTIVITY_DELTA`,e.ActivitySnapshot=`ACTIVITY_SNAPSHOT`,e.Custom=`CUSTOM`,e.MessagesSnapshot=`MESSAGES_SNAPSHOT`,e.Raw=`RAW`,e.RunError=`RUN_ERROR`,e.RunFinished=`RUN_FINISHED`,e.RunStarted=`RUN_STARTED`,e.StateDelta=`STATE_DELTA`,e.StateSnapshot=`STATE_SNAPSHOT`,e.StepFinished=`STEP_FINISHED`,e.StepStarted=`STEP_STARTED`,e.TextMessageChunk=`TEXT_MESSAGE_CHUNK`,e.TextMessageContent=`TEXT_MESSAGE_CONTENT`,e.TextMessageEnd=`TEXT_MESSAGE_END`,e.TextMessageStart=`TEXT_MESSAGE_START`,e.ThinkingEnd=`THINKING_END`,e.ThinkingStart=`THINKING_START`,e.ThinkingTextMessageContent=`THINKING_TEXT_MESSAGE_CONTENT`,e.ThinkingTextMessageEnd=`THINKING_TEXT_MESSAGE_END`,e.ThinkingTextMessageStart=`THINKING_TEXT_MESSAGE_START`,e.ToolCallArgs=`TOOL_CALL_ARGS`,e.ToolCallChunk=`TOOL_CALL_CHUNK`,e.ToolCallEnd=`TOOL_CALL_END`,e.ToolCallResult=`TOOL_CALL_RESULT`,e.ToolCallStart=`TOOL_CALL_START`,e}({}),mBt=function(e){return e.Blocked=`BLOCKED`,e.Created=`CREATED`,e.Failed=`FAILED`,e.Finished=`FINISHED`,e.LoopReady=`LOOP_READY`,e.Ready=`READY`,e.Revoked=`REVOKED`,e.RollBackFailed=`ROLL_BACK_FAILED`,e.RollBackSuccess=`ROLL_BACK_SUCCESS`,e.RollingBack=`ROLLING_BACK`,e.Running=`RUNNING`,e.Suspended=`SUSPENDED`,e}({}),D9=function(e){return e.Success=`success`,e.Interrupt=`interrupt`,e}({}),hBt=function(e){return e.Abandoned=`abandoned`,e.Approved=`approved`,e.Cancelled=`cancelled`,e.Draft=`draft`,e.Expired=`expired`,e.Rejected=`rejected`,e.Pending=`pending`,e}({}),O9=function(e){return e.Resolved=`resolved`,e.Cancelled=`cancelled`,e}({}),k9=class{messageModule;onDoneCallback;onErrorCallback;onMessageCallback;onStartCallback;constructor(e){this.onDoneCallback=e?.onDone,this.onErrorCallback=e?.onError,this.onMessageCallback=e?.onMessage,this.onStartCallback=e?.onStart}handleActivityDeltaEvent(e){}handleActivitySnapshotEvent(e){}handleCustomEvent(e){switch(e.name){case T9.FlowAgentStart:this.handleFlowAgentStartCustomEvent(e);break;case T9.FlowAgentResult:this.handleFlowAgentResultCustomEvent(e);break;case T9.FlowAgentEnd:this.handleFlowAgentEndCustomEvent(e);break;case T9.FlowAgentRestart:this.handleFlowAgentRestartCustomEvent(e);break;case T9.ReferenceDocument:this.handleReferenceDocumentCustomEvent(e);break;case T9.KnowledgeRagStart:this.handleKnowledgeRagStartCustomEvent(e);break;case T9.KnowledgeRagTextContent:this.handleKnowledgeRagTextContentCustomEvent(e);break;case T9.KnowledgeRagResult:this.handleKnowledgeRagResultCustomEvent(e);break;case T9.KnowledgeRagEnd:this.handleKnowledgeRagEndCustomEvent(e);break;case T9.TempMessage:this.handleTempMessageCustomEvent(e);break;case T9.ApprovalResult:this.handleApprovalResultCustomEvent(e);break;case T9.FlowAgentUpdate:this.handleFlowAgentUpdateCustomEvent(e);break;default:break}}handleFlowAgentEndCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();if(t&&t.role===y9.Activity&&t.activityType===v9.FlowAgent){t.status=b9.Complete;let n=e.value;this.messageModule.plusMessage({role:y9.Assistant,content:n.map(e=>e.task_outputs.join(`
|
|
3486
3486
|
`)).join(`
|
|
3487
|
-
`),status:b9.Complete})}}handleFlowAgentResultCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.FlowAgent&&(t.content=e.value)}handleFlowAgentStartCustomEvent(e){let t=e.value;this.messageModule.plusMessage({role:y9.Activity,activityType:v9.FlowAgent,content:t.map(e=>({nodes:{},task_id:Number(e.task_id),task_name:``,task_outputs:[],task_state:mBt.Created})),status:b9.Streaming})}handleFlowAgentUpdateCustomEvent(e){let t=e.value;this.messageModule.list.value.forEach(e=>{e.role===y9.Activity&&e.activityType===v9.FlowAgent&&e.content[0].task_id===t[0].task_id&&(e.content=t)})}handleKnowledgeRagEndCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag&&(t.status=b9.Complete)}handleKnowledgeRagResultCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag&&(t.content.referenceDocument=e.value)}handleKnowledgeRagStartCustomEvent(e){this.messageModule.plusMessage({role:y9.Activity,activityType:v9.KnowledgeRag,content:{content:``,referenceDocument:[]},status:b9.Streaming})}handleKnowledgeRagTextContentCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();if(t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag){let n=e.value;t.content.content=n.cover?n.chunk.content:t.content.content+n.chunk.content}}handleMessagesSnapshotEvent(e){e.messages&&e.messages.length>0&&(this.messageModule.list.value=e.messages.map(C9))}handleRawEvent(e){}handleReferenceDocumentCustomEvent(e){this.messageModule.plusMessage({role:y9.Activity,activityType:v9.ReferenceDocument,content:e.value,status:b9.Complete})}handleRunErrorEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&(t.status=b9.Complete),this.messageModule.plusMessage({role:y9.Assistant,content:e.message,status:b9.Error})}handleRunFinishedEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&(t.status=b9.Complete),e.outcome?.type===D9.Interrupt&&this.messageModule.plusMessage({role:y9.Interrupt,content:e,status:b9.Pending}),e.outcome?.type===D9.Success&&t?.role===y9.Interrupt&&(t.content=e)}handleRunStartedEvent(e){}handleStateDeltaEvent(e){}handleStateSnapshotEvent(e){}handleStepFinishedEvent(e){}handleStepStartedEvent(e){}handleTempMessageCustomEvent(e){let t=e.value;this.messageModule.plusMessage({role:y9.Assistant,content:t.message,status:t.status})}handleApprovalResultCustomEvent(e){let t=e.value,n=this.messageModule.getCurrentLoadingMessage();n&&(n.content=t,n.status=b9.Complete)}handleTextMessageChunkEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t?t.content+=e.delta||``:this.messageModule.plusMessage({role:e.role,content:e.delta||``,status:b9.Complete,messageId:e.messageId})}handleTextMessageContentEvent(e){let t=this.messageModule.getMessageByMessageId(e.messageId);t&&(t.content+=e.delta)}handleTextMessageEndEvent(e){let t=this.messageModule.getMessageByMessageId(e.messageId);t&&(t.status=b9.Complete)}handleTextMessageStartEvent(e){this.messageModule.plusMessage({role:e.role,content:``,status:b9.Streaming,messageId:e.messageId})}handleThinkingEndEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&(t.duration=e.duration,t.status=b9.Complete)}handleThinkingStartEvent(e){this.messageModule.plusMessage({role:y9.Reasoning,content:[],status:b9.Streaming})}handleThinkingTextMessageContentEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&(t.content[t.content.length-1]+=e.delta)}handleThinkingTextMessageEndEvent(e){}handleThinkingTextMessageStartEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&t.content.push(``)}handleToolCallArgsEvent(e){this.messageModule.list.value.forEach(t=>{t.role===y9.Assistant&&t.toolCalls&&t.toolCalls.forEach(t=>{t.id===e.toolCallId&&(t.function.arguments+=e.delta)})})}handleToolCallChunkEvent(e){}handleToolCallEndEvent(e){this.messageModule.list.value.forEach(t=>{t.role===y9.Assistant&&t.toolCalls&&t.toolCalls.some(t=>t.id===e.toolCallId)&&(t.status=b9.Complete)})}handleToolCallResultEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t?.role===y9.Interrupt?(t.content.result=JSON.parse(e.content),t.content.outcome.type=D9.Success,t.status=b9.Complete):this.messageModule.plusMessage({role:y9.Tool,content:e.content,duration:e.duration,status:e.isError?b9.Error:b9.Complete,toolCallId:e.toolCallId,messageId:e.messageId})}handleToolCallStartEvent(e){this.messageModule.plusMessage({role:y9.Assistant,content:``,status:b9.Streaming,toolCalls:[{id:e.toolCallId,type:x9.Function,function:{mcpName:e.mcpName,name:e.toolCallName,arguments:``,description:e.description}}]})}injectMessageModule(e){this.messageModule=e}onDone(){this.onDoneCallback?.()}onError(e){this.messageModule?.plusMessage({role:y9.Assistant,content:e.message,status:b9.Error}),this.onErrorCallback?.(e)}onMessage(e){let t=e;switch(this.onMessageCallback?.(t),t.type){case E9.ActivityDelta:this.handleActivityDeltaEvent(t);break;case E9.ActivitySnapshot:this.handleActivitySnapshotEvent(t);break;case E9.Custom:this.handleCustomEvent(t);break;case E9.MessagesSnapshot:this.handleMessagesSnapshotEvent(t);break;case E9.Raw:this.handleRawEvent(t);break;case E9.RunError:this.handleRunErrorEvent(t);break;case E9.RunFinished:this.handleRunFinishedEvent(t);break;case E9.RunStarted:this.handleRunStartedEvent(t);break;case E9.StateDelta:this.handleStateDeltaEvent(t);break;case E9.StateSnapshot:this.handleStateSnapshotEvent(t);break;case E9.StepFinished:this.handleStepFinishedEvent(t);break;case E9.StepStarted:this.handleStepStartedEvent(t);break;case E9.TextMessageChunk:this.handleTextMessageChunkEvent(t);break;case E9.TextMessageContent:this.handleTextMessageContentEvent(t);break;case E9.TextMessageEnd:this.handleTextMessageEndEvent(t);break;case E9.TextMessageStart:this.handleTextMessageStartEvent(t);break;case E9.ThinkingEnd:this.handleThinkingEndEvent(t);break;case E9.ThinkingStart:this.handleThinkingStartEvent(t);break;case E9.ThinkingTextMessageContent:this.handleThinkingTextMessageContentEvent(t);break;case E9.ThinkingTextMessageEnd:this.handleThinkingTextMessageEndEvent(t);break;case E9.ThinkingTextMessageStart:this.handleThinkingTextMessageStartEvent(t);break;case E9.ToolCallArgs:this.handleToolCallArgsEvent(t);break;case E9.ToolCallChunk:this.handleToolCallChunkEvent(t);break;case E9.ToolCallEnd:this.handleToolCallEndEvent(t);break;case E9.ToolCallResult:this.handleToolCallResultEvent(t);break;case E9.ToolCallStart:this.handleToolCallStartEvent(t);break;default:break}}onStart(){this.onStartCallback?.()}},gBt=function(e){return e.Running=`running`,e.Finished=`finished`,e.Failed=`failed`,e.Cancelled=`cancelled`,e}({}),_Bt=(e,n)=>{let r=(0,t.ref)(null),i=(0,t.ref)(!1),a=(0,t.ref)(!1),o=n||new k9,s=null,l=null,u=()=>(i.value=!0,e.http?.agent.getAgentInfo().then(e=>{r.value=e}).finally(()=>{i.value=!1})),d=(t,n)=>{let r=t.promptSetting?.content?.at(-1);r?.role===y9.Pause&&e.message?.createAndPlusMessage({role:y9.Assistant,content:r.content,status:b9.Complete,sessionCode:n,property:{extra:{pause:!0}}})},f=(t,n,r,i)=>e.http?.message.userOperation(t,n,r,i).then(()=>{n===S9.ApprovalCancel?(_(),g(t)):p({sessionCode:t,config:i})}),p=async({sessionCode:t,url:n,config:r,resume:i,input:l,lastMessageId:u})=>{o instanceof k9&&o.injectMessageModule(e.message),l&&e.message?.list.value.push({role:y9.User,content:l,status:b9.Complete,sessionCode:t}),s=new AbortController,e.http?.fetchClient.streamRequest({url:n||`chat_completion/`,method:`POST`,data:{session_code:t,input:l,execute_kwargs:{stream:!0,persist_input:!!l,last_message_id:u,resume:i}},controller:s,onDone:()=>{a.value=!1,o.onDone?.call(o),l&&e.http?.message?.getMessages(t).then(t=>{let n=e.message?.list.value.findLast(e=>e.role===y9.User);n.id=t.findLast(e=>e.role===y9.User).id}),g(t)},onError:e=>{a.value=!1,o.onError?.call(o,e)},onMessage:e=>{o.onMessage?.call(o,e)},onStart:()=>{a.value=!0,o.onStart?.call(o)},...r}).catch(()=>{})},m=async(t,n,r,i,a)=>{await e.message?.createAndPlusMessage({role:y9.User,content:t,status:b9.Complete,sessionCode:n,...a&&{property:a}}),p({sessionCode:n,url:r,config:i})},h=(t,n,r)=>{if(e.session?.current.value?.status===gBt.Running){let i=e.message?.list.value.at(-1)?.id;p({sessionCode:t,url:n,config:r,lastMessageId:i})}},g=t=>{let n=e.message?.list.value.at(-1),r=n?.content?.outcome?.type===D9.Interrupt?n.content.outcome.interrupts.find(e=>[hBt.Pending,hBt.Draft].includes(e.metadata?.ticket?.status)):void 0;n?.role===y9.Interrupt&&r&&e.http?.session.isResumeSession(t).then(n=>{n?p({sessionCode:t,resume:{interruptId:r.id,status:O9.Resolved}}):l=setTimeout(()=>{t===e.session?.current?.value?.sessionCode&&g(t)},3e4)})},_=()=>{l&&=(clearTimeout(l),null)};return{info:r,isInfoLoading:i,isChatting:a,chat:m,handleRole:d,resendMessage:async(t,n,r,i,a)=>{let o=e.message?.list.value||[],s=o.findIndex(e=>String(e.id)===t);if(s===-1)throw Error(`Message not found: ${t}`);let l=o[s];if(l.role!==y9.User)throw Error(`Can only resend user messages`);let u=l.content,d=l.property,f=r??u,m=o.slice(s),h=e.message?.deleteMessages(m),g=e.message?.createAndPlusMessage({role:y9.User,content:f,status:b9.Complete,sessionCode:n,...d&&{property:d}});p({sessionCode:n,url:i,config:a}),Promise.all([h,g]).catch(e=>{console.error(`[resendMessage] API error:`,e)})},resumeStreamingChat:h,abortChat:()=>{s?.abort?.(),s=null},stopChat:async t=>e.http.message?.stopChat(t),getAgentInfo:u,reset:e=>{o=e||new k9,r.value=null,i.value=!1},pollResumeSession:g,clearLongPollTimer:_,userOperationStreamRequest:f,streamRequest:p}};function vBt(e){return(0,t.isRef)(e)}function A9(e){if(e==null)return;let n=e,r=0;for(;r<32;){if(r+=1,typeof n==`function`){n=n();continue}if(vBt(n)){n=(0,t.unref)(n);continue}break}return r>=32&&console.warn(`[chat-helper] resolveRequestValue: exceeded max unwrap depth`),n}var yBt=class{handlers=[];clear(){this.handlers=[]}eject(e){this.handlers[e]&&(this.handlers[e]=null)}forEach(e){this.handlers.forEach(t=>{t!==null&&e(t)})}use(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1}},bBt=class e{defaults;interceptors;globalErrorHandler;ignoreErrorPatterns=[];constructor(e={}){this.defaults=N9({method:`GET`,headers:{"Content-Type":`application/json`},timeout:3e4,responseType:`json`,credentials:`include`,mode:`cors`,validateStatus:e=>e>=200&&e<300},e),this.interceptors={request:new yBt,response:new yBt}}onError(e,t){this.globalErrorHandler=e,t?.ignoreErrors&&(this.ignoreErrorPatterns=t.ignoreErrors)}shouldIgnoreError(e){let t=e.config?.url||``,n=e.config?.baseURL||``,r=n&&!t.startsWith(`http`)?n+t:t;return this.ignoreErrorPatterns.some(e=>typeof e==`string`?t.includes(e)||r.includes(e):e.test(t)||e.test(r))}dispatchError(e){this.globalErrorHandler&&!this.shouldIgnoreError(e)&&this.globalErrorHandler(e)}applyResponseErrorInterceptors(e){let t=e;return this.interceptors.response.forEach(e=>{e.rejected&&(t=e.rejected(t))}),t}create(t){return new e(N9(this.defaults,t||{}))}delete(e,t,n){return this.request({...n,url:e,method:`DELETE`,params:t})}get(e,t,n){return this.request({...n,url:e,method:`GET`,params:t})}head(e,t,n){return this.request({...n,url:e,method:`HEAD`,params:t})}options(e,t,n){return this.request({...n,url:e,method:`OPTIONS`,params:t})}patch(e,t,n){return this.request({...n,url:e,method:`PATCH`,data:t})}post(e,t,n){return this.request({...n,url:e,method:`POST`,data:t})}prepareRequest(e,t=!1){let n=N9(this.defaults,e);this.interceptors.request.forEach(e=>{if(e.fulfilled)try{n=e.fulfilled(n)}catch(t){throw e.rejected?e.rejected(t):t}});let r=n.url||``;n.baseURL&&!r.startsWith(`http`)&&(r=n.baseURL+r),r=xBt(r,n.params);let i=M9(n.data),a=new Headers(M9(n.headers));t&&!a.has(`Accept`)&&a.set(`Accept`,`text/event-stream`),i!=null&&(n.transformRequest?i=n.transformRequest(i,M9(n.headers)):a.get(`Content-Type`)?.includes(`application/json`)&&typeof i==`object`&&!(i instanceof FormData)&&!(i instanceof Blob)&&!(i instanceof ArrayBuffer)&&(i=JSON.stringify(i)));let o=n.controller??new AbortController,s={method:n.method,credentials:n.credentials,mode:n.mode,headers:a,body:i,signal:o.signal};return{url:r,requestConfig:n,fetchConfig:s,controller:o}}put(e,t,n){return this.request({...n,url:e,method:`PUT`,data:t})}async request(e){let{url:t,fetchConfig:n,requestConfig:r,controller:i}=this.prepareRequest(e),a=r.timeout&&r.timeout>0?setTimeout(()=>i.abort(),r.timeout):void 0;try{let e=await fetch(t,n);a&&clearTimeout(a);let i,o=r.responseType||`json`;try{switch(o){case`json`:i=await e.json();break;case`text`:i=await e.text();break;case`blob`:i=await e.blob();break;case`arrayBuffer`:i=await e.arrayBuffer();break;case`formData`:i=await e.formData();break;default:i=await e.json()}}catch{i=null}r.transformResponse&&(i=r.transformResponse(i));let s={data:i,status:e.status,statusText:e.statusText,headers:e.headers,config:r};if(!(r.validateStatus||this.defaults.validateStatus)(e.status))throw j9(s.data?.error?.message||`Request failed with status code ${e.status}`,r,`ERR_BAD_RESPONSE`,s);let l=s;this.interceptors.response.forEach(e=>{if(e.fulfilled)try{l=e.fulfilled(l)}catch(t){throw e.rejected?e.rejected(t):t}}),l instanceof Promise&&(l=await l);let u=l.data;if(![0,`success`].includes(u.code))throw j9(u.message,r,u.code,l);return u.data}catch(e){if(a&&clearTimeout(a),e instanceof Error&&e.name===`AbortError`){let e=j9(`Request timeout`,r,`ECONNABORTED`,void 0);throw this.dispatchError(e),this.applyResponseErrorInterceptors(e)}let t=e.isAxiosError===!0?e:j9(e.message,r,e.code,void 0);throw this.dispatchError(t),this.applyResponseErrorInterceptors(t)}}stream(e,t){return this.streamRequest({...t,url:e})}async streamRequest(e){let t=!1,n=e.onError,r=e=>{if(!t){let n=e;n.config||=s,this.dispatchError(n),t=!0}n?.(e)},i={...e,onError:r},{url:a,fetchConfig:o,requestConfig:s}=this.prepareRequest(i,!0);try{let e=await fetch(a,o);if(!(s.validateStatus||this.defaults.validateStatus)(e.status)){let t=`Request failed with status code ${e.status}`;try{let n=await e.json();n?.error?.message&&(t=n.error.message)}catch{t=`Request failed with status code ${e.status}`}r(j9(t,s,`ERR_BAD_RESPONSE`,void 0));return}i.onStart?.();let t=e.body?.pipeThrough(new window.TextDecoderStream).getReader();if(!t){r(Error(`IResponse body is not readable`));return}let n=``,l=e=>{try{return JSON.parse(e),!0}catch{return!1}};for(;;){let{value:e,done:r}=await t.read();if(r){i.onDone?.();break}(n+e.toString()).split(`
|
|
3487
|
+
`),status:b9.Complete})}}handleFlowAgentRestartCustomEvent(e){let t=e.value;this.messageModule.list.value.forEach(e=>{e.role===y9.Activity&&e.activityType===v9.FlowAgent&&e.content[0].task_id===t[0].task_id&&(e.status=b9.Streaming)})}handleFlowAgentResultCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.FlowAgent&&(t.content=e.value)}handleFlowAgentStartCustomEvent(e){let t=e.value;this.messageModule.plusMessage({role:y9.Activity,activityType:v9.FlowAgent,content:t.map(e=>({nodes:{},task_id:e.task_id,task_name:``,task_outputs:[],task_state:mBt.Created})),status:b9.Streaming})}handleFlowAgentUpdateCustomEvent(e){let t=e.value;this.messageModule.list.value.forEach(e=>{e.role===y9.Activity&&e.activityType===v9.FlowAgent&&e.content[0].task_id===t[0].task_id&&(e.content=t)})}handleKnowledgeRagEndCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag&&(t.status=b9.Complete)}handleKnowledgeRagResultCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag&&(t.content.referenceDocument=e.value)}handleKnowledgeRagStartCustomEvent(e){this.messageModule.plusMessage({role:y9.Activity,activityType:v9.KnowledgeRag,content:{content:``,referenceDocument:[]},status:b9.Streaming})}handleKnowledgeRagTextContentCustomEvent(e){let t=this.messageModule.getCurrentLoadingMessage();if(t&&t.role===y9.Activity&&t.activityType===v9.KnowledgeRag){let n=e.value;t.content.content=n.cover?n.chunk.content:t.content.content+n.chunk.content}}handleMessagesSnapshotEvent(e){e.messages&&e.messages.length>0&&(this.messageModule.list.value=e.messages.map(C9))}handleRawEvent(e){}handleReferenceDocumentCustomEvent(e){this.messageModule.plusMessage({role:y9.Activity,activityType:v9.ReferenceDocument,content:e.value,status:b9.Complete})}handleRunErrorEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&(t.status=b9.Complete),this.messageModule.plusMessage({role:y9.Assistant,content:e.message,status:b9.Error})}handleRunFinishedEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&(t.status=b9.Complete),e.outcome?.type===D9.Interrupt&&this.messageModule.plusMessage({role:y9.Interrupt,content:e,status:b9.Pending}),e.outcome?.type===D9.Success&&t?.role===y9.Interrupt&&(t.content=e)}handleRunStartedEvent(e){}handleStateDeltaEvent(e){}handleStateSnapshotEvent(e){}handleStepFinishedEvent(e){}handleStepStartedEvent(e){}handleTempMessageCustomEvent(e){let t=e.value;this.messageModule.plusMessage({role:y9.Assistant,content:t.message,status:t.status})}handleApprovalResultCustomEvent(e){let t=e.value,n=this.messageModule.getCurrentLoadingMessage();n&&(n.content=t,n.status=b9.Complete)}handleTextMessageChunkEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t?t.content+=e.delta||``:this.messageModule.plusMessage({role:e.role,content:e.delta||``,status:b9.Complete,messageId:e.messageId})}handleTextMessageContentEvent(e){let t=this.messageModule.getMessageByMessageId(e.messageId);t&&(t.content+=e.delta)}handleTextMessageEndEvent(e){let t=this.messageModule.getMessageByMessageId(e.messageId);t&&(t.status=b9.Complete)}handleTextMessageStartEvent(e){this.messageModule.plusMessage({role:e.role,content:``,status:b9.Streaming,messageId:e.messageId})}handleThinkingEndEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&(t.duration=e.duration,t.status=b9.Complete)}handleThinkingStartEvent(e){this.messageModule.plusMessage({role:y9.Reasoning,content:[],status:b9.Streaming})}handleThinkingTextMessageContentEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&(t.content[t.content.length-1]+=e.delta)}handleThinkingTextMessageEndEvent(e){}handleThinkingTextMessageStartEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t&&t.role===y9.Reasoning&&t.content.push(``)}handleToolCallArgsEvent(e){this.messageModule.list.value.forEach(t=>{t.role===y9.Assistant&&t.toolCalls&&t.toolCalls.forEach(t=>{t.id===e.toolCallId&&(t.function.arguments+=e.delta)})})}handleToolCallChunkEvent(e){}handleToolCallEndEvent(e){this.messageModule.list.value.forEach(t=>{t.role===y9.Assistant&&t.toolCalls&&t.toolCalls.some(t=>t.id===e.toolCallId)&&(t.status=b9.Complete)})}handleToolCallResultEvent(e){let t=this.messageModule.getCurrentLoadingMessage();t?.role===y9.Interrupt?(t.content.result=JSON.parse(e.content),t.content.outcome.type=D9.Success,t.status=b9.Complete):this.messageModule.plusMessage({role:y9.Tool,content:e.content,duration:e.duration,status:e.isError?b9.Error:b9.Complete,toolCallId:e.toolCallId,messageId:e.messageId})}handleToolCallStartEvent(e){this.messageModule.plusMessage({role:y9.Assistant,content:``,status:b9.Streaming,toolCalls:[{id:e.toolCallId,type:x9.Function,function:{mcpName:e.mcpName,name:e.toolCallName,arguments:``,description:e.description}}]})}injectMessageModule(e){this.messageModule=e}onDone(){this.onDoneCallback?.()}onError(e){this.messageModule?.plusMessage({role:y9.Assistant,content:e.message,status:b9.Error}),this.onErrorCallback?.(e)}onMessage(e){let t=e;switch(this.onMessageCallback?.(t),t.type){case E9.ActivityDelta:this.handleActivityDeltaEvent(t);break;case E9.ActivitySnapshot:this.handleActivitySnapshotEvent(t);break;case E9.Custom:this.handleCustomEvent(t);break;case E9.MessagesSnapshot:this.handleMessagesSnapshotEvent(t);break;case E9.Raw:this.handleRawEvent(t);break;case E9.RunError:this.handleRunErrorEvent(t);break;case E9.RunFinished:this.handleRunFinishedEvent(t);break;case E9.RunStarted:this.handleRunStartedEvent(t);break;case E9.StateDelta:this.handleStateDeltaEvent(t);break;case E9.StateSnapshot:this.handleStateSnapshotEvent(t);break;case E9.StepFinished:this.handleStepFinishedEvent(t);break;case E9.StepStarted:this.handleStepStartedEvent(t);break;case E9.TextMessageChunk:this.handleTextMessageChunkEvent(t);break;case E9.TextMessageContent:this.handleTextMessageContentEvent(t);break;case E9.TextMessageEnd:this.handleTextMessageEndEvent(t);break;case E9.TextMessageStart:this.handleTextMessageStartEvent(t);break;case E9.ThinkingEnd:this.handleThinkingEndEvent(t);break;case E9.ThinkingStart:this.handleThinkingStartEvent(t);break;case E9.ThinkingTextMessageContent:this.handleThinkingTextMessageContentEvent(t);break;case E9.ThinkingTextMessageEnd:this.handleThinkingTextMessageEndEvent(t);break;case E9.ThinkingTextMessageStart:this.handleThinkingTextMessageStartEvent(t);break;case E9.ToolCallArgs:this.handleToolCallArgsEvent(t);break;case E9.ToolCallChunk:this.handleToolCallChunkEvent(t);break;case E9.ToolCallEnd:this.handleToolCallEndEvent(t);break;case E9.ToolCallResult:this.handleToolCallResultEvent(t);break;case E9.ToolCallStart:this.handleToolCallStartEvent(t);break;default:break}}onStart(){this.onStartCallback?.()}},gBt=function(e){return e.Running=`running`,e.Finished=`finished`,e.Failed=`failed`,e.Cancelled=`cancelled`,e}({}),_Bt=(e,n)=>{let r=(0,t.ref)(null),i=(0,t.ref)(!1),a=(0,t.ref)(!1),o=n||new k9,s=null,l=null,u=null,d=()=>(i.value=!0,e.http?.agent.getAgentInfo().then(e=>{r.value=e}).finally(()=>{i.value=!1})),f=(t,n)=>{let r=t.promptSetting?.content?.at(-1);r?.role===y9.Pause&&e.message?.createAndPlusMessage({role:y9.Assistant,content:r.content,status:b9.Complete,sessionCode:n,property:{extra:{pause:!0}}})},p=(t,n,r,i)=>e.http?.message.userOperation(t,n,r,i).then(()=>{n===S9.ApprovalCancel?(v(),_(t)):m({sessionCode:t,config:i})}),m=async({sessionCode:t,url:n,config:r,resume:i,input:l,lastMessageId:u})=>{o instanceof k9&&o.injectMessageModule(e.message),l&&e.message?.list.value.push({role:y9.User,content:l,status:b9.Complete,sessionCode:t}),s=new AbortController,e.http?.fetchClient.streamRequest({url:n||`chat_completion/`,method:`POST`,data:{session_code:t,input:l,execute_kwargs:{stream:!0,persist_input:!!l,last_message_id:u,resume:i}},controller:s,onDone:()=>{a.value=!1,o.onDone?.call(o),l&&e.http?.message?.getMessages(t).then(t=>{let n=e.message?.list.value.findLast(e=>e.role===y9.User);n.id=t.findLast(e=>e.role===y9.User).id}),_(t)},onError:e=>{a.value=!1,o.onError?.call(o,e)},onMessage:e=>{o.onMessage?.call(o,e)},onStart:()=>{a.value=!0,o.onStart?.call(o)},...r}).catch(()=>{})},h=async(t,n,r,i,a)=>{await e.message?.createAndPlusMessage({role:y9.User,content:t,status:b9.Complete,sessionCode:n,...a&&{property:a}}),m({sessionCode:n,url:r,config:i})},g=(t,n,r)=>{if(e.session?.current.value?.status===gBt.Running){let i=e.message?.list.value.at(-1)?.id;m({sessionCode:t,url:n,config:r,lastMessageId:i})}},_=t=>{let n=e.message?.list.value.at(-1),r=n?.content?.outcome?.type===D9.Interrupt?n.content.outcome.interrupts.find(e=>[hBt.Pending,hBt.Draft].includes(e.metadata?.ticket?.status)):void 0;n?.role===y9.Interrupt&&r&&(v(),l=new AbortController,e.http?.session.isResumeSession(t,{controller:l}).then(n=>{n?m({sessionCode:t,resume:{interruptId:r.id,status:O9.Resolved}}):u=setTimeout(()=>{t===e.session?.current?.value?.sessionCode&&_(t)},15e3)}))},v=()=>{clearTimeout(u),u=null,l?.abort?.(),l=null};return{info:r,isInfoLoading:i,isChatting:a,chat:h,handleRole:f,resendMessage:async(t,n,r,i,a)=>{let o=e.message?.list.value||[],s=o.findIndex(e=>String(e.id)===t);if(s===-1)throw Error(`Message not found: ${t}`);let l=o[s];if(l.role!==y9.User)throw Error(`Can only resend user messages`);let u=l.content,d=l.property,f=r??u,p=o.slice(s),h=e.message?.deleteMessages(p),g=e.message?.createAndPlusMessage({role:y9.User,content:f,status:b9.Complete,sessionCode:n,...d&&{property:d}});m({sessionCode:n,url:i,config:a}),Promise.all([h,g]).catch(e=>{console.error(`[resendMessage] API error:`,e)})},resumeStreamingChat:g,abortChat:()=>{s?.abort?.(),s=null},stopChat:async t=>e.http.message?.stopChat(t),getAgentInfo:d,reset:e=>{o=e||new k9,r.value=null,i.value=!1},pollResumeSession:_,clearLongPollTimer:v,userOperationStreamRequest:p,streamRequest:m}};function vBt(e){return(0,t.isRef)(e)}function A9(e){if(e==null)return;let n=e,r=0;for(;r<32;){if(r+=1,typeof n==`function`){n=n();continue}if(vBt(n)){n=(0,t.unref)(n);continue}break}return r>=32&&console.warn(`[chat-helper] resolveRequestValue: exceeded max unwrap depth`),n}var yBt=class{handlers=[];clear(){this.handlers=[]}eject(e){this.handlers[e]&&(this.handlers[e]=null)}forEach(e){this.handlers.forEach(t=>{t!==null&&e(t)})}use(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1}},bBt=class e{defaults;interceptors;globalErrorHandler;ignoreErrorPatterns=[];constructor(e={}){this.defaults=N9({method:`GET`,headers:{"Content-Type":`application/json`},timeout:3e4,responseType:`json`,credentials:`include`,mode:`cors`,validateStatus:e=>e>=200&&e<300},e),this.interceptors={request:new yBt,response:new yBt}}onError(e,t){this.globalErrorHandler=e,t?.ignoreErrors&&(this.ignoreErrorPatterns=t.ignoreErrors)}shouldIgnoreError(e){let t=e.config?.url||``,n=e.config?.baseURL||``,r=n&&!t.startsWith(`http`)?n+t:t;return this.ignoreErrorPatterns.some(e=>typeof e==`string`?t.includes(e)||r.includes(e):e.test(t)||e.test(r))}dispatchError(e){this.globalErrorHandler&&!this.shouldIgnoreError(e)&&this.globalErrorHandler(e)}applyResponseErrorInterceptors(e){let t=e;return this.interceptors.response.forEach(e=>{e.rejected&&(t=e.rejected(t))}),t}create(t){return new e(N9(this.defaults,t||{}))}delete(e,t,n){return this.request({...n,url:e,method:`DELETE`,params:t})}get(e,t,n){return this.request({...n,url:e,method:`GET`,params:t})}head(e,t,n){return this.request({...n,url:e,method:`HEAD`,params:t})}options(e,t,n){return this.request({...n,url:e,method:`OPTIONS`,params:t})}patch(e,t,n){return this.request({...n,url:e,method:`PATCH`,data:t})}post(e,t,n){return this.request({...n,url:e,method:`POST`,data:t})}prepareRequest(e,t=!1){let n=N9(this.defaults,e);this.interceptors.request.forEach(e=>{if(e.fulfilled)try{n=e.fulfilled(n)}catch(t){throw e.rejected?e.rejected(t):t}});let r=n.url||``;n.baseURL&&!r.startsWith(`http`)&&(r=n.baseURL+r),r=xBt(r,n.params);let i=M9(n.data),a=new Headers(M9(n.headers));t&&!a.has(`Accept`)&&a.set(`Accept`,`text/event-stream`),i!=null&&(n.transformRequest?i=n.transformRequest(i,M9(n.headers)):a.get(`Content-Type`)?.includes(`application/json`)&&typeof i==`object`&&!(i instanceof FormData)&&!(i instanceof Blob)&&!(i instanceof ArrayBuffer)&&(i=JSON.stringify(i)));let o=n.controller??new AbortController,s={method:n.method,credentials:n.credentials,mode:n.mode,headers:a,body:i,signal:o.signal};return{url:r,requestConfig:n,fetchConfig:s,controller:o}}put(e,t,n){return this.request({...n,url:e,method:`PUT`,data:t})}async request(e){let{url:t,fetchConfig:n,requestConfig:r,controller:i}=this.prepareRequest(e),a=r.timeout&&r.timeout>0?setTimeout(()=>i.abort(),r.timeout):void 0;try{let e=await fetch(t,n);a&&clearTimeout(a);let i,o=r.responseType||`json`;try{switch(o){case`json`:i=await e.json();break;case`text`:i=await e.text();break;case`blob`:i=await e.blob();break;case`arrayBuffer`:i=await e.arrayBuffer();break;case`formData`:i=await e.formData();break;default:i=await e.json()}}catch{i=null}r.transformResponse&&(i=r.transformResponse(i));let s={data:i,status:e.status,statusText:e.statusText,headers:e.headers,config:r};if(!(r.validateStatus||this.defaults.validateStatus)(e.status))throw j9(s.data?.error?.message||`Request failed with status code ${e.status}`,r,`ERR_BAD_RESPONSE`,s);let l=s;this.interceptors.response.forEach(e=>{if(e.fulfilled)try{l=e.fulfilled(l)}catch(t){throw e.rejected?e.rejected(t):t}}),l instanceof Promise&&(l=await l);let u=l.data;if(![0,`success`].includes(u.code))throw j9(u.message,r,u.code,l);return u.data}catch(e){if(a&&clearTimeout(a),e instanceof Error&&e.name===`AbortError`){console.warn(`User canceled request`,e.message);return}let t=e.isAxiosError===!0?e:j9(e.message,r,e.code,void 0);throw this.dispatchError(t),this.applyResponseErrorInterceptors(t)}}stream(e,t){return this.streamRequest({...t,url:e})}async streamRequest(e){let t=!1,n=e.onError,r=e=>{if(!t){let n=e;n.config||=s,this.dispatchError(n),t=!0}n?.(e)},i={...e,onError:r},{url:a,fetchConfig:o,requestConfig:s}=this.prepareRequest(i,!0);try{let e=await fetch(a,o);if(!(s.validateStatus||this.defaults.validateStatus)(e.status)){let t=`Request failed with status code ${e.status}`;try{let n=await e.json();n?.error?.message&&(t=n.error.message)}catch{t=`Request failed with status code ${e.status}`}r(j9(t,s,`ERR_BAD_RESPONSE`,void 0));return}i.onStart?.();let t=e.body?.pipeThrough(new window.TextDecoderStream).getReader();if(!t){r(Error(`IResponse body is not readable`));return}let n=``,l=e=>{try{return JSON.parse(e),!0}catch{return!1}};for(;;){let{value:e,done:r}=await t.read();if(r){i.onDone?.();break}(n+e.toString()).split(`
|
|
3488
3488
|
`).forEach(e=>{let t=e.replace(`data:`,``).trim();if(l(t)){let e=JSON.parse(t);i.onMessage?.(e),n=``}else t&&(n=t)})}}catch(e){if(e instanceof Error){if(e.name===`AbortError`){i.onDone?.();return}r(e)}throw e}}};function xBt(e,t){if(!t)return e;let n=new URLSearchParams;Object.keys(t).forEach(e=>{let r=t[e];r!=null&&(Array.isArray(r)?r.forEach(t=>n.append(e,String(t))):n.append(e,String(r)))});let r=n.toString();return r?`${e}${e.includes(`?`)?`&`:`?`}${r}`:e}function j9(e,t,n,r){let i=Error(e);return i.config=t,i.code=String(n),i.response=r,i.isAxiosError=!0,i}function M9(e){return A9(e)}function SBt(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function N9(e,t){let n={...e};for(let r in t){let i=t[r];if(SBt(i)){let t=e[r];n[r]=N9(t||{},i)}else n[r]=i}return n}new bBt;var CBt=new Set([`POST`,`PUT`,`PATCH`,`DELETE`]),wBt=new Set([`GET`,`HEAD`,`OPTIONS`]);function TBt(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null}function EBt(e,t){let{headers:n,data:r}=t.requestData;!n&&!r||e.interceptors.request.use(e=>{let t=e,i=(e.method??`GET`).toUpperCase();if(n){let r=A9(n);if(r&&Object.keys(r).length>0){let n=A9(e.headers)??{};t={...t,headers:{...n,...r}}}}if(r){let n=A9(r);if(n&&Object.keys(n).length>0){if(CBt.has(i)){let r=A9(e.data);r==null?t={...t,data:n}:TBt(r)?t={...t,data:{...n,...r}}:console.warn(`[chat-helper] requestData.data 无法注入:当前请求体不是普通对象(FormData/Blob/string 等),已跳过合并。`,{method:i,existingType:typeof r})}else if(wBt.has(i)){let r=e.params??{};t={...t,params:{...n,...r}}}}}return t})}var DBt=e=>{let t=new bBt({baseURL:e.requestData.urlPrefix});return EBt(t,e),e.interceptors?.request&&t.interceptors.request.use(e.interceptors.request),e.interceptors?.response&&t.interceptors.response.use(e.interceptors.response),{fetchClient:t,reset:e=>{t.defaults.baseURL=e.requestData.urlPrefix,t.interceptors.request.clear(),t.interceptors.response.clear(),EBt(t,e),e.interceptors?.request&&t.interceptors.request.use(e.interceptors.request),e.interceptors?.response&&t.interceptors.response.use(e.interceptors.response)}}},OBt=e=>({getAgentInfo:t=>e.get(`agent/info/`,void 0,t).then(sBt)}),kBt=e=>({getMessages:(t,n,r)=>e.get(`session_content/content/`,{session_code:t,limit:n},r).then(e=>e.map(C9)),plusMessage:(t,n)=>e.post(`session_content/`,cBt(t),n).then(C9),modifyMessage:(t,n)=>e.put(`session_content/${t.id}/`,cBt(t),n).then(C9),deleteMessage:(t,n)=>e.delete(`session_content/${t}/`,void 0,n),batchDeleteMessages:(t,n)=>e.post(`session_content/batch_delete/`,{ids:t},n),shareMessages:(t,n,r,i)=>e.post(`share/`,{session_code:t,content_ids:n,...r?{expired_at:r}:{}},i),stopChat:(t,n)=>e.post(`session_content/stop/`,{session_code:t},n),getFlowAgentTaskInfo:(t,n)=>e.get(`flow_agent/${t}/task_info/`,void 0,n),getFlowAgentTaskNodeInfo:(t,n,r)=>e.get(`flow_agent/${t}/task_node_info/${n}/`,void 0,r),retryFlowAgentTaskNode:(t,n,r,i)=>e.post(`flow_agent/${t}/node/${n}/retry/`,{task_id:r},i),skipFlowAgentTaskNode:(t,n,r,i)=>e.post(`flow_agent/${t}/node/${n}/skip/`,{task_id:r},i),userOperation:(t,n,r,i)=>e.post(`user_operation/`,{session_code:t,operation:n,payload:r},i)}),ABt=`upload_file`,jBt=e=>{let t=e.split(`.`).pop();if(!t||t===e)return``;let n=t.replace(/[^A-Za-z0-9]/g,``).slice(0,20).toLowerCase();return n?`.${n}`:``},MBt=e=>`${ABt}_${`${Date.now()}_${Math.random().toString(36).slice(2,8)}`}${jBt(e.name)}`,NBt=e=>`attachment; filename="${e}"`,PBt=e=>({clearSession:(t,n)=>e.post(`chat_completion/${t}/clear/`,void 0,n),getSessions:t=>e.get(`session/`,void 0,t).then(e=>e.map(w9)),plusSession:(t,n)=>e.post(`session/`,lBt(t),n).then(e=>w9(e)),modifySession:(t,n)=>e.put(`session/${t.sessionCode}/`,lBt(t),n).then(e=>w9(e)),deleteSession:(t,n)=>e.delete(`session/${t}/`,void 0,n),batchDeleteSessions:(t,n)=>e.post(`session/batch_delete/`,{session_codes:t},n),getSession:(t,n)=>e.get(`session/${t}/`,void 0,n).then(e=>w9(e)),postSessionFeedback:(t,n)=>e.post(`session_feedback/`,uBt(t),n).then(e=>dBt(e)),getSessionFeedbackReasons:(t,n)=>e.get(`session_feedback/reasons/`,{rate:t},n),renameSession:(t,n)=>e.post(`session/${t}/ai_rename/`,void 0,n).then(e=>w9(e)),uploadFile:(t,n,r)=>{let i=MBt(n),a=encodeURIComponent(i),o=A9(r?.headers)??{};return n.arrayBuffer().then(n=>e.post(`session/${t}/upload/${a}/`,n,{...r,headers:{...o,"Content-Disposition":NBt(i)}}))},isResumeSession:(t,n)=>e.get(`session/${t}/is_resume/`,void 0,n)}),FBt=e=>({agent:OBt(e),session:PBt(e),message:kBt(e),fetchClient:e}),IBt=e=>{let{fetchClient:t,reset:n}=DBt(e);return{...FBt(t),reset:n,onError:t.onError.bind(t)}},LBt=()=>({agent:null,http:null,message:null,session:null,registerAgent(e){this.agent=e},registerHttp(e){this.http=e},registerMessage(e){this.message=e},registerSession(e){this.session=e}}),RBt=e=>{let n=(0,t.ref)([]),r=(0,t.ref)(null),i=(0,t.ref)(!1),a=(0,t.ref)(!1),o=(0,t.ref)(!1),s=(0,t.ref)(!1),l=(0,t.ref)(!1),u=(0,t.ref)(!1),d=(0,t.ref)(!1),f=e=>{n.value=n.value.map(t=>t.sessionCode===e.sessionCode?{...t,...e}:t),r.value?.sessionCode===e.sessionCode&&(r.value=n.value.find(t=>t.sessionCode===e.sessionCode)??r.value)},p=()=>(a.value=!0,e.http?.session.getSessions().then(e=>{n.value=e}).finally(()=>{a.value=!1})),m=async(t,i)=>{e.agent?.abortChat();let a=i?.loadMessages!==!1,o=n.value.find(e=>e.sessionCode===t);!a&&o?r.value=o:await h(t),a?(await e.message?.getMessages(t),e.agent?.resumeStreamingChat(t),e.agent?.pollResumeSession(t)):e.message&&(e.message.list.value=[])},h=t=>(i.value=!0,e.http?.session.getSession(t).then(e=>{r.value=e}).finally(()=>{i.value=!1}));return{list:n,current:r,isCurrentLoading:i,isListLoading:a,isCreateLoading:o,isUpdateLoading:s,isDeleteLoading:l,isBatchDeleteLoading:u,getSessions:p,chooseSession:m,getSession:h,createSession:async(t,r)=>{o.value=!0;try{let i=await e.http?.session.plusSession(t);i&&(n.value.unshift(i),await m(i.sessionCode,{loadMessages:r?.loadMessages??!1}))}finally{o.value=!1}},updateSession:t=>(s.value=!0,e.http?.session.modifySession(t).then(e=>{f(e)}).finally(()=>{s.value=!1})),deleteSession:async t=>{l.value=!0;try{await e.http?.session.deleteSession(t),n.value=n.value.filter(e=>e.sessionCode!==t),r.value?.sessionCode===t&&n.value[0]?.sessionCode&&await m(n.value[0].sessionCode)}finally{l.value=!1}},batchDeleteSessions:async t=>{if(t.length!==0){u.value=!0;try{await e.http?.session.batchDeleteSessions(t);let i=new Set(t);n.value=n.value.filter(e=>!i.has(e.sessionCode)),r.value&&i.has(r.value.sessionCode)&&(n.value.length>0?await m(n.value[0].sessionCode):(r.value=null,e.message&&(e.message.list.value=[])))}finally{u.value=!1}}},postSessionFeedback:t=>e.http?.session.postSessionFeedback(t),getSessionFeedbackReasons:t=>e.http?.session.getSessionFeedbackReasons(t),renameSession:t=>(d.value=!0,e.http?.session.renameSession(t).then(e=>{f({sessionCode:e.sessionCode,sessionName:e.sessionName})}).finally(()=>{d.value=!1})),uploadFile:(t,n)=>e.http?.session.uploadFile(t,n),reset:()=>{n.value=[],r.value=null,i.value=!1,a.value=!1,o.value=!1,s.value=!1,l.value=!1,u.value=!1,d.value=!1}}},P9=e=>{let t=LBt(),n=IBt(e),r=_Bt(t,e.protocol),i=pBt(t),a=RBt(t);return t.registerHttp(n),t.registerMessage(i),t.registerAgent(r),t.registerSession(a),{agent:r,session:a,message:i,http:n,reset:e=>{n.reset(e),r.reset(e.protocol),i.reset(),a.reset()},onError:n.onError}},zBt=new Set([`context_type`,`__label`,`__key`,`__value`]);function BBt(e,n){return{urlPrefix:e,headers:()=>A9((0,t.toValue)(n)?.headers),data:()=>A9((0,t.toValue)(n)?.data)}}function VBt(e){return e?Array.isArray(e)?e.map(e=>{if(e.__key)return e;let t=Object.entries(e).filter(([e])=>!zBt.has(e));if(t.length===0)return e;let[n,r]=t[0];return{...e,[n]:r,context_type:e.context_type??`input`,__label:e.__label??n,__key:e.__key??n,__value:e.__value??r}}):Object.entries(e).map(([e,t])=>({[e]:t,context_type:`input`,__label:e,__key:e,__value:t})):[]}function F9(e,t){if(!t)return e;let n=t()?.context;if(!n)return e;let r=VBt(n);return r.length===0?e:HBt(e,r)}function HBt(e,t){if(t.length===0)return e??{};let n=e??{},r=n.extra??{},i=r.context??[],a=new Set(t.map(e=>e.__key).filter(Boolean)),o=i.filter(e=>{let t=e.__key;return!t||!a.has(t)});return{...n,extra:{...r,context:[...o,...t]}}}function UBt(e){return e.some(e=>{if(!(`property`in e))return!0;let{property:t}=e;return!t?.extra?.pause})}function I9(e,t){let n=null;for(let r of e)if(r.role===`user`&&r.id!==void 0&&(n=r),r===t)break;return n}function WBt(e,t){let n=I9(e,t);if(n?.id!==void 0)return typeof n.id==`number`?n.id:Number(n.id)}function GBt(e){if(!e)return[];if(typeof e!=`string`)return[{type:`text`,content:e}];let t=[],n=/```custom-component\s*\n([\s\S]*?)\n```/g,r=0,i;for(;(i=n.exec(e))!==null;){if(i.index>r){let n=e.slice(r,i.index).trim();n&&t.push({type:`text`,content:n})}try{let e=JSON.parse(i[1]);t.push({type:`custom`,data:e,raw:i[1]})}catch{t.push({type:`text`,content:i[0]})}r=i.index+i[0].length}if(r<e.length){let n=e.slice(r).trim();n&&t.push({type:`text`,content:n})}return t}var KBt=e=>{let t=document.cookie.match(RegExp(`(^| )${e}=([^;]*)(;|$)`));return t?t[2]:``},qBt=e=>e.endsWith(`/`)?e:`${e}/`,L9=e=>{if(!e)return e;try{let t=new URL(e,window.location.origin);return t.protocol=window.location.protocol,qBt(t.toString())}catch(t){return console.warn(`Failed to normalize URL:`,t),qBt(e)}};async function JBt(e){if(typeof navigator<`u`&&`clipboard`in navigator)try{return await navigator.clipboard.writeText(e),!0}catch{}let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.left=`-9999px`,t.style.top=`-9999px`,t.style.opacity=`0`,document.body.appendChild(t),t.focus(),t.select();try{return document.execCommand(`copy`)}catch{return!1}finally{document.body.removeChild(t)}}function YBt(){let e=window.navigator.userAgent.toLowerCase(),t=window.navigator.platform.toLowerCase();return t.includes(`mac`)||e.includes(`mac`)?`mac`:t.includes(`win`)||e.includes(`win`)?`windows`:t.includes(`linux`)||e.includes(`linux`)?`linux`:`unknown`}function XBt(){return ZBt()?`Cmd + I`:`Ctrl + I`}function ZBt(){return YBt()===`mac`}function QBt(e){let t=ZBt()?e.metaKey:e.ctrlKey,n=e.key.toLowerCase()===`i`;return t&&n&&!e.shiftKey&&!e.altKey}var $Bt=KBt(`blueking_language`)||`zh-cn`,eVt={小鲸:`BK GPT`,关闭:`close`,发送:`Send`,请输入:`Please input`,昨天:`yesterday`,"3天前":`3 days ago`,"5天前":`5 days ago`,"1周前":`1 week ago`,更早:`Older`,删除:`Delete`,恢复默认大小:`Restore default size`,"AI 小鲸":`AI BK GPT`,新增会话:`New chat`,历史会话:`History session`,停止生成:`Stop generating`,复制:`Copy`,编辑:`Edit`,今天:`Today`,搜索会话名称:`Search session name`,重命名:`Rename`,自动生成命名:`Auto generate name`,分享会话:`Share session`,无智能体使用权限:`No permission to use this agent`,暂无使用权限:`No permission`,请输入新的会话名称:`Please enter new session name`,"确认删除会话 ?":`Confirm delete session?`,搜索为空:`No search results`,暂无对话:`No conversations`,转人工:`Transfer to human`,缩小高度:`Shrink height`,全选:`Select all`,取消:`Cancel`,确定:`Confirm`,分享链接已复制到剪贴板:`Share link copied to clipboard`,请求失败:`Request failed`,当前已是新会话:`Already in a new session`,"正在创建会话...":`Creating session...`},tVt={重命名:`重命名`,自动生成命名:`自动生成命名`,分享会话:`分享会话`,全选:`全选`,取消:`取消`,确定:`确定`,分享链接已复制到剪贴板:`分享链接已复制到剪贴板`,请求失败:`请求失败`},R9=e=>$Bt===`en`?eVt[e]||e:tVt[e]||e;function nVt(e){let{triggerRef:n,panelComponent:r,panelProps:i={},tippyOptions:a={}}=e,o=(0,t.ref)(null),s=null,l=()=>(s||=document.createElement(`div`),(0,t.render)((0,t.h)(r,{...i,onClose:p}),s),s),u=e=>{let t=e.target,r=n.value;if(r&&r.contains(t))return;let i=document.querySelector(`.tippy-box[data-theme~="history-panel"]`);if(i&&i.contains(t))return;let a=document.querySelector(`.tippy-box[data-theme~="more-menu-light"]`);a&&a.contains(t)||o.value?.state.isVisible&&o.value.hide()},d=()=>{if(!n.value||o.value)return;let e={placement:`bottom-end`,offset:[0,8],appendTo:document.querySelector(`.ai-blueking-container-wrapper`)||document.body};o.value=du(n.value,{content:l(),interactive:!0,trigger:`manual`,theme:`light history-panel`,arrow:!1,hideOnClick:!1,animation:`scale`,duration:200,delay:[0,0],...e,...a,onShow:()=>{o.value&&s&&o.value.setContent(l()),setTimeout(()=>{document.addEventListener(`click`,u,!1)},0)},onHidden:()=>{document.removeEventListener(`click`,u,!1)}})},f=()=>{o.value||d(),o.value?.show()},p=()=>{o.value?.hide()},m=()=>{o.value||d(),o.value?.state.isVisible?p():f()},h=e=>{e.stopPropagation(),m()},g=()=>{o.value&&=(o.value.destroy(),null),s&&=((0,t.render)(null,s),null),document.removeEventListener(`click`,u,!1)};return(0,t.onBeforeUnmount)(()=>{g()}),{show:f,hide:p,toggle:m,handleTriggerClick:h,destroy:g,isVisible:()=>o.value?.state.isVisible??!1}}var rVt={class:`history-group`},iVt={class:`history-group-title`},aVt={class:`history-group-list`},oVt=(0,t.defineComponent)({__name:`history-group`,props:{currentSessionCode:{},sessions:{},title:{}},setup(e){let n=e;return(e,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,rVt,[(0,t.createElementVNode)(`div`,iVt,[(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)(n.title),1)]),(0,t.createElementVNode)(`div`,aVt,[(0,t.renderSlot)(e.$slots,`default`,{},void 0,!0)])]))}}),z9=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},sVt=z9(oVt,[[`__scopeId`,`data-v-3b603cb6`]]),cVt={class:`history-item-actions`},lVt=z9((0,t.defineComponent)({__name:`history-item`,props:{isActive:{type:Boolean},isEditing:{type:Boolean},session:{}},emits:[`click`,`delete`,`edit`,`rename-cancel`,`rename-confirm`],setup(e,{emit:n}){let r=e,i=n,a=vhe,o=(0,t.ref)(null),s=(0,t.ref)(``);(0,t.watch)(()=>r.isEditing,e=>{e&&(s.value=r.session.sessionName,(0,t.nextTick)(()=>{if(o.value)try{let e=o.value;e&&typeof e.focus==`function`&&e.focus();let t=e.$el?.querySelector(`input`);t&&typeof t.select==`function`&&t.select()}catch(e){console.warn(`Failed to focus edit input:`,e)}}))});let l=()=>{r.isEditing||i(`click`,r.session)},u=()=>{i(`edit`,r.session)},d=()=>{i(`delete`,r.session.sessionCode)},f=()=>{let e=s.value.trim();e&&e!==r.session.sessionName?i(`rename-confirm`,r.session.sessionCode,e):i(`rename-cancel`)},p=()=>{i(`rename-cancel`)},m=(e,t)=>{t.key===`Enter`?f():t.key===`Escape`&&p()};return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`history-item`,{active:r.isActive}]),onClick:l},[r.isEditing?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(ts),{key:1,ref_key:`editInputRef`,ref:o,modelValue:s.value,"onUpdate:modelValue":n[1]||=e=>s.value=e,style:{width:`100%`,height:`28px`},onBlur:f,onKeyup:m,onClick:n[2]||=(0,t.withModifiers)(()=>{},[`stop`])},null,8,[`modelValue`])):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:0},[(0,t.createVNode)((0,t.unref)(kde),{style:{width:`calc(100% - 42px)`}},{default:(0,t.withCtx)(()=>[(0,t.createTextVNode)((0,t.toDisplayString)(r.session.sessionName),1)]),_:1}),(0,t.createElementVNode)(`span`,cVt,[(0,t.withDirectives)((0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-bianji`,onClick:(0,t.withModifiers)(u,[`stop`])},null,512),[[(0,t.unref)(a),{content:(0,t.unref)(R9)(`编辑`),boundary:`parent`}]]),(0,t.createVNode)((0,t.unref)(Rme),{title:(0,t.unref)(R9)(`确认删除会话 ?`),content:`删除操作无法撤回,请谨慎操作!`,"confirm-config":{theme:`danger`},trigger:`click`,boundary:`parent`,onConfirm:d},{default:(0,t.withCtx)(()=>[(0,t.withDirectives)((0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-shanchu`,onClick:n[0]||=(0,t.withModifiers)(()=>{},[`stop`])},null,512),[[(0,t.unref)(a),{content:(0,t.unref)(R9)(`删除`),boundary:`parent`}]])]),_:1},8,[`title`])])],64))],2))}}),[[`__scopeId`,`data-v-fea14d3a`]]),uVt={class:`history-search`},dVt={class:`input-icon`},fVt=z9((0,t.defineComponent)({__name:`history-search`,props:{modelValue:{default:``},placeholder:{default:``}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,i=n,a=e=>{i(`update:modelValue`,e)};return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,uVt,[(0,t.createVNode)((0,t.unref)(ts),{"model-value":r.modelValue,behavior:`simplicity`,placeholder:r.placeholder||(0,t.unref)(R9)(`搜索会话名称`),style:{height:`22px`},"onUpdate:modelValue":a},{suffix:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`span`,dVt,[(0,t.createVNode)((0,t.unref)(Ja))])]),_:1},8,[`model-value`,`placeholder`])]))}}),[[`__scopeId`,`data-v-e7ff40b2`]]),pVt={class:`bkai-history-dropdown`},mVt={class:`history-dropdown-header`},hVt={class:`history-dropdown-header-title`},gVt={class:`history-dropdown-content`},_Vt=z9((0,t.defineComponent)({__name:`index`,props:{sessionBusinessManager:{}},emits:[`close`,`session-delete`,`session-rename`,`session-switch`],setup(e,{emit:n}){let r=e,i=n,a=(0,t.ref)(``),o=(0,t.ref)(null),s=(0,t.computed)(()=>r.sessionBusinessManager.currentSession.value?.sessionCode),l=(0,t.computed)(()=>{let e={today:{key:`today`,alias:R9(`今天`),sessionList:[]},yesterday:{key:`yesterday`,alias:R9(`昨天`),sessionList:[]},"3days":{key:`3days`,alias:R9(`3天前`),sessionList:[]},"5days":{key:`5days`,alias:R9(`5天前`),sessionList:[]},"1week":{key:`1week`,alias:R9(`1周前`),sessionList:[]},before:{key:`before`,alias:R9(`更早`),sessionList:[]}},t=r.sessionBusinessManager.sessionList.value.filter(e=>e.sessionName.toLowerCase().includes(a.value.toLowerCase())),n=new Date,i=new Date(n);i.setDate(i.getDate()-1);let o=new Date(n);o.setDate(n.getDate()-3);let s=new Date(n);s.setDate(n.getDate()-5);let l=new Date(n);l.setDate(n.getDate()-7);for(let r of t){let t=new Date(r.createdAt||``),a=t.toDateString();a===n.toDateString()?e.today.sessionList.push(r):a===i.toDateString()?e.yesterday.sessionList.push(r):t>=o&&t>s?e[`3days`].sessionList.push(r):t>=s&&t>l?e[`5days`].sessionList.push(r):t>=l?e[`1week`].sessionList.push(r):e.before.sessionList.push(r)}for(let t of Object.values(e))t.sessionList.sort((e,t)=>{let n=new Date(e.createdAt||0).getTime();return new Date(t.createdAt||0).getTime()-n});return Object.values(e).filter(e=>e.sessionList.length>0)}),u=e=>s.value===e,d=e=>{u(e.sessionCode)||(i(`session-switch`,e.sessionCode),i(`close`))},f=e=>{o.value=e.sessionCode},p=e=>{i(`session-delete`,e)},m=(e,t)=>{let n=r.sessionBusinessManager.sessionList.value.find(t=>t.sessionCode===e);n&&(n.sessionName=t),o.value=null,i(`session-rename`,e,t)},h=()=>{o.value=null};return(e,n)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,pVt,[(0,t.createElementVNode)(`div`,mVt,[(0,t.createElementVNode)(`h1`,hVt,(0,t.toDisplayString)((0,t.unref)(R9)(`历史会话`)),1),(0,t.createVNode)(fVt,{modelValue:a.value,"onUpdate:modelValue":n[0]||=e=>a.value=e,placeholder:(0,t.unref)(R9)(`搜索会话名称`)},null,8,[`modelValue`,`placeholder`])]),(0,t.createElementVNode)(`div`,gVt,[l.value.length>0?((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,{key:0},(0,t.renderList)(l.value,e=>((0,t.openBlock)(),(0,t.createBlock)(sVt,{key:e.key,"current-session-code":s.value,sessions:e.sessionList,title:e.alias},{default:(0,t.withCtx)(()=>[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(e.sessionList,e=>((0,t.openBlock)(),(0,t.createBlock)(lVt,{key:e.sessionCode,"is-active":u(e.sessionCode),"is-editing":o.value===e.sessionCode,session:e,onClick:d,onDelete:p,onEdit:f,onRenameCancel:h,onRenameConfirm:m},null,8,[`is-active`,`is-editing`,`session`]))),128))]),_:2},1032,[`current-session-code`,`sessions`,`title`]))),128)):((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Ys),{key:1,description:a.value?(0,t.unref)(R9)(`搜索为空`):(0,t.unref)(R9)(`暂无对话`),scene:`part`,style:{"margin-top":`100px`},type:a.value?`search-empty`:`empty`},null,8,[`description`,`type`]))])]))}}),[[`__scopeId`,`data-v-143fb0ef`]]);function vVt(e){return e.sessionBusinessManager?nVt({triggerRef:e.triggerRef,panelComponent:_Vt,panelProps:{sessionBusinessManager:e.sessionBusinessManager,onSessionSwitch:e.onSessionSwitch,onSessionDelete:e.onSessionDelete,onSessionRename:e.onSessionRename},tippyOptions:{placement:`bottom-end`,offset:[0,8],appendTo:()=>document.querySelector(`.ai-blueking-panel`)||document.body}}):{handleTriggerClick:()=>{},show:()=>{},hide:()=>{},toggle:()=>{},destroy:()=>{},isVisible:()=>!1}}var yVt={class:`left-section`},bVt={class:`logo`},xVt=[`src`],SVt={key:0,class:`rename-tooltip`},CVt={class:`rename-content`},wVt={key:0,class:`tippy-dropdown-menu`},TVt={key:1,class:`bkai-icon bkai-auto-refresh-line`},EVt={class:`right-section`},DVt=z9((0,t.defineComponent)({__name:`index`,props:{title:{default:``},agentName:{default:``},sessionName:{default:``},isCompressionHeight:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},showHistoryIcon:{type:Boolean,default:!0},showNewChatIcon:{type:Boolean,default:!0},showCompressionIcon:{type:Boolean,default:!0},showMoreIcon:{type:Boolean,default:!0},enableChatSession:{type:Boolean,default:!0},hasPermission:{type:Boolean,default:!0},chatGroup:{default:()=>({enabled:!1,staff:[],username:``})},hasSessionContents:{type:Boolean},autoGenerateLoading:{type:Boolean},dropdownMenuConfig:{default:()=>({showRename:!0,showAutoGenerate:!0,showShare:!1})},sessionBusinessManager:{default:void 0},renderMode:{default:Q8.Chat}},emits:[`close`,`toggle-compression`,`new-chat`,`history-click`,`auto-generate-name`,`help-click`,`rename`,`share`,`history-session-switch`,`history-session-delete`,`history-session-rename`,`new-chat-created`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=vhe,s=(0,t.ref)(null),l=(0,t.ref)(null),u=(0,t.useTemplateRef)(`moreMenuTippyRef`),d=(0,t.ref)(!1),f=(0,t.ref)(``),p=(0,t.ref)(null),m=(0,t.ref)(!1),h=()=>document.querySelector(`.ai-blueking-panel`)||document.body,g=null,_=()=>{!l.value||!i.sessionBusinessManager||(g=vVt({triggerRef:l,sessionBusinessManager:i.sessionBusinessManager,onSessionSwitch:e=>a(`history-session-switch`,e),onSessionDelete:e=>a(`history-session-delete`,e),onSessionRename:(e,t)=>a(`history-session-rename`,e,t)}))},v=(0,t.computed)(()=>i.hasPermission?i.enableChatSession?i.title||`${i.agentName||``}-${i.sessionName||``}`:i.agentName:R9(`无智能体使用权限`)),y=(0,t.computed)(()=>i.isCompressionHeight?`bkai-morenchicun`:`bkai-yasuo`),b=(0,t.computed)(()=>i.isCompressionHeight?R9(`恢复默认尺寸`):R9(`缩小高度`)),x=(0,t.computed)(()=>i.hasPermission),S=e=>x.value?e:R9(`暂无使用权限`),C=()=>({cursor:x.value?`pointer`:`not-allowed`}),w=(0,t.ref)(!1),T=async()=>{if(!w.value){w.value=!0;try{if(i.sessionBusinessManager)try{let e=await i.sessionBusinessManager.createNewSession();e&&a(`new-chat-created`,{sessionCode:e.sessionCode,sessionName:e.sessionName,createdAt:e.createdAt})}catch(e){console.error(`Failed to create new session:`,e),rc({theme:`error`,message:R9(`创建会话失败`)})}a(`new-chat`)}finally{w.value=!1}}},E=e=>{e.stopPropagation(),i.sessionBusinessManager?(g||_(),g&&g.handleTriggerClick(e)):a(`history-click`,e)},D=()=>{a(`help-click`)},O=e=>{e.stopPropagation(),g&&g.isVisible()&&g.hide(),u.value&&(m.value?u.value.hide():u.value.show())},k=()=>{u.value?.hide(),M()},A=()=>{!i.hasSessionContents||i.autoGenerateLoading||a(`auto-generate-name`)},j=()=>{i.hasSessionContents&&(u.value?.hide(),a(`share`))},M=()=>{document.removeEventListener(`click`,I),f.value=i.sessionName||``,d.value=!0,setTimeout(()=>{document.addEventListener(`click`,I)},100),setTimeout(()=>{if(p.value)try{let e=p.value;e&&typeof e.focus==`function`&&e.focus();let t=e.$el?.querySelector(`input`);t&&typeof t.select==`function`&&t.select()}catch(e){console.warn(`Failed to focus rename input:`,e)}},100)},N=()=>{let e=f.value.trim();if(!e){P();return}a(`rename`,e),d.value=!1,f.value=``},P=()=>{d.value=!1,f.value=``},F=(e,t)=>{f.value=e,t.key===`Enter`?N():t.key===`Escape`&&P()},I=e=>{if(!d.value)return;let t=e.target,n=document.querySelector(`.rename-tooltip`);n&&!n.contains(t)&&P()};return(0,t.watch)(()=>i.autoGenerateLoading,(e,t)=>{t&&!e&&m.value&&u.value?.hide()}),(0,t.onMounted)(()=>{i.sessionBusinessManager&&_(),document.addEventListener(`click`,I)}),(0,t.onBeforeUnmount)(()=>{g&&=(g.destroy(),null),document.removeEventListener(`click`,I)}),n({headerRef:s,historyIconRef:l}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{ref_key:`headerRef`,ref:s,class:(0,t.normalizeClass)([`ai-header drag-handle`,{draggable:i.draggable}])},[(0,t.createElementVNode)(`div`,yVt,[(0,t.createElementVNode)(`div`,bVt,[(0,t.createElementVNode)(`img`,{alt:`logo`,src:(0,t.unref)(oBt)},null,8,xVt)]),(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`title`,{"title-with-tooltip":d.value}])},[(0,t.createTextVNode)((0,t.toDisplayString)(v.value)+` `,1),(0,t.createCommentVNode)(` 重命名 tooltip 直接绑定在 title 上 `),d.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,SVt,[(0,t.createElementVNode)(`div`,CVt,[(0,t.createVNode)((0,t.unref)(ts),{ref_key:`renameInputRef`,ref:p,modelValue:f.value,"onUpdate:modelValue":r[0]||=e=>f.value=e,class:`rename-input`,placeholder:(0,t.unref)(R9)(`请输入新的会话名称`),onKeyup:F},null,8,[`modelValue`,`placeholder`]),(0,t.createElementVNode)(`div`,{class:`rename-buttons`},[(0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-check-1 rename-btn confirm-btn`,onClick:N}),(0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-close rename-btn cancel-btn`,onClick:P})])])])):(0,t.createCommentVNode)(`v-if`,!0)],2),(0,t.createCommentVNode)(` 更多图标下拉菜单 - 使用 vue-tippy `),i.showMoreIcon&&x.value?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(ql),{key:0,ref_key:`moreMenuTippyRef`,ref:u,arrow:!1,"append-to":h,offset:[0,4],interactive:``,placement:`bottom-start`,theme:`ai-blueking-light more-menu-light light`,trigger:`manual`,onHidden:r[1]||=e=>m.value=!1,onShown:r[2]||=e=>m.value=!0},{content:(0,t.withCtx)(()=>[m.value?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,wVt,[i.dropdownMenuConfig?.showRename?((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:0,class:`tippy-menu-item`,onClick:k},[r[7]||=(0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-bianji`},null,-1),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(R9)(`重命名`)),1)])):(0,t.createCommentVNode)(`v-if`,!0),i.dropdownMenuConfig?.showAutoGenerate?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:1,class:(0,t.normalizeClass)([`tippy-menu-item`,{disabled:!i.hasSessionContents||i.autoGenerateLoading}]),onClick:A},[i.autoGenerateLoading?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Io),{key:0,mode:`spin`,size:`mini`,theme:`primary`})):((0,t.openBlock)(),(0,t.createElementBlock)(`i`,TVt)),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(R9)(`自动生成命名`)),1)],2)),[[(0,t.unref)(Yl),{content:i.hasSessionContents?``:(0,t.unref)(R9)(`请先发起会话`),theme:`ai-blueking-tooltip`,arrow:!0,delay:[300,0],appendTo:h}]]):(0,t.createCommentVNode)(`v-if`,!0),i.dropdownMenuConfig?.showShare&&i.renderMode!==(0,t.unref)(Q8).Test?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:2,class:(0,t.normalizeClass)([`tippy-menu-item`,{disabled:!i.hasSessionContents}]),onClick:j},[r[8]||=(0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-fenxiang`},null,-1),(0,t.createElementVNode)(`span`,null,(0,t.toDisplayString)((0,t.unref)(R9)(`分享会话`)),1)],2)),[[(0,t.unref)(Yl),{content:i.hasSessionContents?``:(0,t.unref)(R9)(`请先发起会话`),theme:`ai-blueking-tooltip`,arrow:!0,delay:[300,0],appendTo:h}]]):(0,t.createCommentVNode)(`v-if`,!0)])):(0,t.createCommentVNode)(`v-if`,!0)]),default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`span`,{class:`bkai-icon bkai-more`,onClick:O})]),_:1},512)):(0,t.createCommentVNode)(`v-if`,!0)]),(0,t.renderSlot)(n.$slots,`headerLeft`,{},void 0,!0),(0,t.createElementVNode)(`div`,EVt,[(0,t.createCommentVNode)(` 新增会话按钮 `),i.showNewChatIcon&&e.enableChatSession!==!1?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:0,class:(0,t.normalizeClass)([`bkai-icon`,`bkai-xinzengliaotian`,{disabled:!x.value||w.value||!e.hasSessionContents}]),style:(0,t.normalizeStyle)(C()),onClick:r[3]||=t=>x.value&&!w.value&&e.hasSessionContents?T():void 0},null,6)),[[(0,t.unref)(o),{content:w.value?(0,t.unref)(R9)(`正在创建会话...`):e.hasSessionContents?S((0,t.unref)(R9)(`新增会话`)):(0,t.unref)(R9)(`当前已是新会话`),boundary:`parent`}]]):(0,t.createCommentVNode)(`v-if`,!0),(0,t.createCommentVNode)(` 历史会话按钮 `),i.showHistoryIcon&&e.enableChatSession!==!1?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:1,ref_key:`historyIconRef`,ref:l,class:(0,t.normalizeClass)([`bkai-icon`,`bkai-history`,{disabled:!x.value}]),style:(0,t.normalizeStyle)(C()),onClick:r[4]||=e=>x.value?E(e):void 0},null,6)),[[(0,t.unref)(o),{content:S((0,t.unref)(R9)(`历史会话`)),boundary:`parent`}]]):(0,t.createCommentVNode)(`v-if`,!0),e.chatGroup?.enabled?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:2,class:`bkai-icon bkai-zhushou`,onClick:D},null,512)),[[(0,t.unref)(o),{content:(0,t.unref)(R9)(`转人工`),boundary:`parent`}]]):(0,t.createCommentVNode)(`v-if`,!0),i.showCompressionIcon?(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createElementBlock)(`i`,{key:3,class:(0,t.normalizeClass)([`bkai-icon`,y.value]),onClick:r[5]||=e=>a(`toggle-compression`)},null,2)),[[(0,t.unref)(o),{content:b.value,boundary:`parent`}]]):(0,t.createCommentVNode)(`v-if`,!0),(0,t.withDirectives)((0,t.createElementVNode)(`i`,{class:`bkai-icon bkai-close-line-2`,onClick:r[6]||=e=>a(`close`)},null,512),[[(0,t.unref)(o),{content:(0,t.unref)(R9)(`关闭`),boundary:`parent`}]])])],2))}}),[[`__scopeId`,`data-v-32672b9d`]]);function OVt(e){let t=L9(e);fetch(t,{method:`GET`,credentials:`include`}).catch(()=>{})}async function kVt(e){await Promise.all([e.agent.getAgentInfo(),e.session.getSessions()]);let t=e.agent.info.value?.saasUrl;t&&OVt(t)}var AVt=class{_isGenerating;_isStopLoading;agentModule;config;eventEmitter;messageModule;sessionModule;autoRenameSessionIfNeeded(e){let t=this.sessionModule;if(!t||this.messageModule.list.value.length!==1)return;let n=t.renameSession(e);n&&n.catch(e=>{console.error(`[ChatBusinessManager] Auto rename session failed:`,e)})}emit(e,t){this.eventEmitter?.emit(e,t)}constructor(e,n,r=null,i=null,a={}){this.agentModule=e,this.messageModule=n,this.sessionModule=r,this.eventEmitter=i,this.config=a,this._isGenerating=(0,t.ref)(!1),this._isStopLoading=(0,t.ref)(!1)}get isGenerating(){return this._isGenerating}get isStopLoading(){return this._isStopLoading}get isMessagesLoading(){return this.messageModule.isListLoading}get messages(){return this.messageModule.list}get openingRemark(){return this.config.openingRemark||``}get predefinedQuestions(){return this.config.predefinedQuestions||[]}async batchDeleteMessages(e){try{await this.messageModule.deleteMessages(e);let t=e.map(e=>e.id).filter(Boolean);this.emit(`messages-batch-deleted`,{messageIds:t})}catch(e){throw console.error(`Failed to batch delete messages:`,e),this.emit(`chat-error`,{action:`batch-delete-messages`,error:e}),e}}async deleteMessage(e){try{await this.messageModule.deleteMessages([e]),this.emit(`message-deleted`,{messageId:e.id})}catch(e){throw console.error(`Failed to delete message:`,e),this.emit(`chat-error`,{action:`delete-message`,error:e}),e}}handleStreamEnd(){this._isGenerating.value=!1,this.emit(`receive-end`,{})}handleStreamError(e){this._isGenerating.value=!1,this.emit(`receive-error`,{error:e})}handleStreamStart(){this._isGenerating.value=!0,this.emit(`receive-start`,{})}async regenerateFromAIMessages(e,t){try{if(!e||e.length===0)throw Error(`No AI messages provided`);let n=this.messages.value,r=I9(n,e[0]);if(!r)throw Error(`No user message found before AI messages`);let i=r.id;if(i===void 0)throw Error(`User message has no id`);await this.regenerateMessage(String(i),t)}catch(e){throw console.error(`Failed to regenerate from AI messages:`,e),this.emit(`chat-error`,{action:`regenerate`,error:e}),e}}async regenerateMessage(e,t){try{let n=this.messages.value,r=n.findIndex(t=>String(t.id)===e);if(r===-1)throw Error(`Message not found: ${e}`);let i=n[r];if(i.role!==y9.User)throw Error(`Can only regenerate from user messages`);let a=n.slice(r),o=typeof i.content==`string`?i.content:JSON.stringify(i.content),s=i.property;this._isGenerating.value=!0;let l=this.messageModule.deleteMessages(a);this.agentModule.chat(o,t,void 0,void 0,s),this.emit(`chat-regenerate`,{messageId:e}),l.catch(e=>{console.error(`[regenerateMessage] Delete API error:`,e)})}catch(e){throw console.error(`Failed to regenerate message:`,e),this._isGenerating.value=!1,this.emit(`chat-error`,{action:`regenerate`,error:e}),e}}async resendMessageWithProperty(e,t,n,r){try{let i=this.messages.value,a=i.findIndex(t=>String(t.id)===e);if(a===-1)throw Error(`Message not found: ${e}`);if(i[a].role!==y9.User)throw Error(`Can only resend user messages`);let o=i.slice(a);this._isGenerating.value=!0;let s=this.messageModule.deleteMessages(o);this.agentModule.chat(n,t,void 0,void 0,r),this.emit(`chat-resend`,{messageId:e}),s.catch(e=>{console.error(`[resendMessageWithProperty] Delete API error:`,e)})}catch(e){throw console.error(`Failed to resend message with property:`,e),this._isGenerating.value=!1,this.emit(`chat-error`,{action:`resend`,error:e}),e}}async retryMessage(e){try{console.warn(`retryMessage not implemented yet`),this.emit(`chat-retry`,{messageId:e})}catch(e){throw console.error(`Failed to retry message:`,e),this.emit(`chat-error`,{action:`retry`,error:e}),e}}async sendMessage(e,t,n={}){try{if(!t)throw Error(`No active session. Please create or select a session first.`);this._isGenerating.value=!0,this.emit(`send-message`,{content:e}),await this.agentModule.chat(e,t,void 0,void 0,n.property),this.autoRenameSessionIfNeeded(t)}catch(e){throw console.error(`Failed to send message:`,e),this._isGenerating.value=!1,this.emit(`chat-error`,{action:`send`,error:e}),e}}async stopGeneration(){let e=this.sessionModule?.current?.value?.sessionCode??``;this._isStopLoading.value=!0;try{await this.agentModule.stopChat(e),this._isGenerating.value=!1,this.emit(`stop`,{})}catch(e){console.error(`Failed to stop generation:`,e),this.emit(`chat-error`,{action:`stop`,error:e})}finally{this._isStopLoading.value=!1}}},B9=class{agentModule;config;eventEmitter;messageModule;sessionModule;emit(e,t){this.eventEmitter?.emit(e,t)}constructor(e,t=null,n=null,r={},i=null){this.sessionModule=e,this.agentModule=t,this.eventEmitter=n,this.config=r,this.messageModule=i}get currentSession(){return this.sessionModule.current}get isCreateLoading(){return this.sessionModule.isCreateLoading}get isCurrentLoading(){return this.sessionModule.isCurrentLoading}get isDeleteLoading(){return this.sessionModule.isDeleteLoading}get isListLoading(){return this.sessionModule.isListLoading}get isUpdateLoading(){return this.sessionModule.isUpdateLoading}get sessionList(){return this.sessionModule.list}async createNewSession(){let e=this.currentSession.value;if(e?.sessionCode&&this.isCurrentSessionEmpty(e))return null;await this.loadSessions();let t=this.sessionList.value;if(t.length>0){let n=t[0];if(n.sessionCode===e?.sessionCode?this.isCurrentSessionEmpty(n):this.isSessionEmpty(n))return await this.switchSession(n.sessionCode,{loadMessages:!1}),null}return await this.createSession({name:`新会话`,sessionCode:this.generateSessionCode()}),this.sessionModule.current.value}generateSessionCode(){return`new_session_${Date.now()}`}async createSession(e={}){if(this.config.enableChatSession===!1)throw Error(`Chat session is disabled`);try{let t={sessionName:e.name||`新会话`,sessionCode:e.sessionCode||`session_${Date.now()}`,isTemporary:e.isTemporary||!1,sessionProperty:{labels:e.labels}};await this.sessionModule.createSession(t);let n=this.agentModule?.info.value;n&&this.agentModule?.handleRole(n,t.sessionCode),this.emit(`session-created`,{session:this.sessionModule.current.value})}catch(e){throw console.error(`Failed to create session:`,e),this.emit(`session-error`,{action:`create`,error:e}),e}}async deleteSession(e){try{await this.sessionModule.deleteSession(e),this.emit(`session-deleted`,{sessionCode:e})}catch(e){throw console.error(`Failed to delete session:`,e),this.emit(`session-error`,{action:`delete`,error:e}),e}}async getSession(e){try{await this.sessionModule.getSession(e)}catch(e){throw console.error(`Failed to get session:`,e),this.emit(`session-error`,{action:`get`,error:e}),e}}isSessionEmpty(e){let t=this.findSession(e.sessionCode)?.sessionContentCount??e.sessionContentCount;return t==null?!1:t===0}isCurrentSessionEmpty(e){return this.messageModule&&UBt(this.messageModule.list.value)?!1:this.isSessionEmpty(e)}findSession(e){return this.sessionList.value.find(t=>t.sessionCode===e)}async loadRecentSession(e){try{if(this.currentSession.value?.sessionCode)return;e?.skipLoadSessions||await this.loadSessions();let t=this.sessionList.value;if(this.config.initialSessionCode){let e=this.findSession(this.config.initialSessionCode);await this.switchSession(this.config.initialSessionCode,{loadMessages:e?!this.isSessionEmpty(e):!0});return}if(t.length>0){let n=t[0],r=(n.sessionContentCount??0)>0,i=e?.alwaysCreateNewSession??this.config.alwaysCreateNewSession??!1;r||i?await this.createSession({name:`新会话`,sessionCode:this.generateSessionCode()}):await this.switchSession(n.sessionCode,{loadMessages:!1});return}await this.createSession({name:`新会话`,sessionCode:this.generateSessionCode()})}catch(e){throw console.error(`Failed to load recent session:`,e),e}}async loadSessions(){try{await this.sessionModule.getSessions(),this.emit(`sessions-loaded`,{sessions:this.sessionList.value})}catch(e){throw console.error(`Failed to load sessions:`,e),this.emit(`session-error`,{action:`load`,error:e}),e}}async switchSession(e,t){try{await this.sessionModule.chooseSession(e,t),this.emit(`session-switched`,{session:this.sessionModule.current.value})}catch(e){throw console.error(`Failed to switch session:`,e),this.emit(`session-error`,{action:`switch`,error:e}),e}}async updateSessionName(e,t){try{let n=this.sessionList.value.find(t=>t.sessionCode===e);if(!n)throw Error(`Session not found: ${e}`);await this.sessionModule.updateSession({...n,sessionName:t}),this.emit(`session-updated`,{session:this.sessionModule.current.value})}catch(e){throw console.error(`Failed to update session name:`,e),this.emit(`session-error`,{action:`update`,error:e}),e}}},jVt=class{messageModule;sessionModule;constructor(e,t){this.messageModule=e,this.sessionModule=t}async shareMessages(e){if(e.length===0)throw Error(`No messages to share`);let t=this.sessionModule.current?.value?.sessionCode;if(!t)throw Error(`No active session`);let n=await this.messageModule.shareMessages(t,e);if(!n)throw Error(`Share failed: no result returned`);return{shareUrl:`${n.share_page}share-page/${n.share_token}`,userMessageIds:e.map(e=>String(e.id))}}},V9=class{_agentShortcuts;_effectiveShortcuts;_propsShortcuts;eventEmitter;emit(e,t){this.eventEmitter?.emit(e,t)}constructor(e=null,n=[]){this._propsShortcuts=(0,t.ref)(n),this._agentShortcuts=(0,t.ref)([]),this.eventEmitter=e,this._effectiveShortcuts=(0,t.computed)(()=>this._propsShortcuts.value.length>0?this._propsShortcuts.value:this._agentShortcuts.value.length>0?this._agentShortcuts.value:[])}get count(){return this._effectiveShortcuts.value.length}get effectiveShortcuts(){return this._effectiveShortcuts}get hasShortcuts(){return this._effectiveShortcuts.value.length>0}get shortcuts(){return this._effectiveShortcuts}addShortcut(e){this._propsShortcuts.value.push(e)}clear(){this._propsShortcuts.value=[],this._agentShortcuts.value=[]}filterByTextLength(e,t){return!e||e.length>t?[]:this._effectiveShortcuts.value}filterShortcuts(e,t){return t?this._effectiveShortcuts.value.filter(n=>t(n,e)):this._effectiveShortcuts.value}getShortcutById(e){return this._effectiveShortcuts.value.find(t=>t.id===e)}handleShortcutClick(e,t,n=`main`){this.emit(`shortcut-click`,{shortcut:e,selectedText:t,source:n})}limitShortcuts(e){return this._effectiveShortcuts.value.slice(0,e)}removeShortcut(e){this._propsShortcuts.value=this._propsShortcuts.value.filter(t=>t.id!==e)}setAgentShortcuts(e){this._agentShortcuts.value=e}setShortcuts(e){this._propsShortcuts.value=e}},MVt=class{_isCompressed;_isDraggingOrResizing;_nimbusMinimized;_panelVisible;_positionAndSize;cleanupFunctions;config;containerRef=null;debugMode;listeners;onceListeners;constructor(e={}){this.config=e,this.listeners=new Map,this.onceListeners=new Map,this.debugMode=e.debug??!1,this.cleanupFunctions=[],this._panelVisible=(0,t.ref)(e.initialPanelVisible??!1),this._nimbusMinimized=(0,t.ref)(e.initialNimbusMinimized??!1),this._isDraggingOrResizing=(0,t.ref)(!1),this._isCompressed=(0,t.ref)(!1),this._positionAndSize=(0,t.ref)({x:0,y:0,width:400,height:window.innerHeight})}get container(){return{updatePosition:this.updatePosition.bind(this),updateSize:this.updateSize.bind(this),updatePositionAndSize:this.updatePositionAndSize.bind(this),toggleCompression:this.toggleCompression.bind(this),expandForSidePanel:this.expandForSidePanel.bind(this),collapseSidePanel:this.collapseSidePanel.bind(this),positionAndSize:(0,t.computed)(()=>this.containerRef?.positionAndSize?.value??this._positionAndSize.value),isCompressed:(0,t.computed)(()=>this._isCompressed.value),isSidePanelExpanded:(0,t.computed)(()=>this.containerRef?.isSidePanelExpanded?.value??!1)}}get isCompressed(){return this._isCompressed}get isDraggingOrResizing(){return this._isDraggingOrResizing}get nimbus(){return{minimize:this.minimizeNimbus.bind(this),restore:this.restoreNimbus.bind(this),toggle:this.toggleNimbus.bind(this),isMinimized:(0,t.computed)(()=>this._nimbusMinimized.value)}}get nimbusMinimized(){return this._nimbusMinimized}get panel(){return{show:this.showPanel.bind(this),hide:this.hidePanel.bind(this),toggle:this.togglePanel.bind(this),isVisible:(0,t.computed)(()=>this._panelVisible.value)}}get panelVisible(){return this._panelVisible}get state(){return{panelVisible:this._panelVisible,nimbusMinimized:this._nimbusMinimized,isDraggingOrResizing:this._isDraggingOrResizing,positionAndSize:this._positionAndSize}}collapseSidePanel(){this.containerRef?.collapseSidePanel&&this.containerRef.collapseSidePanel()}destroy(){this.listeners.clear(),this.onceListeners.clear(),this.cleanupFunctions.forEach(e=>e()),this.cleanupFunctions=[],this.debugMode&&console.debug(`[ComponentManager] Destroyed`)}emit(e,t){this.debugMode&&console.debug(`[ComponentManager] Emitting "${e}"`,t);let n=this.listeners.get(e);n&&n.forEach(n=>{try{n(t)}catch(t){console.error(`[ComponentManager] Error in listener for "${e}":`,t)}});let r=this.onceListeners.get(e);if(r&&r.size>0){let n=Array.from(r);this.onceListeners.delete(e),n.forEach(n=>{try{n(t)}catch(t){console.error(`[ComponentManager] Error in once listener for "${e}":`,t)}})}}emitInternal(e,t){this.emit(e,t)}expandForSidePanel(e){this.containerRef?.expandForSidePanel&&this.containerRef.expandForSidePanel(e)}getConfig(){return this.config}getRegisteredEvents(){let e=new Set;return this.listeners.forEach((t,n)=>e.add(n)),this.onceListeners.forEach((t,n)=>e.add(n)),Array.from(e)}handleDragging(e){this._isDraggingOrResizing.value=!0,this._positionAndSize.value=e,this.emit(`dragging`,e)}handleDragStop(e){this._isDraggingOrResizing.value=!1,this._positionAndSize.value=e,this.emit(`drag-stop`,e)}handleNimbusClick(){this.emit(`nimbus-click`,{}),this.showPanel()}handlePopupClick(){this.emit(`popup-click`,{}),this.showPanel()}handlePopupShortcutClick(e){this.emit(`popup-shortcut-click`,{shortcut:e}),this.emit(`shortcut-click`,{shortcut:e,source:`popup`})}handleResizeStop(e){this._isDraggingOrResizing.value=!1,this._positionAndSize.value=e,this.emit(`resize-stop`,e)}handleResizing(e){this._isDraggingOrResizing.value=!0,this._positionAndSize.value=e,this.emit(`resizing`,e)}handleShortcutClick(e,t){this.emit(`shortcut-click`,{shortcut:e,source:t})}hasListeners(e){return this.listenerCount(e)>0}hidePanel(){this._panelVisible.value=!1,this.emit(`panel-hide`,{})}listenerCount(e){return(this.listeners.get(e)?.size??0)+(this.onceListeners.get(e)?.size??0)}minimizeNimbus(){this._nimbusMinimized.value=!0,this.emit(`nimbus-minimize`,{})}off(e,t){t?(this.listeners.get(e)?.delete(t),this.onceListeners.get(e)?.delete(t),this.debugMode&&console.debug(`[ComponentManager] Unsubscribed from "${e}", remaining: ${this.listenerCount(e)}`)):(this.listeners.delete(e),this.onceListeners.delete(e),this.debugMode&&console.debug(`[ComponentManager] Removed all listeners for "${e}"`))}on(e,t){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),this.debugMode&&console.debug(`[ComponentManager] Subscribed to "${e}", total: ${this.listenerCount(e)}`),()=>{this.off(e,t)}}once(e,t){return this.onceListeners.has(e)||this.onceListeners.set(e,new Set),this.onceListeners.get(e).add(t),this.debugMode&&console.debug(`[ComponentManager] Subscribed once to "${e}"`),()=>{this.onceListeners.get(e)?.delete(t)}}restoreNimbus(){this._nimbusMinimized.value=!1,this.emit(`nimbus-restore`,{})}setCompressed(e){this._isCompressed.value=e}setContainerRef(e){this.containerRef=e,e?.isCompressed&&(this._isCompressed.value=e.isCompressed.value)}setDebugMode(e){this.debugMode=e}setDraggingOrResizing(e){this._isDraggingOrResizing.value=e}showPanel(e){this._panelVisible.value=!0,this.emit(`panel-show`,{sessionCode:e})}toggleCompression(){this.containerRef?this.containerRef.toggleCompression():this._isCompressed.value=!this._isCompressed.value}toggleNimbus(){this._nimbusMinimized.value?this.restoreNimbus():this.minimizeNimbus()}togglePanel(){this._panelVisible.value?this.hidePanel():this.showPanel()}updatePosition(e,t){this._positionAndSize.value={...this._positionAndSize.value,x:e,y:t}}updatePositionAndSize(e,t,n,r){this._positionAndSize.value={x:e,y:t,width:n,height:r}}updateSize(e,t){this._positionAndSize.value={...this._positionAndSize.value,width:e,height:t}}};function NVt(e){return new MVt(e)}var PVt={"panel-show":`show`,"panel-hide":`close`,"panel-toggle":null,"nimbus-click":null,"nimbus-minimize":null,"nimbus-restore":null,"popup-click":null,"popup-shortcut-click":null,dragging:`dragging`,resizing:`resizing`,"drag-stop":`drag-stop`,"resize-stop":`resize-stop`,"compression-toggle":null,"side-panel-expand":null,"side-panel-collapse":null,"send-message":`send-message`,"receive-start":`receive-start`,"receive-text":`receive-text`,"receive-end":`receive-end`,"receive-error":null,stop:`stop`,"chat-regenerate":null,"chat-retry":null,"message-deleted":null,"messages-batch-deleted":null,"session-created":null,"session-switched":null,"session-deleted":null,"session-updated":null,"sessions-loaded":null,"session-initialized":`session-initialized`,"session-error":null,"shortcut-click":`shortcut-click`,"chat-error":null,"sdk-error":`sdk-error`,"new-chat":`new-chat`,"new-chat-created":`new-chat-created`,"history-click":`history-click`,"auto-generate-name":`auto-generate-name`,"help-click":`help-click`,rename:`rename`,share:`share`,close:`close`,"toggle-compression":null,"transfer-messages":`transfer-messages`,"share-messages":`share-messages`,"agent-info-loaded":null,error:null};function FVt(e,t){switch(e){case`send-message`:return[t.content];case`rename`:return[t.newName];case`history-click`:return[t.event];case`dragging`:case`resizing`:case`drag-stop`:case`resize-stop`:case`shortcut-click`:case`session-initialized`:case`sdk-error`:case`transfer-messages`:case`share-messages`:case`new-chat-created`:return[t];case`panel-show`:case`panel-hide`:case`receive-start`:case`receive-text`:case`receive-end`:case`stop`:case`new-chat`:case`auto-generate-name`:case`help-click`:case`share`:case`close`:return[];default:return[t]}}var IVt=class{_selectedMessageIds;_isSelectionMode;_editingSessionCode;_loadingStates;constructor(){this._selectedMessageIds=(0,t.ref)(new Set),this._isSelectionMode=(0,t.ref)(!1),this._editingSessionCode=(0,t.ref)(null),this._loadingStates=(0,t.reactive)({})}get isSelectionMode(){return this._isSelectionMode}get editingSessionCode(){return this._editingSessionCode}toggleSelectionMode(){this._isSelectionMode.value=!this._isSelectionMode.value,this._isSelectionMode.value||this.clearSelection()}enableSelectionMode(){this._isSelectionMode.value=!0}disableSelectionMode(){this._isSelectionMode.value=!1,this.clearSelection()}toggleMessageSelection(e){this._selectedMessageIds.value.has(e)?this._selectedMessageIds.value.delete(e):this._selectedMessageIds.value.add(e),this._selectedMessageIds.value=new Set(this._selectedMessageIds.value)}selectMessage(e){this._selectedMessageIds.value.add(e),this._selectedMessageIds.value=new Set(this._selectedMessageIds.value)}deselectMessage(e){this._selectedMessageIds.value.delete(e),this._selectedMessageIds.value=new Set(this._selectedMessageIds.value)}isMessageSelected(e){return this._selectedMessageIds.value.has(e)}clearSelection(){this._selectedMessageIds.value.clear(),this._selectedMessageIds.value=new Set(this._selectedMessageIds.value)}selectAllMessages(e){this._selectedMessageIds.value=new Set(e)}get selectedMessages(){return Array.from(this._selectedMessageIds.value)}get selectedCount(){return this._selectedMessageIds.value.size}get hasSelection(){return this._selectedMessageIds.value.size>0}startEditingSession(e){this._editingSessionCode.value=e}stopEditingSession(){this._editingSessionCode.value=null}isEditingSession(e){return e?this._editingSessionCode.value===e:this._editingSessionCode.value!==null}setLoading(e,t){this._loadingStates[e]=t}isLoading(e){return this._loadingStates[e]??!1}clearLoadingStates(){Object.keys(this._loadingStates).forEach(e=>{this._loadingStates[e]=!1})}reset(){this.clearSelection(),this.disableSelectionMode(),this.stopEditingSession(),this.clearLoadingStates()}},LVt=class extends Error{constructor(){super(`[ChatBot] Initialization was superseded by a newer init`),this.name=`ChatBotInitStaleError`}};function RVt(e){let{props:n,emit:r,scrollToBottom:i}=e,a=(0,t.shallowRef)(null),o=(0,t.shallowRef)(null),s=(0,t.shallowRef)(null),l=(0,t.shallowRef)(null),u=(0,t.ref)(!1),d=(0,t.ref)(!n.chatHelper),f=(0,t.ref)(null),p=(0,t.computed)(()=>u.value),m=()=>n.chatHelper?!n.chatHelper.agent||!n.chatHelper.session||!n.chatHelper.message?{valid:!1,error:`[ChatBot] Invalid chatHelper: missing required modules (agent, session, message)`}:{valid:!0}:n.url?{valid:!0}:{valid:!1,error:`[ChatBot] Neither chatHelper nor url provided. Component requires at least one.`},h=()=>{let e=m();if(!e.valid)return console.error(e.error),f.value=Error(e.error),null;if(n.chatHelper)return n.chatHelper;let a=new k9({onStart:()=>{r(`receive-start`)},onMessage:e=>{r(`receive-text`)},onDone:()=>{r(`receive-end`),i()},onError:e=>{r(`error`,e)}}),o=P9({requestData:BBt(L9(n.url),()=>(0,t.toValue)(n.requestOptions)),protocol:a});return a.injectMessageModule(o.message),o},g=async(e,t)=>{if(e)try{let n=e.session.current?.value?.sessionCode??``;await e.agent.stopChat(n),t&&e.agent.abortChat()}catch{}},_=0,v=null,y=null,b=null,x=e=>{b&&=(e?b.reject(e):b.resolve(),null),v=null},S=e=>{if(e!==_)throw new LVt},C=async e=>{let t=a.value,i=d.value;u.value=!1,f.value=null,d.value=!n.chatHelper,await g(t,i),S(e),a.value=null,o.value=null,s.value=null,l.value=null;let p=h();if(!p)throw f.value??Error(`[ChatBot] Failed to create chatHelper`);let m=new B9(p.session,p.agent,null,{enableChatSession:!0,autoSwitchToInitialSession:!!n.sessionCode,loadRecentSessionOnMount:n.autoLoad,initialSessionCode:n.sessionCode,alwaysCreateNewSession:n.alwaysCreateNewSession},p.message),_=new AVt(p.agent,p.message,p.session,null,{openingRemark:n.helloText,predefinedQuestions:n.prompts,placeholder:n.placeholder}),v=new V9(null,n.shortcuts||[]);a.value=p,o.value=m,s.value=_,l.value=v;try{d.value&&(await kVt(p),S(e),await m.loadRecentSession({skipLoadSessions:!0}),S(e)),S(e),u.value=!0,r(`agent-info-loaded`,p)}catch(t){throw S(e),console.error(`Failed to initialize ChatBot:`,t),f.value=t,r(`error`,t),t}},w=()=>{x(new LVt),y=null;let e=++_;v=new Promise((t,n)=>{b={resolve:t,reject:n},C(e).then(()=>{b&&=(y=Promise.resolve(),b.resolve(),null)}).catch(e=>{if(b){let t=e instanceof Error?e:Error(String(e));b.reject(t),b=null}}).finally(()=>{e===_&&(v=null)})}),v.catch(()=>{})};return(0,t.watch)([()=>n.url,()=>n.chatHelper],()=>w(),{immediate:!0}),(0,t.onBeforeUnmount)(()=>{x(),g(a.value,d.value)}),{chatHelper:a,isStandaloneMode:d,isInitialized:u,isReady:p,initError:f,whenReady:()=>u.value?(y||=Promise.resolve(),y):f.value?Promise.reject(f.value):v||Promise.resolve(),chatBusinessManager:s,sessionBusinessManager:o,shortcutManager:l}}function zVt(e){let{props:n,chatHelper:r,chatBusinessManager:i,sessionBusinessManager:a,shortcutManager:o,isStandaloneMode:s,isInitialized:l,selectedShortcut:u}=e,d=(0,t.computed)(()=>i.value?.isStopLoading.value?X8.StopLoading:((n.chatHelper||r.value)?.agent)?.isChatting?.value?X8.Streaming:X8.Complete),f=(0,t.computed)(()=>d.value===X8.Streaming?$7.Disabled:void 0),p=(0,t.computed)(()=>i.value?.messages.value??[]),m=(0,t.computed)(()=>i.value?.isMessagesLoading.value??!1);return{messageStatus:d,messageToolsStatus:f,messages:p,isMessagesLoading:m,isGenerating:(0,t.computed)(()=>i.value?.isGenerating.value??!1),currentSession:(0,t.computed)(()=>a.value?.currentSession.value??null),isWelcomeState:(0,t.computed)(()=>s.value&&!l.value?!1:!m.value&&p.value.length===0),openingRemark:(0,t.computed)(()=>r.value?.agent.info.value?.conversationSettings?.openingRemark||``),effectiveResources:(0,t.computed)(()=>n.resources?.length?n.resources:r.value?.agent.info.value?.resources??[]),effectivePrompts:(0,t.computed)(()=>n.prompts?.length?n.prompts:r.value?.agent.info.value?.conversationSettings?.predefinedQuestions??[]),effectiveSkills:(0,t.computed)(()=>n.skills?.length?n.skills:(r.value?.agent.info.value?.relatedSkills??[]).map(e=>({skill_name:e.skill_name,skill_code:e.skill_code,description:e.description,icon:e.icon}))),effectiveSupportUpload:(0,t.computed)(()=>u.value?.supportUpload?u.value.supportUpload.vision===!0:r.value?.agent.info.value?.promptSetting?.supportUpload?.vision===!0),chatbotStyle:(0,t.computed)(()=>({height:typeof n.height==`number`?`${n.height}px`:n.height,maxWidth:typeof n.maxWidth==`number`?`${n.maxWidth}px`:n.maxWidth})),filteredShortcuts:(0,t.computed)(()=>o.value?.shortcuts.value??[])}}var BVt=`others`,VVt={[Z8.ApprovalCancel]:S9.ApprovalCancel,[Z8.FlowNodeRetry]:S9.FlowNodeRetry,[Z8.FlowNodeSkip]:S9.FlowNodeSkip};function HVt(e){return`operation`in e}function UVt(e){return`interruptId`in e&&`reason`in e&&e.reason===q8.UserQuestion}function WVt(e){return e===`cancelled`?O9.Cancelled:O9.Resolved}function GVt(e){let t=e?.session.current?.value?.sessionCode;if(!t)throw Error(`[ChatBot] Cannot resume interrupt: no active session`);return t}function KVt(e){return{interruptId:e.interruptId,status:WVt(e.status),payload:e.payload}}function qVt(e,t,n){let r=e?.metadata?.questions?.[0]?.question??``;return{interruptId:n.interruptId,reason:q8.UserQuestion,status:`resolved`,payload:{answers:[{question:r,multiSelect:!1,answer:[{label:BVt,description:t}]}]}}}function JVt(e){let{chatHelper:t,emit:n}=e,r=async e=>{let n=t.value;if(!n)throw Error(`[ChatBot] Cannot resume interrupt: chatHelper not initialized`);if(!HVt(e))throw Error(`[ChatBot] Unsupported interrupt resume payload`);let r=GVt(n),i=VVt[e.operation],a=n.agent;if(e.operation===Z8.ApprovalCancel){await a.userOperationStreamRequest(r,i,{interrupt_id:e.payload.interrupt_id});return}await a.userOperationStreamRequest(r,i,{node_id:e.payload.node_id,task_id:String(e.payload.task_id)})},i=async(e,n)=>{let r=t.value;if(!r)throw Error(`[ChatBot] Cannot resume interrupt: chatHelper not initialized`);let i=GVt(r);await r.agent.streamRequest({sessionCode:i,resume:KVt(e),...n?{input:n}:{}})};return{handleInterruptResume:async(e,t)=>{try{if(HVt(e)){await r(e);return}if(UVt(e)){await i(e);return}throw Error(`[ChatBot] Unsupported interrupt resume payload`)}catch(e){console.error(`[ChatBot] Failed to handle interrupt resume:`,e),n(`error`,e instanceof Error?e:Error(String(e)))}},resumeUserQuestionWithInput:async(e,t)=>{try{if(!t.payload||!UVt(t.payload))throw Error(`[ChatBot] Invalid user question resume options`);let n=typeof e==`string`?e.trim():``;if(!n)throw Error(`[ChatBot] User question free text input is empty`);await i(qVt(t.interrupt,n,t.payload),n)}catch(e){console.error(`[ChatBot] Failed to resume user question with input:`,e),n(`error`,e instanceof Error?e:Error(String(e)))}}}}function YVt(e){let{emit:n,chatHelper:r,chatBusinessManager:i,getRequestOptions:a,resumeUserQuestionWithInput:o,selectedShortcut:s,selectedResources:l}=e,u=(0,t.shallowRef)([[]]),d=(0,t.shallowRef)(``),f=(e,t)=>{u.value=e,l.value=t},p=async(e,t={})=>{if(!i.value||!r.value)throw Error(`[ChatBot] Cannot send message: chatBusinessManager not initialized`);let o=r.value.session.current?.value?.sessionCode;if(!o)throw Error(`[ChatBot] Cannot send message: no active session`);u.value=[[]],d.value=``,l.value=[],n(`send-message`,typeof e==`string`?e:``);let s=F9(t.property,a);await i.value.sendMessage(e,o,{...t,...s?{property:s}:{}})},m=async e=>{let t=r.value?.session.current?.value?.sessionCode;if(!t)throw Error(`[ChatBot] Cannot upload: no active session`);let n=await r.value.session.uploadFile(t,e);if(!n?.download_url)throw Error(`[ChatBot] Upload failed: no download URL returned`);return n},h=async(e,t,r)=>{try{if(r?.payload&&o){u.value=[[]],d.value=``,l.value=[],await o(e,r);return}let t={};d.value&&(t.cite=d.value),s.value&&(t.command=s.value.id),l.value.length&&(t.resources=l.value),await p(e,Object.keys(t).length?{property:{extra:t}}:{})}catch(e){console.error(`Failed to send message:`,e),n(`error`,e)}},g=async()=>{await _()},_=async()=>{if(!i.value){console.error(`[ChatBot] Cannot stop generation: chatBusinessManager not initialized`);return}await i.value.stopGeneration(),n(`stop`)};return{userInput:u,cite:d,handleUpdateModelValue:f,doSendMessage:p,handleSendMessage:h,handleUpload:m,handleStopSending:g,stopGeneration:_}}function XVt(e){let{emit:t,chatHelper:n,isStandaloneMode:r}=e,i=async e=>{if(!(!n.value||e.length===0))try{await JBt((await new jVt(n.value.message,n.value.session).shareMessages(e)).shareUrl),rc({message:`分享链接已复制到剪贴板`,theme:`success`})}catch(e){console.error(`[ChatBot] Failed to share messages:`,e),rc({message:`分享失败,请重试`,theme:`error`})}};return{handleConfirmShare:async e=>{r.value&&await i(e),t(`confirm-share`,e)}}}function ZVt(e){let{props:n,emit:r,shortcutManager:i,doSendMessage:a,selectedShortcut:o}=e,s=(0,t.computed)(()=>i.value?.effectiveShortcuts.value??[]),l=(e,t)=>{let n=e,r;if(r=n.enable_fill_back&&n.fill_back_component_key?n.fill_back_component_key:n.components?.find(e=>e.fillBack)?.key,r&&t){let e=n.components?.map(e=>e.key===r?{...e,default:t}:{...e,default:e.default??void 0});o.value={...n,components:e,formModel:{...n.formModel,[r]:t}}}else o.value={...n,formModel:{...n.formModel}}},u=(e,t)=>{let n=e.components||[];return{extra:{cite:{type:`structured`,title:e.alias||e.name,data:n.map(e=>({key:e.name||e.key,value:String(t[e.key]??``)}))},command:e.id,context:n.map(e=>({[e.key]:t[e.key],context_type:e.type,__label:e.name||e.key,__key:e.key,__value:t[e.key]}))}}},d=e=>{let t=e.property?.extra;return t?.shortcut?t.shortcut:t?.command?s.value.find(e=>e.id===t.command)??null:null},f=(e,t)=>{l(e,t),r(`shortcut-click`,{shortcut:e,source:`main`})},p=()=>{o.value=null};return(0,t.watch)(()=>n.shortcuts,e=>{i.value?.setShortcuts(e||[])},{immediate:!0}),(0,t.watch)(()=>e.chatHelper.value?.agent.info.value?.conversationSettings?.commands,e=>{e&&i.value?.setAgentShortcuts(e)},{immediate:!0}),{effectiveShortcuts:s,selectShortcutWithText:l,buildShortcutProperty:u,getShortcutFromMessage:d,handleSelectShortcut:f,handleCloseShortcut:p,handleShortcutSubmit:async e=>{if(!o.value){console.error(`[ChatBot] No selected shortcut`);return}let t=u(o.value,e),n=o.value.name,i=o.value;p();try{await a(n,{property:t})}catch(e){o.value=i,console.error(`[ChatBot] Failed to submit shortcut:`,e),r(`error`,e)}},sendShortcutDirectly:async(e,t)=>{let n=e,i={...n.formModel},o=n.components||[];for(let e of o)e.key in i||(i[e.key]=e.default??``);let s;s=n.enable_fill_back&&n.fill_back_component_key?n.fill_back_component_key:o.find(e=>e.fillBack)?.key,s&&t&&(i[s]=t);let l=u(n,i),d=n.name;try{await a(d,{property:l})}catch(e){console.error(`[ChatBot] Failed to send shortcut directly:`,e),r(`error`,e)}}}}function QVt(e){let{emit:t,chatHelper:n,chatBusinessManager:r,cite:i,focusInput:a,scrollToBottom:o,getShortcutFromMessage:s,buildShortcutProperty:l,getRequestOptions:u}=e,d=async e=>{if(!r.value||!n.value){console.error(`[ChatBot] Cannot delete messages: chatBusinessManager not initialized`);return}try{let t=r.value.messages.value,i=I9(t,e[0]);if(!i){console.error(`[ChatBot] No user message found before AI messages`);return}let a=[i,...e];await n.value.message.deleteMessages(a)}catch(e){console.error(`[ChatBot] Failed to delete messages:`,e),t(`error`,e)}},f=async e=>{if(!r.value||!n.value){console.error(`[ChatBot] Cannot regenerate: chatBusinessManager not initialized`);return}let i=n.value.session.current?.value?.sessionCode;if(!i){console.error(`[ChatBot] Cannot regenerate: no active session`);return}try{await r.value.regenerateFromAIMessages(e,i),o()}catch(e){console.error(`[ChatBot] Failed to regenerate:`,e),t(`error`,e)}},p=async e=>{if(!r.value||!n.value){console.error(`[ChatBot] Cannot delete message: chatHelper not initialized`);return}try{let t=r.value.messages.value,i=t.findIndex(t=>t===e);if(i===-1){console.error(`[ChatBot] User message not found in messages list`);return}let a=[];for(let e=i+1;e<t.length;e++){let n=t[e];if(n.role===Y8.User)break;a.push(n)}let o=[e,...a];await n.value.message.deleteMessages(o)}catch(e){console.error(`[ChatBot] Failed to delete user message:`,e),t(`error`,e)}};return{handleAgentAction:async(e,t)=>{if(e.id===`cite`){i.value=t.filter(e=>e.role!==Y8.Reasoning).map(e=>typeof e.content==`string`?e.content:JSON.stringify(e.content||``)).join(`
|
|
3489
3489
|
`),a();return}if(e.id===`rebuild`){await f(t);return}if(e.id===`delete`){await d(t);return}if(e.id===`like`||e.id===`unlike`){let t=e.id===`like`?5:0;try{return await n.value?.session.getSessionFeedbackReasons(t)||[]}catch(e){return console.error(`[ChatBot] Failed to get feedback reasons:`,e),[]}}console.log(`handleAgentAction`,e,t)},handleAgentFeedback:async(e,i,a,o)=>{if(!n.value){console.error(`[ChatBot] Cannot submit feedback: chatHelper not initialized`);return}let s=n.value.session.current?.value?.sessionCode;if(!s){console.error(`[ChatBot] Cannot submit feedback: no active session`);return}let l=WBt(r.value?.messages.value||[],i[0]);if(l===void 0){console.error(`[ChatBot] Cannot submit feedback: no user message found`);return}let u=e.id===`like`?5:0;try{await n.value.session.postSessionFeedback({sessionCode:s,sessionContentIds:[l],rate:u,labels:a,comment:o}),t(`feedback`,e,i[0],a,o)}catch(e){console.error(`[ChatBot] Failed to submit feedback:`,e),t(`error`,e)}},handleUserAction:async(e,t)=>{if(e.id===`delete`){await p(t);return}if(e.id===`cite`){i.value=typeof t.content==`string`?t.content:JSON.stringify(t.content||``),a();return}console.log(`handleUserAction`,e,t)},handleUserInputConfirm:async(e,i,a)=>{if(!n.value){console.error(`[ChatBot] Cannot edit message: chatHelper not initialized`);return}let s=n.value.session.current?.value?.sessionCode;if(!s){console.error(`[ChatBot] Cannot edit message: no active session`);return}let l=e.id;if(l===void 0){console.error(`[ChatBot] Cannot edit message: message has no id`);return}try{let t=e.property,n=F9(t,u);await r.value?.resendMessageWithProperty(String(l),s,typeof i==`string`?i:``,n),o()}catch(e){console.error(`[ChatBot] Failed to edit and resend message:`,e),t(`error`,e)}},handleUserShortcutConfirm:async(e,i)=>{if(!r.value||!n.value){console.error(`[ChatBot] Cannot edit shortcut message: chatHelper not initialized`);return}let a=n.value.session.current?.value?.sessionCode;if(!a){console.error(`[ChatBot] Cannot edit shortcut message: no active session`);return}let d=e.id;if(d===void 0){console.error(`[ChatBot] Cannot edit shortcut message: message has no id`);return}try{let t=s(e);if(!t){console.error(`[ChatBot] Cannot edit shortcut message: shortcut not found`);return}let n=F9(l(t,i),u),f=String(i.input??``);await r.value.resendMessageWithProperty(String(d),a,f,n),o()}catch(e){console.error(`[ChatBot] Failed to edit shortcut message:`,e),t(`error`,e)}},handleStopStreaming:async()=>{if(!r.value){console.error(`[ChatBot] Cannot stop generation: chatBusinessManager not initialized`);return}await r.value.stopGeneration(),t(`stop`)}}}var $Vt=(0,t.defineComponent)({__name:`chat-bot`,props:{autoLoad:{type:Boolean,default:!0},alwaysCreateNewSession:{type:Boolean},chatHelper:{default:void 0},enableSelection:{type:Boolean,default:!1},renderMode:{default:Q8.Chat},extCls:{},height:{},helloText:{},useAgentName:{type:Boolean,default:!1},maxWidth:{},messageToolsTippyOptions:{},placeholder:{},prompts:{},requestOptions:{},resources:{default:()=>[]},sessionCode:{},shareLoading:{type:Boolean,default:!1},shortcuts:{default:()=>[]},skills:{},url:{default:``},placement:{default:`left`},resizeProps:{},getSideRenderComponent:{},getSideTabRenderComponent:{},onCustomTabChange:{}},emits:[`agent-info-loaded`,`cancel-share`,`confirm-share`,`error`,`execution-panel-change`,`feedback`,`receive-end`,`receive-start`,`receive-text`,`request-share`,`send-message`,`session-switched`,`shortcut-click`,`stop`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=(0,t.useSlots)(),s=(0,t.ref)(),l=(0,t.ref)(),u=(0,t.ref)(),d=(0,t.shallowRef)([]),f=(0,t.ref)(null),p=(0,t.computed)({get:()=>i.renderMode??Q8.Chat,set:()=>{}}),m=async()=>{await(0,t.nextTick)(),s.value&&(s.value.scrollTop=s.value.scrollHeight)},h=()=>{u.value?.focus?.()},{chatHelper:g,isStandaloneMode:_,isInitialized:v,isReady:y,initError:b,whenReady:x,chatBusinessManager:S,sessionBusinessManager:C,shortcutManager:w}=RVt({props:i,emit:a,scrollToBottom:m}),{handleInterruptResume:T,resumeUserQuestionWithInput:E}=JVt({chatHelper:g,emit:a}),{userInput:D,cite:O,handleUpdateModelValue:k,doSendMessage:A,handleSendMessage:j,handleUpload:M,handleStopSending:N,stopGeneration:P}=YVt({emit:a,chatHelper:g,chatBusinessManager:S,getRequestOptions:()=>i.requestOptions,resumeUserQuestionWithInput:E,selectedShortcut:f,selectedResources:d}),{handleSelectShortcut:F,handleCloseShortcut:I,handleShortcutSubmit:L,selectShortcutWithText:R,getShortcutFromMessage:ee,buildShortcutProperty:z,sendShortcutDirectly:B}=ZVt({props:i,emit:a,chatHelper:g,shortcutManager:w,doSendMessage:A,selectedShortcut:f}),{messageStatus:V,messageToolsStatus:te,messages:ne,isMessagesLoading:re,isGenerating:ie,currentSession:ae,isWelcomeState:H,openingRemark:oe,effectiveResources:se,effectivePrompts:ce,effectiveSkills:le,effectiveSupportUpload:ue,chatbotStyle:de,filteredShortcuts:fe}=zVt({props:i,chatHelper:g,chatBusinessManager:S,sessionBusinessManager:C,shortcutManager:w,isStandaloneMode:_,isInitialized:v,selectedShortcut:f}),{handleAgentAction:pe,handleAgentFeedback:me,handleUserAction:he,handleUserInputConfirm:ge,handleUserShortcutConfirm:_e,handleStopStreaming:ve}=QVt({emit:a,chatHelper:g,chatBusinessManager:S,cite:O,focusInput:h,scrollToBottom:m,getShortcutFromMessage:ee,buildShortcutProperty:z,getRequestOptions:()=>i.requestOptions}),ye=(0,t.computed)(()=>!v.value||re.value),be=(0,t.computed)(()=>{if(i.useAgentName)return g.value?.agent.info.value?.agentName||void 0}),{handleConfirmShare:xe}=XVt({emit:a,chatHelper:g,isStandaloneMode:_}),Se=e=>{a(`execution-panel-change`,e)},Ce=async e=>{if(i.onCustomTabChange)return i.onCustomTabChange(e);let t=e.data?.props;if(t?.task_id!=null&&t?.node_id)return g.value?.message.getFlowAgentTaskNodeInfo(t.task_id,t.node_id)};return n({sendMessage:e=>j(e,[[]]),stopGeneration:P,switchSession:async e=>{if(!C.value){console.error(`[ChatBot] Cannot switch session: sessionBusinessManager not initialized`);return}try{await C.value.switchSession(e),a(`session-switched`,C.value.currentSession.value)}catch(e){console.error(`Failed to switch session:`,e),a(`error`,e)}},messages:ne,currentSession:ae,isGenerating:ie,get isReady(){return y.value},whenReady:x,getChatHelper:()=>g.value,setCiteText:e=>{O.value=e},focusInput:h,enterShareMode:()=>l.value?.enterShareMode(),exitShareMode:()=>l.value?.exitShareMode(),selectShortcut:(e,t)=>{R(e,t)},sendShortcut:(e,t)=>B(e,t),updateAgentInfo:async()=>{let e=g.value;if(!e)return null;try{await e.agent.getAgentInfo();let t=e.agent.info.value??null;return t?.conversationSettings?.commands&&w.value?.setAgentShortcuts(t.conversationSettings.commands),t}catch(e){return console.error(`[ChatBot] Failed to update agentInfo:`,e),a(`error`,e instanceof Error?e:Error(String(e))),null}}}),(n,r)=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{class:(0,t.normalizeClass)([`ai-chatbot`,i.extCls,{"welcome-state":(0,t.unref)(H)}]),style:(0,t.normalizeStyle)((0,t.unref)(de))},[(0,t.createVNode)((0,t.unref)(nBt),{ref_key:`chatContainerRef`,ref:l,cite:(0,t.unref)(O),"onUpdate:cite":r[0]||=e=>(0,t.isRef)(O)?O.value=e:null,"selected-shortcut":f.value,"onUpdate:selectedShortcut":r[1]||=e=>f.value=e,"render-mode":p.value,"onUpdate:renderMode":r[2]||=e=>p.value=e,"chat-loading":ye.value,"common-tippy-options":e.messageToolsTippyOptions,"message-status":(0,t.unref)(V),"message-tools-status":(0,t.unref)(te),messages:(0,t.unref)(ne),"model-value":(0,t.unref)(D),"on-agent-action":(0,t.unref)(pe),"on-agent-feedback":(0,t.unref)(me),"on-interrupt-resume":(0,t.unref)(T),"get-side-render-component":i.getSideRenderComponent,"get-side-tab-render-component":i.getSideTabRenderComponent,"on-custom-tab-change":Ce,"on-send-message":(0,t.unref)(j),"on-stop-sending":(0,t.unref)(N),"on-upload":(0,t.unref)(M),"on-user-action":(0,t.unref)(he),"on-user-input-confirm":(0,t.unref)(ge),"on-user-shortcut-confirm":(0,t.unref)(_e),"opening-remark":(0,t.unref)(oe),placeholder:i.placeholder,placement:i.placement,"welcome-title":be.value,prompts:(0,t.unref)(ce),"resize-props":i.resizeProps,resources:(0,t.unref)(se),"shortcut-id":f.value?.id,shortcuts:(0,t.unref)(fe),skills:(0,t.unref)(le),"support-upload":(0,t.unref)(ue),onCollapseChange:Se,onConfirmShare:(0,t.unref)(xe),onDeleteShortcut:(0,t.unref)(I),onSelectShortcut:(0,t.unref)(F),onShortcutClose:(0,t.unref)(I),onShortcutSubmit:(0,t.unref)(L),onStopStreaming:(0,t.unref)(ve),"onUpdate:modelValue":(0,t.unref)(k)},{message:(0,t.withCtx)(({message:r,messageToolsStatus:i,onInterruptResume:a})=>[(0,t.createCommentVNode)(` 消费方提供了 #message slot 时,优先使用消费方的渲染 `),(0,t.unref)(o).message?(0,t.renderSlot)(n.$slots,`message`,{key:0,message:r,messageToolsStatus:i,onInterruptResume:a}):((0,t.openBlock)(),(0,t.createElementBlock)(t.Fragment,{key:1},[(0,t.createCommentVNode)(` 否则使用默认的 MessageRender `),(0,t.createVNode)((0,t.unref)(_9),{message:r,"message-tools-status":i,"on-action":e=>(0,t.unref)(he)(e,r),"on-input-confirm":(e,n)=>(0,t.unref)(ge)(r,e,n),"on-interrupt-resume":a,"on-shortcut-confirm":e=>(0,t.unref)(_e)(r,e),"tippy-options":e.messageToolsTippyOptions},(0,t.createSlots)({_:2},[n.$slots.codeHeader?{name:`codeHeader`,fn:(0,t.withCtx)(e=>[(0,t.renderSlot)(n.$slots,`codeHeader`,(0,t.normalizeProps)((0,t.guardReactiveProps)(e)))]),key:`0`}:void 0]),1032,[`message`,`message-tools-status`,`on-action`,`on-input-confirm`,`on-interrupt-resume`,`on-shortcut-confirm`,`tippy-options`])],2112))]),_:3},8,`cite.selected-shortcut.render-mode.chat-loading.common-tippy-options.message-status.message-tools-status.messages.model-value.on-agent-action.on-agent-feedback.on-interrupt-resume.get-side-render-component.get-side-tab-render-component.on-send-message.on-stop-sending.on-upload.on-user-action.on-user-input-confirm.on-user-shortcut-confirm.opening-remark.placeholder.placement.welcome-title.prompts.resize-props.resources.shortcut-id.shortcuts.skills.support-upload.onConfirmShare.onDeleteShortcut.onSelectShortcut.onShortcutClose.onShortcutSubmit.onStopStreaming.onUpdate:modelValue`.split(`.`))],6))}}),H9=function(e){return e.ERROR=`error`,e.IDLE=`idle`,e.LOADING_AGENT=`loading_agent`,e.READY=`ready`,e}({});function eHt(e){let{url:n,requestOptions:r,autoInit:i=!0,protocolCallbacks:a}=e,o=(0,t.toValue)(n);if(!o)throw Error(`[useChatBootstrap] url is required`);let s=(0,t.ref)(H9.IDLE),l=(0,t.ref)(null),u=(0,t.ref)(!1),d=new Map,f=new k9({onStart:()=>{a?.onStart?.()},onMessage:e=>{a?.onMessage?.(e)},onDone:()=>{a?.onDone?.()},onError:e=>{a?.onError?.(e)}}),p=P9({requestData:BBt(o,r),protocol:f});f.injectMessageModule(p.message);let m=(0,t.computed)(()=>s.value===H9.LOADING_AGENT),h=(0,t.computed)(()=>s.value===H9.READY),g=(0,t.computed)(()=>p.agent.info.value??null),_=(0,t.computed)(()=>g.value?.agentName??``),v=(0,t.computed)(()=>p.session.current.value??null),y=(0,t.computed)(()=>p.session.list.value??[]),b=null,x=0,S=async e=>{l.value=null;try{if(s.value=H9.LOADING_AGENT,await kVt(p),e!==x)return;s.value=H9.READY,u.value=!0}catch(t){if(e!==x)return;throw console.error(`[useChatBootstrap] Initialization failed:`,t),l.value=t,s.value=H9.ERROR,t}},C=async()=>{if(u.value)return;if(b)return b;let e=x;return b=S(e).finally(()=>{e===x&&(b=null)}),b},w=()=>{x+=1,s.value=H9.IDLE,l.value=null,u.value=!1,b=null},T=async()=>{w(),await C()},E=async e=>{w();let t=p.http;t?.updateConfig?t.updateConfig({urlPrefix:e}):console.warn(`[useChatBootstrap] chatHelper.http.updateConfig is not implemented yet, URL change may not take effect`),await C()};return(0,t.watch)(()=>(0,t.toValue)(n),(e,t)=>{e&&e!==t&&t&&E(e).catch(()=>{})}),i&&Promise.resolve().then(()=>{C().catch(()=>{})}),{chatHelper:p,protocol:f,phase:s,isInitializing:m,isReady:h,error:l,agentInfo:g,agentName:_,currentSession:v,sessionList:y,initialize:C,retry:T,updateConfig:E,registerExtension:(e,t)=>{d.set(e,t)},getExtension:e=>d.get(e)}}function tHt(e){return{sendMessage:t=>e(`send-message`,{content:t}),receiveStart:()=>e(`receive-start`,{}),receiveText:()=>e(`receive-text`,{}),receiveEnd:()=>e(`receive-end`,{}),stop:()=>e(`stop`,{}),newChat:()=>e(`new-chat`,{}),newChatCreated:t=>e(`new-chat-created`,{session:t}),historyClick:t=>e(`history-click`,{event:t}),autoGenerateName:()=>e(`auto-generate-name`,{}),helpClick:()=>e(`help-click`,{}),rename:t=>e(`rename`,{newName:t}),share:()=>e(`share`,{}),transferMessages:t=>e(`transfer-messages`,{messageIds:t}),shareMessages:t=>e(`share-messages`,{messageIds:t})}}function nHt(e){let{componentManager:n,emit:r,debug:i=!1}=e,a=[],o=()=>{for(let[e,t]of Object.entries(PVt)){if(t===null)continue;let o=n.on(e,n=>{let a=FVt(e,n);i&&console.debug(`[useEventBridge] ${e} -> ${t}`,a),r(t,...a)});a.push(o)}},s=(e,t)=>{i&&console.debug(`[useEventBridge] Forwarding to manager: ${e}`,t),n.emit(e,t)},l=(e,...t)=>{i&&console.debug(`[useEventBridge] Direct emit: ${e}`,t),r(e,...t)},u=()=>{a.forEach(e=>e()),a.length=0};return o(),(0,t.onUnmounted)(()=>{u()}),{forwardToManager:s,emitDirect:l,cleanup:u}}function rHt(e){let{props:n,emit:r}=e,i=(0,t.ref)(),a=(0,t.ref)(),o=(0,t.computed)(()=>L9(n.url??``)),s=NVt({initialPanelVisible:!1,initialNimbusMinimized:n.defaultMinimize,enablePopup:n.enablePopup,enableNimbus:!n.hideNimbus,enableDraggable:n.draggable}),l=s.panelVisible,u=s.nimbusMinimized,{forwardToManager:d}=nHt({componentManager:s,emit:r}),f=tHt(d),p=new WeakSet,m=null,h=null,g=()=>{m&&=(clearTimeout(m.timer),null)},_=e=>{let{apiName:t,error:r,action:i,source:a,shouldToast:o=!0}=e,l=r instanceof Error?r.message:String(r),u=r instanceof Error?r:null;u&&p.has(u)||(u&&p.add(u),a!==`http`&&u&&m?.error===u&&g(),console.error(`[AIBlueking] ${t} error:`,r),o&&n.errorToast!==!1&&rc({message:l||R9(`请求失败`),theme:`error`}),s.emitInternal(`sdk-error`,{apiName:t,action:i,source:a,code:-1,message:l,data:r}))},v=e=>{g();let t=h??(S.value?`chat`:`init`);m={error:e,timer:setTimeout(()=>{m=null,_({apiName:t,error:e,source:`http`})},0)}},y=async(e,t)=>{let n=h;h=e;try{return await t()}finally{h=n}},b=e=>{_({apiName:`chat`,error:e,source:`business`})},{chatHelper:x,isReady:S,error:C,agentInfo:w,agentName:T,currentSession:E,initialize:D}=eHt({url:o,requestOptions:()=>(0,t.toValue)(n.requestOptions),autoInit:!0,protocolCallbacks:{onStart:()=>{f.receiveStart()},onMessage:()=>{f.receiveText()},onDone:()=>{f.receiveEnd()},onError:e=>{_({apiName:`chat`,error:e,source:`protocol`})}}}),O=x;O.onError?.(e=>{v(e)},{ignoreErrors:n.ignoreErrors});let k=new B9(O.session,O.agent,null,{enableChatSession:n.enableChatSession,initialSessionCode:n.initialSessionCode,alwaysCreateNewSession:n.alwaysCreateNewSession},O.message),A=new jVt(O.message,O.session),j=new V9(null,n.shortcuts||[]),M=null,N=()=>n.loadRecentSessionOnMount?(M||=k.loadRecentSession({skipLoadSessions:!0}).finally(()=>{M=null}),M):Promise.resolve(),P=async()=>{await y(`init`,async()=>{await D(),await N()})},F={appendTo:e=>{let t=e.closest(`.draggable-container-content`);return console.log(`[ai-blueking] appendTo called, ref:`,e),console.log(`[ai-blueking] appendTo closest result:`,t),t??document.body}},I=(0,t.computed)(()=>s.isCompressed.value),L=(0,t.computed)(()=>T.value),R=(0,t.computed)(()=>O.message.list.value.length===0),ee=(0,t.computed)(()=>n.resources?.length?n.resources:w.value?.resources??[]),z=(0,t.computed)(()=>n.prompts?.length?n.prompts:w.value?.conversationSettings?.predefinedQuestions??[]),B=(0,t.computed)(()=>(w.value?.relatedSkills??[]).map(e=>({skill_name:e.skill_name,skill_code:e.skill_code,description:e.description,icon:e.icon})));(0,t.watch)(()=>C.value,e=>{e&&(g(),_({apiName:`init`,error:e,source:`http`}))});let V=e=>{e.conversationSettings?.commands&&j.setAgentShortcuts(e.conversationSettings.commands)},te=async()=>{try{await O.agent.getAgentInfo();let e=w.value;return e&&V(e),e}catch(e){return _({apiName:`getAgentInfo`,error:e,source:`http`}),null}};(0,t.watch)(()=>S.value,async e=>{if(e&&w.value&&(V(w.value),w.value.conversationSettings&&d(`session-initialized`,{openingRemark:w.value.conversationSettings.openingRemark||``,predefinedQuestions:w.value.conversationSettings.predefinedQuestions||[]}),n.loadRecentSessionOnMount))try{await N()}catch(e){console.error(`[AIBlueking] Failed to load recent session:`,e)}},{immediate:!0}),(0,t.watch)(()=>n.shortcuts,e=>{j.setShortcuts(e||[])},{immediate:!0});let ne=e=>{QBt(e)&&(e.preventDefault(),l.value?s.hidePanel():s.showPanel())};return(0,t.onMounted)(async()=>{i.value&&s.setContainerRef(i.value),window.addEventListener(`keydown`,ne)}),(0,t.onBeforeUnmount)(()=>{g(),window.removeEventListener(`keydown`,ne),s.destroy()}),{chatHelper:O,componentManager:s,sessionBusinessManager:k,shareBusinessManager:A,shortcutManager:j,forwarders:f,forwardToManager:d,chatBotRef:a,draggableContainerRef:i,panelVisible:l,nimbusMinimized:u,normalizedUrl:o,agentInfo:w,agentName:L,currentSession:E,isCompressed:I,isWelcomeState:R,messageToolsTippyOptions:F,agentResources:ee,agentPrompts:z,agentSkills:B,handleError:b,reportSdkError:_,ensureSessionReady:P,updateAgentInfo:te}}function iHt(e){let{shortcutManager:n,chatBotRef:r,forwardToManager:i,show:a,props:o}=e,s=(0,t.ref)(!1),l=(0,t.ref)(``);return{aiSelectionVisible:s,selectedText:l,filteredPopupShortcuts:(0,t.computed)(()=>{let e=n.effectiveShortcuts.value;return typeof o.shortcutFilter==`function`&&l.value?e.filter(e=>o.shortcutFilter?.(e,l.value)):e}),handleSelectionChange:e=>{l.value=e},handleAiSelectionShortcut:async(e,t)=>{s.value=!1,await a(),r.value&&(e.components?.length?r.value.selectShortcut(e,t):(r.value.selectShortcut(e),r.value.setCiteText(t),r.value.focusInput())),i(`shortcut-click`,{shortcut:e,source:`popup`})}}}function aHt(e,n=!1){let r=window.innerHeight-48-40,i=window.innerWidth-48-16,a=(0,t.ref)(i),o=(0,t.ref)(r),s=(0,t.ref)(0),l=(0,t.ref)(n),u=(0,t.ref)(!1),d=(0,t.ref)(!1),f=0,p=e=>{e?a.value=window.innerWidth-12:a.value=i},m=(e,t)=>{o.value=t,s.value=t-r},h=()=>{(0,t.nextTick)(()=>{o.value=window.innerHeight-48-40+s.value,l.value?a.value=window.innerWidth-12:a.value=window.innerWidth-48-16})};return(0,t.onMounted)(()=>{window.addEventListener(`resize`,h),h()}),(0,t.onUnmounted)(()=>{window.removeEventListener(`resize`,h)}),{nimbusWidth:48,nimbusHeight:48,nimbusLeft:a,nimbusTop:o,isMinimize:l,isHovering:u,isDragging:d,handleNimbusDragging:m,handleNimbusMinimize:p,handleClick:()=>{if(d.value){d.value=!1;return}e(`click`)},handleMinimize:()=>{l.value=!l.value,e(`minimize`,l.value),l.value?a.value=window.innerWidth-12:a.value=window.innerWidth-60},handleDragging:(e,t)=>{a.value=e,o.value=t},handleMouseEnter:()=>{u.value=!0},handleMouseLeave:()=>{u.value=!1},handleMouseDown:()=>{f=Date.now(),d.value=!1},handleMouseUp:()=>{Date.now()-f>200&&(d.value=!0)}}}var oHt=420;function sHt(e){let{componentManager:t,chatBotRef:n,forwarders:r,forwardToManager:i,beforeNimbusClick:a,ensureSessionReady:o}=e,s=async e=>{t.showPanel(e),o&&await o(),e&&n.value&&await n.value.switchSession(e)},l=async e=>{await s(e)},u=()=>{t.hidePanel()};return{show:s,handleShow:l,hide:u,handleClose:()=>{u()},handleNimbusClick:async()=>{if(a&&await a()===!1){t.emit(`nimbus-click`,{});return}t.handleNimbusClick()},handleDragging:e=>{t.handleDragging(e)},handleResizing:e=>{t.handleResizing(e)},handleDragStop:e=>{t.handleDragStop(e)},handleResizeStop:e=>{t.handleResizeStop(e)},handleToggleCompression:()=>{t.container.toggleCompression()},handleCompressionChange:e=>{t.setCompressed(e)},handleExecutionPanelChange:e=>{e?t.collapseSidePanel():t.expandForSidePanel(oHt)},sendMessage:async e=>{n.value&&await n.value.sendMessage(e)},handleReceiveStart:()=>{r.receiveStart()},handleReceiveText:()=>{r.receiveText()},handleReceiveEnd:()=>{r.receiveEnd()},handleStop:()=>{r.stop()},stopGeneration:()=>{n.value&&n.value.stopGeneration()},updatePosition:(e,n)=>{t.container.updatePosition(e,n)},updateSize:(e,n)=>{t.container.updateSize(e,n)},updatePositionAndSize:(e,n,r,i)=>{t.container.updatePositionAndSize(e,n,r,i)},setCiteText:e=>{n.value&&n.value.setCiteText(e)},focusInput:()=>{n.value&&n.value.focusInput()},selectShortcut:(e,t)=>{n.value&&n.value.selectShortcut(e,t)},sendShortcut:(e,t)=>n.value?n.value.sendShortcut(e,t):Promise.resolve(),getChatHelper:()=>n.value?n.value.getChatHelper():null,handleShortcutClick:e=>{i(`shortcut-click`,e)}}}function cHt(e){let{chatHelper:n,sessionBusinessManager:r,chatBotRef:i,forwarders:a,reportSdkError:o,currentSession:s}=e,l=(0,t.ref)(``),u=(0,t.ref)(!0),d=(0,t.ref)(!1),f=(0,t.ref)(!1),p=()=>UBt(n.message.list.value);return(0,t.watch)(()=>s.value,e=>{e&&(l.value=e.sessionName||``,d.value=(e.sessionContentCount??0)>0||p())},{immediate:!0}),(0,t.watch)(()=>n.message.list.value.length,()=>{d.value=p()}),{sessionName:l,hasPermission:u,hasSessionContents:d,autoGenerateLoading:f,handleNewChat:async()=>{i.value?.exitShareMode(),a.newChat()},handleNewChatCreated:e=>{a.newChatCreated(e)},handleHistoryClick:e=>{a.historyClick(e)},handleHistorySessionSwitch:async e=>{try{i.value?.exitShareMode(),await r.switchSession(e)}catch(e){console.error(`[AIBlueking] Failed to switch history session:`,e),o({apiName:`session`,action:`historySwitch`,error:e,source:`business`})}},handleHistorySessionDelete:async e=>{try{await r.deleteSession(e)}catch(e){console.error(`[AIBlueking] Failed to delete history session:`,e),o({apiName:`session`,action:`historyDelete`,error:e,source:`business`})}},handleHistorySessionRename:async(e,t)=>{try{await r.updateSessionName(e,t)}catch(e){console.error(`[AIBlueking] Failed to rename history session:`,e),o({apiName:`session`,action:`historyRename`,error:e,source:`business`})}},handleAutoGenerateName:async()=>{let e=n.session.current?.value?.sessionCode;if(!e){console.error(`[AIBlueking] Cannot auto-generate name: no active session`);return}f.value=!0;try{await n.session.renameSession(e);let t=n.session.list.value.find(t=>t.sessionCode===e);t&&(l.value=t.sessionName||``)}catch(e){console.error(`[AIBlueking] Failed to auto-generate session name:`,e),o({apiName:`session`,action:`autoGenerateName`,error:e,source:`business`})}finally{f.value=!1}a.autoGenerateName()},handleHelpClick:()=>{a.helpClick()},handleRename:async e=>{let t=n.session.current?.value;if(!t){console.error(`[AIBlueking] Cannot rename: no active session`);return}try{await n.session.updateSession({...t,sessionName:e}),l.value=e}catch(e){console.error(`[AIBlueking] Failed to rename session:`,e),o({apiName:`session`,action:`rename`,error:e,source:`business`})}a.rename(e)},handleSessionSwitched:e=>{e&&(l.value=e.sessionName||``,d.value=(e.sessionContentCount??0)>0||p())},addNewSession:async e=>{e?await r.createSession(e):await r.createNewSession()},switchToSession:async e=>{i.value&&await i.value.switchSession(e)},updateSessionName:async(e,t)=>{try{await r.updateSessionName(e,t),l.value=t}catch(e){console.error(`[AIBlueking] Failed to update session name:`,e),o({apiName:`session`,action:`updateSessionName`,error:e,source:`business`})}}}}function lHt(e){let{shareBusinessManager:n,chatBotRef:r,forwarders:i,reportSdkError:a}=e,o=(0,t.ref)(!1);return{isShareLoading:o,handleShare:()=>{r.value?.enterShareMode(),i.share()},handleCancelShare:()=>{r.value?.exitShareMode()},handleConfirmShare:async e=>{o.value=!0;try{let{shareUrl:t,userMessageIds:a}=await n.shareMessages(e);await JBt(t),rc({message:R9(`分享链接已复制到剪贴板`),theme:`success`}),r.value?.exitShareMode(),i.shareMessages(a)}catch(e){console.error(`[AIBlueking] Failed to share messages:`,e),a({apiName:`share`,action:`confirmShare`,error:e,source:`business`})}finally{o.value=!1}}}}function uHt(e={}){let n=(0,t.ref)([]),r=(t,r,i={})=>{try{let a=typeof t==`string`?document.querySelector(t):t;if(!a)return console.warn(`Tooltip target not found: ${t}`),null;let o=du(a,{content:r,placement:`top`,arrow:!0,delay:[300,0],theme:`ai-blueking-tooltip`,...e,...i});return n.value.push(o),o}catch(e){return console.error(`Failed to create tooltip:`,e),null}},i=(e,t,n={})=>{let i=document.querySelectorAll(e),a=[];return i.forEach(e=>{let i=r(e,t,n);i&&a.push(i)}),a},a=e=>{let t=[];return e.forEach(({element:e,content:n,options:i})=>{let a=r(e,n,i);a&&t.push(a)}),t},o=()=>{n.value.forEach(e=>{e.destroy()}),n.value=[]};return(0,t.onBeforeUnmount)(()=>{o()}),{instances:n,createTooltip:r,createTooltipsForSelector:i,createMultipleTooltips:a,destroyAll:o,updateContent:(e,t)=>{e.setContent(t)},destroyInstance:e=>{e.destroy()}}}var dHt={url:``,title:``,extCls:``,hideNimbus:!1,hideHeader:!1,enablePopup:!0,draggable:!0,enableChatSession:!0,renderMode:Q8.Chat,defaultWidth:400,defaultHeight:void 0,defaultTop:0,defaultLeft:void 0,maxWidth:1e3,miniPadding:0,nimbusSize:`normal`,defaultMinimize:!1,shortcuts:()=>[],shortcutLimit:3,shortcutFilter:void 0,hideDefaultTrigger:!1,requestOptions:()=>({}),teleportTo:`body`,placeholder:void 0,helloText:R9(`你好,我是小鲸`),useAgentName:!1,disabledInput:!1,showHistoryIcon:!0,showNewChatIcon:!0,showCompressionIcon:!0,showMoreIcon:!0,initialSessionCode:``,autoSwitchToInitialSession:!1,alwaysCreateNewSession:!1,loadRecentSessionOnMount:!0,prompts:()=>[],dropdownMenuConfig:()=>({showRename:!0,showAutoGenerate:!0,showShare:!0}),defaultChatInputPosition:void 0,errorToast:!0,ignoreErrors:()=>[]},fHt=class extends k9{eventEmitter;constructor(e={}){super({onStart:e.onStart,onMessage:e.onMessage,onDone:e.onDone,onError:e.onError}),this.eventEmitter=e.eventEmitter}handleRunErrorEvent(e){super.handleRunErrorEvent(e),this.eventEmitter?.emit(`run-error`,{event:e})}handleTextMessageChunkEvent(e){super.handleTextMessageChunkEvent(e),this.eventEmitter?.emit(`text-chunk`,{event:e})}handleThinkingEndEvent(e){super.handleThinkingEndEvent(e),this.eventEmitter?.emit(`thinking-end`,{event:e})}handleThinkingStartEvent(e){super.handleThinkingStartEvent(e),this.eventEmitter?.emit(`thinking-start`,{event:e})}handleToolCallEndEvent(e){super.handleToolCallEndEvent(e),this.eventEmitter?.emit(`tool-call-end`,{event:e})}handleToolCallStartEvent(e){super.handleToolCallStartEvent(e),this.eventEmitter?.emit(`tool-call-start`,{event:e})}};function pHt(e={}){let{eventEmitter:t,onStart:n,onMessage:r,onDone:i,onError:a,onTextChunk:o}=e;return new k9({onStart:()=>{t?.emit(`receive-start`,{}),n?.()},onMessage:e=>{t?.emit(`receive-message`,{event:e}),e.type===`TextMessageChunk`&&o&&o(e),r?.(e)},onDone:()=>{t?.emit(`receive-end`,{}),i?.()},onError:e=>{t?.emit(`receive-error`,{error:e}),a?.(e)}})}function mHt(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Function]`}function U9(e,t,n,r=1){let[i,a]=typeof r==`number`?[r,r]:r;return[Math.round(t/i/e[0])*e[0],Math.round(n/a/e[1])*e[1]]}function W9(e,t,n){return e-t-n}function G9(e,t,n){return e-t-n}function K9(e,t,n){return t!==null&&e<t?t:n!==null&&n<e?n:e}function hHt(e,t,n){let r=e,i=[`matches`,`webkitMatchesSelector`,`mozMatchesSelector`,`msMatchesSelector`,`oMatchesSelector`].find(e=>mHt(r[e]));if(!mHt(r[i]))return!1;do{if(r[i](t))return!0;if(r===n)return!1;r=r.parentNode}while(r);return!1}function gHt(e){let t=window.getComputedStyle(e);return[parseFloat(t.getPropertyValue(`width`),10),parseFloat(t.getPropertyValue(`height`),10)]}function q9(e,t,n){e&&(e.attachEvent?e.attachEvent(`on`+t,n):e.addEventListener?e.addEventListener(t,n,!0):e[`on`+t]=n)}function J9(e,t,n){e&&(e.detachEvent?e.detachEvent(`on`+t,n):e.removeEventListener?e.removeEventListener(t,n,!0):e[`on`+t]=null)}var _Ht=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Y9={mouse:{start:`mousedown`,move:`mousemove`,stop:`mouseup`},touch:{start:`touchstart`,move:`touchmove`,stop:`touchend`}},vHt={userSelect:`none`,MozUserSelect:`none`,WebkitUserSelect:`none`,MsUserSelect:`none`},yHt={userSelect:`auto`,MozUserSelect:`auto`,WebkitUserSelect:`auto`,MsUserSelect:`auto`},X9=Y9.mouse,bHt={replace:!0,name:`vue-draggable-resizable`,props:{className:{type:String,default:`vdr`},classNameDraggable:{type:String,default:`draggable`},classNameResizable:{type:String,default:`resizable`},classNameDragging:{type:String,default:`dragging`},classNameResizing:{type:String,default:`resizing`},classNameActive:{type:String,default:`active`},classNameHandle:{type:String,default:`handle`},disableUserSelect:{type:Boolean,default:!0},enableNativeDrag:{type:Boolean,default:!1},preventDeactivation:{type:Boolean,default:!1},active:{type:Boolean,default:!1},draggable:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},lockAspectRatio:{type:Boolean,default:!1},w:{type:[Number,String],default:200,validator:e=>typeof e==`number`?e>0:e===`auto`},h:{type:[Number,String],default:200,validator:e=>typeof e==`number`?e>0:e===`auto`},minWidth:{type:Number,default:0,validator:e=>e>=0},minHeight:{type:Number,default:0,validator:e=>e>=0},maxWidth:{type:Number,default:null,validator:e=>e>=0},maxHeight:{type:Number,default:null,validator:e=>e>=0},x:{type:Number,default:0},y:{type:Number,default:0},z:{type:[String,Number],default:`auto`,validator:e=>typeof e==`string`?e===`auto`:e>=0},handles:{type:Array,default:()=>[`tl`,`tm`,`tr`,`mr`,`br`,`bm`,`bl`,`ml`],validator:e=>{let t=new Set([`tl`,`tm`,`tr`,`mr`,`br`,`bm`,`bl`,`ml`]);return new Set(e.filter(e=>t.has(e))).size===e.length}},dragHandle:{type:String,default:null},dragCancel:{type:String,default:null},axis:{type:String,default:`both`,validator:e=>[`x`,`y`,`both`].includes(e)},grid:{type:Array,default:()=>[1,1]},parent:{type:Boolean,default:!1},scale:{type:[Number,Array],default:1,validator:e=>typeof e==`number`?e>0:e.length===2&&e[0]>0&&e[1]>0},onDragStart:{type:Function,default:()=>!0},onDrag:{type:Function,default:()=>!0},onResizeStart:{type:Function,default:()=>!0},onResize:{type:Function,default:()=>!0}},data:function(){return{left:this.x,top:this.y,right:null,bottom:null,width:null,height:null,widthTouched:!1,heightTouched:!1,aspectFactor:null,parentWidth:null,parentHeight:null,handle:null,enabled:this.active,resizing:!1,dragging:!1,dragEnable:!1,resizeEnable:!1,zIndex:this.z}},created:function(){this.maxWidth&&this.minWidth>this.maxWidth&&console.warn(`[Vdr warn]: Invalid prop: minWidth cannot be greater than maxWidth`),this.maxHeight&&this.minHeight>this.maxHeight&&console.warn(`[Vdr warn]: Invalid prop: minHeight cannot be greater than maxHeight`),this.resetBoundsAndMouseState()},mounted:function(){this.enableNativeDrag||(this.$el.ondragstart=()=>!1);let[e,t]=this.getParentSize();this.parentWidth=e,this.parentHeight=t;let[n,r]=gHt(this.$el);this.aspectFactor=(this.w===`auto`?n:this.w)/(this.h===`auto`?r:this.h),this.width=this.w===`auto`?n:this.w,this.height=this.h===`auto`?r:this.h,this.right=this.parentWidth-this.width-this.left,this.bottom=this.parentHeight-this.height-this.top,this.active&&this.$emit(`activated`),q9(document.documentElement,`mousedown`,this.deselect),q9(document.documentElement,`touchend touchcancel`,this.deselect),q9(window,`resize`,this.checkParentSize)},beforeUnmount:function(){J9(document.documentElement,`mousedown`,this.deselect),J9(document.documentElement,`touchstart`,this.handleUp),J9(document.documentElement,`mousemove`,this.move),J9(document.documentElement,`touchmove`,this.move),J9(document.documentElement,`mouseup`,this.handleUp),J9(document.documentElement,`touchend touchcancel`,this.deselect),J9(window,`resize`,this.checkParentSize)},methods:{resetBoundsAndMouseState(){this.mouseClickPosition={mouseX:0,mouseY:0,x:0,y:0,w:0,h:0},this.bounds={minLeft:null,maxLeft:null,minRight:null,maxRight:null,minTop:null,maxTop:null,minBottom:null,maxBottom:null}},checkParentSize(){if(this.parent){let[e,t]=this.getParentSize();this.parentWidth=e,this.parentHeight=t,this.right=this.parentWidth-this.width-this.left,this.bottom=this.parentHeight-this.height-this.top}},getParentSize(){if(this.parent){let e=window.getComputedStyle(this.$el.parentNode,null);return[parseInt(e.getPropertyValue(`width`),10),parseInt(e.getPropertyValue(`height`),10)]}return[null,null]},elementTouchDown(e){X9=Y9.touch,this.elementDown(e)},elementMouseDown(e){X9=Y9.mouse,this.elementDown(e)},elementDown(e){if(e instanceof MouseEvent&&e.button!==0)return;let t=e.target||e.srcElement;if(this.$el.contains(t)){if(this.onDragStart(e)===!1)return;if(this.dragHandle&&!hHt(t,this.dragHandle,this.$el)||this.dragCancel&&hHt(t,this.dragCancel,this.$el)){this.dragging=!1;return}this.enabled||(this.enabled=!0,this.$emit(`activated`),this.$emit(`update:active`,!0)),this.draggable&&(this.dragEnable=!0),this.mouseClickPosition.mouseX=e.touches?e.touches[0].pageX:e.pageX,this.mouseClickPosition.mouseY=e.touches?e.touches[0].pageY:e.pageY,this.mouseClickPosition.left=this.left,this.mouseClickPosition.right=this.right,this.mouseClickPosition.top=this.top,this.mouseClickPosition.bottom=this.bottom,this.parent&&(this.bounds=this.calcDragLimits()),q9(document.documentElement,X9.move,this.move),q9(document.documentElement,X9.stop,this.handleUp)}},calcDragLimits(){return{minLeft:this.left%this.grid[0],maxLeft:Math.floor((this.parentWidth-this.width-this.left)/this.grid[0])*this.grid[0]+this.left,minRight:this.right%this.grid[0],maxRight:Math.floor((this.parentWidth-this.width-this.right)/this.grid[0])*this.grid[0]+this.right,minTop:this.top%this.grid[1],maxTop:Math.floor((this.parentHeight-this.height-this.top)/this.grid[1])*this.grid[1]+this.top,minBottom:this.bottom%this.grid[1],maxBottom:Math.floor((this.parentHeight-this.height-this.bottom)/this.grid[1])*this.grid[1]+this.bottom}},deselect(e){let t=e.target||e.srcElement,n=RegExp(this.className+`-([trmbl]{2})`,``);!this.$el.contains(t)&&!n.test(t.className)&&(this.enabled&&!this.preventDeactivation&&(this.enabled=!1,this.$emit(`deactivated`),this.$emit(`update:active`,!1)),J9(document.documentElement,X9.move,this.handleResize)),this.resetBoundsAndMouseState()},handleTouchDown(e,t){X9=Y9.touch,this.handleDown(e,t)},handleDown(e,t){t instanceof MouseEvent&&t.which!==1||this.onResizeStart(e,t)!==!1&&(t.stopPropagation&&t.stopPropagation(),this.lockAspectRatio&&!e.includes(`m`)?this.handle=`m`+e.substring(1):this.handle=e,this.resizeEnable=!0,this.mouseClickPosition.mouseX=t.touches?t.touches[0].pageX:t.pageX,this.mouseClickPosition.mouseY=t.touches?t.touches[0].pageY:t.pageY,this.mouseClickPosition.left=this.left,this.mouseClickPosition.right=this.right,this.mouseClickPosition.top=this.top,this.mouseClickPosition.bottom=this.bottom,this.bounds=this.calcResizeLimits(),q9(document.documentElement,X9.move,this.handleResize),q9(document.documentElement,X9.stop,this.handleUp))},calcResizeLimits(){let e=this.minW,t=this.minH,n=this.maxW,r=this.maxH,i=this.aspectFactor,[a,o]=this.grid,s=this.width,l=this.height,u=this.left,d=this.top,f=this.right,p=this.bottom;this.lockAspectRatio&&(e/t>i?t=e/i:e=i*t,n&&r?(n=Math.min(n,i*r),r=Math.min(r,n/i)):n?r=n/i:r&&(n=i*r)),n-=n%a,r-=r%o;let m={minLeft:null,maxLeft:null,minTop:null,maxTop:null,minRight:null,maxRight:null,minBottom:null,maxBottom:null};return this.parent?(m.minLeft=u%a,m.maxLeft=u+Math.floor((s-e)/a)*a,m.minTop=d%o,m.maxTop=d+Math.floor((l-t)/o)*o,m.minRight=f%a,m.maxRight=f+Math.floor((s-e)/a)*a,m.minBottom=p%o,m.maxBottom=p+Math.floor((l-t)/o)*o,n&&(m.minLeft=Math.max(m.minLeft,this.parentWidth-f-n),m.minRight=Math.max(m.minRight,this.parentWidth-u-n)),r&&(m.minTop=Math.max(m.minTop,this.parentHeight-p-r),m.minBottom=Math.max(m.minBottom,this.parentHeight-d-r)),this.lockAspectRatio&&(m.minLeft=Math.max(m.minLeft,u-d*i),m.minTop=Math.max(m.minTop,d-u/i),m.minRight=Math.max(m.minRight,f-p*i),m.minBottom=Math.max(m.minBottom,p-f/i))):(m.minLeft=null,m.maxLeft=u+Math.floor((s-e)/a)*a,m.minTop=null,m.maxTop=d+Math.floor((l-t)/o)*o,m.minRight=null,m.maxRight=f+Math.floor((s-e)/a)*a,m.minBottom=null,m.maxBottom=p+Math.floor((l-t)/o)*o,n&&(m.minLeft=-(f+n),m.minRight=-(u+n)),r&&(m.minTop=-(p+r),m.minBottom=-(d+r)),this.lockAspectRatio&&n&&r&&(m.minLeft=Math.min(m.minLeft,-(f+n)),m.minTop=Math.min(m.minTop,-(r+p)),m.minRight=Math.min(m.minRight,-u-n),m.minBottom=Math.min(m.minBottom,-d-r))),m},move(e){this.resizing?this.handleResize(e):this.dragEnable&&this.handleDrag(e)},handleDrag(e){let t=this.axis,n=this.grid,r=this.bounds,i=this.mouseClickPosition,[a,o]=U9(n,t&&t!==`y`?i.mouseX-(e.touches?e.touches[0].pageX:e.pageX):0,t&&t!==`x`?i.mouseY-(e.touches?e.touches[0].pageY:e.pageY):0,this.scale),s=K9(i.left-a,r.minLeft,r.maxLeft),l=K9(i.top-o,r.minTop,r.maxTop);if(this.onDrag(s,l)===!1)return;let u=K9(i.right+a,r.minRight,r.maxRight),d=K9(i.bottom+o,r.minBottom,r.maxBottom);this.left=s,this.top=l,this.right=u,this.bottom=d,this.$emit(`dragging`,this.left,this.top),this.dragging=!0},moveHorizontally(e){let[t,n]=U9(this.grid,e,this.top,1),r=K9(t,this.bounds.minLeft,this.bounds.maxLeft);this.left=r,this.right=this.parentWidth-this.width-r},moveVertically(e){let[t,n]=U9(this.grid,this.left,e,1),r=K9(n,this.bounds.minTop,this.bounds.maxTop);this.top=r,this.bottom=this.parentHeight-this.height-r},handleResize(e){let t=this.left,n=this.top,r=this.right,i=this.bottom,a=this.mouseClickPosition,o=this.aspectFactor,s=a.mouseX-(e.touches?e.touches[0].pageX:e.pageX),l=a.mouseY-(e.touches?e.touches[0].pageY:e.pageY);!this.widthTouched&&s&&(this.widthTouched=!0),!this.heightTouched&&l&&(this.heightTouched=!0);let[u,d]=U9(this.grid,s,l,this.scale);this.handle.includes(`b`)?(i=K9(a.bottom+d,this.bounds.minBottom,this.bounds.maxBottom),this.lockAspectRatio&&this.resizingOnY&&(r=this.right-(this.bottom-i)*o)):this.handle.includes(`t`)&&(n=K9(a.top-d,this.bounds.minTop,this.bounds.maxTop),this.lockAspectRatio&&this.resizingOnY&&(t=this.left-(this.top-n)*o)),this.handle.includes(`r`)?(r=K9(a.right+u,this.bounds.minRight,this.bounds.maxRight),this.lockAspectRatio&&this.resizingOnX&&(i=this.bottom-(this.right-r)/o)):this.handle.includes(`l`)&&(t=K9(a.left-u,this.bounds.minLeft,this.bounds.maxLeft),this.lockAspectRatio&&this.resizingOnX&&(n=this.top-(this.left-t)/o));let f=W9(this.parentWidth,t,r),p=G9(this.parentHeight,n,i);this.onResize(this.handle,t,n,f,p)!==!1&&(this.left=t,this.top=n,this.right=r,this.bottom=i,this.width=f,this.height=p,this.$emit(`resizing`,this.left,this.top,this.width,this.height),this.resizing=!0)},changeWidth(e){let[t,n]=U9(this.grid,e,0,1),r=K9(this.parentWidth-t-this.left,this.bounds.minRight,this.bounds.maxRight),i=this.bottom;this.lockAspectRatio&&(i=this.bottom-(this.right-r)/this.aspectFactor);let a=W9(this.parentWidth,this.left,r),o=G9(this.parentHeight,this.top,i);this.right=r,this.bottom=i,this.width=a,this.height=o},changeHeight(e){let[t,n]=U9(this.grid,0,e,1),r=K9(this.parentHeight-n-this.top,this.bounds.minBottom,this.bounds.maxBottom),i=this.right;this.lockAspectRatio&&(i=this.right-(this.bottom-r)*this.aspectFactor);let a=W9(this.parentWidth,this.left,i),o=G9(this.parentHeight,this.top,r);this.right=i,this.bottom=r,this.width=a,this.height=o},handleUp(e){this.handle=null,this.resetBoundsAndMouseState(),this.dragEnable=!1,this.resizeEnable=!1,this.resizing&&(this.resizing=!1,this.$emit(`resizeStop`,this.left,this.top,this.width,this.height)),this.dragging&&(this.dragging=!1,this.$emit(`dragStop`,this.left,this.top)),J9(document.documentElement,X9.move,this.handleResize)}},computed:{style(){return{transform:`translate(${this.left}px, ${this.top}px)`,width:this.computedWidth,height:this.computedHeight,zIndex:this.zIndex,...this.dragging&&this.disableUserSelect?vHt:yHt}},actualHandles(){return this.resizable?this.handles:[]},computedWidth(){return this.w===`auto`&&!this.widthTouched?`auto`:this.width+`px`},computedHeight(){return this.h===`auto`&&!this.heightTouched?`auto`:this.height+`px`},minW(){return this.minWidth},minH(){return this.minHeight},maxW(){return this.maxWidth},maxH(){return this.maxHeight},resizingOnX(){return!!this.handle&&(this.handle.includes(`l`)||this.handle.includes(`r`))},resizingOnY(){return!!this.handle&&(this.handle.includes(`t`)||this.handle.includes(`b`))},isCornerHandle(){return!!this.handle&&[`tl`,`tr`,`br`,`bl`].includes(this.handle)}},watch:{active(e){this.enabled=e,e?this.$emit(`activated`):this.$emit(`deactivated`)},z(e){(e>=0||e===`auto`)&&(this.zIndex=e)},x(e){this.resizing||this.dragging||(this.parent&&(this.bounds=this.calcDragLimits()),this.moveHorizontally(e))},y(e){this.resizing||this.dragging||(this.parent&&(this.bounds=this.calcDragLimits()),this.moveVertically(e))},lockAspectRatio(e){e?this.aspectFactor=this.width/this.height:this.aspectFactor=void 0},w(e){this.resizing||this.dragging||(this.parent&&(this.bounds=this.calcResizeLimits()),this.changeWidth(e))},h(e){this.resizing||this.dragging||(this.parent&&(this.bounds=this.calcResizeLimits()),this.changeHeight(e))}}},xHt=[`onMousedown`,`onTouchstart`];function SHt(e,n,r,i,a,o){return(0,t.openBlock)(),(0,t.createElementBlock)(`div`,{style:(0,t.normalizeStyle)(o.style),class:(0,t.normalizeClass)([{[r.classNameActive]:e.enabled,[r.classNameDragging]:e.dragging,[r.classNameResizing]:e.resizing,[r.classNameDraggable]:r.draggable,[r.classNameResizable]:r.resizable},r.className]),onMousedown:n[0]||=(...e)=>o.elementMouseDown&&o.elementMouseDown(...e),onTouchstart:n[1]||=(...e)=>o.elementTouchDown&&o.elementTouchDown(...e)},[((0,t.openBlock)(!0),(0,t.createElementBlock)(t.Fragment,null,(0,t.renderList)(o.actualHandles,n=>((0,t.openBlock)(),(0,t.createElementBlock)(`div`,{key:n,class:(0,t.normalizeClass)([r.classNameHandle,r.classNameHandle+`-`+n]),style:(0,t.normalizeStyle)({display:e.enabled?`block`:`none`}),onMousedown:(0,t.withModifiers)(e=>o.handleDown(n,e),[`stop`,`prevent`]),onTouchstart:(0,t.withModifiers)(e=>o.handleTouchDown(n,e),[`stop`,`prevent`])},[(0,t.renderSlot)(e.$slots,n)],46,xHt))),128)),(0,t.renderSlot)(e.$slots,`default`)],38)}var Z9=_Ht(bHt,[[`render`,SHt]]);function Q9(e){Q9.installed||(Q9.installed=!0,e.component(`VueDraggableResizable`,Z9))}var CHt={install:Q9},$9=null;typeof window<`u`?$9=window.Vue:typeof global<`u`&&($9=global.Vue),$9&&$9.use(CHt);function wHt(e={},n){let r=e.initWidth||400,i=e.minWidth||400,a=e.minHeight||400,o=e.maxWidthPercent||40,s=e.compressedHeight||800,l=e.compressedPadding===void 0?0:e.compressedPadding,u=(0,t.ref)(e.defaultLeft===void 0?window.innerWidth-r:e.defaultLeft),d=(0,t.ref)(e.defaultTop===void 0?0:e.defaultTop),f=(0,t.ref)(e.defaultHeight===void 0?window.innerHeight-(e.defaultTop===void 0?0:e.defaultTop):e.defaultHeight),p=(0,t.ref)(r),m=(0,t.ref)(d.value),h=(0,t.ref)(u.value),g=(0,t.ref)(p.value),_=(0,t.ref)(f.value),v=(0,t.ref)(Math.max(window.innerWidth*(o/100),g.value)),y=(0,t.ref)(!1),b=(0,t.ref)(0),x=null,S=null,C=(0,t.ref)(!1),w=e=>{let t=window.innerWidth,n={...e};return n.width>t&&(n.width=t),n.x+n.width>t&&(n.x=t-n.width),n.x<0&&(n.x=0),n},T=()=>({x:h.value,y:m.value,width:g.value,height:_.value}),E=(e,t)=>{h.value=e,m.value=t,b.value=e-(window.innerWidth-g.value),n?.onDragging?.(T())},D=(e,t,r,i)=>{h.value=e,m.value=t,g.value=Math.min(r,v.value),_.value=i,n?.onResizing?.(T())},O=(e,t)=>{h.value=e,m.value=t,b.value=e-(window.innerWidth-g.value),C.value&&(S=T()),n?.onDragStop?.(T())},k=(e,t,r,i)=>{h.value=e,m.value=t,g.value=Math.min(r,v.value),_.value=i,C.value&&(S=T()),n?.onResizeStop?.(T())},A=()=>{v.value=Math.max(window.innerWidth*(o/100),g.value),(0,t.nextTick)(()=>{if(y.value)h.value=window.innerWidth-g.value-l,m.value=window.innerHeight-s-l;else{let e=window.innerWidth-g.value-b.value;h.value=Math.max(0,e),setTimeout(()=>{_.value=window.innerHeight-m.value},0)}g.value>v.value&&(g.value=v.value)})},j=()=>{y.value?(m.value=d.value,(0,t.nextTick)(()=>{_.value=f.value,h.value=u.value,g.value=p.value})):(m.value=window.innerHeight-s-l,h.value=u.value-l,g.value=r,_.value=s),y.value=!y.value},M=(e,t)=>{h.value=e,m.value=t,b.value=e-(window.innerWidth-g.value)},N=(e,t)=>{g.value=Math.max(i,Math.min(e,v.value)),_.value=Math.max(a,t)};return(0,t.onMounted)(()=>{window.addEventListener(`resize`,A)}),(0,t.onBeforeUnmount)(()=>{window.removeEventListener(`resize`,A)}),{minWidth:i,minHeight:a,maxWidth:v,top:m,left:h,width:g,height:_,isCompressed:y,isSidePanelExpanded:C,handleDragging:E,handleResizing:D,handleDragStop:O,handleResizeStop:k,toggleCompression:j,updatePosition:M,updateSize:N,updatePositionAndSize:(e,t,n,r)=>{M(e,t),N(n,r)},expandForSidePanel:e=>{if(C.value)return;let n=T();x={...n},C.value=!0;let r=n.x+n.width,i=S?.width??n.width+e,a=w({x:r-i,y:n.y,width:i,height:n.height});M(a.x,a.y),(0,t.nextTick)(()=>{N(a.width,a.height)})},collapseSidePanel:()=>{if(!C.value)return;let e=T();S={...e},C.value=!1;let n=e.x+e.width,r=x?.width??e.width,i=w({x:n-r,y:e.y,width:r,height:e.height});N(i.width,i.height),(0,t.nextTick)(()=>{M(i.x,i.y)})}}}var THt={class:`draggable-container-content`},EHt=z9((0,t.defineComponent)({__name:`draggable-container`,props:{className:{default:``},compressedHeight:{default:800},compressedPadding:{default:0},defaultHeight:{default:void 0},defaultWidth:{default:400},defaultX:{default:void 0},defaultY:{default:0},draggable:{type:Boolean,default:!0},dragHandle:{default:`.drag-handle`},maxWidth:{default:void 0},maxWidthPercent:{default:80},minHeight:{default:400},minWidth:{default:400},resizable:{type:Boolean,default:!0},teleportTo:{default:`body`},visible:{type:Boolean,default:!1}},emits:[`dragging`,`resizing`,`drag-stop`,`resize-stop`,`compression-change`],setup(e,{expose:n,emit:r}){let i=e,a=r,o=(0,t.ref)(!1),{minWidth:s,minHeight:l,maxWidth:u,top:d,left:f,width:p,height:m,isCompressed:h,isSidePanelExpanded:g,handleDragging:_,handleResizing:v,handleDragStop:y,handleResizeStop:b,toggleCompression:x,updatePosition:S,updateSize:C,updatePositionAndSize:w,expandForSidePanel:T,collapseSidePanel:E}=wHt({initWidth:i.defaultWidth,minWidth:i.minWidth,minHeight:i.minHeight,maxWidthPercent:i.maxWidthPercent,compressedHeight:i.compressedHeight,defaultHeight:i.defaultHeight,defaultTop:i.defaultY,defaultLeft:i.defaultX,compressedPadding:i.compressedPadding},{onDragStop:e=>a(`drag-stop`,e),onResizeStop:e=>a(`resize-stop`,e),onDragging:e=>a(`dragging`,e),onResizing:e=>a(`resizing`,e)}),D=(0,t.computed)(()=>({"--draggable-max-width":typeof i.maxWidth==`number`?`${i.maxWidth}px`:i.maxWidth??`${u.value}px`})),O=(0,t.computed)(()=>({x:f.value,y:d.value,width:p.value,height:m.value})),k=()=>{document.querySelectorAll(`iframe`).forEach(e=>{e.style.pointerEvents=`none`})},A=()=>{document.querySelectorAll(`iframe`).forEach(e=>{e.style.pointerEvents=``})},j=(e,t)=>{o.value||(o.value=!0,k()),_(e,t)},M=(e,t,n,r)=>{o.value||(o.value=!0,k()),v(e,t,n,r)},N=(e,t)=>{y(e,t),o.value=!1,A()},P=(e,t,n,r)=>{b(e,t,n,r),o.value=!1,A()};return(0,t.watch)(h,e=>{a(`compression-change`,e)}),n({updatePosition:S,updateSize:C,updatePositionAndSize:w,toggleCompression:x,expandForSidePanel:T,collapseSidePanel:E,positionAndSize:O,isCompressed:h,isSidePanelExpanded:g}),(e,n)=>(0,t.withDirectives)(((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Z9),{ref:`draggableRef`,active:i.visible,class:(0,t.normalizeClass)([`draggable-container-wrapper`,i.className]),"class-name":`draggable-container-inner`,"drag-handle":i.dragHandle,draggable:i.draggable,h:(0,t.unref)(m),"max-width":(0,t.unref)(u),"min-height":(0,t.unref)(l),"min-width":(0,t.unref)(s),parent:!0,"prevent-deactivation":!0,resizable:i.resizable,style:(0,t.normalizeStyle)(D.value),w:(0,t.unref)(p),x:(0,t.unref)(f),y:(0,t.unref)(d),onDragStop:N,onDragging:j,onResizeStop:P,onResizing:M},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,THt,[(0,t.renderSlot)(e.$slots,`default`,{},void 0,!0)])]),_:3},8,[`active`,`class`,`drag-handle`,`draggable`,`h`,`max-width`,`min-height`,`min-width`,`resizable`,`style`,`w`,`x`,`y`])),[[t.vShow,i.visible]])}}),[[`__scopeId`,`data-v-1118456b`]]),DHt={class:`nimbus-bkai-wrapper`},OHt=[`width`,`height`,`src`],kHt=z9((0,t.defineComponent)({name:`NimbusButton`,__name:`nimbus`,props:{isPanelShow:{type:Boolean},isMinimize:{type:Boolean},size:{default:`normal`}},emits:[`click`,`minimize`,`update:isMinimize`],setup(e,{emit:n}){(0,t.useCssVars)(e=>({v05a8b16e:`${o.value.container}px`,v4e1cf4ca:`${o.value.wrapper}px`,v5ab0c513:`${o.value.mini.right}px`,v40c13a80:`${o.value.mini.size}px`,v0d35a9ef:`${o.value.mini.fontSize}px`}));let r=e,i=n,a={small:{container:40,wrapper:32,img:24,mini:{size:14,fontSize:10,right:-4}},normal:{container:48,wrapper:40,img:32,mini:{size:16,fontSize:12,right:-6}},large:{container:56,wrapper:48,img:40,mini:{size:18,fontSize:14,right:-6}}},o=(0,t.computed)(()=>a[r.size]),s=(0,t.ref)(null),l=(0,t.ref)(null),{nimbusLeft:u,nimbusTop:d,isMinimize:f,handleClick:p,handleMinimize:m,handleDragging:h,handleMouseEnter:g,handleMouseLeave:_,handleMouseDown:v,handleMouseUp:y}=aHt(i,r.isMinimize);(0,t.watch)(f,e=>{i(`update:isMinimize`,e)});let b=(0,t.computed)(()=>f.value?R9(`恢复默认大小`):R9(`最小化,将缩成锚点`)),{createTooltip:x,destroyAll:S}=uHt({theme:`ai-blueking`,delay:[0,0]}),C=()=>{(0,t.nextTick)(()=>{w()})},w=()=>{S(),s.value&&!f.value&&x(s.value,XBt(),{placement:`left`}),l.value&&x(l.value,b.value,{placement:`top`})};return(0,t.watch)(()=>f.value,()=>{(0,t.nextTick)(()=>{w()})}),(0,t.onMounted)(()=>{(0,t.nextTick)(()=>{w()}),window.addEventListener(`resize`,C)}),(0,t.onBeforeUnmount)(()=>{window.removeEventListener(`resize`,C)}),(n,r)=>((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(Z9),{active:!e.isPanelShow,axis:`y`,draggable:!0,h:o.value.container,parent:!0,"prevent-deactivation":!0,resizable:!1,w:o.value.container,x:(0,t.unref)(u),y:(0,t.unref)(d),onDragging:(0,t.unref)(h)},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,{ref_key:`nimbusContainerRef`,ref:s,class:(0,t.normalizeClass)([`nimbus-container`,{"is-minimize":(0,t.unref)(f)}]),onClick:r[1]||=(...e)=>(0,t.unref)(p)&&(0,t.unref)(p)(...e),onMousedown:r[2]||=(...e)=>(0,t.unref)(v)&&(0,t.unref)(v)(...e),onMouseenter:r[3]||=(...e)=>(0,t.unref)(g)&&(0,t.unref)(g)(...e),onMouseleave:r[4]||=(...e)=>(0,t.unref)(_)&&(0,t.unref)(_)(...e),onMouseup:r[5]||=(...e)=>(0,t.unref)(y)&&(0,t.unref)(y)(...e)},[(0,t.createElementVNode)(`div`,DHt,[(0,t.createElementVNode)(`img`,{width:o.value.img,height:o.value.img,src:(0,t.unref)(oBt),alt:`nimbus`},null,8,OHt)]),(0,t.createElementVNode)(`i`,{ref_key:`minimizeButtonRef`,ref:l,class:(0,t.normalizeClass)([`nimbus-mini bkai-icon`,(0,t.unref)(f)?`bkai-yinyong`:`bkai-minus-line`]),onClick:r[0]||=(0,t.withModifiers)((...e)=>(0,t.unref)(m)&&(0,t.unref)(m)(...e),[`stop`])},null,2)],34)]),_:1},8,[`active`,`h`,`w`,`x`,`y`,`onDragging`]))}}),[[`__scopeId`,`data-v-26b6f3ea`]]),AHt=z9((0,t.defineComponent)({__name:`ai-blueking`,props:(0,t.mergeDefaults)({alwaysCreateNewSession:{type:Boolean},autoSwitchToInitialSession:{type:Boolean},defaultChatInputPosition:{},defaultHeight:{},defaultLeft:{},defaultMinimize:{type:Boolean},defaultTop:{},defaultWidth:{},disabledInput:{type:Boolean},draggable:{type:Boolean},dropdownMenuConfig:{},enableChatSession:{type:Boolean},enablePopup:{type:Boolean},errorToast:{type:Boolean},extCls:{},getSideRenderComponent:{type:Function},getSideTabRenderComponent:{type:Function},helloText:{},hideDefaultTrigger:{type:Boolean},hideHeader:{type:Boolean},hideNimbus:{type:Boolean},ignoreErrors:{},initialSessionCode:{},loadRecentSessionOnMount:{type:Boolean},maxWidth:{},miniPadding:{},nimbusSize:{},onCustomTabChange:{type:Function},placeholder:{},prompts:{},renderMode:{},requestOptions:{},resources:{},shortcutLimit:{},shortcuts:{},showCompressionIcon:{type:Boolean},showHistoryIcon:{type:Boolean},showMoreIcon:{type:Boolean},showNewChatIcon:{type:Boolean},teleportTo:{},title:{},url:{},useAgentName:{type:Boolean},beforeNimbusClick:{type:Function},shortcutFilter:{type:Function},resizeProps:{}},dHt),emits:[`show`,`close`,`dragging`,`resizing`,`drag-stop`,`resize-stop`,`send-message`,`receive-start`,`receive-text`,`receive-end`,`stop`,`shortcut-click`,`session-initialized`,`sdk-error`,`transfer-messages`,`share-messages`,`new-chat`,`new-chat-created`,`history-click`,`auto-generate-name`,`help-click`,`rename`,`share`],setup(e,{expose:n,emit:r}){let i=e,{chatHelper:a,componentManager:o,sessionBusinessManager:s,shareBusinessManager:l,shortcutManager:u,forwarders:d,forwardToManager:f,chatBotRef:p,draggableContainerRef:m,panelVisible:h,nimbusMinimized:g,normalizedUrl:_,agentName:v,currentSession:y,isCompressed:b,isWelcomeState:x,messageToolsTippyOptions:S,agentResources:C,agentPrompts:w,agentSkills:T,handleError:E,reportSdkError:D,ensureSessionReady:O,updateAgentInfo:k}=rHt({props:i,emit:r}),{show:A,hide:j,handleShow:M,handleClose:N,handleNimbusClick:P,handleDragging:F,handleResizing:I,handleDragStop:L,handleResizeStop:R,handleToggleCompression:ee,handleCompressionChange:z,handleExecutionPanelChange:B,sendMessage:V,handleReceiveStart:te,handleReceiveText:ne,handleReceiveEnd:re,handleStop:ie,stopGeneration:ae,setCiteText:H,focusInput:oe,selectShortcut:se,sendShortcut:ce,getChatHelper:le,updatePosition:ue,updateSize:de,updatePositionAndSize:fe,handleShortcutClick:pe}=sHt({componentManager:o,chatBotRef:p,forwarders:d,forwardToManager:f,beforeNimbusClick:i.beforeNimbusClick,ensureSessionReady:O}),{sessionName:me,hasPermission:he,hasSessionContents:ge,autoGenerateLoading:_e,handleNewChat:ve,handleNewChatCreated:ye,handleHistoryClick:be,handleHistorySessionSwitch:xe,handleHistorySessionDelete:Se,handleHistorySessionRename:Ce,handleAutoGenerateName:we,handleHelpClick:Te,handleRename:Ee,handleSessionSwitched:De,addNewSession:Oe,switchToSession:ke,updateSessionName:Ae}=cHt({chatHelper:a,sessionBusinessManager:s,chatBotRef:p,forwarders:d,reportSdkError:D,currentSession:y}),{isShareLoading:je,handleShare:Me,handleCancelShare:Ne,handleConfirmShare:Pe}=lHt({shareBusinessManager:l,chatBotRef:p,forwarders:d,reportSdkError:D}),{aiSelectionVisible:Fe,filteredPopupShortcuts:Ie,handleSelectionChange:Le,handleAiSelectionShortcut:Re}=iHt({shortcutManager:u,chatBotRef:p,forwardToManager:f,show:A,props:i}),ze=e=>{ge.value=!0,d.sendMessage(e)};return n({show:A,handleShow:M,handleClose:N,hide:j,sendMessage:V,selectShortcut:se,sendShortcut:ce,getChatHelper:le,stopGeneration:ae,addNewSession:Oe,switchToSession:ke,updateSessionName:Ae,updatePosition:ue,updateSize:de,updatePositionAndSize:fe,setCiteText:H,focusInput:oe,updateAgentInfo:k}),(e,n)=>((0,t.openBlock)(),(0,t.createBlock)(t.Teleport,{to:i.teleportTo},[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`ai-blueking-v2`,i.extCls])},[(0,t.createCommentVNode)(` 可拖拽容器 `),(0,t.createVNode)((0,t.unref)(EHt),{ref_key:`draggableContainerRef`,ref:m,"compressed-padding":i.miniPadding,"default-height":i.defaultHeight,"default-width":i.defaultWidth,"default-x":i.defaultLeft,"default-y":i.defaultTop,"drag-handle":`.drag-handle`,draggable:i.draggable,"max-width":i.maxWidth,"max-width-percent":80,visible:(0,t.unref)(h),onCompressionChange:(0,t.unref)(z),onDragStop:(0,t.unref)(L),onDragging:(0,t.unref)(F),onResizeStop:(0,t.unref)(R),onResizing:(0,t.unref)(I)},{default:(0,t.withCtx)(()=>[(0,t.createElementVNode)(`div`,{class:(0,t.normalizeClass)([`ai-blueking-panel`,{"has-messages":!(0,t.unref)(x)}])},[(0,t.createCommentVNode)(` 独立的 Header 组件 `),i.hideHeader?(0,t.createCommentVNode)(`v-if`,!0):((0,t.openBlock)(),(0,t.createBlock)(DVt,{key:0,"agent-name":(0,t.unref)(v),"chat-helper":(0,t.unref)(a),draggable:i.draggable,"dropdown-menu-config":i.dropdownMenuConfig,"enable-chat-session":i.enableChatSession,"has-permission":(0,t.unref)(he),"has-session-contents":(0,t.unref)(ge),"auto-generate-loading":(0,t.unref)(_e),"is-compression-height":(0,t.unref)(b),"render-mode":i.renderMode,"session-business-manager":(0,t.unref)(s),"session-name":(0,t.unref)(me),"show-compression-icon":i.showCompressionIcon,"show-history-icon":i.showHistoryIcon,"show-more-icon":i.showMoreIcon,"show-new-chat-icon":i.showNewChatIcon,title:i.title,onAutoGenerateName:(0,t.unref)(we),onClose:(0,t.unref)(N),onHelpClick:(0,t.unref)(Te),onHistoryClick:(0,t.unref)(be),onHistorySessionDelete:(0,t.unref)(Se),onHistorySessionRename:(0,t.unref)(Ce),onHistorySessionSwitch:(0,t.unref)(xe),onNewChat:(0,t.unref)(ve),onNewChatCreated:(0,t.unref)(ye),onRename:(0,t.unref)(Ee),onShare:(0,t.unref)(Me),onToggleCompression:(0,t.unref)(ee)},(0,t.createSlots)({_:2},[e.$slots.headerLeft?{name:`headerLeft`,fn:(0,t.withCtx)(()=>[(0,t.renderSlot)(e.$slots,`headerLeft`,{},void 0,!0)]),key:`0`}:void 0]),1032,`agent-name.chat-helper.draggable.dropdown-menu-config.enable-chat-session.has-permission.has-session-contents.auto-generate-loading.is-compression-height.render-mode.session-business-manager.session-name.show-compression-icon.show-history-icon.show-more-icon.show-new-chat-icon.title.onAutoGenerateName.onClose.onHelpClick.onHistoryClick.onHistorySessionDelete.onHistorySessionRename.onHistorySessionSwitch.onNewChat.onNewChatCreated.onRename.onShare.onToggleCompression`.split(`.`))),(0,t.createCommentVNode)(` ChatBot 核心组件(仅聊天区域) `),(0,t.createVNode)($Vt,{ref_key:`chatBotRef`,ref:p,"always-create-new-session":i.alwaysCreateNewSession,"auto-load":i.loadRecentSessionOnMount,"chat-helper":(0,t.unref)(a),"hello-text":i.helloText,"message-tools-tippy-options":(0,t.unref)(S),placeholder:i.placeholder,prompts:(0,t.unref)(w),"render-mode":i.renderMode,"request-options":i.requestOptions,"use-agent-name":i.useAgentName,"get-side-render-component":i.getSideRenderComponent,"get-side-tab-render-component":i.getSideTabRenderComponent,"on-custom-tab-change":i.onCustomTabChange,"resize-props":i.resizeProps,resources:(0,t.unref)(C),"session-code":i.initialSessionCode,"share-loading":(0,t.unref)(je),shortcuts:i.shortcuts,skills:(0,t.unref)(T),style:(0,t.normalizeStyle)({height:i.hideHeader?`100%`:`calc(100% - 48px)`}),url:(0,t.unref)(_),onCancelShare:(0,t.unref)(Ne),onConfirmShare:n[0]||=e=>(0,t.unref)(Pe)(e),onError:n[1]||=e=>(0,t.unref)(E)(e),onExecutionPanelChange:(0,t.unref)(B),onReceiveEnd:(0,t.unref)(re),onReceiveStart:(0,t.unref)(te),onReceiveText:(0,t.unref)(ne),onRequestShare:(0,t.unref)(Me),onSendMessage:n[2]||=e=>ze(e),onSessionSwitched:n[3]||=e=>(0,t.unref)(De)(e),onShortcutClick:(0,t.unref)(pe),onStop:(0,t.unref)(ie)},(0,t.createSlots)({_:2},[e.$slots.codeHeader?{name:`codeHeader`,fn:(0,t.withCtx)(n=>[(0,t.renderSlot)(e.$slots,`codeHeader`,(0,t.normalizeProps)((0,t.guardReactiveProps)(n)),void 0,!0)]),key:`0`}:void 0,e.$slots.message?{name:`message`,fn:(0,t.withCtx)(({message:n,messageToolsStatus:r,onInterruptResume:i})=>[(0,t.renderSlot)(e.$slots,`message`,{message:n,messageToolsStatus:r,onInterruptResume:i},void 0,!0)]),key:`1`}:void 0]),1032,`always-create-new-session.auto-load.chat-helper.hello-text.message-tools-tippy-options.placeholder.prompts.render-mode.request-options.use-agent-name.get-side-render-component.get-side-tab-render-component.on-custom-tab-change.resize-props.resources.session-code.share-loading.shortcuts.skills.style.url.onCancelShare.onExecutionPanelChange.onReceiveEnd.onReceiveStart.onReceiveText.onRequestShare.onShortcutClick.onStop`.split(`.`))],2)]),_:3},8,[`compressed-padding`,`default-height`,`default-width`,`default-x`,`default-y`,`draggable`,`max-width`,`visible`,`onCompressionChange`,`onDragStop`,`onDragging`,`onResizeStop`,`onResizing`]),(0,t.createCommentVNode)(` Nimbus 悬浮球 `),i.hideNimbus?(0,t.createCommentVNode)(`v-if`,!0):((0,t.openBlock)(),(0,t.createBlock)(kHt,{key:0,"is-minimize":(0,t.unref)(g),"onUpdate:isMinimize":n[4]||=e=>(0,t.isRef)(g)?g.value=e:null,"is-panel-show":(0,t.unref)(h),"onUpdate:isPanelShow":n[5]||=e=>(0,t.isRef)(h)?h.value=e:null,"default-minimize":i.defaultMinimize,size:i.nimbusSize,onClick:(0,t.unref)(P)},null,8,[`is-minimize`,`is-panel-show`,`default-minimize`,`size`,`onClick`])),(0,t.createCommentVNode)(` 划词选择弹窗(使用 chat-x 的 AiSelection 组件) `),i.enablePopup?((0,t.openBlock)(),(0,t.createBlock)((0,t.unref)(dkt),{key:1,visible:(0,t.unref)(Fe),"onUpdate:visible":n[6]||=e=>(0,t.isRef)(Fe)?Fe.value=e:null,"exclude-selectors":[`.draggable-container-wrapper`],"max-shortcut-count":i.shortcutLimit,shortcuts:(0,t.unref)(Ie),onSelectShortcut:(0,t.unref)(Re),onSelectionChange:(0,t.unref)(Le)},null,8,[`visible`,`max-shortcut-count`,`shortcuts`,`onSelectShortcut`,`onSelectionChange`])):(0,t.createCommentVNode)(`v-if`,!0)],2)],8,[`to`]))}}),[[`__scopeId`,`data-v-b7e21f21`]]);return e.AGUIProtocol=k9,e.AIBlueking=AHt,e.default=AHt,e.BluekingProtocol=fHt,e.BootstrapPhase=H9,e.ChatBot=$Vt,e.ChatBusinessManager=AVt,e.ComponentManager=MVt,e.DraggableContainer=EHt,e.MessageContentType=J8,e.RenderMode=Q8,e.SessionBusinessManager=B9,e.ShortcutManager=V9,e.UIStateManager=IVt,e.createBluekingProtocol=pHt,e.createComponentManager=NVt,e.defaultProps=dHt,e.parseCustomBlocks=GBt,e.useChatBootstrap=eHt,e.useChatHelper=P9,e.useDraggable=wHt,e})({},Vue);
|