@blueking/bkflow-canvas-editor 0.0.19 → 0.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -61,4 +61,4 @@ For more detail, please visit: ${i}
61
61
 
62
62
  `,`1) content: element.innerHTML
63
63
  `,"2) content: () => element.cloneNode(true)"].join(" "))}var k=i.reduce(function($,V){var L=V&&createTippy(V,r);return L&&$.push(L),$},[]);return isElement(e)?k[0]:k}tippy.defaultProps=defaultProps;tippy.setDefaultProps=setDefaultProps;tippy.currentInput=currentInput;var hideAll=function e(t){var n=t===void 0?{}:t,r=n.exclude,i=n.duration;mountedInstances.forEach(function(y){var g=!1;if(r&&(g=isReferenceElement(r)?y.reference===r:y.popper===r.popper),!g){var k=y.props.duration;y.setProps({duration:i}),y.hide(),y.state.isDestroyed||y.setProps({duration:k})}})};Object.assign({},applyStyles,{effect:function e(t){var n=t.state,r={popper:{position:n.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(n.elements.popper.style,r.popper),n.styles=r,n.elements.arrow&&Object.assign(n.elements.arrow.style,r.arrow)}});tippy.setDefaultProps({render});const RenderAvatar={name:"render-avatar",props:["user","urlMethod"],setup(e){const t=vue.ref("");vue.onMounted(async()=>{try{typeof e.user=="string"?t.value=await e.urlMethod(e.user):typeof e.user=="object"&&(t.value=e.user.avatar||e.user.logo||await e.urlMethod(e.user.username))}catch{}});const n=vue.ref(null);return vue.watch(t,r=>{r&&(n.value.style.backgroundImage=`url(${t.value})`)}),()=>vue.createVNode("span",{ref:n,class:"user-selector-avatar"},null)}},RenderList={name:"render-list",props:{selector:{type:Object},user:{type:Object},keyword:{type:String},index:{type:Number},disabled:{type:Boolean}},setup(e){return()=>e.selector.renderList(vue.h,{user:e.user,index:e.index,keyword:e.keyword,disabled:e.disabled})}},tooltips={mounted(e,t){const n=typeof t.value=="object"?t.value:{disabled:!1,content:t.value},r=tippy(e,Object.assign({appendTo:document.body},n));n.disabled&&r.disable()},unmounted(e){e._tippy?.destroy()},updated(e,t){const n=typeof t.value=="object"?t.value:{disabled:!1,content:t.value};n.disabled?e._tippy.disable():e._tippy.enable(),e._tippy.setContent(n.content)}},AlternateItem=vue.defineComponent({name:"AlternateItem",directives:{tooltips},props:{selector:{type:Object},user:{type:Object},keyword:{type:String},index:{type:Number}},setup(e){const{selector:t,user:n,keyword:r}=vue.toRefs(e);return{disabled:vue.computed(()=>t.value.disabledUsers.includes(n.value.username)),getItemContent:()=>{const[k,$]=n.value.username.split("@");let V=k;r.value&&(V=V.replace(new RegExp(r.value,"g"),`<span>${r.value}</span>`));const L=t.value.displayDomain&&$?`${V}@${$}`:V,re=n.value.display_name;return re?`${L}(${re})`:L},getTitle:()=>t.value.getDisplayText(n.value)}},render(){return vue.createVNode("li",{class:["alternate-item",this.index===this.selector.highlightIndex?"highlight":"",this.disabled&&!this.selector.renderList?"disabled":""],onClick:e=>e.stopPropagation(),onMousedown:vue.withModifiers(()=>this.selector.handleUserMousedown(this.user,this.disabled),["left","stop"]),onMouseup:vue.withModifiers(()=>this.selector.handleUserMouseup(this.user,this.disabled),["left","stop"])},[this.selector.renderList?vue.createVNode(vue.Fragment,null,[vue.createVNode(RenderList,{selector:this.selector,keyword:this.keyword,user:this.user,disabled:this.disabled},null)]):vue.createVNode(vue.Fragment,null,[this.selector.tagType==="avatar"?vue.createVNode(vue.Fragment,null,[vue.createVNode(RenderAvatar,{class:"item-avatar",user:this.user,urlMethod:this.selector.avatarUrl},null)]):null,this.selector.displayListTips&&this.user.category_name?vue.createVNode(vue.Fragment,null,[vue.withDirectives(vue.createVNode("span",{class:"item-folder"},[this.user.category_name]),[[vue.resolveDirective("tooltips"),{placement:"right",interactive:!0,theme:"light list-item-tips",content:this.user.category_name,offset:[0,18]}]])]):null,vue.createVNode("span",{class:"item-name",title:this.getTitle(),innerHTML:this.getItemContent()},null)])])}}),AlternateList=vue.defineComponent({setup(){const{proxy:e}=vue.getCurrentInstance();instanceStore.setInstance("alternateContent","alternateList",e);const t=vue.ref(null),n=vue.ref(""),r=vue.ref(!0),i=vue.ref(!0),y=vue.ref([]),g=vue.computed(()=>{const z={};return t.value?.panelWidth&&(z.width=`${parseInt(t.value.panelWidth,10)}px`),z}),k=vue.computed(()=>{const z={"max-height":"192px"};if(t.value){const j=parseInt(t.value.listScrollHeight,10);isNaN(j)||(z["max-height"]=`${j}px`)}return z}),$=(z,j=0)=>{let le=0;return y.value.slice(0,z).forEach(Ce=>{Ce.hasOwnProperty("children")?le+=Ce.children.length:le+=1}),le+j},V=()=>{if(hideAll({exclude:t.value.inputRef,duration:0}),i.value||!r.value)return!1;const z=re.value;z.scrollTop+z.clientHeight>z.scrollHeight-32&&t.value.search(n.value,r.value)};vue.watch(n,()=>{ie.value=[],vue.nextTick(()=>{re.value.scrollTop=0})});const L=vue.ref(null),re=vue.ref(null),ie=vue.ref([]);return{selector:t,keyword:n,next:r,loading:i,matchedUsers:y,wrapperStyle:g,listStyle:k,getIndex:$,handleScroll:V,alternateListContainer:L,alternateList:re,alternateItem:ie,setRef:z=>{ie.value.push(z)}}},render(){return vue.createVNode("div",{ref:"alternateListContainer",class:["user-selector-alternate-list-wrapper",this.selector?.displayListTips?"has-folder":"",this.loading?"is-loading":""],style:this.wrapperStyle},[vue.createVNode("ul",{class:"alternate-list",ref:"alternateList",style:this.listStyle,onScroll:()=>{this.handleScroll()}},[this.matchedUsers.map((e,t)=>e.hasOwnProperty("children")?vue.createVNode(vue.Fragment,null,[vue.createVNode("li",{class:"alternate-group",onClick:n=>n.stopPropagation(),onMousedown:vue.withModifiers(()=>{this.selector.handleGroupMousedown()},["left","stop"]),onMouseup:vue.withModifiers(()=>{this.selector.handleGroupMouseup()},["left","stop"])},[`${e.display_name}(${e.children.length})`]),e.children.map((n,r)=>vue.createVNode(vue.Fragment,null,[vue.createVNode(AlternateItem,{ref:i=>{this.setRef(i)},index:this.getIndex(t,r),selector:this.selector,user:n,keyword:this.keyword},null)]))]):vue.createVNode(vue.Fragment,null,[vue.createVNode(AlternateItem,{ref:n=>{this.setRef(n)},selector:this.selector,user:e,index:this.getIndex(t),keyword:this.keyword},null)]))]),!this.loading&&!this.matchedUsers.length?vue.createVNode(vue.Fragment,null,[vue.createVNode("p",{class:"alternate-empty"},[this.selector.emptyText])]):null])}}),RenderTag={name:"render-tag",props:["username","user","index"],setup(e){const t=vue.inject("parentSelector");return()=>t.renderTag(vue.h,{username:e.username,index:e.index,user:e.user})}},_sfc_main$W=vue.defineComponent({name:"BkUserSelector",components:{RenderTag,RenderAvatar},props:{modelValue:{type:Array,default:()=>[]},placeholder:{type:String,default:"请输入"},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!0},exclude:{type:Boolean,default:!0},focusRowLimit:{type:Number,default:6},defaultAlternate:{type:[String,Array,Function],validator(e){return e==="history"||typeof e=="function"||e instanceof Array}},searchFromDefaultAlternate:{type:Boolean,default:!0},historyKey:String,historyLabel:{type:String,default:"最近选择"},historyRecord:{type:Number,default:5},displayListTips:Boolean,fuzzySearchMethod:Function,exactSearchMethod:Function,emptyText:{type:String,default:"无匹配人员"},tagClearable:{type:Boolean,default:!0},fastClear:Boolean,renderList:Function,renderTag:Function,displayTagTips:Boolean,tagTipsContent:Function,tagTipsDelay:{type:Number,default:300},tagType:{type:String,default:"tag",validator(e){return["tag","avatar"].includes(e)}},avatarUrl:{type:Function,default:()=>null},fixedHeight:{type:Boolean,default:!0},disabledUsers:{type:Array,default:()=>[]},listScrollHeight:[Number,String],api:String,searchLimit:{type:Number,default:20},pasteFormatter:{type:Function,default(e){return e.replace(/\(.*/,"")}},pasteValidator:Function,panelWidth:{type:[Number,String],validator(e){return parseInt(e,10)>=190}},displayDomain:{type:Boolean,default:!0},type:{type:String,default:"selector",validator(e){return["selector","info"].includes(e)}}},emits:["update:modelValue","change","remove-selected","select-user","keydown","focus","blur","clear"],setup(e,t){const{modelValue:n,disabled:r,multiple:i,exclude:y,focusRowLimit:g,defaultAlternate:k,searchFromDefaultAlternate:$,historyKey:V,historyLabel:L,historyRecord:re,fuzzySearchMethod:ie,exactSearchMethod:oe,displayTagTips:z,tagTipsContent:j,tagTipsDelay:le,fixedHeight:Ce,disabledUsers:he,api:pe,searchLimit:ae,pasteFormatter:ue,pasteValidator:de,displayDomain:_e,type:xe}=vue.toRefs(e),ze=async(Pt,_n)=>{try{const An=Zn();eo(),An.setContent(Et.value.$refs.alternateListContainer),oo(),Et.value.loading=!!Pt;const{results:Fn,next:Un}=await new Promise(async(ao,fo)=>{if(Pt){const So=[(ie.value||Hn)(Pt,_n)];$.value&&So.push(Dn(Pt));const[Vo,Oo]=await Promise.all(So);Oo&&Vo.results.unshift(...Oo.results),ao(Vo)}else{const So=Dn();ao(So)}});if(!Oe.value)return;const{matched:Jn,flattened:Xn}=Rn(Fn);if(!Pt&&!Xn.length){Bn();return}Cn.value=_n?[...Cn.value,...Jn]:Jn,hn.value=_n?[...hn.value,...Xn]:Xn,$e.value=Xn.length&&Ue.value?0:-1,Et.value.next=Un,Et.value.keyword=Pt,Et.value.matchedUsers=Cn.value,Et.value.loading=!1}catch(An){if(An.type==="reset")return;Cn.value=[],hn.value=[],console.error(An)}},Ve=vue.ref(null),qe=vue.ref(null),{proxy:At}=vue.getCurrentInstance();vue.provide("parentSelector",At);const Fe=vue.ref(32),Ie=vue.ref(30),Ue=vue.ref(""),Dt=vue.ref(0),$e=vue.ref(-1),Ne=vue.ref(!0),Oe=vue.ref(!1),kt=vue.ref(null),Lt=vue.ref([]),Cn=vue.ref([]),hn=vue.ref([]),jt=lodash.throttle(ze,800,{leading:!1}),vn=vue.ref(null),Et=vue.ref(null),wn=vue.ref({}),bn=vue.ref(null),Tn=vue.ref(!1),$n=vue.computed(()=>xe.value==="selector"),Sn=vue.computed(()=>{const Pt={};return Oe.value?Pt.maxHeight=Ce.value?`${g.value*Ie.value}px`:"auto":Ce.value&&(Pt.height=`${Ie.value}px`),Pt}),kn=vue.ref([]);kn.value=[...n.value];const Nn=vue.computed(()=>kn.value.map(Pt=>Lt.value.find(An=>An.username===Pt)||{username:Pt})),On=vue.computed(()=>Nn.value.map(Pt=>Wn(Pt)).join(";")),Vn=async()=>{try{pe.value?Lt.value=await request.scheduleExactSearch(pe.value,kn.value):oe.value?Lt.value=await oe.value(kn.value):console.warn("No exact search method has been set")}catch(Pt){console.error(Pt)}},Dn=async Pt=>{let _n=[];const An=(Fn,Un)=>Fn.username.toLowerCase().indexOf(Un.toString().toLowerCase())>-1;if(k.value==="history"?_n=[{display_name:L.value,children:to()}]:k.value instanceof Array?_n=k.value:typeof k.value=="function"&&(_n=await k.value()),Pt){const Fn=[];_n.forEach(Un=>{if(Un.hasOwnProperty("children")){const Jn=Un.children.filter(Xn=>An(Xn,Pt));Jn.length&&Fn.push({...Un,children:Jn})}else An(Un,Pt)&&Fn.push(Un)}),_n=Fn}return Promise.resolve({results:_n,next:!1})},Rn=Pt=>{const _n=[],An=[];return Pt.forEach(Fn=>{if(Fn.hasOwnProperty("children")){const Xn=Fn.children.filter(ao=>!An.some(fo=>fo.username===ao.username));if(i.value){const ao=Xn.filter(fo=>!kn.value.includes(fo.username));ao.length&&(Fn.children=ao,_n.push(Fn),An.push(...ao))}else _n.push(Fn),An.push(...Xn);return}const Un=kn.value.includes(Fn.username),Jn=An.some(Xn=>Xn.username===Fn.username);(!i.value||!Un)&&!Jn&&(_n.push(Fn),An.push(Fn))}),{matched:_n,flattened:An}},Hn=async(Pt,_n)=>{if(pe.value){const An={app_code:"bk-magicbox",page:_n||1,page_size:ae.value,fuzzy_lookups:Pt},{count:Fn,results:Un}=await request.fuzzySearch(pe.value,An);return{next:Fn>An.page*An.page_size?An.page+1:!1,results:Un}}return ie.value?ie.value(Pt,_n):(console.warn("No fuzzy search method has been set"),Promise.resolve({next:!1,results:[]}))},Kn=async(Pt,_n)=>{try{const An=document.createElement("span");if(typeof j.value=="function"){const Fn=await j.value(_n);An.innerHTML=Fn}else{const Fn=await(oe.value||Gn)(_n);An.innerHTML=Fn?Fn.category_name:"Non existing user"}Pt.setContent(An)}catch(An){console.error(An),Pt.setContent(An.message)}},Gn=Pt=>pe.value?request.exactSearch(pe.value,Pt):oe.value?oe.value(Pt):(console.warn("No exact search method has been set"),Promise.resolve({})),Zn=()=>(vn.value||(vn.value=tippy(qe.value,{theme:"light user-selector-popover",appendTo:document.body,trigger:"manual",placement:"bottom-start",offset:[0,5],arrow:!1,hideOnClick:!1,content:"",interactive:!0,onHide:()=>{zn()},onShow:()=>Oe.value})),vn.value),eo=()=>{if(!Et.value){const Pt=vue.createApp(AlternateList),_n=document.createElement("div");Pt.mount(_n),Et.value=instanceStore.getInstance("alternateContent","alternateList"),Et.value.selector=At}},to=()=>{try{if(V.value)return(JSON.parse(window.localStorage.getItem(V.value))||[]).filter(_n=>!he.value.includes(_n.username));throw new Error("History key not provide")}catch(Pt){return console.error(Pt),[]}},no=Pt=>{if(V.value)try{const _n=to(),An=_n.findIndex(Un=>Un.username===Pt.username);An>-1&&_n.splice(An,1),Array.isArray(Pt)?_n.unshift(...Pt):_n.unshift(Pt);const Fn=_n.filter(Un=>!he.value.includes(Un.username)).slice(0,re.value);window.localStorage.setItem(V.value,JSON.stringify(Fn))}catch(_n){console.error(_n)}},ro=()=>{vn.value?.popperInstance?.update()},oo=()=>{ro(),vn.value?.show(0)},Bn=()=>{vn.value?.hide(0)},zn=()=>{vue.nextTick(()=>{Cn.value=[],hn.value=[],Et.value.matchedUsers=[]})},Wn=Pt=>{const _n=typeof Pt=="object";let An=_n?Pt.username:Pt;return An=_e.value?An:An.replace(/@.*/,""),_n&&Pt.display_name&&(An+=`(${Pt.display_name})`),An},io=()=>{if(r.value)return!1;To(),Dt.value=kn.value.length,!i.value&&n.value.length?(Ue.value=Wn(n.value[0]),qe.value.innerHTML=Ue.value,so(0,{selectRange:!0})):so(0)},In=Pt=>{vn.value?.state.isVisible&&Pt.preventDefault()},qn=(Pt,_n)=>{if(r.value)return!1;Ne.value=!1},Yn=(Pt,_n)=>{if(r.value)return!1;if(i.value){const An=Pt.target,{offsetWidth:Fn}=An,Un=Pt.offsetX;Dt.value=Un>Fn/2?_n+1:_n,so(0)}else Ue.value=Wn(n.value[0]),qe.value.innerHTML=Ue.value,so(0,{selectRange:!0})},xn=(Pt,{username:_n})=>{if(!z.value)return!1;const An=Pt.currentTarget;if(An._user_tips_)return!1;wn.value[_n]=setTimeout(()=>{An._user_tips_=tippy(An,{theme:"light small-arrow user-selected-tips",offset:[0,5],appendTo:document.body,arrow:!0,content:"loading...",placement:"top",interactive:!0,onShow:Fn=>{Kn(Fn,_n)}}),An._user_tips_.show(),delete wn.value[_n]},le.value)},Ln=(Pt,{username:_n})=>{z.value&&wn.value[_n]&&clearTimeout(wn.value[_n])},Mn=()=>{Ne.value=!1},En=({username:Pt},_n)=>{if(r.value)return!1;const An=[...kn.value];An.splice(_n,1),kn.value=An,po(),Oe.value?so(_n>=Dt.value?0:-1):vo(),t.emit("remove-selected",Pt)},Pn=(Pt,_n)=>{Ne.value=!1},jn=(Pt,_n)=>{if(_n||_n.value)return so(0),!1;if(no(Pt),Lt.value.push(Pt),i.value){const An=[...kn.value];An.splice(Dt.value,0,Pt.username),kn.value=An,setTimeout(()=>{so(1),yo({reset:!0}),ze()},0)}else kn.value=[Pt.username],po(),vo();t.emit("select-user",Pt)},Qn=()=>{Ne.value=!1},lo=()=>{so(0)},yo=(Pt={})=>{Pt.reset&&po(),Oe.value=!0,Ne.value=!0,vue.nextTick(()=>{const _n=qe.value;if(!_n)return;_n.focus();const An=window.getSelection();An.selectAllChildren(_n),!Pt.selectRange&&An.collapseToEnd()})},uo=Pt=>{if(Tn.value){Pt.preventDefault(),Pt.stopPropagation();return}const{key:_n}=Pt,An={Enter:bo,Backspace:mo,Delete:mo,ArrowLeft:co,ArrowRight:co,ArrowUp:co,ArrowDown:co};An.hasOwnProperty(_n)&&An[_n](Pt),t.emit("keydown",Pt)},bo=Pt=>{if(Pt.preventDefault(),Pt.stopPropagation(),Ne.value=!1,$e.value!==-1){const{username:_n}=hn.value[$e.value];if(he.value.includes(_n))return!1;if(i.value){const Fn=[...kn.value];Fn.splice(Dt.value,0,_n),kn.value=Fn,so(1,{reset:!0})}else kn.value=[_n],po(),vo()}else if(Ue.value)if(!y.value&&!kn.value.includes(Ue.value))if(i.value){const _n=[...kn.value];_n.splice(Dt.value,0,Ue.value),kn.value=_n,so(1,{reset:!0})}else kn.value=[Ue.value],po(),vo();else po();else po(),vo();Bn()},mo=Pt=>{if(Ue.value||!kn.value.length||!Dt.value)return!0;Ne.value=!1;const _n=[...kn.value];_n.splice(Dt.value-1,1),kn.value=_n,so(-1),ze()},co=Pt=>{const _n=Pt.key;if(["ArrowLeft","ArrowRight"].includes(_n)){if(Ue.value||!kn.value.length)return!0;_n==="ArrowLeft"&&Dt.value!==0?so(-1):_n==="ArrowRight"&&Dt.value!==kn.value.length&&so(1)}else hn.value.length&&(Pt.preventDefault(),_n==="ArrowDown"?$e.value<hn.value.length-1?$e.value+=1:Et.value.next?(Et.value.$refs.alternateList.scrollTop+=32,Et.value.handleScroll()):$e.value=0:_n==="ArrowUp"&&$e.value!==-1&&($e.value-=1))},Co=Pt=>{if(Tn.value){Pt.preventDefault(),Pt.stopPropagation();return}Ue.value=qe.value.textContent.trim()},vo=()=>{if(!Ne.value)return!0;Oe.value=!1,Bn()},ho=Pt=>hn.value.find(An=>{const Fn=An.username,Un=An.display_name,Jn=[Fn,Un].some(ao=>ao.toLowerCase()===Pt.toLowerCase()),Xn=kn.value.includes(Fn);return Jn&&!Xn}),_o=async Pt=>{if(pe.value){const An=(await request.pasteValidate(pe.value,Pt)).map(Fn=>Fn.username);return y.value?An:[...new Set(An.concat(Pt))]}return de.value?de.value(values):(console.warn("No paste validator has been set"),Promise.resolve([]))},Bo=async Pt=>{Bn(),Tn.value&&(Pt.preventDefault(),Pt.stopPropagation());try{Tn.value=!0;const An=Pt.clipboardData.getData("text").replace(/\s/g,"").split(/,|;/).map(ao=>ue.value(ao)).filter(ao=>ao.length),Fn=[...new Set(An)];if(!Fn.length)return;const Un=await(de.value||_o)(Fn),Jn=Un.filter(ao=>!kn.value.includes(ao));if(!Un.length)return;const Xn=[...kn.value];Xn.splice(Dt.value,0,...Jn),kn.value=Xn,i.value?Oe.value&&so(Jn.length,{reset:!0}):vo()}catch(_n){console.error(_n)}finally{Tn.value=!1}},ko=()=>Array.from(Ve.value.querySelectorAll(".user-selector-selected")),so=(Pt,_n={})=>{Dt.value=Dt.value+Pt,vue.nextTick(()=>{const Fn=ko()[Dt.value]||null;Ve.value.insertBefore(qe.value,Fn),yo(_n),ro()})},wo=()=>{if(!Et.value||!$n.value)return!1;vue.nextTick(()=>{const{highlightIndex:Pt}=At,_n=Et.value.$refs.alternateList;if(!_n)return!1;if(Pt!==-1){const An=Et.value.alternateItem[Pt].$el,Fn=_n.clientHeight,Un=_n.scrollTop,Jn=An.offsetTop,Xn=An.offsetHeight;if(Jn>=Un&&Jn+Xn<=Un+Fn)return!1;Jn<=Un?_n.scrollTop=Jn:Jn+Xn>Un+Fn&&(_n.scrollTop=Jn+Xn-Fn)}else _n.scrollTop=0})},Eo=vue.ref(0),go=()=>{if(!$n.value||(Ao(),!Ce.value||Oe.value||kn.value.length<2))return!1;To(),Eo.value=setTimeout(()=>{const Pt=ko(),_n=Pt.findIndex((An,Fn)=>Fn?Pt[Fn-1].offsetTop!==An.offsetTop:!1);_n>-1?kt.value=_n:kt.value=null,Ve.value.scrollTop=0,xo()},0)},To=()=>{Eo.value&&clearTimeout(Eo.value)},xo=()=>{if(!kt.value)return;$o();const Pt=ko(),_n=Pt[kt.value];if(_n)bn.value.textContent=`+${kn.value.length-kt.value}`,Ve.value.insertBefore(bn.value,_n);else{kt.value=null;return}setTimeout(()=>{const An=Pt[kt.value-1];bn.value.offsetTop!==An.offsetTop&&(kt.value-=1,Ve.value.insertBefore(bn.value,bn.value.previousSibling),bn.value.textContent=`+${kn.value.length-kt.value}`)},0)},$o=()=>{if(bn.value)return bn.value;const Pt=document.createElement("span");Pt.className="user-selector-overflow-tag",bn.value=Pt},Ao=()=>{bn.value&&bn.value.parentNode===Ve.value&&Ve.value.removeChild(bn.value)},No=()=>{kn.value=[],t.emit("clear")},po=()=>{Ne.value=!0,$e.value=-1,Ue.value="",qe.value.innerHTML=""};return vue.watch(Ue,Pt=>{Pt.length?($e.value=-1,wo(),jt(Pt)):Oe.value&&ze()}),vue.watch(Oe,Pt=>{Pt?(ze(),t.emit("focus")):(po(),t.emit("blur")),go()}),vue.watch($e,()=>{wo()}),vue.watch(kn,Pt=>{t.emit("update:modelValue",Pt),t.emit("change",Pt),go(),Vn()}),vue.onMounted(()=>{go(),Vn()}),{selectorHeight:Fe,singleRowHeight:Ie,inputValue:Ue,inputIndex:Dt,highlightIndex:$e,shouldUpdate:Ne,isFocus:Oe,overflowTagIndex:kt,currentUsers:Lt,matchedUsers:Cn,flattenedUsers:hn,scheduleSearch:jt,popoverInstance:vn,alternateContent:Et,selectedTipsTimer:wn,overflowTagNode:bn,loading:Tn,isSelector:$n,containerStyle:Sn,localValue:kn,localValueUsers:Nn,userInfo:On,getCurrentUsers:Vn,search:ze,getDefaultAlternateData:Dn,filterUsers:Rn,defaultFuzzySearchMethod:Hn,getUserTips:Kn,defaultExactSearchMethod:Gn,getPopoverInstance:Zn,getAlternateContent:eo,getHistoryUsers:to,updateHistoryUsers:no,updatePopover:ro,showPopover:oo,hidePopover:Bn,handlePopoverHide:zn,getDisplayText:Wn,focus:io,handleContainerScroll:In,handleSelectedMousedown:qn,handleSelectedMouseup:Yn,handleSelectedMouseenter:xn,handleSelectedMouseleave:Ln,handleRemoveMouseDown:Mn,handleRemoveSelected:En,handleUserMousedown:Pn,handleUserMouseup:jn,handleGroupMousedown:Qn,handleGroupMouseup:lo,setSelection:yo,handleKeydown:uo,handleEnter:bo,handleBackspace:mo,handleArrow:co,handleInput:Co,handleBlur:vo,getMatchedUser:ho,defaultPasteValidator:_o,handlePaste:Bo,getSelectedDOM:ko,moveInput:so,updateScroller:wo,calcOverflow:go,clearOverflowTimer:To,insertOverflowTag:xo,getOverflowTagNode:$o,removeOverflowTagNode:Ao,handleFastClear:No,reset:po,containerRef:Ve,inputRef:qe}}}),_hoisted_1$S={class:"user-selector-layout"},_hoisted_2$A=["data-placeholder"],_hoisted_3$o=["onMousedown","onMouseup","onMouseenter","onMouseleave"],_hoisted_4$j={class:"user-selector-selected-value"},_hoisted_5$f=["onClick"],_hoisted_6$a={key:1,class:"user-selector user-selector-info"};function _sfc_render$1(e,t,n,r,i,y){const g=vue.resolveComponent("render-tag"),k=vue.resolveComponent("render-avatar");return e.isSelector?(vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({key:0,class:"user-selector"},e.$attrs,{style:{height:e.fixedHeight?e.selectorHeight+"px":"auto"},onMousedown:t[10]||(t[10]=$=>e.shouldUpdate=!1),onClick:t[11]||(t[11]=(...$)=>e.focus&&e.focus(...$))}),[vue.createElementVNode("div",_hoisted_1$S,[vue.createElementVNode("div",{class:vue.normalizeClass(["user-selector-container",{focus:e.isFocus,disabled:e.disabled,placeholder:!e.localValue.length&&!e.isFocus,"is-fast-clear":e.fastClear,"has-avatar":e.tagType==="avatar","is-loading":e.loading,"is-flex-height":!e.fixedHeight}]),ref:"containerRef",style:vue.normalizeStyle(e.containerStyle),"data-placeholder":e.placeholder,onMousewheel:t[8]||(t[8]=(...$)=>e.handleContainerScroll&&e.handleContainerScroll(...$))},[e.multiple||!e.isFocus?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.localValueUsers,($,V)=>(vue.openBlock(),vue.createElementBlock("span",{class:"user-selector-selected",key:$.username,onClick:t[2]||(t[2]=vue.withModifiers(()=>{},["stop"])),onMousedown:vue.withModifiers(L=>e.handleSelectedMousedown(L,V),["left","stop"]),onMouseup:vue.withModifiers(L=>e.handleSelectedMouseup(L,V),["left","stop"]),onMouseenter:L=>e.handleSelectedMouseenter(L,$),onMouseleave:L=>e.handleSelectedMouseleave(L,$)},[e.renderTag?(vue.openBlock(),vue.createBlock(g,{key:0,user:$,username:$.username,index:V},null,8,["user","username","index"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[e.tagType==="avatar"?(vue.openBlock(),vue.createBlock(k,{key:0,class:"user-selector-selected-avatar",user:$,"url-method":e.avatarUrl},null,8,["user","url-method"])):vue.createCommentVNode("",!0),vue.createElementVNode("span",_hoisted_4$j,vue.toDisplayString(e.getDisplayText($)),1)],64)),e.tagClearable&&e.tagType==="tag"?(vue.openBlock(),vue.createElementBlock("i",{key:2,class:"user-selector-selected-clear bk-biz-components-icon bk-biz-icon-close",onMouseup:t[0]||(t[0]=vue.withModifiers(()=>{},["left","stop"])),onMousedown:t[1]||(t[1]=vue.withModifiers((...L)=>e.handleRemoveMouseDown&&e.handleRemoveMouseDown(...L),["left","stop"])),onClick:vue.withModifiers(L=>e.handleRemoveSelected($,V),["stop","prevent"])},null,40,_hoisted_5$f)):vue.createCommentVNode("",!0)],40,_hoisted_3$o))),128)):vue.createCommentVNode("",!0),vue.withDirectives(vue.createElementVNode("span",{ref:"inputRef",class:"user-selector-input",spellcheck:"false",contenteditable:"",onClick:t[3]||(t[3]=vue.withModifiers(()=>{},["stop"])),onInput:t[4]||(t[4]=$=>e.handleInput($)),onBlur:t[5]||(t[5]=(...$)=>e.handleBlur&&e.handleBlur(...$)),onPaste:t[6]||(t[6]=vue.withModifiers($=>e.handlePaste($),["prevent","stop"])),onKeydown:t[7]||(t[7]=$=>e.handleKeydown($))},null,544),[[vue.vShow,e.isFocus]])],46,_hoisted_2$A),e.fastClear&&!e.disabled&&e.localValue.length?(vue.openBlock(),vue.createElementBlock("i",{key:0,class:"user-selector-clear bk-biz-components-icon bk-biz-icon-close-circle-shape",onClick:t[9]||(t[9]=vue.withModifiers((...$)=>e.handleFastClear&&e.handleFastClear(...$),["stop"]))})):vue.createCommentVNode("",!0)])],16)):(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$a,vue.toDisplayString(e.userInfo),1))}const UserSelector=_export_sfc$1(_sfc_main$W,[["render",_sfc_render$1]]),_sfc_main$V=vue.defineComponent({__name:"index",props:{modelValue:{},multiple:{type:Boolean,default:!0},placeholder:{default:""},disabled:{type:Boolean,default:!1},fetchUserApi:{default:""}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref([]);vue.watch(()=>n.modelValue,()=>{i.value=[...n.modelValue]});const y=g=>{r("update:modelValue",g.slice()),r("change",g.slice())};return(g,k)=>(vue.openBlock(),vue.createBlock(vue.unref(UserSelector),{modelValue:n.modelValue,"onUpdate:modelValue":k[0]||(k[0]=$=>n.modelValue=$),api:n.fetchUserApi,"fix-height":!0,multiple:n.multiple,placeholder:n.placeholder,disabled:n.disabled,onChange:y},null,8,["modelValue","api","multiple","placeholder","disabled"]))}}),_hoisted_1$R={class:"tag-member-selector"},_hoisted_2$z={key:0,class:"tag-member-selector-wrap"},_hoisted_3$n={key:1,class:"rf-view-value"},_sfc_main$U=vue.defineComponent({__name:"TagMemberSelector",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{default:""},disabled:{type:Boolean,default:!1},placeholder:{default:""},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const{fetchUserApi:r}=useFlowApiConfig(),i=e,y=n,g=vue.inject("getFormData"),k=vue.inject("onHookForm"),$=vue.inject("getParent"),V=useFormMixins({attrs:{value:{type:String,default:""},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:""}},emit:(z,...j)=>{z==="change"?y("change",j[0],j[1]):z==="init"?y("init",j[0]):z==="onShow"?y("onShow"):z==="onHide"&&y("onHide")},getFormData:g,onHookForm:k,getParent:$});V.setupLifecycle(i,i);const L=vue.computed(()=>i.modelValue&&i.modelValue.split(",")||[]),re=z=>{V.updateForm(z.join(","))},ie=vue.computed(()=>i.modelValue||"--");return t({validate:z=>V.validate(void 0,i.validation,z!==void 0?z:i.modelValue,i.parentValue,i.validateSet)}),(z,j)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$R,[e.formMode?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$z,[vue.createVNode(_sfc_main$V,{modelValue:L.value,"onUpdate:modelValue":j[0]||(j[0]=le=>L.value=le),"fetch-user-api":vue.unref(r),disabled:!e.formEdit||e.disabled,placeholder:e.placeholder,onChange:re},null,8,["modelValue","fetch-user-api","disabled","placeholder"])])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$n,vue.toDisplayString(e.constants.subflow_detail_var?e.constants[e.tagCode]:ie.value),1)),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref(V).validateInfo.message),513),[[vue.vShow,!vue.unref(V).validateInfo.valid]])]))}}),TagMemberSelector=_export_sfc$1(_sfc_main$U,[["__scopeId","data-v-63236a5d"]]),__vite_glob_0_9=Object.freeze(Object.defineProperty({__proto__:null,default:TagMemberSelector},Symbol.toStringTag,{value:"Module"})),_hoisted_1$Q={class:"tag-radio"},_hoisted_2$y={key:0},_hoisted_3$m={key:1,class:"rf-view-value"},_sfc_main$T=vue.defineComponent({__name:"TagRadio",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{type:[String,Boolean],default:""},items:{default:()=>[{name:"选项1",value:"value1"},{name:"选项2",value:"value2"},{name:"选项3",value:"value3"}]},disabled:{type:Boolean,default:!1},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{items:{type:Array,required:!0,default:()=>[]},disabled:{type:Boolean,default:!1},value:{type:[String,Boolean],default:""}},emit:(oe,...z)=>{oe==="change"?i("change",z[0],z[1]):oe==="init"?i("init",z[0]):oe==="onShow"?i("onShow"):oe==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.computed(()=>r.modelValue),L=oe=>{$.updateForm(oe)},re=vue.computed(()=>{if(V.value==="")return"--";let oe=String(V.value);return r.items.some(z=>z.value===V.value?(oe=z.name,!0):!1),oe});return t({validate:oe=>$.validate(void 0,r.validation,oe!==void 0?oe:r.modelValue,r.parentValue,r.validateSet)}),(oe,z)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$Q,[e.formMode?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$y,[vue.createVNode(vue.unref(ElRadioGroup),{"model-value":V.value,"onUpdate:modelValue":L},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.items,j=>(vue.openBlock(),vue.createElementBlock("div",{class:"radio-item",key:j.name},[vue.createVNode(vue.unref(ElRadio),{value:j.value,disabled:!e.formEdit||e.disabled},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(j.name),1)]),_:2},1032,["value","disabled"])]))),128))]),_:1},8,["model-value"]),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref($).validateInfo.message),513),[[vue.vShow,!vue.unref($).validateInfo.valid]])])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$m,vue.toDisplayString(re.value),1))]))}}),TagRadio=_export_sfc$1(_sfc_main$T,[["__scopeId","data-v-9ced9bda"]]),__vite_glob_0_10=Object.freeze(Object.defineProperty({__proto__:null,default:TagRadio},Symbol.toStringTag,{value:"Module"})),_hoisted_1$P={class:"tag-section"},_sfc_main$S=vue.defineComponent({__name:"TagSection",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{},emit:(L,...re)=>{L==="change"?i("change",re[0],re[1]):L==="init"?i("init",re[0]):L==="onShow"?i("onShow"):L==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});return $.setupLifecycle(r,r),t({validate:L=>$.validate(void 0,r.validation,L!==void 0?L:r.modelValue,r.parentValue,r.validateSet)}),(L,re)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$P,vue.toDisplayString(e.name),1))}}),TagSection=_export_sfc$1(_sfc_main$S,[["__scopeId","data-v-081fe3cd"]]),__vite_glob_0_11=Object.freeze(Object.defineProperty({__proto__:null,default:TagSection},Symbol.toStringTag,{value:"Module"})),_hoisted_1$O={class:"tag-select"},_hoisted_2$x={key:0},_hoisted_3$l={class:"option-item"},_hoisted_4$i={class:"option-item"},_hoisted_5$e={key:0,class:"selected-tip"},_hoisted_6$9={class:"count"},_hoisted_7$6={key:1,class:"rf-view-value"},_sfc_main$R=vue.defineComponent({__name:"TagSelect",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{type:[String,Array,Boolean,Number],default:""},items:{default:()=>[]},multiple:{type:Boolean,default:!1},multiple_limit:{default:0},clearable:{type:Boolean,default:!0},allowCreate:{type:Boolean,default:!1},remote:{type:Boolean,default:!1},remote_url:{type:[String,Function],default:""},remote_data_init:{type:Function,default:e=>e},hasGroup:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{default:""},showRightBtn:{type:Boolean,default:!1},rightBtnIcon:{default:"bk-icon icon-chain"},rightBtnCb:{type:[Function,null],default:void 0},empty_text:{default:"无数据"},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r={updated(Ve,qe){const{hasGroup:At,multiple:Fe,options:Ie,seletedValue:Ue}=qe.value;if(Fe){const Dt=[];Ue.forEach(($e,Ne)=>{let Oe=!1;At?Oe=Ie.some(kt=>kt.options.some(Lt=>Lt.value===$e)):Oe=Ie.some(kt=>kt.value===$e),Oe||Dt.push(Ne)}),vue.nextTick(()=>{setTimeout(()=>{Ve.querySelectorAll(".el-select__tags .el-tag").forEach((Ne,Oe)=>{Dt.includes(Oe)?Ne.classList.add("individual"):Ne.classList.remove("individual")})},0)})}}},i=e,y=n,g=vue.inject("getFormData"),k=vue.inject("onHookForm"),$=vue.inject("getParent"),V=useFormMixins({attrs:{value:{type:[String,Array,Boolean,Number],default:""},items:{type:Array,default:()=>[]},multiple:{type:Boolean,default:!1},multiple_limit:{type:Number,default:0},clearable:{type:Boolean,default:!0},allowCreate:{type:Boolean,default:!1},remote:{type:Boolean,default:!1},remote_url:{type:[String,Function],default:""},remote_data_init:{type:Function,default:Ve=>Ve},hasGroup:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:""},showRightBtn:{type:Boolean,default:!1},rightBtnIcon:{type:String,default:"bk-icon icon-chain"},rightBtnCb:{type:Function,default:null},empty_text:{type:String,default:"无数据"}},emit:(Ve,...qe)=>{Ve==="change"?y("change",qe[0],qe[1]):Ve==="init"?y("init",qe[0]):Ve==="onShow"?y("onShow"):Ve==="onHide"&&y("onHide")},getFormData:g,onHookForm:k,getParent:$});V.setupLifecycle(i,i);const L=vue.ref(),re=vue.ref(i.items?[...i.items]:[]),ie=vue.ref(!1),oe=vue.ref(null),z=vue.computed(()=>i.modelValue),j=Ve=>{i.hook||V.updateForm(Ve)},le=Ve=>{let qe=Ve;return i.items.some(At=>At.value===Ve?(qe=At.text,!0):!1),qe},Ce=vue.computed(()=>Array.isArray(z.value)?z.value.length?i.items.length?z.value.map(Ve=>le(Ve)).join(","):i.modelValue.join(","):"--":z.value==="undefined"?"--":i.items.length?le(z.value):i.modelValue),he=Ve=>{if(!Ve){re.value=[...i.items];return}const qe=Ve.split(",");re.value=i.items.filter(At=>qe.some(Fe=>At.text.toLowerCase().includes(Fe.toLowerCase())))};t({set_loading:Ve=>{ie.value=Ve},validate:Ve=>V.validate(void 0,i.validation,Ve!==void 0?Ve:i.modelValue,i.parentValue,i.validateSet)});const ue=()=>{const Ve=typeof i.remote_url=="function"?i.remote_url():i.remote_url;Ve&&(ie.value=!0,fetch(Ve,{method:"GET",credentials:"include"}).then(qe=>qe.json()).then(qe=>{const At=i.remote_data_init(qe)||[];i.items.splice(0,i.items.length,...At),re.value=[...At],ie.value=!1}).catch(()=>{ie.value=!1}))},de=()=>{typeof i.rightBtnCb=="function"&&i.rightBtnCb()},_e=Ve=>{Ve||(re.value=[...i.items])},xe=()=>{V.updateForm([])},ze=Ve=>{let qe=(Ve.clipboardData||window.clipboardData).getData("text");qe=qe.replace(/\\(t|s)/g," ");const At=window.getSelection();if(!At||!At.rangeCount)return!1;qe=qe.split(/,|;|\s+/).filter(Ue=>Ue),qe.length>1&&Ve.preventDefault();const Fe=[],Ie=i.items.map(Ue=>Ue.text);if(qe.forEach(Ue=>{const Dt=Ie.includes(Ue),$e=i.items.find(Ne=>Dt?Ne.text===Ue:Ue.toLowerCase()===Ne.text.toLowerCase());$e&&Fe.push($e.value)}),!(qe.length===1&&Fe.length===0)){if(i.multiple){const Dt=[...Array.isArray(i.modelValue)?i.modelValue:[],...Fe];V.updateForm([...new Set(Dt)])}L.value?.blur?.()}};return vue.watch(()=>i.items,Ve=>{re.value=[...Ve]}),vue.onMounted(()=>{ue(),i.multiple&&(oe.value=document.querySelector(".el-select .el-select__input"),oe.value&&oe.value.addEventListener("paste",ze))}),vue.onBeforeUnmount(()=>{oe.value&&oe.value.removeEventListener("paste",ze)}),(Ve,qe)=>{const At=vue.resolveComponent("bk-button"),Fe=vue.resolveDirective("loading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$O,[e.formMode?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$x,[vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElSelect),{ref_key:"selectCompRef",ref:L,"model-value":z.value,"onUpdate:modelValue":j,filterable:"","default-first-option":"",clearable:e.clearable,"popper-class":"tag-component-popper","allow-create":e.allowCreate,disabled:!e.formEdit||e.disabled,remote:e.remote,"multiple-limit":e.multiple_limit,multiple:e.multiple,"no-data-text":e.empty_text,"filter-method":he,placeholder:e.placeholder,onVisibleChange:_e},vue.createSlots({default:vue.withCtx(()=>[e.hasGroup?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(re.value,Ie=>(vue.openBlock(),vue.createBlock(vue.unref(ElOptionGroup),{key:Ie.value,label:Ie.text},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(Ie.options||[],Ue=>(vue.openBlock(),vue.createBlock(vue.unref(ElOption),{key:Ue.value,label:Ue.text,value:Ue.value},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_4$i,vue.toDisplayString(Ue.text),1)]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128)):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(re.value,Ie=>(vue.openBlock(),vue.createBlock(vue.unref(ElOption),{key:Ie.value,label:Ie.text,value:Ie.value},{default:vue.withCtx(()=>[vue.createElementVNode("span",_hoisted_3$l,vue.toDisplayString(Ie.text),1)]),_:2},1032,["label","value"]))),128))]),_:2},[e.showRightBtn?{name:"prefix",fn:vue.withCtx(()=>[vue.createElementVNode("i",{class:vue.normalizeClass(["right-btn",e.rightBtnIcon]),onClick:de},null,2)]),key:"0"}:void 0]),1032,["model-value","clearable","allow-create","disabled","remote","multiple-limit","multiple","no-data-text","placeholder"])),[[Fe,ie.value],[r,{multiple:e.multiple,hasGroup:e.hasGroup,seletedValue:z.value,options:e.items}]]),e.multiple?(vue.openBlock(),vue.createElementBlock("p",_hoisted_5$e,[qe[1]||(qe[1]=vue.createTextVNode(" 已选 ",-1)),vue.createElementVNode("span",_hoisted_6$9,vue.toDisplayString(Array.isArray(z.value)?z.value.length:0),1),qe[2]||(qe[2]=vue.createTextVNode(" 项 ",-1)),vue.createVNode(At,{class:"ml10",disabled:!e.formEdit||e.disabled||!(Array.isArray(z.value)&&z.value.length),text:"",title:"primary",onClick:xe},{default:vue.withCtx(()=>[...qe[0]||(qe[0]=[vue.createTextVNode(" 清除 ",-1)])]),_:1},8,["disabled"])])):vue.createCommentVNode("",!0),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref(V).validateInfo.message),513),[[vue.vShow,!vue.unref(V).validateInfo.valid]])])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_7$6,vue.toDisplayString(Ce.value),1))])}}}),TagSelect=_export_sfc$1(_sfc_main$R,[["__scopeId","data-v-62f86643"]]),__vite_glob_0_12=Object.freeze(Object.defineProperty({__proto__:null,default:TagSelect},Symbol.toStringTag,{value:"Module"})),_hoisted_1$N={class:"tag-switch"},_hoisted_2$w={key:1,class:"rf-view-value"},_sfc_main$Q=vue.defineComponent({__name:"TagSwitch",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{default:"normal"},theme:{default:"success"}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{value:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{type:String,default:"normal"},theme:{type:String,default:"success"}},emit:(ie,...oe)=>{ie==="change"?i("change",oe[0],oe[1]):ie==="init"?i("init",oe[0]):ie==="onShow"?i("onShow"):ie==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.computed(()=>r.modelValue),L=ie=>{$.updateForm(ie)};return t({validate:ie=>$.validate(void 0,r.validation,ie!==void 0?ie:r.modelValue,r.parentValue,r.validateSet)}),(ie,oe)=>{const z=vue.resolveComponent("bk-switcher");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$N,[e.formMode?(vue.openBlock(),vue.createBlock(z,{key:0,"model-value":V.value,"onUpdate:modelValue":L,disabled:!e.formEdit||e.disabled,size:e.size,theme:e.theme},null,8,["model-value","disabled","size","theme"])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$w,vue.toDisplayString(e.modelValue),1))])}}}),TagSwitch=_export_sfc$1(_sfc_main$Q,[["__scopeId","data-v-4f3c44c3"]]),__vite_glob_0_13=Object.freeze(Object.defineProperty({__proto__:null,default:TagSwitch},Symbol.toStringTag,{value:"Module"})),_hoisted_1$M={class:"tag-text"},_hoisted_2$v={key:0,class:"view-value-raw"},_hoisted_3$k={key:1,class:"rf-view-value"},_sfc_main$P=vue.defineComponent({__name:"TagText",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{default:""},raw:{type:Boolean,default:!1}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{raw:{type:Boolean,default:!1},value:{type:String,default:""}},emit:(re,...ie)=>{re==="change"?i("change",ie[0],ie[1]):re==="init"?i("init",ie[0]):re==="onShow"?i("onShow"):re==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.computed(()=>r.modelValue==="undefined"||r.modelValue===""?"--":r.modelValue);return t({validate:re=>$.validate(void 0,r.validation,re!==void 0?re:r.modelValue,r.parentValue,r.validateSet)}),(re,ie)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$M,[e.raw?(vue.openBlock(),vue.createElementBlock("pre",_hoisted_2$v,vue.toDisplayString(V.value),1)):(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$k,vue.toDisplayString(V.value),1))]))}}),TagText=_export_sfc$1(_sfc_main$P,[["__scopeId","data-v-846dd9ae"]]),__vite_glob_0_14=Object.freeze(Object.defineProperty({__proto__:null,default:TagText},Symbol.toStringTag,{value:"Module"})),_hoisted_1$L={class:"tag-textarea"},_sfc_main$O=vue.defineComponent({__name:"TagTextarea",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{default:""},disabled:{type:Boolean,default:!1},placeholder:{default:""},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{value:{type:[String,Object],default:""},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:""}},emit:(oe,...z)=>{oe==="change"?i("change",z[0],z[1]):oe==="init"?i("init",z[0]):oe==="onShow"?i("onShow"):oe==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.ref(),L=vue.computed(()=>!r.formMode&&["",void 0].includes(r.modelValue)?"--":typeof r.modelValue=="string"?r.modelValue:JSON.stringify(r.modelValue)),re=oe=>{$.updateForm(oe)};return vue.watch(()=>r.formMode,()=>{vue.nextTick(()=>{V.value&&typeof V.value.resizeTextarea=="function"&&V.value.resizeTextarea()})}),t({validate:oe=>$.validate(void 0,r.validation,oe!==void 0?oe:r.modelValue,r.parentValue,r.validateSet)}),(oe,z)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$L,[vue.createVNode(vue.unref(ElInput),{ref_key:"tagTextareaRef",ref:V,type:"textarea","model-value":L.value,"onUpdate:modelValue":re,class:vue.normalizeClass({"rf-view-textarea-value":!e.formMode}),disabled:!e.formEdit||!e.formMode||e.disabled,autosize:e.formMode?{minRows:2}:!0,resize:"none",placeholder:e.placeholder},null,8,["model-value","class","disabled","autosize","placeholder"]),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref($).validateInfo.message),513),[[vue.vShow,!vue.unref($).validateInfo.valid]])]))}}),__vite_glob_0_15=Object.freeze(Object.defineProperty({__proto__:null,default:_sfc_main$O},Symbol.toStringTag,{value:"Module"})),_hoisted_1$K={class:"tag-time"},_hoisted_2$u={key:0},_hoisted_3$j={key:1,class:"rf-view-value"},_sfc_main$N=vue.defineComponent({__name:"TagTime",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{default:""},placeholder:{default:"请选择时间"},startPlaceholder:{default:"请选择开始时间"},endPlaceholder:{default:"请选择结束时间"},disabled:{type:Boolean,default:!1},isRange:{type:[Boolean,String],default:!1},format:{default:"HH:mm:ss"},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{placeholder:{type:String,default:"请选择时间"},startPlaceholder:{type:String,default:"请选择开始时间"},endPlaceholder:{type:String,default:"请选择结束时间"},disabled:{type:Boolean,default:!1},isRange:{type:String,default:!1},format:{type:String,default:"HH:mm:ss"},value:{type:[String,Array],default:""}},emit:(oe,...z)=>{oe==="change"?i("change",z[0],z[1]):oe==="init"?i("init",z[0]):oe==="onShow"?i("onShow"):oe==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.computed(()=>r.modelValue),L=oe=>{$.updateForm(oe)},re=vue.computed(()=>Array.isArray(V.value)?V.value.length?V.value.join("-"):"--":V.value||"--");return t({validate:oe=>$.validate(void 0,r.validation,oe!==void 0?oe:r.modelValue,r.parentValue,r.validateSet)}),(oe,z)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$K,[e.formMode?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$u,[vue.createVNode(vue.unref(ElTimePicker),{"model-value":V.value,"onUpdate:modelValue":L,"popper-class":"tag-component-popper","is-range":e.isRange,"value-format":e.format,"start-placeholder":e.startPlaceholder,"end-placeholder":e.endPlaceholder,disabled:!e.formEdit||e.disabled,placeholder:e.placeholder},null,8,["model-value","is-range","value-format","start-placeholder","end-placeholder","disabled","placeholder"]),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref($).validateInfo.message),513),[[vue.vShow,!vue.unref($).validateInfo.valid]])])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$j,vue.toDisplayString(re.value),1))]))}}),TagTime=_export_sfc$1(_sfc_main$N,[["__scopeId","data-v-ea47d222"]]),__vite_glob_0_16=Object.freeze(Object.defineProperty({__proto__:null,default:TagTime},Symbol.toStringTag,{value:"Module"})),_hoisted_1$J={class:"value-assign-plugin"},_hoisted_2$t={key:0},_hoisted_3$i={class:"custom-option-content"},_hoisted_4$h={class:"var-key"},_hoisted_5$d={class:"var-name"},_hoisted_6$8={key:1,class:"rf-view-value"},_sfc_main$M=vue.defineComponent({__name:"TagValueAssign",props:{tagCode:{},name:{},hookable:{type:Boolean,default:!0},validation:{default:()=>[]},default:{},hidden:{type:Boolean,default:!1},formEdit:{type:Boolean,default:!0},formMode:{type:Boolean,default:!0},formViewHidden:{type:Boolean,default:!1},cols:{default:0},validateSet:{default:()=>[]},parentValue:{},hook:{type:Boolean,default:!1},constants:{default:()=>({})},atomEvents:{default:()=>[]},atomMethods:{default:()=>({})},modelValue:{default:()=>[]},disabled:{type:Boolean,default:!1},fullVariableList:{default:()=>[]},variableList:{default:()=>[]}},emits:["update:modelValue","change","init","onShow","onHide"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.inject("getFormData"),g=vue.inject("onHookForm"),k=vue.inject("getParent"),$=useFormMixins({attrs:{value:{type:Object,default:()=>({})},disabled:{type:Boolean,default:!1},variableList:{type:Array,default:()=>[]}},emit:(ue,...de)=>{ue==="change"?i("change",de[0],de[1]):ue==="init"?i("init",de[0]):ue==="onShow"?i("onShow"):ue==="onHide"&&i("onHide")},getFormData:y,onHookForm:g,getParent:k});$.setupLifecycle(r,r);const V=vue.ref(),L=vue.ref(r.modelValue.length>0?lodash.cloneDeep(r.modelValue):[{key:"",value:"",value_type:"String"}]),re=[{id:"String",name:"字符串"},{id:"Int",name:"整数"},{id:"Bool",name:"布尔值"},{id:"Object",name:"Object"}],ie={required:[{required:!0,message:"必填项",trigger:"blur"}],key:[{required:!0,message:"必填项",trigger:"blur"},{validator:ue=>L.value.map(_e=>_e.key).filter(_e=>_e===ue).length<=1,message:"被赋值变量不能重复",trigger:"change"}]},oe=["component_inputs","component_outputs"],z=["input","int","textarea"],j=ue=>!!(ue.source_type&&oe.includes(ue.source_type)||ue.custom_type&&z.includes(ue.custom_type)),le=ue=>ue.startsWith("${")&&ue.endsWith("}")?ue.slice(2,-1):ue,Ce=vue.computed(()=>{if(!r.formEdit||r.disabled)return r.fullVariableList.map(_e=>({key:le(_e.key),displayKey:_e.key,name:_e.name}));const ue=[],de=[];return r.fullVariableList.forEach(_e=>{const xe={key:le(_e.key),displayKey:_e.key,name:_e.name,disabled:!1};j(_e)?ue.push(xe):de.push({...xe,disabled:!0})}),[...ue,...de]}),he=vue.computed(()=>!L.value||L.value.length===0?"--":L.value.map(ue=>`${ue.key?ue.key.replace(/^\$\{|\}$/g,""):""} = ${ue.value||""}`).join("; ")),pe=(ue,de)=>{de==="delete"?L.value.splice(ue,1):L.value.splice(ue+1,0,{key:"",value:"",value_type:"String"})};return t({validate:ue=>V.value?V.value.validate().then(()=>$.validate(void 0,r.validation,ue!==void 0?ue:L.value,r.parentValue,r.validateSet)).catch(()=>!1):$.validate(void 0,r.validation,ue!==void 0?ue:L.value,r.parentValue,r.validateSet)}),vue.watch(L,ue=>{$.updateForm(ue)},{deep:!0}),vue.watch(()=>r.modelValue,ue=>{lodash.isEqual(ue,L.value)||(L.value=ue.length>0?lodash.cloneDeep(ue):[{key:"",value:"",value_type:"String"}])},{deep:!0,immediate:!0}),(ue,de)=>{const _e=vue.resolveComponent("bk-select"),xe=vue.resolveComponent("bk-form-item"),ze=vue.resolveComponent("bk-option"),Ve=vue.resolveComponent("bk-input"),qe=vue.resolveComponent("bk-button"),At=vue.resolveComponent("bk-form"),Fe=vue.resolveDirective("bk-overflow-tips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$J,[e.formMode?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$t,[vue.createVNode(At,{ref_key:"valueAssignFormRef",ref:V,"label-width":0,model:L.value},{default:vue.withCtx(()=>[vue.createVNode(xe,{label:"''","label-width":100,required:!0},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,(Ie,Ue)=>(vue.openBlock(),vue.createElementBlock("div",{key:Ue,class:"form-content-item"},[vue.createVNode(xe,{label:"",property:`${Ue}.key`,rules:ie.key},{default:vue.withCtx(()=>[vue.createVNode(_e,{modelValue:Ie.key,"onUpdate:modelValue":Dt=>Ie.key=Dt,class:"value-selector","ext-popover-cls":"value-selector-popover",placeholder:"被赋值变量","id-key":"key","display-key":"displayKey",filterable:"",disabled:!e.formEdit||e.disabled,list:Ce.value},{optionRender:vue.withCtx(({item:Dt})=>[vue.createElementVNode("div",_hoisted_3$i,[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",_hoisted_4$h,[vue.createTextVNode(vue.toDisplayString(Dt.displayKey),1)])),[[Fe]]),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",_hoisted_5$d,[vue.createTextVNode(vue.toDisplayString(Dt.name),1)])),[[Fe]])])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled","list"])]),_:2},1032,["property","rules"]),de[2]||(de[2]=vue.createElementVNode("span",{class:"equal-sign"},vue.toDisplayString("="),-1)),vue.createVNode(xe,{label:"",property:`${Ue}.value`,rules:ie.required},{default:vue.withCtx(()=>[vue.createVNode(Ve,{modelValue:Ie.value,"onUpdate:modelValue":Dt=>Ie.value=Dt,disabled:!e.formEdit||e.disabled,placeholder:"值"},{prefix:vue.withCtx(()=>[vue.createVNode(_e,{modelValue:Ie.value_type,"onUpdate:modelValue":Dt=>Ie.value_type=Dt,clearable:!1,class:"value-type-selector",disabled:!e.formEdit||e.disabled},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(re,Dt=>vue.createVNode(ze,{id:Dt.id,key:Dt.id,name:Dt.name},null,8,["id","name"])),64))]),_:1},8,["modelValue","onUpdate:modelValue","disabled"])]),_:2},1032,["modelValue","onUpdate:modelValue","disabled"])]),_:2},1032,["property","rules"]),e.formEdit&&!e.disabled?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(qe,{class:"row-button add-button",onClick:Dt=>pe(Number(Ue),"add")},{default:vue.withCtx(()=>[...de[0]||(de[0]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-zoom-add"},null,-1)])]),_:1},8,["onClick"]),vue.createVNode(qe,{class:"row-button delete-button",disabled:L.value.length===1,onClick:Dt=>pe(Number(Ue),"delete")},{default:vue.withCtx(()=>[...de[1]||(de[1]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-zoom-minus"},null,-1)])]),_:1},8,["disabled","onClick"])],64)):vue.createCommentVNode("",!0)]))),128))]),_:1})]),_:1},8,["model"]),vue.withDirectives(vue.createElementVNode("span",{class:"common-error-tip error-info"},vue.toDisplayString(vue.unref($).validateInfo.message),513),[[vue.vShow,!vue.unref($).validateInfo.valid]])])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$8,vue.toDisplayString(he.value),1))])}}}),TagValueAssign=_export_sfc$1(_sfc_main$M,[["__scopeId","data-v-9bb0ca44"]]),__vite_glob_0_17=Object.freeze(Object.defineProperty({__proto__:null,default:TagValueAssign},Symbol.toStringTag,{value:"Module"})),_hoisted_1$I={class:"name"},_hoisted_2$s={key:0,class:"required"},_hoisted_3$h={key:1,class:"scheme-code"},_hoisted_4$g={key:2,class:"not-reuse-tip"},_hoisted_5$c={key:3,class:"pre-mako-tip"},_hoisted_6$7={key:4,class:"used-tip"},_hoisted_7$5={key:2,class:"scheme-desc-wrap"},_hoisted_8$4={class:"hide-html-text"},_hoisted_9$4={key:0},_sfc_main$L=vue.defineComponent({__name:"FormItem",props:{scheme:{default:()=>({})},option:{default:()=>({})},value:{type:[String,Number,Boolean,Array,Object],default:void 0},parentValue:{type:[String,Number,Boolean,Array,Object],default:void 0},hook:{type:Boolean,default:!1},render:{type:Boolean,default:!0},constants:{default:()=>({})},fullVariableList:{default:()=>[]}},emits:["init","change"],setup(e,{expose:t,emit:n}){const r=Object.assign({"./tags/TagButton.vue":__vite_glob_0_0,"./tags/TagCheckbox.vue":__vite_glob_0_1,"./tags/TagCodeEditor.vue":__vite_glob_0_2,"./tags/TagDatatable.vue":__vite_glob_0_3,"./tags/TagDateTimeRange.vue":__vite_glob_0_4,"./tags/TagDatetime.vue":__vite_glob_0_5,"./tags/TagFieldMappings.vue":__vite_glob_0_6,"./tags/TagInput.vue":__vite_glob_0_7,"./tags/TagInt.vue":__vite_glob_0_8,"./tags/TagMemberSelector.vue":__vite_glob_0_9,"./tags/TagRadio.vue":__vite_glob_0_10,"./tags/TagSection.vue":__vite_glob_0_11,"./tags/TagSelect.vue":__vite_glob_0_12,"./tags/TagSwitch.vue":__vite_glob_0_13,"./tags/TagText.vue":__vite_glob_0_14,"./tags/TagTextarea.vue":__vite_glob_0_15,"./tags/TagTime.vue":__vite_glob_0_16,"./tags/TagValueAssign.vue":__vite_glob_0_17}),i={};Object.keys(r).forEach(_e=>{const ze=r[_e].default;if(ze){const Ve=_e.split("/").pop()?.replace(".vue","")||"";if(Ve.startsWith("Tag")){const At=`tag-${Ve.slice(3).replace(/[A-Z]/g,(Fe,Ie)=>Ie>0?`-${Fe.toLowerCase()}`:Fe.toLowerCase())}`;i[At]=ze}}});const y=e,g=n,k=vue.ref(!0);"formViewHidden"in y.scheme.attrs&&!y.option.formEdit?k.value=!y.scheme.attrs.formViewHidden:"hidden"in y.scheme.attrs&&(k.value=!y.scheme.attrs.hidden);const $=vue.ref(new Date().getTime()),V=vue.computed(()=>{const _e=`tag-${y.scheme.type.replace(/_/g,"-")}`;return i[_e]||_e}),L=vue.ref(lodash.cloneDeep(y.value)),re=vue.ref(!1),ie=vue.ref(!1),oe=vue.ref();vue.ref();const z=vue.computed(()=>!y.hook&&y.option.showGroup&&!!(y.scheme.name||y.scheme.attrs.name)),j=vue.computed(()=>y.option.formEdit&&y.scheme.attrs.notReuse),le=vue.computed(()=>{const{type:_e,attrs:xe}=y.scheme;return xe.html_used_tip&&["input","textarea","select"].includes(_e)?"rf-tag-used":""});vue.watch(()=>y.value,_e=>{L.value=lodash.cloneDeep(_e)});const Ce=()=>{const _e=lodash.cloneDeep(y.scheme.attrs);return _e.showVarList=y.option.showVarList,_e.formEdit=y.option.formEdit,_e.formMode=y.option.formMode,_e.validateSet=y.option.validateSet,{..._e}},he=()=>{let _e=!1;return y.option.showRequired===!0&&"validation"in y.scheme.attrs&&(_e=y.scheme.attrs.validation.some(xe=>xe.type==="required")),_e},pe=(_e,xe)=>{g("change",_e,xe)},ae=()=>{k.value=!0},ue=()=>{k.value=!1};return t({validate:_e=>!y.hook&&k.value?oe.value?.validate?.(_e)??!0:!0,onShowForm:ae,onHideForm:ue,scheme:vue.computed(()=>y.scheme)}),(_e,xe)=>{const ze=vue.resolveComponent("tag-section"),Ve=vue.resolveDirective("bk-tooltips");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{key:$.value,class:vue.normalizeClass(["rf-form-item","clearfix",{"show-label":e.option.showLabel,"rf-view-mode":!e.option.formMode,"rf-col-layout":e.scheme.attrs.cols,"rf-section-item":e.scheme.type==="section"}]),style:vue.normalizeStyle({width:(e.scheme.attrs.cols?e.scheme.attrs.cols/12*100:100)+"%"})},[e.scheme.type==="section"?(vue.openBlock(),vue.createBlock(ze,{key:0,ref_key:"tagComponentRef",ref:oe,name:e.scheme.attrs.name,"tag-code":e.scheme.tag_code},null,8,["name","tag-code"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[z.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["rf-group-name",{"not-reuse":j.value}])},[vue.createElementVNode("span",_hoisted_1$I,vue.toDisplayString(e.scheme.name||e.scheme.attrs.name),1),he()?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$s,"*")):vue.createCommentVNode("",!0),e.option.showHook?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$h,vue.toDisplayString(e.scheme.attrs.varKey||e.scheme.tag_code),1)),j.value?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$g,[...xe[2]||(xe[2]=[vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1),vue.createTextVNode(" 未能重用 ",-1)])])):vue.createCommentVNode("",!0),e.option.formEdit&&e.scheme.attrs.pre_mako_tip?(vue.openBlock(),vue.createElementBlock("span",_hoisted_5$c,[xe[3]||(xe[3]=vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1)),vue.createTextVNode(" "+vue.toDisplayString(e.scheme.attrs.pre_mako_tip),1)])):!e.scheme.attrs.html_used_tip&&e.scheme.attrs.used_tip?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$7,[xe[4]||(xe[4]=vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1)),vue.createTextVNode(" "+vue.toDisplayString(e.scheme.attrs.used_tip),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),e.option.showLabel&&e.scheme.attrs.name?(vue.openBlock(),vue.createElementBlock("label",{key:1,class:vue.normalizeClass(["rf-tag-label",{required:he()}])},[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass({"tag-label-tips":e.scheme.attrs.tips})},[vue.createTextVNode(vue.toDisplayString(e.scheme.attrs.name),1)],2)),[[Ve,{allowHtml:!0,content:e.scheme.attrs.tips,placement:"top-start",theme:"light",extCls:"rf-label-tips",boundary:"window",zIndex:2072,disabled:!e.scheme.attrs.tips}]])],2)):vue.createCommentVNode("",!0),vue.withDirectives((vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(V.value),vue.mergeProps({class:[e.scheme.attrs.name?"rf-tag-form":"",le.value],ref_key:"tagComponentRef",ref:oe},Ce(),{"tag-code":e.scheme.tag_code,hook:e.hook,constants:e.constants,"atom-events":e.scheme.events,"atom-methods":e.scheme.methods,"model-value":L.value,"parent-value":e.parentValue,"full-variable-list":e.fullVariableList,onInit:xe[0]||(xe[0]=qe=>g("init",qe)),"onUpdate:modelValue":pe,onChange:pe,onOnShow:ae,onOnHide:ue}),null,16,["class","tag-code","hook","constants","atom-events","atom-methods","model-value","parent-value","full-variable-list"])),[[vue.vShow,!e.hook]]),e.scheme.attrs.desc?(vue.openBlock(),vue.createElementBlock("div",_hoisted_7$5,[vue.createElementVNode("div",_hoisted_8$4,vue.toDisplayString(e.scheme.attrs.desc),1),vue.createElementVNode("div",{class:vue.normalizeClass(["rf-group-desc",{"is-fold":!ie.value}])},vue.toDisplayString(e.scheme.attrs.desc),3),re.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass({mt10:ie.value})},[ie.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("span",_hoisted_9$4,"...")),vue.createElementVNode("span",{class:"expand-btn",onClick:xe[1]||(xe[1]=qe=>ie.value=!ie.value)},vue.toDisplayString(ie.value?"收起":"展开全部"),1)],2)):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)],64))],6)),[[vue.vShow,k.value]])}}}),_hoisted_1$H={class:"name"},_hoisted_2$r={key:0,class:"required"},_hoisted_3$g={class:"scheme-code"},_hoisted_4$f={key:1,class:"not-reuse-tip"},_hoisted_5$b={key:2,class:"pre-mako-tip"},_hoisted_6$6={key:3,class:"used-tip"},_hoisted_7$4={class:"tip-title"},_hoisted_8$3={key:2,class:"rf-form-item rf-has-hook show-label"},_hoisted_9$3={key:0,class:"rf-tag-label"},_hoisted_10$3={class:"rf-tag-form rf-has-hook"},_hoisted_11$3={key:4,class:"scheme-desc-wrap"},_hoisted_12$1={class:"hide-html-text"},_hoisted_13$1={key:0},_sfc_main$K=vue.defineComponent({__name:"FormGroup",props:{scheme:{default:()=>({})},option:{default:()=>({})},value:{default:()=>({})},hook:{type:Boolean,default:!1},render:{type:Boolean,default:!0},constants:{default:()=>({})}},emits:["init","change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.getCurrentInstance(),g=vue.ref(!0);"formViewHidden"in r.scheme.attrs&&!r.option.formEdit?g.value=!r.scheme.attrs.formViewHidden:"hidden"in r.scheme.attrs&&(g.value=!r.scheme.attrs.hidden);const k=vue.ref(Object.assign({},r.option,{showGroup:!1})),$=vue.ref(new Date().getTime()),V=vue.reactive({}),L=vue.ref(!1),re=vue.ref(!1),ie=vue.ref(),oe=vue.ref([]),z=vue.computed(()=>!r.hook&&r.option.showGroup&&!!(r.scheme.name||r.scheme.attrs.name)),j=vue.computed(()=>r.option.formEdit&&r.scheme.attrs.notReuse),le=(Fe,Ie)=>{Fe&&(oe.value[Number(Ie)]=Fe)};vue.watch(()=>r.option,Fe=>{k.value=Object.assign({},k.value,Fe,{showGroup:!1})},{deep:!0});const Ce=()=>{let Fe=!1;return r.option.showRequired===!0&&"validation"in r.scheme.attrs&&(Fe=r.scheme.attrs.validation.some(Ie=>Ie.type==="required")),Fe},he=(Fe,Ie)=>{Fe.unshift(r.scheme.tag_code),i("change",Fe,Ie)},pe=Fe=>{let Ie;return typeof Fe=="string"&&Fe!==""?oe.value.some(Ue=>Ue?.scheme&&Ue.scheme.tag_code===Fe?(Ie=Fe==="combine"?Ue:Ue.$refs?.tagComponent,!0):!1):Ie=oe.value.map(Ue=>Ue?.scheme?.tag_code==="combine"?Ue:Ue?.$refs?.tagComponent),Ie},ae=Fe=>Ie=>{Fe.call(y?.proxy,Ie)},ue=(Fe,Ie,Ue)=>{const Dt=y?.parent;Dt&&typeof Dt.emit=="function"&&Dt.emit(`${Fe}_${Ie}`,Ue)},de=()=>{g.value=!0},_e=()=>{g.value=!1},xe=()=>{de()},ze=()=>{_e()},Ve=()=>{let Fe=!0;return!r.hook&&g.value&&oe.value.forEach(Ie=>{if(!Ie)return;const Ue=Ie.$options?.name||Ie.constructor?.name;if(!(Ue!=="FormItem"&&Ue!=="FormGroup")&&typeof Ie.validate=="function"){const Dt=Ie.validate();Fe&&(Fe=Dt)}}),Fe},qe=()=>{ie.value?.hideHandler?.(),r.scheme.attrs.html_used_tip=!1,r.scheme.attrs.disabled=!0,r.scheme.attrs.children&&At(r.scheme.attrs.children);const Fe=r.constants[r.scheme.tag_code]?.value;if(Fe)for(const Ie in Fe)he([Ie],Fe[Ie]);$.value=new Date().getTime()},At=Fe=>{Fe.forEach(Ie=>{Ie.attrs||(Ie.attrs={}),Ie.attrs.disabled=!0,Ie.attrs.children&&At(Ie.attrs.children)})};return t({validate:Ve,get_child:pe,onShowForm:xe,onHideForm:ze,show:de,hide:_e,scheme:vue.computed(()=>r.scheme)}),vue.onMounted(()=>{const{scheme:Fe}=r;Fe.events&&Fe.events.forEach(Ie=>{const Ue=`${Ie.source}_${Ie.type}`;V[Ue]=ae(Ie.action);const Dt=y?.parent;Dt&&typeof Dt.on=="function"&&Dt.on(Ue,V[Ue])}),Fe.methods&&Object.keys(Fe.methods).forEach(Ie=>{Fe.methods[Ie]}),vue.nextTick(()=>{ue(r.scheme.tag_code,"init",r.value)})}),vue.onBeforeUnmount(()=>{r.scheme.events&&r.scheme.events.forEach(Fe=>{const Ie=`${Fe.source}_${Fe.type}`,Ue=y?.parent;Ue&&typeof Ue.off=="function"&&Ue.off(Ie,V[Ie])})}),(Fe,Ie)=>{const Ue=vue.resolveComponent("bk-popover"),Dt=vue.resolveComponent("bk-input"),$e=vue.resolveDirective("bk-tooltips");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["rf-form-group",[e.scheme.status||""]]),key:$.value},[z.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(["rf-group-name",{"not-reuse":j.value}])},[vue.createElementVNode("span",_hoisted_1$H,vue.toDisplayString(e.scheme.name||e.scheme.attrs.name),1),Ce()?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$r,"*")):vue.createCommentVNode("",!0),vue.createElementVNode("span",_hoisted_3$g,vue.toDisplayString(e.scheme.attrs.varKey||e.scheme.tag_code),1),j.value?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$f,[...Ie[2]||(Ie[2]=[vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1),vue.createTextVNode(" 未能重用 ",-1)])])):vue.createCommentVNode("",!0),e.option.formEdit&&e.scheme.attrs.pre_mako_tip?(vue.openBlock(),vue.createElementBlock("span",_hoisted_5$b,[Ie[3]||(Ie[3]=vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1)),vue.createTextVNode(" "+vue.toDisplayString(e.scheme.attrs.pre_mako_tip),1)])):!e.scheme.attrs.html_used_tip&&e.scheme.attrs.used_tip?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$6,[Ie[4]||(Ie[4]=vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1)),vue.createTextVNode(" "+vue.toDisplayString(e.scheme.attrs.used_tip),1)])):vue.createCommentVNode("",!0)],2)):vue.createCommentVNode("",!0),e.scheme.attrs.html_used_tip?(vue.openBlock(),vue.createBlock(Ue,{key:1,ref_key:"htmlUsedTipPopperRef",ref:ie,placement:"top-start",theme:"light",always:"",class:"html-used-tippy","ext-cls":"html-used-tippy-popper"},{content:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_7$4,[Ie[5]||(Ie[5]=vue.createElementVNode("i",{class:"common-icon-dark-circle-warning"},null,-1)),vue.createTextVNode(" "+vue.toDisplayString(e.scheme.attrs.used_tip),1)]),Ie[6]||(Ie[6]=vue.createElementVNode("p",{class:"tip-content"},"将沿用原参数值提交",-1)),vue.createElementVNode("p",{class:"tip-btn",onClick:qe},"知道了")]),default:vue.withCtx(()=>[Ie[7]||(Ie[7]=vue.createElementVNode("div",{class:"empty-box"},null,-1))]),_:1},512)):vue.createCommentVNode("",!0),e.hook?(vue.openBlock(),vue.createElementBlock("div",_hoisted_8$3,[e.option.showLabel?(vue.openBlock(),vue.createElementBlock("label",_hoisted_9$3,[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass({"tag-label-tips":e.option.formEdit&&e.scheme.attrs.tips})},[vue.createTextVNode(vue.toDisplayString(e.scheme.attrs.name),1)],2)),[[$e,{allowHtml:!0,content:e.scheme.attrs.tips,placement:"top-start",theme:"light",extCls:"rf-label-tips",boundary:"window",zIndex:2072,disabled:!e.option.formEdit||!e.scheme.attrs.tips}]])])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_10$3,[vue.createVNode(Dt,{disabled:!0,"model-value":String(e.value)},null,8,["model-value"])])])):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:3},vue.renderList(e.scheme.attrs.children,(Ne,Oe)=>(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(Ne.type==="combine"?_sfc_main$K:_sfc_main$L),{key:`${Ne.tag_code}_${Oe}`,ref_for:!0,ref:kt=>le(kt,Oe),constants:e.constants,scheme:Ne,option:k.value,value:typeof e.value=="object"&&e.value!==null?e.value[Ne.tag_code]:void 0,"parent-value":e.value,onInit:Ie[0]||(Ie[0]=kt=>i("init",kt)),onChange:he},null,40,["constants","scheme","option","value","parent-value"]))),128)),e.scheme.attrs.desc?(vue.openBlock(),vue.createElementBlock("div",_hoisted_11$3,[vue.createElementVNode("div",_hoisted_12$1,vue.toDisplayString(e.scheme.attrs.desc),1),vue.createElementVNode("div",{class:vue.normalizeClass(["rf-group-desc",{"is-fold":!re.value}])},vue.toDisplayString(e.scheme.attrs.desc),3),L.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass({mt10:re.value})},[re.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("span",_hoisted_13$1,"...")),vue.createElementVNode("span",{class:"expand-btn",onClick:Ie[1]||(Ie[1]=Ne=>re.value=!re.value)},vue.toDisplayString(re.value?"收起":"展开全部"),1)],2)):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)],2)),[[vue.vShow,g.value]])}}}),_hoisted_1$G={class:"render-form"},_sfc_main$J=vue.defineComponent({__name:"Renderform",props:{fullVariableList:{default:()=>[]},scheme:{default:()=>[]},formOption:{default:()=>({})},formData:{default:()=>({})},hooked:{default:()=>({})},renderConfig:{default:()=>({})},constants:{default:()=>({})},isTriggerConfig:{type:Boolean,default:!1}},emits:["update:formData","change","onHookChange","onRenderChange"],setup(e,{expose:t,emit:n}){const r={showRequired:!0,showHook:!1,showGroup:!1,showLabel:!1,formEdit:!0,formMode:!0,showVarList:!1,showDesc:!1,validateSet:["required","custom","regex"]},i=e,y=n,g=vue.computed({get:()=>i.formData,set:pe=>y("update:formData",pe)});vue.provide("getFormData",()=>g.value);const k=vue.ref(lodash.cloneDeep(i.formData)),$=vue.ref({}),V=vue.ref({}),L=vue.ref([]),re=vue.computed(()=>Object.assign({},r,i.formOption)),ie=(pe,ae)=>{pe&&(L.value[ae]=pe)},oe=(pe,ae)=>{const ue=lodash.cloneDeep(k.value);if(pe.reduce((_e,xe,ze,Ve)=>ze===Ve.length-1?(_e[xe]=ae,_e):(_e.hasOwnProperty(xe)||(_e[xe]={}),_e[xe]),ue),k.value=lodash.cloneDeep(ue),y("change",ue),g.value=lodash.cloneDeep(ue),!Object.keys($.value).length)return;const de=pe[0];le(de,ae)},z=(pe,ae)=>{y("onHookChange",pe,ae)},j=(pe,ae)=>{y("onRenderChange",pe,ae)},le=(pe,ae)=>{pe in $.value&&$.value[pe].forEach(de=>{let _e=JSON.stringify(ae)===JSON.stringify(de.value);const xe=i.scheme.findIndex(Fe=>Fe.tag_code===de.target_key),ze=L.value[xe],Ve=V.value[de.target_key];if(!ze||!Ve)return;_e=de.operator==="="&&_e||de.operator==="!="&&!_e,Ve[pe]=_e;let qe=!1;const At=Object.values(Ve);de.isOr?qe=At.some(Fe=>Fe):qe=At.every(Fe=>Fe),qe?ze.onHideForm?.():ze.onShowForm?.()})};return t({validate:()=>{let pe=!0;return L.value.forEach(ae=>{if(ae&&typeof ae.validate=="function"){const ue=ae.validate();pe&&(pe=ue)}}),pe},get_child:pe=>{let ae;return typeof pe=="string"&&pe!==""?L.value.some(ue=>ue?.scheme&&ue.scheme.tag_code===pe?(ae=pe==="combine"?ue:ue.$refs?.tagComponent,!0):!1):ae=L.value.map(ue=>ue?.scheme?.tag_code==="combine"?ue:ue?.$refs?.tagComponent),ae}}),vue.onMounted(()=>{const pe={},ae={};if(Object.values(i.constants).forEach(ue=>{!ue.hide_condition||!ue.hide_condition.length||ue.hide_condition.forEach(de=>{const{constant_key:_e,operator:xe,value:ze}=de;ue.key in ae||(ae[ue.key]={}),ae[ue.key][_e]=!1;const Ve={target_key:ue.key,operator:xe,value:ze,isOr:!0};_e in pe?pe[_e].push(Ve):pe[_e]=[Ve]})}),$.value=pe,V.value=ae,!!Object.keys($.value).length)for(const[ue,de]of Object.entries(i.formData))le(ue,de)}),vue.watch(()=>i.formData,pe=>{k.value=lodash.cloneDeep(pe)},{deep:!0}),(pe,ae)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$G,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.scheme,(ue,de)=>(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(ue.type==="combine"?_sfc_main$K:_sfc_main$L),{key:`${ue.tag_code}_${de}`,ref_for:!0,ref:_e=>ie(_e,de),scheme:ue,option:re.value,value:k.value[ue.tag_code],hook:e.hooked[ue.tag_code],render:e.renderConfig[ue.tag_code],constants:e.constants,"full-variable-list":e.fullVariableList,onChange:oe,onOnHook:z,onOnRenderChange:j},null,40,["scheme","option","value","hook","render","constants","full-variable-list"]))),128))]))}}),RenderForm=_export_sfc$1(_sfc_main$J,[["__scopeId","data-v-8ce57d43"]]),_hoisted_1$F={class:"bkflow-variable-edit"},_hoisted_2$q={class:"basic-info-section"},_hoisted_3$f={class:"variable-edit-form"},_sfc_main$I=vue.defineComponent({__name:"global-variable-edit",props:{variable:{},editable:{type:Boolean,default:!0},variablesReference:{default:()=>({defined:{},nodefined:{}})},customVariableTypes:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=useFlowApiConfig(),g=vue.ref(lodash.cloneDeep(r.variable)),k=vue.ref(r.variable.key),$=vue.ref([]),V=vue.ref(!1),L=vue.ref({}),re=vue.ref(),ie={name:[{required:!0,message:"请输入变量名称"}],key:[{validator:de=>de.trim().length>0,message:"KEY不能为空",trigger:"blur"},{validator:de=>/(^\${(?!_env_|_system\.)[a-zA-Z_]\w*}$)|(^(?!_env_|_system\.)[a-zA-Z_]\w*$)/.test(de),message:"变量KEY由英文字母、数字、下划线组成,不允许使用系统变量及业务环境变量命名规则,且不能以数字开头",trigger:"blur"}],validation:[{required:!0,message:"请输入正则校验"}]},oe=vue.computed(()=>r.variable.source_type!=="custom"?[{value:"component_inputs",label:"组件"},{value:"component_outputs",label:"组件"}]:r.customVariableTypes.filter(de=>["textarea","input","int","json_variable"].includes(de.code)).map(de=>({value:de.code,label:de.name}))),z=vue.computed(()=>({...g.value,key:k.value})),j=vue.computed(()=>{if(r.variable.key.length>0&&r.variablesReference?.defined&&r.variablesReference.defined[r.variable.key]){const{activities:de,conditions:_e,constants:xe}=r.variablesReference.defined[r.variable.key];return de.length+_e.length+xe.length>0}return!1});vue.onMounted(()=>{le()}),vue.watch(()=>g.value.custom_type,()=>{g.value.custom_type&&le()});const le=async()=>{if(!g.value.custom_type){$.value=[];return}V.value=!0;try{const de=await getVariableForms(y,g.value);if($.value=de,de.length>0){const _e=g.value.custom_type;L.value={[_e]:g.value.value!==void 0?g.value.value:""}}else L.value={}}catch(de){console.error("Failed to get variable forms:",de),$.value=[]}finally{V.value=!1}},Ce=()=>{g.value.key=k.value,ue()},he=de=>{g.value.custom_type=de,["textarea","input"].includes(de)?g.value.validation="^.+$":g.value.validation="",g.value.source_tag=`${de}.${de}`,ue()},pe=de=>{g.value.value=de[g.value.custom_type],i("change",lodash.cloneDeep(g.value))},ae=()=>re.value.validate().then(()=>!0).catch(()=>!1),ue=()=>{i("change",lodash.cloneDeep(g.value))};return t({validate:ae}),(de,_e)=>{const xe=vue.resolveComponent("bk-input"),ze=vue.resolveComponent("bk-form-item"),Ve=vue.resolveComponent("bk-select"),qe=vue.resolveComponent("bk-option"),At=vue.resolveComponent("bk-form"),Fe=vue.resolveDirective("bk-tooltips"),Ie=vue.resolveDirective("bk-loading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$F,[vue.createElementVNode("div",_hoisted_2$q,[_e[5]||(_e[5]=vue.createElementVNode("h4",{class:"variable-edit-section-title"},"基础信息",-1)),vue.createVNode(At,{ref_key:"basicInfoFormRef",ref:re,"label-width":130,model:z.value,rules:ie},{default:vue.withCtx(()=>[vue.createVNode(ze,{label:"名称",required:"",property:"name"},{default:vue.withCtx(()=>[vue.createVNode(xe,{modelValue:g.value.name,"onUpdate:modelValue":_e[0]||(_e[0]=Ue=>g.value.name=Ue),disabled:!r.editable,onChange:ue},null,8,["modelValue","disabled"])]),_:1}),vue.createVNode(ze,{label:"KEY",required:"",property:"key"},{default:vue.withCtx(()=>[vue.withDirectives(vue.createVNode(xe,{modelValue:k.value,"onUpdate:modelValue":_e[1]||(_e[1]=Ue=>k.value=Ue),disabled:!r.editable||j.value,onBlur:Ce},null,8,["modelValue","disabled"]),[[Fe,{content:"变量已被引用,KEY不可修改",disabled:r.editable&&!j.value}]])]),_:1}),vue.createVNode(ze,{label:"类型"},{default:vue.withCtx(()=>[vue.createVNode(Ve,{"model-value":g.value.source_type==="custom"?g.value.custom_type:g.value.source_type,clearable:!1,list:oe.value,disabled:!r.editable||g.value.source_type==="component_outputs",onChange:he},null,8,["model-value","list","disabled"])]),_:1}),g.value.custom_type==="input"?(vue.openBlock(),vue.createBlock(ze,{key:0,label:"正则校验",property:"validation"},{default:vue.withCtx(()=>[vue.createVNode(xe,{modelValue:g.value.validation,"onUpdate:modelValue":_e[2]||(_e[2]=Ue=>g.value.validation=Ue),disabled:!r.editable,onChange:ue},null,8,["modelValue","disabled"])]),_:1})):vue.createCommentVNode("",!0),g.value.source_type!=="system"?(vue.openBlock(),vue.createBlock(ze,{key:1,label:"执行时显示",description:"配置为「显示」可在执行时做为任务入参使用,配置为「隐藏」则仅能在流程内部使用"},{default:vue.withCtx(()=>[vue.createVNode(Ve,{modelValue:g.value.show_type,"onUpdate:modelValue":_e[3]||(_e[3]=Ue=>g.value.show_type=Ue),disabled:!r.editable||g.value.source_type==="component_outputs",clearable:!1,onChange:ue},{default:vue.withCtx(()=>[vue.createVNode(qe,{id:"show",name:"显示(入参)"}),vue.createVNode(qe,{id:"hide",name:"隐藏(非入参)"})]),_:1},8,["modelValue","disabled"])]),_:1})):vue.createCommentVNode("",!0),g.value.source_type!=="system"?(vue.openBlock(),vue.createBlock(ze,{key:2,label:"说明"},{default:vue.withCtx(()=>[vue.createVNode(xe,{modelValue:g.value.desc,"onUpdate:modelValue":_e[4]||(_e[4]=Ue=>g.value.desc=Ue),type:"textarea",rows:4,resize:!1,disabled:!r.editable,onChange:ue},null,8,["modelValue","disabled"])]),_:1})):vue.createCommentVNode("",!0)]),_:1},8,["model"])]),["components_input","custom"].includes(g.value.source_type)?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[_e[6]||(_e[6]=vue.createElementVNode("h4",{class:"variable-edit-section-title"},"默认值",-1)),vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_3$f,[vue.createVNode(RenderForm,{editable:r.editable,scheme:$.value,"form-data":L.value,"form-option":{showHook:!1,showGroup:!1,showLabel:!0,showVarList:!0,validateSet:["custom","regex"],formEdit:r.editable},onChange:pe},null,8,["editable","scheme","form-data","form-option"])])),[[Ie,{loading:V.value}]])],64)):vue.createCommentVNode("",!0)])}}}),GlobalVariableEdit=_export_sfc$1(_sfc_main$I,[["__scopeId","data-v-f66d25f1"]]),_hoisted_1$E={class:"slider-title"},_hoisted_2$p={key:0},_hoisted_3$e={class:"sub-title-text"},_hoisted_4$e={class:"global-variable-slider"},_hoisted_5$a={class:"sideslider-footer-buttons"},_sfc_main$H=vue.defineComponent({__name:"index",props:{show:{type:Boolean,default:!1},flowData:{},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0}},emits:["close","update:show","outputChange","change"],setup(e,{emit:t}){const n={create:"新建",edit:"编辑",clone:"克隆",view:"查看"},r=e,i=useFlowApiConfig(),y=t,g=vue.shallowRef({defined:{},nodefined:{}}),k=vue.shallowRef(!1),$=vue.shallowRef({type:"create",data:getVariableDefaultConfig(),oldKey:""}),V=vue.ref([]),L=vue.ref(),re=vue.computed(()=>Object.keys(r.flowData.pipeline_tree.constants).length);vue.watch(()=>r.show,_e=>{_e&&(oe(),ie())});const ie=async()=>{if(i?.fetchCustomVariableTypes){const _e=await i.fetchCustomVariableTypes();V.value=_e.data}},oe=async()=>{if(i?.fetchVariableRef){const{activities:_e,constants:xe,gateways:ze}=r.flowData.pipeline_tree,Ve=await i.fetchVariableRef({template_id:r.flowData.id,activities:_e,constants:xe,gateways:ze});g.value=Ve.data}},z=()=>{const _e=getVariableDefaultConfig();_e.index=re.value,$.value={type:"create",data:_e},k.value=!0},j=_e=>{$.value={type:!r.editable||_e.source_type==="system"?"view":"edit",data:lodash.cloneDeep(_e),oldKey:_e.key},k.value=!0},le=_e=>{const xe=lodash.cloneDeep(_e);xe.key="",$.value={type:"clone",data:xe},k.value=!0},Ce=_e=>{$.value={...$.value,data:_e}},he=async()=>{if(await L.value?.validate()){const xe={...r.flowData.pipeline_tree.constants};let ze=$.value.data.key.trim();/^\$\{\w+\}$/.test(ze)||(ze=`\${${ze}}`,$.value.data.key=ze),xe[ze]=$.value.data,$.value.type==="edit"&&$.value.oldKey!==$.value.data.key&&delete xe[$.value.oldKey],k.value=!1,ue(xe)}},pe=(_e,xe)=>{y("outputChange",_e,xe)},ae=()=>{},ue=_e=>{y("change",_e)},de=()=>{y("close"),y("update:show",!1),k.value=!1};return(_e,xe)=>{const ze=vue.resolveComponent("bk-button"),Ve=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock(Ve,{title:"全局变量","is-show":r.show,width:800,"esc-close":!1,"before-close":de},vue.createSlots({header:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$E,[vue.createElementVNode("span",{class:vue.normalizeClass([k.value?"main-title-text":""]),onClick:xe[0]||(xe[0]=qe=>k.value=!1)},"全局变量",2),k.value?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$p,[xe[3]||(xe[3]=vue.createElementVNode("span",null,">",-1)),vue.createElementVNode("span",_hoisted_3$e,vue.toDisplayString(n[$.value.type]),1)])):vue.createCommentVNode("",!0)])]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_4$e,[k.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(GlobalVariableTable,{key:0,constants:r.flowData.pipeline_tree.constants,"system-variables":r.systemVariables,outputs:r.flowData.pipeline_tree.outputs,"variables-reference":g.value,"custom-variable-types":V.value,editable:r.editable,onCreate:z,onEdit:j,onClone:le,onDelete:ae,onUpdateConstants:ue,onOutputChange:pe},null,8,["constants","system-variables","outputs","variables-reference","custom-variable-types","editable"])),k.value?(vue.openBlock(),vue.createBlock(GlobalVariableEdit,{key:1,ref_key:"variableEditRef",ref:L,editable:r.editable&&$.value.type!=="view",variable:$.value.data,"variables-reference":g.value,"custom-variable-types":V.value,onChange:Ce},null,8,["editable","variable","variables-reference","custom-variable-types"])):vue.createCommentVNode("",!0)])]),_:2},[k.value?{name:"footer",fn:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$a,[r.editable&&$.value.type!=="view"&&$.value.data.source_type!=="system"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(ze,{theme:"primary",onClick:he},{default:vue.withCtx(()=>[...xe[4]||(xe[4]=[vue.createTextVNode("确定",-1)])]),_:1}),vue.createVNode(ze,{onClick:xe[1]||(xe[1]=qe=>k.value=!1)},{default:vue.withCtx(()=>[...xe[5]||(xe[5]=[vue.createTextVNode("取消",-1)])]),_:1})],64)):(vue.openBlock(),vue.createBlock(ze,{key:1,theme:"primary",onClick:xe[2]||(xe[2]=qe=>k.value=!1)},{default:vue.withCtx(()=>[...xe[6]||(xe[6]=[vue.createTextVNode("返回",-1)])]),_:1}))])]),key:"0"}:void 0]),1032,["is-show"])}}}),GlobalVariables=_export_sfc$1(_sfc_main$H,[["__scopeId","data-v-7400bcc9"]]),_hoisted_1$D={key:0,class:"desc"},_hoisted_2$o={class:"section-content"},_sfc_main$G=vue.defineComponent({__name:"index",props:{title:{},desc:{}},setup(e){const t=e,n=vue.ref(!1),r=()=>{n.value=!n.value},i=$=>{const V=$;V.style.height="0",V.offsetHeight,V.style.height=`${$.scrollHeight}px`},y=$=>{const V=$;V.style.height=""},g=$=>{const V=$;V.style.height=`${V.scrollHeight}px`,V.offsetHeight,V.style.height="0"},k=$=>{const V=$;V.style.height=""};return($,V)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["section-container",{fold:n.value}])},[vue.createElementVNode("div",{class:"section-title",onClick:r},[vue.createVNode(vue.unref(icon.AngleUpFill),{class:"arrow-icon"}),vue.createTextVNode(" "+vue.toDisplayString(t.title)+" ",1),t.desc?(vue.openBlock(),vue.createElementBlock("span",_hoisted_1$D,vue.toDisplayString(t.desc),1)):vue.createCommentVNode("",!0)]),vue.createVNode(vue.Transition,{name:"fold",css:!0,onEnter:i,onAfterEnter:y,onLeave:g,onAfterLeave:k},{default:vue.withCtx(()=>[vue.withDirectives(vue.createElementVNode("div",_hoisted_2$o,[vue.renderSlot($.$slots,"default",{},void 0,!0)],512),[[vue.vShow,!n.value]])]),_:3})],2))}}),SectionContainer=_export_sfc$1(_sfc_main$G,[["__scopeId","data-v-c8f4294f"]]),WeixinIcon="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='48px'%20height='48px'%20viewBox='0%200%2048%2048'%20enable-background='new%200%200%2048%2048'%20xml:space='preserve'%3e%3cimage%20id='image0'%20width='48'%20height='48'%20x='0'%20y='0'%20href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAACBjSFJN%20AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAG%20yUlEQVRo3u2Zf2yVVxnHP897bymMArdjFV00zgGbLmFuiRkIjs0y3R9uWcyIzDmTVcqaOLUm8mMb%20WdAExF/ZIALK1oFCoSyLxmVGwqIIGkZNlmFrBTp+DDfnipEVNgrt7X2fr3+8t7e3t/f29uemSb/J%20Se59z/M+53zPec7z47wwjnGM4/8aNtwXa06tHrB/68x1/3sEciZtQAKYmvXMgXeAC+8VmaIEHjrx%20WPRDYDGbCHwSuBmYCXwY+GCWrm7gLHAGOAkcAVoUKuwZ6anZ33/vCCx79VEkEcSCacDngCXATcBH%20gNIiui8CbwAvA78EGj30DjPj6evWjz2BZa2PQowAZ76ZfQe4Aygb5jjngH2SthBwmBB/+vrRIZGX%20QPWxR7DArgDuB1ZizB6V0cQJ4EfAbrku1X3iB6NPoProKghsokENsAYoH5XJ96Id+J5gK67Ouht+%20OCJl8X6MjLjEg4LvEnmZ3MHPAFOAjwGxAnpD4DXgXeCanEUoJ9KdNKOO6OAPG0H2n6rmlbjzGbmW%20IyWQyGptSGuQFiN9FWkvkufIkH62Ny2zOP1OW45MQq5vuzO3qnnliHagD4Eg4EqkpUgz5SKn/Umu%20HcBpoFGurXJ15JHrkOvnQCNwWq6dcv05Vw5pFlJ1EHDlqBCoalqBxE0Sd/dfVJBISYRhtxN251v4%20TJNEchBygcQXJG6oaloxbALZZ6BErs9iNi2vpFQJVAEvAFfJVQNMxixXrgz4JpH9vynXPcCtkb9Q%20rtbpwC2e8sM1p1aHPQ+HErkzo1c1rZgG/BqoHEC+nehwlhFF4mKH+HxarhxIEqUYbRivGtaGcQ6j%20JV4aP2iBdWIk6aKTkjSRWcWJ9BL46/IKoJne1GC00A0cscAag5LY60E8KDOzG4GrMSqAacDbRFG7%20FXEYaDKzVndPwsDpR4bAg0eWfwBoASpGPGWlTcWsCeM38YnxVBAL5gC3m1kFBQKoEIgQOAH8FngO%20eEWuFEC+6J05A3KJKJscDYTA3ljcdsYmxhcBX5RUEXFTsXdjwMfT7W7gZxjbPfR38gn3ulEplcdf%20D6c5UkOsNPZMrDT+MKIaUYFgGO16xFrEOjObUX3skcIEJLokmuUa/txdyDkUlMQaglhQK2mhpCBP%20rBh8k8rkqkGsAsqWtqzKb0JInRIHgfuRCnmXYjhrAZuCeHCXXAtz+oTRbNgeYIpQFeJDWf0dGA2G%20HRW6A3EnvV6uBKgGjprZNrJMPTsSO9J+pMYRmM/z8dJ4iFiCCHLMoQNnbZgKf+yhr8XZntP/Is7j%20YTLciLMGcSKnfwriIUmzv9bcG/gyBHbc8iQSZyTqJS6kzWHwTZyT+CPGnXIl+puDu9zPmwiRknJ/%20N6e/Q+6XzHC5X5R7d44pIfeb5X5b9rxzs1EhNSBuBJaB+mWrBSFOx0pjb8n1qZyd7cFkoggNIgHc%20lxOZeyL9y4jFwLV9+pWZ7+eB3UQVX18C9Z/ewAMv1V4QWgfMAO6hcLTtZ/9BPDCkQvVDDLgLuD1N%20MLe6uxpYD3SlyZYU0DOHqJy92MeEMiTmb8SwNxHLEfWIDknF3J3k+lf6KFiRBG6qRFmB/kkSCYmS%20AXSUS72Lmm+rqV+wEeA1Scvl2obTXczdITrTv21EbrN483TQzdhUfpOWkPgPUgfFr18MmIWUZIQV%201iBwMnuMoJDU7lt/ikJdJWeBnLgcEMcRmxB1iD8gTiHOpz3RhFRn+G+J18d0B8Q+iY6iO7Dk918H%20aR5wLfAPsJ2CX0n8HSgxYzpRPj8ZmAS8nUqm/hmU2CHEQgZ/+AcP4w2kFy0IMjswkJuMIaYTuazt%204CexoDtdv3QDl4hS4F79ZuDUA18Crhvl6XcitgCv7Jj7RObhQARM0vPALgssBQYSeyo3DzjKAy/V%20ngKeAH6C0q5y2FfI9Ph/x3gB+IUF1ueMDUQgRVRRFZ107nsSu5CuAb4FXNG/khwyhX1gj5vRtnPe%20hr6rPCLVBfCVQ7XgKhOsIrogG26R1An8DnjMYkHrrvkb+gkEQ9U4GOxasBGMi0jrkWqRDiB1DdXj%20IL2F9KQZrXj+Wmv0PUUaf9v2F+ZUze1OJGi5fJkDwHGkONGtXg96ripC4DLpm4z0wk5COGK/p/xY%20w22b8o4zJiaUjS8fjPI3urqMCRPKkGYouqL/aLpBdNtxnCjfPytpAbAUmAfUIVbvqdycN0COOYEM%20kQPf6B3UDDOjtDT6xJBMJnH3TL1sZnjoCeBeoFzSM88u2tL+vhIYKu7b/zDt7e0kEompwOVnF23J%20uwNjcohHA3sqN5NIJCD65jbW+dU4xjGO9wv/BfVAV6WfUfulAAAAJXRFWHRkYXRlOmNyZWF0ZQAy%20MDI0LTEwLTE2VDA5OjM5OjAzKzAyOjAwmO75JgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyNC0xMC0x%20NlQwOTozOTowMyswMjowMOmzQZoAAAAASUVORK5CYII='%20/%3e%3c/svg%3e",RtxIcon="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='48px'%20height='48px'%20viewBox='0%200%2048%2048'%20enable-background='new%200%200%2048%2048'%20xml:space='preserve'%3e%3cimage%20id='image0'%20width='48'%20height='48'%20x='0'%20y='0'%20href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAACBjSFJN%20AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAG%20XklEQVRo3u3Za4xVVxUH8N+ducPADMggUCullJaSipRaAV/F1GKoreKHprZa0ajRItH6ikkj1pQq%20qRofMbY+GiB9aB8qGGqJr7a0aInNqGDBkaZpSbEPaGGGDjq8Zi53jh/WmblnLsPceZImspKdOXfv%20c/Ze/7X22mv993BKTsn/t+SGPMPK1srvrJjwKgNwvNI55FFd1l9AcSTBDAxAT8VPw1mYkrbXpS0r%20z6ftWbyI3egcTiCVAfRUuhpvw7sxH29Jla8kLdiOv+IP+Dvau0eHAKa/APK4AJ/C5Tj7BN8maavq%20Y8Zd2Ijb0IRjQwHRN4BQfiKWYpnYMtlvDuFl7MN+sU06MAZT0SC22lTUlgHdhR/jbrQML4DStnkD%20voIlGJVZfDc24c/YgZ0pgKRspomYiQtxMRZhcmb8INbiRuwZjCfyfYydh+/hfUpb4r/4BX6GJ/Gf%20Hl+UL76ydX8KrBG/wjxci8UYm7aPi9i6oRvEkDwQ1j8Dq/DejPL/xDfxWxw+odInkpJXG3AVlmNG%202lfEPbgezQPxQs9gi0XG4gt4TzqeYDOuE+4+3K34QNxdevcA7sBnsCXtq8Y1whs1g/fAytYcrsRP%20RfARx9+12DJsSajkjUvxExEn8G98GI39Xav8uJuCT2eU34ebMpYaHikp9wi+ji5E04Wn6/o7VQlA%20WGUuLkp7EqzDo2WLDieITtyP9ZmRi/HWftVYenqgFpeIGCBKgF+ibcSKsZj3CO5Fc9o7BW/XzzIn%20C2AM3pk+J+LUGb5937dsx2Ppcx7n4zUDBdCAc9LnAh7H0RFXPQzUiqcyvacPBsAUpcTWgadOkvUJ%20j78gDEdUteMGCqBGad8V8crJ0t6KCST5vZL8Y5LqRqV6qqKcqJSoFltqxGXOxvjbsueGnaPrmlYV%20i+OP7tn1nepjHafvHiiA51PkhDdmWNk6onQwI3MnTfnRNzAbHQ2TH7gzn7fxH/34MLuFWsU+JI7U%20uY6niCMho0Wmf7/gGeclnZYXOszp8k5/ARzF37JWwaz+JpTBSjG8Pb2su0GUF1WVvs++0I4/isQC%2054q6KD9SIJItLB6lvS7X65F9GcZU8kIWQCI466b09yhRHV5kmCXZEg3jvlvnE78epwZfFmXLi+lr%20i7Gw0lzl1Sh8FLeiK3ofEqXvsxh0UCc9y8Ec5uCT+BhWzzlgeS4Y3JtFPHxIHCzLmhpbtuksC8dU%20j6peOh/AfbrIdpS8K3GmoV+ETRPl8i3pGtcJgn/LvxYh2NtGQXaWoTpJRr3LkfoZqWHn68mtew2S%20Nnw7tXyXta7BGpw9mHhIrT9XVLdrUsVnCwr5A7wETYuiiXjYkMu59OknGveoPbpBMMTf40sypKcv%20Uj8vtdSCzMhnsVr5bVtPDx5/c3ewQfLB3G2Ca2SNdju+iEO5+T0/mf1QnR2P75+sqn01yRWZoecw%2034oJLfRN6remk9+NWWlfg6jhq1GfGuBYarFiL94ZhTFVY1sLojjLKn9ITmOyy6Gqq45ffEfjbqqO%20ziwzIJE3ug3fO4AVE7qs2CTufWaJLL1NnNlXiGOuNh3fLpLg3nSGKlFRvhELOlWtV+MeBQvxepDY%20muz1p+KDFJZSs+Y4LfIi/iaV9W9WOuorXmxNFYxpvuCrawXZWGBgWfqRc+ue+9wzCy+cJ3GJKm3J%20TtuLD5slyvbfSbdlvkhu+gEk5wumNlPEyrbUoPeiqWu75issPEGJn04WtxWj098H00VHi6Dq7UAo%20igR5wc7D05fk1iY3J1fn7jdNR/H7TlNvCT4i7qDuQ3NbvQ7V4ycpHvia4Oa34+d4RnD0HvFXCcBE%20JYpZn/5twV/SSVvwJkGEztGTjDeLgHsaT5C8oF0BHZox2ktYIa5Ybhbn/qP1R2y9uu2utnV1V9bS%20+VXcld0y5XmoEoAWUeRNSy3+cGqpjeJ+hxIVrCyvPaDrtCks7c78d+Bb4tSb15nTvuqVz687o/jy%20TT8cf/2TOtuKvSneJZVioEZkxQ/gwbTt62vCgUphqempEc7MdB/OJy7PnVXY7Ma+77kqeaCA36SK%20D/w6sX+yX/DhLID8sZx8JeWpVK6GoonBXif2T45gg9iiXbJJ3HhXlEoeOBmM7JhIls14h7jxXq9U%20lfYpQ/8v5TBIYWn3Y63I9AV6TW6vTgBlIPRX+VNySk4J/wPavNXBV0/3hwAAACV0RVh0ZGF0ZTpj%20cmVhdGUAMjAyNC0xMC0xNlQwNzozODowMyswMDowMCfDViMAAAAldEVYdGRhdGU6bW9kaWZ5ADIw%20MjQtMTAtMTZUMDc6Mzg6MDMrMDA6MDBWnu6fAAAAAElFTkSuQmCC'%20/%3e%3c/svg%3e",MailIcon="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='48px'%20height='48px'%20viewBox='0%200%2048%2048'%20enable-background='new%200%200%2048%2048'%20xml:space='preserve'%3e%3cimage%20id='image0'%20width='48'%20height='48'%20x='0'%20y='0'%20href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAACBjSFJN%20AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABdFBMVEUAAAD80if2uSH1uCDO%20GQD//2L1tiD2uyH0sh/4wCPxpRz3wCL//3r1tSD3viLwohv80if80if80if80if80if80if80if8%200if80if80if80if80if80if80if//zj80if80if80ifwohvwoRv80if80ifwohvwohvwohv80if8%200if80ifwohvwohvwohvwohvwoBv80if80if80ifwohvwohvwohvwohv+2Cn80if80if80ifwohvw%20ohvwohvwoRv80if80if80ifwohvwohv91Sj80if80if80ifwohvwohvvnxr80if80if80ifwohvw%20ohvwohv91Sj80if80ifwohvwohvwohvqixX80if80if80ifwohvwohvwohv80yf80if80ifwohvw%20ohvwohvslBf//zr80if80ifwohvwohvwoRv80ifwohvwohvwohvwohvwohvwohvwohvwohvwohvw%20ohvwohvwohv80ifwohv///9tjhRAAAAAeXRSTlMAAAAAAAAAAAAAAAAAAAAABBIWT9bpTWzzZBRj%202P4BM6j1IBNw23CkKD6z+YH+0F8OF3zhf++XJANJvPv9xVMHH4btjiIGTMP8vkwGKJDu5YMbC17U%20+rtBAiue8N94GAxp1/eyNwIBOKfbbBQL9ag01GP2gNbpBBIWNnChdAAAAAFiS0dEe0/StfwAAAAH%20dElNRQfoChAHJgNz8rhqAAABhElEQVRIx+3R6TNCURzG8UTaEdlKlvZQKu0iQnRbRCXtaFW0W/r9%209ZbhSF05Xpjxou/Lc57PnLlzKZRBf9UQZghM8CYx4k2gB6b40xjxZxCYnWtjNDePgEC4IPppLloQ%208hCgLi4tr/TfrywvLQ6jjxZLqAKprN9eJhVQJWIE5ArlCE21uvbdfG1VRRtRKuQIrKs1G9pRnX6T%20fL+p141qNzTqdQQMAEaTmW6x2rZ651s2q4VuNhkBDJ0A7Ns7DsbunrN779zbZTh2tu3QDV4e2T9g%20HrqOjjvnx0euQ+bBvvFt0A3A7iY8LK/P/7n3+7wsD+G2AzkAOAmcss+Cofe/KAoFz9ingZOPWxIA%204fPIBScai7/u47Eo5yJyHoZ+ACCRTNHTl1ft9tVlmp5KJjquyAFcZ7K5fKFYLORz2cw1/AwAbkpl%207u0tt1y6+Xr+LYC7SnVsrFq5A1wAUKvXaz2H/QA0GvA7QNYA/DfQxANNBIjWPUYtAoGHxyeMHh8Q%20GMeMMuivegZPNwJ6UuK61QAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyNC0xMC0xNlQwNzozODowMysw%20MDowMCfDViMAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjQtMTAtMTZUMDc6Mzg6MDMrMDA6MDBWnu6f%20AAAAAElFTkSuQmCC'%20/%3e%3c/svg%3e",SmsIcon="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='48px'%20height='48px'%20viewBox='0%200%2048%2048'%20enable-background='new%200%200%2048%2048'%20xml:space='preserve'%3e%3cimage%20id='image0'%20width='48'%20height='48'%20x='0'%20y='0'%20href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAACBjSFJN%20AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABF1BMVEUAAAAhqvchqvchqvch%20qvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvch%20qvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvch%20qvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvch%20qvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvch%20qvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvchqvf////t18AcAAAAW3RSTlMAAA84XHh/%20CjSAwNzxCEKl6vsjiOYCQANM19giwQv5jA3n6UMJDOs5+obDEs+dn948hf7Gee9aFdn2m5L9Ne7l%20MxShFuI/Ab0d1boyHKDkkwYvfLz4tXUuMFNoR3rSMgAAAAFiS0dEXOrYAJcAAAAHdElNRQfoChAL%20JgN66EEOAAABqklEQVRIx9WVaVuCQBCAXbxYFBXxQoWKjLQ0UyvTssvu+7BS5///j7JHEFhksU/1%20fmTm3WVhdsbn+wcgC16yGX8gGPomGPAzNAehMIu5SBR+iEY4zIbdDMTH4gkBTAiJeIxHc5dPiikg%20SIlJ501QOsMJ4IDAZdIOBsrmJJiDlMsicv35+ROD2ANl8uBCPmMTUKEIrhQLFgPJouIuKEvLZgPF%20VoCCumoWSnFaPkB8zbQBm6AL2vpsC4TLdEGozASGo+cDbGwagj8yfVatbRHUqtNgfdsQAtN6hkZJ%20Jig1psFowBCCTS9CM2gIGLy8EmBDCHk5M0Dl9wL2JmDy0FBucUULXMv4p80d8rOClmRsJDU9trtH%20/jhQ28hGW9Vj+6xDaXS6Bza6HT3GMU7F1zy0YRxPwKZq7R3Rv9HxiekGnap04axkunF9unB+cbmQ%20oIgyWki4ura0Gaog+a2NjCYQrZIi3BDN2FVQbu+IVtx36Ut1fE8OFPlB1TmytCjl8an37DRN5L7O%20y+ubpA0myQNNev/45B3nlaWg+eFoPBm749GQ9zKqfYvM9T/BF26JhjZ0x+78AAAAJXRFWHRkYXRl%20OmNyZWF0ZQAyMDI0LTEwLTE2VDA5OjM4OjAzKzAyOjAwdyySGAAAACV0RVh0ZGF0ZTptb2RpZnkA%20MjAyNC0xMC0xNlQwOTozODowMyswMjowMAZxKqQAAAAASUVORK5CYII='%20/%3e%3c/svg%3e",VoiceIcon="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20version='1.1'%20id='Layer_1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20x='0px'%20y='0px'%20width='48px'%20height='48px'%20viewBox='0%200%2048%2048'%20enable-background='new%200%200%2048%2048'%20xml:space='preserve'%3e%3cimage%20id='image0'%20width='48'%20height='48'%20x='0'%20y='0'%20href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAACBjSFJN%20AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABzlBMVEUAAAAzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMz%20zAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAMzzAP///8ahhZ5AAAA%20mHRSTlMAAA84XHh/DDmNwtzxCkOl6/0rkOgDSMYIYN4E59/+9Pcp82k9ZqHXDfyfe140heny0ps3%20QLLlr6z61uxnnvvOTAYBzDtUivDROjza+bh+EsRYg4TgfdMqKM+nJpww1NkuIsiAQeEvc+ZTAhOa%20tUmB9WPj7iBx+AWHTcuwGg5s9tBhMz6iGzViB1Lbox9Qs1umRM12kld67xKguDoAAAABYktHRJkB%201jaoAAAAB3RJTUUH6AoQCycDY/NwTwAAArVJREFUSMfVlflbEkEYxxkOWQ5hAbkRgUQgTQyxQswC%20aS0js7Iyiy5Syw4tyuzU7ssOO+fPbXd2dphdlpLf6n0enmfnZT7zvvPOd97RaP4DAzLbymytTm9o%20482g12n/xgBgZExmixUis1rMJsb4BwKAdpuddUDKHKzd1t4MAcDp6oAN1uFyqhPA7fE6oIo5vB63%20CgF8/gBsYgG/r4EAQX8INrWQP6gkgKdTNiXcZY1Qw06PAgBRr3zN2LbueE8iTMbeqIwASVdKDkS2%209/Y5d/RbpHHKlaQJYEs3Jj6wMzOYHZIWSttowGgXvbt278Glyg3nhdRHontHMWE3UgEYFvn27S8U%20s2Poky0d4BIQjrdFhzDAMvUQwIQCHzwkaG3isPBdPjLJMJkItI5k8T5SpjpwdArt85ggAVCMi/Uc%20TR+PnojA6cGTZZEwawkwgRI/dRotAWbO4CRGZ89moONc5bw4tOgIoEd6vnBRzO/SZalO5aouAROV%20Hqx2PQEM6IBiV1CEYHycVHZungsP9OEcwway56r494IbhbtaP4rcwrU87O3GF6oq7XqRw8d/XfDc%20oA/vZmkYcrcwsCQBYEl0LN8WPNk7FJBjc7CrhiXFLSpSglN3eaJwL9ZE5CQlvGkIVybvAw0wri6r%20zq9vGpeVt9CDIh/Q2K9KUGXVERU/nOdPGyRXhaxW5tgwDVAHpzWTsI8eC8STp4G19WfPX3A1CqCk%20gcUnmOPlK0FQ7tdvKkUA3r57T+bT4pPkjfwfNoQYqEfyv4/kGGl5kwuEiE/82uSfwqzkpy+Q4oqu%20f6431OAX7JRfUUUTqLlmpJw2p3FceRNQtpnU128bPp4Ibo7hyiraTGMjK1u+/2BKPyVdNTQytVYZ%20zv+SPlVaZcvNuPV23/qD0vqTpWn5UdS0/uxKzNYf9n/BfgOj3RPg/kA9xAAAACV0RVh0ZGF0ZTpj%20cmVhdGUAMjAyNC0xMC0xNlQwOTozOTowMyswMjowMJju+SYAAAAldEVYdGRhdGU6bW9kaWZ5ADIw%20MjQtMTAtMTZUMDk6Mzk6MDMrMDI6MDDps0GaAAAAAElFTkSuQmCC'%20/%3e%3c/svg%3e",_hoisted_1$C={class:"notify-type-wrapper"},_hoisted_2$n={key:1},_sfc_main$F=vue.defineComponent({__name:"notify-config-forms",props:{config:{},editable:{type:Boolean,default:!0},fetchUserApi:{default:""}},emits:["change"],setup(e,{emit:t}){const n=[{label:"任务状态"},{label:"微信",type:"weixin",icon:WeixinIcon},{label:"企业微信",type:"rtx",icon:RtxIcon},{label:"邮件",type:"mail",icon:MailIcon},{label:"短信",type:"sms",icon:SmsIcon},{label:"语音",type:"voice",icon:VoiceIcon}],r=e,i=t,y=[[],[]],g=vue.ref([]),k=vue.ref([]),$=vue.ref([]);vue.watch(()=>r.config,()=>{const{notify_type:oe,notify_receivers:z}=r.config;g.value=[...oe.success],k.value=[...oe.fail],$.value=z.more_receiver?z.more_receiver.split(","):[]},{immediate:!0});const V=oe=>{const z=n[oe];return z.type?vue.createVNode("div",{class:"notify-table-header"},[vue.createVNode("img",{class:"notify-icon",src:z.icon},null),vue.createVNode("p",{class:"label-text"},[z.label])]):vue.createVNode("p",{class:"label-text"},[z.label])},L=(oe,z)=>oe===0?g.value.includes(z):k.value.includes(z),re=(oe,z,j)=>{const le=oe===0?g.value:k.value;if(j)le.includes(z)||le.push(z);else{const Ce=le.findIndex(he=>he===z);Ce>-1&&le.splice(Ce,1)}ie()},ie=()=>{i("change",{notify_type:{success:g.value,fail:k.value},notify_receivers:{more_receiver:$.value.join(","),receiver_group:[]}})};return(oe,z)=>{const j=vue.resolveComponent("bk-switcher"),le=vue.resolveComponent("bk-table-column"),Ce=vue.resolveComponent("bk-table"),he=vue.resolveComponent("bk-form-item");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$C,[vue.createVNode(he,{label:"通知方式"},{default:vue.withCtx(()=>[vue.createVNode(Ce,{class:"notify-type-table",data:y,border:["outer"]},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(n,pe=>vue.createVNode(le,{key:pe.type,label:V},{default:vue.withCtx(({index:ae})=>[pe.type?(vue.openBlock(),vue.createBlock(j,{key:0,size:"small",theme:"primary",disabled:!r.editable,value:L(ae,pe.type),onChange:ue=>re(ae,pe.type,ue)},null,8,["disabled","value","onChange"])):(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$n,vue.toDisplayString(ae===0?"成功":"失败"),1))]),_:2},1024)),64))]),_:1})]),_:1}),vue.createVNode(he,{label:"通知人"},{default:vue.withCtx(()=>[vue.createVNode(_sfc_main$V,{modelValue:$.value,"onUpdate:modelValue":z[0]||(z[0]=pe=>$.value=pe),class:"receivers-selector",placeholder:"请选择通知人","fetch-user-api":r.fetchUserApi,disabled:!r.editable,onChange:ie},null,8,["modelValue","fetch-user-api","disabled"])]),_:1})])}}}),NotifyConfigForms=_export_sfc$1(_sfc_main$F,[["__scopeId","data-v-9ca32fa9"]]),_hoisted_1$B={class:"template-settings"},_sfc_main$E=vue.defineComponent({__name:"index",props:{settings:{},editable:{type:Boolean,default:!0},fetchUserApi:{default:""}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(lodash.cloneDeep(r.settings)),g=vue.ref(),k={name:[{required:!0,message:"请输入流程名称"}]};vue.watch(()=>r.settings,re=>{y.value=lodash.cloneDeep(re)});const $=re=>{y.value.notify_config=re,L()},V=()=>g.value.validate().then(()=>!0).catch(()=>!1),L=()=>{i("change",y.value)};return t({validate:V}),(re,ie)=>{const oe=vue.resolveComponent("bk-input"),z=vue.resolveComponent("bk-form-item"),j=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$B,[vue.createVNode(j,{ref_key:"formRef",ref:g,"label-width":140,model:y.value,rules:k},{default:vue.withCtx(()=>[vue.createVNode(SectionContainer,{title:"基础"},{default:vue.withCtx(()=>[vue.createVNode(z,{label:"流程名称",property:"name",required:!0},{default:vue.withCtx(()=>[vue.createVNode(oe,{modelValue:y.value.name,"onUpdate:modelValue":ie[0]||(ie[0]=le=>y.value.name=le),"show-word-limit":"",maxlength:50,disabled:!r.editable,onChange:L},null,8,["modelValue","disabled"])]),_:1})]),_:1}),vue.createVNode(SectionContainer,{title:"通知",desc:"选择通知方式后,将默认通知到任务执行人"},{default:vue.withCtx(()=>[vue.createVNode(NotifyConfigForms,{config:y.value.notify_config,editable:r.editable,"fetch-user-api":r.fetchUserApi,onChange:$},null,8,["config","editable","fetch-user-api"])]),_:1}),vue.createVNode(SectionContainer,{title:"其他"},{default:vue.withCtx(()=>[vue.createVNode(z,{label:"备注"},{default:vue.withCtx(()=>[vue.createVNode(oe,{modelValue:y.value.desc,"onUpdate:modelValue":ie[1]||(ie[1]=le=>y.value.desc=le),type:"textarea",placeholder:"请输入流程模板备注信息",rows:5,resize:!1,disabled:!r.editable,onChange:L},null,8,["modelValue","disabled"])]),_:1})]),_:1})]),_:1},8,["model"])])}}}),Settings=_export_sfc$1(_sfc_main$E,[["__scopeId","data-v-7141b698"]]),_hoisted_1$A={class:"basic-setting-slider"},_hoisted_2$m={class:"sideslider-footer-buttons"},_sfc_main$D=vue.defineComponent({__name:"index",props:{editable:{type:Boolean,default:!0},show:{type:Boolean},settings:{},fetchUserApi:{default:""}},emits:["change","close","update:show"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref(lodash.cloneDeep(n.settings)),y=vue.ref();vue.watch(()=>n.settings,V=>{i.value=lodash.cloneDeep(V)});const g=V=>{i.value=V},k=async()=>{await y.value?.validate()&&(r("change",i.value),$())},$=()=>{r("close"),r("update:show",!1)};return(V,L)=>{const re=vue.resolveComponent("bk-button"),ie=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock(ie,{title:"基础信息","is-show":n.show,width:800,"quick-close":!n.editable,"esc-close":!1,"before-close":$},{footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$m,[n.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(re,{theme:"primary",onClick:k},{default:vue.withCtx(()=>[...L[0]||(L[0]=[vue.createTextVNode("确定",-1)])]),_:1}),vue.createVNode(re,{onClick:$},{default:vue.withCtx(()=>[...L[1]||(L[1]=[vue.createTextVNode("取消",-1)])]),_:1})],64)):(vue.openBlock(),vue.createBlock(re,{key:1,theme:"primary",onClick:$},{default:vue.withCtx(()=>[...L[2]||(L[2]=[vue.createTextVNode("关闭",-1)])]),_:1}))])]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$A,[vue.createVNode(Settings,{ref_key:"templateSettingsRef",ref:y,settings:i.value,editable:n.editable,"fetch-user-api":n.fetchUserApi,onChange:g},null,8,["settings","editable","fetch-user-api"])])]),_:1},8,["is-show","quick-close"])}}}),BasicSetting=_export_sfc$1(_sfc_main$D,[["__scopeId","data-v-e2a7edd9"]]),_hoisted_1$z={class:"pipeline-tree-code"},_sfc_main$C=vue.defineComponent({__name:"pipeline-tree-code",props:{pipelineTree:{}},setup(e){const t=e,n=vue.computed(()=>JSON.stringify(t.pipelineTree,null,4)),r=vue.ref({readOnly:!0,language:"json"});return(i,y)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$z,[vue.createVNode(CodeEditor,{modelValue:n.value,"onUpdate:modelValue":y[0]||(y[0]=g=>n.value=g),options:r.value},null,8,["modelValue","options"])]))}}),PipelineTreeCode=_export_sfc$1(_sfc_main$C,[["__scopeId","data-v-3b34a5ab"]]),_hoisted_1$y={class:"pipeline-tree-code-slider"},_hoisted_2$l={class:"sideslider-footer-buttons"},_sfc_main$B=vue.defineComponent({__name:"index",props:{show:{type:Boolean},pipelineTree:{},editable:{type:Boolean,default:!0}},emits:["close","update:show"],setup(e,{emit:t}){const n=e,r=t,i=()=>{r("close"),r("update:show",!1)};return(y,g)=>{const k=vue.resolveComponent("bk-button"),$=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock($,{title:"Code","is-show":n.show,width:800,"esc-close":!1,"before-close":i},{footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$l,[vue.createVNode(k,{theme:"primary",onClick:i},{default:vue.withCtx(()=>[...g[0]||(g[0]=[vue.createTextVNode("关闭",-1)])]),_:1})])]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$y,[n.show?(vue.openBlock(),vue.createBlock(PipelineTreeCode,{key:0,"pipeline-tree":n.pipelineTree},null,8,["pipeline-tree"])):vue.createCommentVNode("",!0)])]),_:1},8,["is-show"])}}}),CanvasPipelineTree=_export_sfc$1(_sfc_main$B,[["__scopeId","data-v-8fcc9638"]]),_hoisted_1$x={class:"flow-info-sliders"},_hoisted_2$k={class:"icons"},_sfc_main$A=vue.defineComponent({__name:"index",props:{flowData:{},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0},fetchUserApi:{default:""}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e;useFlowApiConfig();const i=n,y=vue.ref(!1),g=vue.ref(!1),k=vue.ref({show:!1,settings:{name:"",desc:"",notify_config:{notify_type:{success:[],fail:[]},notify_receivers:{more_receiver:"",receiver_group:[]}}}}),$=vue.ref(!1),V=()=>{const{name:oe,desc:z,notify_config:j}=r.flowData,{notify_type:le={success:[],fail:[]},notify_receivers:Ce={more_receiver:"",receiver_group:[]}}=j;k.value={show:!0,settings:{name:oe,desc:z,notify_config:{notify_type:le,notify_receivers:Ce}}}},L=oe=>{k.value.settings=oe,i("change",{...r.flowData,...oe})},re=oe=>{const z={...r.flowData.pipeline_tree,constants:oe};i("change",{...r.flowData,pipeline_tree:z})},ie=(oe,z)=>{const j=[...r.flowData.pipeline_tree.outputs],le=j.indexOf(oe);z?le===-1&&j.push(oe):le>-1&&j.splice(le,1);const Ce={...r.flowData.pipeline_tree,outputs:j};i("change",{...r.flowData,pipeline_tree:Ce})};return t({openBasicSetting:V}),(oe,z)=>{const j=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$x,[vue.createElementVNode("span",_hoisted_2$k,[vue.withDirectives(vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-caozuojilu",onClick:z[0]||(z[0]=le=>y.value=!0)},null,512),[[j,"操作记录"]]),vue.withDirectives(vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-quanjubianliang",onClick:z[1]||(z[1]=le=>g.value=!0)},null,512),[[j,"全局变量"]]),vue.withDirectives(vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-jichuxinxi",onClick:V},null,512),[[j,"基础信息"]]),vue.withDirectives(vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-code",onClick:z[2]||(z[2]=le=>$.value=!0)},null,512),[[j,"Code"]])]),vue.createVNode(OperateRecords,{show:y.value,"onUpdate:show":z[3]||(z[3]=le=>y.value=le),"flow-id":r.flowData.id},null,8,["show","flow-id"]),vue.createVNode(GlobalVariables,{show:g.value,"onUpdate:show":z[4]||(z[4]=le=>g.value=le),"flow-data":r.flowData,"system-variables":r.systemVariables,editable:r.editable,onOutputChange:ie,onChange:re},null,8,["show","flow-data","system-variables","editable"]),vue.createVNode(BasicSetting,{show:k.value.show,"onUpdate:show":z[5]||(z[5]=le=>k.value.show=le),settings:k.value.settings,editable:r.editable,"fetch-user-api":r.fetchUserApi,onChange:L},null,8,["show","settings","editable","fetch-user-api"]),vue.createVNode(CanvasPipelineTree,{show:$.value,"onUpdate:show":z[6]||(z[6]=le=>$.value=le),"pipeline-tree":r.flowData.pipeline_tree,editable:r.editable},null,8,["show","pipeline-tree","editable"])])}}}),FlowInfoSliders=_export_sfc$1(_sfc_main$A,[["__scopeId","data-v-9fa7ae93"]]),_hoisted_1$w={class:"expression-guidance"},_sfc_main$z=vue.defineComponent({__name:"expression-guidance",props:{parseLang:{default:"boolrule"}},setup(e){const t=e;return(n,r)=>{const i=vue.resolveComponent("bk-link");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$w,[t.parseLang==="MAKO"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[r[0]||(r[0]=vue.createStaticVNode('<p data-v-dd71ced7>makoOperates</p><p data-v-dd71ced7>支持 &quot;and、or、not、True、False&quot; 等 MAKO 关键字语法</p><br data-v-dd71ced7><p data-v-dd71ced7>支持直接引用全局变量</p><p data-v-dd71ced7>使用内置函数、datetime、re、hashlib、random、time、os.path模块处理全局变量</p><br data-v-dd71ced7><p data-v-dd71ced7>示例:</p><p data-v-dd71ced7>假设 key 是值为 &quot;3&quot; 的全局变量</p><p data-v-dd71ced7>字符串比较:<code class="code" data-v-dd71ced7>key == &quot;3&quot;</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>int(key) &gt;= 3</code></p><p data-v-dd71ced7>包含:<code class="code" data-v-dd71ced7>int(key) in (1,2,3)</code></p>',11))],64)):t.parseLang==="FEEL"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[r[1]||(r[1]=vue.createStaticVNode('<p data-v-dd71ced7>feelOperates</p><p data-v-dd71ced7>支持 &quot;and、or、true、false&quot; 等关键字语法</p><p data-v-dd71ced7>支持 FEEL (Friendly Enough Expression Language) 基础语法</p><br data-v-dd71ced7><p data-v-dd71ced7>支持使用全局变量,如<code class="code" data-v-dd71ced7>${key}</code>、<code class="code" data-v-dd71ced7>${int(key)}</code></p><p data-v-dd71ced7>${}中支持使用内置函数、datetime、re、hashlib、random、time、os.path模块处理全局变量</p><br data-v-dd71ced7><p data-v-dd71ced7>示例:</p><p data-v-dd71ced7>字符串比较:<code class="code" data-v-dd71ced7>&quot;${key}&quot; = &quot;my string&quot;</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>${int(key)} &gt;= 3</code></p><p data-v-dd71ced7>包含:<code class="code" data-v-dd71ced7>list contains([1, 2, 3], ${int(key)})</code></p>',11))],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:2},[r[4]||(r[4]=vue.createElementVNode("p",null,"makoOperates",-1)),r[5]||(r[5]=vue.createElementVNode("p",null,'支持 "and、or、True/true、False/false" 等关键字语法',-1)),vue.createElementVNode("p",null,[r[3]||(r[3]=vue.createTextVNode(" 表达式更多细节请参考 ",-1)),vue.createVNode(i,{theme:"primary",href:"https://boolrule.readthedocs.io/en/latest/expressions.html#basic-comparison-operators",target:"_blank"},{default:vue.withCtx(()=>[...r[2]||(r[2]=[vue.createTextVNode(" 'boolrule' ",-1)])]),_:1})]),r[6]||(r[6]=vue.createStaticVNode('<br data-v-dd71ced7><p data-v-dd71ced7>支持使用全局变量,如<code class="code" data-v-dd71ced7>${key}</code>、<code class="code" data-v-dd71ced7>${int(key)}</code></p><p data-v-dd71ced7>支持使用内置函数、datetime、re、hashlib、random、time、os.path模块处理全局变量</p><br data-v-dd71ced7><p data-v-dd71ced7>示例:</p><p data-v-dd71ced7>字符串比较:<code class="code" data-v-dd71ced7>&quot;${key}&quot; == &quot;my string&quot;</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>${int(key)} &gt;= 3</code></p><p data-v-dd71ced7>包含:<code class="code" data-v-dd71ced7>${key} in (1,2,3)</code></p>',8))],64))])}}}),ExpressionGuidance=_export_sfc$1(_sfc_main$z,[["__scopeId","data-v-dd71ced7"]]),_hoisted_1$v={class:"bkflow-branch-condition"},_hoisted_2$j={class:"expression-value-editor"},_sfc_main$y=vue.defineComponent({__name:"index",props:{condition:{},isDefault:{type:Boolean},hasDefaultBranch:{type:Boolean,default:!0},editable:{type:Boolean,default:!0}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref({...r.condition}),g=vue.shallowRef(r.isDefault),k=vue.ref(),$={name:[{required:!0,message:"请输入分支名称"}],evaluate:[{required:!0,message:"请输入表达式"}]};vue.watch(()=>r.condition,ie=>{y.value={...ie}}),vue.watch(()=>r.isDefault,ie=>{g.value=ie});const V=()=>{"evaluate"in y.value||(y.value.evaluate="")},L=()=>{i("change",{...y.value},g.value)};return t({validate:()=>k.value.validate().then(()=>!0).catch(()=>!1)}),(ie,oe)=>{const z=vue.resolveComponent("bk-input"),j=vue.resolveComponent("bk-form-item"),le=vue.resolveComponent("bk-radio"),Ce=vue.resolveComponent("bk-radio-group"),he=vue.resolveComponent("bk-form"),pe=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$v,[vue.createVNode(he,{ref_key:"formRef",ref:k,"form-type":"vertical",model:y.value,rules:$},{default:vue.withCtx(()=>[vue.createVNode(j,{label:"分支名称",property:"name",required:!0},{default:vue.withCtx(()=>[vue.createVNode(z,{modelValue:y.value.name,"onUpdate:modelValue":oe[0]||(oe[0]=ae=>y.value.name=ae),disabled:!r.editable,onChange:L},null,8,["modelValue","disabled"])]),_:1}),vue.createVNode(j,{label:"分支类型",required:!0},{default:vue.withCtx(()=>[vue.createVNode(Ce,{modelValue:g.value,"onUpdate:modelValue":oe[1]||(oe[1]=ae=>g.value=ae),onChange:V},{default:vue.withCtx(()=>[vue.createVNode(le,{label:!1,disabled:!r.editable},{default:vue.withCtx(()=>[...oe[3]||(oe[3]=[vue.createTextVNode("自定义分支",-1)])]),_:1},8,["disabled"]),vue.createVNode(le,{label:!0,disabled:!r.editable||r.hasDefaultBranch&&!r.isDefault},{default:vue.withCtx(()=>[oe[4]||(oe[4]=vue.createTextVNode(" 默认分支 ",-1)),vue.withDirectives(vue.createVNode(vue.unref(icon.Info),{class:"radio-tips"},null,512),[[pe,{content:"所有分支均不匹配时执行,类似switch-case-default里面的default",width:216,placement:"top"}]])]),_:1},8,["disabled"])]),_:1},8,["modelValue"])]),_:1}),g.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(j,{key:0,label:"表达式",property:"evaluate",required:!0},{default:vue.withCtx(()=>[vue.createVNode(ExpressionGuidance),vue.createElementVNode("div",_hoisted_2$j,[vue.createVNode(CodeEditor,{modelValue:y.value.evaluate,"onUpdate:modelValue":oe[2]||(oe[2]=ae=>y.value.evaluate=ae),options:{readOnly:!r.editable},onChange:L},null,8,["modelValue","options"])])]),_:1}))]),_:1},8,["model"])])}}}),BranchCondition=_export_sfc$1(_sfc_main$y,[["__scopeId","data-v-83ccbcd3"]]),_hoisted_1$u={class:"branch-condition-slider"},_hoisted_2$i={class:"sideslider-footer-buttons"},_sfc_main$x=vue.defineComponent({__name:"index",props:{show:{type:Boolean},condition:{},hasDefaultBranch:{type:Boolean,default:!0},isDefault:{type:Boolean},editable:{type:Boolean,default:!0}},emits:["close","update:show","confirm"],setup(e,{emit:t}){const n=e,r=t,i=vue.shallowRef({...n.condition}),y=vue.shallowRef(n.isDefault),g=vue.shallowRef();vue.watch(()=>n.show,L=>{L&&(i.value={...n.condition},y.value=n.isDefault)});const k=(L,re)=>{i.value=L,y.value=re},$=async()=>{await g.value?.validate()&&(r("confirm",i.value,y.value),V())},V=()=>{r("close"),r("update:show",!1)};return(L,re)=>{const ie=vue.resolveComponent("bk-button"),oe=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock(oe,{title:"分支条件","is-show":n.show,width:800,"esc-close":!1,"before-close":V},{footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$i,[n.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(ie,{theme:"primary",onClick:$},{default:vue.withCtx(()=>[...re[0]||(re[0]=[vue.createTextVNode("确定",-1)])]),_:1}),vue.createVNode(ie,{onClick:V},{default:vue.withCtx(()=>[...re[1]||(re[1]=[vue.createTextVNode("取消",-1)])]),_:1})],64)):(vue.openBlock(),vue.createBlock(ie,{key:1,theme:"primary",onClick:V},{default:vue.withCtx(()=>[...re[2]||(re[2]=[vue.createTextVNode("关闭",-1)])]),_:1}))])]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$u,[vue.createVNode(BranchCondition,{ref_key:"branchConditionRef",ref:g,condition:i.value,"has-default-branch":n.hasDefaultBranch,"is-default":y.value,editable:n.editable,onChange:k},null,8,["condition","has-default-branch","is-default","editable"])])]),_:1},8,["is-show"])}}}),BranchConditionPanel=_export_sfc$1(_sfc_main$x,[["__scopeId","data-v-c257ae64"]]),_hoisted_1$t={class:"node-config-basic-info"},_hoisted_2$h={class:"plugin-select"},_hoisted_3$d={class:"error-handler-options"},_hoisted_4$d={class:"auto-retry-forms"},_hoisted_5$9={class:"timeout-config-forms"},_hoisted_6$5={class:"timeout-input"},_sfc_main$w=vue.defineComponent({__name:"basic-info",props:{node:{},editable:{type:Boolean,default:!0},pluginType:{},pluginDetail:{}},emits:["change","selectPlugin"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref(lodash.cloneDeep(r.node)),k={},$=vue.computed(()=>r.pluginDetail?.name||r.node.component.code),V=vue.computed(()=>r.pluginType==="remote_plugin"?r.node.component.data?.plugin_version?.value||"":r.node.component.version||""),L=vue.computed(()=>r.pluginDetail?.versions??[]),re=vue.computed(()=>r.node.component.data?.uniform_api_plugin_method?.value||""),ie=vue.computed(()=>r.pluginDetail?.methods??[]),oe=vue.computed(()=>{const{component:pe,name:ae}=g.value,{code:ue="",version:de="",data:_e={}}=pe;let xe=ue==="uniform_api"&&_e.uniform_api_plugin_method?.value||"";return{name:ae,code:ue,version:de,method:xe}});vue.watch(()=>r.node,pe=>{g.value=lodash.cloneDeep(pe)});const z=pe=>{g.value.component.data?.uniform_api_plugin_method&&(g.value.component.data.uniform_api_plugin_method.value=pe,he())},j=(pe,ae)=>{ae==="auto_retry"?(g.value.retryable=!0,g.value.auto_retry.interval=0,g.value.auto_retry.times=1):(ae==="retryable"&&(g.value.auto_retry={enable:!1,interval:0,times:1}),ae==="error_ignorable"&&pe&&(g.value.skippable=!0,g.value.retryable=!1,g.value.auto_retry={enable:!1,interval:0,times:1})),pe&&["auto_retry","error_ignorable"].includes(ae)&&(g.value.timeout_config={enable:!1,seconds:10,action:"forced_fail"})},le=pe=>{pe||(g.value.timeout_config.seconds=10,g.value.timeout_config.action="forced_fail"),he()},Ce=()=>y.value.validate().then(()=>!0).catch(()=>!1),he=()=>{i("change",g.value)};return t({validate:Ce}),(pe,ae)=>{const ue=vue.resolveComponent("bk-input"),de=vue.resolveComponent("bk-button"),_e=vue.resolveComponent("bk-form-item"),xe=vue.resolveComponent("bk-option"),ze=vue.resolveComponent("bk-select"),Ve=vue.resolveComponent("bk-checkbox"),qe=vue.resolveComponent("bk-switcher"),At=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$t,[vue.createVNode(At,{ref_key:"formRef",ref:y,model:oe.value,rules:k,"label-width":94},{default:vue.withCtx(()=>[vue.createVNode(_e,{label:r.pluginType==="uniform_api"?"API":"标准插件",required:"",property:"code"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$h,[r.pluginType==="uniform_api"?(vue.openBlock(),vue.createBlock(ue,{key:0,"model-value":r.node.component.api_meta?.alias,readonly:!0},null,8,["model-value"])):(vue.openBlock(),vue.createBlock(ue,{key:1,"model-value":$.value,readonly:!0},null,8,["model-value"])),vue.createVNode(de,{outline:"",theme:"primary",disabled:!r.editable,onClick:ae[0]||(ae[0]=Fe=>i("selectPlugin"))},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(r.node.component.code?"重选":"选择"),1)]),_:1},8,["disabled"])])]),_:1},8,["label"]),r.pluginType==="uniform_api"?(vue.openBlock(),vue.createBlock(_e,{key:0,label:"请求方法",required:"",property:"method"},{default:vue.withCtx(()=>[vue.createVNode(ze,{"model-value":re.value,clearable:!1,disabled:!r.editable,onChange:z},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(ie.value,Fe=>(vue.openBlock(),vue.createBlock(xe,{key:Fe,id:Fe,label:Fe},null,8,["id","label"]))),128))]),_:1},8,["model-value","disabled"])]),_:1})):(vue.openBlock(),vue.createBlock(_e,{key:1,label:"插件版本",required:"",property:"version"},{default:vue.withCtx(()=>[vue.createVNode(ze,{"model-value":V.value,clearable:!1,disabled:!r.editable,onChange:he},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,Fe=>(vue.openBlock(),vue.createBlock(xe,{key:Fe,id:Fe,label:Fe},null,8,["id","label"]))),128))]),_:1},8,["model-value","disabled"])]),_:1})),vue.createVNode(_e,{label:"节点名称",required:"",property:"name"},{default:vue.withCtx(()=>[vue.createVNode(ue,{modelValue:g.value.name,"onUpdate:modelValue":ae[1]||(ae[1]=Fe=>g.value.name=Fe),disabled:!r.editable,onBlur:he},null,8,["modelValue","disabled"])]),_:1}),vue.createVNode(_e,{label:"失败处理"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$d,[vue.createVNode(Ve,{modelValue:g.value.error_ignorable,"onUpdate:modelValue":ae[2]||(ae[2]=Fe=>g.value.error_ignorable=Fe),disabled:!r.editable||g.value.auto_retry.enable||g.value.timeout_config.enable,onChange:ae[3]||(ae[3]=Fe=>j(Fe,"error_ignorable"))},{default:vue.withCtx(()=>[...ae[15]||(ae[15]=[vue.createElementVNode("span",{class:"option-flag"},"AS",-1),vue.createTextVNode("自动跳过 ",-1)])]),_:1},8,["modelValue","disabled"]),vue.createVNode(Ve,{modelValue:g.value.skippable,"onUpdate:modelValue":ae[4]||(ae[4]=Fe=>g.value.skippable=Fe),disabled:!r.editable||g.value.error_ignorable,onChange:ae[5]||(ae[5]=Fe=>j(Fe,"skippable"))},{default:vue.withCtx(()=>[...ae[16]||(ae[16]=[vue.createElementVNode("span",{class:"option-flag"},"MS",-1),vue.createTextVNode("手动跳过 ",-1)])]),_:1},8,["modelValue","disabled"]),vue.createVNode(Ve,{modelValue:g.value.retryable,"onUpdate:modelValue":ae[6]||(ae[6]=Fe=>g.value.retryable=Fe),disabled:!r.editable||g.value.error_ignorable||g.value.auto_retry.enable,onChange:ae[7]||(ae[7]=Fe=>j(Fe,"retryable"))},{default:vue.withCtx(()=>[...ae[17]||(ae[17]=[vue.createElementVNode("span",{class:"option-flag"},"MR",-1),vue.createTextVNode("手动重试 ",-1)])]),_:1},8,["modelValue","disabled"]),vue.createVNode(Ve,{modelValue:g.value.auto_retry.enable,"onUpdate:modelValue":ae[8]||(ae[8]=Fe=>g.value.auto_retry.enable=Fe),disabled:!r.editable||g.value.error_ignorable||g.value.timeout_config.enable,onChange:ae[9]||(ae[9]=Fe=>j(Fe,"auto_retry"))},{default:vue.withCtx(()=>[...ae[18]||(ae[18]=[vue.createElementVNode("span",{class:"option-flag"},"AR",-1)])]),_:1},8,["modelValue","disabled"]),vue.createElementVNode("span",_hoisted_4$d,[ae[19]||(ae[19]=vue.createTextVNode(" 在 ",-1)),vue.createVNode(ue,{modelValue:g.value.auto_retry.interval,"onUpdate:modelValue":ae[10]||(ae[10]=Fe=>g.value.auto_retry.interval=Fe),type:"number",placeholder:" ",min:0,precision:0,disabled:!r.editable||!g.value.auto_retry.enable,onBlur:he},null,8,["modelValue","disabled"]),ae[20]||(ae[20]=vue.createTextVNode(" 秒后,自动重试 ",-1)),vue.createVNode(ue,{modelValue:g.value.auto_retry.times,"onUpdate:modelValue":ae[11]||(ae[11]=Fe=>g.value.auto_retry.times=Fe),type:"number",placeholder:" ",min:0,precision:0,disabled:!r.editable||!g.value.auto_retry.enable,onBlur:he},null,8,["modelValue","disabled"]),ae[21]||(ae[21]=vue.createTextVNode(" 次 ",-1))])])]),_:1}),vue.createVNode(_e,{label:"超时控制"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$9,[vue.createVNode(qe,{modelValue:g.value.timeout_config.enable,"onUpdate:modelValue":ae[12]||(ae[12]=Fe=>g.value.timeout_config.enable=Fe),theme:"primary",size:"small",disabled:!r.editable,onChange:le},null,8,["modelValue","disabled"]),g.value.timeout_config.enable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[ae[23]||(ae[23]=vue.createTextVNode(" 超时 ",-1)),vue.createElementVNode("span",_hoisted_6$5,[vue.createVNode(ue,{modelValue:g.value.timeout_config.seconds,"onUpdate:modelValue":ae[13]||(ae[13]=Fe=>g.value.timeout_config.seconds=Fe),type:"number",precision:0,min:0,disabled:!r.editable,onBlur:he},null,8,["modelValue","disabled"]),ae[22]||(ae[22]=vue.createElementVNode("span",{class:"unit"},"秒",-1))]),ae[24]||(ae[24]=vue.createTextVNode(" 后,则 ",-1)),vue.createVNode(ze,{modelValue:g.value.timeout_config.action,"onUpdate:modelValue":ae[14]||(ae[14]=Fe=>g.value.timeout_config.action=Fe),clearable:!1,disabled:!r.editable,onChange:he},{default:vue.withCtx(()=>[vue.createVNode(xe,{id:"forced_fail",label:"强制终止"}),vue.createVNode(xe,{id:"forced_fail_and_skip",label:"强制终止后跳过"})]),_:1},8,["modelValue","disabled"])],64)):vue.createCommentVNode("",!0)])]),_:1})]),_:1},8,["model"])])}}}),BasicInfo=_export_sfc$1(_sfc_main$w,[["__scopeId","data-v-695e5765"]]),_sfc_main$v=vue.defineComponent({__name:"index",props:{formData:{default:()=>({})},schema:{default:()=>({})},editable:{type:Boolean,default:!0},formType:{default:"horizontal"}},emits:["change"],setup(e,{expose:t,emit:n}){const r=createForm(),i=e,y=n,g=vue.ref(),k=L=>{Object.keys(L).forEach(re=>{const ie=L[re]["ui:component"];ie?"props"in ie?ie.props.disabled=!0:ie.props={disabled:!0}:L[re]["ui:component"]={props:{disabled:!0}},L[re].items?.properties&&k(L[re].items.properties)})},$=vue.computed(()=>{const L=lodash.cloneDeep(i.schema);if(!i.editable&&L){const re=L.properties||L.items?.properties||{};k(re)}return L});return t({validate:()=>g.value?.validateForm()}),(L,re)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["jsonschema-input-params",{"edit-mode":i.editable}])},[vue.createVNode(vue.unref(r),{ref_key:"bkSchemaFormRef",ref:g,"model-value":e.formData,"form-type":e.formType,schema:$.value,layout:{group:[],container:{gap:"14px"}},onChange:re[0]||(re[0]=ie=>y("change",ie))},null,8,["model-value","form-type","schema"])],2))}}),JsonschemaForm=_export_sfc$1(_sfc_main$v,[["__scopeId","data-v-91454267"]]),_hoisted_1$s=["onMousedown"],_hoisted_2$g={class:"dropdown-item-content"},_hoisted_3$c={class:"option-key"},_hoisted_4$c={class:"option-name"},_hoisted_5$8={key:0,class:"dropdown-item empty"},_sfc_main$u=vue.defineComponent({__name:"index",props:{modelValue:{default:""},options:{default:()=>[]},type:{default:"text"},placeholder:{default:""},disabled:{type:Boolean,default:!1},rows:{default:3},resize:{type:Boolean,default:!1}},emits:["update:modelValue","change","blur"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref(),y=vue.ref(),g=vue.ref(),k=vue.ref(n.modelValue),$=vue.ref(!1),V=vue.ref(0),L=vue.ref({top:0,left:0}),re=vue.ref(""),ie=vue.computed(()=>({top:`${L.value.top}px`,left:`${L.value.left}px`})),oe=vue.computed(()=>{if(!re.value)return n.options;const Ve=re.value.toLowerCase();return n.options.filter(qe=>qe.key.toLowerCase().includes(Ve))}),z=Ve=>Ve.key,j=()=>{const Ve=y.value?.$el?.querySelector("input, textarea");if(!Ve)return;const qe=Ve.tagName==="TEXTAREA";if(!i.value?.getBoundingClientRect())return;let Fe=0,Ie=0;if(qe){const Ue=Ve,$e=Ue.value.substring(0,Ue.selectionStart).split(`
64
- `),Ne=$e.length-1,Oe=parseInt(getComputedStyle(Ue).lineHeight)||20,kt=document.createElement("canvas").getContext("2d");kt?(kt.font=getComputedStyle(Ue).font,Ie=kt.measureText($e[Ne]||"").width):Ie=($e[Ne]||"").length*8,Fe=Ne*Oe+Oe}else{const Ue=Ve,Dt=Ue.value.substring(0,Ue.selectionStart||0),$e=document.createElement("canvas").getContext("2d");$e?($e.font=getComputedStyle(Ue).font,Ie=$e.measureText(Dt).width):Ie=Dt.length*8,Fe=Ue.offsetHeight}L.value={top:Fe+(qe?8:0),left:Ie+(qe?8:0)}},le=()=>{if(!g.value||!i.value)return;const Ve=g.value.getBoundingClientRect(),qe=i.value.getBoundingClientRect(),At=y.value?.$el?.querySelector("input, textarea");if(!At)return;const Fe=window.innerWidth,Ie=Ve.width,Ue=At.offsetWidth;let Dt=L.value.left;const $e=Ue;if(Dt+Ie>$e&&(Dt=$e-Ie,Dt<0&&(Dt=0)),qe.left+Dt+Ie>Fe){const Lt=Fe-Ie-qe.left;Lt>=0?Dt=Lt:Dt=0}qe.left+Dt<0&&(Dt=0),L.value={...L.value,left:Dt}},Ce=()=>{const Ve=y.value?.$el?.querySelector("input, textarea");if(!Ve)return;const qe=Ve.selectionStart||0,At=k.value.substring(0,qe),Fe=At.lastIndexOf("$");if(Fe===-1){$.value=!1;return}const Ie=At.substring(Fe+1);if(Ie.includes("}")){$.value=!1;return}let Ue=Ie;Ue.startsWith("{")&&(Ue=Ue.substring(1)),re.value=Ue,j(),$.value=!0,V.value=0,setTimeout(()=>{le()},0)},he=()=>{r("update:modelValue",k.value),r("change",k.value),vue.nextTick(()=>{Ce()})},pe=()=>{vue.nextTick(()=>{Ce()})},ae=Ve=>{setTimeout(()=>{const qe=Ve.relatedTarget;g.value?.contains(qe)||($.value=!1)},200),r("blur",Ve)},ue=Ve=>{const qe=y.value?.$el?.querySelector("input, textarea");if(!qe)return;const At=qe.selectionStart||0,Fe=k.value,Ie=Fe.substring(0,At),Ue=Fe.substring(At),Dt=Ie.lastIndexOf("$");if(Dt===-1)return;let $e=z(Ve);$e.startsWith("${")&&$e.endsWith("}")&&($e=$e.slice(2,-1));const Ne=Fe.substring(0,Dt)+`\${${$e}}`+Ue;k.value=Ne,r("update:modelValue",Ne),r("change",Ne),$.value=!1,vue.nextTick(()=>{const Oe=Dt+$e.length+3;qe.focus(),qe.setSelectionRange(Oe,Oe)})},de=()=>{vue.nextTick(()=>{const Ve=y.value?.$el?.querySelector("input, textarea");Ve&&(Ve.removeEventListener("keydown",_e),Ve.addEventListener("keydown",_e,!0))})},_e=Ve=>{if(Ve instanceof KeyboardEvent){if($.value&&oe.value.length>0&&(Ve.key==="ArrowDown"||Ve.key==="ArrowUp"||Ve.key==="Enter")){switch(Ve.preventDefault(),Ve.stopPropagation(),Ve.stopImmediatePropagation(),Ve.key){case"ArrowDown":V.value=(V.value+1)%oe.value.length,xe();break;case"ArrowUp":V.value=V.value<=0?oe.value.length-1:V.value-1,xe();break;case"Enter":V.value>=0&&ue(oe.value[V.value]);break}return!1}if(Ve.key==="Escape"&&$.value)return Ve.preventDefault(),Ve.stopPropagation(),Ve.stopImmediatePropagation(),$.value=!1,!1}},xe=()=>{vue.nextTick(()=>{if(!g.value)return;const qe=g.value.querySelectorAll(".dropdown-item:not(.empty)")[V.value];if(qe){const At=g.value,Fe=qe.offsetTop,Ie=qe.offsetHeight,Ue=At.scrollTop,Dt=At.clientHeight;Fe<Ue?At.scrollTop=Fe:Fe+Ie>Ue+Dt&&(At.scrollTop=Fe+Ie-Dt)}})};vue.watch(()=>n.modelValue,Ve=>{Ve!==k.value&&(k.value=Ve)}),vue.watch(()=>$.value,()=>{de()});const ze=Ve=>{i.value&&!i.value.contains(Ve.target)&&g.value&&!g.value.contains(Ve.target)&&($.value=!1)};return vue.onMounted(()=>{document.addEventListener("click",ze),de()}),vue.onBeforeUnmount(()=>{document.removeEventListener("click",ze);const Ve=y.value?.$el?.querySelector("input, textarea");Ve&&Ve.removeEventListener("keydown",_e,!0)}),(Ve,qe)=>{const At=vue.resolveComponent("bk-input");return vue.openBlock(),vue.createElementBlock("div",{ref_key:"containerRef",ref:i,class:"variable-input-wrapper"},[vue.createVNode(At,{ref_key:"inputRef",ref:y,modelValue:k.value,"onUpdate:modelValue":qe[0]||(qe[0]=Fe=>k.value=Fe),type:e.type,placeholder:e.placeholder,disabled:e.disabled,rows:e.rows,resize:e.resize,onInput:he,onFocus:pe,onBlur:ae},null,8,["modelValue","type","placeholder","disabled","rows","resize"]),$.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:g,class:"variable-dropdown",style:vue.normalizeStyle(ie.value)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(oe.value,(Fe,Ie)=>(vue.openBlock(),vue.createElementBlock("div",{key:Fe.key,class:vue.normalizeClass(["dropdown-item",{active:Ie===V.value}]),onMousedown:vue.withModifiers(Ue=>ue(Fe),["prevent"])},[vue.createElementVNode("div",_hoisted_2$g,[vue.createElementVNode("span",_hoisted_3$c,vue.toDisplayString(Fe.key),1),vue.createElementVNode("span",_hoisted_4$c,vue.toDisplayString(Fe.name),1)])],42,_hoisted_1$s))),128)),oe.value.length===0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$8,"无匹配项")):vue.createCommentVNode("",!0)],4)):vue.createCommentVNode("",!0)],512)}}}),VariableInput=_export_sfc$1(_sfc_main$u,[["__scopeId","data-v-ccd4bdfb"]]),_hoisted_1$r={class:"input-field-form"},_sfc_main$t=vue.defineComponent({__name:"input",props:{modelValue:{default:""},config:{},disabled:{type:Boolean,default:!1},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref(n.modelValue),y=vue.computed(()=>{const{type:k,form_type:$=""}=n.config;return $==="textarea"?"textarea":["int","integer","number"].includes(k)?"number":"text"});vue.watch(()=>n.modelValue,k=>{i.value=k});const g=()=>{r("update:modelValue",i.value),r("change",i.value)};return(k,$)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$r,[vue.createVNode(VariableInput,{modelValue:i.value,"onUpdate:modelValue":$[0]||($[0]=V=>i.value=V),type:y.value,rows:5,min:0,precision:0,disabled:n.disabled,options:n.fullVariableList,onBlur:g},null,8,["modelValue","type","disabled","options"])]))}}),InputField=_export_sfc$1(_sfc_main$t,[["__scopeId","data-v-b6b3c278"]]),_sfc_main$s=vue.defineComponent({__name:"switcher",props:{modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=vue.ref(n.modelValue);vue.watch(()=>n.modelValue,g=>{r.value=g});const i=t,y=g=>{i("update:modelValue",g),i("change",g)};return(g,k)=>{const $=vue.resolveComponent("bk-switcher");return vue.openBlock(),vue.createBlock($,{"model-value":e.modelValue,theme:"primary",size:"small",disabled:e.disabled,onChange:y},null,8,["model-value","disabled"])}}}),_hoisted_1$q={class:"code-editor"},_sfc_main$r=vue.defineComponent({__name:"code",props:{modelValue:{default:""},language:{default:"json"},theme:{default:"vs-dark"},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change","blur","save"],setup(e,{emit:t}){setupMonacoEnvironment();const n={language:"json",theme:"vs-dark",automaticLayout:!0,minimap:{enabled:!1},wordWrap:"on",wrappingIndent:"same"},r=e,i=t,y=vue.ref(),g=vue.shallowRef();vue.watch(()=>r.modelValue,V=>{const L=g.value?.getValue();V!==L&&g.value?.setValue(V)}),vue.watch(()=>r.disabled,V=>{g.value&&g.value.updateOptions({...n,readOnly:V})}),vue.onMounted(()=>{k()}),vue.onBeforeUnmount(()=>{g.value&&g.value.dispose()});const k=()=>{g.value=monaco__namespace.editor.create(y.value,{...n,readOnly:r.disabled,value:r.modelValue,language:r.language});const V=g.value.getModel();V&&(V.setEOL(0),V.onDidChangeContent(()=>{const L=g.value?.getValue();$(L)})),g.value.onDidBlurEditorText(()=>{i("blur")})},$=V=>{i("update:modelValue",V),i("change",V)};return(V,L)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$q,[vue.createElementVNode("div",{ref_key:"monacoContainerRef",ref:y,class:"editor-instance-container"},null,512)]))}}),CodeField=_export_sfc$1(_sfc_main$r,[["__scopeId","data-v-8534e38a"]]),_hoisted_1$p={class:"bkflow-plugin-uniform-api-form"},_sfc_main$q=vue.defineComponent({__name:"index",props:{inputData:{default:()=>({})},inputs:{default:()=>[]},editable:{type:Boolean,default:!0},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref({}),k=vue.ref({});vue.watch(()=>r.inputData,()=>{Object.keys(r.inputData).forEach(ie=>{g.value[ie]=r.inputData[ie].value})},{immediate:!0}),vue.watch(()=>r.inputs,()=>{r.inputs.forEach(ie=>{ie.required?k.value[ie.key]=[{required:!0,message:"必填项",trigger:"blur"}]:(ie.type==="json"||ie.form_type==="json")&&(k.value[ie.key]=[{validator:oe=>{if(oe.trim().length===0)return!0;try{return JSON.parse(oe),!0}catch{return!1}},message:"请输入正确的 JSON 格式数据",trigger:"blur"}])})},{immediate:!0});const $=ie=>{const{type:oe,form_type:z=""}=ie;if(z){if(["textarea","input"].includes(z))return InputField;if(["json"].includes(z))return CodeField}else{if(["string","int","integer","number"].includes(oe))return InputField;if(["boolean","bool"].includes(oe))return _sfc_main$s;if(["json","dict"].includes(oe))return CodeField}return vue.h("div","暂不支持该类型")},V=(ie,oe)=>{g.value[ie]=oe,re()},L=async()=>y.value.validate().then(()=>!0).catch(()=>!1),re=()=>{const ie={...r.inputData};Object.keys(g.value).forEach(oe=>{ie[oe]={value:g.value[oe],hook:!1,need_render:!0}}),i("change",ie)};return t({validate:L}),(ie,oe)=>{const z=vue.resolveComponent("bk-form-item"),j=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$p,[vue.createVNode(j,{ref_key:"formRef",ref:y,rules:k.value,model:g.value,"label-width":94},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.inputs,le=>(vue.openBlock(),vue.createBlock(z,{key:le.key,label:le.name,required:le.required,desc:le.desc,property:le.key},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent($(le)),{"model-value":g.value[le.key],disabled:!r.editable,config:le,"full-variable-list":r.fullVariableList,onChange:Ce=>V(le.key,Ce)},null,40,["model-value","disabled","config","full-variable-list","onChange"]))]),_:2},1032,["label","required","desc","property"]))),128))]),_:1},8,["rules","model"])])}}}),BkFlowPluginUniformApiForm=_export_sfc$1(_sfc_main$q,[["__scopeId","data-v-cb961ebd"]]),_hoisted_1$o={class:"plugin-agent"},_sfc_main$p=vue.defineComponent({__name:"index",props:{inputData:{},pluginDetail:{},editable:{type:Boolean},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref({input:""});vue.watch(()=>r.inputData,()=>{"value"in r.inputData.input&&(g.value.input=r.inputData.input.value)},{immediate:!0});const k={input:[{required:!0,message:"请输入提问内容",trigger:"blur"}]},$=async()=>y.value.validate().then(()=>!0).catch(()=>!1),V=()=>{const L={...r.inputData};L.input={value:g.value.input,hook:!1,need_render:!0},i("change",L)};return t({validate:$}),(L,re)=>{const ie=vue.resolveComponent("bk-form-item"),oe=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$o,[vue.createVNode(oe,{ref_key:"formRef",ref:y,rules:k,model:g.value,"label-width":94},{default:vue.withCtx(()=>[vue.createVNode(ie,{label:"用户提问",required:"",property:"input"},{default:vue.withCtx(()=>[vue.createVNode(VariableInput,{modelValue:g.value.input,"onUpdate:modelValue":re[0]||(re[0]=z=>g.value.input=z),options:r.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!r.editable,onBlur:V},null,8,["modelValue","options","disabled"])]),_:1})]),_:1},8,["model"])])}}}),AgentForm=_export_sfc$1(_sfc_main$p,[["__scopeId","data-v-7e23a26b"]]),_sfc_main$o={},_hoisted_1$n={class:"plugin-model"};function _sfc_render(e,t){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$n,"小模型节点")}const AiopsForm=_export_sfc$1(_sfc_main$o,[["render",_sfc_render]]),_sfc_main$n=vue.defineComponent({__name:"role-type-selector",props:{modelValue:{},index:{},disabled:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=[{code:"assistant",name:"AI",description:"这条 Prompt 作为AI回答的结果"},{code:"system",name:"系统",description:"这条 Prompt 作为系统输入来定义角色,会在整个会话中生效"},{code:"user",name:"用户",description:"这条 Prompt 作为用户的输入,可以更详细描述对角色的要求"},{code:"pause",name:"等待回答",description:"这条Prompt作为AI的提问,会等待用户输入回答内容"}],r=e,i=t,y=vue.computed(()=>n.find(V=>V.code===r.modelValue)?.name),g=()=>n.filter($=>$.code==="system"?r.index===0:!0),k=$=>{i("update:modelValue",$)};return($,V)=>{const L=vue.resolveComponent("bk-option"),re=vue.resolveComponent("bk-select"),ie=vue.resolveDirective("bk-tooltips");return vue.withDirectives((vue.openBlock(),vue.createBlock(re,{filterable:"","disable-scroll-to-selected-option":"","popover-min-width":300,"input-search":!1,"model-value":e.modelValue,disabled:e.index===0||r.disabled,"popover-options":{placement:"bottom-end",zIndex:9999},onChange:k},{trigger:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass({"role-type":!0,disabled:e.index===0})},[vue.createTextVNode(vue.toDisplayString(y.value)+" ",1),V[0]||(V[0]=vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-angle-up"},null,-1))],2)]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(g(),oe=>vue.withDirectives((vue.openBlock(),vue.createBlock(L,{id:oe.code,key:oe.code,name:oe.name},null,8,["id","name"])),[[ie,{content:oe.description,theme:"light",placement:"right",boundary:"parent"}]])),128))]),_:1},8,["model-value","disabled"])),[[ie,{content:"角色第一条 Prompt 必须定义为“系统”",disabled:r.index>0}]])}}}),RoleTypeSelector=_export_sfc$1(_sfc_main$n,[["__scopeId","data-v-cc8e9eb1"]]),_hoisted_1$m={class:"bkflow-canvas-icon bkflow-canvas-daoru import-trigger"},_hoisted_2$f={class:"prompt-content-tips"},_sfc_main$m=vue.defineComponent({__name:"prompt-import",props:{prompts:{},disabled:{type:Boolean}},emits:["import"],setup(e,{emit:t}){const n=e,r=t,i=y=>{const g=n.prompts.find(k=>k.prompt_id===y);g&&r("import",g.content)};return(y,g)=>{const k=vue.resolveComponent("bk-option"),$=vue.resolveComponent("bk-popover"),V=vue.resolveComponent("bk-select"),L=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createBlock(V,{filterable:"","disable-scroll-to-selected-option":"","popover-min-width":300,"input-search":!1,disabled:n.disabled,"popover-options":{placement:"bottom-end",zIndex:9999},onChange:i},{trigger:vue.withCtx(()=>[vue.renderSlot(y.$slots,"default",{},()=>[vue.withDirectives(vue.createElementVNode("i",_hoisted_1$m,null,512),[[L,{content:"导入"}]])],!0)]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.prompts,re=>(vue.openBlock(),vue.createBlock($,{theme:"light",placement:"right","ext-cls":"import-prompt-tips-popover",disabled:!re.content,key:re.prompt_id,"popover-delay":0},{content:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_2$f,vue.toDisplayString(re.content),1)]),default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(k,{id:re.prompt_id,key:re.prompt_id,name:re.prompt_name},null,8,["id","name"]))]),_:2},1032,["disabled"]))),128))]),_:3},8,["disabled"])}}}),PromptImport=_export_sfc$1(_sfc_main$m,[["__scopeId","data-v-5a2f0446"]]),_hoisted_1$l={class:"prompt-add"},_sfc_main$l=vue.defineComponent({__name:"prompt-add",props:{prompts:{},disabled:{type:Boolean}},emits:["add"],setup(e,{emit:t}){const n=e,r=t,i=()=>{r("add","")},y=g=>{r("add",g)};return(g,k)=>{const $=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createVNode($,{text:"",theme:"primary",size:"small",disabled:n.disabled,onClick:i},{default:vue.withCtx(()=>[...k[0]||(k[0]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-plus-circle"},null,-1),vue.createTextVNode(" 添加 ",-1)])]),_:1},8,["disabled"]),k[2]||(k[2]=vue.createElementVNode("span",{class:"prompt-gap"},null,-1)),vue.createVNode(PromptImport,{prompts:n.prompts,disabled:n.disabled,onImport:y},{default:vue.withCtx(()=>[vue.createVNode($,{text:"",theme:"primary",size:"small"},{default:vue.withCtx(()=>[...k[1]||(k[1]=[vue.createTextVNode("从Prompt导入 ",-1)])]),_:1})]),_:1},8,["prompts","disabled"])])}}}),PromptAdd=_export_sfc$1(_sfc_main$l,[["__scopeId","data-v-ec71bacf"]]),_hoisted_1$k={class:"plugin-llm-form"},_hoisted_2$e={class:"prompt-actions"},_sfc_main$k=vue.defineComponent({__name:"llm-form",props:{inputData:{},pluginId:{},pluginDetail:{},editable:{type:Boolean},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=useFlowApiConfig(),i=useScopeData(),y=e,g=n,k=(Ce,he)=>{const pe=y.inputData[Ce]?.value;return pe!==void 0?lodash.cloneDeep(pe):he},$=()=>{const Ce={...y.inputData};Object.keys(L.value).forEach(he=>{Ce[he]={value:L.value[he],hook:!1,need_render:!0}}),g("change",Ce)},V=vue.ref(),L=vue.ref({messages:[{role:"system",content:""}],content:""}),re=vue.shallowRef([]);vue.watch(()=>y.inputData,()=>{L.value={messages:k("messages",[{role:"system",content:""}]),content:k("content","")},(!("messages"in y.inputData)||!("content"in y.inputData))&&$()},{immediate:!0}),vue.onMounted(()=>{ie()});const ie=async()=>{if(!r.fetchApplyInstructionData){console.error("fetchApplyInstructionData is not available");return}const Ce=await r.fetchApplyInstructionData({plugin_id:y.pluginId,scope_type:i.scope_type,scope_value:i.scope_value,instruction:"get_space_prompts",params:{}});re.value=Ce.response},oe=Ce=>{L.value.messages.push({role:"user",content:Ce}),$()},z=(Ce,he)=>{L.value.messages[Ce].content=he,$()},j=Ce=>{y.editable&&(L.value.messages.splice(Ce,1),$())};return t({validate:async()=>V.value.validate().then(()=>!0).catch(()=>!1)}),(Ce,he)=>{const pe=vue.resolveComponent("bk-form-item"),ae=vue.resolveComponent("bk-form"),ue=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$k,[vue.createVNode(ae,{ref_key:"formRef",ref:V,"form-type":"vertical",model:L.value},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value.messages,(de,_e)=>(vue.openBlock(),vue.createBlock(pe,{key:_e,label:"Prompt",property:`messages[${_e}].content`,required:_e>0},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$e,[vue.createVNode(RoleTypeSelector,{modelValue:de.role,"onUpdate:modelValue":[xe=>de.role=xe,$],index:_e,disabled:!y.editable},null,8,["modelValue","onUpdate:modelValue","index","disabled"]),vue.createVNode(PromptImport,{prompts:re.value,disabled:!y.editable,onImport:xe=>z(_e,xe)},null,8,["prompts","disabled","onImport"]),_e>0?vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(icon.Del),{key:0,class:vue.normalizeClass(["delete-prompt-btn",{disabled:!y.editable}]),onClick:xe=>j(_e)},null,8,["class","onClick"])),[[ue,"删除"]]):vue.createCommentVNode("",!0)]),vue.createVNode(VariableInput,{modelValue:de.content,"onUpdate:modelValue":xe=>de.content=xe,options:y.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!y.editable,onBlur:$},null,8,["modelValue","onUpdate:modelValue","options","disabled"])]),_:2},1032,["property","required"]))),128)),vue.createVNode(PromptAdd,{prompts:re.value,disabled:!y.editable,onAdd:oe},null,8,["prompts","disabled"]),vue.createVNode(pe,{label:"用户提问",required:"",property:"content"},{default:vue.withCtx(()=>[vue.createVNode(VariableInput,{modelValue:L.value.content,"onUpdate:modelValue":he[0]||(he[0]=de=>L.value.content=de),options:y.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!y.editable,onBlur:$},null,8,["modelValue","options","disabled"])]),_:1})]),_:1},8,["model"])])}}}),LlmForm=_export_sfc$1(_sfc_main$k,[["__scopeId","data-v-39ddb79b"]]),_hoisted_1$j={class:"node-config-input-params"},_sfc_main$j=vue.defineComponent({__name:"input-params",props:{node:{},pluginType:{},pluginDetail:{},inputs:{default:()=>[]},editable:{type:Boolean,default:!0},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r={uniform_api_plugin:BkFlowPluginUniformApiForm,agent:AgentForm,aiops:AiopsForm,llm:LlmForm,custom:LlmForm},i=e,y=n,g=()=>{const j={};return Object.keys(i.node.component.data).forEach(le=>{j[le]=lodash.cloneDeep(i.node.component.data[le].value)}),j},k=vue.ref(),$=vue.ref(),V=vue.ref(),L=vue.ref(g()),re=vue.computed(()=>{const j=i.pluginDetail?.category,le=i.pluginDetail?.group;if(j){if(j==="model"&&le&&le in r)return r[le];if(j in r)return r[j]}return BkFlowPluginUniformApiForm}),ie=vue.computed(()=>i.pluginType==="uniform_api"&&i.node.component.api_meta?.id||"");vue.watch(()=>i.node.component.data,()=>{L.value=g()});const oe=j=>{const le={...i.node.component.data};Object.keys(j).forEach(Ce=>{le[Ce]={hook:!1,need_render:!0,value:j[Ce]}}),y("change",le)};return t({validate:()=>k.value&&k.value.validate?k.value.validate():$.value&&$.value.validate?$.value.validate():i.pluginType==="uniform_api"&&V.value&&V.value.validate?V.value.validate():!0}),(j,le)=>(vue.openBlock(),vue.createElementBlock("section",_hoisted_1$j,[i.pluginDetail?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[i.pluginDetail.inputParamsFormType==="renderform"?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:k,scheme:i.inputs,editable:i.editable,"form-option":{showGroup:!1,showHook:!0,showLabel:!0,showVarList:!0,formEdit:i.editable},"form-data":L.value,"full-variable-list":i.fullVariableList,onChange:oe},null,8,["scheme","editable","form-option","form-data","full-variable-list"])):vue.createCommentVNode("",!0),i.pluginDetail.inputParamsFormType==="jsonschemaform"?(vue.openBlock(),vue.createBlock(JsonschemaForm,{key:1,ref_key:"jsonschemaFormRef",ref:$,"form-data":L.value,schema:i.inputs,editable:i.editable,onChange:oe},null,8,["form-data","schema","editable"])):vue.createCommentVNode("",!0),i.pluginDetail.inputParamsFormType==="uniformApiForm"?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(re.value),{key:2,ref_key:"uniformApiPluginComponentRef",ref:V,node:i.node,"plugin-detail":i.pluginDetail,"plugin-id":ie.value,"input-data":i.node.component.data,inputs:i.inputs,editable:i.editable,"full-variable-list":i.fullVariableList,onChange:le[0]||(le[0]=Ce=>y("change",Ce))},null,40,["node","plugin-detail","plugin-id","input-data","inputs","editable","full-variable-list"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0)]))}}),InputParams=_export_sfc$1(_sfc_main$j,[["__scopeId","data-v-06f1844b"]]),_hoisted_1$i={class:"node-config-output-params"},_hoisted_2$d={class:"params-key-wrappper"},_hoisted_3$b={class:"key-text"},_hoisted_4$b={class:"create-variable-cell"},_hoisted_5$7=["onClick"],_sfc_main$i=vue.defineComponent({__name:"output-params",props:{node:{},outputsForms:{},constants:{default:()=>({})},editable:{type:Boolean,default:!0}},emits:["updateConstants"],setup(e,{emit:t}){const n=e,r=t,i=vue.shallowRef({}),y=vue.computed(()=>n.outputsForms.map($=>({...$,hookedKey:g($.key)})));vue.watch(()=>n.constants,$=>{i.value={...$}},{immediate:!0});const g=$=>{const L=Object.values(i.value).find(re=>re.source_info[n.node.id]&&re.source_info[n.node.id].includes($));return L?L.key:""},k=$=>{if(!n.editable)return;const V=g($.key);if(V){const L={...i.value[V],source_info:{...i.value[V].source_info,[n.node.id]:i.value[V].source_info[n.node.id].filter(re=>re!==$.key)}};i.value={...i.value,[V]:L}}else{const L=`\${${$.key}}`,re=n.constants[L]?`\${${$.key}_${random4()}}`:L;i.value={...i.value,[re]:{index:Object.values(i.value).length,name:$.name,key:re,desc:"",custom_type:"",show_type:"hide",source_type:"component_outputs",source_info:{[n.node.id]:[$.key]},source_tag:"",validation:"",plugin_code:"",value:""}}}r("updateConstants",i.value)};return($,V)=>{const L=vue.resolveComponent("bk-table-column"),re=vue.resolveComponent("bk-input"),ie=vue.resolveComponent("bk-table"),oe=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$i,[vue.createVNode(ie,{"empty-text":"暂无参数",data:y.value,border:["outer"]},{default:vue.withCtx(()=>[vue.createVNode(L,{label:"名称",width:180,"min-width":180,prop:"name"},{default:vue.withCtx(({row:z})=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(["params-name",{"has-desc":z.description!==""}])},[vue.createTextVNode(vue.toDisplayString(z.name),1)],2)),[[oe,{disabled:z.description==="",content:z.description}]])]),_:1}),vue.createVNode(L,{label:"KEY",prop:"key"},{default:vue.withCtx(({row:z})=>[vue.createElementVNode("div",_hoisted_2$d,[vue.createElementVNode("span",_hoisted_3$b,vue.toDisplayString(z.key),1),z.hookedKey?(vue.openBlock(),vue.createBlock(re,{key:0,class:"variable-key-input","model-value":z.hookedKey,readonly:vue.readonly},null,8,["model-value"])):vue.createCommentVNode("",!0)])]),_:1}),vue.createVNode(L,{label:"勾选为全局变量",width:120,"min-width":120},{default:vue.withCtx(({row:z})=>[vue.createElementVNode("div",_hoisted_4$b,[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(["btn",{"is-hooked":!!z.hookedKey,"is-disabled":!n.editable,"is-disabled-tooltip":!n.editable}]),onClick:j=>k(z)},[...V[0]||(V[0]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-quanjubianliang-2"},null,-1)])],10,_hoisted_5$7)),[[oe,{placement:"top",content:z.hookedKey?"取消接收输出":"使用变量接收输出"}]])])]),_:1})]),_:1},8,["data"])])}}}),OutputParams=_export_sfc$1(_sfc_main$i,[["__scopeId","data-v-7a5f9261"]]),_hoisted_1$h={class:"bkflow-node-config"},_sfc_main$h=vue.defineComponent({__name:"index",props:{node:{},systemVariables:{default:()=>[]},constants:{default:()=>({})},editable:{type:Boolean,default:!0}},emits:["change","selectPlugin","updateConstants"],setup(e,{expose:t,emit:n}){const r=vue.useSlots(),i=e,y=useFlowApiConfig(),g=n,k=vue.ref(),$=vue.ref(),V=vue.ref(null),L=vue.ref(!0),re=vue.shallowRef([]),ie=vue.shallowRef([]),oe=vue.ref(!1),z=vue.computed(()=>i.node.component.code?["uniform_api","remote_plugin"].includes(i.node.component.code)?i.node.component.code:"inner":""),j=vue.computed(()=>[...i.systemVariables,...Object.values(i.constants)].map(de=>({key:de.key,name:de.name,source_type:de.source_type,custom_type:de.custom_type||""})));vue.onMounted(()=>{oe.value=!1,le()});const le=async()=>{L.value=!0,oe.value=!1;try{const de=await pluginDetailRequest(y,i.node.component),{inputs:_e,outputs:xe}=de;re.value=_e,ie.value=xe,V.value=de,Ce()}catch(de){(de?.message||String(de)).includes("1211011")?oe.value=!0:console.error("Failed to fetch plugin detail:",de)}finally{L.value=!1}},Ce=()=>{if(!V.value)return;const{data:de}=i.node.component,_e=z.value;if({uniform_api:()=>{if(!de||!("uniform_api_plugin_url"in de)||!("uniform_api_plugin_method"in de))return!0;const Ve=re.value;return!Ve||Ve.length===0?!1:Ve.some(At=>!(At.key in de))},remote_plugin:()=>!de||!("plugin_version"in de),inner:()=>!de||Object.keys(de).length===0}[_e]?.())if(_e==="uniform_api"&&de){const ze=getPluginDefaultComponentData(_e,V.value),Ve={...ze,...de};re.value.forEach(At=>{At.key in Ve||(Ve[At.key]=ze[At.key])}),pe({...i.node,component:{...i.node.component,data:Ve}})}else pe({...i.node,component:{...i.node.component,data:getPluginDefaultComponentData(_e,V.value)}})},he=de=>{const _e={...i.node,component:{...i.node.component,data:de}};pe(_e)},pe=de=>{g("change",de)},ae=de=>{he(de)};return t({isPluginNotExist:oe,pluginDetailLoading:L,validate:async()=>{let de;!r.inputParams&&$.value,de=$.value.validate;const[_e,xe]=await Promise.all([k.value?.validate(),de()]);return!(!_e||!xe)},updateInputParams:ae}),(de,_e)=>{const xe=vue.resolveComponent("bk-button"),ze=vue.resolveComponent("bk-exception"),Ve=vue.resolveDirective("bk-loading");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$h,[oe.value?(vue.openBlock(),vue.createBlock(ze,{key:0,class:"plugin-not-exist-exception",type:"500",title:"未找到可用插件或可用版本",scene:"part"},{default:vue.withCtx(()=>[i.editable?(vue.openBlock(),vue.createBlock(xe,{key:0,text:"",theme:"primary",onClick:_e[0]||(_e[0]=qe=>g("selectPlugin"))},{default:vue.withCtx(()=>[..._e[3]||(_e[3]=[vue.createTextVNode("重新选择",-1)])]),_:1})):vue.createCommentVNode("",!0)]),_:1})):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createVNode(SectionContainer,{title:"基础信息"},{default:vue.withCtx(()=>[vue.createVNode(BasicInfo,{ref_key:"basicInfoRef",ref:k,node:i.node,editable:i.editable,"plugin-type":z.value,"plugin-detail":V.value,onSelectPlugin:_e[1]||(_e[1]=qe=>g("selectPlugin")),onChange:pe},null,8,["node","editable","plugin-type","plugin-detail"])]),_:1}),vue.createVNode(SectionContainer,{title:"输入参数"},{default:vue.withCtx(()=>[L.value?vue.createCommentVNode("",!0):vue.renderSlot(de.$slots,"inputParams",{key:0,node:i.node,pluginDetail:V.value,inputs:re.value,editable:i.editable,fullVariableList:j.value,updateInputParams:ae},()=>[vue.createVNode(InputParams,{ref_key:"inputParamsRef",ref:$,node:i.node,"plugin-type":z.value,"plugin-detail":V.value,inputs:re.value,editable:i.editable,"full-variable-list":j.value,onChange:he},null,8,["node","plugin-type","plugin-detail","inputs","editable","full-variable-list"])],!0)]),_:3}),vue.createVNode(SectionContainer,{title:"输出参数"},{default:vue.withCtx(()=>[L.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(OutputParams,{key:0,node:i.node,"outputs-forms":ie.value,constants:i.constants,editable:i.editable,onUpdateConstants:_e[2]||(_e[2]=qe=>g("updateConstants",qe))},null,8,["node","outputs-forms","constants","editable"]))]),_:1})],64))])),[[Ve,{loading:L.value}]])}}}),NodeConfig=_export_sfc$1(_sfc_main$h,[["__scopeId","data-v-38936b96"]]),_hoisted_1$g={class:"node-config-slider"},_hoisted_2$c={key:0,class:"sideslider-footer-buttons"},_sfc_main$g=vue.defineComponent({__name:"index",props:{show:{type:Boolean,default:!1},node:{},constants:{default:()=>({})},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0}},emits:["close","update:show","confirm","selectPlugin"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref(!0),k=vue.ref(lodash.cloneDeep(r.node)),$=vue.shallowRef({...r.constants});vue.watch(()=>r.show,()=>{k.value=lodash.cloneDeep(r.node),$.value={...r.constants}}),vue.watchEffect(()=>{y.value?.isPluginNotExist||y.value?.pluginDetailLoading?g.value=!1:g.value=!0});const V=z=>{k.value=z},L=async()=>{await y.value?.validate()&&i("confirm",k.value,$.value)},re=()=>{if(r.editable)return new Promise(z=>{lib.InfoBox({title:"确认离开?",content:"离开将会导致未保存信息丢失",confirmText:"离开",cancelText:"取消",width:320,onConfirm:()=>{ie(),z(!0)},onCancel:()=>{z(!1)}})});ie()},ie=()=>{i("close"),i("update:show",!1)};return t({updateNodeInputParams:z=>{y.value&&y.value.updateInputParams?.(z)}}),(z,j)=>{const le=vue.resolveComponent("bk-button"),Ce=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock(Ce,{title:"节点配置","is-show":r.show,width:960,"esc-close":!1,"before-close":re},{footer:vue.withCtx(()=>[g.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$c,[r.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(le,{theme:"primary",onClick:L},{default:vue.withCtx(()=>[...j[2]||(j[2]=[vue.createTextVNode("确定",-1)])]),_:1}),vue.createVNode(le,{onClick:ie},{default:vue.withCtx(()=>[...j[3]||(j[3]=[vue.createTextVNode("取消",-1)])]),_:1})],64)):(vue.openBlock(),vue.createBlock(le,{key:1,theme:"primary",onClick:ie},{default:vue.withCtx(()=>[...j[4]||(j[4]=[vue.createTextVNode("关闭",-1)])]),_:1}))])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$g,[r.show?(vue.openBlock(),vue.createBlock(NodeConfig,{key:0,ref_key:"nodeConfigRef",ref:y,node:k.value,editable:r.editable,constants:$.value,"system-variables":r.systemVariables,onSelectPlugin:j[0]||(j[0]=he=>i("selectPlugin")),onUpdateConstants:j[1]||(j[1]=he=>$.value=he),onChange:V},{inputParams:vue.withCtx(he=>[vue.renderSlot(z.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(he)),void 0,!0)]),_:3},8,["node","editable","constants","system-variables"])):vue.createCommentVNode("",!0)])]),_:3},8,["is-show"])}}}),NodeConfigPanel=_export_sfc$1(_sfc_main$g,[["__scopeId","data-v-02b9993c"]]),_hoisted_1$f={class:"plugin-group-aside"},_hoisted_2$b={class:"group-list"},_hoisted_3$a=["onClick"],_hoisted_4$a=["src"],_hoisted_5$6={class:"group-text"},_sfc_main$f=vue.defineComponent({__name:"plugin-groups-aside",props:{actived:{},groups:{}},emits:["update:actived","change"],setup(e,{emit:t}){const n=e,r=t,i=y=>{r("update:actived",y),r("change",y)};return(y,g)=>(vue.openBlock(),vue.createElementBlock("section",_hoisted_1$f,[vue.createElementVNode("div",_hoisted_2$b,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(n.groups,k=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["group-item",{actived:n.actived===k.name}]),key:k.id,onClick:$=>i(k.name)},[vue.createElementVNode("img",{class:"group-icon",src:k.iconUrl},null,8,_hoisted_4$a),vue.createElementVNode("span",_hoisted_5$6,vue.toDisplayString(k.alias),1)],10,_hoisted_3$a))),128))])]))}}),PluginGroupsAside=_export_sfc$1(_sfc_main$f,[["__scopeId","data-v-6c7ab9b0"]]),alarmImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/告警%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/告警'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(20,%2018)'%20fill='%23FFFFFF'%3e%3cpath%20d='M23.8214286,25.9259259%20L23.8214286,14.5185185%20C23.8280822,12.0419907%2022.8443395,9.66585559%2021.0897321,7.92037037%20C19.3290179,6.16064815%2016.9889509,5.18515161%2014.5,5.18515161%20C12.026631,5.17852307%209.65352669,6.16352209%207.91026786,7.92037037%20C6.15279018,9.68333333%205.17857143,12.0263889%205.17857143,14.5185185%20L5.17857143,25.9259259%20L2.07142857,25.9259259%20L2.07142857,28%20L26.9285714,28%20L26.9285714,25.9259259%20L23.8214286,25.9259259%20Z%20M15.225,10.9083333%20L16.6879464,12.3731481%20L14.5356027,14.5314815%20L17.3708705,17.3703704%20L13.8138393,21.3305556%20L12.2732143,19.9435185%20L14.516183,17.4449074%20L11.6064732,14.5314815%20L15.225,10.9083333%20Z%20M29,13.4814815%20L29,15.5555556%20L24.8571429,15.5555556%20L24.8571429,13.4814815%20L29,13.4814815%20Z%20M4.14285714,13.4814815%20L4.14285714,15.5555556%20L0,15.5555556%20L0,13.4814815%20L4.14285714,13.4814815%20Z%20M5.01594524,3.53359279%20L7.94538762,6.46677647%20L6.48066643,7.93336831%20L3.55122405,5.00018463%20L5.01594524,3.53359279%20Z%20M23.9784806,3.5274069%20L25.4432018,4.99399875%20L22.5137594,7.92718243%20L21.0490382,6.46059059%20L23.9784806,3.5274069%20Z%20M15.5357143,0%20L15.5357143,4.14814815%20L13.4642857,4.14814815%20L13.4642857,0%20L15.5357143,0%20Z'%20id='形状'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",eventImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/事件%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/事件'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3crect%20id='矩形-2'%20fill='%233A84FF'%20fill-rule='nonzero'%20x='5'%20y='5'%20width='40'%20height='40'%20rx='3'%3e%3c/rect%3e%3crect%20id='矩形'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20x='10'%20y='10'%20width='44'%20height='44'%20rx='3'%3e%3c/rect%3e%3cg%20id='alert-告警'%20transform='translate(16.25,%2016.25)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M9,0%20L9,2.25%20L22.5,2.25%20L22.5,0%20L27,0%20L27,2.25%20L29.25,2.25%20C30.4926407,2.25%2031.5,3.25735931%2031.5,4.5%20L31.5,29.25%20C31.5,30.4926407%2030.4926407,31.5%2029.25,31.5%20L2.25,31.5%20C1.00735931,31.5%200,30.4926407%200,29.25%20L0,4.5%20C0,3.25735931%201.00735931,2.25%202.25,2.25%20L4.5,2.25%20L4.5,0%20L9,0%20Z%20M29.25,10.125%20L2.25,10.125%20L2.25,29.25%20L29.25,29.25%20L29.25,10.125%20Z%20M11.25,13.5%20L11.25,18%20L5.625,18%20L5.625,13.5%20L11.25,13.5%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",graphImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/图谱%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/图谱'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(18.25,%2018.25)'%20fill='%23FFFFFF'%3e%3cpath%20d='M27.5625,0%20C29.7371212,0%2031.5,1.7628788%2031.5,3.9375%20C31.5,6.1121212%2029.7371212,7.875%2027.5625,7.875%20C26.8821072,7.875%2026.2420211,7.70242627%2025.6836253,7.39866233%20L21.2480235,11.8331927%20C22.0362649,12.9376649%2022.5,14.2896769%2022.5,15.75%20C22.5,17.2076792%2022.0379426,18.5574391%2021.2523016,19.6608059%20L24.7142478,23.1229218%20C25.3841532,22.7271229%2026.1655529,22.5%2027,22.5%20C29.4852814,22.5%2031.5,24.5147186%2031.5,27%20C31.5,29.4852814%2029.4852814,31.5%2027,31.5%20C24.5147186,31.5%2022.5,29.4852814%2022.5,27%20C22.5,26.1655529%2022.7271229,25.3841532%2023.1229218,24.7142478%20L19.6608059,21.2523016%20C18.5574391,22.0379426%2017.2076792,22.5%2015.75,22.5%20C14.2923208,22.5%2012.9425609,22.0379426%2011.8391941,21.2523016%20L8.73675688,24.3548271%20C8.9071608,24.8296846%209,25.3415004%209,25.875%20C9,28.3602814%206.98528137,30.375%204.5,30.375%20C2.01471863,30.375%200,28.3602814%200,25.875%20C0,23.3897186%202.01471863,21.375%204.5,21.375%20C5.62390208,21.375%206.6515713,21.7870218%207.44020055,22.4682583%20L10.2476984,19.6608059%20C9.46205741,18.5574391%209,17.2076792%209,15.75%20C9,14.2927614%209.46177809,12.9433769%2010.246986,11.8401948%20L6.9225844,8.53381806%20C6.36863781,8.83126977%205.73527343,9%205.0625,9%20C2.8878788,9%201.125,7.2371212%201.125,5.0625%20C1.125,2.8878788%202.8878788,1.125%205.0625,1.125%20C7.2371212,1.125%209,2.8878788%209,5.0625%20C9,5.74577587%208.82596068,6.38840267%208.51979386,6.94846859%20L11.8381935,10.2484109%20C12.9417448,9.46233681%2014.2918801,9%2015.75,9%20C17.2050353,9%2018.5525424,9.46038278%2019.6547997,10.2434266%20L24.0949001,5.80449226%20C23.7951367,5.24890576%2023.625,4.61307166%2023.625,3.9375%20C23.625,1.7628788%2025.3878788,0%2027.5625,0%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",logImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/日志%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/日志'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3crect%20id='矩形-2'%20fill='%233A84FF'%20fill-rule='nonzero'%20x='5'%20y='5'%20width='40'%20height='40'%20rx='3'%3e%3c/rect%3e%3crect%20id='矩形'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20x='10'%20y='10'%20width='44'%20height='44'%20rx='3'%3e%3c/rect%3e%3cg%20id='alert-告警'%20transform='translate(17.375,%2017.375)'%20fill='%23FFFFFF'%3e%3cpath%20d='M28.25,0%20C28.8022847,0%2029.25,0.44771525%2029.25,1%20L29.25,28.25%20C29.25,28.8022847%2028.8022847,29.25%2028.25,29.25%20L1,29.25%20C0.44771525,29.25%200,28.8022847%200,28.25%20L0,1%20C0,0.44771525%200.44771525,1.11022302e-16%201,0%20L28.25,0%20Z%20M14.625,19.125%20C14.0036797,19.125%2013.5,19.6286797%2013.5,20.25%20C13.5,20.8713203%2014.0036797,21.375%2014.625,21.375%20C15.2463203,21.375%2015.75,20.8713203%2015.75,20.25%20C15.75,19.6286797%2015.2463203,19.125%2014.625,19.125%20Z%20M8.4375,7.875%20C5.02023811,7.875%202.25,10.6452381%202.25,14.0625%20C2.25,17.4797619%205.02023811,20.25%208.4375,20.25%20C11.8547619,20.25%2014.625,17.4797619%2014.625,14.0625%20C14.625,10.6452381%2011.8547619,7.875%208.4375,7.875%20Z%20M20.8125,7.875%20C17.3952381,7.875%2014.625,10.6452381%2014.625,14.0625%20C14.625,17.4797619%2017.3952381,20.25%2020.8125,20.25%20C24.2297619,20.25%2027,17.4797619%2027,14.0625%20C27,10.6452381%2024.2297619,7.875%2020.8125,7.875%20Z%20M8.4375,10.125%20C10.6121212,10.125%2012.375,11.8878788%2012.375,14.0625%20C12.375,16.2371212%2010.6121212,18%208.4375,18%20C6.2628788,18%204.5,16.2371212%204.5,14.0625%20C4.5,11.8878788%206.2628788,10.125%208.4375,10.125%20Z%20M20.8125,10.125%20C22.9871212,10.125%2024.75,11.8878788%2024.75,14.0625%20C24.75,16.2371212%2022.9871212,18%2020.8125,18%20C18.6378788,18%2016.875,16.2371212%2016.875,14.0625%20C16.875,11.8878788%2018.6378788,10.125%2020.8125,10.125%20Z%20M21.5,12.9375%20L20.125,12.9375%20C19.5727153,12.9375%2019.125,13.3852153%2019.125,13.9375%20L19.125,14.1875%20C19.125,14.7397847%2019.5727153,15.1875%2020.125,15.1875%20L21.5,15.1875%20C22.0522847,15.1875%2022.5,14.7397847%2022.5,14.1875%20L22.5,13.9375%20C22.5,13.3852153%2022.0522847,12.9375%2021.5,12.9375%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",metricImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/指标%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/指标'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(20.0022,%2019)'%20fill='%23FFFFFF'%3e%3cpath%20d='M26.9978016,9%20L26.9978016,26%20L22.9857822,26%20L22.9857822,9%20L26.9978016,9%20Z%20M19.9767677,15%20L19.9767677,26%20L15.9647484,26%20L15.9647484,15%20L19.9767677,15%20Z%20M12.9557339,12%20L12.9557339,26%20L8.9437145,26%20L8.9437145,12%20L12.9557339,12%20Z%20M5.93469998,17%20L5.93469998,26%20L1.92268063,26%20L1.92268063,17%20L5.93469998,17%20Z%20M26.9978016,0%20L26.9978016,8%20L23.6568016,4.67%20L16.9918102,11.3355632%20L11.3179511,5.6617042%20L1.41846305,15.561206%20L3.55271368e-15,14.1427429%20L11.3137085,2.82903444%20L16.9875333,8.50285925%20L22.2358016,3.253%20L18.9737629,0%20L26.9978016,0%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",profilingImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/Profiling%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/Profiling'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(19.375,%2016)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M10.3813948,-3.55271368e-15%20C17.257736,1.52410383%2022.3838329,6.97063848%2023.2188935,13.6207878%20C24.020884,11.6579106%2025.6982065,10.1856528%2027.7485185,9.64494215%20C27.1633902,11.2491122%2027.1633902,13.0083535%2027.7485185,14.6125236%20C27.7485185,14.6125236%2033.0597887,25.1085424%2026.6837718,31.6233741%20L24.0521736,28.9989243%20C27.3425616,24.7791508%2027.0291913,18.684516%2023.1138432,14.7781096%20C18.7284397,10.4016526%2011.6811693,10.5583362%207.45245097,14.9347932%20C3.22373261,19.3094697%203.53710289,26.4991091%207.9225064,30.562199%20C11.8378545,34.1552382%2017.6316437,34.3119218%2021.8603621,31.1853723%20L24.2302248,33.5498699%20C23.1560051,34.1931262%2022.0151369,34.7178845%2020.8276645,35.1149251%20C20.8276645,35.1149251%2016.914097,36.7173707%2011.2876759,35.6099027%20C11.2876759,35.6099027%20-5.60939232,32.1361567%201.9435438,14.8956223%20C2.71450593,15.6701377%203.23085471,16.6583125%203.42136957,17.7337316%20C4.27570623,15.1161605%205.73197932,12.7354096%207.67323457,10.7826785%20C10.1623917,8.55705961%2012.6960617,2.27013128%2010.3813948,-3.55271368e-15%20Z%20M8.86261726,17.9028786%20C10.3191865,15.8450628%2012.6836372,14.6218537%2015.2048045,14.6218537%20C17.7259718,14.6218537%2020.0904225,15.8450628%2021.5469918,17.9028786%20C23.5838986,20.5593773%2023.5838986,24.3108806%2021.5469918,27.1240629%20C20.0904225,29.1818787%2017.7259718,30.4050878%2015.2048045,30.4050878%20C12.6836372,30.4050878%2010.3191865,29.1818787%208.86261726,27.1240629%20C6.8257104,24.4675642%206.8257104,20.5593773%208.86261726,17.9028786%20Z%20M20.475123,17.8049514%20L9.79204502,17.8049514%20L9.79204502,21.3659416%20L11.572558,21.3659416%20L11.572558,24.9269319%20L13.353071,24.9269319%20L13.353071,23.1464368%20L15.133584,23.1464368%20L15.133584,26.7074271%20L16.914097,26.7074271%20L16.914097,28.4879222%20L18.69461,28.4879222%20L18.69461,23.1464368%20L20.475123,23.1464368%20L20.475123,17.8049514%20L20.475123,17.8049514%20Z'%20id='形状'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",traceImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/Trace%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/Trace'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(18.25,%2018.25)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M15.75,0%20C16.36875,0%2016.875,0.50625%2016.875,1.125%20L16.875,2.29647656%20C23.4334688,2.83756641%2028.6624336,8.06653125%2029.2035234,14.625%20L30.375,14.625%20C30.99375,14.625%2031.5,15.13125%2031.5,15.75%20C31.5,16.36875%2030.99375,16.875%2030.375,16.875%20L29.2035234,16.875%20C28.6624336,23.4334688%2023.4334688,28.6624336%2016.875,29.2035234%20L16.875,30.375%20C16.875,30.99375%2016.36875,31.5%2015.75,31.5%20C15.13125,31.5%2014.625,30.99375%2014.625,30.375%20L14.625,29.2035234%20C8.06653125,28.6624336%202.83756641,23.4334688%202.29647656,16.875%20L1.125,16.875%20C0.50625,16.875%200,16.36875%200,15.75%20C0,15.13125%200.50625,14.625%201.125,14.625%20L2.29647656,14.625%20C2.83756641,8.06653125%208.06653125,2.83756641%2014.625,2.29647656%20L14.625,1.125%20C14.625,0.50625%2015.13125,0%2015.75,0%20Z%20M16.875,4.55582812%20L16.875,5.625%20C16.875,6.24375%2016.36875,6.75%2015.75,6.75%20C15.13125,6.75%2014.625,6.24375%2014.625,5.625%20L14.625,4.55582812%20C9.31011328,5.08355859%205.08355859,9.31011328%204.55582812,14.625%20L5.625,14.625%20C6.24375,14.625%206.75,15.13125%206.75,15.75%20C6.75,16.36875%206.24375,16.875%205.625,16.875%20L4.55582812,16.875%20C5.08355859,22.1898867%209.31011328,26.4164414%2014.625,26.9441719%20L14.625,25.875%20C14.625,25.25625%2015.13125,24.75%2015.75,24.75%20C16.36875,24.75%2016.875,25.25625%2016.875,25.875%20L16.875,26.9441719%20C22.1898867,26.4164414%2026.4164414,22.1898867%2026.9441719,16.875%20L25.875,16.875%20C25.25625,16.875%2024.75,16.36875%2024.75,15.75%20C24.75,15.13125%2025.25625,14.625%2025.875,14.625%20L26.9441719,14.625%20C26.4164414,9.31011328%2022.1898867,5.08355859%2016.875,4.55582812%20Z%20M15.75,10.125%20C18.8566017,10.125%2021.375,12.6433983%2021.375,15.75%20C21.375,18.8566017%2018.8566017,21.375%2015.75,21.375%20C12.6433983,21.375%2010.125,18.8566017%2010.125,15.75%20C10.125,12.6433983%2012.6433983,10.125%2015.75,10.125%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",_hoisted_1$e={class:"data-plugin-group"},_hoisted_2$a={class:"plugin-list"},_hoisted_3$9=["onClick"],_hoisted_4$9=["src"],_hoisted_5$5={class:"plugin-name"},_sfc_main$e=vue.defineComponent({__name:"data-plugin-group",props:{plugins:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i={alert_plugin:alarmImg,log_plugin:logImg,trace_plugin:traceImg,query_promql_metric_plugin:metricImg,事件查询:eventImg,Profiling查询:profilingImg,图谱查询:graphImg},y=vue.computed(()=>n.plugins.map(g=>({id:g.id,name:g.alias,icon:i[g.name]})));return(g,k)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$e,[vue.createElementVNode("div",_hoisted_2$a,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(y.value,$=>(vue.openBlock(),vue.createElementBlock("div",{class:"plugin-item",key:$.id,onClick:V=>r("select",$.id)},[vue.createElementVNode("img",{class:"plugin-img",src:$.icon},null,8,_hoisted_4$9),vue.createElementVNode("h4",_hoisted_5$5,vue.toDisplayString($.name),1)],8,_hoisted_3$9))),128))]),y.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,title:"暂无数据插件"})):vue.createCommentVNode("",!0)]))}}),DataPluginGroup=_export_sfc$1(_sfc_main$e,[["__scopeId","data-v-782d393d"]]),_hoisted_1$d={class:"search-select-wrapper"},_sfc_main$d=vue.defineComponent({__name:"index",props:{modelValue:{default:()=>[]},placeholder:{default:"请选择"},options:{default:()=>[]}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=t,i=vue.shallowRef([...n.modelValue]);vue.watch(()=>n.modelValue,g=>{i.value=[...g]},{deep:!0});const y=g=>{i.value=g,r("update:modelValue",g),r("change",g)};return(g,k)=>{const $=vue.resolveComponent("bk-search-select");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$d,[vue.createVNode($,{modelValue:i.value,"onUpdate:modelValue":[k[0]||(k[0]=V=>i.value=V),y],"value-behavior":"need-key",data:n.options,placeholder:n.placeholder,uniqueSelect:!0,clearable:!0},null,8,["modelValue","data","placeholder"])])}}}),_hoisted_1$c={class:"agent-plugin-group"},_hoisted_2$9={class:"top-operate-area"},_hoisted_3$8={class:"buttons"},_hoisted_4$8={class:"agent-content-area"},_hoisted_5$4={class:"agent-cards"},_hoisted_6$4={class:"card-header"},_hoisted_7$3=["src"],_hoisted_8$2={class:"agent-summary"},_hoisted_9$2={class:"main-info"},_hoisted_10$2={class:"name-text"},_hoisted_11$2={class:"other-info"},_hoisted_12=["title"],_hoisted_13=["title"],_hoisted_14=["title"],_hoisted_15={class:"agent-desc"},_hoisted_16={class:"agent-btns"},_sfc_main$c=vue.defineComponent({__name:"agent-plugin-group",props:{properties:{},plugins:{}},emits:["select"],setup(e,{emit:t}){const n=vueRouter.useRouter(),r=vueRouter.useRoute(),i=[{id:"alias",name:"智能体名称"},{id:"created_by",name:"创建人"}],y=e,g=useAgentSelectPanelConfig(),k=t,$=vue.ref("all"),V=vue.ref([]),L=vue.computed(()=>Object.keys(y.properties).map(he=>({id:he,name:y.properties[he]}))),re=vue.computed(()=>y.plugins.filter(he=>!he.display_content.hidden)),ie=vue.computed(()=>{const he=re.value.filter(pe=>$.value!=="all"?pe.group===$.value:!0);return V.value.length>0?he.filter(pe=>V.value.some(ae=>ae.id==="alias"?pe.alias.toLowerCase().includes(ae.values[0].id.toLowerCase()):ae.id==="agent_type"?(pe.display_content?.agent_type||"")===ae.values[0].id:ae.id==="space_name"?(pe.display_content?.space_name||"").toLowerCase().includes(ae.values[0].id.toLowerCase()):ae.id==="created_by"?(pe.display_content?.created_by||"")===ae.values[0].id:!0)):he}),oe=he=>he?dayjs(he).format("YYYY-MM-DD HH:mm:ss"):"--",z=he=>{V.value=he},j=()=>{if(g?.applyUrl)window.open(g.applyUrl,"_blank");else{const{href:he}=n.resolve({name:"spaceResource",params:r.params});window.open(he,"_blank")}},le=()=>{if(g?.resourceUrl)window.open(g.resourceUrl,"_blank");else{const{href:he}=n.resolve({name:"spaceResource",params:r.params});window.open(he,"_blank")}},Ce=he=>{he.display_content.fetch_url&&window.open(he.display_content.fetch_url,"_blank")};return(he,pe)=>{const ae=vue.resolveComponent("bk-button"),ue=vue.resolveComponent("bk-alert"),de=vue.resolveComponent("bk-radio-button"),_e=vue.resolveComponent("bk-radio-group");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$c,[vue.createVNode(ue,null,{default:vue.withCtx(()=>[pe[3]||(pe[3]=vue.createTextVNode(" 如有需要,您可以申请更多的智能体权限 ",-1)),vue.createVNode(ae,{theme:"primary",text:"",size:"small",onClick:j},{default:vue.withCtx(()=>[...pe[2]||(pe[2]=[vue.createTextVNode("点击申请",-1)])]),_:1})]),_:1}),vue.createElementVNode("div",_hoisted_2$9,[vue.createElementVNode("div",_hoisted_3$8,[vue.createVNode(ae,{theme:"primary",onClick:le},{default:vue.withCtx(()=>[vue.unref(g)?.buttonText?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(vue.unref(g).buttonText),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createVNode(vue.unref(icon.Plus),{class:"add-icon"}),pe[4]||(pe[4]=vue.createTextVNode(" 智能体 ",-1))],64))]),_:1}),L.value.length>1?(vue.openBlock(),vue.createBlock(_e,{key:0,modelValue:$.value,"onUpdate:modelValue":pe[0]||(pe[0]=xe=>$.value=xe),type:"capsule"},{default:vue.withCtx(()=>[vue.createVNode(de,{label:"all"},{default:vue.withCtx(()=>[...pe[5]||(pe[5]=[vue.createTextVNode("全部",-1)])]),_:1}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,xe=>(vue.openBlock(),vue.createBlock(de,{key:xe.id,label:xe.id},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(xe.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)]),vue.createVNode(_sfc_main$d,{modelValue:V.value,options:i,placeholder:"搜索智能体名称、创建人",onChange:z},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_4$8,[vue.createElementVNode("div",_hoisted_5$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(ie.value,xe=>(vue.openBlock(),vue.createElementBlock("div",{class:"card-item",key:xe.id},[vue.createElementVNode("div",_hoisted_6$4,[vue.createElementVNode("img",{src:xe.display_content.icon,alt:"",class:"agent-img"},null,8,_hoisted_7$3),vue.createElementVNode("div",_hoisted_8$2,[vue.createElementVNode("div",_hoisted_9$2,[vue.createElementVNode("div",_hoisted_10$2,vue.toDisplayString(xe.alias),1)]),vue.createElementVNode("div",_hoisted_11$2,[vue.createElementVNode("span",{title:xe.display_content.agent_code},"ID:"+vue.toDisplayString(xe.display_content.agent_code),9,_hoisted_12),vue.createElementVNode("span",{title:xe.display_content.created_by},"创建人:"+vue.toDisplayString(xe.display_content.created_by),9,_hoisted_13),vue.createElementVNode("span",{title:oe(xe.display_content.created_at)}," 创建时间:"+vue.toDisplayString(oe(xe.display_content.created_at)),9,_hoisted_14)])])]),vue.createElementVNode("p",_hoisted_15,vue.toDisplayString(xe.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_16,[vue.createVNode(ae,{theme:"primary",size:"small",onClick:ze=>k("select",xe.id)},{default:vue.withCtx(()=>[...pe[6]||(pe[6]=[vue.createTextVNode("选择",-1)])]),_:1},8,["onClick"]),vue.createVNode(ae,{size:"small",onClick:ze=>Ce(xe)},{default:vue.withCtx(()=>[...pe[7]||(pe[7]=[vue.createTextVNode("体验",-1)])]),_:1},8,["onClick"])])]))),128))]),ie.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":V.value.length>0,title:"暂无智能体",onClear:pe[1]||(pe[1]=xe=>V.value=[])},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),AgentPluginGroup=_export_sfc$1(_sfc_main$c,[["__scopeId","data-v-80aa7bbe"]]),_hoisted_1$b={class:"order-selector"},_sfc_main$b=vue.defineComponent({__name:"order-selector",props:{order:{}},emits:["update:order"],setup(e,{emit:t}){const n=[{id:"created_at_asc",name:"创建时间(升序)",icon:"bkflow-canvas-icon bkflow-canvas-sort-up"},{id:"created_at_desc",name:"创建时间(降序)",icon:"bkflow-canvas-icon bkflow-canvas-sort-down"},{id:"name_asc",name:"中文名称(A-Z)",icon:"bkflow-canvas-icon bkflow-canvas-sort-up"},{id:"name_desc",name:"中文名称(Z-A)",icon:"bkflow-canvas-icon bkflow-canvas-sort-down"}],r=e,i=t,y=vue.ref(!1),g=V=>{y.value=V},k=vue.computed(()=>n.find(V=>V.id===r.order)),$=V=>{i("update:order",V)};return(V,L)=>{const re=vue.resolveComponent("bk-button"),ie=vue.resolveComponent("bk-dropdown-item"),oe=vue.resolveComponent("bk-dropdown-menu"),z=vue.resolveComponent("bk-dropdown");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[L[0]||(L[0]=vue.createElementVNode("span",{class:"order-selector-prefix"},"排序",-1)),vue.createVNode(z,{placement:"bottom-start",trigger:"click","popover-options":{clickContentAutoHide:!0,width:146},onShowChange:g},{content:vue.withCtx(()=>[vue.createVNode(oe,{"ext-cls":"order-selector-dropdown-menu"},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(n,j=>vue.createVNode(ie,{key:j.id,class:vue.normalizeClass({active:j.id===e.order}),onClick:le=>$(j.id)},{default:vue.withCtx(()=>[vue.createElementVNode("span",null,vue.toDisplayString(j.name),1)]),_:2},1032,["class","onClick"])),64))]),_:1})]),default:vue.withCtx(()=>[vue.createVNode(re,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(k.value?.name)+" ",1),vue.createElementVNode("i",{class:vue.normalizeClass(["order-selector-icon",k.value?.icon])},null,2),vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon","bkflow-canvas-angle-up",{"angle-down":!y.value}])},null,2)]),_:1})]),_:1})])}}}),OrderSelector=_export_sfc$1(_sfc_main$b,[["__scopeId","data-v-40215204"]]),_hoisted_1$a={class:"big-model-card"},_hoisted_2$8={class:"card-header"},_hoisted_3$7=["src"],_hoisted_4$7={class:"model-info"},_hoisted_5$3={class:"model-name"},_hoisted_6$3=["title"],_hoisted_7$2={class:"other-info"},_hoisted_8$1={class:"other-info"},_hoisted_9$1={class:"model-desc"},_hoisted_10$1={class:"tag-list"},_hoisted_11$1={class:"bottom-btns"},_sfc_main$a=vue.defineComponent({__name:"big-model-card",props:{plugin:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i=vue.computed(()=>n.plugin.display_content.tag_names.map(y=>y.join("/")));return(y,g)=>{const k=vue.resolveComponent("bk-tag"),$=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$a,[vue.createElementVNode("div",_hoisted_2$8,[vue.createElementVNode("img",{src:n.plugin.display_content.icon,alt:"",class:"model-img"},null,8,_hoisted_3$7),vue.createElementVNode("div",_hoisted_4$7,[vue.createElementVNode("div",_hoisted_5$3,[vue.createElementVNode("div",{class:"name-text",title:n.plugin.alias},vue.toDisplayString(n.plugin.alias),9,_hoisted_6$3)]),vue.createElementVNode("p",_hoisted_7$2,[vue.createElementVNode("span",null,"基座模型: "+vue.toDisplayString(n.plugin.display_content.base_model),1),vue.createElementVNode("span",null,"激活参数: "+vue.toDisplayString(n.plugin.display_content.context_length),1)]),vue.createElementVNode("p",_hoisted_8$1,[vue.createElementVNode("span",null,"更新人: "+vue.toDisplayString(n.plugin.display_content.created_by),1),vue.createElementVNode("span",null,"更新时间: "+vue.toDisplayString(n.plugin.display_content.created_at),1)])])]),vue.createElementVNode("p",_hoisted_9$1,vue.toDisplayString(n.plugin.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_10$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,V=>(vue.openBlock(),vue.createBlock(k,{key:V},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V),1)]),_:2},1024))),128))]),vue.createElementVNode("div",_hoisted_11$1,[vue.createVNode($,{theme:"primary",size:"small",onClick:g[0]||(g[0]=V=>r("select",n.plugin.id))},{default:vue.withCtx(()=>[...g[1]||(g[1]=[vue.createTextVNode("选择",-1)])]),_:1})])])}}}),BigModelCard=_export_sfc$1(_sfc_main$a,[["__scopeId","data-v-fcf03d9b"]]),_hoisted_1$9={class:"small-model-card"},_hoisted_2$7={class:"model-name"},_hoisted_3$6={class:"name-text"},_hoisted_4$6={class:"en-name"},_hoisted_5$2={class:"extend-info"},_hoisted_6$2={class:"model-desc"},_hoisted_7$1={class:"bottom-btns"},_sfc_main$9=vue.defineComponent({__name:"small-model-card",props:{plugin:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t;return(i,y)=>{const g=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$9,[vue.createElementVNode("div",_hoisted_2$7,[vue.createElementVNode("span",_hoisted_3$6,vue.toDisplayString(n.plugin.alias),1),vue.createElementVNode("span",_hoisted_4$6,"("+vue.toDisplayString(n.plugin.name)+")",1)]),vue.createElementVNode("p",_hoisted_5$2,[vue.createElementVNode("span",null,"依赖历史数据长度 : "+vue.toDisplayString(n.plugin.display_content.ts_depend_time)+" 天",1),vue.createElementVNode("span",null,"数据频率:"+vue.toDisplayString(n.plugin.display_content.frequency)+" 秒",1),vue.createElementVNode("span",null,"发布人:"+vue.toDisplayString(n.plugin.display_content.created_by),1)]),vue.createElementVNode("p",_hoisted_6$2,vue.toDisplayString(n.plugin.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_7$1,[vue.createVNode(g,{theme:"primary",size:"small",onClick:y[0]||(y[0]=k=>r("select",n.plugin.id))},{default:vue.withCtx(()=>[...y[1]||(y[1]=[vue.createTextVNode("选择",-1)])]),_:1})])])}}}),SmallModelCard=_export_sfc$1(_sfc_main$9,[["__scopeId","data-v-fed83f20"]]),_hoisted_1$8={class:"model-plugin-group"},_hoisted_2$6={class:"top-operate-area"},_hoisted_3$5={class:"group-selector"},_hoisted_4$5={class:"search-area"},_hoisted_5$1={class:"mode-content-area"},_hoisted_6$1={class:"card-list"},_sfc_main$8=vue.defineComponent({__name:"index",props:{properties:{},plugins:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref("llm"),y=vue.ref("created_at_desc"),g=vue.ref([]),k=vue.computed(()=>i.value==="llm"?[{id:"name",name:"模型名称"},{id:"base_model",name:"基座模型"}]:[{id:"name",name:"模型名称"},{id:"created_by",name:"创建人"}]),$=vue.computed(()=>i.value==="llm"?"搜索模型名称、基座模型":"搜索模型名称、发布人"),V=vue.computed(()=>Object.keys(n.properties).map(he=>({id:he,name:n.properties[he]}))),L=vue.computed(()=>n.plugins.filter(he=>!he.display_content.hidden)),re=he=>he.filter(pe=>pe.group===i.value),ie=he=>{if(g.value.length===0)return he;const pe={name:ae=>ae.name,base_model:ae=>ae.display_content.base_model||"",created_by:ae=>ae.display_content.created_by||""};return he.filter(ae=>g.value.some(ue=>{const de=ue.values[0].id.toLowerCase(),_e=pe[ue.id];return _e?.(ae).toLowerCase().includes(de)??!1}))},oe=he=>{if(i.value!=="llm")return he;const pe=(de,_e,xe)=>{const ze=new Date(de.display_content.created_at).getTime(),Ve=new Date(_e.display_content.created_at).getTime();return xe?ze-Ve:Ve-ze},ue={created_at_asc:(de,_e)=>pe(de,_e,!0),created_at_desc:(de,_e)=>pe(de,_e,!1),name_asc:(de,_e)=>de.alias.localeCompare(_e.alias),name_desc:(de,_e)=>_e.alias.localeCompare(de.alias)}[y.value];return ue?[...he].sort(ue):he},z=vue.computed(()=>{const he=re(L.value),pe=ie(he);return oe(pe)}),j=he=>{i.value=he,y.value="created_at_desc",g.value=[]},le=he=>{g.value=he},Ce=he=>{r("select",he)};return(he,pe)=>{const ae=vue.resolveComponent("bk-radio-button"),ue=vue.resolveComponent("bk-radio-group");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$8,[vue.createElementVNode("div",_hoisted_2$6,[vue.createElementVNode("div",_hoisted_3$5,[V.value.length>1?(vue.openBlock(),vue.createBlock(ue,{key:0,modelValue:i.value,"onUpdate:modelValue":pe[0]||(pe[0]=de=>i.value=de),type:"capsule",onChange:j},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(V.value,de=>(vue.openBlock(),vue.createBlock(ae,{key:de.id,label:de.id},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(de.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$5,[i.value==="llm"?(vue.openBlock(),vue.createBlock(OrderSelector,{key:0,order:y.value,"onUpdate:order":pe[1]||(pe[1]=de=>y.value=de)},null,8,["order"])):vue.createCommentVNode("",!0),vue.createVNode(_sfc_main$d,{modelValue:g.value,options:k.value,placeholder:$.value,onChange:le},null,8,["modelValue","options","placeholder"])])]),vue.createElementVNode("div",_hoisted_5$1,[vue.createElementVNode("div",_hoisted_6$1,[i.value==="llm"?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(z.value,de=>(vue.openBlock(),vue.createBlock(BigModelCard,{key:de.id,plugin:de,onSelect:Ce},null,8,["plugin"]))),128)):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(z.value,de=>(vue.openBlock(),vue.createBlock(SmallModelCard,{key:de.id,plugin:de,onSelect:Ce},null,8,["plugin"]))),128))]),z.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":g.value.length>0,title:"暂无模型插件",onClear:pe[2]||(pe[2]=de=>g.value=[])},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),ModelPluginGroup=_export_sfc$1(_sfc_main$8,[["__scopeId","data-v-05075bf4"]]),_hoisted_1$7={class:"plugin-group"},_sfc_main$7=vue.defineComponent({__name:"output-plugin-group",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[vue.createVNode(EmptyException,{title:"暂无结论输出插件"})]))}}),OutputPluginGroup=_export_sfc$1(_sfc_main$7,[["__scopeId","data-v-474d5047"]]),pluginDefaultIcon="data:image/png;base64,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",_hoisted_1$6={class:"bkflow-plugin-group"},_hoisted_2$5={class:"plugin-content-wrapper"},_hoisted_3$4={class:"tags-list"},_hoisted_4$4=["onClick"],_hoisted_5={class:"plugins-list"},_hoisted_6={class:"plugin-icon-wrapper"},_hoisted_7=["src"],_hoisted_8={class:"plugin-info-wrapper"},_hoisted_9={class:"plugin-name"},_hoisted_10=["title"],_hoisted_11={class:"managers-text"},_sfc_main$6=vue.defineComponent({__name:"bkflow-plugin-group",props:{bkflowPluginTags:{},activedTag:{}},emits:["selectBkflowPlugin"],setup(e,{emit:t}){const n=useFlowApiConfig(),r=e,i=t,y=vue.ref([]),g=vue.ref(r.activedTag||0),k=vue.ref([]),$=vue.ref(!1),V=[{id:"name",name:"插件名称"}];vue.onMounted(()=>{re()});const L=oe=>{g.value=oe,re()},re=async()=>{if($.value=!0,k.value=[],g.value===0){const oe=await n.fetchBkFlowInnerPluginList();k.value=oe.map(z=>({code:z.code,name:z.name,logo_url:pluginDefaultIcon,desc:z.desc||"--",managers:["BkFlow"],version:z.version}))}else{const oe=await n.fetchBkFlowThirdPartyPluginList(g.value);k.value=oe.data.plugins.map(z=>({code:z.code,name:z.name,logo_url:z.logo_url,desc:z.introduction||"--",managers:z.managers,version:"1.0.0"}))}$.value=!1},ie=oe=>{const z=k.value.find(j=>j.code===oe);if(z){const{code:j,name:le,version:Ce}=z;i("selectBkflowPlugin",{code:g.value===0?j:"remote_plugin",name:le,data:g.value===0?{}:{plugin_code:{hook:!1,value:j}},version:Ce})}};return(oe,z)=>{const j=vue.resolveComponent("bk-button"),le=vue.resolveDirective("bk-loading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[vue.createVNode(_sfc_main$d,{modelValue:y.value,"onUpdate:modelValue":z[0]||(z[0]=Ce=>y.value=Ce),options:V,placeholder:"搜索插件名称"},null,8,["modelValue"]),vue.createElementVNode("div",_hoisted_2$5,[vue.createElementVNode("div",_hoisted_3$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.bkflowPluginTags,Ce=>(vue.openBlock(),vue.createElementBlock("div",{key:Ce.id,class:vue.normalizeClass(["tag-item",{actived:g.value===Ce.id}]),onClick:he=>L(Ce.id)},vue.toDisplayString(Ce.name),11,_hoisted_4$4))),128))]),vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_5,[k.value.length>0?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(k.value,Ce=>(vue.openBlock(),vue.createElementBlock("div",{key:Ce.code,class:"plugin-item"},[vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("img",{src:Ce.logo_url||vue.unref(pluginDefaultIcon),alt:"plugin-icon"},null,8,_hoisted_7)]),vue.createElementVNode("div",_hoisted_8,[vue.createElementVNode("h4",_hoisted_9,vue.toDisplayString(Ce.name),1),vue.createElementVNode("p",{class:"plugin-desc",title:Ce.desc},vue.toDisplayString(Ce.desc),9,_hoisted_10),vue.createElementVNode("div",_hoisted_11,vue.toDisplayString(Ce.managers?Ce.managers.join(","):"BkFlow")+" 提供",1)]),vue.createVNode(j,{theme:"primary",size:"small",onClick:he=>ie(Ce.code)},{default:vue.withCtx(()=>[...z[1]||(z[1]=[vue.createTextVNode("选择",-1)])]),_:1},8,["onClick"])]))),128)):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"该分类暂无插件"}))])),[[le,{loading:$.value}]])])])}}}),BkFlowPluginGroup=_export_sfc$1(_sfc_main$6,[["__scopeId","data-v-3ae0702d"]]),_hoisted_1$5={class:"plugin-select-slider"},_hoisted_2$4={key:0,class:"plugin-select-content"},_sfc_main$5=vue.defineComponent({__name:"index",props:{show:{type:Boolean,default:!1},flowId:{},actived:{default:""},bkflowTag:{default:0},pluginGroupList:{default:()=>[]}},emits:["close","update:show","select"],setup(e,{emit:t}){const n={data:DataPluginGroup,agent:AgentPluginGroup,model:ModelPluginGroup,bkflow:BkFlowPluginGroup,output:OutputPluginGroup},r=e,i=useFlowApiConfig(),y=t,g=vue.ref(r.actived),k=vue.shallowRef([]),$=vue.ref(!1),V=vue.computed(()=>n[g.value]||null),L=vue.computed(()=>r.pluginGroupList.find(Ce=>Ce.name===g.value)?.properties||{}),re=vue.computed(()=>r.pluginGroupList.find(Ce=>Ce.name==="bkflow")?.children||[]);vue.watch(()=>r.show,()=>{r.show&&(g.value=r.actived,g.value!=="bkflow"&&ie())});const ie=async()=>{if(!i?.fetchCategoryPlugins){console.warn("fetchCategoryPlugins is not provided in api");return}$.value=!0;try{const Ce=await i.fetchCategoryPlugins(g.value),he=r.pluginGroupList.find(pe=>pe.name===g.value);he&&Ce.forEach(pe=>{pe.category_id=he.id}),k.value=Ce}catch(Ce){console.error(Ce)}finally{$.value=!1}},oe=Ce=>{g.value=Ce,Ce!=="bkflow"&&ie()},z=Ce=>{const he=k.value.find(pe=>pe.id===Ce);y("select","projectPlugin",he)},j=Ce=>{y("select","bkflowPlugin",Ce)},le=()=>{y("close"),y("update:show",!1)};return(Ce,he)=>{const pe=vue.resolveComponent("bk-sideslider"),ae=vue.resolveDirective("bk-loading");return vue.openBlock(),vue.createBlock(pe,{title:"节点选择","is-show":r.show,width:1200,"esc-close":!1,"before-close":le},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$5,[vue.createVNode(PluginGroupsAside,{actived:g.value,"onUpdate:actived":he[0]||(he[0]=ue=>g.value=ue),groups:r.pluginGroupList,onChange:oe},null,8,["actived","groups"]),r.show?vue.withDirectives((vue.openBlock(),vue.createElementBlock("section",_hoisted_2$4,[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(V.value),{plugins:k.value,"bkflow-plugin-tags":re.value,"actived-tag":r.bkflowTag,properties:L.value,onSelect:z,onSelectBkflowPlugin:j},null,40,["plugins","bkflow-plugin-tags","actived-tag","properties"]))])),[[ae,{loading:$.value}]]):vue.createCommentVNode("",!0)])]),_:1},8,["is-show"])}}}),PluginSelectPanel=_export_sfc$1(_sfc_main$5,[["__scopeId","data-v-043824f1"]]),_hoisted_1$4={class:"flow-canvas-container"},_sfc_main$4=vue.defineComponent({__name:"index",props:{mode:{},flowId:{},pipelineTree:{},spaceFlowConfig:{},systemVariables:{default:()=>[]},pluginGroupList:{default:()=>[]},thumbnail:{type:Boolean,default:!1},defaultZoom:{default:1}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref(),k=vue.ref({show:!1,nodeId:"",edgeId:"",condition:null,hasDefaultBranch:!1,isDefault:!1}),$=vue.ref({show:!1,node:null}),V=vue.ref({show:!1,actived:r.pluginGroupList[0]?.name||"",bkflowTag:0,node:null}),L=$e=>{if(r.thumbnail)return;const Ne=r.pipelineTree.activities[$e.id];Ne&&($.value={show:!0,node:Ne})},re=$e=>{if(r.thumbnail)return;const Ne=r.pipelineTree.flows[$e.id];if(Ne){const Oe=r.pipelineTree.gateways[Ne.source];if(Oe){const kt=!!Oe.default_condition&&typeof Oe.default_condition.flow_id=="string";k.value.hasDefaultBranch=kt,k.value.nodeId=Ne.source,k.value.edgeId=$e.id;const{default_condition:Lt,conditions:Cn}=Oe;Lt&&Lt.flow_id===$e.id?(k.value.condition=Lt,k.value.isDefault=!0):Cn&&Cn[$e.id]&&(k.value.condition=Cn[$e.id],k.value.isDefault=!1),k.value.show=!0}}},ie=($e,Ne)=>{const kt={x:r.pipelineTree.location.find(Cn=>Cn.id===$e).x+200,y:pe($e,Ne)},Lt=`node${uuid()}`;ue($e,{id:Lt,type:Ne,position:kt,data:{id:Lt}})},oe=($e,Ne,Oe)=>{const Lt=r.pluginGroupList.find(kn=>kn.name===Oe).children.find(kn=>kn.id===Ne);if(!Lt)return;const{id:Cn,name:hn,alias:jt,meta_url:vn,api_key:Et="incident",version:wn="",category_id:bn}=Lt,$n={x:r.pipelineTree.location.find(kn=>kn.id===$e).x+200,y:pe($e,"tasknode")},Sn=`node${uuid()}`;ue($e,{id:Sn,type:"tasknode",position:$n,data:{id:Sn,name:"",component:{code:"",data:{},version:""}}}),setTimeout(()=>{Ce(Sn);const kn=r.pipelineTree.activities[Sn];if(kn){const Nn={...kn,name:jt||hn,component:{code:"uniform_api",data:{},version:wn,api_meta:{id:Cn,name:hn,alias:jt||hn,meta_url:vn,api_key:Et,category:{id:bn,name:Oe}}}};$.value={show:!0,node:Nn}}},100)},z=($e,Ne,Oe=0)=>{const Lt={x:r.pipelineTree.location.find(hn=>hn.id===$e).x+200,y:pe($e,"tasknode")},Cn=`node${uuid()}`;ue($e,{id:Cn,type:"tasknode",position:Lt,data:{id:Cn,name:"",component:{code:"",data:{},version:""}}}),setTimeout(()=>{Ce(Cn);const hn=r.pipelineTree.activities[Cn];hn&&(V.value={show:!0,actived:Ne,bkflowTag:Oe,node:hn})},100)},j=$e=>{const{id:Ne,type:Oe,position:kt,data:Lt}=he($e);ae(Ne,Oe,kt,Lt)},le=$e=>{const{id:Ne,type:Oe,position:kt,data:Lt}=he($e);kt.y=pe($e,Oe),ue($e,{id:Ne,type:Oe,position:kt,data:Lt}),setTimeout(()=>{Ce(Ne)},100)},Ce=$e=>{const Ne=y.value.graph.getCellById($e),{x:Oe,y:kt}=Ne.position(),Lt=Ne.getBBox().width,Cn=r.pipelineTree.activities[$e];if(Cn&&Cn.outgoing){const hn=r.pipelineTree.flows[Cn.outgoing].target,jt=y.value.graph.getCellById(hn),{x:vn,y:Et}=jt.position(),wn=vn-Oe;if(wn<Lt+50&&Math.abs(Et-kt)<40){const bn=vn+Lt-wn+50;jt.position(bn,Et);const Tn=[...r.pipelineTree.location],$n=Tn.findIndex(Sn=>Sn.id===hn);$n>-1&&(Tn[$n]={...Tn[$n],x:bn},Ue({...r.pipelineTree,location:Tn}))}}},he=$e=>{const Ne=`node${uuid()}`,Oe=r.pipelineTree.location.find(hn=>hn.id===$e),kt={x:Oe.x+200,y:Oe.y};let Lt,Cn={};if(r.pipelineTree.activities[$e])Cn={...r.pipelineTree.activities[$e],id:Ne,incoming:[],outgoing:""},Lt="tasknode";else{const hn=r.pipelineTree.gateways[$e];Lt=hn.type==="ExclusiveGateway"?"branchgateway":hn.type.toLowerCase(),Cn={incoming:[],outgoing:Array.isArray(hn.outgoing)?[]:""}}return{id:Ne,type:Lt,position:kt,data:Cn}},pe=($e,Ne)=>{const Oe=r.pipelineTree.location.find(Cn=>Cn.id===$e),kt=Oe.type,Lt=Oe.y;if(kt.includes("gateway")){const Cn=r.pipelineTree.gateways[$e];return Array.isArray(Cn.outgoing)&&Cn.outgoing.length>0?Cn.outgoing.reduce((jt,vn)=>{const Et=r.pipelineTree.flows[vn].target,wn=r.pipelineTree.location.find(bn=>bn.id===Et);return Math.max(jt,wn.y)},0)+100:Ne.includes("gateway")?Lt:Lt-10}return Ne.includes("gateway")?Lt+10:Lt},ae=($e,Ne,Oe,kt={})=>{const Lt=Ne.includes("gateway"),Cn=y.value.graph.addNode({id:$e,...Oe,shape:"custom-node",width:Lt?34:154,height:Lt?34:54,data:{type:Ne}});return Cn.setZIndex(r.pipelineTree.location.length),Lt?y.value.createGateway($e,Ne,Oe,kt):y.value.createActivity($e,Oe,kt),Cn},ue=($e,Ne)=>{const Oe=ae(Ne.id,Ne.type,Ne.position,Ne.data);setTimeout(()=>{de($e,Oe.id)},10)},de=($e,Ne)=>{const{activities:Oe,gateways:kt,start_event:Lt,end_event:Cn,location:hn}=r.pipelineTree,jt=hn.find(bn=>bn.id===$e),vn=hn.find(bn=>bn.id===Ne);if(!jt||!vn)return;let Et="";Oe[$e]?Et=Oe[$e].outgoing:kt[$e]?Et=kt[$e].outgoing:Lt.id===$e&&(Et=Lt.outgoing);const wn=_e(Et,$e,Ne);y.value.insertEdgesToCanvas(wn)},_e=($e,Ne,Oe)=>{const kt=[];if(Array.isArray($e)){let Lt="Right";r.pipelineTree.gateways[Ne]&&$e.length>0&&(Lt="Bottom"),kt.push({id:`line${uuid()}`,source:{arrow:Lt,id:Ne},target:{arrow:"Left",id:Oe}})}else if($e==="")kt.push({id:`line${uuid()}`,source:{arrow:"Right",id:Ne},target:{arrow:"Left",id:Oe}});else{const Lt=r.pipelineTree.flows[$e];Lt&&(y.value.deleteEdges([$e]),kt.push({id:`line${uuid()}`,source:{arrow:"Right",id:Ne},target:{arrow:"Left",id:Oe}},{id:`line${uuid()}`,source:{arrow:"Right",id:Oe},target:{arrow:"Left",id:Lt.target}}))}return kt},xe=$e=>{const Ne=[];if(r.pipelineTree.activities[$e]){const Oe=r.pipelineTree.activities[$e];Ne.push(...Oe.incoming),Oe.outgoing&&Ne.push(Oe.outgoing)}else if(r.pipelineTree.gateways[$e]){const Oe=r.pipelineTree.gateways[$e];Ne.push(...Oe.incoming),Array.isArray(Oe.outgoing)?Ne.push(...Oe.outgoing):Oe.outgoing&&Ne.push(Oe.outgoing)}y.value.deleteEdges(Ne)},ze=$e=>{y.value.deleteNode($e)},Ve=$e=>{y.value.deleteEdges([$e.id])},qe=($e,Ne)=>{const Oe={...r.pipelineTree.gateways};if(Oe[k.value.nodeId]){const kt=lodash.cloneDeep(Oe[k.value.nodeId]),Lt=kt.conditions||{},{name:Cn,tag:hn,evaluate:jt="",loc:vn}=$e,Et={name:Cn,tag:hn,evaluate:jt.trim()};vn&&(Et.loc=vn),Ne?(delete Et.evaluate,Et.flow_id=k.value.edgeId,kt.default_condition=Et):Lt[k.value.edgeId]=Et,!k.value.isDefault&&Ne?Lt[k.value.edgeId]&&delete Lt[k.value.edgeId]:k.value.isDefault&&!Ne&&kt.default_condition&&delete kt.default_condition,kt.conditions=Lt,Oe[k.value.nodeId]=kt}Ue({...r.pipelineTree,gateways:Oe}),setTimeout(()=>{y.value.updateEdgeLabel(k.value.edgeId)},10)},At=()=>{if(!$.value.node)return;const $e=lodash.cloneDeep($.value.node);let Ne="";$e.component.api_meta?.category.name?Ne=$e.component.api_meta?.category.name:Ne=r.pluginGroupList[0]?.name||"",V.value={show:!0,actived:Ne,bkflowTag:0,node:$e},$.value={show:!1,node:null}},Fe=($e,Ne)=>{if(!V.value.node)return;const Oe=lodash.cloneDeep(V.value.node);if($e==="projectPlugin"){const{id:kt,name:Lt,alias:Cn,meta_url:hn,api_key:jt="incident",version:vn="v2.0.0",category:Et,category_id:wn}=Ne;Oe.component={code:"uniform_api",data:{},version:vn,api_meta:{id:kt,name:Lt,alias:Cn||Lt,meta_url:hn,api_key:jt,category:{id:wn,name:Et}}},Oe.name=Cn}else{const{code:kt,data:Lt,version:Cn,name:hn}=Ne;Oe.component={code:kt,data:Lt,version:Cn},Oe.name=hn}$.value={show:!0,node:Oe},V.value.show=!1},Ie=($e,Ne)=>{const Oe={...r.pipelineTree.activities},kt=[...r.pipelineTree.location],Lt=kt.findIndex(Cn=>Cn.id===$e.id);if(Oe[$e.id]=$e,Lt>-1){const Cn=kt[Lt];Cn.name=$e.name,kt[Lt]=Cn}$.value={show:!1,node:null},Ue({...r.pipelineTree,activities:Oe,location:kt,constants:Ne}),setTimeout(()=>{y.value.updateNodeData($e.id,$e)},10)},Ue=$e=>{i("change",$e)};return t({updateNodeInputParams:$e=>{g.value&&$.value.show&&g.value.updateNodeInputParams?.($e)}}),($e,Ne)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$4,[vue.createVNode(vue.unref(BkFlowCanvas),{ref_key:"bkflowCanvasRef",ref:y,editable:r.mode==="edit","pipeline-tree":r.pipelineTree,"hide-tool":r.thumbnail,"default-zoom":r.defaultZoom,onNodeClick:L,onEdgeLabelClick:re,onUpdatePipelineTree:Ue,onDeleteEdge:Ve},{customNode:vue.withCtx(()=>[vue.createVNode(CustomNode,{editable:r.mode==="edit","plugin-group-list":r.pluginGroupList,onAddNode:ie,onAddPlugin:oe,onAddNodeAndSelectPlugin:z,onDeleteBtnClick:ze,onCopyNodeClick:j,onCopyNodeAndInsertClick:le,onDetachEdgesClick:xe},null,8,["editable","plugin-group-list"])]),_:1},8,["editable","pipeline-tree","hide-tool","default-zoom"]),!r.thumbnail&&k.value.condition?(vue.openBlock(),vue.createBlock(BranchConditionPanel,{key:0,show:k.value.show,"onUpdate:show":Ne[0]||(Ne[0]=Oe=>k.value.show=Oe),condition:k.value.condition,"has-default-branch":k.value.hasDefaultBranch,"is-default":k.value.isDefault,editable:r.mode==="edit",onConfirm:qe},null,8,["show","condition","has-default-branch","is-default","editable"])):vue.createCommentVNode("",!0),!r.thumbnail&&$.value.node?(vue.openBlock(),vue.createBlock(NodeConfigPanel,{key:1,ref_key:"nodeConfigPanelRef",ref:g,show:$.value.show,"onUpdate:show":Ne[1]||(Ne[1]=Oe=>$.value.show=Oe),node:$.value.node,editable:r.mode==="edit","system-variables":r.systemVariables,constants:r.pipelineTree.constants,onSelectPlugin:At,onConfirm:Ie},{inputParams:vue.withCtx(Oe=>[vue.renderSlot($e.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(Oe)),void 0,!0)]),_:3},8,["show","node","editable","system-variables","constants"])):vue.createCommentVNode("",!0),r.thumbnail?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(PluginSelectPanel,{key:2,show:V.value.show,"onUpdate:show":Ne[2]||(Ne[2]=Oe=>V.value.show=Oe),"flow-id":r.flowId,actived:V.value.actived,"bkflow-tag":V.value.bkflowTag,"plugin-group-list":r.pluginGroupList,onSelect:Fe},null,8,["show","flow-id","actived","bkflow-tag","plugin-group-list"]))]))}}),FlowCanvas=_export_sfc$1(_sfc_main$4,[["__scopeId","data-v-bfe93680"]]),_hoisted_1$3={class:"execute-flow-slider"},_hoisted_2$3={class:"flow-name-wrapper"},_hoisted_3$3={class:"form-params-wrapper"},_hoisted_4$3={key:0,class:"sideslider-footer-buttons"},_sfc_main$3=vue.defineComponent({__name:"execute",props:{flowId:{},show:{type:Boolean},editable:{type:Boolean,default:!0},showFlowEntry:{type:Boolean,default:!1},apiConfig:{},onExecuteSuccess:{},bkflowSaasUrl:{}},emits:["confirm","close","update:show","before-close"],setup(e,{emit:t}){const n=e,r=t,i=provideFlowApiConfig(n.apiConfig);setContext({},n.bkflowSaasUrl);const y={name:[{required:!0,message:"请输入任务名称",trigger:"blur"}]},g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.shallowRef([]),V=vue.ref({}),L=vue.shallowRef([]),re=vue.ref(),ie=vue.ref(),oe=vue.ref({name:""}),z=vue.shallowRef(!1);vue.watch(()=>n.show,ue=>{ue&&j()});const j=async()=>{k.value=!0;const ue=await i.fetchFlowDetail(n.flowId);g.value=ue,oe.value.name=`${ue.name}_${dayjs().format("YYYYMMDDHHmmss")}`;const de=[],_e={};Object.values(ue.pipeline_tree.constants).forEach(xe=>{if(typeof xe!="object"||xe===null)return;const ze=xe;ze.source_type!=="system"&&ze.show_type==="show"&&de.push(ze),"value"in ze&&(_e[ze.key]=ze.value)}),L.value=de,V.value=_e,await le(),k.value=!1},le=async()=>{if(!g.value?.pipeline_tree?.constants){$.value=[];return}if(!("fetchBkFlowInnerPluginDetail"in i)||typeof i.fetchBkFlowInnerPluginDetail!="function"){console.warn("fetchBkFlowInnerPluginDetail API is not available"),$.value=[];return}try{const ue=await getInputFormsFromConstants(i,g.value.pipeline_tree.constants);$.value=ue}catch(ue){console.error("Failed to get input forms from constants:",ue),$.value=[]}},Ce=()=>{n.onExecuteSuccess},he=ue=>{V.value=lodash.cloneDeep(ue)},pe=async()=>{if(!i.createFlowTask||!i.executeFlowTask){console.warn("createFlowTask or executeFlowTask is not provided in api");return}const[ue,de]=await Promise.all([re.value?.validate(),Promise.resolve(ie.value&&typeof ie.value.validate=="function"?ie.value.validate():!0)]);if(!(!ue||!de))try{z.value=!0;const _e=await i.createFlowTask({template_id:n.flowId,creator:"admin",name:oe.value.name,description:"",constants:V.value});_e.data.id&&(await i.executeFlowTask({action:"start",task_id:_e.data.id,resource_type:"TASK",resource_id:_e.data.id,permission_type:"OPERATE"}),BkMessage({theme:"success",message:"执行成功"}),r("confirm"),ae(),n.onExecuteSuccess&&n.onExecuteSuccess(_e.data.id,_e.data.template_id))}catch(_e){console.error(_e)}finally{z.value=!1}},ae=()=>{r("before-close"),L.value=[],V.value={},r("close"),r("update:show",!1)};return(ue,de)=>{const _e=vue.resolveComponent("bk-input"),xe=vue.resolveComponent("bk-form-item"),ze=vue.resolveComponent("bk-form"),Ve=vue.resolveComponent("bk-button"),qe=vue.resolveComponent("bk-sideslider"),At=vue.resolveDirective("bk-tooltips"),Fe=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(qe,{title:"执行流程","is-show":n.show,width:700,"quick-close":!1,"esc-close":!1,"before-close":ae},{footer:vue.withCtx(()=>[k.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$3,[vue.createVNode(Ve,{theme:"primary",loading:z.value,onClick:pe},{default:vue.withCtx(()=>[...de[1]||(de[1]=[vue.createTextVNode("确定",-1)])]),_:1},8,["loading"]),vue.createVNode(Ve,{onClick:ae},{default:vue.withCtx(()=>[...de[2]||(de[2]=[vue.createTextVNode("取消",-1)])]),_:1})]))]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$3,[vue.createVNode(ze,{ref_key:"formRef",ref:re,"form-type":"vertical",model:oe.value,rules:y,"label-width":100},{default:vue.withCtx(()=>[e.showFlowEntry?(vue.openBlock(),vue.createBlock(xe,{key:0,label:"排障流程",required:""},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$3,[vue.createVNode(_e,{readonly:"","model-value":g.value?.name},null,8,["model-value"]),vue.withDirectives(vue.createVNode(vue.unref(icon.Share),{class:"link-icon",onClick:Ce},null,512),[[At,"查看排障流程",void 0,{top:!0}]])])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(xe,{label:"任务名称",property:"name",required:""},{default:vue.withCtx(()=>[vue.createVNode(_e,{modelValue:oe.value.name,"onUpdate:modelValue":de[0]||(de[0]=Ie=>oe.value.name=Ie),placeholder:"请输入任务名称","show-word-limit":"",maxlength:100},null,8,["modelValue"])]),_:1}),vue.createVNode(xe,{label:"请求参数",property:"inputParams",description:"流程的入参"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$3,[$.value.length>0?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:ie,scheme:$.value,editable:n.editable,"form-option":{showRequired:!0,showGroup:!0,showLabel:!1,showHook:!1,showDesc:!0,formEdit:n.editable},"form-data":V.value,onChange:he},null,8,["scheme","editable","form-option","form-data"])):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"暂无参数"}))])]),_:1})]),_:1},8,["model"])])),[[Fe,{loading:k.value}]])]),_:1},8,["is-show"])}}}),FlowExecute=_export_sfc$1(_sfc_main$3,[["__scopeId","data-v-0b70470a"]]),execute=Object.freeze(Object.defineProperty({__proto__:null,default:FlowExecute},Symbol.toStringTag,{value:"Module"})),_hoisted_1$2={key:0,class:"operate-area"},_hoisted_2$2={key:0,class:"operate-btns"},_hoisted_3$2={class:"flow-view-page-content"},_hoisted_4$2={key:1,class:"flow-view-thumbnail"},_sfc_main$2=vue.defineComponent({__name:"view",props:{flowId:{},apiConfig:{},permissions:{default:()=>({canEdit:!0})},onEdit:{},onBack:{},thumbnail:{type:Boolean,default:!1},enableVersion:{type:Boolean,default:!1},flowVersion:{},showHeaderActions:{type:Boolean,default:!0},defaultZoom:{default:1},bkflowSaasUrl:{}},emits:["edit","back"],setup(e,{emit:t}){const n=vue.useSlots(),r=e,i=provideFlowApiConfig(r.apiConfig),y=t;setContext({},r.bkflowSaasUrl);const g=vue.shallowRef(!1),k=vue.shallowRef(null),$=vue.shallowRef(!0),V=vue.shallowRef({}),L=vue.shallowRef(!0),re=vue.shallowRef([]),ie=vue.shallowRef(!1);vue.onMounted(()=>{oe(),z(),j()});const oe=async()=>{$.value=!0;try{let pe=await i.fetchFlowDetail(String(r.flowId));if(r.enableVersion)if(r.flowVersion){const ae=await i.fetchFlowDetailByVersion(String(r.flowId),r.flowVersion);pe={...pe,name:ae.name,pipeline_tree:ae.pipeline_tree}}else{const ae=await i.fetchFlowDraftDetail(String(r.flowId));pe={...pe,pipeline_tree:ae.pipeline_tree}}k.value=pe}catch(pe){console.error(pe)}finally{$.value=!1}},z=async()=>{L.value=!0;try{const pe=await i.fetchSpaceFlowConfig(String(r.flowId));V.value=pe}catch(pe){console.error(pe)}finally{L.value=!1}},j=async()=>{ie.value=!0;try{const pe=await i.fetchSystemVariables(String(r.flowId));re.value=pe}catch(pe){console.error(pe)}finally{ie.value=!1}},le=()=>{typeof r.onBack=="function"?r.onBack():y("back")},Ce=()=>{typeof r.onEdit=="function"?r.onEdit():y("edit")},he=(pe,ae)=>{};return(pe,ae)=>{const ue=vue.resolveComponent("bk-button"),de=vue.resolveDirective("bk-tooltips"),_e=vue.resolveDirective("bkloading");return r.thumbnail?vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[k.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,mode:"view","flow-id":e.flowId,"pipeline-tree":k.value.pipeline_tree,"space-flow-config":V.value,"system-variables":re.value,thumbnail:!0,"default-zoom":r.defaultZoom},{inputParams:vue.withCtx(xe=>[vue.renderSlot(pe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(xe)),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","system-variables","default-zoom"])):vue.createCommentVNode("",!0)])),[[_e,{loading:$.value||L.value}]]):(vue.openBlock(),vue.createBlock(ContainerLayout,{key:0,title:"查看流程",desc:k.value?.name,"show-back-icon":!0,onBack:le},vue.createSlots({extend:vue.withCtx(()=>[k.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$2,[vue.createVNode(FlowInfoSliders,{editable:!1,"flow-data":k.value,"system-variables":re.value,"fetch-user-api":vue.unref(i).fetchUserApi},null,8,["flow-data","system-variables","fetch-user-api"]),e.showHeaderActions?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$2,[vue.createVNode(ue,{theme:"primary",class:vue.normalizeClass([e.permissions.canEdit?"":"is-disabled"]),onClick:Ce},{default:vue.withCtx(()=>[...ae[2]||(ae[2]=[vue.createTextVNode(" 编辑 ",-1)])]),_:1},8,["class"]),vue.createVNode(ue,{theme:"primary",outline:"",onClick:ae[0]||(ae[0]=xe=>g.value=!0)},{default:vue.withCtx(()=>[...ae[3]||(ae[3]=[vue.createTextVNode("执行流程",-1)])]),_:1}),vue.withDirectives((vue.openBlock(),vue.createBlock(ue,{disabled:!0},{default:vue.withCtx(()=>[...ae[4]||(ae[4]=[vue.createTextVNode("调试",-1)])]),_:1})),[[de,"功能开发中"]])])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_3$2,[k.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,mode:"view","flow-id":e.flowId,"pipeline-tree":k.value.pipeline_tree,"space-flow-config":V.value,"system-variables":re.value,thumbnail:r.thumbnail,"default-zoom":r.defaultZoom},{inputParams:vue.withCtx(xe=>[vue.renderSlot(pe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(xe)),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","system-variables","thumbnail","default-zoom"])):vue.createCommentVNode("",!0)])),[[_e,{loading:$.value||L.value}]]),k.value?(vue.openBlock(),vue.createBlock(FlowExecute,{key:0,"flow-id":e.flowId,show:g.value,"api-config":r.apiConfig,"bkflow-saas-url":r.bkflowSaasUrl,onClose:ae[1]||(ae[1]=xe=>g.value=!1),onConfirm:he},null,8,["flow-id","show","api-config","bkflow-saas-url"])):vue.createCommentVNode("",!0)]),_:2},[vue.unref(n).header?{name:"header",fn:vue.withCtx(()=>[vue.renderSlot(pe.$slots,"header",{},void 0,!0)]),key:"0"}:void 0]),1032,["desc"]))}}}),view=_export_sfc$1(_sfc_main$2,[["__scopeId","data-v-90c77f14"]]),view$1=Object.freeze(Object.defineProperty({__proto__:null,default:view},Symbol.toStringTag,{value:"Module"})),_hoisted_1$1={class:"execute-flow-slider"},_hoisted_2$1={class:"flow-name-wrapper"},_hoisted_3$1={class:"form-params-wrapper"},_hoisted_4$1={key:0,class:"sideslider-footer-buttons"},_sfc_main$1=vue.defineComponent({__name:"debug",props:{flowId:{},show:{type:Boolean},editable:{type:Boolean,default:!0},showFlowEntry:{type:Boolean,default:!1},apiConfig:{},onConfirm:{},useCustomConfirm:{type:Boolean,default:!1},onExecuteSuccess:{},bkflowSaasUrl:{}},emits:["confirm","close","update:show","before-close"],setup(e,{emit:t}){const n=e,r=t,i=provideFlowApiConfig(n.apiConfig);setContext({},n.bkflowSaasUrl);const y={name:[{required:!0,message:"请输入任务名称",trigger:"blur"}]},g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.shallowRef([]),V=vue.ref({}),L=vue.shallowRef([]),re=vue.ref(),ie=vue.ref(),oe=vue.ref({name:""}),z=vue.shallowRef(!1);vue.watch(()=>n.show,de=>{de&&j()});const j=async()=>{k.value=!0;const de=await i.fetchFlowDetail(n.flowId);g.value=de,oe.value.name=`${de.name}_${dayjs().format("YYYYMMDDHHmmss")}`;const _e=[],xe={};Object.values(de.pipeline_tree.constants).forEach(ze=>{if(typeof ze!="object"||ze===null)return;const Ve=ze;Ve.source_type!=="system"&&Ve.show_type==="show"&&_e.push(Ve),"value"in Ve&&(xe[Ve.key]=Ve.value)}),L.value=_e,V.value=xe,await le(),k.value=!1},le=async()=>{if(!g.value?.pipeline_tree?.constants){$.value=[];return}if(!("fetchBkFlowInnerPluginDetail"in i)||typeof i.fetchBkFlowInnerPluginDetail!="function"){console.warn("fetchBkFlowInnerPluginDetail API is not available"),$.value=[];return}try{const de=await getInputFormsFromConstants(i,g.value.pipeline_tree.constants);$.value=de}catch(de){console.error("Failed to get input forms from constants:",de),$.value=[]}},Ce=()=>{n.onExecuteSuccess},he=de=>{V.value=lodash.cloneDeep(de)},pe=async()=>{if(!i.createFlowTask||!i.executeFlowTask){console.warn("createFlowTask or executeFlowTask is not provided in api");return}try{z.value=!0;const de=await i.createFlowTask({template_id:n.flowId,creator:"admin",name:oe.value.name,description:"",constants:V.value});de.data.id&&(await i.executeFlowTask({action:"start",task_id:de.data.id,resource_type:"TASK",resource_id:de.data.id,permission_type:"OPERATE"}),BkMessage({theme:"success",message:"执行成功"}),r("confirm",de.data.id,de.data.template_id),ue(),n.onExecuteSuccess&&n.onExecuteSuccess(de.data.id,de.data.template_id))}catch(de){console.error(de)}finally{z.value=!1}},ae=async()=>{const[de,_e]=await Promise.all([re.value?.validate(),Promise.resolve(ie.value&&typeof ie.value.validate=="function"?ie.value.validate():!0)]);if(!de||!_e)return;const xe={name:oe.value.name,variablesValue:V.value};if(n.useCustomConfirm&&n.onConfirm)try{z.value=!0,await n.onConfirm(xe),r("confirm"),ue()}catch(ze){console.error(ze)}finally{z.value=!1}else await pe(),n.onConfirm&&await n.onConfirm(xe)},ue=()=>{r("before-close"),L.value=[],V.value={},r("close"),r("update:show",!1)};return(de,_e)=>{const xe=vue.resolveComponent("bk-input"),ze=vue.resolveComponent("bk-form-item"),Ve=vue.resolveComponent("bk-form"),qe=vue.resolveComponent("bk-button"),At=vue.resolveComponent("bk-sideslider"),Fe=vue.resolveDirective("bk-tooltips"),Ie=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(At,{title:"调试流程","is-show":n.show,width:700,"quick-close":!1,"esc-close":!1,"before-close":ue},{footer:vue.withCtx(()=>[k.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$1,[vue.createVNode(qe,{theme:"primary",loading:z.value,onClick:ae},{default:vue.withCtx(()=>[..._e[1]||(_e[1]=[vue.createTextVNode("确定",-1)])]),_:1},8,["loading"]),vue.createVNode(qe,{onClick:ue},{default:vue.withCtx(()=>[..._e[2]||(_e[2]=[vue.createTextVNode("取消",-1)])]),_:1})]))]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1,[vue.createVNode(Ve,{ref_key:"formRef",ref:re,"form-type":"vertical",model:oe.value,rules:y,"label-width":100},{default:vue.withCtx(()=>[n.showFlowEntry?(vue.openBlock(),vue.createBlock(ze,{key:0,label:"排障流程",required:""},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$1,[vue.createVNode(xe,{readonly:"","model-value":g.value?.name},null,8,["model-value"]),vue.withDirectives(vue.createVNode(vue.unref(icon.Share),{class:"link-icon",onClick:Ce},null,512),[[Fe,"查看排障流程",void 0,{top:!0}]])])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(ze,{label:"任务名称",property:"name",required:""},{default:vue.withCtx(()=>[vue.createVNode(xe,{modelValue:oe.value.name,"onUpdate:modelValue":_e[0]||(_e[0]=Ue=>oe.value.name=Ue),placeholder:"请输入任务名称","show-word-limit":"",maxlength:100},null,8,["modelValue"])]),_:1}),vue.createVNode(ze,{label:"请求参数",property:"inputParams",description:"流程的入参"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$1,[$.value.length>0?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:ie,scheme:$.value,editable:n.editable,"form-option":{showRequired:!0,showGroup:!0,showLabel:!1,showHook:!1,showDesc:!0,formEdit:n.editable},"form-data":V.value,onChange:he},null,8,["scheme","editable","form-option","form-data"])):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"暂无参数"}))])]),_:1}),vue.renderSlot(de.$slots,"custom-form-content",{formData:oe.value,variablesValue:V.value},void 0,!0)]),_:3},8,["model"])])),[[Ie,{loading:k.value}]])]),_:3},8,["is-show"])}}}),FlowDebug=_export_sfc$1(_sfc_main$1,[["__scopeId","data-v-2796a48a"]]),debug=Object.freeze(Object.defineProperty({__proto__:null,default:FlowDebug},Symbol.toStringTag,{value:"Module"})),_hoisted_1={key:0,class:"operate-area"},_hoisted_2={class:"flow-actions"},_hoisted_3={class:"operate-btns"},_hoisted_4={class:"flow-edit-page-content"},_sfc_main=vue.defineComponent({__name:"edit",props:{flowId:{},apiConfig:{},permissions:{default:()=>({canSave:!0})},enableDebug:{type:Boolean,default:!1},onDebugConfirm:{},useCustomDebugConfirm:{type:Boolean,default:!1},agentSelectPanelConfig:{},onSave:{},onSaveSuccess:{},onBack:{},onBeforeLeave:{},enableVersion:{type:Boolean,default:!1},flowVersion:{},defaultZoom:{default:1},bkflowSaasUrl:{}},emits:["save","saveSuccess","back","debugBeforeClose"],setup(e,{expose:t,emit:n}){const r=e,i=provideFlowApiConfig(r.apiConfig);provideAgentSelectPanelConfig(r.agentSelectPanelConfig||{});const y=n;setContext({},r.bkflowSaasUrl);const g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.ref(),V=vue.ref(),L=vue.shallowRef(!0),re=vue.shallowRef({}),ie=vue.shallowRef(!1),oe=vue.shallowRef([]),z=vue.shallowRef(!1),j=vue.shallowRef([]),le=vue.shallowRef(!1),Ce=vue.shallowRef(!1),he=vue.ref(!1),pe=vue.computed(()=>String(r.flowId)),ae=vue.computed(()=>k.value||z.value||L.value);vue.onMounted(()=>{ue(),de(),_e(),xe()});const ue=async()=>{k.value=!0;try{let Oe=await i.fetchFlowDetail(pe.value);if(r.enableVersion)if(r.flowVersion){const kt=await i.fetchFlowDetailByVersion(pe.value,r.flowVersion);Oe={...Oe,name:kt.name,pipeline_tree:kt.pipeline_tree}}else{const kt=await i.fetchFlowDraftDetail(pe.value);Oe={...Oe,pipeline_tree:kt.pipeline_tree}}g.value=Oe}catch(Oe){console.error(Oe)}finally{k.value=!1}},de=async()=>{L.value=!0;try{const Oe=await i.fetchSpaceFlowConfig(pe.value);re.value=Oe}catch(Oe){console.error(Oe)}finally{L.value=!1}},_e=async()=>{le.value=!0;try{const Oe=await i.fetchSystemVariables(pe.value);j.value=Oe}catch(Oe){console.error(Oe)}finally{le.value=!1}},xe=async()=>{z.value=!0;try{const Oe=await i.fetchAllPluginGroups();oe.value=Oe}catch(Oe){console.error(Oe)}finally{z.value=!1}},ze=()=>{r.onBack?r.onBack():y("back")},Ve=()=>{$.value?.openBasicSetting()},qe=Oe=>{g.value=Oe},At=Oe=>{g.value={...g.value,pipeline_tree:Oe},Ce.value=!0},Fe=Oe=>{V.value&&V.value.updateNodeInputParams?.(Oe)},Ie=async()=>{if(Ce.value){if(!r.permissions.canSave){bkuiVue.Message({theme:"warning",message:"您没有保存权限,无法在未保存的情况下进行调试"});return}return new Promise(kt=>{lib.InfoBox({title:"确认调试?",content:"流程已修改,调试前需要先保存流程。是否保存并继续调试?",confirmText:"保存并调试",cancelText:"取消",width:400,headerAlign:"center",footerAlign:"center",onConfirm:async()=>{const Lt=validatePipelineTree(g.value?.pipeline_tree);if(!Lt.valid){bkuiVue.Message({theme:"error",message:Lt.message}),kt();return}try{await Ne(),he.value=!0}catch(Cn){console.error("保存失败:",Cn),bkuiVue.Message({theme:"error",message:"保存失败,请重试"})}finally{kt()}},onCancel:()=>{kt()}})})}const Oe=validatePipelineTree(g.value?.pipeline_tree);Oe.valid?he.value=!0:bkuiVue.Message({theme:"error",message:Oe.message})},Ue=()=>{y("debugBeforeClose")},Dt=()=>{he.value=!1},$e=()=>{if(!r.permissions.canSave)return;const Oe=validatePipelineTree(g.value?.pipeline_tree);Oe.valid?Ne():bkuiVue.Message({theme:"error",message:Oe.message})},Ne=async()=>{const{name:Oe,desc:kt,notify_config:Lt,pipeline_tree:Cn,triggers:hn}=g.value,jt={name:Oe,desc:kt,notify_config:Lt,pipeline_tree:Cn,triggers:hn};try{ie.value=!0,await i.saveFlow(pe.value,jt),Ce.value=!1,bkuiVue.Message({theme:"success",message:"保存成功"}),r.onSave&&r.onSave(g.value),r.onSaveSuccess&&r.onSaveSuccess(),y("save",g.value),y("saveSuccess")}catch(vn){console.error(vn)}finally{ie.value=!1}};return t({isFlowEdited:vue.computed(()=>Ce.value),updateNodeInputParams:Fe}),(Oe,kt)=>{const Lt=vue.resolveComponent("bk-button"),Cn=vue.resolveDirective("bk-tooltips"),hn=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(ContainerLayout,{title:"编辑流程",desc:g.value?.name,"show-back-icon":!0,"show-edit-icon":!0,onBack:ze,onEdit:Ve},{header:vue.withCtx(()=>[vue.renderSlot(Oe.$slots,"header",{},void 0,!0)]),extend:vue.withCtx(()=>[g.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1,[vue.createElementVNode("div",_hoisted_2,[vue.createVNode(FlowInfoSliders,{ref_key:"flowInfoSlidersRef",ref:$,"flow-data":g.value,"system-variables":j.value,"fetch-user-api":vue.unref(i).fetchUserApi,onChange:qe},null,8,["flow-data","system-variables","fetch-user-api"]),kt[4]||(kt[4]=vue.createElementVNode("div",{class:"split-line"},null,-1)),vue.createElementVNode("div",_hoisted_3,[vue.createVNode(Lt,{class:vue.normalizeClass([e.permissions.canSave?"":"is-disabled"]),theme:"primary",loading:ie.value,onClick:$e},{default:vue.withCtx(()=>[...kt[1]||(kt[1]=[vue.createTextVNode(" 保存 ",-1)])]),_:1},8,["class","loading"]),e.enableDebug?(vue.openBlock(),vue.createBlock(Lt,{key:0,onClick:Ie},{default:vue.withCtx(()=>[...kt[2]||(kt[2]=[vue.createTextVNode("调试",-1)])]),_:1})):vue.withDirectives((vue.openBlock(),vue.createBlock(Lt,{key:1,disabled:!0},{default:vue.withCtx(()=>[...kt[3]||(kt[3]=[vue.createTextVNode("调试",-1)])]),_:1})),[[Cn,"功能开发中"]])])])])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_4,[!ae.value&&g.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,ref_key:"flowCanvasRef",ref:V,mode:"edit","flow-id":pe.value,"pipeline-tree":g.value.pipeline_tree,"space-flow-config":re.value,"plugin-group-list":oe.value,"system-variables":j.value,"default-zoom":r.defaultZoom,onChange:At},{inputParams:vue.withCtx(jt=>[vue.renderSlot(Oe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps({...jt,updateNodeInputParams:Fe})),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","plugin-group-list","system-variables","default-zoom"])):vue.createCommentVNode("",!0)])),[[hn,{loading:ae.value}]]),g.value?(vue.openBlock(),vue.createBlock(FlowDebug,{key:0,"flow-id":pe.value,show:he.value,"api-config":r.apiConfig,"bkflow-saas-url":r.bkflowSaasUrl,"on-confirm":r.onDebugConfirm,"use-custom-confirm":r.useCustomDebugConfirm,onClose:Dt,"onUpdate:show":kt[0]||(kt[0]=jt=>he.value=jt),onBeforeClose:Ue},{"custom-form-content":vue.withCtx(jt=>[vue.renderSlot(Oe.$slots,"debugCustomFormContent",vue.normalizeProps(vue.guardReactiveProps(jt)),void 0,!0)]),_:3},8,["flow-id","show","api-config","bkflow-saas-url","on-confirm","use-custom-confirm"])):vue.createCommentVNode("",!0)]),_:3},8,["desc"])}}}),edit=_export_sfc$1(_sfc_main,[["__scopeId","data-v-527e4980"]]),edit$1=Object.freeze(Object.defineProperty({__proto__:null,default:edit},Symbol.toStringTag,{value:"Module"})),index={FlowView:()=>Promise.resolve().then(()=>view$1),FlowEdit:()=>Promise.resolve().then(()=>edit$1),FlowExecute:()=>Promise.resolve().then(()=>execute),FlowDebug:()=>Promise.resolve().then(()=>debug)};exports.FlowDebug=FlowDebug;exports.FlowEdit=edit;exports.FlowExecute=FlowExecute;exports.FlowView=view;exports.PLUGIN_GROUP_ICON_MAP=PLUGIN_GROUP_ICON_MAP;exports.default=index;exports.getUniformApiPluginFormValue=getUniformApiPluginFormValue$1;exports.getVariableDefaultConfig=getVariableDefaultConfig;exports.parentClsContains=parentClsContains;exports.provideAgentSelectPanelConfig=provideAgentSelectPanelConfig;exports.provideFlowApiConfig=provideFlowApiConfig;exports.useAgentSelectPanelConfig=useAgentSelectPanelConfig;exports.useFlowApi=useFlowApi;exports.useFlowApiConfig=useFlowApiConfig;exports.useFlowEditApiConfig=useFlowEditApiConfig;exports.useFlowViewApiConfig=useFlowViewApiConfig;exports.uuid=uuid;exports.validatePipelineTree=validatePipelineTree;
64
+ `),Ne=$e.length-1,Oe=parseInt(getComputedStyle(Ue).lineHeight)||20,kt=document.createElement("canvas").getContext("2d");kt?(kt.font=getComputedStyle(Ue).font,Ie=kt.measureText($e[Ne]||"").width):Ie=($e[Ne]||"").length*8,Fe=Ne*Oe+Oe}else{const Ue=Ve,Dt=Ue.value.substring(0,Ue.selectionStart||0),$e=document.createElement("canvas").getContext("2d");$e?($e.font=getComputedStyle(Ue).font,Ie=$e.measureText(Dt).width):Ie=Dt.length*8,Fe=Ue.offsetHeight}L.value={top:Fe+(qe?8:0),left:Ie+(qe?8:0)}},le=()=>{if(!g.value||!i.value)return;const Ve=g.value.getBoundingClientRect(),qe=i.value.getBoundingClientRect(),At=y.value?.$el?.querySelector("input, textarea");if(!At)return;const Fe=window.innerWidth,Ie=Ve.width,Ue=At.offsetWidth;let Dt=L.value.left;const $e=Ue;if(Dt+Ie>$e&&(Dt=$e-Ie,Dt<0&&(Dt=0)),qe.left+Dt+Ie>Fe){const Lt=Fe-Ie-qe.left;Lt>=0?Dt=Lt:Dt=0}qe.left+Dt<0&&(Dt=0),L.value={...L.value,left:Dt}},Ce=()=>{const Ve=y.value?.$el?.querySelector("input, textarea");if(!Ve)return;const qe=Ve.selectionStart||0,At=k.value.substring(0,qe),Fe=At.lastIndexOf("$");if(Fe===-1){$.value=!1;return}const Ie=At.substring(Fe+1);if(Ie.includes("}")){$.value=!1;return}let Ue=Ie;Ue.startsWith("{")&&(Ue=Ue.substring(1)),re.value=Ue,j(),$.value=!0,V.value=0,setTimeout(()=>{le()},0)},he=()=>{r("update:modelValue",k.value),r("change",k.value),vue.nextTick(()=>{Ce()})},pe=()=>{vue.nextTick(()=>{Ce()})},ae=Ve=>{setTimeout(()=>{const qe=Ve.relatedTarget;g.value?.contains(qe)||($.value=!1)},200),r("blur",Ve)},ue=Ve=>{const qe=y.value?.$el?.querySelector("input, textarea");if(!qe)return;const At=qe.selectionStart||0,Fe=k.value,Ie=Fe.substring(0,At),Ue=Fe.substring(At),Dt=Ie.lastIndexOf("$");if(Dt===-1)return;let $e=z(Ve);$e.startsWith("${")&&$e.endsWith("}")&&($e=$e.slice(2,-1));const Ne=Fe.substring(0,Dt)+`\${${$e}}`+Ue;k.value=Ne,r("update:modelValue",Ne),r("change",Ne),$.value=!1,vue.nextTick(()=>{const Oe=Dt+$e.length+3;qe.focus(),qe.setSelectionRange(Oe,Oe)})},de=()=>{vue.nextTick(()=>{const Ve=y.value?.$el?.querySelector("input, textarea");Ve&&(Ve.removeEventListener("keydown",_e),Ve.addEventListener("keydown",_e,!0))})},_e=Ve=>{if(Ve instanceof KeyboardEvent){if($.value&&oe.value.length>0&&(Ve.key==="ArrowDown"||Ve.key==="ArrowUp"||Ve.key==="Enter")){switch(Ve.preventDefault(),Ve.stopPropagation(),Ve.stopImmediatePropagation(),Ve.key){case"ArrowDown":V.value=(V.value+1)%oe.value.length,xe();break;case"ArrowUp":V.value=V.value<=0?oe.value.length-1:V.value-1,xe();break;case"Enter":V.value>=0&&ue(oe.value[V.value]);break}return!1}if(Ve.key==="Escape"&&$.value)return Ve.preventDefault(),Ve.stopPropagation(),Ve.stopImmediatePropagation(),$.value=!1,!1}},xe=()=>{vue.nextTick(()=>{if(!g.value)return;const qe=g.value.querySelectorAll(".dropdown-item:not(.empty)")[V.value];if(qe){const At=g.value,Fe=qe.offsetTop,Ie=qe.offsetHeight,Ue=At.scrollTop,Dt=At.clientHeight;Fe<Ue?At.scrollTop=Fe:Fe+Ie>Ue+Dt&&(At.scrollTop=Fe+Ie-Dt)}})};vue.watch(()=>n.modelValue,Ve=>{Ve!==k.value&&(k.value=Ve)}),vue.watch(()=>$.value,()=>{de()});const ze=Ve=>{i.value&&!i.value.contains(Ve.target)&&g.value&&!g.value.contains(Ve.target)&&($.value=!1)};return vue.onMounted(()=>{document.addEventListener("click",ze),de()}),vue.onBeforeUnmount(()=>{document.removeEventListener("click",ze);const Ve=y.value?.$el?.querySelector("input, textarea");Ve&&Ve.removeEventListener("keydown",_e,!0)}),(Ve,qe)=>{const At=vue.resolveComponent("bk-input");return vue.openBlock(),vue.createElementBlock("div",{ref_key:"containerRef",ref:i,class:"variable-input-wrapper"},[vue.createVNode(At,{ref_key:"inputRef",ref:y,modelValue:k.value,"onUpdate:modelValue":qe[0]||(qe[0]=Fe=>k.value=Fe),type:e.type,placeholder:e.placeholder,disabled:e.disabled,rows:e.rows,resize:e.resize,onInput:he,onFocus:pe,onBlur:ae},null,8,["modelValue","type","placeholder","disabled","rows","resize"]),$.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:g,class:"variable-dropdown",style:vue.normalizeStyle(ie.value)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(oe.value,(Fe,Ie)=>(vue.openBlock(),vue.createElementBlock("div",{key:Fe.key,class:vue.normalizeClass(["dropdown-item",{active:Ie===V.value}]),onMousedown:vue.withModifiers(Ue=>ue(Fe),["prevent"])},[vue.createElementVNode("div",_hoisted_2$g,[vue.createElementVNode("span",_hoisted_3$c,vue.toDisplayString(Fe.key),1),vue.createElementVNode("span",_hoisted_4$c,vue.toDisplayString(Fe.name),1)])],42,_hoisted_1$s))),128)),oe.value.length===0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$8,"无匹配项")):vue.createCommentVNode("",!0)],4)):vue.createCommentVNode("",!0)],512)}}}),VariableInput=_export_sfc$1(_sfc_main$u,[["__scopeId","data-v-ccd4bdfb"]]),_hoisted_1$r={class:"input-field-form"},_sfc_main$t=vue.defineComponent({__name:"input",props:{modelValue:{default:""},config:{},disabled:{type:Boolean,default:!1},fullVariableList:{default:()=>[]}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref(n.modelValue),y=vue.computed(()=>{const{type:k,form_type:$=""}=n.config;return $==="textarea"?"textarea":["int","integer","number"].includes(k)?"number":"text"});vue.watch(()=>n.modelValue,k=>{i.value=k});const g=()=>{r("update:modelValue",i.value),r("change",i.value)};return(k,$)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$r,[vue.createVNode(VariableInput,{modelValue:i.value,"onUpdate:modelValue":$[0]||($[0]=V=>i.value=V),type:y.value,rows:5,min:0,precision:0,disabled:n.disabled,options:n.fullVariableList,onBlur:g},null,8,["modelValue","type","disabled","options"])]))}}),InputField=_export_sfc$1(_sfc_main$t,[["__scopeId","data-v-b6b3c278"]]),_sfc_main$s=vue.defineComponent({__name:"switcher",props:{modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=vue.ref(n.modelValue);vue.watch(()=>n.modelValue,g=>{r.value=g});const i=t,y=g=>{i("update:modelValue",g),i("change",g)};return(g,k)=>{const $=vue.resolveComponent("bk-switcher");return vue.openBlock(),vue.createBlock($,{"model-value":e.modelValue,theme:"primary",size:"small",disabled:e.disabled,onChange:y},null,8,["model-value","disabled"])}}}),_hoisted_1$q={class:"code-editor"},_sfc_main$r=vue.defineComponent({__name:"code",props:{modelValue:{default:""},language:{default:"json"},theme:{default:"vs-dark"},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change","blur","save"],setup(e,{emit:t}){setupMonacoEnvironment();const n={language:"json",theme:"vs-dark",automaticLayout:!0,minimap:{enabled:!1},wordWrap:"on",wrappingIndent:"same"},r=e,i=t,y=vue.ref(),g=vue.shallowRef();vue.watch(()=>r.modelValue,V=>{const L=g.value?.getValue();V!==L&&g.value?.setValue(V)}),vue.watch(()=>r.disabled,V=>{g.value&&g.value.updateOptions({...n,readOnly:V})}),vue.onMounted(()=>{k()}),vue.onBeforeUnmount(()=>{g.value&&g.value.dispose()});const k=()=>{g.value=monaco__namespace.editor.create(y.value,{...n,readOnly:r.disabled,value:r.modelValue,language:r.language});const V=g.value.getModel();V&&(V.setEOL(0),V.onDidChangeContent(()=>{const L=g.value?.getValue();$(L)})),g.value.onDidBlurEditorText(()=>{i("blur")})},$=V=>{i("update:modelValue",V),i("change",V)};return(V,L)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$q,[vue.createElementVNode("div",{ref_key:"monacoContainerRef",ref:y,class:"editor-instance-container"},null,512)]))}}),CodeField=_export_sfc$1(_sfc_main$r,[["__scopeId","data-v-8534e38a"]]),_hoisted_1$p={class:"bkflow-plugin-uniform-api-form"},_sfc_main$q=vue.defineComponent({__name:"index",props:{inputData:{default:()=>({})},inputs:{default:()=>[]},editable:{type:Boolean,default:!0},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref({}),k=vue.ref({});vue.watch(()=>r.inputData,()=>{Object.keys(r.inputData).forEach(ie=>{g.value[ie]=r.inputData[ie].value})},{immediate:!0}),vue.watch(()=>r.inputs,()=>{r.inputs.forEach(ie=>{ie.required?k.value[ie.key]=[{required:!0,message:"必填项",trigger:"blur"}]:(ie.type==="json"||ie.form_type==="json")&&(k.value[ie.key]=[{validator:oe=>{if(oe.trim().length===0)return!0;try{return JSON.parse(oe),!0}catch{return!1}},message:"请输入正确的 JSON 格式数据",trigger:"blur"}])})},{immediate:!0});const $=ie=>{const{type:oe,form_type:z=""}=ie;if(z){if(["textarea","input"].includes(z))return InputField;if(["json"].includes(z))return CodeField}else{if(["string","int","integer","number"].includes(oe))return InputField;if(["boolean","bool"].includes(oe))return _sfc_main$s;if(["json","dict"].includes(oe))return CodeField}return vue.h("div","暂不支持该类型")},V=(ie,oe)=>{g.value[ie]=oe,re()},L=async()=>y.value.validate().then(()=>!0).catch(()=>!1),re=()=>{const ie={...r.inputData};Object.keys(g.value).forEach(oe=>{ie[oe]={value:g.value[oe],hook:!1,need_render:!0}}),i("change",ie)};return t({validate:L}),(ie,oe)=>{const z=vue.resolveComponent("bk-form-item"),j=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$p,[vue.createVNode(j,{ref_key:"formRef",ref:y,rules:k.value,model:g.value,"label-width":94},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(r.inputs,le=>(vue.openBlock(),vue.createBlock(z,{key:le.key,label:le.name,required:le.required,desc:le.desc,property:le.key},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent($(le)),{"model-value":g.value[le.key],disabled:!r.editable,config:le,"full-variable-list":r.fullVariableList,onChange:Ce=>V(le.key,Ce)},null,40,["model-value","disabled","config","full-variable-list","onChange"]))]),_:2},1032,["label","required","desc","property"]))),128))]),_:1},8,["rules","model"])])}}}),BkFlowPluginUniformApiForm=_export_sfc$1(_sfc_main$q,[["__scopeId","data-v-cb961ebd"]]),_hoisted_1$o={class:"plugin-agent"},_sfc_main$p=vue.defineComponent({__name:"index",props:{inputData:{},pluginDetail:{},editable:{type:Boolean},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref({input:""});vue.watch(()=>r.inputData,()=>{"value"in r.inputData.input&&(g.value.input=r.inputData.input.value)},{immediate:!0});const k={input:[{required:!0,message:"请输入提问内容",trigger:"blur"}]},$=async()=>y.value.validate().then(()=>!0).catch(()=>!1),V=()=>{const L={...r.inputData};L.input={value:g.value.input,hook:!1,need_render:!0},i("change",L)};return t({validate:$}),(L,re)=>{const ie=vue.resolveComponent("bk-form-item"),oe=vue.resolveComponent("bk-form");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$o,[vue.createVNode(oe,{ref_key:"formRef",ref:y,rules:k,model:g.value,"label-width":94},{default:vue.withCtx(()=>[vue.createVNode(ie,{label:"用户提问",required:"",property:"input"},{default:vue.withCtx(()=>[vue.createVNode(VariableInput,{modelValue:g.value.input,"onUpdate:modelValue":re[0]||(re[0]=z=>g.value.input=z),options:r.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!r.editable,onBlur:V},null,8,["modelValue","options","disabled"])]),_:1})]),_:1},8,["model"])])}}}),AgentForm=_export_sfc$1(_sfc_main$p,[["__scopeId","data-v-7e23a26b"]]),_sfc_main$o={},_hoisted_1$n={class:"plugin-model"};function _sfc_render(e,t){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$n,"小模型节点")}const AiopsForm=_export_sfc$1(_sfc_main$o,[["render",_sfc_render]]),_sfc_main$n=vue.defineComponent({__name:"role-type-selector",props:{modelValue:{},index:{},disabled:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const n=[{code:"assistant",name:"AI",description:"这条 Prompt 作为AI回答的结果"},{code:"system",name:"系统",description:"这条 Prompt 作为系统输入来定义角色,会在整个会话中生效"},{code:"user",name:"用户",description:"这条 Prompt 作为用户的输入,可以更详细描述对角色的要求"},{code:"pause",name:"等待回答",description:"这条Prompt作为AI的提问,会等待用户输入回答内容"}],r=e,i=t,y=vue.computed(()=>n.find(V=>V.code===r.modelValue)?.name),g=()=>n.filter($=>$.code==="system"?r.index===0:!0),k=$=>{i("update:modelValue",$)};return($,V)=>{const L=vue.resolveComponent("bk-option"),re=vue.resolveComponent("bk-select"),ie=vue.resolveDirective("bk-tooltips");return vue.withDirectives((vue.openBlock(),vue.createBlock(re,{filterable:"","disable-scroll-to-selected-option":"","popover-min-width":300,"input-search":!1,"model-value":e.modelValue,disabled:e.index===0||r.disabled,"popover-options":{placement:"bottom-end",zIndex:9999},onChange:k},{trigger:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass({"role-type":!0,disabled:e.index===0})},[vue.createTextVNode(vue.toDisplayString(y.value)+" ",1),V[0]||(V[0]=vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-angle-up"},null,-1))],2)]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(g(),oe=>vue.withDirectives((vue.openBlock(),vue.createBlock(L,{id:oe.code,key:oe.code,name:oe.name},null,8,["id","name"])),[[ie,{content:oe.description,theme:"light",placement:"right",boundary:"parent"}]])),128))]),_:1},8,["model-value","disabled"])),[[ie,{content:"角色第一条 Prompt 必须定义为“系统”",disabled:r.index>0}]])}}}),RoleTypeSelector=_export_sfc$1(_sfc_main$n,[["__scopeId","data-v-cc8e9eb1"]]),_hoisted_1$m={class:"bkflow-canvas-icon bkflow-canvas-daoru import-trigger"},_hoisted_2$f={class:"prompt-content-tips"},_sfc_main$m=vue.defineComponent({__name:"prompt-import",props:{prompts:{},disabled:{type:Boolean}},emits:["import"],setup(e,{emit:t}){const n=e,r=t,i=y=>{const g=n.prompts.find(k=>k.prompt_id===y);g&&r("import",g.content)};return(y,g)=>{const k=vue.resolveComponent("bk-option"),$=vue.resolveComponent("bk-popover"),V=vue.resolveComponent("bk-select"),L=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createBlock(V,{filterable:"","disable-scroll-to-selected-option":"","popover-min-width":300,"input-search":!1,disabled:n.disabled,"popover-options":{placement:"bottom-end",zIndex:9999},onChange:i},{trigger:vue.withCtx(()=>[vue.renderSlot(y.$slots,"default",{},()=>[vue.withDirectives(vue.createElementVNode("i",_hoisted_1$m,null,512),[[L,{content:"导入"}]])],!0)]),default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.prompts,re=>(vue.openBlock(),vue.createBlock($,{theme:"light",placement:"right","ext-cls":"import-prompt-tips-popover",disabled:!re.content,key:re.prompt_id,"popover-delay":0},{content:vue.withCtx(()=>[vue.createElementVNode("p",_hoisted_2$f,vue.toDisplayString(re.content),1)]),default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(k,{id:re.prompt_id,key:re.prompt_id,name:re.prompt_name},null,8,["id","name"]))]),_:2},1032,["disabled"]))),128))]),_:3},8,["disabled"])}}}),PromptImport=_export_sfc$1(_sfc_main$m,[["__scopeId","data-v-5a2f0446"]]),_hoisted_1$l={class:"prompt-add"},_sfc_main$l=vue.defineComponent({__name:"prompt-add",props:{prompts:{},disabled:{type:Boolean}},emits:["add"],setup(e,{emit:t}){const n=e,r=t,i=()=>{r("add","")},y=g=>{r("add",g)};return(g,k)=>{const $=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createVNode($,{text:"",theme:"primary",size:"small",disabled:n.disabled,onClick:i},{default:vue.withCtx(()=>[...k[0]||(k[0]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-plus-circle"},null,-1),vue.createTextVNode(" 添加 ",-1)])]),_:1},8,["disabled"]),k[2]||(k[2]=vue.createElementVNode("span",{class:"prompt-gap"},null,-1)),vue.createVNode(PromptImport,{prompts:n.prompts,disabled:n.disabled,onImport:y},{default:vue.withCtx(()=>[vue.createVNode($,{text:"",theme:"primary",size:"small"},{default:vue.withCtx(()=>[...k[1]||(k[1]=[vue.createTextVNode("从Prompt导入 ",-1)])]),_:1})]),_:1},8,["prompts","disabled"])])}}}),PromptAdd=_export_sfc$1(_sfc_main$l,[["__scopeId","data-v-ec71bacf"]]),_hoisted_1$k={class:"plugin-llm-form"},_hoisted_2$e={class:"prompt-actions"},_sfc_main$k=vue.defineComponent({__name:"llm-form",props:{inputData:{},pluginId:{},pluginDetail:{},editable:{type:Boolean},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r=useFlowApiConfig(),i=useScopeData(),y=e,g=n,k=(Ce,he)=>{const pe=y.inputData[Ce]?.value;return pe!==void 0?lodash.cloneDeep(pe):he},$=()=>{const Ce={...y.inputData};Object.keys(L.value).forEach(he=>{Ce[he]={value:L.value[he],hook:!1,need_render:!0}}),g("change",Ce)},V=vue.ref(),L=vue.ref({messages:[{role:"system",content:""}],content:""}),re=vue.shallowRef([]);vue.watch(()=>y.inputData,()=>{L.value={messages:k("messages",[{role:"system",content:""}]),content:k("content","")},(!("messages"in y.inputData)||!("content"in y.inputData))&&$()},{immediate:!0}),vue.onMounted(()=>{ie()});const ie=async()=>{if(!r.fetchApplyInstructionData){console.error("fetchApplyInstructionData is not available");return}const Ce=await r.fetchApplyInstructionData({plugin_id:y.pluginId,scope_type:i.scope_type,scope_value:i.scope_value,instruction:"get_space_prompts",params:{}});re.value=Ce.response},oe=Ce=>{L.value.messages.push({role:"user",content:Ce}),$()},z=(Ce,he)=>{L.value.messages[Ce].content=he,$()},j=Ce=>{y.editable&&(L.value.messages.splice(Ce,1),$())};return t({validate:async()=>V.value.validate().then(()=>!0).catch(()=>!1)}),(Ce,he)=>{const pe=vue.resolveComponent("bk-form-item"),ae=vue.resolveComponent("bk-form"),ue=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$k,[vue.createVNode(ae,{ref_key:"formRef",ref:V,"form-type":"vertical",model:L.value},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value.messages,(de,_e)=>(vue.openBlock(),vue.createBlock(pe,{key:_e,label:"Prompt",property:`messages[${_e}].content`,required:_e>0},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$e,[vue.createVNode(RoleTypeSelector,{modelValue:de.role,"onUpdate:modelValue":[xe=>de.role=xe,$],index:_e,disabled:!y.editable},null,8,["modelValue","onUpdate:modelValue","index","disabled"]),vue.createVNode(PromptImport,{prompts:re.value,disabled:!y.editable,onImport:xe=>z(_e,xe)},null,8,["prompts","disabled","onImport"]),_e>0?vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(icon.Del),{key:0,class:vue.normalizeClass(["delete-prompt-btn",{disabled:!y.editable}]),onClick:xe=>j(_e)},null,8,["class","onClick"])),[[ue,"删除"]]):vue.createCommentVNode("",!0)]),vue.createVNode(VariableInput,{modelValue:de.content,"onUpdate:modelValue":xe=>de.content=xe,options:y.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!y.editable,onBlur:$},null,8,["modelValue","onUpdate:modelValue","options","disabled"])]),_:2},1032,["property","required"]))),128)),vue.createVNode(PromptAdd,{prompts:re.value,disabled:!y.editable,onAdd:oe},null,8,["prompts","disabled"]),vue.createVNode(pe,{label:"用户提问",required:"",property:"content"},{default:vue.withCtx(()=>[vue.createVNode(VariableInput,{modelValue:L.value.content,"onUpdate:modelValue":he[0]||(he[0]=de=>L.value.content=de),options:y.fullVariableList,type:"textarea",placeholder:"请输入",rows:6,resize:!1,disabled:!y.editable,onBlur:$},null,8,["modelValue","options","disabled"])]),_:1})]),_:1},8,["model"])])}}}),LlmForm=_export_sfc$1(_sfc_main$k,[["__scopeId","data-v-39ddb79b"]]),_hoisted_1$j={class:"node-config-input-params"},_sfc_main$j=vue.defineComponent({__name:"input-params",props:{node:{},pluginType:{},pluginDetail:{},inputs:{default:()=>[]},editable:{type:Boolean,default:!0},fullVariableList:{default:()=>[]}},emits:["change"],setup(e,{expose:t,emit:n}){const r={uniform_api_plugin:BkFlowPluginUniformApiForm,agent:AgentForm,aiops:AiopsForm,llm:LlmForm,custom:LlmForm},i=e,y=n,g=()=>{const j={};return Object.keys(i.node.component.data).forEach(le=>{j[le]=lodash.cloneDeep(i.node.component.data[le].value)}),j},k=vue.ref(),$=vue.ref(),V=vue.ref(),L=vue.ref(g()),re=vue.computed(()=>{const j=i.pluginDetail?.category,le=i.pluginDetail?.group;if(j){if(j==="model"&&le&&le in r)return r[le];if(j in r)return r[j]}return BkFlowPluginUniformApiForm}),ie=vue.computed(()=>i.pluginType==="uniform_api"&&i.node.component.api_meta?.id||"");vue.watch(()=>i.node.component.data,()=>{L.value=g()});const oe=j=>{const le={...i.node.component.data};Object.keys(j).forEach(Ce=>{le[Ce]={hook:!1,need_render:!0,value:j[Ce]}}),y("change",le)};return t({validate:()=>k.value&&k.value.validate?k.value.validate():$.value&&$.value.validate?$.value.validate():i.pluginType==="uniform_api"&&V.value&&V.value.validate?V.value.validate():!0}),(j,le)=>(vue.openBlock(),vue.createElementBlock("section",_hoisted_1$j,[i.pluginDetail?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[i.pluginDetail.inputParamsFormType==="renderform"?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:k,scheme:i.inputs,editable:i.editable,"form-option":{showGroup:!1,showHook:!0,showLabel:!0,showVarList:!0,formEdit:i.editable},"form-data":L.value,"full-variable-list":i.fullVariableList,onChange:oe},null,8,["scheme","editable","form-option","form-data","full-variable-list"])):vue.createCommentVNode("",!0),i.pluginDetail.inputParamsFormType==="jsonschemaform"?(vue.openBlock(),vue.createBlock(JsonschemaForm,{key:1,ref_key:"jsonschemaFormRef",ref:$,"form-data":L.value,schema:i.inputs,editable:i.editable,onChange:oe},null,8,["form-data","schema","editable"])):vue.createCommentVNode("",!0),i.pluginDetail.inputParamsFormType==="uniformApiForm"?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(re.value),{key:2,ref_key:"uniformApiPluginComponentRef",ref:V,node:i.node,"plugin-detail":i.pluginDetail,"plugin-id":ie.value,"input-data":i.node.component.data,inputs:i.inputs,editable:i.editable,"full-variable-list":i.fullVariableList,onChange:le[0]||(le[0]=Ce=>y("change",Ce))},null,40,["node","plugin-detail","plugin-id","input-data","inputs","editable","full-variable-list"])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0)]))}}),InputParams=_export_sfc$1(_sfc_main$j,[["__scopeId","data-v-06f1844b"]]),_hoisted_1$i={class:"node-config-output-params"},_hoisted_2$d={class:"params-key-wrappper"},_hoisted_3$b={class:"key-text"},_hoisted_4$b={class:"create-variable-cell"},_hoisted_5$7=["onClick"],_sfc_main$i=vue.defineComponent({__name:"output-params",props:{node:{},outputsForms:{},constants:{default:()=>({})},editable:{type:Boolean,default:!0}},emits:["updateConstants"],setup(e,{emit:t}){const n=e,r=t,i=vue.shallowRef({}),y=vue.computed(()=>n.outputsForms.map($=>({...$,hookedKey:g($.key)})));vue.watch(()=>n.constants,$=>{i.value={...$}},{immediate:!0});const g=$=>{const L=Object.values(i.value).find(re=>re.source_info[n.node.id]&&re.source_info[n.node.id].includes($));return L?L.key:""},k=$=>{if(!n.editable)return;const V=g($.key);if(V){const L={...i.value[V],source_info:{...i.value[V].source_info,[n.node.id]:i.value[V].source_info[n.node.id].filter(re=>re!==$.key)}};i.value={...i.value,[V]:L}}else{const L=`\${${$.key}}`,re=n.constants[L]?`\${${$.key}_${random4()}}`:L;i.value={...i.value,[re]:{index:Object.values(i.value).length,name:$.name,key:re,desc:"",custom_type:"",show_type:"hide",source_type:"component_outputs",source_info:{[n.node.id]:[$.key]},source_tag:"",validation:"",plugin_code:"",value:""}}}r("updateConstants",i.value)};return($,V)=>{const L=vue.resolveComponent("bk-table-column"),re=vue.resolveComponent("bk-input"),ie=vue.resolveComponent("bk-table"),oe=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("section",_hoisted_1$i,[vue.createVNode(ie,{"empty-text":"暂无参数",data:y.value,border:["outer"]},{default:vue.withCtx(()=>[vue.createVNode(L,{label:"名称",width:180,"min-width":180,prop:"name"},{default:vue.withCtx(({row:z})=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(["params-name",{"has-desc":z.description!==""}])},[vue.createTextVNode(vue.toDisplayString(z.name),1)],2)),[[oe,{disabled:z.description==="",content:z.description}]])]),_:1}),vue.createVNode(L,{label:"KEY",prop:"key"},{default:vue.withCtx(({row:z})=>[vue.createElementVNode("div",_hoisted_2$d,[vue.createElementVNode("span",_hoisted_3$b,vue.toDisplayString(z.key),1),z.hookedKey?(vue.openBlock(),vue.createBlock(re,{key:0,class:"variable-key-input","model-value":z.hookedKey,readonly:vue.readonly},null,8,["model-value"])):vue.createCommentVNode("",!0)])]),_:1}),vue.createVNode(L,{label:"勾选为全局变量",width:120,"min-width":120},{default:vue.withCtx(({row:z})=>[vue.createElementVNode("div",_hoisted_4$b,[vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(["btn",{"is-hooked":!!z.hookedKey,"is-disabled":!n.editable,"is-disabled-tooltip":!n.editable}]),onClick:j=>k(z)},[...V[0]||(V[0]=[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-quanjubianliang-2"},null,-1)])],10,_hoisted_5$7)),[[oe,{placement:"top",content:z.hookedKey?"取消接收输出":"使用变量接收输出"}]])])]),_:1})]),_:1},8,["data"])])}}}),OutputParams=_export_sfc$1(_sfc_main$i,[["__scopeId","data-v-7a5f9261"]]),_hoisted_1$h={class:"bkflow-node-config"},_sfc_main$h=vue.defineComponent({__name:"index",props:{node:{},systemVariables:{default:()=>[]},constants:{default:()=>({})},editable:{type:Boolean,default:!0}},emits:["change","selectPlugin","updateConstants"],setup(e,{expose:t,emit:n}){const r=vue.useSlots(),i=e,y=useFlowApiConfig(),g=n,k=vue.ref(),$=vue.ref(),V=vue.ref(null),L=vue.ref(!0),re=vue.shallowRef([]),ie=vue.shallowRef([]),oe=vue.ref(!1),z=vue.computed(()=>i.node.component.code?["uniform_api","remote_plugin"].includes(i.node.component.code)?i.node.component.code:"inner":""),j=vue.computed(()=>[...i.systemVariables,...Object.values(i.constants)].map(de=>({key:de.key,name:de.name,source_type:de.source_type,custom_type:de.custom_type||""})));vue.onMounted(()=>{oe.value=!1,le()});const le=async()=>{L.value=!0,oe.value=!1;try{const de=await pluginDetailRequest(y,i.node.component),{inputs:_e,outputs:xe}=de;re.value=_e,ie.value=xe,V.value=de,Ce()}catch(de){(de?.message||String(de)).includes("1211011")?oe.value=!0:console.error("Failed to fetch plugin detail:",de)}finally{L.value=!1}},Ce=()=>{if(!V.value)return;const{data:de}=i.node.component,_e=z.value;if({uniform_api:()=>{if(!de||!("uniform_api_plugin_url"in de)||!("uniform_api_plugin_method"in de))return!0;const Ve=re.value;return!Ve||Ve.length===0?!1:Ve.some(At=>!(At.key in de))},remote_plugin:()=>!de||!("plugin_version"in de),inner:()=>!de||Object.keys(de).length===0}[_e]?.())if(_e==="uniform_api"&&de){const ze=getPluginDefaultComponentData(_e,V.value),Ve={...ze,...de};re.value.forEach(At=>{At.key in Ve||(Ve[At.key]=ze[At.key])}),pe({...i.node,component:{...i.node.component,data:Ve}})}else pe({...i.node,component:{...i.node.component,data:getPluginDefaultComponentData(_e,V.value)}})},he=de=>{const _e={...i.node,component:{...i.node.component,data:de}};pe(_e)},pe=de=>{g("change",de)},ae=de=>{he(de)};return t({isPluginNotExist:oe,pluginDetailLoading:L,validate:async()=>{let de;!r.inputParams&&$.value?de=$.value.validate:de=()=>!0;const[_e,xe]=await Promise.all([k.value?.validate(),de()]);return!(!_e||!xe)},updateInputParams:ae}),(de,_e)=>{const xe=vue.resolveComponent("bk-button"),ze=vue.resolveComponent("bk-exception"),Ve=vue.resolveDirective("bk-loading");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$h,[oe.value?(vue.openBlock(),vue.createBlock(ze,{key:0,class:"plugin-not-exist-exception",type:"500",title:"未找到可用插件或可用版本",scene:"part"},{default:vue.withCtx(()=>[i.editable?(vue.openBlock(),vue.createBlock(xe,{key:0,text:"",theme:"primary",onClick:_e[0]||(_e[0]=qe=>g("selectPlugin"))},{default:vue.withCtx(()=>[..._e[3]||(_e[3]=[vue.createTextVNode("重新选择",-1)])]),_:1})):vue.createCommentVNode("",!0)]),_:1})):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createVNode(SectionContainer,{title:"基础信息"},{default:vue.withCtx(()=>[vue.createVNode(BasicInfo,{ref_key:"basicInfoRef",ref:k,node:i.node,editable:i.editable,"plugin-type":z.value,"plugin-detail":V.value,onSelectPlugin:_e[1]||(_e[1]=qe=>g("selectPlugin")),onChange:pe},null,8,["node","editable","plugin-type","plugin-detail"])]),_:1}),vue.createVNode(SectionContainer,{title:"输入参数"},{default:vue.withCtx(()=>[L.value?vue.createCommentVNode("",!0):vue.renderSlot(de.$slots,"inputParams",{key:0,node:i.node,pluginDetail:V.value,inputs:re.value,editable:i.editable,fullVariableList:j.value,updateInputParams:ae},()=>[vue.createVNode(InputParams,{ref_key:"inputParamsRef",ref:$,node:i.node,"plugin-type":z.value,"plugin-detail":V.value,inputs:re.value,editable:i.editable,"full-variable-list":j.value,onChange:he},null,8,["node","plugin-type","plugin-detail","inputs","editable","full-variable-list"])],!0)]),_:3}),vue.createVNode(SectionContainer,{title:"输出参数"},{default:vue.withCtx(()=>[L.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(OutputParams,{key:0,node:i.node,"outputs-forms":ie.value,constants:i.constants,editable:i.editable,onUpdateConstants:_e[2]||(_e[2]=qe=>g("updateConstants",qe))},null,8,["node","outputs-forms","constants","editable"]))]),_:1})],64))])),[[Ve,{loading:L.value}]])}}}),NodeConfig=_export_sfc$1(_sfc_main$h,[["__scopeId","data-v-5b11203e"]]),_hoisted_1$g={class:"node-config-slider"},_hoisted_2$c={key:0,class:"sideslider-footer-buttons"},_sfc_main$g=vue.defineComponent({__name:"index",props:{show:{type:Boolean,default:!1},node:{},constants:{default:()=>({})},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0}},emits:["close","update:show","confirm","selectPlugin"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref(!0),k=vue.ref(lodash.cloneDeep(r.node)),$=vue.shallowRef({...r.constants});vue.watch(()=>r.show,()=>{k.value=lodash.cloneDeep(r.node),$.value={...r.constants}}),vue.watchEffect(()=>{y.value?.isPluginNotExist||y.value?.pluginDetailLoading?g.value=!1:g.value=!0});const V=z=>{k.value=z},L=async()=>{await y.value?.validate()&&i("confirm",k.value,$.value)},re=()=>{if(r.editable)return new Promise(z=>{lib.InfoBox({title:"确认离开?",content:"离开将会导致未保存信息丢失",confirmText:"离开",cancelText:"取消",width:320,onConfirm:()=>{ie(),z(!0)},onCancel:()=>{z(!1)}})});ie()},ie=()=>{i("close"),i("update:show",!1)};return t({updateNodeInputParams:z=>{y.value&&y.value.updateInputParams?.(z)}}),(z,j)=>{const le=vue.resolveComponent("bk-button"),Ce=vue.resolveComponent("bk-sideslider");return vue.openBlock(),vue.createBlock(Ce,{title:"节点配置","is-show":r.show,width:960,"esc-close":!1,"before-close":re},{footer:vue.withCtx(()=>[g.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$c,[r.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(le,{theme:"primary",onClick:L},{default:vue.withCtx(()=>[...j[2]||(j[2]=[vue.createTextVNode("确定",-1)])]),_:1}),vue.createVNode(le,{onClick:ie},{default:vue.withCtx(()=>[...j[3]||(j[3]=[vue.createTextVNode("取消",-1)])]),_:1})],64)):(vue.openBlock(),vue.createBlock(le,{key:1,theme:"primary",onClick:ie},{default:vue.withCtx(()=>[...j[4]||(j[4]=[vue.createTextVNode("关闭",-1)])]),_:1}))])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$g,[r.show?(vue.openBlock(),vue.createBlock(NodeConfig,{key:0,ref_key:"nodeConfigRef",ref:y,node:k.value,editable:r.editable,constants:$.value,"system-variables":r.systemVariables,onSelectPlugin:j[0]||(j[0]=he=>i("selectPlugin")),onUpdateConstants:j[1]||(j[1]=he=>$.value=he),onChange:V},{inputParams:vue.withCtx(he=>[vue.renderSlot(z.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(he)),void 0,!0)]),_:3},8,["node","editable","constants","system-variables"])):vue.createCommentVNode("",!0)])]),_:3},8,["is-show"])}}}),NodeConfigPanel=_export_sfc$1(_sfc_main$g,[["__scopeId","data-v-02b9993c"]]),_hoisted_1$f={class:"plugin-group-aside"},_hoisted_2$b={class:"group-list"},_hoisted_3$a=["onClick"],_hoisted_4$a=["src"],_hoisted_5$6={class:"group-text"},_sfc_main$f=vue.defineComponent({__name:"plugin-groups-aside",props:{actived:{},groups:{}},emits:["update:actived","change"],setup(e,{emit:t}){const n=e,r=t,i=y=>{r("update:actived",y),r("change",y)};return(y,g)=>(vue.openBlock(),vue.createElementBlock("section",_hoisted_1$f,[vue.createElementVNode("div",_hoisted_2$b,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(n.groups,k=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["group-item",{actived:n.actived===k.name}]),key:k.id,onClick:$=>i(k.name)},[vue.createElementVNode("img",{class:"group-icon",src:k.iconUrl},null,8,_hoisted_4$a),vue.createElementVNode("span",_hoisted_5$6,vue.toDisplayString(k.alias),1)],10,_hoisted_3$a))),128))])]))}}),PluginGroupsAside=_export_sfc$1(_sfc_main$f,[["__scopeId","data-v-6c7ab9b0"]]),alarmImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/告警%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/告警'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(20,%2018)'%20fill='%23FFFFFF'%3e%3cpath%20d='M23.8214286,25.9259259%20L23.8214286,14.5185185%20C23.8280822,12.0419907%2022.8443395,9.66585559%2021.0897321,7.92037037%20C19.3290179,6.16064815%2016.9889509,5.18515161%2014.5,5.18515161%20C12.026631,5.17852307%209.65352669,6.16352209%207.91026786,7.92037037%20C6.15279018,9.68333333%205.17857143,12.0263889%205.17857143,14.5185185%20L5.17857143,25.9259259%20L2.07142857,25.9259259%20L2.07142857,28%20L26.9285714,28%20L26.9285714,25.9259259%20L23.8214286,25.9259259%20Z%20M15.225,10.9083333%20L16.6879464,12.3731481%20L14.5356027,14.5314815%20L17.3708705,17.3703704%20L13.8138393,21.3305556%20L12.2732143,19.9435185%20L14.516183,17.4449074%20L11.6064732,14.5314815%20L15.225,10.9083333%20Z%20M29,13.4814815%20L29,15.5555556%20L24.8571429,15.5555556%20L24.8571429,13.4814815%20L29,13.4814815%20Z%20M4.14285714,13.4814815%20L4.14285714,15.5555556%20L0,15.5555556%20L0,13.4814815%20L4.14285714,13.4814815%20Z%20M5.01594524,3.53359279%20L7.94538762,6.46677647%20L6.48066643,7.93336831%20L3.55122405,5.00018463%20L5.01594524,3.53359279%20Z%20M23.9784806,3.5274069%20L25.4432018,4.99399875%20L22.5137594,7.92718243%20L21.0490382,6.46059059%20L23.9784806,3.5274069%20Z%20M15.5357143,0%20L15.5357143,4.14814815%20L13.4642857,4.14814815%20L13.4642857,0%20L15.5357143,0%20Z'%20id='形状'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",eventImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/事件%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/事件'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3crect%20id='矩形-2'%20fill='%233A84FF'%20fill-rule='nonzero'%20x='5'%20y='5'%20width='40'%20height='40'%20rx='3'%3e%3c/rect%3e%3crect%20id='矩形'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20x='10'%20y='10'%20width='44'%20height='44'%20rx='3'%3e%3c/rect%3e%3cg%20id='alert-告警'%20transform='translate(16.25,%2016.25)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M9,0%20L9,2.25%20L22.5,2.25%20L22.5,0%20L27,0%20L27,2.25%20L29.25,2.25%20C30.4926407,2.25%2031.5,3.25735931%2031.5,4.5%20L31.5,29.25%20C31.5,30.4926407%2030.4926407,31.5%2029.25,31.5%20L2.25,31.5%20C1.00735931,31.5%200,30.4926407%200,29.25%20L0,4.5%20C0,3.25735931%201.00735931,2.25%202.25,2.25%20L4.5,2.25%20L4.5,0%20L9,0%20Z%20M29.25,10.125%20L2.25,10.125%20L2.25,29.25%20L29.25,29.25%20L29.25,10.125%20Z%20M11.25,13.5%20L11.25,18%20L5.625,18%20L5.625,13.5%20L11.25,13.5%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",graphImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/图谱%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/图谱'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(18.25,%2018.25)'%20fill='%23FFFFFF'%3e%3cpath%20d='M27.5625,0%20C29.7371212,0%2031.5,1.7628788%2031.5,3.9375%20C31.5,6.1121212%2029.7371212,7.875%2027.5625,7.875%20C26.8821072,7.875%2026.2420211,7.70242627%2025.6836253,7.39866233%20L21.2480235,11.8331927%20C22.0362649,12.9376649%2022.5,14.2896769%2022.5,15.75%20C22.5,17.2076792%2022.0379426,18.5574391%2021.2523016,19.6608059%20L24.7142478,23.1229218%20C25.3841532,22.7271229%2026.1655529,22.5%2027,22.5%20C29.4852814,22.5%2031.5,24.5147186%2031.5,27%20C31.5,29.4852814%2029.4852814,31.5%2027,31.5%20C24.5147186,31.5%2022.5,29.4852814%2022.5,27%20C22.5,26.1655529%2022.7271229,25.3841532%2023.1229218,24.7142478%20L19.6608059,21.2523016%20C18.5574391,22.0379426%2017.2076792,22.5%2015.75,22.5%20C14.2923208,22.5%2012.9425609,22.0379426%2011.8391941,21.2523016%20L8.73675688,24.3548271%20C8.9071608,24.8296846%209,25.3415004%209,25.875%20C9,28.3602814%206.98528137,30.375%204.5,30.375%20C2.01471863,30.375%200,28.3602814%200,25.875%20C0,23.3897186%202.01471863,21.375%204.5,21.375%20C5.62390208,21.375%206.6515713,21.7870218%207.44020055,22.4682583%20L10.2476984,19.6608059%20C9.46205741,18.5574391%209,17.2076792%209,15.75%20C9,14.2927614%209.46177809,12.9433769%2010.246986,11.8401948%20L6.9225844,8.53381806%20C6.36863781,8.83126977%205.73527343,9%205.0625,9%20C2.8878788,9%201.125,7.2371212%201.125,5.0625%20C1.125,2.8878788%202.8878788,1.125%205.0625,1.125%20C7.2371212,1.125%209,2.8878788%209,5.0625%20C9,5.74577587%208.82596068,6.38840267%208.51979386,6.94846859%20L11.8381935,10.2484109%20C12.9417448,9.46233681%2014.2918801,9%2015.75,9%20C17.2050353,9%2018.5525424,9.46038278%2019.6547997,10.2434266%20L24.0949001,5.80449226%20C23.7951367,5.24890576%2023.625,4.61307166%2023.625,3.9375%20C23.625,1.7628788%2025.3878788,0%2027.5625,0%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",logImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/日志%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/日志'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3crect%20id='矩形-2'%20fill='%233A84FF'%20fill-rule='nonzero'%20x='5'%20y='5'%20width='40'%20height='40'%20rx='3'%3e%3c/rect%3e%3crect%20id='矩形'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20x='10'%20y='10'%20width='44'%20height='44'%20rx='3'%3e%3c/rect%3e%3cg%20id='alert-告警'%20transform='translate(17.375,%2017.375)'%20fill='%23FFFFFF'%3e%3cpath%20d='M28.25,0%20C28.8022847,0%2029.25,0.44771525%2029.25,1%20L29.25,28.25%20C29.25,28.8022847%2028.8022847,29.25%2028.25,29.25%20L1,29.25%20C0.44771525,29.25%200,28.8022847%200,28.25%20L0,1%20C0,0.44771525%200.44771525,1.11022302e-16%201,0%20L28.25,0%20Z%20M14.625,19.125%20C14.0036797,19.125%2013.5,19.6286797%2013.5,20.25%20C13.5,20.8713203%2014.0036797,21.375%2014.625,21.375%20C15.2463203,21.375%2015.75,20.8713203%2015.75,20.25%20C15.75,19.6286797%2015.2463203,19.125%2014.625,19.125%20Z%20M8.4375,7.875%20C5.02023811,7.875%202.25,10.6452381%202.25,14.0625%20C2.25,17.4797619%205.02023811,20.25%208.4375,20.25%20C11.8547619,20.25%2014.625,17.4797619%2014.625,14.0625%20C14.625,10.6452381%2011.8547619,7.875%208.4375,7.875%20Z%20M20.8125,7.875%20C17.3952381,7.875%2014.625,10.6452381%2014.625,14.0625%20C14.625,17.4797619%2017.3952381,20.25%2020.8125,20.25%20C24.2297619,20.25%2027,17.4797619%2027,14.0625%20C27,10.6452381%2024.2297619,7.875%2020.8125,7.875%20Z%20M8.4375,10.125%20C10.6121212,10.125%2012.375,11.8878788%2012.375,14.0625%20C12.375,16.2371212%2010.6121212,18%208.4375,18%20C6.2628788,18%204.5,16.2371212%204.5,14.0625%20C4.5,11.8878788%206.2628788,10.125%208.4375,10.125%20Z%20M20.8125,10.125%20C22.9871212,10.125%2024.75,11.8878788%2024.75,14.0625%20C24.75,16.2371212%2022.9871212,18%2020.8125,18%20C18.6378788,18%2016.875,16.2371212%2016.875,14.0625%20C16.875,11.8878788%2018.6378788,10.125%2020.8125,10.125%20Z%20M21.5,12.9375%20L20.125,12.9375%20C19.5727153,12.9375%2019.125,13.3852153%2019.125,13.9375%20L19.125,14.1875%20C19.125,14.7397847%2019.5727153,15.1875%2020.125,15.1875%20L21.5,15.1875%20C22.0522847,15.1875%2022.5,14.7397847%2022.5,14.1875%20L22.5,13.9375%20C22.5,13.3852153%2022.0522847,12.9375%2021.5,12.9375%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",metricImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/指标%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/指标'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(20.0022,%2019)'%20fill='%23FFFFFF'%3e%3cpath%20d='M26.9978016,9%20L26.9978016,26%20L22.9857822,26%20L22.9857822,9%20L26.9978016,9%20Z%20M19.9767677,15%20L19.9767677,26%20L15.9647484,26%20L15.9647484,15%20L19.9767677,15%20Z%20M12.9557339,12%20L12.9557339,26%20L8.9437145,26%20L8.9437145,12%20L12.9557339,12%20Z%20M5.93469998,17%20L5.93469998,26%20L1.92268063,26%20L1.92268063,17%20L5.93469998,17%20Z%20M26.9978016,0%20L26.9978016,8%20L23.6568016,4.67%20L16.9918102,11.3355632%20L11.3179511,5.6617042%20L1.41846305,15.561206%20L3.55271368e-15,14.1427429%20L11.3137085,2.82903444%20L16.9875333,8.50285925%20L22.2358016,3.253%20L18.9737629,0%20L26.9978016,0%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",profilingImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/Profiling%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/Profiling'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(19.375,%2016)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M10.3813948,-3.55271368e-15%20C17.257736,1.52410383%2022.3838329,6.97063848%2023.2188935,13.6207878%20C24.020884,11.6579106%2025.6982065,10.1856528%2027.7485185,9.64494215%20C27.1633902,11.2491122%2027.1633902,13.0083535%2027.7485185,14.6125236%20C27.7485185,14.6125236%2033.0597887,25.1085424%2026.6837718,31.6233741%20L24.0521736,28.9989243%20C27.3425616,24.7791508%2027.0291913,18.684516%2023.1138432,14.7781096%20C18.7284397,10.4016526%2011.6811693,10.5583362%207.45245097,14.9347932%20C3.22373261,19.3094697%203.53710289,26.4991091%207.9225064,30.562199%20C11.8378545,34.1552382%2017.6316437,34.3119218%2021.8603621,31.1853723%20L24.2302248,33.5498699%20C23.1560051,34.1931262%2022.0151369,34.7178845%2020.8276645,35.1149251%20C20.8276645,35.1149251%2016.914097,36.7173707%2011.2876759,35.6099027%20C11.2876759,35.6099027%20-5.60939232,32.1361567%201.9435438,14.8956223%20C2.71450593,15.6701377%203.23085471,16.6583125%203.42136957,17.7337316%20C4.27570623,15.1161605%205.73197932,12.7354096%207.67323457,10.7826785%20C10.1623917,8.55705961%2012.6960617,2.27013128%2010.3813948,-3.55271368e-15%20Z%20M8.86261726,17.9028786%20C10.3191865,15.8450628%2012.6836372,14.6218537%2015.2048045,14.6218537%20C17.7259718,14.6218537%2020.0904225,15.8450628%2021.5469918,17.9028786%20C23.5838986,20.5593773%2023.5838986,24.3108806%2021.5469918,27.1240629%20C20.0904225,29.1818787%2017.7259718,30.4050878%2015.2048045,30.4050878%20C12.6836372,30.4050878%2010.3191865,29.1818787%208.86261726,27.1240629%20C6.8257104,24.4675642%206.8257104,20.5593773%208.86261726,17.9028786%20Z%20M20.475123,17.8049514%20L9.79204502,17.8049514%20L9.79204502,21.3659416%20L11.572558,21.3659416%20L11.572558,24.9269319%20L13.353071,24.9269319%20L13.353071,23.1464368%20L15.133584,23.1464368%20L15.133584,26.7074271%20L16.914097,26.7074271%20L16.914097,28.4879222%20L18.69461,28.4879222%20L18.69461,23.1464368%20L20.475123,23.1464368%20L20.475123,17.8049514%20L20.475123,17.8049514%20Z'%20id='形状'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",traceImg="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='64px'%20height='64px'%20viewBox='0%200%2064%2064'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3ePic/Trace%3c/title%3e%3cdefs%3e%3clinearGradient%20x1='50%25'%20y1='0%25'%20x2='50%25'%20y2='99.2979677%25'%20id='linearGradient-1'%3e%3cstop%20stop-color='%23CEE4FF'%20offset='0%25'%3e%3c/stop%3e%3cstop%20stop-color='%23FFFFFF'%20offset='100%25'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3cg%20id='Pic/Trace'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3ccircle%20id='椭圆形'%20fill='%233A84FF'%20fill-rule='nonzero'%20cx='27'%20cy='27'%20r='23'%3e%3c/circle%3e%3ccircle%20id='椭圆形备份'%20stroke='url(%23linearGradient-1)'%20fill-opacity='0.7'%20fill='%23CFDDF6'%20cx='34'%20cy='34'%20r='24'%3e%3c/circle%3e%3cg%20id='alert-告警'%20transform='translate(18.25,%2018.25)'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3cpath%20d='M15.75,0%20C16.36875,0%2016.875,0.50625%2016.875,1.125%20L16.875,2.29647656%20C23.4334688,2.83756641%2028.6624336,8.06653125%2029.2035234,14.625%20L30.375,14.625%20C30.99375,14.625%2031.5,15.13125%2031.5,15.75%20C31.5,16.36875%2030.99375,16.875%2030.375,16.875%20L29.2035234,16.875%20C28.6624336,23.4334688%2023.4334688,28.6624336%2016.875,29.2035234%20L16.875,30.375%20C16.875,30.99375%2016.36875,31.5%2015.75,31.5%20C15.13125,31.5%2014.625,30.99375%2014.625,30.375%20L14.625,29.2035234%20C8.06653125,28.6624336%202.83756641,23.4334688%202.29647656,16.875%20L1.125,16.875%20C0.50625,16.875%200,16.36875%200,15.75%20C0,15.13125%200.50625,14.625%201.125,14.625%20L2.29647656,14.625%20C2.83756641,8.06653125%208.06653125,2.83756641%2014.625,2.29647656%20L14.625,1.125%20C14.625,0.50625%2015.13125,0%2015.75,0%20Z%20M16.875,4.55582812%20L16.875,5.625%20C16.875,6.24375%2016.36875,6.75%2015.75,6.75%20C15.13125,6.75%2014.625,6.24375%2014.625,5.625%20L14.625,4.55582812%20C9.31011328,5.08355859%205.08355859,9.31011328%204.55582812,14.625%20L5.625,14.625%20C6.24375,14.625%206.75,15.13125%206.75,15.75%20C6.75,16.36875%206.24375,16.875%205.625,16.875%20L4.55582812,16.875%20C5.08355859,22.1898867%209.31011328,26.4164414%2014.625,26.9441719%20L14.625,25.875%20C14.625,25.25625%2015.13125,24.75%2015.75,24.75%20C16.36875,24.75%2016.875,25.25625%2016.875,25.875%20L16.875,26.9441719%20C22.1898867,26.4164414%2026.4164414,22.1898867%2026.9441719,16.875%20L25.875,16.875%20C25.25625,16.875%2024.75,16.36875%2024.75,15.75%20C24.75,15.13125%2025.25625,14.625%2025.875,14.625%20L26.9441719,14.625%20C26.4164414,9.31011328%2022.1898867,5.08355859%2016.875,4.55582812%20Z%20M15.75,10.125%20C18.8566017,10.125%2021.375,12.6433983%2021.375,15.75%20C21.375,18.8566017%2018.8566017,21.375%2015.75,21.375%20C12.6433983,21.375%2010.125,18.8566017%2010.125,15.75%20C10.125,12.6433983%2012.6433983,10.125%2015.75,10.125%20Z'%20id='形状结合'%3e%3c/path%3e%3c/g%3e%3crect%20id='矩形'%20x='0'%20y='0'%20width='64'%20height='64'%3e%3c/rect%3e%3c/g%3e%3c/svg%3e",_hoisted_1$e={class:"data-plugin-group"},_hoisted_2$a={class:"plugin-list"},_hoisted_3$9=["onClick"],_hoisted_4$9=["src"],_hoisted_5$5={class:"plugin-name"},_sfc_main$e=vue.defineComponent({__name:"data-plugin-group",props:{plugins:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i={alert_plugin:alarmImg,log_plugin:logImg,trace_plugin:traceImg,query_promql_metric_plugin:metricImg,事件查询:eventImg,Profiling查询:profilingImg,图谱查询:graphImg},y=vue.computed(()=>n.plugins.map(g=>({id:g.id,name:g.alias,icon:i[g.name]})));return(g,k)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$e,[vue.createElementVNode("div",_hoisted_2$a,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(y.value,$=>(vue.openBlock(),vue.createElementBlock("div",{class:"plugin-item",key:$.id,onClick:V=>r("select",$.id)},[vue.createElementVNode("img",{class:"plugin-img",src:$.icon},null,8,_hoisted_4$9),vue.createElementVNode("h4",_hoisted_5$5,vue.toDisplayString($.name),1)],8,_hoisted_3$9))),128))]),y.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,title:"暂无数据插件"})):vue.createCommentVNode("",!0)]))}}),DataPluginGroup=_export_sfc$1(_sfc_main$e,[["__scopeId","data-v-782d393d"]]),_hoisted_1$d={class:"search-select-wrapper"},_sfc_main$d=vue.defineComponent({__name:"index",props:{modelValue:{default:()=>[]},placeholder:{default:"请选择"},options:{default:()=>[]}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,r=t,i=vue.shallowRef([...n.modelValue]);vue.watch(()=>n.modelValue,g=>{i.value=[...g]},{deep:!0});const y=g=>{i.value=g,r("update:modelValue",g),r("change",g)};return(g,k)=>{const $=vue.resolveComponent("bk-search-select");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$d,[vue.createVNode($,{modelValue:i.value,"onUpdate:modelValue":[k[0]||(k[0]=V=>i.value=V),y],"value-behavior":"need-key",data:n.options,placeholder:n.placeholder,uniqueSelect:!0,clearable:!0},null,8,["modelValue","data","placeholder"])])}}}),_hoisted_1$c={class:"agent-plugin-group"},_hoisted_2$9={class:"top-operate-area"},_hoisted_3$8={class:"buttons"},_hoisted_4$8={class:"agent-content-area"},_hoisted_5$4={class:"agent-cards"},_hoisted_6$4={class:"card-header"},_hoisted_7$3=["src"],_hoisted_8$2={class:"agent-summary"},_hoisted_9$2={class:"main-info"},_hoisted_10$2={class:"name-text"},_hoisted_11$2={class:"other-info"},_hoisted_12=["title"],_hoisted_13=["title"],_hoisted_14=["title"],_hoisted_15={class:"agent-desc"},_hoisted_16={class:"agent-btns"},_sfc_main$c=vue.defineComponent({__name:"agent-plugin-group",props:{properties:{},plugins:{}},emits:["select"],setup(e,{emit:t}){const n=vueRouter.useRouter(),r=vueRouter.useRoute(),i=[{id:"alias",name:"智能体名称"},{id:"created_by",name:"创建人"}],y=e,g=useAgentSelectPanelConfig(),k=t,$=vue.ref("all"),V=vue.ref([]),L=vue.computed(()=>Object.keys(y.properties).map(he=>({id:he,name:y.properties[he]}))),re=vue.computed(()=>y.plugins.filter(he=>!he.display_content.hidden)),ie=vue.computed(()=>{const he=re.value.filter(pe=>$.value!=="all"?pe.group===$.value:!0);return V.value.length>0?he.filter(pe=>V.value.some(ae=>ae.id==="alias"?pe.alias.toLowerCase().includes(ae.values[0].id.toLowerCase()):ae.id==="agent_type"?(pe.display_content?.agent_type||"")===ae.values[0].id:ae.id==="space_name"?(pe.display_content?.space_name||"").toLowerCase().includes(ae.values[0].id.toLowerCase()):ae.id==="created_by"?(pe.display_content?.created_by||"")===ae.values[0].id:!0)):he}),oe=he=>he?dayjs(he).format("YYYY-MM-DD HH:mm:ss"):"--",z=he=>{V.value=he},j=()=>{if(g?.applyUrl)window.open(g.applyUrl,"_blank");else{const{href:he}=n.resolve({name:"spaceResource",params:r.params});window.open(he,"_blank")}},le=()=>{if(g?.resourceUrl)window.open(g.resourceUrl,"_blank");else{const{href:he}=n.resolve({name:"spaceResource",params:r.params});window.open(he,"_blank")}},Ce=he=>{he.display_content.fetch_url&&window.open(he.display_content.fetch_url,"_blank")};return(he,pe)=>{const ae=vue.resolveComponent("bk-button"),ue=vue.resolveComponent("bk-alert"),de=vue.resolveComponent("bk-radio-button"),_e=vue.resolveComponent("bk-radio-group");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$c,[vue.createVNode(ue,null,{default:vue.withCtx(()=>[pe[3]||(pe[3]=vue.createTextVNode(" 如有需要,您可以申请更多的智能体权限 ",-1)),vue.createVNode(ae,{theme:"primary",text:"",size:"small",onClick:j},{default:vue.withCtx(()=>[...pe[2]||(pe[2]=[vue.createTextVNode("点击申请",-1)])]),_:1})]),_:1}),vue.createElementVNode("div",_hoisted_2$9,[vue.createElementVNode("div",_hoisted_3$8,[vue.createVNode(ae,{theme:"primary",onClick:le},{default:vue.withCtx(()=>[vue.unref(g)?.buttonText?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(vue.unref(g).buttonText),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createVNode(vue.unref(icon.Plus),{class:"add-icon"}),pe[4]||(pe[4]=vue.createTextVNode(" 智能体 ",-1))],64))]),_:1}),L.value.length>1?(vue.openBlock(),vue.createBlock(_e,{key:0,modelValue:$.value,"onUpdate:modelValue":pe[0]||(pe[0]=xe=>$.value=xe),type:"capsule"},{default:vue.withCtx(()=>[vue.createVNode(de,{label:"all"},{default:vue.withCtx(()=>[...pe[5]||(pe[5]=[vue.createTextVNode("全部",-1)])]),_:1}),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,xe=>(vue.openBlock(),vue.createBlock(de,{key:xe.id,label:xe.id},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(xe.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)]),vue.createVNode(_sfc_main$d,{modelValue:V.value,options:i,placeholder:"搜索智能体名称、创建人",onChange:z},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_4$8,[vue.createElementVNode("div",_hoisted_5$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(ie.value,xe=>(vue.openBlock(),vue.createElementBlock("div",{class:"card-item",key:xe.id},[vue.createElementVNode("div",_hoisted_6$4,[vue.createElementVNode("img",{src:xe.display_content.icon,alt:"",class:"agent-img"},null,8,_hoisted_7$3),vue.createElementVNode("div",_hoisted_8$2,[vue.createElementVNode("div",_hoisted_9$2,[vue.createElementVNode("div",_hoisted_10$2,vue.toDisplayString(xe.alias),1)]),vue.createElementVNode("div",_hoisted_11$2,[vue.createElementVNode("span",{title:xe.display_content.agent_code},"ID:"+vue.toDisplayString(xe.display_content.agent_code),9,_hoisted_12),vue.createElementVNode("span",{title:xe.display_content.created_by},"创建人:"+vue.toDisplayString(xe.display_content.created_by),9,_hoisted_13),vue.createElementVNode("span",{title:oe(xe.display_content.created_at)}," 创建时间:"+vue.toDisplayString(oe(xe.display_content.created_at)),9,_hoisted_14)])])]),vue.createElementVNode("p",_hoisted_15,vue.toDisplayString(xe.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_16,[vue.createVNode(ae,{theme:"primary",size:"small",onClick:ze=>k("select",xe.id)},{default:vue.withCtx(()=>[...pe[6]||(pe[6]=[vue.createTextVNode("选择",-1)])]),_:1},8,["onClick"]),vue.createVNode(ae,{size:"small",onClick:ze=>Ce(xe)},{default:vue.withCtx(()=>[...pe[7]||(pe[7]=[vue.createTextVNode("体验",-1)])]),_:1},8,["onClick"])])]))),128))]),ie.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":V.value.length>0,title:"暂无智能体",onClear:pe[1]||(pe[1]=xe=>V.value=[])},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),AgentPluginGroup=_export_sfc$1(_sfc_main$c,[["__scopeId","data-v-80aa7bbe"]]),_hoisted_1$b={class:"order-selector"},_sfc_main$b=vue.defineComponent({__name:"order-selector",props:{order:{}},emits:["update:order"],setup(e,{emit:t}){const n=[{id:"created_at_asc",name:"创建时间(升序)",icon:"bkflow-canvas-icon bkflow-canvas-sort-up"},{id:"created_at_desc",name:"创建时间(降序)",icon:"bkflow-canvas-icon bkflow-canvas-sort-down"},{id:"name_asc",name:"中文名称(A-Z)",icon:"bkflow-canvas-icon bkflow-canvas-sort-up"},{id:"name_desc",name:"中文名称(Z-A)",icon:"bkflow-canvas-icon bkflow-canvas-sort-down"}],r=e,i=t,y=vue.ref(!1),g=V=>{y.value=V},k=vue.computed(()=>n.find(V=>V.id===r.order)),$=V=>{i("update:order",V)};return(V,L)=>{const re=vue.resolveComponent("bk-button"),ie=vue.resolveComponent("bk-dropdown-item"),oe=vue.resolveComponent("bk-dropdown-menu"),z=vue.resolveComponent("bk-dropdown");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[L[0]||(L[0]=vue.createElementVNode("span",{class:"order-selector-prefix"},"排序",-1)),vue.createVNode(z,{placement:"bottom-start",trigger:"click","popover-options":{clickContentAutoHide:!0,width:146},onShowChange:g},{content:vue.withCtx(()=>[vue.createVNode(oe,{"ext-cls":"order-selector-dropdown-menu"},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(n,j=>vue.createVNode(ie,{key:j.id,class:vue.normalizeClass({active:j.id===e.order}),onClick:le=>$(j.id)},{default:vue.withCtx(()=>[vue.createElementVNode("span",null,vue.toDisplayString(j.name),1)]),_:2},1032,["class","onClick"])),64))]),_:1})]),default:vue.withCtx(()=>[vue.createVNode(re,null,{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(k.value?.name)+" ",1),vue.createElementVNode("i",{class:vue.normalizeClass(["order-selector-icon",k.value?.icon])},null,2),vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon","bkflow-canvas-angle-up",{"angle-down":!y.value}])},null,2)]),_:1})]),_:1})])}}}),OrderSelector=_export_sfc$1(_sfc_main$b,[["__scopeId","data-v-40215204"]]),_hoisted_1$a={class:"big-model-card"},_hoisted_2$8={class:"card-header"},_hoisted_3$7=["src"],_hoisted_4$7={class:"model-info"},_hoisted_5$3={class:"model-name"},_hoisted_6$3=["title"],_hoisted_7$2={class:"other-info"},_hoisted_8$1={class:"other-info"},_hoisted_9$1={class:"model-desc"},_hoisted_10$1={class:"tag-list"},_hoisted_11$1={class:"bottom-btns"},_sfc_main$a=vue.defineComponent({__name:"big-model-card",props:{plugin:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i=vue.computed(()=>n.plugin.display_content.tag_names.map(y=>y.join("/")));return(y,g)=>{const k=vue.resolveComponent("bk-tag"),$=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$a,[vue.createElementVNode("div",_hoisted_2$8,[vue.createElementVNode("img",{src:n.plugin.display_content.icon,alt:"",class:"model-img"},null,8,_hoisted_3$7),vue.createElementVNode("div",_hoisted_4$7,[vue.createElementVNode("div",_hoisted_5$3,[vue.createElementVNode("div",{class:"name-text",title:n.plugin.alias},vue.toDisplayString(n.plugin.alias),9,_hoisted_6$3)]),vue.createElementVNode("p",_hoisted_7$2,[vue.createElementVNode("span",null,"基座模型: "+vue.toDisplayString(n.plugin.display_content.base_model),1),vue.createElementVNode("span",null,"激活参数: "+vue.toDisplayString(n.plugin.display_content.context_length),1)]),vue.createElementVNode("p",_hoisted_8$1,[vue.createElementVNode("span",null,"更新人: "+vue.toDisplayString(n.plugin.display_content.created_by),1),vue.createElementVNode("span",null,"更新时间: "+vue.toDisplayString(n.plugin.display_content.created_at),1)])])]),vue.createElementVNode("p",_hoisted_9$1,vue.toDisplayString(n.plugin.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_10$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,V=>(vue.openBlock(),vue.createBlock(k,{key:V},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(V),1)]),_:2},1024))),128))]),vue.createElementVNode("div",_hoisted_11$1,[vue.createVNode($,{theme:"primary",size:"small",onClick:g[0]||(g[0]=V=>r("select",n.plugin.id))},{default:vue.withCtx(()=>[...g[1]||(g[1]=[vue.createTextVNode("选择",-1)])]),_:1})])])}}}),BigModelCard=_export_sfc$1(_sfc_main$a,[["__scopeId","data-v-fcf03d9b"]]),_hoisted_1$9={class:"small-model-card"},_hoisted_2$7={class:"model-name"},_hoisted_3$6={class:"name-text"},_hoisted_4$6={class:"en-name"},_hoisted_5$2={class:"extend-info"},_hoisted_6$2={class:"model-desc"},_hoisted_7$1={class:"bottom-btns"},_sfc_main$9=vue.defineComponent({__name:"small-model-card",props:{plugin:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t;return(i,y)=>{const g=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$9,[vue.createElementVNode("div",_hoisted_2$7,[vue.createElementVNode("span",_hoisted_3$6,vue.toDisplayString(n.plugin.alias),1),vue.createElementVNode("span",_hoisted_4$6,"("+vue.toDisplayString(n.plugin.name)+")",1)]),vue.createElementVNode("p",_hoisted_5$2,[vue.createElementVNode("span",null,"依赖历史数据长度 : "+vue.toDisplayString(n.plugin.display_content.ts_depend_time)+" 天",1),vue.createElementVNode("span",null,"数据频率:"+vue.toDisplayString(n.plugin.display_content.frequency)+" 秒",1),vue.createElementVNode("span",null,"发布人:"+vue.toDisplayString(n.plugin.display_content.created_by),1)]),vue.createElementVNode("p",_hoisted_6$2,vue.toDisplayString(n.plugin.display_content.description||"--"),1),vue.createElementVNode("div",_hoisted_7$1,[vue.createVNode(g,{theme:"primary",size:"small",onClick:y[0]||(y[0]=k=>r("select",n.plugin.id))},{default:vue.withCtx(()=>[...y[1]||(y[1]=[vue.createTextVNode("选择",-1)])]),_:1})])])}}}),SmallModelCard=_export_sfc$1(_sfc_main$9,[["__scopeId","data-v-fed83f20"]]),_hoisted_1$8={class:"model-plugin-group"},_hoisted_2$6={class:"top-operate-area"},_hoisted_3$5={class:"group-selector"},_hoisted_4$5={class:"search-area"},_hoisted_5$1={class:"mode-content-area"},_hoisted_6$1={class:"card-list"},_sfc_main$8=vue.defineComponent({__name:"index",props:{properties:{},plugins:{}},emits:["select"],setup(e,{emit:t}){const n=e,r=t,i=vue.ref("llm"),y=vue.ref("created_at_desc"),g=vue.ref([]),k=vue.computed(()=>i.value==="llm"?[{id:"name",name:"模型名称"},{id:"base_model",name:"基座模型"}]:[{id:"name",name:"模型名称"},{id:"created_by",name:"创建人"}]),$=vue.computed(()=>i.value==="llm"?"搜索模型名称、基座模型":"搜索模型名称、发布人"),V=vue.computed(()=>Object.keys(n.properties).map(he=>({id:he,name:n.properties[he]}))),L=vue.computed(()=>n.plugins.filter(he=>!he.display_content.hidden)),re=he=>he.filter(pe=>pe.group===i.value),ie=he=>{if(g.value.length===0)return he;const pe={name:ae=>ae.name,base_model:ae=>ae.display_content.base_model||"",created_by:ae=>ae.display_content.created_by||""};return he.filter(ae=>g.value.some(ue=>{const de=ue.values[0].id.toLowerCase(),_e=pe[ue.id];return _e?.(ae).toLowerCase().includes(de)??!1}))},oe=he=>{if(i.value!=="llm")return he;const pe=(de,_e,xe)=>{const ze=new Date(de.display_content.created_at).getTime(),Ve=new Date(_e.display_content.created_at).getTime();return xe?ze-Ve:Ve-ze},ue={created_at_asc:(de,_e)=>pe(de,_e,!0),created_at_desc:(de,_e)=>pe(de,_e,!1),name_asc:(de,_e)=>de.alias.localeCompare(_e.alias),name_desc:(de,_e)=>_e.alias.localeCompare(de.alias)}[y.value];return ue?[...he].sort(ue):he},z=vue.computed(()=>{const he=re(L.value),pe=ie(he);return oe(pe)}),j=he=>{i.value=he,y.value="created_at_desc",g.value=[]},le=he=>{g.value=he},Ce=he=>{r("select",he)};return(he,pe)=>{const ae=vue.resolveComponent("bk-radio-button"),ue=vue.resolveComponent("bk-radio-group");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$8,[vue.createElementVNode("div",_hoisted_2$6,[vue.createElementVNode("div",_hoisted_3$5,[V.value.length>1?(vue.openBlock(),vue.createBlock(ue,{key:0,modelValue:i.value,"onUpdate:modelValue":pe[0]||(pe[0]=de=>i.value=de),type:"capsule",onChange:j},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(V.value,de=>(vue.openBlock(),vue.createBlock(ae,{key:de.id,label:de.id},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(de.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$5,[i.value==="llm"?(vue.openBlock(),vue.createBlock(OrderSelector,{key:0,order:y.value,"onUpdate:order":pe[1]||(pe[1]=de=>y.value=de)},null,8,["order"])):vue.createCommentVNode("",!0),vue.createVNode(_sfc_main$d,{modelValue:g.value,options:k.value,placeholder:$.value,onChange:le},null,8,["modelValue","options","placeholder"])])]),vue.createElementVNode("div",_hoisted_5$1,[vue.createElementVNode("div",_hoisted_6$1,[i.value==="llm"?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(z.value,de=>(vue.openBlock(),vue.createBlock(BigModelCard,{key:de.id,plugin:de,onSelect:Ce},null,8,["plugin"]))),128)):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(z.value,de=>(vue.openBlock(),vue.createBlock(SmallModelCard,{key:de.id,plugin:de,onSelect:Ce},null,8,["plugin"]))),128))]),z.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":g.value.length>0,title:"暂无模型插件",onClear:pe[2]||(pe[2]=de=>g.value=[])},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),ModelPluginGroup=_export_sfc$1(_sfc_main$8,[["__scopeId","data-v-05075bf4"]]),_hoisted_1$7={class:"plugin-group"},_sfc_main$7=vue.defineComponent({__name:"output-plugin-group",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[vue.createVNode(EmptyException,{title:"暂无结论输出插件"})]))}}),OutputPluginGroup=_export_sfc$1(_sfc_main$7,[["__scopeId","data-v-474d5047"]]),pluginDefaultIcon="data:image/png;base64,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",_hoisted_1$6={class:"bkflow-plugin-group"},_hoisted_2$5={class:"plugin-content-wrapper"},_hoisted_3$4={class:"tags-list"},_hoisted_4$4=["onClick"],_hoisted_5={class:"plugins-list"},_hoisted_6={class:"plugin-icon-wrapper"},_hoisted_7=["src"],_hoisted_8={class:"plugin-info-wrapper"},_hoisted_9={class:"plugin-name"},_hoisted_10=["title"],_hoisted_11={class:"managers-text"},_sfc_main$6=vue.defineComponent({__name:"bkflow-plugin-group",props:{bkflowPluginTags:{},activedTag:{}},emits:["selectBkflowPlugin"],setup(e,{emit:t}){const n=useFlowApiConfig(),r=e,i=t,y=vue.ref([]),g=vue.ref(r.activedTag||0),k=vue.ref([]),$=vue.ref(!1),V=[{id:"name",name:"插件名称"}];vue.onMounted(()=>{re()});const L=oe=>{g.value=oe,re()},re=async()=>{if($.value=!0,k.value=[],g.value===0){const oe=await n.fetchBkFlowInnerPluginList();k.value=oe.map(z=>({code:z.code,name:z.name,logo_url:pluginDefaultIcon,desc:z.desc||"--",managers:["BkFlow"],version:z.version}))}else{const oe=await n.fetchBkFlowThirdPartyPluginList(g.value);k.value=oe.data.plugins.map(z=>({code:z.code,name:z.name,logo_url:z.logo_url,desc:z.introduction||"--",managers:z.managers,version:"1.0.0"}))}$.value=!1},ie=oe=>{const z=k.value.find(j=>j.code===oe);if(z){const{code:j,name:le,version:Ce}=z;i("selectBkflowPlugin",{code:g.value===0?j:"remote_plugin",name:le,data:g.value===0?{}:{plugin_code:{hook:!1,value:j}},version:Ce})}};return(oe,z)=>{const j=vue.resolveComponent("bk-button"),le=vue.resolveDirective("bk-loading");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[vue.createVNode(_sfc_main$d,{modelValue:y.value,"onUpdate:modelValue":z[0]||(z[0]=Ce=>y.value=Ce),options:V,placeholder:"搜索插件名称"},null,8,["modelValue"]),vue.createElementVNode("div",_hoisted_2$5,[vue.createElementVNode("div",_hoisted_3$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.bkflowPluginTags,Ce=>(vue.openBlock(),vue.createElementBlock("div",{key:Ce.id,class:vue.normalizeClass(["tag-item",{actived:g.value===Ce.id}]),onClick:he=>L(Ce.id)},vue.toDisplayString(Ce.name),11,_hoisted_4$4))),128))]),vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_5,[k.value.length>0?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(k.value,Ce=>(vue.openBlock(),vue.createElementBlock("div",{key:Ce.code,class:"plugin-item"},[vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("img",{src:Ce.logo_url||vue.unref(pluginDefaultIcon),alt:"plugin-icon"},null,8,_hoisted_7)]),vue.createElementVNode("div",_hoisted_8,[vue.createElementVNode("h4",_hoisted_9,vue.toDisplayString(Ce.name),1),vue.createElementVNode("p",{class:"plugin-desc",title:Ce.desc},vue.toDisplayString(Ce.desc),9,_hoisted_10),vue.createElementVNode("div",_hoisted_11,vue.toDisplayString(Ce.managers?Ce.managers.join(","):"BkFlow")+" 提供",1)]),vue.createVNode(j,{theme:"primary",size:"small",onClick:he=>ie(Ce.code)},{default:vue.withCtx(()=>[...z[1]||(z[1]=[vue.createTextVNode("选择",-1)])]),_:1},8,["onClick"])]))),128)):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"该分类暂无插件"}))])),[[le,{loading:$.value}]])])])}}}),BkFlowPluginGroup=_export_sfc$1(_sfc_main$6,[["__scopeId","data-v-3ae0702d"]]),_hoisted_1$5={class:"plugin-select-slider"},_hoisted_2$4={key:0,class:"plugin-select-content"},_sfc_main$5=vue.defineComponent({__name:"index",props:{show:{type:Boolean,default:!1},flowId:{},actived:{default:""},bkflowTag:{default:0},pluginGroupList:{default:()=>[]}},emits:["close","update:show","select"],setup(e,{emit:t}){const n={data:DataPluginGroup,agent:AgentPluginGroup,model:ModelPluginGroup,bkflow:BkFlowPluginGroup,output:OutputPluginGroup},r=e,i=useFlowApiConfig(),y=t,g=vue.ref(r.actived),k=vue.shallowRef([]),$=vue.ref(!1),V=vue.computed(()=>n[g.value]||null),L=vue.computed(()=>r.pluginGroupList.find(Ce=>Ce.name===g.value)?.properties||{}),re=vue.computed(()=>r.pluginGroupList.find(Ce=>Ce.name==="bkflow")?.children||[]);vue.watch(()=>r.show,()=>{r.show&&(g.value=r.actived,g.value!=="bkflow"&&ie())});const ie=async()=>{if(!i?.fetchCategoryPlugins){console.warn("fetchCategoryPlugins is not provided in api");return}$.value=!0;try{const Ce=await i.fetchCategoryPlugins(g.value),he=r.pluginGroupList.find(pe=>pe.name===g.value);he&&Ce.forEach(pe=>{pe.category_id=he.id}),k.value=Ce}catch(Ce){console.error(Ce)}finally{$.value=!1}},oe=Ce=>{g.value=Ce,Ce!=="bkflow"&&ie()},z=Ce=>{const he=k.value.find(pe=>pe.id===Ce);y("select","projectPlugin",he)},j=Ce=>{y("select","bkflowPlugin",Ce)},le=()=>{y("close"),y("update:show",!1)};return(Ce,he)=>{const pe=vue.resolveComponent("bk-sideslider"),ae=vue.resolveDirective("bk-loading");return vue.openBlock(),vue.createBlock(pe,{title:"节点选择","is-show":r.show,width:1200,"esc-close":!1,"before-close":le},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$5,[vue.createVNode(PluginGroupsAside,{actived:g.value,"onUpdate:actived":he[0]||(he[0]=ue=>g.value=ue),groups:r.pluginGroupList,onChange:oe},null,8,["actived","groups"]),r.show?vue.withDirectives((vue.openBlock(),vue.createElementBlock("section",_hoisted_2$4,[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(V.value),{plugins:k.value,"bkflow-plugin-tags":re.value,"actived-tag":r.bkflowTag,properties:L.value,onSelect:z,onSelectBkflowPlugin:j},null,40,["plugins","bkflow-plugin-tags","actived-tag","properties"]))])),[[ae,{loading:$.value}]]):vue.createCommentVNode("",!0)])]),_:1},8,["is-show"])}}}),PluginSelectPanel=_export_sfc$1(_sfc_main$5,[["__scopeId","data-v-043824f1"]]),_hoisted_1$4={class:"flow-canvas-container"},_sfc_main$4=vue.defineComponent({__name:"index",props:{mode:{},flowId:{},pipelineTree:{},spaceFlowConfig:{},systemVariables:{default:()=>[]},pluginGroupList:{default:()=>[]},thumbnail:{type:Boolean,default:!1},defaultZoom:{default:1}},emits:["change"],setup(e,{expose:t,emit:n}){const r=e,i=n,y=vue.ref(),g=vue.ref(),k=vue.ref({show:!1,nodeId:"",edgeId:"",condition:null,hasDefaultBranch:!1,isDefault:!1}),$=vue.ref({show:!1,node:null}),V=vue.ref({show:!1,actived:r.pluginGroupList[0]?.name||"",bkflowTag:0,node:null}),L=$e=>{if(r.thumbnail)return;const Ne=r.pipelineTree.activities[$e.id];Ne&&($.value={show:!0,node:Ne})},re=$e=>{if(r.thumbnail)return;const Ne=r.pipelineTree.flows[$e.id];if(Ne){const Oe=r.pipelineTree.gateways[Ne.source];if(Oe){const kt=!!Oe.default_condition&&typeof Oe.default_condition.flow_id=="string";k.value.hasDefaultBranch=kt,k.value.nodeId=Ne.source,k.value.edgeId=$e.id;const{default_condition:Lt,conditions:Cn}=Oe;Lt&&Lt.flow_id===$e.id?(k.value.condition=Lt,k.value.isDefault=!0):Cn&&Cn[$e.id]&&(k.value.condition=Cn[$e.id],k.value.isDefault=!1),k.value.show=!0}}},ie=($e,Ne)=>{const kt={x:r.pipelineTree.location.find(Cn=>Cn.id===$e).x+200,y:pe($e,Ne)},Lt=`node${uuid()}`;ue($e,{id:Lt,type:Ne,position:kt,data:{id:Lt}})},oe=($e,Ne,Oe)=>{const Lt=r.pluginGroupList.find(kn=>kn.name===Oe).children.find(kn=>kn.id===Ne);if(!Lt)return;const{id:Cn,name:hn,alias:jt,meta_url:vn,api_key:Et="incident",version:wn="",category_id:bn}=Lt,$n={x:r.pipelineTree.location.find(kn=>kn.id===$e).x+200,y:pe($e,"tasknode")},Sn=`node${uuid()}`;ue($e,{id:Sn,type:"tasknode",position:$n,data:{id:Sn,name:"",component:{code:"",data:{},version:""}}}),setTimeout(()=>{Ce(Sn);const kn=r.pipelineTree.activities[Sn];if(kn){const Nn={...kn,name:jt||hn,component:{code:"uniform_api",data:{},version:wn,api_meta:{id:Cn,name:hn,alias:jt||hn,meta_url:vn,api_key:Et,category:{id:bn,name:Oe}}}};$.value={show:!0,node:Nn}}},100)},z=($e,Ne,Oe=0)=>{const Lt={x:r.pipelineTree.location.find(hn=>hn.id===$e).x+200,y:pe($e,"tasknode")},Cn=`node${uuid()}`;ue($e,{id:Cn,type:"tasknode",position:Lt,data:{id:Cn,name:"",component:{code:"",data:{},version:""}}}),setTimeout(()=>{Ce(Cn);const hn=r.pipelineTree.activities[Cn];hn&&(V.value={show:!0,actived:Ne,bkflowTag:Oe,node:hn})},100)},j=$e=>{const{id:Ne,type:Oe,position:kt,data:Lt}=he($e);ae(Ne,Oe,kt,Lt)},le=$e=>{const{id:Ne,type:Oe,position:kt,data:Lt}=he($e);kt.y=pe($e,Oe),ue($e,{id:Ne,type:Oe,position:kt,data:Lt}),setTimeout(()=>{Ce(Ne)},100)},Ce=$e=>{const Ne=y.value.graph.getCellById($e),{x:Oe,y:kt}=Ne.position(),Lt=Ne.getBBox().width,Cn=r.pipelineTree.activities[$e];if(Cn&&Cn.outgoing){const hn=r.pipelineTree.flows[Cn.outgoing].target,jt=y.value.graph.getCellById(hn),{x:vn,y:Et}=jt.position(),wn=vn-Oe;if(wn<Lt+50&&Math.abs(Et-kt)<40){const bn=vn+Lt-wn+50;jt.position(bn,Et);const Tn=[...r.pipelineTree.location],$n=Tn.findIndex(Sn=>Sn.id===hn);$n>-1&&(Tn[$n]={...Tn[$n],x:bn},Ue({...r.pipelineTree,location:Tn}))}}},he=$e=>{const Ne=`node${uuid()}`,Oe=r.pipelineTree.location.find(hn=>hn.id===$e),kt={x:Oe.x+200,y:Oe.y};let Lt,Cn={};if(r.pipelineTree.activities[$e])Cn={...r.pipelineTree.activities[$e],id:Ne,incoming:[],outgoing:""},Lt="tasknode";else{const hn=r.pipelineTree.gateways[$e];Lt=hn.type==="ExclusiveGateway"?"branchgateway":hn.type.toLowerCase(),Cn={incoming:[],outgoing:Array.isArray(hn.outgoing)?[]:""}}return{id:Ne,type:Lt,position:kt,data:Cn}},pe=($e,Ne)=>{const Oe=r.pipelineTree.location.find(Cn=>Cn.id===$e),kt=Oe.type,Lt=Oe.y;if(kt.includes("gateway")){const Cn=r.pipelineTree.gateways[$e];return Array.isArray(Cn.outgoing)&&Cn.outgoing.length>0?Cn.outgoing.reduce((jt,vn)=>{const Et=r.pipelineTree.flows[vn].target,wn=r.pipelineTree.location.find(bn=>bn.id===Et);return Math.max(jt,wn.y)},0)+100:Ne.includes("gateway")?Lt:Lt-10}return Ne.includes("gateway")?Lt+10:Lt},ae=($e,Ne,Oe,kt={})=>{const Lt=Ne.includes("gateway"),Cn=y.value.graph.addNode({id:$e,...Oe,shape:"custom-node",width:Lt?34:154,height:Lt?34:54,data:{type:Ne}});return Cn.setZIndex(r.pipelineTree.location.length),Lt?y.value.createGateway($e,Ne,Oe,kt):y.value.createActivity($e,Oe,kt),Cn},ue=($e,Ne)=>{const Oe=ae(Ne.id,Ne.type,Ne.position,Ne.data);setTimeout(()=>{de($e,Oe.id)},10)},de=($e,Ne)=>{const{activities:Oe,gateways:kt,start_event:Lt,end_event:Cn,location:hn}=r.pipelineTree,jt=hn.find(bn=>bn.id===$e),vn=hn.find(bn=>bn.id===Ne);if(!jt||!vn)return;let Et="";Oe[$e]?Et=Oe[$e].outgoing:kt[$e]?Et=kt[$e].outgoing:Lt.id===$e&&(Et=Lt.outgoing);const wn=_e(Et,$e,Ne);y.value.insertEdgesToCanvas(wn)},_e=($e,Ne,Oe)=>{const kt=[];if(Array.isArray($e)){let Lt="Right";r.pipelineTree.gateways[Ne]&&$e.length>0&&(Lt="Bottom"),kt.push({id:`line${uuid()}`,source:{arrow:Lt,id:Ne},target:{arrow:"Left",id:Oe}})}else if($e==="")kt.push({id:`line${uuid()}`,source:{arrow:"Right",id:Ne},target:{arrow:"Left",id:Oe}});else{const Lt=r.pipelineTree.flows[$e];Lt&&(y.value.deleteEdges([$e]),kt.push({id:`line${uuid()}`,source:{arrow:"Right",id:Ne},target:{arrow:"Left",id:Oe}},{id:`line${uuid()}`,source:{arrow:"Right",id:Oe},target:{arrow:"Left",id:Lt.target}}))}return kt},xe=$e=>{const Ne=[];if(r.pipelineTree.activities[$e]){const Oe=r.pipelineTree.activities[$e];Ne.push(...Oe.incoming),Oe.outgoing&&Ne.push(Oe.outgoing)}else if(r.pipelineTree.gateways[$e]){const Oe=r.pipelineTree.gateways[$e];Ne.push(...Oe.incoming),Array.isArray(Oe.outgoing)?Ne.push(...Oe.outgoing):Oe.outgoing&&Ne.push(Oe.outgoing)}y.value.deleteEdges(Ne)},ze=$e=>{y.value.deleteNode($e)},Ve=$e=>{y.value.deleteEdges([$e.id])},qe=($e,Ne)=>{const Oe={...r.pipelineTree.gateways};if(Oe[k.value.nodeId]){const kt=lodash.cloneDeep(Oe[k.value.nodeId]),Lt=kt.conditions||{},{name:Cn,tag:hn,evaluate:jt="",loc:vn}=$e,Et={name:Cn,tag:hn,evaluate:jt.trim()};vn&&(Et.loc=vn),Ne?(delete Et.evaluate,Et.flow_id=k.value.edgeId,kt.default_condition=Et):Lt[k.value.edgeId]=Et,!k.value.isDefault&&Ne?Lt[k.value.edgeId]&&delete Lt[k.value.edgeId]:k.value.isDefault&&!Ne&&kt.default_condition&&delete kt.default_condition,kt.conditions=Lt,Oe[k.value.nodeId]=kt}Ue({...r.pipelineTree,gateways:Oe}),setTimeout(()=>{y.value.updateEdgeLabel(k.value.edgeId)},10)},At=()=>{if(!$.value.node)return;const $e=lodash.cloneDeep($.value.node);let Ne="";$e.component.api_meta?.category.name?Ne=$e.component.api_meta?.category.name:Ne=r.pluginGroupList[0]?.name||"",V.value={show:!0,actived:Ne,bkflowTag:0,node:$e},$.value={show:!1,node:null}},Fe=($e,Ne)=>{if(!V.value.node)return;const Oe=lodash.cloneDeep(V.value.node);if($e==="projectPlugin"){const{id:kt,name:Lt,alias:Cn,meta_url:hn,api_key:jt="incident",version:vn="v2.0.0",category:Et,category_id:wn}=Ne;Oe.component={code:"uniform_api",data:{},version:vn,api_meta:{id:kt,name:Lt,alias:Cn||Lt,meta_url:hn,api_key:jt,category:{id:wn,name:Et}}},Oe.name=Cn}else{const{code:kt,data:Lt,version:Cn,name:hn}=Ne;Oe.component={code:kt,data:Lt,version:Cn},Oe.name=hn}$.value={show:!0,node:Oe},V.value.show=!1},Ie=($e,Ne)=>{const Oe={...r.pipelineTree.activities},kt=[...r.pipelineTree.location],Lt=kt.findIndex(Cn=>Cn.id===$e.id);if(Oe[$e.id]=$e,Lt>-1){const Cn=kt[Lt];Cn.name=$e.name,kt[Lt]=Cn}$.value={show:!1,node:null},Ue({...r.pipelineTree,activities:Oe,location:kt,constants:Ne}),setTimeout(()=>{y.value.updateNodeData($e.id,$e)},10)},Ue=$e=>{i("change",$e)};return t({updateNodeInputParams:$e=>{g.value&&$.value.show&&g.value.updateNodeInputParams?.($e)}}),($e,Ne)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$4,[vue.createVNode(vue.unref(BkFlowCanvas),{ref_key:"bkflowCanvasRef",ref:y,editable:r.mode==="edit","pipeline-tree":r.pipelineTree,"hide-tool":r.thumbnail,"default-zoom":r.defaultZoom,onNodeClick:L,onEdgeLabelClick:re,onUpdatePipelineTree:Ue,onDeleteEdge:Ve},{customNode:vue.withCtx(()=>[vue.createVNode(CustomNode,{editable:r.mode==="edit","plugin-group-list":r.pluginGroupList,onAddNode:ie,onAddPlugin:oe,onAddNodeAndSelectPlugin:z,onDeleteBtnClick:ze,onCopyNodeClick:j,onCopyNodeAndInsertClick:le,onDetachEdgesClick:xe},null,8,["editable","plugin-group-list"])]),_:1},8,["editable","pipeline-tree","hide-tool","default-zoom"]),!r.thumbnail&&k.value.condition?(vue.openBlock(),vue.createBlock(BranchConditionPanel,{key:0,show:k.value.show,"onUpdate:show":Ne[0]||(Ne[0]=Oe=>k.value.show=Oe),condition:k.value.condition,"has-default-branch":k.value.hasDefaultBranch,"is-default":k.value.isDefault,editable:r.mode==="edit",onConfirm:qe},null,8,["show","condition","has-default-branch","is-default","editable"])):vue.createCommentVNode("",!0),!r.thumbnail&&$.value.node?(vue.openBlock(),vue.createBlock(NodeConfigPanel,{key:1,ref_key:"nodeConfigPanelRef",ref:g,show:$.value.show,"onUpdate:show":Ne[1]||(Ne[1]=Oe=>$.value.show=Oe),node:$.value.node,editable:r.mode==="edit","system-variables":r.systemVariables,constants:r.pipelineTree.constants,onSelectPlugin:At,onConfirm:Ie},{inputParams:vue.withCtx(Oe=>[vue.renderSlot($e.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(Oe)),void 0,!0)]),_:3},8,["show","node","editable","system-variables","constants"])):vue.createCommentVNode("",!0),r.thumbnail?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(PluginSelectPanel,{key:2,show:V.value.show,"onUpdate:show":Ne[2]||(Ne[2]=Oe=>V.value.show=Oe),"flow-id":r.flowId,actived:V.value.actived,"bkflow-tag":V.value.bkflowTag,"plugin-group-list":r.pluginGroupList,onSelect:Fe},null,8,["show","flow-id","actived","bkflow-tag","plugin-group-list"]))]))}}),FlowCanvas=_export_sfc$1(_sfc_main$4,[["__scopeId","data-v-bfe93680"]]),_hoisted_1$3={class:"execute-flow-slider"},_hoisted_2$3={class:"flow-name-wrapper"},_hoisted_3$3={class:"form-params-wrapper"},_hoisted_4$3={key:0,class:"sideslider-footer-buttons"},_sfc_main$3=vue.defineComponent({__name:"execute",props:{flowId:{},show:{type:Boolean},editable:{type:Boolean,default:!0},showFlowEntry:{type:Boolean,default:!1},apiConfig:{},onExecuteSuccess:{},bkflowSaasUrl:{}},emits:["confirm","close","update:show","before-close"],setup(e,{emit:t}){const n=e,r=t,i=provideFlowApiConfig(n.apiConfig);setContext({},n.bkflowSaasUrl);const y={name:[{required:!0,message:"请输入任务名称",trigger:"blur"}]},g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.shallowRef([]),V=vue.ref({}),L=vue.shallowRef([]),re=vue.ref(),ie=vue.ref(),oe=vue.ref({name:""}),z=vue.shallowRef(!1);vue.watch(()=>n.show,ue=>{ue&&j()});const j=async()=>{k.value=!0;const ue=await i.fetchFlowDetail(n.flowId);g.value=ue,oe.value.name=`${ue.name}_${dayjs().format("YYYYMMDDHHmmss")}`;const de=[],_e={};Object.values(ue.pipeline_tree.constants).forEach(xe=>{if(typeof xe!="object"||xe===null)return;const ze=xe;ze.source_type!=="system"&&ze.show_type==="show"&&de.push(ze),"value"in ze&&(_e[ze.key]=ze.value)}),L.value=de,V.value=_e,await le(),k.value=!1},le=async()=>{if(!g.value?.pipeline_tree?.constants){$.value=[];return}if(!("fetchBkFlowInnerPluginDetail"in i)||typeof i.fetchBkFlowInnerPluginDetail!="function"){console.warn("fetchBkFlowInnerPluginDetail API is not available"),$.value=[];return}try{const ue=await getInputFormsFromConstants(i,g.value.pipeline_tree.constants);$.value=ue}catch(ue){console.error("Failed to get input forms from constants:",ue),$.value=[]}},Ce=()=>{n.onExecuteSuccess},he=ue=>{V.value=lodash.cloneDeep(ue)},pe=async()=>{if(!i.createFlowTask||!i.executeFlowTask){console.warn("createFlowTask or executeFlowTask is not provided in api");return}const[ue,de]=await Promise.all([re.value?.validate(),Promise.resolve(ie.value&&typeof ie.value.validate=="function"?ie.value.validate():!0)]);if(!(!ue||!de))try{z.value=!0;const _e=await i.createFlowTask({template_id:n.flowId,creator:"admin",name:oe.value.name,description:"",constants:V.value});_e.data.id&&(await i.executeFlowTask({action:"start",task_id:_e.data.id,resource_type:"TASK",resource_id:_e.data.id,permission_type:"OPERATE"}),BkMessage({theme:"success",message:"执行成功"}),r("confirm"),ae(),n.onExecuteSuccess&&n.onExecuteSuccess(_e.data.id,_e.data.template_id))}catch(_e){console.error(_e)}finally{z.value=!1}},ae=()=>{r("before-close"),L.value=[],V.value={},r("close"),r("update:show",!1)};return(ue,de)=>{const _e=vue.resolveComponent("bk-input"),xe=vue.resolveComponent("bk-form-item"),ze=vue.resolveComponent("bk-form"),Ve=vue.resolveComponent("bk-button"),qe=vue.resolveComponent("bk-sideslider"),At=vue.resolveDirective("bk-tooltips"),Fe=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(qe,{title:"执行流程","is-show":n.show,width:700,"quick-close":!1,"esc-close":!1,"before-close":ae},{footer:vue.withCtx(()=>[k.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$3,[vue.createVNode(Ve,{theme:"primary",loading:z.value,onClick:pe},{default:vue.withCtx(()=>[...de[1]||(de[1]=[vue.createTextVNode("确定",-1)])]),_:1},8,["loading"]),vue.createVNode(Ve,{onClick:ae},{default:vue.withCtx(()=>[...de[2]||(de[2]=[vue.createTextVNode("取消",-1)])]),_:1})]))]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$3,[vue.createVNode(ze,{ref_key:"formRef",ref:re,"form-type":"vertical",model:oe.value,rules:y,"label-width":100},{default:vue.withCtx(()=>[e.showFlowEntry?(vue.openBlock(),vue.createBlock(xe,{key:0,label:"排障流程",required:""},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$3,[vue.createVNode(_e,{readonly:"","model-value":g.value?.name},null,8,["model-value"]),vue.withDirectives(vue.createVNode(vue.unref(icon.Share),{class:"link-icon",onClick:Ce},null,512),[[At,"查看排障流程",void 0,{top:!0}]])])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(xe,{label:"任务名称",property:"name",required:""},{default:vue.withCtx(()=>[vue.createVNode(_e,{modelValue:oe.value.name,"onUpdate:modelValue":de[0]||(de[0]=Ie=>oe.value.name=Ie),placeholder:"请输入任务名称","show-word-limit":"",maxlength:100},null,8,["modelValue"])]),_:1}),vue.createVNode(xe,{label:"请求参数",property:"inputParams",description:"流程的入参"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$3,[$.value.length>0?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:ie,scheme:$.value,editable:n.editable,"form-option":{showRequired:!0,showGroup:!0,showLabel:!1,showHook:!1,showDesc:!0,formEdit:n.editable},"form-data":V.value,onChange:he},null,8,["scheme","editable","form-option","form-data"])):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"暂无参数"}))])]),_:1})]),_:1},8,["model"])])),[[Fe,{loading:k.value}]])]),_:1},8,["is-show"])}}}),FlowExecute=_export_sfc$1(_sfc_main$3,[["__scopeId","data-v-0b70470a"]]),execute=Object.freeze(Object.defineProperty({__proto__:null,default:FlowExecute},Symbol.toStringTag,{value:"Module"})),_hoisted_1$2={key:0,class:"operate-area"},_hoisted_2$2={key:0,class:"operate-btns"},_hoisted_3$2={class:"flow-view-page-content"},_hoisted_4$2={key:1,class:"flow-view-thumbnail"},_sfc_main$2=vue.defineComponent({__name:"view",props:{flowId:{},apiConfig:{},permissions:{default:()=>({canEdit:!0})},onEdit:{},onBack:{},thumbnail:{type:Boolean,default:!1},enableVersion:{type:Boolean,default:!1},flowVersion:{},showHeaderActions:{type:Boolean,default:!0},defaultZoom:{default:1},bkflowSaasUrl:{}},emits:["edit","back"],setup(e,{emit:t}){const n=vue.useSlots(),r=e,i=provideFlowApiConfig(r.apiConfig),y=t;setContext({},r.bkflowSaasUrl);const g=vue.shallowRef(!1),k=vue.shallowRef(null),$=vue.shallowRef(!0),V=vue.shallowRef({}),L=vue.shallowRef(!0),re=vue.shallowRef([]),ie=vue.shallowRef(!1);vue.onMounted(()=>{oe(),z(),j()});const oe=async()=>{$.value=!0;try{let pe=await i.fetchFlowDetail(String(r.flowId));if(r.enableVersion)if(r.flowVersion){const ae=await i.fetchFlowDetailByVersion(String(r.flowId),r.flowVersion);pe={...pe,name:ae.name,pipeline_tree:ae.pipeline_tree}}else{const ae=await i.fetchFlowDraftDetail(String(r.flowId));pe={...pe,pipeline_tree:ae.pipeline_tree}}k.value=pe}catch(pe){console.error(pe)}finally{$.value=!1}},z=async()=>{L.value=!0;try{const pe=await i.fetchSpaceFlowConfig(String(r.flowId));V.value=pe}catch(pe){console.error(pe)}finally{L.value=!1}},j=async()=>{ie.value=!0;try{const pe=await i.fetchSystemVariables(String(r.flowId));re.value=pe}catch(pe){console.error(pe)}finally{ie.value=!1}},le=()=>{typeof r.onBack=="function"?r.onBack():y("back")},Ce=()=>{typeof r.onEdit=="function"?r.onEdit():y("edit")},he=(pe,ae)=>{};return(pe,ae)=>{const ue=vue.resolveComponent("bk-button"),de=vue.resolveDirective("bk-tooltips"),_e=vue.resolveDirective("bkloading");return r.thumbnail?vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[k.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,mode:"view","flow-id":e.flowId,"pipeline-tree":k.value.pipeline_tree,"space-flow-config":V.value,"system-variables":re.value,thumbnail:!0,"default-zoom":r.defaultZoom},{inputParams:vue.withCtx(xe=>[vue.renderSlot(pe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(xe)),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","system-variables","default-zoom"])):vue.createCommentVNode("",!0)])),[[_e,{loading:$.value||L.value}]]):(vue.openBlock(),vue.createBlock(ContainerLayout,{key:0,title:"查看流程",desc:k.value?.name,"show-back-icon":!0,onBack:le},vue.createSlots({extend:vue.withCtx(()=>[k.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$2,[vue.createVNode(FlowInfoSliders,{editable:!1,"flow-data":k.value,"system-variables":re.value,"fetch-user-api":vue.unref(i).fetchUserApi},null,8,["flow-data","system-variables","fetch-user-api"]),ae[5]||(ae[5]=vue.createElementVNode("div",{class:"split-line"},null,-1)),e.showHeaderActions?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$2,[vue.createVNode(ue,{theme:"primary",class:vue.normalizeClass([e.permissions.canEdit?"":"is-disabled"]),onClick:Ce},{default:vue.withCtx(()=>[...ae[2]||(ae[2]=[vue.createTextVNode(" 编辑 ",-1)])]),_:1},8,["class"]),vue.createVNode(ue,{theme:"primary",outline:"",onClick:ae[0]||(ae[0]=xe=>g.value=!0)},{default:vue.withCtx(()=>[...ae[3]||(ae[3]=[vue.createTextVNode("执行流程",-1)])]),_:1}),vue.withDirectives((vue.openBlock(),vue.createBlock(ue,{disabled:!0},{default:vue.withCtx(()=>[...ae[4]||(ae[4]=[vue.createTextVNode("调试",-1)])]),_:1})),[[de,"功能开发中"]])])):vue.createCommentVNode("",!0)])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_3$2,[k.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,mode:"view","flow-id":e.flowId,"pipeline-tree":k.value.pipeline_tree,"space-flow-config":V.value,"system-variables":re.value,thumbnail:r.thumbnail,"default-zoom":r.defaultZoom},{inputParams:vue.withCtx(xe=>[vue.renderSlot(pe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps(xe)),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","system-variables","thumbnail","default-zoom"])):vue.createCommentVNode("",!0)])),[[_e,{loading:$.value||L.value}]]),k.value?(vue.openBlock(),vue.createBlock(FlowExecute,{key:0,"flow-id":e.flowId,show:g.value,"api-config":r.apiConfig,"bkflow-saas-url":r.bkflowSaasUrl,onClose:ae[1]||(ae[1]=xe=>g.value=!1),onConfirm:he},null,8,["flow-id","show","api-config","bkflow-saas-url"])):vue.createCommentVNode("",!0)]),_:2},[vue.unref(n).header?{name:"header",fn:vue.withCtx(()=>[vue.renderSlot(pe.$slots,"header",{},void 0,!0)]),key:"0"}:void 0]),1032,["desc"]))}}}),view=_export_sfc$1(_sfc_main$2,[["__scopeId","data-v-6af582dd"]]),view$1=Object.freeze(Object.defineProperty({__proto__:null,default:view},Symbol.toStringTag,{value:"Module"})),_hoisted_1$1={class:"execute-flow-slider"},_hoisted_2$1={class:"flow-name-wrapper"},_hoisted_3$1={class:"form-params-wrapper"},_hoisted_4$1={key:0,class:"sideslider-footer-buttons"},_sfc_main$1=vue.defineComponent({__name:"debug",props:{flowId:{},show:{type:Boolean},editable:{type:Boolean,default:!0},showFlowEntry:{type:Boolean,default:!1},apiConfig:{},onConfirm:{},useCustomConfirm:{type:Boolean,default:!1},onExecuteSuccess:{},bkflowSaasUrl:{}},emits:["confirm","close","update:show","before-close"],setup(e,{emit:t}){const n=e,r=t,i=provideFlowApiConfig(n.apiConfig);setContext({},n.bkflowSaasUrl);const y={name:[{required:!0,message:"请输入任务名称",trigger:"blur"}]},g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.shallowRef([]),V=vue.ref({}),L=vue.shallowRef([]),re=vue.ref(),ie=vue.ref(),oe=vue.ref({name:""}),z=vue.shallowRef(!1);vue.watch(()=>n.show,de=>{de&&j()});const j=async()=>{k.value=!0;const de=await i.fetchFlowDetail(n.flowId);g.value=de,oe.value.name=`${de.name}_${dayjs().format("YYYYMMDDHHmmss")}`;const _e=[],xe={};Object.values(de.pipeline_tree.constants).forEach(ze=>{if(typeof ze!="object"||ze===null)return;const Ve=ze;Ve.source_type!=="system"&&Ve.show_type==="show"&&_e.push(Ve),"value"in Ve&&(xe[Ve.key]=Ve.value)}),L.value=_e,V.value=xe,await le(),k.value=!1},le=async()=>{if(!g.value?.pipeline_tree?.constants){$.value=[];return}if(!("fetchBkFlowInnerPluginDetail"in i)||typeof i.fetchBkFlowInnerPluginDetail!="function"){console.warn("fetchBkFlowInnerPluginDetail API is not available"),$.value=[];return}try{const de=await getInputFormsFromConstants(i,g.value.pipeline_tree.constants);$.value=de}catch(de){console.error("Failed to get input forms from constants:",de),$.value=[]}},Ce=()=>{n.onExecuteSuccess},he=de=>{V.value=lodash.cloneDeep(de)},pe=async()=>{if(!i.createFlowTask||!i.executeFlowTask){console.warn("createFlowTask or executeFlowTask is not provided in api");return}try{z.value=!0;const de=await i.createFlowTask({template_id:n.flowId,creator:"admin",name:oe.value.name,description:"",constants:V.value});de.data.id&&(await i.executeFlowTask({action:"start",task_id:de.data.id,resource_type:"TASK",resource_id:de.data.id,permission_type:"OPERATE"}),BkMessage({theme:"success",message:"执行成功"}),r("confirm",de.data.id,de.data.template_id),ue(),n.onExecuteSuccess&&n.onExecuteSuccess(de.data.id,de.data.template_id))}catch(de){console.error(de)}finally{z.value=!1}},ae=async()=>{const[de,_e]=await Promise.all([re.value?.validate(),Promise.resolve(ie.value&&typeof ie.value.validate=="function"?ie.value.validate():!0)]);if(!de||!_e)return;const xe={name:oe.value.name,variablesValue:V.value};if(n.useCustomConfirm&&n.onConfirm)try{z.value=!0,await n.onConfirm(xe),r("confirm"),ue()}catch(ze){console.error(ze)}finally{z.value=!1}else await pe(),n.onConfirm&&await n.onConfirm(xe)},ue=()=>{r("before-close"),L.value=[],V.value={},r("close"),r("update:show",!1)};return(de,_e)=>{const xe=vue.resolveComponent("bk-input"),ze=vue.resolveComponent("bk-form-item"),Ve=vue.resolveComponent("bk-form"),qe=vue.resolveComponent("bk-button"),At=vue.resolveComponent("bk-sideslider"),Fe=vue.resolveDirective("bk-tooltips"),Ie=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(At,{title:"调试流程","is-show":n.show,width:700,"quick-close":!1,"esc-close":!1,"before-close":ue},{footer:vue.withCtx(()=>[k.value?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$1,[vue.createVNode(qe,{theme:"primary",loading:z.value,onClick:ae},{default:vue.withCtx(()=>[..._e[1]||(_e[1]=[vue.createTextVNode("确定",-1)])]),_:1},8,["loading"]),vue.createVNode(qe,{onClick:ue},{default:vue.withCtx(()=>[..._e[2]||(_e[2]=[vue.createTextVNode("取消",-1)])]),_:1})]))]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1,[vue.createVNode(Ve,{ref_key:"formRef",ref:re,"form-type":"vertical",model:oe.value,rules:y,"label-width":100},{default:vue.withCtx(()=>[n.showFlowEntry?(vue.openBlock(),vue.createBlock(ze,{key:0,label:"排障流程",required:""},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_2$1,[vue.createVNode(xe,{readonly:"","model-value":g.value?.name},null,8,["model-value"]),vue.withDirectives(vue.createVNode(vue.unref(icon.Share),{class:"link-icon",onClick:Ce},null,512),[[Fe,"查看排障流程",void 0,{top:!0}]])])]),_:1})):vue.createCommentVNode("",!0),vue.createVNode(ze,{label:"任务名称",property:"name",required:""},{default:vue.withCtx(()=>[vue.createVNode(xe,{modelValue:oe.value.name,"onUpdate:modelValue":_e[0]||(_e[0]=Ue=>oe.value.name=Ue),placeholder:"请输入任务名称","show-word-limit":"",maxlength:100},null,8,["modelValue"])]),_:1}),vue.createVNode(ze,{label:"请求参数",property:"inputParams",description:"流程的入参"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_3$1,[$.value.length>0?(vue.openBlock(),vue.createBlock(RenderForm,{key:0,ref_key:"renderFormRef",ref:ie,scheme:$.value,editable:n.editable,"form-option":{showRequired:!0,showGroup:!0,showLabel:!1,showHook:!1,showDesc:!0,formEdit:n.editable},"form-data":V.value,onChange:he},null,8,["scheme","editable","form-option","form-data"])):(vue.openBlock(),vue.createBlock(EmptyException,{key:1,title:"暂无参数"}))])]),_:1}),vue.renderSlot(de.$slots,"custom-form-content",{formData:oe.value,variablesValue:V.value},void 0,!0)]),_:3},8,["model"])])),[[Ie,{loading:k.value}]])]),_:3},8,["is-show"])}}}),FlowDebug=_export_sfc$1(_sfc_main$1,[["__scopeId","data-v-2796a48a"]]),debug=Object.freeze(Object.defineProperty({__proto__:null,default:FlowDebug},Symbol.toStringTag,{value:"Module"})),_hoisted_1={key:0,class:"operate-area"},_hoisted_2={class:"flow-actions"},_hoisted_3={class:"operate-btns"},_hoisted_4={class:"flow-edit-page-content"},_sfc_main=vue.defineComponent({__name:"edit",props:{flowId:{},apiConfig:{},permissions:{default:()=>({canSave:!0})},enableDebug:{type:Boolean,default:!1},onDebugConfirm:{},useCustomDebugConfirm:{type:Boolean,default:!1},agentSelectPanelConfig:{},onSave:{},onSaveSuccess:{},onBack:{},onBeforeLeave:{},enableVersion:{type:Boolean,default:!1},flowVersion:{},defaultZoom:{default:1},bkflowSaasUrl:{}},emits:["save","saveSuccess","back","debugBeforeClose"],setup(e,{expose:t,emit:n}){const r=e,i=provideFlowApiConfig(r.apiConfig);provideAgentSelectPanelConfig(r.agentSelectPanelConfig||{});const y=n;setContext({},r.bkflowSaasUrl);const g=vue.shallowRef(null),k=vue.shallowRef(!0),$=vue.ref(),V=vue.ref(),L=vue.shallowRef(!0),re=vue.shallowRef({}),ie=vue.shallowRef(!1),oe=vue.shallowRef([]),z=vue.shallowRef(!1),j=vue.shallowRef([]),le=vue.shallowRef(!1),Ce=vue.shallowRef(!1),he=vue.ref(!1),pe=vue.computed(()=>String(r.flowId)),ae=vue.computed(()=>k.value||z.value||L.value);vue.onMounted(()=>{ue(),de(),_e(),xe()});const ue=async()=>{k.value=!0;try{let Oe=await i.fetchFlowDetail(pe.value);if(r.enableVersion)if(r.flowVersion){const kt=await i.fetchFlowDetailByVersion(pe.value,r.flowVersion);Oe={...Oe,name:kt.name,pipeline_tree:kt.pipeline_tree}}else{const kt=await i.fetchFlowDraftDetail(pe.value);Oe={...Oe,pipeline_tree:kt.pipeline_tree}}g.value=Oe}catch(Oe){console.error(Oe)}finally{k.value=!1}},de=async()=>{L.value=!0;try{const Oe=await i.fetchSpaceFlowConfig(pe.value);re.value=Oe}catch(Oe){console.error(Oe)}finally{L.value=!1}},_e=async()=>{le.value=!0;try{const Oe=await i.fetchSystemVariables(pe.value);j.value=Oe}catch(Oe){console.error(Oe)}finally{le.value=!1}},xe=async()=>{z.value=!0;try{const Oe=await i.fetchAllPluginGroups();oe.value=Oe}catch(Oe){console.error(Oe)}finally{z.value=!1}},ze=()=>{r.onBack?r.onBack():y("back")},Ve=()=>{$.value?.openBasicSetting()},qe=Oe=>{g.value=Oe},At=Oe=>{g.value={...g.value,pipeline_tree:Oe},Ce.value=!0},Fe=Oe=>{V.value&&V.value.updateNodeInputParams?.(Oe)},Ie=async()=>{if(Ce.value){if(!r.permissions.canSave){bkuiVue.Message({theme:"warning",message:"您没有保存权限,无法在未保存的情况下进行调试"});return}return new Promise(kt=>{lib.InfoBox({title:"确认调试?",content:"流程已修改,调试前需要先保存流程。是否保存并继续调试?",confirmText:"保存并调试",cancelText:"取消",width:400,headerAlign:"center",footerAlign:"center",onConfirm:async()=>{const Lt=validatePipelineTree(g.value?.pipeline_tree);if(!Lt.valid){bkuiVue.Message({theme:"error",message:Lt.message}),kt();return}try{await Ne(),he.value=!0}catch(Cn){console.error("保存失败:",Cn),bkuiVue.Message({theme:"error",message:"保存失败,请重试"})}finally{kt()}},onCancel:()=>{kt()}})})}const Oe=validatePipelineTree(g.value?.pipeline_tree);Oe.valid?he.value=!0:bkuiVue.Message({theme:"error",message:Oe.message})},Ue=()=>{y("debugBeforeClose")},Dt=()=>{he.value=!1},$e=()=>{if(!r.permissions.canSave)return;const Oe=validatePipelineTree(g.value?.pipeline_tree);Oe.valid?Ne():bkuiVue.Message({theme:"error",message:Oe.message})},Ne=async()=>{const{name:Oe,desc:kt,notify_config:Lt,pipeline_tree:Cn,triggers:hn}=g.value,jt={name:Oe,desc:kt,notify_config:Lt,pipeline_tree:Cn,triggers:hn};try{ie.value=!0,await i.saveFlow(pe.value,jt),Ce.value=!1,bkuiVue.Message({theme:"success",message:"保存成功"}),r.onSave&&r.onSave(g.value),r.onSaveSuccess&&r.onSaveSuccess(),y("save",g.value),y("saveSuccess")}catch(vn){console.error(vn)}finally{ie.value=!1}};return t({isFlowEdited:vue.computed(()=>Ce.value),updateNodeInputParams:Fe}),(Oe,kt)=>{const Lt=vue.resolveComponent("bk-button"),Cn=vue.resolveDirective("bk-tooltips"),hn=vue.resolveDirective("bkloading");return vue.openBlock(),vue.createBlock(ContainerLayout,{title:"编辑流程",desc:g.value?.name,"show-back-icon":!0,"show-edit-icon":!0,onBack:ze,onEdit:Ve},{header:vue.withCtx(()=>[vue.renderSlot(Oe.$slots,"header",{},void 0,!0)]),extend:vue.withCtx(()=>[g.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1,[vue.createElementVNode("div",_hoisted_2,[vue.createVNode(FlowInfoSliders,{ref_key:"flowInfoSlidersRef",ref:$,"flow-data":g.value,"system-variables":j.value,"fetch-user-api":vue.unref(i).fetchUserApi,onChange:qe},null,8,["flow-data","system-variables","fetch-user-api"]),kt[4]||(kt[4]=vue.createElementVNode("div",{class:"split-line"},null,-1)),vue.createElementVNode("div",_hoisted_3,[vue.createVNode(Lt,{class:vue.normalizeClass([e.permissions.canSave?"":"is-disabled"]),theme:"primary",loading:ie.value,onClick:$e},{default:vue.withCtx(()=>[...kt[1]||(kt[1]=[vue.createTextVNode(" 保存 ",-1)])]),_:1},8,["class","loading"]),e.enableDebug?(vue.openBlock(),vue.createBlock(Lt,{key:0,onClick:Ie},{default:vue.withCtx(()=>[...kt[2]||(kt[2]=[vue.createTextVNode("调试",-1)])]),_:1})):vue.withDirectives((vue.openBlock(),vue.createBlock(Lt,{key:1,disabled:!0},{default:vue.withCtx(()=>[...kt[3]||(kt[3]=[vue.createTextVNode("调试",-1)])]),_:1})),[[Cn,"功能开发中"]])])])])):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_4,[!ae.value&&g.value?(vue.openBlock(),vue.createBlock(FlowCanvas,{key:0,ref_key:"flowCanvasRef",ref:V,mode:"edit","flow-id":pe.value,"pipeline-tree":g.value.pipeline_tree,"space-flow-config":re.value,"plugin-group-list":oe.value,"system-variables":j.value,"default-zoom":r.defaultZoom,onChange:At},{inputParams:vue.withCtx(jt=>[vue.renderSlot(Oe.$slots,"inputParams",vue.normalizeProps(vue.guardReactiveProps({...jt,updateNodeInputParams:Fe})),void 0,!0)]),_:3},8,["flow-id","pipeline-tree","space-flow-config","plugin-group-list","system-variables","default-zoom"])):vue.createCommentVNode("",!0)])),[[hn,{loading:ae.value}]]),g.value?(vue.openBlock(),vue.createBlock(FlowDebug,{key:0,"flow-id":pe.value,show:he.value,"api-config":r.apiConfig,"bkflow-saas-url":r.bkflowSaasUrl,"on-confirm":r.onDebugConfirm,"use-custom-confirm":r.useCustomDebugConfirm,onClose:Dt,"onUpdate:show":kt[0]||(kt[0]=jt=>he.value=jt),onBeforeClose:Ue},{"custom-form-content":vue.withCtx(jt=>[vue.renderSlot(Oe.$slots,"debugCustomFormContent",vue.normalizeProps(vue.guardReactiveProps(jt)),void 0,!0)]),_:3},8,["flow-id","show","api-config","bkflow-saas-url","on-confirm","use-custom-confirm"])):vue.createCommentVNode("",!0)]),_:3},8,["desc"])}}}),edit=_export_sfc$1(_sfc_main,[["__scopeId","data-v-527e4980"]]),edit$1=Object.freeze(Object.defineProperty({__proto__:null,default:edit},Symbol.toStringTag,{value:"Module"})),index={FlowView:()=>Promise.resolve().then(()=>view$1),FlowEdit:()=>Promise.resolve().then(()=>edit$1),FlowExecute:()=>Promise.resolve().then(()=>execute),FlowDebug:()=>Promise.resolve().then(()=>debug)};exports.FlowDebug=FlowDebug;exports.FlowEdit=edit;exports.FlowExecute=FlowExecute;exports.FlowView=view;exports.PLUGIN_GROUP_ICON_MAP=PLUGIN_GROUP_ICON_MAP;exports.default=index;exports.getUniformApiPluginFormValue=getUniformApiPluginFormValue$1;exports.getVariableDefaultConfig=getVariableDefaultConfig;exports.parentClsContains=parentClsContains;exports.provideAgentSelectPanelConfig=provideAgentSelectPanelConfig;exports.provideFlowApiConfig=provideFlowApiConfig;exports.useAgentSelectPanelConfig=useAgentSelectPanelConfig;exports.useFlowApi=useFlowApi;exports.useFlowApiConfig=useFlowApiConfig;exports.useFlowEditApiConfig=useFlowEditApiConfig;exports.useFlowViewApiConfig=useFlowViewApiConfig;exports.uuid=uuid;exports.validatePipelineTree=validatePipelineTree;