@blueking/bkflow-canvas-editor 0.0.19 → 0.0.21
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 +2 -2
- package/dist/index.esm.js +15 -12
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
.x6-widget-dnd .x6-graph .x6-graph-svg-viewport {
|
|
28
28
|
transform: translate(7px, 7px);
|
|
29
29
|
}
|
|
30
|
-
`;let Dnd$1=class Po extends x6.View{get targetScroller(){const{target:t}=this.options;return t.getPlugin("scroller")}get targetGraph(){return this.options.target}get targetModel(){return this.targetGraph.model}get snapline(){const{target:t}=this.options;return t.getPlugin("snapline")}constructor(t){super(),this.name="dnd",this.options=Object.assign(Object.assign({},Po.defaults),t),this.init()}init(){x6.CssLoader.ensure(this.name,content),this.container=document.createElement("div"),x6.Dom.addClass(this.container,this.prefixClassName("widget-dnd")),this.draggingGraph=new x6.Graph(Object.assign(Object.assign({},this.options.delegateGraphOptions),{container:document.createElement("div"),width:1,height:1,async:!1})),x6.Dom.append(this.container,this.draggingGraph.container)}start(t,n){const r=n;r.preventDefault(),this.targetModel.startBatch("dnd"),x6.Dom.addClass(this.container,"dragging"),x6.Dom.appendTo(this.container,this.options.draggingContainer||document.body),this.sourceNode=t,this.prepareDragging(t,r.clientX,r.clientY);const i=this.updateNodePosition(r.clientX,r.clientY);this.isSnaplineEnabled()&&(this.snapline.captureCursorOffset({e:r,node:t,cell:t,view:this.draggingView,x:i.x,y:i.y}),this.draggingNode.on("change:position",this.snap,this)),this.delegateDocumentEvents(Po.documentEvents,r.data)}isSnaplineEnabled(){return this.snapline&&this.snapline.isEnabled()}prepareDragging(t,n,r){const{draggingGraph:i}=this,y=i.model,g=this.options.getDragNode(t,{sourceNode:t,draggingGraph:i,targetGraph:this.targetGraph});g.position(0,0);let k=5;if(this.isSnaplineEnabled()&&(k+=this.snapline.options.tolerance||0),this.isSnaplineEnabled()||this.options.scaled){const L=this.targetGraph.transform.getScale();i.scale(L.sx,L.sy),k*=Math.max(L.sx,L.sy)}else i.scale(1,1);this.clearDragging(),y.resetCells([g]);const $=i.findViewByCell(g);$.undelegateEvents(),$.cell.off("changed"),i.fitToContent({padding:k,allowNewOrigin:"any",useCellGeometry:!1});const V=$.getBBox();this.geometryBBox=$.getBBox({useCellGeometry:!0}),this.delta=this.geometryBBox.getTopLeft().diff(V.getTopLeft()),this.draggingNode=g,this.draggingView=$,this.draggingBBox=g.getBBox(),this.padding=k,this.originOffset=this.updateGraphPosition(n,r)}updateGraphPosition(t,n){const r=document.body.scrollTop||document.documentElement.scrollTop,{delta:i}=this,y=this.geometryBBox,g=this.padding||5,k={left:t-i.x-y.width/2-g,top:n-i.y-y.height/2-g+r};return this.draggingGraph&&x6.Dom.css(this.container,{left:`${k.left}px`,top:`${k.top}px`}),k}updateNodePosition(t,n){const r=this.targetGraph.clientToLocal(t,n),i=this.draggingBBox;return r.x-=i.width/2,r.y-=i.height/2,this.draggingNode.position(r.x,r.y),r}snap({cell:t,current:n,options:r}){const i=t;if(r.snapped){const y=this.draggingBBox;i.position(y.x+r.tx,y.y+r.ty,{silent:!0}),this.draggingView.translate(),i.position(n.x,n.y,{silent:!0}),this.snapOffset={x:r.tx,y:r.ty}}else this.snapOffset=null}onDragging(t){const{draggingView:n}=this;if(n){t.preventDefault();const r=this.normalizeEvent(t),{clientX:i}=r,{clientY:y}=r;this.updateGraphPosition(i,y);const g=this.updateNodePosition(i,y),k=this.targetGraph.options.embedding.enabled,$=(k||this.isSnaplineEnabled())&&this.isInsideValidArea({x:i,y});if(k){n.setEventData(r,{graph:this.targetGraph,candidateEmbedView:this.candidateEmbedView});const V=n.getEventData(r);$?n.processEmbedding(r,V):n.clearEmbedding(V),this.candidateEmbedView=V.candidateEmbedView}this.options.nodeDragging?.(t,this.sourceNode),this.isSnaplineEnabled()&&($?this.snapline.snapOnMoving({e:r,view:n,x:g.x,y:g.y}):this.snapline.hide())}}onDragEnd(t){const{draggingNode:n}=this;if(n){const r=this.normalizeEvent(t),{draggingView:i}=this,{draggingBBox:y}=this,{snapOffset:g}=this;let{x:k}=y,{y:$}=y;g&&(k+=g.x,$+=g.y),n.position(k,$,{silent:!0});const V=this.drop(n,{x:r.clientX,y:r.clientY}),L=re=>{re?(this.onDropped(n),this.targetGraph.options.embedding.enabled&&i&&(i.setEventData(r,{cell:re,graph:this.targetGraph,candidateEmbedView:this.candidateEmbedView}),i.finalizeEmbedding(r,i.getEventData(r)))):this.onDropInvalid(),this.candidateEmbedView=null,this.targetModel.stopBatch("dnd")};this.options.nodeDragEnd?.(t,this.sourceNode),x6.FunctionExt.isAsync(V)?(this.undelegateDocumentEvents(),V.then(L)):L(V)}}clearDragging(){this.draggingNode&&(this.sourceNode=null,this.draggingNode.remove(),this.draggingNode=null,this.draggingView=null,this.delta=null,this.padding=null,this.snapOffset=null,this.originOffset=null,this.undelegateDocumentEvents())}onDropped(t){this.draggingNode===t&&(this.clearDragging(),x6.Dom.removeClass(this.container,"dragging"),x6.Dom.remove(this.container))}onDropInvalid(){const{draggingNode:t}=this;t&&this.onDropped(t)}isInsideValidArea(t){let n,r=null;const{targetGraph:i}=this,{targetScroller:y}=this;this.options.dndContainer&&(r=this.getDropArea(this.options.dndContainer));const g=r&&r.containsPoint(t);if(y)if(y.options.autoResize)n=this.getDropArea(y.container);else{const k=this.getDropArea(y.container);n=this.getDropArea(i.container).intersectsWithRect(k)}else n=this.getDropArea(i.container);return!g&&n&&n.containsPoint(t)}getDropArea(t){const n=x6.Dom.offset(t),r=document.body.scrollTop||document.documentElement.scrollTop,i=document.body.scrollLeft||document.documentElement.scrollLeft;return x6.Rectangle.create({x:n.left+parseInt(x6.Dom.css(t,"border-left-width"),10)-i,y:n.top+parseInt(x6.Dom.css(t,"border-top-width"),10)-r,width:t.clientWidth,height:t.clientHeight})}drop(t,n){if(this.isInsideValidArea(n)){const{targetGraph:r}=this,i=r.model,y=r.clientToLocal(n),{sourceNode:g}=this,k=this.options.getDropNode(t,{sourceNode:g,draggingNode:t,targetGraph:this.targetGraph,draggingGraph:this.draggingGraph}),$=k.getBBox();y.x+=$.x-$.width/2,y.y+=$.y-$.height/2;const V=this.snapOffset?1:r.getGridSize();k.position(x6.GeometryUtil.snapToGrid(y.x,V),x6.GeometryUtil.snapToGrid(y.y,V)),k.removeZIndex();const{validateNode:L}=this.options,re=L?L(k,{sourceNode:g,draggingNode:t,droppingNode:k,targetGraph:r,draggingGraph:this.draggingGraph}):!0;return typeof re=="boolean"?re?(i.addCell(k,{stencil:this.cid}),k):null:x6.FunctionExt.toDeferredBoolean(re).then(ie=>ie?(i.addCell(k,{stencil:this.cid}),k):null)}return null}onRemove(){this.draggingGraph&&(this.draggingGraph.view.remove(),this.draggingGraph.dispose())}dispose(){this.remove(),x6.CssLoader.clean(this.name)}};(function(e){e.defaults={getDragNode:t=>t.clone(),getDropNode:t=>t.clone()},e.documentEvents={mousemove:"onDragging",touchmove:"onDragging",mouseup:"onDragEnd",touchend:"onDragEnd",touchcancel:"onDragEnd"}})(Dnd$1||(Dnd$1={}));const _hoisted_1$1z=["data-type"],_sfc_main$21=vue.defineComponent({__name:"index",props:{instance:{}},emits:["dragging","dragEnd"],setup(e,{emit:t}){const n=[{id:"startpoint",icon:"startpoint-zh",name:"开始节点"},{id:"endpoint",icon:"endpoint-zh",name:"结束节点"},{id:"tasknode",icon:"tasknode",name:"任务节点"},{id:"branchgateway",icon:"branchgateway",name:"分支网关"},{id:"parallelgateway",icon:"parallelgateway",name:"并行网关"},{id:"conditionalparallelgateway",icon:"conditionalparallelgateway",name:"条件并行网关"},{id:"convergegateway",icon:"convergegateway",name:"汇聚节点"}],r=e,i=t,y=vue.shallowRef(),g=vue.shallowRef(),k=vue.ref(),$=vue.ref();vue.onMounted(()=>{y.value=new Dnd$1({target:r.instance,scaled:!1,dndContainer:$.value,nodeDragging:(le,Ce)=>V(le,Ce),nodeDragEnd:(le,Ce)=>L(le,Ce),getDragNode:le=>le.clone({keepId:!0}),getDropNode:le=>le.clone({keepId:!0})}),r.instance.on("node:added",({node:le})=>{const Ce=le.shape==="custom-group-node"?1:2;le.setZIndex(Ce)}),k.value.addEventListener("mousedown",re)});const V=(le,Ce)=>{i("dragging",{e:le,node:Ce})},L=(le,Ce)=>{i("dragEnd",{e:le,node:Ce})},re=le=>{(parentClsContains("node-item",le.target)||parentClsContains("entry-item",le.target))&&(g.value=le,document.addEventListener("mousemove",ie),document.addEventListener("mouseup",oe))},ie=le=>{if(!g.value)return;const{pageX:Ce,pageY:he}=g.value;Math.max(le.pageX-Ce,le.pageY-he)>3&&(z(g.value),document.removeEventListener("mousemove",ie))},oe=()=>{g.value=null,document.removeEventListener("mouseup",oe)},z=le=>{const Ce=j(le.target),he=Ce.type==="tasknode",pe=r.instance.createNode({id:`node${uuid()}`,shape:"custom-node",width:he?154:34,height:he?54:34,data:Ce,zIndex:5});y.value.start(pe,le)},j=le=>{const Ce=le.getAttribute("data-type");return Ce?{type:Ce}:{}};return(le,Ce)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"dndPanel",ref:k,class:"dnd-panel"},[vue.createElementVNode("ul",{ref_key:"containerRef",ref:$,class:"nodes-wrapper"},[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(n,he=>vue.createElementVNode("li",{key:he.id,class:vue.normalizeClass(["node-item",`bkflow-canvas-icon bkflow-canvas-node-${he.icon}`,{disabled:["startpoint","endpoint"].includes(he.id)}]),"data-type":he.id},null,10,_hoisted_1$1z)),64))],512)],512))}}),Dnd=_export_sfc$1(_sfc_main$21,[["__scopeId","data-v-61aa5064"]]),_sfc_main$20={name:"Start",props:{node:{type:Object,default:()=>({})}},data(){return{}}};function _sfc_render$f(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item circle-node",{ready:n.node.ready}])}," 开始 ",2)}const Start=_export_sfc$1(_sfc_main$20,[["render",_sfc_render$f]]),_sfc_main$1$={name:"End",props:{node:{type:Object,default:()=>({})}},data(){return{}}};function _sfc_render$e(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item circle-node",{ready:n.node.ready}])}," 结束 ",2)}const End=_export_sfc$1(_sfc_main$1$,[["render",_sfc_render$e]]),SYSTEM_GROUP_ICON=["CMDB","JOB","BK","Nodeman","Monitor","GCLOUD","TCM","WechatWork"],BK_PLUGIN_ICON={bk_http_request:"bkflow-canvas-icon bkflow-canvas-bk-plugin-http",bk_notify:"bkflow-canvas-icon bkflow-canvas-bk-plugin-notify",sleep_timer:"bkflow-canvas-icon bkflow-canvas-bk-plugin-timer",pause_node:"bkflow-canvas-icon bkflow-canvas-bk-plugin-pause"},_sfc_main$1_={name:"Task",props:{node:{type:Object,default:()=>({})}},data(){return{phaseStr:{1:"当前插件即将停止维护,请更新插件版本",2:"当前插件已停止维护,请更新插件版本"}}},computed:{isEmptyNode(){return!this.node.component||!this.node.component.code}},methods:{getIconCls(e){const{code:t,group:n}=e;if(BK_PLUGIN_ICON[t])return BK_PLUGIN_ICON[t];if(t==="remote_plugin")return"bkflow-canvas-icon bkflow-canvas-sys-third-party";const r=SYSTEM_GROUP_ICON.find(i=>new RegExp(i).test(n));return r?`bkflow-canvas-icon bkflow-canvas-sys-${r.toLowerCase()}`:"bkflow-canvas-icon bkflow-canvas-sys-default"}}},_hoisted_1$1y={class:"node-status-block"},_hoisted_2$12=["src"],_hoisted_3$H={key:2,class:"stage-name"},_hoisted_4$v={class:"node-name"},_hoisted_5$p={class:"name-text"};function _sfc_render$d(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item task-node",{"empty-node":y.isEmptyNode}])},[vue.createElementVNode("div",_hoisted_1$1y,[n.node.icon?(vue.openBlock(),vue.createElementBlock("img",{key:0,class:"node-icon",src:n.node.icon},null,8,_hoisted_2$12)):(vue.openBlock(),vue.createElementBlock("i",{key:1,class:vue.normalizeClass(["node-icon-font",y.getIconCls(n.node)])},null,2)),n.node.stage_name?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$H,vue.toDisplayString(n.node.stage_name),1)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$v,[vue.createElementVNode("div",_hoisted_5$p,vue.toDisplayString(y.isEmptyNode?"- 节点未配置 -":n.node.name),1)])],2)}const Task=_export_sfc$1(_sfc_main$1_,[["render",_sfc_render$d],["__scopeId","data-v-53ab1e5c"]]),_sfc_main$1Z={name:"BranchGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$c(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{"fail-skip":n.node.status==="FINISHED"&&n.node.skip},{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-branchgateway"},null,-1)])],2)}const BranchGateway=_export_sfc$1(_sfc_main$1Z,[["render",_sfc_render$c]]),_sfc_main$1Y={name:"ParallelGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$b(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-parallelgateway"},null,-1)])],2)}const ParallelGateway=_export_sfc$1(_sfc_main$1Y,[["render",_sfc_render$b]]),_sfc_main$1X={name:"ConditionalParallelGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$a(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{"fail-skip":n.node.status==="FINISHED"&&n.node.skip},{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-conditionalparallelgateway"},null,-1)])],2)}const ConditionalParallelGateway=_export_sfc$1(_sfc_main$1X,[["render",_sfc_render$a]]),_sfc_main$1W={name:"ConvergeGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$9(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-convergegateway"},null,-1)])],2)}const ConvergeGateway=_export_sfc$1(_sfc_main$1W,[["render",_sfc_render$9]]),_hoisted_1$1x={class:"node-config-flags"},_hoisted_2$11={key:0,class:"error-handle-icon"},_hoisted_3$G={key:1,class:"error-handle-icon"},_hoisted_4$u={key:2,class:"error-handle-icon"},_hoisted_5$o={key:3,class:"error-handle-icon"},_hoisted_6$g={key:1,class:"mock-label"},_sfc_main$1V=vue.defineComponent({__name:"node-config-flags",props:{node:{},editable:{type:Boolean}},setup(e){const t=e;return(n,r)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1x,[t.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[t.node.error_ignorable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$11,[...r[0]||(r[0]=[vue.createElementVNode("span",{class:"text"},"AS",-1)])])):vue.createCommentVNode("",!0),t.node.skippable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$G,[...r[1]||(r[1]=[vue.createElementVNode("span",{class:"text"},"MS",-1)])])):vue.createCommentVNode("",!0),t.node.retryable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$u,[...r[2]||(r[2]=[vue.createElementVNode("span",{class:"text"},"MR",-1)])])):vue.createCommentVNode("",!0),t.node.auto_retry?.enable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_5$o,[...r[3]||(r[3]=[vue.createElementVNode("span",{class:"text"},"AR",-1)])])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),t.node.create_method==="mock"?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$g,"MOCK")):vue.createCommentVNode("",!0)]))}}),NodeConfigFlags=_export_sfc$1(_sfc_main$1V,[["__scopeId","data-v-077f8bb9"]]),_hoisted_1$1w={class:"node-operate-actions"},_hoisted_2$10={key:0,class:"more-btn-list"},_hoisted_3$F=["onClick"],_hoisted_4$t={class:"action-name"},_sfc_main$1U=vue.defineComponent({__name:"index",emits:["delete","moreBtnClick"],setup(e,{emit:t}){const n=t,r=vue.ref(!1),i=vue.computed(()=>[{id:"copyNode",name:"复制节点",icon:"bkflow-canvas-bkflow-copy"},{id:"copyNodeAndInsert",name:"复制并插入",icon:"bkflow-canvas-bkflow-copy-insert"},{id:"detachEdges",name:"解除连线",icon:"bkflow-canvas-bkflow-disconnect"}]),y=()=>{r.value=!0},g=k=>{n("moreBtnClick",k)};return(k,$)=>{const V=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1w,[vue.withDirectives(vue.createElementVNode("i",{class:"delete-btn bkflow-canvas-icon bkflow-canvas-bkflow-delete",onClick:$[0]||($[0]=L=>n("delete"))},null,512),[[V,"删除节点"]]),vue.createElementVNode("i",{class:"more-btn bkflow-canvas-icon bkflow-canvas-more-fill",onClick:y}),r.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$10,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,L=>(vue.openBlock(),vue.createElementBlock("div",{class:"more-btn-item",key:L.id,onClick:re=>g(L.id)},[vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon",L.icon])},null,2),vue.createElementVNode("span",_hoisted_4$t,vue.toDisplayString(L.name),1)],8,_hoisted_3$F))),128))])):vue.createCommentVNode("",!0)])}}}),NodeOperateActions=_export_sfc$1(_sfc_main$1U,[["__scopeId","data-v-f433ab95"]]),logicImg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20class='design-iconfont'%3e%3cpath%20d='M13,1%20C14.1045695,1%2015,1.8954305%2015,3%20L15,13%20C15,14.1045695%2014.1045695,15%2013,15%20L3,15%20C1.8954305,15%201,14.1045695%201,13%20L1,3%20C1,1.8954305%201.8954305,1%203,1%20L13,1%20Z%20M13,3.5%20L10,3.5%20L10,4.5%20L11.3962161,4.50116386%20C9.643609,6.49502964%208.38728573,7.5%207.76574712,7.5%20L2.98331185,7.5%20L2.98331185,8.5%20L7.76574712,8.5%20C8.38739048,8.5%209.64403252,9.50530916%2011.3971023,11.4998444%20L10,11.5%20L10,12.5%20L13,12.5%20L13,9.5%20L12,9.5%20L11.9990374,10.6691668%20C10.8673578,9.39340572%209.92128001,8.50479286%209.13199729,8.00043657%20C9.92138242,7.4953138%2010.8676033,6.60639761%2011.9994779,5.33034326%20L12,6.5%20L13,6.5%20L13,3.5%20Z'%20fill='%236EC3D5'%20fill-rule='evenodd'/%3e%3c/svg%3e",_hoisted_1$1v={class:"option-item"},_hoisted_2$$=["src"],_hoisted_3$E={class:"option-name"},_sfc_main$1T=vue.defineComponent({__name:"option-item",props:{option:{}},setup(e){const t=e;return(n,r)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1v,[vue.createElementVNode("img",{class:"option-img",src:t.option.iconUrl},null,8,_hoisted_2$$),vue.createElementVNode("div",_hoisted_3$E,vue.toDisplayString(t.option.name),1),t.option.type==="group"?(vue.openBlock(),vue.createBlock(vue.unref(icon.AngleRight),{key:0,class:"angle-icon"})):vue.createCommentVNode("",!0),t.option.type==="link"?(vue.openBlock(),vue.createBlock(vue.unref(icon.ArrowsRight),{key:1,class:"arrow-icon"})):vue.createCommentVNode("",!0)]))}}),OptionItem=_export_sfc$1(_sfc_main$1T,[["__scopeId","data-v-0470b67d"]]),_hoisted_1$1u={key:0},_sfc_main$1S=vue.defineComponent({__name:"index",props:{isSearch:{type:Boolean,default:!1},title:{}},emits:["clear"],setup(e,{emit:t}){const n=e,r=t,i=vue.computed(()=>n.isSearch?"搜索结果为空":n.title||"暂无数据");return(y,g)=>{const k=vue.resolveComponent("bk-exception");return vue.openBlock(),vue.createBlock(k,{scene:"part",type:n.isSearch?"search-empty":"empty",title:i.value},{default:vue.withCtx(()=>[n.isSearch?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1u,[g[1]||(g[1]=vue.createTextVNode(" 可以尝试 调整关键词 或 ",-1)),vue.createElementVNode("span",{class:"clear-button",onClick:g[0]||(g[0]=$=>r("clear"))},"清空筛选条件")])):vue.createCommentVNode("",!0)]),_:1},8,["type","title"])}}}),EmptyException=_export_sfc$1(_sfc_main$1S,[["__scopeId","data-v-01a0dc2e"]]),_hoisted_1$1t={class:"quick-edit-popover"},_hoisted_2$_={class:"search-input"},_hoisted_3$D={class:"plugin-option-list"},_hoisted_4$s={key:0,class:"nodes-list"},_hoisted_5$n=["onClick"],_hoisted_6$f={key:1,class:"data-plugin-list"},_hoisted_7$a=["onClick"],_hoisted_8$7={class:"data-plugin-name"},_hoisted_9$6={key:2,class:"agent-plugin-list"},_hoisted_10$5={class:"list-wrapper"},_hoisted_11$5=["onClick"],_hoisted_12$3={class:"agent-name"},_hoisted_13$3={class:"agent-en-name"},_hoisted_14$1={key:3,class:"agent-plugin-list"},_hoisted_15$1={class:"list-wrapper"},_hoisted_16$1=["onClick"],_hoisted_17={class:"agent-name"},_hoisted_18={key:4,class:"bkflow-tag-list"},_hoisted_19=["onClick"],_hoisted_20=["onClick"],_sfc_main$1R=vue.defineComponent({__name:"index",props:{pluginGroupList:{default:()=>[]}},emits:["addNode","addPlugin","openPluginSelect","deleteEdge","deleteNode","copyNode","copyNodeAndInsert","detachEdges"],setup(e,{emit:t}){const n=[{id:"branchgateway",name:"分支网关",icon:"bkflow-canvas-node-branchgateway-shortcut"},{id:"parallelgateway",name:"并行网关",icon:"bkflow-canvas-node-parallelgateway-shortcut"},{id:"conditionalparallelgateway",name:"条件并行网关",icon:"bkflow-canvas-node-conditionalparallelgateway-shortcut"},{id:"convergegateway",name:"汇聚网关",icon:"bkflow-canvas-node-convergegateway-shortcut"}],r={alert_plugin:"incident-gaojing",query_promql_metric_plugin:"incident-zhibiao",trace_plugin:"incident-trace",事件:"incident-shijian",log_plugin:"incident-rizhi",profling:"incident-profling",图谱:"incident-tupu"},i=vueRouter.useRouter(),y=vueRouter.useRoute(),g=e,k=t,$=vue.shallowRef([]),V=vue.ref(""),L=vue.shallowRef([...$.value||[]]),re=vue.computed(()=>(g.pluginGroupList.find(he=>he.name==="agent")?.children.length||0)>10);vue.watch(()=>g.pluginGroupList,he=>{const pe=[{id:"logic",name:"逻辑",iconUrl:logicImg,type:"group",width:88,children:n}];he.forEach(ae=>{pe.push({id:ae.name,name:ae.alias,iconUrl:ae.iconUrl,type:"group",width:ae.name==="data"?160:280,children:ae.children.map(ue=>{if(ae.name==="data"){const{id:de,name:_e,alias:xe}=ue;return{id:de,name:xe,icon:r[_e]}}else if(ae.name==="agent"){const{id:de,alias:_e,name:xe}=ue;return{id:de,name:_e,enName:xe}}else if(ae.name==="bkflow"){const{id:de,name:_e}=ue;return{id:de,name:_e}}return ue})})}),$.value=pe,L.value=[...$.value]},{immediate:!0});const ie=he=>{const pe=he.trim().toLowerCase();if(pe===""){L.value=[...$.value];return}const ae=[];$.value.forEach(ue=>{if(ue.name.toLowerCase().includes(pe))ae.push(ue);else if(ue.type==="group"){const de=[];ue.children?.forEach(_e=>{_e.name.toLowerCase().includes(pe)&&de.push(_e)}),de.length>0&&ae.push({...ue,children:de})}}),L.value=ae},oe=()=>{V.value="",L.value=[...$.value]},z=he=>{k("addNode",he)},j=(he,pe)=>{pe==="bkflow"?le("bkflow",he):k("addPlugin",he,pe)},le=(he,pe=0)=>{k("openPluginSelect",he,pe)},Ce=he=>{if(he==="agent"&&!re.value){const{href:pe}=i.resolve({name:"spaceResource",params:y.params});window.open(pe,"_blank")}else le(he)};return(he,pe)=>{const ae=vue.resolveComponent("bk-input"),ue=vue.resolveComponent("bk-button"),de=vue.resolveComponent("bk-popover"),_e=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1t,[vue.createElementVNode("div",_hoisted_2$_,[vue.createVNode(ae,{modelValue:V.value,"onUpdate:modelValue":pe[0]||(pe[0]=xe=>V.value=xe),placeholder:"搜索节点",type:"search",clearable:!0,onClear:oe,onInput:ie},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_3$D,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,xe=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:xe.id},[xe.type==="group"?(vue.openBlock(),vue.createBlock(de,{key:0,theme:"light",placement:"right-start","ext-cls":"plugin-child-popover",boundary:"parent",arrow:!1,width:xe.width,"popover-delay":[0,100]},{content:vue.withCtx(()=>[xe.id==="logic"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$s,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children,ze=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("i",{class:vue.normalizeClass(["bkflow-canvas-icon",ze.icon]),key:ze.id,onClick:Ve=>z(ze.id)},null,10,_hoisted_5$n)),[[_e,{content:ze.name,placement:"top"}]])),128))])):xe.id==="data"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$f,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"data-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"data")},[vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon",ze.icon])},null,2),vue.createElementVNode("div",_hoisted_8$7,vue.toDisplayString(ze.name),1)],8,_hoisted_7$a))),128))])):xe.id==="agent"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_9$6,[vue.createElementVNode("div",_hoisted_10$5,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"agent-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"agent")},[vue.createElementVNode("span",_hoisted_12$3,vue.toDisplayString(ze.name),1),vue.createElementVNode("span",_hoisted_13$3,"("+vue.toDisplayString(ze.enName)+")",1)],8,_hoisted_11$5))),128))])])):xe.id==="model"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_14$1,[vue.createElementVNode("div",_hoisted_15$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"agent-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"model")},[vue.createElementVNode("span",_hoisted_17,vue.toDisplayString(ze.alias||ze.enName),1)],8,_hoisted_16$1))),128))])])):xe.id==="bkflow"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_18,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"bkflow-tag-item",key:ze.id,onClick:Ve=>j(ze.id,"bkflow")},vue.toDisplayString(ze.name),9,_hoisted_19))),128))])):vue.createCommentVNode("",!0),xe.children&&xe.children.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:5,class:"group-empty-exception",title:`暂无${xe.name}插件`},null,8,["title"])):vue.createCommentVNode("",!0),xe.id==="agent"||xe.children&&xe.children.length>10?(vue.openBlock(),vue.createElementBlock("div",{key:6,class:"list-footer",onClick:ze=>Ce(xe.id)},[vue.createVNode(ue,{theme:"primary",text:"",size:"small"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(xe.id==="agent"&&!re.value?"申请更多权限":"更多"),1)]),_:2},1024),pe[1]||(pe[1]=vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-arrow2"},null,-1))],8,_hoisted_20)):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.createVNode(OptionItem,{option:xe},null,8,["option"])]),_:2},1032,["width"])):(vue.openBlock(),vue.createBlock(OptionItem,{key:1,option:xe,onClick:ze=>le(xe.id)},null,8,["option","onClick"]))],64))),128)),L.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":V.value.length>0,onClear:oe},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),QuickAddNodePopover=_export_sfc$1(_sfc_main$1R,[["__scopeId","data-v-209f0d9a"]]),_hoisted_1$1s={class:"custom-node"},_hoisted_2$Z={key:0,class:"add-node-popover"},_sfc_main$1Q=vue.defineComponent({__name:"index",props:{editable:{type:Boolean},pluginGroupList:{default:()=>[]}},emits:["addNode","addPlugin","addNodeAndSelectPlugin","addBtnClick","deleteBtnClick","copyNodeClick","copyNodeAndInsertClick","detachEdgesClick"],setup(e,{emit:t}){const n={startpoint:Start,endpoint:End,tasknode:Task,branchgateway:BranchGateway,parallelgateway:ParallelGateway,conditionalparallelgateway:ConditionalParallelGateway,convergegateway:ConvergeGateway},r=vue.inject("getNode");if(!r)throw new Error("getNode is not defined");const i=e,y=t,g=vue.ref({id:"",type:"",name:""}),k=vue.ref(),$=vue.ref(!1),V=vue.computed(()=>{const le=r(),{type:Ce}=le.getData();return n[Ce]});vue.onMounted(()=>{const le=r();g.value=le.getData(),le.on("change:data",({current:Ce})=>{g.value=Ce})}),vue.onBeforeUnmount(()=>{k.value?.resetPopover()});const L=le=>{y("addNode",g.value.id,le),k.value.hide()},re=(le,Ce)=>{y("addPlugin",g.value.id,le,Ce),k.value.hide()},ie=(le,Ce=0)=>{y("addNodeAndSelectPlugin",g.value.id,le,Ce),k.value.hide()},oe=()=>{$.value=!0,y("addBtnClick",g.value.id)},z=()=>{y("deleteBtnClick",g.value.id)},j=le=>{le==="copyNode"?y("copyNodeClick",g.value.id):le==="copyNodeAndInsert"?y("copyNodeAndInsertClick",g.value.id):le==="detachEdges"&&y("detachEdgesClick",g.value.id)};return(le,Ce)=>{const he=vue.resolveComponent("bk-popover");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1s,[["task","tasknode"].includes(g.value.type)?(vue.openBlock(),vue.createBlock(NodeConfigFlags,{key:0,node:g.value,editable:i.editable},null,8,["node","editable"])):vue.createCommentVNode("",!0),(vue.openBlock(),vue.createBlock(he,{ref_key:"popoverRef",ref:k,"ext-cls":"custom-node-popover",placement:"bottom-end",theme:"light",disabled:!i.editable||g.value.type==="endpoint",content:g.value.name,key:g.value.id,arrow:!1,onAfterHidden:Ce[0]||(Ce[0]=pe=>$.value=!1)},{content:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["add-btn",g.value.type==="tasknode"?"type-task-node":""])},[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-add-fill",onClick:oe}),$.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$Z,[vue.createVNode(QuickAddNodePopover,{"plugin-group-list":i.pluginGroupList,onAddNode:L,onOpenPluginSelect:ie,onAddPlugin:re},null,8,["plugin-group-list"])])):vue.createCommentVNode("",!0)],2),vue.createVNode(NodeOperateActions,{onDelete:z,onMoreBtnClick:j})]),default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(V.value),{node:g.value,class:vue.normalizeClass(g.value.status?g.value.status.toLowerCase():"")},null,8,["node","class"]))]),_:1},8,["disabled","content"]))])}}}),CustomNode=_export_sfc$1(_sfc_main$1Q,[["__scopeId","data-v-2eb82156"]]),_sfc_main$1P=vue.defineComponent({__name:"canvas",props:{pipelineTree:{},editable:{type:Boolean},hideTool:{type:Boolean},defaultZoom:{default:1}},emits:["nodeMoving","nodeMoved","nodeClick","edgeClick","edgeLabelClick","edgeLabelUpdate","nodeDbClick","nodeMouseenter","nodeMouseleave","edgeMouseenter","edgeMouseleave","updatePipelineTree","addNode","deleteNode","copyNode","copyNodeAndInsert","detachEdges","deleteEdge"],setup(e,{expose:t,emit:n}){const r=vue.useSlots(),i=x6VueShape.getTeleport(),y=e,g=n,k=vue.shallowRef(null),$=vue.shallowRef(),V=vue.ref(lodash.cloneDeep(y.pipelineTree)),L=vue.ref(!1);vue.watch(()=>y.pipelineTree,()=>{V.value=lodash.cloneDeep(y.pipelineTree)}),vue.onMounted(()=>{re(),ie();const{x:Et,y:wn}=k.value.getContentArea();k.value.positionPoint({x:Et,y:wn},40,134),y.defaultZoom!==void 0&&k.value.zoomTo(y.defaultZoom)});const re=()=>{k.value=new x6.Graph({container:$.value,grid:{size:1,visible:!1},panning:!0,mousewheel:{enabled:!0,modifiers:["ctrl"]},scaling:{min:.25,max:1.5},virtual:!1,connecting:{allowBlank:!1,allowLoop:!1,allowNode:!1,allowEdge:!1,allowMulti:!1,highlight:!1,snap:{radius:15},router:{name:"manhattan",args:{padding:1}},connector:{name:"rounded",args:{radius:6}},connectionPoint:"anchor",createEdge(){return new x6.Shape.Edge({id:`line${uuid()}`,attrs:{line:{stroke:"#a9adb6",strokeWidth:2,targetMarker:{name:"block",width:6,height:8}}},data:{},zIndex:0})},validateEdge:z},interacting:{nodeMovable:y.editable,edgeLabelMovable:y.editable,arrowheadMovable:y.editable},highlighting:{magnetAvailable:{name:"stroke",args:{attrs:{fill:"#fff",stroke:"#31d0c6","stroke-width":1}}},magnetAdsorbed:{name:"stroke",args:{attrs:{fill:"#fff",stroke:"#3a84ff","stroke-width":2}}}},onEdgeLabelRendered:Et=>{const{label:wn}=Et.label,bn=Et.selectors.foContent;if(bn){const Tn=document.createElement("div");return Tn.classList.add("branch-condition"),wn.isDefault&&Tn.classList.add("default-branch"),Tn.innerText=wn.name,Tn.title=wn.name,Array.isArray(bn)?bn.length>0&&bn[0].appendChild(Tn):bn.appendChild(Tn),()=>{Array.isArray(bn)?bn.length>0&&bn[0].contains(Tn)&&bn[0].removeChild(Tn):bn.contains(Tn)&&bn.removeChild(Tn)}}}}),window.__x6_instances__=[k.value],k.value.use(new x6PluginSnapline.Snapline({enabled:!0,className:"custom-snap-line",tolerance:2})),k.value.use(new x6PluginClipboard.Clipboard({enabled:!0})),k.value.use(new x6PluginSelection.Selection({enabled:!1,multiple:!0,rubberband:!1,showNodeSelectionBox:!0,pointerEvents:"none"})),oe(),registryEvents(k.value,y.editable),k.value.on("node:moving",j),k.value.on("node:moved",Ce),k.value.on("node:click",lodash.debounce(pe,200)),k.value.on("node:dblclick",ae),k.value.on("node:mouseenter",ue),k.value.on("node:mouseleave",de),k.value.on("edge:click",lodash.debounce(_e,200)),k.value.on("edge:mouseenter",xe),k.value.on("edge:click",ze),k.value.on("edge:added",Ve),k.value.on("edge:change:labels",At),k.value.on("edge:mouseenter",({cell:Et})=>{y.editable&&Et.addTools([{name:"button-remove",args:{distance:.5,onClick:()=>{g("deleteEdge",Et)}}}])}),k.value.on("edge:mouseleave",({cell:Et})=>{Et.removeTools()})},ie=()=>{const Et=transLocationsToNodes(V.value.location,V.value.activities),wn=transLinesToEdges(V.value.line);k.value?.addNodes(Et),k.value?.addEdges(wn)},oe=()=>{x6VueShape.register({shape:"custom-node",ports:{...ports},component:r.customNode?vue.h("div",{style:{width:"100%",height:"100%"}},r.customNode()):vue.h(CustomNode,{editable:y.editable,onAddBtnClick:Et=>{g("addNode",Et)},onDeleteBtnClick:Et=>{g("deleteNode",Et)},onCopyNodeClick:Et=>{g("copyNode",Et)},onCopyNodeAndInsertClick:Et=>{g("copyNodeAndInsert",Et)},onDetachEdgesClick:Et=>{g("detachEdges",Et)}})})},z=({edge:Et})=>{const wn=V.value.line.filter(On=>On.id!==Et.id),bn=Et.source,Tn=Et.target,$n=bn.port.split("_")[1]||"",Sn=Tn.port?.split("_")[1]||"",kn={id:Et.id,source:{id:bn.cell,arrow:`${$n.charAt(0).toUpperCase()}${$n.slice(1)}`},target:{id:Tn.cell,arrow:`${Sn.charAt(0).toUpperCase()}${Sn.slice(1)}`}},Nn=validateEdge(kn,wn,V.value.location);if(Nn.valid){const On=Et.id in y.pipelineTree.flows;if(console.log(On),On){const Vn=V.value.line.find(Dn=>Dn.id===Et.id);$e(Vn,kn)}else Dt([kn]),Ve({cell:Et})}else BkMessage({message:Nn.message,theme:"warning"});return Nn.valid},j=({node:Et})=>{g("nodeMoving",Et)},le=({node:Et})=>{},Ce=({node:Et})=>{const wn=Et.position(),bn=[...V.value.location],Tn=bn.findIndex($n=>$n.id===Et.id);bn.splice(Tn,1,{...bn[Tn],x:wn.x,y:wn.y}),V.value={...V.value,location:bn},vn(),g("nodeMoved",Et)},he=({node:Et})=>{const wn=k.value?.getCellById(Et.id);if(wn){const bn=wn.getData().type,Tn=wn.position();bn==="tasknode"?Ie(Et.id,Tn):Ue(Et.id,bn,Tn)}},pe=({e:Et,node:wn})=>{Et.detail===1&&g("nodeClick",wn)},ae=({node:Et})=>{g("nodeDbClick",Et)},ue=({node:Et})=>{g("nodeMouseenter",Et)},de=({node:Et,e:wn})=>{g("nodeMouseleave",Et,wn)},_e=({e:Et,edge:wn})=>{if(parentClsContains("branch-condition",Et.target)){g("edgeLabelClick",wn);return}g("edgeClick",wn,Et)},xe=({edge:Et})=>{g("edgeMouseenter",Et)},ze=({edge:Et})=>{g("edgeMouseleave",Et)},Ve=({cell:Et})=>{vue.nextTick(()=>{const wn=Et.source?.cell||Et.source,Tn=Fe(wn)[Et.id];if(Tn){const $n=document.createElement("span");$n.innerText=Tn.name,$n.style.fontSize="12px",$n.style.padding="0 6px",document.body.appendChild($n);let{width:Sn=0}=$n.getBoundingClientRect();Sn>112?Sn=112:Sn<60&&(Sn=60),document.body.removeChild($n);const kn=Tn.loc||-Sn/2-20;Et.appendLabel({markup:x6.Markup.getForeignObjectMarkup(),attrs:{fo:{width:Sn,height:26,x:-Sn,y:-13}},label:{...Tn,lineId:Et.id,sourceId:wn},position:{distance:kn,offset:{x:Sn/2,y:0}}})}})},qe=Et=>{const bn=k.value.getEdges().find(Tn=>Tn.id===Et);bn&&(bn.removeLabelAt(0),Ve({cell:bn}))},At=({edge:Et,current:wn,previous:bn})=>{if(!bn||!bn.length||!wn.length)return;const Sn=k.value.findViewByCell(Et.id).container.querySelector(`.${Et.id}`).getTotalLength();wn.forEach(kn=>{const{width:Nn}=kn.attrs.fo;kn.position.offset={x:Nn/2,y:0};const On=(Nn/2+20)/Sn,Vn=1-On,Dn=Math.max(On,Math.min(Vn,kn.position.distance));kn.position.distance=Dn;const{sourceId:Rn,isDefault:Hn=!1}=kn.label;hn(Et.id,Rn,Hn,Dn)})},Fe=Et=>{const wn=V.value.gateways[Et];let bn={};if(wn){const{conditions:Tn,default_condition:$n}=wn;Tn&&(bn={...Tn}),$n&&$n.flow_id&&(bn[$n.flow_id]={...$n,isDefault:!0})}return bn},Ie=(Et,wn,bn={})=>{const Tn={...V.value.activities},$n=[...V.value.location],Sn=getActivityConfig(Et,bn),{name:kn,error_ignorable:Nn,retryable:On,skippable:Vn,auto_retry:Dn,component:Rn={}}=Sn;Cn(Et,{id:Et,name:kn,error_ignorable:Nn,retryable:On,skippable:Vn,auto_retry:Dn,component:Rn,type:"tasknode"}),Tn[Et]=Sn,$n.push({id:Et,type:"tasknode",x:wn.x,y:wn.y,name:kn}),V.value={...V.value,activities:Tn,location:$n},vn()},Ue=(Et,wn,bn,Tn={})=>{const Sn={branchgateway:"ExclusiveGateway",parallelgateway:"ParallelGateway",conditionalparallelgateway:"ConditionalParallelGateway",convergegateway:"ConvergeGateway"}[wn],kn={...V.value.gateways},Nn=[...V.value.location],On=getGatewayConfig(Et,Sn,Tn);console.log("gateway: ",On),Cn(Et,{id:Et}),kn[Et]=On,Nn.push({id:Et,type:wn,x:bn.x,y:bn.y}),V.value={...V.value,gateways:kn,location:Nn},vn()},Dt=Et=>{const{start_event:wn,end_event:bn,activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn}=lodash.cloneDeep(V.value);Et.forEach(On=>{const{id:Vn,source:Dn,target:Rn}=On;Nn.push(On),Sn[On.id]={id:Vn,source:Dn.id,target:Rn.id,is_default:!1};const Hn=kn.find(Gn=>Gn.id===Dn.id),Kn=kn.find(Gn=>Gn.id===Rn.id);if(Hn){if(Hn.type==="startpoint")wn.outgoing=Vn;else if(Hn.type==="tasknode")Tn[Dn.id].outgoing=Vn;else if(Hn.type.includes("gateway")){const Gn=$n[Dn.id];if(Array.isArray(Gn.outgoing)?Gn.outgoing.push(Vn):Gn.outgoing=Vn,["ExclusiveGateway","ConditionalParallelGateway"].includes(Gn.type)){const Zn={...Gn.conditions||{}},eo=Object.keys(Zn).length;Zn[Vn]={name:`条件${eo+1}`,tag:`branch_${Dn.id}_${Rn.id}`,evaluate:eo>0?"1 == 0":"1 == 1"},Gn.conditions=Zn}}}Kn&&(Kn.type==="endpoint"?bn.incoming.push(Vn):Kn.type==="tasknode"?Tn[Rn.id].incoming.push(Vn):Kn.type.includes("gateway")&&$n[Rn.id].incoming.push(Vn))}),V.value={...V.value,start_event:wn,end_event:bn,activities:Tn,gateways:$n,flows:Sn,line:Nn},vn()},$e=(Et,wn)=>{const bn=wn.id,Tn=lodash.cloneDeep(V.value),$n=Et.source.id!==wn.source.id,Sn=$n?Et.source.id:Et.target.id,kn=$n?wn.source.id:wn.target.id;$n?Tn.flows[bn].source=kn:Tn.flows[bn].target=kn;const Nn=Tn.line.findIndex(Rn=>Rn.id===bn);Nn>-1&&Tn.line.splice(Nn,1,wn);const On=getNodeById(kn,Tn),Vn=getNodeById(Sn,Tn),Dn=$n?"outgoing":"incoming";Array.isArray(On[Dn])?On[Dn].push(bn):On[Dn]=bn,Array.isArray(Vn[Dn])?Vn[Dn]=Vn[Dn].filter(Rn=>Rn!==bn):Vn[Dn]="",V.value=Tn,vn()},Ne=Et=>{const wn=transLinesToEdges(Et);k.value?.addEdges(wn),Dt(Et)},Oe=Et=>{k.value?.removeNode(Et);const wn=[];V.value.line.forEach(Dn=>{(Dn.source.id===Et||Dn.target.id===Et)&&wn.push(Dn.id)});const bn=Lt(wn),{activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn,start_event:On,end_event:Vn}=bn;Tn[Et]?delete Tn[Et]:$n[Et]&&delete $n[Et],kn.splice(kn.findIndex(Dn=>Dn.id===Et),1),V.value={...V.value,activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn,start_event:On,end_event:Vn},vn()},kt=Et=>{Et.forEach(wn=>{k.value?.removeEdge(wn)}),V.value=Lt(Et),vn()},Lt=Et=>{const wn={...V.value.activities},bn={...V.value.gateways},Tn={...V.value.flows},$n=[...V.value.line],Sn={...V.value.start_event},kn={...V.value.end_event};return Et.forEach(Nn=>{delete Tn[Nn],$n.splice($n.findIndex(On=>On.id===Nn),1),Object.keys(wn).forEach(On=>{if(wn[On].incoming.includes(Nn)||wn[On].outgoing===Nn){const Vn=lodash.cloneDeep(wn[On]),{incoming:Dn,outgoing:Rn}=Vn;Dn.includes(Nn)&&Dn.splice(Dn.findIndex(Hn=>Hn===Nn),1),Rn===Nn&&(Vn.outgoing=""),wn[On]=Vn}}),Object.keys(bn).forEach(On=>{const Vn=lodash.cloneDeep(bn[On]),{incoming:Dn,outgoing:Rn,conditions:Hn,default_condition:Kn}=Vn;bn[On].incoming.includes(Nn)&&Dn.includes(Nn)&&Dn.splice(Dn.findIndex(Gn=>Gn===Nn),1),Array.isArray(Rn)?Rn.includes(Nn)&&Rn.splice(Rn.findIndex(Gn=>Gn===Nn),1):Rn===Nn&&(Vn.outgoing=""),Hn&&Hn[Nn]&&delete Hn[Nn],Kn&&Kn.flow_id===Nn&&delete Vn.default_condition,bn[On]=Vn}),Sn.outgoing===Nn&&(Sn.outgoing=""),kn.incoming.includes(Nn)&&(kn.incoming=kn.incoming.filter(On=>On!==Nn))}),{...V.value,activities:wn,gateways:bn,flows:Tn,line:$n,start_event:Sn,end_event:kn}},Cn=(Et,wn)=>{const bn=k.value?.getCellById(Et),Tn=bn?.data.type;bn&&bn.setData({...bn.data,...wn,type:Tn})},hn=lodash.debounce((Et,wn,bn,Tn)=>{const $n={...V.value.gateways};if($n[wn]){const Sn=lodash.cloneDeep($n[wn]);bn&&Sn.default_condition?Sn.default_condition={...Sn.default_condition,loc:Tn}:Sn.conditions&&Sn.conditions[Et]&&(Sn.conditions[Et]={...Sn.conditions[Et],loc:Tn}),$n[wn]=Sn,V.value={...V.value,gateways:$n},vn()}},300),jt=async()=>{if(L.value)return;const Et=200,wn=y.pipelineTree.location.map(to=>to.x),bn=y.pipelineTree.location.map(to=>to.y),Tn=Math.min(...wn),$n=Math.max(...wn),Sn=Math.min(...bn),kn=Math.max(...bn),Nn=Tn<0?-Tn:0,On=Sn<0?-Sn:0;let Vn=0;const Dn=document.documentElement.offsetWidth-60,Rn=document.documentElement.offsetHeight-60-50;Tn<0?Vn=$n>Dn?$n-Tn:Dn-Tn:Vn=$n>Dn?$n:Dn;let Hn=0;Sn<0?Hn=kn>Rn?kn-Sn:Rn-Sn:Hn=kn>Rn?kn:Rn;const Kn=Hn+Et+30,Gn=Vn+Et+80,Zn=await domtoimage.toJpeg($.value,{bgcolor:"#ffffff",height:Kn,width:Gn,cloneBack:to=>{const no=to.querySelector(".x6-graph-svg");no.style.width=`${Gn}px`,no.style.height=`${Kn}px`;const ro=to.querySelector(".x6-graph-svg-viewport");ro.style.transform=`translate(${`${Nn+30}px`}, ${`${On+30}px`})`}});L.value=!0;const eo=document.createElement("a");eo.download=`bkflow_template_canvas_${+new Date}.png`,eo.href=Zn,eo.click(),L.value=!1},vn=()=>{g("updatePipelineTree",V.value)};return t({graph:k,createActivity:Ie,createGateway:Ue,deleteNode:Oe,deleteEdges:kt,insertEdgesToCanvas:Ne,updateEdgeLabel:qe,updateNodeData:Cn}),(Et,wn)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["bkflow-canvas-container",{"bkflow-canvas-view":!y.editable}])},[k.value&&!y.hideTool?(vue.openBlock(),vue.createBlock(Tool,{key:0,instance:k.value,onDownload:jt},null,8,["instance"])):vue.createCommentVNode("",!0),k.value&&y.editable?(vue.openBlock(),vue.createBlock(Dnd,{key:1,instance:k.value,onDragging:le,onDragEnd:he},null,8,["instance"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{ref_key:"graphContainerRef",ref:$,class:"graph-container"},null,512),vue.createVNode(vue.unref(i))],2))}}),BkFlowCanvas=_export_sfc$1(_sfc_main$1P,[["__scopeId","data-v-e6ac748d"]]),getUniformApiPluginFormValue$1=e=>"default"in e?e.default:"",_hoisted_1$1r={class:"bkflow-variable-table"},_hoisted_2$Y={class:"operate-wrapper"},_hoisted_3$C={class:"btns-list"},_hoisted_4$r={class:"toggle-system-variables"},_hoisted_5$m={class:"variable-table-wrapper"},_hoisted_6$e={class:"var-check-cell"},_hoisted_7$9={key:0,class:"bkflow-canvas-icon bkflow-canvas-lock-disable"},_hoisted_8$6={class:"cell-text"},_hoisted_9$5={class:"cell-text"},_hoisted_10$4={class:"copy-icon-wrapper"},_hoisted_11$4={class:"table-row-actions"},_hoisted_12$2=["onClick"],_hoisted_13$2=["onClick"],_sfc_main$1O=vue.defineComponent({__name:"global-variable-table",props:{constants:{default:()=>({})},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0},outputs:{default:()=>[]},customVariableTypes:{default:()=>[]},variablesReference:{default:()=>({defined:{},nodefined:{}})}},emits:["create","edit","clone","delete","outputChange","updateConstants"],setup(e,{emit:t}){const n=e;vue.watch(()=>n.outputs,ae=>{console.log("outputs",ae)});const r=t,i=vue.ref(!1),y=vue.ref([]),g=vue.computed(()=>{const ae=Object.values(n.constants).sort((ue,de)=>ue.index-de.index);return i.value?ae:[...n.systemVariables,...ae]}),k={cellFn:ae=>{const ue=y.value.length,de=Object.values(n.constants).length,_e=de>0&&ue===de,xe=ue>0&&ue<de;if(ae.index===0)return vue.createVNode(vue.Fragment,null,[vue.createVNode(vue.resolveComponent("bk-checkbox"),{modelValue:_e,indeterminate:xe,disabled:!n.editable,onChange:re},null)]);if(["reference","outputs"].includes(ae.column.prop)){const ze={content:ae.column.prop==="reference"?"直接引用全局变量的节点数量,点击数字查看引用详情":"表示该变量会作为该流程模板的输出参数,在被其他流程模板当做子流程节点时可以引用。",placement:"top"};return vue.createVNode("div",{class:"thead-custom"},[ae.column.label,vue.withDirectives(vue.createVNode(icon.Info,{class:"info-icon"},null),[[vue.resolveDirective("bk-tooltips"),ze]])])}return ae.column.label}},$=ae=>ae.source_type==="system"?"系统变量":ae.source_type==="custom"?n.customVariableTypes.find(de=>de.code===ae.custom_type)?.name||"自定义":"组件",V=ae=>{const ue=ae.length>1?`确认删除所选的${ae.length}个变量?`:`确认删除全局变量"${ae[0]}"?`;lib.InfoBox({title:ue,content:"若该变量被节点引用,请及时检查并更新节点配置",width:450,headerAlign:"center",footerAlign:"center",confirmText:"确认",cancelText:"取消",onConfirm:()=>{const de={...n.constants};ae.slice().forEach(_e=>{delete de[_e];const xe=y.value.indexOf(_e);xe!==-1&&y.value.splice(xe,1)}),r("updateConstants",de),pe(ae)},onCancel:()=>{}})},L=(ae,ue)=>{r("edit",ue)},re=ae=>{ae?y.value=Object.keys(n.constants):y.value=[]},ie=(ae,ue)=>{const de=y.value.indexOf(ue);ae?de===-1&&y.value.push(ue):de!==-1&&y.value.splice(de,1)},oe=ae=>{if(n.variablesReference?.defined&&ae in n.variablesReference.defined){const{activities:ue,conditions:de,constants:_e}=n.variablesReference.defined[ae];return ue.length+de.length+_e.length}return 0},z=()=>{V(y.value)},j=ae=>{V([ae.key])},le=ae=>{const ue=document.createElement("textarea");ue.value=ae.toString(),document.body.appendChild(ue),ue.select(),document.execCommand("copy"),document.body.removeChild(ue),lib.Message({theme:"success",message:"复制成功"})},Ce=(ae,ue)=>{const de={...n.constants};de[ae.key]={...ae,show_type:ue?"show":"hide"},r("updateConstants",de)},he=(ae,ue)=>{r("outputChange",ae,ue)},pe=ae=>{r("delete",ae)};return(ae,ue)=>{const de=vue.resolveComponent("bk-button"),_e=vue.resolveComponent("bk-checkbox"),xe=vue.resolveComponent("bk-table-column"),ze=vue.resolveComponent("bk-overflow-title"),Ve=vue.resolveComponent("bk-switcher"),qe=vue.resolveComponent("bk-popover"),At=vue.resolveComponent("bk-table"),Fe=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1r,[vue.createElementVNode("div",_hoisted_2$Y,[vue.createElementVNode("div",_hoisted_3$C,[vue.createVNode(de,{theme:"primary",onClick:ue[0]||(ue[0]=Ie=>r("create"))},{default:vue.withCtx(()=>[...ue[7]||(ue[7]=[vue.createTextVNode("新建",-1)])]),_:1}),y.value.length>0?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(de,{onClick:z},{default:vue.withCtx(()=>[...ue[8]||(ue[8]=[vue.createTextVNode("删除",-1)])]),_:1}),vue.createElementVNode("span",null,"已选择"+vue.toDisplayString(y.value.length)+"项",1),vue.createVNode(de,{class:"clear-checked-btn",theme:"primary",size:"small",text:"",onClick:ue[1]||(ue[1]=Ie=>y.value=[])},{default:vue.withCtx(()=>[...ue[9]||(ue[9]=[vue.createTextVNode(" 清空 ",-1)])]),_:1})],64)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$r,[vue.createVNode(_e,{modelValue:i.value,"onUpdate:modelValue":ue[2]||(ue[2]=Ie=>i.value=Ie)},{default:vue.withCtx(()=>[...ue[10]||(ue[10]=[vue.createTextVNode("隐藏系统变量",-1)])]),_:1},8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_5$m,[vue.createVNode(At,{data:g.value,border:["outer"],thead:k,onRowClick:L},{default:vue.withCtx(()=>[vue.createVNode(xe,{"min-width":40,width:40},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_6$e,[Ie.source_type==="system"?(vue.openBlock(),vue.createElementBlock("i",_hoisted_7$9)):(vue.openBlock(),vue.createElementBlock("span",{key:1,onClick:ue[3]||(ue[3]=vue.withModifiers(()=>{},["stop"]))},[vue.createVNode(_e,{"model-value":y.value.includes(Ie.key),disabled:!n.editable,onChange:Ue=>ie(Ue,Ie.key)},null,8,["model-value","disabled","onChange"])]))])]),_:1}),vue.createVNode(xe,{label:"名称",prop:"name",width:150},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_8$6,[vue.createVNode(ze,{type:"tips"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(Ie.name),1)]),_:2},1024)])]),_:1}),vue.createVNode(xe,{label:"KEY",prop:"key","min-width":120},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_9$5,[vue.createVNode(ze,{type:"tips"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(Ie.key),1)]),_:2},1024)]),vue.createElementVNode("span",_hoisted_10$4,[vue.withDirectives(vue.createVNode(vue.unref(icon.CopyShape),{onClick:vue.withModifiers(Ue=>le(Ie.key),["stop"])},null,8,["onClick"]),[[Fe,{content:"复制",placement:"top"}]])])]),_:1}),vue.createVNode(xe,{label:"引用",prop:"reference",width:70,"min-width":60},{default:vue.withCtx(({row:Ie})=>[vue.createTextVNode(vue.toDisplayString(oe(Ie.key)),1)]),_:1}),vue.createVNode(xe,{label:"类型",prop:"type",width:80,"min-width":80},{default:vue.withCtx(({row:Ie})=>[vue.createTextVNode(vue.toDisplayString($(Ie)),1)]),_:1}),vue.createVNode(xe,{label:"显示(入参)",prop:"value",width:110},{default:vue.withCtx(({row:Ie})=>[vue.createVNode(Ve,{theme:"primary",size:"small",value:Ie.show_type==="show",disabled:!n.editable||["system","component_outputs"].includes(Ie.source_type),onClick:ue[4]||(ue[4]=vue.withModifiers(()=>{},["stop"])),onChange:Ue=>Ce(Ie,Ue)},null,8,["value","disabled","onChange"])]),_:1}),vue.createVNode(xe,{label:"输出",prop:"outputs",width:70,"min-width":60},{default:vue.withCtx(({row:Ie})=>[vue.createVNode(Ve,{theme:"primary",size:"small",value:n.outputs.includes(Ie.key),disabled:!n.editable||Ie.source_type==="system",onClick:ue[5]||(ue[5]=vue.withModifiers(()=>{},["stop"])),onChange:Ue=>he(Ie.key,Ue)},null,8,["value","disabled","onChange"])]),_:1}),vue.createVNode(xe,{label:"操作",prop:"description",width:70,"min-width":70,fixed:"right"},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_11$4,[n.editable&&Ie.source_type!=="system"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(de,{theme:"primary",size:"small",text:"",onClick:vue.withModifiers(Ue=>r("edit",Ie),["stop"])},{default:vue.withCtx(()=>[...ue[11]||(ue[11]=[vue.createTextVNode(" 编辑 ",-1)])]),_:1},8,["onClick"]),vue.createVNode(qe,{placement:"bottom",theme:"light","ext-cls":"varibale-table-action-popover",width:90},{content:vue.withCtx(()=>[vue.createElementVNode("div",{class:"more-action-item",onClick:Ue=>r("clone",Ie)},"克隆",8,_hoisted_12$2),vue.createElementVNode("div",{class:"more-action-item",onClick:Ue=>j(Ie)},"删除",8,_hoisted_13$2)]),default:vue.withCtx(()=>[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-more-fill row-action-more",onClick:ue[6]||(ue[6]=vue.withModifiers(()=>{},["stop"]))})]),_:2},1024)],64)):(vue.openBlock(),vue.createBlock(de,{key:1,theme:"primary",size:"small",text:""},{default:vue.withCtx(()=>[...ue[12]||(ue[12]=[vue.createTextVNode("查看",-1)])]),_:1}))])]),_:1})]),_:1},8,["data"])])])}}}),GlobalVariableTable=_export_sfc$1(_sfc_main$1O,[["__scopeId","data-v-2a7f36a6"]]),setContext=(e={},t)=>{const n=window.$||{},r=y=>{let{url:g,type:k="GET",data:$,dataType:V="json",headers:L={},success:re,error:ie,complete:oe,timeout:z}=y||{};const j=new AbortController;let le=null;z&&(le=setTimeout(()=>{j.abort()},z));const Ce={method:k.toUpperCase(),headers:{"Content-Type":"application/json",...L},signal:j.signal};if($&&(k.toUpperCase()==="POST"||k.toUpperCase()==="PUT"||k.toUpperCase()==="PATCH"))typeof $=="string"?Ce.body=$:Ce.body=JSON.stringify($);else if($&&k.toUpperCase()==="GET"){const he=new URLSearchParams;typeof $=="object"?Object.keys($).forEach(ae=>{he.append(ae,String($[ae]))}):he.append("data",String($));const pe=g.includes("?")?"&":"?";g=`${g}${pe}${he.toString()}`}fetch(g,Ce).then(he=>{if(le&&clearTimeout(le),!he.ok)throw new Error(`HTTP error! status: ${he.status}`);return V==="json"?he.json():he.text()}).then(he=>{re&&re(he),oe&&oe()}).catch(he=>{le&&clearTimeout(le),ie&&ie(he),oe&&oe()})},i=t?t.endsWith("/")?t:`${t}/`:"";window.$={...n,context:{project:void 0,site_url:i,exec_env:"NODE_CONFIG",input_form:{inputs:void 0},output_form:{outputs:void 0,state:void 0},bk_plugin_api_host:{},get(y){return window.$.context[y]},canSelectBiz(){return!1},getConstants(){return e},getOutput(y){const{outputs:g}=window.$.context.output_form;if(g&&Array.isArray(g)){const k=window.$.context.output_form.outputs.find($=>$.key===y);return k?k.value:null}return null},getInput(y){return window.$.context.input_form.inputs&&window.$.context.input_form.inputs[y]?window.$.context.input_form.inputs[y]:null},getNodeStatus(){const{state:y}=window.$.context.output_form;return y||null}},gettext(y){return y},atoms:{},ajax:r},window.gettext=y=>y,window.show_msg=(y,g)=>{BkMessage({theme:g,message:y,ellipsisLine:3})}},data$1={output:[{name:"Trace ID",key:"trace_id",type:"string",schema:{type:"string",description:"Trace ID",enum:[]}},{name:"执行结果",key:"_result",type:"boolean",schema:{type:"boolean",description:"执行结果的布尔值,True or False",enum:[]}},{name:"循环次数",key:"_loop",type:"int",schema:{type:"int",description:"循环执行次数",enum:[]}},{name:"当前流程循环次数",key:"_inner_loop",type:"int",schema:{type:"int",description:"在当前流程节点循环执行次数,由父流程重新进入时会重置(仅支持新版引擎)",enum:[]}}]},remoteApiCommonConfig={data:data$1},data={output:[{name:"响应内容",key:"data",type:"object",schema:{type:"object",description:"HTTP 请求响应内容,内部结构不固定",enum:[],properties:{}}},{name:"状态码",key:"status_code",type:"int",schema:{type:"int",description:"HTTP 请求响应状态码",enum:[]}},{name:"执行结果",key:"_result",type:"boolean",schema:{type:"boolean",description:"执行结果的布尔值,True or False",enum:[]}},{name:"循环次数",key:"_loop",type:"int",schema:{type:"int",description:"循环执行次数",enum:[]}},{name:"当前流程循环次数",key:"_inner_loop",type:"int",schema:{type:"int",description:"在当前流程节点循环执行次数,由父流程重新进入时会重置(仅支持新版引擎)",enum:[]}}]},uniformApiCommonConfig={data};function jsonpRequest(e,t={},n={},r=""){return new Promise((i,y)=>{let g;const k=document.createElement("script"),$=()=>{k.parentNode&&document.body.removeChild(k)};k.onload=()=>{$(),g&&clearTimeout(g);const L=window.$.atoms[r];L?i(L):y(new Error(`Failed to extract plugin data from response. Plugin code: ${r}`))},k.onerror=()=>{$(),g&&clearTimeout(g),y(new Error("JSONP request failed"))};const V=[];for(const L in t)Object.prototype.hasOwnProperty.call(t,L)&&V.push(`${encodeURIComponent(L)}=${encodeURIComponent(t[L])}`);k.src=`${e}${V.length>0?"?"+V.join("&"):""}`,n.timeout&&(g=setTimeout(()=>{$(),y(new Error("JSONP request timeout"))},n.timeout)),document.body.appendChild(k)})}const pluginDetailRequest=async(e,t)=>{const{code:n,version:r,api_meta:i,data:y}=t;if(!n||!r)throw new Error("Plugin code and version are required for inner plugin");if(n==="remote_plugin"){const g=y?.plugin_code?.value,k=y?.plugin_version?.value||"";if(!g)throw new Error("Third party plugin code is required");return await getThirdPartyPluginDetail(e,g,k)}return n==="uniform_api"&&i?.id?await getUniformApiPlugin(e,i.id):await getInnerPluginDetail(e,n,r)};async function getInnerPluginDetail(e,t,n){if(!e?.fetchBkFlowInnerPluginDetail)throw new Error("fetchBkFlowInnerPluginDetail API is not available");const r=await e.fetchBkFlowInnerPluginDetail(t,n),{name:i,desc:y,form:g,output:k}=r;if(!g)throw new Error("Plugin form URL is not available");let $=[];try{$=await jsonpRequest(g,{},{timeout:1e4},t)}catch(L){throw new Error(L)}const V=k.map(L=>({description:L.schema?.description,key:L.key,type:L.type||L.schema?.type,name:L.name}));return{code:t,version:n,name:i,desc:y,versions:[n],inputs:$,outputs:V,inputParamsFormType:"renderform"}}function processJsonschemaformInputs(e){const t=lodash.cloneDeep(e);return t.properties&&Object.keys(t.properties).forEach(n=>{const r=t.properties[n];if(r["ui:component"]){const i=r["ui:component"];typeof i=="object"&&i.props&&(Object.keys(i.props).forEach(y=>{i[y]=i.props[y]}),delete i.props)}r.items?.properties&&Object.keys(r.items.properties).forEach(i=>{const y=r.items.properties[i];if(y["ui:component"]){const g=y["ui:component"];typeof g=="object"&&g.props&&(Object.keys(g.props).forEach(k=>{g[k]=g.props[k]}),delete g.props)}})}),t}async function getThirdPartyPluginDetail(api,pluginCode,pluginVersion){if(!api?.fetchBkFlowThirdPartyPluginMeta||!api?.fetchBkFlowThirdPartyPluginDetail)throw new Error("Third party plugin APIs are not available");const[metaData,appData]=await Promise.all([api.fetchBkFlowThirdPartyPluginMeta(pluginCode),api.fetchBkFlowThirdPartyPluginAppDetail(pluginCode)]),version=pluginVersion||metaData.versions[0],detailData=await api.fetchBkFlowThirdPartyPluginDetail(pluginCode,version),{inputs,outputs,forms,desc}=detailData;let inputForms,inputParamsFormType="jsonschemaform";forms.renderform?("$"in window||setContext(),eval(forms.renderform),inputForms=window.$.atoms[pluginCode],inputParamsFormType="renderform"):inputForms=processJsonschemaformInputs(inputs);const outputForms=[];return remoteApiCommonConfig.data.output.forEach(e=>{outputForms.push({description:e.schema.description,key:e.key,type:e.type,name:e.name})}),outputs.properties&&Object.keys(outputs.properties).forEach(e=>{outputForms.push({description:outputs.properties[e].description,key:e,type:outputs.properties[e].type,name:outputs.properties[e].title})}),{code:pluginCode,version,name:appData.name,desc,versions:metaData.versions,inputs:inputForms,outputs:outputForms,inputParamsFormType}}async function getUniformApiPlugin(e,t){if(!e?.fetchPluginDetail)throw new Error("fetchPluginDetail API is not available");const n=await e.fetchPluginDetail(t),{inputs:r,url:i,methods:y,group:g}=n;return{code:"uniform_api",name:n.name,desc:"",version:"",inputs:r,outputs:uniformApiCommonConfig.data.output.map(k=>({description:k.schema.description,key:k.key,type:k.type,name:k.name})),inputParamsFormType:"uniformApiForm",url:i,group:g,methods:y,category:n.category,uniformApiName:n.name}}const getRenderFormInputItemDefaultValue=e=>{let t={};if(e.type==="combine"){const n={};(e.attrs.children||[]).forEach(r=>{n[r.tag_code]=getRenderFormInputItemDefaultValue(r)}),t=n}else if("value"in e.attrs)t=lodash.cloneDeep(e.attrs.value);else if("default"in e.attrs)t=lodash.cloneDeep(e.attrs.default);else switch(e.type){case"input":case"textarea":case"radio":case"text":case"datetime":case"password":case"member_selector":case"log_display":case"code_editor":case"section":t="";break;case"checkbox":case"datatable":case"tree":case"upload":case"cascader":case"datetime_range":case"value_assign":t=[];break;case"select":t=e.attrs.multiple?[]:"";break;case"time":t=e.attrs.isRange?["00:00:00","23:59:59"]:"";break;case"int":t=0;break;default:t=""}return t},getUniformApiPluginFormValue=e=>"default"in e?e.default:"",getPluginDefaultComponentData=(e,t)=>{const{url:n,methods:r,inputs:i,polling:y,credential_key:g}=t,k={};return e==="uniform_api"?(k.uniform_api_plugin_url={value:n||"",hook:!1},k.uniform_api_plugin_method={value:r&&r.length>0?r[0]:"",hook:!1},y&&(k.uniform_api_plugin_polling={value:y,hook:!1}),g&&(k.uniform_api_plugin_credential_key={value:g,hook:!1}),i.forEach($=>{k[$.key]={value:getUniformApiPluginFormValue($),need_render:!0,hook:!1}})):e==="remote_plugin"?(k.plugin_code={value:t.code,hook:!1},k.plugin_version={value:t.version,hook:!1},t.inputParamsFormType==="renderform"?i.forEach($=>{k[$.tag_code]={value:getRenderFormInputItemDefaultValue($),need_render:!0,hook:!1}}):t.inputParamsFormType):e==="inner"&&i.forEach($=>{k[$.tag_code]={value:getRenderFormInputItemDefaultValue($),need_render:!0,hook:!1}}),k},getInputFormsFromConstants=async(e,t)=>{if(!t||Object.keys(t).length===0)return[];const n=Object.values(t).filter(k=>k.source_type==="custom"&&k.show_type==="show");if(n.length===0)return[];const r=new Map,i=new Map;n.forEach(k=>{const[$,V]=k.source_tag.split(".");if(!$){console.warn(`Variable ${k.key} has no custom_type`);return}const L=k.version;if(!L){console.warn(`Variable ${k.key} has no version, skipping`);return}const re=`${$}_${L}`;i.set(k,{code:$,tagCode:V,version:L}),r.has(re)||r.set(re,{code:$,version:L,tagCode:V})});const y=new Map;await Promise.all(Array.from(r.entries()).map(async([k,{code:$,version:V}])=>{try{const L=await e.fetchInnerVariableDetail($),{form:re}=L;if(!re){console.warn(`Plugin ${$}@${V} has no form URL`);return}let ie=[];try{ie=await jsonpRequest(re,{},{timeout:1e4},$)}catch(oe){console.error(`Failed to load form for plugin ${$}@${V}:`,oe);return}console.log("inputs",ie),y.set(k,{form:re,inputs:ie})}catch(L){console.error(`Failed to fetch plugin detail for ${$}@${V}:`,L)}}));const g=[];return n.forEach(k=>{const $=i.get(k);if(!$)return;const{code:V,tagCode:L,version:re}=$,ie=`${V}_${re}`,oe=y.get(ie);if(!oe)return;const z=oe.inputs.find(j=>j.tag_code===L);if(z){const j={...lodash.cloneDeep(z),name:k.name,tag_code:k.key};"events"in j&&j.events?.forEach(le=>{le.source===L&&(le.source=`\${${le.source}}`)}),["input","textarea"].includes(k.custom_type)&&k.validation!==""&&j.attrs.validation.push({type:"regex",args:k.validation,error_message:`参数值不符合正则规则:${k.validation}`}),g.push(j)}else console.warn(`Form item with tag_code ${L} not found in plugin ${V}@${re}`)}),g},getVariableForms=async(e,t)=>{if(!t?.custom_type)return console.warn("Variable has no custom_type"),[];const n=t.custom_type;try{const r=await e.fetchInnerVariableDetail(n),{form:i}=r;if(!i)return console.warn(`Variable type ${n} has no form URL`),[];let y=[];try{y=await jsonpRequest(i,{},{timeout:1e4},n)}catch(g){return console.error(`Failed to load form for variable type ${n}:`,g),[]}return y}catch(r){return console.error(`Failed to fetch variable detail for ${n}:`,r),[]}},checkDataType=e=>Object.prototype.toString.call(e).slice(8,-1);function useFormMixins(e={}){const{attrs:t={},emit:n,getFormData:r,onHookForm:i,getParent:y}=e,g=vue.inject("getFormData",r),k=vue.getCurrentInstance(),$=lodash.cloneDeep(t),V={},L={};Object.keys($).forEach($e=>{if($e!=="value"){const Ne=$[$e].default;let Oe;typeof Ne=="function"?Oe=$[$e].type===Function?Ne:Ne():Oe=Ne,L[$e]=Oe}else V[$e]=lodash.cloneDeep($[$e])});const re=vue.reactive({}),ie=vue.reactive({valid:!0,message:""}),oe=vue.reactive({}),z=$e=>{Object.keys(L).forEach(Ne=>{oe[Ne]=Object.prototype.hasOwnProperty.call($e,Ne)?$e[Ne]:L[Ne]})},j=$e=>Ne=>{$e.call(k?.proxy,Ne)},le=($e,Ne,Oe)=>{const kt=y?.();kt&&typeof kt.emit=="function"&&kt.emit(`${$e}_${Ne}`,Oe)},Ce=$e=>{if(!k?.props)return;const Ne=[k.props.tagCode];n?.("change",Ne,$e),vue.nextTick(()=>{ae();const Oe=k.props;pe(void 0,Oe.validation,$e,Oe.parentValue,Oe.validateSet)})},he=($e,Ne,Oe,kt)=>{let Lt=!0,Cn="";if(kt.includes($e.type))switch($e.type){case"required":{const hn=checkDataType(Ne);let jt=!1;hn==="Object"?jt=!Object.keys(Ne).length:hn==="Array"?jt=!Ne.filter(vn=>vn).length:hn==="String"?jt=!Ne.length:hn==="Number"&&(jt=!Ne.toString()),jt&&(Lt=!1,Cn="必填项");break}case"regex":/^\${[^${}]+}$/.test(Ne)||new RegExp($e.args).test(Ne)||(Lt=!1,Cn=$e.error_message);break;case"custom":if(!/^\${[^${}]+}$/.test(Ne)){const hn=$e.args.call(k?.proxy,Ne,Oe);hn.result||(Lt=!1,Cn=hn.error_message)}break}return{valid:Lt,message:Cn}},pe=($e,Ne,Oe,kt,Lt)=>$e?$e():Ne?Ne.every(hn=>{const jt=he(hn,Oe,kt,Lt||[]);return ie.valid=jt.valid,ie.message=jt.message,jt.valid}):!0,ae=()=>{if(!k?.props)return;const $e=k.props.tagCode,Ne=k.props.value;le($e,"change",Ne)},ue=()=>{n?.("onShow")},de=()=>{_e(!1),n?.("onHide")},_e=$e=>{i?.($e)},xe=()=>k?.parent,ze=()=>y?.(),Ve=($e=!1,Ne,Oe,kt,Lt)=>{let Cn;if($e)Cn=Ne;else{if(Oe&&Lt&&kt){const hn=/^\$\{(\w+)\}$/.test(kt)?kt:`\${${kt}}`,jt=Lt[hn];return jt?jt.value:Ne}Cn=Ne}return Cn},qe=($e=!1,Ne,Oe,kt,Lt)=>Ve($e,Ne,Oe,kt,Lt),At=($e,Ne)=>{const Oe=Ne||g?.()||{},kt=$e[0];if(!(kt in Oe))throw new Error(`表单值中不存在 ${kt} 属性`);let Lt;return $e.length===1?Lt=lodash.cloneDeep(Oe[kt]):Lt=At($e.slice(1),Oe[kt]),Lt},Fe=$e=>{Ce($e)};return{eventActions:re,validateInfo:ie,noInheritData:oe,inheritAttrs:V,noInheritAttrs:L,updateForm:Ce,validate:pe,getValidateResult:he,onChange:ae,show:ue,hide:de,changeHook:_e,get_form_instance:xe,get_parent:ze,get_value:qe,_get_value:Ve,get_tag_value:At,set_value:$e=>{Fe($e)},_set_value:Fe,getVariableVal:()=>{throw new Error("getVariableVal 方法需要手动实现,请通过 inject 传递 constants")},emit_event:le,getEventHandler:j,setupLifecycle:($e,Ne,Oe)=>{z(Ne),vue.onMounted(()=>{($e.atomEvents||[]).forEach(hn=>{const jt=`${hn.source}_${hn.type}`;re[jt]=j(hn.action);const vn=y?.();vn&&typeof vn.on=="function"&&vn.on(jt,re[jt])});const Lt=$e.atomMethods||{};k?.proxy&&Object.keys(Lt).forEach(hn=>{if(typeof Lt[hn]=="function")try{k.proxy[hn]=Lt[hn].bind(k.proxy)}catch(jt){console.warn(`无法注册方法 ${hn} 到组件实例:`,jt)}});const Cn=Lt._tag_init||k?.proxy?._tag_init;typeof Cn=="function"&&Cn.call(k?.proxy),vue.nextTick(()=>{const hn=$e.tagCode,jt=$e.value;le(hn,"init",jt),n?.("init",jt)})}),vue.onBeforeUnmount(()=>{($e.atomEvents||[]).forEach(Lt=>{const Cn=`${Lt.source}_${Lt.type}`,hn=y?.();hn&&typeof hn.off=="function"&&hn.off(Cn,re[Cn])})})},initNoInheritData:z}}const _hoisted_1$1q={class:"tag-button"},_sfc_main$1N=vue.defineComponent({__name:"TagButton",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:{},title:{default:"按钮文本"},type:{default:""},icon:{default:""},size:{default:"normal"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},text:{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:{title:{type:String,default:"按钮文本"},type:{type:String,default:""},icon:{type:String,default:""},size:{type:String,default:"normal"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},text:{type:Boolean,default:!1}},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=()=>{$.emit_event(r.tagCode,"click",r.modelValue)};return t({validate:re=>$.validate(void 0,r.validation,re!==void 0?re:r.modelValue,r.parentValue,r.validateSet)}),(re,ie)=>{const oe=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createVNode(oe,{theme:e.type,size:e.size,disabled:e.disabled,loading:e.loading,icon:e.icon,text:e.text,onClick:V},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.title),1)]),_:1},8,["theme","size","disabled","loading","icon","text"])])}}}),TagButton=_export_sfc$1(_sfc_main$1N,[["__scopeId","data-v-7ce17447"]]),__vite_glob_0_0=Object.freeze(Object.defineProperty({__proto__:null,default:TagButton},Symbol.toStringTag,{value:"Module"})),defaultNamespace="el",statePrefix="is-",_bem=(e,t,n,r,i)=>{let y=`${e}-${t}`;return n&&(y+=`-${n}`),r&&(y+=`__${r}`),i&&(y+=`--${i}`),y},namespaceContextKey=Symbol("namespaceContextKey"),useGetDerivedNamespace=e=>{const t=vue.getCurrentInstance()?vue.inject(namespaceContextKey,vue.ref(defaultNamespace)):vue.ref(defaultNamespace);return vue.computed(()=>vue.unref(t)||defaultNamespace)},useNamespace=(e,t)=>{const n=useGetDerivedNamespace();return{namespace:n,b:(j="")=>_bem(n.value,e,j,"",""),e:j=>j?_bem(n.value,e,"",j,""):"",m:j=>j?_bem(n.value,e,"","",j):"",be:(j,le)=>j&&le?_bem(n.value,e,j,le,""):"",em:(j,le)=>j&&le?_bem(n.value,e,"",j,le):"",bm:(j,le)=>j&&le?_bem(n.value,e,j,"",le):"",bem:(j,le,Ce)=>j&&le&&Ce?_bem(n.value,e,j,le,Ce):"",is:(j,...le)=>{const Ce=le.length>=1?le[0]:!0;return j&&Ce?`${statePrefix}${j}`:""},cssVar:j=>{const le={};for(const Ce in j)j[Ce]&&(le[`--${n.value}-${Ce}`]=j[Ce]);return le},cssVarName:j=>`--${n.value}-${j}`,cssVarBlock:j=>{const le={};for(const Ce in j)j[Ce]&&(le[`--${n.value}-${e}-${Ce}`]=j[Ce]);return le},cssVarBlockName:j=>`--${n.value}-${e}-${j}`}};process.env.NODE_ENV!=="production"&&Object.freeze({});process.env.NODE_ENV!=="production"&&Object.freeze([]);const NOOP=()=>{},hasOwnProperty$f=Object.prototype.hasOwnProperty,hasOwn=(e,t)=>hasOwnProperty$f.call(e,t),isArray$1=Array.isArray,isDate=e=>toTypeString(e)==="[object Date]",isFunction$1=e=>typeof e=="function",isString=e=>typeof e=="string",isObject$2=e=>e!==null&&typeof e=="object",objectToString$1=Object.prototype.toString,toTypeString=e=>objectToString$1.call(e),isPlainObject$1=e=>toTypeString(e)==="[object Object]",cacheStringFunction=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},camelizeRE=/-\w/g,camelize=cacheStringFunction(e=>e.replace(camelizeRE,t=>t.slice(1).toUpperCase()));var freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),Symbol$1=root.Symbol,objectProto$g=Object.prototype,hasOwnProperty$e=objectProto$g.hasOwnProperty,nativeObjectToString$1=objectProto$g.toString,symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(e){var t=hasOwnProperty$e.call(e,symToStringTag$1),n=e[symToStringTag$1];try{e[symToStringTag$1]=void 0;var r=!0}catch{}var i=nativeObjectToString$1.call(e);return r&&(t?e[symToStringTag$1]=n:delete e[symToStringTag$1]),i}var objectProto$f=Object.prototype,nativeObjectToString=objectProto$f.toString;function objectToString(e){return nativeObjectToString.call(e)}var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(e){return e==null?e===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(e)?getRawTag(e):objectToString(e)}function isObjectLike(e){return e!=null&&typeof e=="object"}var symbolTag$3="[object Symbol]";function isSymbol(e){return typeof e=="symbol"||isObjectLike(e)&&baseGetTag(e)==symbolTag$3}function arrayMap(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}var isArray=Array.isArray,symbolProto$2=Symbol$1?Symbol$1.prototype:void 0,symbolToString=symbolProto$2?symbolProto$2.toString:void 0;function baseToString(e){if(typeof e=="string")return e;if(isArray(e))return arrayMap(e,baseToString)+"";if(isSymbol(e))return symbolToString?symbolToString.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var reWhitespace=/\s/;function trimmedEndIndex(e){for(var t=e.length;t--&&reWhitespace.test(e.charAt(t)););return t}var reTrimStart=/^\s+/;function baseTrim(e){return e&&e.slice(0,trimmedEndIndex(e)+1).replace(reTrimStart,"")}function isObject$1(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(e){if(typeof e=="number")return e;if(isSymbol(e))return NAN;if(isObject$1(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=isObject$1(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=baseTrim(e);var n=reIsBinary.test(e);return n||reIsOctal.test(e)?freeParseInt(e.slice(2),n?2:8):reIsBadHex.test(e)?NAN:+e}function identity(e){return e}var asyncTag="[object AsyncFunction]",funcTag$2="[object Function]",genTag$1="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction(e){if(!isObject$1(e))return!1;var t=baseGetTag(e);return t==funcTag$2||t==genTag$1||t==asyncTag||t==proxyTag}var coreJsData=root["__core-js_shared__"],maskSrcKey=(function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function isMasked(e){return!!maskSrcKey&&maskSrcKey in e}var funcProto$2=Function.prototype,funcToString$2=funcProto$2.toString;function toSource(e){if(e!=null){try{return funcToString$2.call(e)}catch{}try{return e+""}catch{}}return""}var reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto$1=Function.prototype,objectProto$e=Object.prototype,funcToString$1=funcProto$1.toString,hasOwnProperty$d=objectProto$e.hasOwnProperty,reIsNative=RegExp("^"+funcToString$1.call(hasOwnProperty$d).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(e){if(!isObject$1(e)||isMasked(e))return!1;var t=isFunction(e)?reIsNative:reIsHostCtor;return t.test(toSource(e))}function getValue(e,t){return e?.[t]}function getNative(e,t){var n=getValue(e,t);return baseIsNative(n)?n:void 0}var WeakMap$1=getNative(root,"WeakMap"),objectCreate=Object.create,baseCreate=(function(){function e(){}return function(t){if(!isObject$1(t))return{};if(objectCreate)return objectCreate(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}})();function apply(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function noop$1(){}function copyArray(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var HOT_COUNT=800,HOT_SPAN=16,nativeNow=Date.now;function shortOut(e){var t=0,n=0;return function(){var r=nativeNow(),i=HOT_SPAN-(r-n);if(n=r,i>0){if(++t>=HOT_COUNT)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function constant(e){return function(){return e}}var defineProperty=(function(){try{var e=getNative(Object,"defineProperty");return e({},"",{}),e}catch{}})(),baseSetToString=defineProperty?function(e,t){return defineProperty(e,"toString",{configurable:!0,enumerable:!1,value:constant(t),writable:!0})}:identity,setToString=shortOut(baseSetToString);function arrayEach(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}function baseFindIndex(e,t,n,r){for(var i=e.length,y=n+(r?1:-1);r?y--:++y<i;)if(t(e[y],y,e))return y;return-1}function baseIsNaN(e){return e!==e}function strictIndexOf(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}function baseIndexOf(e,t,n){return t===t?strictIndexOf(e,t,n):baseFindIndex(e,baseIsNaN,n)}function arrayIncludes(e,t){var n=e==null?0:e.length;return!!n&&baseIndexOf(e,t,0)>-1}var MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex(e,t){var n=typeof e;return t=t??MAX_SAFE_INTEGER$1,!!t&&(n=="number"||n!="symbol"&&reIsUint.test(e))&&e>-1&&e%1==0&&e<t}function baseAssignValue(e,t,n){t=="__proto__"&&defineProperty?defineProperty(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function eq(e,t){return e===t||e!==e&&t!==t}var objectProto$d=Object.prototype,hasOwnProperty$c=objectProto$d.hasOwnProperty;function assignValue(e,t,n){var r=e[t];(!(hasOwnProperty$c.call(e,t)&&eq(r,n))||n===void 0&&!(t in e))&&baseAssignValue(e,t,n)}function copyObject(e,t,n,r){var i=!n;n||(n={});for(var y=-1,g=t.length;++y<g;){var k=t[y],$=void 0;$===void 0&&($=e[k]),i?baseAssignValue(n,k,$):assignValue(n,k,$)}return n}var nativeMax$1=Math.max;function overRest(e,t,n){return t=nativeMax$1(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,y=nativeMax$1(r.length-t,0),g=Array(y);++i<y;)g[i]=r[t+i];i=-1;for(var k=Array(t+1);++i<t;)k[i]=r[i];return k[t]=n(g),apply(e,this,k)}}function baseRest(e,t){return setToString(overRest(e,t,identity),e+"")}var MAX_SAFE_INTEGER=9007199254740991;function isLength(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isArrayLike(e){return e!=null&&isLength(e.length)&&!isFunction(e)}function isIterateeCall(e,t,n){if(!isObject$1(n))return!1;var r=typeof t;return(r=="number"?isArrayLike(n)&&isIndex(t,n.length):r=="string"&&t in n)?eq(n[t],e):!1}function createAssigner(e){return baseRest(function(t,n){var r=-1,i=n.length,y=i>1?n[i-1]:void 0,g=i>2?n[2]:void 0;for(y=e.length>3&&typeof y=="function"?(i--,y):void 0,g&&isIterateeCall(n[0],n[1],g)&&(y=i<3?void 0:y,i=1),t=Object(t);++r<i;){var k=n[r];k&&e(t,k,r,y)}return t})}var objectProto$c=Object.prototype;function isPrototype(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||objectProto$c;return e===n}function baseTimes(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var argsTag$3="[object Arguments]";function baseIsArguments(e){return isObjectLike(e)&&baseGetTag(e)==argsTag$3}var objectProto$b=Object.prototype,hasOwnProperty$b=objectProto$b.hasOwnProperty,propertyIsEnumerable$1=objectProto$b.propertyIsEnumerable,isArguments=baseIsArguments((function(){return arguments})())?baseIsArguments:function(e){return isObjectLike(e)&&hasOwnProperty$b.call(e,"callee")&&!propertyIsEnumerable$1.call(e,"callee")};function stubFalse(){return!1}var freeExports$2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$2=freeExports$2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$2=freeModule$2&&freeModule$2.exports===freeExports$2,Buffer$2=moduleExports$2?root.Buffer:void 0,nativeIsBuffer=Buffer$2?Buffer$2.isBuffer:void 0,isBuffer=nativeIsBuffer||stubFalse,argsTag$2="[object Arguments]",arrayTag$2="[object Array]",boolTag$3="[object Boolean]",dateTag$3="[object Date]",errorTag$2="[object Error]",funcTag$1="[object Function]",mapTag$5="[object Map]",numberTag$3="[object Number]",objectTag$4="[object Object]",regexpTag$3="[object RegExp]",setTag$5="[object Set]",stringTag$3="[object String]",weakMapTag$2="[object WeakMap]",arrayBufferTag$3="[object ArrayBuffer]",dataViewTag$4="[object DataView]",float32Tag$2="[object Float32Array]",float64Tag$2="[object Float64Array]",int8Tag$2="[object Int8Array]",int16Tag$2="[object Int16Array]",int32Tag$2="[object Int32Array]",uint8Tag$2="[object Uint8Array]",uint8ClampedTag$2="[object Uint8ClampedArray]",uint16Tag$2="[object Uint16Array]",uint32Tag$2="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag$2]=typedArrayTags[float64Tag$2]=typedArrayTags[int8Tag$2]=typedArrayTags[int16Tag$2]=typedArrayTags[int32Tag$2]=typedArrayTags[uint8Tag$2]=typedArrayTags[uint8ClampedTag$2]=typedArrayTags[uint16Tag$2]=typedArrayTags[uint32Tag$2]=!0;typedArrayTags[argsTag$2]=typedArrayTags[arrayTag$2]=typedArrayTags[arrayBufferTag$3]=typedArrayTags[boolTag$3]=typedArrayTags[dataViewTag$4]=typedArrayTags[dateTag$3]=typedArrayTags[errorTag$2]=typedArrayTags[funcTag$1]=typedArrayTags[mapTag$5]=typedArrayTags[numberTag$3]=typedArrayTags[objectTag$4]=typedArrayTags[regexpTag$3]=typedArrayTags[setTag$5]=typedArrayTags[stringTag$3]=typedArrayTags[weakMapTag$2]=!1;function baseIsTypedArray(e){return isObjectLike(e)&&isLength(e.length)&&!!typedArrayTags[baseGetTag(e)]}function baseUnary(e){return function(t){return e(t)}}var freeExports$1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$1=freeExports$1&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$1=freeModule$1&&freeModule$1.exports===freeExports$1,freeProcess=moduleExports$1&&freeGlobal.process,nodeUtil=(function(){try{var e=freeModule$1&&freeModule$1.require&&freeModule$1.require("util").types;return e||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}})(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,objectProto$a=Object.prototype,hasOwnProperty$a=objectProto$a.hasOwnProperty;function arrayLikeKeys(e,t){var n=isArray(e),r=!n&&isArguments(e),i=!n&&!r&&isBuffer(e),y=!n&&!r&&!i&&isTypedArray(e),g=n||r||i||y,k=g?baseTimes(e.length,String):[],$=k.length;for(var V in e)(t||hasOwnProperty$a.call(e,V))&&!(g&&(V=="length"||i&&(V=="offset"||V=="parent")||y&&(V=="buffer"||V=="byteLength"||V=="byteOffset")||isIndex(V,$)))&&k.push(V);return k}function overArg(e,t){return function(n){return e(t(n))}}var nativeKeys=overArg(Object.keys,Object),objectProto$9=Object.prototype,hasOwnProperty$9=objectProto$9.hasOwnProperty;function baseKeys(e){if(!isPrototype(e))return nativeKeys(e);var t=[];for(var n in Object(e))hasOwnProperty$9.call(e,n)&&n!="constructor"&&t.push(n);return t}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function nativeKeysIn(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var objectProto$8=Object.prototype,hasOwnProperty$8=objectProto$8.hasOwnProperty;function baseKeysIn(e){if(!isObject$1(e))return nativeKeysIn(e);var t=isPrototype(e),n=[];for(var r in e)r=="constructor"&&(t||!hasOwnProperty$8.call(e,r))||n.push(r);return n}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}var reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;function isKey(e,t){if(isArray(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||isSymbol(e)?!0:reIsPlainProp.test(e)||!reIsDeepProp.test(e)||t!=null&&e in Object(t)}var nativeCreate=getNative(Object,"create");function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}function hashDelete(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$7=Object.prototype,hasOwnProperty$7=objectProto$7.hasOwnProperty;function hashGet(e){var t=this.__data__;if(nativeCreate){var n=t[e];return n===HASH_UNDEFINED$2?void 0:n}return hasOwnProperty$7.call(t,e)?t[e]:void 0}var objectProto$6=Object.prototype,hasOwnProperty$6=objectProto$6.hasOwnProperty;function hashHas(e){var t=this.__data__;return nativeCreate?t[e]!==void 0:hasOwnProperty$6.call(t,e)}var HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=nativeCreate&&t===void 0?HASH_UNDEFINED$1:t,this}function Hash(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Hash.prototype.clear=hashClear;Hash.prototype.delete=hashDelete;Hash.prototype.get=hashGet;Hash.prototype.has=hashHas;Hash.prototype.set=hashSet;function listCacheClear(){this.__data__=[],this.size=0}function assocIndexOf(e,t){for(var n=e.length;n--;)if(eq(e[n][0],t))return n;return-1}var arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete(e){var t=this.__data__,n=assocIndexOf(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():splice.call(t,n,1),--this.size,!0}function listCacheGet(e){var t=this.__data__,n=assocIndexOf(t,e);return n<0?void 0:t[n][1]}function listCacheHas(e){return assocIndexOf(this.__data__,e)>-1}function listCacheSet(e,t){var n=this.__data__,r=assocIndexOf(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function ListCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ListCache.prototype.clear=listCacheClear;ListCache.prototype.delete=listCacheDelete;ListCache.prototype.get=listCacheGet;ListCache.prototype.has=listCacheHas;ListCache.prototype.set=listCacheSet;var Map$1=getNative(root,"Map");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map$1||ListCache),string:new Hash}}function isKeyable(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function getMapData(e,t){var n=e.__data__;return isKeyable(t)?n[typeof t=="string"?"string":"hash"]:n.map}function mapCacheDelete(e){var t=getMapData(this,e).delete(e);return this.size-=t?1:0,t}function mapCacheGet(e){return getMapData(this,e).get(e)}function mapCacheHas(e){return getMapData(this,e).has(e)}function mapCacheSet(e,t){var n=getMapData(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function MapCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}MapCache.prototype.clear=mapCacheClear;MapCache.prototype.delete=mapCacheDelete;MapCache.prototype.get=mapCacheGet;MapCache.prototype.has=mapCacheHas;MapCache.prototype.set=mapCacheSet;var FUNC_ERROR_TEXT$1="Expected a function";function memoize(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(FUNC_ERROR_TEXT$1);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],y=n.cache;if(y.has(i))return y.get(i);var g=e.apply(this,r);return n.cache=y.set(i,g)||y,g};return n.cache=new(memoize.Cache||MapCache),n}memoize.Cache=MapCache;var MAX_MEMOIZE_SIZE=500;function memoizeCapped(e){var t=memoize(e,function(r){return n.size===MAX_MEMOIZE_SIZE&&n.clear(),r}),n=t.cache;return t}var rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(rePropName,function(n,r,i,y){t.push(i?y.replace(reEscapeChar,"$1"):r||n)}),t});function toString$1(e){return e==null?"":baseToString(e)}function castPath(e,t){return isArray(e)?e:isKey(e,t)?[e]:stringToPath(toString$1(e))}function toKey(e){if(typeof e=="string"||isSymbol(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function baseGet(e,t){t=castPath(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[toKey(t[n++])];return n&&n==r?e:void 0}function get(e,t,n){var r=e==null?void 0:baseGet(e,t);return r===void 0?n:r}function arrayPush(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}var spreadableSymbol=Symbol$1?Symbol$1.isConcatSpreadable:void 0;function isFlattenable(e){return isArray(e)||isArguments(e)||!!(spreadableSymbol&&e&&e[spreadableSymbol])}function baseFlatten(e,t,n,r,i){var y=-1,g=e.length;for(n||(n=isFlattenable),i||(i=[]);++y<g;){var k=e[y];n(k)?arrayPush(i,k):r||(i[i.length]=k)}return i}function flatten(e){var t=e==null?0:e.length;return t?baseFlatten(e):[]}function flatRest(e){return setToString(overRest(e,void 0,flatten),e+"")}var getPrototype=overArg(Object.getPrototypeOf,Object),objectTag$3="[object Object]",funcProto=Function.prototype,objectProto$5=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$5=objectProto$5.hasOwnProperty,objectCtorString=funcToString.call(Object);function isPlainObject(e){if(!isObjectLike(e)||baseGetTag(e)!=objectTag$3)return!1;var t=getPrototype(e);if(t===null)return!0;var n=hasOwnProperty$5.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&funcToString.call(n)==objectCtorString}function baseSlice(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),n=n>i?i:n,n<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var y=Array(i);++r<i;)y[r]=e[r+t];return y}function castArray$1(){if(!arguments.length)return[];var e=arguments[0];return isArray(e)?e:[e]}function baseClamp(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function clamp(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=toNumber(n),n=n===n?n:0),t!==void 0&&(t=toNumber(t),t=t===t?t:0),baseClamp(toNumber(e),t,n)}function stackClear(){this.__data__=new ListCache,this.size=0}function stackDelete(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function stackGet(e){return this.__data__.get(e)}function stackHas(e){return this.__data__.has(e)}var LARGE_ARRAY_SIZE$1=200;function stackSet(e,t){var n=this.__data__;if(n instanceof ListCache){var r=n.__data__;if(!Map$1||r.length<LARGE_ARRAY_SIZE$1-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new MapCache(r)}return n.set(e,t),this.size=n.size,this}function Stack(e){var t=this.__data__=new ListCache(e);this.size=t.size}Stack.prototype.clear=stackClear;Stack.prototype.delete=stackDelete;Stack.prototype.get=stackGet;Stack.prototype.has=stackHas;Stack.prototype.set=stackSet;function baseAssign(e,t){return e&©Object(t,keys(t),e)}function baseAssignIn(e,t){return e&©Object(t,keysIn(t),e)}var freeExports=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,Buffer$1=moduleExports?root.Buffer:void 0,allocUnsafe=Buffer$1?Buffer$1.allocUnsafe:void 0;function cloneBuffer(e,t){if(t)return e.slice();var n=e.length,r=allocUnsafe?allocUnsafe(n):new e.constructor(n);return e.copy(r),r}function arrayFilter(e,t){for(var n=-1,r=e==null?0:e.length,i=0,y=[];++n<r;){var g=e[n];t(g,n,e)&&(y[i++]=g)}return y}function stubArray(){return[]}var objectProto$4=Object.prototype,propertyIsEnumerable=objectProto$4.propertyIsEnumerable,nativeGetSymbols$1=Object.getOwnPropertySymbols,getSymbols=nativeGetSymbols$1?function(e){return e==null?[]:(e=Object(e),arrayFilter(nativeGetSymbols$1(e),function(t){return propertyIsEnumerable.call(e,t)}))}:stubArray;function copySymbols(e,t){return copyObject(e,getSymbols(e),t)}var nativeGetSymbols=Object.getOwnPropertySymbols,getSymbolsIn=nativeGetSymbols?function(e){for(var t=[];e;)arrayPush(t,getSymbols(e)),e=getPrototype(e);return t}:stubArray;function copySymbolsIn(e,t){return copyObject(e,getSymbolsIn(e),t)}function baseGetAllKeys(e,t,n){var r=t(e);return isArray(e)?r:arrayPush(r,n(e))}function getAllKeys(e){return baseGetAllKeys(e,keys,getSymbols)}function getAllKeysIn(e){return baseGetAllKeys(e,keysIn,getSymbolsIn)}var DataView=getNative(root,"DataView"),Promise$1=getNative(root,"Promise"),Set$1=getNative(root,"Set"),mapTag$4="[object Map]",objectTag$2="[object Object]",promiseTag="[object Promise]",setTag$4="[object Set]",weakMapTag$1="[object WeakMap]",dataViewTag$3="[object DataView]",dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map$1),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag$3||Map$1&&getTag(new Map$1)!=mapTag$4||Promise$1&&getTag(Promise$1.resolve())!=promiseTag||Set$1&&getTag(new Set$1)!=setTag$4||WeakMap$1&&getTag(new WeakMap$1)!=weakMapTag$1)&&(getTag=function(e){var t=baseGetTag(e),n=t==objectTag$2?e.constructor:void 0,r=n?toSource(n):"";if(r)switch(r){case dataViewCtorString:return dataViewTag$3;case mapCtorString:return mapTag$4;case promiseCtorString:return promiseTag;case setCtorString:return setTag$4;case weakMapCtorString:return weakMapTag$1}return t});var objectProto$3=Object.prototype,hasOwnProperty$4=objectProto$3.hasOwnProperty;function initCloneArray(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&hasOwnProperty$4.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var Uint8Array$1=root.Uint8Array;function cloneArrayBuffer(e){var t=new e.constructor(e.byteLength);return new Uint8Array$1(t).set(new Uint8Array$1(e)),t}function cloneDataView(e,t){var n=t?cloneArrayBuffer(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var reFlags=/\w*$/;function cloneRegExp(e){var t=new e.constructor(e.source,reFlags.exec(e));return t.lastIndex=e.lastIndex,t}var symbolProto$1=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf$1=symbolProto$1?symbolProto$1.valueOf:void 0;function cloneSymbol(e){return symbolValueOf$1?Object(symbolValueOf$1.call(e)):{}}function cloneTypedArray(e,t){var n=t?cloneArrayBuffer(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var boolTag$2="[object Boolean]",dateTag$2="[object Date]",mapTag$3="[object Map]",numberTag$2="[object Number]",regexpTag$2="[object RegExp]",setTag$3="[object Set]",stringTag$2="[object String]",symbolTag$2="[object Symbol]",arrayBufferTag$2="[object ArrayBuffer]",dataViewTag$2="[object DataView]",float32Tag$1="[object Float32Array]",float64Tag$1="[object Float64Array]",int8Tag$1="[object Int8Array]",int16Tag$1="[object Int16Array]",int32Tag$1="[object Int32Array]",uint8Tag$1="[object Uint8Array]",uint8ClampedTag$1="[object Uint8ClampedArray]",uint16Tag$1="[object Uint16Array]",uint32Tag$1="[object Uint32Array]";function initCloneByTag(e,t,n){var r=e.constructor;switch(t){case arrayBufferTag$2:return cloneArrayBuffer(e);case boolTag$2:case dateTag$2:return new r(+e);case dataViewTag$2:return cloneDataView(e,n);case float32Tag$1:case float64Tag$1:case int8Tag$1:case int16Tag$1:case int32Tag$1:case uint8Tag$1:case uint8ClampedTag$1:case uint16Tag$1:case uint32Tag$1:return cloneTypedArray(e,n);case mapTag$3:return new r;case numberTag$2:case stringTag$2:return new r(e);case regexpTag$2:return cloneRegExp(e);case setTag$3:return new r;case symbolTag$2:return cloneSymbol(e)}}function initCloneObject(e){return typeof e.constructor=="function"&&!isPrototype(e)?baseCreate(getPrototype(e)):{}}var mapTag$2="[object Map]";function baseIsMap(e){return isObjectLike(e)&&getTag(e)==mapTag$2}var nodeIsMap=nodeUtil&&nodeUtil.isMap,isMap=nodeIsMap?baseUnary(nodeIsMap):baseIsMap,setTag$2="[object Set]";function baseIsSet(e){return isObjectLike(e)&&getTag(e)==setTag$2}var nodeIsSet=nodeUtil&&nodeUtil.isSet,isSet=nodeIsSet?baseUnary(nodeIsSet):baseIsSet,CLONE_DEEP_FLAG$2=1,CLONE_FLAT_FLAG$1=2,CLONE_SYMBOLS_FLAG$2=4,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag$1="[object Map]",numberTag$1="[object Number]",objectTag$1="[object Object]",regexpTag$1="[object RegExp]",setTag$1="[object Set]",stringTag$1="[object String]",symbolTag$1="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",cloneableTags={};cloneableTags[argsTag$1]=cloneableTags[arrayTag$1]=cloneableTags[arrayBufferTag$1]=cloneableTags[dataViewTag$1]=cloneableTags[boolTag$1]=cloneableTags[dateTag$1]=cloneableTags[float32Tag]=cloneableTags[float64Tag]=cloneableTags[int8Tag]=cloneableTags[int16Tag]=cloneableTags[int32Tag]=cloneableTags[mapTag$1]=cloneableTags[numberTag$1]=cloneableTags[objectTag$1]=cloneableTags[regexpTag$1]=cloneableTags[setTag$1]=cloneableTags[stringTag$1]=cloneableTags[symbolTag$1]=cloneableTags[uint8Tag]=cloneableTags[uint8ClampedTag]=cloneableTags[uint16Tag]=cloneableTags[uint32Tag]=!0;cloneableTags[errorTag$1]=cloneableTags[funcTag]=cloneableTags[weakMapTag]=!1;function baseClone(e,t,n,r,i,y){var g,k=t&CLONE_DEEP_FLAG$2,$=t&CLONE_FLAT_FLAG$1,V=t&CLONE_SYMBOLS_FLAG$2;if(n&&(g=i?n(e,r,i,y):n(e)),g!==void 0)return g;if(!isObject$1(e))return e;var L=isArray(e);if(L){if(g=initCloneArray(e),!k)return copyArray(e,g)}else{var re=getTag(e),ie=re==funcTag||re==genTag;if(isBuffer(e))return cloneBuffer(e,k);if(re==objectTag$1||re==argsTag$1||ie&&!i){if(g=$||ie?{}:initCloneObject(e),!k)return $?copySymbolsIn(e,baseAssignIn(g,e)):copySymbols(e,baseAssign(g,e))}else{if(!cloneableTags[re])return i?e:{};g=initCloneByTag(e,re,k)}}y||(y=new Stack);var oe=y.get(e);if(oe)return oe;y.set(e,g),isSet(e)?e.forEach(function(le){g.add(baseClone(le,t,n,le,e,y))}):isMap(e)&&e.forEach(function(le,Ce){g.set(Ce,baseClone(le,t,n,Ce,e,y))});var z=V?$?getAllKeysIn:getAllKeys:$?keysIn:keys,j=L?void 0:z(e);return arrayEach(j||e,function(le,Ce){j&&(Ce=le,le=e[Ce]),assignValue(g,Ce,baseClone(le,t,n,Ce,e,y))}),g}var CLONE_DEEP_FLAG$1=1,CLONE_SYMBOLS_FLAG$1=4;function cloneDeep(e){return baseClone(e,CLONE_DEEP_FLAG$1|CLONE_SYMBOLS_FLAG$1)}var HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd(e){return this.__data__.set(e,HASH_UNDEFINED),this}function setCacheHas(e){return this.__data__.has(e)}function SetCache(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new MapCache;++t<n;)this.add(e[t])}SetCache.prototype.add=SetCache.prototype.push=setCacheAdd;SetCache.prototype.has=setCacheHas;function arraySome(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function cacheHas(e,t){return e.has(t)}var COMPARE_PARTIAL_FLAG$5=1,COMPARE_UNORDERED_FLAG$3=2;function equalArrays(e,t,n,r,i,y){var g=n&COMPARE_PARTIAL_FLAG$5,k=e.length,$=t.length;if(k!=$&&!(g&&$>k))return!1;var V=y.get(e),L=y.get(t);if(V&&L)return V==t&&L==e;var re=-1,ie=!0,oe=n&COMPARE_UNORDERED_FLAG$3?new SetCache:void 0;for(y.set(e,t),y.set(t,e);++re<k;){var z=e[re],j=t[re];if(r)var le=g?r(j,z,re,t,e,y):r(z,j,re,e,t,y);if(le!==void 0){if(le)continue;ie=!1;break}if(oe){if(!arraySome(t,function(Ce,he){if(!cacheHas(oe,he)&&(z===Ce||i(z,Ce,n,r,y)))return oe.push(he)})){ie=!1;break}}else if(!(z===j||i(z,j,n,r,y))){ie=!1;break}}return y.delete(e),y.delete(t),ie}function mapToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(r,i){n[++t]=[i,r]}),n}function setToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var COMPARE_PARTIAL_FLAG$4=1,COMPARE_UNORDERED_FLAG$2=2,boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",mapTag="[object Map]",numberTag="[object Number]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag(e,t,n,r,i,y,g){switch(n){case dataViewTag:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case arrayBufferTag:return!(e.byteLength!=t.byteLength||!y(new Uint8Array$1(e),new Uint8Array$1(t)));case boolTag:case dateTag:case numberTag:return eq(+e,+t);case errorTag:return e.name==t.name&&e.message==t.message;case regexpTag:case stringTag:return e==t+"";case mapTag:var k=mapToArray;case setTag:var $=r&COMPARE_PARTIAL_FLAG$4;if(k||(k=setToArray),e.size!=t.size&&!$)return!1;var V=g.get(e);if(V)return V==t;r|=COMPARE_UNORDERED_FLAG$2,g.set(e,t);var L=equalArrays(k(e),k(t),r,i,y,g);return g.delete(e),L;case symbolTag:if(symbolValueOf)return symbolValueOf.call(e)==symbolValueOf.call(t)}return!1}var COMPARE_PARTIAL_FLAG$3=1,objectProto$2=Object.prototype,hasOwnProperty$3=objectProto$2.hasOwnProperty;function equalObjects(e,t,n,r,i,y){var g=n&COMPARE_PARTIAL_FLAG$3,k=getAllKeys(e),$=k.length,V=getAllKeys(t),L=V.length;if($!=L&&!g)return!1;for(var re=$;re--;){var ie=k[re];if(!(g?ie in t:hasOwnProperty$3.call(t,ie)))return!1}var oe=y.get(e),z=y.get(t);if(oe&&z)return oe==t&&z==e;var j=!0;y.set(e,t),y.set(t,e);for(var le=g;++re<$;){ie=k[re];var Ce=e[ie],he=t[ie];if(r)var pe=g?r(he,Ce,ie,t,e,y):r(Ce,he,ie,e,t,y);if(!(pe===void 0?Ce===he||i(Ce,he,n,r,y):pe)){j=!1;break}le||(le=ie=="constructor")}if(j&&!le){var ae=e.constructor,ue=t.constructor;ae!=ue&&"constructor"in e&&"constructor"in t&&!(typeof ae=="function"&&ae instanceof ae&&typeof ue=="function"&&ue instanceof ue)&&(j=!1)}return y.delete(e),y.delete(t),j}var COMPARE_PARTIAL_FLAG$2=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto$1=Object.prototype,hasOwnProperty$2=objectProto$1.hasOwnProperty;function baseIsEqualDeep(e,t,n,r,i,y){var g=isArray(e),k=isArray(t),$=g?arrayTag:getTag(e),V=k?arrayTag:getTag(t);$=$==argsTag?objectTag:$,V=V==argsTag?objectTag:V;var L=$==objectTag,re=V==objectTag,ie=$==V;if(ie&&isBuffer(e)){if(!isBuffer(t))return!1;g=!0,L=!1}if(ie&&!L)return y||(y=new Stack),g||isTypedArray(e)?equalArrays(e,t,n,r,i,y):equalByTag(e,t,$,n,r,i,y);if(!(n&COMPARE_PARTIAL_FLAG$2)){var oe=L&&hasOwnProperty$2.call(e,"__wrapped__"),z=re&&hasOwnProperty$2.call(t,"__wrapped__");if(oe||z){var j=oe?e.value():e,le=z?t.value():t;return y||(y=new Stack),i(j,le,n,r,y)}}return ie?(y||(y=new Stack),equalObjects(e,t,n,r,i,y)):!1}function baseIsEqual(e,t,n,r,i){return e===t?!0:e==null||t==null||!isObjectLike(e)&&!isObjectLike(t)?e!==e&&t!==t:baseIsEqualDeep(e,t,n,r,baseIsEqual,i)}var COMPARE_PARTIAL_FLAG$1=1,COMPARE_UNORDERED_FLAG$1=2;function baseIsMatch(e,t,n,r){var i=n.length,y=i;if(e==null)return!y;for(e=Object(e);i--;){var g=n[i];if(g[2]?g[1]!==e[g[0]]:!(g[0]in e))return!1}for(;++i<y;){g=n[i];var k=g[0],$=e[k],V=g[1];if(g[2]){if($===void 0&&!(k in e))return!1}else{var L=new Stack,re;if(!(re===void 0?baseIsEqual(V,$,COMPARE_PARTIAL_FLAG$1|COMPARE_UNORDERED_FLAG$1,r,L):re))return!1}}return!0}function isStrictComparable(e){return e===e&&!isObject$1(e)}function getMatchData(e){for(var t=keys(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,isStrictComparable(i)]}return t}function matchesStrictComparable(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}function baseMatches(e){var t=getMatchData(e);return t.length==1&&t[0][2]?matchesStrictComparable(t[0][0],t[0][1]):function(n){return n===e||baseIsMatch(n,e,t)}}function baseHasIn(e,t){return e!=null&&t in Object(e)}function hasPath(e,t,n){t=castPath(t,e);for(var r=-1,i=t.length,y=!1;++r<i;){var g=toKey(t[r]);if(!(y=e!=null&&n(e,g)))break;e=e[g]}return y||++r!=i?y:(i=e==null?0:e.length,!!i&&isLength(i)&&isIndex(g,i)&&(isArray(e)||isArguments(e)))}function hasIn(e,t){return e!=null&&hasPath(e,t,baseHasIn)}var COMPARE_PARTIAL_FLAG=1,COMPARE_UNORDERED_FLAG=2;function baseMatchesProperty(e,t){return isKey(e)&&isStrictComparable(t)?matchesStrictComparable(toKey(e),t):function(n){var r=get(n,e);return r===void 0&&r===t?hasIn(n,e):baseIsEqual(t,r,COMPARE_PARTIAL_FLAG|COMPARE_UNORDERED_FLAG)}}function baseProperty(e){return function(t){return t?.[e]}}function basePropertyDeep(e){return function(t){return baseGet(t,e)}}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}function baseIteratee(e){return typeof e=="function"?e:e==null?identity:typeof e=="object"?isArray(e)?baseMatchesProperty(e[0],e[1]):baseMatches(e):property(e)}function createBaseFor(e){return function(t,n,r){for(var i=-1,y=Object(t),g=r(t),k=g.length;k--;){var $=g[++i];if(n(y[$],$,y)===!1)break}return t}}var baseFor=createBaseFor();function baseForOwn(e,t){return e&&baseFor(e,t,keys)}function createBaseEach(e,t){return function(n,r){if(n==null)return n;if(!isArrayLike(n))return e(n,r);for(var i=n.length,y=-1,g=Object(n);++y<i&&r(g[y],y,g)!==!1;);return n}}var baseEach=createBaseEach(baseForOwn),now=function(){return root.Date.now()},FUNC_ERROR_TEXT="Expected a function",nativeMax=Math.max,nativeMin=Math.min;function debounce$2(e,t,n){var r,i,y,g,k,$,V=0,L=!1,re=!1,ie=!0;if(typeof e!="function")throw new TypeError(FUNC_ERROR_TEXT);t=toNumber(t)||0,isObject$1(n)&&(L=!!n.leading,re="maxWait"in n,y=re?nativeMax(toNumber(n.maxWait)||0,t):y,ie="trailing"in n?!!n.trailing:ie);function oe(de){var _e=r,xe=i;return r=i=void 0,V=de,g=e.apply(xe,_e),g}function z(de){return V=de,k=setTimeout(Ce,t),L?oe(de):g}function j(de){var _e=de-$,xe=de-V,ze=t-_e;return re?nativeMin(ze,y-xe):ze}function le(de){var _e=de-$,xe=de-V;return $===void 0||_e>=t||_e<0||re&&xe>=y}function Ce(){var de=now();if(le(de))return he(de);k=setTimeout(Ce,j(de))}function he(de){return k=void 0,ie&&r?oe(de):(r=i=void 0,g)}function pe(){k!==void 0&&clearTimeout(k),V=0,r=$=i=k=void 0}function ae(){return k===void 0?g:he(now())}function ue(){var de=now(),_e=le(de);if(r=arguments,i=this,$=de,_e){if(k===void 0)return z($);if(re)return clearTimeout(k),k=setTimeout(Ce,t),oe($)}return k===void 0&&(k=setTimeout(Ce,t)),g}return ue.cancel=pe,ue.flush=ae,ue}function assignMergeValue(e,t,n){(n!==void 0&&!eq(e[t],n)||n===void 0&&!(t in e))&&baseAssignValue(e,t,n)}function isArrayLikeObject(e){return isObjectLike(e)&&isArrayLike(e)}function safeGet(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function toPlainObject(e){return copyObject(e,keysIn(e))}function baseMergeDeep(e,t,n,r,i,y,g){var k=safeGet(e,n),$=safeGet(t,n),V=g.get($);if(V){assignMergeValue(e,n,V);return}var L=y?y(k,$,n+"",e,t,g):void 0,re=L===void 0;if(re){var ie=isArray($),oe=!ie&&isBuffer($),z=!ie&&!oe&&isTypedArray($);L=$,ie||oe||z?isArray(k)?L=k:isArrayLikeObject(k)?L=copyArray(k):oe?(re=!1,L=cloneBuffer($,!0)):z?(re=!1,L=cloneTypedArray($,!0)):L=[]:isPlainObject($)||isArguments($)?(L=k,isArguments(k)?L=toPlainObject(k):(!isObject$1(k)||isFunction(k))&&(L=initCloneObject($))):re=!1}re&&(g.set($,L),i(L,$,r,y,g),g.delete($)),assignMergeValue(e,n,L)}function baseMerge(e,t,n,r,i){e!==t&&baseFor(t,function(y,g){if(i||(i=new Stack),isObject$1(y))baseMergeDeep(e,t,g,n,baseMerge,r,i);else{var k=r?r(safeGet(e,g),y,g+"",e,t,i):void 0;k===void 0&&(k=y),assignMergeValue(e,g,k)}},keysIn)}function last(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function findLastIndex(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var i=r-1;return baseFindIndex(e,baseIteratee(t),i,!0)}function baseMap(e,t){var n=-1,r=isArrayLike(e)?Array(e.length):[];return baseEach(e,function(i,y,g){r[++n]=t(i,y,g)}),r}function map(e,t){var n=isArray(e)?arrayMap:baseMap;return n(e,baseIteratee(t))}function flatMap(e,t){return baseFlatten(map(e,t))}function fromPairs(e){for(var t=-1,n=e==null?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r}function parent(e,t){return t.length<2?e:baseGet(e,baseSlice(t,0,-1))}function isEqual(e,t){return baseIsEqual(e,t)}function isNil(e){return e==null}function isNull(e){return e===null}function isUndefined$1(e){return e===void 0}var merge=createAssigner(function(e,t,n){baseMerge(e,t,n)}),objectProto=Object.prototype,hasOwnProperty$1=objectProto.hasOwnProperty;function baseUnset(e,t){t=castPath(t,e);var n=-1,r=t.length;if(!r)return!0;for(var i=e==null||typeof e!="object"&&typeof e!="function";++n<r;){var y=t[n];if(typeof y=="string"){if(y==="__proto__"&&!hasOwnProperty$1.call(e,"__proto__"))return!1;if(y==="constructor"&&n+1<r&&typeof t[n+1]=="string"&&t[n+1]==="prototype"){if(i&&n===0)continue;return!1}}}var g=parent(e,t);return g==null||delete g[toKey(last(t))]}function customOmitClone(e){return isPlainObject(e)?void 0:e}var CLONE_DEEP_FLAG=1,CLONE_FLAT_FLAG=2,CLONE_SYMBOLS_FLAG=4,omit=flatRest(function(e,t){var n={};if(e==null)return n;var r=!1;t=arrayMap(t,function(y){return y=castPath(y,e),r||(r=y.length>1),y}),copyObject(e,getAllKeysIn(e),n),r&&(n=baseClone(n,CLONE_DEEP_FLAG|CLONE_FLAT_FLAG|CLONE_SYMBOLS_FLAG,customOmitClone));for(var i=t.length;i--;)baseUnset(n,t[i]);return n});function baseSet(e,t,n,r){if(!isObject$1(e))return e;t=castPath(t,e);for(var i=-1,y=t.length,g=y-1,k=e;k!=null&&++i<y;){var $=toKey(t[i]),V=n;if($==="__proto__"||$==="constructor"||$==="prototype")return e;if(i!=g){var L=k[$];V=void 0,V===void 0&&(V=isObject$1(L)?L:isIndex(t[i+1])?[]:{})}assignValue(k,$,V),k=k[$]}return e}function basePickBy(e,t,n){for(var r=-1,i=t.length,y={};++r<i;){var g=t[r],k=baseGet(e,g);n(k,g)&&baseSet(y,castPath(g,e),k)}return y}function basePick(e,t){return basePickBy(e,t,function(n,r){return hasIn(e,r)})}var pick=flatRest(function(e,t){return e==null?{}:basePick(e,t)});function set(e,t,n){return e==null?e:baseSet(e,t,n)}var INFINITY=1/0,createSet=Set$1&&1/setToArray(new Set$1([,-0]))[1]==INFINITY?function(e){return new Set$1(e)}:noop$1,LARGE_ARRAY_SIZE=200;function baseUniq(e,t,n){var r=-1,i=arrayIncludes,y=e.length,g=!0,k=[],$=k;if(y>=LARGE_ARRAY_SIZE){var V=createSet(e);if(V)return setToArray(V);g=!1,i=cacheHas,$=new SetCache}else $=k;e:for(;++r<y;){var L=e[r],re=L;if(L=L!==0?L:0,g&&re===re){for(var ie=$.length;ie--;)if($[ie]===re)continue e;k.push(L)}else i($,re,n)||($!==k&&$.push(re),k.push(L))}return k}var union=baseRest(function(e){return baseUniq(baseFlatten(e,1,isArrayLikeObject,!0))});const isUndefined=e=>e===void 0,isBoolean=e=>typeof e=="boolean",isNumber=e=>typeof e=="number",isEmpty=e=>!e&&e!==0||isArray$1(e)&&e.length===0||isObject$2(e)&&!Object.keys(e).length,isElement$2=e=>typeof Element>"u"?!1:e instanceof Element,isPropAbsent=e=>isNil(e),isStringNumber=e=>isString(e)?!Number.isNaN(Number(e)):!1;function computedEager(e,t){var n;const r=vue.shallowRef();return vue.watchEffect(()=>{r.value=e()},{...t,flush:(n=void 0)!=null?n:"sync"}),vue.readonly(r)}function tryOnScopeDispose(e){return vue.getCurrentScope()?(vue.onScopeDispose(e),!0):!1}function toValue(e){return typeof e=="function"?e():vue.unref(e)}const isClient=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const isDef=e=>typeof e<"u",notNullish=e=>e!=null,toString=Object.prototype.toString,isObject=e=>toString.call(e)==="[object Object]",noop=()=>{},isIOS=getIsIOS();function getIsIOS(){var e,t;return isClient&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function createFilterWrapper(e,t){function n(...r){return new Promise((i,y)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(i).catch(y)})}return n}function debounceFilter(e,t={}){let n,r,i=noop;const y=k=>{clearTimeout(k),i(),i=noop};return k=>{const $=toValue(e),V=toValue(t.maxWait);return n&&y(n),$<=0||V!==void 0&&V<=0?(r&&(y(r),r=null),Promise.resolve(k())):new Promise((L,re)=>{i=t.rejectOnCancel?re:L,V&&!r&&(r=setTimeout(()=>{n&&y(n),r=null,L(k())},V)),n=setTimeout(()=>{r&&y(r),r=null,L(k())},$)})}}function useDebounceFn(e,t=200,n={}){return createFilterWrapper(debounceFilter(t,n),e)}function unrefElement(e){var t;const n=toValue(e);return(t=n?.$el)!=null?t:n}const defaultWindow=isClient?window:void 0;function useEventListener(...e){let t,n,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,i]=e,t=defaultWindow):[t,n,r,i]=e,!t)return noop;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const y=[],g=()=>{y.forEach(L=>L()),y.length=0},k=(L,re,ie,oe)=>(L.addEventListener(re,ie,oe),()=>L.removeEventListener(re,ie,oe)),$=vue.watch(()=>[unrefElement(t),toValue(i)],([L,re])=>{if(g(),!L)return;const ie=isObject(re)?{...re}:re;y.push(...n.flatMap(oe=>r.map(z=>k(L,oe,z,ie))))},{immediate:!0,flush:"post"}),V=()=>{$(),g()};return tryOnScopeDispose(V),V}let _iOSWorkaround=!1;function onClickOutside(e,t,n={}){const{window:r=defaultWindow,ignore:i=[],capture:y=!0,detectIframe:g=!1}=n;if(!r)return noop;isIOS&&!_iOSWorkaround&&(_iOSWorkaround=!0,Array.from(r.document.body.children).forEach(ie=>ie.addEventListener("click",noop)),r.document.documentElement.addEventListener("click",noop));let k=!0;const $=ie=>i.some(oe=>{if(typeof oe=="string")return Array.from(r.document.querySelectorAll(oe)).some(z=>z===ie.target||ie.composedPath().includes(z));{const z=unrefElement(oe);return z&&(ie.target===z||ie.composedPath().includes(z))}}),L=[useEventListener(r,"click",ie=>{const oe=unrefElement(e);if(!(!oe||oe===ie.target||ie.composedPath().includes(oe))){if(ie.detail===0&&(k=!$(ie)),!k){k=!0;return}t(ie)}},{passive:!0,capture:y}),useEventListener(r,"pointerdown",ie=>{const oe=unrefElement(e);k=!$(ie)&&!!(oe&&!ie.composedPath().includes(oe))},{passive:!0}),g&&useEventListener(r,"blur",ie=>{setTimeout(()=>{var oe;const z=unrefElement(e);((oe=r.document.activeElement)==null?void 0:oe.tagName)==="IFRAME"&&!z?.contains(r.document.activeElement)&&t(ie)},0)})].filter(Boolean);return()=>L.forEach(ie=>ie())}function useMounted(){const e=vue.ref(!1),t=vue.getCurrentInstance();return t&&vue.onMounted(()=>{e.value=!0},t),e}function useSupported(e){const t=useMounted();return vue.computed(()=>(t.value,!!e()))}function useMutationObserver(e,t,n={}){const{window:r=defaultWindow,...i}=n;let y;const g=useSupported(()=>r&&"MutationObserver"in r),k=()=>{y&&(y.disconnect(),y=void 0)},$=vue.computed(()=>{const ie=toValue(e),oe=(Array.isArray(ie)?ie:[ie]).map(unrefElement).filter(notNullish);return new Set(oe)}),V=vue.watch(()=>$.value,ie=>{k(),g.value&&ie.size&&(y=new MutationObserver(t),ie.forEach(oe=>y.observe(oe,i)))},{immediate:!0,flush:"post"}),L=()=>y?.takeRecords(),re=()=>{k(),V()};return tryOnScopeDispose(re),{isSupported:g,stop:re,takeRecords:L}}function cloneFnJSON(e){return JSON.parse(JSON.stringify(e))}function useResizeObserver(e,t,n={}){const{window:r=defaultWindow,...i}=n;let y;const g=useSupported(()=>r&&"ResizeObserver"in r),k=()=>{y&&(y.disconnect(),y=void 0)},$=vue.computed(()=>Array.isArray(e)?e.map(re=>unrefElement(re)):[unrefElement(e)]),V=vue.watch($,re=>{if(k(),g.value&&r){y=new ResizeObserver(t);for(const ie of re)ie&&y.observe(ie,i)}},{immediate:!0,flush:"post"}),L=()=>{k(),V()};return tryOnScopeDispose(L),{isSupported:g,stop:L}}function useVModel(e,t,n,r={}){var i,y,g;const{clone:k=!1,passive:$=!1,eventName:V,deep:L=!1,defaultValue:re,shouldEmit:ie}=r,oe=vue.getCurrentInstance(),z=oe?.emit||((i=oe?.$emit)==null?void 0:i.bind(oe))||((g=(y=oe?.proxy)==null?void 0:y.$emit)==null?void 0:g.bind(oe?.proxy));let j=V;j=j||`update:${t.toString()}`;const le=pe=>k?typeof k=="function"?k(pe):cloneFnJSON(pe):pe,Ce=()=>isDef(e[t])?le(e[t]):re,he=pe=>{ie?ie(pe)&&z(j,pe):z(j,pe)};if($){const pe=Ce(),ae=vue.ref(pe);let ue=!1;return vue.watch(()=>e[t],de=>{ue||(ue=!0,ae.value=le(de),vue.nextTick(()=>ue=!1))}),vue.watch(ae,de=>{!ue&&(de!==e[t]||L)&&he(de)},{deep:L}),ae}else return vue.computed({get(){return Ce()},set(pe){he(pe)}})}class ElementPlusError extends Error{constructor(t){super(t),this.name="ElementPlusError"}}function throwError(e,t){throw new ElementPlusError(`[${e}] ${t}`)}function debugWarn(e,t){if(process.env.NODE_ENV!=="production"){const n=isString(e)?new ElementPlusError(`[${e}] ${t}`):e;console.warn(n)}}const initial={current:0},zIndex=vue.ref(0),defaultInitialZIndex=2e3,ZINDEX_INJECTION_KEY=Symbol("elZIndexContextKey"),zIndexContextKey=Symbol("zIndexContextKey"),useZIndex=e=>{const t=vue.getCurrentInstance()?vue.inject(ZINDEX_INJECTION_KEY,initial):initial,n=vue.getCurrentInstance()?vue.inject(zIndexContextKey,void 0):void 0,r=vue.computed(()=>{const g=vue.unref(n);return isNumber(g)?g:defaultInitialZIndex}),i=vue.computed(()=>r.value+zIndex.value),y=()=>(t.current++,zIndex.value=t.current,i.value);return!isClient&&!vue.inject(ZINDEX_INJECTION_KEY)&&debugWarn("ZIndexInjection",`Looks like you are using server rendering, you must provide a z-index provider to ensure the hydration process to be succeed
|
|
30
|
+
`;let Dnd$1=class Po extends x6.View{get targetScroller(){const{target:t}=this.options;return t.getPlugin("scroller")}get targetGraph(){return this.options.target}get targetModel(){return this.targetGraph.model}get snapline(){const{target:t}=this.options;return t.getPlugin("snapline")}constructor(t){super(),this.name="dnd",this.options=Object.assign(Object.assign({},Po.defaults),t),this.init()}init(){x6.CssLoader.ensure(this.name,content),this.container=document.createElement("div"),x6.Dom.addClass(this.container,this.prefixClassName("widget-dnd")),this.draggingGraph=new x6.Graph(Object.assign(Object.assign({},this.options.delegateGraphOptions),{container:document.createElement("div"),width:1,height:1,async:!1})),x6.Dom.append(this.container,this.draggingGraph.container)}start(t,n){const r=n;r.preventDefault(),this.targetModel.startBatch("dnd"),x6.Dom.addClass(this.container,"dragging"),x6.Dom.appendTo(this.container,this.options.draggingContainer||document.body),this.sourceNode=t,this.prepareDragging(t,r.clientX,r.clientY);const i=this.updateNodePosition(r.clientX,r.clientY);this.isSnaplineEnabled()&&(this.snapline.captureCursorOffset({e:r,node:t,cell:t,view:this.draggingView,x:i.x,y:i.y}),this.draggingNode.on("change:position",this.snap,this)),this.delegateDocumentEvents(Po.documentEvents,r.data)}isSnaplineEnabled(){return this.snapline&&this.snapline.isEnabled()}prepareDragging(t,n,r){const{draggingGraph:i}=this,y=i.model,g=this.options.getDragNode(t,{sourceNode:t,draggingGraph:i,targetGraph:this.targetGraph});g.position(0,0);let k=5;if(this.isSnaplineEnabled()&&(k+=this.snapline.options.tolerance||0),this.isSnaplineEnabled()||this.options.scaled){const L=this.targetGraph.transform.getScale();i.scale(L.sx,L.sy),k*=Math.max(L.sx,L.sy)}else i.scale(1,1);this.clearDragging(),y.resetCells([g]);const $=i.findViewByCell(g);$.undelegateEvents(),$.cell.off("changed"),i.fitToContent({padding:k,allowNewOrigin:"any",useCellGeometry:!1});const V=$.getBBox();this.geometryBBox=$.getBBox({useCellGeometry:!0}),this.delta=this.geometryBBox.getTopLeft().diff(V.getTopLeft()),this.draggingNode=g,this.draggingView=$,this.draggingBBox=g.getBBox(),this.padding=k,this.originOffset=this.updateGraphPosition(n,r)}updateGraphPosition(t,n){const r=document.body.scrollTop||document.documentElement.scrollTop,{delta:i}=this,y=this.geometryBBox,g=this.padding||5,k={left:t-i.x-y.width/2-g,top:n-i.y-y.height/2-g+r};return this.draggingGraph&&x6.Dom.css(this.container,{left:`${k.left}px`,top:`${k.top}px`}),k}updateNodePosition(t,n){const r=this.targetGraph.clientToLocal(t,n),i=this.draggingBBox;return r.x-=i.width/2,r.y-=i.height/2,this.draggingNode.position(r.x,r.y),r}snap({cell:t,current:n,options:r}){const i=t;if(r.snapped){const y=this.draggingBBox;i.position(y.x+r.tx,y.y+r.ty,{silent:!0}),this.draggingView.translate(),i.position(n.x,n.y,{silent:!0}),this.snapOffset={x:r.tx,y:r.ty}}else this.snapOffset=null}onDragging(t){const{draggingView:n}=this;if(n){t.preventDefault();const r=this.normalizeEvent(t),{clientX:i}=r,{clientY:y}=r;this.updateGraphPosition(i,y);const g=this.updateNodePosition(i,y),k=this.targetGraph.options.embedding.enabled,$=(k||this.isSnaplineEnabled())&&this.isInsideValidArea({x:i,y});if(k){n.setEventData(r,{graph:this.targetGraph,candidateEmbedView:this.candidateEmbedView});const V=n.getEventData(r);$?n.processEmbedding(r,V):n.clearEmbedding(V),this.candidateEmbedView=V.candidateEmbedView}this.options.nodeDragging?.(t,this.sourceNode),this.isSnaplineEnabled()&&($?this.snapline.snapOnMoving({e:r,view:n,x:g.x,y:g.y}):this.snapline.hide())}}onDragEnd(t){const{draggingNode:n}=this;if(n){const r=this.normalizeEvent(t),{draggingView:i}=this,{draggingBBox:y}=this,{snapOffset:g}=this;let{x:k}=y,{y:$}=y;g&&(k+=g.x,$+=g.y),n.position(k,$,{silent:!0});const V=this.drop(n,{x:r.clientX,y:r.clientY}),L=re=>{re?(this.onDropped(n),this.targetGraph.options.embedding.enabled&&i&&(i.setEventData(r,{cell:re,graph:this.targetGraph,candidateEmbedView:this.candidateEmbedView}),i.finalizeEmbedding(r,i.getEventData(r)))):this.onDropInvalid(),this.candidateEmbedView=null,this.targetModel.stopBatch("dnd")};this.options.nodeDragEnd?.(t,this.sourceNode),x6.FunctionExt.isAsync(V)?(this.undelegateDocumentEvents(),V.then(L)):L(V)}}clearDragging(){this.draggingNode&&(this.sourceNode=null,this.draggingNode.remove(),this.draggingNode=null,this.draggingView=null,this.delta=null,this.padding=null,this.snapOffset=null,this.originOffset=null,this.undelegateDocumentEvents())}onDropped(t){this.draggingNode===t&&(this.clearDragging(),x6.Dom.removeClass(this.container,"dragging"),x6.Dom.remove(this.container))}onDropInvalid(){const{draggingNode:t}=this;t&&this.onDropped(t)}isInsideValidArea(t){let n,r=null;const{targetGraph:i}=this,{targetScroller:y}=this;this.options.dndContainer&&(r=this.getDropArea(this.options.dndContainer));const g=r&&r.containsPoint(t);if(y)if(y.options.autoResize)n=this.getDropArea(y.container);else{const k=this.getDropArea(y.container);n=this.getDropArea(i.container).intersectsWithRect(k)}else n=this.getDropArea(i.container);return!g&&n&&n.containsPoint(t)}getDropArea(t){const n=x6.Dom.offset(t),r=document.body.scrollTop||document.documentElement.scrollTop,i=document.body.scrollLeft||document.documentElement.scrollLeft;return x6.Rectangle.create({x:n.left+parseInt(x6.Dom.css(t,"border-left-width"),10)-i,y:n.top+parseInt(x6.Dom.css(t,"border-top-width"),10)-r,width:t.clientWidth,height:t.clientHeight})}drop(t,n){if(this.isInsideValidArea(n)){const{targetGraph:r}=this,i=r.model,y=r.clientToLocal(n),{sourceNode:g}=this,k=this.options.getDropNode(t,{sourceNode:g,draggingNode:t,targetGraph:this.targetGraph,draggingGraph:this.draggingGraph}),$=k.getBBox();y.x+=$.x-$.width/2,y.y+=$.y-$.height/2;const V=this.snapOffset?1:r.getGridSize();k.position(x6.GeometryUtil.snapToGrid(y.x,V),x6.GeometryUtil.snapToGrid(y.y,V)),k.removeZIndex();const{validateNode:L}=this.options,re=L?L(k,{sourceNode:g,draggingNode:t,droppingNode:k,targetGraph:r,draggingGraph:this.draggingGraph}):!0;return typeof re=="boolean"?re?(i.addCell(k,{stencil:this.cid}),k):null:x6.FunctionExt.toDeferredBoolean(re).then(ie=>ie?(i.addCell(k,{stencil:this.cid}),k):null)}return null}onRemove(){this.draggingGraph&&(this.draggingGraph.view.remove(),this.draggingGraph.dispose())}dispose(){this.remove(),x6.CssLoader.clean(this.name)}};(function(e){e.defaults={getDragNode:t=>t.clone(),getDropNode:t=>t.clone()},e.documentEvents={mousemove:"onDragging",touchmove:"onDragging",mouseup:"onDragEnd",touchend:"onDragEnd",touchcancel:"onDragEnd"}})(Dnd$1||(Dnd$1={}));const _hoisted_1$1z=["data-type"],_sfc_main$21=vue.defineComponent({__name:"index",props:{instance:{}},emits:["dragging","dragEnd"],setup(e,{emit:t}){const n=[{id:"startpoint",icon:"startpoint-zh",name:"开始节点"},{id:"endpoint",icon:"endpoint-zh",name:"结束节点"},{id:"tasknode",icon:"tasknode",name:"任务节点"},{id:"branchgateway",icon:"branchgateway",name:"分支网关"},{id:"parallelgateway",icon:"parallelgateway",name:"并行网关"},{id:"conditionalparallelgateway",icon:"conditionalparallelgateway",name:"条件并行网关"},{id:"convergegateway",icon:"convergegateway",name:"汇聚节点"}],r=e,i=t,y=vue.shallowRef(),g=vue.shallowRef(),k=vue.ref(),$=vue.ref();vue.onMounted(()=>{y.value=new Dnd$1({target:r.instance,scaled:!1,dndContainer:$.value,nodeDragging:(le,Ce)=>V(le,Ce),nodeDragEnd:(le,Ce)=>L(le,Ce),getDragNode:le=>le.clone({keepId:!0}),getDropNode:le=>le.clone({keepId:!0})}),r.instance.on("node:added",({node:le})=>{const Ce=le.shape==="custom-group-node"?1:2;le.setZIndex(Ce)}),k.value.addEventListener("mousedown",re)});const V=(le,Ce)=>{i("dragging",{e:le,node:Ce})},L=(le,Ce)=>{i("dragEnd",{e:le,node:Ce})},re=le=>{(parentClsContains("node-item",le.target)||parentClsContains("entry-item",le.target))&&(g.value=le,document.addEventListener("mousemove",ie),document.addEventListener("mouseup",oe))},ie=le=>{if(!g.value)return;const{pageX:Ce,pageY:he}=g.value;Math.max(le.pageX-Ce,le.pageY-he)>3&&(z(g.value),document.removeEventListener("mousemove",ie))},oe=()=>{g.value=null,document.removeEventListener("mouseup",oe)},z=le=>{const Ce=j(le.target),he=Ce.type==="tasknode",pe=r.instance.createNode({id:`node${uuid()}`,shape:"custom-node",width:he?154:34,height:he?54:34,data:Ce,zIndex:5});y.value.start(pe,le)},j=le=>{const Ce=le.getAttribute("data-type");return Ce?{type:Ce}:{}};return(le,Ce)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"dndPanel",ref:k,class:"dnd-panel"},[vue.createElementVNode("ul",{ref_key:"containerRef",ref:$,class:"nodes-wrapper"},[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(n,he=>vue.createElementVNode("li",{key:he.id,class:vue.normalizeClass(["node-item",`bkflow-canvas-icon bkflow-canvas-node-${he.icon}`,{disabled:["startpoint","endpoint"].includes(he.id)}]),"data-type":he.id},null,10,_hoisted_1$1z)),64))],512)],512))}}),Dnd=_export_sfc$1(_sfc_main$21,[["__scopeId","data-v-61aa5064"]]),_sfc_main$20={name:"Start",props:{node:{type:Object,default:()=>({})}},data(){return{}}};function _sfc_render$f(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item circle-node",{ready:n.node.ready}])}," 开始 ",2)}const Start=_export_sfc$1(_sfc_main$20,[["render",_sfc_render$f]]),_sfc_main$1$={name:"End",props:{node:{type:Object,default:()=>({})}},data(){return{}}};function _sfc_render$e(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item circle-node",{ready:n.node.ready}])}," 结束 ",2)}const End=_export_sfc$1(_sfc_main$1$,[["render",_sfc_render$e]]),SYSTEM_GROUP_ICON=["CMDB","JOB","BK","Nodeman","Monitor","GCLOUD","TCM","WechatWork"],BK_PLUGIN_ICON={bk_http_request:"bkflow-canvas-icon bkflow-canvas-bk-plugin-http",bk_notify:"bkflow-canvas-icon bkflow-canvas-bk-plugin-notify",sleep_timer:"bkflow-canvas-icon bkflow-canvas-bk-plugin-timer",pause_node:"bkflow-canvas-icon bkflow-canvas-bk-plugin-pause"},_sfc_main$1_={name:"Task",props:{node:{type:Object,default:()=>({})}},data(){return{phaseStr:{1:"当前插件即将停止维护,请更新插件版本",2:"当前插件已停止维护,请更新插件版本"}}},computed:{isEmptyNode(){return!this.node.component||!this.node.component.code}},methods:{getIconCls(e){const{code:t,group:n}=e;if(BK_PLUGIN_ICON[t])return BK_PLUGIN_ICON[t];if(t==="remote_plugin")return"bkflow-canvas-icon bkflow-canvas-sys-third-party";const r=SYSTEM_GROUP_ICON.find(i=>new RegExp(i).test(n));return r?`bkflow-canvas-icon bkflow-canvas-sys-${r.toLowerCase()}`:"bkflow-canvas-icon bkflow-canvas-sys-default"}}},_hoisted_1$1y={class:"node-status-block"},_hoisted_2$12=["src"],_hoisted_3$H={key:2,class:"stage-name"},_hoisted_4$v={class:"node-name"},_hoisted_5$p={class:"name-text"};function _sfc_render$d(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item task-node",{"empty-node":y.isEmptyNode}])},[vue.createElementVNode("div",_hoisted_1$1y,[n.node.icon?(vue.openBlock(),vue.createElementBlock("img",{key:0,class:"node-icon",src:n.node.icon},null,8,_hoisted_2$12)):(vue.openBlock(),vue.createElementBlock("i",{key:1,class:vue.normalizeClass(["node-icon-font",y.getIconCls(n.node)])},null,2)),n.node.stage_name?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$H,vue.toDisplayString(n.node.stage_name),1)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$v,[vue.createElementVNode("div",_hoisted_5$p,vue.toDisplayString(y.isEmptyNode?"- 节点未配置 -":n.node.name),1)])],2)}const Task=_export_sfc$1(_sfc_main$1_,[["render",_sfc_render$d],["__scopeId","data-v-53ab1e5c"]]),_sfc_main$1Z={name:"BranchGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$c(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{"fail-skip":n.node.status==="FINISHED"&&n.node.skip},{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-branchgateway"},null,-1)])],2)}const BranchGateway=_export_sfc$1(_sfc_main$1Z,[["render",_sfc_render$c]]),_sfc_main$1Y={name:"ParallelGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$b(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-parallelgateway"},null,-1)])],2)}const ParallelGateway=_export_sfc$1(_sfc_main$1Y,[["render",_sfc_render$b]]),_sfc_main$1X={name:"ConditionalParallelGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$a(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{"fail-skip":n.node.status==="FINISHED"&&n.node.skip},{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-conditionalparallelgateway"},null,-1)])],2)}const ConditionalParallelGateway=_export_sfc$1(_sfc_main$1X,[["render",_sfc_render$a]]),_sfc_main$1W={name:"ConvergeGateway",props:{node:{type:Object,default:()=>({})}}};function _sfc_render$9(e,t,n,r,i,y){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["node-item gateway-node",{ready:n.node.ready}])},[...t[0]||(t[0]=[vue.createElementVNode("div",{class:"bpmn-flow-icon bkflow-canvas-icon bkflow-canvas-node-convergegateway"},null,-1)])],2)}const ConvergeGateway=_export_sfc$1(_sfc_main$1W,[["render",_sfc_render$9]]),_hoisted_1$1x={class:"node-config-flags"},_hoisted_2$11={key:0,class:"error-handle-icon"},_hoisted_3$G={key:1,class:"error-handle-icon"},_hoisted_4$u={key:2,class:"error-handle-icon"},_hoisted_5$o={key:3,class:"error-handle-icon"},_hoisted_6$g={key:1,class:"mock-label"},_sfc_main$1V=vue.defineComponent({__name:"node-config-flags",props:{node:{},editable:{type:Boolean}},setup(e){const t=e;return(n,r)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1x,[t.editable?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[t.node.error_ignorable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$11,[...r[0]||(r[0]=[vue.createElementVNode("span",{class:"text"},"AS",-1)])])):vue.createCommentVNode("",!0),t.node.skippable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$G,[...r[1]||(r[1]=[vue.createElementVNode("span",{class:"text"},"MS",-1)])])):vue.createCommentVNode("",!0),t.node.retryable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_4$u,[...r[2]||(r[2]=[vue.createElementVNode("span",{class:"text"},"MR",-1)])])):vue.createCommentVNode("",!0),t.node.auto_retry?.enable?(vue.openBlock(),vue.createElementBlock("span",_hoisted_5$o,[...r[3]||(r[3]=[vue.createElementVNode("span",{class:"text"},"AR",-1)])])):vue.createCommentVNode("",!0)],64)):vue.createCommentVNode("",!0),t.node.create_method==="mock"?(vue.openBlock(),vue.createElementBlock("span",_hoisted_6$g,"MOCK")):vue.createCommentVNode("",!0)]))}}),NodeConfigFlags=_export_sfc$1(_sfc_main$1V,[["__scopeId","data-v-077f8bb9"]]),_hoisted_1$1w={class:"node-operate-actions"},_hoisted_2$10={key:0,class:"more-btn-list"},_hoisted_3$F=["onClick"],_hoisted_4$t={class:"action-name"},_sfc_main$1U=vue.defineComponent({__name:"index",emits:["delete","moreBtnClick"],setup(e,{emit:t}){const n=t,r=vue.ref(!1),i=vue.computed(()=>[{id:"copyNode",name:"复制节点",icon:"bkflow-canvas-bkflow-copy"},{id:"copyNodeAndInsert",name:"复制并插入",icon:"bkflow-canvas-bkflow-copy-insert"},{id:"detachEdges",name:"解除连线",icon:"bkflow-canvas-bkflow-disconnect"}]),y=()=>{r.value=!0},g=k=>{n("moreBtnClick",k)};return(k,$)=>{const V=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1w,[vue.withDirectives(vue.createElementVNode("i",{class:"delete-btn bkflow-canvas-icon bkflow-canvas-bkflow-delete",onClick:$[0]||($[0]=L=>n("delete"))},null,512),[[V,"删除节点"]]),vue.createElementVNode("i",{class:"more-btn bkflow-canvas-icon bkflow-canvas-more-fill",onClick:y}),r.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$10,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(i.value,L=>(vue.openBlock(),vue.createElementBlock("div",{class:"more-btn-item",key:L.id,onClick:re=>g(L.id)},[vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon",L.icon])},null,2),vue.createElementVNode("span",_hoisted_4$t,vue.toDisplayString(L.name),1)],8,_hoisted_3$F))),128))])):vue.createCommentVNode("",!0)])}}}),NodeOperateActions=_export_sfc$1(_sfc_main$1U,[["__scopeId","data-v-f433ab95"]]),logicImg="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20class='design-iconfont'%3e%3cpath%20d='M13,1%20C14.1045695,1%2015,1.8954305%2015,3%20L15,13%20C15,14.1045695%2014.1045695,15%2013,15%20L3,15%20C1.8954305,15%201,14.1045695%201,13%20L1,3%20C1,1.8954305%201.8954305,1%203,1%20L13,1%20Z%20M13,3.5%20L10,3.5%20L10,4.5%20L11.3962161,4.50116386%20C9.643609,6.49502964%208.38728573,7.5%207.76574712,7.5%20L2.98331185,7.5%20L2.98331185,8.5%20L7.76574712,8.5%20C8.38739048,8.5%209.64403252,9.50530916%2011.3971023,11.4998444%20L10,11.5%20L10,12.5%20L13,12.5%20L13,9.5%20L12,9.5%20L11.9990374,10.6691668%20C10.8673578,9.39340572%209.92128001,8.50479286%209.13199729,8.00043657%20C9.92138242,7.4953138%2010.8676033,6.60639761%2011.9994779,5.33034326%20L12,6.5%20L13,6.5%20L13,3.5%20Z'%20fill='%236EC3D5'%20fill-rule='evenodd'/%3e%3c/svg%3e",_hoisted_1$1v={class:"option-item"},_hoisted_2$$=["src"],_hoisted_3$E={class:"option-name"},_sfc_main$1T=vue.defineComponent({__name:"option-item",props:{option:{}},setup(e){const t=e;return(n,r)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1v,[vue.createElementVNode("img",{class:"option-img",src:t.option.iconUrl},null,8,_hoisted_2$$),vue.createElementVNode("div",_hoisted_3$E,vue.toDisplayString(t.option.name),1),t.option.type==="group"?(vue.openBlock(),vue.createBlock(vue.unref(icon.AngleRight),{key:0,class:"angle-icon"})):vue.createCommentVNode("",!0),t.option.type==="link"?(vue.openBlock(),vue.createBlock(vue.unref(icon.ArrowsRight),{key:1,class:"arrow-icon"})):vue.createCommentVNode("",!0)]))}}),OptionItem=_export_sfc$1(_sfc_main$1T,[["__scopeId","data-v-0470b67d"]]),_hoisted_1$1u={key:0},_sfc_main$1S=vue.defineComponent({__name:"index",props:{isSearch:{type:Boolean,default:!1},title:{}},emits:["clear"],setup(e,{emit:t}){const n=e,r=t,i=vue.computed(()=>n.isSearch?"搜索结果为空":n.title||"暂无数据");return(y,g)=>{const k=vue.resolveComponent("bk-exception");return vue.openBlock(),vue.createBlock(k,{scene:"part",type:n.isSearch?"search-empty":"empty",title:i.value},{default:vue.withCtx(()=>[n.isSearch?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1u,[g[1]||(g[1]=vue.createTextVNode(" 可以尝试 调整关键词 或 ",-1)),vue.createElementVNode("span",{class:"clear-button",onClick:g[0]||(g[0]=$=>r("clear"))},"清空筛选条件")])):vue.createCommentVNode("",!0)]),_:1},8,["type","title"])}}}),EmptyException=_export_sfc$1(_sfc_main$1S,[["__scopeId","data-v-01a0dc2e"]]),_hoisted_1$1t={class:"quick-edit-popover"},_hoisted_2$_={class:"search-input"},_hoisted_3$D={class:"plugin-option-list"},_hoisted_4$s={key:0,class:"nodes-list"},_hoisted_5$n=["onClick"],_hoisted_6$f={key:1,class:"data-plugin-list"},_hoisted_7$a=["onClick"],_hoisted_8$7={class:"data-plugin-name"},_hoisted_9$6={key:2,class:"agent-plugin-list"},_hoisted_10$5={class:"list-wrapper"},_hoisted_11$5=["onClick"],_hoisted_12$3={class:"agent-name"},_hoisted_13$3={class:"agent-en-name"},_hoisted_14$1={key:3,class:"agent-plugin-list"},_hoisted_15$1={class:"list-wrapper"},_hoisted_16$1=["onClick"],_hoisted_17={class:"agent-name"},_hoisted_18={key:4,class:"bkflow-tag-list"},_hoisted_19=["onClick"],_hoisted_20=["onClick"],_sfc_main$1R=vue.defineComponent({__name:"index",props:{pluginGroupList:{default:()=>[]}},emits:["addNode","addPlugin","openPluginSelect","deleteEdge","deleteNode","copyNode","copyNodeAndInsert","detachEdges"],setup(e,{emit:t}){const n=[{id:"branchgateway",name:"分支网关",icon:"bkflow-canvas-node-branchgateway-shortcut"},{id:"parallelgateway",name:"并行网关",icon:"bkflow-canvas-node-parallelgateway-shortcut"},{id:"conditionalparallelgateway",name:"条件并行网关",icon:"bkflow-canvas-node-conditionalparallelgateway-shortcut"},{id:"convergegateway",name:"汇聚网关",icon:"bkflow-canvas-node-convergegateway-shortcut"}],r={alert_plugin:"incident-gaojing",query_promql_metric_plugin:"incident-zhibiao",trace_plugin:"incident-trace",事件:"incident-shijian",log_plugin:"incident-rizhi",profling:"incident-profling",图谱:"incident-tupu"},i=vueRouter.useRouter(),y=vueRouter.useRoute(),g=e,k=t,$=vue.shallowRef([]),V=vue.ref(""),L=vue.shallowRef([...$.value||[]]),re=vue.computed(()=>(g.pluginGroupList.find(he=>he.name==="agent")?.children.length||0)>10);vue.watch(()=>g.pluginGroupList,he=>{const pe=[{id:"logic",name:"逻辑",iconUrl:logicImg,type:"group",width:88,children:n}];he.forEach(ae=>{pe.push({id:ae.name,name:ae.alias,iconUrl:ae.iconUrl,type:"group",width:ae.name==="data"?160:280,children:ae.children.map(ue=>{if(ae.name==="data"){const{id:de,name:_e,alias:xe}=ue;return{id:de,name:xe,icon:r[_e]}}else if(ae.name==="agent"){const{id:de,alias:_e,name:xe}=ue;return{id:de,name:_e,enName:xe}}else if(ae.name==="bkflow"){const{id:de,name:_e}=ue;return{id:de,name:_e}}return ue})})}),$.value=pe,L.value=[...$.value]},{immediate:!0});const ie=he=>{const pe=he.trim().toLowerCase();if(pe===""){L.value=[...$.value];return}const ae=[];$.value.forEach(ue=>{if(ue.name.toLowerCase().includes(pe))ae.push(ue);else if(ue.type==="group"){const de=[];ue.children?.forEach(_e=>{_e.name.toLowerCase().includes(pe)&&de.push(_e)}),de.length>0&&ae.push({...ue,children:de})}}),L.value=ae},oe=()=>{V.value="",L.value=[...$.value]},z=he=>{k("addNode",he)},j=(he,pe)=>{pe==="bkflow"?le("bkflow",he):k("addPlugin",he,pe)},le=(he,pe=0)=>{k("openPluginSelect",he,pe)},Ce=he=>{if(he==="agent"&&!re.value){const{href:pe}=i.resolve({name:"spaceResource",params:y.params});window.open(pe,"_blank")}else le(he)};return(he,pe)=>{const ae=vue.resolveComponent("bk-input"),ue=vue.resolveComponent("bk-button"),de=vue.resolveComponent("bk-popover"),_e=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1t,[vue.createElementVNode("div",_hoisted_2$_,[vue.createVNode(ae,{modelValue:V.value,"onUpdate:modelValue":pe[0]||(pe[0]=xe=>V.value=xe),placeholder:"搜索节点",type:"search",clearable:!0,onClear:oe,onInput:ie},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_3$D,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(L.value,xe=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:xe.id},[xe.type==="group"?(vue.openBlock(),vue.createBlock(de,{key:0,theme:"light",placement:"right-start","ext-cls":"plugin-child-popover",boundary:"parent",arrow:!1,width:xe.width,"popover-delay":[0,100]},{content:vue.withCtx(()=>[xe.id==="logic"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$s,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children,ze=>vue.withDirectives((vue.openBlock(),vue.createElementBlock("i",{class:vue.normalizeClass(["bkflow-canvas-icon",ze.icon]),key:ze.id,onClick:Ve=>z(ze.id)},null,10,_hoisted_5$n)),[[_e,{content:ze.name,placement:"top"}]])),128))])):xe.id==="data"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_6$f,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"data-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"data")},[vue.createElementVNode("i",{class:vue.normalizeClass(["bkflow-canvas-icon",ze.icon])},null,2),vue.createElementVNode("div",_hoisted_8$7,vue.toDisplayString(ze.name),1)],8,_hoisted_7$a))),128))])):xe.id==="agent"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_9$6,[vue.createElementVNode("div",_hoisted_10$5,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"agent-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"agent")},[vue.createElementVNode("span",_hoisted_12$3,vue.toDisplayString(ze.name),1),vue.createElementVNode("span",_hoisted_13$3,"("+vue.toDisplayString(ze.enName)+")",1)],8,_hoisted_11$5))),128))])])):xe.id==="model"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_14$1,[vue.createElementVNode("div",_hoisted_15$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"agent-plugin-item",key:ze.id,onClick:Ve=>j(ze.id,"model")},[vue.createElementVNode("span",_hoisted_17,vue.toDisplayString(ze.alias||ze.enName),1)],8,_hoisted_16$1))),128))])])):xe.id==="bkflow"?(vue.openBlock(),vue.createElementBlock("div",_hoisted_18,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(xe.children?.slice(0,10),ze=>(vue.openBlock(),vue.createElementBlock("div",{class:"bkflow-tag-item",key:ze.id,onClick:Ve=>j(ze.id,"bkflow")},vue.toDisplayString(ze.name),9,_hoisted_19))),128))])):vue.createCommentVNode("",!0),xe.children&&xe.children.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:5,class:"group-empty-exception",title:`暂无${xe.name}插件`},null,8,["title"])):vue.createCommentVNode("",!0),xe.id==="agent"||xe.children&&xe.children.length>10?(vue.openBlock(),vue.createElementBlock("div",{key:6,class:"list-footer",onClick:ze=>Ce(xe.id)},[vue.createVNode(ue,{theme:"primary",text:"",size:"small"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(xe.id==="agent"&&!re.value?"申请更多权限":"更多"),1)]),_:2},1024),pe[1]||(pe[1]=vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-arrow2"},null,-1))],8,_hoisted_20)):vue.createCommentVNode("",!0)]),default:vue.withCtx(()=>[vue.createVNode(OptionItem,{option:xe},null,8,["option"])]),_:2},1032,["width"])):(vue.openBlock(),vue.createBlock(OptionItem,{key:1,option:xe,onClick:ze=>le(xe.id)},null,8,["option","onClick"]))],64))),128)),L.value.length===0?(vue.openBlock(),vue.createBlock(EmptyException,{key:0,"is-search":V.value.length>0,onClear:oe},null,8,["is-search"])):vue.createCommentVNode("",!0)])])}}}),QuickAddNodePopover=_export_sfc$1(_sfc_main$1R,[["__scopeId","data-v-209f0d9a"]]),_hoisted_1$1s={class:"custom-node"},_hoisted_2$Z={key:0,class:"add-node-popover"},_sfc_main$1Q=vue.defineComponent({__name:"index",props:{editable:{type:Boolean},pluginGroupList:{default:()=>[]}},emits:["addNode","addPlugin","addNodeAndSelectPlugin","addBtnClick","deleteBtnClick","copyNodeClick","copyNodeAndInsertClick","detachEdgesClick"],setup(e,{emit:t}){const n={startpoint:Start,endpoint:End,tasknode:Task,branchgateway:BranchGateway,parallelgateway:ParallelGateway,conditionalparallelgateway:ConditionalParallelGateway,convergegateway:ConvergeGateway},r=vue.inject("getNode");if(!r)throw new Error("getNode is not defined");const i=e,y=t,g=vue.ref({id:"",type:"",name:""}),k=vue.ref(),$=vue.ref(!1),V=vue.computed(()=>{const le=r(),{type:Ce}=le.getData();return n[Ce]});vue.onMounted(()=>{const le=r();g.value=le.getData(),le.on("change:data",({current:Ce})=>{g.value=Ce})}),vue.onBeforeUnmount(()=>{k.value?.resetPopover()});const L=le=>{y("addNode",g.value.id,le),k.value.hide()},re=(le,Ce)=>{y("addPlugin",g.value.id,le,Ce),k.value.hide()},ie=(le,Ce=0)=>{y("addNodeAndSelectPlugin",g.value.id,le,Ce),k.value.hide()},oe=()=>{$.value=!0,y("addBtnClick",g.value.id)},z=()=>{y("deleteBtnClick",g.value.id)},j=le=>{le==="copyNode"?y("copyNodeClick",g.value.id):le==="copyNodeAndInsert"?y("copyNodeAndInsertClick",g.value.id):le==="detachEdges"&&y("detachEdgesClick",g.value.id)};return(le,Ce)=>{const he=vue.resolveComponent("bk-popover");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1s,[["task","tasknode"].includes(g.value.type)?(vue.openBlock(),vue.createBlock(NodeConfigFlags,{key:0,node:g.value,editable:i.editable},null,8,["node","editable"])):vue.createCommentVNode("",!0),(vue.openBlock(),vue.createBlock(he,{ref_key:"popoverRef",ref:k,"ext-cls":"custom-node-popover",placement:"bottom-end",theme:"light",disabled:!i.editable||g.value.type==="endpoint",content:g.value.name,key:g.value.id,arrow:!1,onAfterHidden:Ce[0]||(Ce[0]=pe=>$.value=!1)},{content:vue.withCtx(()=>[vue.createElementVNode("div",{class:vue.normalizeClass(["add-btn",g.value.type==="tasknode"?"type-task-node":""])},[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-add-fill",onClick:oe}),$.value?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$Z,[vue.createVNode(QuickAddNodePopover,{"plugin-group-list":i.pluginGroupList,onAddNode:L,onOpenPluginSelect:ie,onAddPlugin:re},null,8,["plugin-group-list"])])):vue.createCommentVNode("",!0)],2),vue.createVNode(NodeOperateActions,{onDelete:z,onMoreBtnClick:j})]),default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(V.value),{node:g.value,class:vue.normalizeClass(g.value.status?g.value.status.toLowerCase():"")},null,8,["node","class"]))]),_:1},8,["disabled","content"]))])}}}),CustomNode=_export_sfc$1(_sfc_main$1Q,[["__scopeId","data-v-2eb82156"]]),_sfc_main$1P=vue.defineComponent({__name:"canvas",props:{pipelineTree:{},editable:{type:Boolean},hideTool:{type:Boolean},defaultZoom:{default:1}},emits:["nodeMoving","nodeMoved","nodeClick","edgeClick","edgeLabelClick","edgeLabelUpdate","nodeDbClick","nodeMouseenter","nodeMouseleave","edgeMouseenter","edgeMouseleave","updatePipelineTree","addNode","deleteNode","copyNode","copyNodeAndInsert","detachEdges","deleteEdge"],setup(e,{expose:t,emit:n}){const r=vue.useSlots(),i=x6VueShape.getTeleport(),y=e,g=n,k=vue.shallowRef(null),$=vue.shallowRef(),V=vue.ref(lodash.cloneDeep(y.pipelineTree)),L=vue.ref(!1);vue.watch(()=>y.pipelineTree,()=>{V.value=lodash.cloneDeep(y.pipelineTree)}),vue.onMounted(()=>{re(),ie();const{x:Et,y:wn}=k.value.getContentArea();k.value.positionPoint({x:Et,y:wn},40,134),y.defaultZoom!==void 0&&k.value.zoomTo(y.defaultZoom)});const re=()=>{k.value=new x6.Graph({container:$.value,grid:{size:1,visible:!1},panning:!0,mousewheel:{enabled:!0,modifiers:["ctrl"]},scaling:{min:.25,max:1.5},virtual:!1,connecting:{allowBlank:!1,allowLoop:!1,allowNode:!1,allowEdge:!1,allowMulti:!1,highlight:!1,snap:{radius:15},router:{name:"manhattan",args:{padding:1}},connector:{name:"rounded",args:{radius:6}},connectionPoint:"anchor",createEdge(){return new x6.Shape.Edge({id:`line${uuid()}`,attrs:{line:{stroke:"#a9adb6",strokeWidth:2,targetMarker:{name:"block",width:6,height:8}}},data:{},zIndex:0})},validateEdge:z},interacting:{nodeMovable:y.editable,edgeLabelMovable:y.editable,arrowheadMovable:y.editable},highlighting:{magnetAvailable:{name:"stroke",args:{attrs:{fill:"#fff",stroke:"#31d0c6","stroke-width":1}}},magnetAdsorbed:{name:"stroke",args:{attrs:{fill:"#fff",stroke:"#3a84ff","stroke-width":2}}}},onEdgeLabelRendered:Et=>{const{label:wn}=Et.label,bn=Et.selectors.foContent;if(bn){const Tn=document.createElement("div");return Tn.classList.add("branch-condition"),wn.isDefault&&Tn.classList.add("default-branch"),Tn.innerText=wn.name,Tn.title=wn.name,Array.isArray(bn)?bn.length>0&&bn[0].appendChild(Tn):bn.appendChild(Tn),()=>{Array.isArray(bn)?bn.length>0&&bn[0].contains(Tn)&&bn[0].removeChild(Tn):bn.contains(Tn)&&bn.removeChild(Tn)}}}}),window.__x6_instances__=[k.value],k.value.use(new x6PluginSnapline.Snapline({enabled:!0,className:"custom-snap-line",tolerance:2})),k.value.use(new x6PluginClipboard.Clipboard({enabled:!0})),k.value.use(new x6PluginSelection.Selection({enabled:!1,multiple:!0,rubberband:!1,showNodeSelectionBox:!0,pointerEvents:"none"})),oe(),registryEvents(k.value,y.editable),k.value.on("node:moving",j),k.value.on("node:moved",Ce),k.value.on("node:click",lodash.debounce(pe,200)),k.value.on("node:dblclick",ae),k.value.on("node:mouseenter",ue),k.value.on("node:mouseleave",de),k.value.on("edge:click",lodash.debounce(_e,200)),k.value.on("edge:mouseenter",xe),k.value.on("edge:click",ze),k.value.on("edge:added",Ve),k.value.on("edge:change:labels",At),k.value.on("edge:mouseenter",({cell:Et})=>{y.editable&&Et.addTools([{name:"button-remove",args:{distance:.5,onClick:()=>{g("deleteEdge",Et)}}}])}),k.value.on("edge:mouseleave",({cell:Et})=>{Et.removeTools()})},ie=()=>{const Et=transLocationsToNodes(V.value.location,V.value.activities),wn=transLinesToEdges(V.value.line);k.value?.addNodes(Et),k.value?.addEdges(wn)},oe=()=>{x6VueShape.register({shape:"custom-node",ports:{...ports},component:r.customNode?vue.h("div",{style:{width:"100%",height:"100%"}},r.customNode()):vue.h(CustomNode,{editable:y.editable,onAddBtnClick:Et=>{g("addNode",Et)},onDeleteBtnClick:Et=>{g("deleteNode",Et)},onCopyNodeClick:Et=>{g("copyNode",Et)},onCopyNodeAndInsertClick:Et=>{g("copyNodeAndInsert",Et)},onDetachEdgesClick:Et=>{g("detachEdges",Et)}})})},z=({edge:Et})=>{const wn=V.value.line.filter(On=>On.id!==Et.id),bn=Et.source,Tn=Et.target,$n=bn.port.split("_")[1]||"",Sn=Tn.port?.split("_")[1]||"",kn={id:Et.id,source:{id:bn.cell,arrow:`${$n.charAt(0).toUpperCase()}${$n.slice(1)}`},target:{id:Tn.cell,arrow:`${Sn.charAt(0).toUpperCase()}${Sn.slice(1)}`}},Nn=validateEdge(kn,wn,V.value.location);if(Nn.valid){const On=Et.id in y.pipelineTree.flows;if(console.log(On),On){const Vn=V.value.line.find(Dn=>Dn.id===Et.id);$e(Vn,kn)}else Dt([kn]),Ve({cell:Et})}else BkMessage({message:Nn.message,theme:"warning"});return Nn.valid},j=({node:Et})=>{g("nodeMoving",Et)},le=({node:Et})=>{},Ce=({node:Et})=>{const wn=Et.position(),bn=[...V.value.location],Tn=bn.findIndex($n=>$n.id===Et.id);bn.splice(Tn,1,{...bn[Tn],x:wn.x,y:wn.y}),V.value={...V.value,location:bn},vn(),g("nodeMoved",Et)},he=({node:Et})=>{const wn=k.value?.getCellById(Et.id);if(wn){const bn=wn.getData().type,Tn=wn.position();bn==="tasknode"?Ie(Et.id,Tn):Ue(Et.id,bn,Tn)}},pe=({e:Et,node:wn})=>{Et.detail===1&&g("nodeClick",wn)},ae=({node:Et})=>{g("nodeDbClick",Et)},ue=({node:Et})=>{g("nodeMouseenter",Et)},de=({node:Et,e:wn})=>{g("nodeMouseleave",Et,wn)},_e=({e:Et,edge:wn})=>{if(parentClsContains("branch-condition",Et.target)){g("edgeLabelClick",wn);return}g("edgeClick",wn,Et)},xe=({edge:Et})=>{g("edgeMouseenter",Et)},ze=({edge:Et})=>{g("edgeMouseleave",Et)},Ve=({cell:Et})=>{vue.nextTick(()=>{const wn=Et.source?.cell||Et.source,Tn=Fe(wn)[Et.id];if(Tn){const $n=document.createElement("span");$n.innerText=Tn.name,$n.style.fontSize="12px",$n.style.padding="0 6px",document.body.appendChild($n);let{width:Sn=0}=$n.getBoundingClientRect();Sn>112?Sn=112:Sn<60&&(Sn=60),document.body.removeChild($n);const kn=Tn.loc||-Sn/2-20;Et.appendLabel({markup:x6.Markup.getForeignObjectMarkup(),attrs:{fo:{width:Sn,height:26,x:-Sn,y:-13}},label:{...Tn,lineId:Et.id,sourceId:wn},position:{distance:kn,offset:{x:Sn/2,y:0}}})}})},qe=Et=>{const bn=k.value.getEdges().find(Tn=>Tn.id===Et);bn&&(bn.removeLabelAt(0),Ve({cell:bn}))},At=({edge:Et,current:wn,previous:bn})=>{if(!bn||!bn.length||!wn.length)return;const Sn=k.value.findViewByCell(Et.id).container.querySelector(`.${Et.id}`).getTotalLength();wn.forEach(kn=>{const{width:Nn}=kn.attrs.fo;kn.position.offset={x:Nn/2,y:0};const On=(Nn/2+20)/Sn,Vn=1-On,Dn=Math.max(On,Math.min(Vn,kn.position.distance));kn.position.distance=Dn;const{sourceId:Rn,isDefault:Hn=!1}=kn.label;hn(Et.id,Rn,Hn,Dn)})},Fe=Et=>{const wn=V.value.gateways[Et];let bn={};if(wn){const{conditions:Tn,default_condition:$n}=wn;Tn&&(bn={...Tn}),$n&&$n.flow_id&&(bn[$n.flow_id]={...$n,isDefault:!0})}return bn},Ie=(Et,wn,bn={})=>{const Tn={...V.value.activities},$n=[...V.value.location],Sn=getActivityConfig(Et,bn),{name:kn,error_ignorable:Nn,retryable:On,skippable:Vn,auto_retry:Dn,component:Rn={}}=Sn;Cn(Et,{id:Et,name:kn,error_ignorable:Nn,retryable:On,skippable:Vn,auto_retry:Dn,component:Rn,type:"tasknode"}),Tn[Et]=Sn,$n.push({id:Et,type:"tasknode",x:wn.x,y:wn.y,name:kn}),V.value={...V.value,activities:Tn,location:$n},vn()},Ue=(Et,wn,bn,Tn={})=>{const Sn={branchgateway:"ExclusiveGateway",parallelgateway:"ParallelGateway",conditionalparallelgateway:"ConditionalParallelGateway",convergegateway:"ConvergeGateway"}[wn],kn={...V.value.gateways},Nn=[...V.value.location],On=getGatewayConfig(Et,Sn,Tn);console.log("gateway: ",On),Cn(Et,{id:Et}),kn[Et]=On,Nn.push({id:Et,type:wn,x:bn.x,y:bn.y}),V.value={...V.value,gateways:kn,location:Nn},vn()},Dt=Et=>{const{start_event:wn,end_event:bn,activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn}=lodash.cloneDeep(V.value);Et.forEach(On=>{const{id:Vn,source:Dn,target:Rn}=On;Nn.push(On),Sn[On.id]={id:Vn,source:Dn.id,target:Rn.id,is_default:!1};const Hn=kn.find(Gn=>Gn.id===Dn.id),Kn=kn.find(Gn=>Gn.id===Rn.id);if(Hn){if(Hn.type==="startpoint")wn.outgoing=Vn;else if(Hn.type==="tasknode")Tn[Dn.id].outgoing=Vn;else if(Hn.type.includes("gateway")){const Gn=$n[Dn.id];if(Array.isArray(Gn.outgoing)?Gn.outgoing.push(Vn):Gn.outgoing=Vn,["ExclusiveGateway","ConditionalParallelGateway"].includes(Gn.type)){const Zn={...Gn.conditions||{}},eo=Object.keys(Zn).length;Zn[Vn]={name:`条件${eo+1}`,tag:`branch_${Dn.id}_${Rn.id}`,evaluate:eo>0?"1 == 0":"1 == 1"},Gn.conditions=Zn}}}Kn&&(Kn.type==="endpoint"?bn.incoming.push(Vn):Kn.type==="tasknode"?Tn[Rn.id].incoming.push(Vn):Kn.type.includes("gateway")&&$n[Rn.id].incoming.push(Vn))}),V.value={...V.value,start_event:wn,end_event:bn,activities:Tn,gateways:$n,flows:Sn,line:Nn},vn()},$e=(Et,wn)=>{const bn=wn.id,Tn=lodash.cloneDeep(V.value),$n=Et.source.id!==wn.source.id,Sn=$n?Et.source.id:Et.target.id,kn=$n?wn.source.id:wn.target.id;$n?Tn.flows[bn].source=kn:Tn.flows[bn].target=kn;const Nn=Tn.line.findIndex(Rn=>Rn.id===bn);Nn>-1&&Tn.line.splice(Nn,1,wn);const On=getNodeById(kn,Tn),Vn=getNodeById(Sn,Tn),Dn=$n?"outgoing":"incoming";Array.isArray(On[Dn])?On[Dn].push(bn):On[Dn]=bn,Array.isArray(Vn[Dn])?Vn[Dn]=Vn[Dn].filter(Rn=>Rn!==bn):Vn[Dn]="",V.value=Tn,vn()},Ne=Et=>{const wn=transLinesToEdges(Et);k.value?.addEdges(wn),Dt(Et)},Oe=Et=>{k.value?.removeNode(Et);const wn=[];V.value.line.forEach(Dn=>{(Dn.source.id===Et||Dn.target.id===Et)&&wn.push(Dn.id)});const bn=Lt(wn),{activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn,start_event:On,end_event:Vn}=bn;Tn[Et]?delete Tn[Et]:$n[Et]&&delete $n[Et],kn.splice(kn.findIndex(Dn=>Dn.id===Et),1),V.value={...V.value,activities:Tn,gateways:$n,flows:Sn,location:kn,line:Nn,start_event:On,end_event:Vn},vn()},kt=Et=>{Et.forEach(wn=>{k.value?.removeEdge(wn)}),V.value=Lt(Et),vn()},Lt=Et=>{const wn={...V.value.activities},bn={...V.value.gateways},Tn={...V.value.flows},$n=[...V.value.line],Sn={...V.value.start_event},kn={...V.value.end_event};return Et.forEach(Nn=>{delete Tn[Nn],$n.splice($n.findIndex(On=>On.id===Nn),1),Object.keys(wn).forEach(On=>{if(wn[On].incoming.includes(Nn)||wn[On].outgoing===Nn){const Vn=lodash.cloneDeep(wn[On]),{incoming:Dn,outgoing:Rn}=Vn;Dn.includes(Nn)&&Dn.splice(Dn.findIndex(Hn=>Hn===Nn),1),Rn===Nn&&(Vn.outgoing=""),wn[On]=Vn}}),Object.keys(bn).forEach(On=>{const Vn=lodash.cloneDeep(bn[On]),{incoming:Dn,outgoing:Rn,conditions:Hn,default_condition:Kn}=Vn;bn[On].incoming.includes(Nn)&&Dn.includes(Nn)&&Dn.splice(Dn.findIndex(Gn=>Gn===Nn),1),Array.isArray(Rn)?Rn.includes(Nn)&&Rn.splice(Rn.findIndex(Gn=>Gn===Nn),1):Rn===Nn&&(Vn.outgoing=""),Hn&&Hn[Nn]&&delete Hn[Nn],Kn&&Kn.flow_id===Nn&&delete Vn.default_condition,bn[On]=Vn}),Sn.outgoing===Nn&&(Sn.outgoing=""),kn.incoming.includes(Nn)&&(kn.incoming=kn.incoming.filter(On=>On!==Nn))}),{...V.value,activities:wn,gateways:bn,flows:Tn,line:$n,start_event:Sn,end_event:kn}},Cn=(Et,wn)=>{const bn=k.value?.getCellById(Et),Tn=bn?.data.type;bn&&bn.setData({...bn.data,...wn,type:Tn})},hn=lodash.debounce((Et,wn,bn,Tn)=>{const $n={...V.value.gateways};if($n[wn]){const Sn=lodash.cloneDeep($n[wn]);bn&&Sn.default_condition?Sn.default_condition={...Sn.default_condition,loc:Tn}:Sn.conditions&&Sn.conditions[Et]&&(Sn.conditions[Et]={...Sn.conditions[Et],loc:Tn}),$n[wn]=Sn,V.value={...V.value,gateways:$n},vn()}},300),jt=async()=>{if(L.value)return;const Et=200,wn=y.pipelineTree.location.map(to=>to.x),bn=y.pipelineTree.location.map(to=>to.y),Tn=Math.min(...wn),$n=Math.max(...wn),Sn=Math.min(...bn),kn=Math.max(...bn),Nn=Tn<0?-Tn:0,On=Sn<0?-Sn:0;let Vn=0;const Dn=document.documentElement.offsetWidth-60,Rn=document.documentElement.offsetHeight-60-50;Tn<0?Vn=$n>Dn?$n-Tn:Dn-Tn:Vn=$n>Dn?$n:Dn;let Hn=0;Sn<0?Hn=kn>Rn?kn-Sn:Rn-Sn:Hn=kn>Rn?kn:Rn;const Kn=Hn+Et+30,Gn=Vn+Et+80,Zn=await domtoimage.toJpeg($.value,{bgcolor:"#ffffff",height:Kn,width:Gn,cloneBack:to=>{const no=to.querySelector(".x6-graph-svg");no.style.width=`${Gn}px`,no.style.height=`${Kn}px`;const ro=to.querySelector(".x6-graph-svg-viewport");ro.style.transform=`translate(${`${Nn+30}px`}, ${`${On+30}px`})`}});L.value=!0;const eo=document.createElement("a");eo.download=`bkflow_template_canvas_${+new Date}.png`,eo.href=Zn,eo.click(),L.value=!1},vn=()=>{g("updatePipelineTree",V.value)};return t({graph:k,createActivity:Ie,createGateway:Ue,deleteNode:Oe,deleteEdges:kt,insertEdgesToCanvas:Ne,updateEdgeLabel:qe,updateNodeData:Cn}),(Et,wn)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["bkflow-canvas-container",{"bkflow-canvas-view":!y.editable}])},[k.value&&!y.hideTool?(vue.openBlock(),vue.createBlock(Tool,{key:0,instance:k.value,onDownload:jt},null,8,["instance"])):vue.createCommentVNode("",!0),k.value&&y.editable?(vue.openBlock(),vue.createBlock(Dnd,{key:1,instance:k.value,onDragging:le,onDragEnd:he},null,8,["instance"])):vue.createCommentVNode("",!0),vue.createElementVNode("div",{ref_key:"graphContainerRef",ref:$,class:"graph-container"},null,512),vue.createVNode(vue.unref(i))],2))}}),BkFlowCanvas=_export_sfc$1(_sfc_main$1P,[["__scopeId","data-v-e6ac748d"]]),getUniformApiPluginFormValue$1=e=>"default"in e?e.default:"",_hoisted_1$1r={class:"bkflow-variable-table"},_hoisted_2$Y={class:"operate-wrapper"},_hoisted_3$C={class:"btns-list"},_hoisted_4$r={class:"toggle-system-variables"},_hoisted_5$m={class:"variable-table-wrapper"},_hoisted_6$e={class:"var-check-cell"},_hoisted_7$9={key:0,class:"bkflow-canvas-icon bkflow-canvas-lock-disable"},_hoisted_8$6={class:"cell-text"},_hoisted_9$5={class:"cell-text"},_hoisted_10$4={class:"copy-icon-wrapper"},_hoisted_11$4={class:"table-row-actions"},_hoisted_12$2=["onClick"],_hoisted_13$2=["onClick"],_sfc_main$1O=vue.defineComponent({__name:"global-variable-table",props:{constants:{default:()=>({})},systemVariables:{default:()=>[]},editable:{type:Boolean,default:!0},outputs:{default:()=>[]},customVariableTypes:{default:()=>[]},variablesReference:{default:()=>({defined:{},nodefined:{}})}},emits:["create","edit","clone","delete","outputChange","updateConstants"],setup(e,{emit:t}){const n=e;vue.watch(()=>n.outputs,ae=>{console.log("outputs",ae)});const r=t,i=vue.ref(!1),y=vue.ref([]),g=vue.computed(()=>{const ae=Object.values(n.constants).sort((ue,de)=>ue.index-de.index);return i.value?ae:[...n.systemVariables,...ae]}),k={cellFn:ae=>{const ue=y.value.length,de=Object.values(n.constants).length,_e=de>0&&ue===de,xe=ue>0&&ue<de;if(ae.index===0)return vue.createVNode(vue.Fragment,null,[vue.createVNode(vue.resolveComponent("bk-checkbox"),{modelValue:_e,indeterminate:xe,disabled:!n.editable,onChange:re},null)]);if(["reference","outputs"].includes(ae.column.prop)){const ze={content:ae.column.prop==="reference"?"直接引用全局变量的节点数量,点击数字查看引用详情":"表示该变量会作为该流程模板的输出参数,在被其他流程模板当做子流程节点时可以引用。",placement:"top"};return vue.createVNode("div",{class:"thead-custom"},[ae.column.label,vue.withDirectives(vue.createVNode(icon.Info,{class:"info-icon"},null),[[vue.resolveDirective("bk-tooltips"),ze]])])}return ae.column.label}},$=ae=>ae.source_type==="system"?"系统变量":ae.source_type==="custom"?n.customVariableTypes.find(de=>de.code===ae.custom_type)?.name||"自定义":"组件",V=ae=>{const ue=ae.length>1?`确认删除所选的${ae.length}个变量?`:`确认删除全局变量"${ae[0]}"?`;lib.InfoBox({title:ue,content:"若该变量被节点引用,请及时检查并更新节点配置",width:450,headerAlign:"center",footerAlign:"center",confirmText:"确认",cancelText:"取消",onConfirm:()=>{const de={...n.constants};ae.slice().forEach(_e=>{delete de[_e];const xe=y.value.indexOf(_e);xe!==-1&&y.value.splice(xe,1)}),r("updateConstants",de),pe(ae)},onCancel:()=>{}})},L=(ae,ue)=>{r("edit",ue)},re=ae=>{ae?y.value=Object.keys(n.constants):y.value=[]},ie=(ae,ue)=>{const de=y.value.indexOf(ue);ae?de===-1&&y.value.push(ue):de!==-1&&y.value.splice(de,1)},oe=ae=>{if(n.variablesReference?.defined&&ae in n.variablesReference.defined){const{activities:ue,conditions:de,constants:_e}=n.variablesReference.defined[ae];return ue.length+de.length+_e.length}return 0},z=()=>{V(y.value)},j=ae=>{V([ae.key])},le=ae=>{const ue=document.createElement("textarea");ue.value=ae.toString(),document.body.appendChild(ue),ue.select(),document.execCommand("copy"),document.body.removeChild(ue),lib.Message({theme:"success",message:"复制成功"})},Ce=(ae,ue)=>{const de={...n.constants};de[ae.key]={...ae,show_type:ue?"show":"hide"},r("updateConstants",de)},he=(ae,ue)=>{r("outputChange",ae,ue)},pe=ae=>{r("delete",ae)};return(ae,ue)=>{const de=vue.resolveComponent("bk-button"),_e=vue.resolveComponent("bk-checkbox"),xe=vue.resolveComponent("bk-table-column"),ze=vue.resolveComponent("bk-overflow-title"),Ve=vue.resolveComponent("bk-switcher"),qe=vue.resolveComponent("bk-popover"),At=vue.resolveComponent("bk-table"),Fe=vue.resolveDirective("bk-tooltips");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1r,[vue.createElementVNode("div",_hoisted_2$Y,[vue.createElementVNode("div",_hoisted_3$C,[vue.createVNode(de,{theme:"primary",onClick:ue[0]||(ue[0]=Ie=>r("create"))},{default:vue.withCtx(()=>[...ue[7]||(ue[7]=[vue.createTextVNode("新建",-1)])]),_:1}),y.value.length>0?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(de,{onClick:z},{default:vue.withCtx(()=>[...ue[8]||(ue[8]=[vue.createTextVNode("删除",-1)])]),_:1}),vue.createElementVNode("span",null,"已选择"+vue.toDisplayString(y.value.length)+"项",1),vue.createVNode(de,{class:"clear-checked-btn",theme:"primary",size:"small",text:"",onClick:ue[1]||(ue[1]=Ie=>y.value=[])},{default:vue.withCtx(()=>[...ue[9]||(ue[9]=[vue.createTextVNode(" 清空 ",-1)])]),_:1})],64)):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_4$r,[vue.createVNode(_e,{modelValue:i.value,"onUpdate:modelValue":ue[2]||(ue[2]=Ie=>i.value=Ie)},{default:vue.withCtx(()=>[...ue[10]||(ue[10]=[vue.createTextVNode("隐藏系统变量",-1)])]),_:1},8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_5$m,[vue.createVNode(At,{data:g.value,border:["outer"],thead:k,onRowClick:L},{default:vue.withCtx(()=>[vue.createVNode(xe,{"min-width":40,width:40},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_6$e,[Ie.source_type==="system"?(vue.openBlock(),vue.createElementBlock("i",_hoisted_7$9)):(vue.openBlock(),vue.createElementBlock("span",{key:1,onClick:ue[3]||(ue[3]=vue.withModifiers(()=>{},["stop"]))},[vue.createVNode(_e,{"model-value":y.value.includes(Ie.key),disabled:!n.editable,onChange:Ue=>ie(Ue,Ie.key)},null,8,["model-value","disabled","onChange"])]))])]),_:1}),vue.createVNode(xe,{label:"名称",prop:"name",width:150},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_8$6,[vue.createVNode(ze,{type:"tips"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(Ie.name),1)]),_:2},1024)])]),_:1}),vue.createVNode(xe,{label:"KEY",prop:"key","min-width":120},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_9$5,[vue.createVNode(ze,{type:"tips"},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(Ie.key),1)]),_:2},1024)]),vue.createElementVNode("span",_hoisted_10$4,[vue.withDirectives(vue.createVNode(vue.unref(icon.CopyShape),{onClick:vue.withModifiers(Ue=>le(Ie.key),["stop"])},null,8,["onClick"]),[[Fe,{content:"复制",placement:"top"}]])])]),_:1}),vue.createVNode(xe,{label:"引用",prop:"reference",width:70,"min-width":60},{default:vue.withCtx(({row:Ie})=>[vue.createTextVNode(vue.toDisplayString(oe(Ie.key)),1)]),_:1}),vue.createVNode(xe,{label:"类型",prop:"type",width:80,"min-width":80},{default:vue.withCtx(({row:Ie})=>[vue.createTextVNode(vue.toDisplayString($(Ie)),1)]),_:1}),vue.createVNode(xe,{label:"显示(入参)",prop:"value",width:110},{default:vue.withCtx(({row:Ie})=>[vue.createVNode(Ve,{theme:"primary",size:"small",value:Ie.show_type==="show",disabled:!n.editable||["system","component_outputs"].includes(Ie.source_type),onClick:ue[4]||(ue[4]=vue.withModifiers(()=>{},["stop"])),onChange:Ue=>Ce(Ie,Ue)},null,8,["value","disabled","onChange"])]),_:1}),vue.createVNode(xe,{label:"输出",prop:"outputs",width:70,"min-width":60},{default:vue.withCtx(({row:Ie})=>[vue.createVNode(Ve,{theme:"primary",size:"small",value:n.outputs.includes(Ie.key),disabled:!n.editable||Ie.source_type==="system",onClick:ue[5]||(ue[5]=vue.withModifiers(()=>{},["stop"])),onChange:Ue=>he(Ie.key,Ue)},null,8,["value","disabled","onChange"])]),_:1}),vue.createVNode(xe,{label:"操作",prop:"description",width:70,"min-width":70,fixed:"right"},{default:vue.withCtx(({row:Ie})=>[vue.createElementVNode("div",_hoisted_11$4,[n.editable&&Ie.source_type!=="system"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(de,{theme:"primary",size:"small",text:"",onClick:vue.withModifiers(Ue=>r("edit",Ie),["stop"])},{default:vue.withCtx(()=>[...ue[11]||(ue[11]=[vue.createTextVNode(" 编辑 ",-1)])]),_:1},8,["onClick"]),vue.createVNode(qe,{placement:"bottom",theme:"light","ext-cls":"varibale-table-action-popover",width:90},{content:vue.withCtx(()=>[vue.createElementVNode("div",{class:"more-action-item",onClick:Ue=>r("clone",Ie)},"克隆",8,_hoisted_12$2),vue.createElementVNode("div",{class:"more-action-item",onClick:Ue=>j(Ie)},"删除",8,_hoisted_13$2)]),default:vue.withCtx(()=>[vue.createElementVNode("i",{class:"bkflow-canvas-icon bkflow-canvas-more-fill row-action-more",onClick:ue[6]||(ue[6]=vue.withModifiers(()=>{},["stop"]))})]),_:2},1024)],64)):(vue.openBlock(),vue.createBlock(de,{key:1,theme:"primary",size:"small",text:""},{default:vue.withCtx(()=>[...ue[12]||(ue[12]=[vue.createTextVNode("查看",-1)])]),_:1}))])]),_:1})]),_:1},8,["data"])])])}}}),GlobalVariableTable=_export_sfc$1(_sfc_main$1O,[["__scopeId","data-v-2a7f36a6"]]),setContext=(e={},t)=>{const n=window.$||{},r=y=>{let{url:g,type:k="GET",data:$,dataType:V="json",headers:L={},success:re,error:ie,complete:oe,timeout:z}=y||{};const j=new AbortController;let le=null;z&&(le=setTimeout(()=>{j.abort()},z));const Ce={method:k.toUpperCase(),headers:{"Content-Type":"application/json",...L},signal:j.signal};if($&&(k.toUpperCase()==="POST"||k.toUpperCase()==="PUT"||k.toUpperCase()==="PATCH"))typeof $=="string"?Ce.body=$:Ce.body=JSON.stringify($);else if($&&k.toUpperCase()==="GET"){const he=new URLSearchParams;typeof $=="object"?Object.keys($).forEach(ae=>{he.append(ae,String($[ae]))}):he.append("data",String($));const pe=g.includes("?")?"&":"?";g=`${g}${pe}${he.toString()}`}fetch(g,Ce).then(he=>{if(le&&clearTimeout(le),!he.ok)throw new Error(`HTTP error! status: ${he.status}`);return V==="json"?he.json():he.text()}).then(he=>{re&&re(he),oe&&oe()}).catch(he=>{le&&clearTimeout(le),ie&&ie(he),oe&&oe()})},i=t?t.endsWith("/")?t:`${t}/`:"";window.$={...n,context:{project:void 0,site_url:i,exec_env:"NODE_CONFIG",input_form:{inputs:void 0},output_form:{outputs:void 0,state:void 0},bk_plugin_api_host:{},get(y){return window.$.context[y]},canSelectBiz(){return!1},getConstants(){return e},getOutput(y){const{outputs:g}=window.$.context.output_form;if(g&&Array.isArray(g)){const k=window.$.context.output_form.outputs.find($=>$.key===y);return k?k.value:null}return null},getInput(y){return window.$.context.input_form.inputs&&window.$.context.input_form.inputs[y]?window.$.context.input_form.inputs[y]:null},getNodeStatus(){const{state:y}=window.$.context.output_form;return y||null}},gettext(y){return y},atoms:{},ajax:r},window.gettext=y=>y,window.show_msg=(y,g)=>{BkMessage({theme:g,message:y,ellipsisLine:3})}},data$1={output:[{name:"Trace ID",key:"trace_id",type:"string",schema:{type:"string",description:"Trace ID",enum:[]}},{name:"执行结果",key:"_result",type:"boolean",schema:{type:"boolean",description:"执行结果的布尔值,True or False",enum:[]}},{name:"循环次数",key:"_loop",type:"int",schema:{type:"int",description:"循环执行次数",enum:[]}},{name:"当前流程循环次数",key:"_inner_loop",type:"int",schema:{type:"int",description:"在当前流程节点循环执行次数,由父流程重新进入时会重置(仅支持新版引擎)",enum:[]}}]},remoteApiCommonConfig={data:data$1},data={output:[{name:"响应内容",key:"data",type:"object",schema:{type:"object",description:"HTTP 请求响应内容,内部结构不固定",enum:[],properties:{}}},{name:"状态码",key:"status_code",type:"int",schema:{type:"int",description:"HTTP 请求响应状态码",enum:[]}},{name:"执行结果",key:"_result",type:"boolean",schema:{type:"boolean",description:"执行结果的布尔值,True or False",enum:[]}},{name:"循环次数",key:"_loop",type:"int",schema:{type:"int",description:"循环执行次数",enum:[]}},{name:"当前流程循环次数",key:"_inner_loop",type:"int",schema:{type:"int",description:"在当前流程节点循环执行次数,由父流程重新进入时会重置(仅支持新版引擎)",enum:[]}}]},uniformApiCommonConfig={data};function jsonpRequest(e,t={},n={},r=""){return new Promise((i,y)=>{let g;const k=document.createElement("script"),$=()=>{k.parentNode&&document.body.removeChild(k)};k.onload=()=>{$(),g&&clearTimeout(g);const L=window.$.atoms[r];L?i(L):y(new Error(`Failed to extract plugin data from response. Plugin code: ${r}`))},k.onerror=()=>{$(),g&&clearTimeout(g),y(new Error("JSONP request failed"))};const V=[];for(const L in t)Object.prototype.hasOwnProperty.call(t,L)&&V.push(`${encodeURIComponent(L)}=${encodeURIComponent(t[L])}`);k.src=`${e}${V.length>0?"?"+V.join("&"):""}`,n.timeout&&(g=setTimeout(()=>{$(),y(new Error("JSONP request timeout"))},n.timeout)),document.body.appendChild(k)})}const pluginDetailRequest=async(e,t)=>{const{code:n,version:r,api_meta:i,data:y}=t;if(!n||!r)throw new Error("Plugin code and version are required for inner plugin");if(n==="remote_plugin"){const g=y?.plugin_code?.value,k=y?.plugin_version?.value||"";if(!g)throw new Error("Third party plugin code is required");return await getThirdPartyPluginDetail(e,g,k)}return n==="uniform_api"&&i?.id?await getUniformApiPlugin(e,i.id):await getInnerPluginDetail(e,n,r)};async function getInnerPluginDetail(e,t,n){if(!e?.fetchBkFlowInnerPluginDetail)throw new Error("fetchBkFlowInnerPluginDetail API is not available");const r=await e.fetchBkFlowInnerPluginDetail(t,n),{name:i,desc:y,form:g,output:k}=r;if(!g)throw new Error("Plugin form URL is not available");let $=[];try{$=await jsonpRequest(g,{},{timeout:1e4},t)}catch(L){throw new Error(L)}const V=k.map(L=>({description:L.schema?.description,key:L.key,type:L.type||L.schema?.type,name:L.name}));return{code:t,version:n,name:i,desc:y,versions:[n],inputs:$,outputs:V,inputParamsFormType:"renderform"}}function processJsonschemaformInputs(e){const t=lodash.cloneDeep(e);return t.properties&&Object.keys(t.properties).forEach(n=>{const r=t.properties[n];if(r["ui:component"]){const i=r["ui:component"];typeof i=="object"&&i.props&&(Object.keys(i.props).forEach(y=>{i[y]=i.props[y]}),delete i.props)}r.items?.properties&&Object.keys(r.items.properties).forEach(i=>{const y=r.items.properties[i];if(y["ui:component"]){const g=y["ui:component"];typeof g=="object"&&g.props&&(Object.keys(g.props).forEach(k=>{g[k]=g.props[k]}),delete g.props)}})}),t}async function getThirdPartyPluginDetail(api,pluginCode,pluginVersion){if(!api?.fetchBkFlowThirdPartyPluginMeta||!api?.fetchBkFlowThirdPartyPluginDetail)throw new Error("Third party plugin APIs are not available");const[metaData,appData]=await Promise.all([api.fetchBkFlowThirdPartyPluginMeta(pluginCode),api.fetchBkFlowThirdPartyPluginAppDetail(pluginCode)]),version=pluginVersion||metaData.versions[0],detailData=await api.fetchBkFlowThirdPartyPluginDetail(pluginCode,version),{inputs,outputs,forms,desc}=detailData;let inputForms,inputParamsFormType="jsonschemaform";forms.renderform?("$"in window||setContext(),eval(forms.renderform),inputForms=window.$.atoms[pluginCode],inputParamsFormType="renderform"):inputForms=processJsonschemaformInputs(inputs);const outputForms=[];return remoteApiCommonConfig.data.output.forEach(e=>{outputForms.push({description:e.schema.description,key:e.key,type:e.type,name:e.name})}),outputs.properties&&Object.keys(outputs.properties).forEach(e=>{outputForms.push({description:outputs.properties[e].description,key:e,type:outputs.properties[e].type,name:outputs.properties[e].title})}),{code:pluginCode,version,name:appData.name,desc,versions:metaData.versions,inputs:inputForms,outputs:outputForms,inputParamsFormType}}async function getUniformApiPlugin(e,t){if(!e?.fetchPluginDetail)throw new Error("fetchPluginDetail API is not available");const n=await e.fetchPluginDetail(t),{inputs:r,url:i,methods:y,group:g,polling:k={},credential_key:$=""}=n;return{code:"uniform_api",name:n.name,desc:"",version:"",inputs:r,outputs:uniformApiCommonConfig.data.output.map(V=>({description:V.schema.description,key:V.key,type:V.type,name:V.name})),inputParamsFormType:"uniformApiForm",url:i,group:g,methods:y,polling:k,credential_key:$,category:n.category,uniformApiName:n.name}}const getRenderFormInputItemDefaultValue=e=>{let t={};if(e.type==="combine"){const n={};(e.attrs.children||[]).forEach(r=>{n[r.tag_code]=getRenderFormInputItemDefaultValue(r)}),t=n}else if("value"in e.attrs)t=lodash.cloneDeep(e.attrs.value);else if("default"in e.attrs)t=lodash.cloneDeep(e.attrs.default);else switch(e.type){case"input":case"textarea":case"radio":case"text":case"datetime":case"password":case"member_selector":case"log_display":case"code_editor":case"section":t="";break;case"checkbox":case"datatable":case"tree":case"upload":case"cascader":case"datetime_range":case"value_assign":t=[];break;case"select":t=e.attrs.multiple?[]:"";break;case"time":t=e.attrs.isRange?["00:00:00","23:59:59"]:"";break;case"int":t=0;break;default:t=""}return t},getUniformApiPluginFormValue=e=>"default"in e?e.default:"",getPluginDefaultComponentData=(e,t)=>{const{url:n,methods:r,inputs:i,polling:y,credential_key:g}=t,k={};return e==="uniform_api"?(k.uniform_api_plugin_url={value:n||"",hook:!1},k.uniform_api_plugin_method={value:r&&r.length>0?r[0]:"",hook:!1},y&&Object.keys(y).length>0&&(k.uniform_api_plugin_polling={value:y,hook:!1}),g&&(k.uniform_api_plugin_credential_key={value:g,hook:!1}),i.forEach($=>{k[$.key]={value:getUniformApiPluginFormValue($),need_render:!0,hook:!1}})):e==="remote_plugin"?(k.plugin_code={value:t.code,hook:!1},k.plugin_version={value:t.version,hook:!1},t.inputParamsFormType==="renderform"?i.forEach($=>{k[$.tag_code]={value:getRenderFormInputItemDefaultValue($),need_render:!0,hook:!1}}):t.inputParamsFormType):e==="inner"&&i.forEach($=>{k[$.tag_code]={value:getRenderFormInputItemDefaultValue($),need_render:!0,hook:!1}}),k},getInputFormsFromConstants=async(e,t)=>{if(!t||Object.keys(t).length===0)return[];const n=Object.values(t).filter(k=>k.source_type==="custom"&&k.show_type==="show");if(n.length===0)return[];const r=new Map,i=new Map;n.forEach(k=>{const[$,V]=k.source_tag.split(".");if(!$){console.warn(`Variable ${k.key} has no custom_type`);return}const L=k.version;if(!L){console.warn(`Variable ${k.key} has no version, skipping`);return}const re=`${$}_${L}`;i.set(k,{code:$,tagCode:V,version:L}),r.has(re)||r.set(re,{code:$,version:L,tagCode:V})});const y=new Map;await Promise.all(Array.from(r.entries()).map(async([k,{code:$,version:V}])=>{try{const L=await e.fetchInnerVariableDetail($),{form:re}=L;if(!re){console.warn(`Plugin ${$}@${V} has no form URL`);return}let ie=[];try{ie=await jsonpRequest(re,{},{timeout:1e4},$)}catch(oe){console.error(`Failed to load form for plugin ${$}@${V}:`,oe);return}console.log("inputs",ie),y.set(k,{form:re,inputs:ie})}catch(L){console.error(`Failed to fetch plugin detail for ${$}@${V}:`,L)}}));const g=[];return n.forEach(k=>{const $=i.get(k);if(!$)return;const{code:V,tagCode:L,version:re}=$,ie=`${V}_${re}`,oe=y.get(ie);if(!oe)return;const z=oe.inputs.find(j=>j.tag_code===L);if(z){const j={...lodash.cloneDeep(z),name:k.name,tag_code:k.key};"events"in j&&j.events?.forEach(le=>{le.source===L&&(le.source=`\${${le.source}}`)}),["input","textarea"].includes(k.custom_type)&&k.validation!==""&&j.attrs.validation.push({type:"regex",args:k.validation,error_message:`参数值不符合正则规则:${k.validation}`}),g.push(j)}else console.warn(`Form item with tag_code ${L} not found in plugin ${V}@${re}`)}),g},getVariableForms=async(e,t)=>{if(!t?.custom_type)return console.warn("Variable has no custom_type"),[];const n=t.custom_type;try{const r=await e.fetchInnerVariableDetail(n),{form:i}=r;if(!i)return console.warn(`Variable type ${n} has no form URL`),[];let y=[];try{y=await jsonpRequest(i,{},{timeout:1e4},n)}catch(g){return console.error(`Failed to load form for variable type ${n}:`,g),[]}return y}catch(r){return console.error(`Failed to fetch variable detail for ${n}:`,r),[]}},checkDataType=e=>Object.prototype.toString.call(e).slice(8,-1);function useFormMixins(e={}){const{attrs:t={},emit:n,getFormData:r,onHookForm:i,getParent:y}=e,g=vue.inject("getFormData",r),k=vue.getCurrentInstance(),$=lodash.cloneDeep(t),V={},L={};Object.keys($).forEach($e=>{if($e!=="value"){const Ne=$[$e].default;let Oe;typeof Ne=="function"?Oe=$[$e].type===Function?Ne:Ne():Oe=Ne,L[$e]=Oe}else V[$e]=lodash.cloneDeep($[$e])});const re=vue.reactive({}),ie=vue.reactive({valid:!0,message:""}),oe=vue.reactive({}),z=$e=>{Object.keys(L).forEach(Ne=>{oe[Ne]=Object.prototype.hasOwnProperty.call($e,Ne)?$e[Ne]:L[Ne]})},j=$e=>Ne=>{$e.call(k?.proxy,Ne)},le=($e,Ne,Oe)=>{const kt=y?.();kt&&typeof kt.emit=="function"&&kt.emit(`${$e}_${Ne}`,Oe)},Ce=$e=>{if(!k?.props)return;const Ne=[k.props.tagCode];n?.("change",Ne,$e),vue.nextTick(()=>{ae();const Oe=k.props;pe(void 0,Oe.validation,$e,Oe.parentValue,Oe.validateSet)})},he=($e,Ne,Oe,kt)=>{let Lt=!0,Cn="";if(kt.includes($e.type))switch($e.type){case"required":{const hn=checkDataType(Ne);let jt=!1;hn==="Object"?jt=!Object.keys(Ne).length:hn==="Array"?jt=!Ne.filter(vn=>vn).length:hn==="String"?jt=!Ne.length:hn==="Number"&&(jt=!Ne.toString()),jt&&(Lt=!1,Cn="必填项");break}case"regex":/^\${[^${}]+}$/.test(Ne)||new RegExp($e.args).test(Ne)||(Lt=!1,Cn=$e.error_message);break;case"custom":if(!/^\${[^${}]+}$/.test(Ne)){const hn=$e.args.call(k?.proxy,Ne,Oe);hn.result||(Lt=!1,Cn=hn.error_message)}break}return{valid:Lt,message:Cn}},pe=($e,Ne,Oe,kt,Lt)=>$e?$e():Ne?Ne.every(hn=>{const jt=he(hn,Oe,kt,Lt||[]);return ie.valid=jt.valid,ie.message=jt.message,jt.valid}):!0,ae=()=>{if(!k?.props)return;const $e=k.props.tagCode,Ne=k.props.value;le($e,"change",Ne)},ue=()=>{n?.("onShow")},de=()=>{_e(!1),n?.("onHide")},_e=$e=>{i?.($e)},xe=()=>k?.parent,ze=()=>y?.(),Ve=($e=!1,Ne,Oe,kt,Lt)=>{let Cn;if($e)Cn=Ne;else{if(Oe&&Lt&&kt){const hn=/^\$\{(\w+)\}$/.test(kt)?kt:`\${${kt}}`,jt=Lt[hn];return jt?jt.value:Ne}Cn=Ne}return Cn},qe=($e=!1,Ne,Oe,kt,Lt)=>Ve($e,Ne,Oe,kt,Lt),At=($e,Ne)=>{const Oe=Ne||g?.()||{},kt=$e[0];if(!(kt in Oe))throw new Error(`表单值中不存在 ${kt} 属性`);let Lt;return $e.length===1?Lt=lodash.cloneDeep(Oe[kt]):Lt=At($e.slice(1),Oe[kt]),Lt},Fe=$e=>{Ce($e)};return{eventActions:re,validateInfo:ie,noInheritData:oe,inheritAttrs:V,noInheritAttrs:L,updateForm:Ce,validate:pe,getValidateResult:he,onChange:ae,show:ue,hide:de,changeHook:_e,get_form_instance:xe,get_parent:ze,get_value:qe,_get_value:Ve,get_tag_value:At,set_value:$e=>{Fe($e)},_set_value:Fe,getVariableVal:()=>{throw new Error("getVariableVal 方法需要手动实现,请通过 inject 传递 constants")},emit_event:le,getEventHandler:j,setupLifecycle:($e,Ne,Oe)=>{z(Ne),vue.onMounted(()=>{($e.atomEvents||[]).forEach(hn=>{const jt=`${hn.source}_${hn.type}`;re[jt]=j(hn.action);const vn=y?.();vn&&typeof vn.on=="function"&&vn.on(jt,re[jt])});const Lt=$e.atomMethods||{};k?.proxy&&Object.keys(Lt).forEach(hn=>{if(typeof Lt[hn]=="function")try{k.proxy[hn]=Lt[hn].bind(k.proxy)}catch(jt){console.warn(`无法注册方法 ${hn} 到组件实例:`,jt)}});const Cn=Lt._tag_init||k?.proxy?._tag_init;typeof Cn=="function"&&Cn.call(k?.proxy),vue.nextTick(()=>{const hn=$e.tagCode,jt=$e.value;le(hn,"init",jt),n?.("init",jt)})}),vue.onBeforeUnmount(()=>{($e.atomEvents||[]).forEach(Lt=>{const Cn=`${Lt.source}_${Lt.type}`,hn=y?.();hn&&typeof hn.off=="function"&&hn.off(Cn,re[Cn])})})},initNoInheritData:z}}const _hoisted_1$1q={class:"tag-button"},_sfc_main$1N=vue.defineComponent({__name:"TagButton",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:{},title:{default:"按钮文本"},type:{default:""},icon:{default:""},size:{default:"normal"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},text:{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:{title:{type:String,default:"按钮文本"},type:{type:String,default:""},icon:{type:String,default:""},size:{type:String,default:"normal"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},text:{type:Boolean,default:!1}},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=()=>{$.emit_event(r.tagCode,"click",r.modelValue)};return t({validate:re=>$.validate(void 0,r.validation,re!==void 0?re:r.modelValue,r.parentValue,r.validateSet)}),(re,ie)=>{const oe=vue.resolveComponent("bk-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$1q,[vue.createVNode(oe,{theme:e.type,size:e.size,disabled:e.disabled,loading:e.loading,icon:e.icon,text:e.text,onClick:V},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.title),1)]),_:1},8,["theme","size","disabled","loading","icon","text"])])}}}),TagButton=_export_sfc$1(_sfc_main$1N,[["__scopeId","data-v-7ce17447"]]),__vite_glob_0_0=Object.freeze(Object.defineProperty({__proto__:null,default:TagButton},Symbol.toStringTag,{value:"Module"})),defaultNamespace="el",statePrefix="is-",_bem=(e,t,n,r,i)=>{let y=`${e}-${t}`;return n&&(y+=`-${n}`),r&&(y+=`__${r}`),i&&(y+=`--${i}`),y},namespaceContextKey=Symbol("namespaceContextKey"),useGetDerivedNamespace=e=>{const t=vue.getCurrentInstance()?vue.inject(namespaceContextKey,vue.ref(defaultNamespace)):vue.ref(defaultNamespace);return vue.computed(()=>vue.unref(t)||defaultNamespace)},useNamespace=(e,t)=>{const n=useGetDerivedNamespace();return{namespace:n,b:(j="")=>_bem(n.value,e,j,"",""),e:j=>j?_bem(n.value,e,"",j,""):"",m:j=>j?_bem(n.value,e,"","",j):"",be:(j,le)=>j&&le?_bem(n.value,e,j,le,""):"",em:(j,le)=>j&&le?_bem(n.value,e,"",j,le):"",bm:(j,le)=>j&&le?_bem(n.value,e,j,"",le):"",bem:(j,le,Ce)=>j&&le&&Ce?_bem(n.value,e,j,le,Ce):"",is:(j,...le)=>{const Ce=le.length>=1?le[0]:!0;return j&&Ce?`${statePrefix}${j}`:""},cssVar:j=>{const le={};for(const Ce in j)j[Ce]&&(le[`--${n.value}-${Ce}`]=j[Ce]);return le},cssVarName:j=>`--${n.value}-${j}`,cssVarBlock:j=>{const le={};for(const Ce in j)j[Ce]&&(le[`--${n.value}-${e}-${Ce}`]=j[Ce]);return le},cssVarBlockName:j=>`--${n.value}-${e}-${j}`}};process.env.NODE_ENV!=="production"&&Object.freeze({});process.env.NODE_ENV!=="production"&&Object.freeze([]);const NOOP=()=>{},hasOwnProperty$f=Object.prototype.hasOwnProperty,hasOwn=(e,t)=>hasOwnProperty$f.call(e,t),isArray$1=Array.isArray,isDate=e=>toTypeString(e)==="[object Date]",isFunction$1=e=>typeof e=="function",isString=e=>typeof e=="string",isObject$2=e=>e!==null&&typeof e=="object",objectToString$1=Object.prototype.toString,toTypeString=e=>objectToString$1.call(e),isPlainObject$1=e=>toTypeString(e)==="[object Object]",cacheStringFunction=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},camelizeRE=/-\w/g,camelize=cacheStringFunction(e=>e.replace(camelizeRE,t=>t.slice(1).toUpperCase()));var freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),Symbol$1=root.Symbol,objectProto$g=Object.prototype,hasOwnProperty$e=objectProto$g.hasOwnProperty,nativeObjectToString$1=objectProto$g.toString,symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(e){var t=hasOwnProperty$e.call(e,symToStringTag$1),n=e[symToStringTag$1];try{e[symToStringTag$1]=void 0;var r=!0}catch{}var i=nativeObjectToString$1.call(e);return r&&(t?e[symToStringTag$1]=n:delete e[symToStringTag$1]),i}var objectProto$f=Object.prototype,nativeObjectToString=objectProto$f.toString;function objectToString(e){return nativeObjectToString.call(e)}var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(e){return e==null?e===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(e)?getRawTag(e):objectToString(e)}function isObjectLike(e){return e!=null&&typeof e=="object"}var symbolTag$3="[object Symbol]";function isSymbol(e){return typeof e=="symbol"||isObjectLike(e)&&baseGetTag(e)==symbolTag$3}function arrayMap(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}var isArray=Array.isArray,symbolProto$2=Symbol$1?Symbol$1.prototype:void 0,symbolToString=symbolProto$2?symbolProto$2.toString:void 0;function baseToString(e){if(typeof e=="string")return e;if(isArray(e))return arrayMap(e,baseToString)+"";if(isSymbol(e))return symbolToString?symbolToString.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var reWhitespace=/\s/;function trimmedEndIndex(e){for(var t=e.length;t--&&reWhitespace.test(e.charAt(t)););return t}var reTrimStart=/^\s+/;function baseTrim(e){return e&&e.slice(0,trimmedEndIndex(e)+1).replace(reTrimStart,"")}function isObject$1(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(e){if(typeof e=="number")return e;if(isSymbol(e))return NAN;if(isObject$1(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=isObject$1(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=baseTrim(e);var n=reIsBinary.test(e);return n||reIsOctal.test(e)?freeParseInt(e.slice(2),n?2:8):reIsBadHex.test(e)?NAN:+e}function identity(e){return e}var asyncTag="[object AsyncFunction]",funcTag$2="[object Function]",genTag$1="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction(e){if(!isObject$1(e))return!1;var t=baseGetTag(e);return t==funcTag$2||t==genTag$1||t==asyncTag||t==proxyTag}var coreJsData=root["__core-js_shared__"],maskSrcKey=(function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function isMasked(e){return!!maskSrcKey&&maskSrcKey in e}var funcProto$2=Function.prototype,funcToString$2=funcProto$2.toString;function toSource(e){if(e!=null){try{return funcToString$2.call(e)}catch{}try{return e+""}catch{}}return""}var reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto$1=Function.prototype,objectProto$e=Object.prototype,funcToString$1=funcProto$1.toString,hasOwnProperty$d=objectProto$e.hasOwnProperty,reIsNative=RegExp("^"+funcToString$1.call(hasOwnProperty$d).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(e){if(!isObject$1(e)||isMasked(e))return!1;var t=isFunction(e)?reIsNative:reIsHostCtor;return t.test(toSource(e))}function getValue(e,t){return e?.[t]}function getNative(e,t){var n=getValue(e,t);return baseIsNative(n)?n:void 0}var WeakMap$1=getNative(root,"WeakMap"),objectCreate=Object.create,baseCreate=(function(){function e(){}return function(t){if(!isObject$1(t))return{};if(objectCreate)return objectCreate(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}})();function apply(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function noop$1(){}function copyArray(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}var HOT_COUNT=800,HOT_SPAN=16,nativeNow=Date.now;function shortOut(e){var t=0,n=0;return function(){var r=nativeNow(),i=HOT_SPAN-(r-n);if(n=r,i>0){if(++t>=HOT_COUNT)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function constant(e){return function(){return e}}var defineProperty=(function(){try{var e=getNative(Object,"defineProperty");return e({},"",{}),e}catch{}})(),baseSetToString=defineProperty?function(e,t){return defineProperty(e,"toString",{configurable:!0,enumerable:!1,value:constant(t),writable:!0})}:identity,setToString=shortOut(baseSetToString);function arrayEach(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}function baseFindIndex(e,t,n,r){for(var i=e.length,y=n+(r?1:-1);r?y--:++y<i;)if(t(e[y],y,e))return y;return-1}function baseIsNaN(e){return e!==e}function strictIndexOf(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}function baseIndexOf(e,t,n){return t===t?strictIndexOf(e,t,n):baseFindIndex(e,baseIsNaN,n)}function arrayIncludes(e,t){var n=e==null?0:e.length;return!!n&&baseIndexOf(e,t,0)>-1}var MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex(e,t){var n=typeof e;return t=t??MAX_SAFE_INTEGER$1,!!t&&(n=="number"||n!="symbol"&&reIsUint.test(e))&&e>-1&&e%1==0&&e<t}function baseAssignValue(e,t,n){t=="__proto__"&&defineProperty?defineProperty(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function eq(e,t){return e===t||e!==e&&t!==t}var objectProto$d=Object.prototype,hasOwnProperty$c=objectProto$d.hasOwnProperty;function assignValue(e,t,n){var r=e[t];(!(hasOwnProperty$c.call(e,t)&&eq(r,n))||n===void 0&&!(t in e))&&baseAssignValue(e,t,n)}function copyObject(e,t,n,r){var i=!n;n||(n={});for(var y=-1,g=t.length;++y<g;){var k=t[y],$=void 0;$===void 0&&($=e[k]),i?baseAssignValue(n,k,$):assignValue(n,k,$)}return n}var nativeMax$1=Math.max;function overRest(e,t,n){return t=nativeMax$1(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,y=nativeMax$1(r.length-t,0),g=Array(y);++i<y;)g[i]=r[t+i];i=-1;for(var k=Array(t+1);++i<t;)k[i]=r[i];return k[t]=n(g),apply(e,this,k)}}function baseRest(e,t){return setToString(overRest(e,t,identity),e+"")}var MAX_SAFE_INTEGER=9007199254740991;function isLength(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=MAX_SAFE_INTEGER}function isArrayLike(e){return e!=null&&isLength(e.length)&&!isFunction(e)}function isIterateeCall(e,t,n){if(!isObject$1(n))return!1;var r=typeof t;return(r=="number"?isArrayLike(n)&&isIndex(t,n.length):r=="string"&&t in n)?eq(n[t],e):!1}function createAssigner(e){return baseRest(function(t,n){var r=-1,i=n.length,y=i>1?n[i-1]:void 0,g=i>2?n[2]:void 0;for(y=e.length>3&&typeof y=="function"?(i--,y):void 0,g&&isIterateeCall(n[0],n[1],g)&&(y=i<3?void 0:y,i=1),t=Object(t);++r<i;){var k=n[r];k&&e(t,k,r,y)}return t})}var objectProto$c=Object.prototype;function isPrototype(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||objectProto$c;return e===n}function baseTimes(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var argsTag$3="[object Arguments]";function baseIsArguments(e){return isObjectLike(e)&&baseGetTag(e)==argsTag$3}var objectProto$b=Object.prototype,hasOwnProperty$b=objectProto$b.hasOwnProperty,propertyIsEnumerable$1=objectProto$b.propertyIsEnumerable,isArguments=baseIsArguments((function(){return arguments})())?baseIsArguments:function(e){return isObjectLike(e)&&hasOwnProperty$b.call(e,"callee")&&!propertyIsEnumerable$1.call(e,"callee")};function stubFalse(){return!1}var freeExports$2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$2=freeExports$2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$2=freeModule$2&&freeModule$2.exports===freeExports$2,Buffer$2=moduleExports$2?root.Buffer:void 0,nativeIsBuffer=Buffer$2?Buffer$2.isBuffer:void 0,isBuffer=nativeIsBuffer||stubFalse,argsTag$2="[object Arguments]",arrayTag$2="[object Array]",boolTag$3="[object Boolean]",dateTag$3="[object Date]",errorTag$2="[object Error]",funcTag$1="[object Function]",mapTag$5="[object Map]",numberTag$3="[object Number]",objectTag$4="[object Object]",regexpTag$3="[object RegExp]",setTag$5="[object Set]",stringTag$3="[object String]",weakMapTag$2="[object WeakMap]",arrayBufferTag$3="[object ArrayBuffer]",dataViewTag$4="[object DataView]",float32Tag$2="[object Float32Array]",float64Tag$2="[object Float64Array]",int8Tag$2="[object Int8Array]",int16Tag$2="[object Int16Array]",int32Tag$2="[object Int32Array]",uint8Tag$2="[object Uint8Array]",uint8ClampedTag$2="[object Uint8ClampedArray]",uint16Tag$2="[object Uint16Array]",uint32Tag$2="[object Uint32Array]",typedArrayTags={};typedArrayTags[float32Tag$2]=typedArrayTags[float64Tag$2]=typedArrayTags[int8Tag$2]=typedArrayTags[int16Tag$2]=typedArrayTags[int32Tag$2]=typedArrayTags[uint8Tag$2]=typedArrayTags[uint8ClampedTag$2]=typedArrayTags[uint16Tag$2]=typedArrayTags[uint32Tag$2]=!0;typedArrayTags[argsTag$2]=typedArrayTags[arrayTag$2]=typedArrayTags[arrayBufferTag$3]=typedArrayTags[boolTag$3]=typedArrayTags[dataViewTag$4]=typedArrayTags[dateTag$3]=typedArrayTags[errorTag$2]=typedArrayTags[funcTag$1]=typedArrayTags[mapTag$5]=typedArrayTags[numberTag$3]=typedArrayTags[objectTag$4]=typedArrayTags[regexpTag$3]=typedArrayTags[setTag$5]=typedArrayTags[stringTag$3]=typedArrayTags[weakMapTag$2]=!1;function baseIsTypedArray(e){return isObjectLike(e)&&isLength(e.length)&&!!typedArrayTags[baseGetTag(e)]}function baseUnary(e){return function(t){return e(t)}}var freeExports$1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$1=freeExports$1&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$1=freeModule$1&&freeModule$1.exports===freeExports$1,freeProcess=moduleExports$1&&freeGlobal.process,nodeUtil=(function(){try{var e=freeModule$1&&freeModule$1.require&&freeModule$1.require("util").types;return e||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}})(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,objectProto$a=Object.prototype,hasOwnProperty$a=objectProto$a.hasOwnProperty;function arrayLikeKeys(e,t){var n=isArray(e),r=!n&&isArguments(e),i=!n&&!r&&isBuffer(e),y=!n&&!r&&!i&&isTypedArray(e),g=n||r||i||y,k=g?baseTimes(e.length,String):[],$=k.length;for(var V in e)(t||hasOwnProperty$a.call(e,V))&&!(g&&(V=="length"||i&&(V=="offset"||V=="parent")||y&&(V=="buffer"||V=="byteLength"||V=="byteOffset")||isIndex(V,$)))&&k.push(V);return k}function overArg(e,t){return function(n){return e(t(n))}}var nativeKeys=overArg(Object.keys,Object),objectProto$9=Object.prototype,hasOwnProperty$9=objectProto$9.hasOwnProperty;function baseKeys(e){if(!isPrototype(e))return nativeKeys(e);var t=[];for(var n in Object(e))hasOwnProperty$9.call(e,n)&&n!="constructor"&&t.push(n);return t}function keys(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}function nativeKeysIn(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var objectProto$8=Object.prototype,hasOwnProperty$8=objectProto$8.hasOwnProperty;function baseKeysIn(e){if(!isObject$1(e))return nativeKeysIn(e);var t=isPrototype(e),n=[];for(var r in e)r=="constructor"&&(t||!hasOwnProperty$8.call(e,r))||n.push(r);return n}function keysIn(e){return isArrayLike(e)?arrayLikeKeys(e,!0):baseKeysIn(e)}var reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;function isKey(e,t){if(isArray(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||isSymbol(e)?!0:reIsPlainProp.test(e)||!reIsDeepProp.test(e)||t!=null&&e in Object(t)}var nativeCreate=getNative(Object,"create");function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}function hashDelete(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$7=Object.prototype,hasOwnProperty$7=objectProto$7.hasOwnProperty;function hashGet(e){var t=this.__data__;if(nativeCreate){var n=t[e];return n===HASH_UNDEFINED$2?void 0:n}return hasOwnProperty$7.call(t,e)?t[e]:void 0}var objectProto$6=Object.prototype,hasOwnProperty$6=objectProto$6.hasOwnProperty;function hashHas(e){var t=this.__data__;return nativeCreate?t[e]!==void 0:hasOwnProperty$6.call(t,e)}var HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=nativeCreate&&t===void 0?HASH_UNDEFINED$1:t,this}function Hash(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Hash.prototype.clear=hashClear;Hash.prototype.delete=hashDelete;Hash.prototype.get=hashGet;Hash.prototype.has=hashHas;Hash.prototype.set=hashSet;function listCacheClear(){this.__data__=[],this.size=0}function assocIndexOf(e,t){for(var n=e.length;n--;)if(eq(e[n][0],t))return n;return-1}var arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete(e){var t=this.__data__,n=assocIndexOf(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():splice.call(t,n,1),--this.size,!0}function listCacheGet(e){var t=this.__data__,n=assocIndexOf(t,e);return n<0?void 0:t[n][1]}function listCacheHas(e){return assocIndexOf(this.__data__,e)>-1}function listCacheSet(e,t){var n=this.__data__,r=assocIndexOf(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function ListCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}ListCache.prototype.clear=listCacheClear;ListCache.prototype.delete=listCacheDelete;ListCache.prototype.get=listCacheGet;ListCache.prototype.has=listCacheHas;ListCache.prototype.set=listCacheSet;var Map$1=getNative(root,"Map");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map$1||ListCache),string:new Hash}}function isKeyable(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function getMapData(e,t){var n=e.__data__;return isKeyable(t)?n[typeof t=="string"?"string":"hash"]:n.map}function mapCacheDelete(e){var t=getMapData(this,e).delete(e);return this.size-=t?1:0,t}function mapCacheGet(e){return getMapData(this,e).get(e)}function mapCacheHas(e){return getMapData(this,e).has(e)}function mapCacheSet(e,t){var n=getMapData(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function MapCache(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}MapCache.prototype.clear=mapCacheClear;MapCache.prototype.delete=mapCacheDelete;MapCache.prototype.get=mapCacheGet;MapCache.prototype.has=mapCacheHas;MapCache.prototype.set=mapCacheSet;var FUNC_ERROR_TEXT$1="Expected a function";function memoize(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(FUNC_ERROR_TEXT$1);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],y=n.cache;if(y.has(i))return y.get(i);var g=e.apply(this,r);return n.cache=y.set(i,g)||y,g};return n.cache=new(memoize.Cache||MapCache),n}memoize.Cache=MapCache;var MAX_MEMOIZE_SIZE=500;function memoizeCapped(e){var t=memoize(e,function(r){return n.size===MAX_MEMOIZE_SIZE&&n.clear(),r}),n=t.cache;return t}var rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(rePropName,function(n,r,i,y){t.push(i?y.replace(reEscapeChar,"$1"):r||n)}),t});function toString$1(e){return e==null?"":baseToString(e)}function castPath(e,t){return isArray(e)?e:isKey(e,t)?[e]:stringToPath(toString$1(e))}function toKey(e){if(typeof e=="string"||isSymbol(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function baseGet(e,t){t=castPath(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[toKey(t[n++])];return n&&n==r?e:void 0}function get(e,t,n){var r=e==null?void 0:baseGet(e,t);return r===void 0?n:r}function arrayPush(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}var spreadableSymbol=Symbol$1?Symbol$1.isConcatSpreadable:void 0;function isFlattenable(e){return isArray(e)||isArguments(e)||!!(spreadableSymbol&&e&&e[spreadableSymbol])}function baseFlatten(e,t,n,r,i){var y=-1,g=e.length;for(n||(n=isFlattenable),i||(i=[]);++y<g;){var k=e[y];n(k)?arrayPush(i,k):r||(i[i.length]=k)}return i}function flatten(e){var t=e==null?0:e.length;return t?baseFlatten(e):[]}function flatRest(e){return setToString(overRest(e,void 0,flatten),e+"")}var getPrototype=overArg(Object.getPrototypeOf,Object),objectTag$3="[object Object]",funcProto=Function.prototype,objectProto$5=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$5=objectProto$5.hasOwnProperty,objectCtorString=funcToString.call(Object);function isPlainObject(e){if(!isObjectLike(e)||baseGetTag(e)!=objectTag$3)return!1;var t=getPrototype(e);if(t===null)return!0;var n=hasOwnProperty$5.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&funcToString.call(n)==objectCtorString}function baseSlice(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),n=n>i?i:n,n<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var y=Array(i);++r<i;)y[r]=e[r+t];return y}function castArray$1(){if(!arguments.length)return[];var e=arguments[0];return isArray(e)?e:[e]}function baseClamp(e,t,n){return e===e&&(n!==void 0&&(e=e<=n?e:n),t!==void 0&&(e=e>=t?e:t)),e}function clamp(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=toNumber(n),n=n===n?n:0),t!==void 0&&(t=toNumber(t),t=t===t?t:0),baseClamp(toNumber(e),t,n)}function stackClear(){this.__data__=new ListCache,this.size=0}function stackDelete(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function stackGet(e){return this.__data__.get(e)}function stackHas(e){return this.__data__.has(e)}var LARGE_ARRAY_SIZE$1=200;function stackSet(e,t){var n=this.__data__;if(n instanceof ListCache){var r=n.__data__;if(!Map$1||r.length<LARGE_ARRAY_SIZE$1-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new MapCache(r)}return n.set(e,t),this.size=n.size,this}function Stack(e){var t=this.__data__=new ListCache(e);this.size=t.size}Stack.prototype.clear=stackClear;Stack.prototype.delete=stackDelete;Stack.prototype.get=stackGet;Stack.prototype.has=stackHas;Stack.prototype.set=stackSet;function baseAssign(e,t){return e&©Object(t,keys(t),e)}function baseAssignIn(e,t){return e&©Object(t,keysIn(t),e)}var freeExports=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,Buffer$1=moduleExports?root.Buffer:void 0,allocUnsafe=Buffer$1?Buffer$1.allocUnsafe:void 0;function cloneBuffer(e,t){if(t)return e.slice();var n=e.length,r=allocUnsafe?allocUnsafe(n):new e.constructor(n);return e.copy(r),r}function arrayFilter(e,t){for(var n=-1,r=e==null?0:e.length,i=0,y=[];++n<r;){var g=e[n];t(g,n,e)&&(y[i++]=g)}return y}function stubArray(){return[]}var objectProto$4=Object.prototype,propertyIsEnumerable=objectProto$4.propertyIsEnumerable,nativeGetSymbols$1=Object.getOwnPropertySymbols,getSymbols=nativeGetSymbols$1?function(e){return e==null?[]:(e=Object(e),arrayFilter(nativeGetSymbols$1(e),function(t){return propertyIsEnumerable.call(e,t)}))}:stubArray;function copySymbols(e,t){return copyObject(e,getSymbols(e),t)}var nativeGetSymbols=Object.getOwnPropertySymbols,getSymbolsIn=nativeGetSymbols?function(e){for(var t=[];e;)arrayPush(t,getSymbols(e)),e=getPrototype(e);return t}:stubArray;function copySymbolsIn(e,t){return copyObject(e,getSymbolsIn(e),t)}function baseGetAllKeys(e,t,n){var r=t(e);return isArray(e)?r:arrayPush(r,n(e))}function getAllKeys(e){return baseGetAllKeys(e,keys,getSymbols)}function getAllKeysIn(e){return baseGetAllKeys(e,keysIn,getSymbolsIn)}var DataView=getNative(root,"DataView"),Promise$1=getNative(root,"Promise"),Set$1=getNative(root,"Set"),mapTag$4="[object Map]",objectTag$2="[object Object]",promiseTag="[object Promise]",setTag$4="[object Set]",weakMapTag$1="[object WeakMap]",dataViewTag$3="[object DataView]",dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map$1),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag=baseGetTag;(DataView&&getTag(new DataView(new ArrayBuffer(1)))!=dataViewTag$3||Map$1&&getTag(new Map$1)!=mapTag$4||Promise$1&&getTag(Promise$1.resolve())!=promiseTag||Set$1&&getTag(new Set$1)!=setTag$4||WeakMap$1&&getTag(new WeakMap$1)!=weakMapTag$1)&&(getTag=function(e){var t=baseGetTag(e),n=t==objectTag$2?e.constructor:void 0,r=n?toSource(n):"";if(r)switch(r){case dataViewCtorString:return dataViewTag$3;case mapCtorString:return mapTag$4;case promiseCtorString:return promiseTag;case setCtorString:return setTag$4;case weakMapCtorString:return weakMapTag$1}return t});var objectProto$3=Object.prototype,hasOwnProperty$4=objectProto$3.hasOwnProperty;function initCloneArray(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]=="string"&&hasOwnProperty$4.call(e,"index")&&(n.index=e.index,n.input=e.input),n}var Uint8Array$1=root.Uint8Array;function cloneArrayBuffer(e){var t=new e.constructor(e.byteLength);return new Uint8Array$1(t).set(new Uint8Array$1(e)),t}function cloneDataView(e,t){var n=t?cloneArrayBuffer(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var reFlags=/\w*$/;function cloneRegExp(e){var t=new e.constructor(e.source,reFlags.exec(e));return t.lastIndex=e.lastIndex,t}var symbolProto$1=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf$1=symbolProto$1?symbolProto$1.valueOf:void 0;function cloneSymbol(e){return symbolValueOf$1?Object(symbolValueOf$1.call(e)):{}}function cloneTypedArray(e,t){var n=t?cloneArrayBuffer(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var boolTag$2="[object Boolean]",dateTag$2="[object Date]",mapTag$3="[object Map]",numberTag$2="[object Number]",regexpTag$2="[object RegExp]",setTag$3="[object Set]",stringTag$2="[object String]",symbolTag$2="[object Symbol]",arrayBufferTag$2="[object ArrayBuffer]",dataViewTag$2="[object DataView]",float32Tag$1="[object Float32Array]",float64Tag$1="[object Float64Array]",int8Tag$1="[object Int8Array]",int16Tag$1="[object Int16Array]",int32Tag$1="[object Int32Array]",uint8Tag$1="[object Uint8Array]",uint8ClampedTag$1="[object Uint8ClampedArray]",uint16Tag$1="[object Uint16Array]",uint32Tag$1="[object Uint32Array]";function initCloneByTag(e,t,n){var r=e.constructor;switch(t){case arrayBufferTag$2:return cloneArrayBuffer(e);case boolTag$2:case dateTag$2:return new r(+e);case dataViewTag$2:return cloneDataView(e,n);case float32Tag$1:case float64Tag$1:case int8Tag$1:case int16Tag$1:case int32Tag$1:case uint8Tag$1:case uint8ClampedTag$1:case uint16Tag$1:case uint32Tag$1:return cloneTypedArray(e,n);case mapTag$3:return new r;case numberTag$2:case stringTag$2:return new r(e);case regexpTag$2:return cloneRegExp(e);case setTag$3:return new r;case symbolTag$2:return cloneSymbol(e)}}function initCloneObject(e){return typeof e.constructor=="function"&&!isPrototype(e)?baseCreate(getPrototype(e)):{}}var mapTag$2="[object Map]";function baseIsMap(e){return isObjectLike(e)&&getTag(e)==mapTag$2}var nodeIsMap=nodeUtil&&nodeUtil.isMap,isMap=nodeIsMap?baseUnary(nodeIsMap):baseIsMap,setTag$2="[object Set]";function baseIsSet(e){return isObjectLike(e)&&getTag(e)==setTag$2}var nodeIsSet=nodeUtil&&nodeUtil.isSet,isSet=nodeIsSet?baseUnary(nodeIsSet):baseIsSet,CLONE_DEEP_FLAG$2=1,CLONE_FLAT_FLAG$1=2,CLONE_SYMBOLS_FLAG$2=4,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag$1="[object Map]",numberTag$1="[object Number]",objectTag$1="[object Object]",regexpTag$1="[object RegExp]",setTag$1="[object Set]",stringTag$1="[object String]",symbolTag$1="[object Symbol]",weakMapTag="[object WeakMap]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",cloneableTags={};cloneableTags[argsTag$1]=cloneableTags[arrayTag$1]=cloneableTags[arrayBufferTag$1]=cloneableTags[dataViewTag$1]=cloneableTags[boolTag$1]=cloneableTags[dateTag$1]=cloneableTags[float32Tag]=cloneableTags[float64Tag]=cloneableTags[int8Tag]=cloneableTags[int16Tag]=cloneableTags[int32Tag]=cloneableTags[mapTag$1]=cloneableTags[numberTag$1]=cloneableTags[objectTag$1]=cloneableTags[regexpTag$1]=cloneableTags[setTag$1]=cloneableTags[stringTag$1]=cloneableTags[symbolTag$1]=cloneableTags[uint8Tag]=cloneableTags[uint8ClampedTag]=cloneableTags[uint16Tag]=cloneableTags[uint32Tag]=!0;cloneableTags[errorTag$1]=cloneableTags[funcTag]=cloneableTags[weakMapTag]=!1;function baseClone(e,t,n,r,i,y){var g,k=t&CLONE_DEEP_FLAG$2,$=t&CLONE_FLAT_FLAG$1,V=t&CLONE_SYMBOLS_FLAG$2;if(n&&(g=i?n(e,r,i,y):n(e)),g!==void 0)return g;if(!isObject$1(e))return e;var L=isArray(e);if(L){if(g=initCloneArray(e),!k)return copyArray(e,g)}else{var re=getTag(e),ie=re==funcTag||re==genTag;if(isBuffer(e))return cloneBuffer(e,k);if(re==objectTag$1||re==argsTag$1||ie&&!i){if(g=$||ie?{}:initCloneObject(e),!k)return $?copySymbolsIn(e,baseAssignIn(g,e)):copySymbols(e,baseAssign(g,e))}else{if(!cloneableTags[re])return i?e:{};g=initCloneByTag(e,re,k)}}y||(y=new Stack);var oe=y.get(e);if(oe)return oe;y.set(e,g),isSet(e)?e.forEach(function(le){g.add(baseClone(le,t,n,le,e,y))}):isMap(e)&&e.forEach(function(le,Ce){g.set(Ce,baseClone(le,t,n,Ce,e,y))});var z=V?$?getAllKeysIn:getAllKeys:$?keysIn:keys,j=L?void 0:z(e);return arrayEach(j||e,function(le,Ce){j&&(Ce=le,le=e[Ce]),assignValue(g,Ce,baseClone(le,t,n,Ce,e,y))}),g}var CLONE_DEEP_FLAG$1=1,CLONE_SYMBOLS_FLAG$1=4;function cloneDeep(e){return baseClone(e,CLONE_DEEP_FLAG$1|CLONE_SYMBOLS_FLAG$1)}var HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd(e){return this.__data__.set(e,HASH_UNDEFINED),this}function setCacheHas(e){return this.__data__.has(e)}function SetCache(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new MapCache;++t<n;)this.add(e[t])}SetCache.prototype.add=SetCache.prototype.push=setCacheAdd;SetCache.prototype.has=setCacheHas;function arraySome(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}function cacheHas(e,t){return e.has(t)}var COMPARE_PARTIAL_FLAG$5=1,COMPARE_UNORDERED_FLAG$3=2;function equalArrays(e,t,n,r,i,y){var g=n&COMPARE_PARTIAL_FLAG$5,k=e.length,$=t.length;if(k!=$&&!(g&&$>k))return!1;var V=y.get(e),L=y.get(t);if(V&&L)return V==t&&L==e;var re=-1,ie=!0,oe=n&COMPARE_UNORDERED_FLAG$3?new SetCache:void 0;for(y.set(e,t),y.set(t,e);++re<k;){var z=e[re],j=t[re];if(r)var le=g?r(j,z,re,t,e,y):r(z,j,re,e,t,y);if(le!==void 0){if(le)continue;ie=!1;break}if(oe){if(!arraySome(t,function(Ce,he){if(!cacheHas(oe,he)&&(z===Ce||i(z,Ce,n,r,y)))return oe.push(he)})){ie=!1;break}}else if(!(z===j||i(z,j,n,r,y))){ie=!1;break}}return y.delete(e),y.delete(t),ie}function mapToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(r,i){n[++t]=[i,r]}),n}function setToArray(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var COMPARE_PARTIAL_FLAG$4=1,COMPARE_UNORDERED_FLAG$2=2,boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",mapTag="[object Map]",numberTag="[object Number]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag(e,t,n,r,i,y,g){switch(n){case dataViewTag:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case arrayBufferTag:return!(e.byteLength!=t.byteLength||!y(new Uint8Array$1(e),new Uint8Array$1(t)));case boolTag:case dateTag:case numberTag:return eq(+e,+t);case errorTag:return e.name==t.name&&e.message==t.message;case regexpTag:case stringTag:return e==t+"";case mapTag:var k=mapToArray;case setTag:var $=r&COMPARE_PARTIAL_FLAG$4;if(k||(k=setToArray),e.size!=t.size&&!$)return!1;var V=g.get(e);if(V)return V==t;r|=COMPARE_UNORDERED_FLAG$2,g.set(e,t);var L=equalArrays(k(e),k(t),r,i,y,g);return g.delete(e),L;case symbolTag:if(symbolValueOf)return symbolValueOf.call(e)==symbolValueOf.call(t)}return!1}var COMPARE_PARTIAL_FLAG$3=1,objectProto$2=Object.prototype,hasOwnProperty$3=objectProto$2.hasOwnProperty;function equalObjects(e,t,n,r,i,y){var g=n&COMPARE_PARTIAL_FLAG$3,k=getAllKeys(e),$=k.length,V=getAllKeys(t),L=V.length;if($!=L&&!g)return!1;for(var re=$;re--;){var ie=k[re];if(!(g?ie in t:hasOwnProperty$3.call(t,ie)))return!1}var oe=y.get(e),z=y.get(t);if(oe&&z)return oe==t&&z==e;var j=!0;y.set(e,t),y.set(t,e);for(var le=g;++re<$;){ie=k[re];var Ce=e[ie],he=t[ie];if(r)var pe=g?r(he,Ce,ie,t,e,y):r(Ce,he,ie,e,t,y);if(!(pe===void 0?Ce===he||i(Ce,he,n,r,y):pe)){j=!1;break}le||(le=ie=="constructor")}if(j&&!le){var ae=e.constructor,ue=t.constructor;ae!=ue&&"constructor"in e&&"constructor"in t&&!(typeof ae=="function"&&ae instanceof ae&&typeof ue=="function"&&ue instanceof ue)&&(j=!1)}return y.delete(e),y.delete(t),j}var COMPARE_PARTIAL_FLAG$2=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto$1=Object.prototype,hasOwnProperty$2=objectProto$1.hasOwnProperty;function baseIsEqualDeep(e,t,n,r,i,y){var g=isArray(e),k=isArray(t),$=g?arrayTag:getTag(e),V=k?arrayTag:getTag(t);$=$==argsTag?objectTag:$,V=V==argsTag?objectTag:V;var L=$==objectTag,re=V==objectTag,ie=$==V;if(ie&&isBuffer(e)){if(!isBuffer(t))return!1;g=!0,L=!1}if(ie&&!L)return y||(y=new Stack),g||isTypedArray(e)?equalArrays(e,t,n,r,i,y):equalByTag(e,t,$,n,r,i,y);if(!(n&COMPARE_PARTIAL_FLAG$2)){var oe=L&&hasOwnProperty$2.call(e,"__wrapped__"),z=re&&hasOwnProperty$2.call(t,"__wrapped__");if(oe||z){var j=oe?e.value():e,le=z?t.value():t;return y||(y=new Stack),i(j,le,n,r,y)}}return ie?(y||(y=new Stack),equalObjects(e,t,n,r,i,y)):!1}function baseIsEqual(e,t,n,r,i){return e===t?!0:e==null||t==null||!isObjectLike(e)&&!isObjectLike(t)?e!==e&&t!==t:baseIsEqualDeep(e,t,n,r,baseIsEqual,i)}var COMPARE_PARTIAL_FLAG$1=1,COMPARE_UNORDERED_FLAG$1=2;function baseIsMatch(e,t,n,r){var i=n.length,y=i;if(e==null)return!y;for(e=Object(e);i--;){var g=n[i];if(g[2]?g[1]!==e[g[0]]:!(g[0]in e))return!1}for(;++i<y;){g=n[i];var k=g[0],$=e[k],V=g[1];if(g[2]){if($===void 0&&!(k in e))return!1}else{var L=new Stack,re;if(!(re===void 0?baseIsEqual(V,$,COMPARE_PARTIAL_FLAG$1|COMPARE_UNORDERED_FLAG$1,r,L):re))return!1}}return!0}function isStrictComparable(e){return e===e&&!isObject$1(e)}function getMatchData(e){for(var t=keys(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,isStrictComparable(i)]}return t}function matchesStrictComparable(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}function baseMatches(e){var t=getMatchData(e);return t.length==1&&t[0][2]?matchesStrictComparable(t[0][0],t[0][1]):function(n){return n===e||baseIsMatch(n,e,t)}}function baseHasIn(e,t){return e!=null&&t in Object(e)}function hasPath(e,t,n){t=castPath(t,e);for(var r=-1,i=t.length,y=!1;++r<i;){var g=toKey(t[r]);if(!(y=e!=null&&n(e,g)))break;e=e[g]}return y||++r!=i?y:(i=e==null?0:e.length,!!i&&isLength(i)&&isIndex(g,i)&&(isArray(e)||isArguments(e)))}function hasIn(e,t){return e!=null&&hasPath(e,t,baseHasIn)}var COMPARE_PARTIAL_FLAG=1,COMPARE_UNORDERED_FLAG=2;function baseMatchesProperty(e,t){return isKey(e)&&isStrictComparable(t)?matchesStrictComparable(toKey(e),t):function(n){var r=get(n,e);return r===void 0&&r===t?hasIn(n,e):baseIsEqual(t,r,COMPARE_PARTIAL_FLAG|COMPARE_UNORDERED_FLAG)}}function baseProperty(e){return function(t){return t?.[e]}}function basePropertyDeep(e){return function(t){return baseGet(t,e)}}function property(e){return isKey(e)?baseProperty(toKey(e)):basePropertyDeep(e)}function baseIteratee(e){return typeof e=="function"?e:e==null?identity:typeof e=="object"?isArray(e)?baseMatchesProperty(e[0],e[1]):baseMatches(e):property(e)}function createBaseFor(e){return function(t,n,r){for(var i=-1,y=Object(t),g=r(t),k=g.length;k--;){var $=g[++i];if(n(y[$],$,y)===!1)break}return t}}var baseFor=createBaseFor();function baseForOwn(e,t){return e&&baseFor(e,t,keys)}function createBaseEach(e,t){return function(n,r){if(n==null)return n;if(!isArrayLike(n))return e(n,r);for(var i=n.length,y=-1,g=Object(n);++y<i&&r(g[y],y,g)!==!1;);return n}}var baseEach=createBaseEach(baseForOwn),now=function(){return root.Date.now()},FUNC_ERROR_TEXT="Expected a function",nativeMax=Math.max,nativeMin=Math.min;function debounce$2(e,t,n){var r,i,y,g,k,$,V=0,L=!1,re=!1,ie=!0;if(typeof e!="function")throw new TypeError(FUNC_ERROR_TEXT);t=toNumber(t)||0,isObject$1(n)&&(L=!!n.leading,re="maxWait"in n,y=re?nativeMax(toNumber(n.maxWait)||0,t):y,ie="trailing"in n?!!n.trailing:ie);function oe(de){var _e=r,xe=i;return r=i=void 0,V=de,g=e.apply(xe,_e),g}function z(de){return V=de,k=setTimeout(Ce,t),L?oe(de):g}function j(de){var _e=de-$,xe=de-V,ze=t-_e;return re?nativeMin(ze,y-xe):ze}function le(de){var _e=de-$,xe=de-V;return $===void 0||_e>=t||_e<0||re&&xe>=y}function Ce(){var de=now();if(le(de))return he(de);k=setTimeout(Ce,j(de))}function he(de){return k=void 0,ie&&r?oe(de):(r=i=void 0,g)}function pe(){k!==void 0&&clearTimeout(k),V=0,r=$=i=k=void 0}function ae(){return k===void 0?g:he(now())}function ue(){var de=now(),_e=le(de);if(r=arguments,i=this,$=de,_e){if(k===void 0)return z($);if(re)return clearTimeout(k),k=setTimeout(Ce,t),oe($)}return k===void 0&&(k=setTimeout(Ce,t)),g}return ue.cancel=pe,ue.flush=ae,ue}function assignMergeValue(e,t,n){(n!==void 0&&!eq(e[t],n)||n===void 0&&!(t in e))&&baseAssignValue(e,t,n)}function isArrayLikeObject(e){return isObjectLike(e)&&isArrayLike(e)}function safeGet(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function toPlainObject(e){return copyObject(e,keysIn(e))}function baseMergeDeep(e,t,n,r,i,y,g){var k=safeGet(e,n),$=safeGet(t,n),V=g.get($);if(V){assignMergeValue(e,n,V);return}var L=y?y(k,$,n+"",e,t,g):void 0,re=L===void 0;if(re){var ie=isArray($),oe=!ie&&isBuffer($),z=!ie&&!oe&&isTypedArray($);L=$,ie||oe||z?isArray(k)?L=k:isArrayLikeObject(k)?L=copyArray(k):oe?(re=!1,L=cloneBuffer($,!0)):z?(re=!1,L=cloneTypedArray($,!0)):L=[]:isPlainObject($)||isArguments($)?(L=k,isArguments(k)?L=toPlainObject(k):(!isObject$1(k)||isFunction(k))&&(L=initCloneObject($))):re=!1}re&&(g.set($,L),i(L,$,r,y,g),g.delete($)),assignMergeValue(e,n,L)}function baseMerge(e,t,n,r,i){e!==t&&baseFor(t,function(y,g){if(i||(i=new Stack),isObject$1(y))baseMergeDeep(e,t,g,n,baseMerge,r,i);else{var k=r?r(safeGet(e,g),y,g+"",e,t,i):void 0;k===void 0&&(k=y),assignMergeValue(e,g,k)}},keysIn)}function last(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function findLastIndex(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var i=r-1;return baseFindIndex(e,baseIteratee(t),i,!0)}function baseMap(e,t){var n=-1,r=isArrayLike(e)?Array(e.length):[];return baseEach(e,function(i,y,g){r[++n]=t(i,y,g)}),r}function map(e,t){var n=isArray(e)?arrayMap:baseMap;return n(e,baseIteratee(t))}function flatMap(e,t){return baseFlatten(map(e,t))}function fromPairs(e){for(var t=-1,n=e==null?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r}function parent(e,t){return t.length<2?e:baseGet(e,baseSlice(t,0,-1))}function isEqual(e,t){return baseIsEqual(e,t)}function isNil(e){return e==null}function isNull(e){return e===null}function isUndefined$1(e){return e===void 0}var merge=createAssigner(function(e,t,n){baseMerge(e,t,n)}),objectProto=Object.prototype,hasOwnProperty$1=objectProto.hasOwnProperty;function baseUnset(e,t){t=castPath(t,e);var n=-1,r=t.length;if(!r)return!0;for(var i=e==null||typeof e!="object"&&typeof e!="function";++n<r;){var y=t[n];if(typeof y=="string"){if(y==="__proto__"&&!hasOwnProperty$1.call(e,"__proto__"))return!1;if(y==="constructor"&&n+1<r&&typeof t[n+1]=="string"&&t[n+1]==="prototype"){if(i&&n===0)continue;return!1}}}var g=parent(e,t);return g==null||delete g[toKey(last(t))]}function customOmitClone(e){return isPlainObject(e)?void 0:e}var CLONE_DEEP_FLAG=1,CLONE_FLAT_FLAG=2,CLONE_SYMBOLS_FLAG=4,omit=flatRest(function(e,t){var n={};if(e==null)return n;var r=!1;t=arrayMap(t,function(y){return y=castPath(y,e),r||(r=y.length>1),y}),copyObject(e,getAllKeysIn(e),n),r&&(n=baseClone(n,CLONE_DEEP_FLAG|CLONE_FLAT_FLAG|CLONE_SYMBOLS_FLAG,customOmitClone));for(var i=t.length;i--;)baseUnset(n,t[i]);return n});function baseSet(e,t,n,r){if(!isObject$1(e))return e;t=castPath(t,e);for(var i=-1,y=t.length,g=y-1,k=e;k!=null&&++i<y;){var $=toKey(t[i]),V=n;if($==="__proto__"||$==="constructor"||$==="prototype")return e;if(i!=g){var L=k[$];V=void 0,V===void 0&&(V=isObject$1(L)?L:isIndex(t[i+1])?[]:{})}assignValue(k,$,V),k=k[$]}return e}function basePickBy(e,t,n){for(var r=-1,i=t.length,y={};++r<i;){var g=t[r],k=baseGet(e,g);n(k,g)&&baseSet(y,castPath(g,e),k)}return y}function basePick(e,t){return basePickBy(e,t,function(n,r){return hasIn(e,r)})}var pick=flatRest(function(e,t){return e==null?{}:basePick(e,t)});function set(e,t,n){return e==null?e:baseSet(e,t,n)}var INFINITY=1/0,createSet=Set$1&&1/setToArray(new Set$1([,-0]))[1]==INFINITY?function(e){return new Set$1(e)}:noop$1,LARGE_ARRAY_SIZE=200;function baseUniq(e,t,n){var r=-1,i=arrayIncludes,y=e.length,g=!0,k=[],$=k;if(y>=LARGE_ARRAY_SIZE){var V=createSet(e);if(V)return setToArray(V);g=!1,i=cacheHas,$=new SetCache}else $=k;e:for(;++r<y;){var L=e[r],re=L;if(L=L!==0?L:0,g&&re===re){for(var ie=$.length;ie--;)if($[ie]===re)continue e;k.push(L)}else i($,re,n)||($!==k&&$.push(re),k.push(L))}return k}var union=baseRest(function(e){return baseUniq(baseFlatten(e,1,isArrayLikeObject,!0))});const isUndefined=e=>e===void 0,isBoolean=e=>typeof e=="boolean",isNumber=e=>typeof e=="number",isEmpty=e=>!e&&e!==0||isArray$1(e)&&e.length===0||isObject$2(e)&&!Object.keys(e).length,isElement$2=e=>typeof Element>"u"?!1:e instanceof Element,isPropAbsent=e=>isNil(e),isStringNumber=e=>isString(e)?!Number.isNaN(Number(e)):!1;function computedEager(e,t){var n;const r=vue.shallowRef();return vue.watchEffect(()=>{r.value=e()},{...t,flush:(n=void 0)!=null?n:"sync"}),vue.readonly(r)}function tryOnScopeDispose(e){return vue.getCurrentScope()?(vue.onScopeDispose(e),!0):!1}function toValue(e){return typeof e=="function"?e():vue.unref(e)}const isClient=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const isDef=e=>typeof e<"u",notNullish=e=>e!=null,toString=Object.prototype.toString,isObject=e=>toString.call(e)==="[object Object]",noop=()=>{},isIOS=getIsIOS();function getIsIOS(){var e,t;return isClient&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function createFilterWrapper(e,t){function n(...r){return new Promise((i,y)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(i).catch(y)})}return n}function debounceFilter(e,t={}){let n,r,i=noop;const y=k=>{clearTimeout(k),i(),i=noop};return k=>{const $=toValue(e),V=toValue(t.maxWait);return n&&y(n),$<=0||V!==void 0&&V<=0?(r&&(y(r),r=null),Promise.resolve(k())):new Promise((L,re)=>{i=t.rejectOnCancel?re:L,V&&!r&&(r=setTimeout(()=>{n&&y(n),r=null,L(k())},V)),n=setTimeout(()=>{r&&y(r),r=null,L(k())},$)})}}function useDebounceFn(e,t=200,n={}){return createFilterWrapper(debounceFilter(t,n),e)}function unrefElement(e){var t;const n=toValue(e);return(t=n?.$el)!=null?t:n}const defaultWindow=isClient?window:void 0;function useEventListener(...e){let t,n,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,i]=e,t=defaultWindow):[t,n,r,i]=e,!t)return noop;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const y=[],g=()=>{y.forEach(L=>L()),y.length=0},k=(L,re,ie,oe)=>(L.addEventListener(re,ie,oe),()=>L.removeEventListener(re,ie,oe)),$=vue.watch(()=>[unrefElement(t),toValue(i)],([L,re])=>{if(g(),!L)return;const ie=isObject(re)?{...re}:re;y.push(...n.flatMap(oe=>r.map(z=>k(L,oe,z,ie))))},{immediate:!0,flush:"post"}),V=()=>{$(),g()};return tryOnScopeDispose(V),V}let _iOSWorkaround=!1;function onClickOutside(e,t,n={}){const{window:r=defaultWindow,ignore:i=[],capture:y=!0,detectIframe:g=!1}=n;if(!r)return noop;isIOS&&!_iOSWorkaround&&(_iOSWorkaround=!0,Array.from(r.document.body.children).forEach(ie=>ie.addEventListener("click",noop)),r.document.documentElement.addEventListener("click",noop));let k=!0;const $=ie=>i.some(oe=>{if(typeof oe=="string")return Array.from(r.document.querySelectorAll(oe)).some(z=>z===ie.target||ie.composedPath().includes(z));{const z=unrefElement(oe);return z&&(ie.target===z||ie.composedPath().includes(z))}}),L=[useEventListener(r,"click",ie=>{const oe=unrefElement(e);if(!(!oe||oe===ie.target||ie.composedPath().includes(oe))){if(ie.detail===0&&(k=!$(ie)),!k){k=!0;return}t(ie)}},{passive:!0,capture:y}),useEventListener(r,"pointerdown",ie=>{const oe=unrefElement(e);k=!$(ie)&&!!(oe&&!ie.composedPath().includes(oe))},{passive:!0}),g&&useEventListener(r,"blur",ie=>{setTimeout(()=>{var oe;const z=unrefElement(e);((oe=r.document.activeElement)==null?void 0:oe.tagName)==="IFRAME"&&!z?.contains(r.document.activeElement)&&t(ie)},0)})].filter(Boolean);return()=>L.forEach(ie=>ie())}function useMounted(){const e=vue.ref(!1),t=vue.getCurrentInstance();return t&&vue.onMounted(()=>{e.value=!0},t),e}function useSupported(e){const t=useMounted();return vue.computed(()=>(t.value,!!e()))}function useMutationObserver(e,t,n={}){const{window:r=defaultWindow,...i}=n;let y;const g=useSupported(()=>r&&"MutationObserver"in r),k=()=>{y&&(y.disconnect(),y=void 0)},$=vue.computed(()=>{const ie=toValue(e),oe=(Array.isArray(ie)?ie:[ie]).map(unrefElement).filter(notNullish);return new Set(oe)}),V=vue.watch(()=>$.value,ie=>{k(),g.value&&ie.size&&(y=new MutationObserver(t),ie.forEach(oe=>y.observe(oe,i)))},{immediate:!0,flush:"post"}),L=()=>y?.takeRecords(),re=()=>{k(),V()};return tryOnScopeDispose(re),{isSupported:g,stop:re,takeRecords:L}}function cloneFnJSON(e){return JSON.parse(JSON.stringify(e))}function useResizeObserver(e,t,n={}){const{window:r=defaultWindow,...i}=n;let y;const g=useSupported(()=>r&&"ResizeObserver"in r),k=()=>{y&&(y.disconnect(),y=void 0)},$=vue.computed(()=>Array.isArray(e)?e.map(re=>unrefElement(re)):[unrefElement(e)]),V=vue.watch($,re=>{if(k(),g.value&&r){y=new ResizeObserver(t);for(const ie of re)ie&&y.observe(ie,i)}},{immediate:!0,flush:"post"}),L=()=>{k(),V()};return tryOnScopeDispose(L),{isSupported:g,stop:L}}function useVModel(e,t,n,r={}){var i,y,g;const{clone:k=!1,passive:$=!1,eventName:V,deep:L=!1,defaultValue:re,shouldEmit:ie}=r,oe=vue.getCurrentInstance(),z=oe?.emit||((i=oe?.$emit)==null?void 0:i.bind(oe))||((g=(y=oe?.proxy)==null?void 0:y.$emit)==null?void 0:g.bind(oe?.proxy));let j=V;j=j||`update:${t.toString()}`;const le=pe=>k?typeof k=="function"?k(pe):cloneFnJSON(pe):pe,Ce=()=>isDef(e[t])?le(e[t]):re,he=pe=>{ie?ie(pe)&&z(j,pe):z(j,pe)};if($){const pe=Ce(),ae=vue.ref(pe);let ue=!1;return vue.watch(()=>e[t],de=>{ue||(ue=!0,ae.value=le(de),vue.nextTick(()=>ue=!1))}),vue.watch(ae,de=>{!ue&&(de!==e[t]||L)&&he(de)},{deep:L}),ae}else return vue.computed({get(){return Ce()},set(pe){he(pe)}})}class ElementPlusError extends Error{constructor(t){super(t),this.name="ElementPlusError"}}function throwError(e,t){throw new ElementPlusError(`[${e}] ${t}`)}function debugWarn(e,t){if(process.env.NODE_ENV!=="production"){const n=isString(e)?new ElementPlusError(`[${e}] ${t}`):e;console.warn(n)}}const initial={current:0},zIndex=vue.ref(0),defaultInitialZIndex=2e3,ZINDEX_INJECTION_KEY=Symbol("elZIndexContextKey"),zIndexContextKey=Symbol("zIndexContextKey"),useZIndex=e=>{const t=vue.getCurrentInstance()?vue.inject(ZINDEX_INJECTION_KEY,initial):initial,n=vue.getCurrentInstance()?vue.inject(zIndexContextKey,void 0):void 0,r=vue.computed(()=>{const g=vue.unref(n);return isNumber(g)?g:defaultInitialZIndex}),i=vue.computed(()=>r.value+zIndex.value),y=()=>(t.current++,zIndex.value=t.current,i.value);return!isClient&&!vue.inject(ZINDEX_INJECTION_KEY)&&debugWarn("ZIndexInjection",`Looks like you are using server rendering, you must provide a z-index provider to ensure the hydration process to be succeed
|
|
31
31
|
usage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })`),{initialZIndex:r,currentZIndex:i,nextZIndex:y}};var English={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value",alphaDescription:"alpha {alpha}, current color is {color}",hueLabel:"pick hue value",hueDescription:"hue {hue}, current color is {color}",svLabel:"pick saturation and brightness value",svDescription:"saturation {saturation}, brightness {brightness}, current color is {color}",predefineDescription:"select {value} as the color"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum",selectAllLabel:"Select all rows",selectRowLabel:"Select this row",expandRowLabel:"Expand this row",collapseRowLabel:"Collapse this row",sortLabel:"Sort by {column}",filterLabel:"Filter by {column}"},tag:{close:"Close this tag"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"}}};const buildTranslator=e=>(t,n)=>translate(t,n,vue.unref(e)),translate=(e,t,n)=>get(n,e,e).replace(/\{(\w+)\}/g,(r,i)=>{var y;return`${(y=t?.[i])!=null?y:`{${i}}`}`}),buildLocaleContext=e=>{const t=vue.computed(()=>vue.unref(e).name),n=vue.isRef(e)?e:vue.ref(e);return{lang:t,locale:n,t:buildTranslator(e)}},localeContextKey=Symbol("localeContextKey"),useLocale=e=>{const t=vue.inject(localeContextKey,vue.ref());return buildLocaleContext(vue.computed(()=>t.value||English))},epPropKey="__epPropKey",definePropType=e=>e,isEpProp=e=>isObject$2(e)&&!!e[epPropKey],buildProp=(e,t)=>{if(!isObject$2(e)||isEpProp(e))return e;const{values:n,required:r,default:i,type:y,validator:g}=e,$={type:y,required:!!r,validator:n||g?V=>{let L=!1,re=[];if(n&&(re=Array.from(n),hasOwn(e,"default")&&re.push(i),L||(L=re.includes(V))),g&&(L||(L=g(V))),!L&&re.length>0){const ie=[...new Set(re)].map(oe=>JSON.stringify(oe)).join(", ");vue.warn(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${ie}], got value ${JSON.stringify(V)}.`)}return L}:void 0,[epPropKey]:!0};return hasOwn(e,"default")&&($.default=i),$},buildProps=e=>fromPairs(Object.entries(e).map(([t,n])=>[t,buildProp(n,t)])),componentSizes=["","default","small","large"],useSizeProp=buildProp({type:String,values:componentSizes,required:!1}),SIZE_INJECTION_KEY=Symbol("size"),useGlobalSize=()=>{const e=vue.inject(SIZE_INJECTION_KEY,{});return vue.computed(()=>vue.unref(e.size)||"")},emptyValuesContextKey=Symbol("emptyValuesContextKey"),SCOPE$5="use-empty-values",DEFAULT_EMPTY_VALUES=["",void 0,null],DEFAULT_VALUE_ON_CLEAR=void 0,useEmptyValuesProps=buildProps({emptyValues:Array,valueOnClear:{type:definePropType([String,Number,Boolean,Function]),default:void 0,validator:e=>(e=isFunction$1(e)?e():e,isArray$1(e)?e.every(t=>!t):!e)}}),useEmptyValues=(e,t)=>{const n=vue.getCurrentInstance()?vue.inject(emptyValuesContextKey,vue.ref({})):vue.ref({}),r=vue.computed(()=>e.emptyValues||n.value.emptyValues||DEFAULT_EMPTY_VALUES),i=vue.computed(()=>isFunction$1(e.valueOnClear)?e.valueOnClear():e.valueOnClear!==void 0?e.valueOnClear:isFunction$1(n.value.valueOnClear)?n.value.valueOnClear():n.value.valueOnClear!==void 0?n.value.valueOnClear:t!==void 0?t:DEFAULT_VALUE_ON_CLEAR),y=g=>{let k=!0;return isArray$1(g)?k=r.value.some($=>isEqual(g,$)):k=r.value.includes(g),k};return y(i.value)||debugWarn(SCOPE$5,"value-on-clear should be a value of empty-values"),{emptyValues:r,valueOnClear:i,isEmptyValue:y}},entriesOf=e=>Object.entries(e),getProp=(e,t,n)=>({get value(){return get(e,t,n)},set value(r){set(e,t,r)}}),teleportProps=buildProps({to:{type:definePropType([String,Object]),required:!0},disabled:Boolean});var _export_sfc=(e,t)=>{const n=e.__vccOpts||e;for(const[r,i]of t)n[r]=i;return n};const _sfc_main$1M=vue.defineComponent({__name:"teleport",props:teleportProps,setup(e){return(t,n)=>t.disabled?vue.renderSlot(t.$slots,"default",{key:0}):(vue.openBlock(),vue.createBlock(vue.Teleport,{key:1,to:t.to},[vue.renderSlot(t.$slots,"default")],8,["to"]))}});var Teleport=_export_sfc(_sfc_main$1M,[["__file","/home/runner/work/element-plus/element-plus/packages/components/teleport/src/teleport.vue"]]);const withInstall=(e,t)=>{if(e.install=n=>{for(const r of[e,...Object.values(t??{})])n.component(r.name,r)},t)for(const[n,r]of Object.entries(t))e[n]=r;return e},withNoopInstall=e=>(e.install=NOOP,e),ElTeleport=withInstall(Teleport),UPDATE_MODEL_EVENT="update:modelValue",CHANGE_EVENT="change",INPUT_EVENT="input",rAF=e=>isClient?window.requestAnimationFrame(e):setTimeout(e,16),SCOPE$4="utils/dom/style",classNameToArray=(e="")=>e.split(" ").filter(t=>!!t.trim()),hasClass=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},addClass=(e,t)=>{!e||!t.trim()||e.classList.add(...classNameToArray(t))},removeClass=(e,t)=>{!e||!t.trim()||e.classList.remove(...classNameToArray(t))},getStyle=(e,t)=>{var n;if(!isClient||!e||!t)return"";let r=camelize(t);r==="float"&&(r="cssFloat");try{const i=e.style[r];if(i)return i;const y=(n=document.defaultView)==null?void 0:n.getComputedStyle(e,"");return y?y[r]:""}catch{return e.style[r]}};function addUnit(e,t="px"){if(!e&&e!==0)return"";if(isNumber(e)||isStringNumber(e))return`${e}${t}`;if(isString(e))return e;debugWarn(SCOPE$4,"binding value must be a string or number")}function scrollIntoView(e,t){if(!isClient)return;if(!t){e.scrollTop=0;return}const n=[];let r=t.offsetParent;for(;r!==null&&e!==r&&e.contains(r);)n.push(r),r=r.offsetParent;const i=t.offsetTop+n.reduce(($,V)=>$+V.offsetTop,0),y=i+t.offsetHeight,g=e.scrollTop,k=g+e.clientHeight;i<g?e.scrollTop=i:y>k&&(e.scrollTop=y-e.clientHeight)}const iconProps=buildProps({size:{type:definePropType([Number,String])},color:{type:String}}),_sfc_main$1L=vue.defineComponent({name:"ElIcon",inheritAttrs:!1,__name:"icon",props:iconProps,setup(e){const t=e,n=useNamespace("icon"),r=vue.computed(()=>{const{size:i,color:y}=t,g=addUnit(i);return!g&&!y?{}:{fontSize:g,"--color":y}});return(i,y)=>(vue.openBlock(),vue.createElementBlock("i",vue.mergeProps({class:vue.unref(n).b(),style:r.value},i.$attrs),[vue.renderSlot(i.$slots,"default")],16))}});var Icon=_export_sfc(_sfc_main$1L,[["__file","/home/runner/work/element-plus/element-plus/packages/components/icon/src/icon.vue"]]);const ElIcon=withInstall(Icon);var _sfc_main6=vue.defineComponent({name:"ArrowDown",__name:"arrow-down",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),arrow_down_default=_sfc_main6,_sfc_main8=vue.defineComponent({name:"ArrowLeft",__name:"arrow-left",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.59 30.59 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.59 30.59 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0"})]))}}),arrow_left_default=_sfc_main8,_sfc_main10=vue.defineComponent({name:"ArrowRight",__name:"arrow-right",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M340.864 149.312a30.59 30.59 0 0 0 0 42.752L652.736 512 340.864 831.872a30.59 30.59 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"})]))}}),arrow_right_default=_sfc_main10,_sfc_main12=vue.defineComponent({name:"ArrowUp",__name:"arrow-up",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0"})]))}}),arrow_up_default=_sfc_main12,_sfc_main29=vue.defineComponent({name:"Calendar",__name:"calendar",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64"})]))}}),calendar_default=_sfc_main29,_sfc_main43=vue.defineComponent({name:"Check",__name:"check",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),check_default=_sfc_main43,_sfc_main49=vue.defineComponent({name:"CircleCheck",__name:"circle-check",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),vue.createElementVNode("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752z"})]))}}),circle_check_default=_sfc_main49,_sfc_main51=vue.defineComponent({name:"CircleClose",__name:"circle-close",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248z"}),vue.createElementVNode("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"})]))}}),circle_close_default=_sfc_main51,_sfc_main54=vue.defineComponent({name:"Clock",__name:"clock",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),vue.createElementVNode("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"}),vue.createElementVNode("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32"})]))}}),clock_default=_sfc_main54,_sfc_main56=vue.defineComponent({name:"Close",__name:"close",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),close_default=_sfc_main56,_sfc_main72=vue.defineComponent({name:"DArrowLeft",__name:"d-arrow-left",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672zm256 0a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672z"})]))}}),d_arrow_left_default=_sfc_main72,_sfc_main73=vue.defineComponent({name:"DArrowRight",__name:"d-arrow-right",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L764.736 512 452.864 192a30.59 30.59 0 0 1 0-42.688m-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L508.736 512 196.864 192a30.59 30.59 0 0 1 0-42.688"})]))}}),d_arrow_right_default=_sfc_main73,_sfc_main80=vue.defineComponent({name:"Delete",__name:"delete",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),delete_default=_sfc_main80,_sfc_main90=vue.defineComponent({name:"Document",__name:"document",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),document_default=_sfc_main90,_sfc_main133=vue.defineComponent({name:"Hide",__name:"hide",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4s-12.8-9.6-22.4-9.6-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176S0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4 12.8 9.6 22.4 9.6 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4m-646.4 528Q115.2 579.2 76.8 512q43.2-72 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4m140.8-96Q352 555.2 352 512c0-44.8 16-83.2 48-112s67.2-48 112-48c28.8 0 54.4 6.4 73.6 19.2zM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6q-43.2 72-153.6 172.8c-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176S1024 528 1024 512s-48.001-73.6-134.401-176"}),vue.createElementVNode("path",{fill:"currentColor",d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112s-67.2 48-112 48"})]))}}),hide_default=_sfc_main133,_sfc_main150=vue.defineComponent({name:"Loading",__name:"loading",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),loading_default=_sfc_main150,_sfc_main169=vue.defineComponent({name:"Minus",__name:"minus",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64"})]))}}),minus_default=_sfc_main169,_sfc_main174=vue.defineComponent({name:"MoreFilled",__name:"more-filled",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),more_filled_default=_sfc_main174,_sfc_main201=vue.defineComponent({name:"Plus",__name:"plus",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),plus_default=_sfc_main201,_sfc_main283=vue.defineComponent({name:"View",__name:"view",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),view_default=_sfc_main283,_sfc_main287=vue.defineComponent({name:"WarningFilled",__name:"warning-filled",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 192a58.43 58.43 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.43 58.43 0 0 0 512 256m0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4"})]))}}),warning_filled_default=_sfc_main287,_sfc_main292=vue.defineComponent({name:"ZoomIn",__name:"zoom-in",setup(e){return(t,n)=>(vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[vue.createElementVNode("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704m-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64z"})]))}}),zoom_in_default=_sfc_main292;const iconPropType=definePropType([String,Object,Function]),ValidateComponentsMap={validating:loading_default,success:circle_check_default,error:circle_close_default},isFirefox=()=>isClient&&/firefox/i.test(window.navigator.userAgent),isAndroid=()=>isClient&&/android/i.test(window.navigator.userAgent);let hiddenTextarea;const HIDDEN_STYLE={height:"0",visibility:"hidden",overflow:isFirefox()?"":"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},CONTEXT_STYLE=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],looseToNumber=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?e:t};function calculateNodeStyling(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),r=Number.parseFloat(t.getPropertyValue("padding-bottom"))+Number.parseFloat(t.getPropertyValue("padding-top")),i=Number.parseFloat(t.getPropertyValue("border-bottom-width"))+Number.parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:CONTEXT_STYLE.map(g=>[g,t.getPropertyValue(g)]),paddingSize:r,borderSize:i,boxSizing:n}}function calcTextareaHeight(e,t=1,n){var r,i;hiddenTextarea||(hiddenTextarea=document.createElement("textarea"),((r=e.parentNode)!=null?r:document.body).appendChild(hiddenTextarea));const{paddingSize:y,borderSize:g,boxSizing:k,contextStyle:$}=calculateNodeStyling(e);$.forEach(([ie,oe])=>hiddenTextarea?.style.setProperty(ie,oe)),Object.entries(HIDDEN_STYLE).forEach(([ie,oe])=>hiddenTextarea?.style.setProperty(ie,oe,"important")),hiddenTextarea.value=e.value||e.placeholder||"";let V=hiddenTextarea.scrollHeight;const L={};k==="border-box"?V=V+g:k==="content-box"&&(V=V-y),hiddenTextarea.value="";const re=hiddenTextarea.scrollHeight-y;if(isNumber(t)){let ie=re*t;k==="border-box"&&(ie=ie+y+g),V=Math.max(ie,V),L.minHeight=`${ie}px`}if(isNumber(n)){let ie=re*n;k==="border-box"&&(ie=ie+y+g),V=Math.min(ie,V)}return L.height=`${V}px`,(i=hiddenTextarea.parentNode)==null||i.removeChild(hiddenTextarea),hiddenTextarea=void 0,L}const mutable=e=>e,ariaProps=buildProps({ariaLabel:String,ariaOrientation:{type:String,values:["horizontal","vertical","undefined"]},ariaControls:String}),useAriaProps=e=>pick(ariaProps,e),inputProps=buildProps({id:{type:String,default:void 0},size:useSizeProp,disabled:{type:Boolean,default:void 0},modelValue:{type:definePropType([String,Number,Object]),default:""},modelModifiers:{type:definePropType(Object),default:()=>({})},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},type:{type:definePropType(String),default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:definePropType([Boolean,Object]),default:!1},autocomplete:{type:definePropType(String),default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:Boolean,clearable:Boolean,clearIcon:{type:iconPropType,default:circle_close_default},showPassword:Boolean,showWordLimit:Boolean,wordLimitPosition:{type:String,values:["inside","outside"],default:"inside"},suffixIcon:{type:iconPropType},prefixIcon:{type:iconPropType},containerRole:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:definePropType([Object,Array,String]),default:()=>mutable({})},autofocus:Boolean,rows:{type:Number,default:2},...useAriaProps(["ariaLabel"]),inputmode:{type:definePropType(String),default:void 0},name:String}),inputEmits={[UPDATE_MODEL_EVENT]:e=>isString(e),input:e=>isString(e),change:(e,t)=>isString(e)&&(t instanceof Event||t===void 0),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent},DEFAULT_EXCLUDE_KEYS=["class","style"],LISTENER_PREFIX=/^on[A-Z]/,useAttrs=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,r=vue.computed(()=>(n?.value||[]).concat(DEFAULT_EXCLUDE_KEYS)),i=vue.getCurrentInstance();return i?vue.computed(()=>{var y;return fromPairs(Object.entries((y=i.proxy)==null?void 0:y.$attrs).filter(([g])=>!r.value.includes(g)&&!(t&&LISTENER_PREFIX.test(g))))}):(debugWarn("use-attrs","getCurrentInstance() returned null. useAttrs() must be called at the top of a setup function"),vue.computed(()=>({})))},defaultIdInjection={prefix:Math.floor(Math.random()*1e4),current:0},ID_INJECTION_KEY=Symbol("elIdInjection"),useIdInjection=()=>vue.getCurrentInstance()?vue.inject(ID_INJECTION_KEY,defaultIdInjection):defaultIdInjection,useId=e=>{const t=useIdInjection();!isClient&&t===defaultIdInjection&&debugWarn("IdInjection",`Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed
|
|
32
32
|
usage: app.provide(ID_INJECTION_KEY, {
|
|
33
33
|
prefix: number,
|
|
@@ -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>支持 "and、or、not、True、False" 等 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 是值为 "3" 的全局变量</p><p data-v-dd71ced7>字符串比较:<code class="code" data-v-dd71ced7>key == "3"</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>int(key) >= 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>支持 "and、or、true、false" 等关键字语法</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>"${key}" = "my string"</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>${int(key)} >= 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>"${key}" == "my string"</code></p><p data-v-dd71ced7>数值比较:<code class="code" data-v-dd71ced7>${int(key)} >= 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,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAYAAAA+VemSAAAABmJLR0QA/wD/AP+gvaeTAAAdWElEQVR4nO3de3wU5b0/8M/32Q0J14oCu0GtP2yxSq5A6gWtLZJNIAEFQbRWba2VSz21PbUX7al9pbYee3rxVuVmEY/UC6ilFgiQS6MtpV4QkmyCaOpRj5pkAyiKkMvuzvf3B+CJYTfJ7s7ss7Pzfb9e/MHO7jOfwH4yszszzwBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCOAjpDpCuKlsOjBrSGbrEAC6AQh4M/iwBo4loKIMPAggA3ALQyy4jXHVJwamv6c4s7EcKbKIKZnWRv+NSJr4BQAmAIYN9LQENYFr2vmv/IwtzcnqsSynSiRTYBMxM1c2BqwhcAaazEhzuTVb4XkmO9y+mhBNpTQqcoJr6fWexO/QHMH3JzHEZWHlQHbhZx9a4rrljRDjM4wAgzPxxaYG3I9kZxOBIgRNQ3RS4DszLAAy3aBVVww8F506bdnqnReMDAKqbWz8Lw7UQbMwAURGAMX2echiAn4ieDxNvKM3xvmhlHjF4UuA4VDCrC5va/wugH1i9LgI2bs/1zK0gMsweu8rfWkSsbgdhNgAVw0sbiXDXjBzPOiJis3OJwZMCx4iZqaYp8AcA30zian/qy/PeadZg2/fuG9nZE/4dCDcgtuJ+CgM73Eb4m/INuj5S4BhVNbX9jpi+n+TVdlPYlV9cOPb1RAeqbWidYij1JICJJuQCgMOk+BvFOdlPmzSeiEHcv32dqLqx7XoN5QWATHaF70hkAGaman/7dwyldsC88gLAcDZoXU1jYJGJY4pBki3wIFXt6ZhIYaMewDBNEcLKZXxuxqTxb8f6wq3N75zsMjJWA5hrQa7jDFJ8pWyJk0u2wIPAzERhYxX0lRcAXEZYXRPri2r9gWkuI2M3rC0vACg26JFqf+s5Fq9H9CIFHoSapo55AL6iOwcYcwb71ApmVeNvv80APw/gsxam6m04oJ6se/PNrCStz/FkF3oQavzt9QwU6M4BIOge0Tlq+oQJXf09qcYf8BjgtQT4khXs03i5Ly/725aNzkw1e9pOR0iNJ6IRhkKnQRQY0zn27aIiClq13lQkBR7AtsbWixWp53Xn+AQj35fv9UdbXNMYKGbitQC8SUx1IqIFvlzPM2YNV/da65hQj/oqA3MIOB/AyAhPCxKokWHUKagNl+SO+2e6H6eWAg+gxt/+EAPf0p3jOAKVFOd5qvs+XlfH7vCYwM8ZuBWp8dHoYCjEk2dNzn4rkUEqd7WNzRhCPwPjWwBi3TXfS0z3vu/avyZdLxBJhf/olMXMxMBs3Tl6CxOf8Cbe5n/v9NCYwHMM/ASp8396kttNT+zcyRnxDlDV2HZFRgbtBePfEHt5AeBsJl4x2jhlb1Vz+6Xx5khlqfKfnZLqGlvPgu5d0T6Iqbv336sb2y9TcNUDuFBTpP6cfzCr4xfxvLCqqe0OIloP4GQTckwgA89W+9v/WNlyYJQJ46UMKXA/DOUq1J2hL4MQAIDKlpbMKn/7fSBsgDlvcksw8w+r/IGSWF5T42+/k5hutyDO1zK6gi/U+gOfs2BsLaTA/WDGBN0Z+ggHu8ItVXs6JmZ0jdpBwM1I/e8xFIEfrWvuGNSeTHVT4LpjHwWsco4B3v7X5rYcC9eRNFLgfjBotO4Mn0YNWUPUXAobrwA8RXeaGHhChrG2grnf91tNY+DMY5dnWs0bNqimpjFwZhLWZSkpcD8UGS7dGT6NPwfCY4h8CCXVFV/UFPhxv88gvhfWXVvdl5eJN9v9M7EUuB8MdUh3hj4+oztAIhi4o9YfmBZpWW1z27mMwZ9pZpKzM7qCq5K8TlNJgfvF7+hOkGbcBvjxTY1vn/DRxDDoZh2BAFxZ7W9bqGndCZMC94NhNOrOkIbOyKLM1b0f2LHjnaGw/mKL6Jju2dbQnqxdd1NJgftxcnd2A4CPdOdINwzMq2pqu+n434+MHHIRkvfZ90SE8YrwHW3rT4AUuB9FRRQEYZPuHOmImH67tSlQAAAMPld3HhC+V9nSkqk7RqykwAMwDGOl7gxpKsvF/GRdc8cIIvq87jAAPEO6RurbjY+TFHgApfnj/wYgda5GSi9nB8P8ADP3ncZWC2ZcrTtDrFL9LJ6UsLUpUOBifhlA3Cfmi359BCAVjsd2BrMOjS6bOLF74KemBtkCD8LMXE8DwP+hO0caS4XyAsDQzK5RU3WHiIUUeJB8edm/YUA+D6c5JiPlLmDpjxQ4Br5cz1Iw7tGdQ1jHAGx1pZIUOAZExL587/cZdB3k+HBaIj7hvlApTQoch5I8z1oVdk8C+FEAYd15hHmI1FDdGWIhBY7TjMIx7/nysr9OTGcR8J8gTvi2J0I/NjikO0Ms5DCSieoa3j0tpFwFAJ0J8CSAFkF+SdoL4QFfrtc2p1XKm8tE0wtOe9eXl72ZFLcBdBXk39eO3tAdIBZu3QHSSd2bb2aFPs66mw1aqjuLiBNzve4IsZACm2RbY+vZoY/VOgD5urOIuHUOPxR6UXeIWMgunglqmtq+rkjthJTX5njLtGmnd+pOEQvZAiegrrljRMgIL2Oma3VnEYljxuqBn5Va5FvoOFU1dxQSh9eB6SzdWYQp6otzPVPsdi8l2YWOQ3Vj27+RYfxTyps2mIi/b7fyArILHZNNjW+PzqLM1QzM051FmIjwYHFudp3uGPGQAg9SrT8wzQA/zsAZurMIUz3/AR24RXeIeMln4AFUMKsL/YEfgfALyC+8NMPbg1lDyssmnmLbC1OkwP2o8Qc8fPSChZhuziVsYY17ROe3p0+Y0KU7SCJkixJFVUP7DAb/ESl2e1GRsD2k1C3FOeO26g5iBtkC91FXx+7QmEAFgNsg39LbQRADz1XWDaCamFZvzxv3lwoiIwm5kkIK3Ms2/3unK6jHAbpIdxYxaP+CgWvhorMIxucYdHSPycARAr1jMDdkuNWL03PGfaw5pyWkwMdUNbdfSgYeBnCK7iwiZut9ed4rdYfQwfEF3rmTMw5mBn7D9rhZtoiGsMiX631Id4xkc/QbduPO1mFZmfQngEp1ZxEJ6wTjPF++1687SDI59kuaujp2Z2Wqp6S8aWMoCOvsepfBeDm2wMGx7f8FoEx3DmGqc4joQd0hksmRu9A1TW3TmakWDv350x7R1325nkd1x0gGx22B169nl2HQ7yHlTV/My7Y1tp6tO0YyOK7AJ08KXEGEHN05hKWGK1Lrdux4x1ZzPMfDcQUGy4RzDpF/eFTGvbpDWM1Ru5FVe/eNp2D4XTjs53YyAq4qzvOu053DKs7aAgeNGZDyOgoDq7Y2d3xedw6rOKrAxDxFdwaRdKPcBj9Z2dKSqTuIFRxVYBDS9jexiI7BU91dI3+tO4cVnFVguVDBsQj4TpU/kHZzmTmrwOywn1f0RgpYXbunNa3mNHPUG5pJbsrtZAwebYTVkzt38kATANiG06bU+V/dAQbpbQIaAfwPA/uYj96zlghDCXQqAxMBFAL4jNaU9nT+B5kddwL4ke4gZnBUgQlo0J0hCgbwHAhPuMOhLdMLTnt3oBdUMKvzmzvyFHO5AhYyUJCEnGmCf1DV2PZcSX52pe4kiXLUMdEafyCfwalU4jARrWUO/9qXN/7VRAaq8rcWAeoWAhbCYR+N4rQ/7HLlz5w0tk13kEQ4qsAAUO1vbwH0H05i4CWDaNHMXI+pv1C2NbTnKoV7ABSbOW6asv1UPI77Tc3Mf9AdAYRfZez3XGh2eQGgtMDb5Mvz+sD8TQBpOZGbia7Y1tx+nu4QiXBcgTPCWSsJ9IGm1YeJ+Hpfrve26dMpZOWKfPnZawDjXAAtVq7H5ojC9APdIRLhuF1oAKjxt9/MwH1JXi0T8fXFudn/PdATV27cOYzVkCIizjHA2QQMASNI4HaD1KtDgpkv33DZ2YcGs9K611rHhHpc2wA5jTSKILlD2cXnnHZAd5B4OLLAFczqwqbAXwF8OVnrZOCukjzvT6IuZ6aHtvhnGsSLwVwKIKuf4UIA/kZMT8AIPr54TtGR/ta9tfmdk11GxvMAcuNLn94YdF1Jnmet7hzxcGSBAaC2fv+phitUD2CM5StjvOg+4Lko2m7zsk2NUxUZy0A4N/ahsQ+Eu9TY0AOLi4qC0Z5Xu6f1DCOsXgYwNtZ1pD3CKl+ud7HuGPFw3Gfg42YUjnkP4G/g6DFYKxlwqaXRyrtyS8PNShn/jKe8AEDAWGLczQH3yysqd02K9rwZk8a/DaJrYf3PazvM9t0zcWyBAcCXl72Zie+xeDVP+XLG7Y60YGVl/e3MfB8GvrfPwAgFgHpx5dbd5dGe4sv1bCNgdcLrSjMEnKo7Q7wcXWAAOEjv3wbg5WN/3Q/m3QBqADzPjGYcvTFW3Igp4pdly7c0XMXAHYmMHcEINmjD8s31s6M9oSfIPwHknPA+RugOEC/HfgburcYf8FDY5T66W/1pdXXs7jmlrUApNYuY5jJ4agxD/8uX553Y98GHK3eN7YF6DcDoRHL34zCxumBxeX7EuxRUN7XfBcatFq3bjtp9ed5s3SHi4ahzoaMpzvMEoi079tn1lWN/flm7p/WMcFjNJWAegIsAuKK9loGI59r2sOuHILaqvAAwnMl4fP365qkLF+b09F3oDoceDCn3D9FPdofZrztAvBy/Cx2rGZPGv12S573Pl+f9SjDI2QR8C8AmACfc6V0R/tn3sYq6OjeIr09C1NwDI4M3RVpw7GKJuiRksAl+XXeCeEmBE1A2JXtfcZ53tS/PO2dohmscwFcy8CSOfcaksHHCG8PTedJ5SMahKwDE+OH69c1DIi4DNiYjgx0Q4UXdGeIlu9AmuejssYcArAewvrKlJTOzc8QlRjDrjROfSZOTGCv7/eE9swA8e0IKw9jOSn5/AwBYbdUdIV5SYAuUTZzYDWBLpGVEPB6cxO8OicoQocDdww43Z3SNNODwvTBmNPvyPY26c8RLCtzH/ZUvjMrgrIsVUT4TjycDbiYEmOhVRcHnF88sSuz6UTbhmG8MiBDxW/OyiRO7q/3t+wB4kpkn1SjQ/bozJEIKfMzyyvrJBPwYwFwQMhkMMD7ZWBIzmN28orLhBQI/YxA/s3TW5LdiXhGr90HJOxmKGaf1s/gjOLvA//O+a/8jukMkwvEFfnRbw/DOEP+OgRsx8O4kAXwBAxcQ029Xbql/BcDTHOJnlsyZPLjL9hS/luSTGfvb4jv5MBKTUjctzDnxMJudOLrAK7fuzD4S4i1HT0OMHTOmApgKF921YnN9AxGeYRjPLCmbsifqaxRtpzAn87PnwWgLCDSanXpqNOPe4pxxtv3y6jjHnom1bFPjaJfifzD4HLPHJtCrBvhpUsYzS2ZOOWHWjRWV9bUALjF7vRExNi8pLzzh1Mq63R+cFHJ365rYQLdN7v2eeVZPqpAMjv0G0qXCj1hRXgBg8DkE3A5D1a+srG9Zvrn+rhWbdxV9spxh9QUU/4fouUgPB1V3LKeEppM/B7MOLUiH8gIOLfCKyoYFDLo0Geti4PNEuBWkXl5RWf/m8sr635IyDgCoTcLqe4Lu8OORFpDC9CSsP5UYAO784FXPgmOH+dKC43ahmZlWbmlohP7ZKToBWHsHeaZlS8oLTjidkpmppinwOlJgds4kCRybdaNKdxCzOe5LrOVbGs9T+ssLWFxeBlozXO7bIy2r3bOvFE4pL6HWTeqa6Tnj2nVHsYLjdqEJvEB3hiToUoQrvzUz5/2+C5iZOGxUaMiUbCEAP/1HjqckXcsLOKzAzEwEzNedw2KHFdTli2cVbo+0cGt9+xkgDuLoZ8J09Q4ZxiW+PO+dFUTp/HM66zPwqi27v2gwvaQ7h4X8xOpr0S7k763utdYxoaCrDMxXACgBEPGqJbshYCPcoevtOk1srBz1GZiZ0nX3+XUw7iFPaHV/M1P2Nv0L4/cDeBTAo5sa3x49BEOKiTAHoHmw5xQzIYDv3J7rvSPdt7q9OavA4PlpuNMRBqiBwe8PO5AxBMCgCtzb7PwzPgDwFICntjW0D1eKy8G4HkSlsMc/2BsM46qSvPE7dQdJNjv855hi5daGKWzwK7pzWKwLQA1AT1FG8NnFvqIPExmsurljMoWN3zIl6ayx+KwLZmUsKpt4iiMn6nNMgVds2f2fYLpNd44k6mamvxOwid14YmlpQUc8gzAz1fo7FjHxvej/bhHJ1gnCd3253od0B9HJOQWurN8L4Au6c2gSBvACmJ4Kw73upvKcmA+rVDe0nw+FTQBOMT9ezPYYBq4sLfA26Q6imyMKvGLrrgIYql53jhTxSZnJFVwfywQF1c0dk2EYzwEYZVm6gT3c1W18Z07R+H7vB+UUzihwZf3PAfxMd44UFGbQdsB4TIXDjw10kzQAqPa3lQO0Ecl/7xwCY4kv3xvx3G6ncsqJHOl6+ChRLgJ/mUCr2OV+Y0Vlw3UDvcCXl70ZwANJyNYL7WKXmirlPVHab4GP3vBLNevOYRvMT2QOO+mb10+fcMI818dVthwYldEVbAEwzvI0wO9DWYd+lE5XEJnJAVtgJVvfWBB9tbvzwz9Hm08aAMomnvIRM99tcZL3wZhXkuf9rpQ3OgcUWHaf41B6YETPvf09QWWE/4AEb/wWDQM7oIzJvnzvCdPhik9L6wKv2lx/FoA83TnsiEBLV23dVRxt+bFzjatNXq3BwF0Z+z1f9uWM/1+Tx05LaX0qJRMt6HU/63fBaGDFbcRkMGgEgc8GkI80/3eIl2GoXwOYEvUJhFowot7KNEYBAl3ry/OY/UshraX1G9cASojpN6DwI9FmilyzYfdJXZl0OQHfg2yt+5q8bGvDl749s+DvkRZS2HjFlNuzpPlF91ZK22+h169f7/pg6JmjF88pGtStIysqWHm/2LAIhN/AnlfjWIIZ9y8tL/xupGW19ftPNVyhdxMYPgSg4h+5nrucdAWRmdK2wPFavqkhlxRvAfq9o4GT7FpSVhhxBsujVy7h4zjHfQdKXe3LGRdx4gExOGn9JVY8ls4uaAqr8HQAcZ38n4Ymmj0gARvJHZos5U2cFDiCm2ZO/RcZuArpPe3MYI2sqOCI7xPKdH0mxrF6QPj3Gbmey5wyY4bVpMBRLJ5dWAemFbpzpIBQRUWUz6chY0IM47zBMC705XrvJUri3d3SnBS4H+zGzwE4+qoXAt6Luow5+iGmXhh4MpiVMcWJM2ZYTQrcj6WlBR1gPKE7h04M7O5n8UAzdXSCsKgkz/tVp86YYTUp8ACUy3hSdwadCBTxbgYbd7YOA+Dr56V7CXS+02fMsJoUeABdxsi/4+hcU05khNi9IdKCrEzXTADDI7+M1xoGiorzPI0WZhOQAg/o5rKJ3QCi3u83rTH+EW36HQLPi/DwIWK6xpeXfV1pgfewxekEpMCDw3hLdwQdSNHTkR7fuZMzACrv8+xd7FJTi/M9jyUjmzhKCjwYhISmZ7UpVow/RVpwcOi+GQwe/ckDhFXBrI+mlUwa15K0dAJAml/MYB52Oe+sU3rhxrKCiOc5MxvHd58/ZOYbS/Kyn0piMNGLbIEHhU7WnSDZCPxMpMcrmBUYlzLwkmFgckm+lFcn2QIPzpm6AyQZGxS5wBc1tl1oKLX+5G7PD4qKKObbuAhzSYEHsPrZvSOD6HLYhPD0ytJZhW9FWuIa1f1y8YQJEa8PFsknu9ADCGZ0fwWAS3eO5OKI3z4DwPQJ0WerFMknBR4QX6k7QbKFVTji7rNIPU77ajUmDz3r94Qzwm8htW7qZbX6JWWFk3WHEINj+y3wmro3LStXOMO4Fc4qL8CQra+N2L7A3Z0f3mNFiZdvasgF+Cazx0115FZRP/+K1GPrb6Hvr3xhFIDruzoPvgvgTrPGXVP3ZlZ354drAWSYNaZNNC8uzd9bUcHKc179xWD4iKmAFLwAwIxDDH6VoP7ag2Ebj50nLjSy9Wfg5ZW7v0agPwLoZoWLl84sfCnRMSsqWHnPa3gCjIUmRLQXxi8J9DYT34YBjn0zsI+A3/Vg+L1SZH1sXeAVlfUbAMw99td2g+gr355V8Fq8463cuTODO9xrAHzNlIA2w0ArAeNjfJk/rMKX3zRz6r8sCSX6ZdsCP1jXPMLVGewAMLTXwx1EmL94VmHMsx0+uM1/uisUfgyEL5mX0hkY2KdYzVhcnu/XncVpbFvgFZX1VwKINFtGiIH7srr5l9fPm3xwoHHuXr9j6LDhw5aC8DMAsc6yKP7Pu+yiqUtLC2Q63iSy8ZdYvCDK7x83Abd0Z9KNKyrr/5sMbACHXux99/kH65pHqM7QuQTjUgDXADglWanT2GkqbDwE4DLdQZzEllvglRt3DmOXex+AYYN8CQNoB9B57DUe2PRnT3UElC4uK4w4j5Ywny2PA7MrowyDLy9wtKzZOPrNqhdSXssw8GPdGZzElgUm8HzdGURU0x/YvOsM3SGcwnYFvnv9jqEM0+5JK8xHGeQq0x3CKWxX4OEjhpZCbv+Z0gzgPN0ZnMJ2BWbQAt0ZRP8IOEt3BqewVYHvr2zJhOw+24AxTncCp7BVgYfwxxdDTrZIeQSy8fkF9mKrAoPoAt0RxMAY+Fh3BqewV4EZsdyPVugT9Zakwly2KjARRurOIAbGgFzUkCS2KjCD5YZZNqDAMV8NJuJjqwID9JbuBGJAR9zBobW6QziFrQpMihOecUNYjZ++4bKzD+lO4RS2KjCC4TrIN5xmGPA66TgxFN9t0dgiAlsVePGcoiNgelR3DnvjA8T8U4sGf3zJzCkNFo0tIrBVgQEg7Fa/AnBkwCeKyJj+fPhw58Mw+VAPA/tcQdctZo4pBma7At9UmvcOEd2mO4d90dPfXzitE6DvmThoGIRrb7wsL2DimGIQbFdgAFg0M//3AMuudOw+OPmw+68AsKSs4GkwLTNhTAOMG5fOKtxmwlgiRrYsMBFx+9CDNwBYozuLnTDoLwsX5vQc//vJh1+7mQhrExiyE8DVS8oL5f9BE9tPLbO8cveNBPo1gJN0Z0l1zJiztLxw06cfY1q1teHHzPg5gCExDLeLWH1DppLVy5Zb4N6Wlk1+iMKhiWD8koFW3XlS2IdBGl7d90Ei4sWzCn9lEOUDWAcgNMA49cy4rv2lgi9KefWz/Ra4t4oKVtnnNUxj5gUAzQdwmu5MKeSxJWWF1wz0pAc3N3vdqqeUGZNBlA0mYhj7FaMZblft4tL8vckIKwYnrQrc16qt9TnhMF9BRFcDmKg7j1bMc5eUT35WdwxhrrQucG+9ynwVgC/ozpNkHx/5+Mi4o4ePRDpxTIF7O15mRWohg8/RncdyzE8sKZ98te4YwnyOLHBvn5RZ0WxmTNWdxwrMtGBpecEzunMI8zm+wL0t29R4piKeA+IrAFyoO49Jjgxz0bjrSgvkWuo0JAWOYvmW3f+PDHXZsTJPg23/reipJWUFzrtZuUPY9E2ZXA9s3nWGG665Ni3zVUvKCtfpDiGsYac3Yko4eiNw4/JjZb4AqX0yTFdGMGucXGCfvqTACVi+sf5U5ab5zMZ8gC5C6pX5z0vKCufpDiGsIwU2yYObm70u1XM5mOYD+DIAl+5McvJG+pMCW+Dhyl1jg6TmMWM+gEsA6LhTQVP7SwUFFRVkaFi3SBIpsMUeqHnxFFdP5mUEmg9wMWK74idehoJxyaKyKc8nYV1CIylwEq3ZsPuk7kx1KcALAPgAZFmxHgZ+sbSs8GdWjC1SixRYk/srXxiVyZmzmWgBgJkAhpoxLgEPLJpVcDMRsRnjidQmBU4Bj25rGH44xOVEtADgMgDD4ximC0y3LikvuM/sfCJ1SYFTzMqNO4ex2z0TBi8A0WxgwPtBhQH6k2L+6aLywteTkVGkDilwCltT92ZWd+dHPgKXMKMAhFOPLTpCwGsg+pti/OnGsoJ3tQYVQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEHH6/wXOXW9gEVklAAAAAElFTkSuQmCC",_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,iVBORw0KGgoAAAANSUhEUgAAAPAAAADwCAYAAAA+VemSAAAABmJLR0QA/wD/AP+gvaeTAAAdWElEQVR4nO3de3wU5b0/8M/32Q0J14oCu0GtP2yxSq5A6gWtLZJNIAEFQbRWba2VSz21PbUX7al9pbYee3rxVuVmEY/UC6ilFgiQS6MtpV4QkmyCaOpRj5pkAyiKkMvuzvf3B+CJYTfJ7s7ss7Pzfb9e/MHO7jOfwH4yszszzwBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCOAjpDpCuKlsOjBrSGbrEAC6AQh4M/iwBo4loKIMPAggA3ALQyy4jXHVJwamv6c4s7EcKbKIKZnWRv+NSJr4BQAmAIYN9LQENYFr2vmv/IwtzcnqsSynSiRTYBMxM1c2BqwhcAaazEhzuTVb4XkmO9y+mhBNpTQqcoJr6fWexO/QHMH3JzHEZWHlQHbhZx9a4rrljRDjM4wAgzPxxaYG3I9kZxOBIgRNQ3RS4DszLAAy3aBVVww8F506bdnqnReMDAKqbWz8Lw7UQbMwAURGAMX2echiAn4ieDxNvKM3xvmhlHjF4UuA4VDCrC5va/wugH1i9LgI2bs/1zK0gMsweu8rfWkSsbgdhNgAVw0sbiXDXjBzPOiJis3OJwZMCx4iZqaYp8AcA30zian/qy/PeadZg2/fuG9nZE/4dCDcgtuJ+CgM73Eb4m/INuj5S4BhVNbX9jpi+n+TVdlPYlV9cOPb1RAeqbWidYij1JICJJuQCgMOk+BvFOdlPmzSeiEHcv32dqLqx7XoN5QWATHaF70hkAGaman/7dwyldsC88gLAcDZoXU1jYJGJY4pBki3wIFXt6ZhIYaMewDBNEcLKZXxuxqTxb8f6wq3N75zsMjJWA5hrQa7jDFJ8pWyJk0u2wIPAzERhYxX0lRcAXEZYXRPri2r9gWkuI2M3rC0vACg26JFqf+s5Fq9H9CIFHoSapo55AL6iOwcYcwb71ApmVeNvv80APw/gsxam6m04oJ6se/PNrCStz/FkF3oQavzt9QwU6M4BIOge0Tlq+oQJXf09qcYf8BjgtQT4khXs03i5Ly/725aNzkw1e9pOR0iNJ6IRhkKnQRQY0zn27aIiClq13lQkBR7AtsbWixWp53Xn+AQj35fv9UdbXNMYKGbitQC8SUx1IqIFvlzPM2YNV/da65hQj/oqA3MIOB/AyAhPCxKokWHUKagNl+SO+2e6H6eWAg+gxt/+EAPf0p3jOAKVFOd5qvs+XlfH7vCYwM8ZuBWp8dHoYCjEk2dNzn4rkUEqd7WNzRhCPwPjWwBi3TXfS0z3vu/avyZdLxBJhf/olMXMxMBs3Tl6CxOf8Cbe5n/v9NCYwHMM/ASp8396kttNT+zcyRnxDlDV2HZFRgbtBePfEHt5AeBsJl4x2jhlb1Vz+6Xx5khlqfKfnZLqGlvPgu5d0T6Iqbv336sb2y9TcNUDuFBTpP6cfzCr4xfxvLCqqe0OIloP4GQTckwgA89W+9v/WNlyYJQJ46UMKXA/DOUq1J2hL4MQAIDKlpbMKn/7fSBsgDlvcksw8w+r/IGSWF5T42+/k5hutyDO1zK6gi/U+gOfs2BsLaTA/WDGBN0Z+ggHu8ItVXs6JmZ0jdpBwM1I/e8xFIEfrWvuGNSeTHVT4LpjHwWsco4B3v7X5rYcC9eRNFLgfjBotO4Mn0YNWUPUXAobrwA8RXeaGHhChrG2grnf91tNY+DMY5dnWs0bNqimpjFwZhLWZSkpcD8UGS7dGT6NPwfCY4h8CCXVFV/UFPhxv88gvhfWXVvdl5eJN9v9M7EUuB8MdUh3hj4+oztAIhi4o9YfmBZpWW1z27mMwZ9pZpKzM7qCq5K8TlNJgfvF7+hOkGbcBvjxTY1vn/DRxDDoZh2BAFxZ7W9bqGndCZMC94NhNOrOkIbOyKLM1b0f2LHjnaGw/mKL6Jju2dbQnqxdd1NJgftxcnd2A4CPdOdINwzMq2pqu+n434+MHHIRkvfZ90SE8YrwHW3rT4AUuB9FRRQEYZPuHOmImH67tSlQAAAMPld3HhC+V9nSkqk7RqykwAMwDGOl7gxpKsvF/GRdc8cIIvq87jAAPEO6RurbjY+TFHgApfnj/wYgda5GSi9nB8P8ADP3ncZWC2ZcrTtDrFL9LJ6UsLUpUOBifhlA3Cfmi359BCAVjsd2BrMOjS6bOLF74KemBtkCD8LMXE8DwP+hO0caS4XyAsDQzK5RU3WHiIUUeJB8edm/YUA+D6c5JiPlLmDpjxQ4Br5cz1Iw7tGdQ1jHAGx1pZIUOAZExL587/cZdB3k+HBaIj7hvlApTQoch5I8z1oVdk8C+FEAYd15hHmI1FDdGWIhBY7TjMIx7/nysr9OTGcR8J8gTvi2J0I/NjikO0Ms5DCSieoa3j0tpFwFAJ0J8CSAFkF+SdoL4QFfrtc2p1XKm8tE0wtOe9eXl72ZFLcBdBXk39eO3tAdIBZu3QHSSd2bb2aFPs66mw1aqjuLiBNzve4IsZACm2RbY+vZoY/VOgD5urOIuHUOPxR6UXeIWMgunglqmtq+rkjthJTX5njLtGmnd+pOEQvZAiegrrljRMgIL2Oma3VnEYljxuqBn5Va5FvoOFU1dxQSh9eB6SzdWYQp6otzPVPsdi8l2YWOQ3Vj27+RYfxTyps2mIi/b7fyArILHZNNjW+PzqLM1QzM051FmIjwYHFudp3uGPGQAg9SrT8wzQA/zsAZurMIUz3/AR24RXeIeMln4AFUMKsL/YEfgfALyC+8NMPbg1lDyssmnmLbC1OkwP2o8Qc8fPSChZhuziVsYY17ROe3p0+Y0KU7SCJkixJFVUP7DAb/ESl2e1GRsD2k1C3FOeO26g5iBtkC91FXx+7QmEAFgNsg39LbQRADz1XWDaCamFZvzxv3lwoiIwm5kkIK3Ms2/3unK6jHAbpIdxYxaP+CgWvhorMIxucYdHSPycARAr1jMDdkuNWL03PGfaw5pyWkwMdUNbdfSgYeBnCK7iwiZut9ed4rdYfQwfEF3rmTMw5mBn7D9rhZtoiGsMiX631Id4xkc/QbduPO1mFZmfQngEp1ZxEJ6wTjPF++1687SDI59kuaujp2Z2Wqp6S8aWMoCOvsepfBeDm2wMGx7f8FoEx3DmGqc4joQd0hksmRu9A1TW3TmakWDv350x7R1325nkd1x0gGx22B169nl2HQ7yHlTV/My7Y1tp6tO0YyOK7AJ08KXEGEHN05hKWGK1Lrdux4x1ZzPMfDcQUGy4RzDpF/eFTGvbpDWM1Ru5FVe/eNp2D4XTjs53YyAq4qzvOu053DKs7aAgeNGZDyOgoDq7Y2d3xedw6rOKrAxDxFdwaRdKPcBj9Z2dKSqTuIFRxVYBDS9jexiI7BU91dI3+tO4cVnFVguVDBsQj4TpU/kHZzmTmrwOywn1f0RgpYXbunNa3mNHPUG5pJbsrtZAwebYTVkzt38kATANiG06bU+V/dAQbpbQIaAfwPA/uYj96zlghDCXQqAxMBFAL4jNaU9nT+B5kddwL4ke4gZnBUgQlo0J0hCgbwHAhPuMOhLdMLTnt3oBdUMKvzmzvyFHO5AhYyUJCEnGmCf1DV2PZcSX52pe4kiXLUMdEafyCfwalU4jARrWUO/9qXN/7VRAaq8rcWAeoWAhbCYR+N4rQ/7HLlz5w0tk13kEQ4qsAAUO1vbwH0H05i4CWDaNHMXI+pv1C2NbTnKoV7ABSbOW6asv1UPI77Tc3Mf9AdAYRfZez3XGh2eQGgtMDb5Mvz+sD8TQBpOZGbia7Y1tx+nu4QiXBcgTPCWSsJ9IGm1YeJ+Hpfrve26dMpZOWKfPnZawDjXAAtVq7H5ojC9APdIRLhuF1oAKjxt9/MwH1JXi0T8fXFudn/PdATV27cOYzVkCIizjHA2QQMASNI4HaD1KtDgpkv33DZ2YcGs9K611rHhHpc2wA5jTSKILlD2cXnnHZAd5B4OLLAFczqwqbAXwF8OVnrZOCukjzvT6IuZ6aHtvhnGsSLwVwKIKuf4UIA/kZMT8AIPr54TtGR/ta9tfmdk11GxvMAcuNLn94YdF1Jnmet7hzxcGSBAaC2fv+phitUD2CM5StjvOg+4Lko2m7zsk2NUxUZy0A4N/ahsQ+Eu9TY0AOLi4qC0Z5Xu6f1DCOsXgYwNtZ1pD3CKl+ud7HuGPFw3Gfg42YUjnkP4G/g6DFYKxlwqaXRyrtyS8PNShn/jKe8AEDAWGLczQH3yysqd02K9rwZk8a/DaJrYf3PazvM9t0zcWyBAcCXl72Zie+xeDVP+XLG7Y60YGVl/e3MfB8GvrfPwAgFgHpx5dbd5dGe4sv1bCNgdcLrSjMEnKo7Q7wcXWAAOEjv3wbg5WN/3Q/m3QBqADzPjGYcvTFW3Igp4pdly7c0XMXAHYmMHcEINmjD8s31s6M9oSfIPwHknPA+RugOEC/HfgburcYf8FDY5T66W/1pdXXs7jmlrUApNYuY5jJ4agxD/8uX553Y98GHK3eN7YF6DcDoRHL34zCxumBxeX7EuxRUN7XfBcatFq3bjtp9ed5s3SHi4ahzoaMpzvMEoi079tn1lWN/flm7p/WMcFjNJWAegIsAuKK9loGI59r2sOuHILaqvAAwnMl4fP365qkLF+b09F3oDoceDCn3D9FPdofZrztAvBy/Cx2rGZPGv12S573Pl+f9SjDI2QR8C8AmACfc6V0R/tn3sYq6OjeIr09C1NwDI4M3RVpw7GKJuiRksAl+XXeCeEmBE1A2JXtfcZ53tS/PO2dohmscwFcy8CSOfcaksHHCG8PTedJ5SMahKwDE+OH69c1DIi4DNiYjgx0Q4UXdGeIlu9AmuejssYcArAewvrKlJTOzc8QlRjDrjROfSZOTGCv7/eE9swA8e0IKw9jOSn5/AwBYbdUdIV5SYAuUTZzYDWBLpGVEPB6cxO8OicoQocDdww43Z3SNNODwvTBmNPvyPY26c8RLCtzH/ZUvjMrgrIsVUT4TjycDbiYEmOhVRcHnF88sSuz6UTbhmG8MiBDxW/OyiRO7q/3t+wB4kpkn1SjQ/bozJEIKfMzyyvrJBPwYwFwQMhkMMD7ZWBIzmN28orLhBQI/YxA/s3TW5LdiXhGr90HJOxmKGaf1s/gjOLvA//O+a/8jukMkwvEFfnRbw/DOEP+OgRsx8O4kAXwBAxcQ029Xbql/BcDTHOJnlsyZPLjL9hS/luSTGfvb4jv5MBKTUjctzDnxMJudOLrAK7fuzD4S4i1HT0OMHTOmApgKF921YnN9AxGeYRjPLCmbsifqaxRtpzAn87PnwWgLCDSanXpqNOPe4pxxtv3y6jjHnom1bFPjaJfifzD4HLPHJtCrBvhpUsYzS2ZOOWHWjRWV9bUALjF7vRExNi8pLzzh1Mq63R+cFHJ365rYQLdN7v2eeVZPqpAMjv0G0qXCj1hRXgBg8DkE3A5D1a+srG9Zvrn+rhWbdxV9spxh9QUU/4fouUgPB1V3LKeEppM/B7MOLUiH8gIOLfCKyoYFDLo0Geti4PNEuBWkXl5RWf/m8sr635IyDgCoTcLqe4Lu8OORFpDC9CSsP5UYAO784FXPgmOH+dKC43ahmZlWbmlohP7ZKToBWHsHeaZlS8oLTjidkpmppinwOlJgds4kCRybdaNKdxCzOe5LrOVbGs9T+ssLWFxeBlozXO7bIy2r3bOvFE4pL6HWTeqa6Tnj2nVHsYLjdqEJvEB3hiToUoQrvzUz5/2+C5iZOGxUaMiUbCEAP/1HjqckXcsLOKzAzEwEzNedw2KHFdTli2cVbo+0cGt9+xkgDuLoZ8J09Q4ZxiW+PO+dFUTp/HM66zPwqi27v2gwvaQ7h4X8xOpr0S7k763utdYxoaCrDMxXACgBEPGqJbshYCPcoevtOk1srBz1GZiZ0nX3+XUw7iFPaHV/M1P2Nv0L4/cDeBTAo5sa3x49BEOKiTAHoHmw5xQzIYDv3J7rvSPdt7q9OavA4PlpuNMRBqiBwe8PO5AxBMCgCtzb7PwzPgDwFICntjW0D1eKy8G4HkSlsMc/2BsM46qSvPE7dQdJNjv855hi5daGKWzwK7pzWKwLQA1AT1FG8NnFvqIPExmsurljMoWN3zIl6ayx+KwLZmUsKpt4iiMn6nNMgVds2f2fYLpNd44k6mamvxOwid14YmlpQUc8gzAz1fo7FjHxvej/bhHJ1gnCd3253od0B9HJOQWurN8L4Au6c2gSBvACmJ4Kw73upvKcmA+rVDe0nw+FTQBOMT9ezPYYBq4sLfA26Q6imyMKvGLrrgIYql53jhTxSZnJFVwfywQF1c0dk2EYzwEYZVm6gT3c1W18Z07R+H7vB+UUzihwZf3PAfxMd44UFGbQdsB4TIXDjw10kzQAqPa3lQO0Ecl/7xwCY4kv3xvx3G6ncsqJHOl6+ChRLgJ/mUCr2OV+Y0Vlw3UDvcCXl70ZwANJyNYL7WKXmirlPVHab4GP3vBLNevOYRvMT2QOO+mb10+fcMI818dVthwYldEVbAEwzvI0wO9DWYd+lE5XEJnJAVtgJVvfWBB9tbvzwz9Hm08aAMomnvIRM99tcZL3wZhXkuf9rpQ3OgcUWHaf41B6YETPvf09QWWE/4AEb/wWDQM7oIzJvnzvCdPhik9L6wKv2lx/FoA83TnsiEBLV23dVRxt+bFzjatNXq3BwF0Z+z1f9uWM/1+Tx05LaX0qJRMt6HU/63fBaGDFbcRkMGgEgc8GkI80/3eIl2GoXwOYEvUJhFowot7KNEYBAl3ry/OY/UshraX1G9cASojpN6DwI9FmilyzYfdJXZl0OQHfg2yt+5q8bGvDl749s+DvkRZS2HjFlNuzpPlF91ZK22+h169f7/pg6JmjF88pGtStIysqWHm/2LAIhN/AnlfjWIIZ9y8tL/xupGW19ftPNVyhdxMYPgSg4h+5nrucdAWRmdK2wPFavqkhlxRvAfq9o4GT7FpSVhhxBsujVy7h4zjHfQdKXe3LGRdx4gExOGn9JVY8ls4uaAqr8HQAcZ38n4Ymmj0gARvJHZos5U2cFDiCm2ZO/RcZuArpPe3MYI2sqOCI7xPKdH0mxrF6QPj3Gbmey5wyY4bVpMBRLJ5dWAemFbpzpIBQRUWUz6chY0IM47zBMC705XrvJUri3d3SnBS4H+zGzwE4+qoXAt6Luow5+iGmXhh4MpiVMcWJM2ZYTQrcj6WlBR1gPKE7h04M7O5n8UAzdXSCsKgkz/tVp86YYTUp8ACUy3hSdwadCBTxbgYbd7YOA+Dr56V7CXS+02fMsJoUeABdxsi/4+hcU05khNi9IdKCrEzXTADDI7+M1xoGiorzPI0WZhOQAg/o5rKJ3QCi3u83rTH+EW36HQLPi/DwIWK6xpeXfV1pgfewxekEpMCDw3hLdwQdSNHTkR7fuZMzACrv8+xd7FJTi/M9jyUjmzhKCjwYhISmZ7UpVow/RVpwcOi+GQwe/ckDhFXBrI+mlUwa15K0dAJAml/MYB52Oe+sU3rhxrKCiOc5MxvHd58/ZOYbS/Kyn0piMNGLbIEHhU7WnSDZCPxMpMcrmBUYlzLwkmFgckm+lFcn2QIPzpm6AyQZGxS5wBc1tl1oKLX+5G7PD4qKKObbuAhzSYEHsPrZvSOD6HLYhPD0ytJZhW9FWuIa1f1y8YQJEa8PFsknu9ADCGZ0fwWAS3eO5OKI3z4DwPQJ0WerFMknBR4QX6k7QbKFVTji7rNIPU77ajUmDz3r94Qzwm8htW7qZbX6JWWFk3WHEINj+y3wmro3LStXOMO4Fc4qL8CQra+N2L7A3Z0f3mNFiZdvasgF+Cazx0115FZRP/+K1GPrb6Hvr3xhFIDruzoPvgvgTrPGXVP3ZlZ354drAWSYNaZNNC8uzd9bUcHKc179xWD4iKmAFLwAwIxDDH6VoP7ag2Ebj50nLjSy9Wfg5ZW7v0agPwLoZoWLl84sfCnRMSsqWHnPa3gCjIUmRLQXxi8J9DYT34YBjn0zsI+A3/Vg+L1SZH1sXeAVlfUbAMw99td2g+gr355V8Fq8463cuTODO9xrAHzNlIA2w0ArAeNjfJk/rMKX3zRz6r8sCSX6ZdsCP1jXPMLVGewAMLTXwx1EmL94VmHMsx0+uM1/uisUfgyEL5mX0hkY2KdYzVhcnu/XncVpbFvgFZX1VwKINFtGiIH7srr5l9fPm3xwoHHuXr9j6LDhw5aC8DMAsc6yKP7Pu+yiqUtLC2Q63iSy8ZdYvCDK7x83Abd0Z9KNKyrr/5sMbACHXux99/kH65pHqM7QuQTjUgDXADglWanT2GkqbDwE4DLdQZzEllvglRt3DmOXex+AYYN8CQNoB9B57DUe2PRnT3UElC4uK4w4j5Ywny2PA7MrowyDLy9wtKzZOPrNqhdSXssw8GPdGZzElgUm8HzdGURU0x/YvOsM3SGcwnYFvnv9jqEM0+5JK8xHGeQq0x3CKWxX4OEjhpZCbv+Z0gzgPN0ZnMJ2BWbQAt0ZRP8IOEt3BqewVYHvr2zJhOw+24AxTncCp7BVgYfwxxdDTrZIeQSy8fkF9mKrAoPoAt0RxMAY+Fh3BqewV4EZsdyPVugT9Zakwly2KjARRurOIAbGgFzUkCS2KjCD5YZZNqDAMV8NJuJjqwID9JbuBGJAR9zBobW6QziFrQpMihOecUNYjZ++4bKzD+lO4RS2KjCC4TrIN5xmGPA66TgxFN9t0dgiAlsVePGcoiNgelR3DnvjA8T8U4sGf3zJzCkNFo0tIrBVgQEg7Fa/AnBkwCeKyJj+fPhw58Mw+VAPA/tcQdctZo4pBma7At9UmvcOEd2mO4d90dPfXzitE6DvmThoGIRrb7wsL2DimGIQbFdgAFg0M//3AMuudOw+OPmw+68AsKSs4GkwLTNhTAOMG5fOKtxmwlgiRrYsMBFx+9CDNwBYozuLnTDoLwsX5vQc//vJh1+7mQhrExiyE8DVS8oL5f9BE9tPLbO8cveNBPo1gJN0Z0l1zJiztLxw06cfY1q1teHHzPg5gCExDLeLWH1DppLVy5Zb4N6Wlk1+iMKhiWD8koFW3XlS2IdBGl7d90Ei4sWzCn9lEOUDWAcgNMA49cy4rv2lgi9KefWz/Ra4t4oKVtnnNUxj5gUAzQdwmu5MKeSxJWWF1wz0pAc3N3vdqqeUGZNBlA0mYhj7FaMZblft4tL8vckIKwYnrQrc16qt9TnhMF9BRFcDmKg7j1bMc5eUT35WdwxhrrQucG+9ynwVgC/ozpNkHx/5+Mi4o4ePRDpxTIF7O15mRWohg8/RncdyzE8sKZ98te4YwnyOLHBvn5RZ0WxmTNWdxwrMtGBpecEzunMI8zm+wL0t29R4piKeA+IrAFyoO49Jjgxz0bjrSgvkWuo0JAWOYvmW3f+PDHXZsTJPg23/reipJWUFzrtZuUPY9E2ZXA9s3nWGG665Ni3zVUvKCtfpDiGsYac3Yko4eiNw4/JjZb4AqX0yTFdGMGucXGCfvqTACVi+sf5U5ab5zMZ8gC5C6pX5z0vKCufpDiGsIwU2yYObm70u1XM5mOYD+DIAl+5McvJG+pMCW+Dhyl1jg6TmMWM+gEsA6LhTQVP7SwUFFRVkaFi3SBIpsMUeqHnxFFdP5mUEmg9wMWK74idehoJxyaKyKc8nYV1CIylwEq3ZsPuk7kx1KcALAPgAZFmxHgZ+sbSs8GdWjC1SixRYk/srXxiVyZmzmWgBgJkAhpoxLgEPLJpVcDMRsRnjidQmBU4Bj25rGH44xOVEtADgMgDD4ximC0y3LikvuM/sfCJ1SYFTzMqNO4ex2z0TBi8A0WxgwPtBhQH6k2L+6aLywteTkVGkDilwCltT92ZWd+dHPgKXMKMAhFOPLTpCwGsg+pti/OnGsoJ3tQYVQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEHH6/wXOXW9gEVklAAAAAElFTkSuQmCC",_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||"v2.0.0",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-200aa4e2"]]),_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;
|