@kong-ui-public/entities-plugins 9.222.4 → 9.222.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -436,7 +436,7 @@ nodes:
436
436
  status: 200
437
437
  `})).sort(([n],[t])=>n.localeCompare(t)).map(([n,t])=>{const r=n.replace(/^\.\//,"").replace(/\.yaml$/,"");return{id:r,i18nKey:fx(r),code:t}});function Wa(n){return typeof n=="object"&&!Array.isArray(n)&&n!==null}const u$=[{name:"decK",extract(n){try{const t=Ln.load(n);return Wa(t)&&Array.isArray(t.plugins)&&t.plugins.find(o=>Wa(o)&&o.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(n){let t=n;const r=n.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);r&&(t=r[1]||r[2]);try{const o=Ln.load(t);if(!Wa(o))return null;const i=Wa(o.metadata)?o.metadata:{},a=o.plugin||i.name;return(o.kind==="KongPlugin"||o.kind==="KongClusterPlugin")&&a==="datakit"&&o||null}catch{return null}}},{name:"cURL",extract(n){if(!n.trim().startsWith("curl"))return null;const t=n.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!t)return null;let r=t[1]||t[2];t[2]&&(r=r.replace(/\\(["\\])/g,"$1"));try{const o=JSON.parse(r);return Wa(o)&&o.name==="datakit"&&o||null}catch{return null}}}],d$={class:"dk-code-editor"},f$={class:"examples-content"},zf="YAML Syntax",p$=Me(e.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(n,{expose:t,emit:r}){const{t:o}=jt.createI18n("en-us",Yt),{formData:i,setValue:a}=ft(),s=r,{getMessageFromError:c}=Ie.useErrors(),l=e.shallowRef(null);function u(k){return Ln.dump(e.toRaw(k),{schema:Eo,noArrayIndent:!0})}function p(){return u(Wr(i,["__ui_data"]))}const d=e.shallowRef(p()),f={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function m(k){const N=k.getModel();N&&(l.value=k,k.onDidChangeModelContent(()=>{try{const B=Ln.load(k.getValue()||"",{schema:Eo,json:!0});if(typeof B!="object"||B===null)return;tl.editor.setModelMarkers(N,zf,[]),a(B),s("change",B)}catch(B){const{message:U,mark:S}=B,{line:A,column:O}=S||{line:0,column:0},P=U.split(`
438
438
  `)[0],R=[{startLineNumber:A+1,startColumn:O+1,endLineNumber:A+1,endColumn:O+2,message:P,severity:tl.MarkerSeverity.Error,source:zf}];tl.editor.setModelMarkers(N,zf,R),s("error",P)}}),k.onDidPaste(B=>{const U=k.getModel();if(!U)return;const S=U.getValueInRange(B.range);for(const A of u$){const O=A.extract(S);if(O){y.value=O,_.value=A.name,g.value=!0;return}}}),E())}const g=e.shallowRef(!1),y=e.shallowRef(null),_=e.shallowRef("");function b(){g.value=!1,y.value=null,_.value=""}function w(){y.value&&(d.value=u(y.value),b())}function C(k){return o(`plugins.free-form.datakit.examples.${k}`)}function x(k){const N=k.code;try{const B=Ln.load(d.value,{schema:Eo,json:!0}),U=Ln.load(N,{schema:Eo,json:!0});if(typeof B=="object"&&B!==null&&en(B.config,U))return;const S=Wr({...i,config:{...U}},["__ui_data"]);d.value=u(S)}catch(B){s("error",c(B))}E()}function E(){const k=l.value,N=k==null?void 0:k.getModel();!k||!N||(k.setPosition(N.getFullModelRange().getEndPosition()),k.focus())}return t({setExampleCode:x}),(k,N)=>(e.openBlock(),e.createElementBlock("div",d$,[e.createVNode(e.unref(Fe.KAlert),{class:"examples"},{icon:e.withCtx(()=>[e.createVNode(e.unref(Re.SparklesIcon))]),default:e.withCtx(()=>[e.createElementVNode("div",f$,[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.description_example"))+" ",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Gb),B=>(e.openBlock(),e.createBlock(e.unref(Fe.KButton),{key:B.id,appearance:"secondary",size:"small",onClick:U=>x(B)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(C(B.i18nKey)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),e.createVNode(e.unref(ua.MonacoEditor),{ref:"editor",modelValue:d.value,"onUpdate:modelValue":N[0]||(N[0]=B=>d.value=B),appearance:"standalone",class:"editor",language:"yaml",options:f,theme:"light",onReady:m},null,8,["modelValue"]),e.createVNode(e.unref(Fe.KModal),{"action-button-text":e.unref(o)("plugins.free-form.datakit.detected_config_format_confirm"),title:e.unref(o)("plugins.free-form.datakit.detected_config_format_title"),visible:g.value,onCancel:b,onProceed:w},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.detected_config_format",{format:_.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-20217c6a"]]),{t:m$}=jt.createI18n("en-us",Yt),ac=Tt.createGlobalState(()=>{const n=Tt.useLocalStorage("datakit-editor-mode","flow"),t=Tt.useLocalStorage("datakit-editor-sidebar-expanded",!0),r=Tt.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:n,sidePanelExpanded:t,responsePanelCollapsed:r}});function h$({enabled:n,confirm:t}){Nr.onBeforeRouteLeave(()=>e.toValue(n)?t?t():window.confirm(m$("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const r=o=>{e.toValue(n)&&o.preventDefault()};Tt.useEventListener("beforeunload",r)}const g$={class:"label-content"},y$={class:"count"},_$={class:"label-content"},b$={class:"count"},Hb=.5,Wf=.03,w$=30,Yf=Me(e.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(n){const{t}=jt.createI18n("en-us",Yt),r=e.ref(!1),o=e.ref(!1),{responsePanelCollapsed:i}=ac(),{state:a,configNodeCounts:s,clearPendingLayout:c,setPendingFitView:l,commit:u,clear:p,portalSelection:d}=Pt(),f=e.useId(),m=`${f}-request`,g=`${f}-response`,y=Nt.useVueFlow(m),_=Nt.useVueFlow(g);function b(le,ge){const{onPaneClick:Oe,onNodesChange:$e,onEdgesChange:Pe,getSelectedNodes:qe,getSelectedEdges:Ye}=le,{removeSelectedElements:tt}=ge;function Ve(ke){if(!ke){tt();return}ke.some(_e=>_e.type==="select")&&qe.value.length+Ye.value.length>0&&tt()}$e(Ve),Pe(Ve),Oe(()=>Ve())}b(y,_),b(_,y),e.watch(d,le=>{le&&(y.removeSelectedElements(),_.removeSelectedElements())});const w=e.useTemplateRef("flowPanels"),C=e.useTemplateRef("requestLabel"),x=e.useTemplateRef("requestCanvasContainer"),E=e.useTemplateRef("requestFlow"),k=e.useTemplateRef("resizeHandle"),N=e.useTemplateRef("responseLabel"),B=e.useTemplateRef("responseCanvasContainer"),U=e.useTemplateRef("responseFlow"),S=Tt.useElementBounding(w),A=Tt.useElementBounding(C),O=Tt.useElementBounding(x),P=Tt.useElementBounding(k),R=Tt.useElementBounding(N),z=Tt.useElementBounding(B),X=e.computed(()=>Math.max(w$,S.height.value*Wf)),Z=e.computed(()=>S.height.value-A.height.value-P.height.value-R.height.value),K=e.computed(()=>{const le=Z.value;return le?Math.max(Wf,X.value/le):Wf}),W=e.ref(Hb),$=e.computed(()=>`${W.value*100}%`),ee=e.computed(()=>`${(1-W.value)*100}%`),F=e.computed(()=>W.value<=K.value),J=e.computed(()=>1-W.value<=K.value);function M(le,{persist:ge=!0}={}){const Oe=Math.min(1,Math.max(0,le));W.value=Oe,ge&&n.mode==="edit"&&(i.value=J.value)}function v(le,ge=!0){M(le?1:Hb,{persist:ge})}function j(le=!0){M(0,{persist:le})}if(n.mode==="edit"){const le=s.value.response===0,ge=i.value;v(le||ge,!1)}else e.watch(()=>s.value.response,le=>{v(le===0,!1)},{immediate:!0});const ie=()=>{n.resizable&&(F.value?v(!1):j())},re=()=>{n.resizable&&v(!J.value)},{isDragging:me}=Tt.useDraggable(k,{onMove(le){if(!n.resizable)return;const ge=Math.max(0,le.y-O.top.value),Oe=Math.min(1,Math.max(0,ge/Z.value));M(Oe,{persist:!1})},onEnd(){n.resizable&&(O.height.value<X.value?j():z.height.value<X.value?v(!0):M(W.value))}});function he(){e.nextTick(()=>{var le,ge;(le=E.value)==null||le.fitView(),(ge=U.value)==null||ge.fitView()})}return e.watch([r,o,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([le,ge,Oe,$e])=>{n.inactive||!le||!ge||!Oe&&!$e||(Oe&&c(),$e&&l(!1),setTimeout(async()=>{var Pe,qe;Oe&&(await((Pe=E.value)==null?void 0:Pe.autoLayout(!1)),await((qe=U.value)==null?void 0:qe.autoLayout(!1)),u("*"),Oe==="clearHistory"&&p()),$e&&setTimeout(()=>he(),0)},0))}),(le,ge)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"flowPanels",ref:w,class:"flow-panels"},[e.createElementVNode("div",{ref_key:"requestLabel",ref:C,class:e.normalizeClass(["label request",{resizable:n.resizable}]),onClick:ie},[n.resizable?(e.openBlock(),e.createBlock(e.unref(Re.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:F.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",g$,[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),e.createElementVNode("span",y$,[e.unref(s).request===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(s).request}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:x,class:e.normalizeClass(["canvas",{dragging:e.unref(me)}]),style:e.normalizeStyle({flexBasis:$.value})},[e.createVNode(ef,{ref_key:"requestFlow",ref:E,"flow-id":m,mode:n.mode,phase:"request",onInitialized:ge[0]||(ge[0]=Oe=>r.value=!0),onNodesChange:ge[1]||(ge[1]=Oe=>r.value=!1)},null,8,["mode"])],6),e.createElementVNode("div",{ref_key:"resizeHandle",ref:k,class:e.normalizeClass(["resize-handle",{resizable:n.resizable}])},null,2),e.createElementVNode("div",{ref_key:"responseLabel",ref:N,class:e.normalizeClass(["label response",{dragging:e.unref(me),resizable:n.resizable}]),onClick:re},[n.resizable?(e.openBlock(),e.createBlock(e.unref(Re.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:J.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",_$,[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),e.createElementVNode("span",b$,[e.unref(s).response===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(s).response}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:B,class:e.normalizeClass(["canvas response",{dragging:e.unref(me)}]),style:e.normalizeStyle({flexBasis:ee.value})},[e.createVNode(ef,{ref_key:"responseFlow",ref:U,"flow-id":g,mode:n.mode,phase:"response",onInitialized:ge[2]||(ge[2]=Oe=>o.value=!0),onNodesChange:ge[3]||(ge[3]=Oe=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-5a4fec80"]]),k$={class:"dk-confirm-modal-body"},C$={class:"connections"},E$=Me(e.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(n,{expose:t,emit:r}){const{i18n:{t:o}}=Xe(),i=r,a=e.ref(!1),s=e.ref(n.message),c=e.ref(n.addedConnections??[]),l=e.ref(n.removedConnections??[]);let u=null;function p(){a.value=!1,i("cancel"),u==null||u(!1)}function d(){a.value=!1,i("confirm"),u==null||u(!0)}async function f(m,g,y){return s.value=m,c.value=g??[],l.value=y??[],a.value=!0,await new Promise(_=>{u=_})}return t({open:f}),(m,g)=>{const y=e.resolveComponent("KModal");return e.openBlock(),e.createBlock(y,{"action-button-text":e.unref(o)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:n.title??e.unref(o)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:p,onProceed:d},{default:e.withCtx(()=>[e.createElementVNode("div",k$,[e.createElementVNode("p",null,e.toDisplayString(s.value),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),e.createElementVNode("div",C$,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value??[],([_,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${_}-${b}`,class:"connection"},[e.createVNode(e.unref(Re.AddIcon),{color:`var(--kui-color-background-success, ${e.unref(o1)})`},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(_)+" → "+e.toDisplayString(b),1)]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value??[],([_,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${_}-${b}`,class:"connection"},[e.createVNode(e.unref(Re.RemoveIcon),{color:`var(--kui-color-text-danger, ${e.unref(Ph)})`},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(_)+" → "+e.toDisplayString(b),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-e6df03c2"]]),N$={class:"dk-editor-nav"},S$={class:"top"},x$={class:"bottom"},A$=Me(e.defineComponent({__name:"EditorNav",emits:["back"],setup(n,{emit:t}){const{t:r}=jt.createI18n("en-us",Yt),o=t,i=[{label:r("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Re.ArrowLeftIcon,onClick:()=>o("back")}],{sidePanelExpanded:a}=ac(),s=e.computed(()=>a.value?r("plugins.free-form.datakit.flow_editor.collapse_panel"):r("plugins.free-form.datakit.flow_editor.expand_panel")),c=e.ref(!1);function l(){a.value=!a.value}return(u,p)=>(e.openBlock(),e.createElementBlock("nav",N$,[e.createElementVNode("div",S$,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(i,({label:d,to:f,icon:m,onClick:g})=>e.createVNode(e.unref(Fe.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(Fe.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:f,onClick:g},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m),{decorative:"",size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),e.createElementVNode("div",x$,[e.createElementVNode("div",{class:e.normalizeClass(["side-panel-toggle",{expanded:e.unref(a)}]),onTransitionend:p[0]||(p[0]=e.withModifiers(d=>c.value=!1,["self"])),onTransitionstart:p[1]||(p[1]=e.withModifiers(d=>c.value=!0,["self"]))},[e.createVNode(e.unref(Fe.KTooltip),{label:c.value?void 0:s.value,placement:e.unref(a)?"left":"right"},{default:e.withCtx(()=>[e.createVNode(e.unref(Fe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:l},{default:e.withCtx(()=>[e.unref(a)?(e.openBlock(),e.createBlock(e.unref(Re.ChevronDoubleLeftIcon),{key:0,decorative:"",size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["size"])):(e.openBlock(),e.createBlock(e.unref(Re.ChevronDoubleRightIcon),{key:1,decorative:"",size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-0dcd2605"]]),v$={class:"dk-editor-main"},I$={class:"header"},B$={class:"actions"},T$={class:"settings"},O$={ref:"canvasContainer",class:"body"},P$=Me(e.defineComponent({__name:"EditorMain",setup(n){const{t}=jt.createI18n("en-us",Yt),{modalOpen:r,undo:o,redo:i,canUndo:a,canRedo:s,load:c}=Pt();function l(f){return t(`plugins.free-form.datakit.examples.${f}`)}function u(f){const m=Ln.load(f.code,{schema:Eo,json:!0});if(typeof m!="object"||m===null)return;const g=m,y={config:{...g,nodes:g.nodes??[]}};c(y,!0)}function p(){r.value=!1}Oh({enabled:r,undo:o,redo:i});const d={maxWidth:"300px",zIndex:1e4};return(f,m)=>(e.openBlock(),e.createElementBlock("div",v$,[e.createElementVNode("header",I$,[e.createElementVNode("div",B$,[e.createVNode(e.unref(Fe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(xl,{keys:e.unref(ol).undo,label:e.unref(t)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Fe.KButton),{appearance:"tertiary",disabled:!e.unref(a),icon:"",onClick:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),e.createVNode(e.unref(Fe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(xl,{keys:e.unref(ol).redo,label:e.unref(t)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Fe.KButton),{appearance:"tertiary",disabled:!e.unref(s),icon:"",onClick:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),m[0]||(m[0]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createElementVNode("div",T$,[e.createVNode(vn,{label:e.unref(t)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:e.unref(t)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:d},name:"config.debug"},null,8,["label","label-attributes"])]),m[1]||(m[1]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createVNode(e.unref(Fe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":e.unref(t)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Gb),g=>(e.openBlock(),e.createBlock(e.unref(Fe.KDropdownItem),{key:g.id,onClick:y=>u(g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l(g.i18nKey)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),e.createVNode(e.unref(Fe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),e.createVNode(e.unref(Re.ExternalLinkIcon))]),_:1}),e.createVNode(e.unref(Fe.KButton),{onClick:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),e.createElementVNode("div",O$,[e.createVNode(Yf,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-1cf532ff"]]),V$=["draggable"],$$={class:"icon"},R$={class:"content"},L$={class:"title"},D$={class:"description"},M$=Me(e.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(n,{emit:t}){e.useCssVars(l=>({f502bd0e:e.unref(a),v4b2eb58e:e.unref(s)}));const r=t,{summary:o,icon:i}=yl[n.type],{colors:{background:a,foreground:s}}=cI(yl[n.type].group);function c(l){r("dragstart",l,n.type)}return(l,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-node-panel-item",{[`node-type-${n.type}`]:!0,unsupported:n.unsupported}]),draggable:!n.unsupported,onDragstart:c},[e.createElementVNode("div",$$,[e.createVNode(e.unref(i),{size:16})]),e.createElementVNode("div",R$,[e.createElementVNode("div",L$,e.toDisplayString(n.type),1),e.createElementVNode("div",D$,e.toDisplayString(e.unref(o)),1)])],42,V$))}}),[["__scopeId","data-v-829422ff"]]),j$={class:"dk-node-panel"},F$={key:0,class:"title"},U$={class:"node-list"},K$={class:"group-title"},q$={class:"group-items"},G$={"aria-hidden":"true",class:"preview",inert:""},H$=Me(e.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(n){const{t}=jt.createI18n("en-us",Yt),{createNode:r}=Pt(),o=e.inject(dr.KM_2446_DATAKIT_JWT_NODES,!1),i=e.computed(()=>o?xy:xy.filter(({id:u})=>u!=="authentication")),a=`dk-drag-preview-${e.useId()}`,s=e.shallowRef(),c=e.computed(()=>s.value?[{id:"preview",type:"flow",data:s.value,position:{x:0,y:0}}]:[]),l=async(u,p)=>{var S,A,O;const d=u.currentTarget,{left:f,top:m,width:g,height:y}=d.getBoundingClientRect(),_=u.clientX-f,b=u.clientY-m;s.value=r({type:p}),await e.nextTick();const w=document.querySelector(`#${a}`)||d,C=w.cloneNode(!0);C.classList.add("dk-drag-snapshot");const{offsetWidth:x,offsetHeight:E}=w;Object.assign(C.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${x}px`,height:`${E}px`}),document.body.appendChild(C);const k=_/g,N=b/y,B={ratioX:k,ratioY:N,offsetX:x*k,offsetY:E*N},U={action:"create-node",data:{type:p,anchor:B}};(S=u.dataTransfer)==null||S.setData(pa,JSON.stringify(U)),(A=u.dataTransfer)==null||A.setData(`${pa}/${p}`,p),(O=u.dataTransfer)==null||O.setDragImage(C,B.offsetX,B.offsetY),requestAnimationFrame(()=>{C.remove(),s.value=void 0})};return(u,p)=>{const d=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",j$,[n.hideTitle?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("h3",F$,[e.createVNode(d,{class:"label",info:e.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),e.createElementVNode("div",U$,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,f=>(e.openBlock(),e.createElementBlock("section",{key:f.id,class:"node-group"},[e.createElementVNode("h4",K$,e.toDisplayString(f.title),1),e.createElementVNode("div",q$,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.nodes,m=>(e.openBlock(),e.createBlock(M$,{key:m.type,type:m.type,onDragstart:l},null,8,["type"]))),128))])]))),128))]),e.createElementVNode("div",G$,[e.createVNode(e.unref(Nt.VueFlow),{nodes:c.value},{"node-flow":e.withCtx(f=>[e.createVNode(Gy,{id:a,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-f2040974"]]);function z$(){const{addField:n,getNodeByName:t,removeField:r,replaceConfig:o,renameField:i,disconnectOutEdges:a,nodeMapByName:s}=Pt(),c=t("vault");if(!c)throw new Error("no vault node");const l=e.computed(()=>{var g;return((g=s.value.get("vault"))==null?void 0:g.config)||{}});return{formData:e.computed(()=>({vault:{...l.value}})),addVault:(g,y)=>{n(c.id,"output",g,!1);const _={...c.config,[g]:y};o(c.id,_)},removeVault:g=>{const y=Yr(c,"output",g);if(!y)return;const _=c.fields.output.length===1;r(c.id,y.id,!0,!1);const b=Wr(c.config,g);o(c.id,b,!_),_&&a(c.id)},updateVault:(g,y,_=!0)=>{const b={...c.config,[g]:y};o(c.id,b,_)},renameVault:(g,y,_=!0)=>{var x;const b=Yr(c,"output",g);if(!b)return;i(c.id,b.id,y,!1);const w=((x=c.config)==null?void 0:x[g])??"",C={...Wr(c.config,g),[y]:w};o(c.id,C,_)}}}const W$=e.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(n,{emit:t}){const r=t,{i18n:{t:o}}=st.useI18n(),i=e.inject(Qe.FORMS_CONFIG),a=e.ref(n.secretName||""),s=e.ref(""),c=e.computed(()=>a.value.trim()?n.validateName(a.value.trim(),n.isEditing)===void 0:!1),l=e.computed(()=>!c.value),u=()=>{const m=a.value.trim(),g=n.validateName(m,n.isEditing);return s.value=g||"",g===void 0},p=()=>{s.value="",u()},d=m=>{u()&&r("proceed",{secretRef:m,secretName:a.value.trim()})},f=()=>{a.value="",s.value="",r("cancel")};return e.watch(()=>n.secretName,m=>{a.value=m||"",s.value=""}),(m,g)=>{const y=e.resolveComponent("KInput"),_=e.resolveComponent("KEmptyState");return e.unref(i)?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPicker),{key:0,"additional-disabled":l.value,config:e.unref(i),"proceed-button-text":e.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:n.secretRef,title:e.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:f,onProceed:d},{"form-prefix":e.withCtx(()=>[e.createVNode(y,{"model-value":a.value,"onUpdate:modelValue":[g[0]||(g[0]=b=>a.value=b),p],"data-testid":"vault-secret-picker-secret-name-input",error:!!s.value,"error-message":s.value,label:e.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:e.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:e.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(e.openBlock(),e.createBlock(_,{key:1,"icon-variant":"error",message:e.unref(o)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),Y$={class:"dk-vault-panel"},J$={class:"title"},X$={class:"vault-list"},Z$={key:0,class:"vault-list-item"},Q$={class:"vault-list-item-key"},eR={class:"vault-list-item-key-text"},tR=Me(e.defineComponent({__name:"VaultField",props:{autofocus:{type:Boolean},name:{},labelAttributes:{}},emits:["update","add","remove"],setup(n,{emit:t}){const r=n,o=t,{keys:i,addKey:a,removeKey:s,updateKey:c,getKeyName:l}=df(e.toRef(r,"name")),u=Gt(e.toRef(r,"name")),p=e.ref(null),d=e.ref(null),f=e.computed(()=>{if(!p.value)return null;const E=l(p.value),k=u.value?u.value.value[p.value]:void 0;return E===void 0||k===void 0?null:{id:p.value,key:E,value:k}}),{i18n:{t:m}}=st.useI18n(),g=e.computed(()=>new Set(i.value.map(([,E])=>E))),y=()=>{if(!u.value)return;const k=a();d.value=k,p.value=k},_=()=>{p.value=null,d.value&&(s(d.value),d.value=null)},b=E=>{if(!f.value)throw new Error("no selected entry");const k=f.value.key,N=k!==E.secretName,B=f.value.value!==E.secretRef,U=N||B;f.value.value=E.secretRef,f.value.key=E.secretName,B&&(u.value.value[f.value.id]=E.secretRef),N&&c(f.value.id,E.secretName),d.value?o("add",E.secretName,E.secretRef):U&&o("update",E.secretName,E.secretRef,N?k:void 0),d.value=null,_()},w=E=>{p.value=E},C=E=>{const k=l(E);s(E),o("remove",k)},x=(E,k)=>{var N;if(!E)return m("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(g.value.has(E)&&!(k&&E===((N=f.value)==null?void 0:N.key)))return m("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(E,k)=>{var S,A;const N=e.resolveComponent("KButton"),B=e.resolveComponent("KDropdownItem"),U=e.resolveComponent("KDropdown");return e.openBlock(),e.createElementBlock("div",Y$,[e.createElementVNode("h3",J$,e.toDisplayString(e.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),e.createVNode(N,{appearance:"tertiary",class:"add-button",size:"small",onClick:y},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),e.createElementVNode("div",X$,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),([O,P])=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:O},[P?(e.openBlock(),e.createElementBlock("div",Z$,[e.createElementVNode("div",Q$,[e.createVNode(e.unref(Re.KeyIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:16},null,8,["color"]),e.createElementVNode("div",eR,e.toDisplayString(P),1)]),e.createVNode(U,null,{items:e.withCtx(()=>[e.createVNode(B,{onClick:R=>w(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),e.createVNode(B,{danger:"",onClick:R=>C(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:e.withCtx(()=>[e.createVNode(N,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{color:`var(--kui-color-text, ${e.unref(od)})`},null,8,["color"])]),_:1})]),_:2},1024)])):e.createCommentVNode("",!0)],64))),128))]),e.createVNode(W$,{"is-editing":!!p.value&&!d.value,"secret-name":(S=f.value)==null?void 0:S.key,"secret-ref":(A=f.value)==null?void 0:A.value,"validate-name":x,onCancel:_,onProceed:b},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-a7726f48"]]);function nR(){const{getSchema:n}=ft();return e.computed(()=>{const t=n("config.resources");if(!t)throw new Error("Failed to get resource schema");const r=vr(t);return r.fields.forEach(o=>{const i=Object.keys(o)[0];if(i==="cache"){const a=o[i];o[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]},a.fields.forEach(s=>{const c=Object.keys(s)[0];if(c==="redis"){const l=s[c];s[c]={...l},delete s[c].required}})}}),r})}const rR={key:1},oR=["innerHTML"],iR={class:"horizontal-container"},Jf=Me(e.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(n,{emit:t}){const r=t,o=e.createPropsRestProxy(n,["name","items"]),{getSelectItems:i}=ft(),a=Gt(e.toRef(()=>n.name)),s=hn(a.path,o),c=e.computed(()=>n.items?n.items:a.path?i(a.path.value):[]),l=u=>{a.value&&(a.value.value=u),r("update:modelValue",u)};return(u,p)=>{var m;const d=e.resolveComponent("KAlert"),f=e.resolveComponent("KLabel");return e.unref(a).error?(e.openBlock(),e.createBlock(d,{key:0,appearance:"danger",message:e.unref(a).error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",rR,[e.createVNode(f,e.normalizeProps(e.guardReactiveProps(e.unref(s).labelAttributes)),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s).label)+" ",1)]),_:2},[(m=e.unref(s).labelAttributes)!=null&&m.info?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:e.unref(s).labelAttributes.info},null,8,oR)]),key:"0"}:void 0]),1040),e.createElementVNode("div",iR,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,g=>(e.openBlock(),e.createBlock(e.unref(Fe.KRadio),{key:g.value,"model-value":e.unref(a).value.value,"onUpdate:modelValue":[p[0]||(p[0]=y=>e.unref(a).value.value=y),l],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[e.vShow,!e.unref(a).hide.value]])}}}),[["__scopeId","data-v-7c0483f3"]]),aR={class:"dk-cache-panel"},sR={class:"title"},lR={key:0,class:"cache-item"},cR={class:"cache-item-key"},uR={class:"cache-item-key-text"},dR={class:"dk-resource-cache-form"},fR={key:1},pR={key:2,class:"dk-cache-inline-redis"},mR={key:3,class:"dk-cache-redis-editor"},hR={key:0,class:"redis-editor-error"},gR=Me(e.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(n,{emit:t}){const r=Ln.dump({host:"127.0.0.1",port:6379},{indent:2}),o=t,{getDefault:i,formData:a}=ft(),s=Gt("cache");if(s.error)throw new Error("No cache schema");const c=e.inject(Ai),l=e.computed(()=>!!c),u=e.shallowRef(""),p=e.ref(""),d=e.ref(!1),{i18n:{t:f}}=st.useI18n(),m=e.computed(()=>{var N,B,U;return g.value==="redis"?l.value?!!((N=a.cache)!=null&&N.partial_id||(B=a.cache)!=null&&B.redis):!!((U=a.cache)!=null&&U.redis)&&!p.value:!0}),g=e.computed(()=>{var N;return(N=s.value.value)==null?void 0:N.strategy}),y=e.computed(()=>{var N;return(N=s.value.value)!=null&&N.redis?Ln.dump(s.value.value.redis,{indent:2,noRefs:!0}):""});e.watch([d,g],([N,B])=>{N&&B==="redis"&&!l.value&&(u.value=y.value||r,p.value="")}),e.watch(u,N=>{var B;if(!l.value&&g.value==="redis")try{const U=Ln.load(N,{json:!0});U&&typeof U=="object"&&(a.cache.redis=U,p.value="")}catch(U){p.value=((B=U.message)==null?void 0:B.split(`
439
- `)[0])||"Invalid YAML"}});const _=()=>{d.value=!0},b=()=>{d.value=!1,o("cancel")},w=()=>{o("remove")},C=()=>{_(),s.value.value||(s.value.value=i("cache"),s.value.value.strategy="memory")},x=()=>{d.value=!1,o("update",a)},E=()=>{var N,B;g.value==="memory"&&((N=a.cache)!=null&&N.partial_id)&&((B=a.cache)==null||delete B.partial_id)};async function k({codeElement:N,language:B,code:U}){N.innerHTML=await zC.codeToHtml(U,{lang:B,theme:"catppuccin-mocha",structure:"inline"})}return(N,B)=>{const U=e.resolveComponent("KButton"),S=e.resolveComponent("KDropdownItem"),A=e.resolveComponent("KDropdown"),O=e.resolveComponent("KLabel"),P=e.resolveComponent("KCodeBlock"),R=e.resolveComponent("KModal");return e.openBlock(),e.createElementBlock("div",aR,[e.createElementVNode("h3",sR,e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),n.strategy?(e.openBlock(),e.createElementBlock("div",lR,[e.createElementVNode("div",cR,[e.createVNode(e.unref(Re.DatabaseIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"]),e.createElementVNode("div",uR,e.toDisplayString(n.strategy),1)]),e.createVNode(A,null,{items:e.withCtx(()=>[e.createVNode(S,{onClick:_},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),e.createVNode(S,{danger:"",onClick:w},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(U,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{color:`var(--kui-color-text, ${e.unref(od)})`},null,8,["color"])]),_:1})]),_:1})])):(e.openBlock(),e.createBlock(U,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),e.createVNode(R,{"action-button-disabled":!m.value,"action-button-text":e.unref(f)("actions.save"),"max-width":"640px",title:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:d.value,onCancel:b,onProceed:x},{default:e.withCtx(()=>{var z,X;return[e.createElementVNode("div",dR,[e.createVNode(Jf,{items:[{label:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":E},null,8,["items"]),g.value==="memory"?(e.openBlock(),e.createBlock(it,{key:0,name:"memory.dictionary_name"})):e.createCommentVNode("",!0),g.value==="redis"&&l.value?(e.openBlock(),e.createElementBlock("div",fR,[e.createVNode(O,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),e.createVNode(e.unref(Bh.RedisConfigurationSelector),{"model-value":(z=e.unref(a).cache)==null?void 0:z.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":B[0]||(B[0]=Z=>e.unref(a).cache.partial_id=Z)},null,8,["model-value"])])):e.createCommentVNode("",!0),g.value==="redis"&&l.value&&!((X=e.unref(a).cache)!=null&&X.partial_id)&&y.value?(e.openBlock(),e.createElementBlock("div",pR,[e.createElementVNode("div",null,e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),e.createVNode(P,{id:"dk-cache-redis-configuration",code:y.value,language:"yaml",theme:"dark",onCodeBlockRender:k},null,8,["code"])])):e.createCommentVNode("",!0),g.value==="redis"&&!l.value?(e.openBlock(),e.createElementBlock("div",mR,[e.createVNode(O,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config")),1)]),_:1}),e.createVNode(e.unref(ua.MonacoEditor),{modelValue:u.value,"onUpdate:modelValue":B[1]||(B[1]=Z=>u.value=Z),appearance:"standalone",class:"redis-editor",language:"yaml",theme:"light"},null,8,["modelValue"]),p.value?(e.openBlock(),e.createElementBlock("p",hR,e.toDisplayString(p.value),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-6b125ed7"]]),yR={class:"dk-resources-panel"},_R=Me(e.defineComponent({__name:"ResourcesPanel",setup(n){const t=nR(),r=e.ref(0),{addVault:o,removeVault:i,updateVault:a,renameVault:s,formData:c}=z$();function l(y,_,b){b&&b!==y&&s(b,y,!1),a(y,_)}const{state:u,commit:p}=Pt(),d=e.computed(()=>({cache:u.value.cacheConfig}));function f(y){u.value.cacheConfig=y.cache,p()}function m(){u.value.cacheConfig=void 0,p()}function g(){r.value++}return(y,_)=>(e.openBlock(),e.createElementBlock("div",yR,[e.createVNode(Jt,{data:e.unref(c),schema:e.unref(t)},{default:e.withCtx(()=>[e.createVNode(tR,{name:"vault",onAdd:e.unref(o),onRemove:e.unref(i),onUpdate:l},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),_[0]||(_[0]=e.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(e.openBlock(),e.createBlock(Jt,{key:`${r.value}`,data:d.value,schema:e.unref(t)},{default:e.withCtx(()=>{var b;return[e.createVNode(gR,{strategy:(b=d.value.cache)==null?void 0:b.strategy,onCancel:g,onRemove:m,onUpdate:f},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-9093c001"]]),bR={class:"header"},wR={class:"title"},kR={class:"body"},CR={class:"panel"},ER=Me(e.defineComponent({__name:"SidePanel",setup(n){const{t}=jt.createI18n("en-us",Yt),{sidePanelExpanded:r}=ac(),{propertiesPanelOpen:o,selectedNode:i}=Pt(),a=e.ref("nodes");function s(){o.value=!1}e.watch(i,l=>{l||s()});const c=e.ref(!1);return e.onMounted(()=>{c.value=!0}),(l,u)=>{const p=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["side-panel",{expanded:e.unref(r),inited:c.value}])},[e.createElementVNode("header",bR,[e.createElementVNode("h2",wR,e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.name")),1)]),e.createElementVNode("div",kR,[e.createElementVNode("div",CR,[e.createVNode(p,{modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=d=>a.value=d),options:[{label:e.unref(t)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:e.unref(t)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),a.value==="nodes"?(e.openBlock(),e.createBlock(H$,{key:0,class:"node-panel","hide-title":""})):e.createCommentVNode("",!0),a.value==="resources"?(e.openBlock(),e.createBlock(_R,{key:1})):e.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-9e854e60"]]),NR=e.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(n){return(t,r)=>(e.openBlock(),e.createBlock(Dt,{items:e.unref(nf)([...e.unref(Ny)]),name:n.name},null,8,["items","name"]))}});function SR(n,t){const r=[],o=(i,a)=>{typeof a=="string"&&r.push({nodeName:n.name,path:["nodes",t,...i],value:a})};if("input"in n&&n.input!=null&&o(["input"],n.input),"inputs"in n&&n.inputs&&typeof n.inputs=="object")for(const[i,a]of Object.entries(n.inputs))a!=null&&o(["inputs",i],a);if("output"in n&&n.output!=null&&o(["output"],n.output),"outputs"in n&&n.outputs&&typeof n.outputs=="object")for(const[i,a]of Object.entries(n.outputs))a!=null&&o(["outputs",i],a);return r}function xR(n){const t=n.path[2];return t==="output"||t==="outputs"}function zb(n){if(!n)return!1;for(const t of Object.values(n))if(t!=null)return!0;return!1}function Wb(n,t){const r=n.input!==void 0&&n.input!==null,o=zb(n.inputs);r&&o&&t.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=n.output!==void 0&&n.output!==null,a=zb(n.outputs);i&&a&&t.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function Yb(n,t,r){if(!n.nodes)return;const o=n.nodes.map(l=>l.name),i=new Set;o.forEach((l,u)=>{i.has(l)&&r.addIssue({code:"custom",message:`Duplicate node name: "${l}"`,path:["nodes",u,"name"]}),i.add(l)});const a=new Set([...t,...o]),s=new Map,c=new Map;n.nodes.forEach((l,u)=>{for(const p of SR(l,u)){const d=p.value.split(".",1)[0];if(a.has(d)||r.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${p.value}"`,path:p.path}),xR(p)){const f=`${p.nodeName}->${d}`;c.has(f)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${p.nodeName}" outputs to "${d}" and "${d}" inputs from "${p.nodeName}". Specify it on one side only.`,path:p.path}):s.set(f,s.get(f)??p.path)}else{const f=`${d}->${p.nodeName}`;s.has(f)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${d}" outputs to "${p.nodeName}" and "${p.nodeName}" inputs from "${d}". Specify it on one side only.`,path:p.path}):c.set(f,c.get(f)??p.path)}}})}const AR=Q.z.enum(Cy),vR=Q.z.enum(ei),Jb=n=>ei.includes(n),Xf=Q.z.enum(Ey),Xb=Xf.options;Q.z.union([Xf,AR]);const IR=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,sc=Q.z.string().min(1).max(255).regex(IR,"Invalid node name (snake_case / kebab-case only)").refine(n=>!Jb(n),"Name clashes with reserved implicit node").brand(),Zb=Q.z.union([vR,sc]),BR=Q.z.string().min(1).brand(),TR=["then","else"];Q.z.enum(TR);const ct=Q.z.string().min(1).max(255).refine(n=>{if(Zb.safeParse(n).success)return!0;const t=n.match(/^([^.]+)\.([^.]+)$/);if(!t)return!1;const[,r,o]=t;return Zb.safeParse(r).success&&BR.safeParse(o).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),OR=Q.z.object({body:ct,headers:ct,http_proxy:ct,https_proxy:ct,proxy_auth_password:ct,proxy_auth_username:ct,query:ct,url:ct}).partial().strict(),PR=Q.z.object({headers:ct,body:ct}).partial().strict(),VR=Q.z.object({data:ct,key:ct,ttl:ct}).partial().strict(),$R=Q.z.object({claims:ct,key:ct}).partial().strict(),RR=Q.z.object({key:ct,token:ct}).partial().strict(),Qb=Q.z.enum(Ny),ew=Q.z.enum(Md),Fn=Q.z.object({type:Q.z.string(),name:sc,input:ct,inputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish(),output:ct,outputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish()}).loose().superRefine((n,t)=>{Wb(n,t)}),LR=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((n,t)=>{const r=n.type,o=n.name;(typeof o!="string"||o.length===0||o.includes("."))&&t.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),Xb.includes(r)||t.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${Xb.join(", ")}`})}),DR=Fn.safeExtend({type:Q.z.literal("call"),method:Qb.default("GET").nullish(),ssl_server_name:Q.z.string().nullish(),ssl_verify:Q.z.boolean().default(!0).nullish(),timeout:Q.z.number().int().min(0).max(2147483646).nullish(),url:Q.z.url().nullish(),inputs:OR.nullish(),outputs:Q.z.object({body:ct,headers:ct,raw_body:ct,status:ct}).partial().nullish()}).strict(),MR=Fn.safeExtend({type:Q.z.literal("exit"),status:Q.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:Q.z.boolean().nullish(),inputs:PR.nullish(),output:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),jR=Fn.safeExtend({type:Q.z.literal("jq"),jq:Q.z.string().min(1).max(10240),outputs:Q.z.never().nullish()}).strict(),FR=Fn.safeExtend({type:Q.z.literal("xml_to_json"),recognize_type:Q.z.boolean().nullish().default(!0),attributes_block_name:Q.z.string().min(1).max(32).nullish(),attributes_name_prefix:Q.z.string().min(1).max(32).nullish(),text_block_name:Q.z.string().min(1).max(32).nullish().default("#text"),text_as_property:Q.z.boolean().nullish().default(!1),xpath:Q.z.string().min(1).max(256).nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict().superRefine((n,t)=>{!n.attributes_block_name&&!n.attributes_name_prefix&&(t.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),t.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),UR=Fn.safeExtend({type:Q.z.literal("json_to_xml"),attributes_block_name:Q.z.string().min(1).max(32).nullish(),attributes_name_prefix:Q.z.string().min(1).max(32).nullish(),root_element_name:Q.z.string().min(1).max(64).nullish(),text_block_name:Q.z.string().min(1).max(32).nullish().default("#text"),inputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish(),outputs:Q.z.never().nullish()}).strict().superRefine((n,t)=>{!n.attributes_block_name&&!n.attributes_name_prefix&&(t.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),t.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),KR=Fn.safeExtend({type:Q.z.literal("jwt_decode"),inputs:Q.z.never().nullish(),outputs:Q.z.object({header:ct,payload:ct,signature:ct}).partial().nullish()}).strict(),qR=Fn.safeExtend({type:Q.z.literal("jwt_sign"),algorithm:ew,expires_in:Q.z.number().int().min(1).default(300).nullish(),inputs:$R.nullish(),kid:Q.z.string().nullish(),not_before:Q.z.number().int().min(0).default(0).nullish(),outputs:Q.z.object({claims:ct,header:ct,token:ct}).partial().nullish(),static_claims:Q.z.record(Q.z.string(),Q.z.string()).default({}).nullish(),typ:Q.z.string().default("JWT").nullish()}).strict(),GR=Fn.safeExtend({type:Q.z.literal("jwt_verify"),allowed_algorithms:Q.z.array(ew).default([]).nullish(),audiences:Q.z.array(Q.z.string()).default([]).nullish(),inputs:RR.nullish(),issuers:Q.z.array(Q.z.string()).default([]).nullish(),leeway:Q.z.number().int().min(0).default(0).nullish(),outputs:Q.z.object({claims:ct,header:ct}).partial().nullish(),required_claims:Q.z.array(Q.z.string()).default([]).nullish(),validate_exp:Q.z.boolean().default(!0).nullish(),validate_nbf:Q.z.boolean().default(!0).nullish()}).strict(),HR=Fn.safeExtend({type:Q.z.literal("property"),content_type:Q.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Q.z.string().min(1).max(255),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),zR=Fn.safeExtend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()),input:Q.z.never().nullish(),inputs:Q.z.never().nullish()}).strict(),WR=Fn.safeExtend({type:Q.z.literal("cache"),bypass_on_error:Q.z.boolean().nullish(),inputs:VR.nullish(),outputs:Q.z.object({data:ct,hit:ct,miss:ct,stored:ct}).partial().nullish(),ttl:Q.z.number().int().gt(0).nullish()}).strict(),YR=Fn.safeExtend({type:Q.z.literal("branch"),then:Q.z.array(sc).min(1).max(64).nullish(),else:Q.z.array(sc).min(1).max(64).nullish()}).strict(),JR=LR.pipe(Q.z.discriminatedUnion("type",[DR,MR,jR,FR,UR,KR,qR,GR,HR,zR,WR,YR])),XR=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),ZR=Q.z.object({dictionary_name:Q.z.string().nullish().default("kong_db_cache")}),QR=Q.z.object({host:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),e2=Q.z.object({ip:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),t2=Q.z.object({host:Q.z.string().nullish().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:Q.z.string().nullish(),password:Q.z.string().nullish(),sentinel_username:Q.z.string().nullish(),sentinel_password:Q.z.string().nullish(),database:Q.z.number().int().nullish().default(0),keepalive_pool_size:Q.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:Q.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:Q.z.string().nullish(),sentinel_role:Q.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:Q.z.array(QR).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:Q.z.array(e2).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:Q.z.boolean().default(!1).nullish(),ssl_verify:Q.z.boolean().default(!0).nullish(),server_name:Q.z.string().nullish(),cluster_max_redirections:Q.z.number().int().default(5).nullish(),connection_is_proxied:Q.z.boolean().default(!1).nullish(),cloud_authentication:Q.z.object({auth_provider:Q.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:Q.z.string().nullish(),aws_assume_role_arn:Q.z.string().nullish(),aws_cache_name:Q.z.string().nullish(),aws_is_serverless:Q.z.boolean().default(!0).nullish(),aws_region:Q.z.string().nullish(),aws_role_session_name:Q.z.string().nullish(),aws_secret_access_key:Q.z.string().nullish(),azure_client_id:Q.z.string().nullish(),azure_client_secret:Q.z.string().nullish(),azure_tenant_id:Q.z.string().nullish(),gcp_service_account_json:Q.z.string().nullish()}).nullish(),timeout:Q.z.number().int().nullish(),sentinel_addresses:Q.z.array(Q.z.string()).min(1).nullish(),cluster_addresses:Q.z.array(Q.z.string()).min(1).nullish()}).superRefine((n,t)=>{var l;const r=n.host!==void 0&&n.host!==null,o=n.port!==void 0&&n.port!==null;(r&&!o||!r&&o)&&t.addIssue({code:"custom",message:"host and port must be specified together",path:r?["port"]:["host"]});const i=!!n.sentinel_master,a=!!n.sentinel_role,s=!!((l=n.sentinel_nodes)!=null&&l.length),c=[i,a,s].filter(Boolean).length;c>0&&c<3&&t.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),n.connection_is_proxied===!0&&!r&&t.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),n2=Q.z.object({strategy:Q.z.enum(["memory","redis"]).nullish(),memory:ZR,redis:t2}),r2=Q.z.object({vault:XR.nullish(),cache:n2.nullish()});Q.z.array(Q.z.object({id:Q.z.string()})),Q.z.object({nodes:Q.z.array(JR).min(1,"At least one node is required").max(64),debug:Q.z.boolean().default(!1).nullish(),resources:r2.nullish()}).strict().superRefine((n,t)=>{Yb(n,ei,t)});const tw=Xf.options,Zf=Q.z.string().min(1).refine(n=>!n.includes("."),"Invalid node name").refine(n=>!Jb(n),"Node name conflicts with reserved implicit node"),yt=Q.z.string().refine(n=>{if(!n||/\s/.test(n))return!1;const t=n.indexOf(".");if(t===-1)return!0;const r=n.slice(0,t),o=n.slice(t+1);return r.length>0&&o.length>0},"Invalid connection"),nw=Q.z.object({body:yt.nullish(),headers:yt.nullish(),query:yt.nullish()}).partial().strict(),rw=Q.z.object({headers:yt.nullish(),body:yt.nullish()}).partial().strict(),ow=Q.z.object({data:yt.nullish(),key:yt.nullish(),ttl:yt.nullish()}).partial().strict(),iw=Q.z.object({claims:yt.nullish(),key:yt.nullish()}).partial().strict(),aw=Q.z.object({key:yt.nullish(),token:yt.nullish()}).partial().strict(),o2={call:nw,exit:rw,cache:ow,jwt_sign:iw,jwt_verify:aw};function i2(n){const t=o2[n];return t?Object.keys(t.shape):null}const Un=Q.z.object({type:Q.z.string(),name:Zf,input:yt.nullish(),inputs:Q.z.record(Q.z.string(),yt.nullish()).nullish(),output:yt.nullish(),outputs:Q.z.record(Q.z.string(),yt.nullish()).nullish()}).loose().superRefine((n,t)=>{Wb(n,t)}),a2=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((n,t)=>{const r=n.type,o=n.name;(typeof o!="string"||o.length===0||o.includes("."))&&t.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),tw.includes(r)||t.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${tw.join(", ")}`})}),s2=Un.safeExtend({type:Q.z.literal("call"),method:Qb.nullish(),ssl_server_name:Q.z.string().nullish(),ssl_verify:Q.z.boolean().nullish(),timeout:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),url:Q.z.string().nullish(),inputs:nw.nullish(),outputs:Q.z.object({body:yt.nullish(),headers:yt.nullish(),status:yt.nullish()}).partial().nullish()}).strict(),l2=Un.safeExtend({type:Q.z.literal("exit"),status:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),warn_headers_sent:Q.z.boolean().nullish(),inputs:rw.nullish(),output:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),c2=Un.safeExtend({type:Q.z.literal("jq"),jq:Q.z.string().nullish(),outputs:Q.z.never().nullish()}).strict(),u2=Un.safeExtend({type:Q.z.literal("xml_to_json"),recognize_type:Q.z.boolean().nullish(),attributes_block_name:Q.z.string().nullish(),attributes_name_prefix:Q.z.string().nullish(),text_block_name:Q.z.string().nullish(),text_as_property:Q.z.boolean().nullish(),xpath:Q.z.string().nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),d2=Un.safeExtend({type:Q.z.literal("json_to_xml"),attributes_block_name:Q.z.string().nullish(),attributes_name_prefix:Q.z.string().nullish(),root_element_name:Q.z.string().nullish(),text_block_name:Q.z.string().nullish(),inputs:Q.z.record(Q.z.string(),yt.nullish()).nullish(),outputs:Q.z.never().nullish()}).strict(),f2=Un.safeExtend({type:Q.z.literal("property"),content_type:Q.z.string().nullish(),property:Q.z.string().nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),p2=Un.safeExtend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()).nullish(),input:Q.z.never().nullish(),inputs:Q.z.never().nullish()}).strict(),m2=Un.safeExtend({type:Q.z.literal("cache"),bypass_on_error:Q.z.boolean().nullish(),inputs:ow.nullish(),outputs:Q.z.object({data:yt.nullish(),hit:yt.nullish(),miss:yt.nullish(),stored:yt.nullish()}).partial().nullish(),ttl:Q.z.union([Q.z.number(),Q.z.string()]).nullish()}).strict(),h2=Un.safeExtend({type:Q.z.literal("jwt_decode"),inputs:Q.z.never().nullish(),outputs:Q.z.object({header:yt.nullish(),payload:yt.nullish(),signature:yt.nullish()}).partial().nullish()}).strict(),g2=Un.safeExtend({type:Q.z.literal("jwt_sign"),algorithm:Q.z.enum(Md).nullish(),expires_in:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),inputs:iw.nullish(),kid:Q.z.string().nullish(),not_before:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),outputs:Q.z.object({claims:yt.nullish(),header:yt.nullish(),token:yt.nullish()}).partial().nullish(),static_claims:Q.z.record(Q.z.string(),Q.z.string()).nullish(),typ:Q.z.string().nullish()}).strict(),y2=Un.safeExtend({type:Q.z.literal("jwt_verify"),allowed_algorithms:Q.z.array(Q.z.enum(Md)).nullish(),audiences:Q.z.array(Q.z.string()).nullish(),inputs:aw.nullish(),issuers:Q.z.array(Q.z.string()).nullish(),leeway:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),outputs:Q.z.object({claims:yt.nullish(),header:yt.nullish()}).partial().nullish(),required_claims:Q.z.array(Q.z.string()).nullish(),validate_exp:Q.z.boolean().nullish(),validate_nbf:Q.z.boolean().nullish()}).strict(),_2=Un.safeExtend({type:Q.z.literal("branch"),then:Q.z.array(Zf).nullish(),else:Q.z.array(Zf).nullish()}).strict(),b2=a2.pipe(Q.z.discriminatedUnion("type",[s2,l2,c2,u2,d2,h2,g2,y2,f2,p2,m2,_2])),w2=Q.z.record(Q.z.string(),Q.z.string()),k2=Q.z.object({dictionary_name:Q.z.string().nullish()}),C2=Q.z.object(),E2=Q.z.object({strategy:Q.z.enum(["memory","redis"]).nullish(),memory:k2.nullish(),redis:C2.nullish()}),N2=Q.z.object({vault:w2.nullish(),cache:E2.nullish()}),sw=Q.z.object({nodes:Q.z.array(b2).nullish(),debug:Q.z.boolean().nullish(),resources:N2.nullish()}).strict().superRefine((n,t)=>{!n||!Array.isArray(n.nodes)||Yb(n,ei,t)}).nullish(),lw=e.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(n){const{getSchema:t}=ft(),{i18n:r}=Xe(),o=e.computed(()=>{const i=t("inputs");if(!i)return[];const a=i.fields.map(c=>Object.keys(c)[0]);if(pn(n.nodeType))return a;const s=i2(n.nodeType);return s===null?a:s.length===0?[]:Pv(a,s)});return(i,a)=>(e.openBlock(),e.createBlock(Ft,{"as-child":"",name:n.name,"reset-label-path":"isolate"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,s=>(e.openBlock(),e.createBlock(Dt,{key:s,clearable:"","enable-filtering":"",items:n.items,name:s,placeholder:e.unref(r).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:c=>i.$emit("change:inputs",s,c?c.value:null)},e.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:e.withCtx(c=>[e.renderSlot(i.$slots,"item-label",e.mergeProps({ref_for:!0},c))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),S2=["data-testid"],x2={class:"dk-inputs-map-field-entry-body"},A2={class:"dk-inputs-map-field-entry-content"},v2=Me(e.defineComponent({__name:"InputsMapField",props:{name:{},items:{},fieldNameValidator:{},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field"],setup(n,{emit:t}){const r=n,o=t,{keys:i,addKey:a,removeKey:s,updateKey:c,getKeyName:l,field:u}=df(e.toRef(r,"name")),{value:p}=Gt(e.toRef(r,"name")),{i18n:{t:d}}=Xe(),f=e.useTemplateRef("root"),m=e.ref(null),g=e.ref({}),y=e.ref({});let _;const b=e.computed(()=>{var A;return(A=r.keyOrder)!=null&&A.length?[...i.value].sort((O,P)=>{const R=r.keyOrder.indexOf(O[1]),z=r.keyOrder.indexOf(P[1]);return(R===-1?1/0:R)-(z===-1?1/0:z)}):i.value});async function w(A,O="key"){var P;f.value&&(await e.nextTick(),(P=f.value.querySelector(`[data-${O}-input="${A}"]`))==null||P.focus())}function C(){const A=a();if(!A)return;y.value[A]="";const O=b.value.findIndex(([,P])=>!P);w(O===-1?b.value.length-1:O),m.value=A}function x(A,O){s(A),delete y.value[A],delete g.value[A],A===m.value&&(m.value=null),O.trim()!==""&&o("remove:field",O)}function E(A){_=y.value[A]??l(A)??""}function k(A,O){const P=O.trim();y.value[A]=P,B(A,P)}function N(A){var P;const O=y.value[A]??l(A)??"";if(B(A,O)){y.value[A]=_,c(A,_),delete g.value[A];return}if(A===m.value){if(O.trim()==="")return;c(A,O),o("add:field",O,((P=p==null?void 0:p.value)==null?void 0:P[A])??null),m.value=null}else c(A,O),o("rename:field",_,O);delete g.value[A],_=O}function B(A,O){delete g.value[A];const P=r.fieldNameValidator("input",_,O);if(P)return g.value[A]=P,P}function U(A){B(A,y.value[A]??l(A)??"")}function S(A,O){if(p!=null&&p.value&&(p.value[A]=O),A===m.value)return;const P=l(A);P&&o("change:inputs",P,O)}return e.watch(i,A=>{const O=new Set(A.map(([P])=>P));Object.keys(y.value).forEach(P=>{O.has(P)?y.value[P]=y.value[P]??l(P)??"":(delete y.value[P],delete g.value[P])}),A.forEach(([P,R])=>{y.value[P]=y.value[P]??R}),m.value&&!O.has(m.value)&&(m.value=null)},{immediate:!0}),e.watch(()=>r.keyOrder,()=>{if(!m.value)return;const A=b.value.findIndex(([O])=>O===m.value);A!==-1&&w(A)}),(A,O)=>{const P=e.resolveComponent("KAlert"),R=e.resolveComponent("KLabel"),z=e.resolveComponent("KInput"),X=e.resolveComponent("KSelect"),Z=e.resolveComponent("KButton");return e.unref(u).error?(e.openBlock(),e.createBlock(P,{key:0,appearance:"danger",message:e.unref(u).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-inputs-map-field"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,([K,W],$)=>{var ee;return e.openBlock(),e.createElementBlock("div",{key:K,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${e.unref(u).path.value}.${$}`},[e.createVNode(R,{for:`ff-kv-entry-key-${e.unref(u).path.value}.${$}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),e.createElementVNode("div",x2,[e.createElementVNode("div",A2,[e.createVNode(z,{id:`ff-kv-entry-key-${e.unref(u).path.value}.${$}`,class:"ff-kv-field-entry-key","data-key-input":$,"data-testid":`ff-key-${e.unref(u).path.value}.${$}`,error:!!g.value[K],"error-message":g.value[K],"model-value":y.value[K]??W,placeholder:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:F=>U(K),onChange:F=>N(K),onFocus:F=>E(K),"onUpdate:modelValue":F=>k(K,F)},null,8,["id","data-key-input","data-testid","error","error-message","model-value","placeholder","onBlur","onChange","onFocus","onUpdate:modelValue"]),e.createVNode(X,{class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${e.unref(u).path.value}.${$}`,"enable-filtering":"",items:n.items,label:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),"model-value":(ee=e.unref(p))==null?void 0:ee[K],placeholder:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:F=>S(K,(F==null?void 0:F.value)??null)},e.createSlots({_:2},[A.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:F})=>[e.renderSlot(A.$slots,"item-label",e.mergeProps({ref_for:!0},F),void 0,!0)]),key:"0"}:void 0]),1032,["data-testid","items","label","model-value","placeholder","onChange"])]),e.createVNode(Z,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${e.unref(u).path.value}.${$}`,icon:"",onClick:F=>x(K,W)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,S2)}),128)),e.createVNode(Z,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(u).path.value}`,disabled:!!m.value,onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-43dcb370"]]),I2={class:"dk-source-item"},lc=Me(e.defineComponent({__name:"SourceItem",props:{item:{}},setup(n){return(t,r)=>(e.openBlock(),e.createElementBlock("span",I2,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(jd)(n.item.type).icon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["color","size"])),e.createTextVNode(" "+e.toDisplayString(n.item.label),1)]))}}),[["__scopeId","data-v-d9aa16eb"]]),B2={key:1,class:"dk-inputs-field-or"},In=Me(e.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(n,{emit:t}){const r=t,{getSchema:o}=ft(),{i18n:{t:i}}=Xe(),a=e.computed(()=>o("inputs")),s=e.computed(()=>a.value?a.value.type==="record"?lw:v2:null);function c(f){r("change:input",f?f.value:null)}function l(f,m){r("add:field",f,m)}function u(f,m){r("change:inputs",f,m)}function p(f){r("remove:field",f)}function d(f,m){r("rename:field",f,m)}return(f,m)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Fe.KLabel),{class:"dk-inputs-field-h1",info:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),e.unref(o)("input")?(e.openBlock(),e.createBlock(Dt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:n.items,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:c},{"item-label":e.withCtx(g=>[e.renderSlot(f.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(g)),()=>[e.createVNode(lc,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("div",B2,[e.createElementVNode("span",null,e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(e.unref(Fe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(e.unref(s),e.mergeProps({key:3,items:n.items,"key-order":n.fieldNames,name:"inputs"},s.value===lw?{nodeType:n.nodeType}:{fieldNameValidator:n.fieldNameValidator},{"onAdd:field":l,"onChange:inputs":u,"onRemove:field":p,"onRename:field":d}),{"item-label":e.withCtx(g=>[e.createVNode(lc,{item:g},null,8,["item"])]),_:1},16,["items","key-order"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-4f1ce4e7"]]),T2={},O2={class:"dk-node-form-divider"};function P2(n,t){return e.openBlock(),e.createElementBlock("hr",O2)}const er=Me(T2,[["render",P2],["__scopeId","data-v-35ed58be"]]),V2={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},$2={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function R2(n){const t=Number(n);return!isNaN(t)&&isFinite(t)}function yn(...n){return function(r){for(const o of n){const i=o(r);if(i)return i}}}function vo(n){const{i18n:{t}}=Xe(),r=()=>n?typeof n=="string"?n:t("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",n):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return r()}}function cw(n,t){const{i18n:{t:r}}=Xe();return function(i){if(i!=null)switch(n){case"identifier":{const a=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",t):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function Or(n=0,t=1/0,r){const{i18n:{t:o}}=Xe();return function(a){if(a!=null&&typeof a=="string"&&(a.length<n||a.length>t))return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:r.fieldName,minLength:n,maxLength:t}):`Value must be between ${n} and ${t} characters`}}function uw(n){const{i18n:{t}}=Xe();return function(o){if(!R2(o))return n?typeof n=="string"?n:t("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",n):"Value must be a number"}}function vi(n,t){const{i18n:{t:r}}=Xe();return function(i){if(i==null)return;const a=uw(t)(i);if(a)return a;const s=Number(i);switch(n){case"float":{const c=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",t):"Invalid float format";return Number.isFinite(s)?void 0:c()}case"integer":{const c=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",t):"Invalid integer format";return Number.isInteger(s)?void 0:c()}default:return}}}function Ii(n=-1/0,t=1/0,r){const{i18n:{t:o}}=Xe();return function(a){if(a==null)return;const s=uw(r)(a);if(s)return s;const c=Number(a);if(c<n||c>t)return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:r.fieldName,min:n,max:t}):`Value must be between ${n} and ${t}`}}function L2(n,t){const{state:r}=Pt(),{i18n:{t:o}}=Xe();return function(a){if(r.value.nodes.some(s=>s.name===a&&s.id!==n))return t?typeof t=="string"?t:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",t):"Name must be unique."}}function D2(n,t,r){const{i18n:{t:o}}=Xe();return function(a){if(!t)return;if(r?t.fields[n].some(c=>c.name===a&&c.id!==r):t.fields[n].some(c=>c.name===a)){const c=o(n==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:c})}}}function M2(){const{i18n:{t:n}}=Xe();return function(r){if(Kd(r))return n("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:r})}}function dw(n){const{i18n:{t}}=Xe(),r={fieldName:t("plugins.free-form.datakit.flow_editor.node_properties.name")};return yn(vo(r),cw("identifier",r),M2(),L2(n,r))}function j2(n){const{i18n:{t}}=Xe(),{getNodeById:r}=Pt();return function(i,a,s){const c={fieldName:t(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return yn(vo(c),D2(i,r(n),s))(a)}}function F2(n){const t=e.ref({}),r=e.computed(()=>Object.values(t.value).every(s=>!s)),o={};Object.keys(n).forEach(s=>{const c=n[s],l=d=>{const f=typeof d=="function"?d():d,m=c(f);return t.value[s]=m,m},u=()=>{t.value[s]=void 0},p=d=>(u(),l(d));o[s]={handleChange:p,handleBlur:p,validate:p,isValid:e.computed(()=>t.value[s]===void 0),error:e.computed(()=>t.value[s])}});function i(){t.value={}}function a(s){var c;for(const l of Object.keys(n)){const u=s[l],p=typeof u=="function"?u():u;(c=o[l])==null||c.validate(p)}return t.value}return{isValid:r,errorMap:t,fields:o,clearErrors:i,validate:a}}function Pr(n){const{validationConfig:t,getValidationData:r,toggleNodeValid:o}=n,{skipValidation:i}=Pt(),a=e.computed(()=>typeof t=="function"?t():t),s=e.computed(()=>F2(a.value)),c=e.computed(()=>s.value.fields),l=e.computed(()=>s.value.isValid.value);function u(){const d=r(),f=s.value.validate(d),m={};for(const g in a.value)m[g]=f[g];return m}function p(d,f){const m=()=>{const y=r(),_=c.value[d];_&&_.handleBlur(y[d])},g=()=>{f==null||f();const y=r(),_=c.value[d];_&&_.handleChange(y[d])};return e.computed(()=>{const y=c.value[d];return{validate:m,update:g,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return e.onMounted(()=>{i.value?i.value=!1:u()}),e.onBeforeUnmount(async()=>{try{const d=u(),f=Object.values(d).filter(Boolean).length>0;o(!f)}catch{}}),e.watch(()=>l.value,o,{immediate:!0}),{fields:c.value,isValid:l,validateAll:u,createFieldHandler:p}}function _n(n,t){const{state:r,renameNode:o,getNodeById:i,addField:a,renameField:s,removeField:c,replaceConfig:l,disconnectEdge:u,connectEdge:p,invalidConfigNodeIds:d,commit:f,revert:m}=Pt(),{i18n:{t:g}}=Xe(),y=Fy(),_=e.computed(()=>{const K=i(n);if(!K)throw new Error("Node not existed");return K}),b=e.computed(()=>{const W=r.value.edges.filter($=>$.target===n).reduce(($,ee)=>{var j,ie;const F=i(ee.source),J=(j=Jr(F,"output",ee.sourceField))==null?void 0:j.id,M=(ie=Jr(_.value,"input",ee.targetField))==null?void 0:ie.name,v=F.id+(J?`.${J}`:"");return M?$.inputs={...$.inputs,[M]:v}:$.input=v,$},{});return _.value.fields.input.forEach($=>{W.inputs||(W.inputs={}),W.inputs[$.name]||(W.inputs[$.name]=null)}),{..._.value.config,...W,name:_.value.name}}),w=K=>{o(n,K??"",!0,`${n}:rename`)},C=(K,W=!0)=>{if(!t)throw new Error("getFormValue is not defined");const $=Wr(t(),["name","input","inputs"]),ee=K?`update:${n}:${K}`:void 0;l(n,$,W,ee)},x=(K,W)=>{const $=Yr(_.value,K,W);if(!$)throw new Error(`Field with name "${W}" not found in node "${_.value.name}"`);return $},E=(K,W,$)=>{const ee=!!$;a(n,K,W,!ee),ee&&S(W,$)},k=(K,W,$)=>{const ee=x(K,W).id;s(n,ee,$)},N=(K,W)=>{const $=x(K,W).id;c(n,$)},B=e.computed(()=>r.value.edges.filter(K=>K.target===n&&!K.targetField)[0]),U=e.computed(()=>r.value.edges.filter(K=>K.target===n&&K.targetField)),S=async(K,W)=>{const $=W==null,ee=x("input",K).id;if($){const he=U.value.find(le=>le.targetField===ee);he&&u(he.id);return}const{nodeId:F,fieldId:J}=Ay(W),M=x("input",K).id,v=[];B.value&&(v.push(Ba(B.value,i)),u(B.value.id,!1));const j=U.value.find(he=>he.targetField===ee);j&&(v.push(Ba(j,i)),u(j.id,!1)),p({source:F,sourceField:J,target:n,targetField:M},!1);const ie=Wd(F,J,n,M,i),re=v[0]&&ie?v[0][1]===ie[1]:!1;if(f(),re||v.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ie],v)||m()},A=async K=>{if(K==null){B.value&&u(B.value.id);return}const $=[];for(const v of U.value)$.push(Ba(v,i)),u(v.id,!1);B.value&&u(B.value.id,!1);const{nodeId:ee,fieldId:F}=Ay(K);p({source:ee,sourceField:F,target:n,targetField:void 0},!1);const J=Wd(ee,F,n,void 0,i);if(f(),$.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[J],$)||m()},O=K=>{const W=[...r.value.edges,{source:K,target:n}];return Yd(Nl(W))},P=e.computed(()=>{var W,$;const K=[];for(const ee of r.value.nodes)if((W=oi(ee.type).io)!=null&&W.output&&ee.fields.output&&ee.id!==n&&!(ee.type==="property"&&!$d(($=ee.config)==null?void 0:$.property))&&!O(ee.id)&&!(_.value.phase==="request"&&ee.phase==="response")&&!(ee.type==="vault"&&ee.fields.output.length===0)){K.push({value:ee.id,label:ee.name,type:ee.type});for(const J of ee.fields.output)K.push({value:`${ee.id}.${J.id}`,label:`${ee.name}.${J.name}`,type:ee.type})}return K}),R=e.computed(()=>_.value.fields.input.map(K=>K.name)||[]);function z(K){d.value.delete(n),K||d.value.add(n)}const X=j2(n);function Z(K,W,$){const ee=i(n);if(!ee)throw new Error("Node not found when validating field name");const F=Yr(ee,K,W);return X(K,$,F==null?void 0:F.id)}return{formData:b,inputOptions:P,inputEdge:B,inputsEdges:U,inputsFieldNames:R,currentNode:_,setName:w,setConfig:C,addField:E,renameFieldByName:k,removeFieldByName:N,setInputs:S,setInput:A,nameValidator:dw(n),fieldNameValidator:Z,toggleNodeValid:z}}function bn(n){const{getSchema:t}=ft();return e.computed(()=>{if(pn(n))switch(n){case"response":return $2;case"service_request":return V2}try{const o=t().fields.find(u=>ml(u,"config"));if(!o)throw new Error("Config field not found in schema.");const a=o.config.fields.find(u=>ml(u,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const l=a.nodes.elements.subschema_definitions[n];if(!l)throw new Error(`Subschema "${n}" not found in the schema.`);return l}catch(r){throw new Error(`Failed to get subschema "${n}": ${r.message}`)}})}const Kn=e.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=Xe(),a=e.ref(r.name),s=e.computed(()=>{const p=r.validate(a.value.trim());return p===void 0?"":p});let c=a.value.trim();function l(){if(s.value){a.value=c;return}o("update",a.value.trim())}function u(){c=a.value.trim()}return e.watch(()=>r.name,p=>{p!==a.value&&(a.value=p)}),(p,d)=>{const f=e.resolveComponent("KInput");return e.openBlock(),e.createBlock(f,{"model-value":a.value,"onUpdate:modelValue":d[0]||(d[0]=m=>a.value=m),"data-1p-ignore":"",error:!!s.value,"error-message":s.value,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:l,onFocus:u},null,8,["model-value","error","error-message","label"])}}}),U2=e.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(n){const{i18n:{t}}=Xe(),r=e.useTemplateRef("form"),o=bn("call"),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>r.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:{url:yn(vo({fieldName:"URL"}),cw("url",{fieldName:"URL"})),timeout:yn(vi("integer"),Ii(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:f}),y=g("url",()=>s("url")),_=g("timeout",()=>s("timeout"));return(b,w)=>{const C=e.resolveComponent("KLabel");return e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(C,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"url",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(NR,{name:"method",onUpdate:w[0]||(w[0]=x=>e.unref(s)())}),e.createVNode(Ht,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"timeout",onBlur:e.unref(_).validate,"onUpdate:modelValue":e.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=x=>e.unref(s)("ssl_server_name"))}),e.createVNode(vn,{name:"ssl_verify","onUpdate:modelValue":w[2]||(w[2]=x=>e.unref(s)("ssl_verify"))}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"call","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),K2=e.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("service_request"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:c,fieldNameValidator:l}=_n(n.nodeId,()=>t.value.getValue());return(u,p)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(In,{"field-name-validator":e.unref(l),"field-names":e.unref(c),items:e.unref(i),"node-type":"service_request","onChange:input":e.unref(s),"onChange:inputs":e.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),q2=e.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("response"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:c,fieldNameValidator:l}=_n(n.nodeId,()=>t.value.getValue());return(u,p)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(In,{"field-name-validator":e.unref(l),"field-names":e.unref(c),items:e.unref(i),"node-type":"response","onChange:input":e.unref(s),"onChange:inputs":e.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),G2=e.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(n){const{i18n:{t},i18nT:r}=Xe(),o=e.useTemplateRef("form"),i=bn("jq"),{formData:a,setName:s,setConfig:c,inputOptions:l,setInputs:u,setInput:p,addField:d,removeFieldByName:f,renameFieldByName:m,inputsFieldNames:g,nameValidator:y,toggleNodeValid:_,fieldNameValidator:b}=_n(n.nodeId,()=>o.value.getValue());function w(B,U){d("input",B,U)}function C(B){f("input",B)}function x(B,U){m("input",B,U)}const E=t("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:k}=Pr({validationConfig:{jq:yn(vo({fieldName:E}),Or(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:_}),N=k("jq",()=>c("jq"));return(B,U)=>{const S=e.resolveComponent("KLabel"),A=e.resolveComponent("KExternalLink");return e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(a),schema:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(a).name,validate:e.unref(y),onUpdate:e.unref(s)},null,8,["name","validate","onUpdate"]),e.createVNode(S,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{autosize:"",error:e.unref(N).error,"error-message":e.unref(N).errorMessage,label:e.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:e.unref(N).validate,"onUpdate:modelValue":e.unref(N).update},{help:e.withCtx(()=>[e.createVNode(e.unref(r),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:e.withCtx(()=>[e.createVNode(A,{"hide-icon":"",href:e.unref(Ha).jqlang},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Ha).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(b),"field-names":e.unref(g),items:e.unref(l),"node-type":"jq","onAdd:field":w,"onChange:input":e.unref(p),"onChange:inputs":e.unref(u),"onRemove:field":C,"onRename:field":x},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),H2=Me(e.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field"],setup(n,{emit:t}){const r=n,o=t,i=e.ref({}),{value:a,...s}=Gt("values"),{i18n:c}=Xe(),l=e.useTemplateRef("root"),u=e.ref([]),p=e.ref(null);let d="",f=a==null?void 0:a.value;function m(){return hl("ff-kv-field-")}function g(S,A,O){const P=O.indexOf(S),R=O.indexOf(A);return P===-1&&R===-1?0:P===-1?1:R===-1?-1:P-R}function y(S,A){if(!S)return[];const O=Object.entries(S).map(([P,R])=>({id:m(),key:P,value:R}));return A!=null&&A.length&&O.sort((P,R)=>g(P.key,R.key,A)),O}function _(){const S={id:m(),key:"",value:""};return u.value.push(S),S}function b(S){const A=u.value.findIndex(O=>O.id===S);A!==-1&&u.value.splice(A,1)}u.value=y(a==null?void 0:a.value,r.keyOrder);async function w(S,A="key"){var O;l.value&&(await e.nextTick(),(O=l.value.querySelector(`[data-${A}-input="${S}"]`))==null||O.focus())}function C(){const S=_(),A=u.value.findIndex(({key:O})=>!O);w(A===-1?u.value.length-1:A),p.value=S}function x(S){var A;S.id===((A=p.value)==null?void 0:A.id)&&(p.value=null),b(S.id),S.key.trim()!==""&&o("remove:field",S.key)}function E(S){d=S.key}function k(S){var A;if(B(S)){S.key=d,delete i.value[S.id];return}if(S.id===((A=p.value)==null?void 0:A.id)){if(S.key.trim()==="")return;p.value=null,o("add:field",S.key,S.value)}else o("rename:field",d,S.key);d=S.key}function N(S,A){var P;if(A.id===((P=p.value)==null?void 0:P.id))return;const O=S.target.value.trim();o("change:value",A.key,O)}function B(S){delete i.value[S.id];const A=r.fieldNameValidator("output",d,S.key);if(A)return i.value[S.id]=A,A}function U(S){B(S)}return e.watch(()=>a==null?void 0:a.value,S=>{var X;if(en(S,f))return;f=S;const A=p.value,O=new Map(u.value.filter(Z=>Z.key).map(Z=>[Z.key,Z])),P=[],R=S??{};((X=r.keyOrder)!=null&&X.length?Object.keys(R).sort((Z,K)=>g(Z,K,r.keyOrder)):Object.keys(R)).forEach(Z=>{const K=O.get(Z);if(K){K.value=R[Z],P.push(K);return}P.push({id:m(),key:Z,value:R[Z]})}),A&&!P.some(Z=>Z.id===A.id)&&P.push(A),u.value=P},{deep:!0}),(S,A)=>{const O=e.resolveComponent("KAlert"),P=e.resolveComponent("KLabel"),R=e.resolveComponent("KButton"),z=e.resolveComponent("KInput"),X=e.resolveComponent("KCard");return s.error?(e.openBlock(),e.createBlock(O,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:l,class:"dk-output-value-field"},[e.createVNode(P,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(Z,K)=>(e.openBlock(),e.createBlock(X,{key:Z.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${s.path.value}.${K}`},{actions:e.withCtx(()=>[e.createVNode(R,{appearance:"none","data-testid":`ff-kv-remove-btn-${s.path.value}.${K}`,icon:"",onClick:W=>x(Z)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:e.withCtx(()=>[e.createVNode(z,{id:`ff-kv-entry-key-${s.path.value}.${K}`,modelValue:Z.key,"onUpdate:modelValue":[W=>Z.key=W,W=>B(Z)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":K,"data-testid":`ff-key-${s.path.value}.${K}`,error:!!i.value[Z.id],"error-message":i.value[Z.id],label:e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:W=>U(Z),onChange:W=>k(Z),onFocus:W=>E(Z)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),e.createVNode(z,{modelValue:Z.value,"onUpdate:modelValue":W=>Z.value=W,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${s.path.value}.${K}`,label:e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:W=>N(W,Z)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),e.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${s.path.value}`,disabled:!!p.value,onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-3970c2c0"]]);function z2(n){const t={};for(const[r,o]of Object.entries(n))typeof o=="object"&&o!==null?t[r]=JSON.stringify(o):t[r]=String(o);return t}function cc(n){const t={};for(const[r,o]of Object.entries(n))if(o!=null){t[r]=o;try{o==="null"?t[r]=null:(o==="true"||o==="false"||/^-?\d+(\.\d+)?$/.test(o)||o.startsWith("{")&&o.endsWith("}")||o.startsWith("[")&&o.endsWith("]"))&&(t[r]=JSON.parse(o))}catch{}}return t}function W2(n,t,r){const o={};for(const i of Object.keys(n))i===t?o[r]=n[t]:o[i]=n[i];return o}const Y2=e.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(n){const{renameNode:t,getOutEdgesByNodeId:r,addField:o,renameField:i,removeField:a,replaceConfig:s,getNodeById:c}=Pt(),{fieldNameValidator:l}=_n(n.nodeId),u=bn("static"),p=dw(n.nodeId),d=e.computed(()=>c(n.nodeId)),f=e.computed(()=>{var C;return((C=d.value)==null?void 0:C.fields.output.map(x=>x.name))||[]});function m(C){if(!d.value)throw new Error("No current node");t(d.value.id,C??"")}const g=e.computed(()=>{var U;if(!d.value)return{};const C=((U=d.value.config)==null?void 0:U.values)??{},x={},E=r(d.value.id).map(S=>S.sourceField).filter(Boolean).map(S=>Jr(d.value,"output",S)).map(S=>S==null?void 0:S.name).filter(Boolean),k=d.value.fields.output.map(S=>S.name),N=Object.keys(C);return new Set([...N,...E,...k]).forEach(S=>{if(S in C){x[S]=C[S];return}x[S]=""}),{name:d.value.name,values:z2(x)}});function y(C,x){if(!d.value)throw new Error("No selected node");const E=x!==void 0;if(o(n.nodeId,"output",C,!E),E){const k={values:cc({...g.value.values,[C]:x})};s(n.nodeId,k)}}function _(C,x){if(!d.value)throw new Error("No selected node");const E=Yr(d.value,"output",C);if(!E)throw new Error("No field found to rename");const k={values:cc(W2(g.value.values??{},C,x))};s(n.nodeId,k,!1),i(n.nodeId,E.id,x)}function b(C){var k;if(!d.value)throw new Error("No selected node");const x=Yr(d.value,"output",C);if(!x)throw new Error("No field found to delete");a((k=d.value)==null?void 0:k.id,x.id,!0,!1);const E={values:cc({...g.value.values})};delete E.values[C],s(n.nodeId,E)}function w(C,x){if(!d.value)throw new Error("No selected node");const E={...g.value.values};E[C]=x;const k={values:cc(E)};s(n.nodeId,k)}return(C,x)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:g.value,schema:e.unref(u)},{default:e.withCtx(()=>{var E;return[e.createVNode(Kn,{name:((E=d.value)==null?void 0:E.name)??"",validate:e.unref(p),onUpdate:m},null,8,["name","validate"]),e.createVNode(H2,{"field-name-validator":e.unref(l),"key-order":f.value,"onAdd:field":y,"onChange:value":w,"onRemove:field":b,"onRename:field":_},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),J2={class:"dk-kong-property-item"},X2={class:"property-type"},Z2={class:"property-badges"},Q2=Me(e.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(n,{emit:t}){const{i18n:{t:r}}=Xe(),o=n,i=t,{formData:a}=ft(),s=e.ref(Sa(a.property)),c=e.computed(()=>xa(a.property)),l=e.ref(Vd(a.property)),u=e.computed(()=>a.property??""),p=e.computed(()=>Object.entries(go).map(([m])=>{var _;const g=xa(m)?(_=a.property)==null?void 0:_.startsWith(m.replace(Zo,"")):a.property===m;return{label:g&&l.value?m.replace(Zo,l.value):m,value:m,selected:g}}));function d(m){const g=gl.find(y=>{var _;return(_=a.property)==null?void 0:_.startsWith(y)});g&&(a.property=g+m,o.validators.key.handleChange(a.property),i("update:property-key",a.property))}function f(m){s.value!==Sa(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,s.value=Sa(a.property),o.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return e.watch(()=>a.property,m=>{l.value=Vd(m),s.value=Sa(m)}),(m,g)=>{const y=e.resolveComponent("KBadge"),_=e.resolveComponent("KSelect"),b=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(_,{key:u.value,"enable-filtering":"",error:!n.validators.property.isValid.value,help:n.validators.property.error.value,items:p.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=w=>n.validators.property.handleBlur(()=>e.unref(a).property)),onChange:f},{"item-template":e.withCtx(({item:w})=>[e.createElementVNode("div",J2,[e.createElementVNode("div",null,[e.createElementVNode("div",null,e.toDisplayString(w.label),1),e.createElementVNode("div",X2,e.toDisplayString(e.unref(go)[w.value].dataType),1)]),e.createElementVNode("div",Z2,[e.unref(go)[w.value].readable?(e.openBlock(),e.createBlock(y,{key:0,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):e.createCommentVNode("",!0),e.unref(go)[w.value].writable?(e.openBlock(),e.createBlock(y,{key:1,appearance:"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):e.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),c.value?(e.openBlock(),e.createBlock(b,{key:0,"model-value":l.value,"onUpdate:modelValue":[g[1]||(g[1]=w=>l.value=w),d],error:!n.validators.key.isValid.value,"error-message":n.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=w=>n.validators.key.handleBlur(()=>e.unref(a).property))},null,8,["model-value","error","error-message"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-3e7fee25"]]),eL=e.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),{selectedNode:r,disconnectInEdges:o,disconnectOutEdges:i}=Pt(),a=bn("property"),{formData:s,setName:c,setConfig:l,inputOptions:u,setInputs:p,setInput:d,inputsFieldNames:f,nameValidator:m,toggleNodeValid:g,fieldNameValidator:y}=_n(n.nodeId,()=>t.value.getValue()),_=e.computed(()=>Rd(s.value.property));function b(C){var E;const x=(E=r.value)==null?void 0:E.id;if(!x)throw new Error("Expected selectedNode to be defined");$d(C)||i(x,!1),Rd(C)||o(x,!1),l()}const{fields:w}=Pr({validationConfig:()=>({property:vo({fieldName:"Property"}),key:xa(s.value.property)?vo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:s.value.property,key:Vd(s.value.property)}),toggleNodeValid:g});return(C,x)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(s),schema:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(s).name,validate:e.unref(m),onUpdate:e.unref(c)},null,8,["name","validate","onUpdate"]),e.createVNode(Dt,{name:"content_type",onUpdate:x[0]||(x[0]=E=>e.unref(l)())}),e.createVNode(Q2,{validators:e.unref(w),"onUpdate:modelValue":b,"onUpdate:propertyKey":x[1]||(x[1]=E=>e.unref(l)("property-key"))},null,8,["validators"]),_.value?(e.openBlock(),e.createBlock(er,{key:0})):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createBlock(In,{key:1,"field-name-validator":e.unref(y),"field-names":e.unref(f),items:e.unref(u),"node-type":"property","onChange:input":e.unref(d),"onChange:inputs":e.unref(p)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):e.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),tL=e.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("exit"),{formData:o,setName:i,setConfig:a,inputOptions:s,setInputs:c,setInput:l,inputsFieldNames:u,nameValidator:p,toggleNodeValid:d,fieldNameValidator:f}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:m}=Pr({validationConfig:{status:yn(vi("integer",{fieldName:"Status"}),Ii(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:o.value.status}),toggleNodeValid:d}),g=m("status",()=>a("status"));return(y,_)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(o).name,validate:e.unref(p),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(Ht,{error:e.unref(g).error,"error-message":e.unref(g).errorMessage,name:"status",onBlur:e.unref(g).validate,"onUpdate:modelValue":e.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"warn_headers_sent","onUpdate:modelValue":_[0]||(_[0]=b=>e.unref(a)())}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(f),"field-names":e.unref(u),items:e.unref(s),"node-type":"exit","onChange:input":e.unref(l),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function nL(n){const t=_n(n),{state:r,getNodeById:o,branchGroups:i,commit:a}=Pt(),{i18n:{t:s}}=Xe(),c=Fy(),l=Dd(),u=e.computed(()=>{var C;const b={...t.formData.value},w=Ia(((C=t.currentNode.value)==null?void 0:C.type)||"branch");for(const x of w)(!(x in b)||b[x]==null)&&(b[x]=[]);return b});function p(b,w,C){const x=o(b),E=o(C),k=x?`${x.name}.${w}`:`${b}.${w}`,N=E?E.name:C;return[k,N]}function d(b){return(b==null?[]:Array.isArray(b)?b:[b]).filter(w=>qd(w))}function f(b,w){return i.wouldCreateCycle(b,w)?(l({message:s("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(b,w,C){const x=[],E=[],k=[];for(const N of C){const B=i.findMembership(N);if(!B||B.ownerId===b&&B.branch===w)continue;const U=i.getMembers(B.ownerId,B.branch).filter(S=>S!==N);k.push({ownerId:B.ownerId,branch:B.branch,members:U}),x.push(p(b,w,N)),E.push(p(B.ownerId,B.branch,N))}return{conflictUpdates:k,addedAssignments:x,removedAssignments:E}}function g(b,w,C,x){let E=!1;for(const k of x)E=i.setMembers(k.ownerId,k.branch,k.members,{commit:!1})||E;return E=i.setMembers(b,w,C,{commit:!1})||E,E}async function y(b,w){const C=t.currentNode.value,x=d(w),E=i.prepareMembers(C.id,b,x),k=i.getMembers(C.id,b);if(Gd(k,E))return!0;const N=E.filter(O=>!k.includes(O));for(const O of N)if(f(C.id,O))return!1;const{conflictUpdates:B,addedAssignments:U,removedAssignments:S}=m(C.id,b,N);return B.length>0&&!await c(s("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),U,S)?!1:(g(C.id,b,E,B)&&a(),!0)}const _=e.computed(()=>{const b=t.currentNode.value;return!b||!i?[]:r.value.nodes.filter(w=>w.id!==n&&!pn(w.type)&&w.phase===b.phase&&!i.wouldCreateCycle(b.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...t,formData:u,branchOptions:_,updateBranchMembers:y}}const rL=e.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(n){const{i18n:{t}}=Xe(),r=bn("branch"),o=e.ref(0),{formData:i,setName:a,inputOptions:s,branchOptions:c,nameValidator:l,setInput:u,setInputs:p,inputsFieldNames:d,fieldNameValidator:f,updateBranchMembers:m}=nL(n.nodeId);async function g(y,_){await m(y,_)||(o.value+=1)}return(y,_)=>(e.openBlock(),e.createBlock(Jt,{key:o.value,data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(l),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",items:e.unref(c),multiple:"",name:"then",onUpdate:_[0]||(_[0]=b=>g("then",b))},{"item-label":e.withCtx(b=>[e.createVNode(lc,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(Dt,{"enable-filtering":"",items:e.unref(c),multiple:"",name:"else",onUpdate:_[1]||(_[1]=b=>g("else",b))},{"item-label":e.withCtx(b=>[e.createVNode(lc,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(f),"field-names":e.unref(d),items:e.unref(s),"node-type":"branch","onChange:input":e.unref(u),"onChange:inputs":e.unref(p)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),oL=e.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("cache"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:()=>({ttl:yn(vi("integer",{fieldName:"TTL"}),Ii(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:f}),y=g("ttl",()=>s("ttl"));return(_,b)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(vn,{name:"bypass_on_error","onUpdate:modelValue":b[0]||(b[0]=w=>e.unref(s)("bypass_on_error"))}),e.createVNode(Ht,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"ttl",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"cache","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),iL=e.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("xml_to_json"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),g=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:_}=Pr({validationConfig:()=>({attributes_block_name:yn(()=>y()?void 0:g,B=>{if(B)return Or(1,32,{fieldName:"Attributes block name"})(B)}),attributes_name_prefix:yn(()=>y()?void 0:g,B=>{if(B)return Or(1,32,{fieldName:"Attributes name prefix"})(B)}),text_block_name:Or(1,32,{fieldName:"Text block name"}),xpath:Or(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:f}),b=_("attributes_block_name",()=>s("attributes_block_name")),w=_("attributes_name_prefix",()=>s("attributes_name_prefix")),C=_("text_block_name",()=>s("text_block_name")),x=_("xpath",()=>s("xpath")),E=()=>{b.value.validate(),w.value.validate()},k=()=>{b.value.update(),w.value.validate()},N=()=>{w.value.update(),b.value.validate()};return(B,U)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(vn,{name:"recognize_type","onUpdate:modelValue":U[0]||(U[0]=S=>e.unref(s)("recognize_type"))}),e.createVNode(nt,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"attributes_block_name",onBlur:E,"onUpdate:modelValue":k},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(w).error,"error-message":e.unref(w).errorMessage,name:"attributes_name_prefix",onBlur:E,"onUpdate:modelValue":N},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"text_block_name",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"text_as_property","onUpdate:modelValue":U[1]||(U[1]=S=>e.unref(s)("text_as_property"))}),e.createVNode(nt,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"xpath",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"xml_to_json","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),aL=e.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("json_to_xml"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,addField:p,removeFieldByName:d,renameFieldByName:f,inputsFieldNames:m,nameValidator:g,toggleNodeValid:y,fieldNameValidator:_}=_n(n.nodeId,()=>t.value.getValue()),b=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),w=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:C}=Pr({validationConfig:{attributes_block_name:yn(()=>w()?void 0:b,Or(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:yn(()=>w()?void 0:b,Or(1,32,{fieldName:"Attributes name prefix"})),root_element_name:Or(1,64,{fieldName:"Root element name"}),text_block_name:Or(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:y}),x=C("attributes_block_name",()=>s("attributes_block_name")),E=C("attributes_name_prefix",()=>s("attributes_name_prefix")),k=C("root_element_name",()=>s("root_element_name")),N=C("text_block_name",()=>s("text_block_name"));function B(){x.value.validate(),E.value.validate()}function U(){x.value.update(),E.value.validate()}function S(){E.value.update(),x.value.validate()}function A(R,z){p("input",R,z)}function O(R){d("input",R)}function P(R,z){f("input",R,z)}return(R,z)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(g),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"attributes_block_name",onBlur:B,"onUpdate:modelValue":U},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(E).error,"error-message":e.unref(E).errorMessage,name:"attributes_name_prefix",onBlur:B,"onUpdate:modelValue":S},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"root_element_name",onBlur:e.unref(k).validate,"onUpdate:modelValue":e.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{error:e.unref(N).error,"error-message":e.unref(N).errorMessage,name:"text_block_name",onBlur:e.unref(N).validate,"onUpdate:modelValue":e.unref(N).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(_),"field-names":e.unref(m),items:e.unref(c),"node-type":"json_to_xml","onAdd:field":A,"onChange:input":e.unref(u),"onChange:inputs":e.unref(l),"onRemove:field":O,"onRename:field":P},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),sL=e.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_decode"),{formData:o,setName:i,inputOptions:a,setInputs:s,setInput:c,inputsFieldNames:l,nameValidator:u,fieldNameValidator:p}=_n(n.nodeId,()=>t.value.getValue());return(d,f)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(o).name,validate:e.unref(u),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(p),"field-names":e.unref(l),items:e.unref(a),"node-type":"jwt_decode","onChange:input":e.unref(c),"onChange:inputs":e.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),lL=e.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_sign"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>{const w={...t.value.getValue()};return(!w.static_claims||Object.keys(w.static_claims).length===0)&&delete w.static_claims,w}),{createFieldHandler:g}=Pr({validationConfig:{algorithm:vo({fieldName:"Algorithm"}),expires_in:yn(vi("integer",{fieldName:"Expires in"}),Ii(1,1/0,{fieldName:"Expires in"})),not_before:yn(vi("integer",{fieldName:"Not before"}),Ii(0,1/0,{fieldName:"Not before"}))},getValidationData:()=>({algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before}),toggleNodeValid:f}),y=g("algorithm",()=>s("algorithm")),_=g("expires_in",()=>s("expires_in")),b=g("not_before",()=>s("not_before"));return(w,C)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",name:"algorithm",onUpdate:e.unref(y).update},null,8,["onUpdate"]),e.createVNode(Ht,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"expires_in",onBlur:e.unref(_).validate,"onUpdate:modelValue":e.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ht,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"not_before",onBlur:e.unref(b).validate,"onUpdate:modelValue":e.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{name:"kid","onUpdate:modelValue":C[0]||(C[0]=x=>e.unref(s)("kid"))}),e.createVNode(nt,{name:"typ","onUpdate:modelValue":C[1]||(C[1]=x=>e.unref(s)("typ"))}),e.createVNode(fr,{label:e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onLegacyValueChange:C[2]||(C[2]=x=>e.unref(s)("static_claims"))},null,8,["label"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"jwt_sign","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cL=e.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_verify"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:{leeway:yn(vi("integer",{fieldName:"Leeway"}),Ii(0,1/0,{fieldName:"Leeway"}))},getValidationData:()=>({leeway:i.value.leeway}),toggleNodeValid:f}),y=g("leeway",()=>s("leeway"));return(_,b)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:b[0]||(b[0]=w=>e.unref(s)("allowed_algorithms"))}),e.createVNode(gn,{name:"issuers",onAdd:b[2]||(b[2]=w=>e.unref(s)("issuers")),onRemove:b[3]||(b[3]=w=>e.unref(s)("issuers"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[1]||(b[1]=x=>e.unref(s)("issuers"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(gn,{name:"audiences",onAdd:b[5]||(b[5]=w=>e.unref(s)("audiences")),onRemove:b[6]||(b[6]=w=>e.unref(s)("audiences"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[4]||(b[4]=x=>e.unref(s)("audiences"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(gn,{name:"required_claims",onAdd:b[8]||(b[8]=w=>e.unref(s)("required_claims")),onRemove:b[9]||(b[9]=w=>e.unref(s)("required_claims"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[7]||(b[7]=x=>e.unref(s)("required_claims"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(Ht,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"leeway",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"validate_exp","onUpdate:modelValue":b[10]||(b[10]=w=>e.unref(s)("validate_exp"))}),e.createVNode(vn,{name:"validate_nbf","onUpdate:modelValue":b[11]||(b[11]=w=>e.unref(s)("validate_nbf"))}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"jwt_verify","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),uL=["innerHTML"],dL={key:1,class:"branch-note"},fL={class:"branch-label"},pL={class:"branch-text"},mL=e.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Mh}px`},offsetTop:{default:`${b1}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(n){const{t}=jt.createI18n("en-us",Yt),{getNodeById:r,branchGroups:o}=Pt(),i=e.computed(()=>n.nodeId&&r(n.nodeId)),a=e.computed(()=>{if(n.nodeId)return o.findMembership(n.nodeId)}),s=e.computed(()=>{if(!a.value)return"";const u=r(a.value.ownerId);return u?`${u.name}.${a.value.branch}`:""});function c(){n.nodeId&&o.removeMember(n.nodeId)}const l=e.computed(()=>{var u;switch((u=i.value)==null?void 0:u.type){case"call":return U2;case"service_request":return K2;case"response":return q2;case"jq":return G2;case"static":return Y2;case"property":return eL;case"exit":return tL;case"branch":return rL;case"cache":return oL;case"xml_to_json":return iL;case"json_to_xml":return aL;case"jwt_decode":return sL;case"jwt_sign":return lL;case"jwt_verify":return cL;default:return null}});return(u,p)=>(e.openBlock(),e.createBlock(e.unref(Fe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":n.maxWidth,"offset-top":n.offsetTop,visible:n.visible,"z-index":e.unref(_1),onClose:p[0]||(p[0]=d=>u.$emit("close"))},e.createSlots({default:e.withCtx(()=>[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:e.unref(ni)(i.value.type)},null,8,uL)):e.createCommentVNode("",!0),a.value?(e.openBlock(),e.createElementBlock("div",dL,[e.createElementVNode("span",fL,[e.createVNode(e.unref(Re.ArrowSplitIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["color","size"]),e.createElementVNode("span",pL,e.toDisplayString(s.value),1)]),e.createVNode(e.unref(Fe.KTooltip),{placement:"top",text:e.unref(t)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:e.withCtx(()=>[e.createVNode(e.unref(Fe.KButton),{appearance:"none","aria-label":e.unref(t)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(l),{key:n.nodeId,class:"dk-node-properties-panel-form","node-id":n.nodeId},null,8,["node-id"])):e.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:e.withCtx(()=>[e.createVNode(Qd,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),hL=Me(mL,[["__scopeId","data-v-32602117"]]),gL={class:"dk-editor-content"},yL={class:"main"},_L=Me(e.defineComponent({__name:"EditorContent",setup(n){const{propertiesPanelOpen:t,selectedNode:r}=Pt();function o(){t.value=!1}e.watch(r,a=>{a||o()});const i=e.ref(!1);return e.onMounted(()=>{i.value=!0}),(a,s)=>{var c;return e.openBlock(),e.createElementBlock("div",gL,[e.createVNode(e.unref(ER)),e.createElementVNode("div",yL,[e.createVNode(P$)]),e.createVNode(hL,{"node-id":(c=e.unref(r))==null?void 0:c.id,visible:e.unref(t),onClose:o},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-66331c5c"]]),bL={key:0,class:"dk-editor-modal"},wL=Me(e.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(n){e.useCssVars(c=>({v0a30a280:`${e.unref(y1)}px`,aee7cc1c:`${e.unref(Dh)}px`}));const t=e.useModel(n,"open"),r=e.ref(!1),o=e.useTemplateRef("confirm-modal"),{clear:i}=Pt();tB(async(...c)=>{r.value=!0;const l=await o.value.open(...c);return r.value=!1,l});const a=Tt.useScrollLock(document);e.watch(t,c=>{a.value=!!c,c||i()},{immediate:!0});function s(){t.value=!1}return(c,l)=>t.value?(e.openBlock(),e.createElementBlock("div",bL,[e.createVNode(A$,{class:"nav",onBack:s}),e.createVNode(_L,{ref:"content",class:"content",tabindex:"0"},null,512),e.createVNode(E$,{ref:"confirm-modal"},null,512)])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-82b03578"]]),kL={class:"dk-flow-editor"},CL={class:"flow-panels-container"},EL={class:"overlay"},NL=Me(e.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(n,{emit:t}){const{t:r}=jt.createI18n("en-us",Yt),{formData:o,setValue:i,getValue:a}=ft(),s=t;function c(p,d,f,m){const g={...o.config,nodes:p};f!==void 0&&(g.resources=f);const y={...o.__ui_data,...d},_={...o,config:g,__ui_data:y};m!=null?_.partials=[{id:m}]:_.partials&&(_.partials=null),i(_),s("change",g,y)}const{modalOpen:l,setPendingFitView:u}=Xd(a(),{onChange:c,isEditing:n.isEditing});return e.watch(l,()=>{u(!0)},{flush:"post"}),h$({enabled:l}),(p,d)=>{const f=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",kL,[e.createElementVNode("div",CL,[e.createVNode(Yf,{inactive:e.unref(l),mode:"preview"},null,8,["inactive"]),e.createElementVNode("div",EL,[e.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=m=>l.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),e.createVNode(e.unref(Re.ExpandIcon))]),_:1})])]),e.createVNode(wL,{open:e.unref(l),"onUpdate:open":d[1]||(d[1]=m=>e.isRef(l)?l.value=m:null)},null,8,["open"])])}}}),[["__scopeId","data-v-575018ff"]]),SL=["innerHTML"],xL={class:"dk-option-label"},AL=["innerHTML"],vL=Je({component:Me(e.defineComponent({inheritAttrs:!1,__name:"DatakitForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const{t}=jt.createI18n("en-us",Yt),r=n,o=e.useAttrs(),i=e.inject(Qe.FORMS_CONFIG),a=e.ref(!1);e.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:s}=ac(),c=e.computed(()=>i.app!=="konnect"||p.value===!1?"code":s.value),l=e.computed(()=>i.app==="kongManager"?"code":c.value==="flow"?"form":"code"),u={flow:Re.DesignIcon,code:Re.CodeblockIcon},p=e.ref(!0),d=e.ref(""),f=e.computed(()=>{const E=[{label:t("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:t("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return E[0].disabled=!p.value,E}),m=e.computed(()=>{switch(c.value){case"code":return t("plugins.free-form.datakit.description_code");case"flow":return t("plugins.free-form.datakit.description_flow");default:return""}}),g=e.computed(()=>p.value?"":t("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:d.value,code:E=>`<code>${xv(E)}</code>`}));e.watch(c,()=>{var E;(E=r.onValidityChange)==null||E.call(r,{model:"config",valid:!0})});function y(){var E;(E=r.onValidityChange)==null||E.call(r,{model:"config",valid:!0})}function _(){y()}function b(E){return E.map(k=>typeof k=="number"?`[${k}]`:E.length&&typeof k=="string"&&k.includes(".")?`["${k}"]`:`.${k}`).join("").replace(/^\./,"")}function w(E){return E.issues.map(k=>`${b(k.path)} - ${k.message}`).join("; ")}function C(E){if(y(),i.app!=="konnect")return;const k=E==null?void 0:E.config,{success:N,error:B}=sw.safeParse(k);d.value=N||!B?"":w(B),p.value=N}function x(E){var k;d.value=E,p.value=!1,(k=r.onValidityChange)==null||k.call(r,{model:"config",valid:!1,error:E})}return(E,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(i).app==="konnect"?(e.openBlock(),e.createBlock(e.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[e.createVNode(e.unref(Fe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":c.value,options:f.value,"onUpdate:modelValue":k[0]||(k[0]=N=>s.value=N)},{"option-label":e.withCtx(({option:N})=>[e.createVNode(e.unref(Fe.KTooltip),{disabled:p.value||N.value!=="flow"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:g.value},null,8,SL)]),default:e.withCtx(()=>[e.createElementVNode("div",xL,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u[N.value]))),e.createTextVNode(" "+e.toDisplayString(N.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(Qn,e.mergeProps({...e.unref(o),...r},{class:"dk-form","editor-mode":l.value,"hide-editor-mode-switcher":""}),{"code-editor":e.withCtx(()=>[e.createVNode(p$,{class:"code-editor",editing:r.isEditing,onChange:C,onError:x},null,8,["editing"])]),"plugin-config-title":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.mode")),1)]),"plugin-config-description":e.withCtx(()=>[e.createElementVNode("span",{innerHTML:m.value},null,8,AL)]),default:e.withCtx(()=>[c.value==="flow"?(e.openBlock(),e.createBlock(NL,{key:0,"is-editing":r.isEditing,onChange:_},null,8,["is-editing"])):e.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-99d4e7f0"]])}),IL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.functions.*",component:nt,propsOverrides:n=>({...n,multiline:!0,rows:3})}]}),BL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),TL=Je({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:Dt,propsOverrides:{multiple:!0}}]}),OL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),PL=Je({experimental:!0}),fw=e.defineComponent({inheritAttrs:!1,__name:"KeysetField",props:{name:{},scope:{}},setup(n){const t=n,{i18n:{t:r}}=Xe(),o=e.inject(Qe.FORMS_CONFIG),i=e.computed(()=>(o==null?void 0:o.app)==="konnect"),{formData:a,config:s}=ft();function c(f){const m=`config.${f}`,g=uf(f);return s.value.transformLabel?s.value.transformLabel(g,m):g}function l(f){if(typeof f!="string"||!f)return!1;try{const m=new URL(f);return(m.protocol==="http:"||m.protocol==="https:")&&!!m.host}catch{return!1}}const u=e.computed(()=>{if(!i.value)return{hasError:!1,message:""};const f=a.config,m=f==null?void 0:f[`${t.scope}_token_signing`],g=f==null?void 0:f[`${t.scope}_token_upstream_header`];if(!m)return{hasError:!1,message:""};if(typeof g!="string"||g==="")return{hasError:!1,message:""};const y=f==null?void 0:f[`${t.scope}_token_keyset`];return l(y)?{hasError:!1,message:""}:{hasError:!0,message:r("plugins.free-form.jwt-signer.keyset_url_required",{signingField:c(`${t.scope}_token_signing`),headerField:c(`${t.scope}_token_upstream_header`)})}}),p=e.computed(()=>u.value.hasError),d=e.computed(()=>u.value.message);return(f,m)=>(e.openBlock(),e.createBlock(nt,e.mergeProps(f.$attrs,{error:p.value,"error-message":d.value,name:n.name}),null,16,["error","error-message","name"]))}}),VL=Je({component:e.defineComponent({__name:"JwtSignerForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r={bundles:[["config.access_token_signing","config.access_token_upstream_header","config.access_token_keyset"],["config.channel_token_signing","config.channel_token_upstream_header","config.channel_token_keyset"]]},o=e.useSlots();return e.provide(Qe.AUTOFILL_SLOT,o==null?void 0:o[Qe.AUTOFILL_SLOT_NAME]),(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"render-rules":r}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:s})=>s==="config.access_token_keyset"},{default:e.withCtx(s=>[e.createVNode(fw,e.mergeProps(s,{scope:"access"}),null,16)]),_:1},8,["match"]),e.createVNode($t,{match:({path:s})=>s==="config.channel_token_keyset"},{default:e.withCtx(s=>[e.createVNode(fw,e.mergeProps(s,{scope:"channel"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jb)]),_:1},16))}})}),$L=Je({experimental:!0}),RL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.message_by_lua_functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),LL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),DL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.message_by_lua_functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),ML=Je({experimental:!0,component:qb,fieldRenderers:[{match:({path:n})=>n==="config.identity_realms",component:Ub},{match:"config.anonymous",component:nt,propsOverrides:{placeholder:"e.g., 00000000-0000-0000-0000-000000000001"}},{match:"config.realm",component:nt,propsOverrides:{placeholder:"e.g., my-api"}}]}),jL={class:"ff-collapsible-section"},FL={class:"ff-collapsible-section-header"},UL={class:"ff-collapsible-section-header-toggle"},KL={key:0,class:"ff-collapsible-section-content"},qL={key:0,class:"ff-collapsible-section-indent-guide"},Qf=Me(e.defineComponent({__name:"CollapsibleSection",props:e.mergeModels({label:{}},{expanded:{type:Boolean,default:!0},expandedModifiers:{}}),emits:["update:expanded"],setup(n){const t=e.useModel(n,"expanded");return(r,o)=>(e.openBlock(),e.createElementBlock("div",jL,[e.createElementVNode("header",FL,[e.createElementVNode("div",UL,[e.createElementVNode("button",{class:"ff-collapsible-section-toggle-btn",type:"button",onClick:o[0]||(o[0]=e.withModifiers(i=>t.value=!t.value,["prevent","stop"]))},[e.createVNode(e.unref(Re.ChevronRightIcon),{class:e.normalizeClass(["ff-collapsible-section-toggle-btn-trigger-icon",{"collapse-expanded":t.value}]),decorative:"",size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["class","size"])]),e.createVNode(e.unref(Fe.KLabel),{class:"ff-collapsible-section-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.label),1)]),_:1})])]),e.createVNode(Ll,null,{default:e.withCtx(()=>[t.value?(e.openBlock(),e.createElementBlock("div",KL,[e.renderSlot(r.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)]),_:3}),t.value?(e.openBlock(),e.createElementBlock("div",qL)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-39f2a44b"]]),GL={class:"ff-mb-subject"},HL={class:"ff-mb-attributes"},zL={class:"ff-metering-billing-inline-row"},WL={class:"ff-mb-queue"},YL=Je({experimental:!0,component:Me(e.defineComponent({__name:"MeteringAndBillingForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Xe(),i=e.inject(Qe.FORMS_CONFIG),a=e.computed(()=>{const p=i==null?void 0:i.geoApiServerUrl,d=p?new URL(p).hostname.split(".")[0]:null;return d?`https://${d}.api.konghq.com/v3/openmeter/events`:"https://{{region}}.api.konghq.com/v3/openmeter/events"}),s={hasValue:p=>!!p&&Object.keys(p).length>0,prepareFormData:p=>{var d;return t.isEditing?p:(i==null?void 0:i.app)==="konnect"&&!((d=p==null?void 0:p.config)!=null&&d.ingest_endpoint)?{...p,config:{...p==null?void 0:p.config,ingest_endpoint:a.value}}:p}},c=e.ref(!0),l=e.ref(!0),u=e.ref(!0);return(p,d)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"form-config":s,"plugin-config-description":e.unref(o)("plugins.free-form.metering-and-billing.sections.plugin_config.description")}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:f})=>f==="config.meter_api_requests"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.meter_api_requests.description")}),null,16,["description"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.meter_ai_token_usage"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.meter_ai_token_usage.description")}),null,16,["description"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.ssl_verify"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.description"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.subject.look_up_value_in"},{default:e.withCtx(f=>[e.createVNode(Dt,e.mergeProps(f,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.help"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.subject.field"},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.help"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.label"),placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.timeout"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.keepalive"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_coalescing_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_coalescing_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.initial_retry_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.initial_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_retry_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_retry_time"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_time.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f.startsWith("config.attributes.")&&f.endsWith(".look_up_value_in")},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.look_up_value_in.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f.startsWith("config.attributes.")&&f.endsWith(".event_property_name")},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.event_property_name.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(Qf,{expanded:c.value,"onUpdate:expanded":d[0]||(d[0]=f=>c.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.sections.metering.title")},{default:e.withCtx(()=>[e.createVNode(it,{name:"config.meter_api_requests"}),e.createVNode(it,{name:"config.meter_ai_token_usage"})]),_:1},8,["expanded","label"]),e.createElementVNode("div",GL,[e.createVNode(Ft,{label:e.unref(o)("plugins.free-form.metering-and-billing.sections.subject.title"),name:"config.subject","render-rules":{dependencies:{field:["look_up_value_in",["query","header"]]}},"reset-label-path":"reset"},null,8,["label"])]),e.createVNode(Qf,{expanded:l.value,"onUpdate:expanded":d[1]||(d[1]=f=>l.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.title")},{default:e.withCtx(()=>[e.createElementVNode("div",HL,[e.createVNode(gn,{"hide-label":"",name:"config.attributes"})])]),_:1},8,["expanded","label"]),e.createVNode(Qf,{expanded:u.value,"onUpdate:expanded":d[2]||(d[2]=f=>u.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.sections.ingestion.title")},{default:e.withCtx(()=>[e.createVNode(nt,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.ingest_endpoint.help"),name:"config.ingest_endpoint"},null,8,["help"]),e.createVNode(it,{name:"config.api_token"}),e.createVNode(it,{name:"config.ssl_verify"}),e.createElementVNode("div",zL,[e.createVNode(it,{name:"config.timeout"}),e.createVNode(it,{name:"config.keepalive"})])]),_:1},8,["expanded","label"]),e.createVNode(za,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:e.withCtx(()=>[e.createElementVNode("div",WL,[e.createVNode(e.unref(Fe.KLabel),{class:"ff-mb-queue-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.metering-and-billing.sections.queue.title")),1)]),_:1}),e.createVNode(Ft,{"as-child":"",name:"config.queue","reset-label-path":"reset"})])]),_:1})]),_:1},16,["plugin-config-description"]))}}),[["__scopeId","data-v-78972733"]])}),JL=Je({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:Dt,propsOverrides:{multiple:!0}}]}),XL=Je({experimental:!0}),ZL=Je({experimental:!0,fieldRenderers:[{match:"config.access_logs.custom_attributes_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),QL=Je({experimental:!0}),eD=Je({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}},fieldRenderers:[{match:({path:n})=>n==="config.methods"||n==="config.request_method",component:Dt,propsOverrides:{multiple:!0}}]}),tD=Je({experimental:!0,fieldRenderers:[{match:({path:n})=>n==="config.methods"||n==="config.request_method",component:Dt,propsOverrides:{multiple:!0}}]}),nD={class:"rla-form-request-limits-subtitle"},rD={class:"rla-form-request-limits-content"},oD={class:"rla-form-window-type"},iD={class:"rla-form-request-limits-items"},aD={class:"rla-form-request-limits-row"},sD=["id"],lD={class:"rla-form-request-limits-actions"},cD={key:0,class:"rla-form-request-limits-examples"},uD={class:"rla-form-request-limits-examples-badges"},ep="config.window_type",dD=Me(e.defineComponent({__name:"RequestLimitsForm",setup(n){var _;const{i18n:{t}}=Xe(),{formData:r,getSelectItems:o,getSchema:i}=ft(),a=e.computed(()=>{var w,C;const b=(C=(w=r.config)==null?void 0:w.limit)==null?void 0:C.map((x,E)=>{var k,N;return{limit:x,windowSize:(N=(k=r.config)==null?void 0:k.window_size)==null?void 0:N[E]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:s}=cf("request-limits",a),c=b=>{var w,C;f.value=void 0,r.config&&((w=r.config.limit)!=null&&w.length||(r.config.limit=[null]),(C=r.config.window_size)!=null&&C.length||(r.config.window_size=[null]),r.config.limit.splice(b+1,0,null),r.config.window_size.splice(b+1,0,null))},l=b=>{r.config&&(r.config.limit.splice(b,1),r.config.window_size.splice(b,1))},u=(_=i(ep))==null?void 0:_.default,p=e.computed(()=>ka(r,ep)),d=e.computed(()=>o(ep).sort((b,w)=>b.value===u?-1:w.value===u?1:0)),f=e.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,p.value)?m[p.value]:[]),y=(b,w)=>{if(w===f.value){e.nextTick(()=>{f.value=void 0}),r.config.limit=[],r.config.window_size=[];return}e.nextTick(()=>{f.value=w}),r.config.limit=[b.config.limit],r.config.window_size=[b.config.window_size]};return(b,w)=>{const C=e.resolveComponent("KLabel"),x=e.resolveComponent("KButton"),E=e.resolveComponent("KBadge"),k=e.resolveComponent("KTooltip"),N=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(N,{class:"rla-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(C,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",nD,e.toDisplayString(e.unref(t)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",rD,[e.createElementVNode("div",oD,[e.createVNode(Jf,{items:d.value,label:e.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=B=>f.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",iD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(B,U)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(s)(B,U)},[e.createVNode(C,{for:`rla-form-request-limits-item-${U}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.label_index",{index:U+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",aD,[e.createElementVNode("legend",{id:`rla-form-request-limits-item-${U}-legend`,class:"rla-form-request-limits-inputs"},[e.createVNode(Ht,{name:`$.config.limit.${U}`,placeholder:e.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.interval_determiner")),1),e.createVNode(Ht,{name:`$.config.window_size.${U}`,placeholder:e.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.seconds")),1)],8,sD),e.createElementVNode("div",lD,[e.createVNode(x,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>l(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(x,{appearance:"tertiary",onClick:()=>c(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",cD,[e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.start_with_a_use_case")),1),e.createElementVNode("div",uD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(B,U)=>(e.openBlock(),e.createBlock(k,{key:`use-case-${U}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(B.description),1),w[1]||(w[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.label"))+": "+e.toDisplayString(B.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.time_interval"))+": "+e.toDisplayString(B.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(E,{appearance:f.value===`${p.value}-${U}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>y(B,`${p.value}-${U}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-1fac872b"]]),fD={id:"rla-form-error-legend",class:"rla-form-error-inputs"},pD=Me(e.defineComponent({__name:"ErrorMessageForm",setup(n){const{i18n:{t}}=Xe();return(r,o)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"rla-form-error-legend",info:e.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",fD,[e.createVNode(Ht,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(nt,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-7b36f1f7"]]),mD=e.defineComponent({__name:"RedisField",setup(n){const{formData:t}=ft(),r=e.inject(Qe.FORMS_CONFIG),o=e.inject(Ai),i=(o==null?void 0:o.isEditing)||!1,a=e.computed(()=>{if((r==null?void 0:r.app)!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return e.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=i?null:void 0)}),(s,c)=>(e.openBlock(),e.createBlock(Ll,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(t).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(Gf,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):e.createCommentVNode("",!0)]}),_:1}))}}),hD=e.defineComponent({__name:"ConfigForm",setup(n){const{getSchema:t}=ft();return(r,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(it,{name:"identifier"}),e.createVNode(dD),e.createVNode(pD)]),_:1}),e.createVNode(za,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(Dt,{multiple:!0,name:"config.compound_identifier"}),e.unref(t)("config.counter_key")?(e.openBlock(),e.createBlock(it,{key:0,name:"config.counter_key"})):e.createCommentVNode("",!0),e.createVNode(it,{name:"config.sync_rate"}),e.createVNode(it,{name:"config.namespace"}),e.createVNode(it,{name:"config.strategy"}),e.createVNode(mD),e.createVNode(it,{name:"config.dictionary_name"}),e.createVNode(it,{name:"config.lock_dictionary_name"}),e.createVNode(it,{name:"config.hide_client_headers"}),e.createVNode(it,{name:"config.retry_after_jitter_max"}),e.createVNode(it,{name:"config.header_name"}),e.createVNode(it,{name:"config.path"}),e.createVNode(it,{name:"config.throttling"}),e.createVNode(it,{name:"config.enforce_consumer_groups"}),e.createVNode(it,{name:"config.consumer_groups"}),e.createVNode(it,{name:"config.disable_penalty"})]),_:1})],64))}}),gD=Je({experimental:!0,component:e.defineComponent({__name:"RateLimitingAdvancedForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);function o(i,a){var s;((s=i.config)==null?void 0:s.namespace)===null&&delete i.config.namespace,t.onFormChange(i,a)}return(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"on-form-change":o}),{default:e.withCtx(()=>[e.createVNode(hD)]),_:1},16))}})}),yD=Je({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),_D="__request_callout_";function pw(){return hl(_D)}const Ya="_callout_id",bD=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(n){const t=n,{formData:r}=ft(),o=e.computed(()=>{const{callouts:s}=r.config;return s==null?[]:s.filter(({name:c})=>{var l;return c&&c!==((l=s[t.index])==null?void 0:l.name)})}),i=e.computed(()=>o.value.map(({[Ya]:s,name:c})=>({value:s,label:c}))),a=e.computed(()=>r.config.callouts[t.index]);return e.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(s=>i.value.some(c=>c.value===s))}),(s,c)=>(e.openBlock(),e.createBlock(Ft,{name:n.fieldName},{depends_on:e.withCtx(l=>[e.createVNode(Dt,e.mergeProps(l,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(l=>[e.createVNode(Ft,e.mergeProps(l,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(u=>[e.createVNode(Dt,e.mergeProps(u,{items:e.unref(nf)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),wD=e.defineComponent({__name:"CalloutsForm",setup(n){const{formData:t}=ft();function r(){const o=t.config.callouts[t.config.callouts.length-1];o&&(o[Ya]=pw())}return(o,i)=>(e.openBlock(),e.createBlock(gn,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:e.withCtx(({index:a,fieldName:s})=>[e.createVNode(bD,{"field-name":s,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),kD=e.defineComponent({__name:"ConfigForm",setup(n){return(t,r)=>(e.openBlock(),e.createBlock(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(wD),e.createVNode(Ft,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(Ft,{appearance:"card",name:"cache"},{redis:e.withCtx(o=>[e.createVNode(Ft,e.mergeProps(o,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}))}}),CD=Je({component:Me(e.defineComponent({__name:"RequestCalloutForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Xe();function i(l,u=!1){return l.reduce((p,{[Ya]:d,name:f})=>(u?p[f]=d:p[d]=f,p),{})}function a(l){var p;const u=Ea(l);if((p=u.config)!=null&&p.callouts){const{callouts:d}=u.config;d.forEach(m=>{m.request.body.custom=m.request.body.custom??{},m[Ya]=pw()});const f=i(d,!0);d.forEach(m=>{m.depends_on=m.depends_on.map(g=>f[g])})}return u}const s={hasValue:l=>!!l&&Object.keys(l).length>0,prepareFormData:a};function c(l,u){var f;if(!l)return;const p=Ea(l);if(!((f=p.config)!=null&&f.callouts)){t.onFormChange(p,u);return}const d=i(p.config.callouts);p.config.callouts=p.config.callouts.map(m=>{const{[Ya]:g,depends_on:y,..._}=m;return{depends_on:y.map(b=>d[b]).filter(b=>b!=null),..._}}),t.onFormChange(p,u)}return(l,u)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"form-config":s,"on-form-change":c}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:p})=>p.endsWith("by_lua")},{default:e.withCtx(p=>[e.createVNode(nt,e.mergeProps(p,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(o)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:p})=>["cluster_nodes","sentinel_nodes"].some(d=>p.endsWith(d))},{default:e.withCtx(p=>[e.createVNode(gn,e.mergeProps(p,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(kD)]),_:1},16))}}),[["__scopeId","data-v-dc955662"]])}),ED=Je({experimental:!0}),ND=Je({experimental:!0}),SD=Je({experimental:!0,fieldRenderers:[{match:({path:n,genericPath:t})=>n==="config.replace.body"||t==="config.transform.functions.*"||t.endsWith(".json.*"),component:nt,propsOverrides:{multiline:!0,rows:3}}]}),xD=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n.endsWith(".json.*"),component:nt,propsOverrides:{multiline:!0,rows:3}}]}),AD=Je({experimental:!0}),vD={class:"sp-form-request-limits-subtitle"},ID={class:"sp-form-request-limits-content"},BD={class:"sp-form-window-type"},TD={class:"sp-form-request-limits-items"},OD={class:"sp-form-request-limits-row"},PD=["id"],VD={class:"sp-form-request-limits-actions"},$D={key:0,class:"sp-form-request-limits-examples"},RD={class:"sp-form-request-limits-examples-badges"},tp="config.window_type",LD=Me(e.defineComponent({__name:"RequestLimitsForm",setup(n){var _;const{t}=jt.createI18n("en-us",Yt),{formData:r,getSelectItems:o,getSchema:i}=ft(),a=e.computed(()=>{var w,C;const b=(C=(w=r.config)==null?void 0:w.limit)==null?void 0:C.map((x,E)=>{var k,N;return{limit:x,windowSize:(N=(k=r.config)==null?void 0:k.window_size)==null?void 0:N[E]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:s}=cf("request-limits",a),c=b=>{var w,C;f.value=void 0,r.config&&((w=r.config.limit)!=null&&w.length||(r.config.limit=[null]),(C=r.config.window_size)!=null&&C.length||(r.config.window_size=[null]),r.config.limit.splice(b+1,0,null),r.config.window_size.splice(b+1,0,null))},l=b=>{r.config&&(r.config.limit.splice(b,1),r.config.window_size.splice(b,1))},u=(_=i(tp))==null?void 0:_.default,p=e.computed(()=>ka(r,tp)),d=e.computed(()=>o(tp).sort((b,w)=>b.value===u?-1:w.value===u?1:0)),f=e.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,p.value)?m[p.value]:[]),y=(b,w)=>{if(w===f.value){e.nextTick(()=>{f.value=void 0}),r.config.limit=[],r.config.window_size=[];return}e.nextTick(()=>{f.value=w}),r.config.limit=[b.config.limit],r.config.window_size=[b.config.window_size]};return(b,w)=>{const C=e.resolveComponent("KLabel"),x=e.resolveComponent("KButton"),E=e.resolveComponent("KBadge"),k=e.resolveComponent("KTooltip"),N=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(N,{class:"sp-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(C,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",vD,e.toDisplayString(e.unref(t)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",ID,[e.createElementVNode("div",BD,[e.createVNode(Jf,{items:d.value,label:e.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=B=>f.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",TD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(B,U)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(s)(B,U)},[e.createVNode(C,{for:`sp-form-request-limits-item-${U}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.label_index",{index:U+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",OD,[e.createElementVNode("legend",{id:`sp-form-request-limits-item-${U}-legend`,class:"sp-form-request-limits-inputs"},[e.createVNode(Ht,{name:`$.config.limit.${U}`,placeholder:e.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.interval_determiner")),1),e.createVNode(Ht,{name:`$.config.window_size.${U}`,placeholder:e.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.seconds")),1)],8,PD),e.createElementVNode("div",VD,[e.createVNode(x,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>l(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(x,{appearance:"tertiary",onClick:()=>c(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",$D,[e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.start_with_a_use_case")),1),e.createElementVNode("div",RD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(B,U)=>(e.openBlock(),e.createBlock(k,{key:`use-case-${U}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(B.description),1),w[1]||(w[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.label"))+": "+e.toDisplayString(B.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.time_interval"))+": "+e.toDisplayString(B.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(E,{appearance:f.value===`${p.value}-${U}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(B,`${p.value}-${U}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-e12d9c9f"]]),DD={id:"sp-form-error-legend",class:"sp-form-error-inputs"},MD=Me(e.defineComponent({__name:"ErrorMessageForm",setup(n){const{t}=jt.createI18n("en-us",Yt);return(r,o)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"sp-form-error-legend",info:e.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",DD,[e.createVNode(Ht,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(nt,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-0796e152"]]),jD=e.defineComponent({__name:"RedisField",setup(n){const{formData:t}=ft(),r=e.inject(Qe.FORMS_CONFIG),o=e.inject(Ai),i=(o==null?void 0:o.isEditing)||!1,a=e.computed(()=>{if((r==null?void 0:r.app)!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return e.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=i?null:void 0)}),(s,c)=>(e.openBlock(),e.createBlock(Ll,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(t).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(Gf,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):e.createCommentVNode("",!0)]}),_:1}))}}),FD=e.defineComponent({__name:"ConfigForm",setup(n){return(t,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(LD),e.createVNode(MD)]),_:1}),e.createVNode(za,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(it,{name:"config.dictionary_name"}),e.createVNode(it,{name:"config.lock_dictionary_name"}),e.createVNode(it,{name:"config.strategy"}),e.createVNode(jD),e.createVNode(it,{name:"config.namespace"}),e.createVNode(it,{name:"config.hide_client_headers"}),e.createVNode(it,{name:"config.disable_penalty"}),e.createVNode(it,{name:"config.retry_after_jitter_max"}),e.createVNode(it,{name:"config.sync_rate"})]),_:1})],64))}}),UD=Je({experimental:!0,component:e.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);function o(i,a){var s;((s=i.config)==null?void 0:s.namespace)===null&&delete i.config.namespace,t.onFormChange(i,a)}return(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"on-form-change":o}),{default:e.withCtx(()=>[e.createVNode(FD)]),_:1},16))}})}),KD=Je({experimental:!0}),qD=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.flow.functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),GD=Je({experimental:!0,fieldRenderers:[{match:"config.message.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),HD=Je({experimental:!0,fieldRenderers:[{match:"config.message.functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),zD=Je({experimental:!0,renderRules:{bundles:[["config.cache.strategy","config.cache.redis"]],dependencies:{"config.cache.redis":["config.cache.strategy","redis"]}},fieldRenderers:[{match:"config.behavior.idp_error_response_body_template",component:nt,propsOverrides:{multiline:!0,rows:4}}]}),WD=Object.assign({"../plugins/acl/index.ts":MV,"../plugins/ai-custom-guardrail.ts":jV,"../plugins/ai-mcp-proxy/index.ts":FV,"../plugins/ai-prompt-decorator.ts":UV,"../plugins/ai-prompt-guard.ts":KV,"../plugins/ai-proxy-advanced.ts":qV,"../plugins/ai-proxy.ts":GV,"../plugins/ai-rate-limiting-advanced.ts":HV,"../plugins/aws-lambda.ts":zV,"../plugins/basic-auth/index.ts":i$,"../plugins/confluent-consume.ts":a$,"../plugins/confluent.ts":s$,"../plugins/correlation-id.ts":l$,"../plugins/cors.ts":c$,"../plugins/datakit/index.ts":vL,"../plugins/exit-transformer.ts":IL,"../plugins/file-log.ts":BL,"../plugins/header-cert-auth.ts":TL,"../plugins/http-log.ts":OL,"../plugins/jwe-decrypt.ts":PL,"../plugins/jwt-signer/index.ts":VL,"../plugins/jwt.ts":$L,"../plugins/kafka-consume.ts":RL,"../plugins/kafka-log.ts":LL,"../plugins/kafka-upstream.ts":DL,"../plugins/key-auth/index.ts":ML,"../plugins/metering-and-billing/index.ts":YL,"../plugins/mtls-auth.ts":JL,"../plugins/oauth2.ts":XL,"../plugins/opentelemetry.ts":ZL,"../plugins/prometheus.ts":QL,"../plugins/proxy-cache-advanced.ts":eD,"../plugins/proxy-cache.ts":tD,"../plugins/rate-limiting-advanced/index.ts":gD,"../plugins/rate-limiting.ts":yD,"../plugins/request-callout/index.ts":CD,"../plugins/request-transformer-advanced.ts":ED,"../plugins/request-transformer.ts":ND,"../plugins/response-transformer-advanced.ts":SD,"../plugins/response-transformer.ts":xD,"../plugins/route-transformer-advanced.ts":AD,"../plugins/service-protection/index.ts":UD,"../plugins/session.ts":KD,"../plugins/solace-consume.ts":qD,"../plugins/solace-log.ts":GD,"../plugins/solace-upstream.ts":HD,"../plugins/upstream-oauth.ts":zD});function YD(n){const t=n.match(/\.\.\/plugins\/(.+?)(?:\/index)?\.ts$/);if(!t)throw new Error(`Unable to derive plugin name from path: ${n}`);const[,r]=t;return r}function JD(n){const t={},r=new Map;for(const[o,i]of Object.entries(n)){const a=YD(o);if(r.has(a))throw new Error(`Duplicate plugin config for "${a}": ${r.get(a)} and ${o}`);r.set(a,o),t[a]={...i,component:i.component,experimental:i.experimental??!1,fieldRenderers:i.fieldRenderers??[]}}return t}const np=JD(WD);function mw(n){return np[n]}function hw(n,t){const r=mw(n);if(r&&!(r.experimental&&!t.includes(n)))return r.component}function gw(n,t,r){return r==="freeform"?!0:r==="vfg"?!1:!!hw(n,t)}function XD(){return Object.entries(np).filter(([,n])=>n.experimental).map(([n])=>n).sort((n,t)=>n.localeCompare(t))}function rp(){return e.inject(Ld,[])}function ZD(n){const t=new Set(XD()),r=n.filter(i=>t.has(i)),o=n.filter(i=>!t.has(i));return o.length>0&&console.warn(`[entities-plugins] Ignoring unknown experimental free-form plugins: ${o.join(", ")}`),r}function QD(n){e.provide(Ld,ZD(n))}function eM(){const n=rp();return{shouldUseFreeForm:(t,r)=>gw(t,n,r),getFreeFormComponent:t=>hw(t,n)}}function yw(n){var o,i;if(!n)return;if(!n.token_exchange)return n;if((Array.isArray((o=n.token_exchange.request)==null?void 0:o.audience)&&n.token_exchange.request.audience.length===0||n.token_exchange.request&&!n.token_exchange.request.audience)&&(n.token_exchange.request.audience=null),(Array.isArray((i=n.token_exchange.request)==null?void 0:i.scopes)&&n.token_exchange.request.scopes.length===0||n.token_exchange.request&&!n.token_exchange.request.scopes)&&(n.token_exchange.request.scopes=null),[{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1},subject_token_issuers:null},{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1}},{cache:{},request:{audience:null,scopes:null}}].some(a=>en(n.token_exchange,a)))return n.token_exchange=null,n;const r=n.token_exchange.subject_token_issuers;return r&&r.forEach(a=>{en(a.conditions,{})&&(a.conditions=null),a.conditions&&Object.values(a.conditions).every(s=>Array.isArray(s)&&s.length===0)&&(a.conditions=null)}),n}const _w=n=>{const t=n==null?void 0:n.proof_of_possession_mtls_from_header;if(!t)return;if(!Array.isArray(t.ca_certificates)||t.ca_certificates.length===0){n.proof_of_possession_mtls_from_header=null;return}en(t,{allow_partial_chain:!1,cert_cache_ttl:6e4,certificate_header_format:"url_encoded",http_timeout:3e4,revocation_check_mode:"IGNORE_CA_ERROR",secure_source:!0,ssl_verify:!0})&&(n.proof_of_possession_mtls_from_header=null)},tM={shamefullyTransformPayload(n){return yw(n.payload.config),_w(n.payload.config),n}},nM={shamefullyTransformPayload(n){var t,r,o,i,a;if(!((r=(t=n.payload.config)==null?void 0:t.access_logs)!=null&&r.custom_attributes_by_lua))return n;if(en((i=(o=n.payload.config)==null?void 0:o.access_logs)==null?void 0:i.custom_attributes_by_lua,{})){const s=(a=n.payload.config)==null?void 0:a.access_logs;s&&(s.custom_attributes_by_lua=null)}return n}},rM={shamefullyTransformPayload(n){var r,o;const t=(o=(r=n.payload.config)==null?void 0:r.v2_strategies)==null?void 0:o.openid_connect;return Array.isArray(t)&&t.forEach(i=>{yw(i.config),_w(i.config)}),n}},oM={shamefullyTransformPayload(n){var r;return!n.payload.config||!((r=n.payload.config)!=null&&r.token_exchange)||[{cache:{enabled:!0,ttl:3600},client_auth:"client_secret_basic",enabled:!1,request:{actor_token_source:"none",actor_token_type:"urn:ietf:params:oauth:token-type:access_token",audience:null,requested_token_type:"urn:ietf:params:oauth:token-type:access_token",scopes:null,subject_token_type:"urn:ietf:params:oauth:token-type:access_token"}}].some(o=>{var i;return en((i=n.payload.config)==null?void 0:i.token_exchange,o)})&&(n.payload.config.token_exchange=null),n}},iM=(n,t)=>{const r=n.model.startsWith("config-"),o=t.model.startsWith("config-");return r&&!o?1:!r&&o?-1:0},bw=(n,t)=>(n.order??0)-(t.order??0),ww=(n,t)=>iM(n,t)||bw(n,t)||n.model.localeCompare(t.model),aM=n=>{const{capitalize:t}=Ie.useStringHelpers(),{convertToDotNotation:r}=Hy(),{i18n:{t:o}}=Xe(),i=rp(),a={"application-registration":{overwriteDefault:!0,formSchema:{...WB}},datadog:{...YB},"exit-transformer":{...JB},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...cT},"statsd-advanced":{...uT},"route-by-header":{...iT},"ai-prompt-decorator":{...KB},"ai-prompt-template":{...qB},"ai-proxy-advanced":{...GB},"ai-rag-injector":{...HB},"ai-llm-as-judge":{...zB},"vault-auth":{...fT},"oas-validation":{...eT},mocking:{...QB},"rate-limiting":{...Pl},"rate-limiting-advanced":(n==null?void 0:n.app)==="kongManager"?{"config-consumer_groups":Pl["config-consumer_groups"]}:{...Pl},"graphql-rate-limiting-advanced":{...XB},"injection-protection":{...ZB},"response-ratelimiting":{...Pl},"pre-function":{...n_},"post-function":{...n_},"request-transformer-advanced":{...rT},"response-transformer":{...r_},"response-transformer-advanced":{...oT},zipkin:{...kT},"upstream-oauth":{...dT},saml:{...aT},"kafka-upstream":{...gT},"solace-consume":{...sT},"solace-upstream":{...lT},"key-auth":VB(n),"key-auth-enc":jB(n),confluent:{...yT},"confluent-consume":{..._T},"kafka-consume":{...bT},"kafka-log":{...wT},"openid-connect":{...tM},opentelemetry:{...nM},"konnect-application-auth":{...rM},"ai-mcp-oauth2":{...oM}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_sourcePlugin","_supported_redis_partial_type","_redis_partial_path"],c=(k,N,B,U)=>{let S={};(N||k)&&(S=N||(k.fields?k.fields:k));const A=s().concat(k.blacklist?k.blacklist:[]),O=Object.keys(S).filter(ee=>!A.includes(ee)),P=O.indexOf("comparator");P>-1&&O.splice(P,1);let R={fields:[]};const z={};O.forEach(ee=>{u(S[ee],ee,S,z,R,B)});const X=z.name,Z=k._sourcePlugin||X,K=Rn[Z],W=[],$=ee=>{const F=["cluster-cache"];for(const J of F)if(ee.model.includes(J))return!1;return new RegExp("(?<=-redis-).*").test(ee.model)};if(R._supported_redis_partial_type=k._supported_redis_partial_type,R._redis_partial_path=k._redis_partial_path,Qe.getSharedFormName(Z)||gw(Z,i,U)||K!=null&&K.useLegacyForm||n!=null&&n.credential){if(K!=null&&K.useLegacyForm&&(n!=null&&n.enableRedisPartial)&&k._supported_redis_partial_type){for(const ee of R.fields)if($(ee)){W.push(ee);continue}R.fields=R.fields.filter(ee=>!$(ee)),W.length&&R.fields.push({id:"_redis",fields:W,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}R.fields.sort((ee,F)=>(ee.order=ee.order||0,F.order=F.order||0,ee.order-F.order))}else{const ee=[],F=[],J=[],M=[],v={};if(K!=null&&K.fieldRules){const re=[...K.fieldRules.atLeastOneOf??[],...K.fieldRules.onlyOneOf??[],...K.fieldRules.mutuallyRequired??[]];if(K.fieldRules.onlyOneOfMutuallyRequired)for(const me of K.fieldRules.onlyOneOfMutuallyRequired)re.push(...me);for(const me of re)for(const he of me)v[he.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const re of R.fields){if(n!=null&&n.enableRedisPartial&&k._supported_redis_partial_type&&$(re)){M.push(re);continue}if(re.pinned){ee.push(re);continue}if(re.required||v[re.model]!==void 0){v[re.model]===!1&&(v[re.model]=!0),F.push(re);continue}J.push(re)}M.length&&J.push({id:"_redis",fields:M,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const j=Object.entries(v).filter(([,re])=>!re).map(([re])=>re.replace(/-/g,".").replace(/_/g,"-"));j.length>0&&console.warn(`Unknown checked fields for plugin ${X}: ${j.join(", ")}`);const ie=[];ee.length>0&&ie.push({fields:ee.sort(bw)}),(F.length>0||J.length>0)&&ie.push({fields:F.sort(ww),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:J.sort(ww),triggerLabel:{expand:o("plugins.form.grouping.advanced_parameters.view"),collapse:o("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),R={groups:ie}}return{schema:R,model:z,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},l=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",u=(k,N,B,U,S,A)=>{const O=l(k);return U[N]=O?k.default:null,k.id=N,k.model=N,k.fields&&k.type==="record"?d(k,N,B,U,S,A):(B[N]=k,x(k,U),A&&A[N]&&p(B[N],A[N]),S.fields.push(k)),B},p=(k,N)=>(N&&(Object.assign(k,N),N.label&&(k.label=N.label)),k),d=(k,N,B,U,S,A)=>{k.fields.forEach(O=>{Object.keys(O).forEach(P=>{const R=O[P];B=u(R,N+"-"+P,B,U,S,A)})})},f=(k,N)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const B=n==null?void 0:n.entityId;N[k.model]=B?{id:B}:null},m=k=>{k.type="input",k.inputType="number",k.between&&k.between.length===2&&(k.min=k.between[0],k.max=k.between[1])},g=k=>{Object.prototype.hasOwnProperty.call(k,"one_of")?(k.type="select",k.values=k.one_of,k.selectOptions={hideNoneSelectedText:!0}):(k.type="input",k.inputType="text")},y=k=>{k.type="checkbox",k.default=!0,k.required=!1},_=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:N}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...dt,model:k.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...dt.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(N=>{const B=Object.keys(N)[0];return{model:B,type:"input",label:t(B),placeholder:B,inputType:N[B].type}})}}]})},b=k=>k.fields.reduce((N,B)=>(B.fields&&B.fields.forEach(U=>{N[U.model]=U}),B.model&&(N[B.model]=B),N),{}),w=(k,N)=>{if(!Qe.customFields.includes(k.model))return;const B=b(k);Qe.customFields.forEach(U=>{Object.keys(B).forEach(S=>{const A=l(B[S]);N[S]=A?B[S].default:null}),delete N[U]})},C=(k,N)=>k.inputType==="hidden"?"":r(k.label||N.replace(/_/g," ")),x=(k,N)=>{switch(w(k,N),k.type){case"foreign":f(k,N);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":g(k);break;case"boolean":y(k);break;case"map":_(k);break}k.inputType==="foreign"&&f(k,N),k.label=C(k,k.model)};function E(k,N){if(N==null||N.type&&N.type!=="record"||typeof k!="object"||k==null)return k;const B={};for(const U of N.fields){const S=Object.keys(U)[0],A=U[S];A.type==="record"?B[S]=E(k[S],A):A.type==="array"&&Array.isArray(k[S])&&A.elements.type==="record"?B[S]=k[S].map(O=>E(O,A.elements)):B[S]=k[S]}return B}return{buildFormSchema:u,parseSchema:c,customSchemas:a,typedefs:ai,pruneRecord:E}},uc=Symbol("customPluginType"),sM=1e3,lM=20,kw=5e3,Cw=(n,t=sM)=>{const r=/^[a-z][a-z\d+.-]*:/i.test(n),o=new URL(n,"http://localhost");return o.searchParams.has("size")||o.searchParams.set("size",`${t}`),r?o.toString():`${o.pathname}${o.search}${o.hash}`},dc=async(n,t,r)=>{const o=[];let i=Cw(t),a=null,s=0;for(;i&&s<lM&&o.length<kw&&i!==a;){a=i;const l=(await n.get(i,{signal:r})).data;Array.isArray(l==null?void 0:l.data)&&o.push(...l.data),i=l!=null&&l.next?Cw(l.next):null,s+=1}return o.slice(0,kw)};function cM(n){const{axiosInstance:t,apiBaseUrl:r}=n,o=()=>{if(n.app!=="konnect")throw new Error("Installed custom plugin APIs are only available for Konnect")},i=(_,b)=>{let w=`${r}${_}`;return n.app==="konnect"&&(w=w.replace(/{controlPlaneId}/gi,n.controlPlaneId)),w=w.replace(/{pluginId}/gi,b??"").replace(/\/{workspace}/gi,n.workspace?`/${n.workspace}`:""),w},a=async _=>{o();const b=i(et.customPlugin.konnect.installed.edit,_),{data:w}=await t.get(b);return w},s=async _=>{o();const b=i(et.customPlugin.konnect.installed.create),{data:w}=await t.post(b,_);return w},c=async(_,b)=>{o();const w=i(et.customPlugin.konnect.installed.edit,_),{data:C}=await t.put(w,b);return C},l=async _=>{const b=i(et.customPlugin[n.app].streamed.edit,_),{data:w}=await t.get(b);return w},u=async _=>{const b=i(et.customPlugin[n.app].streamed.create),{data:w}=await t.post(b,_);return w},p=async(_,b)=>{const w=i(et.customPlugin[n.app].streamed.edit,_),C=n.app==="konnect"?"put":"patch",{data:x}=await t[C](w,b);return x},d=async _=>{const{aliasName:b,priority:w,sourcePlugin:C}=_,x=i(et.customPlugin[n.app].cloned.create),{data:E}=await t.post(x,{name:b,ref:C,priority:w});return E},f=async(_,b)=>{const{aliasName:w,priority:C,sourcePlugin:x}=b,E=i(et.customPlugin[n.app].cloned.edit,_),k=n.app==="konnect"?"put":"patch",{data:N}=await t[k](E,{ref:x,priority:C,name:w});return N},m=async _=>{const b=i(et.customPlugin[n.app].cloned.edit,_),{data:w}=await t.get(b);return w};return{getInstalledPlugin:a,createInstalledPlugin:s,updateInstalledPlugin:c,getStreamedPlugin:l,createStreamedPlugin:u,updateStreamedPlugin:p,getPluginByUnknownType:async _=>{var b,w,C;if(n.app==="konnect")try{const x=await a(_);return Object.assign(x,{[uc]:"installed"})}catch(x){if(zo.isAxiosError(x)&&((b=x.response)==null?void 0:b.status)!==404)throw x}try{const x=await l(_);return Object.assign(x,{[uc]:"streamed"})}catch(x){if(zo.isAxiosError(x)&&((w=x.response)==null?void 0:w.status)!==404)throw x}try{const x=await m(_);return Object.assign(x,{[uc]:"cloned"})}catch(x){if(zo.isAxiosError(x)&&((C=x.response)==null?void 0:C.status)!==404)throw x}return null},getPluginType:_=>_[uc],getClonedPlugin:m,createClonedPlugin:d,updateClonedPlugin:f}}const st={useI18n:Xe,usePluginMetaData:e_,usePluginHelpers:Hy,useSchemas:aM,useExperimentalFreeForms:rp,useProvideExperimentalFreeForms:QD,useFreeFormResolver:eM,useCustomPluginApi:cM},Ew=n=>{var r,o,i,a;const t=n==null?void 0:n.response;return(t==null?void 0:t.status)===400&&(((o=(r=t.data)==null?void 0:r.message)==null?void 0:o.includes("plugin schema is currently in use"))||((i=t.data)==null?void 0:i.code)===19||((a=t.data)==null?void 0:a.name)==="referenced by others")},uM={class:"kong-ui-entities-custom-plugin-form"},dM={class:"plugin-type-radios"},fM={class:"compare-table-wrapper"},pM={class:"compare-table"},mM={key:0,scope:"col"},hM={key:1,scope:"col"},gM={key:2,scope:"col"},yM={scope:"row"},_M={key:0},bM={key:1},wM={key:2},kM={scope:"row"},CM={key:0},EM={class:"compare-list"},NM={key:1},SM={class:"compare-list"},xM={key:2},AM={scope:"row"},vM={key:0},IM={key:1},BM={key:2},TM={scope:"row"},OM={key:0},PM={key:1},VM={key:2},$M={scope:"row"},RM={key:0},LM={key:1},DM={key:2},MM={class:"plugin-modules-section"},jM={class:"plugin-select-item"},FM={class:"plugin-select-item"},UM={key:1},KM=1*1024*1024,qM=Me(e.defineComponent({__name:"CustomPluginForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!n.app||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&!n.workspace||!n.cancelRoute||!n.successRoute)},pluginName:{type:String,default:""},unsupportedTypes:{type:Array,default:()=>[]}},emits:["update","error","loading"],setup(n,{emit:t}){var he;const r=["acl","datakit","file-log","http-log","ip-restriction","key-auth","opa","openid-connect","post-function","pre-function","request-transformer-advanced","request-transformer","response-transformer-advanced","response-transformer","route-by-header","tcp-log"],o=["installed","streamed","cloned"],i=n,a=t,{i18n:{t:s},i18nT:c}=st.useI18n(),l=Nr.useRouter(),{getMessageFromError:u}=Ie.useErrors(),{axiosInstance:p}=Ie.useAxios((he=i.config)==null?void 0:he.axiosRequestConfig),{createInstalledPlugin:d,updateInstalledPlugin:f,createStreamedPlugin:m,updateStreamedPlugin:g,getPluginType:y,getPluginByUnknownType:_,createClonedPlugin:b,updateClonedPlugin:w}=st.useCustomPluginApi({axiosInstance:p,apiBaseUrl:i.config.apiBaseUrl,controlPlaneId:i.config.controlPlaneId,app:i.config.app,workspace:i.config.workspace});e.provide(Ie.PLUGIN_FORM_LAYOUT_STATE,e.ref(!0));const C=e.ref(null),x=(le,ge)=>{const Oe=i.config.workspace??"",$e=i.config.app==="konnect"?i.config.controlPlaneId:"";return`${i.config.apiBaseUrl}${le}`.replace(/{controlPlaneId}/gi,$e).replace(/{pluginId}/gi,ge??"").replace(/\/\{workspace\}/gi,Oe?`/${Oe}`:"")},E=e.computed(()=>{const le=$.fields.pluginType;if(!le)return"";const ge=U.value?i.pluginName:void 0,Oe=ge?"edit":"create";if(i.config.app==="konnect"){if(le==="installed")return x(et.customPlugin.konnect.installed[Oe],ge);if(le==="streamed")return x(et.customPlugin.konnect.streamed[Oe],ge);if(le==="cloned")return x(et.customPlugin.konnect.cloned[Oe],ge)}else{if(le==="streamed")return x(et.customPlugin.kongManager.streamed[Oe],ge);if(le==="cloned")return x(et.customPlugin.kongManager.cloned[Oe],ge)}return""}),k=e.computed(()=>U.value?$.fields.pluginType==="cloned"?i.config.app==="konnect"?"put":"patch":i.config.app==="kongManager"&&$.fields.pluginType==="streamed"?"patch":"put":"post"),N=e.computed(()=>{switch($.fields.pluginType){case"installed":return Ie.SupportedEntityType.PluginSchema;case"streamed":return Ie.SupportedEntityType.CustomPlugin;case"cloned":return Ie.SupportedEntityType.ClonedPlugin;default:return Ie.SupportedEntityType.Plugin}}),B=e.computed(()=>{switch($.fields.pluginType){case"installed":return{lua_schema:$.fields.schemaContent};case"streamed":return{name:$.fields.name,schema:$.fields.schemaContent,handler:$.fields.handlerContent};case"cloned":return{ref:$.fields.sourcePlugin,name:$.fields.aliasName,...$.fields.priority?{priority:parseInt($.fields.priority,10)}:{}};default:return{}}}),U=e.computed(()=>!!i.pluginName),S=e.ref(!1),A=e.ref(""),O=e.computed(()=>new Set(i.unsupportedTypes)),P=e.computed(()=>o.filter(le=>!O.value.has(le))),R=e.computed(()=>!U.value&&P.value.length===0),z=e.computed(()=>!U.value&&P.value.length>1),X=()=>P.value[0]??null,Z=le=>P.value.includes(le),K=le=>{if(U.value||!z.value){const ge=le-1;return($.fields.pluginType==="installed"?1:2)>1?ge:void 0}return le},W=e.ref(!0),$=e.reactive({fields:{pluginType:X(),schemaContent:"",handlerContent:"",name:"",sourcePlugin:"",aliasName:"",priority:""},readonly:!1,errorMessage:""});let ee="";e.watch(P,le=>{U.value||(!$.fields.pluginType||!le.includes($.fields.pluginType))&&($.fields.pluginType=le[0]??null)},{immediate:!0}),e.watch(()=>$.fields.pluginType,()=>{U.value||($.fields.schemaContent="",$.fields.handlerContent="",$.fields.name="",$.fields.sourcePlugin="",$.fields.aliasName="",$.fields.priority="")});const{getDisplayName:F}=e_(),J=e.computed(()=>{var $e;const le=(($e=i.config)==null?void 0:$e.clonablePlugins)??r;if(le.length===0)return[];const ge={};le.forEach(Pe=>{const qe=Rn[Pe],Ye=qe==null?void 0:qe.group;Ye?(ge[Ye]||(ge[Ye]=[]),ge[Ye].push({label:F(Pe),value:Pe})):console.warn(`Plugin ${Pe} is missing metadata group and will be shown without grouping.`)});const Oe=[];return Object.keys(ge).sort().forEach(Pe=>{Oe.push({label:Pe,items:ge[Pe]})}),Oe}),M=e.computed(()=>{if(R.value||!$.fields.pluginType)return!1;switch($.fields.pluginType){case"installed":return $.fields.schemaContent.length>0;case"streamed":return $.fields.schemaContent.length>0&&$.fields.handlerContent.length>0&&$.fields.name.trim().length>0;case"cloned":return!!$.fields.sourcePlugin&&$.fields.aliasName.trim().length>0;default:return!1}}),v=le=>new Promise((ge,Oe)=>{const $e=new FileReader;$e.onload=Pe=>{var Ye;const qe=(Ye=Pe.target)==null?void 0:Ye.result;typeof qe=="string"?ge(qe):Oe(new Error("Failed to read file as text"))},$e.onerror=Oe,$e.readAsText(le)}),j=async(le,ge)=>{const Oe=ge[0];if(Oe){if(Oe.size>KM){$.errorMessage=s("custom_plugin_form.errors.file_too_large");return}try{const $e=await v(Oe);le==="schema"?$.fields.schemaContent=$e:$.fields.handlerContent=$e}catch{$.errorMessage=s("custom_plugin_form.errors.file_read_error"),le==="schema"?$.fields.schemaContent="":$.fields.handlerContent=""}}},ie=le=>{le==="schema"?$.fields.schemaContent="":$.fields.handlerContent=""},re=()=>{l.push(i.config.cancelRoute)};e.onMounted(async()=>{if(i.pluginName){S.value=!0,a("loading",!0);try{const le=await _(i.pluginName);if(!le){A.value=s("custom_plugin_form.errors.plugin_not_found"),a("error",new Error(A.value));return}const ge=y(le);if($.fields.pluginType=ge,ge==="installed")$.fields.schemaContent=le.item.lua_schema;else if(ge==="streamed"){const{name:Oe,schema:$e,handler:Pe}=le;$.fields.name=Oe,$.fields.schemaContent=$e,$.fields.handlerContent=Pe}else if(ge==="cloned"){const{ref:Oe,name:$e,priority:Pe}=le;$.fields.aliasName=$e,$.fields.sourcePlugin=Oe,$.fields.priority=Pe!==null?String(Pe):"",ee=$e}else A.value=s("custom_plugin_form.errors.unsupported_plugin_type",{type:ge}),a("error",new Error(A.value))}catch(le){A.value=u(le),a("error",le)}finally{S.value=!1,a("loading",!1)}}});const me=async()=>{$.errorMessage="",$.readonly=!0;try{const le=$.fields.pluginType;if(!le)return;if(le==="installed"){const ge={lua_schema:$.fields.schemaContent},Oe=U.value?await f(i.pluginName,ge):await d(ge);a("update",Oe)}else if(le==="streamed"){const ge={name:$.fields.name,schema:$.fields.schemaContent,handler:$.fields.handlerContent},Oe=U.value?await g(i.pluginName,ge):await m(ge);a("update",Oe)}else{const ge=U.value?await w(ee,{aliasName:$.fields.aliasName,sourcePlugin:$.fields.sourcePlugin,priority:$.fields.priority?parseInt($.fields.priority,10):void 0}):await b({aliasName:$.fields.aliasName,sourcePlugin:$.fields.sourcePlugin,priority:$.fields.priority?parseInt($.fields.priority,10):void 0});a("update",{pluginType:"cloned",sourcePlugin:ge.ref,aliasName:ge.name,priority:ge.priority??void 0})}l.push(i.config.successRoute)}catch(le){$.errorMessage=Ew(le)?s("delete.plugin_schema_in_use_message"):u(le),a("error",le)}finally{$.readonly=!1}};return(le,ge)=>{const Oe=e.resolveComponent("KSkeleton"),$e=e.resolveComponent("KEmptyState"),Pe=e.resolveComponent("KRadio"),qe=e.resolveComponent("KCollapse"),Ye=e.resolveComponent("KFileUpload"),tt=e.resolveComponent("KLabel"),Ve=e.resolveComponent("KAlert"),ke=e.resolveComponent("KSelect"),_e=e.resolveComponent("KInput"),ye=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",uM,[e.createVNode(e.unref(Ie.EntityBaseForm),{ref_key:"entityBaseFormRef",ref:C,"can-submit":M.value,config:n.config,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"error-message":$.errorMessage,"form-fields":B.value,"is-readonly":$.readonly,"slideout-deck-entity-type":N.value,"slideout-fetch-url":E.value,"slideout-request-method":k.value,onCancel:re,onSubmit:me},{"form-actions":e.withCtx(()=>[S.value||A.value||R.value?(e.openBlock(),e.createElementBlock("span",UM)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(ye,{appearance:"primary","data-testid":"custom-plugin-form-submit",disabled:!M.value||$.readonly,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.save")),1)]),_:1},8,["disabled"]),e.createVNode(ye,{appearance:"secondary","data-testid":"custom-plugin-form-cancel",disabled:$.readonly,onClick:re},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(ye,{appearance:"tertiary","data-testid":"custom-plugin-form-view-configuration",onClick:ge[14]||(ge[14]=ae=>{var te;return(te=C.value)==null?void 0:te.viewConfig()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.view_configuration")),1)]),_:1})],64))]),default:e.withCtx(()=>[S.value?(e.openBlock(),e.createBlock(Oe,{key:0,type:"form"})):A.value?(e.openBlock(),e.createBlock($e,{key:1,"action-button-visible":!1,"data-testid":"custom-plugin-form-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(A.value),1)]),_:1})):R.value?(e.openBlock(),e.createBlock($e,{key:2,"action-button-visible":!1,"data-testid":"custom-plugin-form-unsupported-types-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(s)("custom_plugin_form.errors.no_supported_types")),1)]),_:1})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[z.value?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:0,class:"custom-plugin-form-steps",step:1,title:e.unref(s)("custom_plugin_form.step1.title")},{default:e.withCtx(()=>[e.createElementVNode("div",dM,[Z("installed")?(e.openBlock(),e.createBlock(Pe,{key:0,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[0]||(ge[0]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-installed",description:e.unref(s)("custom_plugin_form.step1.types.installed.description"),label:e.unref(s)("custom_plugin_form.step1.types.installed.label"),"selected-value":"installed"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createBlock(Pe,{key:1,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[1]||(ge[1]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-streamed",description:e.unref(s)("custom_plugin_form.step1.types.streamed.description"),label:e.unref(s)("custom_plugin_form.step1.types.streamed.label"),"selected-value":"streamed"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createBlock(Pe,{key:2,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[2]||(ge[2]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-cloned",description:e.unref(s)("custom_plugin_form.step1.types.cloned.description"),label:e.unref(s)("custom_plugin_form.step1.types.cloned.label"),"selected-value":"cloned"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0)]),e.createVNode(qe,{modelValue:W.value,"onUpdate:modelValue":ge[3]||(ge[3]=ae=>W.value=ae),class:"custom-plugin-form-compare-collapse","data-testid":"compare-deployment-options","trigger-alignment":"leading","trigger-label":e.unref(s)("custom_plugin_form.step1.compare_trigger")},{default:e.withCtx(()=>[e.createElementVNode("div",fM,[e.createElementVNode("table",pM,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[ge[15]||(ge[15]=e.createElementVNode("th",{scope:"col"},null,-1)),Z("installed")?(e.openBlock(),e.createElementBlock("th",mM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("th",hM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("th",gM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.cloned")),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("tbody",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",yM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",_M,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",bM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",wM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",kM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",CM,[e.createElementVNode("ul",EM,[e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.handler")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.schema")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.additional")),1)])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",NM,[e.createElementVNode("ul",SM,[e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.handler")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.schema")),1)])])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",xM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",AM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",vM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",IM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",BM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",TM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",OM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",PM,[e.createVNode(e.unref(c),{keypath:"custom_plugin_form.step1.compare_table.rows.sandboxing.streamed"},{link:e.withCtx(()=>[e.createVNode(e.unref(Fe.KExternalLink),{"hide-icon":"",href:e.unref(Ha).customPluginSandboxing},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.streamed_link")),1)]),_:1},8,["href"])]),_:1})])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",VM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",$M,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.data_plane_reload.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",RM,[e.createVNode(e.unref(Re.CheckCircleIcon),{color:`var(--kui-color-text-success, ${e.unref(Rh)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",LM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",DM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0)])])])])]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["title"])):e.createCommentVNode("",!0),$.fields.pluginType==="installed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:1,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_files.title")},{default:e.withCtx(()=>[e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:e.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:U.value&&$.fields.schemaContent?e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!U.value,onFileAdded:ge[4]||(ge[4]=ae=>j("schema",ae)),onFileRemoved:ge[5]||(ge[5]=ae=>ie("schema"))},null,8,["button-text","help","label","placeholder","required"]),e.createElementVNode("div",MM,[e.createVNode(tt,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step2_files.plugin_modules.label")),1)]),_:1}),e.createVNode(Ve,{appearance:"warning",message:e.unref(s)("custom_plugin_form.step2_files.plugin_modules.alert")},null,8,["message"])])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="streamed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:2,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_files.title")},{default:e.withCtx(()=>[e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:e.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:U.value&&$.fields.schemaContent?e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!U.value,onFileAdded:ge[6]||(ge[6]=ae=>j("schema",ae)),onFileRemoved:ge[7]||(ge[7]=ae=>ie("schema"))},null,8,["button-text","help","label","placeholder","required"]),e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.handler_file.button_text"),"data-testid":"custom-plugin-handler-upload",help:e.unref(s)("custom_plugin_form.step2_files.handler_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.handler_file.label"),placeholder:U.value&&$.fields.handlerContent?e.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder"),required:!U.value,onFileAdded:ge[8]||(ge[8]=ae=>j("handler",ae)),onFileRemoved:ge[9]||(ge[9]=ae=>ie("handler"))},null,8,["button-text","help","label","placeholder","required"])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="cloned"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:3,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_clone.title")},{default:e.withCtx(()=>[e.createVNode(ke,{modelValue:$.fields.sourcePlugin,"onUpdate:modelValue":ge[10]||(ge[10]=ae=>$.fields.sourcePlugin=ae),"data-testid":"custom-plugin-clone-select","enable-filtering":"",items:J.value,label:e.unref(s)("custom_plugin_form.step2_clone.select_plugin.label"),placeholder:e.unref(s)("custom_plugin_form.step2_clone.select_plugin.placeholder"),required:""},{"item-template":e.withCtx(({item:ae})=>[e.createElementVNode("div",jM,[e.createVNode(e.unref(Er.PluginIcon),{name:String(ae.value),size:20},null,8,["name"]),e.createElementVNode("span",null,e.toDisplayString(ae.label),1)])]),"selected-item-template":e.withCtx(({item:ae})=>[e.createElementVNode("div",FM,[e.createVNode(e.unref(Er.PluginIcon),{name:String(ae.value),size:20},null,8,["name"]),e.createElementVNode("span",null,e.toDisplayString(ae.label),1)])]),_:1},8,["modelValue","items","label","placeholder"])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="streamed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:4,class:"custom-plugin-form-steps",description:e.unref(s)("custom_plugin_form.step3.description"),step:K(3),title:e.unref(s)("custom_plugin_form.step3.title")},{default:e.withCtx(()=>[e.createVNode(_e,{modelValue:$.fields.name,"onUpdate:modelValue":ge[11]||(ge[11]=ae=>$.fields.name=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-name",help:e.unref(s)("custom_plugin_form.step3.name.help"),label:e.unref(s)("custom_plugin_form.step3.name.label"),placeholder:e.unref(s)("custom_plugin_form.step3.name.placeholder"),readonly:$.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"])]),_:1},8,["description","step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="cloned"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:5,class:"custom-plugin-form-steps",description:e.unref(s)("custom_plugin_form.step3.description"),step:K(3),title:e.unref(s)("custom_plugin_form.step3.title")},{default:e.withCtx(()=>[e.createVNode(_e,{modelValue:$.fields.aliasName,"onUpdate:modelValue":ge[12]||(ge[12]=ae=>$.fields.aliasName=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-alias-name",help:e.unref(s)("custom_plugin_form.step3.alias_name.help"),label:e.unref(s)("custom_plugin_form.step3.alias_name.label"),placeholder:e.unref(s)("custom_plugin_form.step3.alias_name.placeholder"),readonly:$.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"]),e.createVNode(_e,{modelValue:$.fields.priority,"onUpdate:modelValue":ge[13]||(ge[13]=ae=>$.fields.priority=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-priority",label:e.unref(s)("custom_plugin_form.step3.priority.label"),"label-attributes":{info:e.unref(s)("custom_plugin_form.step3.priority.tooltip")},readonly:$.readonly,type:"number"},{help:e.withCtx(()=>[e.createVNode(e.unref(c),{keypath:"custom_plugin_form.step3.priority.help.text"},{link:e.withCtx(()=>[e.createVNode(e.unref(Fe.KExternalLink),{"hide-icon":"",href:e.unref(Ha).pluginPriority},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step3.priority.help.link")),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["modelValue","label","label-attributes","readonly"])]),_:1},8,["description","step","title"])):e.createCommentVNode("",!0)],64))]),_:1},8,["can-submit","config","entity-type","error-message","form-fields","is-readonly","slideout-deck-entity-type","slideout-fetch-url","slideout-request-method"])])}}}),[["__scopeId","data-v-0c1e017a"]]),GM=(n,t)=>({type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label",items:{type:"select",values:n,selectOptions:{hideNoneSelectedText:!0},...(t==null?void 0:t[0])!=null?{default:t[0]}:{}}}),HM={class:"referable-field-item"},zM=24,Nw=Me(e.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(n){const t=n,{formatPluginFieldLabel:r}=st.usePluginHelpers(),o=e.computed(()=>t.field.replace(/\./g,"-")),i=e.computed(()=>t.field.replace(/^[cC]onfig\./,"").split(".").map(s=>r(s)).join(".")),a=()=>{if(!o.value)return;const s=`label[for="${o.value}"]`,c=document.querySelector(s)||document.getElementById(o.value);if(!c)return;const l=Math.max(0,c.getBoundingClientRect().top+window.scrollY-zM),u=()=>{var p;(p=c.click)==null||p.call(c)};window.addEventListener("scrollend",u,{once:!0}),window.scrollTo({top:l,behavior:"smooth"})};return(s,c)=>(e.openBlock(),e.createElementBlock("span",HM,[e.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:a},e.toDisplayString(i.value),1),n.isLast?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-949a9ea1"]]),WM={key:0},YM=Me(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(n){const t=n,{i18n:{t:r},i18nT:o}=st.useI18n(),i=e.computed(()=>{const a=[];if(t.rules.atLeastOneOf)for(const s of t.rules.atLeastOneOf)a.push({key:"plugins.form.field_rules.at_least_one_of",fields:s});if(t.rules.onlyOneOf)for(const s of t.rules.onlyOneOf)a.push({key:"plugins.form.field_rules.only_one_of",fields:s});if(t.rules.mutuallyRequired)for(const s of t.rules.mutuallyRequired)a.push({key:"plugins.form.field_rules.mutually_required",fields:s});return a});return(a,s)=>{const c=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(c,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,({key:l,fields:u},p)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${p}`},[e.createVNode(e.unref(o),{keypath:l},{parameters:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u,(d,f)=>(e.openBlock(),e.createBlock(Nw,{key:`alert-field-${d}`,field:d,"is-last":f===u.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),t.rules.onlyOneOfMutuallyRequired&&t.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",WM,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.rules.onlyOneOfMutuallyRequired,(l,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l,(p,d)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${d}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p,(f,m)=>(e.openBlock(),e.createBlock(Nw,{key:`only-one-mutually-field-${f}`,field:f,"is-last":m===p.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-5f9ff453"]]);function JM(n){if(n.length===0)return"";if(n.length===1){const i=mn(n[0]);return gt(...i.slice(0,-1))}const t=n.map(i=>mn(i)),r=Math.min(...t.map(i=>i.length)),o=[];for(let i=0;i<r-1;i++){const a=t[0][i];if(t.every(s=>s[i]===a))o.push(a);else break}return gt(...o)}function op(n){return"at_least_one_of"in n?n.at_least_one_of:"mutually_required"in n?n.mutually_required:"mutually_exclusive"in n?n.mutually_exclusive:null}function XM(n,t){if(!t)return n;const r=t+Pa;return n.map(o=>o.startsWith(r)?o.slice(r.length):o)}function ZM(n,t){const r=op(n),o=XM(r,t);return"at_least_one_of"in n?{at_least_one_of:o}:"mutually_required"in n?{mutually_required:o}:{mutually_exclusive:o}}function QM(n){const t=[],r=new Map;for(const o of n){const i=op(o);if(!i){t.push(o);continue}const a=JM(i);if(!a){t.push(o);continue}const s=ZM(o,a);r.has(a)||r.set(a,[]),r.get(a).push(s)}return{keep:t,move:r}}function ej(n,t,r){const o=mn(t);let i=n;for(const a of o){const s=i.fields.find(l=>Object.keys(l)[0]===a);if(!s)return;const c=s[a];if(c.type!=="record")return;i=c}i.entity_checks=[...i.entity_checks||[],...r]}function Sw(n){var t;if((t=n.entity_checks)!=null&&t.length){const{keep:r,move:o}=QM(n.entity_checks);n.entity_checks=r.length?r:void 0;for(const[i,a]of o)ej(n,i,a)}for(const r of n.fields){const o=Object.values(r)[0];o.type==="record"&&Sw(o)}}function tj(n){const t=JSON.parse(JSON.stringify(n)),r={fields:t.fields};return Sw(r),t.fields=r.fields,t}function nj(n,t){const r=Rn[n];if(!r||!r.fieldRules)return t;const o=rj(r.fieldRules),i={...t};return i.fields=i.fields.map(a=>{if(Object.keys(a)[0]==="config"){const c=a.config.entity_checks||[],l=d=>{const m=[...op(d)??[]].slice().sort();return`${Object.keys(d)[0]}:${m.join(",")}`},u=new Set(c.map(l)),p=o.filter(d=>{const f=l(d);return u.has(f)?!1:(u.add(f),!0)});return{config:{...a.config,entity_checks:[...c,...p]}}}return a}),i}function rj(n){const t=[],r=o=>o.startsWith("config.")?o.substring(7):o;return n.atLeastOneOf&&n.atLeastOneOf.forEach(o=>{t.push({at_least_one_of:o.map(r)})}),n.onlyOneOf&&n.onlyOneOf.forEach(o=>{t.push({mutually_exclusive:o.map(r)})}),n.mutuallyRequired&&n.mutuallyRequired.forEach(o=>{t.push({mutually_required:o.map(r)})}),n.onlyOneOfMutuallyRequired&&n.onlyOneOfMutuallyRequired.forEach(o=>{if(o.forEach(i=>{t.push({mutually_required:i.map(r)})}),o.length>1)for(let i=0;i<o.length;i++)for(let a=i+1;a<o.length;a++){const s=o[i].map(r),c=o[a].map(r);s.forEach(l=>{c.forEach(u=>{t.push({mutually_exclusive:[l,u]})})})}}),t}const oj={class:"kong-ui-entities-plugin-form"},ij={key:1,class:"entity-form"},aj={class:"plugin-config-empty-state"},sj=Me(e.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0},developer:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","click:learn-more","click:create-entity","validity-change"],setup(n,{emit:t}){var tt,Ve;const r=t,o=n,i=e.computed(()=>{if(o.config.app!=="konnect")return!1;const ke=o.config;return!!ke.isKonnectManagedRedisEnabled&&ke.isCloudGateway===!0}),a=e.inject(dr.KM_2306_CONDITION_FIELD_314,!1),s=e.inject(dr.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),{axiosInstance:c}=Ie.useAxios((tt=o.config)==null?void 0:tt.axiosRequestConfig),{parseSchema:l}=st.useSchemas({entityId:((Ve=o.entityMap.focusedEntity)==null?void 0:Ve.id)||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:u,unFlattenObject:p,dismissField:d,isObjectEmpty:f,unsetNullForeignKey:m}=st.usePluginHelpers(),{shouldUseFreeForm:g,getFreeFormComponent:y}=st.useFreeFormResolver(),_=e.inject(Ie.PLUGIN_FORM_LAYOUT_STATE),b=ke=>{_&&(_.value=ke)},{objectsAreEqual:w}=Ie.useHelpers(),{i18n:{t:C}}=Xe(),x=ke=>{let _e=ke;return o.config.app==="konnect"&&(_e=_e.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||"")),_e.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")},E=(ke,_e)=>{let ye=`${o.config.apiBaseUrl}${et.form[o.config.app].entityGetOne}`;return ye=x(ye),ye=ye.replace(/{entity}/gi,ke),ye=ye.replace(/{id}/gi,_e),ye},k=ke=>{let _e=`${o.config.apiBaseUrl}${et.form[o.config.app].entityGetAll}`;return _e=x(_e),_e=_e.replace(/{entity}/gi,ke),_e},N=(ke,_e,ye)=>{const ae=E(ke,_e);return c.get(ae,ye)},B=(ke,_e)=>{const ye=k(ke);return o.config.app==="konnect"?c.get(ye).then(ae=>{const{data:{data:te}}=ae;if(delete _e.size,delete _e.offset,te.length&&Object.keys(_e).length===1){const se=Object.keys(_e)[0],ue=te.filter(Ee=>Ee[se]?!!Ee[se].toLowerCase().includes(_e[se].toLowerCase()):!1);ae.data.data=ue}return ae}):c.get(ye,{params:_e})},U=(ke,_e,ye)=>{const ae=k(ke);if(o.config.app==="konnect"){const{size:te,offset:se,...ue}=_e;if(ke==="consumer_groups")return c.get(ae,{params:{size:1e3},signal:ye}).then(be=>{const{data:{data:xe}}=be;if(xe.length&&Object.keys(ue).length===1){const h=Object.keys(ue)[0],T=xe.filter(G=>G[h]?!!G[h].toLowerCase().includes(ue[h].toLowerCase()):!1);be.data.data=T}return be});const Ee={size:te,offset:se};for(const be of Object.keys(ue))Ee.filter={[be]:{contains:ue[be]}};return c.get(ae,{params:Ee,signal:ye})}return c.get(ae,{params:_e,signal:ye})},S=(ke,_e=50)=>{const ye=k(ke);return c.get(ye,{params:{size:_e}})};e.provide(Qe.FORMS_API_KEY,{getOne:N,getAll:B,getAllV2:U,peek:S}),e.provide(Qe.FORMS_CONFIG,o.config);const A=e.ref(""),O=e.ref(),P=e.shallowRef(),R=e.ref(null),z=e.ref({}),X=e.reactive({}),Z=e.reactive({}),K=e.computed(()=>{var ke;return(ke=R.value)==null?void 0:ke.options}),W=e.computed(()=>{const ke=nj(Z.name,o.rawSchema);return tj(ke)}),$=e.ref(!1),ee=e.ref(),F=(ke,_e)=>{$.value=ke??"",ee.value=_e},J=ke=>{var _e;(_e=ee.value)==null||_e.call(ee,ke),$.value=!1},M=ke=>{var ye;if(!ke){O.value=void 0,P.value=void 0,A.value="",b(!1);return}const _e=((ye=o.schema)==null?void 0:ye._sourcePlugin)||ke;O.value=mw(_e),P.value=g(_e,o.engine)?y(_e)??Hf:void 0,A.value=Qe.getSharedFormName(_e),b(!!P.value)},v=ke=>{var Ee,be;const _e={...o.schema},ye=Z,ae=X,te=Object.keys(ye),se={};if(!f(z.value))for(let xe=0;xe<((be=(Ee=z.value)==null?void 0:Ee.fields)==null?void 0:be.length);xe++)_e[z.value.fields[xe].model]=z.value.fields[xe];Qe.customFields.forEach(xe=>{_e[xe]&&(_e[xe].fields.forEach(h=>{h.fields&&h.fields.forEach(T=>{_e[T.model]=T}),h.model&&(_e[h.model]=h)}),delete _e[xe])}),te.forEach(xe=>{var Ne;if(!_e[xe]){xe==="partials"&&(se[xe]=ye[xe]);return}const h=_e[xe];let T=ye[xe];const G=ae[xe],Y=Array.isArray(T)?"array":typeof T,oe=h?h.valueType:null,we=h?h.valueArrayType:null,L=h?h.transform:null;if(T==null&&G==null&&!h.submitWhenNull)return;if(h){if(oe&&Y!==oe)switch(oe){case"array":Y==="string"&&T.length&&(T=T.split(",").map(H=>{if(H=H.trim(),we==="string")return String(H);if(we==="number")return Number(H);if(we==="boolean"){if(typeof H=="string")return H.toLowerCase()==="true"||H==="1";if(typeof H=="number")return H===1}return H})),(!T||!T.length)&&(T=h.submitWhenNull?null:[]);break;case"number":h.referenceable!==!0&&(T=Number(T));break;case"boolean":Y==="string"&&(T=T.toLowerCase()==="true"||T==="1"),Y==="number"&&(T=T===1);break;case"string":T=T==null?"":String(T);break}else oe==="array"&&(!T||!T.length?T=h.submitWhenNull?null:[]:((Ne=h.inputAttributes)==null?void 0:Ne.type)==="number"&&(T=T.map(H=>Number(H))));if(h.type==="array"&&h.nestedFields){const H=V=>{Object.keys(V).forEach(D=>{V[D]&&typeof V[D]=="object"&&!Array.isArray(V[D])&&V[D]!==null?H(V[D]):(V[D]===void 0||V[D]===null||typeof V[D]=="number"&&isNaN(V[D])||typeof V[D]=="string"&&V[D].trim().length===0)&&delete V[D]})};T&&typeof T=="object"&&H(T)}h.type==="object-advanced"&&h.fields&&T!==null&&(Object.entries(T).length===0?T=null:Object.keys(T).forEach(H=>{Array.isArray(T[H])||(T[H]=T[H].split(","))}))}let de=u(xe);if(h.fieldNameHasDashes){const[H,...V]=de.split(".").reverse();de=[H.replace(/_/g,"-"),...V].reverse().join(".")}if(oe==="object-expand"){let H;[de,H]=de.split(".");let V={};se[de]&&(V=se[de]),V[H]=T,T=V}G!==void 0&&T===""&&T!==G?se[de]=oe==="object"?{}:null:h.type==="checklist"&&T===""?se[de]=[]:T!==""&&(se[de]=T),se[de]=L?L(T):se[de],m(de,se)});const ue=p(se);if(P.value){if(ke&&ke.length)for(const xe of ke)delete ue[xe];Object.assign(ue,$e.value)}return ue},j=(ke,_e={})=>{d(Z,_e,ke,o.editing),r("model-updated",{model:Z,originalModel:X,data:v()})},ie=(ke,_e)=>{var te;const ye={[_e]:ke};typeof((te=o.schema[_e])==null?void 0:te.modelTransformer)=="function"&&(ye[_e]=o.schema[_e].modelTransformer(ke));const ae=Object.assign({},Z,ye);Object.assign(Z,ae),r("model-updated",{model:Z,originalModel:X,data:v()})},re=ke=>{r("validity-change",ke)},me=(ke,_e)=>{Object.keys(ke).forEach(ye=>{var Ee,be;let ae=_e?`${_e}-${ye}`:ye,te=o.schema[ae];if(!te){const xe=_e?`${_e}-${ye.replace(/-/g,"_")}`:ye.replace(/-/g,"_");(Ee=o.schema[xe])!=null&&Ee.fieldNameHasDashes&&(ae=xe,te=o.schema[ae]),_e&&((be=o.schema[_e])==null?void 0:be.keyFromObject)===ye&&(ae=_e,te=o.schema[ae])}const se=ke[ye],ue=typeof se;if(te&&te.type==="object-advanced"&&!se){Z[ae]={},X[ae]={};return}if(Array.isArray(se)){Z[ae]=JSON.parse(JSON.stringify(se)),X[ae]=JSON.parse(JSON.stringify(se));return}if(ue==="object"&&se&&!se.length)return me(se,ae);if(ue==="object"&&se&&se.length&&te.type==="input"){Z[ae]=se.join(", "),X[ae]=se.join(", ");return}Z[ae]=se,X[ae]=se}),r("model-updated",{model:Z,originalModel:X,data:v()})},he=(ke,_e)=>{if(!_e)return ke;if(Array.isArray(ke)){const te=_e.elements;return te?ke.map(se=>he(se,te)):ke}if(!ke||typeof ke!="object")return ke;if(_e.type==="map"&&_e.values){const te=_e.values,se={};for(const ue of Object.keys(ke))se[ue]=he(ke[ue],te);return se}if(!Array.isArray(_e.fields))return ke;const ye=new Map;for(const te of _e.fields){const se=te&&Object.keys(te)[0];se&&ye.set(se,te[se])}const ae={};for(const te of Object.keys(ke)){const se=ye.get(te);se&&(ae[te]=he(ke[te],se))}return ae},le=()=>{var ye;const ke=(ye=o.rawSchema)==null?void 0:ye.fields;if(!Array.isArray(ke))return;const _e=ke.find(ae=>ae==null?void 0:ae.config);return _e==null?void 0:_e.config},ge=new Set(["datakit"]),Oe=e.computed(()=>{var ke;return((ke=o.schema)==null?void 0:ke._sourcePlugin)||Z.name}),$e=e.shallowRef(o.record),Pe=(ke,_e)=>{const ye=ge.has(Oe.value)?ke:{...ke,config:he(ke.config,le())};$e.value=ye;const ae={...Z};for(const te of _e||[])delete ae[te];r("model-updated",{model:{...ae,...ye},originalModel:X,data:v(_e)})},qe=e.ref(!0),Ye=()=>{var ke;if(o.record&&o.schema&&(me({enabled:o.record.enabled??!0,...o.record.instance_name&&{instance_name:o.record.instance_name||""},...a&&o.record.condition!=null&&{condition:o.record.condition},...o.record.protocols&&{protocols:o.record.protocols},...o.record.tags&&{tags:o.record.tags}}),o.credential?((o.record.consumer_id||o.record.consumer)&&me({consumer_id:o.record.consumer_id||o.record.consumer}),me(o.record)):o.record.config&&((o.record.consumer_id||o.record.consumer||o.record.service_id||o.record.service||o.record.route_id||o.record.route||o.record.consumer_group_id||o.record.consumer_group)&&me({service_id:o.record.service_id||o.record.service,route_id:o.record.route_id||o.record.route,consumer_id:o.record.consumer_id||o.record.consumer,consumer_group_id:o.record.consumer_group_id||o.record.consumer_group}),o.record.partials&&j("redis",{partials:o.record.partials}),P.value?Pe(o.record):me(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const _e={};for(const ye in o.entityMap){const ae=o.entityMap[ye].id,te=o.entityMap[ye].idField,se=te==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(te).replace("_","-"));Object.prototype.hasOwnProperty.call(Z,se)&&(_e[se]=ae)}me(_e)}if((ke=o.entityMap.consumer)!=null&&ke.id&&o.schema&&o.credential){const _e={};Object.prototype.hasOwnProperty.call(Z,"consumer")&&(_e.consumer=o.entityMap.consumer.id),me(_e)}qe.value=!1};return e.watch(qe,ke=>{r("loading",ke)}),e.watch(()=>o.schema,(ke,_e)=>{var ae,te;if(w(ke||{},_e||{}))return;const ye=l(ke,void 0,void 0,o.engine);Object.assign(Z,ye.model),z.value={fields:(te=(ae=z.value)==null?void 0:ae.fields)==null?void 0:te.map(se=>({...se,disabled:se.disabled||!1}))},Object.assign(X,JSON.parse(JSON.stringify(ye.model))),M(ye.model.name),Ye()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var ke,_e,ye,ae;R.value=l(o.schema,void 0,void 0,o.engine),Object.assign(Z,((ke=R.value)==null?void 0:ke.model)||{}),z.value=((_e=R.value)==null?void 0:_e.schema)||{},M((ae=(ye=R.value)==null?void 0:ye.model)==null?void 0:ae.name),Ye()}),e.onBeforeUnmount(()=>{b(!1)}),(ke,_e)=>{var ae,te,se;const ye=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",oj,[qe.value?(e.openBlock(),e.createBlock(ye,{key:0,type:"form"})):Z.id&&n.editing||!n.editing?(e.openBlock(),e.createElementBlock("div",ij,[P.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(P.value),{key:0,developer:n.developer,"field-renderers":(ae=O.value)==null?void 0:ae.fieldRenderers,"form-model":Z,"form-schema":z.value,"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,model:n.record,"on-form-change":Pe,"on-validity-change":re,"plugin-name":Z.name,"render-rules":(te=O.value)==null?void 0:te.renderRules,schema:W.value,"onClick:createEntity":_e[0]||(_e[0]=ue=>ke.$emit("click:create-entity",ue)),"onClick:learnMore":_e[1]||(_e[1]=ue=>ke.$emit("click:learn-more",ue)),onGlobalAction:_e[2]||(_e[2]=(ue,Ee)=>ke.$emit("globalAction",ue,Ee))},e.createSlots({_:2},[n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["developer","field-renderers","form-model","form-schema","is-editing","is-konnect-managed-redis-enabled","model","plugin-name","render-rules","schema"])):A.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Qe.sharedForms)[A.value]),{key:1,"enable-redis-partial":n.enableRedisPartial,"form-model":Z,"form-options":K.value,"form-schema":z.value,"identity-principals-ui-enabled":e.unref(s),"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,"on-model-updated":ie,"on-partial-toggled":j,"show-new-partial-modal":ue=>ke.$emit("showNewPartialModal",ue),"onClick:createEntity":_e[3]||(_e[3]=ue=>ke.$emit("click:create-entity",ue)),"onClick:learnMore":_e[4]||(_e[4]=ue=>ke.$emit("click:learn-more",ue))},e.createSlots({_:2},[n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","identity-principals-ui-enabled","is-editing","is-konnect-managed-redis-enabled","show-new-partial-modal"])):(e.openBlock(),e.createBlock(e.unref(Qe.VueFormGenerator),{key:2,"enable-redis-partial":n.enableRedisPartial,"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,model:Z,options:K.value,schema:z.value,onModelUpdated:ie,onPartialToggled:j,onRefreshModel:v,onShowNewPartialModal:_e[5]||(_e[5]=ue=>ke.$emit("showNewPartialModal",ue))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",aj,e.toDisplayString(e.unref(C)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(se=e.unref(Rn)[Z.name])!=null&&se.fieldRules&&(o.config.isNewOtelSchema||Z.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(YM,{rules:e.unref(Rn)[Z.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","is-konnect-managed-redis-enabled","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(da.VaultSecretPicker),{config:o.config,setup:$.value,onCancel:_e[6]||(_e[6]=()=>$.value=!1),onProceed:J},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-b10596ae"]]),lj={key:1},cj=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(n){return(t,r)=>n.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:n.teleportTarget},[e.renderSlot(t.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",lj,[e.renderSlot(t.$slots,"default")]))}}),uj={key:0},dj={class:"plugin-form-actions"},fj={key:0,class:"button-customize-deck-wrapper"},pj=Me(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:null},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction","click:create-entity","click:learn-more"],setup(n,{emit:t}){var de,Ne;const r=e.inject(dr.KM_2306_CONDITION_FIELD_314,!1),o=e.inject(dr.KM_2485_CLONED_PLUGINS,!1),i=e.ref(!1);e.provide(Ie.PLUGIN_FORM_LAYOUT_STATE,i);const a=t,s=n,c=Nr.useRouter(),{i18n:{t:l}}=st.useI18n(),{customSchemas:u,typedefs:p}=st.useSchemas({app:s.config.app,credential:s.credential,experimentalRenders:s.config.app==="konnect"?s.config.experimentalRenders:void 0}),{formatPluginFieldLabel:d}=st.usePluginHelpers(),{shouldUseFreeForm:f}=st.useFreeFormResolver(),{getMessageFromError:m}=Ie.useErrors(),{capitalize:g}=Ie.useStringHelpers(),{objectsAreEqual:y}=Ie.useHelpers(),{axiosInstance:_}=Ie.useAxios((de=s.config)==null?void 0:de.axiosRequestConfig),{getClonedPlugin:b}=st.useCustomPluginApi({axiosInstance:Ie.useAxios({...((Ne=s.config)==null?void 0:Ne.axiosRequestConfig)??{},konnect:{bypassGlobal404Handler:!0}}).axiosInstance,apiBaseUrl:s.config.apiBaseUrl,app:s.config.app,workspace:s.config.workspace,controlPlaneId:s.config.controlPlaneId}),w=e.ref(!1),C=e.computed(()=>!!s.pluginId),x=e.computed(()=>s.pluginId?Ie.EntityBaseFormType.Edit:Ie.EntityBaseFormType.Create),E=e.ref(void 0),k=e.ref(void 0),N=e.computed(()=>!!(s.credential&&s.config.entityId)),B=e.ref(void 0),U=e.ref({}),S=e.ref(),A=e.ref(),O=e.inject(dr.KM_2503_CUSTOM_PLUGIN_FREEFORM,!1),P=e.ref(null),R=e.computed(()=>P.value!==null),z=e.computed(()=>R.value&&P.value?P.value:s.pluginType),X=e.computed(()=>{if(s.engine)return s.engine;if(!(!O||!be.value))return R.value&&P.value?f(P.value)?"freeform":"vfg":"freeform"});e.provide(Ai,{redisType:S,redisPath:A,isEditing:C.value});const Z=[];e.provide(Kb,H=>(Z.push(H),()=>{const V=Z.indexOf(H);V!==-1&&Z.splice(V,1)}));const K=e.ref(!1),{isDeckEnabled:W,deckCustomizationOptions:$,deckCalloutPreferenceKey:ee}=Ie.useBaseFormDeckOptions(()=>s.config,Ie.SupportedEntityType.Plugin),F=e.ref(!1),J=e.reactive({enabled:!0,protocols:[],tags:[]}),M=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),v=e.ref([{title:l("view_configuration.json"),hash:"#json"},{title:l("view_configuration.yaml"),hash:"#yaml"}]);s.config.app==="konnect"&&v.value.splice(1,0,{title:l("view_configuration.terraform"),hash:"#terraform"}),W.value&&v.value.push({title:l("view_configuration.deck"),hash:"#deck"});const j=e.ref(v.value[0].hash),ie=e.ref(""),re=e.computed(()=>{var V;if(N.value){let D=et.form[s.config.app].credential[x.value];return D=D.replace(/{resourceEndpoint}/gi,ge.value),D}let H;return s.config.entityType&&s.config.entityId?H=et.form[s.config.app].edit.forEntity.replace(/{entityType}/gi,s.config.entityType).replace(/{entityId}/gi,s.config.entityId):H=et.form[s.config.app].edit.all,s.config.app==="konnect"&&((V=Rn[s.pluginType])!=null&&V.useUIData)?`${H}?__ui_data=true`:H}),me=()=>{w.value=!w.value},he=e.computed(()=>{var Ce,Se,ve,ze,Ke,Be,Ae,Ze;const H=s.config.entityType==="consumers"&&s.config.entityId||((Se=(Ce=B.value)==null?void 0:Ce.consumer)==null?void 0:Se.id),V=s.config.entityType==="consumer_groups"&&s.config.entityId||((ze=(ve=B.value)==null?void 0:ve.consumer_group)==null?void 0:ze.id),D=s.config.entityType==="services"&&s.config.entityId||((Be=(Ke=B.value)==null?void 0:Ke.service)==null?void 0:Be.id),ne=s.config.entityType==="routes"&&s.config.entityId||((Ze=(Ae=B.value)==null?void 0:Ae.route)==null?void 0:Ze.id);if(!(H||V||D||ne))return{global:{entity:fe.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ce={};return D&&(ce.service={entity:fe.PluginScope.SERVICE,entityEndpoint:"services",id:D,idField:yo.SERVICE}),ne&&(ce.route={entity:fe.PluginScope.ROUTE,entityEndpoint:"routes",id:ne,idField:yo.ROUTE}),H&&(ce.consumer={entity:fe.PluginScope.CONSUMER,entityEndpoint:"consumers",id:H,idField:yo.CONSUMER}),V&&(ce.consumer_group={entity:fe.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:V,idField:yo.CONSUMER_GROUP}),s.config.entityType&&(ce.focusedEntity={entity:fe.PluginScope[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()],entityEndpoint:s.config.entityType,id:s.config.entityId,idField:yo[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()]}),ce}),le=e.reactive({name:{default:s.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:l("plugins.form.fields.enabled.label"),textOn:l("plugins.form.fields.enabled.on_text"),textOff:l("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:s.hideScopeSelection&&(s.hideScopeSelection||x.value===Ie.EntityBaseFormType.Create&&s.config.entityId)?"foreign":"selectionGroup",disabled:s.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:l("plugins.form.scoping.global.label"),description:l("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:l("plugins.form.fields.protocols.help"),label:l("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:l("plugins.form.fields.instance_name.label"),inputType:"text",help:l("plugins.form.fields.instance_name.help")},tags:p.tags,...r?{condition:{default:"",type:"input",label:l("plugins.form.fields.condition.label"),inputType:"text",help:l("plugins.form.fields.condition.tooltip"),placeholder:l("plugins.form.fields.condition.placeholder")}}:{}}),ge=e.computed(()=>{var D;const H=s.developer?"developers":"consumers",V=((D=si[s.pluginType])==null?void 0:D.endpoint)||"/plugins";return`${H}/${s.config.entityId}${s.developer?"/credentials":""}${V}`}),Oe=H=>{const V=Array.from(new Set(H.map(D=>typeof D)));return V.length>1?"string":V[0]},$e=(H,V,D,ne)=>{var ve,ze;let ce=V&&V.fields||[];const Ce=u[z.value],Se=(ze=(ve=si[s.pluginType])==null?void 0:ve.schema)==null?void 0:ze.fields;return Array.isArray(ce)&&(ce=ce.reduce((Ke,Be)=>{const Ae=Object.keys(Be)[0];return Ae.match(/-/g)?Ke[Ae.replace(/-/g,"_")]={...Be[Ae],fieldNameHasDashes:!0}:Ke[Ae]=Be[Ae],Ke},{})),Object.keys(ce).sort().forEach(Ke=>{var Lt,sr,xt,Zt,Xs,Zs,Qs;const Be=ce[Ke];Be.type==="set"&&!(f(s.pluginType,X.value)&&Be.elements.one_of)&&(Be.type="array");const Ae=H?`${H}-${Ke}`:`${Ke}`;if((Lt=Ce==null?void 0:Ce.fieldsToDelete)!=null&&Lt.includes(Ae)){by(D,Ae);return}if(Object.prototype.hasOwnProperty.call(Be,"overwrite")||Be.hidden)return;if(Be.type==="table")return $e(Ae,Be.schema,D);if(Be.fields)return ne&&Be.type==="record"?(D[Ae]={type:"object",model:Ke,schema:{fields:Object.values($e(Ae,Be,{},!0))}},D):$e(Ae,Be,D);if(D[Ae]={id:Ae,model:Ke},D[Ae].type=Be.type==="boolean"?"checkbox":"input",D[Ae].required=Be.required,D[Ae].referenceable=Be.referenceable,Ae.startsWith("config-"))if(!ne&&Be.type==="array"&&(ie.value=Ae),ne&&ie.value&&Ae.startsWith(ie.value)){const ut=Ae.slice(ie.value.length+1);D[Ae].label=ut.split("-").map(d).join(".")}else D[Ae].label=d(Ae);if((H==="config"||H.startsWith("config-"))&&(sr=ce[Ke])!=null&&sr.description&&(D[Ae].help=el.marked.parse(ce[Ke].description,{mangle:!1,headerIds:!1})),Be.type==="map"){if(D[Ae].type="object-advanced",D[Ae].values=Be.values,Be.values.type==="array"){const{type:ut}=Be.values.elements||{};D[Ae].schema={fields:[{schema:{fields:[{...dt,model:Ae,valueArrayType:ut==="integer"?"number":ut||"string",inputAttributes:{...dt.inputAttributes,type:ut==="integer"?"number":"text",inputMode:ut==="integer"?"numeric":"text"}}]}}]}}else Be.values.fields&&(D[Ae].schema={fields:[{type:"object",model:"object",schema:{fields:Be.values.fields.map(ut=>{const Qt=Object.keys(ut)[0];return{model:Qt,type:"input",label:g(Qt),placeholder:Qt,inputType:ut[Qt].type}})}}]});return D}if(Be.enum&&Be.type==="array"&&(D[Ae].type="checklist",D[Ae].values=Be.enum,D[Ae].multi=!0,D[Ae].multiSelect=!0),Be.one_of&&Be.type!=="array"&&(D[Ae].type="select",D[Ae].values=Be.one_of,D[Ae].selectOptions={noneSelectedText:l("plugins.form.no_selection")}),Be.elements&&Be.type==="array"){const ut=Be.elements;if(D[Ae].referenceable=ut.referenceable,D[Ae].elements=ut,["string","integer","number"].includes(ut.type)&&!ut.one_of){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn}=D[Ae],{inputAttributes:zn,...vh}=JSON.parse(JSON.stringify(dt));zn.type=ut.type==="string"?"text":"number",D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,inputAttributes:zn,...vh}}else if(["string","integer","number"].includes(ut.type)&&ut.one_of){if(ne){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn}=D[Ae];D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,...GM(ut.one_of,Be.default)}}}else if(ut.type==="array"){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,elements:zn}=D[Ae],{inputAttributes:vh,...rK}=JSON.parse(JSON.stringify(dt));D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,elements:zn,inputAttributes:vh,...rK}}}if(Be.hint&&(D[Ae].hint=Be.hint),Ce&&!Ce.overwriteDefault&&Object.keys(Ce).forEach(ut=>{if(ut===Ae){const{help:Qt,label:At,hint:ht,values:lt,referenceable:Ct,elements:_t}=D[Ae],{help:Pn,...zn}=Ce[ut];D[Ae]={help:Qt,label:At,hint:ht,values:lt,referenceable:Ct,elements:_t,...zn},typeof Pn=="string"&&(D[Ae].help=el.marked.parse(Pn,{mangle:!1,headerIds:!1}))}}),Be.type==="array"&&((xt=Be.elements)==null?void 0:xt.type)==="record"&&Array.isArray(Be.elements.fields)){let ut={};for(const At of Be.elements.fields)ut={...ut,...At};const Qt=(Zs=(Xs=(Zt=D[Ae])==null?void 0:Zt.items)==null?void 0:Xs.schema)==null?void 0:Zs.fields;if(Array.isArray(Qt))for(const At of D[Ae].items.schema.fields){const ht=(Qs=ut[At.model])==null?void 0:Qs.description;At.help===void 0&&typeof ht=="string"&&(At.help=el.marked.parse(ht,{mangle:!1,headerIds:!1}))}if(Qt||(D[Ae].type="array",D[Ae].newElementButtonLabelClasses="kong-form-new-element-button-label",D[Ae].fieldClasses="array-card-container-wrapper",D[Ae].itemContainerComponent="FieldArrayCardContainer",D[Ae].items={type:"object",schema:{fields:Object.values($e(Ae,Be.elements,{},!0))}},D[Ae].items.schema.fields.forEach(At=>{var ht,lt;for(const Ct of Be.elements.fields){const _t=Object.keys(Ct)[0],Pn=((lt=(ht=At.id)==null?void 0:ht.split)==null?void 0:lt.call(ht,"-"))??[];if(Pn[Pn.length-1]===_t){At.model=_t,At.label=d(_t);break}}}),Be.elements.type==="record"&&(D[Ae].nestedFields=!0)),!D[Ae].nestedFields)D[Ae].items.default=()=>Be.elements.fields.reduce((At,ht)=>{const lt=Object.keys(ht)[0];return At[lt]=ht[lt].default,At},{});else{const At=(ht,lt)=>{if(ht.type==="object"){ht.model&&(lt[ht.model]={});for(const Ct of ht.schema.fields)At(Ct,ht.model?lt[ht.model]:lt)}else ht.model&&(lt[ht.model]=ht.default)};D[Ae].items.default=()=>{const ht={};return At(D[Ae].items,ht),ht}}}if(N.value&&Se){for(let ut=0;ut<Se.length;ut++)if(Se[ut][Ae]){D[Ae]={...D[Ae],...Se[ut][Ae]};break}}if(Be.required&&Be.type!=="boolean"&&(D[Ae].required=!0,D[Ae].selectOptions={hideNoneSelectedText:!0}),Be.required&&Be.type==="boolean"&&(D[Ae].default=Be.default??!1),Be.default!=null&&typeof Be.default!="object"&&Be.default!=="function"&&(D[Ae].default=Be.default),D[Ae].type==="input"){["string","number"].includes(typeof D[Ae].default)&&s.config.app==="konnect"&&(D[Ae].placeholder=`Default: ${D[Ae].default===""?"<empty string>":D[Ae].default}`);const{type:ut}=Be.elements||{};ut&&(D[Ae].valueArrayType=ut==="integer"?"number":ut),D[Ae].inputType=Be.type==="array"||Be.type==="string"?Be.encrypted?"password":"text":Be.type}let Ze="string";Be.enum?Ze=Oe(Be.enum):Be.type==="boolean"?Ze="boolean":Be.type==="number"||Be.type==="integer"?(Ze="number",D[Ae].inputType="number"):Be.type==="array"?(Ze="array",D[Ae].default=Be.default,Be.len_min>0&&(D[Ae].submitWhenNull=!0)):Be.type==="foreign"?Ze="object":Be.default&&Array.isArray(Be.default)?(Ze="array",D[Ae].valueArrayType=Oe(Be.default)):Be.default&&(Ze=typeof Be.default),D[Ae].valueType=Ze,Be.fieldNameHasDashes&&(D[Ae].fieldNameHasDashes=!0)}),D},Pe=()=>{var Ze,Lt,sr,xt,Zt,Xs,Zs,Qs,ut,Qt,At,ht;const H=R.value&&P.value?P.value:s.pluginType,V=((Ze=Rn[H])==null?void 0:Ze.scope.includes(fe.PluginScope.SERVICE))??!0,D=((Lt=Rn[H])==null?void 0:Lt.scope.includes(fe.PluginScope.ROUTE))??!0,ne=((sr=Rn[H])==null?void 0:sr.scope.includes(fe.PluginScope.CONSUMER))??!0,ce=s.config.disableConsumerGroupScope?!1:((xt=Rn[H])==null?void 0:xt.scope.includes(fe.PluginScope.CONSUMER_GROUP))??!0,Ce=s.config.entityType==="consumers"&&!!s.config.entityId||!!((Xs=(Zt=B.value)==null?void 0:Zt.consumer)!=null&&Xs.id),Se=s.config.entityType==="consumer_groups"&&!!s.config.entityId||!!((Qs=(Zs=B.value)==null?void 0:Zs.consumer_group)!=null&&Qs.id),ve=s.config.entityType==="services"&&!!s.config.entityId||!!((Qt=(ut=B.value)==null?void 0:ut.service)!=null&&Qt.id),ze=s.config.entityType==="routes"&&!!s.config.entityId||!!((ht=(At=B.value)==null?void 0:At.route)!=null&&ht.id),Ke=[],Be=(lt,Ct,_t)=>lt?l("plugins.form.disable_source_scope_change",{scope:_t}):Ct?l("plugins.form.disable_data_retrieving",{scope:_t}):"",Ae=lt=>{var Ct,_t;return((_t=(Ct=s.scopedEntitiesPermissions)==null?void 0:Ct[lt])==null?void 0:_t.canRetrieve)===!1};if(V){const lt=Ae("service"),Ct="services",_t=ve&&s.disableScopeSelection;Ke.push({id:"service-id",model:"service-id",label:l("plugins.form.scoping.gateway_service.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Ct,inputValues:{fields:["name","id"]},help:l("plugins.form.scoping.gateway_service.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(D){const lt=Ae("route"),Ct="routes",_t=ze&&s.disableScopeSelection;Ke.push({id:"route-id",model:"route-id",label:l("plugins.form.scoping.route.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:l("plugins.form.scoping.route.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(ne){const lt=Ae("consumer"),Ct="consumers",_t=Ce&&s.disableScopeSelection;Ke.push({model:"consumer-id",label:l("plugins.form.scoping.consumer.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:l("plugins.form.scoping.consumer.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(ce){const lt=Ae("consumer_group"),Ct="consumer_groups",_t=Se&&s.disableScopeSelection;Ke.push({model:"consumer_group-id",label:l("plugins.form.scoping.consumer_group.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:l("plugins.form.scoping.consumer_group.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(Ke.length){const lt=[...V?["service"]:[],...D?["route"]:[],...ne?["consumer"]:[],...ce?["consumer_group"]:[]],_t=lt.splice(lt.length-2,2).map(zn=>l(zn==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${zn}.plural`)).join(`${lt.length>0?",":""} and/or `),Pn=["Specific",[...lt.length>0?[lt.map(zn=>l(zn==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${zn}.plural`)).join(", ")]:[],_t].join(", ")].join(" ");le.selectionGroup.fields.push({label:l("plugins.form.scoping.label"),description:Pn,fields:[]}),le.selectionGroup.fields[1].fields=Ke}u[z.value]&&u[z.value].overwriteDefault&&Object.hasOwnProperty.call(u[z.value],"formSchema")&&Object.assign(le,u[z.value].formSchema)},qe=e.computed(()=>!y(M.fields,J,!0)),Ye=e.computed(()=>!oe.value&&!F.value&&(x.value===Ie.EntityBaseFormType.Create||qe.value)),tt=e.ref(!1),Ve=e.ref(),ke=H=>{s.credential&&H.password&&(H.password=""),M.fields.id=(H==null?void 0:H.id)||void 0,Ve.value=H==null?void 0:H.ordering,Object.assign(J,M.fields),B.value=H,tt.value=!0},_e=e.ref({}),ye=H=>{var V;M.fields=H.model,M.fields.id=((V=B.value)==null?void 0:V.id)||void 0,Object.assign(J,H.originalModel),_e.value=H.data,s.isWizardStep&&a("model-updated",{model:M.fields,data:H.data,resourceEndpoint:ge.value})},ae=e.ref(new Map),te=e.computed(()=>[M.clientErrorMessage,M.serverErrorMessage].filter(Boolean).join("; ")),se=H=>{H.valid?ae.value.delete(H.model):ae.value.set(H.model,H.error),M.clientErrorMessage=[...ae.value.entries()].map(([V,D])=>`${V}: ${typeof D=="string"?D:m(D)}`).join("; "),M.clientErrorMessage&&(M.serverErrorMessage="")};e.watch([he,tt],(H,V)=>{const D=H[0]!==V[0],ne=H[1],ce=V[1];if(!N.value&&x.value===Ie.EntityBaseFormType.Edit&&(D||ne&&ne!==ce)){const Ce=$e("config",U.value,le);be.value&&(Ce._isCustomPlugin=!0),R.value&&P.value&&(Ce._sourcePlugin=P.value),S.value&&(Ce._supported_redis_partial_type=S.value),k.value=Ce}},{deep:!0});const ue=()=>{s.config.cancelRoute?c.push(s.config.cancelRoute):a("cancel")},Ee=e.computed(()=>{const H=s.config.entityType&&s.config.entityId&&!s.developer,V=N.value?et.form[s.config.app].credential[x.value]:et.form[s.config.app][x.value][H?"forEntity":"all"];let D=`${s.config.apiBaseUrl}${V}`;return s.config.app==="konnect"&&(D=D.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),D=D.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:""),D=D.replace(/{resourceEndpoint}/gi,ge.value),D=D.replace(/{id}/gi,s.pluginId??""),D=D.replace(/{entityType}/gi,s.config.entityType||""),D=D.replace(/{entityId}/gi,s.config.entityId||""),D}),be=e.computed(()=>!Object.keys(Rn).includes(s.pluginType)),xe=e.computed(()=>{const H=_e.value;if(N.value){for(const V in fe.PluginScope){const D=fe.PluginScope[V];H[D]&&!H[D].id&&(H[D]={id:s.config.entityId})}delete H.created_at}return _e.value.partials&&A.value&&by(H,A.value),H}),h=e.computed(()=>{const{__ui_data:H,...V}={...xe.value};return V}),T=async()=>{if(Z.every(H=>H())&&!M.clientErrorMessage&&!s.isWizardStep)try{M.isReadonly=!0;let H;const V=JSON.parse(JSON.stringify(xe.value)),D=u[z.value];typeof(D==null?void 0:D.shamefullyTransformPayload)=="function"&&D.shamefullyTransformPayload({originalModel:J,model:M.fields,payload:V,schema:k.value}),x.value==="create"?H=await _.post(Ee.value,V):x.value==="edit"&&(H=s.config.app==="konnect"||S.value&&V.partials?await _.put(Ee.value,Object.assign({ordering:Ve.value},V)):await _.patch(Ee.value,V)),Object.assign(J,M.fields),a("update",H==null?void 0:H.data)}catch(H){M.serverErrorMessage=m(H),a("error",H)}finally{M.isReadonly=!1}},G=e.computed(()=>{var ne;const H=N.value?(ne=si[s.pluginType])==null?void 0:ne.schemaEndpoint:s.pluginType,V=N.value?et.form[s.config.app].credentialSchema:et.form[s.config.app].pluginSchema;let D=`${s.config.apiBaseUrl}${V}`;return s.config.app==="konnect"&&(D=D.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),D.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:"").replace(/{plugin}/gi,H)}),Y=e.ref(""),oe=e.ref(!1),we=e.ref("");e.onBeforeMount(async()=>{var H,V,D,ne;oe.value=!0;try{if(N.value&&s.config.app==="konnect"){const ce=(H=si[s.pluginType])==null?void 0:H.schemaEndpoint,Ce=UB[ce];Y.value=ce,k.value=$e("",Ce,{}),oe.value=!1}else{const ce=o&&be.value,Ce=s.schema?Promise.resolve(s.schema):_.get(G.value).then(ve=>ve.data),[Se]=await Promise.all([Ce,ce?L(s.pluginType):Promise.resolve()]);if(E.value=Se,Se)if(N.value)k.value=$e("",Se,{}),oe.value=!1;else{const ve=Se.fields.find(Ke=>Ke.config);U.value=ve?ve.config:Se,Se.supported_partials&&(S.value=Object.keys(Se.supported_partials).find(Ke=>[Il.REDIS_CE,Il.REDIS_EE].includes(Ke)),A.value=(V=Se.supported_partials[S.value])==null?void 0:V[0]),Pe();const ze=(D=Se.fields.find(Ke=>Ke.protocols))==null?void 0:D.protocols;if(ze){const{default:Ke=[],elements:Be={}}=ze;le.protocols.default=Ke,le.protocols.placeholder=s.config.app==="konnect"?l("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:Ke.join(", ")}):l("plugins.form.fields.protocols.placeholder"),(ne=Be.one_of)!=null&&ne.length&&(le.protocols.values=Be.one_of.map(Ae=>({label:Ae,value:Ae})))}if(tt.value||x.value===Ie.EntityBaseFormType.Create){const Ke=$e("config",U.value,le);S.value&&(Ke._supported_redis_partial_type=S.value),be.value&&(Ke._isCustomPlugin=!0),R.value&&P.value&&(Ke._sourcePlugin=P.value),k.value=Ke}}}}catch(ce){console.error(ce),we.value=m(ce),a("error:fetch-schema",ce)}finally{oe.value=!1}});async function L(H){var V;try{const D=await b(H);P.value=(D==null?void 0:D.ref)??null}catch(D){if(zo.isAxiosError(D)&&((V=D.response)==null?void 0:V.status)===404)return;throw D}}return(H,V)=>{const D=e.resolveComponent("KSkeleton"),ne=e.resolveComponent("KEmptyState"),ce=e.resolveComponent("KButton"),Ce=e.resolveComponent("KTabs"),Se=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":i.value}])},[oe.value?(e.openBlock(),e.createBlock(D,{key:0,type:"form"})):we.value?(e.openBlock(),e.createBlock(ne,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(l)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(Ie.EntityBaseForm),{key:2,"can-submit":Ye.value,config:n.config,"edit-id":n.pluginId,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"error-message":te.value,"fetch-url":re.value,"form-fields":xe.value,"is-readonly":M.isReadonly,"no-validate":"","wrapper-component":n.noCardWrapper?"div":void 0,onCancel:ue,"onFetch:error":V[6]||(V[6]=ve=>H.$emit("error",ve)),"onFetch:success":ke,onLoading:V[7]||(V[7]=ve=>H.$emit("loading",ve))},{"form-actions":e.withCtx(()=>[n.isWizardStep?(e.openBlock(),e.createElementBlock("div",uj)):(e.openBlock(),e.createBlock(cj,{key:1,"teleport-target":n.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",dj,[n.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ce,{key:0,appearance:"tertiary","data-testid":`plugin-${C.value?"edit":"create"}-form-view-configuration`,onClick:V[5]||(V[5]=ve=>me())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(ce,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${C.value?"edit":"create"}-form-cancel`,disabled:M.isReadonly,onClick:ue},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(ce,{appearance:"primary","data-testid":`plugin-${C.value?"edit":"create"}-form-submit`,disabled:!Ye.value||M.isReadonly,type:"submit",onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:T},null,32),e.createVNode(sj,{config:n.config,credential:N.value,developer:n.developer,editing:x.value===e.unref(Ie.EntityBaseFormType).Edit,"enable-redis-partial":n.enableRedisPartial,"enable-vault-secret-picker":s.enableVaultSecretPicker,engine:X.value,"entity-map":he.value,"raw-schema":E.value,record:B.value,schema:k.value,"onClick:createEntity":V[0]||(V[0]=ve=>H.$emit("click:create-entity",ve)),"onClick:learnMore":V[1]||(V[1]=ve=>H.$emit("click:learn-more",ve)),onGlobalAction:V[2]||(V[2]=(ve,ze)=>H.$emit("globalAction",ve,ze)),onLoading:V[3]||(V[3]=ve=>F.value=ve),onModelUpdated:ye,onShowNewPartialModal:V[4]||(V[4]=ve=>H.$emit("showNewPartialModal",ve)),onValidityChange:se},null,8,["config","credential","developer","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),e.createVNode(Se,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(l)("view_configuration.title"),visible:w.value,onClose:me},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(l)("view_configuration.message")),1),e.createVNode(Ce,{modelValue:j.value,"onUpdate:modelValue":V[11]||(V[11]=ve=>j.value=ve),"data-testid":"form-view-configuration-slideout-tabs",tabs:v.value},{json:e.withCtx(()=>[e.createVNode(e.unref(Ie.JsonCodeBlock),{config:n.config,"entity-record":h.value,"fetcher-url":Ee.value,"request-method":s.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(Ie.YamlCodeBlock),{"deck-callout-preference-key":e.unref(W)?e.unref(ee):void 0,"entity-record":h.value,"onDeckCallout:clickCta":V[8]||(V[8]=ve=>j.value="#deck")},null,8,["deck-callout-preference-key","entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(Ie.TerraformCodeBlock),{"credential-type":Y.value,"entity-record":h.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:e.withCtx(()=>[e.unref($)?(e.openBlock(),e.createElementBlock("div",fj,[e.createVNode(ce,{appearance:"secondary",class:"button-customize-deck",onClick:V[9]||(V[9]=ve=>K.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("plugins.form.button_deck_customize")),1)]),_:1})])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.DeckCodeBlock),{app:n.config.app,"control-plane-name":n.config.app==="konnect"?n.config.controlPlaneName:void 0,"customization-options":e.unref($),"entity-record":h.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"geo-api-server-url":n.config.app==="konnect"?n.config.geoApiServerUrl:void 0,"is-customization-modal-visible":K.value,"kong-admin-api-url":n.config.app==="kongManager"?n.config.apiBaseUrl:void 0,workspace:n.config.workspace||void 0,onCustomizationClose:V[10]||(V[10]=ve=>K.value=!1)},null,8,["app","control-plane-name","customization-options","entity-record","entity-type","geo-api-server-url","is-customization-modal-visible","kong-admin-api-url","workspace"])]),_:1},8,["modelValue","tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-aefa9b20"]]),mj={class:"kong-ui-entities-plugins-list"},hj={class:"button-row"},gj={class:"name-cell-wrapper"},yj={class:"info-wrapper"},_j={key:0,class:"info-name"},bj={key:1,class:"info-name"},wj={key:2,class:"info-type"},kj={key:1},Cj=Me(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.createRoute||!n.getViewRoute||!n.getEditRoute||!n.getConfigureDynamicOrderingRoute||n.app==="kongManager"&&!n.isExactMatch&&!n.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(n,{emit:t}){var Ye,tt;const r=st.usePluginMetaData(),o=t,i=n,{i18n:{t:a}}=st.useI18n(),s=Nr.useRouter(),{axiosInstance:c}=Ie.useAxios((Ye=i.config)==null?void 0:Ye.axiosRequestConfig),{hasRecords:l,handleStateChange:u}=Ie.useTableState(()=>C.value),p=e.computed(()=>l.value&&i.config.app==="konnect"),d=e.computed(()=>!!i.config.entityId),f=e.computed(()=>{var Ve;return((Ve=i.config)==null?void 0:Ve.entityType)==="consumers"}),m=e.computed(()=>{var Ve;return((Ve=i.config)==null?void 0:Ve.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||Ie.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),_={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(tt=i.config)!=null&&tt.entityId||(_.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),_.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(_.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),_.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const b=_,w=e.computed(()=>{var ke,_e,ye,ae;let Ve=i.config.entityType?`${i.config.apiBaseUrl}${et.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${et.list[i.config.app].all}`;return i.config.app==="konnect"&&(Ve=Ve.replace(/{controlPlaneId}/gi,((ke=i.config)==null?void 0:ke.controlPlaneId)||"")),Ve.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:"").replace(/{entityType}/gi,((ye=i.config)==null?void 0:ye.entityType)||"").replace(/{entityId}/gi,((ae=i.config)==null?void 0:ae.entityId)||"")}),C=e.ref(""),x=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:_.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{..._.enabled,label:a("search.filter.field.enabled")},name:_.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:k,fetcherCacheKey:N}=Ie.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),B=()=>{C.value=""},U=()=>{N.value++},S=e.ref(null),A=Ve=>{var _e,ye,ae,te;const ke=[];return((_e=Ve.route)!=null&&_e.id||Ve.route_id)&&ke.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((ye=Ve.service)!=null&&ye.id||Ve.service_id)&&ke.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((ae=Ve.consumer)!=null&&ae.id||Ve.consumer_id)&&ke.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((te=Ve.consumer_group)!=null&&te.id||Ve.consumer_group_id)&&ke.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ke.length?ke:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},O=async(Ve,ke)=>{var _e;return Ve===null?!1:await((_e=i.canRetrieveScopedEntity)==null?void 0:_e.call(i,Ve,ke.id))},P=(Ve,ke)=>{var ye,ae,te,se,ue;let _e=null;switch(Ve){case"route":_e=(ye=ke.route)==null?void 0:ye.id;break;case"service":_e=(ae=ke.service)==null?void 0:ae.id;break;case"consumer":_e=(te=ke.consumer)==null?void 0:te.id;break;case"consumer_group":_e=(se=ke.consumer_group)==null?void 0:se.id;break}_e&&((ue=i.config)!=null&&ue.getScopedEntityViewRoute)&&s.push(i.config.getScopedEntityViewRoute(Ve,_e))},R=e.ref(!1),z=e.ref(null),X=e.computed(()=>{const Ve={action:"disable",id:"",name:""};if(z.value){const{enabled:ke,id:_e,name:ye}=z.value;Ve.action=ke?"disable":"enable",Ve.id=_e,Ve.name=r.getDisplayName(ye)||_e}return Ve}),Z=Ve=>{R.value=!0,z.value=Ve},K=()=>{R.value=!1,z.value=null},W=async()=>{var ye,ae,te,se,ue,Ee,be,xe;if(!await((ye=i.canEdit)==null?void 0:ye.call(i,z.value))||!z.value)return;let ke=`${i.config.apiBaseUrl}${(ue=et.item[i.config.app])==null?void 0:ue[(ae=i.config)!=null&&ae.entityType?"forEntity":"all"].replace(/{entityType}/gi,((te=i.config)==null?void 0:te.entityType)||"").replace(/{entityId}/gi,((se=i.config)==null?void 0:se.entityId)||"")}`.replace(/{id}/gi,z.value.id||"");i.config.app==="konnect"&&(ke=ke.replace(/{controlPlaneId}/gi,((Ee=i.config)==null?void 0:Ee.controlPlaneId)||"")),ke=ke.replace(/\/{workspace}/gi,(be=i.config)!=null&&be.workspace?`/${i.config.workspace}`:"");const _e=!z.value.enabled;try{const h=(xe=i.config)==null?void 0:xe.app;let T;C.value&&h==="konnect"&&(T=await c.get(ke));const{data:G}=h==="konnect"?await c.put(ke,{...(T==null?void 0:T.data)||z.value,enabled:_e},{timeout:12e4}):await c.patch(ke,{...z.value,enabled:_e},{timeout:12e4});o("toggle-enabled",_e,G),z.value.enabled=_e}catch(h){o("error",h)}},$=async(Ve,ke)=>{const _e=Ve.id;if(!await ke(_e)){o("copy:error",{entity:Ve,field:"id",message:a("errors.copy")});return}o("copy:success",{entity:Ve,field:"id",message:a("copy.success",{val:_e})})},ee=async(Ve,ke)=>{const _e=JSON.stringify(Ve);if(!await ke(_e)){o("copy:error",{entity:Ve,message:a("errors.copy")});return}o("copy:success",{entity:Ve,message:a("copy.success_brief")})},F=async Ve=>{var _e;await((_e=i.canRetrieve)==null?void 0:_e.call(i,Ve))&&s.push(i.config.getViewRoute(Ve))},J=Ve=>({label:a("actions.view"),to:i.config.getViewRoute(Ve)}),M=Ve=>({label:a("actions.edit"),to:i.config.getEditRoute(Ve)}),v=Ve=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(Ve)}),j=e.ref(void 0),ie=e.ref(!1),re=e.ref(!1),me=e.ref(""),he=Ie.useDeleteUrlBuilder(i.config,w.value),le=Ve=>{j.value=Ve,ie.value=!0},ge=()=>{ie.value=!1},Oe=async()=>{var Ve,ke,_e;if((Ve=j.value)!=null&&Ve.id){re.value=!0;try{await c.delete(he(j.value.id)),re.value=!1,ie.value=!1,N.value++,o("delete:success",j.value)}catch(ye){me.value=((_e=(ke=ye.response)==null?void 0:ke.data)==null?void 0:_e.message)||ye.message||a("errors.delete"),o("error",ye)}finally{re.value=!1}}},$e=()=>{s.push(i.config.createRoute)};e.watch(k,Ve=>{var ke,_e,ye;if(Ve.status===Ie.FetcherStatus.Error){S.value={title:a("errors.general")},(ye=(_e=(ke=Ve.error)==null?void 0:ke.response)==null?void 0:_e.data)!=null&&ye.message&&(S.value.message=Ve.error.response.data.message),o("error",Ve.error);return}S.value=null});const Pe=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),qe=e.ref(!1);return e.onBeforeMount(async()=>{qe.value=await i.canCreate(),qe.value&&(Pe.value.title=a("plugins.list.empty_state.title"),Pe.value.ctaText=a("actions.create"))}),(Ve,ke)=>{const _e=e.resolveComponent("KButton"),ye=e.resolveComponent("KEmptyState"),ae=e.resolveComponent("KBadge"),te=e.resolveComponent("KTruncate"),se=e.resolveComponent("KInputSwitch"),ue=e.resolveComponent("KDropdownItem"),Ee=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",mj,[e.createVNode(e.unref(Ie.EntityBaseTable),{"cache-identifier":n.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":Pe.value,"enable-entity-actions":"","error-message":S.value,fetcher:e.unref(E),"fetcher-cache-key":e.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:C.value,"table-headers":e.unref(b),title:n.title,"title-tag":n.titleTag,onClearSearchInput:B,"onClick:row":ke[4]||(ke[4]=be=>F(be)),onSort:U,onState:e.unref(u)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(Ie.EntityFilter),{modelValue:C.value,"onUpdate:modelValue":ke[0]||(ke[0]=be=>C.value=be),config:x.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!n.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",hj,[!d.value&&p.value?(e.openBlock(),e.createBlock(_e,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ke[1]||(ke[1]=be=>Ve.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canCreate()},{default:e.withCtx(()=>[e.createVNode(_e,{appearance:"primary","data-testid":"toolbar-add-plugin",size:n.useActionOutside?"medium":"large",to:n.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:be})=>[e.createElementVNode("div",gj,[e.createVNode(e.unref(Er.PluginIcon),{class:"plugin-icon",name:be.name,size:24},null,8,["name"]),e.createElementVNode("div",yj,[be.instance_name?(e.openBlock(),e.createElementBlock("span",_j,e.toDisplayString(be.instance_name),1)):(e.openBlock(),e.createElementBlock("span",bj,e.toDisplayString(e.unref(r).getDisplayName(be.name)),1)),be.instance_name?(e.openBlock(),e.createElementBlock("span",wj,e.toDisplayString(e.unref(r).getDisplayName(be.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:be})=>[A(be).length>0?(e.openBlock(),e.createBlock(te,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A(be),xe=>(e.openBlock(),e.createBlock(e.unref(Ie.PermissionsWrapper),{key:xe.badgeText,"auth-function":()=>O(xe.type,be),"force-show":""},{default:e.withCtx(({isAllowed:h})=>[e.createVNode(ae,{class:e.normalizeClass(h||"disabled"),onClick:e.withModifiers(T=>h&&xe.type&&P(xe.type,be),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(xe.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",kj,"-"))]),enabled:e.withCtx(({row:be})=>[e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":async()=>!!(await n.canEdit(be)&&await n.canToggle(be)),"force-show":""},{default:e.withCtx(({isAllowed:xe})=>{var h,T;return[e.createElementVNode("div",{onClick:ke[3]||(ke[3]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(se,{disabled:!xe,"disabled-tooltip-text":!xe&&((T=(h=n.config).getToggleDisabledTooltip)==null?void 0:T.call(h,be))||void 0,"model-value":be.enabled,onClick:e.withModifiers(G=>xe&&Z(be),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:be})=>[e.createVNode(ae,{appearance:e.unref(hy)(be)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(hy)(be)?e.unref(a)("plugins.list.table_headers.ordering_badge.static"):e.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:be})=>[e.createVNode(e.unref(Ie.TableTags),{tags:be},null,8,["tags"])]),actions:e.withCtx(({row:be})=>[e.createVNode(Ee,null,{default:e.withCtx(({copyToClipboard:xe})=>[e.createVNode(ue,{"data-testid":"action-entity-copy-id",onClick:h=>$(be,xe)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(Ee,null,{default:e.withCtx(({copyToClipboard:xe})=>[e.createVNode(ue,{"data-testid":"action-entity-copy-json",onClick:h=>ee(be,xe)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canRetrieve(be)},{default:e.withCtx(()=>[e.createVNode(ue,{"data-testid":"action-entity-view","has-divider":"",item:J(be)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canEdit(be)},{default:e.withCtx(()=>[e.createVNode(ue,{"data-testid":"action-entity-edit",item:M(be)},null,8,["item"])]),_:2},1032,["auth-function"]),!f.value&&!m.value&&e.unref(g)?(e.openBlock(),e.createBlock(e.unref(Ie.PermissionsWrapper),{key:0,"auth-function":()=>n.canConfigureDynamicOrdering(be)},{default:e.withCtx(()=>[v(be)?(e.openBlock(),e.createBlock(ue,{key:0,"data-testid":"action-entity-config-dyn-order",item:v(be)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canDelete(be)},{default:e.withCtx(()=>[e.createVNode(ue,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:xe=>le(be)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!C.value&&n.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var be;return[e.createVNode(ye,{"data-testid":n.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:e.unref(a)("plugins.list.empty_state_v2.description"),title:e.unref(a)("plugins.list.empty_state_v2.title")},e.createSlots({icon:e.withCtx(()=>[e.createVNode(e.unref(Re.PlugIcon),{decorative:""})]),action:e.withCtx(()=>[qe.value?(e.openBlock(),e.createBlock(_e,{key:0,"data-testid":"entity-create-button",onClick:$e},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(_e,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ke[2]||(ke[2]=xe=>Ve.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.BookIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(be=n.config)!=null&&be.isControlPlaneGroup?{name:"default",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),e.createVNode(e.unref(Ie.EntityToggleModal),{action:X.value.action,"entity-id":X.value.id,"entity-name":X.value.name,"entity-type":e.unref(a)("glossary.plugin"),"on-confirm":W,visible:R.value,onCancel:K,onProceed:K},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(Ie.EntityDeleteModal),{"action-pending":re.value,description:e.unref(a)("delete.description"),"entity-name":j.value&&(j.value.instance_name||j.value.name||j.value.id),"entity-type":e.unref(Ie.EntityTypes).Plugin,error:me.value,title:e.unref(a)("delete.title"),visible:ie.value,onCancel:ge,onProceed:Oe},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-88f8302b"]]),Ej={class:"plugin-select-card-wrapper"},Nj=["data-testid"],Sj={class:"plugin-card-header"},xj={class:"plugin-card-title"},Aj={key:0,class:"plugin-card-actions"},vj=["data-testid","title"],Ij={key:0,class:"plugin-card-text"},Bj={key:0,class:"custom-plugin-badges"},Tj=["title"],ip=Me(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(n,{emit:t}){const r=t,o=n,i=Nr.useRouter(),{i18n:{t:a}}=st.useI18n(),s=e.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),c=e.computed(()=>!E.value||x.value?[]:o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?[a("plugins.select.cloned_from_badge",{link:o.plugin.clonedFromRef})]:o.plugin.customPluginType==="streaming"?[a("plugins.select.streamed_custom_badge")]:[a("plugins.select.installed_custom_badge")]),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),u=e.computed(()=>typeof o.config.getCustomEditRoute=="function"),p=e.computed(()=>o.plugin.customPluginType==="cloned"),d=e.computed(()=>p.value?o.canDeleteClonedPlugin:o.canDeleteCustomPlugin),f=e.computed(()=>p.value?o.canEditClonedPlugin:o.canEditCustomPlugin),m=e.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),g=e.computed(()=>f.value&&u.value),y=e.computed(()=>d.value),_=e.computed(()=>!!(E.value&&!x.value&&m.value&&o.navigateOnClick&&(y.value||g.value))),b=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},w=()=>{o.navigateOnClick?b():C()},C=()=>{r("plugin-clicked",o.plugin)},x=e.computed(()=>o.plugin.id==="custom-plugin-create"),E=e.computed(()=>o.plugin.group===fe.PluginGroup.CUSTOM_PLUGINS),k=()=>{E.value&&r("custom-plugin-delete")},N=(U,S)=>{const A=o.config;typeof A.getCustomEditRoute=="function"&&i.push(A.getCustomEditRoute(U,S))},B=()=>{if(!l.value&&E.value){const U=o.config;x.value&&U.createCustomRoute?i.push(U.createCustomRoute):E.value&&b()}};return(U,S)=>{const A=e.resolveComponent("KButton"),O=e.resolveComponent("KDropdownItem"),P=e.resolveComponent("KDropdownMenu"),R=e.resolveComponent("KBadge"),z=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",Ej,[e.createVNode(z,{text:n.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${n.plugin.id}-card`,role:"button",onClick:S[1]||(S[1]=X=>l.value||E.value?void 0:w())},[e.createElementVNode("div",Sj,[e.createElementVNode("div",xj,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!E.value})},e.toDisplayString(n.plugin.name),3)]),_.value?(e.openBlock(),e.createElementBlock("div",Aj,[e.createVNode(P,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(O,{key:0,"data-testid":"edit-plugin-schema",onClick:S[0]||(S[0]=e.withModifiers(X=>N(n.plugin.name,n.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),y.value?(e.openBlock(),e.createBlock(O,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":g.value,onClick:e.withModifiers(k,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":E.value}]),"data-testid":n.plugin.name,title:n.plugin.available?n.plugin.name:e.unref(a)("plugins.select.unavailable_tooltip"),onClick:B},[e.createVNode(e.unref(Er.PluginIcon),{alt:n.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),n.plugin.description||c.value.length?(e.openBlock(),e.createElementBlock("div",Ij,[c.value.length?(e.openBlock(),e.createElementBlock("div",Bj,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,X=>(e.openBlock(),e.createBlock(R,{key:X,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(X),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),n.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:n.plugin.description},e.toDisplayString(n.plugin.description),9,Tj)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,vj),e.createElementVNode("div",{class:"plugin-card-footer",onClick:B},e.toDisplayString(x.value?e.unref(a)("actions.create_custom"):n.plugin.exists?e.unref(a)("actions.enabled"):e.unref(a)("actions.enable")),1)],10,Nj)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-23ad176e"]]),fc=Me(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(n,{emit:t}){var m;const r=n,o=t,{i18n:{t:i}}=st.useI18n(),{getMessageFromError:a}=Ie.useErrors(),{axiosInstance:s}=Ie.useAxios((m=r.config)==null?void 0:m.axiosRequestConfig),c=e.computed(()=>{var g;return p.value?i("delete.plugin_schema_in_use_title"):i("delete.title",{name:((g=r.plugin)==null?void 0:g.name)||i("delete.custom_plugin")})}),l=e.ref(!1),u=e.ref(""),p=e.ref(!1),d=e.computed(()=>{const g=r.plugin.customPluginType;if(r.config.app==="konnect"){const y=g==="streaming"?et.select[r.config.app].streamingCustomPluginItem:g==="cloned"?et.customPlugin[r.config.app].cloned.edit:et.select[r.config.app].schemaCustomPluginItem;return`${r.config.apiBaseUrl}${y}`.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"").replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}if(r.config.app==="kongManager"&&g&&g!=="schema"){const y=g==="cloned"?et.customPlugin[r.config.app].cloned.edit:et.customPlugin[r.config.app].streamed.edit;return`${r.config.apiBaseUrl}${y}`.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}return null}),f=async()=>{var g;if(l.value=!0,u.value="",!((g=r.plugin)!=null&&g.name)){l.value=!1;return}try{d.value&&await s.delete(d.value),o("proceed")}catch(y){Ew(y)?p.value=!0:u.value=a(y)}finally{l.value=!1}};return(g,y)=>{const _=e.resolveComponent("KAlert"),b=e.resolveComponent("KButton"),w=e.resolveComponent("KModal");return!p.value&&n.plugin?(e.openBlock(),e.createBlock(e.unref(Ie.EntityDeleteModal),{key:0,"action-pending":l.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(i)("delete.description_custom"),"entity-name":n.plugin.name,"entity-type":e.unref(Ie.EntityTypes).Plugin,error:u.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=C=>g.$emit("closed")),onProceed:f},null,8,["action-pending","description","entity-name","entity-type","error","title"])):n.plugin?(e.openBlock(),e.createBlock(w,{key:1,"action-button-disabled":l.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:y[2]||(y[2]=C=>g.$emit("closed"))},{default:e.withCtx(()=>[e.createVNode(_,{appearance:"danger",message:e.unref(i)("delete.plugin_schema_in_use_message")},null,8,["message"])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(b,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:y[1]||(y[1]=C=>g.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-627c76f8"]]),Oj={class:"custom-plugins-grid"},Pj={class:"empty-state-title"},Vj={class:"empty-state-description"},ap=310,$j=Me(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=st.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:s}=st.usePluginHelpers(),c=e.ref(!0),l=E=>{o("plugin-clicked",E)},u=e.computed(()=>{const E=JSON.parse(JSON.stringify(r.pluginList))[fe.PluginGroup.CUSTOM_PLUGINS]||[];return r.canCreateCustomPlugin&&r.navigateOnClick&&r.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:fe.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),p=e.ref(!1),d=e.ref(null),f=E=>{p.value=!0,d.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var k;E&&(o("revalidate"),o("delete:success",((k=d.value)==null?void 0:k.name)||"")),p.value=!1,d.value=null},g=e.ref(ap),y=e.ref(null),_=e.ref(null),b=e.computed(()=>c.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),w=e.ref(!1),C=()=>{g.value=Math.max(a(_.value),ap),x()},x=()=>{var E,k;(E=_.value)!=null&&E.length&&(w.value=s(y.value,(k=_.value)==null?void 0:k.length))};return e.onMounted(async()=>{await e.nextTick(),g.value=Math.max(a(_.value),ap),x(),window==null||window.addEventListener("resize",C)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",C)}),(E,k)=>{const N=e.resolveComponent("KEmptyState"),B=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",Oj,[u.value.length?(e.openBlock(),e.createBlock(B,{key:1,modelValue:c.value,"onUpdate:modelValue":k[0]||(k[0]=U=>c.value=U),class:"custom-plugins-collapse","data-testid":`${e.unref(fe.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:e.unref(fe.PluginGroup).CUSTOM_PLUGINS,"trigger-label":c.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:e.normalizeStyle(b.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(U,S)=>(e.openBlock(),e.createBlock(ip,{key:`plugin-card-${S}`,ref_for:!0,ref_key:"pluginCardRef",ref:_,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,"navigate-on-click":n.navigateOnClick,plugin:U,onCustomPluginDelete:A=>f(U),onPluginClicked:l},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:e.withCtx(()=>[k[2]||(k[2]=e.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Pj,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",Vj,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),p.value&&d.value?(e.openBlock(),e.createBlock(fc,{key:2,config:n.config,plugin:d.value,onClosed:m,onProceed:k[1]||(k[1]=U=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-909f4d5f"]]),sp=310,xw=Me(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked","delete:success"],["update:modelValue"]),setup(n,{emit:t}){const r=e.useModel(n,"modelValue"),o=n,i=t,{i18n:{t:a}}=st.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:c}=st.usePluginHelpers(),l=e.ref(sp),u=e.ref(null),p=e.ref(null),d=e.computed(()=>r.value?{overflowY:"hidden",maxHeight:`${l.value}px`}:{}),f=e.ref(!1),m=e.ref(!1),g=e.ref(null),y=C=>{m.value=!0,g.value={id:C.id,name:C.name,customPluginType:C.customPluginType}},_=C=>{var x;C&&i("delete:success",((x=g.value)==null?void 0:x.name)||""),m.value=!1,g.value=null},b=()=>{l.value=Math.max(s(p.value),sp),w()},w=()=>{var C,x;(C=p.value)!=null&&C.length&&(f.value=c(u.value,(x=p.value)==null?void 0:x.length))};return e.onMounted(async()=>{await e.nextTick(),l.value=Math.max(s(p.value),sp),w(),window==null||window.addEventListener("resize",b)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(C,x)=>{const E=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(E,{modelValue:r.value,"onUpdate:modelValue":x[0]||(x[0]=k=>r.value=k),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":r.value?e.unref(a)("plugins.select.view_more"):e.unref(a)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:e.normalizeStyle(d.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.plugins,k=>(e.openBlock(),e.createBlock(ip,{key:`plugin-card-${k.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:p,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,"navigate-on-click":n.navigateOnClick,plugin:k,onCustomPluginDelete:N=>y(k),onPluginClicked:N=>i("plugin-clicked",k)},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete","onPluginClicked"]))),128))],4)]),_:2},[f.value?void 0:{name:"trigger",fn:e.withCtx(()=>[x[2]||(x[2]=e.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"]),m.value&&g.value?(e.openBlock(),e.createBlock(fc,{key:0,config:n.config,plugin:g.value,onClosed:_,onProceed:x[1]||(x[1]=k=>_(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-7f683497"]]),Rj={class:"plugin-select-grid"},Lj={class:"empty-state-title"},Dj={class:"empty-state-description"},lp=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked","delete:success"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=st.useI18n(),a=e.ref(!1),s=e.ref(tf.reduce((u,p)=>(u[p]=!1,u),{})),c=u=>{o("plugin-clicked",u)},l=e.computed(()=>{const u=JSON.parse(JSON.stringify(r.pluginList));return r.config.app==="konnect"&&delete u[fe.PluginGroup.CUSTOM_PLUGINS],u});return(u,p)=>{const d=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",Rj,[Object.keys(l.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Lj,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",Dj,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!r.hideHighlightedPlugins&&r.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(xw,{key:1,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=f=>a.value=f),"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:r.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":n.navigateOnClick,plugins:r.highlightedPlugins,"onDelete:success":p[1]||(p[1]=f=>o("delete:success",f)),onPluginClicked:p[2]||(p[2]=f=>c(f))},null,8,["modelValue","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(tf),f=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[l.value[f]?(e.openBlock(),e.createElementBlock("div",{key:f},[e.createVNode(xw,{modelValue:s.value[f],"onUpdate:modelValue":m=>s.value[f]=m,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:f,"navigate-on-click":n.navigateOnClick,plugins:l.value[f]||[],"onDelete:success":p[3]||(p[3]=m=>o("delete:success",m)),onPluginClicked:p[4]||(p[4]=m=>c(m))},null,8,["modelValue","onUpdate:modelValue","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),Mj={class:"kong-ui-entities-plugin-select-form"},jj={class:"plugins-filter-input-container"},Fj={key:0},Uj={key:3,"aria-live":"polite",class:"plugins-results-container"},Kj={"data-testid":"kong-tab"},qj={class:"tab-description"},Gj={"data-testid":"custom-tab"},Hj={class:"tab-description"},zj={key:1},Wj=Me(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="kongManager"&&!n.workspace||n.app==="konnect"&&(!n.controlPlaneId||n.workspace)||!n.getCreateRoute)},customPluginSupport:{type:[String,Array],default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canReadCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteClonedPlugin:{type:Function,required:!1},canReadClonedPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditClonedPlugin:{type:Function,required:!1},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(n,{emit:t}){var ye;const r=n,o=t,i=Nr.useRoute(),a=Nr.useRouter(),{i18n:{t:s}}=st.useI18n(),{pluginMetaData:c}=st.usePluginMetaData(),{getMessageFromError:l}=Ie.useErrors(),{sortAlpha:u,objectsAreEqual:p}=Ie.useHelpers(),d=e.ref(""),f=e.ref(!0),m=e.ref(!1),g=e.ref(""),y=e.ref(""),_=e.ref([]),b=e.ref([]),w=e.ref([]),C=e.ref({}),x=e.ref([]),E=e.ref(null),k=e.ref(!1),{axiosInstance:N}=Ie.useAxios((ye=r.config)==null?void 0:ye.axiosRequestConfig),B=ae=>ae==="none"||ae==="disabled"?new Set:new Set(Array.isArray(ae)?ae:[ae]),U=e.computed(()=>B(r.customPluginSupport)),S=e.computed(()=>[...U.value].sort().join("|")),A=e.computed(()=>r.customPluginSupport==="disabled"),O=e.computed(()=>A.value||U.value.size>0),P=e.computed(()=>U.value.has("streaming")),R=e.computed(()=>U.value.has("cloned")),z=ae=>zo.isAxiosError(ae)&&ae.code==="ERR_CANCELED",X=ae=>l(ae).toLowerCase().includes("requires a license"),Z=e.computed(()=>C.value?Object.entries(C.value).filter(([ae])=>ae!==fe.PluginGroup.CUSTOM_PLUGINS).reduce((ae,[,te])=>{for(const se of te??[])ae[se.id]=se;return ae},{}):{}),K=e.computed(()=>{var se;if(!C.value)return{};const ae=d.value.toLowerCase(),te=JSON.parse(JSON.stringify(C.value));for(const ue in C.value){const Ee=((se=C.value[ue])==null?void 0:se.filter(be=>{var xe,h;return be.name.toLowerCase().includes(ae)||be.id.toLowerCase().includes(ae)||be.group.toLowerCase().includes(ae)||((xe=be.clonedFromRef)==null?void 0:xe.toLowerCase().includes(ae))||((h=be.customPluginType)==null?void 0:h.toLowerCase().includes(ae))}))||[];Ee.length?te[ue]=Ee:delete te[ue]}return te}),W=e.computed(()=>r.highlightedPluginIds.reduce((ae,te)=>{const se=Z.value[te];return se&&ae.push(se),ae},[])),$=e.computed(()=>Object.keys(K.value).length>0),ee=e.computed(()=>Object.keys(C.value).length>0&&!$.value),F=e.computed(()=>r.config.app!=="konnect"||!O.value?[]:[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:A.value}]),J=e.computed(()=>{var te;let ae=F.value.length&&((i==null?void 0:i.hash)||((te=F.value[0])==null?void 0:te.hash))||"";return ae==="#custom"&&A.value&&(ae="#kong"),ae}),M=()=>{const ae=new Map(w.value.map(ue=>[ue.name,ue])),te=new Set(b.value.map(ue=>ue.name)),se=new Set([...te,...ae.keys()]);return[...new Set([...Object.keys({...r.availableOnServer?{}:c}),..._.value,...se])].filter(ue=>!r.ignoredPlugins.includes(ue)).filter(ue=>{if(!r.config.entityType)return ue;const Ee=ae.has(ue)?ae.get(ue).ref:ue;return r.config.entityType==="services"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.SERVICE)||r.config.entityType==="routes"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.ROUTE)||r.config.entityType==="consumer_groups"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.CONSUMER_GROUP)||r.config.entityType==="consumers"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.CONSUMER)?!1:ue}).reduce((ue,Ee)=>{var oe;const be=c[Ee]&&c[Ee].name||Ee,xe=ae.get(Ee),h=te.has(Ee),T={...c[Ee],id:Ee,name:be,available:_.value.includes(Ee)||!!xe||h,disabledMessage:"",group:((oe=c[Ee])==null?void 0:oe.group)||fe.PluginGroup.CUSTOM_PLUGINS};T.group===fe.PluginGroup.CUSTOM_PLUGINS&&(xe?(T.customPluginType="cloned",T.clonedFromRef=xe.ref):h?T.customPluginType="streaming":T.customPluginType="schema"),r.disabledPlugins&&(T.disabledMessage=r.disabledPlugins[Ee]);const G=T.group||s("plugins.select.misc_plugins");let Y=ue[G];return Y||(Y=[]),Y.push(T),Y.sort(u("name")),ue[G]=Y,ue},{})},v=e.computed(()=>{var te;let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].availablePlugins}`;if(r.config.app==="konnect")ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"");else if(r.config.app==="kongManager"&&((te=r.config.gatewayInfo)==null?void 0:te.edition)==="community")return`${r.config.apiBaseUrl}${et.select[r.config.app].availablePluginsForOss}`;return ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}),j=e.computed(()=>{if(P.value){let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].streamingCustomPlugins}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),ie=e.computed(()=>{if(R.value){let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].clonedPlugins}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),re=e.computed(()=>{if(r.config.entityType&&r.config.entityId){let ae=`${r.config.apiBaseUrl}${et.list[r.config.app].forEntity}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{entityType}/gi,r.config.entityType||"").replace(/{entityId}/gi,r.config.entityId||"")}return""}),me=ae=>{a.replace({hash:ae,query:i.query})};e.watch(()=>r.disabledPlugins,(ae,te)=>{!p(ae,te)&&!f.value&&(C.value=M())}),e.watch(()=>r.ignoredPlugins,(ae,te)=>{!p(ae,te)&&!f.value&&(C.value=M())}),e.watch(f,ae=>{o("loading",ae)});const he=async ae=>{if(!re.value){x.value=[];return}try{const{data:{data:te}}=await N.get(re.value,{signal:ae});te!=null&&te.length&&(x.value=te.reduce((se,ue)=>(ue.name&&se.push(ue.name),se),[]))}catch(te){z(te)||(x.value=[])}},le=async ae=>{const te=[];j.value&&qe.value&&te.push(dc(N,j.value,ae).then(se=>{b.value=se}).catch(se=>{z(se)||y.value||(y.value=l(se)??s("plugins.select.tabs.custom.fetch_error"))})),ie.value&&Ve.value&&te.push(dc(N,ie.value,ae).then(se=>{w.value=se}).catch(se=>{if(z(se))return;const ue=X(se);(ue||!y.value)&&(y.value=ue?s("plugins.select.tabs.custom.license_required"):l(se)??s("plugins.select.tabs.custom.fetch_error"))})),te.push(he(ae)),await Promise.allSettled(te)},ge=async()=>{var ae,te;(ae=E.value)==null||ae.abort(),E.value=new AbortController,f.value=!0,m.value=!1,g.value="",y.value="",_.value=[],b.value=[],w.value=[],x.value=[];try{const{data:se}=await N.get(v.value,{signal:E.value.signal});if(r.config.app==="konnect"){const{names:ue}=se;_.value=ue||[]}else if(r.config.app==="kongManager"){const{plugins:{available_on_server:ue}}=se;_.value=ue?Object.keys(ue):[]}await le(E.value.signal),C.value=M()}catch(se){z(se)||(m.value=!0,g.value=l(se))}finally{(te=E.value)!=null&&te.signal.aborted||(f.value=!1)}},Oe=e.ref(!1),$e=e.ref(!1),Pe=e.ref(!1),qe=e.ref(!1),Ye=e.ref(!1),tt=e.ref(!1),Ve=e.ref(!1),ke=ae=>{b.value=b.value.filter(te=>te.name!==ae),w.value=w.value.filter(te=>te.name!==ae),C.value=M(),o("delete-custom:success",ae)};e.onBeforeMount(async()=>{const[ae,te,se,ue,Ee,be,xe]=await Promise.all([r.canCreateCustomPlugin(),r.canEditCustomPlugin(),r.canDeleteCustomPlugin(),r.canReadCustomPlugin(),r.canEditClonedPlugin?r.canEditClonedPlugin():Promise.resolve(null),r.canDeleteClonedPlugin?r.canDeleteClonedPlugin():Promise.resolve(null),r.canReadClonedPlugin()]);Oe.value=ae,$e.value=te,Pe.value=se,qe.value=ue,Ye.value=Ee??te,tt.value=be??se,Ve.value=xe});const _e=e.useTemplateRef("filter-input");return e.onMounted(async()=>{var ae,te;k.value=!0,(te=(ae=_e.value)==null?void 0:ae.input)==null||te.focus(),await ge()}),e.watch(()=>{var ae;return[r.config.app==="konnect"?r.config.controlPlaneId:void 0,r.config.workspace,r.config.entityType,r.config.entityId,r.config.app==="kongManager"?(ae=r.config.gatewayInfo)==null?void 0:ae.edition:void 0,S.value,A.value]},async()=>{k.value&&await ge()}),e.onBeforeUnmount(()=>{var ae;(ae=E.value)==null||ae.abort()}),(ae,te)=>{const se=e.resolveComponent("KInput"),ue=e.resolveComponent("KSkeletonBox"),Ee=e.resolveComponent("KSkeleton"),be=e.resolveComponent("KEmptyState"),xe=e.resolveComponent("KTooltip"),h=e.resolveComponent("KAlert"),T=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",Mj,[e.createElementVNode("div",jj,[e.createVNode(se,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":te[0]||(te[0]=G=>d.value=G),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),f.value?(e.openBlock(),e.createElementBlock("section",Fj,[e.createVNode(ue,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(Ee,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(e.openBlock(),e.createBlock(be,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(g.value),1)]),_:1})):ee.value&&d.value?(e.openBlock(),e.createBlock(be,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(s)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",Uj,[F.value.length?(e.openBlock(),e.createBlock(T,{key:0,modelValue:J.value,"onUpdate:modelValue":te[3]||(te[3]=G=>J.value=G),"data-testid":"plugins-tabs",tabs:F.value,onChange:me},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",Kj,[e.createElementVNode("p",qj,e.toDisplayString(e.unref(s)("plugins.select.tabs.kong.description")),1),e.createVNode(lp,{"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":W.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[1]||(te[1]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",Gj,[e.renderSlot(ae.$slots,"before-custom-tab-content",{},void 0,!0),e.createElementVNode("p",Hj,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.description")),1),y.value?(e.openBlock(),e.createBlock(h,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):e.createCommentVNode("",!0),e.createVNode($j,{"can-create-custom-plugin":Oe.value,"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[2]||(te[2]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-create-custom-plugin","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[A.value?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(xe,{"max-width":"300",text:e.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createElementBlock("div",zj,[y.value?(e.openBlock(),e.createBlock(h,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):e.createCommentVNode("",!0),e.createVNode(lp,{"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":W.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[4]||(te[4]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])]))]))])}}}),[["__scopeId","data-v-70fb1e81"]]),Yj={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},Jj={class:"plugin-card-header"},Xj={class:"plugin-card-title"},Zj={key:0,class:"plugin-card-actions"},Qj=["data-testid","title"],eF={key:0},tF=["title"],nF={class:"plugin-card-footer"},rF={class:"plugin-card-footer-extra"},oF={key:0,class:"custom-plugin-badges"},iF=Me(e.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","custom-plugin-delete"],setup(n,{emit:t}){const r=t,o=n,i=Nr.useRouter(),{i18n:{t:a}}=st.useI18n(),s=e.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),c=e.computed(()=>!C.value||w.value?[]:o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?[a("plugins.select.cloned_from_badge",{link:o.plugin.clonedFromRef})]:o.plugin.customPluginType==="streaming"?[a("plugins.select.streamed_custom_badge")]:[a("plugins.select.installed_custom_badge")]),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),u=e.computed(()=>typeof o.config.getCustomEditRoute=="function"),p=e.computed(()=>o.plugin.customPluginType==="cloned"),d=e.computed(()=>p.value?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin),f=e.computed(()=>p.value?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin),m=e.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),g=e.computed(()=>f.value&&u.value),y=e.computed(()=>d.value),_=e.computed(()=>!!(C.value&&!w.value&&m.value&&(y.value||g.value))),b=e.computed(()=>l.value?{}:C.value&&w.value&&o.config.createCustomRoute?o.config.createCustomRoute:o.config.getCreateRoute(o.plugin.id)),w=e.computed(()=>o.plugin.id==="custom-plugin-create"),C=e.computed(()=>o.plugin.group===fe.PluginGroup.CUSTOM_PLUGINS),x=()=>{C.value&&r("custom-plugin-delete")},E=(k,N)=>{typeof o.config.getCustomEditRoute=="function"&&i.push(o.config.getCustomEditRoute(k,N))};return(k,N)=>{const B=e.resolveComponent("KButton"),U=e.resolveComponent("KDropdownItem"),S=e.resolveComponent("KDropdownMenu"),A=e.resolveComponent("KBadge"),O=e.resolveComponent("RouterLink"),P=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",Yj,[e.createVNode(P,{text:n.plugin.disabledMessage},{default:e.withCtx(()=>[e.createVNode(O,{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${n.plugin.id}-card`,to:b.value},{default:e.withCtx(()=>[e.createElementVNode("div",Jj,[e.createElementVNode("div",Xj,[e.createVNode(e.unref(Er.PluginIcon),{alt:n.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!C.value})},e.toDisplayString(n.plugin.name),3)]),_.value?(e.openBlock(),e.createElementBlock("div",Zj,[e.createVNode(S,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:N[1]||(N[1]=e.withModifiers(()=>{},["stop","prevent"]))},{default:e.withCtx(()=>[e.createVNode(B,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(U,{key:0,"data-testid":"edit-plugin-schema",onClick:N[0]||(N[0]=e.withModifiers(R=>E(n.plugin.name,n.plugin.customPluginType),["stop","prevent"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),y.value?(e.openBlock(),e.createBlock(U,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":g.value,onClick:e.withModifiers(x,["stop","prevent"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"plugin-card-body","data-testid":`${n.plugin.id}-card-body`,title:n.plugin.available?n.plugin.name:e.unref(a)("plugins.select.unavailable_tooltip")},[n.plugin.description?(e.openBlock(),e.createElementBlock("div",eF,[e.createElementVNode("div",{title:n.plugin.description},e.toDisplayString(n.plugin.description),9,tF)])):e.createCommentVNode("",!0)],8,Qj),e.createElementVNode("div",nF,[e.createElementVNode("div",null,e.toDisplayString(w.value?e.unref(a)("actions.create_custom"):e.unref(a)("actions.configure")),1),e.createElementVNode("div",rF,[c.value.length?(e.openBlock(),e.createElementBlock("div",oF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,R=>(e.openBlock(),e.createBlock(A,{key:R,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"footer-extra",{},void 0,!0)])])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-5eb0b917"]]),aF=["data-testid"],sF={class:"group-icon-wrapper"},lF={class:"group-title-text"},cF=["data-testid"],uF=["data-testid"],Aw=Me(e.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(n,{emit:t}){const r=n,o=e.computed(()=>{switch(r.name){case fe.PluginGroup.FEATURED:return Re.PopularIcon;case fe.PluginGroup.AI:return Re.BotIcon;case fe.PluginGroup.ANALYTICS_AND_MONITORING:return Re.AnalyticsIcon;case fe.PluginGroup.AUTHENTICATION:return Re.LockIcon;case fe.PluginGroup.LOGGING:return Re.ServiceDocumentIcon;case fe.PluginGroup.MONETIZATION:return Re.MoneyIcon;case fe.PluginGroup.SECURITY:return Re.SecurityIcon;case fe.PluginGroup.SERVERLESS:return Re.RuntimeServerlessIcon;case fe.PluginGroup.TRAFFIC_CONTROL:return Re.TrafficIcon;case fe.PluginGroup.TRANSFORMATIONS:return Re.TransformationIcon;case fe.PluginGroup.DEPLOYMENT:return Re.DeployIcon;case fe.PluginGroup.CUSTOM_PLUGINS:return Re.CodeblockIcon;default:return null}}),i=t,{i18n:{t:a}}=st.useI18n(),s=e.ref(!1),c=e.computed(()=>r.showAllCard?r.plugins:!s.value&&r.plugins.length>9?r.plugins.slice(0,8):r.plugins),l=e.computed(()=>!r.showAllCard&&!s.value&&r.plugins.length>9);function u(){s.value=!0}const p=e.ref(!1),d=e.ref(null),f=g=>{p.value=!0,d.value={id:g.id,name:g.name,group:g.group,customPluginType:g.customPluginType}},m=g=>{var y,_,b;g&&(i("revalidate"),i("delete:success",{name:((y=d.value)==null?void 0:y.name)||"",group:(_=d.value)==null?void 0:_.group,customPluginType:(b=d.value)==null?void 0:b.customPluginType})),p.value=!1,d.value=null};return(g,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n.name?(e.openBlock(),e.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${n.name}-title`},[e.createElementVNode("div",sF,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{color:`var(--kui-color-text-decorative-purple, ${e.unref(Vh)})`},null,8,["color"]))]),e.createElementVNode("span",lF,e.toDisplayString(n.name),1)],8,aF)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${n.name}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,_=>(e.openBlock(),e.createBlock(iF,{key:`plugin-card-${_.id}`,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,plugin:_,onCustomPluginDelete:b=>f(_),onPluginClicked:b=>i("plugin-clicked",_)},e.createSlots({_:2},[_.gatewayVersion&&e.unref(hT)(e.unref(fe.GATEWAY_VERSION_TIMESTAMP_MAP)[_.gatewayVersion])?{name:"footer-extra",fn:e.withCtx(()=>[e.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${_.id}-new-badge`},e.toDisplayString(e.unref(a)("labels.new")),9,uF)]),key:"0"}:void 0]),1032,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:u},e.toDisplayString(e.unref(a)("plugins.select.show_all")),1)):e.createCommentVNode("",!0)],8,cF),p.value&&d.value?(e.openBlock(),e.createBlock(fc,{key:1,config:n.config,plugin:d.value,onClosed:m,onProceed:y[0]||(y[0]=_=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f9a9a47c"]]),dF={class:"plugin-select-grid"},fF={class:"empty-state-title"},pF={class:"empty-state-description"},mF={key:1},hF=Me(e.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","delete:success"],setup(n,{emit:t}){const r=Bl.concat(Tl),o=t,{i18n:{t:i}}=st.useI18n(),a=s=>{o("plugin-clicked",s)};return(s,c)=>{var u;const l=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",dF,[Object.keys(n.pluginList||[]).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",fF,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",pF,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),p=>{var d;return e.openBlock(),e.createElementBlock(e.Fragment,null,[(d=n.pluginList)!=null&&d[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(Aw,{"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:p,plugins:n.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=f=>o("delete:success",f)),onPluginClicked:c[1]||(c[1]=f=>a(f))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","plugins"])])):e.createCommentVNode("",!0)],64)}),256)),(u=n.pluginList)!=null&&u["Query Result"]?(e.openBlock(),e.createElementBlock("div",mF,[e.createVNode(Aw,{"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,plugins:n.pluginList["Query Result"]||[],"show-all-card":"","onDelete:success":c[2]||(c[2]=p=>o("delete:success",p)),onPluginClicked:c[3]||(c[3]=p=>a(p))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugins"])])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-e3bf3819"]]),gF={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},yF=["title"],_F=["title"],bF={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},wF={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},kF=Me(e.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["revalidate","delete:success"],setup(n,{emit:t}){const r=t,o=n,{i18n:{t:i}}=st.useI18n(),a=S=>S.customPluginType==="cloned"&&S.clonedFromRef?i("plugins.select.cloned_from_badge",{link:S.clonedFromRef}):S.customPluginType==="streaming"?i("plugins.select.streamed_custom_badge"):S.customPluginType?i("plugins.select.installed_custom_badge"):"",s=e.computed(()=>k.value.some(S=>C(S.plugin))),c=e.computed(()=>{const S=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return s.value&&S.push({key:"more-actions",hideLabel:!0}),S}),l=e.computed(()=>{if(!o.pluginList)return[];const S=Object.values(o.pluginList).flat();return Array.from(new Map(S.map(O=>[O.id,O])).values()).map(O=>({id:O.id,name:O.name,description:O.description,badge:a(O),plugin:O}))}),u=e.ref(0),p=e.ref(10),d=e.ref(1),f=e.ref(l.value),m=e.ref(!1),g=e.ref(null),y=S=>S.customPluginType==="cloned"&&S.clonedFromRef?S.clonedFromRef:S.id,_=S=>(S==null?void 0:S.customPluginType)==="cloned",b=S=>!(S!=null&&S.customPluginType)||o.config.app==="kongManager"&&S.customPluginType==="schema"?!1:_(S)?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin,w=S=>!(S!=null&&S.customPluginType)||typeof o.config.getCustomEditRoute!="function"||o.config.app==="kongManager"&&S.customPluginType==="schema"?!1:_(S)?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin,C=S=>b(S)||w(S),x=S=>{m.value=!0,g.value={id:S.id,name:S.name,group:S.group,customPluginType:S.customPluginType}},E=S=>{var A,O,P;S&&(r("revalidate"),r("delete:success",{name:((A=g.value)==null?void 0:A.name)||"",group:(O=g.value)==null?void 0:O.group,customPluginType:(P=g.value)==null?void 0:P.customPluginType})),m.value=!1,g.value=null},k=e.computed(()=>{const S=f.value.length,A=Math.max(1,Math.ceil(S/p.value)),P=(Math.min(d.value,A)-1)*p.value;return f.value.slice(P,P+p.value)});e.watch(l,()=>{f.value=[...l.value],d.value=1,u.value++});const N=({page:S})=>{d.value=S},B=({pageSize:S})=>{p.value=S},U=S=>{const{sortColumnKey:A,sortColumnOrder:O}=S;A==="name"&&(f.value=[...f.value].sort((P,R)=>{const z=(P[A]||"").toLowerCase(),X=(R[A]||"").toLowerCase();return z<X?O==="asc"?-1:1:z>X?O==="asc"?1:-1:0}))};return(S,A)=>{const O=e.resolveComponent("KBadge"),P=e.resolveComponent("KButton"),R=e.resolveComponent("KDropdownItem"),z=e.resolveComponent("KDropdown"),X=e.resolveComponent("KTableView"),Z=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Z,{"data-testid":"plugin-catalog-list-view-card"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(X,{key:u.value,class:"plugin-catalog-table","client-sort":"",data:k.value,"data-testid":"plugin-catalog-list-view-table",headers:c.value,"pagination-attributes":{totalCount:l.value.length,currentPage:d.value,initialPageSize:p.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:N,onPageSizeChange:B,onSort:U},{name:e.withCtx(({row:K})=>[e.createElementVNode("span",gF,[e.createVNode(e.unref(Er.PluginIcon),{"data-testid":`plugin-catalog-list-view-${K.plugin.id}-icon`,name:y(K.plugin),size:20},null,8,["data-testid","name"]),e.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:K.name},e.toDisplayString(K.name),9,yF),K.badge?(e.openBlock(),e.createBlock(O,{key:0,appearance:"info",class:"plugin-name-badge","data-testid":"plugin-catalog-list-view-custom-badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(K.badge),1)]),_:2},1024)):e.createCommentVNode("",!0)])]),description:e.withCtx(({row:K})=>[e.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:K.description},e.toDisplayString(K.description),9,_F)]),action:e.withCtx(({row:K})=>[e.createElementVNode("div",bF,[e.createVNode(P,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:o.config.getCreateRoute(K.id)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":e.withCtx(({row:K})=>[C(K.plugin)?(e.openBlock(),e.createElementBlock("div",wF,[e.createVNode(z,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:e.withCtx(()=>{var W,$;return[w(K.plugin)?(e.openBlock(),e.createBlock(R,{key:0,"data-testid":"edit-plugin-schema",item:{label:e.unref(i)("actions.edit"),to:($=(W=n.config).getCustomEditRoute)==null?void 0:$.call(W,K.plugin.name,K.plugin.customPluginType)}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.edit")),1)]),_:1},8,["item"])):e.createCommentVNode("",!0),b(K.plugin)?(e.openBlock(),e.createBlock(R,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":w(K.plugin),onClick:()=>x(K.plugin)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.delete")),1)]),_:1},8,["has-divider","onClick"])):e.createCommentVNode("",!0)]}),default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])]),_:2},1024)])):e.createCommentVNode("",!0)]),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),m.value&&g.value?(e.openBlock(),e.createBlock(fc,{key:0,config:n.config,plugin:g.value,onClosed:E,onProceed:A[0]||(A[0]=K=>E(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-986d34db"]]),CF={class:"plugin-catalog","data-testid":"plugin-catalog"},EF={class:"plugin-filter","data-testid":"plugin-filter"},NF={class:"plugin-filter-title"},SF={class:"featured-title"},xF={class:"plugin-featured-filter"},AF=["data-testid"],vF={class:"group-title"},IF={class:"plugin-type-filter"},BF=["data-testid"],TF={class:"plugins-container"},OF={class:"plugins-filter-input-container"},PF={class:"icon-container"},VF={key:0},$F={key:3,"aria-live":"polite",class:"plugins-results-container"},RF=Me(e.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{default:"none"},availableOnServer:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Function,default:async()=>!0},canReadCustomPlugin:{type:Function,default:async()=>!0},canEditCustomPlugin:{type:Function,default:async()=>!0},canDeleteClonedPlugin:{},canReadClonedPlugin:{type:Function,default:async()=>!0},canEditClonedPlugin:{}},emits:["loading","plugin-clicked","delete-custom:success"],setup(n,{emit:t}){var _e;const r=t,{i18n:{t:o}}=st.useI18n(),{pluginMetaData:i}=st.usePluginMetaData(),{getMessageFromError:a}=Ie.useErrors(),{sortAlpha:s,objectsAreEqual:c}=Ie.useHelpers(),l=n,{axiosInstance:u}=Ie.useAxios((_e=l.config)==null?void 0:_e.axiosRequestConfig),p=e.useTemplateRef("filter-input"),d=e.ref(""),f=e.ref(!1),m=e.ref(!1),g=e.ref(Object.fromEntries(Bl.concat(Tl).map(ye=>[ye,!1]))),y=e.ref(!0),_=e.ref(!1),b=e.ref(""),w=e.ref(""),C=e.ref([]),x=e.ref([]),E=e.ref([]),k=e.ref({}),N=e.ref([]),B=e.ref(!1),U=e.ref(null),S=e.ref(!1),A=e.computed(()=>B.value?Re.GridIcon:Re.ListIcon),O=e.inject(dr.KM_2485_CLONED_PLUGINS,!1),P=e.computed(()=>e.unref(O)),R=ye=>ye==="none"||ye==="disabled"?new Set:new Set(Array.isArray(ye)?ye:[ye]),z=e.computed(()=>R(l.customPluginSupport)),X=e.computed(()=>[...z.value].sort().join("|")),Z=e.computed(()=>z.value.has("streaming")),K=e.computed(()=>P.value&&z.value.has("cloned")),W=ye=>zo.isAxiosError(ye)&&ye.code==="ERR_CANCELED",$=ye=>a(ye).toLowerCase().includes("requires a license"),ee=e.computed(()=>{var ae;let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].availablePlugins}`;if(l.config.app==="konnect")ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"");else if(l.config.app==="kongManager"&&((ae=l.config.gatewayInfo)==null?void 0:ae.edition)==="community")return`${l.config.apiBaseUrl}${et.select[l.config.app].availablePluginsForOss}`;return ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}),F=e.computed(()=>{if(Z.value){let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].streamingCustomPlugins}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}return null}),J=e.computed(()=>{if(K.value){let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].clonedPlugins}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}return null}),M=e.computed(()=>{if(l.config.entityType&&l.config.entityId){let ye=`${l.config.apiBaseUrl}${et.list[l.config.app].forEntity}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"").replace(/{entityType}/gi,l.config.entityType||"").replace(/{entityId}/gi,l.config.entityId||"")}return""}),v=e.computed(()=>{var be;if(!k.value)return{};const ye=Object.entries(g.value).filter(([,xe])=>xe).map(([xe])=>xe);let ae={};ye.length===0&&(ae=k.value),ye.forEach(xe=>{k.value[xe]&&(ae[xe]=k.value[xe])});const te=d.value.toLowerCase();if(!te)return ae;const se=JSON.parse(JSON.stringify(ae));for(const xe in ae){const h=((be=ae[xe])==null?void 0:be.filter(T=>[T.name.toLowerCase(),T.id.toLowerCase()].some(Y=>mT(te,Y).length===te.length)))||[];h.length?se[xe]=h:delete se[xe]}const ue=Object.values(se).flat().filter(xe=>!!xe),Ee=Array.from(ue.reduce((xe,h)=>(xe.has(h.id)||xe.set(h.id,h),xe),new Map).values());return Ee.length?{"Query Result":Ee}:{}}),j=e.computed(()=>Object.keys(v.value).length>0),ie=e.computed(()=>Object.keys(k.value).length>0&&!j.value),re=()=>{Object.keys(g.value).forEach(ye=>{g.value[ye]=!1})},me=()=>{const ye=new Map(E.value.map(ue=>[ue.name,ue])),ae=new Set(x.value.map(ue=>ue.name)),te=new Set([...ae,...ye.keys()]),se=[...new Set([...Object.keys({...l.availableOnServer?{}:i}),...C.value,...te])].filter(ue=>{if(!l.config.entityType)return ue;const Ee=ye.has(ue)?ye.get(ue).ref:ue;return l.config.entityType==="services"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.SERVICE)||l.config.entityType==="routes"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.ROUTE)||l.config.entityType==="consumer_groups"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.CONSUMER_GROUP)||l.config.entityType==="consumers"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.CONSUMER)?!1:ue}).reduce((ue,Ee)=>{var oe;const be=i[Ee]&&i[Ee].name||Ee,xe=ye.get(Ee),h=ae.has(Ee),T={...i[Ee],id:Ee,name:be,available:C.value.includes(Ee)||!!xe||h,disabledMessage:"",group:((oe=i[Ee])==null?void 0:oe.group)||fe.PluginGroup.CUSTOM_PLUGINS};T.group===fe.PluginGroup.CUSTOM_PLUGINS&&(xe?(T.customPluginType="cloned",T.clonedFromRef=xe.ref):h?T.customPluginType="streaming":T.customPluginType="schema"),l.disabledPlugins&&(T.disabledMessage=l.disabledPlugins[Ee]);const G=T.group||o("plugins.select.misc_plugins");let Y=ue[G];return Y||(Y=[]),Y.push(T),Y.sort(s("name")),ue[G]=Y,ue},{});if(l.highlightedPluginIds&&l.highlightedPluginIds.length>0){const ue=new Set(Object.values(se).flat().map(be=>be==null?void 0:be.id)),Ee=l.highlightedPluginIds.flatMap(be=>{var h;const xe=i[be];return!xe||!ue.has(be)?[]:{...xe,id:be,name:xe.name||be,available:C.value.includes(be),disabledMessage:((h=l.disabledPlugins)==null?void 0:h[be])||"",group:xe.group||fe.PluginGroup.CUSTOM_PLUGINS}}).filter(Boolean);Ee.length>0&&(se[fe.PluginGroup.FEATURED]=Ee)}return se};e.watch(()=>l.disabledPlugins,(ye,ae)=>{!c(ye||{},ae||{})&&!y.value&&(k.value=me())}),e.watch(y,ye=>{r("loading",ye)});const he=e.ref(!1),le=e.ref(!1),ge=e.ref(!1),Oe=e.ref(!1),$e=e.ref(!1),Pe=e.ref(!1),qe=async()=>{try{const[ye,ae,te,se,ue,Ee]=await Promise.all([l.canEditCustomPlugin(),l.canDeleteCustomPlugin(),l.canReadCustomPlugin(),l.canEditClonedPlugin?l.canEditClonedPlugin():Promise.resolve(null),l.canDeleteClonedPlugin?l.canDeleteClonedPlugin():Promise.resolve(null),l.canReadClonedPlugin()]);he.value=ye,le.value=ae,ge.value=te,Oe.value=se??ye,$e.value=ue??ae,Pe.value=Ee}catch{he.value=!1,le.value=!1,ge.value=!1,Oe.value=!1,$e.value=!1,Pe.value=!1}},Ye=async ye=>{if(!M.value){N.value=[];return}try{const{data:{data:ae}}=await u.get(M.value,{signal:ye});ae!=null&&ae.length&&(N.value=ae.reduce((te,se)=>(se.name&&te.push(se.name),te),[]))}catch(ae){W(ae)||(N.value=[])}},tt=async ye=>{const ae=[];F.value&&ge.value&&ae.push(dc(u,F.value,ye).then(te=>{x.value=te}).catch(te=>{W(te)||w.value||(w.value=a(te)??o("plugins.select.tabs.custom.fetch_error"))})),J.value&&Pe.value&&ae.push(dc(u,J.value,ye).then(te=>{E.value=te}).catch(te=>{if(W(te))return;const se=$(te);(se||!w.value)&&(w.value=se?o("plugins.select.tabs.custom.license_required"):a(te)??o("plugins.select.tabs.custom.fetch_error"))})),ae.push(Ye(ye)),await Promise.allSettled(ae)},Ve=async()=>{var ae;(ae=U.value)==null||ae.abort();const ye=new AbortController;U.value=ye,y.value=!0,_.value=!1,b.value="",w.value="",C.value=[],x.value=[],E.value=[],N.value=[];try{const{data:te}=await u.get(ee.value,{signal:ye.signal});if(l.config.app==="konnect"){const{names:se}=te;C.value=se||[]}else if(l.config.app==="kongManager"){const{plugins:{available_on_server:se}}=te;C.value=se?Object.keys(se):[]}await tt(ye.signal),k.value=me()}catch(te){W(te)||(_.value=!0,b.value=a(te))}finally{U.value===ye&&!ye.signal.aborted&&(y.value=!1)}},ke=async({name:ye})=>{ye&&(r("delete-custom:success",ye),await Ve())};return e.onMounted(async()=>{var ye,ae;S.value=!0,(ae=(ye=p.value)==null?void 0:ye.input)==null||ae.focus(),await qe(),await Ve()}),e.watch(()=>{var ye;return[l.config.app==="konnect"?l.config.controlPlaneId:void 0,l.config.workspace,l.config.entityType,l.config.entityId,l.config.app==="kongManager"?(ye=l.config.gatewayInfo)==null?void 0:ye.edition:void 0,X.value,P.value]},async()=>{S.value&&(await qe(),await Ve())}),e.onBeforeUnmount(()=>{var ye;(ye=U.value)==null||ye.abort()}),(ye,ae)=>{const te=e.resolveComponent("KButton"),se=e.resolveComponent("KCheckbox"),ue=e.resolveComponent("KBadge"),Ee=e.resolveComponent("KCollapse"),be=e.resolveComponent("KInput"),xe=e.resolveComponent("KSkeletonBox"),h=e.resolveComponent("KSkeleton"),T=e.resolveComponent("KEmptyState"),G=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock("div",CF,[e.createElementVNode("div",EF,[e.createElementVNode("div",NF,[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.select.filter.title"))+" ",1),e.createVNode(te,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(g.value).some(Y=>Y),onClick:re},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),e.createVNode(Ee,{modelValue:f.value,"onUpdate:modelValue":ae[0]||(ae[0]=Y=>f.value=Y)},{title:e.withCtx(()=>[e.createElementVNode("div",SF,e.toDisplayString(e.unref(o)("plugins.select.filter.featured")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",xF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Bl),Y=>(e.openBlock(),e.createElementBlock("div",{key:Y,class:"plugin-filter-item","data-testid":`plugin-filter-item-${Y}`},[e.createVNode(se,{modelValue:g.value[Y],"onUpdate:modelValue":oe=>g.value[Y]=oe,label:Y},null,8,["modelValue","onUpdate:modelValue","label"]),e.createVNode(ue,{appearance:"neutral"},{default:e.withCtx(()=>{var oe,we;return[e.createTextVNode(e.toDisplayString(((we=(oe=k.value)==null?void 0:oe[Y])==null?void 0:we.length)||0),1)]}),_:2},1024)],8,AF))),128))])]),_:1},8,["modelValue"]),e.createVNode(Ee,{modelValue:m.value,"onUpdate:modelValue":ae[1]||(ae[1]=Y=>m.value=Y)},{title:e.withCtx(()=>[e.createElementVNode("div",vF,e.toDisplayString(e.unref(o)("plugins.select.filter.type")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",IF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Tl),Y=>(e.openBlock(),e.createElementBlock("div",{key:Y,class:"plugin-filter-item","data-testid":`plugin-filter-item-${Y}`},[e.createVNode(se,{modelValue:g.value[Y],"onUpdate:modelValue":oe=>g.value[Y]=oe,"data-testid":`plugin-filter-checkbox-${Y}`,label:Y},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),e.createVNode(ue,{appearance:"neutral","data-testid":`plugin-filter-count-${Y}`},{default:e.withCtx(()=>{var oe,we;return[e.createTextVNode(e.toDisplayString(((we=(oe=k.value)==null?void 0:oe[Y])==null?void 0:we.length)||0),1)]}),_:2},1032,["data-testid"])],8,BF))),128))])]),_:1},8,["modelValue"])]),e.createElementVNode("div",TF,[e.createElementVNode("div",OF,[e.createVNode(be,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":ae[2]||(ae[2]=Y=>d.value=Y),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:e.unref(o)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),e.createElementVNode("div",PF,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(A.value),{class:"plugins-filter-icon",color:`var(--kui-icon-color-primary, ${e.unref(m1)})`,onClick:ae[3]||(ae[3]=Y=>B.value=!B.value)},null,8,["color"]))])]),y.value?(e.openBlock(),e.createElementBlock("section",VF,[e.createVNode(xe,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(h,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):_.value?(e.openBlock(),e.createBlock(T,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(b.value),1)]),_:1})):ie.value&&d.value?(e.openBlock(),e.createBlock(T,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(o)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",$F,[w.value?(e.openBlock(),e.createBlock(G,{key:0,appearance:"warning",class:"custom-plugins-warning",message:w.value},null,8,["message"])):e.createCommentVNode("",!0),B.value?(e.openBlock(),e.createBlock(kF,{key:1,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":le.value,"can-edit-cloned-plugin":Oe.value,"can-edit-custom-plugin":he.value,config:n.config,"plugin-list":v.value,"onDelete:success":ke},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"])):(e.openBlock(),e.createBlock(hF,{key:2,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":le.value,"can-edit-cloned-plugin":Oe.value,"can-edit-custom-plugin":he.value,config:n.config,"plugin-list":v.value,"onDelete:success":ke,onPluginClicked:ae[4]||(ae[4]=Y=>ye.$emit("plugin-clicked",Y))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-6f778468"]]),LF={key:1,class:"datakit-config-card-canvas"},DF={class:"config-card-details-label","data-testid":"datakit-configuration-label"},MF={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},jF={class:"canvas-wrapper"},FF=Me(e.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(n){const t=e.computed(()=>{var r;return sw.safeParse((r=n.pluginData)==null?void 0:r.config).success});return Xd(n.pluginData),(r,o)=>{const i=e.resolveComponent("KLabel");return t.value?(e.openBlock(),e.createElementBlock("div",LF,[e.createElementVNode("div",DF,[e.createVNode(i,null,{default:e.withCtx(()=>[...o[0]||(o[0]=[e.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),e.createElementVNode("div",MF,[e.createElementVNode("div",jF,[e.createVNode(Yf,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(e.openBlock(),e.createBlock(e.unref(Ie.ConfigCardItem),{key:0,item:n.item},null,8,["item"]))}}}),[["__scopeId","data-v-9a3ef1ac"]]),UF={class:"kong-ui-entity-plugin-config-card"},KF={class:"name-cell-wrapper"},qF={class:"info-name"},GF={key:0},HF={key:0},zF={key:0},WF={key:0},YF={key:0},cp="config",JF=Me(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string"||!n.entityId||!n.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:null},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(n,{emit:t}){var x;const r=t,o=n,{i18n:{t:i}}=st.useI18n(),a=st.usePluginMetaData(),{setFieldType:s}=st.usePluginHelpers(),{getPropValue:c}=Ie.useHelpers(),l=e.computed(()=>{var k;let E=(k=et.item[o.config.app])==null?void 0:k[o.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,o.scopedEntityType).replace(/{entityId}/gi,o.scopedEntityId??"").concat(o.expandPartial?"?expand_partials=true":"");if(o.config.app==="konnect"){const N=o.expandPartial?"&":"?";E=E.concat(`${N}__ui_data=true`)}return E}),u=e.computed(()=>{var N,B;const E={},k=((N=b.value)==null?void 0:N.fields)||[];for(let U=0;U<k.length;U++){const S=b.value.fields[U],A=(B=Object.keys(S))==null?void 0:B[0];s(E,A,S[A])}return{...E,instance_name:{section:Ie.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:Ie.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:Ie.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:Ie.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:Ie.ConfigurationSchemaSection.Basic,order:6},protocols:{type:Ie.ConfigurationSchemaType.BadgeTag,section:Ie.ConfigurationSchemaSection.Basic,order:7}}}),p=e.computed(()=>{var k,N,B;if(!((k=b.value)!=null&&k.fields))return[];const E=(N=b.value.fields)==null?void 0:N.find(U=>{var A;return((A=Object.keys(U))==null?void 0:A[0])===cp});return((B=E==null?void 0:E[cp])==null?void 0:B.fields)||[]}),d=e.computed(()=>{var k,N;const E={};if(!p.value)return E;for(let B=0;B<((k=p.value)==null?void 0:k.length);B++){const U=p.value[B],S=(N=Object.keys(U))==null?void 0:N[0],A=U[S];A.required&&(E[S]={order:1}),s(E,S,A)}return E}),f=E=>{var N;const k=(N=a.pluginMetaData[o.config.pluginType])==null?void 0:N.scope;return k?Object.fromEntries(Object.entries(E).filter(([B,U])=>U?!0:!(B==="service"&&!k.includes(fe.PluginScope.SERVICE)||B==="route"&&!k.includes(fe.PluginScope.ROUTE)||B==="consumer"&&!k.includes(fe.PluginScope.CONSUMER)||B==="consumer_group"&&!k.includes(fe.PluginScope.CONSUMER_GROUP)))):E},m=E=>Wr(E,"__ui_data"),{getMessageFromError:g}=Ie.useErrors(),{axiosInstance:y}=Ie.useAxios((x=o.config)==null?void 0:x.axiosRequestConfig),_=e.computed(()=>{var k,N;let E=`${o.config.apiBaseUrl}${et.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"&&(E=E.replace(/{controlPlaneId}/gi,((k=o.config)==null?void 0:k.controlPlaneId)||"")),E.replace(/\/{workspace}/gi,(N=o.config)!=null&&N.workspace?`/${o.config.workspace}`:"").replace(/{plugin}/gi,o.config.pluginType)}),b=e.ref({});Ie.useSchemaProvider(b);const w=e.ref(!1),C=e.ref("");return e.onBeforeMount(async()=>{w.value=!0;try{const{data:E}=await y.get(_.value);b.value=E}catch(E){C.value=g(E),r("error:fetch-schema",E)}finally{w.value=!1}}),(E,k)=>{const N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState"),U=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",UF,[w.value?(e.openBlock(),e.createBlock(N,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):C.value?(e.openBlock(),e.createBlock(B,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(C.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(Ie.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:n.config,"config-card-doc":n.configCardDoc,"config-schema":u.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"fetch-url":l.value,"hide-title":n.hideTitle,"plugin-config-key":cp,"plugin-config-schema":d.value,"record-resolver":f,"onFetch:error":k[0]||(k[0]=S=>E.$emit("fetch:error",S)),"onFetch:success":k[1]||(k[1]=S=>E.$emit("fetch:success",S)),onLoading:k[2]||(k[2]=S=>E.$emit("loading",S))},e.createSlots({name:e.withCtx(S=>[e.createElementVNode("div",KF,[e.createVNode(e.unref(Er.PluginIcon),{class:"plugin-icon",name:e.unref(c)("rowValue",S),size:24},null,8,["name"]),e.createElementVNode("span",qF,e.toDisplayString(e.unref(a).getDisplayName(e.unref(c)("rowValue",S))),1)])]),consumer:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"consumer-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",GF,"–"))]),route:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"route-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",HF,"–"))]),service:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"service-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",zF,"–"))]),consumer_group:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",WF,"–"))]),partials:e.withCtx(S=>{var A,O,P,R,z,X,Z,K,W;return[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:(O=(A=e.unref(c)("rowValue",S))==null?void 0:A[0])==null?void 0:O.id,value:((R=(P=e.unref(c)("rowValue",S))==null?void 0:P[0])==null?void 0:R.id)+((X=(z=e.unref(c)("rowValue",S))==null?void 0:z[0])!=null&&X.name?"/"+((K=(Z=e.unref(c)("rowValue",S))==null?void 0:Z[0])==null?void 0:K.name):""),type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var $,ee;return E.$emit("navigation-click",(ee=($=e.unref(c)("rowValue",S))==null?void 0:$[0])==null?void 0:ee.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"partial-copy-uuid",text:(W=e.unref(c)("rowValue",S))==null?void 0:W[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",YF,"–"))]}),_:2},[n.config.pluginType==="datakit"&&n.config.app==="konnect"?{name:"config-card-item-nodes",fn:e.withCtx(S=>[e.createVNode(FF,{item:S.row,"plugin-data":S.record},null,8,["item","plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-03dcf2b4"]]),{usePluginMetaData:XF,useProvideExperimentalFreeForms:ZF}=st;function QF(n,t=!1){const r=n.length;let o=0,i="",a=0,s=16,c=0,l=0,u=0,p=0,d=0;function f(C,x){let E=0,k=0;for(;E<C;){let N=n.charCodeAt(o);if(N>=48&&N<=57)k=k*16+N-48;else if(N>=65&&N<=70)k=k*16+N-65+10;else if(N>=97&&N<=102)k=k*16+N-97+10;else break;o++,E++}return E<C&&(k=-1),k}function m(C){o=C,i="",a=0,s=16,d=0}function g(){let C=o;if(n.charCodeAt(o)===48)o++;else for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;if(o<n.length&&n.charCodeAt(o)===46)if(o++,o<n.length&&Bi(n.charCodeAt(o)))for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;else return d=3,n.substring(C,o);let x=o;if(o<n.length&&(n.charCodeAt(o)===69||n.charCodeAt(o)===101))if(o++,(o<n.length&&n.charCodeAt(o)===43||n.charCodeAt(o)===45)&&o++,o<n.length&&Bi(n.charCodeAt(o))){for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;x=o}else d=3;return n.substring(C,x)}function y(){let C="",x=o;for(;;){if(o>=r){C+=n.substring(x,o),d=2;break}const E=n.charCodeAt(o);if(E===34){C+=n.substring(x,o),o++;break}if(E===92){if(C+=n.substring(x,o),o++,o>=r){d=2;break}switch(n.charCodeAt(o++)){case 34:C+='"';break;case 92:C+="\\";break;case 47:C+="/";break;case 98:C+="\b";break;case 102:C+="\f";break;case 110:C+=`
439
+ `)[0])||"Invalid YAML"}});const _=()=>{d.value=!0},b=()=>{d.value=!1,o("cancel")},w=()=>{o("remove")},C=()=>{_(),s.value.value||(s.value.value=i("cache"),s.value.value.strategy="memory")},x=()=>{d.value=!1,o("update",a)},E=()=>{var N,B;g.value==="memory"&&((N=a.cache)!=null&&N.partial_id)&&((B=a.cache)==null||delete B.partial_id)};async function k({codeElement:N,language:B,code:U}){N.innerHTML=await zC.codeToHtml(U,{lang:B,theme:"catppuccin-mocha",structure:"inline"})}return(N,B)=>{const U=e.resolveComponent("KButton"),S=e.resolveComponent("KDropdownItem"),A=e.resolveComponent("KDropdown"),O=e.resolveComponent("KLabel"),P=e.resolveComponent("KCodeBlock"),R=e.resolveComponent("KModal");return e.openBlock(),e.createElementBlock("div",aR,[e.createElementVNode("h3",sR,e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),n.strategy?(e.openBlock(),e.createElementBlock("div",lR,[e.createElementVNode("div",cR,[e.createVNode(e.unref(Re.DatabaseIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"]),e.createElementVNode("div",uR,e.toDisplayString(n.strategy),1)]),e.createVNode(A,null,{items:e.withCtx(()=>[e.createVNode(S,{onClick:_},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),e.createVNode(S,{danger:"",onClick:w},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(U,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{color:`var(--kui-color-text, ${e.unref(od)})`},null,8,["color"])]),_:1})]),_:1})])):(e.openBlock(),e.createBlock(U,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),e.createVNode(R,{"action-button-disabled":!m.value,"action-button-text":e.unref(f)("actions.save"),"max-width":"640px",title:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:d.value,onCancel:b,onProceed:x},{default:e.withCtx(()=>{var z,X;return[e.createElementVNode("div",dR,[e.createVNode(Jf,{items:[{label:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":E},null,8,["items"]),g.value==="memory"?(e.openBlock(),e.createBlock(it,{key:0,name:"memory.dictionary_name"})):e.createCommentVNode("",!0),g.value==="redis"&&l.value?(e.openBlock(),e.createElementBlock("div",fR,[e.createVNode(O,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),e.createVNode(e.unref(Bh.RedisConfigurationSelector),{"model-value":(z=e.unref(a).cache)==null?void 0:z.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":B[0]||(B[0]=Z=>e.unref(a).cache.partial_id=Z)},null,8,["model-value"])])):e.createCommentVNode("",!0),g.value==="redis"&&l.value&&!((X=e.unref(a).cache)!=null&&X.partial_id)&&y.value?(e.openBlock(),e.createElementBlock("div",pR,[e.createElementVNode("div",null,e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),e.createVNode(P,{id:"dk-cache-redis-configuration",code:y.value,language:"yaml",theme:"dark",onCodeBlockRender:k},null,8,["code"])])):e.createCommentVNode("",!0),g.value==="redis"&&!l.value?(e.openBlock(),e.createElementBlock("div",mR,[e.createVNode(O,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config")),1)]),_:1}),e.createVNode(e.unref(ua.MonacoEditor),{modelValue:u.value,"onUpdate:modelValue":B[1]||(B[1]=Z=>u.value=Z),appearance:"standalone",class:"redis-editor",language:"yaml",theme:"light"},null,8,["modelValue"]),p.value?(e.openBlock(),e.createElementBlock("p",hR,e.toDisplayString(p.value),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-6b125ed7"]]),yR={class:"dk-resources-panel"},_R=Me(e.defineComponent({__name:"ResourcesPanel",setup(n){const t=nR(),r=e.ref(0),{addVault:o,removeVault:i,updateVault:a,renameVault:s,formData:c}=z$();function l(y,_,b){b&&b!==y&&s(b,y,!1),a(y,_)}const{state:u,commit:p}=Pt(),d=e.computed(()=>({cache:u.value.cacheConfig}));function f(y){u.value.cacheConfig=y.cache,p()}function m(){u.value.cacheConfig=void 0,p()}function g(){r.value++}return(y,_)=>(e.openBlock(),e.createElementBlock("div",yR,[e.createVNode(Jt,{data:e.unref(c),schema:e.unref(t)},{default:e.withCtx(()=>[e.createVNode(tR,{name:"vault",onAdd:e.unref(o),onRemove:e.unref(i),onUpdate:l},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),_[0]||(_[0]=e.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(e.openBlock(),e.createBlock(Jt,{key:`${r.value}`,data:d.value,schema:e.unref(t)},{default:e.withCtx(()=>{var b;return[e.createVNode(gR,{strategy:(b=d.value.cache)==null?void 0:b.strategy,onCancel:g,onRemove:m,onUpdate:f},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-9093c001"]]),bR={class:"header"},wR={class:"title"},kR={class:"body"},CR={class:"panel"},ER=Me(e.defineComponent({__name:"SidePanel",setup(n){const{t}=jt.createI18n("en-us",Yt),{sidePanelExpanded:r}=ac(),{propertiesPanelOpen:o,selectedNode:i}=Pt(),a=e.ref("nodes");function s(){o.value=!1}e.watch(i,l=>{l||s()});const c=e.ref(!1);return e.onMounted(()=>{c.value=!0}),(l,u)=>{const p=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["side-panel",{expanded:e.unref(r),inited:c.value}])},[e.createElementVNode("header",bR,[e.createElementVNode("h2",wR,e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.name")),1)]),e.createElementVNode("div",kR,[e.createElementVNode("div",CR,[e.createVNode(p,{modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=d=>a.value=d),options:[{label:e.unref(t)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:e.unref(t)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),a.value==="nodes"?(e.openBlock(),e.createBlock(H$,{key:0,class:"node-panel","hide-title":""})):e.createCommentVNode("",!0),a.value==="resources"?(e.openBlock(),e.createBlock(_R,{key:1})):e.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-9e854e60"]]),NR=e.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(n){return(t,r)=>(e.openBlock(),e.createBlock(Dt,{items:e.unref(nf)([...e.unref(Ny)]),name:n.name},null,8,["items","name"]))}});function SR(n,t){const r=[],o=(i,a)=>{typeof a=="string"&&r.push({nodeName:n.name,path:["nodes",t,...i],value:a})};if("input"in n&&n.input!=null&&o(["input"],n.input),"inputs"in n&&n.inputs&&typeof n.inputs=="object")for(const[i,a]of Object.entries(n.inputs))a!=null&&o(["inputs",i],a);if("output"in n&&n.output!=null&&o(["output"],n.output),"outputs"in n&&n.outputs&&typeof n.outputs=="object")for(const[i,a]of Object.entries(n.outputs))a!=null&&o(["outputs",i],a);return r}function xR(n){const t=n.path[2];return t==="output"||t==="outputs"}function zb(n){if(!n)return!1;for(const t of Object.values(n))if(t!=null)return!0;return!1}function Wb(n,t){const r=n.input!==void 0&&n.input!==null,o=zb(n.inputs);r&&o&&t.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=n.output!==void 0&&n.output!==null,a=zb(n.outputs);i&&a&&t.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function Yb(n,t,r){if(!n.nodes)return;const o=n.nodes.map(l=>l.name),i=new Set;o.forEach((l,u)=>{i.has(l)&&r.addIssue({code:"custom",message:`Duplicate node name: "${l}"`,path:["nodes",u,"name"]}),i.add(l)});const a=new Set([...t,...o]),s=new Map,c=new Map;n.nodes.forEach((l,u)=>{for(const p of SR(l,u)){const d=p.value.split(".",1)[0];if(a.has(d)||r.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${p.value}"`,path:p.path}),xR(p)){const f=`${p.nodeName}->${d}`;c.has(f)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${p.nodeName}" outputs to "${d}" and "${d}" inputs from "${p.nodeName}". Specify it on one side only.`,path:p.path}):s.set(f,s.get(f)??p.path)}else{const f=`${d}->${p.nodeName}`;s.has(f)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${d}" outputs to "${p.nodeName}" and "${p.nodeName}" inputs from "${d}". Specify it on one side only.`,path:p.path}):c.set(f,c.get(f)??p.path)}}})}const AR=Q.z.enum(Cy),vR=Q.z.enum(ei),Jb=n=>ei.includes(n),Xf=Q.z.enum(Ey),Xb=Xf.options;Q.z.union([Xf,AR]);const IR=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,sc=Q.z.string().min(1).max(255).regex(IR,"Invalid node name (snake_case / kebab-case only)").refine(n=>!Jb(n),"Name clashes with reserved implicit node").brand(),Zb=Q.z.union([vR,sc]),BR=Q.z.string().min(1).brand(),TR=["then","else"];Q.z.enum(TR);const ct=Q.z.string().min(1).max(255).refine(n=>{if(Zb.safeParse(n).success)return!0;const t=n.match(/^([^.]+)\.([^.]+)$/);if(!t)return!1;const[,r,o]=t;return Zb.safeParse(r).success&&BR.safeParse(o).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),OR=Q.z.object({body:ct,headers:ct,http_proxy:ct,https_proxy:ct,proxy_auth_password:ct,proxy_auth_username:ct,query:ct,url:ct}).partial().strict(),PR=Q.z.object({headers:ct,body:ct}).partial().strict(),VR=Q.z.object({data:ct,key:ct,ttl:ct}).partial().strict(),$R=Q.z.object({claims:ct,key:ct}).partial().strict(),RR=Q.z.object({key:ct,token:ct}).partial().strict(),Qb=Q.z.enum(Ny),ew=Q.z.enum(Md),Fn=Q.z.object({type:Q.z.string(),name:sc,input:ct,inputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish(),output:ct,outputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish()}).loose().superRefine((n,t)=>{Wb(n,t)}),LR=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((n,t)=>{const r=n.type,o=n.name;(typeof o!="string"||o.length===0||o.includes("."))&&t.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),Xb.includes(r)||t.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${Xb.join(", ")}`})}),DR=Fn.safeExtend({type:Q.z.literal("call"),method:Qb.default("GET").nullish(),ssl_server_name:Q.z.string().nullish(),ssl_verify:Q.z.boolean().default(!0).nullish(),timeout:Q.z.number().int().min(0).max(2147483646).nullish(),url:Q.z.url().nullish(),inputs:OR.nullish(),outputs:Q.z.object({body:ct,headers:ct,raw_body:ct,status:ct}).partial().nullish()}).strict(),MR=Fn.safeExtend({type:Q.z.literal("exit"),status:Q.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:Q.z.boolean().nullish(),inputs:PR.nullish(),output:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),jR=Fn.safeExtend({type:Q.z.literal("jq"),jq:Q.z.string().min(1).max(10240),outputs:Q.z.never().nullish()}).strict(),FR=Fn.safeExtend({type:Q.z.literal("xml_to_json"),recognize_type:Q.z.boolean().nullish().default(!0),attributes_block_name:Q.z.string().min(1).max(32).nullish(),attributes_name_prefix:Q.z.string().min(1).max(32).nullish(),text_block_name:Q.z.string().min(1).max(32).nullish().default("#text"),text_as_property:Q.z.boolean().nullish().default(!1),xpath:Q.z.string().min(1).max(256).nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict().superRefine((n,t)=>{!n.attributes_block_name&&!n.attributes_name_prefix&&(t.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),t.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),UR=Fn.safeExtend({type:Q.z.literal("json_to_xml"),attributes_block_name:Q.z.string().min(1).max(32).nullish(),attributes_name_prefix:Q.z.string().min(1).max(32).nullish(),root_element_name:Q.z.string().min(1).max(64).nullish(),text_block_name:Q.z.string().min(1).max(32).nullish().default("#text"),inputs:Q.z.record(Q.z.string().min(1).max(255),ct).nullish(),outputs:Q.z.never().nullish()}).strict().superRefine((n,t)=>{!n.attributes_block_name&&!n.attributes_name_prefix&&(t.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),t.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),KR=Fn.safeExtend({type:Q.z.literal("jwt_decode"),inputs:Q.z.never().nullish(),outputs:Q.z.object({header:ct,payload:ct,signature:ct}).partial().nullish()}).strict(),qR=Fn.safeExtend({type:Q.z.literal("jwt_sign"),algorithm:ew,expires_in:Q.z.number().int().min(1).default(300).nullish(),inputs:$R.nullish(),kid:Q.z.string().nullish(),not_before:Q.z.number().int().min(0).default(0).nullish(),outputs:Q.z.object({claims:ct,header:ct,token:ct}).partial().nullish(),static_claims:Q.z.record(Q.z.string(),Q.z.string()).default({}).nullish(),typ:Q.z.string().default("JWT").nullish()}).strict(),GR=Fn.safeExtend({type:Q.z.literal("jwt_verify"),allowed_algorithms:Q.z.array(ew).default([]).nullish(),audiences:Q.z.array(Q.z.string()).default([]).nullish(),inputs:RR.nullish(),issuers:Q.z.array(Q.z.string()).default([]).nullish(),leeway:Q.z.number().int().min(0).default(0).nullish(),outputs:Q.z.object({claims:ct,header:ct}).partial().nullish(),required_claims:Q.z.array(Q.z.string()).default([]).nullish(),validate_exp:Q.z.boolean().default(!0).nullish(),validate_nbf:Q.z.boolean().default(!0).nullish()}).strict(),HR=Fn.safeExtend({type:Q.z.literal("property"),content_type:Q.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Q.z.string().min(1).max(255),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),zR=Fn.safeExtend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()),input:Q.z.never().nullish(),inputs:Q.z.never().nullish()}).strict(),WR=Fn.safeExtend({type:Q.z.literal("cache"),bypass_on_error:Q.z.boolean().nullish(),inputs:VR.nullish(),outputs:Q.z.object({data:ct,hit:ct,miss:ct,stored:ct}).partial().nullish(),ttl:Q.z.number().int().gt(0).nullish()}).strict(),YR=Fn.safeExtend({type:Q.z.literal("branch"),then:Q.z.array(sc).min(1).max(64).nullish(),else:Q.z.array(sc).min(1).max(64).nullish()}).strict(),JR=LR.pipe(Q.z.discriminatedUnion("type",[DR,MR,jR,FR,UR,KR,qR,GR,HR,zR,WR,YR])),XR=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),ZR=Q.z.object({dictionary_name:Q.z.string().nullish().default("kong_db_cache")}),QR=Q.z.object({host:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),e2=Q.z.object({ip:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),t2=Q.z.object({host:Q.z.string().nullish().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:Q.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:Q.z.string().nullish(),password:Q.z.string().nullish(),sentinel_username:Q.z.string().nullish(),sentinel_password:Q.z.string().nullish(),database:Q.z.number().int().nullish().default(0),keepalive_pool_size:Q.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:Q.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:Q.z.string().nullish(),sentinel_role:Q.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:Q.z.array(QR).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:Q.z.array(e2).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:Q.z.boolean().default(!1).nullish(),ssl_verify:Q.z.boolean().default(!0).nullish(),server_name:Q.z.string().nullish(),cluster_max_redirections:Q.z.number().int().default(5).nullish(),connection_is_proxied:Q.z.boolean().default(!1).nullish(),cloud_authentication:Q.z.object({auth_provider:Q.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:Q.z.string().nullish(),aws_assume_role_arn:Q.z.string().nullish(),aws_cache_name:Q.z.string().nullish(),aws_is_serverless:Q.z.boolean().default(!0).nullish(),aws_region:Q.z.string().nullish(),aws_role_session_name:Q.z.string().nullish(),aws_secret_access_key:Q.z.string().nullish(),azure_client_id:Q.z.string().nullish(),azure_client_secret:Q.z.string().nullish(),azure_tenant_id:Q.z.string().nullish(),gcp_service_account_json:Q.z.string().nullish()}).nullish(),timeout:Q.z.number().int().nullish(),sentinel_addresses:Q.z.array(Q.z.string()).min(1).nullish(),cluster_addresses:Q.z.array(Q.z.string()).min(1).nullish()}).superRefine((n,t)=>{var l;const r=n.host!==void 0&&n.host!==null,o=n.port!==void 0&&n.port!==null;(r&&!o||!r&&o)&&t.addIssue({code:"custom",message:"host and port must be specified together",path:r?["port"]:["host"]});const i=!!n.sentinel_master,a=!!n.sentinel_role,s=!!((l=n.sentinel_nodes)!=null&&l.length),c=[i,a,s].filter(Boolean).length;c>0&&c<3&&t.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),n.connection_is_proxied===!0&&!r&&t.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),n2=Q.z.object({strategy:Q.z.enum(["memory","redis"]).nullish(),memory:ZR,redis:t2}),r2=Q.z.object({vault:XR.nullish(),cache:n2.nullish()});Q.z.array(Q.z.object({id:Q.z.string()})),Q.z.object({nodes:Q.z.array(JR).min(1,"At least one node is required").max(64),debug:Q.z.boolean().default(!1).nullish(),resources:r2.nullish()}).strict().superRefine((n,t)=>{Yb(n,ei,t)});const tw=Xf.options,Zf=Q.z.string().min(1).refine(n=>!n.includes("."),"Invalid node name").refine(n=>!Jb(n),"Node name conflicts with reserved implicit node"),yt=Q.z.string().refine(n=>{if(!n||/\s/.test(n))return!1;const t=n.indexOf(".");if(t===-1)return!0;const r=n.slice(0,t),o=n.slice(t+1);return r.length>0&&o.length>0},"Invalid connection"),nw=Q.z.object({body:yt.nullish(),headers:yt.nullish(),query:yt.nullish()}).partial().strict(),rw=Q.z.object({headers:yt.nullish(),body:yt.nullish()}).partial().strict(),ow=Q.z.object({data:yt.nullish(),key:yt.nullish(),ttl:yt.nullish()}).partial().strict(),iw=Q.z.object({claims:yt.nullish(),key:yt.nullish()}).partial().strict(),aw=Q.z.object({key:yt.nullish(),token:yt.nullish()}).partial().strict(),o2={call:nw,exit:rw,cache:ow,jwt_sign:iw,jwt_verify:aw};function i2(n){const t=o2[n];return t?Object.keys(t.shape):null}const Un=Q.z.object({type:Q.z.string(),name:Zf,input:yt.nullish(),inputs:Q.z.record(Q.z.string(),yt.nullish()).nullish(),output:yt.nullish(),outputs:Q.z.record(Q.z.string(),yt.nullish()).nullish()}).loose().superRefine((n,t)=>{Wb(n,t)}),a2=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((n,t)=>{const r=n.type,o=n.name;(typeof o!="string"||o.length===0||o.includes("."))&&t.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),tw.includes(r)||t.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${tw.join(", ")}`})}),s2=Un.safeExtend({type:Q.z.literal("call"),method:Qb.nullish(),ssl_server_name:Q.z.string().nullish(),ssl_verify:Q.z.boolean().nullish(),timeout:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),url:Q.z.string().nullish(),inputs:nw.nullish(),outputs:Q.z.object({body:yt.nullish(),headers:yt.nullish(),status:yt.nullish()}).partial().nullish()}).strict(),l2=Un.safeExtend({type:Q.z.literal("exit"),status:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),warn_headers_sent:Q.z.boolean().nullish(),inputs:rw.nullish(),output:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),c2=Un.safeExtend({type:Q.z.literal("jq"),jq:Q.z.string().nullish(),outputs:Q.z.never().nullish()}).strict(),u2=Un.safeExtend({type:Q.z.literal("xml_to_json"),recognize_type:Q.z.boolean().nullish(),attributes_block_name:Q.z.string().nullish(),attributes_name_prefix:Q.z.string().nullish(),text_block_name:Q.z.string().nullish(),text_as_property:Q.z.boolean().nullish(),xpath:Q.z.string().nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),d2=Un.safeExtend({type:Q.z.literal("json_to_xml"),attributes_block_name:Q.z.string().nullish(),attributes_name_prefix:Q.z.string().nullish(),root_element_name:Q.z.string().nullish(),text_block_name:Q.z.string().nullish(),inputs:Q.z.record(Q.z.string(),yt.nullish()).nullish(),outputs:Q.z.never().nullish()}).strict(),f2=Un.safeExtend({type:Q.z.literal("property"),content_type:Q.z.string().nullish(),property:Q.z.string().nullish(),inputs:Q.z.never().nullish(),outputs:Q.z.never().nullish()}).strict(),p2=Un.safeExtend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()).nullish(),input:Q.z.never().nullish(),inputs:Q.z.never().nullish()}).strict(),m2=Un.safeExtend({type:Q.z.literal("cache"),bypass_on_error:Q.z.boolean().nullish(),inputs:ow.nullish(),outputs:Q.z.object({data:yt.nullish(),hit:yt.nullish(),miss:yt.nullish(),stored:yt.nullish()}).partial().nullish(),ttl:Q.z.union([Q.z.number(),Q.z.string()]).nullish()}).strict(),h2=Un.safeExtend({type:Q.z.literal("jwt_decode"),inputs:Q.z.never().nullish(),outputs:Q.z.object({header:yt.nullish(),payload:yt.nullish(),signature:yt.nullish()}).partial().nullish()}).strict(),g2=Un.safeExtend({type:Q.z.literal("jwt_sign"),algorithm:Q.z.enum(Md).nullish(),expires_in:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),inputs:iw.nullish(),kid:Q.z.string().nullish(),not_before:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),outputs:Q.z.object({claims:yt.nullish(),header:yt.nullish(),token:yt.nullish()}).partial().nullish(),static_claims:Q.z.record(Q.z.string(),Q.z.string()).nullish(),typ:Q.z.string().nullish()}).strict(),y2=Un.safeExtend({type:Q.z.literal("jwt_verify"),allowed_algorithms:Q.z.array(Q.z.enum(Md)).nullish(),audiences:Q.z.array(Q.z.string()).nullish(),inputs:aw.nullish(),issuers:Q.z.array(Q.z.string()).nullish(),leeway:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),outputs:Q.z.object({claims:yt.nullish(),header:yt.nullish()}).partial().nullish(),required_claims:Q.z.array(Q.z.string()).nullish(),validate_exp:Q.z.boolean().nullish(),validate_nbf:Q.z.boolean().nullish()}).strict(),_2=Un.safeExtend({type:Q.z.literal("branch"),then:Q.z.array(Zf).nullish(),else:Q.z.array(Zf).nullish()}).strict(),b2=a2.pipe(Q.z.discriminatedUnion("type",[s2,l2,c2,u2,d2,h2,g2,y2,f2,p2,m2,_2])),w2=Q.z.record(Q.z.string(),Q.z.string()),k2=Q.z.object({dictionary_name:Q.z.string().nullish()}),C2=Q.z.object(),E2=Q.z.object({strategy:Q.z.enum(["memory","redis"]).nullish(),memory:k2.nullish(),redis:C2.nullish()}),N2=Q.z.object({vault:w2.nullish(),cache:E2.nullish()}),sw=Q.z.object({nodes:Q.z.array(b2).nullish(),debug:Q.z.boolean().nullish(),resources:N2.nullish()}).strict().superRefine((n,t)=>{!n||!Array.isArray(n.nodes)||Yb(n,ei,t)}).nullish(),lw=e.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(n){const{getSchema:t}=ft(),{i18n:r}=Xe(),o=e.computed(()=>{const i=t("inputs");if(!i)return[];const a=i.fields.map(c=>Object.keys(c)[0]);if(pn(n.nodeType))return a;const s=i2(n.nodeType);return s===null?a:s.length===0?[]:Pv(a,s)});return(i,a)=>(e.openBlock(),e.createBlock(Ft,{"as-child":"",name:n.name,"reset-label-path":"isolate"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,s=>(e.openBlock(),e.createBlock(Dt,{key:s,clearable:"","enable-filtering":"",items:n.items,name:s,placeholder:e.unref(r).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:c=>i.$emit("change:inputs",s,c?c.value:null)},e.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:e.withCtx(c=>[e.renderSlot(i.$slots,"item-label",e.mergeProps({ref_for:!0},c))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),S2=["data-testid"],x2={class:"dk-inputs-map-field-entry-body"},A2={class:"dk-inputs-map-field-entry-content"},v2=Me(e.defineComponent({__name:"InputsMapField",props:{name:{},items:{},fieldNameValidator:{},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field"],setup(n,{emit:t}){const r=n,o=t,{keys:i,addKey:a,removeKey:s,updateKey:c,getKeyName:l,field:u}=df(e.toRef(r,"name")),{value:p}=Gt(e.toRef(r,"name")),{i18n:{t:d}}=Xe(),f=e.useTemplateRef("root"),m=e.ref(null),g=e.ref({}),y=e.ref({});let _;const b=e.computed(()=>{var A;return(A=r.keyOrder)!=null&&A.length?[...i.value].sort((O,P)=>{const R=r.keyOrder.indexOf(O[1]),z=r.keyOrder.indexOf(P[1]);return(R===-1?1/0:R)-(z===-1?1/0:z)}):i.value});async function w(A,O="key"){var P;f.value&&(await e.nextTick(),(P=f.value.querySelector(`[data-${O}-input="${A}"]`))==null||P.focus())}function C(){const A=a();if(!A)return;y.value[A]="";const O=b.value.findIndex(([,P])=>!P);w(O===-1?b.value.length-1:O),m.value=A}function x(A,O){s(A),delete y.value[A],delete g.value[A],A===m.value&&(m.value=null),O.trim()!==""&&o("remove:field",O)}function E(A){_=y.value[A]??l(A)??""}function k(A,O){const P=O.trim();y.value[A]=P,B(A,P)}function N(A){var P;const O=y.value[A]??l(A)??"";if(B(A,O)){y.value[A]=_,c(A,_),delete g.value[A];return}if(A===m.value){if(O.trim()==="")return;c(A,O),o("add:field",O,((P=p==null?void 0:p.value)==null?void 0:P[A])??null),m.value=null}else c(A,O),o("rename:field",_,O);delete g.value[A],_=O}function B(A,O){delete g.value[A];const P=r.fieldNameValidator("input",_,O);if(P)return g.value[A]=P,P}function U(A){B(A,y.value[A]??l(A)??"")}function S(A,O){if(p!=null&&p.value&&(p.value[A]=O),A===m.value)return;const P=l(A);P&&o("change:inputs",P,O)}return e.watch(i,A=>{const O=new Set(A.map(([P])=>P));Object.keys(y.value).forEach(P=>{O.has(P)?y.value[P]=y.value[P]??l(P)??"":(delete y.value[P],delete g.value[P])}),A.forEach(([P,R])=>{y.value[P]=y.value[P]??R}),m.value&&!O.has(m.value)&&(m.value=null)},{immediate:!0}),e.watch(()=>r.keyOrder,()=>{if(!m.value)return;const A=b.value.findIndex(([O])=>O===m.value);A!==-1&&w(A)}),(A,O)=>{const P=e.resolveComponent("KAlert"),R=e.resolveComponent("KLabel"),z=e.resolveComponent("KInput"),X=e.resolveComponent("KSelect"),Z=e.resolveComponent("KButton");return e.unref(u).error?(e.openBlock(),e.createBlock(P,{key:0,appearance:"danger",message:e.unref(u).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-inputs-map-field"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,([K,W],$)=>{var ee;return e.openBlock(),e.createElementBlock("div",{key:K,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${e.unref(u).path.value}.${$}`},[e.createVNode(R,{for:`ff-kv-entry-key-${e.unref(u).path.value}.${$}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),e.createElementVNode("div",x2,[e.createElementVNode("div",A2,[e.createVNode(z,{id:`ff-kv-entry-key-${e.unref(u).path.value}.${$}`,class:"ff-kv-field-entry-key","data-key-input":$,"data-testid":`ff-key-${e.unref(u).path.value}.${$}`,error:!!g.value[K],"error-message":g.value[K],"model-value":y.value[K]??W,placeholder:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:F=>U(K),onChange:F=>N(K),onFocus:F=>E(K),"onUpdate:modelValue":F=>k(K,F)},null,8,["id","data-key-input","data-testid","error","error-message","model-value","placeholder","onBlur","onChange","onFocus","onUpdate:modelValue"]),e.createVNode(X,{class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${e.unref(u).path.value}.${$}`,"enable-filtering":"",items:n.items,label:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),"model-value":(ee=e.unref(p))==null?void 0:ee[K],placeholder:e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:F=>S(K,(F==null?void 0:F.value)??null)},e.createSlots({_:2},[A.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:F})=>[e.renderSlot(A.$slots,"item-label",e.mergeProps({ref_for:!0},F),void 0,!0)]),key:"0"}:void 0]),1032,["data-testid","items","label","model-value","placeholder","onChange"])]),e.createVNode(Z,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${e.unref(u).path.value}.${$}`,icon:"",onClick:F=>x(K,W)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,S2)}),128)),e.createVNode(Z,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(u).path.value}`,disabled:!!m.value,onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(d)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-43dcb370"]]),I2={class:"dk-source-item"},lc=Me(e.defineComponent({__name:"SourceItem",props:{item:{}},setup(n){return(t,r)=>(e.openBlock(),e.createElementBlock("span",I2,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(jd)(n.item.type).icon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["color","size"])),e.createTextVNode(" "+e.toDisplayString(n.item.label),1)]))}}),[["__scopeId","data-v-d9aa16eb"]]),B2={key:1,class:"dk-inputs-field-or"},In=Me(e.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(n,{emit:t}){const r=t,{getSchema:o}=ft(),{i18n:{t:i}}=Xe(),a=e.computed(()=>o("inputs")),s=e.computed(()=>a.value?a.value.type==="record"?lw:v2:null);function c(f){r("change:input",f?f.value:null)}function l(f,m){r("add:field",f,m)}function u(f,m){r("change:inputs",f,m)}function p(f){r("remove:field",f)}function d(f,m){r("rename:field",f,m)}return(f,m)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Fe.KLabel),{class:"dk-inputs-field-h1",info:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),e.unref(o)("input")?(e.openBlock(),e.createBlock(Dt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:n.items,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:c},{"item-label":e.withCtx(g=>[e.renderSlot(f.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(g)),()=>[e.createVNode(lc,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createElementBlock("div",B2,[e.createElementVNode("span",null,e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(e.unref(Fe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(e.unref(s),e.mergeProps({key:3,items:n.items,"key-order":n.fieldNames,name:"inputs"},s.value===lw?{nodeType:n.nodeType}:{fieldNameValidator:n.fieldNameValidator},{"onAdd:field":l,"onChange:inputs":u,"onRemove:field":p,"onRename:field":d}),{"item-label":e.withCtx(g=>[e.createVNode(lc,{item:g},null,8,["item"])]),_:1},16,["items","key-order"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-4f1ce4e7"]]),T2={},O2={class:"dk-node-form-divider"};function P2(n,t){return e.openBlock(),e.createElementBlock("hr",O2)}const er=Me(T2,[["render",P2],["__scopeId","data-v-35ed58be"]]),V2={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},$2={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function R2(n){const t=Number(n);return!isNaN(t)&&isFinite(t)}function yn(...n){return function(r){for(const o of n){const i=o(r);if(i)return i}}}function vo(n){const{i18n:{t}}=Xe(),r=()=>n?typeof n=="string"?n:t("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",n):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return r()}}function cw(n,t){const{i18n:{t:r}}=Xe();return function(i){if(i!=null)switch(n){case"identifier":{const a=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",t):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function Or(n=0,t=1/0,r){const{i18n:{t:o}}=Xe();return function(a){if(a!=null&&typeof a=="string"&&(a.length<n||a.length>t))return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:r.fieldName,minLength:n,maxLength:t}):`Value must be between ${n} and ${t} characters`}}function uw(n){const{i18n:{t}}=Xe();return function(o){if(!R2(o))return n?typeof n=="string"?n:t("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",n):"Value must be a number"}}function vi(n,t){const{i18n:{t:r}}=Xe();return function(i){if(i==null)return;const a=uw(t)(i);if(a)return a;const s=Number(i);switch(n){case"float":{const c=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",t):"Invalid float format";return Number.isFinite(s)?void 0:c()}case"integer":{const c=()=>t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",t):"Invalid integer format";return Number.isInteger(s)?void 0:c()}default:return}}}function Ii(n=-1/0,t=1/0,r){const{i18n:{t:o}}=Xe();return function(a){if(a==null)return;const s=uw(r)(a);if(s)return s;const c=Number(a);if(c<n||c>t)return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:r.fieldName,min:n,max:t}):`Value must be between ${n} and ${t}`}}function L2(n,t){const{state:r}=Pt(),{i18n:{t:o}}=Xe();return function(a){if(r.value.nodes.some(s=>s.name===a&&s.id!==n))return t?typeof t=="string"?t:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",t):"Name must be unique."}}function D2(n,t,r){const{i18n:{t:o}}=Xe();return function(a){if(!t)return;if(r?t.fields[n].some(c=>c.name===a&&c.id!==r):t.fields[n].some(c=>c.name===a)){const c=o(n==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:c})}}}function M2(){const{i18n:{t:n}}=Xe();return function(r){if(Kd(r))return n("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:r})}}function dw(n){const{i18n:{t}}=Xe(),r={fieldName:t("plugins.free-form.datakit.flow_editor.node_properties.name")};return yn(vo(r),cw("identifier",r),M2(),L2(n,r))}function j2(n){const{i18n:{t}}=Xe(),{getNodeById:r}=Pt();return function(i,a,s){const c={fieldName:t(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return yn(vo(c),D2(i,r(n),s))(a)}}function F2(n){const t=e.ref({}),r=e.computed(()=>Object.values(t.value).every(s=>!s)),o={};Object.keys(n).forEach(s=>{const c=n[s],l=d=>{const f=typeof d=="function"?d():d,m=c(f);return t.value[s]=m,m},u=()=>{t.value[s]=void 0},p=d=>(u(),l(d));o[s]={handleChange:p,handleBlur:p,validate:p,isValid:e.computed(()=>t.value[s]===void 0),error:e.computed(()=>t.value[s])}});function i(){t.value={}}function a(s){var c;for(const l of Object.keys(n)){const u=s[l],p=typeof u=="function"?u():u;(c=o[l])==null||c.validate(p)}return t.value}return{isValid:r,errorMap:t,fields:o,clearErrors:i,validate:a}}function Pr(n){const{validationConfig:t,getValidationData:r,toggleNodeValid:o}=n,{skipValidation:i}=Pt(),a=e.computed(()=>typeof t=="function"?t():t),s=e.computed(()=>F2(a.value)),c=e.computed(()=>s.value.fields),l=e.computed(()=>s.value.isValid.value);function u(){const d=r(),f=s.value.validate(d),m={};for(const g in a.value)m[g]=f[g];return m}function p(d,f){const m=()=>{const y=r(),_=c.value[d];_&&_.handleBlur(y[d])},g=()=>{f==null||f();const y=r(),_=c.value[d];_&&_.handleChange(y[d])};return e.computed(()=>{const y=c.value[d];return{validate:m,update:g,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return e.onMounted(()=>{i.value?i.value=!1:u()}),e.onBeforeUnmount(async()=>{try{const d=u(),f=Object.values(d).filter(Boolean).length>0;o(!f)}catch{}}),e.watch(()=>l.value,o,{immediate:!0}),{fields:c.value,isValid:l,validateAll:u,createFieldHandler:p}}function _n(n,t){const{state:r,renameNode:o,getNodeById:i,addField:a,renameField:s,removeField:c,replaceConfig:l,disconnectEdge:u,connectEdge:p,invalidConfigNodeIds:d,commit:f,revert:m}=Pt(),{i18n:{t:g}}=Xe(),y=Fy(),_=e.computed(()=>{const K=i(n);if(!K)throw new Error("Node not existed");return K}),b=e.computed(()=>{const W=r.value.edges.filter($=>$.target===n).reduce(($,ee)=>{var j,ie;const F=i(ee.source),J=(j=Jr(F,"output",ee.sourceField))==null?void 0:j.id,M=(ie=Jr(_.value,"input",ee.targetField))==null?void 0:ie.name,v=F.id+(J?`.${J}`:"");return M?$.inputs={...$.inputs,[M]:v}:$.input=v,$},{});return _.value.fields.input.forEach($=>{W.inputs||(W.inputs={}),W.inputs[$.name]||(W.inputs[$.name]=null)}),{..._.value.config,...W,name:_.value.name}}),w=K=>{o(n,K??"",!0,`${n}:rename`)},C=(K,W=!0)=>{if(!t)throw new Error("getFormValue is not defined");const $=Wr(t(),["name","input","inputs"]),ee=K?`update:${n}:${K}`:void 0;l(n,$,W,ee)},x=(K,W)=>{const $=Yr(_.value,K,W);if(!$)throw new Error(`Field with name "${W}" not found in node "${_.value.name}"`);return $},E=(K,W,$)=>{const ee=!!$;a(n,K,W,!ee),ee&&S(W,$)},k=(K,W,$)=>{const ee=x(K,W).id;s(n,ee,$)},N=(K,W)=>{const $=x(K,W).id;c(n,$)},B=e.computed(()=>r.value.edges.filter(K=>K.target===n&&!K.targetField)[0]),U=e.computed(()=>r.value.edges.filter(K=>K.target===n&&K.targetField)),S=async(K,W)=>{const $=W==null,ee=x("input",K).id;if($){const he=U.value.find(le=>le.targetField===ee);he&&u(he.id);return}const{nodeId:F,fieldId:J}=Ay(W),M=x("input",K).id,v=[];B.value&&(v.push(Ba(B.value,i)),u(B.value.id,!1));const j=U.value.find(he=>he.targetField===ee);j&&(v.push(Ba(j,i)),u(j.id,!1)),p({source:F,sourceField:J,target:n,targetField:M},!1);const ie=Wd(F,J,n,M,i),re=v[0]&&ie?v[0][1]===ie[1]:!1;if(f(),re||v.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ie],v)||m()},A=async K=>{if(K==null){B.value&&u(B.value.id);return}const $=[];for(const v of U.value)$.push(Ba(v,i)),u(v.id,!1);B.value&&u(B.value.id,!1);const{nodeId:ee,fieldId:F}=Ay(K);p({source:ee,sourceField:F,target:n,targetField:void 0},!1);const J=Wd(ee,F,n,void 0,i);if(f(),$.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[J],$)||m()},O=K=>{const W=[...r.value.edges,{source:K,target:n}];return Yd(Nl(W))},P=e.computed(()=>{var W,$;const K=[];for(const ee of r.value.nodes)if((W=oi(ee.type).io)!=null&&W.output&&ee.fields.output&&ee.id!==n&&!(ee.type==="property"&&!$d(($=ee.config)==null?void 0:$.property))&&!O(ee.id)&&!(_.value.phase==="request"&&ee.phase==="response")&&!(ee.type==="vault"&&ee.fields.output.length===0)){K.push({value:ee.id,label:ee.name,type:ee.type});for(const J of ee.fields.output)K.push({value:`${ee.id}.${J.id}`,label:`${ee.name}.${J.name}`,type:ee.type})}return K}),R=e.computed(()=>_.value.fields.input.map(K=>K.name)||[]);function z(K){d.value.delete(n),K||d.value.add(n)}const X=j2(n);function Z(K,W,$){const ee=i(n);if(!ee)throw new Error("Node not found when validating field name");const F=Yr(ee,K,W);return X(K,$,F==null?void 0:F.id)}return{formData:b,inputOptions:P,inputEdge:B,inputsEdges:U,inputsFieldNames:R,currentNode:_,setName:w,setConfig:C,addField:E,renameFieldByName:k,removeFieldByName:N,setInputs:S,setInput:A,nameValidator:dw(n),fieldNameValidator:Z,toggleNodeValid:z}}function bn(n){const{getSchema:t}=ft();return e.computed(()=>{if(pn(n))switch(n){case"response":return $2;case"service_request":return V2}try{const o=t().fields.find(u=>ml(u,"config"));if(!o)throw new Error("Config field not found in schema.");const a=o.config.fields.find(u=>ml(u,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const l=a.nodes.elements.subschema_definitions[n];if(!l)throw new Error(`Subschema "${n}" not found in the schema.`);return l}catch(r){throw new Error(`Failed to get subschema "${n}": ${r.message}`)}})}const Kn=e.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=Xe(),a=e.ref(r.name),s=e.computed(()=>{const p=r.validate(a.value.trim());return p===void 0?"":p});let c=a.value.trim();function l(){if(s.value){a.value=c;return}o("update",a.value.trim())}function u(){c=a.value.trim()}return e.watch(()=>r.name,p=>{p!==a.value&&(a.value=p)}),(p,d)=>{const f=e.resolveComponent("KInput");return e.openBlock(),e.createBlock(f,{"model-value":a.value,"onUpdate:modelValue":d[0]||(d[0]=m=>a.value=m),"data-1p-ignore":"",error:!!s.value,"error-message":s.value,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:l,onFocus:u},null,8,["model-value","error","error-message","label"])}}}),U2=e.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(n){const{i18n:{t}}=Xe(),r=e.useTemplateRef("form"),o=bn("call"),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>r.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:{url:yn(vo({fieldName:"URL"}),cw("url",{fieldName:"URL"})),timeout:yn(vi("integer"),Ii(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:f}),y=g("url",()=>s("url")),_=g("timeout",()=>s("timeout"));return(b,w)=>{const C=e.resolveComponent("KLabel");return e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(C,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"url",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(NR,{name:"method",onUpdate:w[0]||(w[0]=x=>e.unref(s)())}),e.createVNode(Ht,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"timeout",onBlur:e.unref(_).validate,"onUpdate:modelValue":e.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=x=>e.unref(s)("ssl_server_name"))}),e.createVNode(vn,{name:"ssl_verify","onUpdate:modelValue":w[2]||(w[2]=x=>e.unref(s)("ssl_verify"))}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"call","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),K2=e.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("service_request"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:c,fieldNameValidator:l}=_n(n.nodeId,()=>t.value.getValue());return(u,p)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(In,{"field-name-validator":e.unref(l),"field-names":e.unref(c),items:e.unref(i),"node-type":"service_request","onChange:input":e.unref(s),"onChange:inputs":e.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),q2=e.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("response"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:c,fieldNameValidator:l}=_n(n.nodeId,()=>t.value.getValue());return(u,p)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(In,{"field-name-validator":e.unref(l),"field-names":e.unref(c),items:e.unref(i),"node-type":"response","onChange:input":e.unref(s),"onChange:inputs":e.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),G2=e.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(n){const{i18n:{t},i18nT:r}=Xe(),o=e.useTemplateRef("form"),i=bn("jq"),{formData:a,setName:s,setConfig:c,inputOptions:l,setInputs:u,setInput:p,addField:d,removeFieldByName:f,renameFieldByName:m,inputsFieldNames:g,nameValidator:y,toggleNodeValid:_,fieldNameValidator:b}=_n(n.nodeId,()=>o.value.getValue());function w(B,U){d("input",B,U)}function C(B){f("input",B)}function x(B,U){m("input",B,U)}const E=t("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:k}=Pr({validationConfig:{jq:yn(vo({fieldName:E}),Or(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:_}),N=k("jq",()=>c("jq"));return(B,U)=>{const S=e.resolveComponent("KLabel"),A=e.resolveComponent("KExternalLink");return e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(a),schema:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(a).name,validate:e.unref(y),onUpdate:e.unref(s)},null,8,["name","validate","onUpdate"]),e.createVNode(S,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{autosize:"",error:e.unref(N).error,"error-message":e.unref(N).errorMessage,label:e.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:e.unref(N).validate,"onUpdate:modelValue":e.unref(N).update},{help:e.withCtx(()=>[e.createVNode(e.unref(r),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:e.withCtx(()=>[e.createVNode(A,{"hide-icon":"",href:e.unref(Ha).jqlang},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Ha).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(b),"field-names":e.unref(g),items:e.unref(l),"node-type":"jq","onAdd:field":w,"onChange:input":e.unref(p),"onChange:inputs":e.unref(u),"onRemove:field":C,"onRename:field":x},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),H2=Me(e.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field"],setup(n,{emit:t}){const r=n,o=t,i=e.ref({}),{value:a,...s}=Gt("values"),{i18n:c}=Xe(),l=e.useTemplateRef("root"),u=e.ref([]),p=e.ref(null);let d="",f=a==null?void 0:a.value;function m(){return hl("ff-kv-field-")}function g(S,A,O){const P=O.indexOf(S),R=O.indexOf(A);return P===-1&&R===-1?0:P===-1?1:R===-1?-1:P-R}function y(S,A){if(!S)return[];const O=Object.entries(S).map(([P,R])=>({id:m(),key:P,value:R}));return A!=null&&A.length&&O.sort((P,R)=>g(P.key,R.key,A)),O}function _(){const S={id:m(),key:"",value:""};return u.value.push(S),S}function b(S){const A=u.value.findIndex(O=>O.id===S);A!==-1&&u.value.splice(A,1)}u.value=y(a==null?void 0:a.value,r.keyOrder);async function w(S,A="key"){var O;l.value&&(await e.nextTick(),(O=l.value.querySelector(`[data-${A}-input="${S}"]`))==null||O.focus())}function C(){const S=_(),A=u.value.findIndex(({key:O})=>!O);w(A===-1?u.value.length-1:A),p.value=S}function x(S){var A;S.id===((A=p.value)==null?void 0:A.id)&&(p.value=null),b(S.id),S.key.trim()!==""&&o("remove:field",S.key)}function E(S){d=S.key}function k(S){var A;if(B(S)){S.key=d,delete i.value[S.id];return}if(S.id===((A=p.value)==null?void 0:A.id)){if(S.key.trim()==="")return;p.value=null,o("add:field",S.key,S.value)}else o("rename:field",d,S.key);d=S.key}function N(S,A){var P;if(A.id===((P=p.value)==null?void 0:P.id))return;const O=S.target.value.trim();o("change:value",A.key,O)}function B(S){delete i.value[S.id];const A=r.fieldNameValidator("output",d,S.key);if(A)return i.value[S.id]=A,A}function U(S){B(S)}return e.watch(()=>a==null?void 0:a.value,S=>{var X;if(en(S,f))return;f=S;const A=p.value,O=new Map(u.value.filter(Z=>Z.key).map(Z=>[Z.key,Z])),P=[],R=S??{};((X=r.keyOrder)!=null&&X.length?Object.keys(R).sort((Z,K)=>g(Z,K,r.keyOrder)):Object.keys(R)).forEach(Z=>{const K=O.get(Z);if(K){K.value=R[Z],P.push(K);return}P.push({id:m(),key:Z,value:R[Z]})}),A&&!P.some(Z=>Z.id===A.id)&&P.push(A),u.value=P},{deep:!0}),(S,A)=>{const O=e.resolveComponent("KAlert"),P=e.resolveComponent("KLabel"),R=e.resolveComponent("KButton"),z=e.resolveComponent("KInput"),X=e.resolveComponent("KCard");return s.error?(e.openBlock(),e.createBlock(O,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:l,class:"dk-output-value-field"},[e.createVNode(P,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(Z,K)=>(e.openBlock(),e.createBlock(X,{key:Z.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${s.path.value}.${K}`},{actions:e.withCtx(()=>[e.createVNode(R,{appearance:"none","data-testid":`ff-kv-remove-btn-${s.path.value}.${K}`,icon:"",onClick:W=>x(Z)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:e.withCtx(()=>[e.createVNode(z,{id:`ff-kv-entry-key-${s.path.value}.${K}`,modelValue:Z.key,"onUpdate:modelValue":[W=>Z.key=W,W=>B(Z)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":K,"data-testid":`ff-key-${s.path.value}.${K}`,error:!!i.value[Z.id],"error-message":i.value[Z.id],label:e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:W=>U(Z),onChange:W=>k(Z),onFocus:W=>E(Z)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),e.createVNode(z,{modelValue:Z.value,"onUpdate:modelValue":W=>Z.value=W,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${s.path.value}.${K}`,label:e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:W=>N(W,Z)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),e.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${s.path.value}`,disabled:!!p.value,onClick:C},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(c).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-3970c2c0"]]);function z2(n){const t={};for(const[r,o]of Object.entries(n))typeof o=="object"&&o!==null?t[r]=JSON.stringify(o):t[r]=String(o);return t}function cc(n){const t={};for(const[r,o]of Object.entries(n))if(o!=null){t[r]=o;try{o==="null"?t[r]=null:(o==="true"||o==="false"||/^-?\d+(\.\d+)?$/.test(o)||o.startsWith("{")&&o.endsWith("}")||o.startsWith("[")&&o.endsWith("]"))&&(t[r]=JSON.parse(o))}catch{}}return t}function W2(n,t,r){const o={};for(const i of Object.keys(n))i===t?o[r]=n[t]:o[i]=n[i];return o}const Y2=e.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(n){const{renameNode:t,getOutEdgesByNodeId:r,addField:o,renameField:i,removeField:a,replaceConfig:s,getNodeById:c}=Pt(),{fieldNameValidator:l}=_n(n.nodeId),u=bn("static"),p=dw(n.nodeId),d=e.computed(()=>c(n.nodeId)),f=e.computed(()=>{var C;return((C=d.value)==null?void 0:C.fields.output.map(x=>x.name))||[]});function m(C){if(!d.value)throw new Error("No current node");t(d.value.id,C??"")}const g=e.computed(()=>{var U;if(!d.value)return{};const C=((U=d.value.config)==null?void 0:U.values)??{},x={},E=r(d.value.id).map(S=>S.sourceField).filter(Boolean).map(S=>Jr(d.value,"output",S)).map(S=>S==null?void 0:S.name).filter(Boolean),k=d.value.fields.output.map(S=>S.name),N=Object.keys(C);return new Set([...N,...E,...k]).forEach(S=>{if(S in C){x[S]=C[S];return}x[S]=""}),{name:d.value.name,values:z2(x)}});function y(C,x){if(!d.value)throw new Error("No selected node");const E=x!==void 0;if(o(n.nodeId,"output",C,!E),E){const k={values:cc({...g.value.values,[C]:x})};s(n.nodeId,k)}}function _(C,x){if(!d.value)throw new Error("No selected node");const E=Yr(d.value,"output",C);if(!E)throw new Error("No field found to rename");const k={values:cc(W2(g.value.values??{},C,x))};s(n.nodeId,k,!1),i(n.nodeId,E.id,x)}function b(C){var k;if(!d.value)throw new Error("No selected node");const x=Yr(d.value,"output",C);if(!x)throw new Error("No field found to delete");a((k=d.value)==null?void 0:k.id,x.id,!0,!1);const E={values:cc({...g.value.values})};delete E.values[C],s(n.nodeId,E)}function w(C,x){if(!d.value)throw new Error("No selected node");const E={...g.value.values};E[C]=x;const k={values:cc(E)};s(n.nodeId,k)}return(C,x)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:g.value,schema:e.unref(u)},{default:e.withCtx(()=>{var E;return[e.createVNode(Kn,{name:((E=d.value)==null?void 0:E.name)??"",validate:e.unref(p),onUpdate:m},null,8,["name","validate"]),e.createVNode(H2,{"field-name-validator":e.unref(l),"key-order":f.value,"onAdd:field":y,"onChange:value":w,"onRemove:field":b,"onRename:field":_},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),J2={class:"dk-kong-property-item"},X2={class:"property-type"},Z2={class:"property-badges"},Q2=Me(e.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(n,{emit:t}){const{i18n:{t:r}}=Xe(),o=n,i=t,{formData:a}=ft(),s=e.ref(Sa(a.property)),c=e.computed(()=>xa(a.property)),l=e.ref(Vd(a.property)),u=e.computed(()=>a.property??""),p=e.computed(()=>Object.entries(go).map(([m])=>{var _;const g=xa(m)?(_=a.property)==null?void 0:_.startsWith(m.replace(Zo,"")):a.property===m;return{label:g&&l.value?m.replace(Zo,l.value):m,value:m,selected:g}}));function d(m){const g=gl.find(y=>{var _;return(_=a.property)==null?void 0:_.startsWith(y)});g&&(a.property=g+m,o.validators.key.handleChange(a.property),i("update:property-key",a.property))}function f(m){s.value!==Sa(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,s.value=Sa(a.property),o.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return e.watch(()=>a.property,m=>{l.value=Vd(m),s.value=Sa(m)}),(m,g)=>{const y=e.resolveComponent("KBadge"),_=e.resolveComponent("KSelect"),b=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(_,{key:u.value,"enable-filtering":"",error:!n.validators.property.isValid.value,help:n.validators.property.error.value,items:p.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=w=>n.validators.property.handleBlur(()=>e.unref(a).property)),onChange:f},{"item-template":e.withCtx(({item:w})=>[e.createElementVNode("div",J2,[e.createElementVNode("div",null,[e.createElementVNode("div",null,e.toDisplayString(w.label),1),e.createElementVNode("div",X2,e.toDisplayString(e.unref(go)[w.value].dataType),1)]),e.createElementVNode("div",Z2,[e.unref(go)[w.value].readable?(e.openBlock(),e.createBlock(y,{key:0,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):e.createCommentVNode("",!0),e.unref(go)[w.value].writable?(e.openBlock(),e.createBlock(y,{key:1,appearance:"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):e.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),c.value?(e.openBlock(),e.createBlock(b,{key:0,"model-value":l.value,"onUpdate:modelValue":[g[1]||(g[1]=w=>l.value=w),d],error:!n.validators.key.isValid.value,"error-message":n.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=w=>n.validators.key.handleBlur(()=>e.unref(a).property))},null,8,["model-value","error","error-message"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-3e7fee25"]]),eL=e.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),{selectedNode:r,disconnectInEdges:o,disconnectOutEdges:i}=Pt(),a=bn("property"),{formData:s,setName:c,setConfig:l,inputOptions:u,setInputs:p,setInput:d,inputsFieldNames:f,nameValidator:m,toggleNodeValid:g,fieldNameValidator:y}=_n(n.nodeId,()=>t.value.getValue()),_=e.computed(()=>Rd(s.value.property));function b(C){var E;const x=(E=r.value)==null?void 0:E.id;if(!x)throw new Error("Expected selectedNode to be defined");$d(C)||i(x,!1),Rd(C)||o(x,!1),l()}const{fields:w}=Pr({validationConfig:()=>({property:vo({fieldName:"Property"}),key:xa(s.value.property)?vo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:s.value.property,key:Vd(s.value.property)}),toggleNodeValid:g});return(C,x)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(s),schema:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(s).name,validate:e.unref(m),onUpdate:e.unref(c)},null,8,["name","validate","onUpdate"]),e.createVNode(Dt,{name:"content_type",onUpdate:x[0]||(x[0]=E=>e.unref(l)())}),e.createVNode(Q2,{validators:e.unref(w),"onUpdate:modelValue":b,"onUpdate:propertyKey":x[1]||(x[1]=E=>e.unref(l)("property-key"))},null,8,["validators"]),_.value?(e.openBlock(),e.createBlock(er,{key:0})):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createBlock(In,{key:1,"field-name-validator":e.unref(y),"field-names":e.unref(f),items:e.unref(u),"node-type":"property","onChange:input":e.unref(d),"onChange:inputs":e.unref(p)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):e.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),tL=e.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("exit"),{formData:o,setName:i,setConfig:a,inputOptions:s,setInputs:c,setInput:l,inputsFieldNames:u,nameValidator:p,toggleNodeValid:d,fieldNameValidator:f}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:m}=Pr({validationConfig:{status:yn(vi("integer",{fieldName:"Status"}),Ii(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:o.value.status}),toggleNodeValid:d}),g=m("status",()=>a("status"));return(y,_)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(o).name,validate:e.unref(p),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(Ht,{error:e.unref(g).error,"error-message":e.unref(g).errorMessage,name:"status",onBlur:e.unref(g).validate,"onUpdate:modelValue":e.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"warn_headers_sent","onUpdate:modelValue":_[0]||(_[0]=b=>e.unref(a)())}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(f),"field-names":e.unref(u),items:e.unref(s),"node-type":"exit","onChange:input":e.unref(l),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function nL(n){const t=_n(n),{state:r,getNodeById:o,branchGroups:i,commit:a}=Pt(),{i18n:{t:s}}=Xe(),c=Fy(),l=Dd(),u=e.computed(()=>{var C;const b={...t.formData.value},w=Ia(((C=t.currentNode.value)==null?void 0:C.type)||"branch");for(const x of w)(!(x in b)||b[x]==null)&&(b[x]=[]);return b});function p(b,w,C){const x=o(b),E=o(C),k=x?`${x.name}.${w}`:`${b}.${w}`,N=E?E.name:C;return[k,N]}function d(b){return(b==null?[]:Array.isArray(b)?b:[b]).filter(w=>qd(w))}function f(b,w){return i.wouldCreateCycle(b,w)?(l({message:s("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(b,w,C){const x=[],E=[],k=[];for(const N of C){const B=i.findMembership(N);if(!B||B.ownerId===b&&B.branch===w)continue;const U=i.getMembers(B.ownerId,B.branch).filter(S=>S!==N);k.push({ownerId:B.ownerId,branch:B.branch,members:U}),x.push(p(b,w,N)),E.push(p(B.ownerId,B.branch,N))}return{conflictUpdates:k,addedAssignments:x,removedAssignments:E}}function g(b,w,C,x){let E=!1;for(const k of x)E=i.setMembers(k.ownerId,k.branch,k.members,{commit:!1})||E;return E=i.setMembers(b,w,C,{commit:!1})||E,E}async function y(b,w){const C=t.currentNode.value,x=d(w),E=i.prepareMembers(C.id,b,x),k=i.getMembers(C.id,b);if(Gd(k,E))return!0;const N=E.filter(O=>!k.includes(O));for(const O of N)if(f(C.id,O))return!1;const{conflictUpdates:B,addedAssignments:U,removedAssignments:S}=m(C.id,b,N);return B.length>0&&!await c(s("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),U,S)?!1:(g(C.id,b,E,B)&&a(),!0)}const _=e.computed(()=>{const b=t.currentNode.value;return!b||!i?[]:r.value.nodes.filter(w=>w.id!==n&&!pn(w.type)&&w.phase===b.phase&&!i.wouldCreateCycle(b.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...t,formData:u,branchOptions:_,updateBranchMembers:y}}const rL=e.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(n){const{i18n:{t}}=Xe(),r=bn("branch"),o=e.ref(0),{formData:i,setName:a,inputOptions:s,branchOptions:c,nameValidator:l,setInput:u,setInputs:p,inputsFieldNames:d,fieldNameValidator:f,updateBranchMembers:m}=nL(n.nodeId);async function g(y,_){await m(y,_)||(o.value+=1)}return(y,_)=>(e.openBlock(),e.createBlock(Jt,{key:o.value,data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(l),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",items:e.unref(c),multiple:"",name:"then",onUpdate:_[0]||(_[0]=b=>g("then",b))},{"item-label":e.withCtx(b=>[e.createVNode(lc,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(Dt,{"enable-filtering":"",items:e.unref(c),multiple:"",name:"else",onUpdate:_[1]||(_[1]=b=>g("else",b))},{"item-label":e.withCtx(b=>[e.createVNode(lc,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(f),"field-names":e.unref(d),items:e.unref(s),"node-type":"branch","onChange:input":e.unref(u),"onChange:inputs":e.unref(p)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),oL=e.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("cache"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:()=>({ttl:yn(vi("integer",{fieldName:"TTL"}),Ii(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:f}),y=g("ttl",()=>s("ttl"));return(_,b)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(vn,{name:"bypass_on_error","onUpdate:modelValue":b[0]||(b[0]=w=>e.unref(s)("bypass_on_error"))}),e.createVNode(Ht,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"ttl",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"cache","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),iL=e.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("xml_to_json"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),g=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:_}=Pr({validationConfig:()=>({attributes_block_name:yn(()=>y()?void 0:g,B=>{if(B)return Or(1,32,{fieldName:"Attributes block name"})(B)}),attributes_name_prefix:yn(()=>y()?void 0:g,B=>{if(B)return Or(1,32,{fieldName:"Attributes name prefix"})(B)}),text_block_name:Or(1,32,{fieldName:"Text block name"}),xpath:Or(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:f}),b=_("attributes_block_name",()=>s("attributes_block_name")),w=_("attributes_name_prefix",()=>s("attributes_name_prefix")),C=_("text_block_name",()=>s("text_block_name")),x=_("xpath",()=>s("xpath")),E=()=>{b.value.validate(),w.value.validate()},k=()=>{b.value.update(),w.value.validate()},N=()=>{w.value.update(),b.value.validate()};return(B,U)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(vn,{name:"recognize_type","onUpdate:modelValue":U[0]||(U[0]=S=>e.unref(s)("recognize_type"))}),e.createVNode(nt,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"attributes_block_name",onBlur:E,"onUpdate:modelValue":k},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(w).error,"error-message":e.unref(w).errorMessage,name:"attributes_name_prefix",onBlur:E,"onUpdate:modelValue":N},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"text_block_name",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"text_as_property","onUpdate:modelValue":U[1]||(U[1]=S=>e.unref(s)("text_as_property"))}),e.createVNode(nt,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"xpath",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"xml_to_json","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),aL=e.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("json_to_xml"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,addField:p,removeFieldByName:d,renameFieldByName:f,inputsFieldNames:m,nameValidator:g,toggleNodeValid:y,fieldNameValidator:_}=_n(n.nodeId,()=>t.value.getValue()),b=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),w=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:C}=Pr({validationConfig:{attributes_block_name:yn(()=>w()?void 0:b,Or(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:yn(()=>w()?void 0:b,Or(1,32,{fieldName:"Attributes name prefix"})),root_element_name:Or(1,64,{fieldName:"Root element name"}),text_block_name:Or(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:y}),x=C("attributes_block_name",()=>s("attributes_block_name")),E=C("attributes_name_prefix",()=>s("attributes_name_prefix")),k=C("root_element_name",()=>s("root_element_name")),N=C("text_block_name",()=>s("text_block_name"));function B(){x.value.validate(),E.value.validate()}function U(){x.value.update(),E.value.validate()}function S(){E.value.update(),x.value.validate()}function A(R,z){p("input",R,z)}function O(R){d("input",R)}function P(R,z){f("input",R,z)}return(R,z)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(g),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(nt,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"attributes_block_name",onBlur:B,"onUpdate:modelValue":U},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(E).error,"error-message":e.unref(E).errorMessage,name:"attributes_name_prefix",onBlur:B,"onUpdate:modelValue":S},null,8,["error","error-message"]),e.createVNode(nt,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"root_element_name",onBlur:e.unref(k).validate,"onUpdate:modelValue":e.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{error:e.unref(N).error,"error-message":e.unref(N).errorMessage,name:"text_block_name",onBlur:e.unref(N).validate,"onUpdate:modelValue":e.unref(N).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(_),"field-names":e.unref(m),items:e.unref(c),"node-type":"json_to_xml","onAdd:field":A,"onChange:input":e.unref(u),"onChange:inputs":e.unref(l),"onRemove:field":O,"onRename:field":P},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),sL=e.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_decode"),{formData:o,setName:i,inputOptions:a,setInputs:s,setInput:c,inputsFieldNames:l,nameValidator:u,fieldNameValidator:p}=_n(n.nodeId,()=>t.value.getValue());return(d,f)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(o),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(o).name,validate:e.unref(u),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(p),"field-names":e.unref(l),items:e.unref(a),"node-type":"jwt_decode","onChange:input":e.unref(c),"onChange:inputs":e.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),lL=e.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_sign"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>{const w={...t.value.getValue()};return(!w.static_claims||Object.keys(w.static_claims).length===0)&&delete w.static_claims,w}),{createFieldHandler:g}=Pr({validationConfig:{algorithm:vo({fieldName:"Algorithm"}),expires_in:yn(vi("integer",{fieldName:"Expires in"}),Ii(1,1/0,{fieldName:"Expires in"})),not_before:yn(vi("integer",{fieldName:"Not before"}),Ii(0,1/0,{fieldName:"Not before"}))},getValidationData:()=>({algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before}),toggleNodeValid:f}),y=g("algorithm",()=>s("algorithm")),_=g("expires_in",()=>s("expires_in")),b=g("not_before",()=>s("not_before"));return(w,C)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",name:"algorithm",onUpdate:e.unref(y).update},null,8,["onUpdate"]),e.createVNode(Ht,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"expires_in",onBlur:e.unref(_).validate,"onUpdate:modelValue":e.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ht,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"not_before",onBlur:e.unref(b).validate,"onUpdate:modelValue":e.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(nt,{name:"kid","onUpdate:modelValue":C[0]||(C[0]=x=>e.unref(s)("kid"))}),e.createVNode(nt,{name:"typ","onUpdate:modelValue":C[1]||(C[1]=x=>e.unref(s)("typ"))}),e.createVNode(fr,{label:e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onLegacyValueChange:C[2]||(C[2]=x=>e.unref(s)("static_claims"))},null,8,["label"]),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"jwt_sign","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cL=e.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(n){const t=e.useTemplateRef("form"),r=bn("jwt_verify"),{i18n:{t:o}}=Xe(),{formData:i,setName:a,setConfig:s,inputOptions:c,setInputs:l,setInput:u,inputsFieldNames:p,nameValidator:d,toggleNodeValid:f,fieldNameValidator:m}=_n(n.nodeId,()=>t.value.getValue()),{createFieldHandler:g}=Pr({validationConfig:{leeway:yn(vi("integer",{fieldName:"Leeway"}),Ii(0,1/0,{fieldName:"Leeway"}))},getValidationData:()=>({leeway:i.value.leeway}),toggleNodeValid:f}),y=g("leeway",()=>s("leeway"));return(_,b)=>(e.openBlock(),e.createBlock(Jt,{ref:"form",data:e.unref(i),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Kn,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(a)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Fe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Dt,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:b[0]||(b[0]=w=>e.unref(s)("allowed_algorithms"))}),e.createVNode(gn,{name:"issuers",onAdd:b[2]||(b[2]=w=>e.unref(s)("issuers")),onRemove:b[3]||(b[3]=w=>e.unref(s)("issuers"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[1]||(b[1]=x=>e.unref(s)("issuers"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(gn,{name:"audiences",onAdd:b[5]||(b[5]=w=>e.unref(s)("audiences")),onRemove:b[6]||(b[6]=w=>e.unref(s)("audiences"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[4]||(b[4]=x=>e.unref(s)("audiences"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(gn,{name:"required_claims",onAdd:b[8]||(b[8]=w=>e.unref(s)("required_claims")),onRemove:b[9]||(b[9]=w=>e.unref(s)("required_claims"))},{item:e.withCtx(({fieldName:w,autofocus:C})=>[e.createVNode(nt,{autofocus:C,name:w,"onUpdate:modelValue":b[7]||(b[7]=x=>e.unref(s)("required_claims"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(Ht,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"leeway",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(vn,{name:"validate_exp","onUpdate:modelValue":b[10]||(b[10]=w=>e.unref(s)("validate_exp"))}),e.createVNode(vn,{name:"validate_nbf","onUpdate:modelValue":b[11]||(b[11]=w=>e.unref(s)("validate_nbf"))}),e.createVNode(er),e.createVNode(In,{"field-name-validator":e.unref(m),"field-names":e.unref(p),items:e.unref(c),"node-type":"jwt_verify","onChange:input":e.unref(u),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),uL=["innerHTML"],dL={key:1,class:"branch-note"},fL={class:"branch-label"},pL={class:"branch-text"},mL=e.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Mh}px`},offsetTop:{default:`${b1}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(n){const{t}=jt.createI18n("en-us",Yt),{getNodeById:r,branchGroups:o}=Pt(),i=e.computed(()=>n.nodeId&&r(n.nodeId)),a=e.computed(()=>{if(n.nodeId)return o.findMembership(n.nodeId)}),s=e.computed(()=>{if(!a.value)return"";const u=r(a.value.ownerId);return u?`${u.name}.${a.value.branch}`:""});function c(){n.nodeId&&o.removeMember(n.nodeId)}const l=e.computed(()=>{var u;switch((u=i.value)==null?void 0:u.type){case"call":return U2;case"service_request":return K2;case"response":return q2;case"jq":return G2;case"static":return Y2;case"property":return eL;case"exit":return tL;case"branch":return rL;case"cache":return oL;case"xml_to_json":return iL;case"json_to_xml":return aL;case"jwt_decode":return sL;case"jwt_sign":return lL;case"jwt_verify":return cL;default:return null}});return(u,p)=>(e.openBlock(),e.createBlock(e.unref(Fe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":n.maxWidth,"offset-top":n.offsetTop,visible:n.visible,"z-index":e.unref(_1),onClose:p[0]||(p[0]=d=>u.$emit("close"))},e.createSlots({default:e.withCtx(()=>[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:e.unref(ni)(i.value.type)},null,8,uL)):e.createCommentVNode("",!0),a.value?(e.openBlock(),e.createElementBlock("div",dL,[e.createElementVNode("span",fL,[e.createVNode(e.unref(Re.ArrowSplitIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-40, ${e.unref(fa)})`},null,8,["color","size"]),e.createElementVNode("span",pL,e.toDisplayString(s.value),1)]),e.createVNode(e.unref(Fe.KTooltip),{placement:"top",text:e.unref(t)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:e.withCtx(()=>[e.createVNode(e.unref(Fe.KButton),{appearance:"none","aria-label":e.unref(t)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(l),{key:n.nodeId,class:"dk-node-properties-panel-form","node-id":n.nodeId},null,8,["node-id"])):e.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:e.withCtx(()=>[e.createVNode(Qd,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),hL=Me(mL,[["__scopeId","data-v-32602117"]]),gL={class:"dk-editor-content"},yL={class:"main"},_L=Me(e.defineComponent({__name:"EditorContent",setup(n){const{propertiesPanelOpen:t,selectedNode:r}=Pt();function o(){t.value=!1}e.watch(r,a=>{a||o()});const i=e.ref(!1);return e.onMounted(()=>{i.value=!0}),(a,s)=>{var c;return e.openBlock(),e.createElementBlock("div",gL,[e.createVNode(e.unref(ER)),e.createElementVNode("div",yL,[e.createVNode(P$)]),e.createVNode(hL,{"node-id":(c=e.unref(r))==null?void 0:c.id,visible:e.unref(t),onClose:o},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-66331c5c"]]),bL={key:0,class:"dk-editor-modal"},wL=Me(e.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(n){e.useCssVars(c=>({v0a30a280:`${e.unref(y1)}px`,aee7cc1c:`${e.unref(Dh)}px`}));const t=e.useModel(n,"open"),r=e.ref(!1),o=e.useTemplateRef("confirm-modal"),{clear:i}=Pt();tB(async(...c)=>{r.value=!0;const l=await o.value.open(...c);return r.value=!1,l});const a=Tt.useScrollLock(document);e.watch(t,c=>{a.value=!!c,c||i()},{immediate:!0});function s(){t.value=!1}return(c,l)=>t.value?(e.openBlock(),e.createElementBlock("div",bL,[e.createVNode(A$,{class:"nav",onBack:s}),e.createVNode(_L,{ref:"content",class:"content",tabindex:"0"},null,512),e.createVNode(E$,{ref:"confirm-modal"},null,512)])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-82b03578"]]),kL={class:"dk-flow-editor"},CL={class:"flow-panels-container"},EL={class:"overlay"},NL=Me(e.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(n,{emit:t}){const{t:r}=jt.createI18n("en-us",Yt),{formData:o,setValue:i,getValue:a}=ft(),s=t;function c(p,d,f,m){const g={...o.config,nodes:p};f!==void 0&&(g.resources=f);const y={...o.__ui_data,...d},_={...o,config:g,__ui_data:y};m!=null?_.partials=[{id:m}]:_.partials&&(_.partials=null),i(_),s("change",g,y)}const{modalOpen:l,setPendingFitView:u}=Xd(a(),{onChange:c,isEditing:n.isEditing});return e.watch(l,()=>{u(!0)},{flush:"post"}),h$({enabled:l}),(p,d)=>{const f=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",kL,[e.createElementVNode("div",CL,[e.createVNode(Yf,{inactive:e.unref(l),mode:"preview"},null,8,["inactive"]),e.createElementVNode("div",EL,[e.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=m=>l.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),e.createVNode(e.unref(Re.ExpandIcon))]),_:1})])]),e.createVNode(wL,{open:e.unref(l),"onUpdate:open":d[1]||(d[1]=m=>e.isRef(l)?l.value=m:null)},null,8,["open"])])}}}),[["__scopeId","data-v-575018ff"]]),SL=["innerHTML"],xL={class:"dk-option-label"},AL=["innerHTML"],vL=Je({component:Me(e.defineComponent({inheritAttrs:!1,__name:"DatakitForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const{t}=jt.createI18n("en-us",Yt),r=n,o=e.useAttrs(),i=e.inject(Qe.FORMS_CONFIG),a=e.ref(!1);e.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:s}=ac(),c=e.computed(()=>i.app!=="konnect"||p.value===!1?"code":s.value),l=e.computed(()=>i.app==="kongManager"?"code":c.value==="flow"?"form":"code"),u={flow:Re.DesignIcon,code:Re.CodeblockIcon},p=e.ref(!0),d=e.ref(""),f=e.computed(()=>{const E=[{label:t("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:t("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return E[0].disabled=!p.value,E}),m=e.computed(()=>{switch(c.value){case"code":return t("plugins.free-form.datakit.description_code");case"flow":return t("plugins.free-form.datakit.description_flow");default:return""}}),g=e.computed(()=>p.value?"":t("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:d.value,code:E=>`<code>${xv(E)}</code>`}));e.watch(c,()=>{var E;(E=r.onValidityChange)==null||E.call(r,{model:"config",valid:!0})});function y(){var E;(E=r.onValidityChange)==null||E.call(r,{model:"config",valid:!0})}function _(){y()}function b(E){return E.map(k=>typeof k=="number"?`[${k}]`:E.length&&typeof k=="string"&&k.includes(".")?`["${k}"]`:`.${k}`).join("").replace(/^\./,"")}function w(E){return E.issues.map(k=>`${b(k.path)} - ${k.message}`).join("; ")}function C(E){if(y(),i.app!=="konnect")return;const k=E==null?void 0:E.config,{success:N,error:B}=sw.safeParse(k);d.value=N||!B?"":w(B),p.value=N}function x(E){var k;d.value=E,p.value=!1,(k=r.onValidityChange)==null||k.call(r,{model:"config",valid:!1,error:E})}return(E,k)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(i).app==="konnect"?(e.openBlock(),e.createBlock(e.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[e.createVNode(e.unref(Fe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":c.value,options:f.value,"onUpdate:modelValue":k[0]||(k[0]=N=>s.value=N)},{"option-label":e.withCtx(({option:N})=>[e.createVNode(e.unref(Fe.KTooltip),{disabled:p.value||N.value!=="flow"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:g.value},null,8,SL)]),default:e.withCtx(()=>[e.createElementVNode("div",xL,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u[N.value]))),e.createTextVNode(" "+e.toDisplayString(N.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(Qn,e.mergeProps({...e.unref(o),...r},{class:"dk-form","editor-mode":l.value,"hide-editor-mode-switcher":""}),{"code-editor":e.withCtx(()=>[e.createVNode(p$,{class:"code-editor",editing:r.isEditing,onChange:C,onError:x},null,8,["editing"])]),"plugin-config-title":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("plugins.free-form.datakit.flow_editor.mode")),1)]),"plugin-config-description":e.withCtx(()=>[e.createElementVNode("span",{innerHTML:m.value},null,8,AL)]),default:e.withCtx(()=>[c.value==="flow"?(e.openBlock(),e.createBlock(NL,{key:0,"is-editing":r.isEditing,onChange:_},null,8,["is-editing"])):e.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-99d4e7f0"]])}),IL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.functions.*",component:nt,propsOverrides:n=>({...n,multiline:!0,rows:3})}]}),BL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),TL=Je({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:Dt,propsOverrides:{multiple:!0}}]}),OL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),PL=Je({experimental:!0}),fw=e.defineComponent({inheritAttrs:!1,__name:"KeysetField",props:{name:{},scope:{}},setup(n){const t=n,{i18n:{t:r}}=Xe(),o=e.inject(Qe.FORMS_CONFIG),i=e.computed(()=>(o==null?void 0:o.app)==="konnect"),{formData:a,config:s}=ft();function c(f){const m=`config.${f}`,g=uf(f);return s.value.transformLabel?s.value.transformLabel(g,m):g}function l(f){if(typeof f!="string"||!f)return!1;try{const m=new URL(f);return(m.protocol==="http:"||m.protocol==="https:")&&!!m.host}catch{return!1}}const u=e.computed(()=>{if(!i.value)return{hasError:!1,message:""};const f=a.config,m=f==null?void 0:f[`${t.scope}_token_signing`],g=f==null?void 0:f[`${t.scope}_token_upstream_header`];if(!m)return{hasError:!1,message:""};if(typeof g!="string"||g==="")return{hasError:!1,message:""};const y=f==null?void 0:f[`${t.scope}_token_keyset`];return l(y)?{hasError:!1,message:""}:{hasError:!0,message:r("plugins.free-form.jwt-signer.keyset_url_required",{signingField:c(`${t.scope}_token_signing`),headerField:c(`${t.scope}_token_upstream_header`)})}}),p=e.computed(()=>u.value.hasError),d=e.computed(()=>u.value.message);return(f,m)=>(e.openBlock(),e.createBlock(nt,e.mergeProps(f.$attrs,{error:p.value,"error-message":d.value,name:n.name}),null,16,["error","error-message","name"]))}}),VL=Je({component:e.defineComponent({__name:"JwtSignerForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r={bundles:[["config.access_token_signing","config.access_token_upstream_header","config.access_token_keyset"],["config.channel_token_signing","config.channel_token_upstream_header","config.channel_token_keyset"]]},o=e.useSlots();return e.provide(Qe.AUTOFILL_SLOT,o==null?void 0:o[Qe.AUTOFILL_SLOT_NAME]),(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"render-rules":r}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:s})=>s==="config.access_token_keyset"},{default:e.withCtx(s=>[e.createVNode(fw,e.mergeProps(s,{scope:"access"}),null,16)]),_:1},8,["match"]),e.createVNode($t,{match:({path:s})=>s==="config.channel_token_keyset"},{default:e.withCtx(s=>[e.createVNode(fw,e.mergeProps(s,{scope:"channel"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jb)]),_:1},16))}})}),$L=Je({experimental:!0}),RL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.message_by_lua_functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),LL=Je({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),DL=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.message_by_lua_functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),ML=Je({experimental:!0,component:qb,fieldRenderers:[{match:({path:n})=>n==="config.identity_realms",component:Ub},{match:"config.anonymous",component:nt,propsOverrides:{placeholder:"e.g., 00000000-0000-0000-0000-000000000001"}},{match:"config.realm",component:nt,propsOverrides:{placeholder:"e.g., my-api"}}]}),jL={class:"ff-collapsible-section"},FL={class:"ff-collapsible-section-header"},UL={class:"ff-collapsible-section-header-toggle"},KL={key:0,class:"ff-collapsible-section-content"},qL={key:0,class:"ff-collapsible-section-indent-guide"},Qf=Me(e.defineComponent({__name:"CollapsibleSection",props:e.mergeModels({label:{}},{expanded:{type:Boolean,default:!0},expandedModifiers:{}}),emits:["update:expanded"],setup(n){const t=e.useModel(n,"expanded");return(r,o)=>(e.openBlock(),e.createElementBlock("div",jL,[e.createElementVNode("header",FL,[e.createElementVNode("div",UL,[e.createElementVNode("button",{class:"ff-collapsible-section-toggle-btn",type:"button",onClick:o[0]||(o[0]=e.withModifiers(i=>t.value=!t.value,["prevent","stop"]))},[e.createVNode(e.unref(Re.ChevronRightIcon),{class:e.normalizeClass(["ff-collapsible-section-toggle-btn-trigger-icon",{"collapse-expanded":t.value}]),decorative:"",size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["class","size"])]),e.createVNode(e.unref(Fe.KLabel),{class:"ff-collapsible-section-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.label),1)]),_:1})])]),e.createVNode(Ll,null,{default:e.withCtx(()=>[t.value?(e.openBlock(),e.createElementBlock("div",KL,[e.renderSlot(r.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)]),_:3}),t.value?(e.openBlock(),e.createElementBlock("div",qL)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-39f2a44b"]]),GL={class:"ff-mb-subject"},HL={class:"ff-mb-attributes"},zL={class:"ff-metering-billing-inline-row"},WL={class:"ff-mb-queue"},YL=Je({experimental:!0,component:Me(e.defineComponent({__name:"MeteringAndBillingForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Xe(),i=e.inject(Qe.FORMS_CONFIG),a=e.computed(()=>{const p=i==null?void 0:i.geoApiServerUrl,d=p?new URL(p).hostname.split(".")[0]:null;return d?`https://${d}.api.konghq.com/v3/openmeter/events`:"https://{{region}}.api.konghq.com/v3/openmeter/events"}),s={hasValue:p=>!!p&&Object.keys(p).length>0,prepareFormData:p=>{var d;return t.isEditing?p:(i==null?void 0:i.app)==="konnect"&&!((d=p==null?void 0:p.config)!=null&&d.ingest_endpoint)?{...p,config:{...p==null?void 0:p.config,ingest_endpoint:a.value}}:p}},c=e.ref(!0),l=e.ref(!0),u=e.ref(!0);return(p,d)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"form-config":s,"plugin-config-description":e.unref(o)("plugins.free-form.metering-and-billing.sections.plugin_config.description")}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:f})=>f==="config.meter_api_requests"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.meter_api_requests.description")}),null,16,["description"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.meter_ai_token_usage"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.meter_ai_token_usage.description")}),null,16,["description"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.ssl_verify"},{default:e.withCtx(f=>[e.createVNode(vn,e.mergeProps(f,{description:e.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.description"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.subject.look_up_value_in"},{default:e.withCtx(f=>[e.createVNode(Dt,e.mergeProps(f,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.help"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.subject.field"},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.help"),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.label"),placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.timeout"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.keepalive"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_coalescing_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_coalescing_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.initial_retry_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.initial_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_retry_delay"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f==="config.queue.max_retry_time"},{default:e.withCtx(f=>[e.createVNode(Ht,e.mergeProps(f,{label:e.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_time.label")}),null,16,["label"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f.startsWith("config.attributes.")&&f.endsWith(".look_up_value_in")},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.look_up_value_in.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:f})=>f.startsWith("config.attributes.")&&f.endsWith(".event_property_name")},{default:e.withCtx(f=>[e.createVNode(nt,e.mergeProps(f,{placeholder:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.event_property_name.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(Qf,{expanded:c.value,"onUpdate:expanded":d[0]||(d[0]=f=>c.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.sections.metering.title")},{default:e.withCtx(()=>[e.createVNode(it,{name:"config.meter_api_requests"}),e.createVNode(it,{name:"config.meter_ai_token_usage"})]),_:1},8,["expanded","label"]),e.createElementVNode("div",GL,[e.createVNode(Ft,{label:e.unref(o)("plugins.free-form.metering-and-billing.sections.subject.title"),name:"config.subject","render-rules":{dependencies:{field:["look_up_value_in",["query","header"]]}},"reset-label-path":"reset"},null,8,["label"])]),e.createVNode(Qf,{expanded:l.value,"onUpdate:expanded":d[1]||(d[1]=f=>l.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.title")},{default:e.withCtx(()=>[e.createElementVNode("div",HL,[e.createVNode(gn,{"hide-label":"",name:"config.attributes"})])]),_:1},8,["expanded","label"]),e.createVNode(Qf,{expanded:u.value,"onUpdate:expanded":d[2]||(d[2]=f=>u.value=f),label:e.unref(o)("plugins.free-form.metering-and-billing.sections.ingestion.title")},{default:e.withCtx(()=>[e.createVNode(nt,{help:e.unref(o)("plugins.free-form.metering-and-billing.fields.ingest_endpoint.help"),name:"config.ingest_endpoint"},null,8,["help"]),e.createVNode(it,{name:"config.api_token"}),e.createVNode(it,{name:"config.ssl_verify"}),e.createElementVNode("div",zL,[e.createVNode(it,{name:"config.timeout"}),e.createVNode(it,{name:"config.keepalive"})])]),_:1},8,["expanded","label"]),e.createVNode(za,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:e.withCtx(()=>[e.createElementVNode("div",WL,[e.createVNode(e.unref(Fe.KLabel),{class:"ff-mb-queue-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.metering-and-billing.sections.queue.title")),1)]),_:1}),e.createVNode(Ft,{"as-child":"",name:"config.queue","reset-label-path":"reset"})])]),_:1})]),_:1},16,["plugin-config-description"]))}}),[["__scopeId","data-v-78972733"]])}),JL=Je({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:Dt,propsOverrides:{multiple:!0}}]}),XL=Je({experimental:!0}),ZL=Je({experimental:!0,fieldRenderers:[{match:"config.access_logs.custom_attributes_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),QL=Je({experimental:!0}),eD=Je({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}},fieldRenderers:[{match:({path:n})=>n==="config.methods"||n==="config.request_method",component:Dt,propsOverrides:{multiple:!0}}]}),tD=Je({experimental:!0,fieldRenderers:[{match:({path:n})=>n==="config.methods"||n==="config.request_method",component:Dt,propsOverrides:{multiple:!0}}]}),nD={class:"rla-form-request-limits-subtitle"},rD={class:"rla-form-request-limits-content"},oD={class:"rla-form-window-type"},iD={class:"rla-form-request-limits-items"},aD={class:"rla-form-request-limits-row"},sD=["id"],lD={class:"rla-form-request-limits-actions"},cD={key:0,class:"rla-form-request-limits-examples"},uD={class:"rla-form-request-limits-examples-badges"},ep="config.window_type",dD=Me(e.defineComponent({__name:"RequestLimitsForm",setup(n){var _;const{i18n:{t}}=Xe(),{formData:r,getSelectItems:o,getSchema:i}=ft(),a=e.computed(()=>{var w,C;const b=(C=(w=r.config)==null?void 0:w.limit)==null?void 0:C.map((x,E)=>{var k,N;return{limit:x,windowSize:(N=(k=r.config)==null?void 0:k.window_size)==null?void 0:N[E]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:s}=cf("request-limits",a),c=b=>{var w,C;f.value=void 0,r.config&&((w=r.config.limit)!=null&&w.length||(r.config.limit=[null]),(C=r.config.window_size)!=null&&C.length||(r.config.window_size=[null]),r.config.limit.splice(b+1,0,null),r.config.window_size.splice(b+1,0,null))},l=b=>{r.config&&(r.config.limit.splice(b,1),r.config.window_size.splice(b,1))},u=(_=i(ep))==null?void 0:_.default,p=e.computed(()=>ka(r,ep)),d=e.computed(()=>o(ep).sort((b,w)=>b.value===u?-1:w.value===u?1:0)),f=e.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,p.value)?m[p.value]:[]),y=(b,w)=>{if(w===f.value){e.nextTick(()=>{f.value=void 0}),r.config.limit=[],r.config.window_size=[];return}e.nextTick(()=>{f.value=w}),r.config.limit=[b.config.limit],r.config.window_size=[b.config.window_size]};return(b,w)=>{const C=e.resolveComponent("KLabel"),x=e.resolveComponent("KButton"),E=e.resolveComponent("KBadge"),k=e.resolveComponent("KTooltip"),N=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(N,{class:"rla-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(C,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",nD,e.toDisplayString(e.unref(t)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",rD,[e.createElementVNode("div",oD,[e.createVNode(Jf,{items:d.value,label:e.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=B=>f.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",iD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(B,U)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(s)(B,U)},[e.createVNode(C,{for:`rla-form-request-limits-item-${U}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.label_index",{index:U+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",aD,[e.createElementVNode("legend",{id:`rla-form-request-limits-item-${U}-legend`,class:"rla-form-request-limits-inputs"},[e.createVNode(Ht,{name:`$.config.limit.${U}`,placeholder:e.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.interval_determiner")),1),e.createVNode(Ht,{name:`$.config.window_size.${U}`,placeholder:e.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.seconds")),1)],8,sD),e.createElementVNode("div",lD,[e.createVNode(x,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>l(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(x,{appearance:"tertiary",onClick:()=>c(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",cD,[e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.start_with_a_use_case")),1),e.createElementVNode("div",uD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(B,U)=>(e.openBlock(),e.createBlock(k,{key:`use-case-${U}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(B.description),1),w[1]||(w[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.label"))+": "+e.toDisplayString(B.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.time_interval"))+": "+e.toDisplayString(B.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(E,{appearance:f.value===`${p.value}-${U}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>y(B,`${p.value}-${U}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-1fac872b"]]),fD={id:"rla-form-error-legend",class:"rla-form-error-inputs"},pD=Me(e.defineComponent({__name:"ErrorMessageForm",setup(n){const{i18n:{t}}=Xe();return(r,o)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"rla-form-error-legend",info:e.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",fD,[e.createVNode(Ht,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(nt,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-7b36f1f7"]]),mD=e.defineComponent({__name:"RedisField",setup(n){const{formData:t}=ft(),r=e.inject(Qe.FORMS_CONFIG),o=e.inject(Ai),i=(o==null?void 0:o.isEditing)||!1,a=e.computed(()=>{if((r==null?void 0:r.app)!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return e.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=i?null:void 0)}),(s,c)=>(e.openBlock(),e.createBlock(Ll,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(t).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(Gf,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):e.createCommentVNode("",!0)]}),_:1}))}}),hD=e.defineComponent({__name:"ConfigForm",setup(n){const{getSchema:t}=ft();return(r,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(it,{name:"identifier"}),e.createVNode(dD),e.createVNode(pD)]),_:1}),e.createVNode(za,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(Dt,{multiple:!0,name:"config.compound_identifier"}),e.unref(t)("config.counter_key")?(e.openBlock(),e.createBlock(it,{key:0,name:"config.counter_key"})):e.createCommentVNode("",!0),e.createVNode(it,{name:"config.sync_rate"}),e.createVNode(it,{name:"config.namespace"}),e.createVNode(it,{name:"config.strategy"}),e.createVNode(mD),e.createVNode(it,{name:"config.dictionary_name"}),e.createVNode(it,{name:"config.lock_dictionary_name"}),e.createVNode(it,{name:"config.hide_client_headers"}),e.createVNode(it,{name:"config.retry_after_jitter_max"}),e.createVNode(it,{name:"config.header_name"}),e.createVNode(it,{name:"config.path"}),e.createVNode(it,{name:"config.throttling"}),e.createVNode(it,{name:"config.enforce_consumer_groups"}),e.createVNode(it,{name:"config.consumer_groups"}),e.createVNode(it,{name:"config.disable_penalty"})]),_:1})],64))}}),gD=Je({experimental:!0,component:e.defineComponent({__name:"RateLimitingAdvancedForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);function o(i,a){var s;((s=i.config)==null?void 0:s.namespace)===null&&delete i.config.namespace,t.onFormChange(i,a)}return(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"on-form-change":o}),{default:e.withCtx(()=>[e.createVNode(hD)]),_:1},16))}})}),yD=Je({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),_D="__request_callout_";function pw(){return hl(_D)}const Ya="_callout_id",bD=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(n){const t=n,{formData:r}=ft(),o=e.computed(()=>{const{callouts:s}=r.config;return s==null?[]:s.filter(({name:c})=>{var l;return c&&c!==((l=s[t.index])==null?void 0:l.name)})}),i=e.computed(()=>o.value.map(({[Ya]:s,name:c})=>({value:s,label:c}))),a=e.computed(()=>r.config.callouts[t.index]);return e.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(s=>i.value.some(c=>c.value===s))}),(s,c)=>(e.openBlock(),e.createBlock(Ft,{name:n.fieldName},{depends_on:e.withCtx(l=>[e.createVNode(Dt,e.mergeProps(l,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(l=>[e.createVNode(Ft,e.mergeProps(l,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(u=>[e.createVNode(Dt,e.mergeProps(u,{items:e.unref(nf)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),wD=e.defineComponent({__name:"CalloutsForm",setup(n){const{formData:t}=ft();function r(){const o=t.config.callouts[t.config.callouts.length-1];o&&(o[Ya]=pw())}return(o,i)=>(e.openBlock(),e.createBlock(gn,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:e.withCtx(({index:a,fieldName:s})=>[e.createVNode(bD,{"field-name":s,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),kD=e.defineComponent({__name:"ConfigForm",setup(n){return(t,r)=>(e.openBlock(),e.createBlock(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(wD),e.createVNode(Ft,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(Ft,{appearance:"card",name:"cache"},{redis:e.withCtx(o=>[e.createVNode(Ft,e.mergeProps(o,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}))}}),CD=Je({component:Me(e.defineComponent({__name:"RequestCalloutForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Xe();function i(l,u=!1){return l.reduce((p,{[Ya]:d,name:f})=>(u?p[f]=d:p[d]=f,p),{})}function a(l){var p;const u=Ea(l);if((p=u.config)!=null&&p.callouts){const{callouts:d}=u.config;d.forEach(m=>{m.request.body.custom=m.request.body.custom??{},m[Ya]=pw()});const f=i(d,!0);d.forEach(m=>{m.depends_on=m.depends_on.map(g=>f[g])})}return u}const s={hasValue:l=>!!l&&Object.keys(l).length>0,prepareFormData:a};function c(l,u){var f;if(!l)return;const p=Ea(l);if(!((f=p.config)!=null&&f.callouts)){t.onFormChange(p,u);return}const d=i(p.config.callouts);p.config.callouts=p.config.callouts.map(m=>{const{[Ya]:g,depends_on:y,..._}=m;return{depends_on:y.map(b=>d[b]).filter(b=>b!=null),..._}}),t.onFormChange(p,u)}return(l,u)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"form-config":s,"on-form-change":c}),{"field-renderers":e.withCtx(()=>[e.createVNode($t,{match:({path:p})=>p.endsWith("by_lua")},{default:e.withCtx(p=>[e.createVNode(nt,e.mergeProps(p,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(o)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode($t,{match:({path:p})=>["cluster_nodes","sentinel_nodes"].some(d=>p.endsWith(d))},{default:e.withCtx(p=>[e.createVNode(gn,e.mergeProps(p,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(kD)]),_:1},16))}}),[["__scopeId","data-v-dc955662"]])}),ED=Je({experimental:!0}),ND=Je({experimental:!0}),SD=Je({experimental:!0,fieldRenderers:[{match:({path:n,genericPath:t})=>n==="config.replace.body"||t==="config.transform.functions.*"||t.endsWith(".json.*"),component:nt,propsOverrides:{multiline:!0,rows:3}}]}),xD=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n.endsWith(".json.*"),component:nt,propsOverrides:{multiline:!0,rows:3}}]}),AD=Je({experimental:!0}),vD={class:"sp-form-request-limits-subtitle"},ID={class:"sp-form-request-limits-content"},BD={class:"sp-form-window-type"},TD={class:"sp-form-request-limits-items"},OD={class:"sp-form-request-limits-row"},PD=["id"],VD={class:"sp-form-request-limits-actions"},$D={key:0,class:"sp-form-request-limits-examples"},RD={class:"sp-form-request-limits-examples-badges"},tp="config.window_type",LD=Me(e.defineComponent({__name:"RequestLimitsForm",setup(n){var _;const{t}=jt.createI18n("en-us",Yt),{formData:r,getSelectItems:o,getSchema:i}=ft(),a=e.computed(()=>{var w,C;const b=(C=(w=r.config)==null?void 0:w.limit)==null?void 0:C.map((x,E)=>{var k,N;return{limit:x,windowSize:(N=(k=r.config)==null?void 0:k.window_size)==null?void 0:N[E]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:s}=cf("request-limits",a),c=b=>{var w,C;f.value=void 0,r.config&&((w=r.config.limit)!=null&&w.length||(r.config.limit=[null]),(C=r.config.window_size)!=null&&C.length||(r.config.window_size=[null]),r.config.limit.splice(b+1,0,null),r.config.window_size.splice(b+1,0,null))},l=b=>{r.config&&(r.config.limit.splice(b,1),r.config.window_size.splice(b,1))},u=(_=i(tp))==null?void 0:_.default,p=e.computed(()=>ka(r,tp)),d=e.computed(()=>o(tp).sort((b,w)=>b.value===u?-1:w.value===u?1:0)),f=e.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,p.value)?m[p.value]:[]),y=(b,w)=>{if(w===f.value){e.nextTick(()=>{f.value=void 0}),r.config.limit=[],r.config.window_size=[];return}e.nextTick(()=>{f.value=w}),r.config.limit=[b.config.limit],r.config.window_size=[b.config.window_size]};return(b,w)=>{const C=e.resolveComponent("KLabel"),x=e.resolveComponent("KButton"),E=e.resolveComponent("KBadge"),k=e.resolveComponent("KTooltip"),N=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(N,{class:"sp-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(C,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",vD,e.toDisplayString(e.unref(t)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",ID,[e.createElementVNode("div",BD,[e.createVNode(Jf,{items:d.value,label:e.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=B=>f.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",TD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(B,U)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(s)(B,U)},[e.createVNode(C,{for:`sp-form-request-limits-item-${U}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.request_limits.label_index",{index:U+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",OD,[e.createElementVNode("legend",{id:`sp-form-request-limits-item-${U}-legend`,class:"sp-form-request-limits-inputs"},[e.createVNode(Ht,{name:`$.config.limit.${U}`,placeholder:e.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.interval_determiner")),1),e.createVNode(Ht,{name:`$.config.window_size.${U}`,placeholder:e.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.seconds")),1)],8,PD),e.createElementVNode("div",VD,[e.createVNode(x,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>l(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(x,{appearance:"tertiary",onClick:()=>c(U)},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",$D,[e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.start_with_a_use_case")),1),e.createElementVNode("div",RD,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(B,U)=>(e.openBlock(),e.createBlock(k,{key:`use-case-${U}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(B.description),1),w[1]||(w[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.label"))+": "+e.toDisplayString(B.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(t)("sp.request_limits.time_interval"))+": "+e.toDisplayString(B.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(E,{appearance:f.value===`${p.value}-${U}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(B,`${p.value}-${U}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(B.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-e12d9c9f"]]),DD={id:"sp-form-error-legend",class:"sp-form-error-inputs"},MD=Me(e.defineComponent({__name:"ErrorMessageForm",setup(n){const{t}=jt.createI18n("en-us",Yt);return(r,o)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"sp-form-error-legend",info:e.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",DD,[e.createVNode(Ht,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(nt,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-0796e152"]]),jD=e.defineComponent({__name:"RedisField",setup(n){const{formData:t}=ft(),r=e.inject(Qe.FORMS_CONFIG),o=e.inject(Ai),i=(o==null?void 0:o.isEditing)||!1,a=e.computed(()=>{if((r==null?void 0:r.app)!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return e.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=i?null:void 0)}),(s,c)=>(e.openBlock(),e.createBlock(Ll,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(t).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(Gf,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):e.createCommentVNode("",!0)]}),_:1}))}}),FD=e.defineComponent({__name:"ConfigForm",setup(n){return(t,r)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Ft,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(LD),e.createVNode(MD)]),_:1}),e.createVNode(za,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(it,{name:"config.dictionary_name"}),e.createVNode(it,{name:"config.lock_dictionary_name"}),e.createVNode(it,{name:"config.strategy"}),e.createVNode(jD),e.createVNode(it,{name:"config.namespace"}),e.createVNode(it,{name:"config.hide_client_headers"}),e.createVNode(it,{name:"config.disable_penalty"}),e.createVNode(it,{name:"config.retry_after_jitter_max"}),e.createVNode(it,{name:"config.sync_rate"})]),_:1})],64))}}),UD=Je({experimental:!0,component:e.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},model:{},onFormChange:{type:Function},formConfig:{},renderRules:{},fieldRenderers:{},pluginName:{},isKonnectManagedRedisEnabled:{type:Boolean},onValidityChange:{type:Function},isEditing:{type:Boolean},configSections:{},hideEditorModeSwitcher:{type:Boolean},developer:{type:Boolean},generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{}},setup(n){const t=n,r=e.useSlots();e.provide(Qe.AUTOFILL_SLOT,r==null?void 0:r[Qe.AUTOFILL_SLOT_NAME]);function o(i,a){var s;((s=i.config)==null?void 0:s.namespace)===null&&delete i.config.namespace,t.onFormChange(i,a)}return(i,a)=>(e.openBlock(),e.createBlock(Qn,e.mergeProps(t,{"on-form-change":o}),{default:e.withCtx(()=>[e.createVNode(FD)]),_:1},16))}})}),KD=Je({experimental:!0}),qD=Je({experimental:!0,fieldRenderers:[{match:({genericPath:n})=>n==="config.flow.functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),GD=Je({experimental:!0,fieldRenderers:[{match:"config.message.custom_fields_by_lua",component:fr,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),HD=Je({experimental:!0,fieldRenderers:[{match:"config.message.functions.*",component:nt,propsOverrides:{multiline:!0,rows:3}}]}),zD=Je({experimental:!0,renderRules:{bundles:[["config.cache.strategy","config.cache.redis"]],dependencies:{"config.cache.redis":["config.cache.strategy","redis"]}},fieldRenderers:[{match:"config.behavior.idp_error_response_body_template",component:nt,propsOverrides:{multiline:!0,rows:4}}]}),WD=Object.assign({"../plugins/acl/index.ts":MV,"../plugins/ai-custom-guardrail.ts":jV,"../plugins/ai-mcp-proxy/index.ts":FV,"../plugins/ai-prompt-decorator.ts":UV,"../plugins/ai-prompt-guard.ts":KV,"../plugins/ai-proxy-advanced.ts":qV,"../plugins/ai-proxy.ts":GV,"../plugins/ai-rate-limiting-advanced.ts":HV,"../plugins/aws-lambda.ts":zV,"../plugins/basic-auth/index.ts":i$,"../plugins/confluent-consume.ts":a$,"../plugins/confluent.ts":s$,"../plugins/correlation-id.ts":l$,"../plugins/cors.ts":c$,"../plugins/datakit/index.ts":vL,"../plugins/exit-transformer.ts":IL,"../plugins/file-log.ts":BL,"../plugins/header-cert-auth.ts":TL,"../plugins/http-log.ts":OL,"../plugins/jwe-decrypt.ts":PL,"../plugins/jwt-signer/index.ts":VL,"../plugins/jwt.ts":$L,"../plugins/kafka-consume.ts":RL,"../plugins/kafka-log.ts":LL,"../plugins/kafka-upstream.ts":DL,"../plugins/key-auth/index.ts":ML,"../plugins/metering-and-billing/index.ts":YL,"../plugins/mtls-auth.ts":JL,"../plugins/oauth2.ts":XL,"../plugins/opentelemetry.ts":ZL,"../plugins/prometheus.ts":QL,"../plugins/proxy-cache-advanced.ts":eD,"../plugins/proxy-cache.ts":tD,"../plugins/rate-limiting-advanced/index.ts":gD,"../plugins/rate-limiting.ts":yD,"../plugins/request-callout/index.ts":CD,"../plugins/request-transformer-advanced.ts":ED,"../plugins/request-transformer.ts":ND,"../plugins/response-transformer-advanced.ts":SD,"../plugins/response-transformer.ts":xD,"../plugins/route-transformer-advanced.ts":AD,"../plugins/service-protection/index.ts":UD,"../plugins/session.ts":KD,"../plugins/solace-consume.ts":qD,"../plugins/solace-log.ts":GD,"../plugins/solace-upstream.ts":HD,"../plugins/upstream-oauth.ts":zD});function YD(n){const t=n.match(/\.\.\/plugins\/(.+?)(?:\/index)?\.ts$/);if(!t)throw new Error(`Unable to derive plugin name from path: ${n}`);const[,r]=t;return r}function JD(n){const t={},r=new Map;for(const[o,i]of Object.entries(n)){const a=YD(o);if(r.has(a))throw new Error(`Duplicate plugin config for "${a}": ${r.get(a)} and ${o}`);r.set(a,o),t[a]={...i,component:i.component,experimental:i.experimental??!1,fieldRenderers:i.fieldRenderers??[]}}return t}const np=JD(WD);function mw(n){return np[n]}function hw(n,t){const r=mw(n);if(r&&!(r.experimental&&!t.includes(n)))return r.component}function gw(n,t,r){return r==="freeform"?!0:r==="vfg"?!1:!!hw(n,t)}function XD(){return Object.entries(np).filter(([,n])=>n.experimental).map(([n])=>n).sort((n,t)=>n.localeCompare(t))}function rp(){return e.inject(Ld,[])}function ZD(n){const t=new Set(XD()),r=n.filter(i=>t.has(i)),o=n.filter(i=>!t.has(i));return o.length>0&&console.warn(`[entities-plugins] Ignoring unknown experimental free-form plugins: ${o.join(", ")}`),r}function QD(n){e.provide(Ld,ZD(n))}function eM(){const n=rp();return{shouldUseFreeForm:(t,r)=>gw(t,n,r),getFreeFormComponent:t=>hw(t,n)}}function yw(n){var o,i;if(!n)return;if(!n.token_exchange)return n;if((Array.isArray((o=n.token_exchange.request)==null?void 0:o.audience)&&n.token_exchange.request.audience.length===0||n.token_exchange.request&&!n.token_exchange.request.audience)&&(n.token_exchange.request.audience=null),(Array.isArray((i=n.token_exchange.request)==null?void 0:i.scopes)&&n.token_exchange.request.scopes.length===0||n.token_exchange.request&&!n.token_exchange.request.scopes)&&(n.token_exchange.request.scopes=null),[{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1},subject_token_issuers:null},{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1}},{cache:{},request:{audience:null,scopes:null}}].some(a=>en(n.token_exchange,a)))return n.token_exchange=null,n;const r=n.token_exchange.subject_token_issuers;return r&&r.forEach(a=>{en(a.conditions,{})&&(a.conditions=null),a.conditions&&Object.values(a.conditions).every(s=>Array.isArray(s)&&s.length===0)&&(a.conditions=null)}),n}const _w=n=>{const t=n==null?void 0:n.proof_of_possession_mtls_from_header;if(!t)return;if(!Array.isArray(t.ca_certificates)||t.ca_certificates.length===0){n.proof_of_possession_mtls_from_header=null;return}en(t,{allow_partial_chain:!1,cert_cache_ttl:6e4,certificate_header_format:"url_encoded",http_timeout:3e4,revocation_check_mode:"IGNORE_CA_ERROR",secure_source:!0,ssl_verify:!0})&&(n.proof_of_possession_mtls_from_header=null)},tM={shamefullyTransformPayload(n){return yw(n.payload.config),_w(n.payload.config),n}},nM={shamefullyTransformPayload(n){var t,r,o,i,a;if(!((r=(t=n.payload.config)==null?void 0:t.access_logs)!=null&&r.custom_attributes_by_lua))return n;if(en((i=(o=n.payload.config)==null?void 0:o.access_logs)==null?void 0:i.custom_attributes_by_lua,{})){const s=(a=n.payload.config)==null?void 0:a.access_logs;s&&(s.custom_attributes_by_lua=null)}return n}},rM={shamefullyTransformPayload(n){var r,o;const t=(o=(r=n.payload.config)==null?void 0:r.v2_strategies)==null?void 0:o.openid_connect;return Array.isArray(t)&&t.forEach(i=>{yw(i.config),_w(i.config)}),n}},oM={shamefullyTransformPayload(n){var r;return!n.payload.config||!((r=n.payload.config)!=null&&r.token_exchange)||[{cache:{enabled:!0,ttl:3600},client_auth:"client_secret_basic",enabled:!1,request:{actor_token_source:"none",actor_token_type:"urn:ietf:params:oauth:token-type:access_token",audience:null,requested_token_type:"urn:ietf:params:oauth:token-type:access_token",scopes:null,subject_token_type:"urn:ietf:params:oauth:token-type:access_token"}}].some(o=>{var i;return en((i=n.payload.config)==null?void 0:i.token_exchange,o)})&&(n.payload.config.token_exchange=null),n}},iM=(n,t)=>{const r=n.model.startsWith("config-"),o=t.model.startsWith("config-");return r&&!o?1:!r&&o?-1:0},bw=(n,t)=>(n.order??0)-(t.order??0),ww=(n,t)=>iM(n,t)||bw(n,t)||n.model.localeCompare(t.model),aM=n=>{const{capitalize:t}=Ie.useStringHelpers(),{convertToDotNotation:r}=Hy(),{i18n:{t:o}}=Xe(),i=rp(),a={"application-registration":{overwriteDefault:!0,formSchema:{...WB}},datadog:{...YB},"exit-transformer":{...JB},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...cT},"statsd-advanced":{...uT},"route-by-header":{...iT},"ai-prompt-decorator":{...KB},"ai-prompt-template":{...qB},"ai-proxy-advanced":{...GB},"ai-rag-injector":{...HB},"ai-llm-as-judge":{...zB},"vault-auth":{...fT},"oas-validation":{...eT},mocking:{...QB},"rate-limiting":{...Pl},"rate-limiting-advanced":(n==null?void 0:n.app)==="kongManager"?{"config-consumer_groups":Pl["config-consumer_groups"]}:{...Pl},"graphql-rate-limiting-advanced":{...XB},"injection-protection":{...ZB},"response-ratelimiting":{...Pl},"pre-function":{...n_},"post-function":{...n_},"request-transformer-advanced":{...rT},"response-transformer":{...r_},"response-transformer-advanced":{...oT},zipkin:{...kT},"upstream-oauth":{...dT},saml:{...aT},"kafka-upstream":{...gT},"solace-consume":{...sT},"solace-upstream":{...lT},"key-auth":VB(n),"key-auth-enc":jB(n),confluent:{...yT},"confluent-consume":{..._T},"kafka-consume":{...bT},"kafka-log":{...wT},"openid-connect":{...tM},opentelemetry:{...nM},"konnect-application-auth":{...rM},"ai-mcp-oauth2":{...oM}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_sourcePlugin","_supported_redis_partial_type","_redis_partial_path"],c=(k,N,B,U)=>{let S={};(N||k)&&(S=N||(k.fields?k.fields:k));const A=s().concat(k.blacklist?k.blacklist:[]),O=Object.keys(S).filter(ee=>!A.includes(ee)),P=O.indexOf("comparator");P>-1&&O.splice(P,1);let R={fields:[]};const z={};O.forEach(ee=>{u(S[ee],ee,S,z,R,B)});const X=z.name,Z=k._sourcePlugin||X,K=Rn[Z],W=[],$=ee=>{const F=["cluster-cache"];for(const J of F)if(ee.model.includes(J))return!1;return new RegExp("(?<=-redis-).*").test(ee.model)};if(R._supported_redis_partial_type=k._supported_redis_partial_type,R._redis_partial_path=k._redis_partial_path,Qe.getSharedFormName(Z)||gw(Z,i,U)||K!=null&&K.useLegacyForm||n!=null&&n.credential){if(K!=null&&K.useLegacyForm&&(n!=null&&n.enableRedisPartial)&&k._supported_redis_partial_type){for(const ee of R.fields)if($(ee)){W.push(ee);continue}R.fields=R.fields.filter(ee=>!$(ee)),W.length&&R.fields.push({id:"_redis",fields:W,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}R.fields.sort((ee,F)=>(ee.order=ee.order||0,F.order=F.order||0,ee.order-F.order))}else{const ee=[],F=[],J=[],M=[],v={};if(K!=null&&K.fieldRules){const re=[...K.fieldRules.atLeastOneOf??[],...K.fieldRules.onlyOneOf??[],...K.fieldRules.mutuallyRequired??[]];if(K.fieldRules.onlyOneOfMutuallyRequired)for(const me of K.fieldRules.onlyOneOfMutuallyRequired)re.push(...me);for(const me of re)for(const he of me)v[he.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const re of R.fields){if(n!=null&&n.enableRedisPartial&&k._supported_redis_partial_type&&$(re)){M.push(re);continue}if(re.pinned){ee.push(re);continue}if(re.required||v[re.model]!==void 0){v[re.model]===!1&&(v[re.model]=!0),F.push(re);continue}J.push(re)}M.length&&J.push({id:"_redis",fields:M,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const j=Object.entries(v).filter(([,re])=>!re).map(([re])=>re.replace(/-/g,".").replace(/_/g,"-"));j.length>0&&console.warn(`Unknown checked fields for plugin ${X}: ${j.join(", ")}`);const ie=[];ee.length>0&&ie.push({fields:ee.sort(bw)}),(F.length>0||J.length>0)&&ie.push({fields:F.sort(ww),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:J.sort(ww),triggerLabel:{expand:o("plugins.form.grouping.advanced_parameters.view"),collapse:o("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),R={groups:ie}}return{schema:R,model:z,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},l=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",u=(k,N,B,U,S,A)=>{const O=l(k);return U[N]=O?k.default:null,k.id=N,k.model=N,k.fields&&k.type==="record"?d(k,N,B,U,S,A):(B[N]=k,x(k,U),A&&A[N]&&p(B[N],A[N]),S.fields.push(k)),B},p=(k,N)=>(N&&(Object.assign(k,N),N.label&&(k.label=N.label)),k),d=(k,N,B,U,S,A)=>{k.fields.forEach(O=>{Object.keys(O).forEach(P=>{const R=O[P];B=u(R,N+"-"+P,B,U,S,A)})})},f=(k,N)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const B=n==null?void 0:n.entityId;N[k.model]=B?{id:B}:null},m=k=>{k.type="input",k.inputType="number",k.between&&k.between.length===2&&(k.min=k.between[0],k.max=k.between[1])},g=k=>{Object.prototype.hasOwnProperty.call(k,"one_of")?(k.type="select",k.values=k.one_of,k.selectOptions={hideNoneSelectedText:!0}):(k.type="input",k.inputType="text")},y=k=>{k.type="checkbox",k.default=!0,k.required=!1},_=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:N}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...dt,model:k.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...dt.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(N=>{const B=Object.keys(N)[0];return{model:B,type:"input",label:t(B),placeholder:B,inputType:N[B].type}})}}]})},b=k=>k.fields.reduce((N,B)=>(B.fields&&B.fields.forEach(U=>{N[U.model]=U}),B.model&&(N[B.model]=B),N),{}),w=(k,N)=>{if(!Qe.customFields.includes(k.model))return;const B=b(k);Qe.customFields.forEach(U=>{Object.keys(B).forEach(S=>{const A=l(B[S]);N[S]=A?B[S].default:null}),delete N[U]})},C=(k,N)=>k.inputType==="hidden"?"":r(k.label||N.replace(/_/g," ")),x=(k,N)=>{switch(w(k,N),k.type){case"foreign":f(k,N);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":g(k);break;case"boolean":y(k);break;case"map":_(k);break}k.inputType==="foreign"&&f(k,N),k.label=C(k,k.model)};function E(k,N){if(N==null||N.type&&N.type!=="record"||typeof k!="object"||k==null)return k;const B={};for(const U of N.fields){const S=Object.keys(U)[0],A=U[S];A.type==="record"?B[S]=E(k[S],A):A.type==="array"&&Array.isArray(k[S])&&A.elements.type==="record"?B[S]=k[S].map(O=>E(O,A.elements)):B[S]=k[S]}return B}return{buildFormSchema:u,parseSchema:c,customSchemas:a,typedefs:ai,pruneRecord:E}},uc=Symbol("customPluginType"),sM=1e3,lM=20,kw=5e3,Cw=(n,t=sM)=>{const r=/^[a-z][a-z\d+.-]*:/i.test(n),o=new URL(n,"http://localhost");return o.searchParams.has("size")||o.searchParams.set("size",`${t}`),r?o.toString():`${o.pathname}${o.search}${o.hash}`},dc=async(n,t,r)=>{const o=[];let i=Cw(t),a=null,s=0;for(;i&&s<lM&&o.length<kw&&i!==a;){a=i;const l=(await n.get(i,{signal:r})).data;Array.isArray(l==null?void 0:l.data)&&o.push(...l.data),i=l!=null&&l.next?Cw(l.next):null,s+=1}return o.slice(0,kw)};function cM(n){const{axiosInstance:t,apiBaseUrl:r}=n,o=()=>{if(n.app!=="konnect")throw new Error("Installed custom plugin APIs are only available for Konnect")},i=(_,b)=>{let w=`${r}${_}`;return n.app==="konnect"&&(w=w.replace(/{controlPlaneId}/gi,n.controlPlaneId)),w=w.replace(/{pluginId}/gi,b??"").replace(/\/{workspace}/gi,n.workspace?`/${n.workspace}`:""),w},a=async _=>{o();const b=i(et.customPlugin.konnect.installed.edit,_),{data:w}=await t.get(b);return w},s=async _=>{o();const b=i(et.customPlugin.konnect.installed.create),{data:w}=await t.post(b,_);return w},c=async(_,b)=>{o();const w=i(et.customPlugin.konnect.installed.edit,_),{data:C}=await t.put(w,b);return C},l=async _=>{const b=i(et.customPlugin[n.app].streamed.edit,_),{data:w}=await t.get(b);return w},u=async _=>{const b=i(et.customPlugin[n.app].streamed.create),{data:w}=await t.post(b,_);return w},p=async(_,b)=>{const w=i(et.customPlugin[n.app].streamed.edit,_),C=n.app==="konnect"?"put":"patch",{data:x}=await t[C](w,b);return x},d=async _=>{const{aliasName:b,priority:w,sourcePlugin:C}=_,x=i(et.customPlugin[n.app].cloned.create),{data:E}=await t.post(x,{name:b,ref:C,priority:w});return E},f=async(_,b)=>{const{aliasName:w,priority:C,sourcePlugin:x}=b,E=i(et.customPlugin[n.app].cloned.edit,_),k=n.app==="konnect"?"put":"patch",{data:N}=await t[k](E,{ref:x,priority:C,name:w});return N},m=async _=>{const b=i(et.customPlugin[n.app].cloned.edit,_),{data:w}=await t.get(b);return w};return{getInstalledPlugin:a,createInstalledPlugin:s,updateInstalledPlugin:c,getStreamedPlugin:l,createStreamedPlugin:u,updateStreamedPlugin:p,getPluginByUnknownType:async _=>{var b,w,C;if(n.app==="konnect")try{const x=await a(_);return Object.assign(x,{[uc]:"installed"})}catch(x){if(zo.isAxiosError(x)&&((b=x.response)==null?void 0:b.status)!==404)throw x}try{const x=await l(_);return Object.assign(x,{[uc]:"streamed"})}catch(x){if(zo.isAxiosError(x)&&((w=x.response)==null?void 0:w.status)!==404)throw x}try{const x=await m(_);return Object.assign(x,{[uc]:"cloned"})}catch(x){if(zo.isAxiosError(x)&&((C=x.response)==null?void 0:C.status)!==404)throw x}return null},getPluginType:_=>_[uc],getClonedPlugin:m,createClonedPlugin:d,updateClonedPlugin:f}}const st={useI18n:Xe,usePluginMetaData:e_,usePluginHelpers:Hy,useSchemas:aM,useExperimentalFreeForms:rp,useProvideExperimentalFreeForms:QD,useFreeFormResolver:eM,useCustomPluginApi:cM},Ew=n=>{var r,o,i,a;const t=n==null?void 0:n.response;return(t==null?void 0:t.status)===400&&(((o=(r=t.data)==null?void 0:r.message)==null?void 0:o.includes("plugin schema is currently in use"))||((i=t.data)==null?void 0:i.code)===19||((a=t.data)==null?void 0:a.name)==="referenced by others")},uM={class:"kong-ui-entities-custom-plugin-form"},dM={class:"plugin-type-radios"},fM={class:"compare-table-wrapper"},pM={class:"compare-table"},mM={key:0,scope:"col"},hM={key:1,scope:"col"},gM={key:2,scope:"col"},yM={scope:"row"},_M={key:0},bM={key:1},wM={key:2},kM={scope:"row"},CM={key:0},EM={class:"compare-list"},NM={key:1},SM={class:"compare-list"},xM={key:2},AM={scope:"row"},vM={key:0},IM={key:1},BM={key:2},TM={scope:"row"},OM={key:0},PM={key:1},VM={key:2},$M={scope:"row"},RM={key:0},LM={key:1},DM={key:2},MM={class:"plugin-modules-section"},jM={class:"plugin-select-item"},FM={class:"plugin-select-item"},UM={key:1},KM=1*1024*1024,qM=Me(e.defineComponent({__name:"CustomPluginForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!n.app||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&!n.workspace||!n.cancelRoute||!n.successRoute)},pluginName:{type:String,default:""},unsupportedTypes:{type:Array,default:()=>[]}},emits:["update","error","loading"],setup(n,{emit:t}){var he;const r=["acl","datakit","file-log","http-log","ip-restriction","key-auth","opa","openid-connect","post-function","pre-function","request-transformer-advanced","request-transformer","response-transformer-advanced","response-transformer","route-by-header","tcp-log"],o=["installed","streamed","cloned"],i=n,a=t,{i18n:{t:s},i18nT:c}=st.useI18n(),l=Nr.useRouter(),{getMessageFromError:u}=Ie.useErrors(),{axiosInstance:p}=Ie.useAxios((he=i.config)==null?void 0:he.axiosRequestConfig),{createInstalledPlugin:d,updateInstalledPlugin:f,createStreamedPlugin:m,updateStreamedPlugin:g,getPluginType:y,getPluginByUnknownType:_,createClonedPlugin:b,updateClonedPlugin:w}=st.useCustomPluginApi({axiosInstance:p,apiBaseUrl:i.config.apiBaseUrl,controlPlaneId:i.config.controlPlaneId,app:i.config.app,workspace:i.config.workspace});e.provide(Ie.PLUGIN_FORM_LAYOUT_STATE,e.ref(!0));const C=e.ref(null),x=(le,ge)=>{const Oe=i.config.workspace??"",$e=i.config.app==="konnect"?i.config.controlPlaneId:"";return`${i.config.apiBaseUrl}${le}`.replace(/{controlPlaneId}/gi,$e).replace(/{pluginId}/gi,ge??"").replace(/\/\{workspace\}/gi,Oe?`/${Oe}`:"")},E=e.computed(()=>{const le=$.fields.pluginType;if(!le)return"";const ge=U.value?i.pluginName:void 0,Oe=ge?"edit":"create";if(i.config.app==="konnect"){if(le==="installed")return x(et.customPlugin.konnect.installed[Oe],ge);if(le==="streamed")return x(et.customPlugin.konnect.streamed[Oe],ge);if(le==="cloned")return x(et.customPlugin.konnect.cloned[Oe],ge)}else{if(le==="streamed")return x(et.customPlugin.kongManager.streamed[Oe],ge);if(le==="cloned")return x(et.customPlugin.kongManager.cloned[Oe],ge)}return""}),k=e.computed(()=>U.value?$.fields.pluginType==="cloned"?i.config.app==="konnect"?"put":"patch":i.config.app==="kongManager"&&$.fields.pluginType==="streamed"?"patch":"put":"post"),N=e.computed(()=>{switch($.fields.pluginType){case"installed":return Ie.SupportedEntityType.PluginSchema;case"streamed":return Ie.SupportedEntityType.CustomPlugin;case"cloned":return Ie.SupportedEntityType.ClonedPlugin;default:return Ie.SupportedEntityType.Plugin}}),B=e.computed(()=>{switch($.fields.pluginType){case"installed":return{lua_schema:$.fields.schemaContent};case"streamed":return{name:$.fields.name,schema:$.fields.schemaContent,handler:$.fields.handlerContent};case"cloned":return{ref:$.fields.sourcePlugin,name:$.fields.aliasName,...$.fields.priority?{priority:parseInt($.fields.priority,10)}:{}};default:return{}}}),U=e.computed(()=>!!i.pluginName),S=e.ref(!1),A=e.ref(""),O=e.computed(()=>new Set(i.unsupportedTypes)),P=e.computed(()=>o.filter(le=>!O.value.has(le))),R=e.computed(()=>!U.value&&P.value.length===0),z=e.computed(()=>!U.value&&P.value.length>1),X=()=>P.value[0]??null,Z=le=>P.value.includes(le),K=le=>{if(U.value||!z.value){const ge=le-1;return($.fields.pluginType==="installed"?1:2)>1?ge:void 0}return le},W=e.ref(!0),$=e.reactive({fields:{pluginType:X(),schemaContent:"",handlerContent:"",name:"",sourcePlugin:"",aliasName:"",priority:""},readonly:!1,errorMessage:""});let ee="";e.watch(P,le=>{U.value||(!$.fields.pluginType||!le.includes($.fields.pluginType))&&($.fields.pluginType=le[0]??null)},{immediate:!0}),e.watch(()=>$.fields.pluginType,()=>{U.value||($.fields.schemaContent="",$.fields.handlerContent="",$.fields.name="",$.fields.sourcePlugin="",$.fields.aliasName="",$.fields.priority="")});const{getDisplayName:F}=e_(),J=e.computed(()=>{var $e;const le=(($e=i.config)==null?void 0:$e.clonablePlugins)??r;if(le.length===0)return[];const ge={};le.forEach(Pe=>{const qe=Rn[Pe],Ye=qe==null?void 0:qe.group;Ye?(ge[Ye]||(ge[Ye]=[]),ge[Ye].push({label:F(Pe),value:Pe})):console.warn(`Plugin ${Pe} is missing metadata group and will be shown without grouping.`)});const Oe=[];return Object.keys(ge).sort().forEach(Pe=>{Oe.push({label:Pe,items:ge[Pe]})}),Oe}),M=e.computed(()=>{if(R.value||!$.fields.pluginType)return!1;switch($.fields.pluginType){case"installed":return $.fields.schemaContent.length>0;case"streamed":return $.fields.schemaContent.length>0&&$.fields.handlerContent.length>0&&$.fields.name.trim().length>0;case"cloned":return!!$.fields.sourcePlugin&&$.fields.aliasName.trim().length>0;default:return!1}}),v=le=>new Promise((ge,Oe)=>{const $e=new FileReader;$e.onload=Pe=>{var Ye;const qe=(Ye=Pe.target)==null?void 0:Ye.result;typeof qe=="string"?ge(qe):Oe(new Error("Failed to read file as text"))},$e.onerror=Oe,$e.readAsText(le)}),j=async(le,ge)=>{const Oe=ge[0];if(Oe){if(Oe.size>KM){$.errorMessage=s("custom_plugin_form.errors.file_too_large");return}try{const $e=await v(Oe);le==="schema"?$.fields.schemaContent=$e:$.fields.handlerContent=$e}catch{$.errorMessage=s("custom_plugin_form.errors.file_read_error"),le==="schema"?$.fields.schemaContent="":$.fields.handlerContent=""}}},ie=le=>{le==="schema"?$.fields.schemaContent="":$.fields.handlerContent=""},re=()=>{l.push(i.config.cancelRoute)};e.onMounted(async()=>{if(i.pluginName){S.value=!0,a("loading",!0);try{const le=await _(i.pluginName);if(!le){A.value=s("custom_plugin_form.errors.plugin_not_found"),a("error",new Error(A.value));return}const ge=y(le);if($.fields.pluginType=ge,ge==="installed")$.fields.schemaContent=le.item.lua_schema;else if(ge==="streamed"){const{name:Oe,schema:$e,handler:Pe}=le;$.fields.name=Oe,$.fields.schemaContent=$e,$.fields.handlerContent=Pe}else if(ge==="cloned"){const{ref:Oe,name:$e,priority:Pe}=le;$.fields.aliasName=$e,$.fields.sourcePlugin=Oe,$.fields.priority=Pe!==null?String(Pe):"",ee=$e}else A.value=s("custom_plugin_form.errors.unsupported_plugin_type",{type:ge}),a("error",new Error(A.value))}catch(le){A.value=u(le),a("error",le)}finally{S.value=!1,a("loading",!1)}}});const me=async()=>{$.errorMessage="",$.readonly=!0;try{const le=$.fields.pluginType;if(!le)return;if(le==="installed"){const ge={lua_schema:$.fields.schemaContent},Oe=U.value?await f(i.pluginName,ge):await d(ge);a("update",Oe)}else if(le==="streamed"){const ge={name:$.fields.name,schema:$.fields.schemaContent,handler:$.fields.handlerContent},Oe=U.value?await g(i.pluginName,ge):await m(ge);a("update",Oe)}else{const ge=U.value?await w(ee,{aliasName:$.fields.aliasName,sourcePlugin:$.fields.sourcePlugin,priority:$.fields.priority?parseInt($.fields.priority,10):void 0}):await b({aliasName:$.fields.aliasName,sourcePlugin:$.fields.sourcePlugin,priority:$.fields.priority?parseInt($.fields.priority,10):void 0});a("update",{pluginType:"cloned",sourcePlugin:ge.ref,aliasName:ge.name,priority:ge.priority??void 0})}l.push(i.config.successRoute)}catch(le){$.errorMessage=Ew(le)?s("delete.plugin_schema_in_use_message"):u(le),a("error",le)}finally{$.readonly=!1}};return(le,ge)=>{const Oe=e.resolveComponent("KSkeleton"),$e=e.resolveComponent("KEmptyState"),Pe=e.resolveComponent("KRadio"),qe=e.resolveComponent("KCollapse"),Ye=e.resolveComponent("KFileUpload"),tt=e.resolveComponent("KLabel"),Ve=e.resolveComponent("KAlert"),ke=e.resolveComponent("KSelect"),_e=e.resolveComponent("KInput"),ye=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",uM,[e.createVNode(e.unref(Ie.EntityBaseForm),{ref_key:"entityBaseFormRef",ref:C,"can-submit":M.value,config:n.config,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"error-message":$.errorMessage,"form-fields":B.value,"is-readonly":$.readonly,"slideout-deck-entity-type":N.value,"slideout-fetch-url":E.value,"slideout-request-method":k.value,onCancel:re,onSubmit:me},{"form-actions":e.withCtx(()=>[S.value||A.value||R.value?(e.openBlock(),e.createElementBlock("span",UM)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(ye,{appearance:"primary","data-testid":"custom-plugin-form-submit",disabled:!M.value||$.readonly,type:"submit"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.save")),1)]),_:1},8,["disabled"]),e.createVNode(ye,{appearance:"secondary","data-testid":"custom-plugin-form-cancel",disabled:$.readonly,onClick:re},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.cancel")),1)]),_:1},8,["disabled"]),e.createVNode(ye,{appearance:"tertiary","data-testid":"custom-plugin-form-view-configuration",onClick:ge[14]||(ge[14]=ae=>{var te;return(te=C.value)==null?void 0:te.viewConfig()})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.view_configuration")),1)]),_:1})],64))]),default:e.withCtx(()=>[S.value?(e.openBlock(),e.createBlock(Oe,{key:0,type:"form"})):A.value?(e.openBlock(),e.createBlock($e,{key:1,"action-button-visible":!1,"data-testid":"custom-plugin-form-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(A.value),1)]),_:1})):R.value?(e.openBlock(),e.createBlock($e,{key:2,"action-button-visible":!1,"data-testid":"custom-plugin-form-unsupported-types-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(s)("custom_plugin_form.errors.no_supported_types")),1)]),_:1})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:3},[z.value?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:0,class:"custom-plugin-form-steps",step:1,title:e.unref(s)("custom_plugin_form.step1.title")},{default:e.withCtx(()=>[e.createElementVNode("div",dM,[Z("installed")?(e.openBlock(),e.createBlock(Pe,{key:0,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[0]||(ge[0]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-installed",description:e.unref(s)("custom_plugin_form.step1.types.installed.description"),label:e.unref(s)("custom_plugin_form.step1.types.installed.label"),"selected-value":"installed"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createBlock(Pe,{key:1,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[1]||(ge[1]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-streamed",description:e.unref(s)("custom_plugin_form.step1.types.streamed.description"),label:e.unref(s)("custom_plugin_form.step1.types.streamed.label"),"selected-value":"streamed"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createBlock(Pe,{key:2,modelValue:$.fields.pluginType,"onUpdate:modelValue":ge[2]||(ge[2]=ae=>$.fields.pluginType=ae),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-cloned",description:e.unref(s)("custom_plugin_form.step1.types.cloned.description"),label:e.unref(s)("custom_plugin_form.step1.types.cloned.label"),"selected-value":"cloned"},null,8,["modelValue","description","label"])):e.createCommentVNode("",!0)]),e.createVNode(qe,{modelValue:W.value,"onUpdate:modelValue":ge[3]||(ge[3]=ae=>W.value=ae),class:"custom-plugin-form-compare-collapse","data-testid":"compare-deployment-options","trigger-alignment":"leading","trigger-label":e.unref(s)("custom_plugin_form.step1.compare_trigger")},{default:e.withCtx(()=>[e.createElementVNode("div",fM,[e.createElementVNode("table",pM,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[ge[15]||(ge[15]=e.createElementVNode("th",{scope:"col"},null,-1)),Z("installed")?(e.openBlock(),e.createElementBlock("th",mM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("th",hM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("th",gM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.columns.cloned")),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("tbody",null,[e.createElementVNode("tr",null,[e.createElementVNode("th",yM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",_M,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",bM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",wM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",kM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",CM,[e.createElementVNode("ul",EM,[e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.handler")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.schema")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.additional")),1)])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",NM,[e.createElementVNode("ul",SM,[e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.handler")),1),e.createElementVNode("li",null,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.schema")),1)])])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",xM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",AM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",vM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.installed")),1)):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",IM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.streamed")),1)):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",BM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",TM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",OM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",PM,[e.createVNode(e.unref(c),{keypath:"custom_plugin_form.step1.compare_table.rows.sandboxing.streamed"},{link:e.withCtx(()=>[e.createVNode(e.unref(Fe.KExternalLink),{"hide-icon":"",href:e.unref(Ha).customPluginSandboxing},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.streamed_link")),1)]),_:1},8,["href"])]),_:1})])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",VM,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.cloned")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("tr",null,[e.createElementVNode("th",$M,e.toDisplayString(e.unref(s)("custom_plugin_form.step1.compare_table.rows.data_plane_reload.header")),1),Z("installed")?(e.openBlock(),e.createElementBlock("td",RM,[e.createVNode(e.unref(Re.CheckCircleIcon),{color:`var(--kui-color-text-success, ${e.unref(Rh)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("streamed")?(e.openBlock(),e.createElementBlock("td",LM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0),Z("cloned")?(e.openBlock(),e.createElementBlock("td",DM,[e.createVNode(e.unref(Re.ClearIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])])):e.createCommentVNode("",!0)])])])])]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["title"])):e.createCommentVNode("",!0),$.fields.pluginType==="installed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:1,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_files.title")},{default:e.withCtx(()=>[e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:e.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:U.value&&$.fields.schemaContent?e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!U.value,onFileAdded:ge[4]||(ge[4]=ae=>j("schema",ae)),onFileRemoved:ge[5]||(ge[5]=ae=>ie("schema"))},null,8,["button-text","help","label","placeholder","required"]),e.createElementVNode("div",MM,[e.createVNode(tt,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step2_files.plugin_modules.label")),1)]),_:1}),e.createVNode(Ve,{appearance:"warning",message:e.unref(s)("custom_plugin_form.step2_files.plugin_modules.alert")},null,8,["message"])])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="streamed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:2,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_files.title")},{default:e.withCtx(()=>[e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:e.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:U.value&&$.fields.schemaContent?e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!U.value,onFileAdded:ge[6]||(ge[6]=ae=>j("schema",ae)),onFileRemoved:ge[7]||(ge[7]=ae=>ie("schema"))},null,8,["button-text","help","label","placeholder","required"]),e.createVNode(Ye,{accept:[".lua"],"button-text":e.unref(s)("custom_plugin_form.step2_files.handler_file.button_text"),"data-testid":"custom-plugin-handler-upload",help:e.unref(s)("custom_plugin_form.step2_files.handler_file.help"),label:e.unref(s)("custom_plugin_form.step2_files.handler_file.label"),placeholder:U.value&&$.fields.handlerContent?e.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder_edit"):e.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder"),required:!U.value,onFileAdded:ge[8]||(ge[8]=ae=>j("handler",ae)),onFileRemoved:ge[9]||(ge[9]=ae=>ie("handler"))},null,8,["button-text","help","label","placeholder","required"])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="cloned"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:3,class:"custom-plugin-form-steps",step:K(2),title:e.unref(s)("custom_plugin_form.step2_clone.title")},{default:e.withCtx(()=>[e.createVNode(ke,{modelValue:$.fields.sourcePlugin,"onUpdate:modelValue":ge[10]||(ge[10]=ae=>$.fields.sourcePlugin=ae),"data-testid":"custom-plugin-clone-select","enable-filtering":"",items:J.value,label:e.unref(s)("custom_plugin_form.step2_clone.select_plugin.label"),placeholder:e.unref(s)("custom_plugin_form.step2_clone.select_plugin.placeholder"),required:""},{"item-template":e.withCtx(({item:ae})=>[e.createElementVNode("div",jM,[e.createVNode(e.unref(Er.PluginIcon),{name:String(ae.value),size:20},null,8,["name"]),e.createElementVNode("span",null,e.toDisplayString(ae.label),1)])]),"selected-item-template":e.withCtx(({item:ae})=>[e.createElementVNode("div",FM,[e.createVNode(e.unref(Er.PluginIcon),{name:String(ae.value),size:20},null,8,["name"]),e.createElementVNode("span",null,e.toDisplayString(ae.label),1)])]),_:1},8,["modelValue","items","label","placeholder"])]),_:1},8,["step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="streamed"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:4,class:"custom-plugin-form-steps",description:e.unref(s)("custom_plugin_form.step3.description"),step:K(3),title:e.unref(s)("custom_plugin_form.step3.title")},{default:e.withCtx(()=>[e.createVNode(_e,{modelValue:$.fields.name,"onUpdate:modelValue":ge[11]||(ge[11]=ae=>$.fields.name=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-name",help:e.unref(s)("custom_plugin_form.step3.name.help"),label:e.unref(s)("custom_plugin_form.step3.name.label"),placeholder:e.unref(s)("custom_plugin_form.step3.name.placeholder"),readonly:$.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"])]),_:1},8,["description","step","title"])):e.createCommentVNode("",!0),$.fields.pluginType==="cloned"?(e.openBlock(),e.createBlock(e.unref(Ie.EntityFormBlock),{key:5,class:"custom-plugin-form-steps",description:e.unref(s)("custom_plugin_form.step3.description"),step:K(3),title:e.unref(s)("custom_plugin_form.step3.title")},{default:e.withCtx(()=>[e.createVNode(_e,{modelValue:$.fields.aliasName,"onUpdate:modelValue":ge[12]||(ge[12]=ae=>$.fields.aliasName=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-alias-name",help:e.unref(s)("custom_plugin_form.step3.alias_name.help"),label:e.unref(s)("custom_plugin_form.step3.alias_name.label"),placeholder:e.unref(s)("custom_plugin_form.step3.alias_name.placeholder"),readonly:$.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"]),e.createVNode(_e,{modelValue:$.fields.priority,"onUpdate:modelValue":ge[13]||(ge[13]=ae=>$.fields.priority=ae),modelModifiers:{trim:!0},"data-testid":"custom-plugin-priority",label:e.unref(s)("custom_plugin_form.step3.priority.label"),"label-attributes":{info:e.unref(s)("custom_plugin_form.step3.priority.tooltip")},readonly:$.readonly,type:"number"},{help:e.withCtx(()=>[e.createVNode(e.unref(c),{keypath:"custom_plugin_form.step3.priority.help.text"},{link:e.withCtx(()=>[e.createVNode(e.unref(Fe.KExternalLink),{"hide-icon":"",href:e.unref(Ha).pluginPriority},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("custom_plugin_form.step3.priority.help.link")),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["modelValue","label","label-attributes","readonly"])]),_:1},8,["description","step","title"])):e.createCommentVNode("",!0)],64))]),_:1},8,["can-submit","config","entity-type","error-message","form-fields","is-readonly","slideout-deck-entity-type","slideout-fetch-url","slideout-request-method"])])}}}),[["__scopeId","data-v-0c1e017a"]]),GM=(n,t)=>({type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label",items:{type:"select",values:n,selectOptions:{hideNoneSelectedText:!0},...(t==null?void 0:t[0])!=null?{default:t[0]}:{}}}),HM={class:"referable-field-item"},zM=24,Nw=Me(e.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(n){const t=n,{formatPluginFieldLabel:r}=st.usePluginHelpers(),o=e.computed(()=>t.field.replace(/\./g,"-")),i=e.computed(()=>t.field.replace(/^[cC]onfig\./,"").split(".").map(s=>r(s)).join(".")),a=()=>{if(!o.value)return;const s=`label[for="${o.value}"]`,c=document.querySelector(s)||document.getElementById(o.value);if(!c)return;const l=Math.max(0,c.getBoundingClientRect().top+window.scrollY-zM),u=()=>{var p;(p=c.click)==null||p.call(c)};window.addEventListener("scrollend",u,{once:!0}),window.scrollTo({top:l,behavior:"smooth"})};return(s,c)=>(e.openBlock(),e.createElementBlock("span",HM,[e.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:a},e.toDisplayString(i.value),1),n.isLast?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-949a9ea1"]]),WM={key:0},YM=Me(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(n){const t=n,{i18n:{t:r},i18nT:o}=st.useI18n(),i=e.computed(()=>{const a=[];if(t.rules.atLeastOneOf)for(const s of t.rules.atLeastOneOf)a.push({key:"plugins.form.field_rules.at_least_one_of",fields:s});if(t.rules.onlyOneOf)for(const s of t.rules.onlyOneOf)a.push({key:"plugins.form.field_rules.only_one_of",fields:s});if(t.rules.mutuallyRequired)for(const s of t.rules.mutuallyRequired)a.push({key:"plugins.form.field_rules.mutually_required",fields:s});return a});return(a,s)=>{const c=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(c,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,({key:l,fields:u},p)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${p}`},[e.createVNode(e.unref(o),{keypath:l},{parameters:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u,(d,f)=>(e.openBlock(),e.createBlock(Nw,{key:`alert-field-${d}`,field:d,"is-last":f===u.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),t.rules.onlyOneOfMutuallyRequired&&t.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",WM,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.rules.onlyOneOfMutuallyRequired,(l,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l,(p,d)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${d}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p,(f,m)=>(e.openBlock(),e.createBlock(Nw,{key:`only-one-mutually-field-${f}`,field:f,"is-last":m===p.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-5f9ff453"]]);function JM(n){if(n.length===0)return"";if(n.length===1){const i=mn(n[0]);return gt(...i.slice(0,-1))}const t=n.map(i=>mn(i)),r=Math.min(...t.map(i=>i.length)),o=[];for(let i=0;i<r-1;i++){const a=t[0][i];if(t.every(s=>s[i]===a))o.push(a);else break}return gt(...o)}function op(n){return"at_least_one_of"in n?n.at_least_one_of:"mutually_required"in n?n.mutually_required:"mutually_exclusive"in n?n.mutually_exclusive:null}function XM(n,t){if(!t)return n;const r=t+Pa;return n.map(o=>o.startsWith(r)?o.slice(r.length):o)}function ZM(n,t){const r=op(n),o=XM(r,t);return"at_least_one_of"in n?{at_least_one_of:o}:"mutually_required"in n?{mutually_required:o}:{mutually_exclusive:o}}function QM(n){const t=[],r=new Map;for(const o of n){const i=op(o);if(!i){t.push(o);continue}const a=JM(i);if(!a){t.push(o);continue}const s=ZM(o,a);r.has(a)||r.set(a,[]),r.get(a).push(s)}return{keep:t,move:r}}function ej(n,t,r){const o=mn(t);let i=n;for(const a of o){const s=i.fields.find(l=>Object.keys(l)[0]===a);if(!s)return;const c=s[a];if(c.type!=="record")return;i=c}i.entity_checks=[...i.entity_checks||[],...r]}function Sw(n){var t;if((t=n.entity_checks)!=null&&t.length){const{keep:r,move:o}=QM(n.entity_checks);n.entity_checks=r.length?r:void 0;for(const[i,a]of o)ej(n,i,a)}for(const r of n.fields){const o=Object.values(r)[0];o.type==="record"&&Sw(o)}}function tj(n){const t=JSON.parse(JSON.stringify(n)),r={fields:t.fields};return Sw(r),t.fields=r.fields,t}function nj(n,t){const r=Rn[n];if(!r||!r.fieldRules)return t;const o=rj(r.fieldRules),i={...t};return i.fields=i.fields.map(a=>{if(Object.keys(a)[0]==="config"){const c=a.config.entity_checks||[],l=d=>{const m=[...op(d)??[]].slice().sort();return`${Object.keys(d)[0]}:${m.join(",")}`},u=new Set(c.map(l)),p=o.filter(d=>{const f=l(d);return u.has(f)?!1:(u.add(f),!0)});return{config:{...a.config,entity_checks:[...c,...p]}}}return a}),i}function rj(n){const t=[],r=o=>o.startsWith("config.")?o.substring(7):o;return n.atLeastOneOf&&n.atLeastOneOf.forEach(o=>{t.push({at_least_one_of:o.map(r)})}),n.onlyOneOf&&n.onlyOneOf.forEach(o=>{t.push({mutually_exclusive:o.map(r)})}),n.mutuallyRequired&&n.mutuallyRequired.forEach(o=>{t.push({mutually_required:o.map(r)})}),n.onlyOneOfMutuallyRequired&&n.onlyOneOfMutuallyRequired.forEach(o=>{if(o.forEach(i=>{t.push({mutually_required:i.map(r)})}),o.length>1)for(let i=0;i<o.length;i++)for(let a=i+1;a<o.length;a++){const s=o[i].map(r),c=o[a].map(r);s.forEach(l=>{c.forEach(u=>{t.push({mutually_exclusive:[l,u]})})})}}),t}const oj={class:"kong-ui-entities-plugin-form"},ij={key:1,class:"entity-form"},aj={class:"plugin-config-empty-state"},sj=Me(e.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0},developer:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","click:learn-more","click:create-entity","validity-change"],setup(n,{emit:t}){var tt,Ve;const r=t,o=n,i=e.computed(()=>{if(o.config.app!=="konnect")return!1;const ke=o.config;return!!ke.isKonnectManagedRedisEnabled&&ke.isCloudGateway===!0}),a=e.inject(dr.KM_2306_CONDITION_FIELD_314,!1),s=e.inject(dr.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),{axiosInstance:c}=Ie.useAxios((tt=o.config)==null?void 0:tt.axiosRequestConfig),{parseSchema:l}=st.useSchemas({entityId:((Ve=o.entityMap.focusedEntity)==null?void 0:Ve.id)||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:u,unFlattenObject:p,dismissField:d,isObjectEmpty:f,unsetNullForeignKey:m}=st.usePluginHelpers(),{shouldUseFreeForm:g,getFreeFormComponent:y}=st.useFreeFormResolver(),_=e.inject(Ie.PLUGIN_FORM_LAYOUT_STATE),b=ke=>{_&&(_.value=ke)},{objectsAreEqual:w}=Ie.useHelpers(),{i18n:{t:C}}=Xe(),x=ke=>{let _e=ke;return o.config.app==="konnect"&&(_e=_e.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||"")),_e.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")},E=(ke,_e)=>{let ye=`${o.config.apiBaseUrl}${et.form[o.config.app].entityGetOne}`;return ye=x(ye),ye=ye.replace(/{entity}/gi,ke),ye=ye.replace(/{id}/gi,_e),ye},k=ke=>{let _e=`${o.config.apiBaseUrl}${et.form[o.config.app].entityGetAll}`;return _e=x(_e),_e=_e.replace(/{entity}/gi,ke),_e},N=(ke,_e,ye)=>{const ae=E(ke,_e);return c.get(ae,ye)},B=(ke,_e)=>{const ye=k(ke);return o.config.app==="konnect"?c.get(ye).then(ae=>{const{data:{data:te}}=ae;if(delete _e.size,delete _e.offset,te.length&&Object.keys(_e).length===1){const se=Object.keys(_e)[0],ue=te.filter(Ee=>Ee[se]?!!Ee[se].toLowerCase().includes(_e[se].toLowerCase()):!1);ae.data.data=ue}return ae}):c.get(ye,{params:_e})},U=(ke,_e,ye)=>{const ae=k(ke);if(o.config.app==="konnect"){const{size:te,offset:se,...ue}=_e;if(ke==="consumer_groups")return c.get(ae,{params:{size:1e3},signal:ye}).then(be=>{const{data:{data:xe}}=be;if(xe.length&&Object.keys(ue).length===1){const h=Object.keys(ue)[0],T=xe.filter(G=>G[h]?!!G[h].toLowerCase().includes(ue[h].toLowerCase()):!1);be.data.data=T}return be});const Ee={size:te,offset:se};for(const be of Object.keys(ue))Ee.filter={[be]:{contains:ue[be]}};return c.get(ae,{params:Ee,signal:ye})}return c.get(ae,{params:_e,signal:ye})},S=(ke,_e=50)=>{const ye=k(ke);return c.get(ye,{params:{size:_e}})};e.provide(Qe.FORMS_API_KEY,{getOne:N,getAll:B,getAllV2:U,peek:S}),e.provide(Qe.FORMS_CONFIG,o.config);const A=e.ref(""),O=e.ref(),P=e.shallowRef(),R=e.ref(null),z=e.ref({}),X=e.reactive({}),Z=e.reactive({}),K=e.computed(()=>{var ke;return(ke=R.value)==null?void 0:ke.options}),W=e.computed(()=>{const ke=nj(Z.name,o.rawSchema);return tj(ke)}),$=e.ref(!1),ee=e.ref(),F=(ke,_e)=>{$.value=ke??"",ee.value=_e},J=ke=>{var _e;(_e=ee.value)==null||_e.call(ee,ke),$.value=!1},M=ke=>{var ye;if(!ke){O.value=void 0,P.value=void 0,A.value="",b(!1);return}const _e=((ye=o.schema)==null?void 0:ye._sourcePlugin)||ke;O.value=mw(_e),P.value=g(_e,o.engine)?y(_e)??Hf:void 0,A.value=Qe.getSharedFormName(_e),b(!!P.value)},v=ke=>{var Ee,be;const _e={...o.schema},ye=Z,ae=X,te=Object.keys(ye),se={};if(!f(z.value))for(let xe=0;xe<((be=(Ee=z.value)==null?void 0:Ee.fields)==null?void 0:be.length);xe++)_e[z.value.fields[xe].model]=z.value.fields[xe];Qe.customFields.forEach(xe=>{_e[xe]&&(_e[xe].fields.forEach(h=>{h.fields&&h.fields.forEach(T=>{_e[T.model]=T}),h.model&&(_e[h.model]=h)}),delete _e[xe])}),te.forEach(xe=>{var Ne;if(!_e[xe]){xe==="partials"&&(se[xe]=ye[xe]);return}const h=_e[xe];let T=ye[xe];const G=ae[xe],Y=Array.isArray(T)?"array":typeof T,oe=h?h.valueType:null,we=h?h.valueArrayType:null,L=h?h.transform:null;if(T==null&&G==null&&!h.submitWhenNull)return;if(h){if(oe&&Y!==oe)switch(oe){case"array":Y==="string"&&T.length&&(T=T.split(",").map(H=>{if(H=H.trim(),we==="string")return String(H);if(we==="number")return Number(H);if(we==="boolean"){if(typeof H=="string")return H.toLowerCase()==="true"||H==="1";if(typeof H=="number")return H===1}return H})),(!T||!T.length)&&(T=h.submitWhenNull?null:[]);break;case"number":h.referenceable!==!0&&(T=Number(T));break;case"boolean":Y==="string"&&(T=T.toLowerCase()==="true"||T==="1"),Y==="number"&&(T=T===1);break;case"string":T=T==null?"":String(T);break}else oe==="array"&&(!T||!T.length?T=h.submitWhenNull?null:[]:((Ne=h.inputAttributes)==null?void 0:Ne.type)==="number"&&(T=T.map(H=>Number(H))));if(h.type==="array"&&h.nestedFields){const H=V=>{Object.keys(V).forEach(D=>{V[D]&&typeof V[D]=="object"&&!Array.isArray(V[D])&&V[D]!==null?H(V[D]):(V[D]===void 0||V[D]===null||typeof V[D]=="number"&&isNaN(V[D])||typeof V[D]=="string"&&V[D].trim().length===0)&&delete V[D]})};T&&typeof T=="object"&&H(T)}h.type==="object-advanced"&&h.fields&&T!==null&&(Object.entries(T).length===0?T=null:Object.keys(T).forEach(H=>{Array.isArray(T[H])||(T[H]=T[H].split(","))}))}let de=u(xe);if(h.fieldNameHasDashes){const[H,...V]=de.split(".").reverse();de=[H.replace(/_/g,"-"),...V].reverse().join(".")}if(oe==="object-expand"){let H;[de,H]=de.split(".");let V={};se[de]&&(V=se[de]),V[H]=T,T=V}G!==void 0&&T===""&&T!==G?se[de]=oe==="object"?{}:null:h.type==="checklist"&&T===""?se[de]=[]:T!==""&&(se[de]=T),se[de]=L?L(T):se[de],m(de,se)});const ue=p(se);if(P.value){if(ke&&ke.length)for(const xe of ke)delete ue[xe];Object.assign(ue,$e.value)}return ue},j=(ke,_e={})=>{d(Z,_e,ke,o.editing),r("model-updated",{model:Z,originalModel:X,data:v()})},ie=(ke,_e)=>{var te;const ye={[_e]:ke};typeof((te=o.schema[_e])==null?void 0:te.modelTransformer)=="function"&&(ye[_e]=o.schema[_e].modelTransformer(ke));const ae=Object.assign({},Z,ye);Object.assign(Z,ae),r("model-updated",{model:Z,originalModel:X,data:v()})},re=ke=>{r("validity-change",ke)},me=(ke,_e)=>{Object.keys(ke).forEach(ye=>{var Ee,be;let ae=_e?`${_e}-${ye}`:ye,te=o.schema[ae];if(!te){const xe=_e?`${_e}-${ye.replace(/-/g,"_")}`:ye.replace(/-/g,"_");(Ee=o.schema[xe])!=null&&Ee.fieldNameHasDashes&&(ae=xe,te=o.schema[ae]),_e&&((be=o.schema[_e])==null?void 0:be.keyFromObject)===ye&&(ae=_e,te=o.schema[ae])}const se=ke[ye],ue=typeof se;if(te&&te.type==="object-advanced"&&!se){Z[ae]={},X[ae]={};return}if(Array.isArray(se)){Z[ae]=JSON.parse(JSON.stringify(se)),X[ae]=JSON.parse(JSON.stringify(se));return}if(ue==="object"&&se&&!se.length)return me(se,ae);if(ue==="object"&&se&&se.length&&te.type==="input"){Z[ae]=se.join(", "),X[ae]=se.join(", ");return}Z[ae]=se,X[ae]=se}),r("model-updated",{model:Z,originalModel:X,data:v()})},he=(ke,_e)=>{if(!_e)return ke;if(Array.isArray(ke)){const te=_e.elements;return te?ke.map(se=>he(se,te)):ke}if(!ke||typeof ke!="object")return ke;if(_e.type==="map"&&_e.values){const te=_e.values,se={};for(const ue of Object.keys(ke))se[ue]=he(ke[ue],te);return se}if(!Array.isArray(_e.fields))return ke;const ye=new Map;for(const te of _e.fields){const se=te&&Object.keys(te)[0];se&&ye.set(se,te[se])}const ae={};for(const te of Object.keys(ke)){const se=ye.get(te);se&&(ae[te]=he(ke[te],se))}return ae},le=()=>{var ye;const ke=(ye=o.rawSchema)==null?void 0:ye.fields;if(!Array.isArray(ke))return;const _e=ke.find(ae=>ae==null?void 0:ae.config);return _e==null?void 0:_e.config},ge=new Set(["datakit"]),Oe=e.computed(()=>{var ke;return((ke=o.schema)==null?void 0:ke._sourcePlugin)||Z.name}),$e=e.shallowRef(o.record),Pe=(ke,_e)=>{const ye=ge.has(Oe.value)?ke:{...ke,config:he(ke.config,le())};$e.value=ye;const ae={...Z};for(const te of _e||[])delete ae[te];r("model-updated",{model:{...ae,...ye},originalModel:X,data:v(_e)})},qe=e.ref(!0),Ye=()=>{var ke;if(o.record&&o.schema&&(me({enabled:o.record.enabled??!0,...o.record.instance_name&&{instance_name:o.record.instance_name||""},...a&&o.record.condition!=null&&{condition:o.record.condition},...o.record.protocols&&{protocols:o.record.protocols},...o.record.tags&&{tags:o.record.tags}}),o.credential?((o.record.consumer_id||o.record.consumer)&&me({consumer_id:o.record.consumer_id||o.record.consumer}),me(o.record)):o.record.config&&((o.record.consumer_id||o.record.consumer||o.record.service_id||o.record.service||o.record.route_id||o.record.route||o.record.consumer_group_id||o.record.consumer_group)&&me({service_id:o.record.service_id||o.record.service,route_id:o.record.route_id||o.record.route,consumer_id:o.record.consumer_id||o.record.consumer,consumer_group_id:o.record.consumer_group_id||o.record.consumer_group}),o.record.partials&&j("redis",{partials:o.record.partials}),P.value?Pe(o.record):me(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const _e={};for(const ye in o.entityMap){const ae=o.entityMap[ye].id,te=o.entityMap[ye].idField,se=te==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(te).replace("_","-"));Object.prototype.hasOwnProperty.call(Z,se)&&(_e[se]=ae)}me(_e)}if((ke=o.entityMap.consumer)!=null&&ke.id&&o.schema&&o.credential){const _e={};Object.prototype.hasOwnProperty.call(Z,"consumer")&&(_e.consumer=o.entityMap.consumer.id),me(_e)}qe.value=!1};return e.watch(qe,ke=>{r("loading",ke)}),e.watch(()=>o.schema,(ke,_e)=>{var ae,te;if(w(ke||{},_e||{}))return;const ye=l(ke,void 0,void 0,o.engine);Object.assign(Z,ye.model),z.value={fields:(te=(ae=z.value)==null?void 0:ae.fields)==null?void 0:te.map(se=>({...se,disabled:se.disabled||!1}))},Object.assign(X,JSON.parse(JSON.stringify(ye.model))),M(ye.model.name),Ye()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var ke,_e,ye,ae;R.value=l(o.schema,void 0,void 0,o.engine),Object.assign(Z,((ke=R.value)==null?void 0:ke.model)||{}),z.value=((_e=R.value)==null?void 0:_e.schema)||{},M((ae=(ye=R.value)==null?void 0:ye.model)==null?void 0:ae.name),Ye()}),e.onBeforeUnmount(()=>{b(!1)}),(ke,_e)=>{var ae,te,se;const ye=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",oj,[qe.value?(e.openBlock(),e.createBlock(ye,{key:0,type:"form"})):Z.id&&n.editing||!n.editing?(e.openBlock(),e.createElementBlock("div",ij,[P.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(P.value),{key:0,developer:n.developer,"field-renderers":(ae=O.value)==null?void 0:ae.fieldRenderers,"form-model":Z,"form-schema":z.value,"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,model:n.record,"on-form-change":Pe,"on-validity-change":re,"plugin-name":Z.name,"render-rules":(te=O.value)==null?void 0:te.renderRules,schema:W.value,"onClick:createEntity":_e[0]||(_e[0]=ue=>ke.$emit("click:create-entity",ue)),"onClick:learnMore":_e[1]||(_e[1]=ue=>ke.$emit("click:learn-more",ue)),onGlobalAction:_e[2]||(_e[2]=(ue,Ee)=>ke.$emit("globalAction",ue,Ee))},e.createSlots({_:2},[n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["developer","field-renderers","form-model","form-schema","is-editing","is-konnect-managed-redis-enabled","model","plugin-name","render-rules","schema"])):A.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Qe.sharedForms)[A.value]),{key:1,"enable-redis-partial":n.enableRedisPartial,"form-model":Z,"form-options":K.value,"form-schema":z.value,"identity-principals-ui-enabled":e.unref(s),"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,"on-model-updated":ie,"on-partial-toggled":j,"show-new-partial-modal":ue=>ke.$emit("showNewPartialModal",ue),"onClick:createEntity":_e[3]||(_e[3]=ue=>ke.$emit("click:create-entity",ue)),"onClick:learnMore":_e[4]||(_e[4]=ue=>ke.$emit("click:learn-more",ue))},e.createSlots({_:2},[n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","identity-principals-ui-enabled","is-editing","is-konnect-managed-redis-enabled","show-new-partial-modal"])):(e.openBlock(),e.createBlock(e.unref(Qe.VueFormGenerator),{key:2,"enable-redis-partial":n.enableRedisPartial,"is-editing":n.editing,"is-konnect-managed-redis-enabled":i.value,model:Z,options:K.value,schema:z.value,onModelUpdated:ie,onPartialToggled:j,onRefreshModel:v,onShowNewPartialModal:_e[5]||(_e[5]=ue=>ke.$emit("showNewPartialModal",ue))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",aj,e.toDisplayString(e.unref(C)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(se=e.unref(Rn)[Z.name])!=null&&se.fieldRules&&(o.config.isNewOtelSchema||Z.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(YM,{rules:e.unref(Rn)[Z.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,n.enableVaultSecretPicker?{name:e.unref(Qe.AUTOFILL_SLOT_NAME),fn:e.withCtx(ue=>[ue.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(da.VaultSecretPickerProvider),e.mergeProps({key:0},ue,{onOpen:F}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","is-konnect-managed-redis-enabled","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(da.VaultSecretPicker),{config:o.config,setup:$.value,onCancel:_e[6]||(_e[6]=()=>$.value=!1),onProceed:J},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-b10596ae"]]),lj={key:1},cj=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(n){return(t,r)=>n.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:n.teleportTarget},[e.renderSlot(t.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",lj,[e.renderSlot(t.$slots,"default")]))}}),uj={key:0},dj={class:"plugin-form-actions"},fj={key:0,class:"button-customize-deck-wrapper"},pj=Me(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:null},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction","click:create-entity","click:learn-more"],setup(n,{emit:t}){var de,Ne;const r=e.inject(dr.KM_2306_CONDITION_FIELD_314,!1),o=e.inject(dr.KM_2485_CLONED_PLUGINS,!1),i=e.ref(!1);e.provide(Ie.PLUGIN_FORM_LAYOUT_STATE,i);const a=t,s=n,c=Nr.useRouter(),{i18n:{t:l}}=st.useI18n(),{customSchemas:u,typedefs:p}=st.useSchemas({app:s.config.app,credential:s.credential,experimentalRenders:s.config.app==="konnect"?s.config.experimentalRenders:void 0}),{formatPluginFieldLabel:d}=st.usePluginHelpers(),{shouldUseFreeForm:f}=st.useFreeFormResolver(),{getMessageFromError:m}=Ie.useErrors(),{capitalize:g}=Ie.useStringHelpers(),{objectsAreEqual:y}=Ie.useHelpers(),{axiosInstance:_}=Ie.useAxios((de=s.config)==null?void 0:de.axiosRequestConfig),{getClonedPlugin:b}=st.useCustomPluginApi({axiosInstance:Ie.useAxios({...((Ne=s.config)==null?void 0:Ne.axiosRequestConfig)??{},konnect:{bypassGlobal404Handler:!0}}).axiosInstance,apiBaseUrl:s.config.apiBaseUrl,app:s.config.app,workspace:s.config.workspace,controlPlaneId:s.config.controlPlaneId}),w=e.ref(!1),C=e.computed(()=>!!s.pluginId),x=e.computed(()=>s.pluginId?Ie.EntityBaseFormType.Edit:Ie.EntityBaseFormType.Create),E=e.ref(void 0),k=e.ref(void 0),N=e.computed(()=>!!(s.credential&&s.config.entityId)),B=e.ref(void 0),U=e.ref({}),S=e.ref(),A=e.ref(),O=e.inject(dr.KM_2503_CUSTOM_PLUGIN_FREEFORM,!1),P=e.ref(null),R=e.computed(()=>P.value!==null),z=e.computed(()=>R.value&&P.value?P.value:s.pluginType),X=e.computed(()=>{if(s.engine)return s.engine;if(!(!O||!be.value))return R.value&&P.value?f(P.value)?"freeform":"vfg":"freeform"});e.provide(Ai,{redisType:S,redisPath:A,isEditing:C.value});const Z=[];e.provide(Kb,H=>(Z.push(H),()=>{const V=Z.indexOf(H);V!==-1&&Z.splice(V,1)}));const K=e.ref(!1),{isDeckEnabled:W,deckCustomizationOptions:$,deckCalloutPreferenceKey:ee}=Ie.useBaseFormDeckOptions(()=>s.config,Ie.SupportedEntityType.Plugin),F=e.ref(!1),J=e.reactive({enabled:!0,protocols:[],tags:[]}),M=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),v=e.ref([{title:l("view_configuration.json"),hash:"#json"},{title:l("view_configuration.yaml"),hash:"#yaml"}]);s.config.app==="konnect"&&v.value.splice(1,0,{title:l("view_configuration.terraform"),hash:"#terraform"}),W.value&&v.value.push({title:l("view_configuration.deck"),hash:"#deck"});const j=e.ref(v.value[0].hash),ie=e.ref(""),re=e.computed(()=>{var V;if(N.value){let D=et.form[s.config.app].credential[x.value];return D=D.replace(/{resourceEndpoint}/gi,ge.value),D}let H;return s.config.entityType&&s.config.entityId?H=et.form[s.config.app].edit.forEntity.replace(/{entityType}/gi,s.config.entityType).replace(/{entityId}/gi,s.config.entityId):H=et.form[s.config.app].edit.all,s.config.app==="konnect"&&((V=Rn[s.pluginType])!=null&&V.useUIData)?`${H}?__ui_data=true`:H}),me=()=>{w.value=!w.value},he=e.computed(()=>{var Ce,Se,ve,ze,Ke,Be,Ae,Ze;const H=s.config.entityType==="consumers"&&s.config.entityId||((Se=(Ce=B.value)==null?void 0:Ce.consumer)==null?void 0:Se.id),V=s.config.entityType==="consumer_groups"&&s.config.entityId||((ze=(ve=B.value)==null?void 0:ve.consumer_group)==null?void 0:ze.id),D=s.config.entityType==="services"&&s.config.entityId||((Be=(Ke=B.value)==null?void 0:Ke.service)==null?void 0:Be.id),ne=s.config.entityType==="routes"&&s.config.entityId||((Ze=(Ae=B.value)==null?void 0:Ae.route)==null?void 0:Ze.id);if(!(H||V||D||ne))return{global:{entity:fe.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ce={};return D&&(ce.service={entity:fe.PluginScope.SERVICE,entityEndpoint:"services",id:D,idField:yo.SERVICE}),ne&&(ce.route={entity:fe.PluginScope.ROUTE,entityEndpoint:"routes",id:ne,idField:yo.ROUTE}),H&&(ce.consumer={entity:fe.PluginScope.CONSUMER,entityEndpoint:"consumers",id:H,idField:yo.CONSUMER}),V&&(ce.consumer_group={entity:fe.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:V,idField:yo.CONSUMER_GROUP}),s.config.entityType&&(ce.focusedEntity={entity:fe.PluginScope[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()],entityEndpoint:s.config.entityType,id:s.config.entityId,idField:yo[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()]}),ce}),le=e.reactive({name:{default:s.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:l("plugins.form.fields.enabled.label"),textOn:l("plugins.form.fields.enabled.on_text"),textOff:l("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:s.hideScopeSelection&&(s.hideScopeSelection||x.value===Ie.EntityBaseFormType.Create&&s.config.entityId)?"foreign":"selectionGroup",disabled:s.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:l("plugins.form.scoping.global.label"),description:l("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:l("plugins.form.fields.protocols.help"),label:l("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:l("plugins.form.fields.instance_name.label"),inputType:"text",help:l("plugins.form.fields.instance_name.help")},tags:p.tags,...r?{condition:{default:"",type:"input",label:l("plugins.form.fields.condition.label"),inputType:"text",help:l("plugins.form.fields.condition.tooltip"),placeholder:l("plugins.form.fields.condition.placeholder")}}:{}}),ge=e.computed(()=>{var D;const H=s.developer?"developers":"consumers",V=((D=si[s.pluginType])==null?void 0:D.endpoint)||"/plugins";return`${H}/${s.config.entityId}${s.developer?"/credentials":""}${V}`}),Oe=H=>{const V=Array.from(new Set(H.map(D=>typeof D)));return V.length>1?"string":V[0]},$e=(H,V,D,ne)=>{var ve,ze;let ce=V&&V.fields||[];const Ce=u[z.value],Se=(ze=(ve=si[s.pluginType])==null?void 0:ve.schema)==null?void 0:ze.fields;return Array.isArray(ce)&&(ce=ce.reduce((Ke,Be)=>{const Ae=Object.keys(Be)[0];return Ae.match(/-/g)?Ke[Ae.replace(/-/g,"_")]={...Be[Ae],fieldNameHasDashes:!0}:Ke[Ae]=Be[Ae],Ke},{})),Object.keys(ce).sort().forEach(Ke=>{var Lt,sr,xt,Zt,Xs,Zs,Qs;const Be=ce[Ke];Be.type==="set"&&!(f(s.pluginType,X.value)&&Be.elements.one_of)&&(Be.type="array");const Ae=H?`${H}-${Ke}`:`${Ke}`;if((Lt=Ce==null?void 0:Ce.fieldsToDelete)!=null&&Lt.includes(Ae)){by(D,Ae);return}if(Object.prototype.hasOwnProperty.call(Be,"overwrite")||Be.hidden)return;if(Be.type==="table")return $e(Ae,Be.schema,D);if(Be.fields)return ne&&Be.type==="record"?(D[Ae]={type:"object",model:Ke,schema:{fields:Object.values($e(Ae,Be,{},!0))}},D):$e(Ae,Be,D);if(D[Ae]={id:Ae,model:Ke},D[Ae].type=Be.type==="boolean"?"checkbox":"input",D[Ae].required=Be.required,D[Ae].referenceable=Be.referenceable,Ae.startsWith("config-"))if(!ne&&Be.type==="array"&&(ie.value=Ae),ne&&ie.value&&Ae.startsWith(ie.value)){const ut=Ae.slice(ie.value.length+1);D[Ae].label=ut.split("-").map(d).join(".")}else D[Ae].label=d(Ae);if((H==="config"||H.startsWith("config-"))&&(sr=ce[Ke])!=null&&sr.description&&(D[Ae].help=el.marked.parse(ce[Ke].description,{mangle:!1,headerIds:!1})),Be.type==="map"){if(D[Ae].type="object-advanced",D[Ae].values=Be.values,Be.values.type==="array"){const{type:ut}=Be.values.elements||{};D[Ae].schema={fields:[{schema:{fields:[{...dt,model:Ae,valueArrayType:ut==="integer"?"number":ut||"string",inputAttributes:{...dt.inputAttributes,type:ut==="integer"?"number":"text",inputMode:ut==="integer"?"numeric":"text"}}]}}]}}else Be.values.fields&&(D[Ae].schema={fields:[{type:"object",model:"object",schema:{fields:Be.values.fields.map(ut=>{const Qt=Object.keys(ut)[0];return{model:Qt,type:"input",label:g(Qt),placeholder:Qt,inputType:ut[Qt].type}})}}]});return D}if(Be.enum&&Be.type==="array"&&(D[Ae].type="checklist",D[Ae].values=Be.enum,D[Ae].multi=!0,D[Ae].multiSelect=!0),Be.one_of&&Be.type!=="array"&&(D[Ae].type="select",D[Ae].values=Be.one_of,D[Ae].selectOptions={noneSelectedText:l("plugins.form.no_selection")}),Be.elements&&Be.type==="array"){const ut=Be.elements;if(D[Ae].referenceable=ut.referenceable,D[Ae].elements=ut,["string","integer","number"].includes(ut.type)&&!ut.one_of){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn}=D[Ae],{inputAttributes:zn,...vh}=JSON.parse(JSON.stringify(dt));zn.type=ut.type==="string"?"text":"number",D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,inputAttributes:zn,...vh}}else if(["string","integer","number"].includes(ut.type)&&ut.one_of){if(ne){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn}=D[Ae];D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,...GM(ut.one_of,Be.default)}}}else if(ut.type==="array"){const{id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,elements:zn}=D[Ae],{inputAttributes:vh,...rK}=JSON.parse(JSON.stringify(dt));D[Ae]={id:Qt,help:At,label:ht,hint:lt,values:Ct,referenceable:_t,model:Pn,elements:zn,inputAttributes:vh,...rK}}}if(Be.hint&&(D[Ae].hint=Be.hint),Ce&&!Ce.overwriteDefault&&Object.keys(Ce).forEach(ut=>{if(ut===Ae){const{help:Qt,label:At,hint:ht,values:lt,referenceable:Ct,elements:_t}=D[Ae],{help:Pn,...zn}=Ce[ut];D[Ae]={help:Qt,label:At,hint:ht,values:lt,referenceable:Ct,elements:_t,...zn},typeof Pn=="string"&&(D[Ae].help=el.marked.parse(Pn,{mangle:!1,headerIds:!1}))}}),Be.type==="array"&&((xt=Be.elements)==null?void 0:xt.type)==="record"&&Array.isArray(Be.elements.fields)){let ut={};for(const At of Be.elements.fields)ut={...ut,...At};const Qt=(Zs=(Xs=(Zt=D[Ae])==null?void 0:Zt.items)==null?void 0:Xs.schema)==null?void 0:Zs.fields;if(Array.isArray(Qt))for(const At of D[Ae].items.schema.fields){const ht=(Qs=ut[At.model])==null?void 0:Qs.description;At.help===void 0&&typeof ht=="string"&&(At.help=el.marked.parse(ht,{mangle:!1,headerIds:!1}))}if(Qt||(D[Ae].type="array",D[Ae].newElementButtonLabelClasses="kong-form-new-element-button-label",D[Ae].fieldClasses="array-card-container-wrapper",D[Ae].itemContainerComponent="FieldArrayCardContainer",D[Ae].items={type:"object",schema:{fields:Object.values($e(Ae,Be.elements,{},!0))}},D[Ae].items.schema.fields.forEach(At=>{var ht,lt;for(const Ct of Be.elements.fields){const _t=Object.keys(Ct)[0],Pn=((lt=(ht=At.id)==null?void 0:ht.split)==null?void 0:lt.call(ht,"-"))??[];if(Pn[Pn.length-1]===_t){At.model=_t,At.label=d(_t);break}}}),Be.elements.type==="record"&&(D[Ae].nestedFields=!0)),!D[Ae].nestedFields)D[Ae].items.default=()=>Be.elements.fields.reduce((At,ht)=>{const lt=Object.keys(ht)[0];return At[lt]=ht[lt].default,At},{});else{const At=(ht,lt)=>{if(ht.type==="object"){ht.model&&(lt[ht.model]={});for(const Ct of ht.schema.fields)At(Ct,ht.model?lt[ht.model]:lt)}else ht.model&&(lt[ht.model]=ht.default)};D[Ae].items.default=()=>{const ht={};return At(D[Ae].items,ht),ht}}}if(N.value&&Se){for(let ut=0;ut<Se.length;ut++)if(Se[ut][Ae]){D[Ae]={...D[Ae],...Se[ut][Ae]};break}}if(Be.required&&Be.type!=="boolean"&&(D[Ae].required=!0,D[Ae].selectOptions={hideNoneSelectedText:!0}),Be.required&&Be.type==="boolean"&&(D[Ae].default=Be.default??!1),Be.default!=null&&typeof Be.default!="object"&&Be.default!=="function"&&(D[Ae].default=Be.default),D[Ae].type==="input"){["string","number"].includes(typeof D[Ae].default)&&s.config.app==="konnect"&&(D[Ae].placeholder=`Default: ${D[Ae].default===""?"<empty string>":D[Ae].default}`);const{type:ut}=Be.elements||{};ut&&(D[Ae].valueArrayType=ut==="integer"?"number":ut),D[Ae].inputType=Be.type==="array"||Be.type==="string"?Be.encrypted?"password":"text":Be.type}let Ze="string";Be.enum?Ze=Oe(Be.enum):Be.type==="boolean"?Ze="boolean":Be.type==="number"||Be.type==="integer"?(Ze="number",D[Ae].inputType="number"):Be.type==="array"?(Ze="array",D[Ae].default=Be.default,Be.len_min>0&&(D[Ae].submitWhenNull=!0)):Be.type==="foreign"?Ze="object":Be.default&&Array.isArray(Be.default)?(Ze="array",D[Ae].valueArrayType=Oe(Be.default)):Be.default&&(Ze=typeof Be.default),D[Ae].valueType=Ze,Be.fieldNameHasDashes&&(D[Ae].fieldNameHasDashes=!0)}),D},Pe=()=>{var Ze,Lt,sr,xt,Zt,Xs,Zs,Qs,ut,Qt,At,ht;const H=R.value&&P.value?P.value:s.pluginType,V=((Ze=Rn[H])==null?void 0:Ze.scope.includes(fe.PluginScope.SERVICE))??!0,D=((Lt=Rn[H])==null?void 0:Lt.scope.includes(fe.PluginScope.ROUTE))??!0,ne=((sr=Rn[H])==null?void 0:sr.scope.includes(fe.PluginScope.CONSUMER))??!0,ce=s.config.disableConsumerGroupScope?!1:((xt=Rn[H])==null?void 0:xt.scope.includes(fe.PluginScope.CONSUMER_GROUP))??!0,Ce=s.config.entityType==="consumers"&&!!s.config.entityId||!!((Xs=(Zt=B.value)==null?void 0:Zt.consumer)!=null&&Xs.id),Se=s.config.entityType==="consumer_groups"&&!!s.config.entityId||!!((Qs=(Zs=B.value)==null?void 0:Zs.consumer_group)!=null&&Qs.id),ve=s.config.entityType==="services"&&!!s.config.entityId||!!((Qt=(ut=B.value)==null?void 0:ut.service)!=null&&Qt.id),ze=s.config.entityType==="routes"&&!!s.config.entityId||!!((ht=(At=B.value)==null?void 0:At.route)!=null&&ht.id),Ke=[],Be=(lt,Ct,_t)=>lt?l("plugins.form.disable_source_scope_change",{scope:_t}):Ct?l("plugins.form.disable_data_retrieving",{scope:_t}):"",Ae=lt=>{var Ct,_t;return((_t=(Ct=s.scopedEntitiesPermissions)==null?void 0:Ct[lt])==null?void 0:_t.canRetrieve)===!1};if(V){const lt=Ae("service"),Ct="services",_t=ve&&s.disableScopeSelection;Ke.push({id:"service-id",model:"service-id",label:l("plugins.form.scoping.gateway_service.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Ct,inputValues:{fields:["name","id"]},help:l("plugins.form.scoping.gateway_service.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(D){const lt=Ae("route"),Ct="routes",_t=ze&&s.disableScopeSelection;Ke.push({id:"route-id",model:"route-id",label:l("plugins.form.scoping.route.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:l("plugins.form.scoping.route.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(ne){const lt=Ae("consumer"),Ct="consumers",_t=Ce&&s.disableScopeSelection;Ke.push({model:"consumer-id",label:l("plugins.form.scoping.consumer.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:l("plugins.form.scoping.consumer.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(ce){const lt=Ae("consumer_group"),Ct="consumer_groups",_t=Se&&s.disableScopeSelection;Ke.push({model:"consumer_group-id",label:l("plugins.form.scoping.consumer_group.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ct,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:l("plugins.form.scoping.consumer_group.help"),disabled:_t||lt,disabledTooltip:Be(_t,lt,Ct)})}if(Ke.length){const lt=[...V?["service"]:[],...D?["route"]:[],...ne?["consumer"]:[],...ce?["consumer_group"]:[]],_t=lt.splice(lt.length-2,2).map(zn=>l(zn==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${zn}.plural`)).join(`${lt.length>0?",":""} and/or `),Pn=["Specific",[...lt.length>0?[lt.map(zn=>l(zn==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${zn}.plural`)).join(", ")]:[],_t].join(", ")].join(" ");le.selectionGroup.fields.push({label:l("plugins.form.scoping.label"),description:Pn,fields:[]}),le.selectionGroup.fields[1].fields=Ke}u[z.value]&&u[z.value].overwriteDefault&&Object.hasOwnProperty.call(u[z.value],"formSchema")&&Object.assign(le,u[z.value].formSchema)},qe=e.computed(()=>!y(M.fields,J,!0)),Ye=e.computed(()=>!oe.value&&!F.value&&(x.value===Ie.EntityBaseFormType.Create||qe.value)),tt=e.ref(!1),Ve=e.ref(),ke=H=>{s.credential&&H.password&&(H.password=""),M.fields.id=(H==null?void 0:H.id)||void 0,Ve.value=H==null?void 0:H.ordering,Object.assign(J,M.fields),B.value=H,tt.value=!0},_e=e.ref({}),ye=H=>{var V;M.fields=H.model,M.fields.id=((V=B.value)==null?void 0:V.id)||void 0,Object.assign(J,H.originalModel),_e.value=H.data,s.isWizardStep&&a("model-updated",{model:M.fields,data:H.data,resourceEndpoint:ge.value})},ae=e.ref(new Map),te=e.computed(()=>[M.clientErrorMessage,M.serverErrorMessage].filter(Boolean).join("; ")),se=H=>{H.valid?ae.value.delete(H.model):ae.value.set(H.model,H.error),M.clientErrorMessage=[...ae.value.entries()].map(([V,D])=>`${V}: ${typeof D=="string"?D:m(D)}`).join("; "),M.clientErrorMessage&&(M.serverErrorMessage="")};e.watch([he,tt],(H,V)=>{const D=H[0]!==V[0],ne=H[1],ce=V[1];if(!N.value&&x.value===Ie.EntityBaseFormType.Edit&&(D||ne&&ne!==ce)){const Ce=$e("config",U.value,le);be.value&&(Ce._isCustomPlugin=!0),R.value&&P.value&&(Ce._sourcePlugin=P.value),S.value&&(Ce._supported_redis_partial_type=S.value),k.value=Ce}},{deep:!0});const ue=()=>{s.config.cancelRoute?c.push(s.config.cancelRoute):a("cancel")},Ee=e.computed(()=>{const H=s.config.entityType&&s.config.entityId&&!s.developer,V=N.value?et.form[s.config.app].credential[x.value]:et.form[s.config.app][x.value][H?"forEntity":"all"];let D=`${s.config.apiBaseUrl}${V}`;return s.config.app==="konnect"&&(D=D.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),D=D.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:""),D=D.replace(/{resourceEndpoint}/gi,ge.value),D=D.replace(/{id}/gi,s.pluginId??""),D=D.replace(/{entityType}/gi,s.config.entityType||""),D=D.replace(/{entityId}/gi,s.config.entityId||""),D}),be=e.computed(()=>!Object.keys(Rn).includes(s.pluginType)),xe=e.computed(()=>{const H=_e.value;if(N.value){for(const V in fe.PluginScope){const D=fe.PluginScope[V];H[D]&&!H[D].id&&(H[D]={id:s.config.entityId})}delete H.created_at}return _e.value.partials&&A.value&&by(H,A.value),H}),h=e.computed(()=>{const{__ui_data:H,...V}={...xe.value};return V}),T=async()=>{if(Z.every(H=>H())&&!M.clientErrorMessage&&!s.isWizardStep)try{M.isReadonly=!0;let H;const V=JSON.parse(JSON.stringify(xe.value)),D=u[z.value];typeof(D==null?void 0:D.shamefullyTransformPayload)=="function"&&D.shamefullyTransformPayload({originalModel:J,model:M.fields,payload:V,schema:k.value}),x.value==="create"?H=await _.post(Ee.value,V):x.value==="edit"&&(H=s.config.app==="konnect"||S.value&&V.partials?await _.put(Ee.value,Object.assign({ordering:Ve.value},V)):await _.patch(Ee.value,V)),Object.assign(J,M.fields),a("update",H==null?void 0:H.data)}catch(H){M.serverErrorMessage=m(H),a("error",H)}finally{M.isReadonly=!1}},G=e.computed(()=>{var ne;const H=N.value?(ne=si[s.pluginType])==null?void 0:ne.schemaEndpoint:s.pluginType,V=N.value?et.form[s.config.app].credentialSchema:et.form[s.config.app].pluginSchema;let D=`${s.config.apiBaseUrl}${V}`;return s.config.app==="konnect"&&(D=D.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),D.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:"").replace(/{plugin}/gi,H)}),Y=e.ref(""),oe=e.ref(!1),we=e.ref("");e.onBeforeMount(async()=>{var H,V,D,ne;oe.value=!0;try{if(N.value&&s.config.app==="konnect"){const ce=(H=si[s.pluginType])==null?void 0:H.schemaEndpoint,Ce=UB[ce];Y.value=ce,k.value=$e("",Ce,{}),oe.value=!1}else{const ce=o&&be.value,Ce=s.schema?Promise.resolve(s.schema):_.get(G.value).then(ve=>ve.data),[Se]=await Promise.all([Ce,ce?L(s.pluginType):Promise.resolve()]);if(E.value=Se,Se)if(N.value)k.value=$e("",Se,{}),oe.value=!1;else{const ve=Se.fields.find(Ke=>Ke.config);U.value=ve?ve.config:Se,Se.supported_partials&&(S.value=Object.keys(Se.supported_partials).find(Ke=>[Il.REDIS_CE,Il.REDIS_EE].includes(Ke)),A.value=(V=Se.supported_partials[S.value])==null?void 0:V[0]),Pe();const ze=(D=Se.fields.find(Ke=>Ke.protocols))==null?void 0:D.protocols;if(ze){const{default:Ke=[],elements:Be={}}=ze;le.protocols.default=Ke,le.protocols.placeholder=s.config.app==="konnect"?l("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:Ke.join(", ")}):l("plugins.form.fields.protocols.placeholder"),(ne=Be.one_of)!=null&&ne.length&&(le.protocols.values=Be.one_of.map(Ae=>({label:Ae,value:Ae})))}if(tt.value||x.value===Ie.EntityBaseFormType.Create){const Ke=$e("config",U.value,le);S.value&&(Ke._supported_redis_partial_type=S.value),be.value&&(Ke._isCustomPlugin=!0),R.value&&P.value&&(Ke._sourcePlugin=P.value),k.value=Ke}}}}catch(ce){console.error(ce),we.value=m(ce),a("error:fetch-schema",ce)}finally{oe.value=!1}});async function L(H){var V;try{const D=await b(H);P.value=(D==null?void 0:D.ref)??null}catch(D){if(zo.isAxiosError(D)&&((V=D.response)==null?void 0:V.status)===404)return;throw D}}return(H,V)=>{const D=e.resolveComponent("KSkeleton"),ne=e.resolveComponent("KEmptyState"),ce=e.resolveComponent("KButton"),Ce=e.resolveComponent("KTabs"),Se=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":i.value}])},[oe.value?(e.openBlock(),e.createBlock(D,{key:0,type:"form"})):we.value?(e.openBlock(),e.createBlock(ne,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(l)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(Ie.EntityBaseForm),{key:2,"can-submit":Ye.value,config:n.config,"edit-id":n.pluginId,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"error-message":te.value,"fetch-url":re.value,"form-fields":xe.value,"is-readonly":M.isReadonly,"no-validate":"","wrapper-component":n.noCardWrapper?"div":void 0,onCancel:ue,"onFetch:error":V[6]||(V[6]=ve=>H.$emit("error",ve)),"onFetch:success":ke,onLoading:V[7]||(V[7]=ve=>H.$emit("loading",ve))},{"form-actions":e.withCtx(()=>[n.isWizardStep?(e.openBlock(),e.createElementBlock("div",uj)):(e.openBlock(),e.createBlock(cj,{key:1,"teleport-target":n.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",dj,[n.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ce,{key:0,appearance:"tertiary","data-testid":`plugin-${C.value?"edit":"create"}-form-view-configuration`,onClick:V[5]||(V[5]=ve=>me())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(ce,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${C.value?"edit":"create"}-form-cancel`,disabled:M.isReadonly,onClick:ue},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(ce,{appearance:"primary","data-testid":`plugin-${C.value?"edit":"create"}-form-submit`,disabled:!Ye.value||M.isReadonly,type:"submit",onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:T},null,32),e.createVNode(sj,{config:n.config,credential:N.value,developer:n.developer,editing:x.value===e.unref(Ie.EntityBaseFormType).Edit,"enable-redis-partial":n.enableRedisPartial,"enable-vault-secret-picker":s.enableVaultSecretPicker,engine:X.value,"entity-map":he.value,"raw-schema":E.value,record:B.value,schema:k.value,"onClick:createEntity":V[0]||(V[0]=ve=>H.$emit("click:create-entity",ve)),"onClick:learnMore":V[1]||(V[1]=ve=>H.$emit("click:learn-more",ve)),onGlobalAction:V[2]||(V[2]=(ve,ze)=>H.$emit("globalAction",ve,ze)),onLoading:V[3]||(V[3]=ve=>F.value=ve),onModelUpdated:ye,onShowNewPartialModal:V[4]||(V[4]=ve=>H.$emit("showNewPartialModal",ve)),onValidityChange:se},null,8,["config","credential","developer","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),e.createVNode(Se,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(l)("view_configuration.title"),visible:w.value,onClose:me},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(l)("view_configuration.message")),1),e.createVNode(Ce,{modelValue:j.value,"onUpdate:modelValue":V[11]||(V[11]=ve=>j.value=ve),"data-testid":"form-view-configuration-slideout-tabs",tabs:v.value},{json:e.withCtx(()=>[e.createVNode(e.unref(Ie.JsonCodeBlock),{config:n.config,"entity-record":h.value,"fetcher-url":Ee.value,"request-method":s.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(Ie.YamlCodeBlock),{"deck-callout-preference-key":e.unref(W)?e.unref(ee):void 0,"entity-record":h.value,"onDeckCallout:clickCta":V[8]||(V[8]=ve=>j.value="#deck")},null,8,["deck-callout-preference-key","entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(Ie.TerraformCodeBlock),{"credential-type":Y.value,"entity-record":h.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:e.withCtx(()=>[e.unref($)?(e.openBlock(),e.createElementBlock("div",fj,[e.createVNode(ce,{appearance:"secondary",class:"button-customize-deck",onClick:V[9]||(V[9]=ve=>K.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("plugins.form.button_deck_customize")),1)]),_:1})])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.DeckCodeBlock),{app:n.config.app,"control-plane-name":n.config.app==="konnect"?n.config.controlPlaneName:void 0,"customization-options":e.unref($),"entity-record":h.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"geo-api-server-url":n.config.app==="konnect"?n.config.geoApiServerUrl:void 0,"is-customization-modal-visible":K.value,"kong-admin-api-url":n.config.app==="kongManager"?n.config.apiBaseUrl:void 0,workspace:n.config.workspace||void 0,onCustomizationClose:V[10]||(V[10]=ve=>K.value=!1)},null,8,["app","control-plane-name","customization-options","entity-record","entity-type","geo-api-server-url","is-customization-modal-visible","kong-admin-api-url","workspace"])]),_:1},8,["modelValue","tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-aefa9b20"]]),mj={class:"kong-ui-entities-plugins-list"},hj={class:"button-row"},gj={class:"name-cell-wrapper"},yj={class:"info-wrapper"},_j={key:0,class:"info-name"},bj={key:1,class:"info-name"},wj={key:2,class:"info-type"},kj={key:1},Cj=Me(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.createRoute||!n.getViewRoute||!n.getEditRoute||!n.getConfigureDynamicOrderingRoute||n.app==="kongManager"&&!n.isExactMatch&&!n.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(n,{emit:t}){var Ye,tt;const r=st.usePluginMetaData(),o=t,i=n,{i18n:{t:a}}=st.useI18n(),s=Nr.useRouter(),{axiosInstance:c}=Ie.useAxios((Ye=i.config)==null?void 0:Ye.axiosRequestConfig),{hasRecords:l,handleStateChange:u}=Ie.useTableState(()=>C.value),p=e.computed(()=>l.value&&i.config.app==="konnect"),d=e.computed(()=>!!i.config.entityId),f=e.computed(()=>{var Ve;return((Ve=i.config)==null?void 0:Ve.entityType)==="consumers"}),m=e.computed(()=>{var Ve;return((Ve=i.config)==null?void 0:Ve.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||Ie.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),_={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(tt=i.config)!=null&&tt.entityId||(_.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),_.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(_.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),_.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const b=_,w=e.computed(()=>{var ke,_e,ye,ae;let Ve=i.config.entityType?`${i.config.apiBaseUrl}${et.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${et.list[i.config.app].all}`;return i.config.app==="konnect"&&(Ve=Ve.replace(/{controlPlaneId}/gi,((ke=i.config)==null?void 0:ke.controlPlaneId)||"")),Ve.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:"").replace(/{entityType}/gi,((ye=i.config)==null?void 0:ye.entityType)||"").replace(/{entityId}/gi,((ae=i.config)==null?void 0:ae.entityId)||"")}),C=e.ref(""),x=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:_.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{..._.enabled,label:a("search.filter.field.enabled")},name:_.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:k,fetcherCacheKey:N}=Ie.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),B=()=>{C.value=""},U=()=>{N.value++},S=e.ref(null),A=Ve=>{var _e,ye,ae,te;const ke=[];return((_e=Ve.route)!=null&&_e.id||Ve.route_id)&&ke.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((ye=Ve.service)!=null&&ye.id||Ve.service_id)&&ke.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((ae=Ve.consumer)!=null&&ae.id||Ve.consumer_id)&&ke.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((te=Ve.consumer_group)!=null&&te.id||Ve.consumer_group_id)&&ke.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ke.length?ke:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},O=async(Ve,ke)=>{var _e;return Ve===null?!1:await((_e=i.canRetrieveScopedEntity)==null?void 0:_e.call(i,Ve,ke.id))},P=(Ve,ke)=>{var ye,ae,te,se,ue;let _e=null;switch(Ve){case"route":_e=(ye=ke.route)==null?void 0:ye.id;break;case"service":_e=(ae=ke.service)==null?void 0:ae.id;break;case"consumer":_e=(te=ke.consumer)==null?void 0:te.id;break;case"consumer_group":_e=(se=ke.consumer_group)==null?void 0:se.id;break}_e&&((ue=i.config)!=null&&ue.getScopedEntityViewRoute)&&s.push(i.config.getScopedEntityViewRoute(Ve,_e))},R=e.ref(!1),z=e.ref(null),X=e.computed(()=>{const Ve={action:"disable",id:"",name:""};if(z.value){const{enabled:ke,id:_e,name:ye}=z.value;Ve.action=ke?"disable":"enable",Ve.id=_e,Ve.name=r.getDisplayName(ye)||_e}return Ve}),Z=Ve=>{R.value=!0,z.value=Ve},K=()=>{R.value=!1,z.value=null},W=async()=>{var ye,ae,te,se,ue,Ee,be,xe;if(!await((ye=i.canEdit)==null?void 0:ye.call(i,z.value))||!z.value)return;let ke=`${i.config.apiBaseUrl}${(ue=et.item[i.config.app])==null?void 0:ue[(ae=i.config)!=null&&ae.entityType?"forEntity":"all"].replace(/{entityType}/gi,((te=i.config)==null?void 0:te.entityType)||"").replace(/{entityId}/gi,((se=i.config)==null?void 0:se.entityId)||"")}`.replace(/{id}/gi,z.value.id||"");i.config.app==="konnect"&&(ke=ke.replace(/{controlPlaneId}/gi,((Ee=i.config)==null?void 0:Ee.controlPlaneId)||"")),ke=ke.replace(/\/{workspace}/gi,(be=i.config)!=null&&be.workspace?`/${i.config.workspace}`:"");const _e=!z.value.enabled;try{const h=(xe=i.config)==null?void 0:xe.app;let T;C.value&&h==="konnect"&&(T=await c.get(ke));const{data:G}=h==="konnect"?await c.put(ke,{...(T==null?void 0:T.data)||z.value,enabled:_e},{timeout:12e4}):await c.patch(ke,{...z.value,enabled:_e},{timeout:12e4});o("toggle-enabled",_e,G),z.value.enabled=_e}catch(h){o("error",h)}},$=async(Ve,ke)=>{const _e=Ve.id;if(!await ke(_e)){o("copy:error",{entity:Ve,field:"id",message:a("errors.copy")});return}o("copy:success",{entity:Ve,field:"id",message:a("copy.success",{val:_e})})},ee=async(Ve,ke)=>{const _e=JSON.stringify(Ve);if(!await ke(_e)){o("copy:error",{entity:Ve,message:a("errors.copy")});return}o("copy:success",{entity:Ve,message:a("copy.success_brief")})},F=async Ve=>{var _e;await((_e=i.canRetrieve)==null?void 0:_e.call(i,Ve))&&s.push(i.config.getViewRoute(Ve))},J=Ve=>({label:a("actions.view"),to:i.config.getViewRoute(Ve)}),M=Ve=>({label:a("actions.edit"),to:i.config.getEditRoute(Ve)}),v=Ve=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(Ve)}),j=e.ref(void 0),ie=e.ref(!1),re=e.ref(!1),me=e.ref(""),he=Ie.useDeleteUrlBuilder(i.config,w.value),le=Ve=>{j.value=Ve,ie.value=!0},ge=()=>{ie.value=!1},Oe=async()=>{var Ve,ke,_e;if((Ve=j.value)!=null&&Ve.id){re.value=!0;try{await c.delete(he(j.value.id)),re.value=!1,ie.value=!1,N.value++,o("delete:success",j.value)}catch(ye){me.value=((_e=(ke=ye.response)==null?void 0:ke.data)==null?void 0:_e.message)||ye.message||a("errors.delete"),o("error",ye)}finally{re.value=!1}}},$e=()=>{s.push(i.config.createRoute)};e.watch(k,Ve=>{var ke,_e,ye;if(Ve.status===Ie.FetcherStatus.Error){S.value={title:a("errors.general")},(ye=(_e=(ke=Ve.error)==null?void 0:ke.response)==null?void 0:_e.data)!=null&&ye.message&&(S.value.message=Ve.error.response.data.message),o("error",Ve.error);return}S.value=null});const Pe=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),qe=e.ref(!1);return e.onBeforeMount(async()=>{qe.value=await i.canCreate(),qe.value&&(Pe.value.title=a("plugins.list.empty_state.title"),Pe.value.ctaText=a("actions.create"))}),(Ve,ke)=>{const _e=e.resolveComponent("KButton"),ye=e.resolveComponent("KEmptyState"),ae=e.resolveComponent("KBadge"),te=e.resolveComponent("KTruncate"),se=e.resolveComponent("KInputSwitch"),ue=e.resolveComponent("KDropdownItem"),Ee=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",mj,[e.createVNode(e.unref(Ie.EntityBaseTable),{"cache-identifier":n.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":Pe.value,"enable-entity-actions":"","error-message":S.value,fetcher:e.unref(E),"fetcher-cache-key":e.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:C.value,"table-headers":e.unref(b),title:n.title,"title-tag":n.titleTag,onClearSearchInput:B,"onClick:row":ke[4]||(ke[4]=be=>F(be)),onSort:U,onState:e.unref(u)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(Ie.EntityFilter),{modelValue:C.value,"onUpdate:modelValue":ke[0]||(ke[0]=be=>C.value=be),config:x.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!n.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",hj,[!d.value&&p.value?(e.openBlock(),e.createBlock(_e,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ke[1]||(ke[1]=be=>Ve.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canCreate()},{default:e.withCtx(()=>[e.createVNode(_e,{appearance:"primary","data-testid":"toolbar-add-plugin",size:n.useActionOutside?"medium":"large",to:n.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:be})=>[e.createElementVNode("div",gj,[e.createVNode(e.unref(Er.PluginIcon),{class:"plugin-icon",name:be.name,size:24},null,8,["name"]),e.createElementVNode("div",yj,[be.instance_name?(e.openBlock(),e.createElementBlock("span",_j,e.toDisplayString(be.instance_name),1)):(e.openBlock(),e.createElementBlock("span",bj,e.toDisplayString(e.unref(r).getDisplayName(be.name)),1)),be.instance_name?(e.openBlock(),e.createElementBlock("span",wj,e.toDisplayString(e.unref(r).getDisplayName(be.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:be})=>[A(be).length>0?(e.openBlock(),e.createBlock(te,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A(be),xe=>(e.openBlock(),e.createBlock(e.unref(Ie.PermissionsWrapper),{key:xe.badgeText,"auth-function":()=>O(xe.type,be),"force-show":""},{default:e.withCtx(({isAllowed:h})=>[e.createVNode(ae,{class:e.normalizeClass(h||"disabled"),onClick:e.withModifiers(T=>h&&xe.type&&P(xe.type,be),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(xe.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",kj,"-"))]),enabled:e.withCtx(({row:be})=>[e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":async()=>!!(await n.canEdit(be)&&await n.canToggle(be)),"force-show":""},{default:e.withCtx(({isAllowed:xe})=>{var h,T;return[e.createElementVNode("div",{onClick:ke[3]||(ke[3]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(se,{disabled:!xe,"disabled-tooltip-text":!xe&&((T=(h=n.config).getToggleDisabledTooltip)==null?void 0:T.call(h,be))||void 0,"model-value":be.enabled,onClick:e.withModifiers(G=>xe&&Z(be),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:be})=>[e.createVNode(ae,{appearance:e.unref(hy)(be)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(hy)(be)?e.unref(a)("plugins.list.table_headers.ordering_badge.static"):e.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:be})=>[e.createVNode(e.unref(Ie.TableTags),{tags:be},null,8,["tags"])]),actions:e.withCtx(({row:be})=>[e.createVNode(Ee,null,{default:e.withCtx(({copyToClipboard:xe})=>[e.createVNode(ue,{"data-testid":"action-entity-copy-id",onClick:h=>$(be,xe)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(Ee,null,{default:e.withCtx(({copyToClipboard:xe})=>[e.createVNode(ue,{"data-testid":"action-entity-copy-json",onClick:h=>ee(be,xe)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canRetrieve(be)},{default:e.withCtx(()=>[e.createVNode(ue,{"data-testid":"action-entity-view","has-divider":"",item:J(be)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canEdit(be)},{default:e.withCtx(()=>[e.createVNode(ue,{"data-testid":"action-entity-edit",item:M(be)},null,8,["item"])]),_:2},1032,["auth-function"]),!f.value&&!m.value&&e.unref(g)?(e.openBlock(),e.createBlock(e.unref(Ie.PermissionsWrapper),{key:0,"auth-function":()=>n.canConfigureDynamicOrdering(be)},{default:e.withCtx(()=>[v(be)?(e.openBlock(),e.createBlock(ue,{key:0,"data-testid":"action-entity-config-dyn-order",item:v(be)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(Ie.PermissionsWrapper),{"auth-function":()=>n.canDelete(be)},{default:e.withCtx(()=>[e.createVNode(ue,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:xe=>le(be)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!C.value&&n.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var be;return[e.createVNode(ye,{"data-testid":n.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:e.unref(a)("plugins.list.empty_state_v2.description"),title:e.unref(a)("plugins.list.empty_state_v2.title")},e.createSlots({icon:e.withCtx(()=>[e.createVNode(e.unref(Re.PlugIcon),{decorative:""})]),action:e.withCtx(()=>[qe.value?(e.openBlock(),e.createBlock(_e,{key:0,"data-testid":"entity-create-button",onClick:$e},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.AddIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(_e,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ke[2]||(ke[2]=xe=>Ve.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.BookIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(be=n.config)!=null&&be.isControlPlaneGroup?{name:"default",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),e.createVNode(e.unref(Ie.EntityToggleModal),{action:X.value.action,"entity-id":X.value.id,"entity-name":X.value.name,"entity-type":e.unref(a)("glossary.plugin"),"on-confirm":W,visible:R.value,onCancel:K,onProceed:K},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(Ie.EntityDeleteModal),{"action-pending":re.value,description:e.unref(a)("delete.description"),"entity-name":j.value&&(j.value.instance_name||j.value.name||j.value.id),"entity-type":e.unref(Ie.EntityTypes).Plugin,error:me.value,title:e.unref(a)("delete.title"),visible:ie.value,onCancel:ge,onProceed:Oe},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-88f8302b"]]),Ej={class:"plugin-select-card-wrapper"},Nj=["data-testid"],Sj={class:"plugin-card-header"},xj={class:"plugin-card-title"},Aj={key:0,class:"plugin-card-actions"},vj=["data-testid","title"],Ij={key:0,class:"plugin-card-text"},Bj={key:0,class:"custom-plugin-badges"},Tj=["title"],ip=Me(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(n,{emit:t}){const r=t,o=n,i=Nr.useRouter(),{i18n:{t:a}}=st.useI18n(),s=e.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),c=e.computed(()=>!E.value||x.value?[]:o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?[a("plugins.select.cloned_from_badge",{link:o.plugin.clonedFromRef})]:o.plugin.customPluginType==="streaming"?[a("plugins.select.streamed_custom_badge")]:[a("plugins.select.installed_custom_badge")]),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),u=e.computed(()=>typeof o.config.getCustomEditRoute=="function"),p=e.computed(()=>o.plugin.customPluginType==="cloned"),d=e.computed(()=>p.value?o.canDeleteClonedPlugin:o.canDeleteCustomPlugin),f=e.computed(()=>p.value?o.canEditClonedPlugin:o.canEditCustomPlugin),m=e.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),g=e.computed(()=>f.value&&u.value),y=e.computed(()=>d.value),_=e.computed(()=>!!(E.value&&!x.value&&m.value&&o.navigateOnClick&&(y.value||g.value))),b=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},w=()=>{o.navigateOnClick?b():C()},C=()=>{r("plugin-clicked",o.plugin)},x=e.computed(()=>o.plugin.id==="custom-plugin-create"),E=e.computed(()=>o.plugin.group===fe.PluginGroup.CUSTOM_PLUGINS),k=()=>{E.value&&r("custom-plugin-delete")},N=(U,S)=>{const A=o.config;typeof A.getCustomEditRoute=="function"&&i.push(A.getCustomEditRoute(U,S))},B=()=>{if(!l.value&&E.value){const U=o.config;x.value&&U.createCustomRoute?i.push(U.createCustomRoute):E.value&&b()}};return(U,S)=>{const A=e.resolveComponent("KButton"),O=e.resolveComponent("KDropdownItem"),P=e.resolveComponent("KDropdownMenu"),R=e.resolveComponent("KBadge"),z=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",Ej,[e.createVNode(z,{text:n.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${n.plugin.id}-card`,role:"button",onClick:S[1]||(S[1]=X=>l.value||E.value?void 0:w())},[e.createElementVNode("div",Sj,[e.createElementVNode("div",xj,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!E.value})},e.toDisplayString(n.plugin.name),3)]),_.value?(e.openBlock(),e.createElementBlock("div",Aj,[e.createVNode(P,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(O,{key:0,"data-testid":"edit-plugin-schema",onClick:S[0]||(S[0]=e.withModifiers(X=>N(n.plugin.name,n.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),y.value?(e.openBlock(),e.createBlock(O,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":g.value,onClick:e.withModifiers(k,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":E.value}]),"data-testid":n.plugin.name,title:n.plugin.available?n.plugin.name:e.unref(a)("plugins.select.unavailable_tooltip"),onClick:B},[e.createVNode(e.unref(Er.PluginIcon),{alt:n.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),n.plugin.description||c.value.length?(e.openBlock(),e.createElementBlock("div",Ij,[c.value.length?(e.openBlock(),e.createElementBlock("div",Bj,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,X=>(e.openBlock(),e.createBlock(R,{key:X,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(X),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),n.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:n.plugin.description},e.toDisplayString(n.plugin.description),9,Tj)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,vj),e.createElementVNode("div",{class:"plugin-card-footer",onClick:B},e.toDisplayString(x.value?e.unref(a)("actions.create_custom"):n.plugin.exists?e.unref(a)("actions.enabled"):e.unref(a)("actions.enable")),1)],10,Nj)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-eb0977c9"]]),fc=Me(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(n,{emit:t}){var m;const r=n,o=t,{i18n:{t:i}}=st.useI18n(),{getMessageFromError:a}=Ie.useErrors(),{axiosInstance:s}=Ie.useAxios((m=r.config)==null?void 0:m.axiosRequestConfig),c=e.computed(()=>{var g;return p.value?i("delete.plugin_schema_in_use_title"):i("delete.title",{name:((g=r.plugin)==null?void 0:g.name)||i("delete.custom_plugin")})}),l=e.ref(!1),u=e.ref(""),p=e.ref(!1),d=e.computed(()=>{const g=r.plugin.customPluginType;if(r.config.app==="konnect"){const y=g==="streaming"?et.select[r.config.app].streamingCustomPluginItem:g==="cloned"?et.customPlugin[r.config.app].cloned.edit:et.select[r.config.app].schemaCustomPluginItem;return`${r.config.apiBaseUrl}${y}`.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"").replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}if(r.config.app==="kongManager"&&g&&g!=="schema"){const y=g==="cloned"?et.customPlugin[r.config.app].cloned.edit:et.customPlugin[r.config.app].streamed.edit;return`${r.config.apiBaseUrl}${y}`.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}return null}),f=async()=>{var g;if(l.value=!0,u.value="",!((g=r.plugin)!=null&&g.name)){l.value=!1;return}try{d.value&&await s.delete(d.value),o("proceed")}catch(y){Ew(y)?p.value=!0:u.value=a(y)}finally{l.value=!1}};return(g,y)=>{const _=e.resolveComponent("KAlert"),b=e.resolveComponent("KButton"),w=e.resolveComponent("KModal");return!p.value&&n.plugin?(e.openBlock(),e.createBlock(e.unref(Ie.EntityDeleteModal),{key:0,"action-pending":l.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(i)("delete.description_custom"),"entity-name":n.plugin.name,"entity-type":e.unref(Ie.EntityTypes).Plugin,error:u.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=C=>g.$emit("closed")),onProceed:f},null,8,["action-pending","description","entity-name","entity-type","error","title"])):n.plugin?(e.openBlock(),e.createBlock(w,{key:1,"action-button-disabled":l.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:y[2]||(y[2]=C=>g.$emit("closed"))},{default:e.withCtx(()=>[e.createVNode(_,{appearance:"danger",message:e.unref(i)("delete.plugin_schema_in_use_message")},null,8,["message"])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(b,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:y[1]||(y[1]=C=>g.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-627c76f8"]]),Oj={class:"custom-plugins-grid"},Pj={class:"empty-state-title"},Vj={class:"empty-state-description"},ap=310,$j=Me(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=st.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:s}=st.usePluginHelpers(),c=e.ref(!0),l=E=>{o("plugin-clicked",E)},u=e.computed(()=>{const E=JSON.parse(JSON.stringify(r.pluginList))[fe.PluginGroup.CUSTOM_PLUGINS]||[];return r.canCreateCustomPlugin&&r.navigateOnClick&&r.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:fe.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),p=e.ref(!1),d=e.ref(null),f=E=>{p.value=!0,d.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var k;E&&(o("revalidate"),o("delete:success",((k=d.value)==null?void 0:k.name)||"")),p.value=!1,d.value=null},g=e.ref(ap),y=e.ref(null),_=e.ref(null),b=e.computed(()=>c.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),w=e.ref(!1),C=()=>{g.value=Math.max(a(_.value),ap),x()},x=()=>{var E,k;(E=_.value)!=null&&E.length&&(w.value=s(y.value,(k=_.value)==null?void 0:k.length))};return e.onMounted(async()=>{await e.nextTick(),g.value=Math.max(a(_.value),ap),x(),window==null||window.addEventListener("resize",C)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",C)}),(E,k)=>{const N=e.resolveComponent("KEmptyState"),B=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",Oj,[u.value.length?(e.openBlock(),e.createBlock(B,{key:1,modelValue:c.value,"onUpdate:modelValue":k[0]||(k[0]=U=>c.value=U),class:"custom-plugins-collapse","data-testid":`${e.unref(fe.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:e.unref(fe.PluginGroup).CUSTOM_PLUGINS,"trigger-label":c.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:e.normalizeStyle(b.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(U,S)=>(e.openBlock(),e.createBlock(ip,{key:`plugin-card-${S}`,ref_for:!0,ref_key:"pluginCardRef",ref:_,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,"navigate-on-click":n.navigateOnClick,plugin:U,onCustomPluginDelete:A=>f(U),onPluginClicked:l},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:e.withCtx(()=>[k[2]||(k[2]=e.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Pj,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",Vj,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),p.value&&d.value?(e.openBlock(),e.createBlock(fc,{key:2,config:n.config,plugin:d.value,onClosed:m,onProceed:k[1]||(k[1]=U=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-909f4d5f"]]),sp=310,xw=Me(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked","delete:success"],["update:modelValue"]),setup(n,{emit:t}){const r=e.useModel(n,"modelValue"),o=n,i=t,{i18n:{t:a}}=st.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:c}=st.usePluginHelpers(),l=e.ref(sp),u=e.ref(null),p=e.ref(null),d=e.computed(()=>r.value?{overflowY:"hidden",maxHeight:`${l.value}px`}:{}),f=e.ref(!1),m=e.ref(!1),g=e.ref(null),y=C=>{m.value=!0,g.value={id:C.id,name:C.name,customPluginType:C.customPluginType}},_=C=>{var x;C&&i("delete:success",((x=g.value)==null?void 0:x.name)||""),m.value=!1,g.value=null},b=()=>{l.value=Math.max(s(p.value),sp),w()},w=()=>{var C,x;(C=p.value)!=null&&C.length&&(f.value=c(u.value,(x=p.value)==null?void 0:x.length))};return e.onMounted(async()=>{await e.nextTick(),l.value=Math.max(s(p.value),sp),w(),window==null||window.addEventListener("resize",b)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(C,x)=>{const E=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(E,{modelValue:r.value,"onUpdate:modelValue":x[0]||(x[0]=k=>r.value=k),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":r.value?e.unref(a)("plugins.select.view_more"):e.unref(a)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:e.normalizeStyle(d.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.plugins,k=>(e.openBlock(),e.createBlock(ip,{key:`plugin-card-${k.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:p,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,"navigate-on-click":n.navigateOnClick,plugin:k,onCustomPluginDelete:N=>y(k),onPluginClicked:N=>i("plugin-clicked",k)},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete","onPluginClicked"]))),128))],4)]),_:2},[f.value?void 0:{name:"trigger",fn:e.withCtx(()=>[x[2]||(x[2]=e.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"]),m.value&&g.value?(e.openBlock(),e.createBlock(fc,{key:0,config:n.config,plugin:g.value,onClosed:_,onProceed:x[1]||(x[1]=k=>_(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-7f683497"]]),Rj={class:"plugin-select-grid"},Lj={class:"empty-state-title"},Dj={class:"empty-state-description"},lp=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||!n.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Boolean,default:!1},canDeleteClonedPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},canEditClonedPlugin:{type:Boolean,default:!1},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked","delete:success"],setup(n,{emit:t}){const r=n,o=t,{i18n:{t:i}}=st.useI18n(),a=e.ref(!1),s=e.ref(tf.reduce((u,p)=>(u[p]=!1,u),{})),c=u=>{o("plugin-clicked",u)},l=e.computed(()=>{const u=JSON.parse(JSON.stringify(r.pluginList));return r.config.app==="konnect"&&delete u[fe.PluginGroup.CUSTOM_PLUGINS],u});return(u,p)=>{const d=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",Rj,[Object.keys(l.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Lj,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",Dj,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!r.hideHighlightedPlugins&&r.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(xw,{key:1,modelValue:a.value,"onUpdate:modelValue":p[0]||(p[0]=f=>a.value=f),"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:r.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":n.navigateOnClick,plugins:r.highlightedPlugins,"onDelete:success":p[1]||(p[1]=f=>o("delete:success",f)),onPluginClicked:p[2]||(p[2]=f=>c(f))},null,8,["modelValue","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(tf),f=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[l.value[f]?(e.openBlock(),e.createElementBlock("div",{key:f},[e.createVNode(xw,{modelValue:s.value[f],"onUpdate:modelValue":m=>s.value[f]=m,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:f,"navigate-on-click":n.navigateOnClick,plugins:l.value[f]||[],"onDelete:success":p[3]||(p[3]=m=>o("delete:success",m)),onPluginClicked:p[4]||(p[4]=m=>c(m))},null,8,["modelValue","onUpdate:modelValue","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),Mj={class:"kong-ui-entities-plugin-select-form"},jj={class:"plugins-filter-input-container"},Fj={key:0},Uj={key:3,"aria-live":"polite",class:"plugins-results-container"},Kj={"data-testid":"kong-tab"},qj={class:"tab-description"},Gj={"data-testid":"custom-tab"},Hj={class:"tab-description"},zj={key:1},Wj=Me(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="kongManager"&&!n.workspace||n.app==="konnect"&&(!n.controlPlaneId||n.workspace)||!n.getCreateRoute)},customPluginSupport:{type:[String,Array],default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canReadCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteClonedPlugin:{type:Function,required:!1},canReadClonedPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditClonedPlugin:{type:Function,required:!1},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(n,{emit:t}){var ye;const r=n,o=t,i=Nr.useRoute(),a=Nr.useRouter(),{i18n:{t:s}}=st.useI18n(),{pluginMetaData:c}=st.usePluginMetaData(),{getMessageFromError:l}=Ie.useErrors(),{sortAlpha:u,objectsAreEqual:p}=Ie.useHelpers(),d=e.ref(""),f=e.ref(!0),m=e.ref(!1),g=e.ref(""),y=e.ref(""),_=e.ref([]),b=e.ref([]),w=e.ref([]),C=e.ref({}),x=e.ref([]),E=e.ref(null),k=e.ref(!1),{axiosInstance:N}=Ie.useAxios((ye=r.config)==null?void 0:ye.axiosRequestConfig),B=ae=>ae==="none"||ae==="disabled"?new Set:new Set(Array.isArray(ae)?ae:[ae]),U=e.computed(()=>B(r.customPluginSupport)),S=e.computed(()=>[...U.value].sort().join("|")),A=e.computed(()=>r.customPluginSupport==="disabled"),O=e.computed(()=>A.value||U.value.size>0),P=e.computed(()=>U.value.has("streaming")),R=e.computed(()=>U.value.has("cloned")),z=ae=>zo.isAxiosError(ae)&&ae.code==="ERR_CANCELED",X=ae=>l(ae).toLowerCase().includes("requires a license"),Z=e.computed(()=>C.value?Object.entries(C.value).filter(([ae])=>ae!==fe.PluginGroup.CUSTOM_PLUGINS).reduce((ae,[,te])=>{for(const se of te??[])ae[se.id]=se;return ae},{}):{}),K=e.computed(()=>{var se;if(!C.value)return{};const ae=d.value.toLowerCase(),te=JSON.parse(JSON.stringify(C.value));for(const ue in C.value){const Ee=((se=C.value[ue])==null?void 0:se.filter(be=>{var xe,h;return be.name.toLowerCase().includes(ae)||be.id.toLowerCase().includes(ae)||be.group.toLowerCase().includes(ae)||((xe=be.clonedFromRef)==null?void 0:xe.toLowerCase().includes(ae))||((h=be.customPluginType)==null?void 0:h.toLowerCase().includes(ae))}))||[];Ee.length?te[ue]=Ee:delete te[ue]}return te}),W=e.computed(()=>r.highlightedPluginIds.reduce((ae,te)=>{const se=Z.value[te];return se&&ae.push(se),ae},[])),$=e.computed(()=>Object.keys(K.value).length>0),ee=e.computed(()=>Object.keys(C.value).length>0&&!$.value),F=e.computed(()=>r.config.app!=="konnect"||!O.value?[]:[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:A.value}]),J=e.computed(()=>{var te;let ae=F.value.length&&((i==null?void 0:i.hash)||((te=F.value[0])==null?void 0:te.hash))||"";return ae==="#custom"&&A.value&&(ae="#kong"),ae}),M=()=>{const ae=new Map(w.value.map(ue=>[ue.name,ue])),te=new Set(b.value.map(ue=>ue.name)),se=new Set([...te,...ae.keys()]);return[...new Set([...Object.keys({...r.availableOnServer?{}:c}),..._.value,...se])].filter(ue=>!r.ignoredPlugins.includes(ue)).filter(ue=>{if(!r.config.entityType)return ue;const Ee=ae.has(ue)?ae.get(ue).ref:ue;return r.config.entityType==="services"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.SERVICE)||r.config.entityType==="routes"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.ROUTE)||r.config.entityType==="consumer_groups"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.CONSUMER_GROUP)||r.config.entityType==="consumers"&&c[Ee]&&!c[Ee].scope.includes(fe.PluginScope.CONSUMER)?!1:ue}).reduce((ue,Ee)=>{var oe;const be=c[Ee]&&c[Ee].name||Ee,xe=ae.get(Ee),h=te.has(Ee),T={...c[Ee],id:Ee,name:be,available:_.value.includes(Ee)||!!xe||h,disabledMessage:"",group:((oe=c[Ee])==null?void 0:oe.group)||fe.PluginGroup.CUSTOM_PLUGINS};T.group===fe.PluginGroup.CUSTOM_PLUGINS&&(xe?(T.customPluginType="cloned",T.clonedFromRef=xe.ref):h?T.customPluginType="streaming":T.customPluginType="schema"),r.disabledPlugins&&(T.disabledMessage=r.disabledPlugins[Ee]);const G=T.group||s("plugins.select.misc_plugins");let Y=ue[G];return Y||(Y=[]),Y.push(T),Y.sort(u("name")),ue[G]=Y,ue},{})},v=e.computed(()=>{var te;let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].availablePlugins}`;if(r.config.app==="konnect")ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"");else if(r.config.app==="kongManager"&&((te=r.config.gatewayInfo)==null?void 0:te.edition)==="community")return`${r.config.apiBaseUrl}${et.select[r.config.app].availablePluginsForOss}`;return ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}),j=e.computed(()=>{if(P.value){let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].streamingCustomPlugins}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),ie=e.computed(()=>{if(R.value){let ae=`${r.config.apiBaseUrl}${et.select[r.config.app].clonedPlugins}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),re=e.computed(()=>{if(r.config.entityType&&r.config.entityId){let ae=`${r.config.apiBaseUrl}${et.list[r.config.app].forEntity}`;return r.config.app==="konnect"&&(ae=ae.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),ae.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{entityType}/gi,r.config.entityType||"").replace(/{entityId}/gi,r.config.entityId||"")}return""}),me=ae=>{a.replace({hash:ae,query:i.query})};e.watch(()=>r.disabledPlugins,(ae,te)=>{!p(ae,te)&&!f.value&&(C.value=M())}),e.watch(()=>r.ignoredPlugins,(ae,te)=>{!p(ae,te)&&!f.value&&(C.value=M())}),e.watch(f,ae=>{o("loading",ae)});const he=async ae=>{if(!re.value){x.value=[];return}try{const{data:{data:te}}=await N.get(re.value,{signal:ae});te!=null&&te.length&&(x.value=te.reduce((se,ue)=>(ue.name&&se.push(ue.name),se),[]))}catch(te){z(te)||(x.value=[])}},le=async ae=>{const te=[];j.value&&qe.value&&te.push(dc(N,j.value,ae).then(se=>{b.value=se}).catch(se=>{z(se)||y.value||(y.value=l(se)??s("plugins.select.tabs.custom.fetch_error"))})),ie.value&&Ve.value&&te.push(dc(N,ie.value,ae).then(se=>{w.value=se}).catch(se=>{if(z(se))return;const ue=X(se);(ue||!y.value)&&(y.value=ue?s("plugins.select.tabs.custom.license_required"):l(se)??s("plugins.select.tabs.custom.fetch_error"))})),te.push(he(ae)),await Promise.allSettled(te)},ge=async()=>{var ae,te;(ae=E.value)==null||ae.abort(),E.value=new AbortController,f.value=!0,m.value=!1,g.value="",y.value="",_.value=[],b.value=[],w.value=[],x.value=[];try{const{data:se}=await N.get(v.value,{signal:E.value.signal});if(r.config.app==="konnect"){const{names:ue}=se;_.value=ue||[]}else if(r.config.app==="kongManager"){const{plugins:{available_on_server:ue}}=se;_.value=ue?Object.keys(ue):[]}await le(E.value.signal),C.value=M()}catch(se){z(se)||(m.value=!0,g.value=l(se))}finally{(te=E.value)!=null&&te.signal.aborted||(f.value=!1)}},Oe=e.ref(!1),$e=e.ref(!1),Pe=e.ref(!1),qe=e.ref(!1),Ye=e.ref(!1),tt=e.ref(!1),Ve=e.ref(!1),ke=ae=>{b.value=b.value.filter(te=>te.name!==ae),w.value=w.value.filter(te=>te.name!==ae),C.value=M(),o("delete-custom:success",ae)};e.onBeforeMount(async()=>{const[ae,te,se,ue,Ee,be,xe]=await Promise.all([r.canCreateCustomPlugin(),r.canEditCustomPlugin(),r.canDeleteCustomPlugin(),r.canReadCustomPlugin(),r.canEditClonedPlugin?r.canEditClonedPlugin():Promise.resolve(null),r.canDeleteClonedPlugin?r.canDeleteClonedPlugin():Promise.resolve(null),r.canReadClonedPlugin()]);Oe.value=ae,$e.value=te,Pe.value=se,qe.value=ue,Ye.value=Ee??te,tt.value=be??se,Ve.value=xe});const _e=e.useTemplateRef("filter-input");return e.onMounted(async()=>{var ae,te;k.value=!0,(te=(ae=_e.value)==null?void 0:ae.input)==null||te.focus(),await ge()}),e.watch(()=>{var ae;return[r.config.app==="konnect"?r.config.controlPlaneId:void 0,r.config.workspace,r.config.entityType,r.config.entityId,r.config.app==="kongManager"?(ae=r.config.gatewayInfo)==null?void 0:ae.edition:void 0,S.value,A.value]},async()=>{k.value&&await ge()}),e.onBeforeUnmount(()=>{var ae;(ae=E.value)==null||ae.abort()}),(ae,te)=>{const se=e.resolveComponent("KInput"),ue=e.resolveComponent("KSkeletonBox"),Ee=e.resolveComponent("KSkeleton"),be=e.resolveComponent("KEmptyState"),xe=e.resolveComponent("KTooltip"),h=e.resolveComponent("KAlert"),T=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",Mj,[e.createElementVNode("div",jj,[e.createVNode(se,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":te[0]||(te[0]=G=>d.value=G),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),f.value?(e.openBlock(),e.createElementBlock("section",Fj,[e.createVNode(ue,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(Ee,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(e.openBlock(),e.createBlock(be,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(g.value),1)]),_:1})):ee.value&&d.value?(e.openBlock(),e.createBlock(be,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(s)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",Uj,[F.value.length?(e.openBlock(),e.createBlock(T,{key:0,modelValue:J.value,"onUpdate:modelValue":te[3]||(te[3]=G=>J.value=G),"data-testid":"plugins-tabs",tabs:F.value,onChange:me},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",Kj,[e.createElementVNode("p",qj,e.toDisplayString(e.unref(s)("plugins.select.tabs.kong.description")),1),e.createVNode(lp,{"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":W.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[1]||(te[1]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",Gj,[e.renderSlot(ae.$slots,"before-custom-tab-content",{},void 0,!0),e.createElementVNode("p",Hj,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.description")),1),y.value?(e.openBlock(),e.createBlock(h,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):e.createCommentVNode("",!0),e.createVNode($j,{"can-create-custom-plugin":Oe.value,"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[2]||(te[2]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-create-custom-plugin","can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[A.value?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(xe,{"max-width":"300",text:e.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createElementBlock("div",zj,[y.value?(e.openBlock(),e.createBlock(h,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):e.createCommentVNode("",!0),e.createVNode(lp,{"can-delete-cloned-plugin":tt.value,"can-delete-custom-plugin":Pe.value,"can-edit-cloned-plugin":Ye.value,"can-edit-custom-plugin":$e.value,config:n.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":W.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":n.navigateOnClick,"plugin-list":K.value,"onDelete:success":ke,onPluginClicked:te[4]||(te[4]=G=>ae.$emit("plugin-clicked",G))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])]))]))])}}}),[["__scopeId","data-v-70fb1e81"]]),Yj={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},Jj={class:"plugin-card-header"},Xj={class:"plugin-card-title"},Zj={key:0,class:"plugin-card-actions"},Qj=["data-testid","title"],eF={key:0},tF=["title"],nF={class:"plugin-card-footer"},rF={class:"plugin-card-footer-extra"},oF={key:0,class:"custom-plugin-badges"},iF=Me(e.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","custom-plugin-delete"],setup(n,{emit:t}){const r=t,o=n,i=Nr.useRouter(),{i18n:{t:a}}=st.useI18n(),s=e.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),c=e.computed(()=>!C.value||w.value?[]:o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?[a("plugins.select.cloned_from_badge",{link:o.plugin.clonedFromRef})]:o.plugin.customPluginType==="streaming"?[a("plugins.select.streamed_custom_badge")]:[a("plugins.select.installed_custom_badge")]),l=e.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),u=e.computed(()=>typeof o.config.getCustomEditRoute=="function"),p=e.computed(()=>o.plugin.customPluginType==="cloned"),d=e.computed(()=>p.value?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin),f=e.computed(()=>p.value?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin),m=e.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),g=e.computed(()=>f.value&&u.value),y=e.computed(()=>d.value),_=e.computed(()=>!!(C.value&&!w.value&&m.value&&(y.value||g.value))),b=e.computed(()=>l.value?{}:C.value&&w.value&&o.config.createCustomRoute?o.config.createCustomRoute:o.config.getCreateRoute(o.plugin.id)),w=e.computed(()=>o.plugin.id==="custom-plugin-create"),C=e.computed(()=>o.plugin.group===fe.PluginGroup.CUSTOM_PLUGINS),x=()=>{C.value&&r("custom-plugin-delete")},E=(k,N)=>{typeof o.config.getCustomEditRoute=="function"&&i.push(o.config.getCustomEditRoute(k,N))};return(k,N)=>{const B=e.resolveComponent("KButton"),U=e.resolveComponent("KDropdownItem"),S=e.resolveComponent("KDropdownMenu"),A=e.resolveComponent("KBadge"),O=e.resolveComponent("RouterLink"),P=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",Yj,[e.createVNode(P,{text:n.plugin.disabledMessage},{default:e.withCtx(()=>[e.createVNode(O,{class:e.normalizeClass(["plugin-select-card",{disabled:l.value}]),"data-testid":`${n.plugin.id}-card`,to:b.value},{default:e.withCtx(()=>[e.createElementVNode("div",Jj,[e.createElementVNode("div",Xj,[e.createVNode(e.unref(Er.PluginIcon),{alt:n.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!C.value})},e.toDisplayString(n.plugin.name),3)]),_.value?(e.openBlock(),e.createElementBlock("div",Zj,[e.createVNode(S,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:N[1]||(N[1]=e.withModifiers(()=>{},["stop","prevent"]))},{default:e.withCtx(()=>[e.createVNode(B,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[g.value?(e.openBlock(),e.createBlock(U,{key:0,"data-testid":"edit-plugin-schema",onClick:N[0]||(N[0]=e.withModifiers(R=>E(n.plugin.name,n.plugin.customPluginType),["stop","prevent"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),y.value?(e.openBlock(),e.createBlock(U,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":g.value,onClick:e.withModifiers(x,["stop","prevent"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"plugin-card-body","data-testid":`${n.plugin.id}-card-body`,title:n.plugin.available?n.plugin.name:e.unref(a)("plugins.select.unavailable_tooltip")},[n.plugin.description?(e.openBlock(),e.createElementBlock("div",eF,[e.createElementVNode("div",{title:n.plugin.description},e.toDisplayString(n.plugin.description),9,tF)])):e.createCommentVNode("",!0)],8,Qj),e.createElementVNode("div",nF,[e.createElementVNode("div",null,e.toDisplayString(w.value?e.unref(a)("actions.create_custom"):e.unref(a)("actions.configure")),1),e.createElementVNode("div",rF,[c.value.length?(e.openBlock(),e.createElementBlock("div",oF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,R=>(e.openBlock(),e.createBlock(A,{key:R,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(R),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"footer-extra",{},void 0,!0)])])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-cabcdb98"]]),aF=["data-testid"],sF={class:"group-icon-wrapper"},lF={class:"group-title-text"},cF=["data-testid"],uF=["data-testid"],Aw=Me(e.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(n,{emit:t}){const r=n,o=e.computed(()=>{switch(r.name){case fe.PluginGroup.FEATURED:return Re.PopularIcon;case fe.PluginGroup.AI:return Re.BotIcon;case fe.PluginGroup.ANALYTICS_AND_MONITORING:return Re.AnalyticsIcon;case fe.PluginGroup.AUTHENTICATION:return Re.LockIcon;case fe.PluginGroup.LOGGING:return Re.ServiceDocumentIcon;case fe.PluginGroup.MONETIZATION:return Re.MoneyIcon;case fe.PluginGroup.SECURITY:return Re.SecurityIcon;case fe.PluginGroup.SERVERLESS:return Re.RuntimeServerlessIcon;case fe.PluginGroup.TRAFFIC_CONTROL:return Re.TrafficIcon;case fe.PluginGroup.TRANSFORMATIONS:return Re.TransformationIcon;case fe.PluginGroup.DEPLOYMENT:return Re.DeployIcon;case fe.PluginGroup.CUSTOM_PLUGINS:return Re.CodeblockIcon;default:return null}}),i=t,{i18n:{t:a}}=st.useI18n(),s=e.ref(!1),c=e.computed(()=>r.showAllCard?r.plugins:!s.value&&r.plugins.length>9?r.plugins.slice(0,8):r.plugins),l=e.computed(()=>!r.showAllCard&&!s.value&&r.plugins.length>9);function u(){s.value=!0}const p=e.ref(!1),d=e.ref(null),f=g=>{p.value=!0,d.value={id:g.id,name:g.name,group:g.group,customPluginType:g.customPluginType}},m=g=>{var y,_,b;g&&(i("revalidate"),i("delete:success",{name:((y=d.value)==null?void 0:y.name)||"",group:(_=d.value)==null?void 0:_.group,customPluginType:(b=d.value)==null?void 0:b.customPluginType})),p.value=!1,d.value=null};return(g,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[n.name?(e.openBlock(),e.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${n.name}-title`},[e.createElementVNode("div",sF,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{color:`var(--kui-color-text-decorative-purple, ${e.unref(Vh)})`},null,8,["color"]))]),e.createElementVNode("span",lF,e.toDisplayString(n.name),1)],8,aF)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${n.name}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,_=>(e.openBlock(),e.createBlock(iF,{key:`plugin-card-${_.id}`,"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,plugin:_,onCustomPluginDelete:b=>f(_),onPluginClicked:b=>i("plugin-clicked",_)},e.createSlots({_:2},[_.gatewayVersion&&e.unref(hT)(e.unref(fe.GATEWAY_VERSION_TIMESTAMP_MAP)[_.gatewayVersion])?{name:"footer-extra",fn:e.withCtx(()=>[e.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${_.id}-new-badge`},e.toDisplayString(e.unref(a)("labels.new")),9,uF)]),key:"0"}:void 0]),1032,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:u},e.toDisplayString(e.unref(a)("plugins.select.show_all")),1)):e.createCommentVNode("",!0)],8,cF),p.value&&d.value?(e.openBlock(),e.createBlock(fc,{key:1,config:n.config,plugin:d.value,onClosed:m,onProceed:y[0]||(y[0]=_=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f9a9a47c"]]),dF={class:"plugin-select-grid"},fF={class:"empty-state-title"},pF={class:"empty-state-description"},mF={key:1},hF=Me(e.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","delete:success"],setup(n,{emit:t}){const r=Bl.concat(Tl),o=t,{i18n:{t:i}}=st.useI18n(),a=s=>{o("plugin-clicked",s)};return(s,c)=>{var u;const l=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",dF,[Object.keys(n.pluginList||[]).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",fF,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",pF,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),p=>{var d;return e.openBlock(),e.createElementBlock(e.Fragment,null,[(d=n.pluginList)!=null&&d[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(Aw,{"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,name:p,plugins:n.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=f=>o("delete:success",f)),onPluginClicked:c[1]||(c[1]=f=>a(f))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","plugins"])])):e.createCommentVNode("",!0)],64)}),256)),(u=n.pluginList)!=null&&u["Query Result"]?(e.openBlock(),e.createElementBlock("div",mF,[e.createVNode(Aw,{"can-delete-cloned-plugin":n.canDeleteClonedPlugin,"can-delete-custom-plugin":n.canDeleteCustomPlugin,"can-edit-cloned-plugin":n.canEditClonedPlugin,"can-edit-custom-plugin":n.canEditCustomPlugin,config:n.config,plugins:n.pluginList["Query Result"]||[],"show-all-card":"","onDelete:success":c[2]||(c[2]=p=>o("delete:success",p)),onPluginClicked:c[3]||(c[3]=p=>a(p))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugins"])])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-e3bf3819"]]),gF={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},yF=["title"],_F=["title"],bF={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},wF={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},kF=Me(e.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["revalidate","delete:success"],setup(n,{emit:t}){const r=t,o=n,{i18n:{t:i}}=st.useI18n(),a=S=>S.customPluginType==="cloned"&&S.clonedFromRef?i("plugins.select.cloned_from_badge",{link:S.clonedFromRef}):S.customPluginType==="streaming"?i("plugins.select.streamed_custom_badge"):S.customPluginType?i("plugins.select.installed_custom_badge"):"",s=e.computed(()=>k.value.some(S=>C(S.plugin))),c=e.computed(()=>{const S=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return s.value&&S.push({key:"more-actions",hideLabel:!0}),S}),l=e.computed(()=>{if(!o.pluginList)return[];const S=Object.values(o.pluginList).flat();return Array.from(new Map(S.map(O=>[O.id,O])).values()).map(O=>({id:O.id,name:O.name,description:O.description,badge:a(O),plugin:O}))}),u=e.ref(0),p=e.ref(10),d=e.ref(1),f=e.ref(l.value),m=e.ref(!1),g=e.ref(null),y=S=>S.customPluginType==="cloned"&&S.clonedFromRef?S.clonedFromRef:S.id,_=S=>(S==null?void 0:S.customPluginType)==="cloned",b=S=>!(S!=null&&S.customPluginType)||o.config.app==="kongManager"&&S.customPluginType==="schema"?!1:_(S)?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin,w=S=>!(S!=null&&S.customPluginType)||typeof o.config.getCustomEditRoute!="function"||o.config.app==="kongManager"&&S.customPluginType==="schema"?!1:_(S)?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin,C=S=>b(S)||w(S),x=S=>{m.value=!0,g.value={id:S.id,name:S.name,group:S.group,customPluginType:S.customPluginType}},E=S=>{var A,O,P;S&&(r("revalidate"),r("delete:success",{name:((A=g.value)==null?void 0:A.name)||"",group:(O=g.value)==null?void 0:O.group,customPluginType:(P=g.value)==null?void 0:P.customPluginType})),m.value=!1,g.value=null},k=e.computed(()=>{const S=f.value.length,A=Math.max(1,Math.ceil(S/p.value)),P=(Math.min(d.value,A)-1)*p.value;return f.value.slice(P,P+p.value)});e.watch(l,()=>{f.value=[...l.value],d.value=1,u.value++});const N=({page:S})=>{d.value=S},B=({pageSize:S})=>{p.value=S},U=S=>{const{sortColumnKey:A,sortColumnOrder:O}=S;A==="name"&&(f.value=[...f.value].sort((P,R)=>{const z=(P[A]||"").toLowerCase(),X=(R[A]||"").toLowerCase();return z<X?O==="asc"?-1:1:z>X?O==="asc"?1:-1:0}))};return(S,A)=>{const O=e.resolveComponent("KBadge"),P=e.resolveComponent("KButton"),R=e.resolveComponent("KDropdownItem"),z=e.resolveComponent("KDropdown"),X=e.resolveComponent("KTableView"),Z=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Z,{"data-testid":"plugin-catalog-list-view-card"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(X,{key:u.value,class:"plugin-catalog-table","client-sort":"",data:k.value,"data-testid":"plugin-catalog-list-view-table",headers:c.value,"pagination-attributes":{totalCount:l.value.length,currentPage:d.value,initialPageSize:p.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:N,onPageSizeChange:B,onSort:U},{name:e.withCtx(({row:K})=>[e.createElementVNode("span",gF,[e.createVNode(e.unref(Er.PluginIcon),{"data-testid":`plugin-catalog-list-view-${K.plugin.id}-icon`,name:y(K.plugin),size:20},null,8,["data-testid","name"]),e.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:K.name},e.toDisplayString(K.name),9,yF),K.badge?(e.openBlock(),e.createBlock(O,{key:0,appearance:"info",class:"plugin-name-badge","data-testid":"plugin-catalog-list-view-custom-badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(K.badge),1)]),_:2},1024)):e.createCommentVNode("",!0)])]),description:e.withCtx(({row:K})=>[e.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:K.description},e.toDisplayString(K.description),9,_F)]),action:e.withCtx(({row:K})=>[e.createElementVNode("div",bF,[e.createVNode(P,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:o.config.getCreateRoute(K.id)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":e.withCtx(({row:K})=>[C(K.plugin)?(e.openBlock(),e.createElementBlock("div",wF,[e.createVNode(z,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:e.withCtx(()=>{var W,$;return[w(K.plugin)?(e.openBlock(),e.createBlock(R,{key:0,"data-testid":"edit-plugin-schema",item:{label:e.unref(i)("actions.edit"),to:($=(W=n.config).getCustomEditRoute)==null?void 0:$.call(W,K.plugin.name,K.plugin.customPluginType)}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.edit")),1)]),_:1},8,["item"])):e.createCommentVNode("",!0),b(K.plugin)?(e.openBlock(),e.createBlock(R,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":w(K.plugin),onClick:()=>x(K.plugin)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.delete")),1)]),_:1},8,["has-divider","onClick"])):e.createCommentVNode("",!0)]}),default:e.withCtx(()=>[e.createVNode(e.unref(Re.MoreIcon),{color:`var(--kui-color-text-neutral, ${e.unref(lr)})`,size:`var(--kui-icon-size-30, ${e.unref(Wn)})`},null,8,["color","size"])]),_:2},1024)])):e.createCommentVNode("",!0)]),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),m.value&&g.value?(e.openBlock(),e.createBlock(fc,{key:0,config:n.config,plugin:g.value,onClosed:E,onProceed:A[0]||(A[0]=K=>E(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-986d34db"]]),CF={class:"plugin-catalog","data-testid":"plugin-catalog"},EF={class:"plugin-filter","data-testid":"plugin-filter"},NF={class:"plugin-filter-title"},SF={class:"featured-title"},xF={class:"plugin-featured-filter"},AF=["data-testid"],vF={class:"group-title"},IF={class:"plugin-type-filter"},BF=["data-testid"],TF={class:"plugins-container"},OF={class:"plugins-filter-input-container"},PF={class:"icon-container"},VF={key:0},$F={key:3,"aria-live":"polite",class:"plugins-results-container"},RF=Me(e.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{default:"none"},availableOnServer:{type:Boolean,default:!0},canDeleteCustomPlugin:{type:Function,default:async()=>!0},canReadCustomPlugin:{type:Function,default:async()=>!0},canEditCustomPlugin:{type:Function,default:async()=>!0},canDeleteClonedPlugin:{},canReadClonedPlugin:{type:Function,default:async()=>!0},canEditClonedPlugin:{}},emits:["loading","plugin-clicked","delete-custom:success"],setup(n,{emit:t}){var _e;const r=t,{i18n:{t:o}}=st.useI18n(),{pluginMetaData:i}=st.usePluginMetaData(),{getMessageFromError:a}=Ie.useErrors(),{sortAlpha:s,objectsAreEqual:c}=Ie.useHelpers(),l=n,{axiosInstance:u}=Ie.useAxios((_e=l.config)==null?void 0:_e.axiosRequestConfig),p=e.useTemplateRef("filter-input"),d=e.ref(""),f=e.ref(!1),m=e.ref(!1),g=e.ref(Object.fromEntries(Bl.concat(Tl).map(ye=>[ye,!1]))),y=e.ref(!0),_=e.ref(!1),b=e.ref(""),w=e.ref(""),C=e.ref([]),x=e.ref([]),E=e.ref([]),k=e.ref({}),N=e.ref([]),B=e.ref(!1),U=e.ref(null),S=e.ref(!1),A=e.computed(()=>B.value?Re.GridIcon:Re.ListIcon),O=e.inject(dr.KM_2485_CLONED_PLUGINS,!1),P=e.computed(()=>e.unref(O)),R=ye=>ye==="none"||ye==="disabled"?new Set:new Set(Array.isArray(ye)?ye:[ye]),z=e.computed(()=>R(l.customPluginSupport)),X=e.computed(()=>[...z.value].sort().join("|")),Z=e.computed(()=>z.value.has("streaming")),K=e.computed(()=>P.value&&z.value.has("cloned")),W=ye=>zo.isAxiosError(ye)&&ye.code==="ERR_CANCELED",$=ye=>a(ye).toLowerCase().includes("requires a license"),ee=e.computed(()=>{var ae;let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].availablePlugins}`;if(l.config.app==="konnect")ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"");else if(l.config.app==="kongManager"&&((ae=l.config.gatewayInfo)==null?void 0:ae.edition)==="community")return`${l.config.apiBaseUrl}${et.select[l.config.app].availablePluginsForOss}`;return ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}),F=e.computed(()=>{if(Z.value){let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].streamingCustomPlugins}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}return null}),J=e.computed(()=>{if(K.value){let ye=`${l.config.apiBaseUrl}${et.select[l.config.app].clonedPlugins}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"")}return null}),M=e.computed(()=>{if(l.config.entityType&&l.config.entityId){let ye=`${l.config.apiBaseUrl}${et.list[l.config.app].forEntity}`;return l.config.app==="konnect"&&(ye=ye.replace(/{controlPlaneId}/gi,l.config.controlPlaneId||"")),ye.replace(/\/{workspace}/gi,l.config.workspace?`/${l.config.workspace}`:"").replace(/{entityType}/gi,l.config.entityType||"").replace(/{entityId}/gi,l.config.entityId||"")}return""}),v=e.computed(()=>{var be;if(!k.value)return{};const ye=Object.entries(g.value).filter(([,xe])=>xe).map(([xe])=>xe);let ae={};ye.length===0&&(ae=k.value),ye.forEach(xe=>{k.value[xe]&&(ae[xe]=k.value[xe])});const te=d.value.toLowerCase();if(!te)return ae;const se=JSON.parse(JSON.stringify(ae));for(const xe in ae){const h=((be=ae[xe])==null?void 0:be.filter(T=>[T.name.toLowerCase(),T.id.toLowerCase()].some(Y=>mT(te,Y).length===te.length)))||[];h.length?se[xe]=h:delete se[xe]}const ue=Object.values(se).flat().filter(xe=>!!xe),Ee=Array.from(ue.reduce((xe,h)=>(xe.has(h.id)||xe.set(h.id,h),xe),new Map).values());return Ee.length?{"Query Result":Ee}:{}}),j=e.computed(()=>Object.keys(v.value).length>0),ie=e.computed(()=>Object.keys(k.value).length>0&&!j.value),re=()=>{Object.keys(g.value).forEach(ye=>{g.value[ye]=!1})},me=()=>{const ye=new Map(E.value.map(ue=>[ue.name,ue])),ae=new Set(x.value.map(ue=>ue.name)),te=new Set([...ae,...ye.keys()]),se=[...new Set([...Object.keys({...l.availableOnServer?{}:i}),...C.value,...te])].filter(ue=>{if(!l.config.entityType)return ue;const Ee=ye.has(ue)?ye.get(ue).ref:ue;return l.config.entityType==="services"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.SERVICE)||l.config.entityType==="routes"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.ROUTE)||l.config.entityType==="consumer_groups"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.CONSUMER_GROUP)||l.config.entityType==="consumers"&&i[Ee]&&!i[Ee].scope.includes(fe.PluginScope.CONSUMER)?!1:ue}).reduce((ue,Ee)=>{var oe;const be=i[Ee]&&i[Ee].name||Ee,xe=ye.get(Ee),h=ae.has(Ee),T={...i[Ee],id:Ee,name:be,available:C.value.includes(Ee)||!!xe||h,disabledMessage:"",group:((oe=i[Ee])==null?void 0:oe.group)||fe.PluginGroup.CUSTOM_PLUGINS};T.group===fe.PluginGroup.CUSTOM_PLUGINS&&(xe?(T.customPluginType="cloned",T.clonedFromRef=xe.ref):h?T.customPluginType="streaming":T.customPluginType="schema"),l.disabledPlugins&&(T.disabledMessage=l.disabledPlugins[Ee]);const G=T.group||o("plugins.select.misc_plugins");let Y=ue[G];return Y||(Y=[]),Y.push(T),Y.sort(s("name")),ue[G]=Y,ue},{});if(l.highlightedPluginIds&&l.highlightedPluginIds.length>0){const ue=new Set(Object.values(se).flat().map(be=>be==null?void 0:be.id)),Ee=l.highlightedPluginIds.flatMap(be=>{var h;const xe=i[be];return!xe||!ue.has(be)?[]:{...xe,id:be,name:xe.name||be,available:C.value.includes(be),disabledMessage:((h=l.disabledPlugins)==null?void 0:h[be])||"",group:xe.group||fe.PluginGroup.CUSTOM_PLUGINS}}).filter(Boolean);Ee.length>0&&(se[fe.PluginGroup.FEATURED]=Ee)}return se};e.watch(()=>l.disabledPlugins,(ye,ae)=>{!c(ye||{},ae||{})&&!y.value&&(k.value=me())}),e.watch(y,ye=>{r("loading",ye)});const he=e.ref(!1),le=e.ref(!1),ge=e.ref(!1),Oe=e.ref(!1),$e=e.ref(!1),Pe=e.ref(!1),qe=async()=>{try{const[ye,ae,te,se,ue,Ee]=await Promise.all([l.canEditCustomPlugin(),l.canDeleteCustomPlugin(),l.canReadCustomPlugin(),l.canEditClonedPlugin?l.canEditClonedPlugin():Promise.resolve(null),l.canDeleteClonedPlugin?l.canDeleteClonedPlugin():Promise.resolve(null),l.canReadClonedPlugin()]);he.value=ye,le.value=ae,ge.value=te,Oe.value=se??ye,$e.value=ue??ae,Pe.value=Ee}catch{he.value=!1,le.value=!1,ge.value=!1,Oe.value=!1,$e.value=!1,Pe.value=!1}},Ye=async ye=>{if(!M.value){N.value=[];return}try{const{data:{data:ae}}=await u.get(M.value,{signal:ye});ae!=null&&ae.length&&(N.value=ae.reduce((te,se)=>(se.name&&te.push(se.name),te),[]))}catch(ae){W(ae)||(N.value=[])}},tt=async ye=>{const ae=[];F.value&&ge.value&&ae.push(dc(u,F.value,ye).then(te=>{x.value=te}).catch(te=>{W(te)||w.value||(w.value=a(te)??o("plugins.select.tabs.custom.fetch_error"))})),J.value&&Pe.value&&ae.push(dc(u,J.value,ye).then(te=>{E.value=te}).catch(te=>{if(W(te))return;const se=$(te);(se||!w.value)&&(w.value=se?o("plugins.select.tabs.custom.license_required"):a(te)??o("plugins.select.tabs.custom.fetch_error"))})),ae.push(Ye(ye)),await Promise.allSettled(ae)},Ve=async()=>{var ae;(ae=U.value)==null||ae.abort();const ye=new AbortController;U.value=ye,y.value=!0,_.value=!1,b.value="",w.value="",C.value=[],x.value=[],E.value=[],N.value=[];try{const{data:te}=await u.get(ee.value,{signal:ye.signal});if(l.config.app==="konnect"){const{names:se}=te;C.value=se||[]}else if(l.config.app==="kongManager"){const{plugins:{available_on_server:se}}=te;C.value=se?Object.keys(se):[]}await tt(ye.signal),k.value=me()}catch(te){W(te)||(_.value=!0,b.value=a(te))}finally{U.value===ye&&!ye.signal.aborted&&(y.value=!1)}},ke=async({name:ye})=>{ye&&(r("delete-custom:success",ye),await Ve())};return e.onMounted(async()=>{var ye,ae;S.value=!0,(ae=(ye=p.value)==null?void 0:ye.input)==null||ae.focus(),await qe(),await Ve()}),e.watch(()=>{var ye;return[l.config.app==="konnect"?l.config.controlPlaneId:void 0,l.config.workspace,l.config.entityType,l.config.entityId,l.config.app==="kongManager"?(ye=l.config.gatewayInfo)==null?void 0:ye.edition:void 0,X.value,P.value]},async()=>{S.value&&(await qe(),await Ve())}),e.onBeforeUnmount(()=>{var ye;(ye=U.value)==null||ye.abort()}),(ye,ae)=>{const te=e.resolveComponent("KButton"),se=e.resolveComponent("KCheckbox"),ue=e.resolveComponent("KBadge"),Ee=e.resolveComponent("KCollapse"),be=e.resolveComponent("KInput"),xe=e.resolveComponent("KSkeletonBox"),h=e.resolveComponent("KSkeleton"),T=e.resolveComponent("KEmptyState"),G=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock("div",CF,[e.createElementVNode("div",EF,[e.createElementVNode("div",NF,[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.select.filter.title"))+" ",1),e.createVNode(te,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(g.value).some(Y=>Y),onClick:re},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),e.createVNode(Ee,{modelValue:f.value,"onUpdate:modelValue":ae[0]||(ae[0]=Y=>f.value=Y)},{title:e.withCtx(()=>[e.createElementVNode("div",SF,e.toDisplayString(e.unref(o)("plugins.select.filter.featured")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",xF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Bl),Y=>(e.openBlock(),e.createElementBlock("div",{key:Y,class:"plugin-filter-item","data-testid":`plugin-filter-item-${Y}`},[e.createVNode(se,{modelValue:g.value[Y],"onUpdate:modelValue":oe=>g.value[Y]=oe,label:Y},null,8,["modelValue","onUpdate:modelValue","label"]),e.createVNode(ue,{appearance:"neutral"},{default:e.withCtx(()=>{var oe,we;return[e.createTextVNode(e.toDisplayString(((we=(oe=k.value)==null?void 0:oe[Y])==null?void 0:we.length)||0),1)]}),_:2},1024)],8,AF))),128))])]),_:1},8,["modelValue"]),e.createVNode(Ee,{modelValue:m.value,"onUpdate:modelValue":ae[1]||(ae[1]=Y=>m.value=Y)},{title:e.withCtx(()=>[e.createElementVNode("div",vF,e.toDisplayString(e.unref(o)("plugins.select.filter.type")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",IF,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Tl),Y=>(e.openBlock(),e.createElementBlock("div",{key:Y,class:"plugin-filter-item","data-testid":`plugin-filter-item-${Y}`},[e.createVNode(se,{modelValue:g.value[Y],"onUpdate:modelValue":oe=>g.value[Y]=oe,"data-testid":`plugin-filter-checkbox-${Y}`,label:Y},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),e.createVNode(ue,{appearance:"neutral","data-testid":`plugin-filter-count-${Y}`},{default:e.withCtx(()=>{var oe,we;return[e.createTextVNode(e.toDisplayString(((we=(oe=k.value)==null?void 0:oe[Y])==null?void 0:we.length)||0),1)]}),_:2},1032,["data-testid"])],8,BF))),128))])]),_:1},8,["modelValue"])]),e.createElementVNode("div",TF,[e.createElementVNode("div",OF,[e.createVNode(be,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":ae[2]||(ae[2]=Y=>d.value=Y),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:e.unref(o)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),e.createElementVNode("div",PF,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(A.value),{class:"plugins-filter-icon",color:`var(--kui-icon-color-primary, ${e.unref(m1)})`,onClick:ae[3]||(ae[3]=Y=>B.value=!B.value)},null,8,["color"]))])]),y.value?(e.openBlock(),e.createElementBlock("section",VF,[e.createVNode(xe,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(h,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):_.value?(e.openBlock(),e.createBlock(T,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(b.value),1)]),_:1})):ie.value&&d.value?(e.openBlock(),e.createBlock(T,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(o)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",$F,[w.value?(e.openBlock(),e.createBlock(G,{key:0,appearance:"warning",class:"custom-plugins-warning",message:w.value},null,8,["message"])):e.createCommentVNode("",!0),B.value?(e.openBlock(),e.createBlock(kF,{key:1,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":le.value,"can-edit-cloned-plugin":Oe.value,"can-edit-custom-plugin":he.value,config:n.config,"plugin-list":v.value,"onDelete:success":ke},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"])):(e.openBlock(),e.createBlock(hF,{key:2,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":le.value,"can-edit-cloned-plugin":Oe.value,"can-edit-custom-plugin":he.value,config:n.config,"plugin-list":v.value,"onDelete:success":ke,onPluginClicked:ae[4]||(ae[4]=Y=>ye.$emit("plugin-clicked",Y))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-6f778468"]]),LF={key:1,class:"datakit-config-card-canvas"},DF={class:"config-card-details-label","data-testid":"datakit-configuration-label"},MF={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},jF={class:"canvas-wrapper"},FF=Me(e.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(n){const t=e.computed(()=>{var r;return sw.safeParse((r=n.pluginData)==null?void 0:r.config).success});return Xd(n.pluginData),(r,o)=>{const i=e.resolveComponent("KLabel");return t.value?(e.openBlock(),e.createElementBlock("div",LF,[e.createElementVNode("div",DF,[e.createVNode(i,null,{default:e.withCtx(()=>[...o[0]||(o[0]=[e.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),e.createElementVNode("div",MF,[e.createElementVNode("div",jF,[e.createVNode(Yf,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(e.openBlock(),e.createBlock(e.unref(Ie.ConfigCardItem),{key:0,item:n.item},null,8,["item"]))}}}),[["__scopeId","data-v-9a3ef1ac"]]),UF={class:"kong-ui-entity-plugin-config-card"},KF={class:"name-cell-wrapper"},qF={class:"info-name"},GF={key:0},HF={key:0},zF={key:0},WF={key:0},YF={key:0},cp="config",JF=Me(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:n=>!(!n||!["konnect","kongManager"].includes(n==null?void 0:n.app)||n.app==="konnect"&&!n.controlPlaneId||n.app==="kongManager"&&typeof n.workspace!="string"||!n.entityId||!n.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:null},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(n,{emit:t}){var x;const r=t,o=n,{i18n:{t:i}}=st.useI18n(),a=st.usePluginMetaData(),{setFieldType:s}=st.usePluginHelpers(),{getPropValue:c}=Ie.useHelpers(),l=e.computed(()=>{var k;let E=(k=et.item[o.config.app])==null?void 0:k[o.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,o.scopedEntityType).replace(/{entityId}/gi,o.scopedEntityId??"").concat(o.expandPartial?"?expand_partials=true":"");if(o.config.app==="konnect"){const N=o.expandPartial?"&":"?";E=E.concat(`${N}__ui_data=true`)}return E}),u=e.computed(()=>{var N,B;const E={},k=((N=b.value)==null?void 0:N.fields)||[];for(let U=0;U<k.length;U++){const S=b.value.fields[U],A=(B=Object.keys(S))==null?void 0:B[0];s(E,A,S[A])}return{...E,instance_name:{section:Ie.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:Ie.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:Ie.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:Ie.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:Ie.ConfigurationSchemaSection.Basic,order:6},protocols:{type:Ie.ConfigurationSchemaType.BadgeTag,section:Ie.ConfigurationSchemaSection.Basic,order:7}}}),p=e.computed(()=>{var k,N,B;if(!((k=b.value)!=null&&k.fields))return[];const E=(N=b.value.fields)==null?void 0:N.find(U=>{var A;return((A=Object.keys(U))==null?void 0:A[0])===cp});return((B=E==null?void 0:E[cp])==null?void 0:B.fields)||[]}),d=e.computed(()=>{var k,N;const E={};if(!p.value)return E;for(let B=0;B<((k=p.value)==null?void 0:k.length);B++){const U=p.value[B],S=(N=Object.keys(U))==null?void 0:N[0],A=U[S];A.required&&(E[S]={order:1}),s(E,S,A)}return E}),f=E=>{var N;const k=(N=a.pluginMetaData[o.config.pluginType])==null?void 0:N.scope;return k?Object.fromEntries(Object.entries(E).filter(([B,U])=>U?!0:!(B==="service"&&!k.includes(fe.PluginScope.SERVICE)||B==="route"&&!k.includes(fe.PluginScope.ROUTE)||B==="consumer"&&!k.includes(fe.PluginScope.CONSUMER)||B==="consumer_group"&&!k.includes(fe.PluginScope.CONSUMER_GROUP)))):E},m=E=>Wr(E,"__ui_data"),{getMessageFromError:g}=Ie.useErrors(),{axiosInstance:y}=Ie.useAxios((x=o.config)==null?void 0:x.axiosRequestConfig),_=e.computed(()=>{var k,N;let E=`${o.config.apiBaseUrl}${et.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"&&(E=E.replace(/{controlPlaneId}/gi,((k=o.config)==null?void 0:k.controlPlaneId)||"")),E.replace(/\/{workspace}/gi,(N=o.config)!=null&&N.workspace?`/${o.config.workspace}`:"").replace(/{plugin}/gi,o.config.pluginType)}),b=e.ref({});Ie.useSchemaProvider(b);const w=e.ref(!1),C=e.ref("");return e.onBeforeMount(async()=>{w.value=!0;try{const{data:E}=await y.get(_.value);b.value=E}catch(E){C.value=g(E),r("error:fetch-schema",E)}finally{w.value=!1}}),(E,k)=>{const N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState"),U=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",UF,[w.value?(e.openBlock(),e.createBlock(N,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):C.value?(e.openBlock(),e.createBlock(B,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(C.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(Ie.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:n.config,"config-card-doc":n.configCardDoc,"config-schema":u.value,"entity-type":e.unref(Ie.SupportedEntityType).Plugin,"fetch-url":l.value,"hide-title":n.hideTitle,"plugin-config-key":cp,"plugin-config-schema":d.value,"record-resolver":f,"onFetch:error":k[0]||(k[0]=S=>E.$emit("fetch:error",S)),"onFetch:success":k[1]||(k[1]=S=>E.$emit("fetch:success",S)),onLoading:k[2]||(k[2]=S=>E.$emit("loading",S))},e.createSlots({name:e.withCtx(S=>[e.createElementVNode("div",KF,[e.createVNode(e.unref(Er.PluginIcon),{class:"plugin-icon",name:e.unref(c)("rowValue",S),size:24},null,8,["name"]),e.createElementVNode("span",qF,e.toDisplayString(e.unref(a).getDisplayName(e.unref(c)("rowValue",S))),1)])]),consumer:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"consumer-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",GF,"–"))]),route:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"route-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",HF,"–"))]),service:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"service-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",zF,"–"))]),consumer_group:e.withCtx(S=>[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:e.unref(c)("rowValue",S).id,value:e.unref(c)("rowValue",S).id,type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",e.unref(c)("rowValue",S).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(c)("rowValue",S).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",WF,"–"))]),partials:e.withCtx(S=>{var A,O,P,R,z,X,Z,K,W;return[e.unref(c)("rowValue",S)?n.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(Ie.InternalLinkItem),{key:1,item:{key:(O=(A=e.unref(c)("rowValue",S))==null?void 0:A[0])==null?void 0:O.id,value:((R=(P=e.unref(c)("rowValue",S))==null?void 0:P[0])==null?void 0:R.id)+((X=(z=e.unref(c)("rowValue",S))==null?void 0:z[0])!=null&&X.name?"/"+((K=(Z=e.unref(c)("rowValue",S))==null?void 0:Z[0])==null?void 0:K.name):""),type:e.unref(Ie.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var $,ee;return E.$emit("navigation-click",(ee=($=e.unref(c)("rowValue",S))==null?void 0:$[0])==null?void 0:ee.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(U,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(c)("row",S).label}),"data-testid":"partial-copy-uuid",text:(W=e.unref(c)("rowValue",S))==null?void 0:W[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",YF,"–"))]}),_:2},[n.config.pluginType==="datakit"&&n.config.app==="konnect"?{name:"config-card-item-nodes",fn:e.withCtx(S=>[e.createVNode(FF,{item:S.row,"plugin-data":S.record},null,8,["item","plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-03dcf2b4"]]),{usePluginMetaData:XF,useProvideExperimentalFreeForms:ZF}=st;function QF(n,t=!1){const r=n.length;let o=0,i="",a=0,s=16,c=0,l=0,u=0,p=0,d=0;function f(C,x){let E=0,k=0;for(;E<C;){let N=n.charCodeAt(o);if(N>=48&&N<=57)k=k*16+N-48;else if(N>=65&&N<=70)k=k*16+N-65+10;else if(N>=97&&N<=102)k=k*16+N-97+10;else break;o++,E++}return E<C&&(k=-1),k}function m(C){o=C,i="",a=0,s=16,d=0}function g(){let C=o;if(n.charCodeAt(o)===48)o++;else for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;if(o<n.length&&n.charCodeAt(o)===46)if(o++,o<n.length&&Bi(n.charCodeAt(o)))for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;else return d=3,n.substring(C,o);let x=o;if(o<n.length&&(n.charCodeAt(o)===69||n.charCodeAt(o)===101))if(o++,(o<n.length&&n.charCodeAt(o)===43||n.charCodeAt(o)===45)&&o++,o<n.length&&Bi(n.charCodeAt(o))){for(o++;o<n.length&&Bi(n.charCodeAt(o));)o++;x=o}else d=3;return n.substring(C,x)}function y(){let C="",x=o;for(;;){if(o>=r){C+=n.substring(x,o),d=2;break}const E=n.charCodeAt(o);if(E===34){C+=n.substring(x,o),o++;break}if(E===92){if(C+=n.substring(x,o),o++,o>=r){d=2;break}switch(n.charCodeAt(o++)){case 34:C+='"';break;case 92:C+="\\";break;case 47:C+="/";break;case 98:C+="\b";break;case 102:C+="\f";break;case 110:C+=`
440
440
  `;break;case 114:C+="\r";break;case 116:C+=" ";break;case 117:const k=f(4);k>=0?C+=String.fromCharCode(k):d=4;break;default:d=5}x=o;continue}if(E>=0&&E<=31)if(Ja(E)){C+=n.substring(x,o),d=2;break}else d=6;o++}return C}function _(){if(i="",d=0,a=o,l=c,p=u,o>=r)return a=r,s=17;let C=n.charCodeAt(o);if(up(C)){do o++,i+=String.fromCharCode(C),C=n.charCodeAt(o);while(up(C));return s=15}if(Ja(C))return o++,i+=String.fromCharCode(C),C===13&&n.charCodeAt(o)===10&&(o++,i+=`
441
441
  `),c++,u=o,s=14;switch(C){case 123:return o++,s=1;case 125:return o++,s=2;case 91:return o++,s=3;case 93:return o++,s=4;case 58:return o++,s=6;case 44:return o++,s=5;case 34:return o++,i=y(),s=10;case 47:const x=o-1;if(n.charCodeAt(o+1)===47){for(o+=2;o<r&&!Ja(n.charCodeAt(o));)o++;return i=n.substring(x,o),s=12}if(n.charCodeAt(o+1)===42){o+=2;const E=r-1;let k=!1;for(;o<E;){const N=n.charCodeAt(o);if(N===42&&n.charCodeAt(o+1)===47){o+=2,k=!0;break}o++,Ja(N)&&(N===13&&n.charCodeAt(o)===10&&o++,c++,u=o)}return k||(o++,d=1),i=n.substring(x,o),s=13}return i+=String.fromCharCode(C),o++,s=16;case 45:if(i+=String.fromCharCode(C),o++,o===r||!Bi(n.charCodeAt(o)))return s=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return i+=g(),s=11;default:for(;o<r&&b(C);)o++,C=n.charCodeAt(o);if(a!==o){switch(i=n.substring(a,o),i){case"true":return s=8;case"false":return s=9;case"null":return s=7}return s=16}return i+=String.fromCharCode(C),o++,s=16}}function b(C){if(up(C)||Ja(C))return!1;switch(C){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function w(){let C;do C=_();while(C>=12&&C<=15);return C}return{setPosition:m,getPosition:()=>o,scan:t?w:_,getToken:()=>s,getTokenValue:()=>i,getTokenOffset:()=>a,getTokenLength:()=>o-a,getTokenStartLine:()=>l,getTokenStartCharacter:()=>a-p,getTokenError:()=>d}}function up(n){return n===32||n===9}function Ja(n){return n===10||n===13}function Bi(n){return n>=48&&n<=57}var vw;(function(n){n[n.lineFeed=10]="lineFeed",n[n.carriageReturn=13]="carriageReturn",n[n.space=32]="space",n[n._0=48]="_0",n[n._1=49]="_1",n[n._2=50]="_2",n[n._3=51]="_3",n[n._4=52]="_4",n[n._5=53]="_5",n[n._6=54]="_6",n[n._7=55]="_7",n[n._8=56]="_8",n[n._9=57]="_9",n[n.a=97]="a",n[n.b=98]="b",n[n.c=99]="c",n[n.d=100]="d",n[n.e=101]="e",n[n.f=102]="f",n[n.g=103]="g",n[n.h=104]="h",n[n.i=105]="i",n[n.j=106]="j",n[n.k=107]="k",n[n.l=108]="l",n[n.m=109]="m",n[n.n=110]="n",n[n.o=111]="o",n[n.p=112]="p",n[n.q=113]="q",n[n.r=114]="r",n[n.s=115]="s",n[n.t=116]="t",n[n.u=117]="u",n[n.v=118]="v",n[n.w=119]="w",n[n.x=120]="x",n[n.y=121]="y",n[n.z=122]="z",n[n.A=65]="A",n[n.B=66]="B",n[n.C=67]="C",n[n.D=68]="D",n[n.E=69]="E",n[n.F=70]="F",n[n.G=71]="G",n[n.H=72]="H",n[n.I=73]="I",n[n.J=74]="J",n[n.K=75]="K",n[n.L=76]="L",n[n.M=77]="M",n[n.N=78]="N",n[n.O=79]="O",n[n.P=80]="P",n[n.Q=81]="Q",n[n.R=82]="R",n[n.S=83]="S",n[n.T=84]="T",n[n.U=85]="U",n[n.V=86]="V",n[n.W=87]="W",n[n.X=88]="X",n[n.Y=89]="Y",n[n.Z=90]="Z",n[n.asterisk=42]="asterisk",n[n.backslash=92]="backslash",n[n.closeBrace=125]="closeBrace",n[n.closeBracket=93]="closeBracket",n[n.colon=58]="colon",n[n.comma=44]="comma",n[n.dot=46]="dot",n[n.doubleQuote=34]="doubleQuote",n[n.minus=45]="minus",n[n.openBrace=123]="openBrace",n[n.openBracket=91]="openBracket",n[n.plus=43]="plus",n[n.slash=47]="slash",n[n.formFeed=12]="formFeed",n[n.tab=9]="tab"})(vw||(vw={})),new Array(20).fill(0).map((n,t)=>" ".repeat(t));const Ti=200;new Array(Ti).fill(0).map((n,t)=>`
442
442
  `+" ".repeat(t)),new Array(Ti).fill(0).map((n,t)=>"\r"+" ".repeat(t)),new Array(Ti).fill(0).map((n,t)=>`\r