@kong-ui-public/entities-plugins 9.267.1 → 9.267.2

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.
@@ -449,7 +449,7 @@ nodes:
449
449
  status: 200
450
450
  `})).sort(([e],[n])=>e.localeCompare(n)).map(([e,n])=>{const r=e.replace(/^\.\//,"").replace(/\.yaml$/,"");return{id:r,i18nKey:Wv(r),code:n}});function $s(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null}const UU=[{name:"decK",extract(e){try{const n=io(e);return $s(n)&&Array.isArray(n.plugins)&&n.plugins.find(o=>$s(o)&&o.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(e){let n=e;const r=e.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);r&&(n=r[1]||r[2]);try{const o=io(n);if(!$s(o))return null;const i=$s(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(e){if(!e.trim().startsWith("curl"))return null;const n=e.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let r=n[1]||n[2];n[2]&&(r=r.replace(/\\(["\\])/g,"$1"));try{const o=JSON.parse(r);return $s(o)&&o.name==="datakit"&&o||null}catch{return null}}}];function Xm(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function KU(e){return!Xm(e)||!Xm(e.config)||!Array.isArray(e.config.nodes)?e:{...e,config:{...e.config,nodes:e.config.nodes.map(n=>Xm(n)?Object.fromEntries([...["name","type"].filter(r=>Object.hasOwn(n,r)).map(r=>[r,n[r]]),...Object.entries(n).filter(([r])=>r!=="name"&&r!=="type")]):n)}}}const qU={class:"dk-code-editor"},GU={class:"examples-content"},Zm="YAML Syntax",zU=xe(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:r}){const o=t.inject("app:konnectColorMode",t.computed(()=>"light")),{t:i}=Ft.createI18n("en-us",zt),{formData:a,setValue:s}=lt(),l=r,{getMessageFromError:c}=ue.useErrors(),d=t.shallowRef(null);function u(S){return Lc(KU(t.toRaw(S)),{schema:Do,seqNoIndent:!0})}function f(){return u(eo(a,["__ui_data"]))}const p=t.shallowRef(f()),m={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1,guides:{indentation:!0,highlightActiveIndentation:!0}};function h(S){const x=S.getModel();x&&(d.value=S,S.onDidChangeModelContent(()=>{try{const T=io(S.getValue()||"",{schema:Do,json:!0});if(typeof T!="object"||T===null)return;Ml.editor.setModelMarkers(x,Zm,[]),s(T),l("change",T)}catch(T){const{message:I,mark:A}=T,{line:v,column:V}=A||{line:0,column:0},O=I.split(`
451
451
  `)[0],$=[{startLineNumber:v+1,startColumn:V+1,endLineNumber:v+1,endColumn:V+2,message:O,severity:Ml.MarkerSeverity.Error,source:Zm}];Ml.editor.setModelMarkers(x,Zm,$),l("error",O)}}),S.onDidPaste(T=>{const I=S.getModel();if(!I)return;const A=I.getValueInRange(T.range);for(const v of UU){const V=v.extract(A);if(V){g.value=V,_.value=v.name,y.value=!0;return}}}),w())}const y=t.shallowRef(!1),g=t.shallowRef(null),_=t.shallowRef("");function k(){y.value=!1,g.value=null,_.value=""}function b(){g.value&&(p.value=u(g.value),k())}function N(S){return i(`plugins.free-form.datakit.examples.${S}`)}function C(S){const x=S.code;try{const T=io(p.value,{schema:Do,json:!0}),I=io(x,{schema:Do,json:!0});if(typeof T=="object"&&T!==null&&Kt(T.config,I))return;const A=eo({...a,config:{...I}},["__ui_data"]);p.value=u(A)}catch(T){l("error",c(T))}w()}function w(){const S=d.value,x=S?.getModel();!S||!x||(S.setPosition(x.getFullModelRange().getEndPosition()),S.focus())}return n({setExampleCode:C}),(S,x)=>(t.openBlock(),t.createElementBlock("div",qU,[t.createVNode(t.unref(_e.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ne.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",GU,[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(uC),T=>(t.openBlock(),t.createBlock(t.unref(_e.KButton),{key:T.id,appearance:"secondary",size:"small",onClick:I=>C(T)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(N(T.i18nKey)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),(t.openBlock(),t.createBlock(t.unref(Ka.MonacoEditor),{key:t.unref(o),ref:"editor",modelValue:p.value,"onUpdate:modelValue":x[0]||(x[0]=T=>p.value=T),appearance:"standalone",class:"editor",language:"yaml",options:m,theme:t.unref(o),onReady:h},null,8,["modelValue","theme"])),t.createVNode(t.unref(_e.KModal),{"action-button-text":t.unref(i)("plugins.free-form.datakit.detected_config_format_confirm"),title:t.unref(i)("plugins.free-form.datakit.detected_config_format_title"),visible:y.value,onCancel:k,onProceed:b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.detected_config_format",{format:_.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-da4d9e48"]]),{t:HU}=Ft.createI18n("en-us",zt),ud=Ot.createGlobalState(()=>{const e=Ot.useLocalStorage("datakit-editor-mode","flow"),n=Ot.useLocalStorage("datakit-editor-sidebar-expanded",!0),r=Ot.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:r}});function WU({enabled:e,confirm:n}){Ar.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(HU("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const r=o=>{t.toValue(e)&&o.preventDefault()};Ot.useEventListener("beforeunload",r)}const YU={class:"label-content"},JU={class:"count"},XU={class:"label-content"},ZU={class:"count"},fC=.5,Qm=.03,QU=30,eg=xe(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Ft.createI18n("en-us",zt),r=t.ref(!1),o=t.ref(!1),{responsePanelCollapsed:i}=ud(),{state:a,configNodeCounts:s,clearPendingLayout:l,setPendingFitView:c,commit:d,clear:u,portalSelection:f}=Vt(),p=t.useId(),m=`${p}-request`,h=`${p}-response`,y=xt.useVueFlow(m),g=xt.useVueFlow(h);function _(X,he){const{onPaneClick:ve,onNodesChange:je,onEdgesChange:qe,getSelectedNodes:Be,getSelectedEdges:Ve}=X,{removeSelectedElements:$e}=he;function Ke(de){if(!de){$e();return}de.some(Z=>Z.type==="select")&&Be.value.length+Ve.value.length>0&&$e()}je(Ke),qe(Ke),ve(()=>Ke())}_(y,g),_(g,y),t.watch(f,X=>{X&&(y.removeSelectedElements(),g.removeSelectedElements())});const k=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),N=t.useTemplateRef("requestCanvasContainer"),C=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),S=t.useTemplateRef("responseLabel"),x=t.useTemplateRef("responseCanvasContainer"),T=t.useTemplateRef("responseFlow"),I=Ot.useElementBounding(k),A=Ot.useElementBounding(b),v=Ot.useElementBounding(N),V=Ot.useElementBounding(w),O=Ot.useElementBounding(S),$=Ot.useElementBounding(x),Q=t.computed(()=>Math.max(QU,I.height.value*Qm)),pe=t.computed(()=>I.height.value-A.height.value-V.height.value-O.height.value),H=t.computed(()=>{const X=pe.value;return X?Math.max(Qm,Q.value/X):Qm}),j=t.ref(fC),D=t.computed(()=>`${j.value*100}%`),ee=t.computed(()=>`${(1-j.value)*100}%`),K=t.computed(()=>j.value<=H.value),J=t.computed(()=>1-j.value<=H.value);function ce(X,{persist:he=!0}={}){const ve=Math.min(1,Math.max(0,X));j.value=ve,he&&e.mode==="edit"&&(i.value=J.value)}function z(X,he=!0){ce(X?1:fC,{persist:he})}function oe(X=!0){ce(0,{persist:X})}if(e.mode==="edit"){const X=s.value.response===0,he=i.value;z(X||he,!1)}else t.watch(()=>s.value.response,X=>{z(X===0,!1)},{immediate:!0});const Pe=()=>{e.resizable&&(K.value?z(!1):oe())},Ee=()=>{e.resizable&&z(!J.value)},{isDragging:Ge}=Ot.useDraggable(w,{onMove(X){if(!e.resizable)return;const he=Math.max(0,X.y-v.top.value),ve=Math.min(1,Math.max(0,he/pe.value));ce(ve,{persist:!1})},onEnd(){e.resizable&&(v.height.value<Q.value?oe():$.height.value<Q.value?z(!0):ce(j.value))}});function se(){t.nextTick(()=>{C.value?.fitView(),T.value?.fitView()})}return t.watch([r,o,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([X,he,ve,je])=>{e.inactive||!X||!he||!ve&&!je||(ve&&l(),je&&c(!1),setTimeout(async()=>{ve&&(await C.value?.autoLayout(!1),await T.value?.autoLayout(!1),d("*"),ve==="clearHistory"&&u()),je&&setTimeout(()=>se(),0)},0))}),(X,he)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:k,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:Pe},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ne.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:K.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",YU,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",JU,[t.unref(s).request===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(s).request}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:N,class:t.normalizeClass(["canvas",{dragging:t.unref(Ge)}]),style:t.normalizeStyle({flexBasis:D.value})},[t.createVNode(Sp,{ref_key:"requestFlow",ref:C,"flow-id":m,mode:e.mode,phase:"request",onInitialized:he[0]||(he[0]=ve=>r.value=!0),onNodesChange:he[1]||(he[1]=ve=>r.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:S,class:t.normalizeClass(["label response",{dragging:t.unref(Ge),resizable:e.resizable}]),onClick:Ee},[e.resizable?(t.openBlock(),t.createBlock(t.unref(Ne.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:J.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",XU,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",ZU,[t.unref(s).response===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(s).response}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:x,class:t.normalizeClass(["canvas response",{dragging:t.unref(Ge)}]),style:t.normalizeStyle({flexBasis:ee.value})},[t.createVNode(Sp,{ref_key:"responseFlow",ref:T,"flow-id":h,mode:e.mode,phase:"response",onInitialized:he[2]||(he[2]=ve=>o.value=!0),onNodesChange:he[3]||(he[3]=ve=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-5a4fec80"]]),eK={class:"dk-confirm-modal-body"},tK={class:"connections"},nK=xe(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:r}){const{i18n:{t:o}}=Qe(),i=r,a=t.ref(!1),s=t.ref(e.message),l=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function u(){a.value=!1,i("cancel"),d?.(!1)}function f(){a.value=!1,i("confirm"),d?.(!0)}async function p(m,h,y){return s.value=m,l.value=h??[],c.value=y??[],a.value=!0,await new Promise(g=>{d=g})}return n({open:p}),(m,h)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{"action-button-text":t.unref(o)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.title??t.unref(o)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:u,onProceed:f},{default:t.withCtx(()=>[t.createElementVNode("div",eK,[t.createElementVNode("p",null,t.toDisplayString(s.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",tK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`,class:"connection"},[t.createVNode(t.unref(Ne.AddIcon),{color:`var(--kui-color-background-success, ${t.unref(FS)})`},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(g)+" → "+t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`,class:"connection"},[t.createVNode(t.unref(Ne.RemoveIcon),{color:`var(--kui-color-text-danger, ${t.unref(jy)})`},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(g)+" → "+t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-e6df03c2"]]),rK={class:"dk-editor-nav"},oK={class:"top"},iK={class:"bottom"},aK=xe(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:r}=Ft.createI18n("en-us",zt),o=n,i=[{label:r("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ne.ArrowLeftIcon,onClick:()=>o("back")}],{sidePanelExpanded:a}=ud(),s=t.computed(()=>a.value?r("plugins.free-form.datakit.flow_editor.collapse_panel"):r("plugins.free-form.datakit.flow_editor.expand_panel")),l=t.ref(!1);function c(){a.value=!a.value}return(d,u)=>(t.openBlock(),t.createElementBlock("nav",rK,[t.createElementVNode("div",oK,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:f,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(_e.KTooltip),{key:f,"kpop-attributes":{offset:"10px"},label:f,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(_e.KButton),{key:f,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",iK,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:u[0]||(u[0]=t.withModifiers(f=>l.value=!1,["self"])),onTransitionstart:u[1]||(u[1]=t.withModifiers(f=>l.value=!0,["self"]))},[t.createVNode(t.unref(_e.KTooltip),{label:l.value?void 0:s.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(_e.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(Ne.ChevronDoubleLeftIcon),{key:0,decorative:"",size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Ne.ChevronDoubleRightIcon),{key:1,decorative:"",size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-07aa3288"]]),sK={class:"dk-editor-main"},lK={class:"header"},cK={class:"actions"},dK={class:"settings"},uK={ref:"canvasContainer",class:"body"},fK=xe(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Ft.createI18n("en-us",zt),{modalOpen:r,undo:o,redo:i,canUndo:a,canRedo:s,load:l}=Vt();function c(p){return n(`plugins.free-form.datakit.examples.${p}`)}function d(p){const m=io(p.code,{schema:Do,json:!0});if(typeof m!="object"||m===null)return;const h=m,y={config:{...h,nodes:h.nodes??[]}};l(y,!0)}function u(){r.value=!1}Fy({enabled:r,undo:o,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(p,m)=>(t.openBlock(),t.createElementBlock("div",sK,[t.createElementVNode("header",lK,[t.createElementVNode("div",cK,[t.createVNode(t.unref(_e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(mc,{keys:t.unref(jl).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(_e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(mc,{keys:t.unref(jl).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",disabled:!t.unref(s),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),m[0]||(m[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",dK,[t.createVNode(en,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),m[1]||(m[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(_e.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(uC),h=>(t.openBlock(),t.createBlock(t.unref(_e.KDropdownItem),{key:h.id,onClick:y=>d(h)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(c(h.i18nKey)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),t.createVNode(t.unref(Ne.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(_e.KButton),{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",uK,[t.createVNode(eg,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-b3fbf3d7"]]),pK=["draggable"],mK={class:"icon"},gK={class:"content"},hK={class:"title"},yK={class:"description"},_K=xe(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f502bd0e:t.unref(a),v4b2eb58e:t.unref(s)}));const r=n,{summary:o,icon:i}=ec[e.type],{colors:{background:a,foreground:s}}=GO(ec[e.type].group);function l(c){r("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:l},[t.createElementVNode("div",mK,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",gK,[t.createElementVNode("div",hK,t.toDisplayString(e.type),1),t.createElementVNode("div",yK,t.toDisplayString(t.unref(o)),1)])],42,pK))}}),[["__scopeId","data-v-829422ff"]]),bK={class:"dk-node-panel"},kK={key:0,class:"title"},wK={class:"node-list"},CK={class:"group-title"},EK={class:"group-items"},NK={"aria-hidden":"true",class:"preview",inert:""},SK=xe(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Ft.createI18n("en-us",zt),{createNode:r}=Vt(),o=t.inject(Bn.KM_2446_DATAKIT_JWT_NODES,!1),i=t.computed(()=>o?Ob:Ob.filter(({id:d})=>d!=="authentication")),a=`dk-drag-preview-${t.useId()}`,s=t.shallowRef(),l=t.computed(()=>s.value?[{id:"preview",type:"flow",data:s.value,position:{x:0,y:0}}]:[]),c=async(d,u)=>{const f=d.currentTarget,{left:p,top:m,width:h,height:y}=f.getBoundingClientRect(),g=d.clientX-p,_=d.clientY-m;s.value=r({type:u}),await t.nextTick();const k=document.querySelector(`#${a}`)||f,b=k.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:N,offsetHeight:C}=k;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${N}px`,height:`${C}px`}),document.body.appendChild(b);const w=g/h,S=_/y,x={ratioX:w,ratioY:S,offsetX:N*w,offsetY:C*S},T={action:"create-node",data:{type:u,anchor:x}};d.dataTransfer?.setData(Ga,JSON.stringify(T)),d.dataTransfer?.setData(`${Ga}/${u}`,u),d.dataTransfer?.setDragImage(b,x.offsetX,x.offsetY),requestAnimationFrame(()=>{b.remove(),s.value=void 0})};return(d,u)=>{const f=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",bK,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",kK,[t.createVNode(f,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",wK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,p=>(t.openBlock(),t.createElementBlock("section",{key:p.id,class:"node-group"},[t.createElementVNode("h4",CK,t.toDisplayString(p.title),1),t.createElementVNode("div",EK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.nodes,m=>(t.openBlock(),t.createBlock(_K,{key:m.type,type:m.type,onDragstart:c},null,8,["type"]))),128))])]))),128))]),t.createElementVNode("div",NK,[t.createVNode(t.unref(xt.VueFlow),{nodes:l.value},{"node-flow":t.withCtx(p=>[t.createVNode(Mk,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-f2040974"]]);function AK(){const{addField:e,getNodeByName:n,removeField:r,replaceConfig:o,renameField:i,disconnectOutEdges:a,nodeMapByName:s}=Vt(),l=n("vault");if(!l)throw new Error("no vault node");const c=t.computed(()=>s.value.get("vault")?.config||{});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,y)=>{e(l.id,"output",h,!1);const g={...l.config,[h]:y};o(l.id,g)},removeVault:h=>{const y=to(l,"output",h);if(!y)return;const g=l.fields.output.length===1;r(l.id,y.id,!0,!1);const _=eo(l.config,h);o(l.id,_,!g),g&&a(l.id)},updateVault:(h,y,g=!0)=>{const _={...l.config,[h]:y};o(l.id,_,g)},renameVault:(h,y,g=!0)=>{const _=to(l,"output",h);if(!_)return;i(l.id,_.id,y,!1);const k=l.config?.[h]??"",b={...eo(l.config,h),[y]:k};o(l.id,b,g)}}}const xK=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const r=n,{i18n:{t:o}}=it.useI18n(),i=t.inject(Je.FORMS_CONFIG),a=t.ref(e.secretName||""),s=t.ref(""),l=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!l.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return s.value=h||"",h===void 0},u=()=>{s.value="",d()},f=m=>{d()&&r("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",s.value="",r("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",s.value=""}),(m,h)=>{const y=t.resolveComponent("KInput"),g=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:f},{"form-prefix":t.withCtx(()=>[t.createVNode(y,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[0]=_=>a.value=_),u],"data-testid":"vault-secret-picker-secret-name-input",error:!!s.value,"error-message":s.value,label:t.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(o)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.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"])):(t.openBlock(),t.createBlock(g,{key:1,"icon-variant":"error",message:t.unref(o)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),IK={class:"dk-vault-panel"},vK={class:"title"},TK={class:"vault-list"},BK={key:0,class:"vault-list-item"},OK={class:"vault-list-item-key"},PK={class:"vault-list-item-key-text"},VK=xe(t.defineComponent({__name:"VaultField",props:{autofocus:{type:Boolean},name:{},labelAttributes:{}},emits:["update","add","remove"],setup(e,{emit:n}){const r=e,o=n,{keys:i,addKey:a,removeKey:s,updateKey:l,getKeyName:c}=Ac(t.toRef(r,"name")),d=$t(t.toRef(r,"name")),u=t.ref(null),f=t.ref(null),p=t.computed(()=>{if(!u.value)return null;const C=c(u.value),w=d.value?d.value.value[u.value]:void 0;return C===void 0||w===void 0?null:{id:u.value,key:C,value:w}}),{i18n:{t:m}}=it.useI18n(),h=t.computed(()=>new Set(i.value.map(([,C])=>C))),y=()=>{if(!d.value)return;const w=a();f.value=w,u.value=w},g=()=>{u.value=null,f.value&&(s(f.value),f.value=null)},_=C=>{if(!p.value)throw new Error("no selected entry");const w=p.value.key,S=w!==C.secretName,x=p.value.value!==C.secretRef,T=S||x;p.value.value=C.secretRef,p.value.key=C.secretName,x&&(d.value.value[p.value.id]=C.secretRef),S&&l(p.value.id,C.secretName),f.value?o("add",C.secretName,C.secretRef):T&&o("update",C.secretName,C.secretRef,S?w:void 0),f.value=null,g()},k=C=>{u.value=C},b=C=>{const w=c(C);s(C),o("remove",w)},N=(C,w)=>{if(!C)return m("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(h.value.has(C)&&!(w&&C===p.value?.key))return m("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(C,w)=>{const S=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),T=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",IK,[t.createElementVNode("h3",vK,t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(S,{appearance:"tertiary",class:"add-button",size:"small",onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",TK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),([I,A])=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I},[A?(t.openBlock(),t.createElementBlock("div",BK,[t.createElementVNode("div",OK,[t.createVNode(t.unref(Ne.KeyIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:16},null,8,["color"]),t.createElementVNode("div",PK,t.toDisplayString(A),1)]),t.createVNode(T,null,{items:t.withCtx(()=>[t.createVNode(x,{onClick:v=>k(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(x,{danger:"",onClick:v=>b(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(S,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{color:`var(--kui-color-text, ${t.unref(gf)})`},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(xK,{"is-editing":!!u.value&&!f.value,"secret-name":p.value?.key,"secret-ref":p.value?.value,"validate-name":N,onCancel:g,onProceed:_},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-a7726f48"]]);function $K(){const{getSchema:e}=lt();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const r=Tr(n);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 l=Object.keys(s)[0];if(l==="redis"){const c=s[l];s[l]={...c},delete s[l].required}})}}),r})}const RK={key:1},LK=["innerHTML"],DK={class:"horizontal-container"},tg=xe(t.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const r=n,o=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=lt(),a=$t(t.toRef(()=>e.name)),s=Jt(a.path,o),l=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),r("update:modelValue",d)};return(d,u)=>{const f=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",RK,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(s).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s).label)+" ",1)]),_:2},[t.unref(s).labelAttributes?.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,LK)]),key:"0"}:void 0]),1040),t.createElementVNode("div",DK,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,m=>(t.openBlock(),t.createBlock(t.unref(_e.KRadio),{key:m.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[u[0]||(u[0]=h=>t.unref(a).value.value=h),c],"card-orientation":"horizontal",label:m.label,"selected-value":m.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[t.vShow,!t.unref(a).hide.value]])}}}),[["__scopeId","data-v-7c0483f3"]]),MK={class:"dk-cache-panel"},FK={class:"title"},jK={key:0,class:"cache-item"},UK={class:"cache-item-key"},KK={class:"cache-item-key-text"},qK={class:"dk-resource-cache-form"},GK={key:1},zK={key:2,class:"dk-cache-inline-redis"},HK={key:3,class:"dk-cache-redis-editor"},WK={key:0,class:"redis-editor-error"},YK=xe(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const r=t.inject("app:konnectColorMode",t.computed(()=>"light")),o=Lc({host:"127.0.0.1",port:6379},{indent:2}),i=n,{getDefault:a,formData:s}=lt(),l=$t("cache");if(l.error)throw new Error("No cache schema");const c=t.inject(oa),d=t.computed(()=>!!c),u=t.shallowRef(""),f=t.ref(""),p=t.ref(!1),{i18n:{t:m}}=it.useI18n(),h=t.computed(()=>y.value==="redis"?d.value?!!(s.cache?.partial_id||s.cache?.redis):!!s.cache?.redis&&!f.value:!0),y=t.computed(()=>l.value.value?.strategy),g=t.computed(()=>l.value.value?.redis?Lc(l.value.value.redis,{indent:2,noRefs:!0}):"");t.watch([p,y],([x,T])=>{x&&T==="redis"&&!d.value&&(u.value=g.value||o,f.value="")}),t.watch(u,x=>{if(!d.value&&y.value==="redis")try{const T=io(x,{json:!0});T&&typeof T=="object"&&(s.cache.redis=T,f.value="")}catch(T){f.value=T.message?.split(`
452
- `)[0]||"Invalid YAML"}});const _=()=>{p.value=!0},k=()=>{p.value=!1,i("cancel")},b=()=>{i("remove")},N=()=>{_(),l.value.value||(l.value.value=a("cache"),l.value.value.strategy="memory")},C=()=>{p.value=!1,i("update",s)},w=()=>{y.value==="memory"&&s.cache?.partial_id&&delete s.cache?.partial_id};async function S({codeElement:x,language:T,code:I}){x.innerHTML=await vS.codeToHtml(I,{lang:T,theme:"material-theme-darker",structure:"inline"})}return(x,T)=>{const I=t.resolveComponent("KButton"),A=t.resolveComponent("KDropdownItem"),v=t.resolveComponent("KDropdown"),V=t.resolveComponent("KLabel"),O=t.resolveComponent("KCodeBlock"),$=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",MK,[t.createElementVNode("h3",FK,t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",jK,[t.createElementVNode("div",UK,[t.createVNode(t.unref(Ne.DatabaseIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"]),t.createElementVNode("div",KK,t.toDisplayString(e.strategy),1)]),t.createVNode(v,null,{items:t.withCtx(()=>[t.createVNode(A,{onClick:_},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(A,{danger:"",onClick:b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(I,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{color:`var(--kui-color-text, ${t.unref(gf)})`},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(I,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:N},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode($,{"action-button-disabled":!h.value,"action-button-text":t.unref(m)("actions.save"),"max-width":"640px",title:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:p.value,onCancel:k,onProceed:C},{default:t.withCtx(()=>[t.createElementVNode("div",qK,[t.createVNode(tg,{items:[{label:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":w},null,8,["items"]),y.value==="memory"?(t.openBlock(),t.createBlock(Xe,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),y.value==="redis"&&d.value?(t.openBlock(),t.createElementBlock("div",GK,[t.createVNode(V,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(mf.RedisConfigurationSelector),{"model-value":t.unref(s).cache?.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":T[0]||(T[0]=Q=>t.unref(s).cache.partial_id=Q)},null,8,["model-value"])])):t.createCommentVNode("",!0),y.value==="redis"&&d.value&&!t.unref(s).cache?.partial_id&&g.value?(t.openBlock(),t.createElementBlock("div",zK,[t.createElementVNode("div",null,t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(O,{id:"dk-cache-redis-configuration",code:g.value,language:"yaml",theme:"dark",onCodeBlockRender:S},null,8,["code"])])):t.createCommentVNode("",!0),y.value==="redis"&&!d.value?(t.openBlock(),t.createElementBlock("div",HK,[t.createVNode(V,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config")),1)]),_:1}),(t.openBlock(),t.createBlock(t.unref(Ka.MonacoEditor),{key:t.unref(r),modelValue:u.value,"onUpdate:modelValue":T[1]||(T[1]=Q=>u.value=Q),appearance:"standalone",class:"redis-editor",language:"yaml",theme:t.unref(r)},null,8,["modelValue","theme"])),f.value?(t.openBlock(),t.createElementBlock("p",WK,t.toDisplayString(f.value),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)])]),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-9898d095"]]),JK={class:"dk-resources-panel"},XK=xe(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=$K(),r=t.ref(0),{addVault:o,removeVault:i,updateVault:a,renameVault:s,formData:l}=AK();function c(y,g,_){_&&_!==y&&s(_,y,!1),a(y,g)}const{state:d,commit:u}=Vt(),f=t.computed(()=>({cache:d.value.cacheConfig}));function p(y){d.value.cacheConfig=y.cache,u()}function m(){d.value.cacheConfig=void 0,u()}function h(){r.value++}return(y,g)=>(t.openBlock(),t.createElementBlock("div",JK,[t.createVNode(Wt,{data:t.unref(l),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(VK,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),g[0]||(g[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(Wt,{key:`${r.value}`,data:f.value,schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(YK,{strategy:f.value.cache?.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-9093c001"]]),ZK={class:"header"},QK={class:"title"},e8={class:"body"},t8={class:"panel"},n8=xe(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ft.createI18n("en-us",zt),{sidePanelExpanded:r}=ud(),{propertiesPanelOpen:o,selectedNode:i}=Vt(),a=t.ref("nodes");function s(){o.value=!1}t.watch(i,c=>{c||s()});const l=t.ref(!1);return t.onMounted(()=>{l.value=!0}),(c,d)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(r),inited:l.value}])},[t.createElementVNode("header",ZK,[t.createElementVNode("h2",QK,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",e8,[t.createElementVNode("div",t8,[t.createVNode(u,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=f=>a.value=f),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),a.value==="nodes"?(t.openBlock(),t.createBlock(SK,{key:0,class:"node-panel","hide-title":""})):t.createCommentVNode("",!0),a.value==="resources"?(t.openBlock(),t.createBlock(XK,{key:1})):t.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-9e854e60"]]),r8=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,r)=>(t.openBlock(),t.createBlock(St,{items:t.unref(xp)([...t.unref(Tb)]),name:e.name},null,8,["items","name"]))}});function o8(e,n){const r=[],o=(i,a)=>{typeof a=="string"&&r.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&o(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&o(["inputs",i],a);if("output"in e&&e.output!=null&&o(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&o(["outputs",i],a);return r}function i8(e){const n=e.path[2];return n==="output"||n==="outputs"}function pC(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function mC(e,n){const r=e.input!==void 0&&e.input!==null,o=pC(e.inputs);r&&o&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=pC(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function gC(e,n,r){if(!e.nodes)return;const o=e.nodes.map(c=>c.name),i=new Set;o.forEach((c,d)=>{i.has(c)&&r.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...o]),s=new Map,l=new Map;e.nodes.forEach((c,d)=>{for(const u of o8(c,d)){const f=u.value.split(".",1)[0];if(a.has(f)||r.addIssue({code:"custom",message:`Unknown node "${f}" in connection "${u.value}"`,path:u.path}),i8(u)){const p=`${u.nodeName}->${f}`;l.has(p)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${u.nodeName}" outputs to "${f}" and "${f}" inputs from "${u.nodeName}". Specify it on one side only.`,path:u.path}):s.set(p,s.get(p)??u.path)}else{const p=`${f}->${u.nodeName}`;s.has(p)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${f}" outputs to "${u.nodeName}" and "${u.nodeName}" inputs from "${f}". Specify it on one side only.`,path:u.path}):l.set(p,l.get(p)??u.path)}}})}const a8=R.z.enum(Ib),s8=R.z.enum(Ei),hC=e=>Ei.includes(e),ng=R.z.enum(vb),yC=ng.options;R.z.union([ng,a8]);const l8=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,fd=R.z.string().min(1).max(255).regex(l8,"Invalid node name (snake_case / kebab-case only)").refine(e=>!hC(e),"Name clashes with reserved implicit node").brand(),_C=R.z.union([s8,fd]),c8=R.z.string().min(1).brand(),d8=["then","else"];R.z.enum(d8);const ut=R.z.string().min(1).max(255).refine(e=>{if(_C.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,r,o]=n;return _C.safeParse(r).success&&c8.safeParse(o).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),u8=R.z.object({body:ut,headers:ut,http_proxy:ut,https_proxy:ut,proxy_auth_password:ut,proxy_auth_username:ut,query:ut,url:ut}).partial().strict(),f8=R.z.object({headers:ut,body:ut}).partial().strict(),p8=R.z.object({data:ut,key:ut,ttl:ut}).partial().strict(),m8=R.z.object({claims:ut,key:ut}).partial().strict(),g8=R.z.object({key:ut,token:ut}).partial().strict(),bC=R.z.enum(Tb),kC=R.z.enum(Xf),qn=R.z.object({type:R.z.string(),name:fd,input:ut,inputs:R.z.record(R.z.string().min(1).max(255),ut).nullish(),output:ut,outputs:R.z.record(R.z.string().min(1).max(255),ut).nullish()}).loose().superRefine((e,n)=>{mC(e,n)}),h8=R.z.object({type:R.z.string(),name:R.z.string()}).loose().superRefine((e,n)=>{const r=e.type,o=e.name;(typeof o!="string"||o.length===0||o.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),yC.includes(r)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${yC.join(", ")}`})}),y8=qn.safeExtend({type:R.z.literal("call"),method:bC.default("GET").nullish(),ssl_server_name:R.z.string().nullish(),ssl_verify:R.z.boolean().default(!0).nullish(),timeout:R.z.number().int().min(0).max(2147483646).nullish(),url:R.z.url().nullish(),inputs:u8.nullish(),outputs:R.z.object({body:ut,headers:ut,raw_body:ut,status:ut}).partial().nullish()}).strict(),_8=qn.safeExtend({type:R.z.literal("exit"),status:R.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:R.z.boolean().nullish(),inputs:f8.nullish(),output:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),b8=qn.safeExtend({type:R.z.literal("jq"),jq:R.z.string().min(1).max(10240),outputs:R.z.never().nullish()}).strict(),k8=qn.safeExtend({type:R.z.literal("xml_to_json"),recognize_type:R.z.boolean().nullish().default(!0),attributes_block_name:R.z.string().min(1).max(32).nullish(),attributes_name_prefix:R.z.string().min(1).max(32).nullish(),text_block_name:R.z.string().min(1).max(32).nullish().default("#text"),text_as_property:R.z.boolean().nullish().default(!1),xpath:R.z.string().min(1).max(256).nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),w8=qn.safeExtend({type:R.z.literal("json_to_xml"),attributes_block_name:R.z.string().min(1).max(32).nullish(),attributes_name_prefix:R.z.string().min(1).max(32).nullish(),root_element_name:R.z.string().min(1).max(64).nullish(),text_block_name:R.z.string().min(1).max(32).nullish().default("#text"),inputs:R.z.record(R.z.string().min(1).max(255),ut).nullish(),outputs:R.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),C8=qn.safeExtend({type:R.z.literal("jwt_decode"),inputs:R.z.never().nullish(),outputs:R.z.object({header:ut,payload:ut,signature:ut}).partial().nullish()}).strict(),E8=qn.safeExtend({type:R.z.literal("jwt_sign"),algorithm:kC,expires_in:R.z.number().int().min(1).default(300).nullish(),inputs:m8.nullish(),kid:R.z.string().nullish(),not_before:R.z.number().int().min(0).default(0).nullish(),outputs:R.z.object({claims:ut,header:ut,token:ut}).partial().nullish(),static_claims:R.z.record(R.z.string(),R.z.string()).default({}).nullish(),typ:R.z.string().default("JWT").nullish()}).strict(),N8=qn.safeExtend({type:R.z.literal("jwt_verify"),allowed_algorithms:R.z.array(kC).default([]).nullish(),audiences:R.z.array(R.z.string()).default([]).nullish(),inputs:g8.nullish(),issuers:R.z.array(R.z.string()).default([]).nullish(),leeway:R.z.number().int().min(0).default(0).nullish(),outputs:R.z.object({claims:ut,header:ut}).partial().nullish(),required_claims:R.z.array(R.z.string()).default([]).nullish(),validate_exp:R.z.boolean().default(!0).nullish(),validate_nbf:R.z.boolean().default(!0).nullish()}).strict(),S8=qn.safeExtend({type:R.z.literal("property"),content_type:R.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:R.z.string().min(1).max(255),non_nil:R.z.boolean().default(!1).nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),A8=qn.safeExtend({type:R.z.literal("static"),values:R.z.record(R.z.string(),R.z.unknown()),input:R.z.never().nullish(),inputs:R.z.never().nullish()}).strict(),x8=qn.safeExtend({type:R.z.literal("cache"),bypass_on_error:R.z.boolean().nullish(),inputs:p8.nullish(),outputs:R.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:R.z.number().int().gt(0).nullish()}).strict(),I8=qn.safeExtend({type:R.z.literal("branch"),then:R.z.array(fd).min(1).max(64).nullish(),else:R.z.array(fd).min(1).max(64).nullish()}).strict(),v8=h8.pipe(R.z.discriminatedUnion("type",[y8,_8,b8,k8,w8,C8,E8,N8,S8,A8,x8,I8])),T8=R.z.record(R.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),R.z.string().min(1).max(4095)),B8=R.z.object({dictionary_name:R.z.string().nullish().default("kong_db_cache")}),O8=R.z.object({host:R.z.string().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).default(6379)}),P8=R.z.object({ip:R.z.string().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).default(6379)}),V8=R.z.object({host:R.z.string().nullish().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:R.z.string().nullish(),password:R.z.string().nullish(),sentinel_username:R.z.string().nullish(),sentinel_password:R.z.string().nullish(),database:R.z.number().int().nullish().default(0),keepalive_pool_size:R.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:R.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:R.z.string().nullish(),sentinel_role:R.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:R.z.array(O8).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:R.z.array(P8).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:R.z.boolean().default(!1).nullish(),ssl_verify:R.z.boolean().default(!0).nullish(),server_name:R.z.string().nullish(),cluster_max_redirections:R.z.number().int().default(5).nullish(),connection_is_proxied:R.z.boolean().default(!1).nullish(),cloud_authentication:R.z.object({auth_provider:R.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:R.z.string().nullish(),aws_assume_role_arn:R.z.string().nullish(),aws_cache_name:R.z.string().nullish(),aws_is_serverless:R.z.boolean().default(!0).nullish(),aws_region:R.z.string().nullish(),aws_role_session_name:R.z.string().nullish(),aws_secret_access_key:R.z.string().nullish(),azure_client_id:R.z.string().nullish(),azure_client_secret:R.z.string().nullish(),azure_tenant_id:R.z.string().nullish(),gcp_service_account_json:R.z.string().nullish()}).nullish(),timeout:R.z.number().int().nullish(),sentinel_addresses:R.z.array(R.z.string()).min(1).nullish(),cluster_addresses:R.z.array(R.z.string()).min(1).nullish()}).superRefine((e,n)=>{const r=e.host!==void 0&&e.host!==null,o=e.port!==void 0&&e.port!==null;(r&&!o||!r&&o)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:r?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,s=!!e.sentinel_nodes?.length,l=[i,a,s].filter(Boolean).length;l>0&&l<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!r&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),$8=R.z.object({strategy:R.z.enum(["memory","redis"]).nullish(),memory:B8,redis:V8}),R8=R.z.object({vault:T8.nullish(),cache:$8.nullish()});R.z.array(R.z.object({id:R.z.string()})),R.z.object({nodes:R.z.array(v8).min(1,"At least one node is required").max(64),debug:R.z.boolean().default(!1).nullish(),resources:R8.nullish(),ca_certificates:R.z.array(R.z.string()).nullish()}).strict().superRefine((e,n)=>{gC(e,Ei,n)});const wC=ng.options,rg=R.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!hC(e),"Node name conflicts with reserved implicit node"),kt=R.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const r=e.slice(0,n),o=e.slice(n+1);return r.length>0&&o.length>0},"Invalid connection"),CC=R.z.object({body:kt.nullish(),headers:kt.nullish(),query:kt.nullish()}).partial().strict(),EC=R.z.object({headers:kt.nullish(),body:kt.nullish()}).partial().strict(),NC=R.z.object({data:kt.nullish(),key:kt.nullish(),ttl:kt.nullish()}).partial().strict(),SC=R.z.object({claims:kt.nullish(),key:kt.nullish()}).partial().strict(),AC=R.z.object({key:kt.nullish(),token:kt.nullish()}).partial().strict(),L8={call:CC,exit:EC,cache:NC,jwt_sign:SC,jwt_verify:AC};function D8(e){const n=L8[e];return n?Object.keys(n.shape):null}const Gn=R.z.object({type:R.z.string(),name:rg,input:kt.nullish(),inputs:R.z.record(R.z.string(),kt.nullish()).nullish(),output:kt.nullish(),outputs:R.z.record(R.z.string(),kt.nullish()).nullish()}).loose().superRefine((e,n)=>{mC(e,n)}),M8=R.z.object({type:R.z.string(),name:R.z.string()}).loose().superRefine((e,n)=>{const r=e.type,o=e.name;(typeof o!="string"||o.length===0||o.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),wC.includes(r)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${wC.join(", ")}`})}),F8=Gn.safeExtend({type:R.z.literal("call"),method:bC.nullish(),ssl_server_name:R.z.string().nullish(),ssl_verify:R.z.boolean().nullish(),timeout:R.z.union([R.z.number(),R.z.string()]).nullish(),url:R.z.string().nullish(),inputs:CC.nullish(),outputs:R.z.object({body:kt.nullish(),headers:kt.nullish(),status:kt.nullish()}).partial().nullish()}).strict(),j8=Gn.safeExtend({type:R.z.literal("exit"),status:R.z.union([R.z.number(),R.z.string()]).nullish(),warn_headers_sent:R.z.boolean().nullish(),inputs:EC.nullish(),output:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),U8=Gn.safeExtend({type:R.z.literal("jq"),jq:R.z.string().nullish(),outputs:R.z.never().nullish()}).strict(),K8=Gn.safeExtend({type:R.z.literal("xml_to_json"),recognize_type:R.z.boolean().nullish(),attributes_block_name:R.z.string().nullish(),attributes_name_prefix:R.z.string().nullish(),text_block_name:R.z.string().nullish(),text_as_property:R.z.boolean().nullish(),xpath:R.z.string().nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),q8=Gn.safeExtend({type:R.z.literal("json_to_xml"),attributes_block_name:R.z.string().nullish(),attributes_name_prefix:R.z.string().nullish(),root_element_name:R.z.string().nullish(),text_block_name:R.z.string().nullish(),inputs:R.z.record(R.z.string(),kt.nullish()).nullish(),outputs:R.z.never().nullish()}).strict(),G8=Gn.safeExtend({type:R.z.literal("property"),content_type:R.z.string().nullish(),non_nil:R.z.boolean().nullish(),property:R.z.string().nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),z8=Gn.safeExtend({type:R.z.literal("static"),values:R.z.record(R.z.string(),R.z.unknown()).nullish(),input:R.z.never().nullish(),inputs:R.z.never().nullish()}).strict(),H8=Gn.safeExtend({type:R.z.literal("cache"),bypass_on_error:R.z.boolean().nullish(),inputs:NC.nullish(),outputs:R.z.object({data:kt.nullish(),hit:kt.nullish(),miss:kt.nullish(),stored:kt.nullish()}).partial().nullish(),ttl:R.z.union([R.z.number(),R.z.string()]).nullish()}).strict(),W8=Gn.safeExtend({type:R.z.literal("jwt_decode"),inputs:R.z.never().nullish(),outputs:R.z.object({header:kt.nullish(),payload:kt.nullish(),signature:kt.nullish()}).partial().nullish()}).strict(),Y8=Gn.safeExtend({type:R.z.literal("jwt_sign"),algorithm:R.z.enum(Xf).nullish(),expires_in:R.z.union([R.z.number(),R.z.string()]).nullish(),inputs:SC.nullish(),kid:R.z.string().nullish(),not_before:R.z.union([R.z.number(),R.z.string()]).nullish(),outputs:R.z.object({claims:kt.nullish(),header:kt.nullish(),token:kt.nullish()}).partial().nullish(),static_claims:R.z.record(R.z.string(),R.z.string()).nullish(),typ:R.z.string().nullish()}).strict(),J8=Gn.safeExtend({type:R.z.literal("jwt_verify"),allowed_algorithms:R.z.array(R.z.enum(Xf)).nullish(),audiences:R.z.array(R.z.string()).nullish(),inputs:AC.nullish(),issuers:R.z.array(R.z.string()).nullish(),leeway:R.z.union([R.z.number(),R.z.string()]).nullish(),outputs:R.z.object({claims:kt.nullish(),header:kt.nullish()}).partial().nullish(),required_claims:R.z.array(R.z.string()).nullish(),validate_exp:R.z.boolean().nullish(),validate_nbf:R.z.boolean().nullish()}).strict(),X8=Gn.safeExtend({type:R.z.literal("branch"),then:R.z.array(rg).nullish(),else:R.z.array(rg).nullish()}).strict(),Z8=M8.pipe(R.z.discriminatedUnion("type",[F8,j8,U8,K8,q8,W8,Y8,J8,G8,z8,H8,X8])),Q8=R.z.record(R.z.string(),R.z.string()),eq=R.z.object({dictionary_name:R.z.string().nullish()}),tq=R.z.object(),nq=R.z.object({strategy:R.z.enum(["memory","redis"]).nullish(),memory:eq.nullish(),redis:tq.nullish()}),rq=R.z.object({vault:Q8.nullish(),cache:nq.nullish()}),xC=R.z.object({nodes:R.z.array(Z8).nullish(),debug:R.z.boolean().nullish(),resources:rq.nullish(),ca_certificates:R.z.array(R.z.string()).nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||gC(e,Ei,n)}).nullish(),IC=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=lt(),{i18n:r}=Qe(),o=t.computed(()=>{const i=n("inputs");if(!i)return[];const a=i.fields.map(l=>Object.keys(l)[0]);if(hn(e.nodeType))return a;const s=D8(e.nodeType);return s===null?a:s.length===0?[]:gO(a,s)});return(i,a)=>(t.openBlock(),t.createBlock(Rt,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,s=>(t.openBlock(),t.createBlock(St,{key:s,clearable:"","enable-filtering":"",items:e.items,name:s,placeholder:t.unref(r).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:l=>i.$emit("change:inputs",s,l?l.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(l=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},l))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),oq=["data-testid"],iq={class:"dk-inputs-map-field-entry-body"},aq={class:"dk-inputs-map-field-entry-content"},sq=xe(t.defineComponent({__name:"InputsMapField",props:{name:{},items:{},fieldNameValidator:{},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const r=e,o=n,{keys:i,addKey:a,removeKey:s,updateKey:l,getKeyName:c,field:d}=Ac(t.toRef(r,"name")),{value:u}=$t(t.toRef(r,"name")),{i18n:{t:f}}=Qe(),p=t.useTemplateRef("root"),m=t.ref(null),h=t.ref({}),y=t.ref({});let g;const _=t.computed(()=>r.keyOrder?.length?[...i.value].sort((A,v)=>{const V=r.keyOrder.indexOf(A[1]),O=r.keyOrder.indexOf(v[1]);return(V===-1?1/0:V)-(O===-1?1/0:O)}):i.value);async function k(A,v="key"){p.value&&(await t.nextTick(),p.value.querySelector(`[data-${v}-input="${A}"]`)?.focus())}function b(){const A=a();if(!A)return;y.value[A]="";const v=_.value.findIndex(([,V])=>!V);k(v===-1?_.value.length-1:v),m.value=A}function N(A,v){s(A),delete y.value[A],delete h.value[A],A===m.value&&(m.value=null),v.trim()!==""&&o("remove:field",v)}function C(A){g=y.value[A]??c(A)??""}function w(A,v){const V=v.trim();y.value[A]=V,x(A,V)}function S(A){const v=y.value[A]??c(A)??"";if(x(A,v)){y.value[A]=g,l(A,g),delete h.value[A];return}if(A===m.value){if(v.trim()==="")return;l(A,v),o("add:field",v,u?.value?.[A]??null),m.value=null}else l(A,v),o("rename:field",g,v);delete h.value[A],g=v}function x(A,v){delete h.value[A];const V=r.fieldNameValidator("input",g,v);if(V)return h.value[A]=V,V}function T(A){x(A,y.value[A]??c(A)??"")}function I(A,v){if(u?.value&&(u.value[A]=v),A===m.value)return;const V=c(A);V&&o("change:inputs",V,v)}return t.watch(i,A=>{const v=new Set(A.map(([V])=>V));Object.keys(y.value).forEach(V=>{v.has(V)?y.value[V]=y.value[V]??c(V)??"":(delete y.value[V],delete h.value[V])}),A.forEach(([V,O])=>{y.value[V]=y.value[V]??O}),m.value&&!v.has(m.value)&&(m.value=null)},{immediate:!0}),t.watch(()=>r.keyOrder,()=>{if(!m.value)return;const A=_.value.findIndex(([v])=>v===m.value);A!==-1&&k(A)}),(A,v)=>{const V=t.resolveComponent("KAlert"),O=t.resolveComponent("KLabel"),$=t.resolveComponent("KInput"),Q=t.resolveComponent("KSelect"),pe=t.resolveComponent("KButton");return t.unref(d).error?(t.openBlock(),t.createBlock(V,{key:0,appearance:"danger",message:t.unref(d).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:p,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,([H,j],D)=>(t.openBlock(),t.createElementBlock("div",{key:H,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(d).path.value}.${D}`},[t.createVNode(O,{for:`ff-kv-entry-key-${t.unref(d).path.value}.${D}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",iq,[t.createElementVNode("div",aq,[t.createVNode($,{id:`ff-kv-entry-key-${t.unref(d).path.value}.${D}`,class:"ff-kv-field-entry-key","data-key-input":D,"data-testid":`ff-key-${t.unref(d).path.value}.${D}`,error:!!h.value[H],"error-message":h.value[H],"model-value":y.value[H]??j,placeholder:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:ee=>T(H),onChange:ee=>S(H),onFocus:ee=>C(H),"onUpdate:modelValue":ee=>w(H,ee)},null,8,["id","data-key-input","data-testid","error","error-message","model-value","placeholder","onBlur","onChange","onFocus","onUpdate:modelValue"]),t.createVNode(Q,{class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(d).path.value}.${D}`,"enable-filtering":"",items:e.items,label:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),"model-value":t.unref(u)?.[H],placeholder:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:ee=>I(H,ee?.value??null)},t.createSlots({_:2},[A.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:ee})=>[t.renderSlot(A.$slots,"item-label",t.mergeProps({ref_for:!0},ee),void 0,!0)]),key:"0"}:void 0]),1032,["data-testid","items","label","model-value","placeholder","onChange"])]),t.createVNode(pe,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(d).path.value}.${D}`,icon:"",onClick:ee=>N(H,j)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,oq))),128)),t.createVNode(pe,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(d).path.value}`,disabled:!!m.value,onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-43dcb370"]]),lq={class:"dk-source-item"},pd=xe(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,r)=>(t.openBlock(),t.createElementBlock("span",lq,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Zf)(e.item.type).icon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-d9aa16eb"]]),cq={key:1,class:"dk-inputs-field-or"},Pn=xe(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const r=n,{getSchema:o}=lt(),{i18n:{t:i}}=Qe(),a=t.computed(()=>o("inputs")),s=t.computed(()=>a.value?a.value.type==="record"?IC:sq:null);function l(p){r("change:input",p?p.value:null)}function c(p,m){r("add:field",p,m)}function d(p,m){r("change:inputs",p,m)}function u(p){r("remove:field",p)}function f(p,m){r("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(_e.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(o)("input")?(t.openBlock(),t.createBlock(St,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:l},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(pd,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createElementBlock("div",cq,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createBlock(t.unref(_e.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createBlock(t.unref(s),t.mergeProps({key:3,items:e.items,"key-order":e.fieldNames,name:"inputs"},s.value===IC?{nodeType:e.nodeType}:{fieldNameValidator:e.fieldNameValidator},{"onAdd:field":c,"onChange:inputs":d,"onRemove:field":u,"onRename:field":f}),{"item-label":t.withCtx(h=>[t.createVNode(pd,{item:h},null,8,["item"])]),_:1},16,["items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-4f1ce4e7"]]),dq={},uq={class:"dk-node-form-divider"};function fq(e,n){return t.openBlock(),t.createElementBlock("hr",uq)}const er=xe(dq,[["render",fq],["__scopeId","data-v-35ed58be"]]),pq={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"},mq={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 gq(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function bn(...e){return function(r){for(const o of e){const i=o(r);if(i)return i}}}function Jo(e){const{i18n:{t:n}}=Qe(),r=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return r()}}function vC(e,n){const{i18n:{t:r}}=Qe();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n: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 Lr(e=0,n=1/0,r){const{i18n:{t:o}}=Qe();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:r.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function TC(e){const{i18n:{t:n}}=Qe();return function(o){if(!gq(o))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function ia(e,n){const{i18n:{t:r}}=Qe();return function(i){if(i==null)return;const a=TC(n)(i);if(a)return a;const s=Number(i);switch(e){case"float":{const l=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(s)?void 0:l()}case"integer":{const l=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(s)?void 0:l()}default:return}}}function aa(e=-1/0,n=1/0,r){const{i18n:{t:o}}=Qe();return function(a){if(a==null)return;const s=TC(r)(a);if(s)return s;const l=Number(a);if(l<e||l>n)return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:r.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function hq(e,n){const{state:r}=Vt(),{i18n:{t:o}}=Qe();return function(a){if(r.value.nodes.some(s=>s.name===a&&s.id!==e))return n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function yq(e,n,r){const{i18n:{t:o}}=Qe();return function(a){if(!n)return;if(r?n.fields[e].some(l=>l.name===a&&l.id!==r):n.fields[e].some(l=>l.name===a)){const l=o(e==="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:l})}}}function _q(){const{i18n:{t:e}}=Qe();return function(r){if(tp(r))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:r})}}function BC(e){const{i18n:{t:n}}=Qe(),r={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return bn(Jo(r),vC("identifier",r),_q(),hq(e,r))}function bq(e){const{i18n:{t:n}}=Qe(),{getNodeById:r}=Vt();return function(i,a,s){const l={fieldName:n(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 bn(Jo(l),yq(i,r(e),s))(a)}}function kq(e){const n=t.ref({}),r=t.computed(()=>Object.values(n.value).every(s=>!s)),o={};Object.keys(e).forEach(s=>{const l=e[s],c=f=>{const p=typeof f=="function"?f():f,m=l(p);return n.value[s]=m,m},d=()=>{n.value[s]=void 0},u=f=>(d(),c(f));o[s]={handleChange:u,handleBlur:u,validate:u,isValid:t.computed(()=>n.value[s]===void 0),error:t.computed(()=>n.value[s])}});function i(){n.value={}}function a(s){for(const l of Object.keys(e)){const c=s[l],d=typeof c=="function"?c():c;o[l]?.validate(d)}return n.value}return{isValid:r,errorMap:n,fields:o,clearErrors:i,validate:a}}function Dr(e){const{validationConfig:n,getValidationData:r,toggleNodeValid:o}=e,{skipValidation:i}=Vt(),a=t.computed(()=>typeof n=="function"?n():n),s=t.computed(()=>kq(a.value)),l=t.computed(()=>s.value.fields),c=t.computed(()=>s.value.isValid.value);function d(){const f=r(),p=s.value.validate(f),m={};for(const h in a.value)m[h]=p[h];return m}function u(f,p){const m=()=>{const y=r(),g=l.value[f];g&&g.handleBlur(y[f])},h=()=>{p?.();const y=r(),g=l.value[f];g&&g.handleChange(y[f])};return t.computed(()=>{const y=l.value[f];return{validate:m,update:h,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const f=d(),p=Object.values(f).filter(Boolean).length>0;o(!p)}catch{}}),t.watch(()=>c.value,o,{immediate:!0}),{fields:l.value,isValid:c,validateAll:d,createFieldHandler:u}}function kn(e,n){const{state:r,renameNode:o,getNodeById:i,addField:a,renameField:s,removeField:l,replaceConfig:c,disconnectEdge:d,connectEdge:u,invalidConfigNodeIds:f,commit:p,revert:m}=Vt(),{i18n:{t:h}}=Qe(),y=$k(),g=t.computed(()=>{const H=i(e);if(!H)throw new Error("Node not existed");return H}),_=t.computed(()=>{const j=r.value.edges.filter(D=>D.target===e).reduce((D,ee)=>{const K=i(ee.source),J=no(K,"output",ee.sourceField)?.id,ce=no(g.value,"input",ee.targetField)?.name,z=K.id+(J?`.${J}`:"");return ce?D.inputs={...D.inputs,[ce]:z}:D.input=z,D},{});return g.value.fields.input.forEach(D=>{j.inputs||(j.inputs={}),j.inputs[D.name]||(j.inputs[D.name]=null)}),{...g.value.config,...j,name:g.value.name}}),k=H=>{o(e,H??"",!0,`${e}:rename`)},b=(H,j=!0)=>{if(!n)throw new Error("getFormValue is not defined");const D=eo(n(),["name","input","inputs"]),ee=H?`update:${e}:${H}`:void 0;c(e,D,j,ee)},N=(H,j)=>{const D=to(g.value,H,j);if(!D)throw new Error(`Field with name "${j}" not found in node "${g.value.name}"`);return D},C=(H,j,D)=>{const ee=!!D;a(e,H,j,!ee),ee&&I(j,D)},w=(H,j,D)=>{const ee=N(H,j).id;s(e,ee,D)},S=(H,j)=>{const D=N(H,j).id;l(e,D)},x=t.computed(()=>r.value.edges.filter(H=>H.target===e&&!H.targetField)[0]),T=t.computed(()=>r.value.edges.filter(H=>H.target===e&&H.targetField)),I=async(H,j)=>{const D=j==null,ee=N("input",H).id;if(D){const se=T.value.find(X=>X.targetField===ee);se&&d(se.id);return}const{nodeId:K,fieldId:J}=Pb(j),ce=N("input",H).id,z=[];x.value&&(z.push(ls(x.value,i)),d(x.value.id,!1));const oe=T.value.find(se=>se.targetField===ee);oe&&(z.push(ls(oe,i)),d(oe.id,!1)),u({source:K,sourceField:J,target:e,targetField:ce},!1);const Pe=ap(K,J,e,ce,i),Ee=z[0]&&Pe?z[0][1]===Pe[1]:!1;if(p(),Ee||z.length===0)return;await y(h("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[Pe],z)||m()},A=async H=>{if(H==null){x.value&&d(x.value.id);return}const D=[];for(const z of T.value)D.push(ls(z,i)),d(z.id,!1);x.value&&d(x.value.id,!1);const{nodeId:ee,fieldId:K}=Pb(H);u({source:ee,sourceField:K,target:e,targetField:void 0},!1);const J=ap(ee,K,e,void 0,i);if(p(),D.length===0)return;await y(h("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[J],D)||m()},v=H=>{const j=[...r.value.edges,{source:H,target:e}];return kp(fc(j))},V=t.computed(()=>{const H=[];for(const j of r.value.nodes)if(xi(j.type).io?.output&&j.fields.output&&j.id!==e&&!(j.type==="property"&&!Wf(j.config?.property))&&!v(j.id)&&!(g.value.phase==="request"&&j.phase==="response")&&!(j.type==="vault"&&j.fields.output.length===0)){H.push({value:j.id,label:j.name,type:j.type});for(const ee of j.fields.output)H.push({value:`${j.id}.${ee.id}`,label:`${j.name}.${ee.name}`,type:j.type})}return H}),O=t.computed(()=>g.value.fields.input.map(H=>H.name)||[]);function $(H){f.value.delete(e),H||f.value.add(e)}const Q=bq(e);function pe(H,j,D){const ee=i(e);if(!ee)throw new Error("Node not found when validating field name");const K=to(ee,H,j);return Q(H,D,K?.id)}return{formData:_,inputOptions:V,inputEdge:x,inputsEdges:T,inputsFieldNames:O,currentNode:g,setName:k,setConfig:b,addField:C,renameFieldByName:w,removeFieldByName:S,setInputs:I,setInput:A,nameValidator:BC(e),fieldNameValidator:pe,toggleNodeValid:$}}function wn(e){const{getSchema:n}=lt();return t.computed(()=>{if(hn(e))switch(e){case"response":return mq;case"service_request":return pq}try{const o=n().fields.find(d=>Xl(d,"config"));if(!o)throw new Error("Config field not found in schema.");const a=o.config.fields.find(d=>Xl(d,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const c=a.nodes.elements.subschema_definitions[e];if(!c)throw new Error(`Subschema "${e}" not found in the schema.`);return c}catch(r){throw new Error(`Failed to get subschema "${e}": ${r.message}`)}})}const zn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=Qe(),a=t.ref(r.name),s=t.computed(()=>{const u=r.validate(a.value.trim());return u===void 0?"":u});let l=a.value.trim();function c(){if(s.value){a.value=l;return}o("update",a.value.trim())}function d(){l=a.value.trim()}return t.watch(()=>r.name,u=>{u!==a.value&&(a.value=u)}),(u,f)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":f[0]||(f[0]=m=>a.value=m),"data-1p-ignore":"",error:!!s.value,"error-message":s.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),wq=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Qe(),r=t.useTemplateRef("form"),o=wn("call"),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>r.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:{url:bn(Jo({fieldName:"URL"}),vC("url",{fieldName:"URL"})),timeout:bn(ia("integer"),aa(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),y=h("url",()=>s("url")),g=h("timeout",()=>s("timeout"));return(_,k)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"url",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(r8,{name:"method",onUpdate:k[0]||(k[0]=N=>t.unref(s)())}),t.createVNode(Nt,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"timeout",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{name:"ssl_server_name","onUpdate:modelValue":k[1]||(k[1]=N=>t.unref(s)("ssl_server_name"))}),t.createVNode(en,{name:"ssl_verify","onUpdate:modelValue":k[2]||(k[2]=N=>t.unref(s)("ssl_verify"))}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"call","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),Cq=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("service_request"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:l,fieldNameValidator:c}=kn(e.nodeId,()=>n.value.getValue());return(d,u)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Pn,{"field-name-validator":t.unref(c),"field-names":t.unref(l),items:t.unref(i),"node-type":"service_request","onChange:input":t.unref(s),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Eq=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("response"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:l,fieldNameValidator:c}=kn(e.nodeId,()=>n.value.getValue());return(d,u)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Pn,{"field-name-validator":t.unref(c),"field-names":t.unref(l),items:t.unref(i),"node-type":"response","onChange:input":t.unref(s),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Nq=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:r}=Qe(),o=t.useTemplateRef("form"),i=wn("jq"),{formData:a,setName:s,setConfig:l,inputOptions:c,setInputs:d,setInput:u,addField:f,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:y,toggleNodeValid:g,fieldNameValidator:_}=kn(e.nodeId,()=>o.value.getValue());function k(x,T){f("input",x,T)}function b(x){p("input",x)}function N(x,T){m("input",x,T)}const C=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:w}=Dr({validationConfig:{jq:bn(Jo({fieldName:C}),Lr(1,10240,{fieldName:C}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),S=w("jq",()=>l("jq"));return(x,T)=>{const I=t.resolveComponent("KLabel"),A=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(a).name,validate:t.unref(y),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{autosize:"",error:t.unref(S).error,"error-message":t.unref(S).errorMessage,label:t.unref(C),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},{help:t.withCtx(()=>[t.createVNode(t.unref(r),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(A,{"hide-icon":"",href:t.unref(ra).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(ra).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(_),"field-names":t.unref(h),items:t.unref(c),"node-type":"jq","onAdd:field":k,"onChange:input":t.unref(u),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":N},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),Sq=xe(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field"],setup(e,{emit:n}){const r=e,o=n,i=t.ref({}),{value:a,...s}=$t("values"),{i18n:l}=Qe(),c=t.useTemplateRef("root"),d=t.ref([]),u=t.ref(null);let f="",p=a?.value;function m(){return ns("ff-kv-field-")}function h(I,A,v){const V=v.indexOf(I),O=v.indexOf(A);return V===-1&&O===-1?0:V===-1?1:O===-1?-1:V-O}function y(I,A){if(!I)return[];const v=Object.entries(I).map(([V,O])=>({id:m(),key:V,value:O}));return A?.length&&v.sort((V,O)=>h(V.key,O.key,A)),v}function g(){const I={id:m(),key:"",value:""};return d.value.push(I),I}function _(I){const A=d.value.findIndex(v=>v.id===I);A!==-1&&d.value.splice(A,1)}d.value=y(a?.value,r.keyOrder);async function k(I,A="key"){c.value&&(await t.nextTick(),c.value.querySelector(`[data-${A}-input="${I}"]`)?.focus())}function b(){const I=g(),A=d.value.findIndex(({key:v})=>!v);k(A===-1?d.value.length-1:A),u.value=I}function N(I){I.id===u.value?.id&&(u.value=null),_(I.id),I.key.trim()!==""&&o("remove:field",I.key)}function C(I){f=I.key}function w(I){if(x(I)){I.key=f,delete i.value[I.id];return}if(I.id===u.value?.id){if(I.key.trim()==="")return;u.value=null,o("add:field",I.key,I.value)}else o("rename:field",f,I.key);f=I.key}function S(I,A){if(A.id===u.value?.id)return;const v=I.target.value.trim();o("change:value",A.key,v)}function x(I){delete i.value[I.id];const A=r.fieldNameValidator("output",f,I.key);if(A)return i.value[I.id]=A,A}function T(I){x(I)}return t.watch(()=>a?.value,I=>{if(Kt(I,p))return;p=I;const A=u.value,v=new Map(d.value.filter(Q=>Q.key).map(Q=>[Q.key,Q])),V=[],O=I??{};(r.keyOrder?.length?Object.keys(O).sort((Q,pe)=>h(Q,pe,r.keyOrder)):Object.keys(O)).forEach(Q=>{const pe=v.get(Q);if(pe){pe.value=O[Q],V.push(pe);return}V.push({id:m(),key:Q,value:O[Q]})}),A&&!V.some(Q=>Q.id===A.id)&&V.push(A),d.value=V},{deep:!0}),(I,A)=>{const v=t.resolveComponent("KAlert"),V=t.resolveComponent("KLabel"),O=t.resolveComponent("KButton"),$=t.resolveComponent("KInput"),Q=t.resolveComponent("KCard");return s.error?(t.openBlock(),t.createBlock(v,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:c,class:"dk-output-value-field"},[t.createVNode(V,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(pe,H)=>(t.openBlock(),t.createBlock(Q,{key:pe.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${s.path.value}.${H}`},{actions:t.withCtx(()=>[t.createVNode(O,{appearance:"none","data-testid":`ff-kv-remove-btn-${s.path.value}.${H}`,icon:"",onClick:j=>N(pe)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode($,{id:`ff-kv-entry-key-${s.path.value}.${H}`,modelValue:pe.key,"onUpdate:modelValue":[j=>pe.key=j,j=>x(pe)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":H,"data-testid":`ff-key-${s.path.value}.${H}`,error:!!i.value[pe.id],"error-message":i.value[pe.id],label:t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:j=>T(pe),onChange:j=>w(pe),onFocus:j=>C(pe)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode($,{modelValue:pe.value,"onUpdate:modelValue":j=>pe.value=j,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${s.path.value}.${H}`,label:t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:j=>S(j,pe)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${s.path.value}`,disabled:!!u.value,onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(l).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 Aq(e){const n={};for(const[r,o]of Object.entries(e))typeof o=="object"&&o!==null?n[r]=JSON.stringify(o):n[r]=String(o);return n}function md(e){const n={};for(const[r,o]of Object.entries(e))if(o!=null){n[r]=o;try{o==="null"?n[r]=null:(o==="true"||o==="false"||/^-?\d+(\.\d+)?$/.test(o)||o.startsWith("{")&&o.endsWith("}")||o.startsWith("[")&&o.endsWith("]"))&&(n[r]=JSON.parse(o))}catch{}}return n}function xq(e,n,r){const o={};for(const i of Object.keys(e))i===n?o[r]=e[n]:o[i]=e[i];return o}const Iq=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:r,addField:o,renameField:i,removeField:a,replaceConfig:s,getNodeById:l}=Vt(),{fieldNameValidator:c}=kn(e.nodeId),d=wn("static"),u=BC(e.nodeId),f=t.computed(()=>l(e.nodeId)),p=t.computed(()=>f.value?.fields.output.map(b=>b.name)||[]);function m(b){if(!f.value)throw new Error("No current node");n(f.value.id,b??"")}const h=t.computed(()=>{if(!f.value)return{};const b=f.value.config?.values??{},N={},C=r(f.value.id).map(T=>T.sourceField).filter(Boolean).map(T=>no(f.value,"output",T)).map(T=>T?.name).filter(Boolean),w=f.value.fields.output.map(T=>T.name),S=Object.keys(b);return new Set([...S,...C,...w]).forEach(T=>{if(T in b){N[T]=b[T];return}N[T]=""}),{name:f.value.name,values:Aq(N)}});function y(b,N){if(!f.value)throw new Error("No selected node");const C=N!==void 0;if(o(e.nodeId,"output",b,!C),C){const w={values:md({...h.value.values,[b]:N})};s(e.nodeId,w)}}function g(b,N){if(!f.value)throw new Error("No selected node");const C=to(f.value,"output",b);if(!C)throw new Error("No field found to rename");const w={values:md(xq(h.value.values??{},b,N))};s(e.nodeId,w,!1),i(e.nodeId,C.id,N)}function _(b){if(!f.value)throw new Error("No selected node");const N=to(f.value,"output",b);if(!N)throw new Error("No field found to delete");a(f.value?.id,N.id,!0,!1);const C={values:md({...h.value.values})};delete C.values[b],s(e.nodeId,C)}function k(b,N){if(!f.value)throw new Error("No selected node");const C={...h.value.values};C[b]=N;const w={values:md(C)};s(e.nodeId,w)}return(b,N)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>[t.createVNode(zn,{name:f.value?.name??"",validate:t.unref(u),onUpdate:m},null,8,["name","validate"]),t.createVNode(Sq,{"field-name-validator":t.unref(c),"key-order":p.value,"onAdd:field":y,"onChange:value":k,"onRemove:field":_,"onRename:field":g},null,8,["field-name-validator","key-order"])]),_:1},8,["data","schema"]))}}),vq={class:"dk-kong-property-item"},Tq={class:"property-type"},Bq={class:"property-badges"},Oq=xe(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:r}}=Qe(),o=t.inject(Bn.KM_3034_FEATURES_316,!1),i=["kong.client.principal","kong.client.principal.{key}"],a=e,s=n,{formData:l}=lt(),c=t.ref(rs(l.property)),d=t.computed(()=>os(l.property)),u=t.ref(Hf(l.property)),f=t.computed(()=>l.property??""),p=t.computed(()=>Object.entries(Io).filter(([y])=>o||!i.includes(y)).map(([y])=>{const g=os(y)?l.property?.startsWith(y.replace(wi,"")):l.property===y;return{label:g&&u.value?y.replace(wi,u.value):y,value:y,selected:g}}));function m(y){const g=Zl.find(_=>l.property?.startsWith(_));g&&(l.property=g+y,a.validators.key.handleChange(l.property),s("update:property-key",l.property))}function h(y){c.value!==rs(y?.value)&&(l.property=y?.value||null,c.value=rs(l.property),a.validators.property.handleBlur(()=>l.property),s("update:model-value",l.property))}return t.watch(()=>l.property,y=>{u.value=Hf(y),c.value=rs(y)}),(y,g)=>{const _=t.resolveComponent("KBadge"),k=t.resolveComponent("KSelect"),b=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(k,{key:f.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.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]=N=>e.validators.property.handleBlur(()=>t.unref(l).property)),onChange:h},{"item-template":t.withCtx(({item:N})=>[t.createElementVNode("div",vq,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(N.label),1),t.createElementVNode("div",Tq,t.toDisplayString(t.unref(Io)[N.value].dataType),1)]),t.createElementVNode("div",Bq,[t.unref(Io)[N.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(Io)[N.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),d.value?(t.openBlock(),t.createBlock(b,{key:0,"model-value":u.value,"onUpdate:modelValue":[g[1]||(g[1]=N=>u.value=N),m],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=N=>e.validators.key.handleBlur(()=>t.unref(l).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-cc97d84c"]]),Pq=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:r,disconnectInEdges:o,disconnectOutEdges:i}=Vt(),a=wn("property"),{formData:s,setName:l,setConfig:c,inputOptions:d,setInputs:u,setInput:f,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:y}=kn(e.nodeId,()=>n.value.getValue()),g=t.computed(()=>Yf(s.value.property));function _(b){const N=r.value?.id;if(!N)throw new Error("Expected selectedNode to be defined");Wf(b)||i(N,!1),Yf(b)||o(N,!1),c()}const{fields:k}=Dr({validationConfig:()=>({property:Jo({fieldName:"Property"}),key:os(s.value.property)?Jo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:s.value.property,key:Hf(s.value.property)}),toggleNodeValid:h});return(b,N)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(s),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(s).name,validate:t.unref(m),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(St,{name:"content_type",onUpdate:N[0]||(N[0]=C=>t.unref(c)())}),t.createVNode(Oq,{validators:t.unref(k),"onUpdate:modelValue":_,"onUpdate:propertyKey":N[1]||(N[1]=C=>t.unref(c)("property-key"))},null,8,["validators"]),t.createVNode(en,{name:"non_nil","onUpdate:modelValue":N[2]||(N[2]=C=>t.unref(c)("non_nil"))}),g.value?(t.openBlock(),t.createBlock(er,{key:0})):t.createCommentVNode("",!0),g.value?(t.openBlock(),t.createBlock(Pn,{key:1,"field-name-validator":t.unref(y),"field-names":t.unref(p),items:t.unref(d),"node-type":"property","onChange:input":t.unref(f),"onChange:inputs":t.unref(u)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),Vq=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("exit"),{formData:o,setName:i,setConfig:a,inputOptions:s,setInputs:l,setInput:c,inputsFieldNames:d,nameValidator:u,toggleNodeValid:f,fieldNameValidator:p}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=Dr({validationConfig:{status:bn(ia("integer",{fieldName:"Status"}),aa(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:o.value.status}),toggleNodeValid:f}),h=m("status",()=>a("status"));return(y,g)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(o).name,validate:t.unref(u),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Nt,{error:t.unref(h).error,"error-message":t.unref(h).errorMessage,name:"status",onBlur:t.unref(h).validate,"onUpdate:modelValue":t.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=_=>t.unref(a)())}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(s),"node-type":"exit","onChange:input":t.unref(c),"onChange:inputs":t.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function $q(e){const n=kn(e),{state:r,getNodeById:o,branchGroups:i,commit:a}=Vt(),{i18n:{t:s}}=Qe(),l=$k(),c=Ql(),d=t.computed(()=>{const _={...n.formData.value},k=ss(n.currentNode.value?.type||"branch");for(const b of k)(!(b in _)||_[b]==null)&&(_[b]=[]);return _});function u(_,k,b){const N=o(_),C=o(b),w=N?`${N.name}.${k}`:`${_}.${k}`,S=C?C.name:b;return[w,S]}function f(_){return(_==null?[]:Array.isArray(_)?_:[_]).filter(k=>np(k))}function p(_,k){return i.wouldCreateCycle(_,k)?(c({message:s("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(_,k,b){const N=[],C=[],w=[];for(const S of b){const x=i.findMembership(S);if(!x||x.ownerId===_&&x.branch===k)continue;const T=i.getMembers(x.ownerId,x.branch).filter(I=>I!==S);w.push({ownerId:x.ownerId,branch:x.branch,members:T}),N.push(u(_,k,S)),C.push(u(x.ownerId,x.branch,S))}return{conflictUpdates:w,addedAssignments:N,removedAssignments:C}}function h(_,k,b,N){let C=!1;for(const w of N)C=i.setMembers(w.ownerId,w.branch,w.members,{commit:!1})||C;return C=i.setMembers(_,k,b,{commit:!1})||C,C}async function y(_,k){const b=n.currentNode.value,N=f(k),C=i.prepareMembers(b.id,_,N),w=i.getMembers(b.id,_);if(rp(w,C))return!0;const S=C.filter(v=>!w.includes(v));for(const v of S)if(p(b.id,v))return!1;const{conflictUpdates:x,addedAssignments:T,removedAssignments:I}=m(b.id,_,S);return x.length>0&&!await l(s("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),T,I)?!1:(h(b.id,_,C,x)&&a(),!0)}const g=t.computed(()=>{const _=n.currentNode.value;return!_||!i?[]:r.value.nodes.filter(k=>k.id!==e&&!hn(k.type)&&k.phase===_.phase&&!i.wouldCreateCycle(_.id,k.id)).map(k=>({value:k.id,label:k.name,type:k.type}))});return{...n,formData:d,branchOptions:g,updateBranchMembers:y}}const Rq=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Qe(),r=wn("branch"),o=t.ref(0),{formData:i,setName:a,inputOptions:s,branchOptions:l,nameValidator:c,setInput:d,setInputs:u,inputsFieldNames:f,fieldNameValidator:p,updateBranchMembers:m}=$q(e.nodeId);async function h(y,g){await m(y,g)||(o.value+=1)}return(y,g)=>(t.openBlock(),t.createBlock(Wt,{key:o.value,data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",items:t.unref(l),multiple:"",name:"then",onUpdate:g[0]||(g[0]=_=>h("then",_))},{"item-label":t.withCtx(_=>[t.createVNode(pd,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(St,{"enable-filtering":"",items:t.unref(l),multiple:"",name:"else",onUpdate:g[1]||(g[1]=_=>h("else",_))},{"item-label":t.withCtx(_=>[t.createVNode(pd,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(p),"field-names":t.unref(f),items:t.unref(s),"node-type":"branch","onChange:input":t.unref(d),"onChange:inputs":t.unref(u)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Lq=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("cache"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:()=>({ttl:bn(ia("integer",{fieldName:"TTL"}),aa(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),y=h("ttl",()=>s("ttl"));return(g,_)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(en,{name:"bypass_on_error","onUpdate:modelValue":_[0]||(_[0]=k=>t.unref(s)("bypass_on_error"))}),t.createVNode(Nt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"ttl",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"cache","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Dq=t.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("xml_to_json"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),h=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:g}=Dr({validationConfig:()=>({attributes_block_name:bn(()=>y()?void 0:h,x=>{if(x)return Lr(1,32,{fieldName:"Attributes block name"})(x)}),attributes_name_prefix:bn(()=>y()?void 0:h,x=>{if(x)return Lr(1,32,{fieldName:"Attributes name prefix"})(x)}),text_block_name:Lr(1,32,{fieldName:"Text block name"}),xpath:Lr(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:p}),_=g("attributes_block_name",()=>s("attributes_block_name")),k=g("attributes_name_prefix",()=>s("attributes_name_prefix")),b=g("text_block_name",()=>s("text_block_name")),N=g("xpath",()=>s("xpath")),C=()=>{_.value.validate(),k.value.validate()},w=()=>{_.value.update(),k.value.validate()},S=()=>{k.value.update(),_.value.validate()};return(x,T)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(en,{name:"recognize_type","onUpdate:modelValue":T[0]||(T[0]=I=>t.unref(s)("recognize_type"))}),t.createVNode(Me,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"attributes_block_name",onBlur:C,"onUpdate:modelValue":w},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(k).error,"error-message":t.unref(k).errorMessage,name:"attributes_name_prefix",onBlur:C,"onUpdate:modelValue":S},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(b).error,"error-message":t.unref(b).errorMessage,name:"text_block_name",onBlur:t.unref(b).validate,"onUpdate:modelValue":t.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"text_as_property","onUpdate:modelValue":T[1]||(T[1]=I=>t.unref(s)("text_as_property"))}),t.createVNode(Me,{error:t.unref(N).error,"error-message":t.unref(N).errorMessage,name:"xpath",onBlur:t.unref(N).validate,"onUpdate:modelValue":t.unref(N).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"xml_to_json","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Mq=t.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("json_to_xml"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,addField:u,removeFieldByName:f,renameFieldByName:p,inputsFieldNames:m,nameValidator:h,toggleNodeValid:y,fieldNameValidator:g}=kn(e.nodeId,()=>n.value.getValue()),_=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),k=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:b}=Dr({validationConfig:{attributes_block_name:bn(()=>k()?void 0:_,Lr(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:bn(()=>k()?void 0:_,Lr(1,32,{fieldName:"Attributes name prefix"})),root_element_name:Lr(1,64,{fieldName:"Root element name"}),text_block_name:Lr(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}),N=b("attributes_block_name",()=>s("attributes_block_name")),C=b("attributes_name_prefix",()=>s("attributes_name_prefix")),w=b("root_element_name",()=>s("root_element_name")),S=b("text_block_name",()=>s("text_block_name"));function x(){N.value.validate(),C.value.validate()}function T(){N.value.update(),C.value.validate()}function I(){C.value.update(),N.value.validate()}function A(O,$){u("input",O,$)}function v(O){f("input",O)}function V(O,$){p("input",O,$)}return(O,$)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(h),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{error:t.unref(N).error,"error-message":t.unref(N).errorMessage,name:"attributes_block_name",onBlur:x,"onUpdate:modelValue":T},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(C).error,"error-message":t.unref(C).errorMessage,name:"attributes_name_prefix",onBlur:x,"onUpdate:modelValue":I},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(w).error,"error-message":t.unref(w).errorMessage,name:"root_element_name",onBlur:t.unref(w).validate,"onUpdate:modelValue":t.unref(w).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{error:t.unref(S).error,"error-message":t.unref(S).errorMessage,name:"text_block_name",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(g),"field-names":t.unref(m),items:t.unref(l),"node-type":"json_to_xml","onAdd:field":A,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":v,"onRename:field":V},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Fq=t.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_decode"),{formData:o,setName:i,inputOptions:a,setInputs:s,setInput:l,inputsFieldNames:c,nameValidator:d,fieldNameValidator:u}=kn(e.nodeId,()=>n.value.getValue());return(f,p)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(o).name,validate:t.unref(d),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(u),"field-names":t.unref(c),items:t.unref(a),"node-type":"jwt_decode","onChange:input":t.unref(l),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),jq=t.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_sign"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>{const k={...n.value.getValue()};return(!k.static_claims||Object.keys(k.static_claims).length===0)&&delete k.static_claims,k}),{createFieldHandler:h}=Dr({validationConfig:{algorithm:Jo({fieldName:"Algorithm"}),expires_in:bn(ia("integer",{fieldName:"Expires in"}),aa(1,1/0,{fieldName:"Expires in"})),not_before:bn(ia("integer",{fieldName:"Not before"}),aa(0,1/0,{fieldName:"Not before"}))},getValidationData:()=>({algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before}),toggleNodeValid:p}),y=h("algorithm",()=>s("algorithm")),g=h("expires_in",()=>s("expires_in")),_=h("not_before",()=>s("not_before"));return(k,b)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",name:"algorithm",onUpdate:t.unref(y).update},null,8,["onUpdate"]),t.createVNode(Nt,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"expires_in",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Nt,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"not_before",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{name:"kid","onUpdate:modelValue":b[0]||(b[0]=N=>t.unref(s)("kid"))}),t.createVNode(Me,{name:"typ","onUpdate:modelValue":b[1]||(b[1]=N=>t.unref(s)("typ"))}),t.createVNode(_n,{label:t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onLegacyValueChange:b[2]||(b[2]=N=>t.unref(s)("static_claims"))},null,8,["label"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"jwt_sign","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Uq=t.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_verify"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:{leeway:bn(ia("integer",{fieldName:"Leeway"}),aa(0,1/0,{fieldName:"Leeway"}))},getValidationData:()=>({leeway:i.value.leeway}),toggleNodeValid:p}),y=h("leeway",()=>s("leeway"));return(g,_)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:_[0]||(_[0]=k=>t.unref(s)("allowed_algorithms"))}),t.createVNode(dt,{name:"issuers",onAdd:_[2]||(_[2]=k=>t.unref(s)("issuers")),onRemove:_[3]||(_[3]=k=>t.unref(s)("issuers"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[1]||(_[1]=N=>t.unref(s)("issuers"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(dt,{name:"audiences",onAdd:_[5]||(_[5]=k=>t.unref(s)("audiences")),onRemove:_[6]||(_[6]=k=>t.unref(s)("audiences"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[4]||(_[4]=N=>t.unref(s)("audiences"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(dt,{name:"required_claims",onAdd:_[8]||(_[8]=k=>t.unref(s)("required_claims")),onRemove:_[9]||(_[9]=k=>t.unref(s)("required_claims"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[7]||(_[7]=N=>t.unref(s)("required_claims"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(Nt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"leeway",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"validate_exp","onUpdate:modelValue":_[10]||(_[10]=k=>t.unref(s)("validate_exp"))}),t.createVNode(en,{name:"validate_nbf","onUpdate:modelValue":_[11]||(_[11]=k=>t.unref(s)("validate_nbf"))}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"jwt_verify","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Kq=["innerHTML"],qq={key:1,class:"branch-note"},Gq={class:"branch-label"},zq={class:"branch-text"},Hq=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Hy}px`},offsetTop:{default:`${tA}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Ft.createI18n("en-us",zt),{getNodeById:r,branchGroups:o}=Vt(),i=t.computed(()=>e.nodeId&&r(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return o.findMembership(e.nodeId)}),s=t.computed(()=>{if(!a.value)return"";const d=r(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function l(){e.nodeId&&o.removeMember(e.nodeId)}const c=t.computed(()=>{switch(i.value?.type){case"call":return wq;case"service_request":return Cq;case"response":return Eq;case"jq":return Nq;case"static":return Iq;case"property":return Pq;case"exit":return Vq;case"branch":return Rq;case"cache":return Lq;case"xml_to_json":return Dq;case"json_to_xml":return Mq;case"jwt_decode":return Fq;case"jwt_sign":return jq;case"jwt_verify":return Uq;default:return null}});return(d,u)=>(t.openBlock(),t.createBlock(t.unref(_e.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(eA),onClose:u[0]||(u[0]=f=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Si)(i.value.type)},null,8,Kq)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",qq,[t.createElementVNode("span",Gq,[t.createVNode(t.unref(Ne.ArrowSplitIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["color","size"]),t.createElementVNode("span",zq,t.toDisplayString(s.value),1)]),t.createVNode(t.unref(_e.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref(_e.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:l},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Np,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),Wq=xe(Hq,[["__scopeId","data-v-32602117"]]),Yq={class:"dk-editor-content"},Jq={class:"main"},Xq=xe(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:r}=Vt();function o(){n.value=!1}t.watch(r,a=>{a||o()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,s)=>(t.openBlock(),t.createElementBlock("div",Yq,[t.createVNode(t.unref(n8)),t.createElementVNode("div",Jq,[t.createVNode(fK)]),t.createVNode(Wq,{"node-id":t.unref(r)?.id,visible:t.unref(n),onClose:o},null,8,["node-id","visible"])]))}}),[["__scopeId","data-v-66331c5c"]]),Zq={key:0,class:"dk-editor-modal"},Qq=xe(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(l=>({v38ec900c:`${t.unref(QS)}px`,v620586b8:`${t.unref(zy)}px`}));const n=t.useModel(e,"open"),r=t.ref(!1),o=t.useTemplateRef("confirm-modal"),{clear:i}=Vt();O$(async(...l)=>{r.value=!0;const c=await o.value.open(...l);return r.value=!1,c});const a=Ot.useScrollLock(document);t.watch(n,l=>{a.value=!!l,l||i()},{immediate:!0});function s(){n.value=!1}return(l,c)=>n.value?(t.openBlock(),t.createElementBlock("div",Zq,[t.createVNode(aK,{class:"nav",onBack:s}),t.createVNode(Xq,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(nK,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-c3604472"]]),e3={class:"dk-flow-editor"},t3={class:"flow-panels-container"},n3={class:"overlay"},r3=xe(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:r}=Ft.createI18n("en-us",zt),{formData:o,setValue:i,getValue:a}=lt(),s=n;function l(u,f,p,m){const h={...o.config,nodes:u};p!==void 0&&(h.resources=p);const y={...o.__ui_data,...f},g={...o,config:h,__ui_data:y};m!=null?g.partials=[{id:m}]:g.partials&&(g.partials=null),i(g),s("change",h,y)}const{modalOpen:c,setPendingFitView:d}=Cp(a(),{onChange:l,isEditing:e.isEditing});return t.watch(c,()=>{d(!0)},{flush:"post"}),WU({enabled:c}),(u,f)=>{const p=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",e3,[t.createElementVNode("div",t3,[t.createVNode(eg,{inactive:t.unref(c),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",n3,[t.createVNode(p,{appearance:"secondary",class:"button-open-editor",onClick:f[0]||(f[0]=m=>c.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Ne.ExpandIcon))]),_:1})])]),t.createVNode(Qq,{open:t.unref(c),"onUpdate:open":f[1]||(f[1]=m=>t.isRef(c)?c.value=m:null)},null,8,["open"])])}}}),[["__scopeId","data-v-cd9d53e6"]]),o3=["innerHTML"],i3={class:"dk-option-label"},a3=Ce({component:xe(t.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(e){const{t:n}=Ft.createI18n("en-us",zt),r=e,o=t.useAttrs(),i=t.inject(Je.FORMS_CONFIG),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:s}=ud(),l=t.computed(()=>i.app!=="konnect"||u.value===!1?"code":s.value),c=t.computed(()=>i.app==="kongManager"?"code":l.value==="flow"?"form":"code"),d={flow:Ne.DesignIcon,code:Ne.CodeblockIcon},u=t.ref(!0),f=t.ref(""),p=t.computed(()=>{const S=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return S[0].disabled=!u.value,S}),m=t.inject(Bn.KM_3034_FEATURES_316,!1),h=t.ref(!(r.isEditing&&r.model?.config?.ca_certificates?.length)),y=t.computed(()=>{const S=[{name:"plugin-config",title:n("plugins.free-form.datakit.flow_editor.mode"),description:n("plugins.free-form.datakit.description_flow")}];return m&&S.push({name:"advanced",title:n("plugins.free-form.datakit.advanced_configuration.title")}),S}),g=t.computed(()=>u.value?"":n("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:f.value,code:S=>`<code>${lO(S)}</code>`}));t.watch(l,()=>{r.onValidityChange?.({model:"config",valid:!0})});function _(){r.onValidityChange?.({model:"config",valid:!0})}function k(){_()}function b(S){return S.map(x=>typeof x=="number"?`[${x}]`:S.length&&typeof x=="string"&&x.includes(".")?`["${x}"]`:`.${x}`).join("").replace(/^\./,"")}function N(S){return S.issues.map(x=>`${b(x.path)} - ${x.message}`).join("; ")}function C(S){if(_(),i.app!=="konnect")return;const x=S?.config,{success:T,error:I}=xC.safeParse(x);f.value=T||!I?"":N(I),u.value=T}function w(S){f.value=S,u.value=!1,r.onValidityChange?.({model:"config",valid:!1,error:S})}return(S,x)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i).app==="konnect"?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(_e.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:p.value,"onUpdate:modelValue":x[0]||(x[0]=T=>s.value=T)},{"option-label":t.withCtx(({option:T})=>[t.createVNode(t.unref(_e.KTooltip),{disabled:u.value||T.value!=="flow"},{content:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:g.value},null,8,o3)]),default:t.withCtx(()=>[t.createElementVNode("div",i3,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[T.value]))),t.createTextVNode(" "+t.toDisplayString(T.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(On,t.mergeProps({...t.unref(o),...r},{class:"dk-form","config-sections":y.value,"editor-mode":c.value,"hide-editor-mode-switcher":""}),t.createSlots({"section-plugin-config":t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(r3,{key:0,"is-editing":r.isEditing,onChange:k},null,8,["is-editing"])):t.createCommentVNode("",!0)]),"code-editor":t.withCtx(()=>[t.createVNode(zU,{class:"code-editor",editing:r.isEditing,onChange:C,onError:w},null,8,["editing"])]),_:2},[t.unref(m)?{name:"section-advanced",fn:t.withCtx(()=>[t.createVNode(t.unref(_e.KCollapse),{modelValue:h.value,"onUpdate:modelValue":x[1]||(x[1]=T=>h.value=T),"data-testid":"dk-advanced-configuration-collapse","trigger-label":h.value?t.unref(n)("plugins.free-form.datakit.advanced_configuration.show_label"):t.unref(n)("plugins.free-form.datakit.advanced_configuration.hide_label")},{default:t.withCtx(()=>[t.createVNode(jU,{name:"$.config.ca_certificates"})]),_:1},8,["modelValue","trigger-label"])]),key:"0"}:void 0]),1040,["config-sections","editor-mode"])],64))}}),[["__scopeId","data-v-2503a4a2"]])}),s3=Ce({experimental:!0}),l3={class:"ff-response-mapping"},c3={class:"ff-response-mapping-header"},d3={class:"ff-response-mapping-col ff-response-mapping-col--code"},u3={class:"ff-response-mapping-col ff-response-mapping-col--status"},f3={class:"ff-response-mapping-col ff-response-mapping-col--message"},p3={class:"ff-response-mapping-col ff-response-mapping-col--code"},m3={class:"ff-response-mapping-col ff-response-mapping-col--status"},g3={class:"ff-response-mapping-col ff-response-mapping-col--message"},h3=xe(t.defineComponent({__name:"ResponseMappingField",setup(e){const{i18n:{t:n}}=Qe(),r=["NO_CREDIT_AVAILABLE","USAGE_LIMIT_REACHED","FEATURE_UNAVAILABLE","FEATURE_NOT_FOUND","CUSTOMER_NOT_FOUND"],{formData:o,getDefault:i}=lt();for(const a of r)for(const s of["http_status","message"]){const l=["config","response_codes",a,s];xo(o,l)==null&&zf(o,l,i(`config.response_codes.${a}.${s}`))}return(a,s)=>(t.openBlock(),t.createElementBlock("div",l3,[t.createElementVNode("div",c3,[t.createElementVNode("span",d3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.code")),1),t.createElementVNode("span",u3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.status")),1),t.createElementVNode("span",f3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.message")),1)]),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(r,l=>t.createElementVNode("div",{key:l,class:"ff-response-mapping-row"},[t.createElementVNode("div",p3,[t.createVNode(t.unref(_e.KInput),{"data-testid":`ff-response-mapping-code-${l}`,"model-value":l,readonly:""},null,8,["data-testid","model-value"])]),t.createElementVNode("div",m3,[t.createVNode(Nt,{label:"",name:`config.response_codes.${l}.http_status`},null,8,["name"])]),t.createElementVNode("div",g3,[t.createVNode(Me,{label:"",name:`config.response_codes.${l}.message`},null,8,["name"])])])),64))]))}}),[["__scopeId","data-v-10e31d0a"]]),y3={class:"ff-card-radio-field"},_3={class:"ff-card-radio-field-cards"},og=xe(t.defineComponent({__name:"CardRadioField",props:{name:{},label:{},options:{}},setup(e){const n=e,{formData:r}=lt(),o=t.computed({get:()=>{const i=n.name.split(".");return xo(r,i)},set:i=>{const a=n.name.split(".");zf(r,a,i)}});return(i,a)=>(t.openBlock(),t.createElementBlock("div",y3,[e.label?(t.openBlock(),t.createBlock(t.unref(_e.KLabel),{key:0},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",_3,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.options,s=>(t.openBlock(),t.createBlock(t.unref(_e.KRadio),{key:String(s.value),modelValue:o.value,"onUpdate:modelValue":a[0]||(a[0]=l=>o.value=l),card:"","card-orientation":"horizontal",description:s.description,label:s.label,"selected-value":s.value},null,8,["modelValue","description","label","selected-value"]))),128))])]))}}),[["__scopeId","data-v-e546bf77"]]),b3={class:"ff-feature-option"},k3={class:"ff-feature-option-key"},w3={key:0,class:"ff-feature-option-name"},C3=xe(t.defineComponent({__name:"FeatureSelectField",emits:["click:create-entity"],setup(e,{emit:n}){const r=n,{i18n:{t:o}}=Qe(),i=t.inject(Je.FORMS_CONFIG),{axiosInstance:a}=ue.useAxios(i?.axiosRequestConfig),{formData:s}=lt(),l=t.computed(()=>i?.metering?.canListFeatures!==!1),c=t.computed(()=>i?.metering?.canCreateFeature!==!1),d=t.ref([]),u=t.ref(!1),f=t.computed(()=>i?.metering?.featuresEndpoint??""),p=t.computed(()=>xo(s,["config","feature","key"])),m=t.computed(()=>{const y=[...d.value];return p.value&&!y.some(g=>g.value===p.value)&&y.unshift({label:p.value,value:p.value}),y});async function h(){if(!(!l.value||!f.value)){u.value=!0;try{const g=(await a.get(f.value)).data?.data??[];d.value=g.map(_=>({label:_.key,value:_.key,name:_.name}))}catch(y){console.warn("[governance]",o("plugins.free-form.governance.fields.feature_key.load_error"),y)}finally{u.value=!1}}}return t.onMounted(h),(y,g)=>{const _=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[l.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(_,{key:0,appearance:"warning",class:"ff-feature-unavailable","data-testid":"ff-feature-unavailable",message:t.unref(o)("plugins.free-form.governance.fields.feature_key.unavailable"),"show-icon":""},null,8,["message"])),t.createVNode(St,{disabled:!l.value,"enable-filtering":"",help:t.unref(o)("plugins.free-form.governance.fields.feature_key.help"),items:m.value,label:t.unref(o)("plugins.free-form.governance.fields.feature_key.label"),loading:u.value,name:"config.feature.key"},t.createSlots({"item-label":t.withCtx(k=>[t.createElementVNode("div",b3,[t.createElementVNode("span",k3,t.toDisplayString(k.value),1),k.name?(t.openBlock(),t.createElementBlock("span",w3,t.toDisplayString(k.name),1)):t.createCommentVNode("",!0)])]),_:2},[c.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-feature-create","data-testid":"ff-feature-create-action",onClick:g[0]||(g[0]=k=>r("click:create-entity",{type:"feature"}))},[t.createElementVNode("span",null,t.toDisplayString(t.unref(o)("plugins.free-form.governance.fields.feature_key.create_feature")),1)])]),key:"0"}:void 0]),1032,["disabled","help","items","label","loading"])],64)}}}),[["__scopeId","data-v-f6d49ce6"]]),E3={class:"ff-entitlement-enforcement-subject"},N3={class:"ff-entitlement-enforcement-connection-heading"},S3={class:"ff-entitlement-enforcement-inline-row"},A3={class:"ff-entitlement-enforcement-cache-sync-heading"},x3={class:"ff-entitlement-enforcement-cache-sync"},I3={class:"ff-entitlement-enforcement-response-mapping-heading"},v3={class:"ff-entitlement-enforcement-deny-unknown-customers-heading"},T3=Ce({experimental:!0,component:xe(t.defineComponent({__name:"EntitlementEnforcementForm",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:{}},emits:["click:create-entity"],setup(e,{emit:n}){const r=e,o=n,i=t.useSlots();t.provide(Je.AUTOFILL_SLOT,i?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=Qe(),s=t.inject(Je.FORMS_CONFIG),l=t.computed(()=>s?.app==="kongManager"),d=t.inject(Jm)?.(()=>!l.value);t.onUnmounted(()=>d?.());const u=t.computed(()=>{const g=s?.geoApiServerUrl,_=g?new URL(g).hostname.split(".")[0]:null;return _?`https://${_}.api.konghq.com/v3/openmeter/entitlement-access/query`:"https://us.api.konghq.com/v3/openmeter/entitlement-access/query"}),f={hasValue:g=>!!g&&Object.keys(g).length>0,prepareFormData:g=>r.isEditing?g:s?.app==="konnect"&&!g?.config?.entitlement_access_endpoint?{...g,config:{...g?.config,entitlement_access_endpoint:u.value}}:g},p=[{name:"configuration",title:a("plugins.free-form.governance.sections.configuration.title"),description:a("plugins.free-form.governance.sections.configuration.description")},{name:"entitlement-enforcement",title:a("plugins.free-form.governance.sections.governance.title"),description:a("plugins.free-form.governance.sections.governance.description")}],m=t.computed(()=>[{value:!0,label:a("plugins.free-form.governance.fields.credit_balance_required.yes_label"),description:a("plugins.free-form.governance.fields.credit_balance_required.yes_description")},{value:!1,label:a("plugins.free-form.governance.fields.credit_balance_required.no_label"),description:a("plugins.free-form.governance.fields.credit_balance_required.no_description")}]),h=t.computed(()=>[{value:"allow",label:a("plugins.free-form.governance.fields.fail_policy.allow_label"),description:a("plugins.free-form.governance.fields.fail_policy.allow_description")},{value:"block",label:a("plugins.free-form.governance.fields.fail_policy.block_label"),description:a("plugins.free-form.governance.fields.fail_policy.block_description")}]),y=t.computed(()=>[{value:!1,label:a("plugins.free-form.governance.fields.deny_unknown_customers.allow_label"),description:a("plugins.free-form.governance.fields.deny_unknown_customers.allow_description")},{value:!0,label:a("plugins.free-form.governance.fields.deny_unknown_customers.deny_label"),description:a("plugins.free-form.governance.fields.deny_unknown_customers.deny_description")}]);return(g,_)=>{const k=t.resolveComponent("KAlert");return l.value?(t.openBlock(),t.createBlock(k,{key:0,appearance:"info",class:"ff-entitlement-enforcement-unavailable","data-testid":"ff-entitlement-enforcement-unavailable",message:t.unref(a)("plugins.free-form.governance.unavailable_kong_manager")},null,8,["message"])):(t.openBlock(),t.createBlock(On,t.mergeProps({key:1},r,{"config-sections":p,"form-config":f}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:b})=>b==="config.customer.look_up_value_in"},{default:t.withCtx(b=>[t.createVNode(St,t.mergeProps(b,{help:t.unref(a)("plugins.free-form.governance.fields.look_up_value_in.help"),label:t.unref(a)("plugins.free-form.governance.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.customer.field"},{default:t.withCtx(b=>[t.createVNode(Me,t.mergeProps(b,{help:t.unref(a)("plugins.free-form.governance.fields.subject_field.help"),label:t.unref(a)("plugins.free-form.governance.fields.subject_field.label"),placeholder:t.unref(a)("plugins.free-form.governance.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.ssl_verify"},{default:t.withCtx(b=>[t.createVNode(en,t.mergeProps(b,{description:t.unref(a)("plugins.free-form.governance.fields.ssl_verify.description"),label:t.unref(a)("plugins.free-form.governance.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.timeout"},{default:t.withCtx(b=>[t.createVNode(Nt,t.mergeProps(b,{label:t.unref(a)("plugins.free-form.governance.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.keepalive"},{default:t.withCtx(b=>[t.createVNode(Nt,t.mergeProps(b,{label:t.unref(a)("plugins.free-form.governance.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"])]),"section-configuration":t.withCtx(()=>[t.createElementVNode("div",E3,[t.createVNode(Rt,{"as-child":"",name:"config.customer","render-rules":{dependencies:{field:["look_up_value_in",["header","query"]]}},"reset-label-path":"reset"})]),t.createVNode(C3,{"onClick:createEntity":_[0]||(_[0]=b=>o("click:create-entity",b))}),t.createElementVNode("h3",N3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.sections.connection.title")),1),t.createVNode(Me,{help:t.unref(a)("plugins.free-form.governance.fields.governance_endpoint.help"),name:"config.entitlement_access_endpoint"},null,8,["help"]),t.createVNode(Xe,{name:"config.api_token"}),t.createVNode(Xe,{name:"config.ssl_verify"}),t.createElementVNode("div",S3,[t.createVNode(Xe,{name:"config.timeout"}),t.createVNode(Xe,{name:"config.keepalive"})]),t.createVNode(sd,{borderless:"","is-konnect-managed-redis-enabled":r.isKonnectManagedRedisEnabled??!1},null,8,["is-konnect-managed-redis-enabled"]),t.createVNode(Yo,{class:"ff-entitlement-enforcement-advanced-fields-container","data-testid":"ff-entitlement-enforcement-config-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createElementVNode("h3",A3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.sections.cache_sync.title")),1),t.createElementVNode("div",x3,[t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.sync_rate.label"),name:"config.sync_rate"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.refresh_interval.label"),name:"config.refresh_interval"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.max_stale_seconds.label"),name:"config.max_stale_seconds"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.l1_ttl.label"),name:"config.l1_cache_ttl_seconds"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.l2_ttl.label"),name:"config.l2_cache_ttl_seconds"},null,8,["label"])])])]),_:1})]),"section-entitlement-enforcement":t.withCtx(()=>[t.createVNode(og,{label:t.unref(a)("plugins.free-form.governance.fields.credit_balance_required.label"),name:"config.credit_balance_required",options:m.value},null,8,["label","options"]),t.createVNode(og,{label:t.unref(a)("plugins.free-form.governance.fields.fail_policy.label"),name:"config.fail_policy",options:h.value},null,8,["label","options"]),t.createVNode(Yo,{class:"ff-entitlement-enforcement-advanced-fields-container","data-testid":"ff-entitlement-enforcement-advanced-settings","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createElementVNode("h3",I3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.fields.response.label")),1),t.createVNode(h3)]),t.createElementVNode("div",null,[t.createElementVNode("h3",v3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.fields.deny_unknown_customers.label")),1),t.createVNode(og,{name:"config.deny_unknown_customers",options:y.value},null,8,["options"])])]),_:1})]),_:1},16))}}}),[["__scopeId","data-v-d6b90783"]])}),B3=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e==="config.functions.*",component:Me,propsOverrides:e=>({...e,multiline:!0,rows:3})}]}),O3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),P3=Ce({experimental:!0}),V3=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}}}),$3=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}}}),R3=Ce({experimental:!0,fieldRenderers:[{match:"config.proto",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),L3=Ce({experimental:!0}),D3=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),M3=Ce({experimental:!0}),F3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),j3=Ce({experimental:!0,fieldRenderers:[{match:"config.injection_types",component:St,propsOverrides:{multiple:!0}},{match:"config.locations",component:St,propsOverrides:{multiple:!0}},{match:"config.custom_injections",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Injection`}}]}),U3=Ce({experimental:!0}),K3=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>e==="config.request_jq_program"||e==="config.response_jq_program",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),q3=Ce({experimental:!0}),G3=Ce({experimental:!0}),OC=xe(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:r}=lt(),o=r("config"),i=t.computed(()=>{const s=[],l=[],c=new Set,u=n().fields.find(g=>Object.keys(g)[0]==="config");if(!u||!("config"in u))return{defaultVisible:s,advanced:l};const f=u.config;f.entity_checks&&f.entity_checks.forEach(g=>{let _;"at_least_one_of"in g?_=g.at_least_one_of:"conditional"in g&&n(yt("config",g.conditional.if_field))?.required&&g.conditional.then_match.required?_=[g.conditional.if_field,g.conditional.then_field]:"conditional_at_least_one_of"in g&&n(yt("config",g.conditional_at_least_one_of.if_field))?.required&&(_=[g.conditional_at_least_one_of.if_field,...g.conditional_at_least_one_of.then_at_least_one_of]),_?.forEach(k=>c.add(k.split(".")[0]))});const p=o.value?.bundles??[],m=new Map;for(const g of p)for(let _=1;_<g.length;_++)m.set(g[_],g[_-1]);const h=g=>{const _=m.get(g);return _?h(_):g},y=new Map;for(const g of f.fields){const _=Object.keys(g)[0];y.set(_,h(_))}for(const g of f.fields){const _=Object.keys(g)[0];if(y.get(_)!==_)continue;let b;g[_].required||c.has(_)?b=s:b=l,b.push(_)}for(const g of f.fields){const _=Object.keys(g)[0],k=y.get(_);k!==_&&(s.includes(k)?s:l).push(_)}return{defaultVisible:s,advanced:l}}),a=t.computed(()=>i.value.defaultVisible.length===0);return(s,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",class:"ff-default-visible-fields",name:"config",omit:a.value?[]:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),a.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Yo,{key:0,class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Rt,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1}))],64))}}),[["__scopeId","data-v-bc82c9e9"]]),PC=t.defineComponent({inheritAttrs:!1,__name:"KeysetField",props:{name:{},scope:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),o=t.inject(Je.FORMS_CONFIG),i=t.computed(()=>o?.app==="konnect"),{formData:a,config:s}=lt();function l(p){const m=`config.${p}`,h=Sc(p);return s.value.transformLabel?s.value.transformLabel(h,m):h}function c(p){if(typeof p!="string"||!p)return!1;try{const m=new URL(p);return(m.protocol==="http:"||m.protocol==="https:")&&!!m.host}catch{return!1}}const d=t.computed(()=>{if(!i.value)return{hasError:!1,message:""};const p=a.config,m=p?.[`${n.scope}_token_signing`],h=p?.[`${n.scope}_token_upstream_header`];if(!m)return{hasError:!1,message:""};if(typeof h!="string"||h==="")return{hasError:!1,message:""};const y=p?.[`${n.scope}_token_keyset`];return c(y)?{hasError:!1,message:""}:{hasError:!0,message:r("plugins.free-form.jwt-signer.keyset_url_required",{signingField:l(`${n.scope}_token_signing`),headerField:l(`${n.scope}_token_upstream_header`)})}}),u=t.computed(()=>d.value.hasError),f=t.computed(()=>d.value.message);return(p,m)=>(t.openBlock(),t.createBlock(Me,t.mergeProps(p.$attrs,{error:u.value,"error-message":f.value,name:e.name}),null,16,["error","error-message","name"]))}}),z3=Ce({component:t.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(e){const n=e,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=t.useSlots();return t.provide(Je.AUTOFILL_SLOT,o?.[Je.AUTOFILL_SLOT_NAME]),(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"render-rules":r}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:s})=>s==="config.access_token_keyset"},{default:t.withCtx(s=>[t.createVNode(PC,t.mergeProps(s,{scope:"access"}),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({path:s})=>s==="config.channel_token_keyset"},{default:t.withCtx(s=>[t.createVNode(PC,t.mergeProps(s,{scope:"channel"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(OC)]),_:1},16))}})}),H3=Ce({experimental:!0}),W3=Ce({experimental:!0,fieldRenderers:[{match:"config.message_by_lua_functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}},{match:"config.topics",component:dt,propsOverrides:{appearance:"tabs",stickyTabs:!0,itemLabel:(e,n)=>`#${n+1} Topic`}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),Y3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),J3=Ce({experimental:!0,fieldRenderers:[{match:"config.message_by_lua_functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),X3=Ce({experimental:!0}),Z3=Ce({experimental:!0,component:dC}),Q3=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),e4=Ce({experimental:!0}),t4=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),n4={class:"ff-collapsible-section"},r4={class:"ff-collapsible-section-header"},o4={class:"ff-collapsible-section-header-toggle"},i4={key:0,class:"ff-collapsible-section-content"},a4={key:0,class:"ff-collapsible-section-indent-guide"},ig=xe(t.defineComponent({__name:"CollapsibleSection",props:t.mergeModels({label:{}},{expanded:{type:Boolean,default:!0},expandedModifiers:{}}),emits:["update:expanded"],setup(e){const n=t.useModel(e,"expanded");return(r,o)=>(t.openBlock(),t.createElementBlock("div",n4,[t.createElementVNode("header",r4,[t.createElementVNode("div",o4,[t.createElementVNode("button",{class:"ff-collapsible-section-toggle-btn",type:"button",onClick:o[0]||(o[0]=t.withModifiers(i=>n.value=!n.value,["prevent","stop"]))},[t.createVNode(t.unref(Ne.ChevronRightIcon),{class:t.normalizeClass(["ff-collapsible-section-toggle-btn-trigger-icon",{"collapse-expanded":n.value}]),decorative:"",size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["class","size"])]),t.createVNode(t.unref(_e.KLabel),{class:"ff-collapsible-section-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1})])]),t.createVNode(xc,null,{default:t.withCtx(()=>[n.value?(t.openBlock(),t.createElementBlock("div",i4,[t.renderSlot(r.$slots,"default",{},void 0,!0)])):t.createCommentVNode("",!0)]),_:3}),n.value?(t.openBlock(),t.createElementBlock("div",a4)):t.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-39f2a44b"]]),s4={class:"ff-mb-subject"},l4={class:"ff-mb-attributes"},c4={class:"ff-metering-billing-inline-row"},d4={class:"ff-mb-queue"},u4=Ce({experimental:!0,component:xe(t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Qe(),i=t.inject(Je.FORMS_CONFIG),a=t.computed(()=>{const u=i?.geoApiServerUrl,f=u?new URL(u).hostname.split(".")[0]:null;return f?`https://${f}.api.konghq.com/v3/openmeter/events`:"https://{{region}}.api.konghq.com/v3/openmeter/events"}),s={hasValue:u=>!!u&&Object.keys(u).length>0,prepareFormData:u=>n.isEditing?u:i?.app==="konnect"&&!u?.config?.ingest_endpoint?{...u,config:{...u?.config,ingest_endpoint:a.value}}:u},l=t.ref(!0),c=t.ref(!0),d=t.ref(!0);return(u,f)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"form-config":s,"plugin-config-description":t.unref(o)("plugins.free-form.metering-and-billing.sections.plugin_config.description")}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:p})=>p==="config.meter_api_requests"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.meter_api_requests.description")}),null,16,["description"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.meter_ai_token_usage"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.meter_ai_token_usage.description")}),null,16,["description"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.ssl_verify"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.description"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.subject.look_up_value_in"},{default:t.withCtx(p=>[t.createVNode(St,t.mergeProps(p,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.help"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.subject.field"},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.help"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.label"),placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.timeout"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.keepalive"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_coalescing_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_coalescing_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.initial_retry_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.initial_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_retry_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_retry_time"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_time.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p.startsWith("config.attributes.")&&p.endsWith(".look_up_value_in")},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.look_up_value_in.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p.startsWith("config.attributes.")&&p.endsWith(".event_property_name")},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.event_property_name.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(ig,{expanded:l.value,"onUpdate:expanded":f[0]||(f[0]=p=>l.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.sections.metering.title")},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"config.meter_api_requests"}),t.createVNode(Xe,{name:"config.meter_ai_token_usage"})]),_:1},8,["expanded","label"]),t.createElementVNode("div",s4,[t.createVNode(Rt,{label:t.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"])]),t.createVNode(ig,{expanded:c.value,"onUpdate:expanded":f[1]||(f[1]=p=>c.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.title")},{default:t.withCtx(()=>[t.createElementVNode("div",l4,[t.createVNode(dt,{"hide-label":"",name:"config.attributes"})])]),_:1},8,["expanded","label"]),t.createVNode(ig,{expanded:d.value,"onUpdate:expanded":f[2]||(f[2]=p=>d.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.sections.ingestion.title")},{default:t.withCtx(()=>[t.createVNode(Me,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.ingest_endpoint.help"),name:"config.ingest_endpoint"},null,8,["help"]),t.createVNode(Xe,{name:"config.api_token"}),t.createVNode(Xe,{name:"config.ssl_verify"}),t.createElementVNode("div",c4,[t.createVNode(Xe,{name:"config.timeout"}),t.createVNode(Xe,{name:"config.keepalive"})])]),_:1},8,["expanded","label"]),t.createVNode(Yo,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",d4,[t.createVNode(t.unref(_e.KLabel),{class:"ff-mb-queue-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.metering-and-billing.sections.queue.title")),1)]),_:1}),t.createVNode(Rt,{"as-child":"",name:"config.queue","reset-label-path":"reset"})])]),_:1})]),_:1},16,["plugin-config-description"]))}}),[["__scopeId","data-v-78972733"]])}),f4=Ce({experimental:!0,fieldRenderers:[{match:"config.api_specification",component:Me,propsOverrides:{multiline:!0,rows:15}}]}),p4=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),m4=Ce({experimental:!0,fieldRenderers:[{match:"config.api_spec",component:Me,propsOverrides:{multiline:!0,rows:15}}]}),g4=Ce({experimental:!0}),h4=Ce({experimental:!0}),y4=Ce({experimental:!0});function _4(e){const{consumer_claim:n,consumer_claims:r}=e;return Array.isArray(r)&&r.length>0||n==null||n===""?null:[Array.isArray(n)?n:[n]]}const b4={key:0,class:"oidc-auth-methods"},k4={class:"auth-methods-hint"},w4={class:"session-management-section"},C4={class:"session-radio-group"},E4={key:1,class:"oidc-auth-methods"},N4={class:"auth-method-container"},ag=["authorization_code","bearer","client_credentials","password","introspection","userinfo","kong_oauth2","refresh_token"],VC=["bearer","client_credentials","introspection","userinfo"],S4="identity.konghq",$C=e=>typeof e=="string"&&e.includes(S4),RC=xe(t.defineComponent({__name:"AuthMethodsField",props:{principalsMode:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),o=t.inject(Je.FORMS_CONFIG),i=t.computed(()=>o?.app==="konnect"),{formData:a}=lt(),s=t.computed(()=>a.config?.auth_methods??null),l=t.computed(()=>({authorization_code:r("plugins.free-form.openid-connect.auth_methods.methods.authorization_code"),bearer:r("plugins.free-form.openid-connect.auth_methods.methods.bearer"),client_credentials:r("plugins.free-form.openid-connect.auth_methods.methods.client_credentials"),password:r("plugins.free-form.openid-connect.auth_methods.methods.password"),introspection:r("plugins.free-form.openid-connect.auth_methods.methods.introspection"),userinfo:r("plugins.free-form.openid-connect.auth_methods.methods.userinfo"),kong_oauth2:r("plugins.free-form.openid-connect.auth_methods.methods.kong_oauth2"),refresh_token:r("plugins.free-form.openid-connect.auth_methods.methods.refresh_token")})),c=t.computed(()=>n.principalsMode!==null&&n.principalsMode!==void 0?n.principalsMode==="kong-identity":$C(a.config?.issuer)),d=t.computed(()=>(i.value&&c.value?ag.filter(_=>VC.includes(_)):ag).map(_=>({value:_,label:l.value[_]}))),u=t.computed(()=>(s.value??[]).filter(g=>g!=="session")),f=t.computed(()=>(s.value??[]).includes("session"));function p(g,_){a.config&&(a.config.auth_methods=_?[...g,"session"]:[...g])}function m(g){p(g,f.value)}function h(g,_){const k=_?[...new Set([...u.value,g])]:u.value.filter(b=>b!==g);p(k,f.value)}function y(g){p(u.value,g)}return(g,_)=>i.value?(t.openBlock(),t.createElementBlock("div",b4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.label")),1)]),_:1}),(t.openBlock(),t.createBlock(t.unref(_e.KMultiselect),{key:e.principalsMode??"initial",class:"auth-methods-multiselect","data-testid":"auth-methods-multiselect",items:d.value,"model-value":u.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.auth_methods.placeholder"),"onUpdate:modelValue":m},null,8,["items","model-value","placeholder"])),t.createElementVNode("p",k4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.hint")),1),t.createElementVNode("div",w4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.label")),1)]),_:1}),t.createElementVNode("div",C4,[t.createVNode(t.unref(_e.KRadio),{"data-testid":"session-radio-use",description:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.use_description"),label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.use_label"),"model-value":f.value,"selected-value":!0,onChange:_[0]||(_[0]=k=>y(!0))},null,8,["description","label","model-value"]),t.createVNode(t.unref(_e.KRadio),{"data-testid":"session-radio-no-use",description:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.no_use_description"),label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.no_use_label"),"model-value":f.value,"selected-value":!1,onChange:_[1]||(_[1]=k=>y(!1))},null,8,["description","label","model-value"])])])])):(t.openBlock(),t.createElementBlock("div",E4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.km_label")),1)]),_:1}),t.createElementVNode("div",N4,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,k=>(t.openBlock(),t.createElementBlock("div",{key:k.value,class:"auth-method"},[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":`auth-method-checkbox-${k.value}`,"model-value":u.value.includes(k.value),"onUpdate:modelValue":b=>h(k.value,b)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(k.label),1)]),_:2},1032,["data-testid","model-value","onUpdate:modelValue"])]))),128))]),t.createVNode(t.unref(_e.KInputSwitch),{"data-testid":"session-management-switch",label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.switch_label"),"model-value":f.value,"onUpdate:modelValue":y},null,8,["label","model-value"])]))}}),[["__scopeId","data-v-ec201579"]]),A4={class:"oidc-client-jwk-field"},x4=xe(t.defineComponent({__name:"ClientJwkField",props:{name:{}},setup(e){const{i18n:{t:n}}=Qe();return(r,o)=>(t.openBlock(),t.createElementBlock("div",A4,[t.createVNode(dt,{appearance:"tabs","item-label":(i,a)=>`#${a+1} Client JWK`,name:e.name,"sticky-tabs":""},{label:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.openid-connect.advanced_fields.client_jwk_link_label"))+" ",1),t.createVNode(t.unref(_e.KExternalLink),{class:"oidc-client-jwk-link",href:"https://developer.konghq.com/plugins/openid-connect/reference/#schema--config-client-jwk"},{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createTextVNode(" More info ",-1)])]),_:1})]),_:1},8,["item-label","name"])]))}}),[["__scopeId","data-v-60061242"]]),I4={class:"principals-field-group"},v4={class:"principals-field-group"},T4={class:"lookup-method-item"},B4={class:"lookup-method-item-label"},O4={class:"lookup-method-item-description"},P4={class:"principals-field-group"},V4={class:"principals-field-group"},$4={class:"principals-learn-more-link",href:"https://developer.konghq.com/identity/principals/",rel:"noopener noreferrer",target:"_blank"},R4={class:"principals-field-group"},L4={class:"principals-learn-more-link",href:"https://developer.konghq.com/identity/principals/",rel:"noopener noreferrer",target:"_blank"},LC=xe(t.defineComponent({__name:"PrincipalLookupSettings",props:{disabled:{type:Boolean},dataPlaneIncompatible:{type:Boolean},showPrincipalsFields:{type:Boolean,default:!0},onEnabledChange:{type:Function}},setup(e){const n=t.createPropsRestProxy(e,["showPrincipalsFields"]),{i18n:{t:r}}=Qe(),o=t.inject(Vs,void 0),{formData:i,getEmptyValue:a}=lt();function s(I){return t.computed({get:()=>i.config?.principals?.[I],set:A=>{i.config?.principals&&(i.config.principals[I]=A)}})}const l=s("enabled"),c=s("principal_by"),d=s("principal_claim"),u=s("error_on_miss"),f=s("match_consumer"),p=s("match_consumer_groups"),m=[{label:r("plugins.free-form.openid-connect.lookup.method.kong_identity_label"),value:"kong-identity",description:r("plugins.free-form.openid-connect.lookup.method.kong_identity_description")},{label:r("plugins.free-form.openid-connect.lookup.method.custom_identity_label"),value:"custom-identity",description:r("plugins.free-form.openid-connect.lookup.method.custom_identity_description")}],h=I=>I==null||I===""?!1:Array.isArray(I)?I.length>0:!0,y=t.ref(h(c.value)?"custom-identity":"kong-identity"),g=t.computed(()=>l.value===!0),_=t.computed(()=>n.disabled||!g.value),k=t.computed(()=>y.value==="custom-identity"?r("plugins.free-form.openid-connect.lookup.token_claim.help_custom"):r("plugins.free-form.openid-connect.lookup.token_claim.help"));function b(I){return Array.isArray(I)&&I.length>0?I.map(A=>A.replace(/[\\.]/g,v=>`\\${v}`)).join("."):typeof I=="string"&&I?I:""}function N(I){if(!I)return a();const A=[];let v="";for(let O=0;O<I.length;O++){const $=I[O];$==="\\"&&(I[O+1]==="."||I[O+1]==="\\")?(v+=I[O+1],O++):$==="."?(A.push(v),v=""):v+=$}A.push(v);const V=A.map(O=>O.trim()).filter(Boolean);return V.length>0?V:a()}!o?.value&&!h(d.value)&&(d.value=["sub"]);const C=t.ref(b(d.value));function w(I){C.value=I,d.value=N(I.trim())}t.watch(d,I=>{const A=N(C.value.trim());Kt(I??null,A??null)||(C.value=b(I))});function S(I){f.value=I,I||(p.value=!1)}function x(I){y.value=I??"kong-identity",I!=="custom-identity"&&(c.value=a(),d.value=a())}function T(I){n.onEnabledChange?n.onEnabledChange(I):l.value=I}return(I,A)=>(t.openBlock(),t.createBlock(t.unref(_e.KCollapse),{class:"principals-advanced-settings","data-testid":"principals-advanced-settings","trigger-label":t.unref(r)("plugins.free-form.openid-connect.lookup.collapse_label")},{default:t.withCtx(()=>[e.showPrincipalsFields?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(I.$slots,"banner",{},void 0,!0),e.dataPlaneIncompatible?(t.openBlock(),t.createBlock(t.unref(_e.KAlert),{key:0,appearance:"warning",class:"principals-dp-version-alert","data-testid":"oidc-principals-dp-version-alert",message:t.unref(r)("plugins.free-form.openid-connect.principals.dp_version_alert"),"show-icon":""},null,8,["message"])):t.createCommentVNode("",!0),t.createElementVNode("div",I4,[t.createVNode(t.unref(_e.KInputSwitch),{"data-testid":"use-principal-lookup",disabled:e.disabled,"model-value":g.value,"onUpdate:modelValue":T},{label:t.withCtx(()=>[t.createVNode(t.unref(_e.KLabel),{info:t.unref(r)("plugins.free-form.openid-connect.lookup.toggle_info"),"tooltip-attributes":{maxWidth:"300"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.toggle_label")),1)]),_:1},8,["info"])]),_:1},8,["disabled","model-value"])]),t.createElementVNode("div",v4,[t.createVNode(t.unref(_e.KSelect),{class:"principals-lookup-method-select","data-testid":"principals-lookup-method",disabled:_.value,help:t.unref(r)("plugins.free-form.openid-connect.lookup.method.help"),items:m,label:t.unref(r)("plugins.free-form.openid-connect.lookup.method.label"),"model-value":y.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.method.placeholder"),"onUpdate:modelValue":x},{"item-template":t.withCtx(({item:v})=>[t.createElementVNode("div",T4,[t.createElementVNode("div",B4,t.toDisplayString(v.label),1),t.createElementVNode("div",O4,t.toDisplayString(v.description),1)])]),_:1},8,["disabled","help","label","model-value","placeholder"]),y.value==="custom-identity"?(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:0,class:"principals-custom-identity-name-input","data-testid":"principals-custom-identity-name",disabled:_.value,help:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.help"),label:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.label"),"model-value":t.unref(c)??void 0,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.placeholder"),"onUpdate:modelValue":A[0]||(A[0]=v=>c.value=v)},null,8,["disabled","help","label","model-value","placeholder"])):t.createCommentVNode("",!0),t.createVNode(t.unref(_e.KInput),{class:"principals-token-claim-input","data-testid":"principals-token-claim",disabled:_.value,help:k.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.token_claim.label"),"model-value":C.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.token_claim.placeholder"),"onUpdate:modelValue":w},null,8,["disabled","help","label","model-value","placeholder"])]),t.createElementVNode("div",P4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.label")),1)]),_:1}),t.createVNode(t.unref(_e.KRadio),{"data-testid":"principals-error-on-miss-true",description:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.reject_description"),disabled:_.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.reject_label"),"model-value":t.unref(u)??null,"selected-value":!0,onChange:A[1]||(A[1]=v=>u.value=!0)},null,8,["description","disabled","label","model-value"]),t.createVNode(t.unref(_e.KRadio),{"data-testid":"principals-error-on-miss-false",description:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.continue_description"),disabled:_.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.continue_label"),"model-value":t.unref(u)??null,"selected-value":!1,onChange:A[2]||(A[2]=v=>u.value=!1)},null,8,["description","disabled","label","model-value"])]),t.createElementVNode("div",V4,[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":"principals-match-consumer",disabled:_.value,"model-value":t.unref(f)??!1,"onUpdate:modelValue":S},{description:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.description"))+" ",1),t.createElementVNode("a",$4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.link")),1)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.label"))+" ",1)]),_:1},8,["disabled","model-value"])]),t.createElementVNode("div",R4,[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":"principals-match-consumer-groups",disabled:_.value||!t.unref(f),"model-value":t.unref(p)??!1,"onUpdate:modelValue":A[3]||(A[3]=v=>p.value=v)},{description:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.description"))+" ",1),t.createElementVNode("a",L4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.link")),1)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.label"))+" ",1)]),_:1},8,["disabled","model-value"])])],64)):t.createCommentVNode("",!0),t.renderSlot(I.$slots,"default",{},void 0,!0)]),_:3},8,["trigger-label"]))}}),[["__scopeId","data-v-fdffea21"]]),D4={class:"oidc-principals-section","data-testid":"oidc-principals-section"},M4={class:"principals-header"},F4={class:"principals-description"},j4={class:"oidc-auth-mode-radio-group","data-testid":"oidc-auth-mode-radio-group"},U4={class:"auth-mode-card-content"},K4={class:"auth-mode-card-label"},q4={class:"auth-mode-card-description"},G4={class:"auth-mode-card-content"},z4={class:"auth-mode-card-label"},H4={class:"auth-mode-card-description"},W4={key:1,class:"principals-create-guide","data-testid":"principals-create-guide"},Y4={class:"principals-create-guide-title"},J4={class:"principals-create-guide-description"},X4={class:"principals-create-guide-actions"},Z4={class:"create-action-content"},Q4={class:"create-action-hint"},eG={class:"create-action-content"},tG={class:"create-action-hint"},nG={class:"principals-client-secret-wrapper"},rG=["aria-label","disabled","onClick"],oG={class:"external-client-field"},iG=["innerHTML"],aG={class:"external-client-field"},sG=["innerHTML"],lG=["aria-label","disabled","onClick"],cG={key:1,class:"principals-create-guide","data-testid":"principals-create-guide"},dG={class:"principals-create-guide-title"},uG={class:"principals-create-guide-description"},fG={class:"principals-create-guide-actions"},Mr="kong-identity",gd="external",pG="/v1/auth-servers/_computed",mG=xe(t.defineComponent({__name:"PrincipalsSection",emits:["mode-change","click:learn-more","click:create-entity"],setup(e,{emit:n}){const r={major:3,minor:15},o=Be=>{const[Ve,$e]=Be.split(".").map(Number);return Number.isNaN(Ve)||Number.isNaN($e)?!1:Ve!==r.major?Ve<r.major:$e<r.minor},i=n,{i18n:{t:a}}=Qe(),s=t.inject(Je.FORMS_CONFIG),l=t.inject(Je.AUTOFILL_SLOT,void 0),c=t.inject(Vs,void 0),d=t.computed(()=>c?.value??!1),{formData:u,getLabelAttributes:f,getEmptyOrDefault:p,getEmptyValue:m}=lt(),h=t.computed({get:()=>u.config?.issuer??null,set:Be=>{u.config&&(u.config.issuer=Be)}}),y=t.computed({get:()=>u.config?.client_id??null,set:Be=>{u.config&&(u.config.client_id=Be)}}),g=t.computed({get:()=>u.config?.client_secret??null,set:Be=>{u.config&&(u.config.client_secret=Be)}}),_=t.ref(d.value?$C(h.value)?Mr:gd:Mr),k=t.ref([]),b=t.ref(!1),N=t.ref([]),C=t.ref(!1),w=t.ref(null),S=t.ref(null);let x=!1;const T=t.computed(()=>f("config.client_id").info),I=t.computed(()=>f("config.client_secret").info),A=t.computed(()=>k.value.map(Be=>({label:Be.name,value:Be.id}))),v=t.computed(()=>N.value.map(Be=>({label:Be.name,value:Be.client_id||Be.id}))),V=t.computed(()=>{const Be=y.value;return Array.isArray(Be)&&Be.length>0?Be:[null]}),O=t.computed(()=>{const Be=g.value;return Array.isArray(Be)&&Be.length>0?Be:[null]}),$=t.computed(()=>Q.value&&!w.value||V.value.length<=1),Q=t.computed(()=>s?.isKongIdentityAuthServersAvailable!==!1),pe=t.computed(()=>s?.canCreateAuthServer!==!1),H=t.computed(()=>s?.canCreateAuthServerClient!==!1),j=t.computed(()=>s?.principalsCreationGuideVisible),D=t.computed(()=>j.value===!0),ee=t.computed(()=>j.value===void 0),K=t.computed(()=>!D.value&&(s?.dataPlaneVersions??[]).some(o));t.watch(()=>s?.principalsDirectoryName,Be=>{d.value||_.value!==Mr||Be==null||u.config?.principals&&(u.config.principals.directory=Be)},{immediate:!0}),t.onMounted(()=>{d.value||t.nextTick(()=>{je(_.value),i("mode-change",_.value)}),J()});async function J(){if(s?.isKongIdentityAuthServersAvailable!==!1)try{b.value=!0;const{axiosInstance:Be}=ue.useAxios(s?.axiosRequestConfig),Ve=`${s?.apiBaseUrl}${pG}`,$e=await Be.get(Ve);if(k.value=$e.data?.data??[],h.value&&!w.value){const Ke=k.value.find(de=>de.issuer===h.value)||null;Ke&&(x=!0,w.value=Ke,ce(Ke.id))}}catch{k.value=[]}finally{b.value=!1}}async function ce(Be){try{C.value=!0;const{axiosInstance:Ve}=ue.useAxios(s?.axiosRequestConfig),$e=`${s?.apiBaseUrl}/v1/auth-servers/${Be}/clients`,Ke=await Ve.get($e);N.value=Ke.data?.data??[]}catch{N.value=[]}finally{C.value=!1}}function z(Be){if(x){x=!1;return}w.value=k.value.find(Ve=>Ve.id===Be)||null,w.value?.issuer&&(h.value=w.value.issuer),y.value=[null],g.value=[null],N.value=[],C.value=!!Be,Be&&ce(Be)}function oe(Be,Ve){const $e=[...V.value];$e[Be]=Ve,y.value=$e}function Pe(Be,Ve){const $e=[...O.value];$e[Be]=Ve,g.value=$e}function Ee(){y.value=[...V.value,null],g.value=[...O.value,null]}function Ge(Be){if(V.value.length<=1)return;const Ve=[...V.value];Ve.splice(Be,1),y.value=Ve;const $e=[...O.value];$e.splice(Be,1),g.value=$e}function se(Be){const Ve=V.value;return v.value.map($e=>({...$e,disabled:Ve.some((Ke,de)=>de!==Be&&Ke===$e.value)}))}function X(){return u.config?.principals??p("config.principals")??{}}function he(Be){u.config&&(u.config.principals={...X(),enabled:Be})}function ve(){const Be=S.value;S.value=null,Be==="authServer"?i("click:create-entity",{type:"auth-server"}):Be==="client"?i("click:create-entity",{type:"client",authServerId:w.value?.id}):Be==="principal"&&i("click:create-entity",{type:"principal"})}function je(Be){const Ve=(u.config?.auth_methods??[]).includes("session"),$e=Be===gd||!d.value?!0:Ve,Ke=Be===Mr?[...VC]:[...ag];$e&&Ke.push("session"),u.config&&(u.config.auth_methods=Ke)}function qe(Be){if(u.config&&(u.config.client_id=m(),u.config.client_secret=m(),u.config.issuer=m()),u.config){const Ve=X(),$e=Be===Mr?s?.principalsDirectoryName??Ve.directory:"default";u.config.principals={...Ve,enabled:!1,error_on_miss:!0,match_consumer:!0,match_consumer_groups:!0,directory:$e}}Be===gd&&(w.value=null,N.value=[]),je(Be),i("mode-change",Be)}return(Be,Ve)=>(t.openBlock(),t.createElementBlock("div",D4,[t.createElementVNode("div",M4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.header")),1),t.createElementVNode("div",F4,[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.description"))+" ",1),t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.learn_more")),1)]),_:1})]),t.createElementVNode("div",j4,[t.createVNode(t.unref(_e.KRadio),{modelValue:_.value,"onUpdate:modelValue":Ve[0]||(Ve[0]=$e=>_.value=$e),card:"","card-orientation":"horizontal","data-testid":"oidc-auth-mode-kong-identity","selected-value":Mr,onChange:qe},{default:t.withCtx(()=>[t.createElementVNode("div",U4,[t.createVNode(t.unref(Ne.KeyIcon),{size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]),t.createElementVNode("div",K4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.kong_identity_label")),1),t.createElementVNode("div",q4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.kong_identity_description")),1)])]),_:1},8,["modelValue"]),t.createVNode(t.unref(_e.KRadio),{modelValue:_.value,"onUpdate:modelValue":Ve[1]||(Ve[1]=$e=>_.value=$e),card:"","card-orientation":"horizontal","data-testid":"oidc-auth-mode-external","selected-value":gd,onChange:qe},{default:t.withCtx(()=>[t.createElementVNode("div",G4,[t.createVNode(t.unref(Ne.WorldIcon),{size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]),t.createElementVNode("div",z4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.external_label")),1),t.createElementVNode("div",H4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.external_description")),1)])]),_:1},8,["modelValue"])]),ee.value&&_.value===Mr?(t.openBlock(),t.createBlock(t.unref(_e.KSkeleton),{key:0,class:"principals-create-guide-skeleton","data-testid":"principals-create-guide-loading"})):D.value&&_.value===Mr?(t.openBlock(),t.createElementBlock("div",W4,[t.createElementVNode("div",Y4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.title")),1),t.createElementVNode("div",J4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.description")),1),t.createElementVNode("div",X4,[t.createVNode(t.unref(_e.KButton),{appearance:"primary","data-testid":"principals-create-principal",onClick:Ve[2]||(Ve[2]=$e=>S.value="principal")},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.create")),1)]),_:1}),t.createVNode(t.unref(_e.KButton),{appearance:"secondary","data-testid":"principals-learn-more",onClick:Ve[3]||(Ve[3]=$e=>Be.$emit("click:learn-more","kong-identity"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.learn_more")),1)]),_:1})])])):t.createCommentVNode("",!0),_.value===Mr?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[Q.value?(t.openBlock(),t.createBlock(t.unref(_e.KSelect),{key:0,class:"principals-directory-select","data-testid":"principals-directory-select","enable-filtering":"",items:A.value,label:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.label"),"label-attributes":{info:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.info"),tooltipAttributes:{maxWidth:"300"}},loading:b.value,"model-value":w.value?.id,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.placeholder"),required:"","onUpdate:modelValue":z},t.createSlots({_:2},[pe.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("button",{class:"create-action","data-testid":"create-auth-server-action",type:"button",onClick:Ve[4]||(Ve[4]=t.withModifiers($e=>S.value="authServer",["stop"]))},[t.createVNode(t.unref(Ne.AddIcon),{size:`var(--kui-icon-size-20, ${t.unref(hi)})`},null,8,["size"]),t.createElementVNode("div",Z4,[t.createElementVNode("span",null,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.create")),1),t.createElementVNode("div",Q4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.create_hint")),1)])])]),key:"0"}:void 0]),1032,["items","label","label-attributes","loading","model-value","placeholder"])):(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:1,"data-testid":"kong-identity-issuer-input",help:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.no_access_help"),label:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.label"),"label-attributes":{info:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.info"),tooltipAttributes:{maxWidth:"300"}},"model-value":h.value??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.issuer_placeholder"),required:"","onUpdate:modelValue":Ve[5]||(Ve[5]=$e=>h.value=$e)},null,8,["help","label","label-attributes","model-value","placeholder"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(V.value,($e,Ke)=>(t.openBlock(),t.createElementBlock("div",{key:Ke,class:t.normalizeClass(["client-row",{"client-row-with-label":Ke===0}])},[Q.value?(t.openBlock(),t.createBlock(t.unref(_e.KSelect),{key:1,class:"principals-client-select","data-testid":"principals-client-select",disabled:!w.value,"enable-filtering":"",items:se(Ke),label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.label"):void 0,loading:C.value,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},t.createSlots({_:2},[H.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("button",{class:"create-action","data-testid":"create-client-action",type:"button",onClick:Ve[6]||(Ve[6]=t.withModifiers(de=>S.value="client",["stop"]))},[t.createVNode(t.unref(Ne.AddIcon),{size:`var(--kui-icon-size-20, ${t.unref(hi)})`},null,8,["size"]),t.createElementVNode("div",eG,[t.createElementVNode("span",null,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.create")),1),t.createElementVNode("div",tG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.create_hint")),1)])])]),key:"0"}:void 0]),1032,["disabled","items","label","loading","model-value","placeholder","onUpdate:modelValue"])):(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:0,class:"principals-client-select","data-testid":"principals-client-id-input",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.label"):void 0,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.id_placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},null,8,["label","model-value","placeholder","onUpdate:modelValue"])),t.createElementVNode("div",nG,[t.createVNode(t.unref(_e.KInput),{class:"principals-client-secret","data-testid":"principals-client-secret",disabled:Q.value&&!w.value,label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_label"):void 0,"model-value":O.value[Ke]??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_placeholder"),"show-password-mask-toggle":"",type:"password","onUpdate:modelValue":de=>Pe(Ke,de)},null,8,["disabled","label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_secret",referenceable:!0},update:de=>Pe(Ke,de),value:O.value[Ke]},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("button",{"aria-label":t.unref(a)("plugins.free-form.openid-connect.principals.client.remove"),class:"remove-client-btn","data-testid":"remove-client-action",disabled:$.value,type:"button",onClick:de=>Ge(Ke)},[t.createVNode(t.unref(Ne.CloseIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])],8,rG)],2))),128)),t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",class:"add-client-inline","data-testid":"add-client-action",disabled:Q.value&&!w.value,icon:"",type:"button",onClick:Ve[7]||(Ve[7]=$e=>Ee())},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.add")),1)]),_:1},8,["disabled"]),t.createVNode(LC,{"data-plane-incompatible":K.value,"on-enabled-change":he},{default:t.withCtx(()=>[t.renderSlot(Be.$slots,"default",{},void 0,!0)]),_:3},8,["data-plane-incompatible"])],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(V.value,($e,Ke)=>(t.openBlock(),t.createElementBlock("div",{key:Ke,class:t.normalizeClass(["client-row",{"client-row-with-label":Ke===0}])},[t.createElementVNode("div",oG,[t.createVNode(t.unref(_e.KInput),{class:"external-client-input","data-testid":"external-client-id",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.id_label"):void 0,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.id_placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},t.createSlots({_:2},[Ke===0&&T.value?{name:"label-tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:T.value},null,8,iG)]),key:"0"}:void 0]),1032,["label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_id",referenceable:!0},update:de=>oe(Ke,de),value:$e},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("div",aG,[t.createVNode(t.unref(_e.KInput),{class:"external-client-input","data-testid":"external-client-secret",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_label"):void 0,"model-value":O.value[Ke]??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_placeholder"),"show-password-mask-toggle":"",type:"password","onUpdate:modelValue":de=>Pe(Ke,de)},t.createSlots({_:2},[Ke===0&&I.value?{name:"label-tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:I.value},null,8,sG)]),key:"0"}:void 0]),1032,["label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_secret",referenceable:!0},update:de=>Pe(Ke,de),value:O.value[Ke]},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("button",{"aria-label":t.unref(a)("plugins.free-form.openid-connect.principals.client.remove"),class:"remove-client-btn","data-testid":"remove-external-client-action",disabled:V.value.length<=1,type:"button",onClick:de=>Ge(Ke)},[t.createVNode(t.unref(Ne.CloseIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])],8,lG)],2))),128)),t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",class:"add-client-inline","data-testid":"add-external-client-action",icon:"",type:"button",onClick:Ve[8]||(Ve[8]=$e=>Ee())},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.add")),1)]),_:1}),t.createVNode(Xe,{name:"config.issuer"}),t.createVNode(LC,{"data-plane-incompatible":K.value,"on-enabled-change":he},{banner:t.withCtx(()=>[j.value===void 0?(t.openBlock(),t.createBlock(t.unref(_e.KSkeleton),{key:0,class:"principals-create-guide-skeleton","data-testid":"principals-create-guide-loading"})):j.value?(t.openBlock(),t.createElementBlock("div",cG,[t.createElementVNode("div",dG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.title")),1),t.createElementVNode("div",uG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.description_external")),1),t.createElementVNode("div",fG,[t.createVNode(t.unref(_e.KButton),{appearance:"primary","data-testid":"principals-create-principal",onClick:Ve[9]||(Ve[9]=$e=>S.value="principal")},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.create")),1)]),_:1}),t.createVNode(t.unref(_e.KButton),{appearance:"secondary","data-testid":"principals-learn-more",onClick:Ve[10]||(Ve[10]=$e=>Be.$emit("click:learn-more","kong-identity"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.learn_more")),1)]),_:1})])])):t.createCommentVNode("",!0)]),default:t.withCtx(()=>[t.renderSlot(Be.$slots,"default",{},void 0,!0)]),_:3},8,["data-plane-incompatible"])],64)),t.createVNode(t.unref(_e.KPrompt),{"action-button-text":t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.action"),message:t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.message"),title:t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.title"),visible:!!S.value,onCancel:Ve[11]||(Ve[11]=$e=>S.value=null),onProceed:ve},null,8,["action-button-text","message","title","visible"])]))}}),[["__scopeId","data-v-31ec1f61"]]),gG=t.defineComponent({__name:"VerifySignatureField",props:{name:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),{value:o}=Ec(()=>n.name),i=t.computed(()=>o.value===!0?r("plugins.free-form.openid-connect.advanced_fields.verify_signature_description"):void 0);return(a,s)=>(t.openBlock(),t.createBlock(en,{description:i.value,name:e.name},null,8,["description","name"]))}}),hG={class:"oidc-tab-fields"},yG={class:"oidc-tab-header"},_G={class:"oidc-tab-header-title"},bG={class:"oidc-tab-header-description"},kG={class:"oidc-tab-fields"},wG={class:"oidc-tab-header"},CG={class:"oidc-tab-header-title"},EG={class:"oidc-tab-header-description"},NG={class:"oidc-tab-fields"},SG={class:"oidc-tab-header"},AG={class:"oidc-tab-header-title"},xG={class:"oidc-tab-header-description"},IG=Ce({experimental:!0,component:xe(t.defineComponent({__name:"OpenidConnectForm",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:{}},emits:["click:learn-more","click:create-entity"],setup(e,{emit:n}){const r=[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}],o=["client_id","client_secret","issuer","auth_methods","scopes_claim","scopes_required","audience_claim","audience_required","roles_claim","roles_required","groups_claim","groups_required","authenticated_groups_claim","consumer_claim","principals"],i={dependencies:{"config.token_exchange.subject_token_issuers.*.jwks_uri":["config.token_exchange.subject_token_issuers.*.verify_signature",!0],"config.cluster_cache_redis.cloud_authentication.aws_cache_name":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_region":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_is_serverless":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_access_key_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_secret_access_key":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_assume_role_arn":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_role_session_name":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.gcp_service_account_json":["config.cluster_cache_redis.cloud_authentication.auth_provider","gcp"],"config.cluster_cache_redis.cloud_authentication.azure_client_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.azure_client_secret":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.azure_tenant_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.oauth":["config.cluster_cache_redis.cloud_authentication.auth_provider","oauth"],"config.cluster_cache_redis.cloud_authentication.oauth.username":["config.cluster_cache_redis.cloud_authentication.oauth.grant_type","password"],"config.cluster_cache_redis.cloud_authentication.oauth.password":["config.cluster_cache_redis.cloud_authentication.oauth.grant_type","password"],"config.redis":["config.session_storage","redis"]},bundles:[["config.token_exchange.subject_token_issuers.*.verify_signature","config.token_exchange.subject_token_issuers.*.jwks_uri"],["config.session_storage","config.redis"]]},{i18n:{t:a}}=Qe(),s=e,l=n,c=t.useSlots();t.provide(Je.AUTOFILL_SLOT,c?.[Je.AUTOFILL_SLOT_NAME]),t.provide(Vs,t.computed(()=>s.isEditing));const d=t.inject(Je.FORMS_CONFIG),u=t.computed(()=>d?.app==="konnect"),f=dd("openid-connect"),p=t.computed(()=>f?.source==="ai-manager"),m=t.inject(Bn.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),h=t.computed(()=>!!s.schema.fields.find(S=>"config"in S)?.config?.fields?.some(S=>"principals"in S)),y=t.computed(()=>u.value&&m&&h.value),g=t.ref(null),_=/^(?:\$\.)?config\.client_jwk\.\d+\.([^.]+)$/,k={transformLabel:(w,S)=>_.exec(S)?.[1]??w},b={"config.upstream_headers":"Upstream header","config.downstream_headers":"Downstream header","config.redis.sentinel_nodes":"Sentinel node","config.redis.cluster_nodes":"Cluster node","config.cluster_cache_redis.sentinel_nodes":"Sentinel node","config.cluster_cache_redis.cluster_nodes":"Cluster node"};function N(w,S){const x=w.startsWith("$.")?w.slice(2):w;return`#${S+1} ${b[x]}`}const C=new Set(["config.unauthorized_error_message","config.forbidden_error_message","config.client_jwk.*.x5c.*"]);return t.onMounted(()=>{const w=s.model?.config,S=_4({consumer_claim:w?.consumer_claim,consumer_claims:w?.consumer_claims});S!==null&&s.onFormChange({config:{consumer_claims:S}}),p.value&&!s.isEditing&&!w?.cache_tokens_salt&&s.onFormChange({config:{cache_tokens_salt:iw(32)}})}),(w,S)=>(t.openBlock(),t.createBlock(On,t.mergeProps(s,{"form-config":k,"render-rules":i}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:x})=>x==="config.client_jwk"},{default:t.withCtx(x=>[t.createVNode(x4,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x==="config.token_exchange.subject_token_issuers.*.verify_signature"},{default:t.withCtx(x=>[t.createVNode(gG,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x in b},{default:t.withCtx(x=>[t.createVNode(dt,t.mergeProps(x,{appearance:"tabs","item-label":(T,I)=>N(x.name,I)}),null,16,["item-label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>t.unref(C).has(x)},{default:t.withCtx(x=>[t.createVNode(Me,t.mergeProps(x,{multiline:""}),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({path:x})=>x==="config.cache_tokens_salt"},{default:t.withCtx(x=>[t.createVNode(Me,t.mergeProps(x,{required:p.value}),null,16,["required"])]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x==="config.token_exchange.subject_token_issuers"},{default:t.withCtx(x=>[t.createVNode(dt,t.mergeProps(x,{appearance:"tabs","item-label":(T,I)=>`#${I+1} Issuer`}),null,16,["item-label"])]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(t.unref(_e.KTabs),{tabs:r},{"common-anchor":t.withCtx(()=>[...S[3]||(S[3]=[t.createElementVNode("span",{"data-testid":"oidc-tab-common"},"Common",-1)])]),"authorization-anchor":t.withCtx(()=>[...S[4]||(S[4]=[t.createElementVNode("span",{"data-testid":"oidc-tab-authorization"},"Authorization",-1)])]),"advanced-anchor":t.withCtx(()=>[...S[5]||(S[5]=[t.createElementVNode("span",{"data-testid":"oidc-tab-advanced"},"Advanced",-1)])]),common:t.withCtx(()=>[t.createElementVNode("div",hG,[t.createElementVNode("div",yG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/reference/"},{default:t.withCtx(()=>[t.createElementVNode("span",_G,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.common.title")),1)]),_:1}),t.createElementVNode("p",bG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.common.description")),1)]),y.value?(t.openBlock(),t.createBlock(mG,{key:0,"onClick:createEntity":S[0]||(S[0]=x=>l("click:create-entity",x)),"onClick:learnMore":S[1]||(S[1]=x=>l("click:learn-more",x)),onModeChange:S[2]||(S[2]=x=>g.value=x)},{default:t.withCtx(()=>[t.createVNode(RC,{"principals-mode":g.value},null,8,["principals-mode"])]),_:1})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createVNode(Xe,{name:"config.client_id"}),t.createVNode(Xe,{name:"config.client_secret"}),t.createVNode(Xe,{name:"config.issuer"}),t.createVNode(RC,{"principals-mode":g.value},null,8,["principals-mode"])],64))])]),authorization:t.withCtx(()=>[t.createElementVNode("div",kG,[t.createElementVNode("div",wG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/#authorization"},{default:t.withCtx(()=>[t.createElementVNode("span",CG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.authorization.title")),1)]),_:1}),t.createElementVNode("p",EG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.authorization.description")),1)]),t.createVNode(Xe,{name:"config.scopes_claim"}),t.createVNode(Xe,{name:"config.scopes_required"}),t.createVNode(Xe,{name:"config.audience_claim"}),t.createVNode(Xe,{name:"config.audience_required"}),t.createVNode(Xe,{name:"config.roles_claim"}),t.createVNode(Xe,{name:"config.roles_required"}),t.createVNode(Xe,{name:"config.groups_claim"}),t.createVNode(Xe,{name:"config.groups_required"}),t.createVNode(Xe,{name:"config.authenticated_groups_claim"})])]),advanced:t.withCtx(()=>[t.createElementVNode("div",NG,[t.createElementVNode("div",SG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/"},{default:t.withCtx(()=>[t.createElementVNode("span",AG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.advanced.title")),1)]),_:1}),t.createElementVNode("p",xG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.advanced.description")),1)]),t.createVNode(Rt,{"as-child":"",name:"config",omit:o})])]),_:1})]),_:1},16))}}),[["__scopeId","data-v-0fee122c"]])}),vG=Ce({experimental:!0,fieldRenderers:[{match:"config.access_logs.custom_attributes_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),TG=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>["config.access.*","config.body_filter.*","config.header_filter.*","config.certificate.*","config.functions.*","config.log.*","config.rewrite.*","config.ws_handshake.*","config.ws_client_frame.*","config.ws_upstream_frame.*","config.ws_close.*"].includes(e),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),BG=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>["config.access.*","config.body_filter.*","config.header_filter.*","config.certificate.*","config.functions.*","config.log.*","config.rewrite.*","config.ws_handshake.*","config.ws_client_frame.*","config.ws_upstream_frame.*","config.ws_close.*"].includes(e),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),OG=Ce({experimental:!0}),PG=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}},fieldRenderers:[{match:({path:e})=>e==="config.methods"||e==="config.request_method",component:St,propsOverrides:{multiple:!0}}]}),VG=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>e==="config.methods"||e==="config.request_method",component:St,propsOverrides:{multiple:!0}}]}),$G={class:"rla-form-request-limits-subtitle"},RG={class:"rla-form-request-limits-content"},LG={class:"rla-form-window-type"},DG={class:"rla-form-request-limits-items"},MG={class:"rla-form-request-limits-row"},FG=["id"],jG={class:"rla-form-request-limits-actions"},UG={key:0,class:"rla-form-request-limits-examples"},KG={class:"rla-form-request-limits-examples-badges"},sg="config.window_type",qG=xe(t.defineComponent({__name:"RequestLimitsForm",setup(e){const{i18n:{t:n}}=Qe(),{formData:r,getSelectItems:o,getSchema:i,getEmptyOrDefault:a}=lt(),s=t.computed(()=>{const _=r.config?.limit?.map((k,b)=>({limit:k,windowSize:r.config?.window_size?.[b]}));return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Nc("request-limits",s),c=_=>{if(m.value=void 0,!r.config)return;const k=a("config.limit.0"),b=a("config.window_size.0");r.config.limit?.length||(r.config.limit=[k]),r.config.window_size?.length||(r.config.window_size=[b]),r.config.limit.splice(_+1,0,k),r.config.window_size.splice(_+1,0,b)},d=_=>{r.config&&(r.config.limit.splice(_,1),r.config.window_size.splice(_,1))},u=i(sg)?.default,f=t.computed(()=>xo(r,sg)),p=t.computed(()=>o(sg).sort((_,k)=>_.value===u?-1:k.value===u?1:0)),m=t.ref(),h={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(h,f.value)?h[f.value]:[]),g=(_,k)=>{if(k===m.value){t.nextTick(()=>{m.value=void 0}),r.config.limit=[],r.config.window_size=[];return}t.nextTick(()=>{m.value=k}),r.config.limit=[_.config.limit],r.config.window_size=[_.config.window_size]};return(_,k)=>{const b=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),C=t.resolveComponent("KBadge"),w=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",$G,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",RG,[t.createElementVNode("div",LG,[t.createVNode(tg,{items:p.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=x=>m.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",DG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(x,T)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,T)},[t.createVNode(b,{for:`rla-form-request-limits-item-${T}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:T+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",MG,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${T}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(Nt,{name:`$.config.limit.${T}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Nt,{name:`$.config.window_size.${T}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,FG),t.createElementVNode("div",jG,[t.createVNode(N,{appearance:"tertiary",disabled:s.value.length<=1,onClick:()=>d(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(N,{appearance:"tertiary",onClick:()=>c(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",UG,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",KG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(x,T)=>(t.openBlock(),t.createBlock(w,{key:`use-case-${T}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(C,{appearance:m.value===`${f.value}-${T}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>g(x,`${f.value}-${T}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-aa947728"]]),GG={id:"rla-form-error-legend",class:"rla-form-error-inputs"},zG=xe(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{i18n:{t:n}}=Qe();return(r,o)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"rla-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",GG,[t.createVNode(Nt,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(Me,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-7b36f1f7"]]),HG=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=lt(),r=t.inject(Je.FORMS_CONFIG),i=t.inject(oa)?.isEditing||!1,a=t.computed(()=>{if(r?.app!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=i?null:void 0)}),(s,l)=>(t.openBlock(),t.createBlock(xc,null,{default:t.withCtx(()=>[t.unref(n).config?.strategy==="redis"?(t.openBlock(),t.createBlock(sd,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):t.createCommentVNode("",!0)]),_:1}))}}),WG=t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n}=lt();return(r,o)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"identifier"}),t.createVNode(qG),t.createVNode(zG)]),_:1}),t.createVNode(Yo,{"hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(St,{multiple:!0,name:"config.compound_identifier"}),t.unref(n)("config.counter_key")?(t.openBlock(),t.createBlock(Xe,{key:0,name:"config.counter_key"})):t.createCommentVNode("",!0),t.createVNode(Xe,{name:"config.sync_rate"}),t.createVNode(Xe,{name:"config.namespace"}),t.createVNode(Xe,{name:"config.strategy"}),t.createVNode(HG),t.createVNode(Xe,{name:"config.dictionary_name"}),t.createVNode(Xe,{name:"config.lock_dictionary_name"}),t.createVNode(Xe,{name:"config.hide_client_headers"}),t.createVNode(Xe,{name:"config.retry_after_jitter_max"}),t.createVNode(Xe,{name:"config.header_name"}),t.createVNode(Xe,{name:"config.path"}),t.createVNode(Xe,{name:"config.throttling"}),t.createVNode(Xe,{name:"config.enforce_consumer_groups"}),t.createVNode(Xe,{name:"config.consumer_groups"}),t.createVNode(Xe,{name:"config.disable_penalty"})]),_:1})],64))}}),YG=Ce({experimental:!0,component:t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);function o(i,a){i.config?.namespace===null&&delete i.config.namespace,n.onFormChange(i,a)}return(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"on-form-change":o}),{default:t.withCtx(()=>[t.createVNode(WG)]),_:1},16))}})}),JG=Ce({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),XG=Ce({experimental:!0}),ZG="__request_callout_";function DC(){return ns(ZG)}const Rs="_callout_id",QG=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:r}=lt(),o=t.computed(()=>{const{callouts:s}=r.config;return s==null?[]:s.filter(({name:l})=>l&&l!==s[n.index]?.name)}),i=t.computed(()=>o.value.map(({[Rs]:s,name:l})=>({value:s,label:l}))),a=t.computed(()=>r.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(s=>i.value.some(l=>l.value===s))}),(s,l)=>(t.openBlock(),t.createBlock(Rt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(St,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Rt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(St,t.mergeProps(d,{items:t.unref(xp)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),e6=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=lt();function r(){const o=n.config.callouts[n.config.callouts.length-1];o&&(o[Rs]=DC())}return(o,i)=>(t.openBlock(),t.createBlock(dt,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:t.withCtx(({index:a,fieldName:s})=>[t.createVNode(QG,{"field-name":s,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),t6=t.defineComponent({__name:"ConfigForm",setup(e){return(n,r)=>(t.openBlock(),t.createBlock(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(e6),t.createVNode(Rt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Rt,{appearance:"card",name:"cache"},{redis:t.withCtx(o=>[t.createVNode(Rt,t.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}))}}),n6=Ce({component:xe(t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Qe();function i(c,d=!1){return c.reduce((u,{[Rs]:f,name:p})=>(d?u[p]=f:u[f]=p,u),{})}function a(c){const d=es(c);if(d.config?.callouts){const{callouts:u}=d.config;u.forEach(p=>{p.request.body.custom=p.request.body.custom??{},p[Rs]=DC()});const f=i(u,!0);u.forEach(p=>{p.depends_on=p.depends_on.map(m=>f[m])})}return d}const s={hasValue:c=>!!c&&Object.keys(c).length>0,prepareFormData:a};function l(c,d){if(!c)return;const u=es(c);if(!u.config?.callouts){n.onFormChange(u,d);return}const f=i(u.config.callouts);u.config.callouts=u.config.callouts.map(p=>{const{[Rs]:m,depends_on:h,...y}=p;return{depends_on:h.map(g=>f[g]).filter(g=>g!=null),...y}}),n.onFormChange(u,d)}return(c,d)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"form-config":s,"on-form-change":l}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(Me,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(o)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(f=>u.endsWith(f))},{default:t.withCtx(u=>[t.createVNode(dt,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(t6)]),_:1},16))}}),[["__scopeId","data-v-dc955662"]])}),r6=Ce({experimental:!0}),o6=Ce({experimental:!0}),i6=Ce({experimental:!0}),a6=Ce({experimental:!0}),s6=Ce({experimental:!0,fieldRenderers:[{match:"config.parameter_schema",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Parameter schema`}},{match:"config.body_schema",component:Me,propsOverrides:{multiline:!0,rows:4}},{match:"config.parameter_schema.*.schema",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),l6=Ce({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),c6=Ce({experimental:!0,fieldRenderers:[{match:({path:e,genericPath:n})=>e==="config.replace.body"||n==="config.transform.functions.*"||n.endsWith(".json.*"),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),d6=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e.endsWith(".json.*"),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),u6=Ce({experimental:!0,fieldRenderers:[{match:"config.rules",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Rule`}}]}),f6=Ce({experimental:!0}),p6=Ce({experimental:!0}),m6={class:"sp-form-request-limits-subtitle"},g6={class:"sp-form-request-limits-content"},h6={class:"sp-form-window-type"},y6={class:"sp-form-request-limits-items"},_6={class:"sp-form-request-limits-row"},b6=["id"],k6={class:"sp-form-request-limits-actions"},w6={key:0,class:"sp-form-request-limits-examples"},C6={class:"sp-form-request-limits-examples-badges"},lg="config.window_type",E6=xe(t.defineComponent({__name:"RequestLimitsForm",setup(e){const{t:n}=Ft.createI18n("en-us",zt),{formData:r,getSelectItems:o,getSchema:i,getEmptyOrDefault:a}=lt(),s=t.computed(()=>{const _=r.config?.limit?.map((k,b)=>({limit:k,windowSize:r.config?.window_size?.[b]}));return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Nc("request-limits",s),c=_=>{if(m.value=void 0,!r.config)return;const k=a("config.limit.0"),b=a("config.window_size.0");r.config.limit?.length||(r.config.limit=[k]),r.config.window_size?.length||(r.config.window_size=[b]),r.config.limit.splice(_+1,0,k),r.config.window_size.splice(_+1,0,b)},d=_=>{r.config&&(r.config.limit.splice(_,1),r.config.window_size.splice(_,1))},u=i(lg)?.default,f=t.computed(()=>xo(r,lg)),p=t.computed(()=>o(lg).sort((_,k)=>_.value===u?-1:k.value===u?1:0)),m=t.ref(),h={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(h,f.value)?h[f.value]:[]),g=(_,k)=>{if(k===m.value){t.nextTick(()=>{m.value=void 0}),r.config.limit=[],r.config.window_size=[];return}t.nextTick(()=>{m.value=k}),r.config.limit=[_.config.limit],r.config.window_size=[_.config.window_size]};return(_,k)=>{const b=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),C=t.resolveComponent("KBadge"),w=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",m6,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",g6,[t.createElementVNode("div",h6,[t.createVNode(tg,{items:p.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=x=>m.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",y6,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(x,T)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,T)},[t.createVNode(b,{for:`sp-form-request-limits-item-${T}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:T+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",_6,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${T}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Nt,{name:`$.config.limit.${T}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Nt,{name:`$.config.window_size.${T}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,b6),t.createElementVNode("div",k6,[t.createVNode(N,{appearance:"tertiary",disabled:s.value.length<=1,onClick:()=>d(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(N,{appearance:"tertiary",onClick:()=>c(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",w6,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",C6,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(x,T)=>(t.openBlock(),t.createBlock(w,{key:`use-case-${T}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(C,{appearance:m.value===`${f.value}-${T}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>g(x,`${f.value}-${T}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-93225268"]]),N6={id:"sp-form-error-legend",class:"sp-form-error-inputs"},S6=xe(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ft.createI18n("en-us",zt);return(r,o)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",N6,[t.createVNode(Nt,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(Me,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-0796e152"]]),A6=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=lt(),r=t.inject(Je.FORMS_CONFIG),i=t.inject(oa)?.isEditing||!1,a=t.computed(()=>{if(r?.app!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=i?null:void 0)}),(s,l)=>(t.openBlock(),t.createBlock(xc,null,{default:t.withCtx(()=>[t.unref(n).config?.strategy==="redis"?(t.openBlock(),t.createBlock(sd,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):t.createCommentVNode("",!0)]),_:1}))}}),x6=t.defineComponent({__name:"ConfigForm",setup(e){return(n,r)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(E6),t.createVNode(S6)]),_:1}),t.createVNode(Yo,{"hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"config.dictionary_name"}),t.createVNode(Xe,{name:"config.lock_dictionary_name"}),t.createVNode(Xe,{name:"config.strategy"}),t.createVNode(A6),t.createVNode(Xe,{name:"config.namespace"}),t.createVNode(Xe,{name:"config.hide_client_headers"}),t.createVNode(Xe,{name:"config.disable_penalty"}),t.createVNode(Xe,{name:"config.retry_after_jitter_max"}),t.createVNode(Xe,{name:"config.sync_rate"})]),_:1})],64))}}),I6=Ce({experimental:!0,component:t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);function o(i,a){i.config?.namespace===null&&delete i.config.namespace,n.onFormChange(i,a)}return(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"on-form-change":o}),{default:t.withCtx(()=>[t.createVNode(x6)]),_:1},16))}})}),v6=Ce({experimental:!0}),T6=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e==="config.flow.functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}}]}),B6=Ce({experimental:!0,fieldRenderers:[{match:"config.message.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),O6=Ce({experimental:!0,fieldRenderers:[{match:"config.message.functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}}]}),P6=Ce({experimental:!0}),V6=Ce({experimental:!0,fieldRenderers:[{match:"config.metrics",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Metric`}}]}),$6=Ce({experimental:!0,fieldRenderers:[{match:"config.metrics",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Metric`}}]}),R6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),L6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),D6=Ce({experimental:!0}),M6=Ce({experimental:!0}),F6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),j6=Ce({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:Me,propsOverrides:{multiline:!0,rows:4}}]}),U6=Ce({experimental:!0}),K6=Ce({experimental:!0}),q6=Ce({experimental:!0}),G6=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>/^config\.(client|upstream)\.(text|binary)\.schema$/.test(e),component:Me,propsOverrides:{multiline:!0,rows:4}}]}),z6=Ce({experimental:!0}),H6=Ce({experimental:!0,fieldRenderers:[{match:"config.static_tags",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Tag`}}]}),cg=t.defineComponent({__name:"CommonForm",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(e){const n=e,r=t.useSlots();return t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]),(o,i)=>(t.openBlock(),t.createBlock(On,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(OC)]),_:1},16))}}),W6=Object.assign({"../plugins/ace.ts":a2,"../plugins/acl/index.ts":Mj,"../plugins/acme.ts":Fj,"../plugins/ai-a2a-proxy.ts":jj,"../plugins/ai-aws-guardrails.ts":Uj,"../plugins/ai-azure-content-safety.ts":Kj,"../plugins/ai-custom-guardrail.ts":qj,"../plugins/ai-gcp-model-armor.ts":Gj,"../plugins/ai-lakera-guard.ts":zj,"../plugins/ai-llm-as-judge.ts":Hj,"../plugins/ai-mcp-oauth2.ts":Wj,"../plugins/ai-mcp-proxy/index.ts":Yj,"../plugins/ai-prompt-compressor.ts":Jj,"../plugins/ai-prompt-decorator.ts":Xj,"../plugins/ai-prompt-guard.ts":Zj,"../plugins/ai-prompt-template.ts":Qj,"../plugins/ai-proxy-advanced.ts":eU,"../plugins/ai-proxy.ts":tU,"../plugins/ai-rag-injector.ts":nU,"../plugins/ai-rate-limiting-advanced.ts":rU,"../plugins/ai-request-transformer.ts":oU,"../plugins/ai-response-transformer.ts":iU,"../plugins/ai-sanitizer.ts":aU,"../plugins/ai-semantic-cache.ts":sU,"../plugins/ai-semantic-prompt-guard.ts":lU,"../plugins/ai-semantic-response-guard.ts":cU,"../plugins/app-dynamics.ts":dU,"../plugins/application-registration.ts":uU,"../plugins/aws-lambda.ts":fU,"../plugins/azure-functions.ts":pU,"../plugins/basic-auth/index.ts":xU,"../plugins/bot-detection.ts":IU,"../plugins/canary.ts":vU,"../plugins/confluent-consume.ts":TU,"../plugins/confluent.ts":BU,"../plugins/correlation-id.ts":OU,"../plugins/cors.ts":PU,"../plugins/datadog.ts":VU,"../plugins/datakit/index.ts":a3,"../plugins/degraphql.ts":s3,"../plugins/entitlement-enforcement/index.ts":T3,"../plugins/exit-transformer.ts":B3,"../plugins/file-log.ts":O3,"../plugins/forward-proxy.ts":P3,"../plugins/graphql-proxy-cache-advanced.ts":V3,"../plugins/graphql-rate-limiting-advanced.ts":$3,"../plugins/grpc-gateway.ts":R3,"../plugins/grpc-web.ts":L3,"../plugins/header-cert-auth.ts":D3,"../plugins/hmac-auth.ts":M3,"../plugins/http-log.ts":F3,"../plugins/injection-protection.ts":j3,"../plugins/ip-restriction.ts":U3,"../plugins/jq.ts":K3,"../plugins/json-threat-protection.ts":q3,"../plugins/jwe-decrypt.ts":G3,"../plugins/jwt-signer/index.ts":z3,"../plugins/jwt.ts":H3,"../plugins/kafka-consume.ts":W3,"../plugins/kafka-log.ts":Y3,"../plugins/kafka-upstream.ts":J3,"../plugins/key-auth-enc.ts":X3,"../plugins/key-auth/index.ts":Z3,"../plugins/ldap-auth-advanced.ts":Q3,"../plugins/ldap-auth.ts":e4,"../plugins/loggly.ts":t4,"../plugins/metering-and-billing/index.ts":u4,"../plugins/mocking.ts":f4,"../plugins/mtls-auth.ts":p4,"../plugins/oas-validation.ts":m4,"../plugins/oauth2-introspection.ts":g4,"../plugins/oauth2.ts":h4,"../plugins/opa.ts":y4,"../plugins/openid-connect/index.ts":IG,"../plugins/opentelemetry.ts":vG,"../plugins/post-function.ts":TG,"../plugins/pre-function.ts":BG,"../plugins/prometheus.ts":OG,"../plugins/proxy-cache-advanced.ts":PG,"../plugins/proxy-cache.ts":VG,"../plugins/rate-limiting-advanced/index.ts":YG,"../plugins/rate-limiting.ts":JG,"../plugins/redirect.ts":XG,"../plugins/request-callout/index.ts":n6,"../plugins/request-size-limiting.ts":r6,"../plugins/request-termination.ts":o6,"../plugins/request-transformer-advanced.ts":i6,"../plugins/request-transformer.ts":a6,"../plugins/request-validator.ts":s6,"../plugins/response-ratelimiting.ts":l6,"../plugins/response-transformer-advanced.ts":c6,"../plugins/response-transformer.ts":d6,"../plugins/route-by-header.ts":u6,"../plugins/route-transformer-advanced.ts":f6,"../plugins/saml.ts":p6,"../plugins/service-protection/index.ts":I6,"../plugins/session.ts":v6,"../plugins/solace-consume.ts":T6,"../plugins/solace-log.ts":B6,"../plugins/solace-upstream.ts":O6,"../plugins/standard-webhooks.ts":P6,"../plugins/statsd-advanced.ts":V6,"../plugins/statsd.ts":$6,"../plugins/syslog.ts":R6,"../plugins/tcp-log.ts":L6,"../plugins/tls-handshake-modifier.ts":D6,"../plugins/tls-metadata-headers.ts":M6,"../plugins/udp-log.ts":F6,"../plugins/upstream-oauth.ts":j6,"../plugins/upstream-timeout.ts":U6,"../plugins/vault-auth.ts":K6,"../plugins/websocket-size-limit.ts":q6,"../plugins/websocket-validator.ts":G6,"../plugins/xml-threat-protection.ts":z6,"../plugins/zipkin.ts":H6});function Y6(e){const n=e.match(/\.\.\/plugins\/(.+?)(?:\/index)?\.ts$/);if(!n)throw new Error(`Unable to derive plugin name from path: ${e}`);const[,r]=n;return r}function J6(e){const n={},r=new Map;for(const[o,i]of Object.entries(e)){const a=Y6(o);if(r.has(a))throw new Error(`Duplicate plugin config for "${a}": ${r.get(a)} and ${o}`);r.set(a,o),n[a]={component:i.component??cg,experimental:i.experimental??!1,renderRules:i.renderRules,fieldRenderers:i.fieldRenderers??[]}}return n}const dg=J6(W6);function MC(e){return dg[e]}function FC(e,n){const r=MC(e);if(r&&!(r.experimental&&!n.includes(e)))return r.component}function jC(e,n,r){return r==="freeform"?!0:r==="vfg"?!1:!!FC(e,n)}function X6(){return Object.entries(dg).filter(([,e])=>e.experimental).map(([e])=>e).sort((e,n)=>e.localeCompare(n))}function ug(){return t.inject(Jf,[])}function Z6(e){const n=new Set(X6()),r=e.filter(i=>n.has(i)),o=e.filter(i=>!n.has(i));return o.length>0&&console.warn(`[entities-plugins] Ignoring unknown experimental free-form plugins: ${o.join(", ")}`),r}function Q6(e){t.provide(Jf,Z6(e))}function ez(){const e=ug();return{shouldUseFreeForm:(n,r)=>jC(n,e,r),getFreeFormComponent:n=>FC(n,e)}}function UC(e){if(!e)return;if(!e.token_exchange)return e;if((Array.isArray(e.token_exchange.request?.audience)&&e.token_exchange.request.audience.length===0||e.token_exchange.request&&!e.token_exchange.request.audience)&&(e.token_exchange.request.audience=null),(Array.isArray(e.token_exchange.request?.scopes)&&e.token_exchange.request.scopes.length===0||e.token_exchange.request&&!e.token_exchange.request.scopes)&&(e.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(o=>Kt(e.token_exchange,o)))return e.token_exchange=null,e;const r=e.token_exchange.subject_token_issuers;return r&&r.forEach(o=>{Kt(o.conditions,{})&&(o.conditions=null),o.conditions&&Object.values(o.conditions).every(i=>Array.isArray(i)&&i.length===0)&&(o.conditions=null)}),e}const KC=e=>{const n=e?.proof_of_possession_mtls_from_header;if(!n)return;if(!Array.isArray(n.ca_certificates)||n.ca_certificates.length===0){e.proof_of_possession_mtls_from_header=null;return}Kt(n,{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})&&(e.proof_of_possession_mtls_from_header=null)},qC=e=>{const n=e?.protected_resource_metadata;if(!n)return;if(!Array.isArray(n.authorization_servers)||n.authorization_servers.length===0){e.protected_resource_metadata=null;return}if(Kt(n,{authorization_servers:null,scopes_supported:null})){e.protected_resource_metadata=null;return}},tz={shamefullyTransformPayload(e){return UC(e.payload.config),KC(e.payload.config),qC(e.payload.config),e}},nz={shamefullyTransformPayload(e){if(!e.payload.config?.access_logs?.custom_attributes_by_lua)return e;if(Kt(e.payload.config?.access_logs?.custom_attributes_by_lua,{})){const n=e.payload.config?.access_logs;n&&(n.custom_attributes_by_lua=null)}return e}},rz={shamefullyTransformPayload(e){const n=e.payload.config?.v2_strategies?.openid_connect;return Array.isArray(n)&&n.forEach(r=>{UC(r.config),KC(r.config),qC(r.config)}),e}},oz={shamefullyTransformPayload(e){return!e.payload.config||!e.payload.config?.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(r=>Kt(e.payload.config?.token_exchange,r))&&(e.payload.config.token_exchange=null),e}},iz=(e,n)=>{const r=e.model.startsWith("config-"),o=n.model.startsWith("config-");return r&&!o?1:!r&&o?-1:0},GC=(e,n)=>(e.order??0)-(n.order??0),zC=(e,n)=>iz(e,n)||GC(e,n)||e.model.localeCompare(n.model),az=e=>{const{capitalize:n}=ue.useStringHelpers(),{convertToDotNotation:r}=Fk(),{i18n:{t:o}}=Qe(),i=ug(),a={"application-registration":{overwriteDefault:!0,formSchema:{...SR}},datadog:{...AR},"exit-transformer":{...xR},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...FR},"statsd-advanced":{...jR},"route-by-header":{...RR},"ai-prompt-decorator":{...kR},"ai-prompt-template":{...wR},"ai-proxy-advanced":{...CR},"ai-rag-injector":{...ER},"ai-llm-as-judge":{...NR},"vault-auth":{...KR},"oas-validation":{...BR},mocking:{...TR},"rate-limiting":{...wc},"rate-limiting-advanced":e?.app==="kongManager"?{"config-consumer_groups":wc["config-consumer_groups"]}:{...wc},"graphql-rate-limiting-advanced":{...IR},"injection-protection":{...vR},"response-ratelimiting":{...wc},"pre-function":{...Xk},"post-function":{...Xk},"request-transformer-advanced":{...VR},"response-transformer":{...Zk},"response-transformer-advanced":{...$R},zipkin:{...i2},"upstream-oauth":{...UR},saml:{...LR},"kafka-upstream":{...e2},"solace-consume":{...DR},"solace-upstream":{...MR},"key-auth":fR(e),"key-auth-enc":_R(e),confluent:{...t2},"confluent-consume":{...n2},"kafka-consume":{...r2},"kafka-log":{...o2},"openid-connect":{...tz},opentelemetry:{...nz},"konnect-application-auth":{...rz},"ai-mcp-oauth2":{...oz}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_sourcePlugin","_supported_redis_partial_type","_redis_partial_path"],l=(w,S,x,T)=>{let I={};(S||w)&&(I=S||(w.fields?w.fields:w));const A=s().concat(w.blacklist?w.blacklist:[]),v=Object.keys(I).filter(ee=>!A.includes(ee)),V=v.indexOf("comparator");V>-1&&v.splice(V,1);let O={fields:[]};const $={};v.forEach(ee=>{d(I[ee],ee,I,$,O,x)});const Q=$.name,pe=w._sourcePlugin||Q,H=Mn[pe],j=[],D=ee=>{const K=["cluster-cache"];for(const J of K)if(ee.model.includes(J))return!1;return new RegExp("(?<=-redis-).*").test(ee.model)};if(O._supported_redis_partial_type=w._supported_redis_partial_type,O._redis_partial_path=w._redis_partial_path,Je.getSharedFormName(pe)||jC(pe,i,T)||H?.useLegacyForm||e?.credential){if(H?.useLegacyForm&&e?.enableRedisPartial&&w._supported_redis_partial_type){for(const ee of O.fields)if(D(ee)){j.push(ee);continue}O.fields=O.fields.filter(ee=>!D(ee)),j.length&&O.fields.push({id:"_redis",fields:j,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path})}O.fields.sort((ee,K)=>(ee.order=ee.order||0,K.order=K.order||0,ee.order-K.order))}else{const ee=[],K=[],J=[],ce=[],z={};if(H?.fieldRules){const Ee=[...H.fieldRules.atLeastOneOf??[],...H.fieldRules.onlyOneOf??[],...H.fieldRules.mutuallyRequired??[]];if(H.fieldRules.onlyOneOfMutuallyRequired)for(const Ge of H.fieldRules.onlyOneOfMutuallyRequired)Ee.push(...Ge);for(const Ge of Ee)for(const se of Ge)z[se.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const Ee of O.fields){if(e?.enableRedisPartial&&w._supported_redis_partial_type&&D(Ee)){ce.push(Ee);continue}if(Ee.pinned){ee.push(Ee);continue}if(Ee.required||z[Ee.model]!==void 0){z[Ee.model]===!1&&(z[Ee.model]=!0),K.push(Ee);continue}J.push(Ee)}ce.length&&J.push({id:"_redis",fields:ce,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path,order:-1});const oe=Object.entries(z).filter(([,Ee])=>!Ee).map(([Ee])=>Ee.replace(/-/g,".").replace(/_/g,"-"));oe.length>0&&console.warn(`Unknown checked fields for plugin ${Q}: ${oe.join(", ")}`);const Pe=[];ee.length>0&&Pe.push({fields:ee.sort(GC)}),(K.length>0||J.length>0)&&Pe.push({fields:K.sort(zC),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:J.sort(zC),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"}}),O={groups:Pe}}return{schema:O,model:$,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=w=>Array.isArray(w.default)||w.default!=null&&typeof w.default!="object"&&w.default!=="function",d=(w,S,x,T,I,A)=>{const v=c(w);return T[S]=v?w.default:null,w.id=S,w.model=S,w.fields&&w.type==="record"?f(w,S,x,T,I,A):(x[S]=w,N(w,T),A&&A[S]&&u(x[S],A[S]),I.fields.push(w)),x},u=(w,S)=>(S&&(Object.assign(w,S),S.label&&(w.label=S.label)),w),f=(w,S,x,T,I,A)=>{w.fields.forEach(v=>{Object.keys(v).forEach(V=>{const O=v[V];x=d(O,S+"-"+V,x,T,I,A)})})},p=(w,S)=>{w.type="input",w.inputType="hidden",w.styleClasses="kong-form-hidden-field-wrapper";const x=e?.entityId;S[w.model]=x?{id:x}:null},m=w=>{w.type="input",w.inputType="number",w.between&&w.between.length===2&&(w.min=w.between[0],w.max=w.between[1])},h=w=>{Object.prototype.hasOwnProperty.call(w,"one_of")?(w.type="select",w.values=w.one_of,w.selectOptions={hideNoneSelectedText:!0}):(w.type="input",w.inputType="text")},y=w=>{w.type="checkbox",w.default=!0,w.required=!1},g=w=>{if(w.type="object-advanced",w.values.type==="array"){const{type:S}=w.values.elements||{};w.schema={fields:[{schema:{fields:[{...ft,model:w.model,valueArrayType:S==="integer"?"number":S||"string",inputAttributes:{...ft.inputAttributes,type:S==="integer"?"number":"text",inputMode:S==="integer"?"numeric":"text"}}]}}]}}else w.values.fields&&(w.schema={fields:[{type:"object",model:"object",schema:{fields:w.values.fields.map(S=>{const x=Object.keys(S)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:S[x].type}})}}]})},_=w=>w.fields.reduce((S,x)=>(x.fields&&x.fields.forEach(T=>{S[T.model]=T}),x.model&&(S[x.model]=x),S),{}),k=(w,S)=>{if(!Je.customFields.includes(w.model))return;const x=_(w);Je.customFields.forEach(T=>{Object.keys(x).forEach(I=>{const A=c(x[I]);S[I]=A?x[I].default:null}),delete S[T]})},b=(w,S)=>w.inputType==="hidden"?"":r(w.label||S.replace(/_/g," ")),N=(w,S)=>{switch(k(w,S),w.type){case"foreign":p(w,S);break;case"number":m(w),w.attributes={step:"any"};break;case"integer":m(w);break;case"string":h(w);break;case"boolean":y(w);break;case"map":g(w);break}w.inputType==="foreign"&&p(w,S),w.label=b(w,w.model)};function C(w,S){if(S==null||S.type&&S.type!=="record"||typeof w!="object"||w==null)return w;const x={};for(const T of S.fields){const I=Object.keys(T)[0],A=T[I];A.type==="record"?x[I]=C(w[I],A):A.type==="array"&&Array.isArray(w[I])&&A.elements.type==="record"?x[I]=w[I].map(v=>C(v,A.elements)):x[I]=w[I]}return x}return{buildFormSchema:d,parseSchema:l,customSchemas:a,typedefs:Bi,pruneRecord:C}},hd=Symbol("customPluginType"),sz=1e3,lz=20,HC=5e3,WC=(e,n=sz)=>{const r=/^[a-z][a-z\d+.-]*:/i.test(e),o=new URL(e,"http://localhost");return o.searchParams.has("size")||o.searchParams.set("size",`${n}`),r?o.toString():`${o.pathname}${o.search}${o.hash}`},yd=async(e,n,r)=>{const o=[];let i=WC(n),a=null,s=0;for(;i&&s<lz&&o.length<HC&&i!==a;){a=i;const c=(await e.get(i,{signal:r})).data;Array.isArray(c?.data)&&o.push(...c.data),i=c?.next?WC(c.next):null,s+=1}return o.slice(0,HC)};function cz(e){const{axiosInstance:n,apiBaseUrl:r}=e,o=()=>{if(e.app!=="konnect")throw new Error("Installed custom plugin APIs are only available for Konnect")},i=(g,_)=>{let k=`${r}${g}`;return e.app==="konnect"&&(k=k.replace(/{controlPlaneId}/gi,e.controlPlaneId)),k=k.replace(/{pluginId}/gi,_??"").replace(/\/{workspace}/gi,e.workspace?`/${e.workspace}`:""),k},a=async g=>{o();const _=i(nt.customPlugin.konnect.installed.edit,g),{data:k}=await n.get(_);return k},s=async g=>{o();const _=i(nt.customPlugin.konnect.installed.create),{data:k}=await n.post(_,g);return k},l=async(g,_)=>{o();const k=i(nt.customPlugin.konnect.installed.edit,g),{data:b}=await n.put(k,_);return b},c=async g=>{const _=i(nt.customPlugin[e.app].streamed.edit,g),{data:k}=await n.get(_);return k},d=async g=>{const _=i(nt.customPlugin[e.app].streamed.create),{data:k}=await n.post(_,g);return k},u=async(g,_)=>{const k=i(nt.customPlugin[e.app].streamed.edit,g),b=e.app==="konnect"?"put":"patch",{data:N}=await n[b](k,_);return N},f=async g=>{const{aliasName:_,priority:k,sourcePlugin:b}=g,N=i(nt.customPlugin[e.app].cloned.create),{data:C}=await n.post(N,{name:_,ref:b,priority:k});return C},p=async(g,_)=>{const{aliasName:k,priority:b,sourcePlugin:N}=_,C=i(nt.customPlugin[e.app].cloned.edit,g),w=e.app==="konnect"?"put":"patch",{data:S}=await n[w](C,{ref:N,priority:b,name:k});return S},m=async g=>{const _=i(nt.customPlugin[e.app].cloned.edit,g),{data:k}=await n.get(_);return k};return{getInstalledPlugin:a,createInstalledPlugin:s,updateInstalledPlugin:l,getStreamedPlugin:c,createStreamedPlugin:d,updateStreamedPlugin:u,getPluginByUnknownType:async g=>{if(e.app==="konnect")try{const _=await a(g);return Object.assign(_,{[hd]:"installed"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}try{const _=await c(g);return Object.assign(_,{[hd]:"streamed"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}try{const _=await m(g);return Object.assign(_,{[hd]:"cloned"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}return null},getPluginType:g=>g[hd],getClonedPlugin:m,createClonedPlugin:f,updateClonedPlugin:p}}const YC={service:{entityType:"services",nameField:"name"},route:{entityType:"routes",nameField:"name"},consumer:{entityType:"consumers",nameField:"username"},consumer_group:{entityType:"consumer_groups",nameField:"name"}};function dz({config:e,axiosInstance:n,onError:r}){const o=t.ref({}),i=t.ref({}),a=(u,f)=>{let p=`${e.apiBaseUrl}${nt.form[e.app].entityGetOne}`;return e.app==="konnect"&&(p=p.replace(/{controlPlaneId}/gi,e?.controlPlaneId||"")),p.replace(/\/{workspace}/gi,e?.workspace?`/${e.workspace}`:"").replace(/{entity}/gi,u).replace(/{id}/gi,f)},s=async(u,f)=>{const{entityType:p,nameField:m}=YC[u];i.value[u]=!0;try{const{data:h}=await n.get(a(p,f));o.value[u]=h?.[m]||""}catch(h){r(h)}finally{i.value[u]=!1}};return{resolveReferenceNames:u=>{Object.keys(YC).forEach(f=>{const p=u?.[f]?.id;p&&s(f,p)})},getReferenceName:u=>o.value[u]||void 0,isReferenceNameLoading:u=>!!i.value[u]}}const it={useI18n:Qe,usePluginMetaData:Yk,usePluginHelpers:Fk,useSchemas:az,useExperimentalFreeForms:ug,useProvideExperimentalFreeForms:Q6,useFreeFormResolver:ez,useCustomPluginApi:cz,useReferenceEntityNames:dz},JC=e=>{const n=e?.response;return n?.status===400&&(n.data?.message?.includes("plugin schema is currently in use")||n.data?.code===19||n.data?.name==="referenced by others")},uz={class:"kong-ui-entities-custom-plugin-form"},fz={class:"plugin-type-radios"},pz={class:"compare-table-wrapper"},mz={class:"compare-table"},gz={key:0,scope:"col"},hz={key:1,scope:"col"},yz={key:2,scope:"col"},_z={scope:"row"},bz={key:0},kz={key:1},wz={key:2},Cz={scope:"row"},Ez={key:0},Nz={class:"compare-list"},Sz={key:1},Az={class:"compare-list"},xz={key:2},Iz={scope:"row"},vz={key:0},Tz={key:1},Bz={key:2},Oz={scope:"row"},Pz={key:0},Vz={key:1},$z={key:2},Rz={scope:"row"},Lz={key:0},Dz={key:1},Mz={key:2},Fz={class:"plugin-modules-section"},jz={class:"plugin-select-item"},Uz={class:"plugin-select-item"},Kz={key:1},qz=1*1024*1024,Gz=xe(t.defineComponent({__name:"CustomPluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!e.app||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&!e.workspace||!e.cancelRoute||!e.successRoute)},pluginName:{type:String,default:""},unsupportedTypes:{type:Array,default:()=>[]}},emits:["update","error","loading"],setup(e,{emit:n}){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=e,a=n,{i18n:{t:s},i18nT:l}=it.useI18n(),c=Ar.useRouter(),{getMessageFromError:d}=ue.useErrors(),{axiosInstance:u}=ue.useAxios(i.config?.axiosRequestConfig),{createInstalledPlugin:f,updateInstalledPlugin:p,createStreamedPlugin:m,updateStreamedPlugin:h,getPluginType:y,getPluginByUnknownType:g,createClonedPlugin:_,updateClonedPlugin:k}=it.useCustomPluginApi({axiosInstance:u,apiBaseUrl:i.config.apiBaseUrl,controlPlaneId:i.config.controlPlaneId,app:i.config.app,workspace:i.config.workspace});t.provide(ue.PLUGIN_FORM_LAYOUT_STATE,t.ref(!0));const b=t.ref(null),N=(se,X)=>{const he=i.config.workspace??"",ve=i.config.app==="konnect"?i.config.controlPlaneId:"";return`${i.config.apiBaseUrl}${se}`.replace(/{controlPlaneId}/gi,ve).replace(/{pluginId}/gi,X??"").replace(/\/\{workspace\}/gi,he?`/${he}`:"")},C=t.computed(()=>{const se=D.fields.pluginType;if(!se)return"";const X=T.value?i.pluginName:void 0,he=X?"edit":"create";if(i.config.app==="konnect"){if(se==="installed")return N(nt.customPlugin.konnect.installed[he],X);if(se==="streamed")return N(nt.customPlugin.konnect.streamed[he],X);if(se==="cloned")return N(nt.customPlugin.konnect.cloned[he],X)}else{if(se==="streamed")return N(nt.customPlugin.kongManager.streamed[he],X);if(se==="cloned")return N(nt.customPlugin.kongManager.cloned[he],X)}return""}),w=t.computed(()=>T.value?D.fields.pluginType==="cloned"?i.config.app==="konnect"?"put":"patch":i.config.app==="kongManager"&&D.fields.pluginType==="streamed"?"patch":"put":"post"),S=t.computed(()=>{switch(D.fields.pluginType){case"installed":return ue.SupportedEntityType.PluginSchema;case"streamed":return ue.SupportedEntityType.CustomPlugin;case"cloned":return ue.SupportedEntityType.ClonedPlugin;default:return ue.SupportedEntityType.Plugin}}),x=t.computed(()=>{switch(D.fields.pluginType){case"installed":return{lua_schema:D.fields.schemaContent};case"streamed":return{name:D.fields.name,schema:D.fields.schemaContent,handler:D.fields.handlerContent};case"cloned":return{ref:D.fields.sourcePlugin,name:D.fields.aliasName,...D.fields.priority?{priority:parseInt(D.fields.priority,10)}:{}};default:return{}}}),T=t.computed(()=>!!i.pluginName),I=t.ref(!1),A=t.ref(""),v=t.computed(()=>new Set(i.unsupportedTypes)),V=t.computed(()=>o.filter(se=>!v.value.has(se))),O=t.computed(()=>!T.value&&V.value.length===0),$=t.computed(()=>!T.value&&V.value.length>1),Q=()=>V.value[0]??null,pe=se=>V.value.includes(se),H=se=>{if(T.value||!$.value){const X=se-1;return(D.fields.pluginType==="installed"?1:2)>1?X:void 0}return se},j=t.ref(!0),D=t.reactive({fields:{pluginType:Q(),schemaContent:"",handlerContent:"",name:"",sourcePlugin:"",aliasName:"",priority:""},readonly:!1,errorMessage:""});let ee="";t.watch(V,se=>{T.value||(!D.fields.pluginType||!se.includes(D.fields.pluginType))&&(D.fields.pluginType=se[0]??null)},{immediate:!0}),t.watch(()=>D.fields.pluginType,()=>{T.value||(D.fields.schemaContent="",D.fields.handlerContent="",D.fields.name="",D.fields.sourcePlugin="",D.fields.aliasName="",D.fields.priority="")});const{getDisplayName:K}=Yk(),J=t.computed(()=>{const se=i.config?.clonablePlugins??r;if(se.length===0)return[];const X={};se.forEach(ve=>{const qe=Mn[ve]?.group;qe?(X[qe]||(X[qe]=[]),X[qe].push({label:K(ve),value:ve})):console.warn(`Plugin ${ve} is missing metadata group and will be shown without grouping.`)});const he=[];return Object.keys(X).sort().forEach(ve=>{he.push({label:ve,items:X[ve]})}),he}),ce=t.computed(()=>{if(O.value||!D.fields.pluginType)return!1;switch(D.fields.pluginType){case"installed":return D.fields.schemaContent.length>0;case"streamed":return D.fields.schemaContent.length>0&&D.fields.handlerContent.length>0&&D.fields.name.trim().length>0;case"cloned":return!!D.fields.sourcePlugin&&D.fields.aliasName.trim().length>0;default:return!1}}),z=se=>new Promise((X,he)=>{const ve=new FileReader;ve.onload=je=>{const qe=je.target?.result;typeof qe=="string"?X(qe):he(new Error("Failed to read file as text"))},ve.onerror=he,ve.readAsText(se)}),oe=async(se,X)=>{const he=X[0];if(he){if(he.size>qz){D.errorMessage=s("custom_plugin_form.errors.file_too_large");return}try{const ve=await z(he);se==="schema"?D.fields.schemaContent=ve:D.fields.handlerContent=ve}catch{D.errorMessage=s("custom_plugin_form.errors.file_read_error"),se==="schema"?D.fields.schemaContent="":D.fields.handlerContent=""}}},Pe=se=>{se==="schema"?D.fields.schemaContent="":D.fields.handlerContent=""},Ee=()=>{c.push(i.config.cancelRoute)};t.onMounted(async()=>{if(i.pluginName){I.value=!0,a("loading",!0);try{const se=await g(i.pluginName);if(!se){A.value=s("custom_plugin_form.errors.plugin_not_found"),a("error",new Error(A.value));return}const X=y(se);if(D.fields.pluginType=X,X==="installed")D.fields.schemaContent=se.item.lua_schema;else if(X==="streamed"){const{name:he,schema:ve,handler:je}=se;D.fields.name=he,D.fields.schemaContent=ve,D.fields.handlerContent=je}else if(X==="cloned"){const{ref:he,name:ve,priority:je}=se;D.fields.aliasName=ve,D.fields.sourcePlugin=he,D.fields.priority=je!==null?String(je):"",ee=ve}else A.value=s("custom_plugin_form.errors.unsupported_plugin_type",{type:X}),a("error",new Error(A.value))}catch(se){A.value=d(se),a("error",se)}finally{I.value=!1,a("loading",!1)}}});const Ge=async()=>{D.errorMessage="",D.readonly=!0;try{const se=D.fields.pluginType;if(!se)return;if(se==="installed"){const X={lua_schema:D.fields.schemaContent},he=T.value?await p(i.pluginName,X):await f(X);a("update",he)}else if(se==="streamed"){const X={name:D.fields.name,schema:D.fields.schemaContent,handler:D.fields.handlerContent},he=T.value?await h(i.pluginName,X):await m(X);a("update",he)}else{const X=T.value?await k(ee,{aliasName:D.fields.aliasName,sourcePlugin:D.fields.sourcePlugin,priority:D.fields.priority?parseInt(D.fields.priority,10):void 0}):await _({aliasName:D.fields.aliasName,sourcePlugin:D.fields.sourcePlugin,priority:D.fields.priority?parseInt(D.fields.priority,10):void 0});a("update",{pluginType:"cloned",sourcePlugin:X.ref,aliasName:X.name,priority:X.priority??void 0})}c.push(i.config.successRoute)}catch(se){D.errorMessage=JC(se)?s("delete.plugin_schema_in_use_message"):d(se),a("error",se)}finally{D.readonly=!1}};return(se,X)=>{const he=t.resolveComponent("KSkeleton"),ve=t.resolveComponent("KEmptyState"),je=t.resolveComponent("KRadio"),qe=t.resolveComponent("KCollapse"),Be=t.resolveComponent("KFileUpload"),Ve=t.resolveComponent("KLabel"),$e=t.resolveComponent("KAlert"),Ke=t.resolveComponent("KSelect"),de=t.resolveComponent("KInput"),Z=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",uz,[t.createVNode(t.unref(ue.EntityBaseForm),{ref_key:"entityBaseFormRef",ref:b,"can-submit":ce.value,config:e.config,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":D.errorMessage,"form-fields":x.value,"is-readonly":D.readonly,"slideout-deck-entity-type":S.value,"slideout-fetch-url":C.value,"slideout-request-method":w.value,onCancel:Ee,onSubmit:Ge},{"form-actions":t.withCtx(()=>[I.value||A.value||O.value?(t.openBlock(),t.createElementBlock("span",Kz)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(Z,{appearance:"primary","data-testid":"custom-plugin-form-submit",disabled:!ce.value||D.readonly,type:"submit"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.save")),1)]),_:1},8,["disabled"]),t.createVNode(Z,{appearance:"secondary","data-testid":"custom-plugin-form-cancel",disabled:D.readonly,onClick:Ee},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.cancel")),1)]),_:1},8,["disabled"]),t.createVNode(Z,{appearance:"tertiary","data-testid":"custom-plugin-form-view-configuration",onClick:X[14]||(X[14]=U=>b.value?.viewConfig())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.view_configuration")),1)]),_:1})],64))]),default:t.withCtx(()=>[I.value?(t.openBlock(),t.createBlock(he,{key:0,type:"form"})):A.value?(t.openBlock(),t.createBlock(ve,{key:1,"action-button-visible":!1,"data-testid":"custom-plugin-form-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(A.value),1)]),_:1})):O.value?(t.openBlock(),t.createBlock(ve,{key:2,"action-button-visible":!1,"data-testid":"custom-plugin-form-unsupported-types-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(s)("custom_plugin_form.errors.no_supported_types")),1)]),_:1})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[$.value?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:0,class:"custom-plugin-form-steps",step:1,title:t.unref(s)("custom_plugin_form.step1.title")},{default:t.withCtx(()=>[t.createElementVNode("div",fz,[pe("installed")?(t.openBlock(),t.createBlock(je,{key:0,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[0]||(X[0]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-installed",description:t.unref(s)("custom_plugin_form.step1.types.installed.description"),label:t.unref(s)("custom_plugin_form.step1.types.installed.label"),"selected-value":"installed"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createBlock(je,{key:1,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[1]||(X[1]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-streamed",description:t.unref(s)("custom_plugin_form.step1.types.streamed.description"),label:t.unref(s)("custom_plugin_form.step1.types.streamed.label"),"selected-value":"streamed"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createBlock(je,{key:2,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[2]||(X[2]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-cloned",description:t.unref(s)("custom_plugin_form.step1.types.cloned.description"),label:t.unref(s)("custom_plugin_form.step1.types.cloned.label"),"selected-value":"cloned"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0)]),t.createVNode(qe,{modelValue:j.value,"onUpdate:modelValue":X[3]||(X[3]=U=>j.value=U),class:"custom-plugin-form-compare-collapse","data-testid":"compare-deployment-options","trigger-alignment":"leading","trigger-label":t.unref(s)("custom_plugin_form.step1.compare_trigger")},{default:t.withCtx(()=>[t.createElementVNode("div",pz,[t.createElementVNode("table",mz,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[X[15]||(X[15]=t.createElementVNode("th",{scope:"col"},null,-1)),pe("installed")?(t.openBlock(),t.createElementBlock("th",gz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("th",hz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("th",yz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.cloned")),1)):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",_z,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",bz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",kz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",wz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Cz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Ez,[t.createElementVNode("ul",Nz,[t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.handler")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.schema")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.additional")),1)])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Sz,[t.createElementVNode("ul",Az,[t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.handler")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.schema")),1)])])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",xz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Iz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",vz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Tz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",Bz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Oz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Pz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Vz,[t.createVNode(t.unref(l),{keypath:"custom_plugin_form.step1.compare_table.rows.sandboxing.streamed"},{link:t.withCtx(()=>[t.createVNode(t.unref(_e.KExternalLink),{"hide-icon":"",href:t.unref(ra).customPluginSandboxing},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.streamed_link")),1)]),_:1},8,["href"])]),_:1})])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",$z,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Rz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.data_plane_reload.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Lz,[t.createVNode(t.unref(Ne.CheckCircleIcon),{color:`var(--kui-color-text-success, ${t.unref(qy)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Dz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",Mz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0)])])])])]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["title"])):t.createCommentVNode("",!0),D.fields.pluginType==="installed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:1,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_files.title")},{default:t.withCtx(()=>[t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:t.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:T.value&&D.fields.schemaContent?t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!T.value,onFileAdded:X[4]||(X[4]=U=>oe("schema",U)),onFileRemoved:X[5]||(X[5]=U=>Pe("schema"))},null,8,["button-text","help","label","placeholder","required"]),t.createElementVNode("div",Fz,[t.createVNode(Ve,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("custom_plugin_form.step2_files.plugin_modules.label")),1)]),_:1}),t.createVNode($e,{appearance:"warning",message:t.unref(s)("custom_plugin_form.step2_files.plugin_modules.alert")},null,8,["message"])])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="streamed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:2,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_files.title")},{default:t.withCtx(()=>[t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:t.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:T.value&&D.fields.schemaContent?t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!T.value,onFileAdded:X[6]||(X[6]=U=>oe("schema",U)),onFileRemoved:X[7]||(X[7]=U=>Pe("schema"))},null,8,["button-text","help","label","placeholder","required"]),t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.handler_file.button_text"),"data-testid":"custom-plugin-handler-upload",help:t.unref(s)("custom_plugin_form.step2_files.handler_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.handler_file.label"),placeholder:T.value&&D.fields.handlerContent?t.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder"),required:!T.value,onFileAdded:X[8]||(X[8]=U=>oe("handler",U)),onFileRemoved:X[9]||(X[9]=U=>Pe("handler"))},null,8,["button-text","help","label","placeholder","required"])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="cloned"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:3,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_clone.title")},{default:t.withCtx(()=>[t.createVNode(Ke,{modelValue:D.fields.sourcePlugin,"onUpdate:modelValue":X[10]||(X[10]=U=>D.fields.sourcePlugin=U),"data-testid":"custom-plugin-clone-select","enable-filtering":"",items:J.value,label:t.unref(s)("custom_plugin_form.step2_clone.select_plugin.label"),placeholder:t.unref(s)("custom_plugin_form.step2_clone.select_plugin.placeholder"),required:""},{"item-template":t.withCtx(({item:U})=>[t.createElementVNode("div",jz,[t.createVNode(t.unref(Sr.PluginIcon),{name:String(U.value),size:20},null,8,["name"]),t.createElementVNode("span",null,t.toDisplayString(U.label),1)])]),"selected-item-template":t.withCtx(({item:U})=>[t.createElementVNode("div",Uz,[t.createVNode(t.unref(Sr.PluginIcon),{name:String(U.value),size:20},null,8,["name"]),t.createElementVNode("span",null,t.toDisplayString(U.label),1)])]),_:1},8,["modelValue","items","label","placeholder"])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="streamed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:4,class:"custom-plugin-form-steps",description:t.unref(s)("custom_plugin_form.step3.description"),step:H(3),title:t.unref(s)("custom_plugin_form.step3.title")},{default:t.withCtx(()=>[t.createVNode(de,{modelValue:D.fields.name,"onUpdate:modelValue":X[11]||(X[11]=U=>D.fields.name=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-name",help:t.unref(s)("custom_plugin_form.step3.name.help"),label:t.unref(s)("custom_plugin_form.step3.name.label"),placeholder:t.unref(s)("custom_plugin_form.step3.name.placeholder"),readonly:D.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"])]),_:1},8,["description","step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="cloned"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:5,class:"custom-plugin-form-steps",description:t.unref(s)("custom_plugin_form.step3.description"),step:H(3),title:t.unref(s)("custom_plugin_form.step3.title")},{default:t.withCtx(()=>[t.createVNode(de,{modelValue:D.fields.aliasName,"onUpdate:modelValue":X[12]||(X[12]=U=>D.fields.aliasName=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-alias-name",help:t.unref(s)("custom_plugin_form.step3.alias_name.help"),label:t.unref(s)("custom_plugin_form.step3.alias_name.label"),placeholder:t.unref(s)("custom_plugin_form.step3.alias_name.placeholder"),readonly:D.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"]),t.createVNode(de,{modelValue:D.fields.priority,"onUpdate:modelValue":X[13]||(X[13]=U=>D.fields.priority=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-priority",label:t.unref(s)("custom_plugin_form.step3.priority.label"),"label-attributes":{info:t.unref(s)("custom_plugin_form.step3.priority.tooltip")},readonly:D.readonly,type:"number"},{help:t.withCtx(()=>[t.createVNode(t.unref(l),{keypath:"custom_plugin_form.step3.priority.help.text"},{link:t.withCtx(()=>[t.createVNode(t.unref(_e.KExternalLink),{"hide-icon":"",href:t.unref(ra).pluginPriority},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"])):t.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"]]),zz=(e,n)=>({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:e,selectOptions:{hideNoneSelectedText:!0},...n?.[0]!=null?{default:n[0]}:{}}}),Hz={class:"referable-field-item"},Wz=24,XC=xe(t.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(e){const n=e,{formatPluginFieldLabel:r}=it.usePluginHelpers(),o=t.computed(()=>n.field.replace(/\./g,"-")),i=t.computed(()=>n.field.replace(/^[cC]onfig\./,"").split(".").map(s=>r(s)).join(".")),a=()=>{if(!o.value)return;const s=`label[for="${o.value}"]`,l=document.querySelector(s)||document.getElementById(o.value);if(!l)return;const c=Math.max(0,l.getBoundingClientRect().top+window.scrollY-Wz),d=()=>{l.click?.()};window.addEventListener("scrollend",d,{once:!0}),window.scrollTo({top:c,behavior:"smooth"})};return(s,l)=>(t.openBlock(),t.createElementBlock("span",Hz,[t.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:a},t.toDisplayString(i.value),1),e.isLast?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-949a9ea1"]]),Yz={key:0},Jz=xe(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{i18n:{t:r},i18nT:o}=it.useI18n(),i=t.computed(()=>{const a=[];if(n.rules.atLeastOneOf)for(const s of n.rules.atLeastOneOf)a.push({key:"plugins.form.field_rules.at_least_one_of",fields:s});if(n.rules.onlyOneOf)for(const s of n.rules.onlyOneOf)a.push({key:"plugins.form.field_rules.only_one_of",fields:s});if(n.rules.mutuallyRequired)for(const s of n.rules.mutuallyRequired)a.push({key:"plugins.form.field_rules.mutually_required",fields:s});return a});return(a,s)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(l,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,({key:c,fields:d},u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},[t.createVNode(t.unref(o),{keypath:c},{parameters:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d,(f,p)=>(t.openBlock(),t.createBlock(XC,{key:`alert-field-${f}`,field:f,"is-last":p===d.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",Yz,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${d}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c,(u,f)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${d}-combination-${f}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(p,m)=>(t.openBlock(),t.createBlock(XC,{key:`only-one-mutually-field-${p}`,field:p,"is-last":m===u.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-5f9ff453"]]);function Xz(e){if(e.length===0)return"";if(e.length===1){const i=yn(e[0]);return yt(...i.slice(0,-1))}const n=e.map(i=>yn(i)),r=Math.min(...n.map(i=>i.length)),o=[];for(let i=0;i<r-1;i++){const a=n[0][i];if(n.every(s=>s[i]===a))o.push(a);else break}return yt(...o)}function fg(e){return"at_least_one_of"in e?e.at_least_one_of:"mutually_required"in e?e.mutually_required:"mutually_exclusive"in e?e.mutually_exclusive:null}function Zz(e,n){if(!n)return e;const r=n+ps;return e.map(o=>o.startsWith(r)?o.slice(r.length):o)}function Qz(e,n){const r=fg(e),o=Zz(r,n);return"at_least_one_of"in e?{at_least_one_of:o}:"mutually_required"in e?{mutually_required:o}:{mutually_exclusive:o}}function e5(e){const n=[],r=new Map;for(const o of e){const i=fg(o);if(!i){n.push(o);continue}const a=Xz(i);if(!a){n.push(o);continue}const s=Qz(o,a);r.has(a)||r.set(a,[]),r.get(a).push(s)}return{keep:n,move:r}}function t5(e,n,r){const o=yn(n);let i=e;for(const a of o){const s=i.fields.find(c=>Object.keys(c)[0]===a);if(!s)return;const l=s[a];if(l.type!=="record")return;i=l}i.entity_checks=[...i.entity_checks||[],...r]}function ZC(e){if(e.entity_checks?.length){const{keep:n,move:r}=e5(e.entity_checks);e.entity_checks=n.length?n:void 0;for(const[o,i]of r)t5(e,o,i)}for(const n of e.fields){const r=Object.values(n)[0];r.type==="record"&&ZC(r)}}function n5(e){const n=JSON.parse(JSON.stringify(e)),r={fields:n.fields};return ZC(r),n.fields=r.fields,n}function r5(e,n){const r=Mn[e];if(!r||!r.fieldRules)return n;const o=o5(r.fieldRules),i={...n};return i.fields=i.fields.map(a=>{if(Object.keys(a)[0]==="config"){const l=a.config.entity_checks||[],c=f=>{const m=[...fg(f)??[]].slice().sort();return`${Object.keys(f)[0]}:${m.join(",")}`},d=new Set(l.map(c)),u=o.filter(f=>{const p=c(f);return d.has(p)?!1:(d.add(p),!0)});return{config:{...a.config,entity_checks:[...l,...u]}}}return a}),i}function o5(e){const n=[],r=o=>o.startsWith("config.")?o.substring(7):o;return e.atLeastOneOf&&e.atLeastOneOf.forEach(o=>{n.push({at_least_one_of:o.map(r)})}),e.onlyOneOf&&e.onlyOneOf.forEach(o=>{n.push({mutually_exclusive:o.map(r)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(o=>{n.push({mutually_required:o.map(r)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(o=>{if(o.forEach(i=>{n.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),l=o[a].map(r);s.forEach(c=>{l.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const i5={class:"kong-ui-entities-plugin-form"},a5={key:1,class:"entity-form"},s5={class:"plugin-config-empty-state"},l5=xe(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.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(e,{emit:n}){const r=n,o=e,i=t.computed(()=>{if(o.config.app!=="konnect")return!1;const de=o.config;return!!de.isKonnectManagedRedisEnabled&&de.isCloudGateway===!0}),a=t.inject(Bn.KM_2306_CONDITION_FIELD_314,!1),s=t.inject(Bn.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),{axiosInstance:l}=ue.useAxios(o.config?.axiosRequestConfig),{parseSchema:c}=it.useSchemas({entityId:o.entityMap.focusedEntity?.id||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:d,unFlattenObject:u,dismissField:f,isObjectEmpty:p,unsetNullForeignKey:m}=it.usePluginHelpers(),{shouldUseFreeForm:h,getFreeFormComponent:y}=it.useFreeFormResolver(),g=t.inject(ue.PLUGIN_FORM_LAYOUT_STATE),_=de=>{g&&(g.value=de)},{objectsAreEqual:k}=ue.useHelpers(),{i18n:{t:b}}=Qe(),N=de=>{let Z=de;return o.config.app==="konnect"&&(Z=Z.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||"")),Z.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")},C=(de,Z)=>{let U=`${o.config.apiBaseUrl}${nt.form[o.config.app].entityGetOne}`;return U=N(U),U=U.replace(/{entity}/gi,de),U=U.replace(/{id}/gi,Z),U},w=de=>{let Z=`${o.config.apiBaseUrl}${nt.form[o.config.app].entityGetAll}`;return Z=N(Z),Z=Z.replace(/{entity}/gi,de),Z},S=(de,Z,U)=>{const ne=C(de,Z);return l.get(ne,U)},x=(de,Z)=>{const U=w(de);return o.config.app==="konnect"?l.get(U).then(ne=>{const{data:{data:L}}=ne;if(delete Z.size,delete Z.offset,L.length&&Object.keys(Z).length===1){const M=Object.keys(Z)[0],Y=L.filter(ae=>ae[M]?!!ae[M].toLowerCase().includes(Z[M].toLowerCase()):!1);ne.data.data=Y}return ne}):l.get(U,{params:Z})},T=(de,Z,U)=>{const ne=w(de);if(o.config.app==="konnect"){const{size:L,offset:M,...Y}=Z;if(de==="consumer_groups")return l.get(ne,{params:{size:1e3},signal:U}).then(me=>{const{data:{data:Ae}}=me;if(Ae.length&&Object.keys(Y).length===1){const ze=Object.keys(Y)[0],ot=Ae.filter(F=>F[ze]?!!F[ze].toLowerCase().includes(Y[ze].toLowerCase()):!1);me.data.data=ot}return me});const ae={size:L,offset:M};for(const me of Object.keys(Y))ae.filter={[me]:{contains:Y[me]}};return l.get(ne,{params:ae,signal:U})}return l.get(ne,{params:Z,signal:U})},I=(de,Z=50)=>{const U=w(de);return l.get(U,{params:{size:Z}})};t.provide(Je.FORMS_API_KEY,{getOne:S,getAll:x,getAllV2:T,peek:I});const A=t.shallowReactive({...o.config});t.watch(()=>o.config,de=>{Object.assign(A,de)}),t.provide(Je.FORMS_CONFIG,A);const v=Ql();t.provide(Je.REDIS_CREATE_SLIDEOUT,{component:t.markRaw(mf.RedisConfigurationFormSlideout),toast:de=>v(de)});const V=t.ref(""),O=t.ref(),$=t.shallowRef(),Q=t.ref(null),pe=t.ref({}),H=t.reactive({}),j=t.reactive({}),D=t.computed(()=>Q.value?.options),ee=t.computed(()=>{const de=r5(j.name,o.rawSchema);return n5(de)}),K=t.ref(!1),J=t.ref(),ce=(de,Z)=>{K.value=de??"",J.value=Z},z=de=>{J.value?.(de),K.value=!1},oe=de=>{if(!de){O.value=void 0,$.value=void 0,V.value="",_(!1);return}const Z=o.schema?._sourcePlugin||de;O.value=MC(Z),$.value=h(Z,o.engine)?y(Z)??cg:void 0,V.value=Je.getSharedFormName(Z),_(!!$.value)},Pe=de=>{const Z={...o.schema},U=j,ne=H,L=Object.keys(U),M={};if(!p(pe.value))for(let ae=0;ae<pe.value?.fields?.length;ae++)Z[pe.value.fields[ae].model]=pe.value.fields[ae];Je.customFields.forEach(ae=>{Z[ae]&&(Z[ae].fields.forEach(me=>{me.fields&&me.fields.forEach(Ae=>{Z[Ae.model]=Ae}),me.model&&(Z[me.model]=me)}),delete Z[ae])}),L.forEach(ae=>{if(!Z[ae]){ae==="partials"&&(M[ae]=U[ae]);return}const me=Z[ae];let Ae=U[ae];const ze=ne[ae],ot=Array.isArray(Ae)?"array":typeof Ae,F=me?me.valueType:null,te=me?me.valueArrayType:null,G=me?me.transform:null;if(Ae==null&&ze==null&&!me.submitWhenNull)return;if(me){if(F&&ot!==F)switch(F){case"array":ot==="string"&&Ae.length&&(Ae=Ae.split(",").map(Ie=>{if(Ie=Ie.trim(),te==="string")return String(Ie);if(te==="number")return Number(Ie);if(te==="boolean"){if(typeof Ie=="string")return Ie.toLowerCase()==="true"||Ie==="1";if(typeof Ie=="number")return Ie===1}return Ie})),(!Ae||!Ae.length)&&(Ae=me.submitWhenNull?null:[]);break;case"number":me.referenceable!==!0&&(Ae=Number(Ae));break;case"boolean":ot==="string"&&(Ae=Ae.toLowerCase()==="true"||Ae==="1"),ot==="number"&&(Ae=Ae===1);break;case"string":Ae=Ae==null?"":String(Ae);break}else F==="array"&&(!Ae||!Ae.length?Ae=me.submitWhenNull?null:[]:me.inputAttributes?.type==="number"&&(Ae=Ae.map(Ie=>Number(Ie))));if(me.type==="array"&&me.nestedFields){const Ie=tt=>{Object.keys(tt).forEach(ge=>{tt[ge]&&typeof tt[ge]=="object"&&!Array.isArray(tt[ge])&&tt[ge]!==null?Ie(tt[ge]):(tt[ge]===void 0||tt[ge]===null||typeof tt[ge]=="number"&&isNaN(tt[ge])||typeof tt[ge]=="string"&&tt[ge].trim().length===0)&&delete tt[ge]})};Ae&&typeof Ae=="object"&&Ie(Ae)}me.type==="object-advanced"&&me.fields&&Ae!==null&&(Object.entries(Ae).length===0?Ae=null:Object.keys(Ae).forEach(Ie=>{Array.isArray(Ae[Ie])||(Ae[Ie]=Ae[Ie].split(","))}))}let le=d(ae);if(me.fieldNameHasDashes){const[Ie,...tt]=le.split(".").reverse();le=[Ie.replace(/_/g,"-"),...tt].reverse().join(".")}if(F==="object-expand"){let Ie;[le,Ie]=le.split(".");let tt={};M[le]&&(tt=M[le]),tt[Ie]=Ae,Ae=tt}ze!==void 0&&Ae===""&&Ae!==ze?M[le]=F==="object"?{}:null:me.type==="checklist"&&Ae===""?M[le]=[]:Ae!==""&&(M[le]=Ae),M[le]=G?G(Ae):M[le],m(le,M)});const Y=u(M);if($.value){if(de&&de.length)for(const ae of de)delete Y[ae];Object.assign(Y,Be.value)}return Y},Ee=(de,Z={})=>{f(j,Z,de,o.editing),r("model-updated",{model:j,originalModel:H,data:Pe()})},Ge=(de,Z)=>{const U={[Z]:de};typeof o.schema[Z]?.modelTransformer=="function"&&(U[Z]=o.schema[Z].modelTransformer(de));const ne=Object.assign({},j,U);Object.assign(j,ne),r("model-updated",{model:j,originalModel:H,data:Pe()})},se=de=>{r("validity-change",de)},X=(de,Z)=>{Object.keys(de).forEach(U=>{let ne=Z?`${Z}-${U}`:U,L=o.schema[ne];if(!L){const ae=Z?`${Z}-${U.replace(/-/g,"_")}`:U.replace(/-/g,"_");o.schema[ae]?.fieldNameHasDashes&&(ne=ae,L=o.schema[ne]),Z&&o.schema[Z]?.keyFromObject===U&&(ne=Z,L=o.schema[ne])}const M=de[U],Y=typeof M;if(L&&L.type==="object-advanced"&&!M){j[ne]={},H[ne]={};return}if(Array.isArray(M)){j[ne]=JSON.parse(JSON.stringify(M)),H[ne]=JSON.parse(JSON.stringify(M));return}if(Y==="object"&&M&&!M.length)return X(M,ne);if(Y==="object"&&M&&M.length&&L.type==="input"){j[ne]=M.join(", "),H[ne]=M.join(", ");return}j[ne]=M,H[ne]=M}),r("model-updated",{model:j,originalModel:H,data:Pe()})},he=(de,Z)=>{if(!Z)return de;if(Array.isArray(de)){const L=Z.elements;return L?de.map(M=>he(M,L)):de}if(!de||typeof de!="object")return de;if(Z.type==="map"&&Z.values){const L=Z.values,M={};for(const Y of Object.keys(de))M[Y]=he(de[Y],L);return M}if(!Array.isArray(Z.fields))return de;const U=new Map;for(const L of Z.fields){const M=L&&Object.keys(L)[0];M&&U.set(M,L[M])}const ne={};for(const L of Object.keys(de)){const M=U.get(L);M&&(ne[L]=he(de[L],M))}return ne},ve=()=>{const de=o.rawSchema?.fields;return Array.isArray(de)?de.find(U=>U?.config)?.config:void 0},je=new Set(["datakit"]),qe=t.computed(()=>o.schema?._sourcePlugin||j.name),Be=t.shallowRef(o.record),Ve=(de,Z)=>{const U=je.has(qe.value)?de:{...de,config:he(de.config,ve())};Be.value=U;const ne={...j};for(const L of Z||[])delete ne[L];r("model-updated",{model:{...ne,...U},originalModel:H,data:Pe(Z)})},$e=t.ref(!0),Ke=()=>{if(o.record&&o.schema&&(X({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)&&X({consumer_id:o.record.consumer_id||o.record.consumer}),X(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)&&X({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&&Ee("redis",{partials:o.record.partials}),$.value?Ve(o.record):X(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const de={};for(const Z in o.entityMap){const U=o.entityMap[Z].id,ne=o.entityMap[Z].idField,L=ne==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ne).replace("_","-"));Object.prototype.hasOwnProperty.call(j,L)&&(de[L]=U)}X(de)}if(o.entityMap.consumer?.id&&o.schema&&o.credential){const de={};Object.prototype.hasOwnProperty.call(j,"consumer")&&(de.consumer=o.entityMap.consumer.id),X(de)}$e.value=!1};return t.watch($e,de=>{r("loading",de)}),t.watch(()=>o.schema,(de,Z)=>{if(k(de||{},Z||{}))return;const U=c(de,void 0,void 0,o.engine);Object.assign(j,U.model),pe.value={fields:pe.value?.fields?.map(ne=>({...ne,disabled:ne.disabled||!1}))},Object.assign(H,JSON.parse(JSON.stringify(U.model))),oe(U.model.name),Ke()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{Q.value=c(o.schema,void 0,void 0,o.engine),Object.assign(j,Q.value?.model||{}),pe.value=Q.value?.schema||{},oe(Q.value?.model?.name),Ke()}),t.onBeforeUnmount(()=>{_(!1)}),(de,Z)=>{const U=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",i5,[$e.value?(t.openBlock(),t.createBlock(U,{key:0,type:"form"})):j.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",a5,[$.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent($.value),{key:0,developer:e.developer,"field-renderers":O.value?.fieldRenderers,"form-model":j,"form-schema":pe.value,"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,model:e.record,"on-form-change":Ve,"on-validity-change":se,"plugin-name":j.name,"render-rules":O.value?.renderRules,schema:ee.value,"onClick:createEntity":Z[0]||(Z[0]=ne=>de.$emit("click:create-entity",ne)),"onClick:learnMore":Z[1]||(Z[1]=ne=>de.$emit("click:learn-more",ne)),onGlobalAction:Z[2]||(Z[2]=(ne,L)=>de.$emit("globalAction",ne,L))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.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"])):V.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Je.sharedForms)[V.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":j,"form-options":D.value,"form-schema":pe.value,"identity-principals-ui-enabled":t.unref(s),"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,"on-model-updated":Ge,"on-partial-toggled":Ee,"show-new-partial-modal":ne=>de.$emit("showNewPartialModal",ne),"onClick:createEntity":Z[3]||(Z[3]=ne=>de.$emit("click:create-entity",ne)),"onClick:learnMore":Z[4]||(Z[4]=ne=>de.$emit("click:learn-more",ne))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.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"])):(t.openBlock(),t.createBlock(t.unref(Je.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,model:j,options:D.value,schema:pe.value,onModelUpdated:Ge,onPartialToggled:Ee,onRefreshModel:Pe,onShowNewPartialModal:Z[5]||(Z[5]=ne=>de.$emit("showNewPartialModal",ne))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",s5,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[t.unref(Mn)[j.name]?.fieldRules&&(o.config.isNewOtelSchema||j.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(Jz,{rules:t.unref(Mn)[j.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","is-konnect-managed-redis-enabled","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(qa.VaultSecretPicker),{config:o.config,setup:K.value,onCancel:Z[6]||(Z[6]=()=>K.value=!1),onProceed:z},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-9ddd337d"]]),c5={key:1},d5=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,r)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",c5,[t.renderSlot(n.$slots,"default")]))}}),u5={key:0},f5={class:"plugin-form-actions"},p5={key:0,class:"button-customize-deck-wrapper"},m5=xe(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.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(e,{emit:n}){const r=t.inject(Bn.KM_2306_CONDITION_FIELD_314,!1),o=t.inject(Bn.KM_2485_CLONED_PLUGINS,!1),i=t.ref(!1);t.provide(ue.PLUGIN_FORM_LAYOUT_STATE,i);const a=n,s=e,l=Ar.useRouter(),{i18n:{t:c}}=it.useI18n(),{customSchemas:d,typedefs:u}=it.useSchemas({app:s.config.app,credential:s.credential,experimentalRenders:s.config.app==="konnect"?s.config.experimentalRenders:void 0}),{formatPluginFieldLabel:f}=it.usePluginHelpers(),{shouldUseFreeForm:p}=it.useFreeFormResolver(),{getMessageFromError:m}=ue.useErrors(),{capitalize:h}=ue.useStringHelpers(),{objectsAreEqual:y}=ue.useHelpers(),{axiosInstance:g}=ue.useAxios(s.config?.axiosRequestConfig),{getClonedPlugin:_}=it.useCustomPluginApi({axiosInstance:ue.useAxios({...s.config?.axiosRequestConfig??{},konnect:{bypassGlobal404Handler:!0}}).axiosInstance,apiBaseUrl:s.config.apiBaseUrl,app:s.config.app,workspace:s.config.workspace,controlPlaneId:s.config.controlPlaneId}),k=t.ref(!1),b=t.computed(()=>!!s.pluginId),N=t.computed(()=>s.pluginId?ue.EntityBaseFormType.Edit:ue.EntityBaseFormType.Create),C=t.ref(void 0),w=t.ref(void 0),S=t.computed(()=>!!(s.credential&&s.config.entityId)),x=t.ref(void 0),T=t.ref({}),I=t.ref(),A=t.ref(),v=t.inject(Bn.KM_2503_CUSTOM_PLUGIN_FREEFORM,!1),V=t.ref(null),O=t.computed(()=>V.value!==null),$=t.computed(()=>O.value&&V.value?V.value:s.pluginType),Q=t.computed(()=>{if(s.engine)return s.engine;if(!(!v||!Ae.value))return O.value&&V.value?p(V.value)?"freeform":"vfg":"freeform"}),pe=t.computed(()=>p(s.pluginType,Q.value));t.provide(oa,{redisType:I,redisPath:A,isEditing:b.value});const H=[];t.provide(Jm,ge=>(H.push(ge),()=>{const we=H.indexOf(ge);we!==-1&&H.splice(we,1)}));const j=t.ref(!1),{isDeckEnabled:D,deckCustomizationOptions:ee,deckCalloutPreferenceKey:K}=ue.useBaseFormDeckOptions(()=>s.config,ue.SupportedEntityType.Plugin),J=t.ref(!1),ce=t.reactive({enabled:!0,protocols:[],tags:[]}),z=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),oe=t.ref([{title:c("view_configuration.json"),hash:"#json"},{title:c("view_configuration.yaml"),hash:"#yaml"}]);s.config.app==="konnect"&&oe.value.splice(1,0,{title:c("view_configuration.terraform"),hash:"#terraform"}),D.value&&oe.value.push({title:c("view_configuration.deck"),hash:"#deck"});const Pe=t.ref(oe.value[0].hash),Ee=t.ref(""),Ge=t.computed(()=>{if(S.value){let we=nt.form[s.config.app].credential[N.value];return we=we.replace(/{resourceEndpoint}/gi,ve.value),we}let ge;return s.config.entityType&&s.config.entityId?ge=nt.form[s.config.app].edit.forEntity.replace(/{entityType}/gi,s.config.entityType).replace(/{entityId}/gi,s.config.entityId):ge=nt.form[s.config.app].edit.all,s.config.app==="konnect"&&Mn[s.pluginType]?.useUIData?`${ge}?__ui_data=true`:ge}),se=()=>{k.value=!k.value},X=t.computed(()=>{const ge=s.config.entityType==="consumers"&&s.config.entityId||x.value?.consumer?.id,we=s.config.entityType==="consumer_groups"&&s.config.entityId||x.value?.consumer_group?.id,P=s.config.entityType==="services"&&s.config.entityId||x.value?.service?.id,fe=s.config.entityType==="routes"&&s.config.entityId||x.value?.route?.id;if(!(ge||we||P||fe))return{global:{entity:q.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const re={};return P&&(re.service={entity:q.PluginScope.SERVICE,entityEndpoint:"services",id:P,idField:To.SERVICE}),fe&&(re.route={entity:q.PluginScope.ROUTE,entityEndpoint:"routes",id:fe,idField:To.ROUTE}),ge&&(re.consumer={entity:q.PluginScope.CONSUMER,entityEndpoint:"consumers",id:ge,idField:To.CONSUMER}),we&&(re.consumer_group={entity:q.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:we,idField:To.CONSUMER_GROUP}),s.config.entityType&&(re.focusedEntity={entity:q.PluginScope[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()],entityEndpoint:s.config.entityType,id:s.config.entityId,idField:To[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()]}),re}),he=t.reactive({name:{default:s.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:c("plugins.form.fields.enabled.label"),textOn:c("plugins.form.fields.enabled.on_text"),textOff:c("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:s.hideScopeSelection&&(s.hideScopeSelection||N.value===ue.EntityBaseFormType.Create&&s.config.entityId)?"foreign":"selectionGroup",disabled:s.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:c("plugins.form.scoping.global.label"),description:c("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:c("plugins.form.fields.protocols.help"),label:c("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:c("plugins.form.fields.instance_name.label"),inputType:"text",help:c("plugins.form.fields.instance_name.help")},tags:u.tags,...r?{condition:{default:"",type:"input",label:c("plugins.form.fields.condition.label"),inputType:"text",help:c("plugins.form.fields.condition.tooltip"),placeholder:c("plugins.form.fields.condition.placeholder")}}:{}}),ve=t.computed(()=>{const ge=s.developer?"developers":"consumers",we=Br[s.pluginType]?.endpoint||"/plugins";return`${ge}/${s.config.entityId}${s.developer?"/credentials":""}${we}`}),je=ge=>{const we=Array.from(new Set(ge.map(P=>typeof P)));return we.length>1?"string":we[0]},qe=(ge,we,P,fe)=>{let re=we&&we.fields||[];const ie=d[$.value],Re=Br[s.pluginType]?.schema?.fields;return Array.isArray(re)&&(re=re.reduce((Oe,ye)=>{const be=Object.keys(ye)[0];return be.match(/-/g)?Oe[be.replace(/-/g,"_")]={...ye[be],fieldNameHasDashes:!0}:Oe[be]=ye[be],Oe},{})),Object.keys(re).sort().forEach(Oe=>{const ye=re[Oe];ye.type==="set"&&!(pe.value&&ye.elements.one_of)&&(ye.type="array");const be=ge?`${ge}-${Oe}`:`${Oe}`;if(ie?.fieldsToDelete?.includes(be)){Sb(P,be);return}if(Object.prototype.hasOwnProperty.call(ye,"overwrite")||ye.hidden)return;if(ye.type==="table")return qe(be,ye.schema,P);if(ye.fields)return fe&&ye.type==="record"?(P[be]={type:"object",model:Oe,schema:{fields:Object.values(qe(be,ye,{},!0))}},P):qe(be,ye,P);if(P[be]={id:be,model:Oe},P[be].type=ye.type==="boolean"?"checkbox":"input",P[be].required=ye.required,P[be].referenceable=ye.referenceable,be.startsWith("config-"))if(!fe&&ye.type==="array"&&(Ee.value=be),fe&&Ee.value&&be.startsWith(Ee.value)){const rt=be.slice(Ee.value.length+1);P[be].label=rt.split("-").map(f).join(".")}else P[be].label=f(be);if((ge==="config"||ge.startsWith("config-"))&&re[Oe]?.description&&(P[be].help=Ua.sanitize(Dl.marked.parse(re[Oe].description,{mangle:!1,headerIds:!1}))),ye.type==="map"){if(P[be].type="object-advanced",P[be].values=ye.values,ye.values.type==="array"){const{type:rt}=ye.values.elements||{};P[be].schema={fields:[{schema:{fields:[{...ft,model:be,valueArrayType:rt==="integer"?"number":rt||"string",inputAttributes:{...ft.inputAttributes,type:rt==="integer"?"number":"text",inputMode:rt==="integer"?"numeric":"text"}}]}}]}}else ye.values.fields&&(P[be].schema={fields:[{type:"object",model:"object",schema:{fields:ye.values.fields.map(rt=>{const Ze=Object.keys(rt)[0];return{model:Ze,type:"input",label:h(Ze),placeholder:Ze,inputType:rt[Ze].type}})}}]});return P}if(ye.enum&&ye.type==="array"&&(P[be].type="checklist",P[be].values=ye.enum,P[be].multi=!0,P[be].multiSelect=!0),ye.one_of&&ye.type!=="array"&&(P[be].type="select",P[be].values=ye.one_of,P[be].selectOptions={noneSelectedText:c("plugins.form.no_selection")}),ye.elements&&ye.type==="array"){const rt=ye.elements;if(P[be].referenceable=rt.referenceable,P[be].elements=rt,["string","integer","number"].includes(rt.type)&&!rt.one_of){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o}=P[be],{inputAttributes:ja,...Ly}=JSON.parse(JSON.stringify(ft));ja.type=rt.type==="string"?"text":"number",P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,inputAttributes:ja,...Ly}}else if(["string","integer","number"].includes(rt.type)&&rt.one_of){if(fe){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o}=P[be];P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,...zz(rt.one_of,ye.default)}}}else if(rt.type==="array"){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,elements:ja}=P[be],{inputAttributes:Ly,...V7}=JSON.parse(JSON.stringify(ft));P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,elements:ja,inputAttributes:Ly,...V7}}}if(ye.hint&&(P[be].hint=Ua.sanitize(ye.hint)),ie&&!ie.overwriteDefault&&Object.keys(ie).forEach(rt=>{if(rt===be){const{help:Ze,label:He,hint:Ye,values:Bt,referenceable:pt,elements:Ut}=P[be],{help:_o,...ja}=ie[rt];P[be]={help:Ze,label:He,hint:Ye,values:Bt,referenceable:pt,elements:Ut,...ja},typeof _o=="string"&&(P[be].help=Ua.sanitize(Dl.marked.parse(_o,{mangle:!1,headerIds:!1})))}}),ye.type==="array"&&ye.elements?.type==="record"&&Array.isArray(ye.elements.fields)){let rt={};for(const He of ye.elements.fields)rt={...rt,...He};const Ze=P[be]?.items?.schema?.fields;if(Array.isArray(Ze))for(const He of P[be].items.schema.fields){const Ye=rt[He.model]?.description;He.help===void 0&&typeof Ye=="string"&&(He.help=Ua.sanitize(Dl.marked.parse(Ye,{mangle:!1,headerIds:!1})))}if(Ze||(P[be].type="array",P[be].newElementButtonLabelClasses="kong-form-new-element-button-label",P[be].fieldClasses="array-card-container-wrapper",P[be].itemContainerComponent="FieldArrayCardContainer",P[be].items={type:"object",schema:{fields:Object.values(qe(be,ye.elements,{},!0))}},P[be].items.schema.fields.forEach(He=>{for(const Ye of ye.elements.fields){const Bt=Object.keys(Ye)[0],pt=He.id?.split?.("-")??[];if(pt[pt.length-1]===Bt){He.model=Bt,He.label=f(Bt);break}}}),ye.elements.type==="record"&&(P[be].nestedFields=!0)),!P[be].nestedFields)P[be].items.default=()=>ye.elements.fields.reduce((He,Ye)=>{const Bt=Object.keys(Ye)[0];return He[Bt]=Ye[Bt].default,He},{});else{const He=(Ye,Bt)=>{if(Ye.type==="object"){Ye.model&&(Bt[Ye.model]={});for(const pt of Ye.schema.fields)He(pt,Ye.model?Bt[Ye.model]:Bt)}else Ye.model&&(Bt[Ye.model]=Ye.default)};P[be].items.default=()=>{const Ye={};return He(P[be].items,Ye),Ye}}}if(S.value&&Re){for(let rt=0;rt<Re.length;rt++)if(Re[rt][be]){P[be]={...P[be],...Re[rt][be]};break}}if(ye.required&&ye.type!=="boolean"&&(P[be].required=!0,P[be].selectOptions={hideNoneSelectedText:!0}),ye.required&&ye.type==="boolean"&&(P[be].default=ye.default??!1),ye.default!=null&&typeof ye.default!="object"&&ye.default!=="function"&&(P[be].default=ye.default),P[be].type==="input"){["string","number"].includes(typeof P[be].default)&&s.config.app==="konnect"&&(P[be].placeholder=`Default: ${P[be].default===""?"<empty string>":P[be].default}`);const{type:rt}=ye.elements||{};rt&&(P[be].valueArrayType=rt==="integer"?"number":rt),P[be].inputType=ye.type==="array"||ye.type==="string"?ye.encrypted?"password":"text":ye.type}let Ct="string";ye.enum?Ct=je(ye.enum):ye.type==="boolean"?Ct="boolean":ye.type==="number"||ye.type==="integer"?(Ct="number",P[be].inputType="number"):ye.type==="array"?(Ct="array",P[be].default=ye.default,ye.len_min>0&&(P[be].submitWhenNull=!0)):ye.type==="foreign"?Ct="object":ye.default&&Array.isArray(ye.default)?(Ct="array",P[be].valueArrayType=je(ye.default)):ye.default&&(Ct=typeof ye.default),P[be].valueType=Ct,ye.fieldNameHasDashes&&(P[be].fieldNameHasDashes=!0)}),P},Be=()=>{const ge=O.value&&V.value?V.value:s.pluginType,we=Mn[ge]?.scope.includes(q.PluginScope.SERVICE)??!0,P=Mn[ge]?.scope.includes(q.PluginScope.ROUTE)??!0,fe=Mn[ge]?.scope.includes(q.PluginScope.CONSUMER)??!0,re=s.config.disableConsumerGroupScope?!1:Mn[ge]?.scope.includes(q.PluginScope.CONSUMER_GROUP)??!0,ie=s.config.entityType==="consumers"&&!!s.config.entityId||!!x.value?.consumer?.id,Re=s.config.entityType==="consumer_groups"&&!!s.config.entityId||!!x.value?.consumer_group?.id,Oe=s.config.entityType==="services"&&!!s.config.entityId||!!x.value?.service?.id,ye=s.config.entityType==="routes"&&!!s.config.entityId||!!x.value?.route?.id,be=[],Ct=(Ze,He,Ye)=>Ze?c("plugins.form.disable_source_scope_change",{scope:Ye}):He?c("plugins.form.disable_data_retrieving",{scope:Ye}):"",rt=Ze=>s.scopedEntitiesPermissions?.[Ze]?.canRetrieve===!1;if(we){const Ze=rt("service"),He="services",Ye=Oe&&s.disableScopeSelection;be.push({id:"service-id",model:"service-id",label:c("plugins.form.scoping.gateway_service.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:He,inputValues:{fields:["name","id"]},help:c("plugins.form.scoping.gateway_service.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(P){const Ze=rt("route"),He="routes",Ye=ye&&s.disableScopeSelection;be.push({id:"route-id",model:"route-id",label:c("plugins.form.scoping.route.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:c("plugins.form.scoping.route.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(fe){const Ze=rt("consumer"),He="consumers",Ye=ie&&s.disableScopeSelection;be.push({model:"consumer-id",label:c("plugins.form.scoping.consumer.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:c("plugins.form.scoping.consumer.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(re){const Ze=rt("consumer_group"),He="consumer_groups",Ye=Re&&s.disableScopeSelection;be.push({model:"consumer_group-id",label:c("plugins.form.scoping.consumer_group.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:c("plugins.form.scoping.consumer_group.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(be.length){const Ze=[...we?["service"]:[],...P?["route"]:[],...fe?["consumer"]:[],...re?["consumer_group"]:[]],Ye=Ze.splice(Ze.length-2,2).map(pt=>c(pt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${pt}.plural`)).join(`${Ze.length>0?",":""} and/or `),Bt=["Specific",[...Ze.length>0?[Ze.map(pt=>c(pt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${pt}.plural`)).join(", ")]:[],Ye].join(", ")].join(" ");he.selectionGroup.fields.push({label:c("plugins.form.scoping.label"),description:Bt,fields:[]}),he.selectionGroup.fields[1].fields=be}d[$.value]&&d[$.value].overwriteDefault&&Object.hasOwnProperty.call(d[$.value],"formSchema")&&Object.assign(he,d[$.value].formSchema)},Ve=t.computed(()=>!y(z.fields,ce,!0)),$e=t.computed(()=>!le.value&&!J.value&&(N.value===ue.EntityBaseFormType.Create||Ve.value)),Ke=t.ref(!1),de=t.ref(),Z=ge=>{s.credential&&ge.password&&(ge.password=""),z.fields.id=ge?.id||void 0,de.value=ge?.ordering,Object.assign(ce,z.fields),x.value=ge,Ke.value=!0},U=t.ref({}),ne=ge=>{z.fields=ge.model,z.fields.id=x.value?.id||void 0,Object.assign(ce,ge.originalModel),U.value=ge.data,s.isWizardStep&&a("model-updated",{model:z.fields,data:ge.data,resourceEndpoint:ve.value})},L=t.ref(new Map),M=t.computed(()=>[z.clientErrorMessage,z.serverErrorMessage].filter(Boolean).join("; ")),Y=ge=>{ge.valid?L.value.delete(ge.model):L.value.set(ge.model,ge.error),z.clientErrorMessage=[...L.value.entries()].map(([we,P])=>`${we}: ${typeof P=="string"?P:m(P)}`).join("; "),z.clientErrorMessage&&(z.serverErrorMessage="")};t.watch([X,Ke],(ge,we)=>{const P=ge[0]!==we[0],fe=ge[1],re=we[1];if(!S.value&&N.value===ue.EntityBaseFormType.Edit&&(P||fe&&fe!==re)){const ie=qe("config",T.value,he);Ae.value&&(ie._isCustomPlugin=!0),O.value&&V.value&&(ie._sourcePlugin=V.value),I.value&&(ie._supported_redis_partial_type=I.value),w.value=ie}},{deep:!0});const ae=()=>{s.config.cancelRoute?l.push(s.config.cancelRoute):a("cancel")},me=t.computed(()=>{const ge=s.config.entityType&&s.config.entityId&&!s.developer,we=S.value?nt.form[s.config.app].credential[N.value]:nt.form[s.config.app][N.value][ge?"forEntity":"all"];let P=`${s.config.apiBaseUrl}${we}`;return s.config.app==="konnect"&&(P=P.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),P=P.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:""),P=P.replace(/{resourceEndpoint}/gi,ve.value),P=P.replace(/{id}/gi,s.pluginId??""),P=P.replace(/{entityType}/gi,s.config.entityType||""),P=P.replace(/{entityId}/gi,s.config.entityId||""),P}),Ae=t.computed(()=>!Object.keys(Mn).includes(s.pluginType)),ze=t.computed(()=>{const ge=U.value;if(S.value){for(const we in q.PluginScope){const P=q.PluginScope[we];ge[P]&&!ge[P].id&&(ge[P]={id:s.config.entityId})}delete ge.created_at}return U.value.partials&&A.value&&Sb(ge,A.value),ge}),ot=t.computed(()=>{const{__ui_data:ge,...we}={...ze.value};return we}),F=async()=>{if(H.every(ge=>ge())&&!z.clientErrorMessage&&!s.isWizardStep)try{z.isReadonly=!0;let ge;const we=JSON.parse(JSON.stringify(ze.value)),P=d[$.value];!pe.value&&typeof P?.shamefullyTransformPayload=="function"&&P.shamefullyTransformPayload({originalModel:ce,model:z.fields,payload:we,schema:w.value}),N.value==="create"?ge=await g.post(me.value,we):N.value==="edit"&&(ge=s.config.app==="konnect"||I.value&&we.partials?await g.put(me.value,Object.assign({ordering:de.value},we)):await g.patch(me.value,we)),Object.assign(ce,z.fields),a("update",ge?.data)}catch(ge){z.serverErrorMessage=m(ge),a("error",ge)}finally{z.isReadonly=!1}},te=t.computed(()=>{const ge=S.value?Br[s.pluginType]?.schemaEndpoint:s.pluginType,we=S.value?nt.form[s.config.app].credentialSchema:nt.form[s.config.app].pluginSchema;let P=`${s.config.apiBaseUrl}${we}`;return s.config.app==="konnect"&&(P=P.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),P.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:"").replace(/{plugin}/gi,ge)}),G=t.ref(""),le=t.ref(!1),Ie=t.ref("");t.onBeforeMount(async()=>{le.value=!0;try{if(S.value&&s.config.app==="konnect"){const ge=Br[s.pluginType]?.schemaEndpoint,we=Wk[ge];G.value=ge,w.value=qe("",we,{}),le.value=!1}else{const ge=o&&Ae.value,we=s.schema?Promise.resolve(s.schema):g.get(te.value).then(fe=>fe.data),[P]=await Promise.all([we,ge?tt(s.pluginType):Promise.resolve()]);if(C.value=P,P)if(S.value)w.value=qe("",P,{}),le.value=!1;else{const fe=P.fields.find(ie=>ie.config);T.value=fe?fe.config:P,P.supported_partials&&(I.value=Object.keys(P.supported_partials).find(ie=>[yc.REDIS_CE,yc.REDIS_EE].includes(ie)),A.value=P.supported_partials[I.value]?.[0]),Be();const re=P.fields.find(ie=>ie.protocols)?.protocols;if(re){const{default:ie=[],elements:Re={}}=re;he.protocols.default=ie,he.protocols.placeholder=s.config.app==="konnect"?c("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:ie.join(", ")}):c("plugins.form.fields.protocols.placeholder"),Re.one_of?.length&&(he.protocols.values=Re.one_of.map(Oe=>({label:Oe,value:Oe})))}if(Ke.value||N.value===ue.EntityBaseFormType.Create){const ie=qe("config",T.value,he);I.value&&(ie._supported_redis_partial_type=I.value),Ae.value&&(ie._isCustomPlugin=!0),O.value&&V.value&&(ie._sourcePlugin=V.value),w.value=ie}}}}catch(ge){console.error(ge),Ie.value=m(ge),a("error:fetch-schema",ge)}finally{le.value=!1}});async function tt(ge){try{const we=await _(ge);V.value=we?.ref??null}catch(we){if(gi.isAxiosError(we)&&we.response?.status===404)return;throw we}}return(ge,we)=>{const P=t.resolveComponent("KSkeleton"),fe=t.resolveComponent("KEmptyState"),re=t.resolveComponent("KButton"),ie=t.resolveComponent("KTabs"),Re=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":i.value}])},[le.value?(t.openBlock(),t.createBlock(P,{key:0,type:"form"})):Ie.value?(t.openBlock(),t.createBlock(fe,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(c)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{key:2,"can-submit":$e.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":M.value,"fetch-url":Ge.value,"form-fields":ze.value,"is-readonly":z.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ae,"onFetch:error":we[6]||(we[6]=Oe=>ge.$emit("error",Oe)),"onFetch:success":Z,onLoading:we[7]||(we[7]=Oe=>ge.$emit("loading",Oe))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",u5)):(t.openBlock(),t.createBlock(d5,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",f5,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(re,{key:0,appearance:"tertiary","data-testid":`plugin-${b.value?"edit":"create"}-form-view-configuration`,onClick:we[5]||(we[5]=Oe=>se())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(re,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${b.value?"edit":"create"}-form-cancel`,disabled:z.isReadonly,onClick:ae},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(re,{appearance:"primary","data-testid":`plugin-${b.value?"edit":"create"}-form-submit`,disabled:!$e.value||z.isReadonly,type:"submit",onClick:F},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:F},null,32),t.createVNode(l5,{config:e.config,credential:S.value,developer:e.developer,editing:N.value===t.unref(ue.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":s.enableVaultSecretPicker,engine:Q.value,"entity-map":X.value,"raw-schema":C.value,record:x.value,schema:w.value,"onClick:createEntity":we[0]||(we[0]=Oe=>ge.$emit("click:create-entity",Oe)),"onClick:learnMore":we[1]||(we[1]=Oe=>ge.$emit("click:learn-more",Oe)),onGlobalAction:we[2]||(we[2]=(Oe,ye)=>ge.$emit("globalAction",Oe,ye)),onLoading:we[3]||(we[3]=Oe=>J.value=Oe),onModelUpdated:ne,onShowNewPartialModal:we[4]||(we[4]=Oe=>ge.$emit("showNewPartialModal",Oe)),onValidityChange:Y},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"])),t.createVNode(Re,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(c)("view_configuration.title"),visible:k.value,onClose:se},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(c)("view_configuration.message")),1),t.createVNode(ie,{modelValue:Pe.value,"onUpdate:modelValue":we[11]||(we[11]=Oe=>Pe.value=Oe),"data-testid":"form-view-configuration-slideout-tabs",tabs:oe.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ue.JsonCodeBlock),{config:e.config,"entity-record":ot.value,"fetcher-url":me.value,"request-method":s.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ue.YamlCodeBlock),{"deck-callout-preference-key":t.unref(D)?t.unref(K):void 0,"entity-record":ot.value,"onDeckCallout:clickCta":we[8]||(we[8]=Oe=>Pe.value="#deck")},null,8,["deck-callout-preference-key","entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ue.TerraformCodeBlock),{"credential-type":G.value,"entity-record":ot.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.unref(ee)?(t.openBlock(),t.createElementBlock("div",p5,[t.createVNode(re,{appearance:"secondary",class:"button-customize-deck",onClick:we[9]||(we[9]=Oe=>j.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.form.button_deck_customize")),1)]),_:1})])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"customization-options":t.unref(ee),"entity-record":ot.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"is-customization-modal-visible":j.value,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.workspace||void 0,onCustomizationClose:we[10]||(we[10]=Oe=>j.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-c298ae19"]]),g5={class:"plugin-filter"},h5={class:"plugin-tags-filter"},y5={class:"plugin-tags-filter-badges"},_5={class:"plugin-status-filter"},b5=xe(t.defineComponent({__name:"PluginFilter",props:t.mergeModels({entityType:{},entityId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const{i18n:{t:n}}=it.useI18n(),r={routes:q.PluginScope.ROUTE,services:q.PluginScope.SERVICE,consumers:q.PluginScope.CONSUMER,consumer_groups:q.PluginScope.CONSUMER_GROUP},o=t.computed(()=>e.entityType&&e.entityId?r[e.entityType]:void 0),i=t.useModel(e,"modelValue"),a=t.ref(""),s=t.ref({}),l=t.useTemplateRef("search-input"),c=t.useTemplateRef("tags-input"),d=(C,w)=>C.map(S=>w.find(x=>x.value===S).label).join(", "),u=t.ref(""),f=/^(?:[\x21-\x2B\x2D\x2E\x30-\x7E\p{N}\p{L}]+(?: *[\x21-\x2B\x2D\x2E\x30-\x7E\p{N}\p{L}])*)?$/u,p=t.computed(()=>u.value&&!f.test(u.value)?n("search.filter.tags_invalid"):""),m=()=>{l.value?.input?.focus()},h=()=>{c.value?.input?.focus()},y=()=>{a.value="",m()},g=(C,w)=>{const S=u.value;if(!S||!f.test(S)){h();return}C||(C=[]),C.includes(S)||C.push(S),u.value="",h(),w(C,C.join(", "))},_=(C,w,S)=>{const x=w.filter(T=>T!==C);S(x,x.join(", "))},k=t.computed(()=>({...o.value?{}:{scope:{label:n("plugins.list.table_headers.scope"),operators:["eq"],pinned:!0,multiple:!0,options:[{label:n("plugins.list.table_headers.applied_to_badges.route"),value:q.PluginScope.ROUTE},{label:n("plugins.list.table_headers.applied_to_badges.service"),value:q.PluginScope.SERVICE},{label:n("plugins.list.table_headers.applied_to_badges.consumer"),value:q.PluginScope.CONSUMER},{label:n("plugins.list.table_headers.applied_to_badges.consumer_group"),value:q.PluginScope.CONSUMER_GROUP},{label:n("plugins.list.table_headers.applied_to_badges.global"),value:q.PluginScope.GLOBAL}]}},status:{label:n("plugins.list.table_headers.status"),operators:["eq"],pinned:!0,maxWidth:350,options:[{value:"true",label:n("actions.enabled")},{value:"false",label:n("actions.disabled")}]},tags:{label:n("plugins.list.table_headers.tags"),operators:["eq"],pinned:!0,multiple:!0}})),b=t.computed(()=>{const C=new URLSearchParams;if(a.value&&C.set("filter[name][contains]",a.value),!o.value){const T=s.value.scope,I=Array.isArray(T?.value)?T.value:typeof T?.value=="string"&&T.value?[T.value]:[];I.length&&C.set("filter[scope][oeq]",I.join(","))}const w=s.value.status;w?.value&&C.set("filter[enabled]",w.value==="true"?"true":"false");const S=s.value.tags,x=Array.isArray(S?.value)?S.value:[];return x.length&&C.set("tags",x.join("/")),o.value&&e.entityId&&C.toString()&&C.set(`filter[${o.value}][eq]`,e.entityId),C.toString()});t.watch(b,C=>{i.value=C}),t.watch(i,C=>{C||(a.value="",s.value={},u.value="")});const N=(C,w)=>{const S=w[C];S&&(S.operatorDelimiter=": ")};return(C,w)=>{const S=t.resolveComponent("KInput"),x=t.resolveComponent("KBadge"),T=t.resolveComponent("KMultiselect"),I=t.resolveComponent("KRadio"),A=t.resolveComponent("KFilterGroup");return t.openBlock(),t.createElementBlock("div",g5,[t.createVNode(S,{ref:"search-input",modelValue:a.value,"onUpdate:modelValue":w[0]||(w[0]=v=>a.value=v),autocomplete:"off",class:"plugin-search-input","data-testid":"search-input",placeholder:t.unref(n)("search.placeholder.search")},{before:t.withCtx(()=>[t.createVNode(t.unref(Ne.SearchIcon),{decorative:""})]),after:t.withCtx(()=>[t.withDirectives(t.createVNode(t.unref(Ne.CloseIcon),{class:"plugin-search-clear",role:"button",tabindex:"0",onClick:y,onKeydown:[t.withKeys(t.withModifiers(y,["prevent"]),["enter"]),t.withKeys(t.withModifiers(y,["prevent"]),["space"])]},null,8,["onKeydown"]),[[t.vShow,a.value!==""]])]),_:1},8,["modelValue","placeholder"]),t.createVNode(A,{modelValue:s.value,"onUpdate:modelValue":w[2]||(w[2]=v=>s.value=v),filters:k.value,onApply:N},{"filter-tags":t.withCtx(({value:v,setValue:V})=>[t.createElementVNode("div",h5,[t.createVNode(S,{ref:"tags-input",modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=O=>u.value=O),autocomplete:"off","data-testid":"tags-filter-input",error:!!p.value,"error-message":p.value,placeholder:t.unref(n)("search.placeholder.tags_filter"),onKeydown:t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.createVNode(t.unref(Ne.ArrowTopLeftIcon),{class:"plugin-tags-filter-add","data-testid":"tags-filter-add",role:"button",tabindex:"0",onClick:O=>g(v,V),onKeydown:[t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["enter"]),t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["space"])]},null,8,["onClick","onKeydown"])]),_:2},1032,["modelValue","error","error-message","placeholder","onKeydown"]),t.createElementVNode("div",y5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(v,O=>(t.openBlock(),t.createBlock(x,{key:O,"icon-before":!1},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon),{"data-testid":"tags-filter-remove-tag",role:"button",tabindex:"0",onClick:$=>_(O,v,V),onKeydown:[t.withKeys(t.withModifiers($=>_(O,v,V),["prevent"]),["enter"]),t.withKeys(t.withModifiers($=>_(O,v,V),["prevent"]),["space"])]},null,8,["onClick","onKeydown"])]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(O)+" ",1)]),_:2},1024))),128))])])]),"filter-scope":t.withCtx(({value:v,setValue:V,options:O})=>[t.createVNode(T,{"data-testid":"scope-filter-select",items:O,"model-value":v,placeholder:t.unref(n)("search.placeholder.scope_filter"),"onUpdate:modelValue":$=>V($,d($,O))},null,8,["items","model-value","placeholder","onUpdate:modelValue"])]),"filter-status":t.withCtx(({value:v,setValue:V,options:O})=>[t.createElementVNode("div",_5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(O,$=>(t.openBlock(),t.createBlock(I,{key:$.value,"data-testid":"status-filter-radio",label:$.label,"model-value":v,"selected-value":$.value,"onUpdate:modelValue":Q=>V(Q,$.label)},null,8,["label","model-value","selected-value","onUpdate:modelValue"]))),128))])]),_:1},8,["modelValue","filters"])])}}}),[["__scopeId","data-v-c4f55d0a"]]),k5={class:"kong-ui-entities-plugins-list"},w5={class:"button-row"},C5={class:"name-cell-wrapper"},E5={key:0,class:"info-wrapper"},N5={class:"info-name"},S5={key:1,class:"info-wrapper"},A5={key:0,class:"info-name"},x5={key:1,class:"info-name"},I5={key:2,class:"info-type"},v5={key:0},T5={key:1},B5={key:2},O5={key:1},P5={key:0},V5=xe(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.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(e,{emit:n}){const r=it.usePluginMetaData(),o=n,i=e,{i18n:{t:a,formatUnixTimeStamp:s}}=it.useI18n(),l=Ar.useRouter(),{axiosInstance:c}=ue.useAxios(i.config?.axiosRequestConfig),{hasRecords:d,handleStateChange:u}=ue.useTableState(()=>w.value),f=t.computed(()=>d.value&&i.config.app==="konnect"),p=t.computed(()=>!!i.config.entityId),m=t.computed(()=>i.config?.entityType==="consumers"),h=t.computed(()=>i.config?.entityType==="consumer_groups"),y=i.config.app==="konnect"||ue.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),g=t.computed(()=>i.config.app==="konnect"&&!!i.config.pluginTableImprovements?.filtering),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),k={name:{label:g.value?a("plugins.list.table_headers.plugin"):a("plugins.list.table_headers.name"),searchable:!0,sortable:!g.value,hidable:!1}};g.value&&(k.instanceName={label:a("plugins.list.table_headers.name"),sortable:!1}),i.config?.entityId||(k.appliedTo=g.value?{label:a("plugins.list.table_headers.scope"),sortable:!1}:{label:a("plugins.list.table_headers.applied_to"),sortable:!1}),k.enabled=g.value?{label:a("plugins.list.table_headers.status"),sortable:!1}:{label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},y&&(k.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),k.tags={label:a("plugins.list.table_headers.tags"),sortable:!1},k.updated_at={label:a("plugins.list.table_headers.updated_at"),sortable:!0};const b=k,N=L=>{let M=`${i.config.apiBaseUrl}${L}`;return i.config.app==="konnect"&&(M=M.replace(/{controlPlaneId}/gi,i.config?.controlPlaneId||"")),M.replace(/\/{workspace}/gi,i.config?.workspace?`/${i.config.workspace}`:"").replace(/{entityType}/gi,i.config?.entityType||"").replace(/{entityId}/gi,i.config?.entityId||"")},C=t.computed(()=>N(i.config.entityType?nt.list[i.config.app].forEntity:nt.list[i.config.app].all)),w=t.ref(""),S=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:k.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:{...k.enabled,label:a("search.filter.field.enabled")},name:k.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),x=t.computed(()=>g.value&&!!w.value),T=t.computed(()=>x.value?N(nt.list.konnect.search):C.value),{fetcher:I,fetcherState:A,fetcherCacheKey:v}=ue.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier,...x.value?{isExactMatch:!1}:{}})),T),V=()=>{w.value=""},O=()=>{v.value++},$=t.ref(null),Q=L=>{const M=[];return(L.route?.id||L.route_id)&&M.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),(L.service?.id||L.service_id)&&M.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),(L.consumer?.id||L.consumer_id)&&M.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),(L.consumer_group?.id||L.consumer_group_id)&&M.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),M.length?M:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},pe=async(L,M)=>L===null?!1:await i.canRetrieveScopedEntity?.(L,M.id),H=(L,M)=>M[L]?.id,j=(L,M)=>{const Y=H(L,M);return Y&&i.config?.getScopedEntityViewRoute?i.config.getScopedEntityViewRoute(L,Y):null},D=(L,M)=>{const Y=j(L,M);Y&&l.push(Y)},ee=t.ref(!1),K=t.ref(null),J=t.computed(()=>{const L={action:"disable",id:"",name:""};if(K.value){const{enabled:M,id:Y,name:ae}=K.value;L.action=M?"disable":"enable",L.id=Y,L.name=r.getDisplayName(ae)||Y}return L}),ce=L=>{ee.value=!0,K.value=L},z=()=>{ee.value=!1,K.value=null},oe=async()=>{if(!await i.canEdit?.(K.value)||!K.value)return;let M=`${i.config.apiBaseUrl}${nt.item[i.config.app]?.[i.config?.entityType?"forEntity":"all"].replace(/{entityType}/gi,i.config?.entityType||"").replace(/{entityId}/gi,i.config?.entityId||"")}`.replace(/{id}/gi,K.value.id||"");i.config.app==="konnect"&&(M=M.replace(/{controlPlaneId}/gi,i.config?.controlPlaneId||"")),M=M.replace(/\/{workspace}/gi,i.config?.workspace?`/${i.config.workspace}`:"");const Y=!K.value.enabled;try{const ae=i.config?.app;let me;w.value&&ae==="konnect"&&(me=await c.get(M));const{data:Ae}=ae==="konnect"?await c.put(M,{...me?.data||K.value,enabled:Y},{timeout:12e4}):await c.patch(M,{...K.value,enabled:Y},{timeout:12e4});o("toggle-enabled",Y,Ae),K.value.enabled=Y}catch(ae){o("error",ae)}},Pe=async(L,M)=>{const Y=L.id;if(!await M(Y)){o("copy:error",{entity:L,field:"id",message:a("errors.copy")});return}o("copy:success",{entity:L,field:"id",message:a("copy.success",{val:Y})})},Ee=async(L,M)=>{const Y=JSON.stringify(L);if(!await M(Y)){o("copy:error",{entity:L,message:a("errors.copy")});return}o("copy:success",{entity:L,message:a("copy.success_brief")})},Ge=async L=>{await i.canRetrieve?.(L)&&l.push(i.config.getViewRoute(L))},se=L=>({label:a("actions.view"),to:i.config.getViewRoute(L)}),X=L=>({label:a("actions.edit"),to:i.config.getEditRoute(L)}),he=L=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(L)}),ve=t.ref(void 0),je=t.ref(!1),qe=t.ref(!1),Be=t.ref(""),Ve=ue.useDeleteUrlBuilder(i.config,C.value),$e=L=>{ve.value=L,je.value=!0},Ke=()=>{je.value=!1},de=async()=>{if(ve.value?.id){qe.value=!0;try{await c.delete(Ve(ve.value.id)),qe.value=!1,je.value=!1,v.value++,o("delete:success",ve.value)}catch(L){Be.value=L.response?.data?.message||L.message||a("errors.delete"),o("error",L)}finally{qe.value=!1}}},Z=()=>{l.push(i.config.createRoute)};t.watch(A,L=>{if(L.status===ue.FetcherStatus.Error){$.value={title:a("errors.general")},L.error?.response?.data?.message&&($.value.message=L.error.response.data.message),o("error",L.error);return}$.value=null});const U=t.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")}),ne=t.ref(!1);return t.onBeforeMount(async()=>{ne.value=await i.canCreate(),ne.value&&(U.value.title=a("plugins.list.empty_state.title"),U.value.ctaText=a("actions.create"))}),(L,M)=>{const Y=t.resolveComponent("KButton"),ae=t.resolveComponent("KEmptyState"),me=t.resolveComponent("RouterLink"),Ae=t.resolveComponent("KBadge"),ze=t.resolveComponent("KTruncate"),ot=t.resolveComponent("KInputSwitch"),F=t.resolveComponent("KDropdownItem"),te=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",k5,[t.createVNode(t.unref(ue.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":U.value,"enable-entity-actions":"","error-message":$.value,fetcher:t.unref(I),"fetcher-cache-key":t.unref(v),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:w.value,"table-headers":t.unref(b),title:e.title,"title-tag":e.titleTag,onClearSearchInput:V,"onClick:row":M[5]||(M[5]=G=>Ge(G)),onSort:O,onState:t.unref(u)},t.createSlots({"toolbar-filter":t.withCtx(()=>[g.value?(t.openBlock(),t.createBlock(b5,{key:0,modelValue:w.value,"onUpdate:modelValue":M[0]||(M[0]=G=>w.value=G),"entity-id":i.config?.entityId,"entity-type":i.config?.entityType},null,8,["modelValue","entity-id","entity-type"])):(t.openBlock(),t.createBlock(t.unref(ue.EntityFilter),{key:1,modelValue:w.value,"onUpdate:modelValue":M[1]||(M[1]=G=>w.value=G),config:S.value},null,8,["modelValue","config"]))]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",w5,[!p.value&&f.value?(t.openBlock(),t.createBlock(Y,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:M[2]||(M[2]=G=>L.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(Y,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:G})=>[t.createElementVNode("div",C5,[t.createVNode(t.unref(Sr.PluginIcon),{class:"plugin-icon",name:G.name,size:24},null,8,["name"]),g.value?(t.openBlock(),t.createElementBlock("div",E5,[t.createElementVNode("span",N5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)])):(t.openBlock(),t.createElementBlock("div",S5,[G.instance_name?(t.openBlock(),t.createElementBlock("span",A5,t.toDisplayString(G.instance_name),1)):(t.openBlock(),t.createElementBlock("span",x5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)),G.instance_name?(t.openBlock(),t.createElementBlock("span",I5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)):t.createCommentVNode("",!0)]))])]),instanceName:t.withCtx(({row:G})=>[t.createTextVNode(t.toDisplayString(G.instance_name||"-"),1)]),appliedTo:t.withCtx(({row:G})=>[Q(G).length>0?(t.openBlock(),t.createBlock(ze,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Q(G),(le,Ie)=>(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:le.badgeText,"auth-function":()=>pe(le.type,G),"force-show":""},{default:t.withCtx(({isAllowed:tt})=>[g.value?(t.openBlock(),t.createElementBlock("div",v5,[tt&&le.type&&j(le.type,G)?(t.openBlock(),t.createBlock(me,{key:0,class:"scope-link",to:j(le.type,G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(le.badgeText),1)]),_:2},1032,["to"])):(t.openBlock(),t.createElementBlock("span",T5,t.toDisplayString(le.badgeText),1)),Ie<Q(G).length-1?(t.openBlock(),t.createElementBlock("span",B5,", ")):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(Ae,{key:1,class:t.normalizeClass(tt||"disabled"),onClick:t.withModifiers(ge=>tt&&le.type&&D(le.type,G),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(le.badgeText),1)]),_:2},1032,["class","onClick"]))]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",O5,"-"))]),enabled:t.withCtx(({row:G})=>[g.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:G.enabled?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(G.enabled?t.unref(a)("actions.enabled"):t.unref(a)("actions.disabled")),1)]),_:2},1032,["appearance"])):(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:1,"auth-function":async()=>!!(await e.canEdit(G)&&await e.canToggle(G)),"force-show":""},{default:t.withCtx(({isAllowed:le})=>[t.createElementVNode("div",{onClick:M[4]||(M[4]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(ot,{disabled:!le,"disabled-tooltip-text":!le&&e.config.getToggleDisabledTooltip?.(G)||void 0,"model-value":G.enabled,onClick:t.withModifiers(Ie=>le&&ce(G),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]),_:2},1032,["auth-function"]))]),ordering:t.withCtx(({rowValue:G})=>[g.value?(t.openBlock(),t.createElementBlock("span",P5,t.toDisplayString(t.unref(qf)(G)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)):(t.openBlock(),t.createBlock(Ae,{key:1,appearance:t.unref(qf)(G)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(qf)(G)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"]))]),tags:t.withCtx(({rowValue:G})=>[t.createVNode(t.unref(ue.TableTags),{tags:G},null,8,["tags"])]),updated_at:t.withCtx(({row:G,rowValue:le})=>[t.createTextVNode(t.toDisplayString(t.unref(s)(le??G.created_at)),1)]),actions:t.withCtx(({row:G})=>[t.createVNode(te,null,{default:t.withCtx(({copyToClipboard:le})=>[t.createVNode(F,{"data-testid":"action-entity-copy-id",onClick:Ie=>Pe(G,le)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(te,null,{default:t.withCtx(({copyToClipboard:le})=>[t.createVNode(F,{"data-testid":"action-entity-copy-json",onClick:Ie=>Ee(G,le)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(G)},{default:t.withCtx(()=>[t.createVNode(F,{"data-testid":"action-entity-view","has-divider":"",item:se(G)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canEdit(G)},{default:t.withCtx(()=>[t.createVNode(F,{"data-testid":"action-entity-edit",item:X(G)},null,8,["item"])]),_:2},1032,["auth-function"]),g.value?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:0,"auth-function":async()=>!!(await e.canEdit(G)&&await e.canToggle(G)),"force-show":""},{default:t.withCtx(({isAllowed:le})=>[t.createVNode(F,{"data-testid":"action-entity-toggle-enabled",disabled:!le,onClick:Ie=>le&&ce(G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(G.enabled?t.unref(a)("actions.disable"):t.unref(a)("actions.enable")),1)]),_:2},1032,["disabled","onClick"])]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),!m.value&&!h.value&&t.unref(y)?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:1,"auth-function":()=>e.canConfigureDynamicOrdering(G)},{default:t.withCtx(()=>[he(G)?(t.openBlock(),t.createBlock(F,{key:0,"data-testid":"action-entity-config-dyn-order",item:he(G)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canDelete(G)},{default:t.withCtx(()=>[t.createVNode(F,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:le=>$e(G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!w.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>[t.createVNode(ae,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Ne.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[ne.value?(t.openBlock(),t.createBlock(Y,{key:0,"data-testid":"entity-create-button",onClick:Z},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(Y,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:M[3]||(M[3]=G=>L.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[e.config?.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"]),t.createVNode(t.unref(ue.EntityToggleModal),{action:J.value.action,"entity-id":J.value.id,"entity-name":J.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":oe,visible:ee.value,onCancel:z,onProceed:z},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ue.EntityDeleteModal),{"action-pending":qe.value,description:t.unref(a)("delete.description"),"entity-name":ve.value&&(ve.value.instance_name||ve.value.name||ve.value.id),"entity-type":t.unref(ue.EntityTypes).Plugin,error:Be.value,title:t.unref(a)("delete.title"),visible:je.value,onCancel:Ke,onProceed:de},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-668423ed"]]),$5={class:"plugin-select-card-wrapper"},R5=["data-testid"],L5={class:"plugin-card-header"},D5={class:"plugin-card-title"},M5={key:0,class:"plugin-card-actions"},F5=["data-testid","title"],j5={key:0,class:"plugin-card-text"},U5={key:0,class:"custom-plugin-badges"},K5=["title"],pg=xe(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=n,o=e,i=Ar.useRouter(),{i18n:{t:a}}=it.useI18n(),s=t.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),l=t.computed(()=>!C.value||N.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")]),c=t.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),d=t.computed(()=>typeof o.config.getCustomEditRoute=="function"),u=t.computed(()=>o.plugin.customPluginType==="cloned"),f=t.computed(()=>u.value?o.canDeleteClonedPlugin:o.canDeleteCustomPlugin),p=t.computed(()=>u.value?o.canEditClonedPlugin:o.canEditCustomPlugin),m=t.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),h=t.computed(()=>p.value&&d.value),y=t.computed(()=>f.value),g=t.computed(()=>!!(C.value&&!N.value&&m.value&&o.navigateOnClick&&(y.value||h.value))),_=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},k=()=>{o.navigateOnClick?_():b()},b=()=>{r("plugin-clicked",o.plugin)},N=t.computed(()=>o.plugin.id==="custom-plugin-create"),C=t.computed(()=>o.plugin.group===q.PluginGroup.CUSTOM_PLUGINS),w=()=>{C.value&&r("custom-plugin-delete")},S=(T,I)=>{const A=o.config;typeof A.getCustomEditRoute=="function"&&i.push(A.getCustomEditRoute(T,I))},x=()=>{if(!c.value&&C.value){const T=o.config;N.value&&T.createCustomRoute?i.push(T.createCustomRoute):C.value&&_()}};return(T,I)=>{const A=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdownItem"),V=t.resolveComponent("KDropdownMenu"),O=t.resolveComponent("KBadge"),$=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",$5,[t.createVNode($,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:c.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:I[1]||(I[1]=Q=>c.value||C.value?void 0:k())},[t.createElementVNode("div",L5,[t.createElementVNode("div",D5,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!C.value})},t.toDisplayString(e.plugin.name),3)]),g.value?(t.openBlock(),t.createElementBlock("div",M5,[t.createVNode(V,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"edit-plugin-schema",onClick:I[0]||(I[0]=t.withModifiers(Q=>S(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),y.value?(t.openBlock(),t.createBlock(v,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":h.value,onClick:t.withModifiers(w,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":C.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:x},[t.createVNode(t.unref(Sr.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),e.plugin.description||l.value.length?(t.openBlock(),t.createElementBlock("div",j5,[l.value.length?(t.openBlock(),t.createElementBlock("div",U5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,Q=>(t.openBlock(),t.createBlock(O,{key:Q,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Q),1)]),_:2},1024))),128))])):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,K5)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,F5),t.createElementVNode("div",{class:"plugin-card-footer",onClick:x},t.toDisplayString(N.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,R5)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-eb0977c9"]]),_d=xe(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),{getMessageFromError:a}=ue.useErrors(),{axiosInstance:s}=ue.useAxios(r.config?.axiosRequestConfig),l=t.computed(()=>u.value?i("delete.plugin_schema_in_use_title"):i("delete.title",{name:r.plugin?.name||i("delete.custom_plugin")})),c=t.ref(!1),d=t.ref(""),u=t.ref(!1),f=t.computed(()=>{const m=r.plugin.customPluginType;if(r.config.app==="konnect"){const h=m==="streaming"?nt.select[r.config.app].streamingCustomPluginItem:m==="cloned"?nt.customPlugin[r.config.app].cloned.edit:nt.select[r.config.app].schemaCustomPluginItem;return`${r.config.apiBaseUrl}${h}`.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"").replace(/{pluginId}/gi,r.plugin.id)}if(r.config.app==="kongManager"&&m&&m!=="schema"){const h=m==="cloned"?nt.customPlugin[r.config.app].cloned.edit:nt.customPlugin[r.config.app].streamed.edit;return`${r.config.apiBaseUrl}${h}`.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}return null}),p=async()=>{if(c.value=!0,d.value="",!r.plugin?.name){c.value=!1;return}try{f.value&&await s.delete(f.value),o("proceed")}catch(m){JC(m)?u.value=!0:d.value=a(m)}finally{c.value=!1}};return(m,h)=>{const y=t.resolveComponent("KAlert"),g=t.resolveComponent("KButton"),_=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ue.EntityDeleteModal),{key:0,"action-pending":c.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(i)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ue.EntityTypes).Plugin,error:d.value,"need-confirm":"",title:l.value,visible:"",onCancel:h[0]||(h[0]=k=>m.$emit("closed")),onProceed:p},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(_,{key:1,"action-button-disabled":c.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:l.value,visible:"",onCancel:h[2]||(h[2]=k=>m.$emit("closed"))},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"danger",message:t.unref(i)("delete.plugin_schema_in_use_message")},null,8,["message"])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(g,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[1]=k=>m.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9514182c"]]),q5={class:"custom-plugins-grid"},G5={class:"empty-state-title"},z5={class:"empty-state-description"},mg=310,H5=xe(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:s}=it.usePluginHelpers(),l=t.ref(!0),c=C=>{o("plugin-clicked",C)},d=t.computed(()=>{const C=JSON.parse(JSON.stringify(r.pluginList))[q.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:q.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(C):C}),u=t.ref(!1),f=t.ref(null),p=C=>{u.value=!0,f.value={id:C.id,name:C.name,customPluginType:C.customPluginType}},m=C=>{C&&(o("revalidate"),o("delete:success",f.value?.name||"")),u.value=!1,f.value=null},h=t.ref(mg),y=t.ref(null),g=t.ref(null),_=t.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),k=t.ref(!1),b=()=>{h.value=Math.max(a(g.value),mg),N()},N=()=>{g.value?.length&&(k.value=s(y.value,g.value?.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),mg),N(),window?.addEventListener("resize",b)}),t.onUnmounted(()=>{window?.removeEventListener("resize",b)}),(C,w)=>{const S=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",q5,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=T=>l.value=T),class:"custom-plugins-collapse","data-testid":`${t.unref(q.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(q.PluginGroup).CUSTOM_PLUGINS,"trigger-label":l.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(T,I)=>(t.openBlock(),t.createBlock(pg,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:T,onCustomPluginDelete:A=>p(T),onPluginClicked:c},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},[k.value?void 0:{name:"trigger",fn:t.withCtx(()=>[w[2]||(w[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(S,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",G5,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",z5,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&f.value?(t.openBlock(),t.createBlock(_d,{key:2,config:e.config,plugin:f.value,onClosed:m,onProceed:w[1]||(w[1]=T=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-909f4d5f"]]),gg=310,QC=xe(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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:t.mergeModels(["plugin-clicked","delete:success"],["update:modelValue"]),setup(e,{emit:n}){const r=t.useModel(e,"modelValue"),o=e,i=n,{i18n:{t:a}}=it.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=it.usePluginHelpers(),c=t.ref(gg),d=t.ref(null),u=t.ref(null),f=t.computed(()=>r.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=t.ref(!1),h=t.ref(null),y=b=>{m.value=!0,h.value={id:b.id,name:b.name,customPluginType:b.customPluginType}},g=b=>{b&&i("delete:success",h.value?.name||""),m.value=!1,h.value=null},_=()=>{c.value=Math.max(s(u.value),gg),k()},k=()=>{u.value?.length&&(p.value=l(d.value,u.value?.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(s(u.value),gg),k(),window?.addEventListener("resize",_)}),t.onUnmounted(()=>{window?.removeEventListener("resize",_)}),(b,N)=>{const C=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(C,{modelValue:r.value,"onUpdate:modelValue":N[0]||(N[0]=w=>r.value=w),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":r.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(f.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.plugins,w=>(t.openBlock(),t.createBlock(pg,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:u,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onCustomPluginDelete:S=>y(w),onPluginClicked:S=>i("plugin-clicked",w)},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},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[N[2]||(N[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"]),m.value&&h.value?(t.openBlock(),t.createBlock(_d,{key:0,config:e.config,plugin:h.value,onClosed:g,onProceed:N[1]||(N[1]=w=>g(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-7f683497"]]),W5={class:"plugin-select-grid"},Y5={class:"empty-state-title"},J5={class:"empty-state-description"},hg=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),a=t.ref(!1),s=t.ref(Ap.reduce((d,u)=>(d[u]=!1,d),{})),l=d=>{o("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(r.pluginList));return r.config.app==="konnect"&&delete d[q.PluginGroup.CUSTOM_PLUGINS],d});return(d,u)=>{const f=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",W5,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(f,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",Y5,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",J5,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!r.hideHighlightedPlugins&&r.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(QC,{key:1,modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=p=>a.value=p),"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:r.highlightedPluginsTitle||t.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:r.highlightedPlugins,"onDelete:success":u[1]||(u[1]=p=>o("delete:success",p)),onPluginClicked:u[2]||(u[2]=p=>l(p))},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"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Ap),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(QC,{modelValue:s.value[p],"onUpdate:modelValue":m=>s.value[p]=m,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],"onDelete:success":u[3]||(u[3]=m=>o("delete:success",m)),onPluginClicked:u[4]||(u[4]=m=>l(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"])])):t.createCommentVNode("",!0)],64))),256))])}}}),X5={class:"kong-ui-entities-plugin-select-form"},Z5={class:"plugins-filter-input-container"},Q5={key:0},eH={key:3,"aria-live":"polite",class:"plugins-results-container"},tH={"data-testid":"kong-tab"},nH={class:"tab-description"},rH={"data-testid":"custom-tab"},oH={class:"tab-description"},iH={key:1},aH=xe(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="kongManager"&&!e.workspace||e.app==="konnect"&&(!e.controlPlaneId||e.workspace)||!e.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(e,{emit:n}){const r=e,o=n,i=Ar.useRoute(),a=Ar.useRouter(),{i18n:{t:s}}=it.useI18n(),{pluginMetaData:l}=it.usePluginMetaData(),{getMessageFromError:c}=ue.useErrors(),{sortAlpha:d,objectsAreEqual:u}=ue.useHelpers(),f=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),y=t.ref(""),g=t.ref([]),_=t.ref([]),k=t.ref([]),b=t.ref({}),N=t.ref([]),C=t.ref(null),w=t.ref(!1),{axiosInstance:S}=ue.useAxios(r.config?.axiosRequestConfig),x=U=>U==="none"||U==="disabled"?new Set:new Set(Array.isArray(U)?U:[U]),T=t.computed(()=>x(r.customPluginSupport)),I=t.computed(()=>[...T.value].sort().join("|")),A=t.computed(()=>r.customPluginSupport==="disabled"),v=t.computed(()=>A.value||T.value.size>0),V=t.computed(()=>T.value.has("streaming")),O=t.computed(()=>T.value.has("cloned")),$=U=>gi.isAxiosError(U)&&U.code==="ERR_CANCELED",Q=U=>c(U).toLowerCase().includes("requires a license"),pe=t.computed(()=>b.value?Object.entries(b.value).filter(([U])=>U!==q.PluginGroup.CUSTOM_PLUGINS).reduce((U,[,ne])=>{for(const L of ne??[])U[L.id]=L;return U},{}):{}),H=t.computed(()=>{if(!b.value)return{};const U=f.value.toLowerCase(),ne=JSON.parse(JSON.stringify(b.value));for(const L in b.value){const M=b.value[L]?.filter(Y=>Y.name.toLowerCase().includes(U)||Y.id.toLowerCase().includes(U)||Y.group.toLowerCase().includes(U)||Y.clonedFromRef?.toLowerCase().includes(U)||Y.customPluginType?.toLowerCase().includes(U))||[];M.length?ne[L]=M:delete ne[L]}return ne}),j=t.computed(()=>r.highlightedPluginIds.reduce((U,ne)=>{const L=pe.value[ne];return L&&U.push(L),U},[])),D=t.computed(()=>Object.keys(H.value).length>0),ee=t.computed(()=>Object.keys(b.value).length>0&&!D.value),K=t.computed(()=>r.config.app!=="konnect"||!v.value?[]:[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:A.value}]),J=t.computed(()=>{let U=K.value.length&&(i?.hash||K.value[0]?.hash)||"";return U==="#custom"&&A.value&&(U="#kong"),U}),ce=()=>{const U=new Map(k.value.map(M=>[M.name,M])),ne=new Set(_.value.map(M=>M.name)),L=new Set([...ne,...U.keys()]);return[...new Set([...Object.keys({...r.availableOnServer?{}:l}),...g.value,...L])].filter(M=>!r.ignoredPlugins.includes(M)).filter(M=>{if(!r.config.entityType)return M;const Y=U.has(M)?U.get(M).ref:M;return r.config.entityType==="services"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.SERVICE)||r.config.entityType==="routes"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.ROUTE)||r.config.entityType==="consumer_groups"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.CONSUMER_GROUP)||r.config.entityType==="consumers"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.CONSUMER)?!1:M}).reduce((M,Y)=>{const ae=l[Y]&&l[Y].name||Y,me=U.get(Y),Ae=ne.has(Y),ze={...l[Y],id:Y,name:ae,available:g.value.includes(Y)||!!me||Ae,disabledMessage:"",group:l[Y]?.group||q.PluginGroup.CUSTOM_PLUGINS};ze.group===q.PluginGroup.CUSTOM_PLUGINS&&(me?(ze.customPluginType="cloned",ze.clonedFromRef=me.ref):Ae?ze.customPluginType="streaming":ze.customPluginType="schema"),r.disabledPlugins&&(ze.disabledMessage=r.disabledPlugins[Y]);const ot=ze.group||s("plugins.select.misc_plugins");let F=M[ot];return F||(F=[]),F.push(ze),F.sort(d("name")),M[ot]=F,M},{})},z=t.computed(()=>{let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].availablePlugins}`;if(r.config.app==="konnect")U=U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"");else if(r.config.app==="kongManager"&&r.config.gatewayInfo?.edition==="community")return`${r.config.apiBaseUrl}${nt.select[r.config.app].availablePluginsForOss}`;return U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}),oe=t.computed(()=>{if(V.value){let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].streamingCustomPlugins}`;return r.config.app==="konnect"?U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),Pe=t.computed(()=>{if(O.value){let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].clonedPlugins}`;return r.config.app==="konnect"?U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),Ee=t.computed(()=>{if(r.config.entityType&&r.config.entityId){let U=`${r.config.apiBaseUrl}${nt.list[r.config.app].forEntity}`;return r.config.app==="konnect"&&(U=U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{entityType}/gi,r.config.entityType||"").replace(/{entityId}/gi,r.config.entityId||"")}return""}),Ge=U=>{a.replace({hash:U,query:i.query})};t.watch(()=>r.disabledPlugins,(U,ne)=>{!u(U,ne)&&!p.value&&(b.value=ce())}),t.watch(()=>r.ignoredPlugins,(U,ne)=>{!u(U,ne)&&!p.value&&(b.value=ce())}),t.watch(p,U=>{o("loading",U)});const se=async U=>{if(!Ee.value){N.value=[];return}try{const{data:{data:ne}}=await S.get(Ee.value,{signal:U});ne?.length&&(N.value=ne.reduce((L,M)=>(M.name&&L.push(M.name),L),[]))}catch(ne){$(ne)||(N.value=[])}},X=async U=>{const ne=[];oe.value&&Be.value&&ne.push(yd(S,oe.value,U).then(L=>{_.value=L}).catch(L=>{$(L)||y.value||(y.value=c(L)??s("plugins.select.tabs.custom.fetch_error"))})),Pe.value&&Ke.value&&ne.push(yd(S,Pe.value,U).then(L=>{k.value=L}).catch(L=>{if($(L))return;const M=Q(L);(M||!y.value)&&(y.value=M?s("plugins.select.tabs.custom.license_required"):c(L)??s("plugins.select.tabs.custom.fetch_error"))})),ne.push(se(U)),await Promise.allSettled(ne)},he=async()=>{C.value?.abort(),C.value=new AbortController,p.value=!0,m.value=!1,h.value="",y.value="",g.value=[],_.value=[],k.value=[],N.value=[];try{const{data:U}=await S.get(z.value,{signal:C.value.signal});if(r.config.app==="konnect"){const{names:ne}=U;g.value=ne||[]}else if(r.config.app==="kongManager"){const{plugins:{available_on_server:ne}}=U;g.value=ne?Object.keys(ne):[]}await X(C.value.signal),b.value=ce()}catch(U){$(U)||(m.value=!0,h.value=c(U))}finally{C.value?.signal.aborted||(p.value=!1)}},ve=t.ref(!1),je=t.ref(!1),qe=t.ref(!1),Be=t.ref(!1),Ve=t.ref(!1),$e=t.ref(!1),Ke=t.ref(!1),de=U=>{_.value=_.value.filter(ne=>ne.name!==U),k.value=k.value.filter(ne=>ne.name!==U),b.value=ce(),o("delete-custom:success",U)};t.onBeforeMount(async()=>{const[U,ne,L,M,Y,ae,me]=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()]);ve.value=U,je.value=ne,qe.value=L,Be.value=M,Ve.value=Y??ne,$e.value=ae??L,Ke.value=me});const Z=t.useTemplateRef("filter-input");return t.onMounted(async()=>{w.value=!0,Z.value?.input?.focus(),await he()}),t.watch(()=>[r.config.app==="konnect"?r.config.controlPlaneId:void 0,r.config.workspace,r.config.entityType,r.config.entityId,r.config.app==="kongManager"?r.config.gatewayInfo?.edition:void 0,I.value,A.value],async()=>{w.value&&await he()}),t.onBeforeUnmount(()=>{C.value?.abort()}),(U,ne)=>{const L=t.resolveComponent("KInput"),M=t.resolveComponent("KSkeletonBox"),Y=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState"),me=t.resolveComponent("KTooltip"),Ae=t.resolveComponent("KAlert"),ze=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",X5,[t.createElementVNode("div",Z5,[t.createVNode(L,{ref:"filter-input",modelValue:f.value,"onUpdate:modelValue":ne[0]||(ne[0]=ot=>f.value=ot),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",Q5,[t.createVNode(M,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Y,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):ee.value&&f.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(s)("search.no_results",{filter:f.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",eH,[K.value.length?(t.openBlock(),t.createBlock(ze,{key:0,modelValue:J.value,"onUpdate:modelValue":ne[3]||(ne[3]=ot=>J.value=ot),"data-testid":"plugins-tabs",tabs:K.value,onChange:Ge},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",tH,[t.createElementVNode("p",nH,t.toDisplayString(t.unref(s)("plugins.select.tabs.kong.description")),1),t.createVNode(hg,{"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":j.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[1]||(ne[1]=ot=>U.$emit("plugin-clicked",ot))},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:t.withCtx(()=>[t.createElementVNode("div",rH,[t.renderSlot(U.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",oH,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.description")),1),y.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):t.createCommentVNode("",!0),t.createVNode(H5,{"can-create-custom-plugin":ve.value,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[2]||(ne[2]=ot=>U.$emit("plugin-clicked",ot))},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:t.withCtx(()=>[t.createVNode(me,{"max-width":"300",text:t.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createElementBlock("div",iH,[y.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):t.createCommentVNode("",!0),t.createVNode(hg,{"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":j.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[4]||(ne[4]=ot=>U.$emit("plugin-clicked",ot))},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-40b228cd"]]),sH={key:0,class:"highlighted-match"},e1=xe(t.defineComponent({__name:"HighlightedText",props:{text:{},indices:{}},setup(e){const n=e,r=t.computed(()=>ZR(n.text,n.indices));return(o,i)=>(t.openBlock(),t.createElementBlock("span",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,(a,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:s},[a.highlighted?(t.openBlock(),t.createElementBlock("span",sH,t.toDisplayString(a.text),1)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.text),1)],64))],64))),128))]))}}),[["__scopeId","data-v-91ae2f75"]]),lH={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},cH={class:"plugin-card-header"},dH={class:"plugin-card-title"},uH={key:0,class:"plugin-card-actions"},fH=["data-testid","title"],pH={key:0},mH=["title"],gH={class:"plugin-card-footer"},hH={class:"plugin-card-footer-extra"},yH={key:0,class:"custom-plugin-badges"},_H=xe(t.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(e,{emit:n}){const r=n,o=e,i=Ar.useRouter(),{i18n:{t:a}}=it.useI18n(),s=t.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),l=t.computed(()=>!b.value||k.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")]),c=t.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),d=t.computed(()=>typeof o.config.getCustomEditRoute=="function"),u=t.computed(()=>o.plugin.customPluginType==="cloned"),f=t.computed(()=>u.value?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin),p=t.computed(()=>u.value?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin),m=t.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),h=t.computed(()=>p.value&&d.value),y=t.computed(()=>f.value),g=t.computed(()=>!!(b.value&&!k.value&&m.value&&(y.value||h.value))),_=t.computed(()=>c.value?{}:b.value&&k.value&&o.config.createCustomRoute?o.config.createCustomRoute:o.config.getCreateRoute(o.plugin.id)),k=t.computed(()=>o.plugin.id==="custom-plugin-create"),b=t.computed(()=>o.plugin.group===q.PluginGroup.CUSTOM_PLUGINS),N=()=>{b.value&&r("custom-plugin-delete")},C=(w,S)=>{typeof o.config.getCustomEditRoute=="function"&&i.push(o.config.getCustomEditRoute(w,S))};return(w,S)=>{const x=t.resolveComponent("KButton"),T=t.resolveComponent("KDropdownItem"),I=t.resolveComponent("KDropdownMenu"),A=t.resolveComponent("KBadge"),v=t.resolveComponent("RouterLink"),V=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",lH,[t.createVNode(V,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createVNode(v,{class:t.normalizeClass(["plugin-select-card",{disabled:c.value}]),"data-testid":`${e.plugin.id}-card`,to:_.value},{default:t.withCtx(()=>[t.createElementVNode("div",cH,[t.createElementVNode("div",dH,[t.createVNode(t.unref(Sr.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!b.value})},[t.createVNode(e1,{indices:e.plugin.matchedIndices,text:e.plugin.name},null,8,["indices","text"])],2)]),g.value?(t.openBlock(),t.createElementBlock("div",uH,[t.createVNode(I,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:S[1]||(S[1]=t.withModifiers(()=>{},["stop","prevent"]))},{default:t.withCtx(()=>[t.createVNode(x,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(T,{key:0,"data-testid":"edit-plugin-schema",onClick:S[0]||(S[0]=t.withModifiers(O=>C(e.plugin.name,e.plugin.customPluginType),["stop","prevent"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),y.value?(t.openBlock(),t.createBlock(T,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":h.value,onClick:t.withModifiers(N,["stop","prevent"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip")},[e.plugin.description?(t.openBlock(),t.createElementBlock("div",pH,[t.createElementVNode("div",{title:e.plugin.description},t.toDisplayString(e.plugin.description),9,mH)])):t.createCommentVNode("",!0)],8,fH),t.createElementVNode("div",gH,[t.createElementVNode("div",null,t.toDisplayString(k.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1),t.createElementVNode("div",hH,[l.value.length?(t.openBlock(),t.createElementBlock("div",yH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,O=>(t.openBlock(),t.createBlock(A,{key:O,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(O),1)]),_:2},1024))),128))])):t.createCommentVNode("",!0),t.renderSlot(w.$slots,"footer-extra",{},void 0,!0)])])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-9025e247"]]),bH=["data-testid"],kH={class:"group-icon-wrapper"},wH={class:"group-title-text"},CH=["data-testid"],EH=["data-testid"],t1=xe(t.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(e,{emit:n}){const r=e,o=t.computed(()=>{switch(r.name){case q.PluginGroup.FEATURED:return Ne.PopularIcon;case q.PluginGroup.AI:return Ne.BotIcon;case q.PluginGroup.ANALYTICS_AND_MONITORING:return Ne.AnalyticsIcon;case q.PluginGroup.AUTHENTICATION:return Ne.LockIcon;case q.PluginGroup.LOGGING:return Ne.ServiceDocumentIcon;case q.PluginGroup.MONETIZATION:return Ne.MoneyIcon;case q.PluginGroup.SECURITY:return Ne.SecurityIcon;case q.PluginGroup.SERVERLESS:return Ne.RuntimeServerlessIcon;case q.PluginGroup.TRAFFIC_CONTROL:return Ne.TrafficIcon;case q.PluginGroup.TRANSFORMATIONS:return Ne.TransformationIcon;case q.PluginGroup.DEPLOYMENT:return Ne.DeployIcon;case q.PluginGroup.CUSTOM_PLUGINS:return Ne.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=it.useI18n(),s=t.ref(!1),l=t.computed(()=>r.showAllCard?r.plugins:!s.value&&r.plugins.length>9?r.plugins.slice(0,8):r.plugins),c=t.computed(()=>!r.showAllCard&&!s.value&&r.plugins.length>9);function d(){s.value=!0}const u=t.ref(!1),f=t.ref(null),p=h=>{u.value=!0,f.value={id:h.id,name:h.name,group:h.group,customPluginType:h.customPluginType}},m=h=>{h&&(i("revalidate"),i("delete:success",{name:f.value?.name||"",group:f.value?.group,customPluginType:f.value?.customPluginType})),u.value=!1,f.value=null};return(h,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}-title`},[t.createElementVNode("div",kH,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{color:`var(--kui-color-text-decorative-purple, ${t.unref(Uy)})`},null,8,["color"]))]),t.createElementVNode("span",wH,t.toDisplayString(e.name),1)],8,bH)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,g=>(t.openBlock(),t.createBlock(_H,{key:`plugin-card-${g.id}`,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,plugin:g,onCustomPluginDelete:_=>p(g),onPluginClicked:_=>i("plugin-clicked",g)},t.createSlots({_:2},[g.gatewayVersion&&t.unref(QR)(t.unref(q.GATEWAY_VERSION_TIMESTAMP_MAP)[g.gatewayVersion])?{name:"footer-extra",fn:t.withCtx(()=>[t.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${g.id}-new-badge`},t.toDisplayString(t.unref(a)("labels.new")),9,EH)]),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)),c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:d},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,CH),u.value&&f.value?(t.openBlock(),t.createBlock(_d,{key:1,config:e.config,plugin:f.value,onClosed:m,onProceed:y[0]||(y[0]=g=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f9a9a47c"]]),NH={class:"plugin-select-grid"},SH={class:"empty-state-title"},AH={class:"empty-state-description"},xH={key:1},IH=xe(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","delete:success"],setup(e,{emit:n}){const r=_c.concat(bc),o=n,{i18n:{t:i}}=it.useI18n(),a=s=>{o("plugin-clicked",s)};return(s,l)=>{const c=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",NH,[Object.keys(e.pluginList||[]).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(c,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",SH,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",AH,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r),d=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.pluginList?.[d]?(t.openBlock(),t.createElementBlock("div",{key:d},[t.createVNode(t1,{"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:d,plugins:e.pluginList[d]||[],"onDelete:success":l[0]||(l[0]=u=>o("delete:success",u)),onPluginClicked:l[1]||(l[1]=u=>a(u))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","plugins"])])):t.createCommentVNode("",!0)],64))),256)),e.pluginList?.["Query Result"]?(t.openBlock(),t.createElementBlock("div",xH,[t.createVNode(t1,{"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"","onDelete:success":l[2]||(l[2]=d=>o("delete:success",d)),onPluginClicked:l[3]||(l[3]=d=>a(d))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-e3bf3819"]]),vH={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},TH=["title"],BH=["title"],OH={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},PH={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},VH=xe(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const r=n,o=e,{i18n:{t:i}}=it.useI18n(),a=I=>I.customPluginType==="cloned"&&I.clonedFromRef?i("plugins.select.cloned_from_badge",{link:I.clonedFromRef}):I.customPluginType==="streaming"?i("plugins.select.streamed_custom_badge"):I.customPluginType?i("plugins.select.installed_custom_badge"):"",s=t.computed(()=>w.value.some(I=>b(I.plugin))),l=t.computed(()=>{const I=[{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&&I.push({key:"more-actions",hideLabel:!0}),I}),c=t.computed(()=>{if(!o.pluginList)return[];const I=Object.values(o.pluginList).flat();return Array.from(new Map(I.map(v=>[v.id,v])).values()).map(v=>({id:v.id,name:v.name,description:v.description,badge:a(v),plugin:v}))}),d=t.ref(0),u=t.ref(10),f=t.ref(1),p=t.ref(c.value),m=t.ref(!1),h=t.ref(null),y=I=>I.customPluginType==="cloned"&&I.clonedFromRef?I.clonedFromRef:I.id,g=I=>I?.customPluginType==="cloned",_=I=>!I?.customPluginType||o.config.app==="kongManager"&&I.customPluginType==="schema"?!1:g(I)?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin,k=I=>!I?.customPluginType||typeof o.config.getCustomEditRoute!="function"||o.config.app==="kongManager"&&I.customPluginType==="schema"?!1:g(I)?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin,b=I=>_(I)||k(I),N=I=>{m.value=!0,h.value={id:I.id,name:I.name,group:I.group,customPluginType:I.customPluginType}},C=I=>{I&&(r("revalidate"),r("delete:success",{name:h.value?.name||"",group:h.value?.group,customPluginType:h.value?.customPluginType})),m.value=!1,h.value=null},w=t.computed(()=>{const I=p.value.length,A=Math.max(1,Math.ceil(I/u.value)),V=(Math.min(f.value,A)-1)*u.value;return p.value.slice(V,V+u.value)});t.watch(c,()=>{p.value=[...c.value],f.value=1,d.value++});const S=({page:I})=>{f.value=I},x=({pageSize:I})=>{u.value=I},T=I=>{const{sortColumnKey:A,sortColumnOrder:v}=I;A==="name"&&(p.value=[...p.value].sort((V,O)=>{const $=(V[A]||"").toLowerCase(),Q=(O[A]||"").toLowerCase();return $<Q?v==="asc"?-1:1:$>Q?v==="asc"?1:-1:0}))};return(I,A)=>{const v=t.resolveComponent("KBadge"),V=t.resolveComponent("KButton"),O=t.resolveComponent("KDropdownItem"),$=t.resolveComponent("KDropdown"),Q=t.resolveComponent("KTableView"),pe=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(pe,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(Q,{key:d.value,class:"plugin-catalog-table","client-sort":"",data:w.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:c.value.length,currentPage:f.value,initialPageSize:u.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:S,onPageSizeChange:x,onSort:T},{name:t.withCtx(({row:H})=>[t.createElementVNode("span",vH,[t.createVNode(t.unref(Sr.PluginIcon),{"data-testid":`plugin-catalog-list-view-${H.plugin.id}-icon`,name:y(H.plugin),size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:H.name},[t.createVNode(e1,{indices:H.plugin?.matchedIndices,text:H.name},null,8,["indices","text"])],8,TH),H.badge?(t.openBlock(),t.createBlock(v,{key:0,appearance:"info",class:"plugin-name-badge","data-testid":"plugin-catalog-list-view-custom-badge"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(H.badge),1)]),_:2},1024)):t.createCommentVNode("",!0)])]),description:t.withCtx(({row:H})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:H.description},t.toDisplayString(H.description),9,BH)]),action:t.withCtx(({row:H})=>[t.createElementVNode("div",OH,[t.createVNode(V,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:o.config.getCreateRoute(H.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:H})=>[b(H.plugin)?(t.openBlock(),t.createElementBlock("div",PH,[t.createVNode($,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>[k(H.plugin)?(t.openBlock(),t.createBlock(O,{key:0,"data-testid":"edit-plugin-schema",item:{label:t.unref(i)("actions.edit"),to:e.config.getCustomEditRoute?.(H.plugin.name,H.plugin.customPluginType)}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["item"])):t.createCommentVNode("",!0),_(H.plugin)?(t.openBlock(),t.createBlock(O,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":k(H.plugin),onClick:()=>N(H.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["has-divider","onClick"])):t.createCommentVNode("",!0)]),default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),m.value&&h.value?(t.openBlock(),t.createBlock(_d,{key:0,config:e.config,plugin:h.value,onClosed:C,onProceed:A[0]||(A[0]=H=>C(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-49cad2d2"]]),$H={class:"plugin-catalog","data-testid":"plugin-catalog"},RH={class:"plugin-filter","data-testid":"plugin-filter"},LH={class:"plugin-filter-title"},DH={class:"featured-title"},MH={class:"plugin-featured-filter"},FH=["data-testid"],jH={class:"group-title"},UH={class:"plugin-type-filter"},KH=["data-testid"],qH={class:"plugins-container"},GH={class:"plugins-filter-input-container"},zH={class:"icon-container"},HH={key:0},WH={key:3,"aria-live":"polite",class:"plugins-results-container"},YH=xe(t.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(e,{emit:n}){const r=n,{i18n:{t:o}}=it.useI18n(),{pluginMetaData:i}=it.usePluginMetaData(),{getMessageFromError:a}=ue.useErrors(),{sortAlpha:s,objectsAreEqual:l}=ue.useHelpers(),c=e,{axiosInstance:d}=ue.useAxios(c.config?.axiosRequestConfig),u=t.useTemplateRef("filter-input"),f=t.ref(""),p=t.ref(!1),m=t.ref(!1),h=t.ref(Object.fromEntries(_c.concat(bc).map(Z=>[Z,!1]))),y=t.ref(!0),g=t.ref(!1),_=t.ref(""),k=t.ref(""),b=t.ref([]),N=t.ref([]),C=t.ref([]),w=t.ref({}),S=t.ref([]),x=t.ref(!1),T=t.ref(null),I=t.ref(!1),A=t.computed(()=>x.value?Ne.GridIcon:Ne.ListIcon),v=t.inject(Bn.KM_2485_CLONED_PLUGINS,!1),V=t.computed(()=>t.unref(v)),O=Z=>Z==="none"||Z==="disabled"?new Set:new Set(Array.isArray(Z)?Z:[Z]),$=t.computed(()=>O(c.customPluginSupport)),Q=t.computed(()=>[...$.value].sort().join("|")),pe=t.computed(()=>$.value.has("streaming")),H=t.computed(()=>V.value&&$.value.has("cloned")),j=Z=>gi.isAxiosError(Z)&&Z.code==="ERR_CANCELED",D=Z=>a(Z).toLowerCase().includes("requires a license"),ee=t.computed(()=>{let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].availablePlugins}`;if(c.config.app==="konnect")Z=Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||"");else if(c.config.app==="kongManager"&&c.config.gatewayInfo?.edition==="community")return`${c.config.apiBaseUrl}${nt.select[c.config.app].availablePluginsForOss}`;return Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}),K=t.computed(()=>{if(pe.value){let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].streamingCustomPlugins}`;return c.config.app==="konnect"?Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}return null}),J=t.computed(()=>{if(H.value){let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].clonedPlugins}`;return c.config.app==="konnect"?Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}return null}),ce=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let Z=`${c.config.apiBaseUrl}${nt.list[c.config.app].forEntity}`;return c.config.app==="konnect"&&(Z=Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||"")),Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"").replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),z=t.computed(()=>{if(!w.value)return{};const Z=Object.entries(h.value).filter(([,Y])=>Y).map(([Y])=>Y);let U={};Z.length===0&&(U=w.value),Z.forEach(Y=>{w.value[Y]&&(U[Y]=w.value[Y])});const ne=f.value.toLowerCase();if(!ne)return U;const L=new Map;for(const Y of Object.values(U))for(const ae of Y??[]){if(L.has(ae.id))continue;const me=XR(ne,ae.name,ae.id);me.matched&&L.set(ae.id,{plugin:{...ae,matchedIndices:me.indices},score:me.score})}const M=Array.from(L.values()).sort((Y,ae)=>Y.score-ae.score||Y.plugin.name.localeCompare(ae.plugin.name)).map(Y=>Y.plugin);return M.length?{"Query Result":M}:{}}),oe=t.computed(()=>Object.keys(z.value).length>0),Pe=t.computed(()=>Object.keys(w.value).length>0&&!oe.value),Ee=()=>{Object.keys(h.value).forEach(Z=>{h.value[Z]=!1})},Ge=()=>{const Z=new Map(C.value.map(M=>[M.name,M])),U=new Set(N.value.map(M=>M.name)),ne=new Set([...U,...Z.keys()]),L=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...b.value,...ne])].filter(M=>{if(!c.config.entityType)return M;const Y=Z.has(M)?Z.get(M).ref:M;return c.config.entityType==="services"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.CONSUMER)?!1:M}).reduce((M,Y)=>{const ae=i[Y]&&i[Y].name||Y,me=Z.get(Y),Ae=U.has(Y),ze={...i[Y],id:Y,name:ae,available:b.value.includes(Y)||!!me||Ae,disabledMessage:"",group:i[Y]?.group||q.PluginGroup.CUSTOM_PLUGINS};ze.group===q.PluginGroup.CUSTOM_PLUGINS&&(me?(ze.customPluginType="cloned",ze.clonedFromRef=me.ref):Ae?ze.customPluginType="streaming":ze.customPluginType="schema"),c.disabledPlugins&&(ze.disabledMessage=c.disabledPlugins[Y]);const ot=ze.group||o("plugins.select.misc_plugins");let F=M[ot];return F||(F=[]),F.push(ze),F.sort(s("name")),M[ot]=F,M},{});if(c.highlightedPluginIds&&c.highlightedPluginIds.length>0){const M=new Set(Object.values(L).flat().map(ae=>ae?.id)),Y=c.highlightedPluginIds.flatMap(ae=>{const me=i[ae];return!me||!M.has(ae)?[]:{...me,id:ae,name:me.name||ae,available:b.value.includes(ae),disabledMessage:c.disabledPlugins?.[ae]||"",group:me.group||q.PluginGroup.CUSTOM_PLUGINS}}).filter(Boolean);Y.length>0&&(L[q.PluginGroup.FEATURED]=Y)}return L};t.watch(()=>c.disabledPlugins,(Z,U)=>{!l(Z||{},U||{})&&!y.value&&(w.value=Ge())}),t.watch(y,Z=>{r("loading",Z)});const se=t.ref(!1),X=t.ref(!1),he=t.ref(!1),ve=t.ref(!1),je=t.ref(!1),qe=t.ref(!1),Be=async()=>{try{const[Z,U,ne,L,M,Y]=await Promise.all([c.canEditCustomPlugin(),c.canDeleteCustomPlugin(),c.canReadCustomPlugin(),c.canEditClonedPlugin?c.canEditClonedPlugin():Promise.resolve(null),c.canDeleteClonedPlugin?c.canDeleteClonedPlugin():Promise.resolve(null),c.canReadClonedPlugin()]);se.value=Z,X.value=U,he.value=ne,ve.value=L??Z,je.value=M??U,qe.value=Y}catch{se.value=!1,X.value=!1,he.value=!1,ve.value=!1,je.value=!1,qe.value=!1}},Ve=async Z=>{if(!ce.value){S.value=[];return}try{const{data:{data:U}}=await d.get(ce.value,{signal:Z});U?.length&&(S.value=U.reduce((ne,L)=>(L.name&&ne.push(L.name),ne),[]))}catch(U){j(U)||(S.value=[])}},$e=async Z=>{const U=[];K.value&&he.value&&U.push(yd(d,K.value,Z).then(ne=>{N.value=ne}).catch(ne=>{j(ne)||k.value||(k.value=a(ne)??o("plugins.select.tabs.custom.fetch_error"))})),J.value&&qe.value&&U.push(yd(d,J.value,Z).then(ne=>{C.value=ne}).catch(ne=>{if(j(ne))return;const L=D(ne);(L||!k.value)&&(k.value=L?o("plugins.select.tabs.custom.license_required"):a(ne)??o("plugins.select.tabs.custom.fetch_error"))})),U.push(Ve(Z)),await Promise.allSettled(U)},Ke=async()=>{T.value?.abort();const Z=new AbortController;T.value=Z,y.value=!0,g.value=!1,_.value="",k.value="",b.value=[],N.value=[],C.value=[],S.value=[];try{const{data:U}=await d.get(ee.value,{signal:Z.signal});if(c.config.app==="konnect"){const{names:ne}=U;b.value=ne||[]}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:ne}}=U;b.value=ne?Object.keys(ne):[]}await $e(Z.signal),w.value=Ge()}catch(U){j(U)||(g.value=!0,_.value=a(U))}finally{T.value===Z&&!Z.signal.aborted&&(y.value=!1)}},de=async({name:Z})=>{Z&&(r("delete-custom:success",Z),await Ke())};return t.onMounted(async()=>{I.value=!0,u.value?.input?.focus(),await Be(),await Ke()}),t.watch(()=>[c.config.app==="konnect"?c.config.controlPlaneId:void 0,c.config.workspace,c.config.entityType,c.config.entityId,c.config.app==="kongManager"?c.config.gatewayInfo?.edition:void 0,Q.value,V.value],async()=>{I.value&&(await Be(),await Ke())}),t.onBeforeUnmount(()=>{T.value?.abort()}),(Z,U)=>{const ne=t.resolveComponent("KButton"),L=t.resolveComponent("KCheckbox"),M=t.resolveComponent("KBadge"),Y=t.resolveComponent("KCollapse"),ae=t.resolveComponent("KInput"),me=t.resolveComponent("KSkeletonBox"),Ae=t.resolveComponent("KSkeleton"),ze=t.resolveComponent("KEmptyState"),ot=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock("div",$H,[t.createElementVNode("div",RH,[t.createElementVNode("div",LH,[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.select.filter.title"))+" ",1),t.createVNode(ne,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(h.value).some(F=>F),onClick:Ee},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),t.createVNode(Y,{modelValue:p.value,"onUpdate:modelValue":U[0]||(U[0]=F=>p.value=F)},{title:t.withCtx(()=>[t.createElementVNode("div",DH,t.toDisplayString(t.unref(o)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",MH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(_c),F=>(t.openBlock(),t.createElementBlock("div",{key:F,class:"plugin-filter-item","data-testid":`plugin-filter-item-${F}`},[t.createVNode(L,{modelValue:h.value[F],"onUpdate:modelValue":te=>h.value[F]=te,label:F},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(M,{appearance:"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(w.value?.[F]?.length||0),1)]),_:2},1024)],8,FH))),128))])]),_:1},8,["modelValue"]),t.createVNode(Y,{modelValue:m.value,"onUpdate:modelValue":U[1]||(U[1]=F=>m.value=F)},{title:t.withCtx(()=>[t.createElementVNode("div",jH,t.toDisplayString(t.unref(o)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",UH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(bc),F=>(t.openBlock(),t.createElementBlock("div",{key:F,class:"plugin-filter-item","data-testid":`plugin-filter-item-${F}`},[t.createVNode(L,{modelValue:h.value[F],"onUpdate:modelValue":te=>h.value[F]=te,"data-testid":`plugin-filter-checkbox-${F}`,label:F},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),t.createVNode(M,{appearance:"neutral","data-testid":`plugin-filter-count-${F}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(w.value?.[F]?.length||0),1)]),_:2},1032,["data-testid"])],8,KH))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",qH,[t.createElementVNode("div",GH,[t.createVNode(ae,{ref:"filter-input",modelValue:f.value,"onUpdate:modelValue":U[2]||(U[2]=F=>f.value=F),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(o)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",zH,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(A.value),{class:"plugins-filter-icon",color:`var(--kui-icon-color-primary, ${t.unref(JS)})`,onClick:U[3]||(U[3]=F=>x.value=!x.value)},null,8,["color"]))])]),y.value?(t.openBlock(),t.createElementBlock("section",HH,[t.createVNode(me,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Ae,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):g.value?(t.openBlock(),t.createBlock(ze,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):Pe.value&&f.value?(t.openBlock(),t.createBlock(ze,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(o)("search.no_results",{filter:f.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",WH,[k.value?(t.openBlock(),t.createBlock(ot,{key:0,appearance:"warning",class:"custom-plugins-warning",message:k.value},null,8,["message"])):t.createCommentVNode("",!0),x.value?(t.openBlock(),t.createBlock(VH,{key:1,"can-delete-cloned-plugin":je.value,"can-delete-custom-plugin":X.value,"can-edit-cloned-plugin":ve.value,"can-edit-custom-plugin":se.value,config:e.config,"plugin-list":z.value,"onDelete:success":de},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"])):(t.openBlock(),t.createBlock(IH,{key:2,"can-delete-cloned-plugin":je.value,"can-delete-custom-plugin":X.value,"can-edit-cloned-plugin":ve.value,"can-edit-custom-plugin":se.value,config:e.config,"plugin-list":z.value,"onDelete:success":de,onPluginClicked:U[4]||(U[4]=F=>Z.$emit("plugin-clicked",F))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-6a96c788"]]),JH={key:1,class:"datakit-config-card-canvas"},XH={class:"config-card-details-label","data-testid":"datakit-configuration-label"},ZH={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},QH={class:"canvas-wrapper"},e9=xe(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(e){const n=t.computed(()=>xC.safeParse(e.pluginData?.config).success);return Cp(e.pluginData),(r,o)=>{const i=t.resolveComponent("KLabel");return n.value?(t.openBlock(),t.createElementBlock("div",JH,[t.createElementVNode("div",XH,[t.createVNode(i,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",ZH,[t.createElementVNode("div",QH,[t.createVNode(eg,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(t.openBlock(),t.createBlock(t.unref(ue.ConfigCardItem),{key:0,item:e.item},null,8,["item"]))}}}),[["__scopeId","data-v-9a3ef1ac"]]),t9={class:"kong-ui-entity-plugin-config-card"},n9={class:"name-cell-wrapper"},r9={class:"info-name"},o9={key:0},i9={key:0},a9={key:0},s9={key:0},l9={key:0},yg="config",c9=xe(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showNameAsLink:{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(e,{emit:n}){const r=n,o=e,{i18n:{t:i}}=it.useI18n(),a=it.usePluginMetaData(),{setFieldType:s}=it.usePluginHelpers(),{getPropValue:l}=ue.useHelpers(),c=t.computed(()=>{let I=nt.item[o.config.app]?.[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 A=o.expandPartial?"&":"?";I=I.concat(`${A}__ui_data=true`)}return I}),d=t.computed(()=>{const I={},A=S.value?.fields||[];for(let v=0;v<A.length;v++){const V=S.value.fields[v],O=Object.keys(V)?.[0];s(I,O,V[O])}return{...I,instance_name:{section:ue.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ue.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ue.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ue.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ue.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ue.ConfigurationSchemaType.BadgeTag,section:ue.ConfigurationSchemaSection.Basic,order:7}}}),u=t.computed(()=>S.value?.fields?S.value.fields?.find(A=>Object.keys(A)?.[0]===yg)?.[yg]?.fields||[]:[]),f=t.computed(()=>{const I={};if(!u.value)return I;for(let A=0;A<u.value?.length;A++){const v=u.value[A],V=Object.keys(v)?.[0],O=v[V];O.required&&(I[V]={order:1}),s(I,V,O)}return I}),p=I=>{const A=a.pluginMetaData[o.config.pluginType]?.scope;return A?Object.fromEntries(Object.entries(I).filter(([v,V])=>V?!0:!(v==="service"&&!A.includes(q.PluginScope.SERVICE)||v==="route"&&!A.includes(q.PluginScope.ROUTE)||v==="consumer"&&!A.includes(q.PluginScope.CONSUMER)||v==="consumer_group"&&!A.includes(q.PluginScope.CONSUMER_GROUP)))):I},m=I=>eo(I,"__ui_data"),{getMessageFromError:h}=ue.useErrors(),{axiosInstance:y}=ue.useAxios(o.config?.axiosRequestConfig),{resolveReferenceNames:g,getReferenceName:_,isReferenceNameLoading:k}=it.useReferenceEntityNames({config:o.config,axiosInstance:y,onError:I=>r("fetch:error",I)}),b=(I,A)=>_(I)||A,N=(I,A)=>_(I)?A:void 0,C=I=>{r("fetch:success",I),o.showNameAsLink&&g(I)},w=t.computed(()=>{let I=`${o.config.apiBaseUrl}${nt.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"&&(I=I.replace(/{controlPlaneId}/gi,o.config?.controlPlaneId||"")),I.replace(/\/{workspace}/gi,o.config?.workspace?`/${o.config.workspace}`:"").replace(/{plugin}/gi,o.config.pluginType)}),S=t.ref({});ue.useSchemaProvider(S);const x=t.ref(!1),T=t.ref("");return t.onBeforeMount(async()=>{x.value=!0;try{const{data:I}=await y.get(w.value);S.value=I}catch(I){T.value=h(I),r("error:fetch-schema",I)}finally{x.value=!1}}),(I,A)=>{const v=t.resolveComponent("KSkeleton"),V=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",t9,[x.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):T.value?(t.openBlock(),t.createBlock(V,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(T.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":yg,"plugin-config-schema":f.value,"record-resolver":p,"onFetch:error":A[0]||(A[0]=$=>I.$emit("fetch:error",$)),"onFetch:success":C,onLoading:A[1]||(A[1]=$=>I.$emit("loading",$))},t.createSlots({name:t.withCtx($=>[t.createElementVNode("div",n9,[t.createVNode(t.unref(Sr.PluginIcon),{class:"plugin-icon",name:t.unref(l)("rowValue",$),size:24},null,8,["name"]),t.createElementVNode("span",r9,t.toDisplayString(t.unref(a).getDisplayName(t.unref(l)("rowValue",$))),1)])]),consumer:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("consumer",t.unref(l)("rowValue",$).id),to:e.config.getConsumerViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("consumer",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("consumer"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"consumer-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",o9,"–"))]),route:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("route",t.unref(l)("rowValue",$).id),to:e.config.getRouteViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("route",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("route"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"route-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",i9,"–"))]),service:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("service",t.unref(l)("rowValue",$).id),to:e.config.getServiceViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("service",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("service"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"service-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",a9,"–"))]),consumer_group:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("consumer_group",t.unref(l)("rowValue",$).id),to:e.config.getConsumerGroupViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("consumer_group",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("consumer_group"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",s9,"–"))]),partials:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$)?.[0]?.id,value:t.unref(l)("rowValue",$)?.[0]?.id+(t.unref(l)("rowValue",$)?.[0]?.name?"/"+t.unref(l)("rowValue",$)?.[0]?.name:""),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$)?.[0]?.id,"partial")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"partial-copy-uuid",text:t.unref(l)("rowValue",$)?.[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",l9,"–"))]),_:2},[e.config.pluginType==="datakit"&&e.config.app==="konnect"?{name:"config-card-item-nodes",fn:t.withCtx($=>[t.createVNode(e9,{item:$.row,"plugin-data":$.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-915bf6f0"]]),d9=t.defineComponent({__name:"AuthPluginOnboardingCard",props:{pluginType:{},authMode:{},hasExistingEntity:{type:Boolean},createEntityTo:{},onCreateEntityClick:{type:Function},addCredentialTo:{},onAddCredentialClick:{type:Function}},emits:["dismiss"],setup(e){const{i18n:{t:n}}=it.useI18n(),r=t.computed(()=>{const o=e.authMode==="kong-identity",i=[{icon:Ne.GroupsIcon,appearance:"decorative-aqua",title:n(o?"onboarding.create_principal.title":"onboarding.create_consumer.title"),description:n(o?"onboarding.create_principal.description":`onboarding.${e.pluginType}.create_consumer.description`),to:e.createEntityTo,onClick:e.onCreateEntityClick}];return e.hasExistingEntity&&(e.addCredentialTo||e.onAddCredentialClick)&&i.push({icon:Ne.PasskeyIcon,appearance:"decorative-purple",title:n(o?"onboarding.add_principal_credential.title":`onboarding.${e.pluginType}.add_credential.title`),description:n(o?"onboarding.add_principal_credential.description":`onboarding.${e.pluginType}.add_credential.description`),to:e.addCredentialTo,onClick:e.onAddCredentialClick}),i});return(o,i)=>(t.openBlock(),t.createBlock(t.unref(ue.OnboardingCard),{items:r.value,subtitle:t.unref(n)(`onboarding.${e.pluginType}.subtitle`),title:t.unref(n)(`onboarding.${e.pluginType}.title`),onDismiss:i[0]||(i[0]=a=>o.$emit("dismiss"))},null,8,["items","subtitle","title"]))}}),u9=["innerHTML"],n1=xe(t.defineComponent({inheritAttrs:!1,__name:"CredentialSecretField",props:{placeholder:{},help:{},labels:{},autofocus:{type:Boolean},name:{},labelAttributes:{},generator:{type:Function}},emits:["update:modelValue"],setup(e,{emit:n}){const r=t.useAttrs(),o=t.createPropsRestProxy(e,["name","generator"]),i=n,{value:a,hide:s,...l}=$t(t.toRef(()=>e.name)),c=Jt(l.path,t.toRef({...o,...r}));function d(u){a.value=u===""?l.emptyValue.value:u,i("update:modelValue",a.value)}return(u,f)=>{const p=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(ue.SensitiveInput),t.mergeProps({key:1},t.unref(c),{class:"ff-credential-secret-field","data-testid":`ff-${l.path.value}`,generator:e.generator??t.unref(iw),mode:"create","model-value":t.unref(a)??"","onUpdate:modelValue":d}),t.createSlots({_:2},[t.unref(c).labelAttributes?.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,u9)],!0)]),key:"0"}:void 0]),1040,["data-testid","generator","model-value"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-ca6a15c0"]]);function bd(e,n){let r=`${e.apiBaseUrl}${n}`;return e.app==="konnect"&&(r=r.replace(/{controlPlaneId}/gi,e.controlPlaneId||"")),r.replace(/\/{workspace}/gi,e.workspace?`/${e.workspace}`:"")}const r1=xe(t.defineComponent({__name:"CredentialConfigurationForm",props:{config:{},credentialType:{}},emits:["update:modelValue","update:loading","error:fetch-schema"],setup(e,{emit:n}){const r=new Set(["id","created_at","consumer"]),{i18n:{t:o}}=it.useI18n(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),s=t.ref({}),l=g=>{s.value=g,i("update:modelValue",g)},c=t.ref(!1);t.watch(c,g=>i("update:loading",g),{immediate:!0});const d=t.ref(),u=g=>Object.keys(g)[0],f=t.computed(()=>{if(d.value)return{...d.value,type:"record",fields:d.value.fields.filter(g=>!r.has(u(g))).map(g=>{const _=u(g),k=g[_];return k.description||!k.hint?g:{[_]:{...k,description:k.hint}}})}}),p=[{match:"tags",component:Lo,propsOverrides:{help:o("plugins.form.fields.tags.help"),placeholder:o("plugins.form.fields.tags.placeholder")}},{match:"key",component:n1},{match:"secret",component:n1,propsOverrides:{labels:{generateLabel:o("plugins.form.fields.secret.generateLabel")}}}],m=t.computed(()=>Br[e.credentialType]?.schemaEndpoint),h=t.computed(()=>bd(e.config,nt.form[e.config.app].credentialSchema).replace(/{plugin}/gi,m.value));return(async()=>{c.value=!0;try{if(e.config.app==="konnect")d.value=Wk[m.value];else{const{data:g}=await a.get(h.value);d.value=g}}catch(g){i("error:fetch-schema",g)}finally{c.value=!1}})(),(g,_)=>{const k=t.resolveComponent("KSkeleton");return c.value?(t.openBlock(),t.createBlock(k,{key:0,type:"form"})):f.value?(t.openBlock(),t.createBlock(Ym,{key:1,class:"credential-fields","field-renderers":p,model:s.value,"on-form-change":l,"plugin-name":e.credentialType,schema:f.value},null,8,["model","plugin-name","schema"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-b8d3299a"]]),f9={class:"kong-ui-entities-create-consumer-credential-form"},p9={class:"onboarding-wizard-header"},m9={class:"onboarding-wizard-body"},g9={class:"consumer-note"},h9={class:"onboarding-wizard-footer"},y9=xe(t.defineComponent({__name:"CreateConsumerCredentialForm",props:{config:{},credentialType:{}},emits:["cancel","success"],setup(e,{emit:n}){const{i18n:{t:r}}=it.useI18n(),{getMessageFromError:o}=ue.useErrors(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),s=t.ref(1),l=t.ref(!1),c=t.ref(""),d=t.ref(null),u=t.ref({}),f=t.reactive({username:"",customId:"",tags:""}),p=t.computed(()=>!!f.username||!!f.customId),m=t.computed(()=>[{label:r("onboarding.steps.consumer.step"),state:s.value===1?"active":"completed"},{label:r("onboarding.steps.credential.step"),state:s.value===2?"active":"default"}]),h=t.computed(()=>({username:f.username||null,custom_id:f.customId||null,tags:f.tags.split(",").map(C=>C.trim()).filter(C=>C!=="")})),y=C=>{c.value=o(C)},g=async()=>{c.value="",l.value=!0;try{const{data:C}=await a.post(bd(e.config,nt.consumers[e.config.app]),h.value);d.value={id:C?.id,username:C?.username,custom_id:C?.custom_id},s.value=2}catch(C){c.value=o(C)}finally{l.value=!1}},_=t.computed(()=>{const C=Br[e.credentialType]?.endpoint||"/plugins";return`consumers/${d.value?.id}${C}`}),k=t.computed(()=>bd(e.config,nt.form[e.config.app].credential.create).replace(/{resourceEndpoint}/gi,_.value)),b=async()=>{if(d.value){l.value=!0,c.value="";try{const{data:C}=await a.post(k.value,u.value);i("success",{consumer:d.value,credential:C})}catch(C){c.value=o(C)}finally{l.value=!1}}},N=()=>{s.value===1?i("cancel"):d.value&&i("success",{consumer:d.value,credential:null})};return(C,w)=>{const S=t.resolveComponent("KStepper"),x=t.resolveComponent("KInput"),T=t.resolveComponent("KAlert"),I=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",f9,[t.createElementVNode("div",p9,[t.createVNode(S,{"data-testid":"wizard-stepper",steps:m.value},null,8,["steps"])]),t.createElementVNode("div",m9,[s.value===1?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:0,description:t.unref(r)("onboarding.steps.consumer.description"),title:t.unref(r)("onboarding.steps.consumer.title")},{default:t.withCtx(()=>[t.createElementVNode("div",g9,t.toDisplayString(t.unref(r)("onboarding.steps.consumer.note")),1),t.createVNode(x,{modelValue:f.username,"onUpdate:modelValue":w[0]||(w[0]=A=>f.username=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-username",label:t.unref(r)("onboarding.consumer_fields.username_label"),placeholder:t.unref(r)("onboarding.consumer_fields.username_placeholder"),type:"text"},null,8,["modelValue","label","placeholder"]),t.createVNode(x,{modelValue:f.customId,"onUpdate:modelValue":w[1]||(w[1]=A=>f.customId=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-custom-id",label:t.unref(r)("onboarding.consumer_fields.custom_id_label"),placeholder:t.unref(r)("onboarding.consumer_fields.custom_id_placeholder"),type:"text"},null,8,["modelValue","label","placeholder"]),t.createVNode(x,{modelValue:f.tags,"onUpdate:modelValue":w[2]||(w[2]=A=>f.tags=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-tags",help:t.unref(r)("plugins.form.fields.tags.help"),label:t.unref(r)("plugins.form.fields.tags.label"),placeholder:t.unref(r)("plugins.form.fields.tags.placeholder"),type:"text"},null,8,["modelValue","help","label","placeholder"])]),_:1},8,["description","title"])):(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:1,title:t.unref(r)("onboarding.steps.credential.title")},{default:t.withCtx(()=>[t.createVNode(r1,{config:e.config,"credential-type":e.credentialType,"onError:fetchSchema":y,"onUpdate:loading":w[3]||(w[3]=A=>l.value=A),"onUpdate:modelValue":w[4]||(w[4]=A=>u.value=A)},null,8,["config","credential-type"])]),_:1},8,["title"])),c.value?(t.openBlock(),t.createBlock(T,{key:2,appearance:"danger",class:"onboarding-wizard-error","data-testid":"wizard-error",message:c.value},null,8,["message"])):t.createCommentVNode("",!0)]),t.createElementVNode("div",h9,[t.createVNode(I,{appearance:"tertiary","data-testid":"wizard-secondary-action",onClick:N},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.value===1?t.unref(r)("onboarding.actions.exit_setup"):t.unref(r)("onboarding.actions.skip")),1)]),_:1}),t.createVNode(I,{appearance:"primary","data-testid":"wizard-primary-action",disabled:l.value||s.value===1&&!p.value,onClick:w[5]||(w[5]=A=>s.value===1?g():b())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.value===1?t.unref(r)("onboarding.actions.save_and_next"):t.unref(r)(`onboarding.${e.credentialType}.credential_action`)),1)]),_:1},8,["disabled"])])])}}}),[["__scopeId","data-v-f4c3baf8"]]),_9=xe(t.defineComponent({__name:"AddCredentialToConsumerForm",props:{config:{},credentialType:{}},emits:["cancel","success"],setup(e,{emit:n}){const{i18n:{t:r}}=it.useI18n(),{getMessageFromError:o}=ue.useErrors(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),{debouncedQueryChange:s,loading:l,results:c,loadItems:d}=ue.useDebouncedFilter(e.config,nt.consumers[e.config.app],"",{fetchedItemsKey:"data",searchKeys:["username","id"]}),u=t.computed(()=>c.value.map(N=>({label:N.username||N.custom_id,value:N.id}))),f=t.ref(""),p=t.ref(!1),m=t.ref(""),h=t.ref(!1),y=t.ref({}),g=t.computed(()=>!!f.value&&!h.value&&!p.value),_=t.computed(()=>{const N=Br[e.credentialType].endpoint;return`consumers/${f.value}${N}`}),k=t.computed(()=>bd(e.config,nt.form[e.config.app].credential.create).replace(/{resourceEndpoint}/gi,_.value)),b=async()=>{if(g.value){p.value=!0,m.value="";try{const{data:N}=await a.post(k.value,y.value);i("success",N)}catch(N){m.value=o(N)}finally{p.value=!1}}};return d(),(N,C)=>{const w=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{"align-action-button-to-left":"","can-submit":g.value,config:e.config,"entity-type":t.unref(ue.SupportedEntityType).Other,"error-message":m.value,"form-fields":y.value,"is-readonly":p.value,"no-validate":"","wrapper-component":"div",onCancel:C[4]||(C[4]=S=>N.$emit("cancel")),onSubmit:b},{default:t.withCtx(()=>[t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(r)("onboarding.choose_consumer.description"),step:1,title:t.unref(r)("onboarding.choose_consumer.title")},{default:t.withCtx(()=>[t.createVNode(w,{modelValue:f.value,"onUpdate:modelValue":C[0]||(C[0]=S=>f.value=S),"data-testid":"choose-consumer-select","enable-filtering":"",items:u.value,label:t.unref(r)("onboarding.choose_consumer.select_label"),loading:t.unref(l),placeholder:t.unref(r)("onboarding.choose_consumer.select_placeholder"),width:"100%",onQueryChange:t.unref(s)},null,8,["modelValue","items","label","loading","placeholder","onQueryChange"])]),_:1},8,["description","title"]),t.createVNode(t.unref(ue.EntityFormBlock),{step:2,title:t.unref(r)("onboarding.add_credential.title")},{default:t.withCtx(()=>[t.createVNode(r1,{config:e.config,"credential-type":e.credentialType,"onError:fetchSchema":C[1]||(C[1]=S=>m.value=t.unref(o)(S)),"onUpdate:loading":C[2]||(C[2]=S=>h.value=S),"onUpdate:modelValue":C[3]||(C[3]=S=>y.value=S)},null,8,["config","credential-type"])]),_:1},8,["title"])]),_:1},8,["can-submit","config","entity-type","error-message","form-fields","is-readonly"])}}}),[["__scopeId","data-v-c6ff0a51"]]),{usePluginMetaData:b9,useProvideExperimentalFreeForms:k9}=it;function w9(e,n=!1){const r=e.length;let o=0,i="",a=0,s=16,l=0,c=0,d=0,u=0,f=0;function p(b,N){let C=0,w=0;for(;C<b;){let S=e.charCodeAt(o);if(S>=48&&S<=57)w=w*16+S-48;else if(S>=65&&S<=70)w=w*16+S-65+10;else if(S>=97&&S<=102)w=w*16+S-97+10;else break;o++,C++}return C<b&&(w=-1),w}function m(b){o=b,i="",a=0,s=16,f=0}function h(){let b=o;if(e.charCodeAt(o)===48)o++;else for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;if(o<e.length&&e.charCodeAt(o)===46)if(o++,o<e.length&&sa(e.charCodeAt(o)))for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;else return f=3,e.substring(b,o);let N=o;if(o<e.length&&(e.charCodeAt(o)===69||e.charCodeAt(o)===101))if(o++,(o<e.length&&e.charCodeAt(o)===43||e.charCodeAt(o)===45)&&o++,o<e.length&&sa(e.charCodeAt(o))){for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;N=o}else f=3;return e.substring(b,N)}function y(){let b="",N=o;for(;;){if(o>=r){b+=e.substring(N,o),f=2;break}const C=e.charCodeAt(o);if(C===34){b+=e.substring(N,o),o++;break}if(C===92){if(b+=e.substring(N,o),o++,o>=r){f=2;break}switch(e.charCodeAt(o++)){case 34:b+='"';break;case 92:b+="\\";break;case 47:b+="/";break;case 98:b+="\b";break;case 102:b+="\f";break;case 110:b+=`
452
+ `)[0]||"Invalid YAML"}});const _=()=>{p.value=!0},k=()=>{p.value=!1,i("cancel")},b=()=>{i("remove")},N=()=>{_(),l.value.value||(l.value.value=a("cache"),l.value.value.strategy="memory")},C=()=>{p.value=!1,i("update",s)},w=()=>{y.value==="memory"&&s.cache?.partial_id&&delete s.cache?.partial_id};async function S({codeElement:x,language:T,code:I}){x.innerHTML=await vS.codeToHtml(I,{lang:T,theme:"material-theme-darker",structure:"inline"})}return(x,T)=>{const I=t.resolveComponent("KButton"),A=t.resolveComponent("KDropdownItem"),v=t.resolveComponent("KDropdown"),V=t.resolveComponent("KLabel"),O=t.resolveComponent("KCodeBlock"),$=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",MK,[t.createElementVNode("h3",FK,t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",jK,[t.createElementVNode("div",UK,[t.createVNode(t.unref(Ne.DatabaseIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"]),t.createElementVNode("div",KK,t.toDisplayString(e.strategy),1)]),t.createVNode(v,null,{items:t.withCtx(()=>[t.createVNode(A,{onClick:_},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(A,{danger:"",onClick:b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(I,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{color:`var(--kui-color-text, ${t.unref(gf)})`},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(I,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:N},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode($,{"action-button-disabled":!h.value,"action-button-text":t.unref(m)("actions.save"),"max-width":"640px",title:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:p.value,onCancel:k,onProceed:C},{default:t.withCtx(()=>[t.createElementVNode("div",qK,[t.createVNode(tg,{items:[{label:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":w},null,8,["items"]),y.value==="memory"?(t.openBlock(),t.createBlock(Xe,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),y.value==="redis"&&d.value?(t.openBlock(),t.createElementBlock("div",GK,[t.createVNode(V,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(mf.RedisConfigurationSelector),{"model-value":t.unref(s).cache?.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":T[0]||(T[0]=Q=>t.unref(s).cache.partial_id=Q)},null,8,["model-value"])])):t.createCommentVNode("",!0),y.value==="redis"&&d.value&&!t.unref(s).cache?.partial_id&&g.value?(t.openBlock(),t.createElementBlock("div",zK,[t.createElementVNode("div",null,t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(O,{id:"dk-cache-redis-configuration",code:g.value,language:"yaml",theme:"dark",onCodeBlockRender:S},null,8,["code"])])):t.createCommentVNode("",!0),y.value==="redis"&&!d.value?(t.openBlock(),t.createElementBlock("div",HK,[t.createVNode(V,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config")),1)]),_:1}),(t.openBlock(),t.createBlock(t.unref(Ka.MonacoEditor),{key:t.unref(r),modelValue:u.value,"onUpdate:modelValue":T[1]||(T[1]=Q=>u.value=Q),appearance:"standalone",class:"redis-editor",language:"yaml",theme:t.unref(r)},null,8,["modelValue","theme"])),f.value?(t.openBlock(),t.createElementBlock("p",WK,t.toDisplayString(f.value),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)])]),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-9898d095"]]),JK={class:"dk-resources-panel"},XK=xe(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=$K(),r=t.ref(0),{addVault:o,removeVault:i,updateVault:a,renameVault:s,formData:l}=AK();function c(y,g,_){_&&_!==y&&s(_,y,!1),a(y,g)}const{state:d,commit:u}=Vt(),f=t.computed(()=>({cache:d.value.cacheConfig}));function p(y){d.value.cacheConfig=y.cache,u()}function m(){d.value.cacheConfig=void 0,u()}function h(){r.value++}return(y,g)=>(t.openBlock(),t.createElementBlock("div",JK,[t.createVNode(Wt,{data:t.unref(l),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(VK,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),g[0]||(g[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(Wt,{key:`${r.value}`,data:f.value,schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(YK,{strategy:f.value.cache?.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-9093c001"]]),ZK={class:"header"},QK={class:"title"},e8={class:"body"},t8={class:"panel"},n8=xe(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ft.createI18n("en-us",zt),{sidePanelExpanded:r}=ud(),{propertiesPanelOpen:o,selectedNode:i}=Vt(),a=t.ref("nodes");function s(){o.value=!1}t.watch(i,c=>{c||s()});const l=t.ref(!1);return t.onMounted(()=>{l.value=!0}),(c,d)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(r),inited:l.value}])},[t.createElementVNode("header",ZK,[t.createElementVNode("h2",QK,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",e8,[t.createElementVNode("div",t8,[t.createVNode(u,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=f=>a.value=f),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),a.value==="nodes"?(t.openBlock(),t.createBlock(SK,{key:0,class:"node-panel","hide-title":""})):t.createCommentVNode("",!0),a.value==="resources"?(t.openBlock(),t.createBlock(XK,{key:1})):t.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-9e854e60"]]),r8=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,r)=>(t.openBlock(),t.createBlock(St,{items:t.unref(xp)([...t.unref(Tb)]),name:e.name},null,8,["items","name"]))}});function o8(e,n){const r=[],o=(i,a)=>{typeof a=="string"&&r.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&o(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&o(["inputs",i],a);if("output"in e&&e.output!=null&&o(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&o(["outputs",i],a);return r}function i8(e){const n=e.path[2];return n==="output"||n==="outputs"}function pC(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function mC(e,n){const r=e.input!==void 0&&e.input!==null,o=pC(e.inputs);r&&o&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=pC(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function gC(e,n,r){if(!e.nodes)return;const o=e.nodes.map(c=>c.name),i=new Set;o.forEach((c,d)=>{i.has(c)&&r.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...o]),s=new Map,l=new Map;e.nodes.forEach((c,d)=>{for(const u of o8(c,d)){const f=u.value.split(".",1)[0];if(a.has(f)||r.addIssue({code:"custom",message:`Unknown node "${f}" in connection "${u.value}"`,path:u.path}),i8(u)){const p=`${u.nodeName}->${f}`;l.has(p)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${u.nodeName}" outputs to "${f}" and "${f}" inputs from "${u.nodeName}". Specify it on one side only.`,path:u.path}):s.set(p,s.get(p)??u.path)}else{const p=`${f}->${u.nodeName}`;s.has(p)?r.addIssue({code:"custom",message:`Connection specified on both sides: "${f}" outputs to "${u.nodeName}" and "${u.nodeName}" inputs from "${f}". Specify it on one side only.`,path:u.path}):l.set(p,l.get(p)??u.path)}}})}const a8=R.z.enum(Ib),s8=R.z.enum(Ei),hC=e=>Ei.includes(e),ng=R.z.enum(vb),yC=ng.options;R.z.union([ng,a8]);const l8=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,fd=R.z.string().min(1).max(255).regex(l8,"Invalid node name (snake_case / kebab-case only)").refine(e=>!hC(e),"Name clashes with reserved implicit node").brand(),_C=R.z.union([s8,fd]),c8=R.z.string().min(1).brand(),d8=["then","else"];R.z.enum(d8);const ut=R.z.string().min(1).max(255).refine(e=>{if(_C.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,r,o]=n;return _C.safeParse(r).success&&c8.safeParse(o).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),u8=R.z.object({body:ut,headers:ut,http_proxy:ut,https_proxy:ut,proxy_auth_password:ut,proxy_auth_username:ut,query:ut,url:ut}).partial().strict(),f8=R.z.object({headers:ut,body:ut}).partial().strict(),p8=R.z.object({data:ut,key:ut,ttl:ut}).partial().strict(),m8=R.z.object({claims:ut,key:ut}).partial().strict(),g8=R.z.object({key:ut,token:ut}).partial().strict(),bC=R.z.enum(Tb),kC=R.z.enum(Xf),qn=R.z.object({type:R.z.string(),name:fd,input:ut,inputs:R.z.record(R.z.string().min(1).max(255),ut).nullish(),output:ut,outputs:R.z.record(R.z.string().min(1).max(255),ut).nullish()}).loose().superRefine((e,n)=>{mC(e,n)}),h8=R.z.object({type:R.z.string(),name:R.z.string()}).loose().superRefine((e,n)=>{const r=e.type,o=e.name;(typeof o!="string"||o.length===0||o.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),yC.includes(r)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${yC.join(", ")}`})}),y8=qn.safeExtend({type:R.z.literal("call"),method:bC.default("GET").nullish(),ssl_server_name:R.z.string().nullish(),ssl_verify:R.z.boolean().default(!0).nullish(),timeout:R.z.number().int().min(0).max(2147483646).nullish(),url:R.z.url().nullish(),inputs:u8.nullish(),outputs:R.z.object({body:ut,headers:ut,raw_body:ut,status:ut}).partial().nullish()}).strict(),_8=qn.safeExtend({type:R.z.literal("exit"),status:R.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:R.z.boolean().nullish(),inputs:f8.nullish(),output:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),b8=qn.safeExtend({type:R.z.literal("jq"),jq:R.z.string().min(1).max(10240),outputs:R.z.never().nullish()}).strict(),k8=qn.safeExtend({type:R.z.literal("xml_to_json"),recognize_type:R.z.boolean().nullish().default(!0),attributes_block_name:R.z.string().min(1).max(32).nullish(),attributes_name_prefix:R.z.string().min(1).max(32).nullish(),text_block_name:R.z.string().min(1).max(32).nullish().default("#text"),text_as_property:R.z.boolean().nullish().default(!1),xpath:R.z.string().min(1).max(256).nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),w8=qn.safeExtend({type:R.z.literal("json_to_xml"),attributes_block_name:R.z.string().min(1).max(32).nullish(),attributes_name_prefix:R.z.string().min(1).max(32).nullish(),root_element_name:R.z.string().min(1).max(64).nullish(),text_block_name:R.z.string().min(1).max(32).nullish().default("#text"),inputs:R.z.record(R.z.string().min(1).max(255),ut).nullish(),outputs:R.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),C8=qn.safeExtend({type:R.z.literal("jwt_decode"),inputs:R.z.never().nullish(),outputs:R.z.object({header:ut,payload:ut,signature:ut}).partial().nullish()}).strict(),E8=qn.safeExtend({type:R.z.literal("jwt_sign"),algorithm:kC,expires_in:R.z.number().int().min(1).default(300).nullish(),inputs:m8.nullish(),kid:R.z.string().nullish(),not_before:R.z.number().int().min(0).default(0).nullish(),outputs:R.z.object({claims:ut,header:ut,token:ut}).partial().nullish(),static_claims:R.z.record(R.z.string(),R.z.string()).default({}).nullish(),typ:R.z.string().default("JWT").nullish()}).strict(),N8=qn.safeExtend({type:R.z.literal("jwt_verify"),allowed_algorithms:R.z.array(kC).default([]).nullish(),audiences:R.z.array(R.z.string()).default([]).nullish(),inputs:g8.nullish(),issuers:R.z.array(R.z.string()).default([]).nullish(),leeway:R.z.number().int().min(0).default(0).nullish(),outputs:R.z.object({claims:ut,header:ut}).partial().nullish(),required_claims:R.z.array(R.z.string()).default([]).nullish(),validate_exp:R.z.boolean().default(!0).nullish(),validate_nbf:R.z.boolean().default(!0).nullish()}).strict(),S8=qn.safeExtend({type:R.z.literal("property"),content_type:R.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:R.z.string().min(1).max(255),non_nil:R.z.boolean().default(!1).nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),A8=qn.safeExtend({type:R.z.literal("static"),values:R.z.record(R.z.string(),R.z.unknown()),input:R.z.never().nullish(),inputs:R.z.never().nullish()}).strict(),x8=qn.safeExtend({type:R.z.literal("cache"),bypass_on_error:R.z.boolean().nullish(),inputs:p8.nullish(),outputs:R.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:R.z.number().int().gt(0).nullish()}).strict(),I8=qn.safeExtend({type:R.z.literal("branch"),then:R.z.array(fd).min(1).max(64).nullish(),else:R.z.array(fd).min(1).max(64).nullish()}).strict(),v8=h8.pipe(R.z.discriminatedUnion("type",[y8,_8,b8,k8,w8,C8,E8,N8,S8,A8,x8,I8])),T8=R.z.record(R.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),R.z.string().min(1).max(4095)),B8=R.z.object({dictionary_name:R.z.string().nullish().default("kong_db_cache")}),O8=R.z.object({host:R.z.string().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).default(6379)}),P8=R.z.object({ip:R.z.string().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).default(6379)}),V8=R.z.object({host:R.z.string().nullish().default("127.0.0.1"),port:R.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:R.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:R.z.string().nullish(),password:R.z.string().nullish(),sentinel_username:R.z.string().nullish(),sentinel_password:R.z.string().nullish(),database:R.z.number().int().nullish().default(0),keepalive_pool_size:R.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:R.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:R.z.string().nullish(),sentinel_role:R.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:R.z.array(O8).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:R.z.array(P8).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:R.z.boolean().default(!1).nullish(),ssl_verify:R.z.boolean().default(!0).nullish(),server_name:R.z.string().nullish(),cluster_max_redirections:R.z.number().int().default(5).nullish(),connection_is_proxied:R.z.boolean().default(!1).nullish(),cloud_authentication:R.z.object({auth_provider:R.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:R.z.string().nullish(),aws_assume_role_arn:R.z.string().nullish(),aws_cache_name:R.z.string().nullish(),aws_is_serverless:R.z.boolean().default(!0).nullish(),aws_region:R.z.string().nullish(),aws_role_session_name:R.z.string().nullish(),aws_secret_access_key:R.z.string().nullish(),azure_client_id:R.z.string().nullish(),azure_client_secret:R.z.string().nullish(),azure_tenant_id:R.z.string().nullish(),gcp_service_account_json:R.z.string().nullish()}).nullish(),timeout:R.z.number().int().nullish(),sentinel_addresses:R.z.array(R.z.string()).min(1).nullish(),cluster_addresses:R.z.array(R.z.string()).min(1).nullish()}).superRefine((e,n)=>{const r=e.host!==void 0&&e.host!==null,o=e.port!==void 0&&e.port!==null;(r&&!o||!r&&o)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:r?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,s=!!e.sentinel_nodes?.length,l=[i,a,s].filter(Boolean).length;l>0&&l<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!r&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),$8=R.z.object({strategy:R.z.enum(["memory","redis"]).nullish(),memory:B8,redis:V8}),R8=R.z.object({vault:T8.nullish(),cache:$8.nullish()});R.z.array(R.z.object({id:R.z.string()})),R.z.object({nodes:R.z.array(v8).min(1,"At least one node is required").max(64),debug:R.z.boolean().default(!1).nullish(),resources:R8.nullish(),ca_certificates:R.z.array(R.z.string()).nullish()}).strict().superRefine((e,n)=>{gC(e,Ei,n)});const wC=ng.options,rg=R.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!hC(e),"Node name conflicts with reserved implicit node"),kt=R.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const r=e.slice(0,n),o=e.slice(n+1);return r.length>0&&o.length>0},"Invalid connection"),CC=R.z.object({body:kt.nullish(),headers:kt.nullish(),query:kt.nullish()}).partial().strict(),EC=R.z.object({headers:kt.nullish(),body:kt.nullish()}).partial().strict(),NC=R.z.object({data:kt.nullish(),key:kt.nullish(),ttl:kt.nullish()}).partial().strict(),SC=R.z.object({claims:kt.nullish(),key:kt.nullish()}).partial().strict(),AC=R.z.object({key:kt.nullish(),token:kt.nullish()}).partial().strict(),L8={call:CC,exit:EC,cache:NC,jwt_sign:SC,jwt_verify:AC};function D8(e){const n=L8[e];return n?Object.keys(n.shape):null}const Gn=R.z.object({type:R.z.string(),name:rg,input:kt.nullish(),inputs:R.z.record(R.z.string(),kt.nullish()).nullish(),output:kt.nullish(),outputs:R.z.record(R.z.string(),kt.nullish()).nullish()}).loose().superRefine((e,n)=>{mC(e,n)}),M8=R.z.object({type:R.z.string(),name:R.z.string()}).loose().superRefine((e,n)=>{const r=e.type,o=e.name;(typeof o!="string"||o.length===0||o.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),wC.includes(r)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${r}", expected one of: ${wC.join(", ")}`})}),F8=Gn.safeExtend({type:R.z.literal("call"),method:bC.nullish(),ssl_server_name:R.z.string().nullish(),ssl_verify:R.z.boolean().nullish(),timeout:R.z.union([R.z.number(),R.z.string()]).nullish(),url:R.z.string().nullish(),inputs:CC.nullish(),outputs:R.z.object({body:kt.nullish(),headers:kt.nullish(),status:kt.nullish()}).partial().nullish()}).strict(),j8=Gn.safeExtend({type:R.z.literal("exit"),status:R.z.union([R.z.number(),R.z.string()]).nullish(),warn_headers_sent:R.z.boolean().nullish(),inputs:EC.nullish(),output:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),U8=Gn.safeExtend({type:R.z.literal("jq"),jq:R.z.string().nullish(),outputs:R.z.never().nullish()}).strict(),K8=Gn.safeExtend({type:R.z.literal("xml_to_json"),recognize_type:R.z.boolean().nullish(),attributes_block_name:R.z.string().nullish(),attributes_name_prefix:R.z.string().nullish(),text_block_name:R.z.string().nullish(),text_as_property:R.z.boolean().nullish(),xpath:R.z.string().nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),q8=Gn.safeExtend({type:R.z.literal("json_to_xml"),attributes_block_name:R.z.string().nullish(),attributes_name_prefix:R.z.string().nullish(),root_element_name:R.z.string().nullish(),text_block_name:R.z.string().nullish(),inputs:R.z.record(R.z.string(),kt.nullish()).nullish(),outputs:R.z.never().nullish()}).strict(),G8=Gn.safeExtend({type:R.z.literal("property"),content_type:R.z.string().nullish(),non_nil:R.z.boolean().nullish(),property:R.z.string().nullish(),inputs:R.z.never().nullish(),outputs:R.z.never().nullish()}).strict(),z8=Gn.safeExtend({type:R.z.literal("static"),values:R.z.record(R.z.string(),R.z.unknown()).nullish(),input:R.z.never().nullish(),inputs:R.z.never().nullish()}).strict(),H8=Gn.safeExtend({type:R.z.literal("cache"),bypass_on_error:R.z.boolean().nullish(),inputs:NC.nullish(),outputs:R.z.object({data:kt.nullish(),hit:kt.nullish(),miss:kt.nullish(),stored:kt.nullish()}).partial().nullish(),ttl:R.z.union([R.z.number(),R.z.string()]).nullish()}).strict(),W8=Gn.safeExtend({type:R.z.literal("jwt_decode"),inputs:R.z.never().nullish(),outputs:R.z.object({header:kt.nullish(),payload:kt.nullish(),signature:kt.nullish()}).partial().nullish()}).strict(),Y8=Gn.safeExtend({type:R.z.literal("jwt_sign"),algorithm:R.z.enum(Xf).nullish(),expires_in:R.z.union([R.z.number(),R.z.string()]).nullish(),inputs:SC.nullish(),kid:R.z.string().nullish(),not_before:R.z.union([R.z.number(),R.z.string()]).nullish(),outputs:R.z.object({claims:kt.nullish(),header:kt.nullish(),token:kt.nullish()}).partial().nullish(),static_claims:R.z.record(R.z.string(),R.z.string()).nullish(),typ:R.z.string().nullish()}).strict(),J8=Gn.safeExtend({type:R.z.literal("jwt_verify"),allowed_algorithms:R.z.array(R.z.enum(Xf)).nullish(),audiences:R.z.array(R.z.string()).nullish(),inputs:AC.nullish(),issuers:R.z.array(R.z.string()).nullish(),leeway:R.z.union([R.z.number(),R.z.string()]).nullish(),outputs:R.z.object({claims:kt.nullish(),header:kt.nullish()}).partial().nullish(),required_claims:R.z.array(R.z.string()).nullish(),validate_exp:R.z.boolean().nullish(),validate_nbf:R.z.boolean().nullish()}).strict(),X8=Gn.safeExtend({type:R.z.literal("branch"),then:R.z.array(rg).nullish(),else:R.z.array(rg).nullish()}).strict(),Z8=M8.pipe(R.z.discriminatedUnion("type",[F8,j8,U8,K8,q8,W8,Y8,J8,G8,z8,H8,X8])),Q8=R.z.record(R.z.string(),R.z.string()),eq=R.z.object({dictionary_name:R.z.string().nullish()}),tq=R.z.object(),nq=R.z.object({strategy:R.z.enum(["memory","redis"]).nullish(),memory:eq.nullish(),redis:tq.nullish()}),rq=R.z.object({vault:Q8.nullish(),cache:nq.nullish()}),xC=R.z.object({nodes:R.z.array(Z8).nullish(),debug:R.z.boolean().nullish(),resources:rq.nullish(),ca_certificates:R.z.array(R.z.string()).nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||gC(e,Ei,n)}).nullish(),IC=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=lt(),{i18n:r}=Qe(),o=t.computed(()=>{const i=n("inputs");if(!i)return[];const a=i.fields.map(l=>Object.keys(l)[0]);if(hn(e.nodeType))return a;const s=D8(e.nodeType);return s===null?a:s.length===0?[]:gO(a,s)});return(i,a)=>(t.openBlock(),t.createBlock(Rt,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,s=>(t.openBlock(),t.createBlock(St,{key:s,clearable:"","enable-filtering":"",items:e.items,name:s,placeholder:t.unref(r).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:l=>i.$emit("change:inputs",s,l?l.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(l=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},l))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),oq=["data-testid"],iq={class:"dk-inputs-map-field-entry-body"},aq={class:"dk-inputs-map-field-entry-content"},sq=xe(t.defineComponent({__name:"InputsMapField",props:{name:{},items:{},fieldNameValidator:{},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const r=e,o=n,{keys:i,addKey:a,removeKey:s,updateKey:l,getKeyName:c,field:d}=Ac(t.toRef(r,"name")),{value:u}=$t(t.toRef(r,"name")),{i18n:{t:f}}=Qe(),p=t.useTemplateRef("root"),m=t.ref(null),h=t.ref({}),y=t.ref({});let g;const _=t.computed(()=>r.keyOrder?.length?[...i.value].sort((A,v)=>{const V=r.keyOrder.indexOf(A[1]),O=r.keyOrder.indexOf(v[1]);return(V===-1?1/0:V)-(O===-1?1/0:O)}):i.value);async function k(A,v="key"){p.value&&(await t.nextTick(),p.value.querySelector(`[data-${v}-input="${A}"]`)?.focus())}function b(){const A=a();if(!A)return;y.value[A]="";const v=_.value.findIndex(([,V])=>!V);k(v===-1?_.value.length-1:v),m.value=A}function N(A,v){s(A),delete y.value[A],delete h.value[A],A===m.value&&(m.value=null),v.trim()!==""&&o("remove:field",v)}function C(A){g=y.value[A]??c(A)??""}function w(A,v){const V=v.trim();y.value[A]=V,x(A,V)}function S(A){const v=y.value[A]??c(A)??"";if(x(A,v)){y.value[A]=g,l(A,g),delete h.value[A];return}if(A===m.value){if(v.trim()==="")return;l(A,v),o("add:field",v,u?.value?.[A]??null),m.value=null}else l(A,v),o("rename:field",g,v);delete h.value[A],g=v}function x(A,v){delete h.value[A];const V=r.fieldNameValidator("input",g,v);if(V)return h.value[A]=V,V}function T(A){x(A,y.value[A]??c(A)??"")}function I(A,v){if(u?.value&&(u.value[A]=v),A===m.value)return;const V=c(A);V&&o("change:inputs",V,v)}return t.watch(i,A=>{const v=new Set(A.map(([V])=>V));Object.keys(y.value).forEach(V=>{v.has(V)?y.value[V]=y.value[V]??c(V)??"":(delete y.value[V],delete h.value[V])}),A.forEach(([V,O])=>{y.value[V]=y.value[V]??O}),m.value&&!v.has(m.value)&&(m.value=null)},{immediate:!0}),t.watch(()=>r.keyOrder,()=>{if(!m.value)return;const A=_.value.findIndex(([v])=>v===m.value);A!==-1&&k(A)}),(A,v)=>{const V=t.resolveComponent("KAlert"),O=t.resolveComponent("KLabel"),$=t.resolveComponent("KInput"),Q=t.resolveComponent("KSelect"),pe=t.resolveComponent("KButton");return t.unref(d).error?(t.openBlock(),t.createBlock(V,{key:0,appearance:"danger",message:t.unref(d).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:p,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,([H,j],D)=>(t.openBlock(),t.createElementBlock("div",{key:H,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(d).path.value}.${D}`},[t.createVNode(O,{for:`ff-kv-entry-key-${t.unref(d).path.value}.${D}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",iq,[t.createElementVNode("div",aq,[t.createVNode($,{id:`ff-kv-entry-key-${t.unref(d).path.value}.${D}`,class:"ff-kv-field-entry-key","data-key-input":D,"data-testid":`ff-key-${t.unref(d).path.value}.${D}`,error:!!h.value[H],"error-message":h.value[H],"model-value":y.value[H]??j,placeholder:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:ee=>T(H),onChange:ee=>S(H),onFocus:ee=>C(H),"onUpdate:modelValue":ee=>w(H,ee)},null,8,["id","data-key-input","data-testid","error","error-message","model-value","placeholder","onBlur","onChange","onFocus","onUpdate:modelValue"]),t.createVNode(Q,{class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(d).path.value}.${D}`,"enable-filtering":"",items:e.items,label:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),"model-value":t.unref(u)?.[H],placeholder:t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:ee=>I(H,ee?.value??null)},t.createSlots({_:2},[A.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:ee})=>[t.renderSlot(A.$slots,"item-label",t.mergeProps({ref_for:!0},ee),void 0,!0)]),key:"0"}:void 0]),1032,["data-testid","items","label","model-value","placeholder","onChange"])]),t.createVNode(pe,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(d).path.value}.${D}`,icon:"",onClick:ee=>N(H,j)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,oq))),128)),t.createVNode(pe,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(d).path.value}`,disabled:!!m.value,onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(f)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-43dcb370"]]),lq={class:"dk-source-item"},pd=xe(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,r)=>(t.openBlock(),t.createElementBlock("span",lq,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Zf)(e.item.type).icon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-d9aa16eb"]]),cq={key:1,class:"dk-inputs-field-or"},Pn=xe(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const r=n,{getSchema:o}=lt(),{i18n:{t:i}}=Qe(),a=t.computed(()=>o("inputs")),s=t.computed(()=>a.value?a.value.type==="record"?IC:sq:null);function l(p){r("change:input",p?p.value:null)}function c(p,m){r("add:field",p,m)}function d(p,m){r("change:inputs",p,m)}function u(p){r("remove:field",p)}function f(p,m){r("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(_e.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(o)("input")?(t.openBlock(),t.createBlock(St,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:l},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(pd,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createElementBlock("div",cq,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createBlock(t.unref(_e.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),s.value?(t.openBlock(),t.createBlock(t.unref(s),t.mergeProps({key:3,items:e.items,"key-order":e.fieldNames,name:"inputs"},s.value===IC?{nodeType:e.nodeType}:{fieldNameValidator:e.fieldNameValidator},{"onAdd:field":c,"onChange:inputs":d,"onRemove:field":u,"onRename:field":f}),{"item-label":t.withCtx(h=>[t.createVNode(pd,{item:h},null,8,["item"])]),_:1},16,["items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-4f1ce4e7"]]),dq={},uq={class:"dk-node-form-divider"};function fq(e,n){return t.openBlock(),t.createElementBlock("hr",uq)}const er=xe(dq,[["render",fq],["__scopeId","data-v-35ed58be"]]),pq={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"},mq={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 gq(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function bn(...e){return function(r){for(const o of e){const i=o(r);if(i)return i}}}function Jo(e){const{i18n:{t:n}}=Qe(),r=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return r()}}function vC(e,n){const{i18n:{t:r}}=Qe();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n: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 Lr(e=0,n=1/0,r){const{i18n:{t:o}}=Qe();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:r.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function TC(e){const{i18n:{t:n}}=Qe();return function(o){if(!gq(o))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function ia(e,n){const{i18n:{t:r}}=Qe();return function(i){if(i==null)return;const a=TC(n)(i);if(a)return a;const s=Number(i);switch(e){case"float":{const l=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(s)?void 0:l()}case"integer":{const l=()=>n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(s)?void 0:l()}default:return}}}function aa(e=-1/0,n=1/0,r){const{i18n:{t:o}}=Qe();return function(a){if(a==null)return;const s=TC(r)(a);if(s)return s;const l=Number(a);if(l<e||l>n)return r?typeof r=="string"?r:o("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:r.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function hq(e,n){const{state:r}=Vt(),{i18n:{t:o}}=Qe();return function(a){if(r.value.nodes.some(s=>s.name===a&&s.id!==e))return n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function yq(e,n,r){const{i18n:{t:o}}=Qe();return function(a){if(!n)return;if(r?n.fields[e].some(l=>l.name===a&&l.id!==r):n.fields[e].some(l=>l.name===a)){const l=o(e==="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:l})}}}function _q(){const{i18n:{t:e}}=Qe();return function(r){if(tp(r))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:r})}}function BC(e){const{i18n:{t:n}}=Qe(),r={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return bn(Jo(r),vC("identifier",r),_q(),hq(e,r))}function bq(e){const{i18n:{t:n}}=Qe(),{getNodeById:r}=Vt();return function(i,a,s){const l={fieldName:n(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 bn(Jo(l),yq(i,r(e),s))(a)}}function kq(e){const n=t.ref({}),r=t.computed(()=>Object.values(n.value).every(s=>!s)),o={};Object.keys(e).forEach(s=>{const l=e[s],c=f=>{const p=typeof f=="function"?f():f,m=l(p);return n.value[s]=m,m},d=()=>{n.value[s]=void 0},u=f=>(d(),c(f));o[s]={handleChange:u,handleBlur:u,validate:u,isValid:t.computed(()=>n.value[s]===void 0),error:t.computed(()=>n.value[s])}});function i(){n.value={}}function a(s){for(const l of Object.keys(e)){const c=s[l],d=typeof c=="function"?c():c;o[l]?.validate(d)}return n.value}return{isValid:r,errorMap:n,fields:o,clearErrors:i,validate:a}}function Dr(e){const{validationConfig:n,getValidationData:r,toggleNodeValid:o}=e,{skipValidation:i}=Vt(),a=t.computed(()=>typeof n=="function"?n():n),s=t.computed(()=>kq(a.value)),l=t.computed(()=>s.value.fields),c=t.computed(()=>s.value.isValid.value);function d(){const f=r(),p=s.value.validate(f),m={};for(const h in a.value)m[h]=p[h];return m}function u(f,p){const m=()=>{const y=r(),g=l.value[f];g&&g.handleBlur(y[f])},h=()=>{p?.();const y=r(),g=l.value[f];g&&g.handleChange(y[f])};return t.computed(()=>{const y=l.value[f];return{validate:m,update:h,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const f=d(),p=Object.values(f).filter(Boolean).length>0;o(!p)}catch{}}),t.watch(()=>c.value,o,{immediate:!0}),{fields:l.value,isValid:c,validateAll:d,createFieldHandler:u}}function kn(e,n){const{state:r,renameNode:o,getNodeById:i,addField:a,renameField:s,removeField:l,replaceConfig:c,disconnectEdge:d,connectEdge:u,invalidConfigNodeIds:f,commit:p,revert:m}=Vt(),{i18n:{t:h}}=Qe(),y=$k(),g=t.computed(()=>{const H=i(e);if(!H)throw new Error("Node not existed");return H}),_=t.computed(()=>{const j=r.value.edges.filter(D=>D.target===e).reduce((D,ee)=>{const K=i(ee.source),J=no(K,"output",ee.sourceField)?.id,ce=no(g.value,"input",ee.targetField)?.name,z=K.id+(J?`.${J}`:"");return ce?D.inputs={...D.inputs,[ce]:z}:D.input=z,D},{});return g.value.fields.input.forEach(D=>{j.inputs||(j.inputs={}),j.inputs[D.name]||(j.inputs[D.name]=null)}),{...g.value.config,...j,name:g.value.name}}),k=H=>{o(e,H??"",!0,`${e}:rename`)},b=(H,j=!0)=>{if(!n)throw new Error("getFormValue is not defined");const D=eo(n(),["name","input","inputs"]),ee=H?`update:${e}:${H}`:void 0;c(e,D,j,ee)},N=(H,j)=>{const D=to(g.value,H,j);if(!D)throw new Error(`Field with name "${j}" not found in node "${g.value.name}"`);return D},C=(H,j,D)=>{const ee=!!D;a(e,H,j,!ee),ee&&I(j,D)},w=(H,j,D)=>{const ee=N(H,j).id;s(e,ee,D)},S=(H,j)=>{const D=N(H,j).id;l(e,D)},x=t.computed(()=>r.value.edges.filter(H=>H.target===e&&!H.targetField)[0]),T=t.computed(()=>r.value.edges.filter(H=>H.target===e&&H.targetField)),I=async(H,j)=>{const D=j==null,ee=N("input",H).id;if(D){const se=T.value.find(X=>X.targetField===ee);se&&d(se.id);return}const{nodeId:K,fieldId:J}=Pb(j),ce=N("input",H).id,z=[];x.value&&(z.push(ls(x.value,i)),d(x.value.id,!1));const oe=T.value.find(se=>se.targetField===ee);oe&&(z.push(ls(oe,i)),d(oe.id,!1)),u({source:K,sourceField:J,target:e,targetField:ce},!1);const Pe=ap(K,J,e,ce,i),Ee=z[0]&&Pe?z[0][1]===Pe[1]:!1;if(p(),Ee||z.length===0)return;await y(h("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[Pe],z)||m()},A=async H=>{if(H==null){x.value&&d(x.value.id);return}const D=[];for(const z of T.value)D.push(ls(z,i)),d(z.id,!1);x.value&&d(x.value.id,!1);const{nodeId:ee,fieldId:K}=Pb(H);u({source:ee,sourceField:K,target:e,targetField:void 0},!1);const J=ap(ee,K,e,void 0,i);if(p(),D.length===0)return;await y(h("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[J],D)||m()},v=H=>{const j=[...r.value.edges,{source:H,target:e}];return kp(fc(j))},V=t.computed(()=>{const H=[];for(const j of r.value.nodes)if(xi(j.type).io?.output&&j.fields.output&&j.id!==e&&!(j.type==="property"&&!Wf(j.config?.property))&&!v(j.id)&&!(g.value.phase==="request"&&j.phase==="response")&&!(j.type==="vault"&&j.fields.output.length===0)){H.push({value:j.id,label:j.name,type:j.type});for(const ee of j.fields.output)H.push({value:`${j.id}.${ee.id}`,label:`${j.name}.${ee.name}`,type:j.type})}return H}),O=t.computed(()=>g.value.fields.input.map(H=>H.name)||[]);function $(H){f.value.delete(e),H||f.value.add(e)}const Q=bq(e);function pe(H,j,D){const ee=i(e);if(!ee)throw new Error("Node not found when validating field name");const K=to(ee,H,j);return Q(H,D,K?.id)}return{formData:_,inputOptions:V,inputEdge:x,inputsEdges:T,inputsFieldNames:O,currentNode:g,setName:k,setConfig:b,addField:C,renameFieldByName:w,removeFieldByName:S,setInputs:I,setInput:A,nameValidator:BC(e),fieldNameValidator:pe,toggleNodeValid:$}}function wn(e){const{getSchema:n}=lt();return t.computed(()=>{if(hn(e))switch(e){case"response":return mq;case"service_request":return pq}try{const o=n().fields.find(d=>Xl(d,"config"));if(!o)throw new Error("Config field not found in schema.");const a=o.config.fields.find(d=>Xl(d,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const c=a.nodes.elements.subschema_definitions[e];if(!c)throw new Error(`Subschema "${e}" not found in the schema.`);return c}catch(r){throw new Error(`Failed to get subschema "${e}": ${r.message}`)}})}const zn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=Qe(),a=t.ref(r.name),s=t.computed(()=>{const u=r.validate(a.value.trim());return u===void 0?"":u});let l=a.value.trim();function c(){if(s.value){a.value=l;return}o("update",a.value.trim())}function d(){l=a.value.trim()}return t.watch(()=>r.name,u=>{u!==a.value&&(a.value=u)}),(u,f)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":f[0]||(f[0]=m=>a.value=m),"data-1p-ignore":"",error:!!s.value,"error-message":s.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),wq=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Qe(),r=t.useTemplateRef("form"),o=wn("call"),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>r.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:{url:bn(Jo({fieldName:"URL"}),vC("url",{fieldName:"URL"})),timeout:bn(ia("integer"),aa(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),y=h("url",()=>s("url")),g=h("timeout",()=>s("timeout"));return(_,k)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"url",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(r8,{name:"method",onUpdate:k[0]||(k[0]=N=>t.unref(s)())}),t.createVNode(Nt,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"timeout",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{name:"ssl_server_name","onUpdate:modelValue":k[1]||(k[1]=N=>t.unref(s)("ssl_server_name"))}),t.createVNode(en,{name:"ssl_verify","onUpdate:modelValue":k[2]||(k[2]=N=>t.unref(s)("ssl_verify"))}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"call","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),Cq=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("service_request"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:l,fieldNameValidator:c}=kn(e.nodeId,()=>n.value.getValue());return(d,u)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Pn,{"field-name-validator":t.unref(c),"field-names":t.unref(l),items:t.unref(i),"node-type":"service_request","onChange:input":t.unref(s),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Eq=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("response"),{formData:o,inputOptions:i,setInputs:a,setInput:s,inputsFieldNames:l,fieldNameValidator:c}=kn(e.nodeId,()=>n.value.getValue());return(d,u)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Pn,{"field-name-validator":t.unref(c),"field-names":t.unref(l),items:t.unref(i),"node-type":"response","onChange:input":t.unref(s),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Nq=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:r}=Qe(),o=t.useTemplateRef("form"),i=wn("jq"),{formData:a,setName:s,setConfig:l,inputOptions:c,setInputs:d,setInput:u,addField:f,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:y,toggleNodeValid:g,fieldNameValidator:_}=kn(e.nodeId,()=>o.value.getValue());function k(x,T){f("input",x,T)}function b(x){p("input",x)}function N(x,T){m("input",x,T)}const C=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:w}=Dr({validationConfig:{jq:bn(Jo({fieldName:C}),Lr(1,10240,{fieldName:C}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),S=w("jq",()=>l("jq"));return(x,T)=>{const I=t.resolveComponent("KLabel"),A=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(a).name,validate:t.unref(y),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{autosize:"",error:t.unref(S).error,"error-message":t.unref(S).errorMessage,label:t.unref(C),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},{help:t.withCtx(()=>[t.createVNode(t.unref(r),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(A,{"hide-icon":"",href:t.unref(ra).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(ra).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(_),"field-names":t.unref(h),items:t.unref(c),"node-type":"jq","onAdd:field":k,"onChange:input":t.unref(u),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":N},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),Sq=xe(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field"],setup(e,{emit:n}){const r=e,o=n,i=t.ref({}),{value:a,...s}=$t("values"),{i18n:l}=Qe(),c=t.useTemplateRef("root"),d=t.ref([]),u=t.ref(null);let f="",p=a?.value;function m(){return ns("ff-kv-field-")}function h(I,A,v){const V=v.indexOf(I),O=v.indexOf(A);return V===-1&&O===-1?0:V===-1?1:O===-1?-1:V-O}function y(I,A){if(!I)return[];const v=Object.entries(I).map(([V,O])=>({id:m(),key:V,value:O}));return A?.length&&v.sort((V,O)=>h(V.key,O.key,A)),v}function g(){const I={id:m(),key:"",value:""};return d.value.push(I),I}function _(I){const A=d.value.findIndex(v=>v.id===I);A!==-1&&d.value.splice(A,1)}d.value=y(a?.value,r.keyOrder);async function k(I,A="key"){c.value&&(await t.nextTick(),c.value.querySelector(`[data-${A}-input="${I}"]`)?.focus())}function b(){const I=g(),A=d.value.findIndex(({key:v})=>!v);k(A===-1?d.value.length-1:A),u.value=I}function N(I){I.id===u.value?.id&&(u.value=null),_(I.id),I.key.trim()!==""&&o("remove:field",I.key)}function C(I){f=I.key}function w(I){if(x(I)){I.key=f,delete i.value[I.id];return}if(I.id===u.value?.id){if(I.key.trim()==="")return;u.value=null,o("add:field",I.key,I.value)}else o("rename:field",f,I.key);f=I.key}function S(I,A){if(A.id===u.value?.id)return;const v=I.target.value.trim();o("change:value",A.key,v)}function x(I){delete i.value[I.id];const A=r.fieldNameValidator("output",f,I.key);if(A)return i.value[I.id]=A,A}function T(I){x(I)}return t.watch(()=>a?.value,I=>{if(Kt(I,p))return;p=I;const A=u.value,v=new Map(d.value.filter(Q=>Q.key).map(Q=>[Q.key,Q])),V=[],O=I??{};(r.keyOrder?.length?Object.keys(O).sort((Q,pe)=>h(Q,pe,r.keyOrder)):Object.keys(O)).forEach(Q=>{const pe=v.get(Q);if(pe){pe.value=O[Q],V.push(pe);return}V.push({id:m(),key:Q,value:O[Q]})}),A&&!V.some(Q=>Q.id===A.id)&&V.push(A),d.value=V},{deep:!0}),(I,A)=>{const v=t.resolveComponent("KAlert"),V=t.resolveComponent("KLabel"),O=t.resolveComponent("KButton"),$=t.resolveComponent("KInput"),Q=t.resolveComponent("KCard");return s.error?(t.openBlock(),t.createBlock(v,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:c,class:"dk-output-value-field"},[t.createVNode(V,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(pe,H)=>(t.openBlock(),t.createBlock(Q,{key:pe.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${s.path.value}.${H}`},{actions:t.withCtx(()=>[t.createVNode(O,{appearance:"none","data-testid":`ff-kv-remove-btn-${s.path.value}.${H}`,icon:"",onClick:j=>N(pe)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode($,{id:`ff-kv-entry-key-${s.path.value}.${H}`,modelValue:pe.key,"onUpdate:modelValue":[j=>pe.key=j,j=>x(pe)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":H,"data-testid":`ff-key-${s.path.value}.${H}`,error:!!i.value[pe.id],"error-message":i.value[pe.id],label:t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:j=>T(pe),onChange:j=>w(pe),onFocus:j=>C(pe)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode($,{modelValue:pe.value,"onUpdate:modelValue":j=>pe.value=j,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${s.path.value}.${H}`,label:t.unref(l).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:j=>S(j,pe)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${s.path.value}`,disabled:!!u.value,onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(l).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 Aq(e){const n={};for(const[r,o]of Object.entries(e))typeof o=="object"&&o!==null?n[r]=JSON.stringify(o):n[r]=String(o);return n}function md(e){const n={};for(const[r,o]of Object.entries(e))if(o!=null){n[r]=o;try{o==="null"?n[r]=null:(o==="true"||o==="false"||/^-?\d+(\.\d+)?$/.test(o)||o.startsWith("{")&&o.endsWith("}")||o.startsWith("[")&&o.endsWith("]"))&&(n[r]=JSON.parse(o))}catch{}}return n}function xq(e,n,r){const o={};for(const i of Object.keys(e))i===n?o[r]=e[n]:o[i]=e[i];return o}const Iq=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:r,addField:o,renameField:i,removeField:a,replaceConfig:s,getNodeById:l}=Vt(),{fieldNameValidator:c}=kn(e.nodeId),d=wn("static"),u=BC(e.nodeId),f=t.computed(()=>l(e.nodeId)),p=t.computed(()=>f.value?.fields.output.map(b=>b.name)||[]);function m(b){if(!f.value)throw new Error("No current node");n(f.value.id,b??"")}const h=t.computed(()=>{if(!f.value)return{};const b=f.value.config?.values??{},N={},C=r(f.value.id).map(T=>T.sourceField).filter(Boolean).map(T=>no(f.value,"output",T)).map(T=>T?.name).filter(Boolean),w=f.value.fields.output.map(T=>T.name),S=Object.keys(b);return new Set([...S,...C,...w]).forEach(T=>{if(T in b){N[T]=b[T];return}N[T]=""}),{name:f.value.name,values:Aq(N)}});function y(b,N){if(!f.value)throw new Error("No selected node");const C=N!==void 0;if(o(e.nodeId,"output",b,!C),C){const w={values:md({...h.value.values,[b]:N})};s(e.nodeId,w)}}function g(b,N){if(!f.value)throw new Error("No selected node");const C=to(f.value,"output",b);if(!C)throw new Error("No field found to rename");const w={values:md(xq(h.value.values??{},b,N))};s(e.nodeId,w,!1),i(e.nodeId,C.id,N)}function _(b){if(!f.value)throw new Error("No selected node");const N=to(f.value,"output",b);if(!N)throw new Error("No field found to delete");a(f.value?.id,N.id,!0,!1);const C={values:md({...h.value.values})};delete C.values[b],s(e.nodeId,C)}function k(b,N){if(!f.value)throw new Error("No selected node");const C={...h.value.values};C[b]=N;const w={values:md(C)};s(e.nodeId,w)}return(b,N)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>[t.createVNode(zn,{name:f.value?.name??"",validate:t.unref(u),onUpdate:m},null,8,["name","validate"]),t.createVNode(Sq,{"field-name-validator":t.unref(c),"key-order":p.value,"onAdd:field":y,"onChange:value":k,"onRemove:field":_,"onRename:field":g},null,8,["field-name-validator","key-order"])]),_:1},8,["data","schema"]))}}),vq={class:"dk-kong-property-item"},Tq={class:"property-type"},Bq={class:"property-badges"},Oq=xe(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:r}}=Qe(),o=t.inject(Bn.KM_3034_FEATURES_316,!1),i=["kong.client.principal","kong.client.principal.{key}"],a=e,s=n,{formData:l}=lt(),c=t.ref(rs(l.property)),d=t.computed(()=>os(l.property)),u=t.ref(Hf(l.property)),f=t.computed(()=>l.property??""),p=t.computed(()=>Object.entries(Io).filter(([y])=>o||!i.includes(y)).map(([y])=>{const g=os(y)?l.property?.startsWith(y.replace(wi,"")):l.property===y;return{label:g&&u.value?y.replace(wi,u.value):y,value:y,selected:g}}));function m(y){const g=Zl.find(_=>l.property?.startsWith(_));g&&(l.property=g+y,a.validators.key.handleChange(l.property),s("update:property-key",l.property))}function h(y){c.value!==rs(y?.value)&&(l.property=y?.value||null,c.value=rs(l.property),a.validators.property.handleBlur(()=>l.property),s("update:model-value",l.property))}return t.watch(()=>l.property,y=>{u.value=Hf(y),c.value=rs(y)}),(y,g)=>{const _=t.resolveComponent("KBadge"),k=t.resolveComponent("KSelect"),b=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(k,{key:f.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.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]=N=>e.validators.property.handleBlur(()=>t.unref(l).property)),onChange:h},{"item-template":t.withCtx(({item:N})=>[t.createElementVNode("div",vq,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(N.label),1),t.createElementVNode("div",Tq,t.toDisplayString(t.unref(Io)[N.value].dataType),1)]),t.createElementVNode("div",Bq,[t.unref(Io)[N.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(Io)[N.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),d.value?(t.openBlock(),t.createBlock(b,{key:0,"model-value":u.value,"onUpdate:modelValue":[g[1]||(g[1]=N=>u.value=N),m],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=N=>e.validators.key.handleBlur(()=>t.unref(l).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-cc97d84c"]]),Pq=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:r,disconnectInEdges:o,disconnectOutEdges:i}=Vt(),a=wn("property"),{formData:s,setName:l,setConfig:c,inputOptions:d,setInputs:u,setInput:f,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:y}=kn(e.nodeId,()=>n.value.getValue()),g=t.computed(()=>Yf(s.value.property));function _(b){const N=r.value?.id;if(!N)throw new Error("Expected selectedNode to be defined");Wf(b)||i(N,!1),Yf(b)||o(N,!1),c()}const{fields:k}=Dr({validationConfig:()=>({property:Jo({fieldName:"Property"}),key:os(s.value.property)?Jo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:s.value.property,key:Hf(s.value.property)}),toggleNodeValid:h});return(b,N)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(s),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(s).name,validate:t.unref(m),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(St,{name:"content_type",onUpdate:N[0]||(N[0]=C=>t.unref(c)())}),t.createVNode(Oq,{validators:t.unref(k),"onUpdate:modelValue":_,"onUpdate:propertyKey":N[1]||(N[1]=C=>t.unref(c)("property-key"))},null,8,["validators"]),t.createVNode(en,{name:"non_nil","onUpdate:modelValue":N[2]||(N[2]=C=>t.unref(c)("non_nil"))}),g.value?(t.openBlock(),t.createBlock(er,{key:0})):t.createCommentVNode("",!0),g.value?(t.openBlock(),t.createBlock(Pn,{key:1,"field-name-validator":t.unref(y),"field-names":t.unref(p),items:t.unref(d),"node-type":"property","onChange:input":t.unref(f),"onChange:inputs":t.unref(u)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),Vq=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("exit"),{formData:o,setName:i,setConfig:a,inputOptions:s,setInputs:l,setInput:c,inputsFieldNames:d,nameValidator:u,toggleNodeValid:f,fieldNameValidator:p}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=Dr({validationConfig:{status:bn(ia("integer",{fieldName:"Status"}),aa(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:o.value.status}),toggleNodeValid:f}),h=m("status",()=>a("status"));return(y,g)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(o).name,validate:t.unref(u),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Nt,{error:t.unref(h).error,"error-message":t.unref(h).errorMessage,name:"status",onBlur:t.unref(h).validate,"onUpdate:modelValue":t.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=_=>t.unref(a)())}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(s),"node-type":"exit","onChange:input":t.unref(c),"onChange:inputs":t.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function $q(e){const n=kn(e),{state:r,getNodeById:o,branchGroups:i,commit:a}=Vt(),{i18n:{t:s}}=Qe(),l=$k(),c=Ql(),d=t.computed(()=>{const _={...n.formData.value},k=ss(n.currentNode.value?.type||"branch");for(const b of k)(!(b in _)||_[b]==null)&&(_[b]=[]);return _});function u(_,k,b){const N=o(_),C=o(b),w=N?`${N.name}.${k}`:`${_}.${k}`,S=C?C.name:b;return[w,S]}function f(_){return(_==null?[]:Array.isArray(_)?_:[_]).filter(k=>np(k))}function p(_,k){return i.wouldCreateCycle(_,k)?(c({message:s("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(_,k,b){const N=[],C=[],w=[];for(const S of b){const x=i.findMembership(S);if(!x||x.ownerId===_&&x.branch===k)continue;const T=i.getMembers(x.ownerId,x.branch).filter(I=>I!==S);w.push({ownerId:x.ownerId,branch:x.branch,members:T}),N.push(u(_,k,S)),C.push(u(x.ownerId,x.branch,S))}return{conflictUpdates:w,addedAssignments:N,removedAssignments:C}}function h(_,k,b,N){let C=!1;for(const w of N)C=i.setMembers(w.ownerId,w.branch,w.members,{commit:!1})||C;return C=i.setMembers(_,k,b,{commit:!1})||C,C}async function y(_,k){const b=n.currentNode.value,N=f(k),C=i.prepareMembers(b.id,_,N),w=i.getMembers(b.id,_);if(rp(w,C))return!0;const S=C.filter(v=>!w.includes(v));for(const v of S)if(p(b.id,v))return!1;const{conflictUpdates:x,addedAssignments:T,removedAssignments:I}=m(b.id,_,S);return x.length>0&&!await l(s("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),T,I)?!1:(h(b.id,_,C,x)&&a(),!0)}const g=t.computed(()=>{const _=n.currentNode.value;return!_||!i?[]:r.value.nodes.filter(k=>k.id!==e&&!hn(k.type)&&k.phase===_.phase&&!i.wouldCreateCycle(_.id,k.id)).map(k=>({value:k.id,label:k.name,type:k.type}))});return{...n,formData:d,branchOptions:g,updateBranchMembers:y}}const Rq=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Qe(),r=wn("branch"),o=t.ref(0),{formData:i,setName:a,inputOptions:s,branchOptions:l,nameValidator:c,setInput:d,setInputs:u,inputsFieldNames:f,fieldNameValidator:p,updateBranchMembers:m}=$q(e.nodeId);async function h(y,g){await m(y,g)||(o.value+=1)}return(y,g)=>(t.openBlock(),t.createBlock(Wt,{key:o.value,data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",items:t.unref(l),multiple:"",name:"then",onUpdate:g[0]||(g[0]=_=>h("then",_))},{"item-label":t.withCtx(_=>[t.createVNode(pd,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(St,{"enable-filtering":"",items:t.unref(l),multiple:"",name:"else",onUpdate:g[1]||(g[1]=_=>h("else",_))},{"item-label":t.withCtx(_=>[t.createVNode(pd,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(p),"field-names":t.unref(f),items:t.unref(s),"node-type":"branch","onChange:input":t.unref(d),"onChange:inputs":t.unref(u)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Lq=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("cache"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:()=>({ttl:bn(ia("integer",{fieldName:"TTL"}),aa(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),y=h("ttl",()=>s("ttl"));return(g,_)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(en,{name:"bypass_on_error","onUpdate:modelValue":_[0]||(_[0]=k=>t.unref(s)("bypass_on_error"))}),t.createVNode(Nt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"ttl",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"cache","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Dq=t.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("xml_to_json"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),h=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:g}=Dr({validationConfig:()=>({attributes_block_name:bn(()=>y()?void 0:h,x=>{if(x)return Lr(1,32,{fieldName:"Attributes block name"})(x)}),attributes_name_prefix:bn(()=>y()?void 0:h,x=>{if(x)return Lr(1,32,{fieldName:"Attributes name prefix"})(x)}),text_block_name:Lr(1,32,{fieldName:"Text block name"}),xpath:Lr(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:p}),_=g("attributes_block_name",()=>s("attributes_block_name")),k=g("attributes_name_prefix",()=>s("attributes_name_prefix")),b=g("text_block_name",()=>s("text_block_name")),N=g("xpath",()=>s("xpath")),C=()=>{_.value.validate(),k.value.validate()},w=()=>{_.value.update(),k.value.validate()},S=()=>{k.value.update(),_.value.validate()};return(x,T)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(en,{name:"recognize_type","onUpdate:modelValue":T[0]||(T[0]=I=>t.unref(s)("recognize_type"))}),t.createVNode(Me,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"attributes_block_name",onBlur:C,"onUpdate:modelValue":w},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(k).error,"error-message":t.unref(k).errorMessage,name:"attributes_name_prefix",onBlur:C,"onUpdate:modelValue":S},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(b).error,"error-message":t.unref(b).errorMessage,name:"text_block_name",onBlur:t.unref(b).validate,"onUpdate:modelValue":t.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"text_as_property","onUpdate:modelValue":T[1]||(T[1]=I=>t.unref(s)("text_as_property"))}),t.createVNode(Me,{error:t.unref(N).error,"error-message":t.unref(N).errorMessage,name:"xpath",onBlur:t.unref(N).validate,"onUpdate:modelValue":t.unref(N).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"xml_to_json","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Mq=t.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("json_to_xml"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,addField:u,removeFieldByName:f,renameFieldByName:p,inputsFieldNames:m,nameValidator:h,toggleNodeValid:y,fieldNameValidator:g}=kn(e.nodeId,()=>n.value.getValue()),_=o("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),k=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:b}=Dr({validationConfig:{attributes_block_name:bn(()=>k()?void 0:_,Lr(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:bn(()=>k()?void 0:_,Lr(1,32,{fieldName:"Attributes name prefix"})),root_element_name:Lr(1,64,{fieldName:"Root element name"}),text_block_name:Lr(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}),N=b("attributes_block_name",()=>s("attributes_block_name")),C=b("attributes_name_prefix",()=>s("attributes_name_prefix")),w=b("root_element_name",()=>s("root_element_name")),S=b("text_block_name",()=>s("text_block_name"));function x(){N.value.validate(),C.value.validate()}function T(){N.value.update(),C.value.validate()}function I(){C.value.update(),N.value.validate()}function A(O,$){u("input",O,$)}function v(O){f("input",O)}function V(O,$){p("input",O,$)}return(O,$)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(h),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Me,{error:t.unref(N).error,"error-message":t.unref(N).errorMessage,name:"attributes_block_name",onBlur:x,"onUpdate:modelValue":T},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(C).error,"error-message":t.unref(C).errorMessage,name:"attributes_name_prefix",onBlur:x,"onUpdate:modelValue":I},null,8,["error","error-message"]),t.createVNode(Me,{error:t.unref(w).error,"error-message":t.unref(w).errorMessage,name:"root_element_name",onBlur:t.unref(w).validate,"onUpdate:modelValue":t.unref(w).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{error:t.unref(S).error,"error-message":t.unref(S).errorMessage,name:"text_block_name",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(g),"field-names":t.unref(m),items:t.unref(l),"node-type":"json_to_xml","onAdd:field":A,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":v,"onRename:field":V},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Fq=t.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_decode"),{formData:o,setName:i,inputOptions:a,setInputs:s,setInput:l,inputsFieldNames:c,nameValidator:d,fieldNameValidator:u}=kn(e.nodeId,()=>n.value.getValue());return(f,p)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(o),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(o).name,validate:t.unref(d),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(u),"field-names":t.unref(c),items:t.unref(a),"node-type":"jwt_decode","onChange:input":t.unref(l),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),jq=t.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_sign"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>{const k={...n.value.getValue()};return(!k.static_claims||Object.keys(k.static_claims).length===0)&&delete k.static_claims,k}),{createFieldHandler:h}=Dr({validationConfig:{algorithm:Jo({fieldName:"Algorithm"}),expires_in:bn(ia("integer",{fieldName:"Expires in"}),aa(1,1/0,{fieldName:"Expires in"})),not_before:bn(ia("integer",{fieldName:"Not before"}),aa(0,1/0,{fieldName:"Not before"}))},getValidationData:()=>({algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before}),toggleNodeValid:p}),y=h("algorithm",()=>s("algorithm")),g=h("expires_in",()=>s("expires_in")),_=h("not_before",()=>s("not_before"));return(k,b)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",name:"algorithm",onUpdate:t.unref(y).update},null,8,["onUpdate"]),t.createVNode(Nt,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"expires_in",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Nt,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"not_before",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Me,{name:"kid","onUpdate:modelValue":b[0]||(b[0]=N=>t.unref(s)("kid"))}),t.createVNode(Me,{name:"typ","onUpdate:modelValue":b[1]||(b[1]=N=>t.unref(s)("typ"))}),t.createVNode(_n,{label:t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onLegacyValueChange:b[2]||(b[2]=N=>t.unref(s)("static_claims"))},null,8,["label"]),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"jwt_sign","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Uq=t.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),r=wn("jwt_verify"),{i18n:{t:o}}=Qe(),{formData:i,setName:a,setConfig:s,inputOptions:l,setInputs:c,setInput:d,inputsFieldNames:u,nameValidator:f,toggleNodeValid:p,fieldNameValidator:m}=kn(e.nodeId,()=>n.value.getValue()),{createFieldHandler:h}=Dr({validationConfig:{leeway:bn(ia("integer",{fieldName:"Leeway"}),aa(0,1/0,{fieldName:"Leeway"}))},getValidationData:()=>({leeway:i.value.leeway}),toggleNodeValid:p}),y=h("leeway",()=>s("leeway"));return(g,_)=>(t.openBlock(),t.createBlock(Wt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(zn,{name:t.unref(i).name,validate:t.unref(f),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(_e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(St,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:_[0]||(_[0]=k=>t.unref(s)("allowed_algorithms"))}),t.createVNode(dt,{name:"issuers",onAdd:_[2]||(_[2]=k=>t.unref(s)("issuers")),onRemove:_[3]||(_[3]=k=>t.unref(s)("issuers"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[1]||(_[1]=N=>t.unref(s)("issuers"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(dt,{name:"audiences",onAdd:_[5]||(_[5]=k=>t.unref(s)("audiences")),onRemove:_[6]||(_[6]=k=>t.unref(s)("audiences"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[4]||(_[4]=N=>t.unref(s)("audiences"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(dt,{name:"required_claims",onAdd:_[8]||(_[8]=k=>t.unref(s)("required_claims")),onRemove:_[9]||(_[9]=k=>t.unref(s)("required_claims"))},{item:t.withCtx(({fieldName:k,autofocus:b})=>[t.createVNode(Me,{autofocus:b,name:k,"onUpdate:modelValue":_[7]||(_[7]=N=>t.unref(s)("required_claims"))},null,8,["autofocus","name"])]),_:1}),t.createVNode(Nt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"leeway",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{name:"validate_exp","onUpdate:modelValue":_[10]||(_[10]=k=>t.unref(s)("validate_exp"))}),t.createVNode(en,{name:"validate_nbf","onUpdate:modelValue":_[11]||(_[11]=k=>t.unref(s)("validate_nbf"))}),t.createVNode(er),t.createVNode(Pn,{"field-name-validator":t.unref(m),"field-names":t.unref(u),items:t.unref(l),"node-type":"jwt_verify","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Kq=["innerHTML"],qq={key:1,class:"branch-note"},Gq={class:"branch-label"},zq={class:"branch-text"},Hq=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Hy}px`},offsetTop:{default:`${tA}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Ft.createI18n("en-us",zt),{getNodeById:r,branchGroups:o}=Vt(),i=t.computed(()=>e.nodeId&&r(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return o.findMembership(e.nodeId)}),s=t.computed(()=>{if(!a.value)return"";const d=r(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function l(){e.nodeId&&o.removeMember(e.nodeId)}const c=t.computed(()=>{switch(i.value?.type){case"call":return wq;case"service_request":return Cq;case"response":return Eq;case"jq":return Nq;case"static":return Iq;case"property":return Pq;case"exit":return Vq;case"branch":return Rq;case"cache":return Lq;case"xml_to_json":return Dq;case"json_to_xml":return Mq;case"jwt_decode":return Fq;case"jwt_sign":return jq;case"jwt_verify":return Uq;default:return null}});return(d,u)=>(t.openBlock(),t.createBlock(t.unref(_e.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(eA),onClose:u[0]||(u[0]=f=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Si)(i.value.type)},null,8,Kq)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",qq,[t.createElementVNode("span",Gq,[t.createVNode(t.unref(Ne.ArrowSplitIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["color","size"]),t.createElementVNode("span",zq,t.toDisplayString(s.value),1)]),t.createVNode(t.unref(_e.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref(_e.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:l},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Np,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),Wq=xe(Hq,[["__scopeId","data-v-32602117"]]),Yq={class:"dk-editor-content"},Jq={class:"main"},Xq=xe(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:r}=Vt();function o(){n.value=!1}t.watch(r,a=>{a||o()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,s)=>(t.openBlock(),t.createElementBlock("div",Yq,[t.createVNode(t.unref(n8)),t.createElementVNode("div",Jq,[t.createVNode(fK)]),t.createVNode(Wq,{"node-id":t.unref(r)?.id,visible:t.unref(n),onClose:o},null,8,["node-id","visible"])]))}}),[["__scopeId","data-v-66331c5c"]]),Zq={key:0,class:"dk-editor-modal"},Qq=xe(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(l=>({v38ec900c:`${t.unref(QS)}px`,v620586b8:`${t.unref(zy)}px`}));const n=t.useModel(e,"open"),r=t.ref(!1),o=t.useTemplateRef("confirm-modal"),{clear:i}=Vt();O$(async(...l)=>{r.value=!0;const c=await o.value.open(...l);return r.value=!1,c});const a=Ot.useScrollLock(document);t.watch(n,l=>{a.value=!!l,l||i()},{immediate:!0});function s(){n.value=!1}return(l,c)=>n.value?(t.openBlock(),t.createElementBlock("div",Zq,[t.createVNode(aK,{class:"nav",onBack:s}),t.createVNode(Xq,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(nK,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-c3604472"]]),e3={class:"dk-flow-editor"},t3={class:"flow-panels-container"},n3={class:"overlay"},r3=xe(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:r}=Ft.createI18n("en-us",zt),{formData:o,setValue:i,getValue:a}=lt(),s=n;function l(u,f,p,m){const h={...o.config,nodes:u};p!==void 0&&(h.resources=p);const y={...o.__ui_data,...f},g={...o,config:h,__ui_data:y};m!=null?g.partials=[{id:m}]:g.partials&&(g.partials=null),i(g),s("change",h,y)}const{modalOpen:c,setPendingFitView:d}=Cp(a(),{onChange:l,isEditing:e.isEditing});return t.watch(c,()=>{d(!0)},{flush:"post"}),WU({enabled:c}),(u,f)=>{const p=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",e3,[t.createElementVNode("div",t3,[t.createVNode(eg,{inactive:t.unref(c),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",n3,[t.createVNode(p,{appearance:"secondary",class:"button-open-editor",onClick:f[0]||(f[0]=m=>c.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Ne.ExpandIcon))]),_:1})])]),t.createVNode(Qq,{open:t.unref(c),"onUpdate:open":f[1]||(f[1]=m=>t.isRef(c)?c.value=m:null)},null,8,["open"])])}}}),[["__scopeId","data-v-cd9d53e6"]]),o3=["innerHTML"],i3={class:"dk-option-label"},a3=Ce({component:xe(t.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(e){const{t:n}=Ft.createI18n("en-us",zt),r=e,o=t.useAttrs(),i=t.inject(Je.FORMS_CONFIG),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:s}=ud(),l=t.computed(()=>i.app!=="konnect"||u.value===!1?"code":s.value),c=t.computed(()=>i.app==="kongManager"?"code":l.value==="flow"?"form":"code"),d={flow:Ne.DesignIcon,code:Ne.CodeblockIcon},u=t.ref(!0),f=t.ref(""),p=t.computed(()=>{const S=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return S[0].disabled=!u.value,S}),m=t.inject(Bn.KM_3034_FEATURES_316,!1),h=t.ref(!(r.isEditing&&r.model?.config?.ca_certificates?.length)),y=t.computed(()=>{const S=[{name:"plugin-config",title:n("plugins.free-form.datakit.flow_editor.mode"),description:n("plugins.free-form.datakit.description_flow")}];return m&&S.push({name:"advanced",title:n("plugins.free-form.datakit.advanced_configuration.title")}),S}),g=t.computed(()=>u.value?"":n("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:f.value,code:S=>`<code>${lO(S)}</code>`}));t.watch(l,()=>{r.onValidityChange?.({model:"config",valid:!0})});function _(){r.onValidityChange?.({model:"config",valid:!0})}function k(){_()}function b(S){return S.map(x=>typeof x=="number"?`[${x}]`:S.length&&typeof x=="string"&&x.includes(".")?`["${x}"]`:`.${x}`).join("").replace(/^\./,"")}function N(S){return S.issues.map(x=>`${b(x.path)} - ${x.message}`).join("; ")}function C(S){if(_(),i.app!=="konnect")return;const x=S?.config,{success:T,error:I}=xC.safeParse(x);f.value=T||!I?"":N(I),u.value=T}function w(S){f.value=S,u.value=!1,r.onValidityChange?.({model:"config",valid:!1,error:S})}return(S,x)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i).app==="konnect"?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(_e.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:p.value,"onUpdate:modelValue":x[0]||(x[0]=T=>s.value=T)},{"option-label":t.withCtx(({option:T})=>[t.createVNode(t.unref(_e.KTooltip),{disabled:u.value||T.value!=="flow"},{content:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:g.value},null,8,o3)]),default:t.withCtx(()=>[t.createElementVNode("div",i3,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[T.value]))),t.createTextVNode(" "+t.toDisplayString(T.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(On,t.mergeProps({...t.unref(o),...r},{class:"dk-form","config-sections":y.value,"editor-mode":c.value,"hide-editor-mode-switcher":""}),t.createSlots({"section-plugin-config":t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(r3,{key:0,"is-editing":r.isEditing,onChange:k},null,8,["is-editing"])):t.createCommentVNode("",!0)]),"code-editor":t.withCtx(()=>[t.createVNode(zU,{class:"code-editor",editing:r.isEditing,onChange:C,onError:w},null,8,["editing"])]),_:2},[t.unref(m)?{name:"section-advanced",fn:t.withCtx(()=>[t.createVNode(t.unref(_e.KCollapse),{modelValue:h.value,"onUpdate:modelValue":x[1]||(x[1]=T=>h.value=T),"data-testid":"dk-advanced-configuration-collapse","trigger-label":h.value?t.unref(n)("plugins.free-form.datakit.advanced_configuration.show_label"):t.unref(n)("plugins.free-form.datakit.advanced_configuration.hide_label")},{default:t.withCtx(()=>[t.createVNode(jU,{name:"$.config.ca_certificates"})]),_:1},8,["modelValue","trigger-label"])]),key:"0"}:void 0]),1040,["config-sections","editor-mode"])],64))}}),[["__scopeId","data-v-2503a4a2"]])}),s3=Ce({experimental:!0}),l3={class:"ff-response-mapping"},c3={class:"ff-response-mapping-header"},d3={class:"ff-response-mapping-col ff-response-mapping-col--code"},u3={class:"ff-response-mapping-col ff-response-mapping-col--status"},f3={class:"ff-response-mapping-col ff-response-mapping-col--message"},p3={class:"ff-response-mapping-col ff-response-mapping-col--code"},m3={class:"ff-response-mapping-col ff-response-mapping-col--status"},g3={class:"ff-response-mapping-col ff-response-mapping-col--message"},h3=xe(t.defineComponent({__name:"ResponseMappingField",setup(e){const{i18n:{t:n}}=Qe(),r=["NO_CREDIT_AVAILABLE","USAGE_LIMIT_REACHED","FEATURE_UNAVAILABLE","FEATURE_NOT_FOUND","CUSTOMER_NOT_FOUND"],{formData:o,getDefault:i}=lt();for(const a of r)for(const s of["http_status","message"]){const l=["config","response_codes",a,s];xo(o,l)==null&&zf(o,l,i(`config.response_codes.${a}.${s}`))}return(a,s)=>(t.openBlock(),t.createElementBlock("div",l3,[t.createElementVNode("div",c3,[t.createElementVNode("span",d3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.code")),1),t.createElementVNode("span",u3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.status")),1),t.createElementVNode("span",f3,t.toDisplayString(t.unref(n)("plugins.free-form.governance.fields.response.columns.message")),1)]),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(r,l=>t.createElementVNode("div",{key:l,class:"ff-response-mapping-row"},[t.createElementVNode("div",p3,[t.createVNode(t.unref(_e.KInput),{"data-testid":`ff-response-mapping-code-${l}`,"model-value":l,readonly:""},null,8,["data-testid","model-value"])]),t.createElementVNode("div",m3,[t.createVNode(Nt,{label:"",name:`config.response_codes.${l}.http_status`},null,8,["name"])]),t.createElementVNode("div",g3,[t.createVNode(Me,{label:"",name:`config.response_codes.${l}.message`},null,8,["name"])])])),64))]))}}),[["__scopeId","data-v-10e31d0a"]]),y3={class:"ff-card-radio-field"},_3={class:"ff-card-radio-field-cards"},og=xe(t.defineComponent({__name:"CardRadioField",props:{name:{},label:{},options:{}},setup(e){const n=e,{formData:r}=lt(),o=t.computed({get:()=>{const i=n.name.split(".");return xo(r,i)},set:i=>{const a=n.name.split(".");zf(r,a,i)}});return(i,a)=>(t.openBlock(),t.createElementBlock("div",y3,[e.label?(t.openBlock(),t.createBlock(t.unref(_e.KLabel),{key:0},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1})):t.createCommentVNode("",!0),t.createElementVNode("div",_3,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.options,s=>(t.openBlock(),t.createBlock(t.unref(_e.KRadio),{key:String(s.value),modelValue:o.value,"onUpdate:modelValue":a[0]||(a[0]=l=>o.value=l),card:"","card-orientation":"horizontal",description:s.description,label:s.label,"selected-value":s.value},null,8,["modelValue","description","label","selected-value"]))),128))])]))}}),[["__scopeId","data-v-e546bf77"]]),b3={class:"ff-feature-option"},k3={class:"ff-feature-option-key"},w3={key:0,class:"ff-feature-option-name"},C3=xe(t.defineComponent({__name:"FeatureSelectField",emits:["click:create-entity"],setup(e,{emit:n}){const r=n,{i18n:{t:o}}=Qe(),i=t.inject(Je.FORMS_CONFIG),{axiosInstance:a}=ue.useAxios(i?.axiosRequestConfig),{formData:s}=lt(),l=t.computed(()=>i?.metering?.canListFeatures!==!1),c=t.computed(()=>i?.metering?.canCreateFeature!==!1),d=t.ref([]),u=t.ref(!1),f=t.computed(()=>i?.metering?.featuresEndpoint??""),p=t.computed(()=>xo(s,["config","feature","key"])),m=t.computed(()=>{const y=[...d.value];return p.value&&!y.some(g=>g.value===p.value)&&y.unshift({label:p.value,value:p.value}),y});async function h(){if(!(!l.value||!f.value)){u.value=!0;try{const g=(await a.get(f.value)).data?.data??[];d.value=g.map(_=>({label:_.key,value:_.key,name:_.name}))}catch(y){console.warn("[governance]",o("plugins.free-form.governance.fields.feature_key.load_error"),y)}finally{u.value=!1}}}return t.onMounted(h),(y,g)=>{const _=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[l.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(_,{key:0,appearance:"warning",class:"ff-feature-unavailable","data-testid":"ff-feature-unavailable",message:t.unref(o)("plugins.free-form.governance.fields.feature_key.unavailable"),"show-icon":""},null,8,["message"])),t.createVNode(St,{disabled:!l.value,"enable-filtering":"",help:t.unref(o)("plugins.free-form.governance.fields.feature_key.help"),items:m.value,label:t.unref(o)("plugins.free-form.governance.fields.feature_key.label"),loading:u.value,name:"config.feature.key"},t.createSlots({"item-label":t.withCtx(k=>[t.createElementVNode("div",b3,[t.createElementVNode("span",k3,t.toDisplayString(k.value),1),k.name?(t.openBlock(),t.createElementBlock("span",w3,t.toDisplayString(k.name),1)):t.createCommentVNode("",!0)])]),_:2},[c.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-feature-create","data-testid":"ff-feature-create-action",onClick:g[0]||(g[0]=k=>r("click:create-entity",{type:"feature"}))},[t.createElementVNode("span",null,t.toDisplayString(t.unref(o)("plugins.free-form.governance.fields.feature_key.create_feature")),1)])]),key:"0"}:void 0]),1032,["disabled","help","items","label","loading"])],64)}}}),[["__scopeId","data-v-f6d49ce6"]]),E3={class:"ff-entitlement-enforcement-subject"},N3={class:"ff-entitlement-enforcement-connection-heading"},S3={class:"ff-entitlement-enforcement-inline-row"},A3={class:"ff-entitlement-enforcement-cache-sync-heading"},x3={class:"ff-entitlement-enforcement-cache-sync"},I3={class:"ff-entitlement-enforcement-response-mapping-heading"},v3={class:"ff-entitlement-enforcement-deny-unknown-customers-heading"},T3=Ce({experimental:!0,component:xe(t.defineComponent({__name:"EntitlementEnforcementForm",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:{}},emits:["click:create-entity"],setup(e,{emit:n}){const r=e,o=n,i=t.useSlots();t.provide(Je.AUTOFILL_SLOT,i?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=Qe(),s=t.inject(Je.FORMS_CONFIG),l=t.computed(()=>s?.app==="kongManager"),d=t.inject(Jm)?.(()=>!l.value);t.onUnmounted(()=>d?.());const u=t.computed(()=>{const g=s?.geoApiServerUrl,_=g?new URL(g).hostname.split(".")[0]:null;return _?`https://${_}.api.konghq.com/v3/openmeter/entitlement-access/query`:"https://us.api.konghq.com/v3/openmeter/entitlement-access/query"}),f={hasValue:g=>!!g&&Object.keys(g).length>0,prepareFormData:g=>r.isEditing?g:s?.app==="konnect"&&!g?.config?.entitlement_access_endpoint?{...g,config:{...g?.config,entitlement_access_endpoint:u.value}}:g},p=[{name:"configuration",title:a("plugins.free-form.governance.sections.configuration.title"),description:a("plugins.free-form.governance.sections.configuration.description")},{name:"entitlement-enforcement",title:a("plugins.free-form.governance.sections.governance.title"),description:a("plugins.free-form.governance.sections.governance.description")}],m=t.computed(()=>[{value:!0,label:a("plugins.free-form.governance.fields.credit_balance_required.yes_label"),description:a("plugins.free-form.governance.fields.credit_balance_required.yes_description")},{value:!1,label:a("plugins.free-form.governance.fields.credit_balance_required.no_label"),description:a("plugins.free-form.governance.fields.credit_balance_required.no_description")}]),h=t.computed(()=>[{value:"allow",label:a("plugins.free-form.governance.fields.fail_policy.allow_label"),description:a("plugins.free-form.governance.fields.fail_policy.allow_description")},{value:"block",label:a("plugins.free-form.governance.fields.fail_policy.block_label"),description:a("plugins.free-form.governance.fields.fail_policy.block_description")}]),y=t.computed(()=>[{value:!1,label:a("plugins.free-form.governance.fields.deny_unknown_customers.allow_label"),description:a("plugins.free-form.governance.fields.deny_unknown_customers.allow_description")},{value:!0,label:a("plugins.free-form.governance.fields.deny_unknown_customers.deny_label"),description:a("plugins.free-form.governance.fields.deny_unknown_customers.deny_description")}]);return(g,_)=>{const k=t.resolveComponent("KAlert");return l.value?(t.openBlock(),t.createBlock(k,{key:0,appearance:"info",class:"ff-entitlement-enforcement-unavailable","data-testid":"ff-entitlement-enforcement-unavailable",message:t.unref(a)("plugins.free-form.governance.unavailable_kong_manager")},null,8,["message"])):(t.openBlock(),t.createBlock(On,t.mergeProps({key:1},r,{"config-sections":p,"form-config":f}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:b})=>b==="config.customer.look_up_value_in"},{default:t.withCtx(b=>[t.createVNode(St,t.mergeProps(b,{help:t.unref(a)("plugins.free-form.governance.fields.look_up_value_in.help"),label:t.unref(a)("plugins.free-form.governance.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.customer.field"},{default:t.withCtx(b=>[t.createVNode(Me,t.mergeProps(b,{help:t.unref(a)("plugins.free-form.governance.fields.subject_field.help"),label:t.unref(a)("plugins.free-form.governance.fields.subject_field.label"),placeholder:t.unref(a)("plugins.free-form.governance.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.ssl_verify"},{default:t.withCtx(b=>[t.createVNode(en,t.mergeProps(b,{description:t.unref(a)("plugins.free-form.governance.fields.ssl_verify.description"),label:t.unref(a)("plugins.free-form.governance.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.timeout"},{default:t.withCtx(b=>[t.createVNode(Nt,t.mergeProps(b,{label:t.unref(a)("plugins.free-form.governance.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:b})=>b==="config.keepalive"},{default:t.withCtx(b=>[t.createVNode(Nt,t.mergeProps(b,{label:t.unref(a)("plugins.free-form.governance.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"])]),"section-configuration":t.withCtx(()=>[t.createElementVNode("div",E3,[t.createVNode(Rt,{"as-child":"",name:"config.customer","render-rules":{dependencies:{field:["look_up_value_in",["header","query"]]}},"reset-label-path":"reset"})]),t.createVNode(C3,{"onClick:createEntity":_[0]||(_[0]=b=>o("click:create-entity",b))}),t.createElementVNode("h3",N3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.sections.connection.title")),1),t.createVNode(Me,{help:t.unref(a)("plugins.free-form.governance.fields.governance_endpoint.help"),name:"config.entitlement_access_endpoint"},null,8,["help"]),t.createVNode(Xe,{name:"config.api_token"}),t.createVNode(Xe,{name:"config.ssl_verify"}),t.createElementVNode("div",S3,[t.createVNode(Xe,{name:"config.timeout"}),t.createVNode(Xe,{name:"config.keepalive"})]),t.createVNode(sd,{borderless:"","is-konnect-managed-redis-enabled":r.isKonnectManagedRedisEnabled??!1},null,8,["is-konnect-managed-redis-enabled"]),t.createVNode(Yo,{class:"ff-entitlement-enforcement-advanced-fields-container","data-testid":"ff-entitlement-enforcement-config-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createElementVNode("h3",A3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.sections.cache_sync.title")),1),t.createElementVNode("div",x3,[t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.sync_rate.label"),name:"config.sync_rate"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.refresh_interval.label"),name:"config.refresh_interval"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.max_stale_seconds.label"),name:"config.max_stale_seconds"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.l1_ttl.label"),name:"config.l1_cache_ttl_seconds"},null,8,["label"]),t.createVNode(Nt,{label:t.unref(a)("plugins.free-form.governance.fields.l2_ttl.label"),name:"config.l2_cache_ttl_seconds"},null,8,["label"])])])]),_:1})]),"section-entitlement-enforcement":t.withCtx(()=>[t.createVNode(og,{label:t.unref(a)("plugins.free-form.governance.fields.credit_balance_required.label"),name:"config.credit_balance_required",options:m.value},null,8,["label","options"]),t.createVNode(og,{label:t.unref(a)("plugins.free-form.governance.fields.fail_policy.label"),name:"config.fail_policy",options:h.value},null,8,["label","options"]),t.createVNode(Yo,{class:"ff-entitlement-enforcement-advanced-fields-container","data-testid":"ff-entitlement-enforcement-advanced-settings","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createElementVNode("h3",I3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.fields.response.label")),1),t.createVNode(h3)]),t.createElementVNode("div",null,[t.createElementVNode("h3",v3,t.toDisplayString(t.unref(a)("plugins.free-form.governance.fields.deny_unknown_customers.label")),1),t.createVNode(og,{name:"config.deny_unknown_customers",options:y.value},null,8,["options"])])]),_:1})]),_:1},16))}}}),[["__scopeId","data-v-d6b90783"]])}),B3=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e==="config.functions.*",component:Me,propsOverrides:e=>({...e,multiline:!0,rows:3})}]}),O3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),P3=Ce({experimental:!0}),V3=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}}}),$3=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}}}),R3=Ce({experimental:!0,fieldRenderers:[{match:"config.proto",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),L3=Ce({experimental:!0}),D3=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),M3=Ce({experimental:!0}),F3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),j3=Ce({experimental:!0,fieldRenderers:[{match:"config.injection_types",component:St,propsOverrides:{multiple:!0}},{match:"config.locations",component:St,propsOverrides:{multiple:!0}},{match:"config.custom_injections",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Injection`}}]}),U3=Ce({experimental:!0}),K3=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>e==="config.request_jq_program"||e==="config.response_jq_program",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),q3=Ce({experimental:!0}),G3=Ce({experimental:!0}),OC=xe(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:r}=lt(),o=r("config"),i=t.computed(()=>{const s=[],l=[],c=new Set,u=n().fields.find(g=>Object.keys(g)[0]==="config");if(!u||!("config"in u))return{defaultVisible:s,advanced:l};const f=u.config;f.entity_checks&&f.entity_checks.forEach(g=>{let _;"at_least_one_of"in g?_=g.at_least_one_of:"conditional"in g&&n(yt("config",g.conditional.if_field))?.required&&g.conditional.then_match.required?_=[g.conditional.if_field,g.conditional.then_field]:"conditional_at_least_one_of"in g&&n(yt("config",g.conditional_at_least_one_of.if_field))?.required&&(_=[g.conditional_at_least_one_of.if_field,...g.conditional_at_least_one_of.then_at_least_one_of]),_?.forEach(k=>c.add(k.split(".")[0]))});const p=o.value?.bundles??[],m=new Map;for(const g of p)for(let _=1;_<g.length;_++)m.set(g[_],g[_-1]);const h=g=>{const _=m.get(g);return _?h(_):g},y=new Map;for(const g of f.fields){const _=Object.keys(g)[0];y.set(_,h(_))}for(const g of f.fields){const _=Object.keys(g)[0];if(y.get(_)!==_)continue;let b;g[_].required||c.has(_)?b=s:b=l,b.push(_)}for(const g of f.fields){const _=Object.keys(g)[0],k=y.get(_);k!==_&&(s.includes(k)?s:l).push(_)}return{defaultVisible:s,advanced:l}}),a=t.computed(()=>i.value.defaultVisible.length===0);return(s,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",class:"ff-default-visible-fields",name:"config",omit:a.value?[]:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),a.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Yo,{key:0,class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Rt,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1}))],64))}}),[["__scopeId","data-v-bc82c9e9"]]),PC=t.defineComponent({inheritAttrs:!1,__name:"KeysetField",props:{name:{},scope:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),o=t.inject(Je.FORMS_CONFIG),i=t.computed(()=>o?.app==="konnect"),{formData:a,config:s}=lt();function l(p){const m=`config.${p}`,h=Sc(p);return s.value.transformLabel?s.value.transformLabel(h,m):h}function c(p){if(typeof p!="string"||!p)return!1;try{const m=new URL(p);return(m.protocol==="http:"||m.protocol==="https:")&&!!m.host}catch{return!1}}const d=t.computed(()=>{if(!i.value)return{hasError:!1,message:""};const p=a.config,m=p?.[`${n.scope}_token_signing`],h=p?.[`${n.scope}_token_upstream_header`];if(!m)return{hasError:!1,message:""};if(typeof h!="string"||h==="")return{hasError:!1,message:""};const y=p?.[`${n.scope}_token_keyset`];return c(y)?{hasError:!1,message:""}:{hasError:!0,message:r("plugins.free-form.jwt-signer.keyset_url_required",{signingField:l(`${n.scope}_token_signing`),headerField:l(`${n.scope}_token_upstream_header`)})}}),u=t.computed(()=>d.value.hasError),f=t.computed(()=>d.value.message);return(p,m)=>(t.openBlock(),t.createBlock(Me,t.mergeProps(p.$attrs,{error:u.value,"error-message":f.value,name:e.name}),null,16,["error","error-message","name"]))}}),z3=Ce({component:t.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(e){const n=e,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=t.useSlots();return t.provide(Je.AUTOFILL_SLOT,o?.[Je.AUTOFILL_SLOT_NAME]),(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"render-rules":r}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:s})=>s==="config.access_token_keyset"},{default:t.withCtx(s=>[t.createVNode(PC,t.mergeProps(s,{scope:"access"}),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({path:s})=>s==="config.channel_token_keyset"},{default:t.withCtx(s=>[t.createVNode(PC,t.mergeProps(s,{scope:"channel"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(OC)]),_:1},16))}})}),H3=Ce({experimental:!0}),W3=Ce({experimental:!0,fieldRenderers:[{match:"config.message_by_lua_functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}},{match:"config.topics",component:dt,propsOverrides:{appearance:"tabs",stickyTabs:!0,itemLabel:(e,n)=>`#${n+1} Topic`}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),Y3=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),J3=Ce({experimental:!0,fieldRenderers:[{match:"config.message_by_lua_functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}},{match:"config.bootstrap_servers",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Server`}}]}),X3=Ce({experimental:!0}),Z3=Ce({experimental:!0,component:dC}),Q3=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),e4=Ce({experimental:!0}),t4=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),n4={class:"ff-collapsible-section"},r4={class:"ff-collapsible-section-header"},o4={class:"ff-collapsible-section-header-toggle"},i4={key:0,class:"ff-collapsible-section-content"},a4={key:0,class:"ff-collapsible-section-indent-guide"},ig=xe(t.defineComponent({__name:"CollapsibleSection",props:t.mergeModels({label:{}},{expanded:{type:Boolean,default:!0},expandedModifiers:{}}),emits:["update:expanded"],setup(e){const n=t.useModel(e,"expanded");return(r,o)=>(t.openBlock(),t.createElementBlock("div",n4,[t.createElementVNode("header",r4,[t.createElementVNode("div",o4,[t.createElementVNode("button",{class:"ff-collapsible-section-toggle-btn",type:"button",onClick:o[0]||(o[0]=t.withModifiers(i=>n.value=!n.value,["prevent","stop"]))},[t.createVNode(t.unref(Ne.ChevronRightIcon),{class:t.normalizeClass(["ff-collapsible-section-toggle-btn-trigger-icon",{"collapse-expanded":n.value}]),decorative:"",size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["class","size"])]),t.createVNode(t.unref(_e.KLabel),{class:"ff-collapsible-section-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.label),1)]),_:1})])]),t.createVNode(xc,null,{default:t.withCtx(()=>[n.value?(t.openBlock(),t.createElementBlock("div",i4,[t.renderSlot(r.$slots,"default",{},void 0,!0)])):t.createCommentVNode("",!0)]),_:3}),n.value?(t.openBlock(),t.createElementBlock("div",a4)):t.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-39f2a44b"]]),s4={class:"ff-mb-subject"},l4={class:"ff-mb-attributes"},c4={class:"ff-metering-billing-inline-row"},d4={class:"ff-mb-queue"},u4=Ce({experimental:!0,component:xe(t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Qe(),i=t.inject(Je.FORMS_CONFIG),a=t.computed(()=>{const u=i?.geoApiServerUrl,f=u?new URL(u).hostname.split(".")[0]:null;return f?`https://${f}.api.konghq.com/v3/openmeter/events`:"https://{{region}}.api.konghq.com/v3/openmeter/events"}),s={hasValue:u=>!!u&&Object.keys(u).length>0,prepareFormData:u=>n.isEditing?u:i?.app==="konnect"&&!u?.config?.ingest_endpoint?{...u,config:{...u?.config,ingest_endpoint:a.value}}:u},l=t.ref(!0),c=t.ref(!0),d=t.ref(!0);return(u,f)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"form-config":s,"plugin-config-description":t.unref(o)("plugins.free-form.metering-and-billing.sections.plugin_config.description")}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:p})=>p==="config.meter_api_requests"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.meter_api_requests.description")}),null,16,["description"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.meter_ai_token_usage"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.meter_ai_token_usage.description")}),null,16,["description"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.ssl_verify"},{default:t.withCtx(p=>[t.createVNode(en,t.mergeProps(p,{description:t.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.description"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.ssl_verify.label")}),null,16,["description","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.subject.look_up_value_in"},{default:t.withCtx(p=>[t.createVNode(St,t.mergeProps(p,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.help"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.look_up_value_in.label")}),null,16,["help","label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.subject.field"},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.help"),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.label"),placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.subject_field.placeholder")}),null,16,["help","label","placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.timeout"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.timeout.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.keepalive"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.keepalive.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_coalescing_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_coalescing_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.initial_retry_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.initial_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_retry_delay"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_delay.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p==="config.queue.max_retry_time"},{default:t.withCtx(p=>[t.createVNode(Nt,t.mergeProps(p,{label:t.unref(o)("plugins.free-form.metering-and-billing.fields.queue.max_retry_time.label")}),null,16,["label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p.startsWith("config.attributes.")&&p.endsWith(".look_up_value_in")},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.look_up_value_in.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:p})=>p.startsWith("config.attributes.")&&p.endsWith(".event_property_name")},{default:t.withCtx(p=>[t.createVNode(Me,t.mergeProps(p,{placeholder:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.event_property_name.placeholder")}),null,16,["placeholder"])]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(ig,{expanded:l.value,"onUpdate:expanded":f[0]||(f[0]=p=>l.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.sections.metering.title")},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"config.meter_api_requests"}),t.createVNode(Xe,{name:"config.meter_ai_token_usage"})]),_:1},8,["expanded","label"]),t.createElementVNode("div",s4,[t.createVNode(Rt,{label:t.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"])]),t.createVNode(ig,{expanded:c.value,"onUpdate:expanded":f[1]||(f[1]=p=>c.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.fields.attributes.title")},{default:t.withCtx(()=>[t.createElementVNode("div",l4,[t.createVNode(dt,{"hide-label":"",name:"config.attributes"})])]),_:1},8,["expanded","label"]),t.createVNode(ig,{expanded:d.value,"onUpdate:expanded":f[2]||(f[2]=p=>d.value=p),label:t.unref(o)("plugins.free-form.metering-and-billing.sections.ingestion.title")},{default:t.withCtx(()=>[t.createVNode(Me,{help:t.unref(o)("plugins.free-form.metering-and-billing.fields.ingest_endpoint.help"),name:"config.ingest_endpoint"},null,8,["help"]),t.createVNode(Xe,{name:"config.api_token"}),t.createVNode(Xe,{name:"config.ssl_verify"}),t.createElementVNode("div",c4,[t.createVNode(Xe,{name:"config.timeout"}),t.createVNode(Xe,{name:"config.keepalive"})])]),_:1},8,["expanded","label"]),t.createVNode(Yo,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createElementVNode("div",d4,[t.createVNode(t.unref(_e.KLabel),{class:"ff-mb-queue-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.metering-and-billing.sections.queue.title")),1)]),_:1}),t.createVNode(Rt,{"as-child":"",name:"config.queue","reset-label-path":"reset"})])]),_:1})]),_:1},16,["plugin-config-description"]))}}),[["__scopeId","data-v-78972733"]])}),f4=Ce({experimental:!0,fieldRenderers:[{match:"config.api_specification",component:Me,propsOverrides:{multiline:!0,rows:15}}]}),p4=Ce({experimental:!0,fieldRenderers:[{match:"config.consumer_by",component:St,propsOverrides:{multiple:!0}}]}),m4=Ce({experimental:!0,fieldRenderers:[{match:"config.api_spec",component:Me,propsOverrides:{multiline:!0,rows:15}}]}),g4=Ce({experimental:!0}),h4=Ce({experimental:!0}),y4=Ce({experimental:!0});function _4(e){const{consumer_claim:n,consumer_claims:r}=e;return Array.isArray(r)&&r.length>0||n==null||n===""?null:[Array.isArray(n)?n:[n]]}const b4={key:0,class:"oidc-auth-methods"},k4={class:"auth-methods-hint"},w4={class:"session-management-section"},C4={class:"session-radio-group"},E4={key:1,class:"oidc-auth-methods"},N4={class:"auth-method-container"},ag=["authorization_code","bearer","client_credentials","password","introspection","userinfo","kong_oauth2","refresh_token"],VC=["bearer","client_credentials","introspection","userinfo"],S4="identity.konghq",$C=e=>typeof e=="string"&&e.includes(S4),RC=xe(t.defineComponent({__name:"AuthMethodsField",props:{principalsMode:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),o=t.inject(Je.FORMS_CONFIG),i=t.computed(()=>o?.app==="konnect"),{formData:a}=lt(),s=t.computed(()=>a.config?.auth_methods??null),l=t.computed(()=>({authorization_code:r("plugins.free-form.openid-connect.auth_methods.methods.authorization_code"),bearer:r("plugins.free-form.openid-connect.auth_methods.methods.bearer"),client_credentials:r("plugins.free-form.openid-connect.auth_methods.methods.client_credentials"),password:r("plugins.free-form.openid-connect.auth_methods.methods.password"),introspection:r("plugins.free-form.openid-connect.auth_methods.methods.introspection"),userinfo:r("plugins.free-form.openid-connect.auth_methods.methods.userinfo"),kong_oauth2:r("plugins.free-form.openid-connect.auth_methods.methods.kong_oauth2"),refresh_token:r("plugins.free-form.openid-connect.auth_methods.methods.refresh_token")})),c=t.computed(()=>n.principalsMode!==null&&n.principalsMode!==void 0?n.principalsMode==="kong-identity":$C(a.config?.issuer)),d=t.computed(()=>(i.value&&c.value?ag.filter(_=>VC.includes(_)):ag).map(_=>({value:_,label:l.value[_]}))),u=t.computed(()=>(s.value??[]).filter(g=>g!=="session")),f=t.computed(()=>(s.value??[]).includes("session"));function p(g,_){a.config&&(a.config.auth_methods=_?[...g,"session"]:[...g])}function m(g){p(g,f.value)}function h(g,_){const k=_?[...new Set([...u.value,g])]:u.value.filter(b=>b!==g);p(k,f.value)}function y(g){p(u.value,g)}return(g,_)=>i.value?(t.openBlock(),t.createElementBlock("div",b4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.label")),1)]),_:1}),(t.openBlock(),t.createBlock(t.unref(_e.KMultiselect),{key:e.principalsMode??"initial",class:"auth-methods-multiselect","data-testid":"auth-methods-multiselect",items:d.value,"model-value":u.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.auth_methods.placeholder"),"onUpdate:modelValue":m},null,8,["items","model-value","placeholder"])),t.createElementVNode("p",k4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.hint")),1),t.createElementVNode("div",w4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.label")),1)]),_:1}),t.createElementVNode("div",C4,[t.createVNode(t.unref(_e.KRadio),{"data-testid":"session-radio-use",description:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.use_description"),label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.use_label"),"model-value":f.value,"selected-value":!0,onChange:_[0]||(_[0]=k=>y(!0))},null,8,["description","label","model-value"]),t.createVNode(t.unref(_e.KRadio),{"data-testid":"session-radio-no-use",description:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.no_use_description"),label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.no_use_label"),"model-value":f.value,"selected-value":!1,onChange:_[1]||(_[1]=k=>y(!1))},null,8,["description","label","model-value"])])])])):(t.openBlock(),t.createElementBlock("div",E4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.auth_methods.km_label")),1)]),_:1}),t.createElementVNode("div",N4,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,k=>(t.openBlock(),t.createElementBlock("div",{key:k.value,class:"auth-method"},[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":`auth-method-checkbox-${k.value}`,"model-value":u.value.includes(k.value),"onUpdate:modelValue":b=>h(k.value,b)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(k.label),1)]),_:2},1032,["data-testid","model-value","onUpdate:modelValue"])]))),128))]),t.createVNode(t.unref(_e.KInputSwitch),{"data-testid":"session-management-switch",label:t.unref(r)("plugins.free-form.openid-connect.auth_methods.session.switch_label"),"model-value":f.value,"onUpdate:modelValue":y},null,8,["label","model-value"])]))}}),[["__scopeId","data-v-ec201579"]]),A4={class:"oidc-client-jwk-field"},x4=xe(t.defineComponent({__name:"ClientJwkField",props:{name:{}},setup(e){const{i18n:{t:n}}=Qe();return(r,o)=>(t.openBlock(),t.createElementBlock("div",A4,[t.createVNode(dt,{appearance:"tabs","item-label":(i,a)=>`#${a+1} Client JWK`,name:e.name,"sticky-tabs":""},{label:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.openid-connect.advanced_fields.client_jwk_link_label"))+" ",1),t.createVNode(t.unref(_e.KExternalLink),{class:"oidc-client-jwk-link",href:"https://developer.konghq.com/plugins/openid-connect/reference/#schema--config-client-jwk"},{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createTextVNode(" More info ",-1)])]),_:1})]),_:1},8,["item-label","name"])]))}}),[["__scopeId","data-v-60061242"]]),I4={class:"principals-field-group"},v4={class:"principals-field-group"},T4={class:"lookup-method-item"},B4={class:"lookup-method-item-label"},O4={class:"lookup-method-item-description"},P4={class:"principals-field-group"},V4={class:"principals-field-group"},$4={class:"principals-learn-more-link",href:"https://developer.konghq.com/identity/principals/",rel:"noopener noreferrer",target:"_blank"},R4={class:"principals-field-group"},L4={class:"principals-learn-more-link",href:"https://developer.konghq.com/identity/principals/",rel:"noopener noreferrer",target:"_blank"},LC=xe(t.defineComponent({__name:"PrincipalLookupSettings",props:{disabled:{type:Boolean},dataPlaneIncompatible:{type:Boolean},showPrincipalsFields:{type:Boolean,default:!0},onEnabledChange:{type:Function}},setup(e){const n=t.createPropsRestProxy(e,["showPrincipalsFields"]),{i18n:{t:r}}=Qe(),o=t.inject(Vs,void 0),{formData:i,getEmptyValue:a}=lt();function s(I){return t.computed({get:()=>i.config?.principals?.[I],set:A=>{i.config?.principals&&(i.config.principals[I]=A)}})}const l=s("enabled"),c=s("principal_by"),d=s("principal_claim"),u=s("error_on_miss"),f=s("match_consumer"),p=s("match_consumer_groups"),m=[{label:r("plugins.free-form.openid-connect.lookup.method.kong_identity_label"),value:"kong-identity",description:r("plugins.free-form.openid-connect.lookup.method.kong_identity_description")},{label:r("plugins.free-form.openid-connect.lookup.method.custom_identity_label"),value:"custom-identity",description:r("plugins.free-form.openid-connect.lookup.method.custom_identity_description")}],h=I=>I==null||I===""?!1:Array.isArray(I)?I.length>0:!0,y=t.ref(h(c.value)?"custom-identity":"kong-identity"),g=t.computed(()=>l.value===!0),_=t.computed(()=>n.disabled||!g.value),k=t.computed(()=>y.value==="custom-identity"?r("plugins.free-form.openid-connect.lookup.token_claim.help_custom"):r("plugins.free-form.openid-connect.lookup.token_claim.help"));function b(I){return Array.isArray(I)&&I.length>0?I.map(A=>A.replace(/[\\.]/g,v=>`\\${v}`)).join("."):typeof I=="string"&&I?I:""}function N(I){if(!I)return a();const A=[];let v="";for(let O=0;O<I.length;O++){const $=I[O];$==="\\"&&(I[O+1]==="."||I[O+1]==="\\")?(v+=I[O+1],O++):$==="."?(A.push(v),v=""):v+=$}A.push(v);const V=A.map(O=>O.trim()).filter(Boolean);return V.length>0?V:a()}!o?.value&&!h(d.value)&&(d.value=["sub"]);const C=t.ref(b(d.value));function w(I){C.value=I,d.value=N(I.trim())}t.watch(d,I=>{const A=N(C.value.trim());Kt(I??null,A??null)||(C.value=b(I))});function S(I){f.value=I,I||(p.value=!1)}function x(I){y.value=I??"kong-identity",I!=="custom-identity"&&(c.value=a(),d.value=a())}function T(I){n.onEnabledChange?n.onEnabledChange(I):l.value=I}return(I,A)=>(t.openBlock(),t.createBlock(t.unref(_e.KCollapse),{class:"principals-advanced-settings","data-testid":"principals-advanced-settings","trigger-label":t.unref(r)("plugins.free-form.openid-connect.lookup.collapse_label")},{default:t.withCtx(()=>[e.showPrincipalsFields?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(I.$slots,"banner",{},void 0,!0),e.dataPlaneIncompatible?(t.openBlock(),t.createBlock(t.unref(_e.KAlert),{key:0,appearance:"warning",class:"principals-dp-version-alert","data-testid":"oidc-principals-dp-version-alert",message:t.unref(r)("plugins.free-form.openid-connect.principals.dp_version_alert"),"show-icon":""},null,8,["message"])):t.createCommentVNode("",!0),t.createElementVNode("div",I4,[t.createVNode(t.unref(_e.KInputSwitch),{"data-testid":"use-principal-lookup",disabled:e.disabled,"model-value":g.value,"onUpdate:modelValue":T},{label:t.withCtx(()=>[t.createVNode(t.unref(_e.KLabel),{info:t.unref(r)("plugins.free-form.openid-connect.lookup.toggle_info"),"tooltip-attributes":{maxWidth:"300"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.toggle_label")),1)]),_:1},8,["info"])]),_:1},8,["disabled","model-value"])]),t.createElementVNode("div",v4,[t.createVNode(t.unref(_e.KSelect),{class:"principals-lookup-method-select","data-testid":"principals-lookup-method",disabled:_.value,help:t.unref(r)("plugins.free-form.openid-connect.lookup.method.help"),items:m,label:t.unref(r)("plugins.free-form.openid-connect.lookup.method.label"),"model-value":y.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.method.placeholder"),"onUpdate:modelValue":x},{"item-template":t.withCtx(({item:v})=>[t.createElementVNode("div",T4,[t.createElementVNode("div",B4,t.toDisplayString(v.label),1),t.createElementVNode("div",O4,t.toDisplayString(v.description),1)])]),_:1},8,["disabled","help","label","model-value","placeholder"]),y.value==="custom-identity"?(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:0,class:"principals-custom-identity-name-input","data-testid":"principals-custom-identity-name",disabled:_.value,help:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.help"),label:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.label"),"model-value":t.unref(c)??void 0,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.custom_identity_name.placeholder"),"onUpdate:modelValue":A[0]||(A[0]=v=>c.value=v)},null,8,["disabled","help","label","model-value","placeholder"])):t.createCommentVNode("",!0),t.createVNode(t.unref(_e.KInput),{class:"principals-token-claim-input","data-testid":"principals-token-claim",disabled:_.value,help:k.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.token_claim.label"),"model-value":C.value,placeholder:t.unref(r)("plugins.free-form.openid-connect.lookup.token_claim.placeholder"),"onUpdate:modelValue":w},null,8,["disabled","help","label","model-value","placeholder"])]),t.createElementVNode("div",P4,[t.createVNode(t.unref(_e.KLabel),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.label")),1)]),_:1}),t.createVNode(t.unref(_e.KRadio),{"data-testid":"principals-error-on-miss-true",description:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.reject_description"),disabled:_.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.reject_label"),"model-value":t.unref(u)??null,"selected-value":!0,onChange:A[1]||(A[1]=v=>u.value=!0)},null,8,["description","disabled","label","model-value"]),t.createVNode(t.unref(_e.KRadio),{"data-testid":"principals-error-on-miss-false",description:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.continue_description"),disabled:_.value,label:t.unref(r)("plugins.free-form.openid-connect.lookup.error_on_miss.continue_label"),"model-value":t.unref(u)??null,"selected-value":!1,onChange:A[2]||(A[2]=v=>u.value=!1)},null,8,["description","disabled","label","model-value"])]),t.createElementVNode("div",V4,[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":"principals-match-consumer",disabled:_.value,"model-value":t.unref(f)??!1,"onUpdate:modelValue":S},{description:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.description"))+" ",1),t.createElementVNode("a",$4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.link")),1)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer.label"))+" ",1)]),_:1},8,["disabled","model-value"])]),t.createElementVNode("div",R4,[t.createVNode(t.unref(_e.KCheckbox),{"data-testid":"principals-match-consumer-groups",disabled:_.value||!t.unref(f),"model-value":t.unref(p)??!1,"onUpdate:modelValue":A[3]||(A[3]=v=>p.value=v)},{description:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.description"))+" ",1),t.createElementVNode("a",L4,t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.link")),1)]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.openid-connect.lookup.match_consumer_groups.label"))+" ",1)]),_:1},8,["disabled","model-value"])])],64)):t.createCommentVNode("",!0),t.renderSlot(I.$slots,"default",{},void 0,!0)]),_:3},8,["trigger-label"]))}}),[["__scopeId","data-v-fdffea21"]]),D4={class:"oidc-principals-section","data-testid":"oidc-principals-section"},M4={class:"principals-header"},F4={class:"principals-description"},j4={class:"oidc-auth-mode-radio-group","data-testid":"oidc-auth-mode-radio-group"},U4={class:"auth-mode-card-content"},K4={class:"auth-mode-card-label"},q4={class:"auth-mode-card-description"},G4={class:"auth-mode-card-content"},z4={class:"auth-mode-card-label"},H4={class:"auth-mode-card-description"},W4={key:1,class:"principals-create-guide","data-testid":"principals-create-guide"},Y4={class:"principals-create-guide-title"},J4={class:"principals-create-guide-description"},X4={class:"principals-create-guide-actions"},Z4={class:"create-action-content"},Q4={class:"create-action-hint"},eG={class:"create-action-content"},tG={class:"create-action-hint"},nG={class:"principals-client-secret-wrapper"},rG=["aria-label","disabled","onClick"],oG={class:"external-client-field"},iG=["innerHTML"],aG={class:"external-client-field"},sG=["innerHTML"],lG=["aria-label","disabled","onClick"],cG={key:1,class:"principals-create-guide","data-testid":"principals-create-guide"},dG={class:"principals-create-guide-title"},uG={class:"principals-create-guide-description"},fG={class:"principals-create-guide-actions"},Mr="kong-identity",gd="external",pG="/v1/auth-servers/_computed",mG=xe(t.defineComponent({__name:"PrincipalsSection",emits:["mode-change","click:learn-more","click:create-entity"],setup(e,{emit:n}){const r={major:3,minor:15},o=Be=>{const[Ve,$e]=Be.split(".").map(Number);return Number.isNaN(Ve)||Number.isNaN($e)?!1:Ve!==r.major?Ve<r.major:$e<r.minor},i=n,{i18n:{t:a}}=Qe(),s=t.inject(Je.FORMS_CONFIG),l=t.inject(Je.AUTOFILL_SLOT,void 0),c=t.inject(Vs,void 0),d=t.computed(()=>c?.value??!1),{formData:u,getLabelAttributes:f,getEmptyOrDefault:p,getEmptyValue:m}=lt(),h=t.computed({get:()=>u.config?.issuer??null,set:Be=>{u.config&&(u.config.issuer=Be)}}),y=t.computed({get:()=>u.config?.client_id??null,set:Be=>{u.config&&(u.config.client_id=Be)}}),g=t.computed({get:()=>u.config?.client_secret??null,set:Be=>{u.config&&(u.config.client_secret=Be)}}),_=t.ref(d.value?$C(h.value)?Mr:gd:Mr),k=t.ref([]),b=t.ref(!1),N=t.ref([]),C=t.ref(!1),w=t.ref(null),S=t.ref(null);let x=!1;const T=t.computed(()=>f("config.client_id").info),I=t.computed(()=>f("config.client_secret").info),A=t.computed(()=>k.value.map(Be=>({label:Be.name,value:Be.id}))),v=t.computed(()=>N.value.map(Be=>({label:Be.name,value:Be.client_id||Be.id}))),V=t.computed(()=>{const Be=y.value;return Array.isArray(Be)&&Be.length>0?Be:[null]}),O=t.computed(()=>{const Be=g.value;return Array.isArray(Be)&&Be.length>0?Be:[null]}),$=t.computed(()=>Q.value&&!w.value||V.value.length<=1),Q=t.computed(()=>s?.isKongIdentityAuthServersAvailable!==!1),pe=t.computed(()=>s?.canCreateAuthServer!==!1),H=t.computed(()=>s?.canCreateAuthServerClient!==!1),j=t.computed(()=>s?.principalsCreationGuideVisible),D=t.computed(()=>j.value===!0),ee=t.computed(()=>j.value===void 0),K=t.computed(()=>!D.value&&(s?.dataPlaneVersions??[]).some(o));t.watch(()=>s?.principalsDirectoryName,Be=>{d.value||_.value!==Mr||Be==null||u.config?.principals&&(u.config.principals.directory=Be)},{immediate:!0}),t.onMounted(()=>{d.value||t.nextTick(()=>{je(_.value),i("mode-change",_.value)}),J()});async function J(){if(s?.isKongIdentityAuthServersAvailable!==!1)try{b.value=!0;const{axiosInstance:Be}=ue.useAxios(s?.axiosRequestConfig),Ve=`${s?.apiBaseUrl}${pG}`,$e=await Be.get(Ve);if(k.value=$e.data?.data??[],h.value&&!w.value){const Ke=k.value.find(de=>de.issuer===h.value)||null;Ke&&(x=!0,w.value=Ke,ce(Ke.id))}}catch{k.value=[]}finally{b.value=!1}}async function ce(Be){try{C.value=!0;const{axiosInstance:Ve}=ue.useAxios(s?.axiosRequestConfig),$e=`${s?.apiBaseUrl}/v1/auth-servers/${Be}/clients`,Ke=await Ve.get($e);N.value=Ke.data?.data??[]}catch{N.value=[]}finally{C.value=!1}}function z(Be){if(x){x=!1;return}w.value=k.value.find(Ve=>Ve.id===Be)||null,w.value?.issuer&&(h.value=w.value.issuer),y.value=[null],g.value=[null],N.value=[],C.value=!!Be,Be&&ce(Be)}function oe(Be,Ve){const $e=[...V.value];$e[Be]=Ve,y.value=$e}function Pe(Be,Ve){const $e=[...O.value];$e[Be]=Ve,g.value=$e}function Ee(){y.value=[...V.value,null],g.value=[...O.value,null]}function Ge(Be){if(V.value.length<=1)return;const Ve=[...V.value];Ve.splice(Be,1),y.value=Ve;const $e=[...O.value];$e.splice(Be,1),g.value=$e}function se(Be){const Ve=V.value;return v.value.map($e=>({...$e,disabled:Ve.some((Ke,de)=>de!==Be&&Ke===$e.value)}))}function X(){return u.config?.principals??p("config.principals")??{}}function he(Be){u.config&&(u.config.principals={...X(),enabled:Be})}function ve(){const Be=S.value;S.value=null,Be==="authServer"?i("click:create-entity",{type:"auth-server"}):Be==="client"?i("click:create-entity",{type:"client",authServerId:w.value?.id}):Be==="principal"&&i("click:create-entity",{type:"principal"})}function je(Be){const Ve=(u.config?.auth_methods??[]).includes("session"),$e=Be===gd||!d.value?!0:Ve,Ke=Be===Mr?[...VC]:[...ag];$e&&Ke.push("session"),u.config&&(u.config.auth_methods=Ke)}function qe(Be){if(u.config&&(u.config.client_id=m(),u.config.client_secret=m(),u.config.issuer=m()),u.config){const Ve=X(),$e=Be===Mr?s?.principalsDirectoryName??Ve.directory:"default";u.config.principals={...Ve,enabled:!1,error_on_miss:!0,match_consumer:!0,match_consumer_groups:!0,directory:$e}}Be===gd&&(w.value=null,N.value=[]),je(Be),i("mode-change",Be)}return(Be,Ve)=>(t.openBlock(),t.createElementBlock("div",D4,[t.createElementVNode("div",M4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.header")),1),t.createElementVNode("div",F4,[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.description"))+" ",1),t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.learn_more")),1)]),_:1})]),t.createElementVNode("div",j4,[t.createVNode(t.unref(_e.KRadio),{modelValue:_.value,"onUpdate:modelValue":Ve[0]||(Ve[0]=$e=>_.value=$e),card:"","card-orientation":"horizontal","data-testid":"oidc-auth-mode-kong-identity","selected-value":Mr,onChange:qe},{default:t.withCtx(()=>[t.createElementVNode("div",U4,[t.createVNode(t.unref(Ne.KeyIcon),{size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]),t.createElementVNode("div",K4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.kong_identity_label")),1),t.createElementVNode("div",q4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.kong_identity_description")),1)])]),_:1},8,["modelValue"]),t.createVNode(t.unref(_e.KRadio),{modelValue:_.value,"onUpdate:modelValue":Ve[1]||(Ve[1]=$e=>_.value=$e),card:"","card-orientation":"horizontal","data-testid":"oidc-auth-mode-external","selected-value":gd,onChange:qe},{default:t.withCtx(()=>[t.createElementVNode("div",G4,[t.createVNode(t.unref(Ne.WorldIcon),{size:`var(--kui-icon-size-40, ${t.unref(ko)})`},null,8,["size"]),t.createElementVNode("div",z4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.external_label")),1),t.createElementVNode("div",H4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.external_description")),1)])]),_:1},8,["modelValue"])]),ee.value&&_.value===Mr?(t.openBlock(),t.createBlock(t.unref(_e.KSkeleton),{key:0,class:"principals-create-guide-skeleton","data-testid":"principals-create-guide-loading"})):D.value&&_.value===Mr?(t.openBlock(),t.createElementBlock("div",W4,[t.createElementVNode("div",Y4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.title")),1),t.createElementVNode("div",J4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.description")),1),t.createElementVNode("div",X4,[t.createVNode(t.unref(_e.KButton),{appearance:"primary","data-testid":"principals-create-principal",onClick:Ve[2]||(Ve[2]=$e=>S.value="principal")},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.create")),1)]),_:1}),t.createVNode(t.unref(_e.KButton),{appearance:"secondary","data-testid":"principals-learn-more",onClick:Ve[3]||(Ve[3]=$e=>Be.$emit("click:learn-more","kong-identity"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.learn_more")),1)]),_:1})])])):t.createCommentVNode("",!0),_.value===Mr?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[Q.value?(t.openBlock(),t.createBlock(t.unref(_e.KSelect),{key:0,class:"principals-directory-select","data-testid":"principals-directory-select","enable-filtering":"",items:A.value,label:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.label"),"label-attributes":{info:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.info"),tooltipAttributes:{maxWidth:"300"}},loading:b.value,"model-value":w.value?.id,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.placeholder"),required:"","onUpdate:modelValue":z},t.createSlots({_:2},[pe.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("button",{class:"create-action","data-testid":"create-auth-server-action",type:"button",onClick:Ve[4]||(Ve[4]=t.withModifiers($e=>S.value="authServer",["stop"]))},[t.createVNode(t.unref(Ne.AddIcon),{size:`var(--kui-icon-size-20, ${t.unref(hi)})`},null,8,["size"]),t.createElementVNode("div",Z4,[t.createElementVNode("span",null,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.create")),1),t.createElementVNode("div",Q4,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.create_hint")),1)])])]),key:"0"}:void 0]),1032,["items","label","label-attributes","loading","model-value","placeholder"])):(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:1,"data-testid":"kong-identity-issuer-input",help:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.no_access_help"),label:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.label"),"label-attributes":{info:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.info"),tooltipAttributes:{maxWidth:"300"}},"model-value":h.value??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.auth_server.issuer_placeholder"),required:"","onUpdate:modelValue":Ve[5]||(Ve[5]=$e=>h.value=$e)},null,8,["help","label","label-attributes","model-value","placeholder"])),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(V.value,($e,Ke)=>(t.openBlock(),t.createElementBlock("div",{key:Ke,class:t.normalizeClass(["client-row",{"client-row-with-label":Ke===0}])},[Q.value?(t.openBlock(),t.createBlock(t.unref(_e.KSelect),{key:1,class:"principals-client-select","data-testid":"principals-client-select",disabled:!w.value,"enable-filtering":"",items:se(Ke),label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.label"):void 0,loading:C.value,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},t.createSlots({_:2},[H.value?{name:"dropdown-footer-text",fn:t.withCtx(()=>[t.createElementVNode("button",{class:"create-action","data-testid":"create-client-action",type:"button",onClick:Ve[6]||(Ve[6]=t.withModifiers(de=>S.value="client",["stop"]))},[t.createVNode(t.unref(Ne.AddIcon),{size:`var(--kui-icon-size-20, ${t.unref(hi)})`},null,8,["size"]),t.createElementVNode("div",eG,[t.createElementVNode("span",null,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.create")),1),t.createElementVNode("div",tG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.create_hint")),1)])])]),key:"0"}:void 0]),1032,["disabled","items","label","loading","model-value","placeholder","onUpdate:modelValue"])):(t.openBlock(),t.createBlock(t.unref(_e.KInput),{key:0,class:"principals-client-select","data-testid":"principals-client-id-input",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.label"):void 0,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.id_placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},null,8,["label","model-value","placeholder","onUpdate:modelValue"])),t.createElementVNode("div",nG,[t.createVNode(t.unref(_e.KInput),{class:"principals-client-secret","data-testid":"principals-client-secret",disabled:Q.value&&!w.value,label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_label"):void 0,"model-value":O.value[Ke]??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_placeholder"),"show-password-mask-toggle":"",type:"password","onUpdate:modelValue":de=>Pe(Ke,de)},null,8,["disabled","label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_secret",referenceable:!0},update:de=>Pe(Ke,de),value:O.value[Ke]},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("button",{"aria-label":t.unref(a)("plugins.free-form.openid-connect.principals.client.remove"),class:"remove-client-btn","data-testid":"remove-client-action",disabled:$.value,type:"button",onClick:de=>Ge(Ke)},[t.createVNode(t.unref(Ne.CloseIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])],8,rG)],2))),128)),t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",class:"add-client-inline","data-testid":"add-client-action",disabled:Q.value&&!w.value,icon:"",type:"button",onClick:Ve[7]||(Ve[7]=$e=>Ee())},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.add")),1)]),_:1},8,["disabled"]),t.createVNode(LC,{"data-plane-incompatible":K.value,"on-enabled-change":he},{default:t.withCtx(()=>[t.renderSlot(Be.$slots,"default",{},void 0,!0)]),_:3},8,["data-plane-incompatible"])],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(V.value,($e,Ke)=>(t.openBlock(),t.createElementBlock("div",{key:Ke,class:t.normalizeClass(["client-row",{"client-row-with-label":Ke===0}])},[t.createElementVNode("div",oG,[t.createVNode(t.unref(_e.KInput),{class:"external-client-input","data-testid":"external-client-id",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.id_label"):void 0,"model-value":$e??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.id_placeholder"),"onUpdate:modelValue":de=>oe(Ke,de)},t.createSlots({_:2},[Ke===0&&T.value?{name:"label-tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:T.value},null,8,iG)]),key:"0"}:void 0]),1032,["label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_id",referenceable:!0},update:de=>oe(Ke,de),value:$e},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("div",aG,[t.createVNode(t.unref(_e.KInput),{class:"external-client-input","data-testid":"external-client-secret",label:Ke===0?t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_label"):void 0,"model-value":O.value[Ke]??void 0,placeholder:t.unref(a)("plugins.free-form.openid-connect.principals.client.secret_placeholder"),"show-password-mask-toggle":"",type:"password","onUpdate:modelValue":de=>Pe(Ke,de)},t.createSlots({_:2},[Ke===0&&I.value?{name:"label-tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:I.value},null,8,sG)]),key:"0"}:void 0]),1032,["label","model-value","placeholder","onUpdate:modelValue"]),t.unref(l)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(l)),{key:0,schema:{model:"config-client_secret",referenceable:!0},update:de=>Pe(Ke,de),value:O.value[Ke]},null,8,["update","value"])):t.createCommentVNode("",!0)]),t.createElementVNode("button",{"aria-label":t.unref(a)("plugins.free-form.openid-connect.principals.client.remove"),class:"remove-client-btn","data-testid":"remove-external-client-action",disabled:V.value.length<=1,type:"button",onClick:de=>Ge(Ke)},[t.createVNode(t.unref(Ne.CloseIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])],8,lG)],2))),128)),t.createVNode(t.unref(_e.KButton),{appearance:"tertiary",class:"add-client-inline","data-testid":"add-external-client-action",icon:"",type:"button",onClick:Ve[8]||(Ve[8]=$e=>Ee())},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.client.add")),1)]),_:1}),t.createVNode(Xe,{name:"config.issuer"}),t.createVNode(LC,{"data-plane-incompatible":K.value,"on-enabled-change":he},{banner:t.withCtx(()=>[j.value===void 0?(t.openBlock(),t.createBlock(t.unref(_e.KSkeleton),{key:0,class:"principals-create-guide-skeleton","data-testid":"principals-create-guide-loading"})):j.value?(t.openBlock(),t.createElementBlock("div",cG,[t.createElementVNode("div",dG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.title")),1),t.createElementVNode("div",uG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.description_external")),1),t.createElementVNode("div",fG,[t.createVNode(t.unref(_e.KButton),{appearance:"primary","data-testid":"principals-create-principal",onClick:Ve[9]||(Ve[9]=$e=>S.value="principal")},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.create")),1)]),_:1}),t.createVNode(t.unref(_e.KButton),{appearance:"secondary","data-testid":"principals-learn-more",onClick:Ve[10]||(Ve[10]=$e=>Be.$emit("click:learn-more","kong-identity"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.principals.guide.learn_more")),1)]),_:1})])])):t.createCommentVNode("",!0)]),default:t.withCtx(()=>[t.renderSlot(Be.$slots,"default",{},void 0,!0)]),_:3},8,["data-plane-incompatible"])],64)),t.createVNode(t.unref(_e.KPrompt),{"action-button-text":t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.action"),message:t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.message"),title:t.unref(a)("plugins.free-form.openid-connect.principals.leave_prompt.title"),visible:!!S.value,onCancel:Ve[11]||(Ve[11]=$e=>S.value=null),onProceed:ve},null,8,["action-button-text","message","title","visible"])]))}}),[["__scopeId","data-v-31ec1f61"]]),gG=t.defineComponent({__name:"VerifySignatureField",props:{name:{}},setup(e){const n=e,{i18n:{t:r}}=Qe(),{value:o}=Ec(()=>n.name),i=t.computed(()=>o.value===!0?r("plugins.free-form.openid-connect.advanced_fields.verify_signature_description"):void 0);return(a,s)=>(t.openBlock(),t.createBlock(en,{description:i.value,name:e.name},null,8,["description","name"]))}}),hG={class:"oidc-tab-fields"},yG={class:"oidc-tab-header"},_G={class:"oidc-tab-header-title"},bG={class:"oidc-tab-header-description"},kG={class:"oidc-tab-fields"},wG={class:"oidc-tab-header"},CG={class:"oidc-tab-header-title"},EG={class:"oidc-tab-header-description"},NG={class:"oidc-tab-fields"},SG={class:"oidc-tab-header"},AG={class:"oidc-tab-header-title"},xG={class:"oidc-tab-header-description"},IG=Ce({experimental:!0,component:xe(t.defineComponent({__name:"OpenidConnectForm",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:{}},emits:["click:learn-more","click:create-entity"],setup(e,{emit:n}){const r=[{hash:"#common",title:"Common"},{hash:"#authorization",title:"Authorization"},{hash:"#advanced",title:"Advanced"}],o=["client_id","client_secret","issuer","auth_methods","scopes_claim","scopes_required","audience_claim","audience_required","roles_claim","roles_required","groups_claim","groups_required","authenticated_groups_claim","consumer_claim","principals"],i={dependencies:{"config.token_exchange.subject_token_issuers.*.jwks_uri":["config.token_exchange.subject_token_issuers.*.verify_signature",!0],"config.cluster_cache_redis.cloud_authentication.aws_cache_name":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_region":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_is_serverless":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_access_key_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_secret_access_key":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_assume_role_arn":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.aws_role_session_name":["config.cluster_cache_redis.cloud_authentication.auth_provider","aws"],"config.cluster_cache_redis.cloud_authentication.gcp_service_account_json":["config.cluster_cache_redis.cloud_authentication.auth_provider","gcp"],"config.cluster_cache_redis.cloud_authentication.azure_client_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.azure_client_secret":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.azure_tenant_id":["config.cluster_cache_redis.cloud_authentication.auth_provider","azure"],"config.cluster_cache_redis.cloud_authentication.oauth":["config.cluster_cache_redis.cloud_authentication.auth_provider","oauth"],"config.cluster_cache_redis.cloud_authentication.oauth.username":["config.cluster_cache_redis.cloud_authentication.oauth.grant_type","password"],"config.cluster_cache_redis.cloud_authentication.oauth.password":["config.cluster_cache_redis.cloud_authentication.oauth.grant_type","password"],"config.redis":["config.session_storage","redis"]},bundles:[["config.token_exchange.subject_token_issuers.*.verify_signature","config.token_exchange.subject_token_issuers.*.jwks_uri"],["config.session_storage","config.redis"]]},{i18n:{t:a}}=Qe(),s=e,l=n,c=t.useSlots();t.provide(Je.AUTOFILL_SLOT,c?.[Je.AUTOFILL_SLOT_NAME]),t.provide(Vs,t.computed(()=>s.isEditing));const d=t.inject(Je.FORMS_CONFIG),u=t.computed(()=>d?.app==="konnect"),f=dd("openid-connect"),p=t.computed(()=>f?.source==="ai-manager"),m=t.inject(Bn.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),h=t.computed(()=>!!s.schema.fields.find(S=>"config"in S)?.config?.fields?.some(S=>"principals"in S)),y=t.computed(()=>u.value&&m&&h.value),g=t.ref(null),_=/^(?:\$\.)?config\.client_jwk\.\d+\.([^.]+)$/,k={transformLabel:(w,S)=>_.exec(S)?.[1]??w},b={"config.upstream_headers":"Upstream header","config.downstream_headers":"Downstream header","config.redis.sentinel_nodes":"Sentinel node","config.redis.cluster_nodes":"Cluster node","config.cluster_cache_redis.sentinel_nodes":"Sentinel node","config.cluster_cache_redis.cluster_nodes":"Cluster node"};function N(w,S){const x=w.startsWith("$.")?w.slice(2):w;return`#${S+1} ${b[x]}`}const C=new Set(["config.unauthorized_error_message","config.forbidden_error_message","config.client_jwk.*.x5c.*"]);return t.onMounted(()=>{const w=s.model?.config,S=_4({consumer_claim:w?.consumer_claim,consumer_claims:w?.consumer_claims});S!==null&&s.onFormChange({config:{consumer_claims:S}}),p.value&&!s.isEditing&&!w?.cache_tokens_salt&&s.onFormChange({config:{cache_tokens_salt:iw(32)}})}),(w,S)=>(t.openBlock(),t.createBlock(On,t.mergeProps(s,{"form-config":k,"render-rules":i}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:x})=>x==="config.client_jwk"},{default:t.withCtx(x=>[t.createVNode(x4,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x==="config.token_exchange.subject_token_issuers.*.verify_signature"},{default:t.withCtx(x=>[t.createVNode(gG,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x in b},{default:t.withCtx(x=>[t.createVNode(dt,t.mergeProps(x,{appearance:"tabs","item-label":(T,I)=>N(x.name,I)}),null,16,["item-label"])]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>t.unref(C).has(x)},{default:t.withCtx(x=>[t.createVNode(Me,t.mergeProps(x,{multiline:""}),null,16)]),_:1},8,["match"]),t.createVNode(mt,{match:({path:x})=>x==="config.cache_tokens_salt"},{default:t.withCtx(x=>[t.createVNode(Me,t.mergeProps(x,{required:p.value}),null,16,["required"])]),_:1},8,["match"]),t.createVNode(mt,{match:({genericPath:x})=>x==="config.token_exchange.subject_token_issuers"},{default:t.withCtx(x=>[t.createVNode(dt,t.mergeProps(x,{appearance:"tabs","item-label":(T,I)=>`#${I+1} Issuer`}),null,16,["item-label"])]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(t.unref(_e.KTabs),{tabs:r},{"common-anchor":t.withCtx(()=>[...S[3]||(S[3]=[t.createElementVNode("span",{"data-testid":"oidc-tab-common"},"Common",-1)])]),"authorization-anchor":t.withCtx(()=>[...S[4]||(S[4]=[t.createElementVNode("span",{"data-testid":"oidc-tab-authorization"},"Authorization",-1)])]),"advanced-anchor":t.withCtx(()=>[...S[5]||(S[5]=[t.createElementVNode("span",{"data-testid":"oidc-tab-advanced"},"Advanced",-1)])]),common:t.withCtx(()=>[t.createElementVNode("div",hG,[t.createElementVNode("div",yG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/reference/"},{default:t.withCtx(()=>[t.createElementVNode("span",_G,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.common.title")),1)]),_:1}),t.createElementVNode("p",bG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.common.description")),1)]),y.value?(t.openBlock(),t.createBlock(mG,{key:0,"onClick:createEntity":S[0]||(S[0]=x=>l("click:create-entity",x)),"onClick:learnMore":S[1]||(S[1]=x=>l("click:learn-more",x)),onModeChange:S[2]||(S[2]=x=>g.value=x)},{default:t.withCtx(()=>[t.createVNode(RC,{"principals-mode":g.value},null,8,["principals-mode"])]),_:1})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createVNode(Xe,{name:"config.client_id"}),t.createVNode(Xe,{name:"config.client_secret"}),t.createVNode(Xe,{name:"config.issuer"}),t.createVNode(RC,{"principals-mode":g.value},null,8,["principals-mode"])],64))])]),authorization:t.withCtx(()=>[t.createElementVNode("div",kG,[t.createElementVNode("div",wG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/#authorization"},{default:t.withCtx(()=>[t.createElementVNode("span",CG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.authorization.title")),1)]),_:1}),t.createElementVNode("p",EG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.authorization.description")),1)]),t.createVNode(Xe,{name:"config.scopes_claim"}),t.createVNode(Xe,{name:"config.scopes_required"}),t.createVNode(Xe,{name:"config.audience_claim"}),t.createVNode(Xe,{name:"config.audience_required"}),t.createVNode(Xe,{name:"config.roles_claim"}),t.createVNode(Xe,{name:"config.roles_required"}),t.createVNode(Xe,{name:"config.groups_claim"}),t.createVNode(Xe,{name:"config.groups_required"}),t.createVNode(Xe,{name:"config.authenticated_groups_claim"})])]),advanced:t.withCtx(()=>[t.createElementVNode("div",NG,[t.createElementVNode("div",SG,[t.createVNode(t.unref(_e.KExternalLink),{href:"https://developer.konghq.com/plugins/openid-connect/"},{default:t.withCtx(()=>[t.createElementVNode("span",AG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.advanced.title")),1)]),_:1}),t.createElementVNode("p",xG,t.toDisplayString(t.unref(a)("plugins.free-form.openid-connect.tabs.advanced.description")),1)]),t.createVNode(Rt,{"as-child":"",name:"config",omit:o})])]),_:1})]),_:1},16))}}),[["__scopeId","data-v-0fee122c"]])}),vG=Ce({experimental:!0,fieldRenderers:[{match:"config.access_logs.custom_attributes_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),TG=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>["config.access.*","config.body_filter.*","config.header_filter.*","config.certificate.*","config.functions.*","config.log.*","config.rewrite.*","config.ws_handshake.*","config.ws_client_frame.*","config.ws_upstream_frame.*","config.ws_close.*"].includes(e),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),BG=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>["config.access.*","config.body_filter.*","config.header_filter.*","config.certificate.*","config.functions.*","config.log.*","config.rewrite.*","config.ws_handshake.*","config.ws_client_frame.*","config.ws_upstream_frame.*","config.ws_close.*"].includes(e),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),OG=Ce({experimental:!0}),PG=Ce({experimental:!0,renderRules:{bundles:[["config.strategy","config.redis"]],dependencies:{"config.redis":["config.strategy","redis"]}},fieldRenderers:[{match:({path:e})=>e==="config.methods"||e==="config.request_method",component:St,propsOverrides:{multiple:!0}}]}),VG=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>e==="config.methods"||e==="config.request_method",component:St,propsOverrides:{multiple:!0}}]}),$G={class:"rla-form-request-limits-subtitle"},RG={class:"rla-form-request-limits-content"},LG={class:"rla-form-window-type"},DG={class:"rla-form-request-limits-items"},MG={class:"rla-form-request-limits-row"},FG=["id"],jG={class:"rla-form-request-limits-actions"},UG={key:0,class:"rla-form-request-limits-examples"},KG={class:"rla-form-request-limits-examples-badges"},sg="config.window_type",qG=xe(t.defineComponent({__name:"RequestLimitsForm",setup(e){const{i18n:{t:n}}=Qe(),{formData:r,getSelectItems:o,getSchema:i,getEmptyOrDefault:a}=lt(),s=t.computed(()=>{const _=r.config?.limit?.map((k,b)=>({limit:k,windowSize:r.config?.window_size?.[b]}));return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Nc("request-limits",s),c=_=>{if(m.value=void 0,!r.config)return;const k=a("config.limit.0"),b=a("config.window_size.0");r.config.limit?.length||(r.config.limit=[k]),r.config.window_size?.length||(r.config.window_size=[b]),r.config.limit.splice(_+1,0,k),r.config.window_size.splice(_+1,0,b)},d=_=>{r.config&&(r.config.limit.splice(_,1),r.config.window_size.splice(_,1))},u=i(sg)?.default,f=t.computed(()=>xo(r,sg)),p=t.computed(()=>o(sg).sort((_,k)=>_.value===u?-1:k.value===u?1:0)),m=t.ref(),h={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(h,f.value)?h[f.value]:[]),g=(_,k)=>{if(k===m.value){t.nextTick(()=>{m.value=void 0}),r.config.limit=[],r.config.window_size=[];return}t.nextTick(()=>{m.value=k}),r.config.limit=[_.config.limit],r.config.window_size=[_.config.window_size]};return(_,k)=>{const b=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),C=t.resolveComponent("KBadge"),w=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"rla-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"rla-form-request-limits-title",for:"rla-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",$G,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",RG,[t.createElementVNode("div",LG,[t.createVNode(tg,{items:p.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=x=>m.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",DG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(x,T)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,T)},[t.createVNode(b,{for:`rla-form-request-limits-item-${T}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:T+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",MG,[t.createElementVNode("legend",{id:`rla-form-request-limits-item-${T}-legend`,class:"rla-form-request-limits-inputs"},[t.createVNode(Nt,{name:`$.config.limit.${T}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Nt,{name:`$.config.window_size.${T}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,FG),t.createElementVNode("div",jG,[t.createVNode(N,{appearance:"tertiary",disabled:s.value.length<=1,onClick:()=>d(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(N,{appearance:"tertiary",onClick:()=>c(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",UG,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",KG,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(x,T)=>(t.openBlock(),t.createBlock(w,{key:`use-case-${T}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(C,{appearance:m.value===`${f.value}-${T}`?"info":"decorative",class:"rla-form-request-limits-examples-badge",onClick:()=>g(x,`${f.value}-${T}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-aa947728"]]),GG={id:"rla-form-error-legend",class:"rla-form-error-inputs"},zG=xe(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{i18n:{t:n}}=Qe();return(r,o)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"rla-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",GG,[t.createVNode(Nt,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(Me,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-7b36f1f7"]]),HG=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=lt(),r=t.inject(Je.FORMS_CONFIG),i=t.inject(oa)?.isEditing||!1,a=t.computed(()=>{if(r?.app!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=i?null:void 0)}),(s,l)=>(t.openBlock(),t.createBlock(xc,null,{default:t.withCtx(()=>[t.unref(n).config?.strategy==="redis"?(t.openBlock(),t.createBlock(sd,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):t.createCommentVNode("",!0)]),_:1}))}}),WG=t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n}=lt();return(r,o)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"identifier"}),t.createVNode(qG),t.createVNode(zG)]),_:1}),t.createVNode(Yo,{"hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(St,{multiple:!0,name:"config.compound_identifier"}),t.unref(n)("config.counter_key")?(t.openBlock(),t.createBlock(Xe,{key:0,name:"config.counter_key"})):t.createCommentVNode("",!0),t.createVNode(Xe,{name:"config.sync_rate"}),t.createVNode(Xe,{name:"config.namespace"}),t.createVNode(Xe,{name:"config.strategy"}),t.createVNode(HG),t.createVNode(Xe,{name:"config.dictionary_name"}),t.createVNode(Xe,{name:"config.lock_dictionary_name"}),t.createVNode(Xe,{name:"config.hide_client_headers"}),t.createVNode(Xe,{name:"config.retry_after_jitter_max"}),t.createVNode(Xe,{name:"config.header_name"}),t.createVNode(Xe,{name:"config.path"}),t.createVNode(Xe,{name:"config.throttling"}),t.createVNode(Xe,{name:"config.enforce_consumer_groups"}),t.createVNode(Xe,{name:"config.consumer_groups"}),t.createVNode(Xe,{name:"config.disable_penalty"})]),_:1})],64))}}),YG=Ce({experimental:!0,component:t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);function o(i,a){i.config?.namespace===null&&delete i.config.namespace,n.onFormChange(i,a)}return(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"on-form-change":o}),{default:t.withCtx(()=>[t.createVNode(WG)]),_:1},16))}})}),JG=Ce({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),XG=Ce({experimental:!0}),ZG="__request_callout_";function DC(){return ns(ZG)}const Rs="_callout_id",QG=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:r}=lt(),o=t.computed(()=>{const{callouts:s}=r.config;return s==null?[]:s.filter(({name:l})=>l&&l!==s[n.index]?.name)}),i=t.computed(()=>o.value.map(({[Rs]:s,name:l})=>({value:s,label:l}))),a=t.computed(()=>r.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(s=>i.value.some(l=>l.value===s))}),(s,l)=>(t.openBlock(),t.createBlock(Rt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(St,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Rt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(St,t.mergeProps(d,{items:t.unref(xp)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),e6=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=lt();function r(){const o=n.config.callouts[n.config.callouts.length-1];o&&(o[Rs]=DC())}return(o,i)=>(t.openBlock(),t.createBlock(dt,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:r},{item:t.withCtx(({index:a,fieldName:s})=>[t.createVNode(QG,{"field-name":s,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),t6=t.defineComponent({__name:"ConfigForm",setup(e){return(n,r)=>(t.openBlock(),t.createBlock(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(e6),t.createVNode(Rt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Rt,{appearance:"card",name:"cache"},{redis:t.withCtx(o=>[t.createVNode(Rt,t.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}))}}),n6=Ce({component:xe(t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);const{i18n:{t:o}}=Qe();function i(c,d=!1){return c.reduce((u,{[Rs]:f,name:p})=>(d?u[p]=f:u[f]=p,u),{})}function a(c){const d=es(c);if(d.config?.callouts){const{callouts:u}=d.config;u.forEach(p=>{p.request.body.custom=p.request.body.custom??{},p[Rs]=DC()});const f=i(u,!0);u.forEach(p=>{p.depends_on=p.depends_on.map(m=>f[m])})}return d}const s={hasValue:c=>!!c&&Object.keys(c).length>0,prepareFormData:a};function l(c,d){if(!c)return;const u=es(c);if(!u.config?.callouts){n.onFormChange(u,d);return}const f=i(u.config.callouts);u.config.callouts=u.config.callouts.map(p=>{const{[Rs]:m,depends_on:h,...y}=p;return{depends_on:h.map(g=>f[g]).filter(g=>g!=null),...y}}),n.onFormChange(u,d)}return(c,d)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"form-config":s,"on-form-change":l}),{"field-renderers":t.withCtx(()=>[t.createVNode(mt,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(Me,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(o)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(mt,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(f=>u.endsWith(f))},{default:t.withCtx(u=>[t.createVNode(dt,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(t6)]),_:1},16))}}),[["__scopeId","data-v-dc955662"]])}),r6=Ce({experimental:!0}),o6=Ce({experimental:!0}),i6=Ce({experimental:!0}),a6=Ce({experimental:!0}),s6=Ce({experimental:!0,fieldRenderers:[{match:"config.parameter_schema",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Parameter schema`}},{match:"config.body_schema",component:Me,propsOverrides:{multiline:!0,rows:4}},{match:"config.parameter_schema.*.schema",component:Me,propsOverrides:{multiline:!0,rows:4}}]}),l6=Ce({experimental:!0,renderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}}}),c6=Ce({experimental:!0,fieldRenderers:[{match:({path:e,genericPath:n})=>e==="config.replace.body"||n==="config.transform.functions.*"||n.endsWith(".json.*"),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),d6=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e.endsWith(".json.*"),component:Me,propsOverrides:{multiline:!0,rows:3}}]}),u6=Ce({experimental:!0,fieldRenderers:[{match:"config.rules",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Rule`}}]}),f6=Ce({experimental:!0}),p6=Ce({experimental:!0}),m6={class:"sp-form-request-limits-subtitle"},g6={class:"sp-form-request-limits-content"},h6={class:"sp-form-window-type"},y6={class:"sp-form-request-limits-items"},_6={class:"sp-form-request-limits-row"},b6=["id"],k6={class:"sp-form-request-limits-actions"},w6={key:0,class:"sp-form-request-limits-examples"},C6={class:"sp-form-request-limits-examples-badges"},lg="config.window_type",E6=xe(t.defineComponent({__name:"RequestLimitsForm",setup(e){const{t:n}=Ft.createI18n("en-us",zt),{formData:r,getSelectItems:o,getSchema:i,getEmptyOrDefault:a}=lt(),s=t.computed(()=>{const _=r.config?.limit?.map((k,b)=>({limit:k,windowSize:r.config?.window_size?.[b]}));return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Nc("request-limits",s),c=_=>{if(m.value=void 0,!r.config)return;const k=a("config.limit.0"),b=a("config.window_size.0");r.config.limit?.length||(r.config.limit=[k]),r.config.window_size?.length||(r.config.window_size=[b]),r.config.limit.splice(_+1,0,k),r.config.window_size.splice(_+1,0,b)},d=_=>{r.config&&(r.config.limit.splice(_,1),r.config.window_size.splice(_,1))},u=i(lg)?.default,f=t.computed(()=>xo(r,lg)),p=t.computed(()=>o(lg).sort((_,k)=>_.value===u?-1:k.value===u?1:0)),m=t.ref(),h={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(h,f.value)?h[f.value]:[]),g=(_,k)=>{if(k===m.value){t.nextTick(()=>{m.value=void 0}),r.config.limit=[],r.config.window_size=[];return}t.nextTick(()=>{m.value=k}),r.config.limit=[_.config.limit],r.config.window_size=[_.config.window_size]};return(_,k)=>{const b=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),C=t.resolveComponent("KBadge"),w=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",m6,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",g6,[t.createElementVNode("div",h6,[t.createVNode(tg,{items:p.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=x=>m.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",y6,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,(x,T)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(x,T)},[t.createVNode(b,{for:`sp-form-request-limits-item-${T}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:T+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",_6,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${T}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Nt,{name:`$.config.limit.${T}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Nt,{name:`$.config.window_size.${T}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,b6),t.createElementVNode("div",k6,[t.createVNode(N,{appearance:"tertiary",disabled:s.value.length<=1,onClick:()=>d(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(N,{appearance:"tertiary",onClick:()=>c(T)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",w6,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",C6,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(x,T)=>(t.openBlock(),t.createBlock(w,{key:`use-case-${T}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(x.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(x.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(x.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(C,{appearance:m.value===`${f.value}-${T}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>g(x,`${f.value}-${T}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(x.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-93225268"]]),N6={id:"sp-form-error-legend",class:"sp-form-error-inputs"},S6=xe(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ft.createI18n("en-us",zt);return(r,o)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",N6,[t.createVNode(Nt,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),o[0]||(o[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(Me,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-0796e152"]]),A6=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=lt(),r=t.inject(Je.FORMS_CONFIG),i=t.inject(oa)?.isEditing||!1,a=t.computed(()=>{if(r?.app!=="konnect")return!1;const s=r;return!!s.isKonnectManagedRedisEnabled&&s.isCloudGateway===!0});return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=i?null:void 0)}),(s,l)=>(t.openBlock(),t.createBlock(xc,null,{default:t.withCtx(()=>[t.unref(n).config?.strategy==="redis"?(t.openBlock(),t.createBlock(sd,{key:0,"is-konnect-managed-redis-enabled":a.value},null,8,["is-konnect-managed-redis-enabled"])):t.createCommentVNode("",!0)]),_:1}))}}),x6=t.defineComponent({__name:"ConfigForm",setup(e){return(n,r)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Rt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(E6),t.createVNode(S6)]),_:1}),t.createVNode(Yo,{"hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Xe,{name:"config.dictionary_name"}),t.createVNode(Xe,{name:"config.lock_dictionary_name"}),t.createVNode(Xe,{name:"config.strategy"}),t.createVNode(A6),t.createVNode(Xe,{name:"config.namespace"}),t.createVNode(Xe,{name:"config.hide_client_headers"}),t.createVNode(Xe,{name:"config.disable_penalty"}),t.createVNode(Xe,{name:"config.retry_after_jitter_max"}),t.createVNode(Xe,{name:"config.sync_rate"})]),_:1})],64))}}),I6=Ce({experimental:!0,component:t.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(e){const n=e,r=t.useSlots();t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]);function o(i,a){i.config?.namespace===null&&delete i.config.namespace,n.onFormChange(i,a)}return(i,a)=>(t.openBlock(),t.createBlock(On,t.mergeProps(n,{"on-form-change":o}),{default:t.withCtx(()=>[t.createVNode(x6)]),_:1},16))}})}),v6=Ce({experimental:!0}),T6=Ce({experimental:!0,fieldRenderers:[{match:({genericPath:e})=>e==="config.flow.functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}}]}),B6=Ce({experimental:!0,fieldRenderers:[{match:"config.message.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),O6=Ce({experimental:!0,fieldRenderers:[{match:"config.message.functions.*",component:Me,propsOverrides:{multiline:!0,rows:3}}]}),P6=Ce({experimental:!0}),V6=Ce({experimental:!0,fieldRenderers:[{match:"config.metrics",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Metric`}}]}),$6=Ce({experimental:!0,fieldRenderers:[{match:"config.metrics",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Metric`}}]}),R6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),L6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),D6=Ce({experimental:!0}),M6=Ce({experimental:!0}),F6=Ce({experimental:!0,fieldRenderers:[{match:"config.custom_fields_by_lua",component:_n,propsOverrides:{appearance:{string:{multiline:!0}}}}]}),j6=Ce({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:Me,propsOverrides:{multiline:!0,rows:4}}]}),U6=Ce({experimental:!0}),K6=Ce({experimental:!0}),q6=Ce({experimental:!0}),G6=Ce({experimental:!0,fieldRenderers:[{match:({path:e})=>/^config\.(client|upstream)\.(text|binary)\.schema$/.test(e),component:Me,propsOverrides:{multiline:!0,rows:4}}]}),z6=Ce({experimental:!0}),H6=Ce({experimental:!0,fieldRenderers:[{match:"config.static_tags",component:dt,propsOverrides:{appearance:"tabs",itemLabel:(e,n)=>`#${n+1} Tag`}}]}),cg=t.defineComponent({__name:"CommonForm",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(e){const n=e,r=t.useSlots();return t.provide(Je.AUTOFILL_SLOT,r?.[Je.AUTOFILL_SLOT_NAME]),(o,i)=>(t.openBlock(),t.createBlock(On,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(OC)]),_:1},16))}}),W6=Object.assign({"../plugins/ace.ts":a2,"../plugins/acl/index.ts":Mj,"../plugins/acme.ts":Fj,"../plugins/ai-a2a-proxy.ts":jj,"../plugins/ai-aws-guardrails.ts":Uj,"../plugins/ai-azure-content-safety.ts":Kj,"../plugins/ai-custom-guardrail.ts":qj,"../plugins/ai-gcp-model-armor.ts":Gj,"../plugins/ai-lakera-guard.ts":zj,"../plugins/ai-llm-as-judge.ts":Hj,"../plugins/ai-mcp-oauth2.ts":Wj,"../plugins/ai-mcp-proxy/index.ts":Yj,"../plugins/ai-prompt-compressor.ts":Jj,"../plugins/ai-prompt-decorator.ts":Xj,"../plugins/ai-prompt-guard.ts":Zj,"../plugins/ai-prompt-template.ts":Qj,"../plugins/ai-proxy-advanced.ts":eU,"../plugins/ai-proxy.ts":tU,"../plugins/ai-rag-injector.ts":nU,"../plugins/ai-rate-limiting-advanced.ts":rU,"../plugins/ai-request-transformer.ts":oU,"../plugins/ai-response-transformer.ts":iU,"../plugins/ai-sanitizer.ts":aU,"../plugins/ai-semantic-cache.ts":sU,"../plugins/ai-semantic-prompt-guard.ts":lU,"../plugins/ai-semantic-response-guard.ts":cU,"../plugins/app-dynamics.ts":dU,"../plugins/application-registration.ts":uU,"../plugins/aws-lambda.ts":fU,"../plugins/azure-functions.ts":pU,"../plugins/basic-auth/index.ts":xU,"../plugins/bot-detection.ts":IU,"../plugins/canary.ts":vU,"../plugins/confluent-consume.ts":TU,"../plugins/confluent.ts":BU,"../plugins/correlation-id.ts":OU,"../plugins/cors.ts":PU,"../plugins/datadog.ts":VU,"../plugins/datakit/index.ts":a3,"../plugins/degraphql.ts":s3,"../plugins/entitlement-enforcement/index.ts":T3,"../plugins/exit-transformer.ts":B3,"../plugins/file-log.ts":O3,"../plugins/forward-proxy.ts":P3,"../plugins/graphql-proxy-cache-advanced.ts":V3,"../plugins/graphql-rate-limiting-advanced.ts":$3,"../plugins/grpc-gateway.ts":R3,"../plugins/grpc-web.ts":L3,"../plugins/header-cert-auth.ts":D3,"../plugins/hmac-auth.ts":M3,"../plugins/http-log.ts":F3,"../plugins/injection-protection.ts":j3,"../plugins/ip-restriction.ts":U3,"../plugins/jq.ts":K3,"../plugins/json-threat-protection.ts":q3,"../plugins/jwe-decrypt.ts":G3,"../plugins/jwt-signer/index.ts":z3,"../plugins/jwt.ts":H3,"../plugins/kafka-consume.ts":W3,"../plugins/kafka-log.ts":Y3,"../plugins/kafka-upstream.ts":J3,"../plugins/key-auth-enc.ts":X3,"../plugins/key-auth/index.ts":Z3,"../plugins/ldap-auth-advanced.ts":Q3,"../plugins/ldap-auth.ts":e4,"../plugins/loggly.ts":t4,"../plugins/metering-and-billing/index.ts":u4,"../plugins/mocking.ts":f4,"../plugins/mtls-auth.ts":p4,"../plugins/oas-validation.ts":m4,"../plugins/oauth2-introspection.ts":g4,"../plugins/oauth2.ts":h4,"../plugins/opa.ts":y4,"../plugins/openid-connect/index.ts":IG,"../plugins/opentelemetry.ts":vG,"../plugins/post-function.ts":TG,"../plugins/pre-function.ts":BG,"../plugins/prometheus.ts":OG,"../plugins/proxy-cache-advanced.ts":PG,"../plugins/proxy-cache.ts":VG,"../plugins/rate-limiting-advanced/index.ts":YG,"../plugins/rate-limiting.ts":JG,"../plugins/redirect.ts":XG,"../plugins/request-callout/index.ts":n6,"../plugins/request-size-limiting.ts":r6,"../plugins/request-termination.ts":o6,"../plugins/request-transformer-advanced.ts":i6,"../plugins/request-transformer.ts":a6,"../plugins/request-validator.ts":s6,"../plugins/response-ratelimiting.ts":l6,"../plugins/response-transformer-advanced.ts":c6,"../plugins/response-transformer.ts":d6,"../plugins/route-by-header.ts":u6,"../plugins/route-transformer-advanced.ts":f6,"../plugins/saml.ts":p6,"../plugins/service-protection/index.ts":I6,"../plugins/session.ts":v6,"../plugins/solace-consume.ts":T6,"../plugins/solace-log.ts":B6,"../plugins/solace-upstream.ts":O6,"../plugins/standard-webhooks.ts":P6,"../plugins/statsd-advanced.ts":V6,"../plugins/statsd.ts":$6,"../plugins/syslog.ts":R6,"../plugins/tcp-log.ts":L6,"../plugins/tls-handshake-modifier.ts":D6,"../plugins/tls-metadata-headers.ts":M6,"../plugins/udp-log.ts":F6,"../plugins/upstream-oauth.ts":j6,"../plugins/upstream-timeout.ts":U6,"../plugins/vault-auth.ts":K6,"../plugins/websocket-size-limit.ts":q6,"../plugins/websocket-validator.ts":G6,"../plugins/xml-threat-protection.ts":z6,"../plugins/zipkin.ts":H6});function Y6(e){const n=e.match(/\.\.\/plugins\/(.+?)(?:\/index)?\.ts$/);if(!n)throw new Error(`Unable to derive plugin name from path: ${e}`);const[,r]=n;return r}function J6(e){const n={},r=new Map;for(const[o,i]of Object.entries(e)){const a=Y6(o);if(r.has(a))throw new Error(`Duplicate plugin config for "${a}": ${r.get(a)} and ${o}`);r.set(a,o),n[a]={component:i.component??cg,experimental:i.experimental??!1,renderRules:i.renderRules,fieldRenderers:i.fieldRenderers??[]}}return n}const dg=J6(W6);function MC(e){return dg[e]}function FC(e,n){const r=MC(e);if(r&&!(r.experimental&&!n.includes(e)))return r.component}function jC(e,n,r){return r==="freeform"?!0:r==="vfg"?!1:!!FC(e,n)}function X6(){return Object.entries(dg).filter(([,e])=>e.experimental).map(([e])=>e).sort((e,n)=>e.localeCompare(n))}function ug(){return t.inject(Jf,[])}function Z6(e){const n=new Set(X6()),r=e.filter(i=>n.has(i)),o=e.filter(i=>!n.has(i));return o.length>0&&console.warn(`[entities-plugins] Ignoring unknown experimental free-form plugins: ${o.join(", ")}`),r}function Q6(e){t.provide(Jf,Z6(e))}function ez(){const e=ug();return{shouldUseFreeForm:(n,r)=>jC(n,e,r),getFreeFormComponent:n=>FC(n,e)}}function UC(e){if(!e)return;if(!e.token_exchange)return e;if((Array.isArray(e.token_exchange.request?.audience)&&e.token_exchange.request.audience.length===0||e.token_exchange.request&&!e.token_exchange.request.audience)&&(e.token_exchange.request.audience=null),(Array.isArray(e.token_exchange.request?.scopes)&&e.token_exchange.request.scopes.length===0||e.token_exchange.request&&!e.token_exchange.request.scopes)&&(e.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(o=>Kt(e.token_exchange,o)))return e.token_exchange=null,e;const r=e.token_exchange.subject_token_issuers;return r&&r.forEach(o=>{Kt(o.conditions,{})&&(o.conditions=null),o.conditions&&Object.values(o.conditions).every(i=>Array.isArray(i)&&i.length===0)&&(o.conditions=null)}),e}const KC=e=>{const n=e?.proof_of_possession_mtls_from_header;if(!n)return;if(!Array.isArray(n.ca_certificates)||n.ca_certificates.length===0){e.proof_of_possession_mtls_from_header=null;return}Kt(n,{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})&&(e.proof_of_possession_mtls_from_header=null)},qC=e=>{const n=e?.protected_resource_metadata;if(!n)return;if(!Array.isArray(n.authorization_servers)||n.authorization_servers.length===0){e.protected_resource_metadata=null;return}if(Kt(n,{authorization_servers:null,scopes_supported:null})){e.protected_resource_metadata=null;return}},tz={shamefullyTransformPayload(e){return UC(e.payload.config),KC(e.payload.config),qC(e.payload.config),e}},nz={shamefullyTransformPayload(e){if(!e.payload.config?.access_logs?.custom_attributes_by_lua)return e;if(Kt(e.payload.config?.access_logs?.custom_attributes_by_lua,{})){const n=e.payload.config?.access_logs;n&&(n.custom_attributes_by_lua=null)}return e}},rz={shamefullyTransformPayload(e){const n=e.payload.config?.v2_strategies?.openid_connect;return Array.isArray(n)&&n.forEach(r=>{UC(r.config),KC(r.config),qC(r.config)}),e}},oz={shamefullyTransformPayload(e){return!e.payload.config||!e.payload.config?.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(r=>Kt(e.payload.config?.token_exchange,r))&&(e.payload.config.token_exchange=null),e}},iz=(e,n)=>{const r=e.model.startsWith("config-"),o=n.model.startsWith("config-");return r&&!o?1:!r&&o?-1:0},GC=(e,n)=>(e.order??0)-(n.order??0),zC=(e,n)=>iz(e,n)||GC(e,n)||e.model.localeCompare(n.model),az=e=>{const{capitalize:n}=ue.useStringHelpers(),{convertToDotNotation:r}=Fk(),{i18n:{t:o}}=Qe(),i=ug(),a={"application-registration":{overwriteDefault:!0,formSchema:{...SR}},datadog:{...AR},"exit-transformer":{...xR},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...FR},"statsd-advanced":{...jR},"route-by-header":{...RR},"ai-prompt-decorator":{...kR},"ai-prompt-template":{...wR},"ai-proxy-advanced":{...CR},"ai-rag-injector":{...ER},"ai-llm-as-judge":{...NR},"vault-auth":{...KR},"oas-validation":{...BR},mocking:{...TR},"rate-limiting":{...wc},"rate-limiting-advanced":e?.app==="kongManager"?{"config-consumer_groups":wc["config-consumer_groups"]}:{...wc},"graphql-rate-limiting-advanced":{...IR},"injection-protection":{...vR},"response-ratelimiting":{...wc},"pre-function":{...Xk},"post-function":{...Xk},"request-transformer-advanced":{...VR},"response-transformer":{...Zk},"response-transformer-advanced":{...$R},zipkin:{...i2},"upstream-oauth":{...UR},saml:{...LR},"kafka-upstream":{...e2},"solace-consume":{...DR},"solace-upstream":{...MR},"key-auth":fR(e),"key-auth-enc":_R(e),confluent:{...t2},"confluent-consume":{...n2},"kafka-consume":{...r2},"kafka-log":{...o2},"openid-connect":{...tz},opentelemetry:{...nz},"konnect-application-auth":{...rz},"ai-mcp-oauth2":{...oz}},s=()=>["created_at","updated_at","id","_isCustomPlugin","_sourcePlugin","_supported_redis_partial_type","_redis_partial_path"],l=(w,S,x,T)=>{let I={};(S||w)&&(I=S||(w.fields?w.fields:w));const A=s().concat(w.blacklist?w.blacklist:[]),v=Object.keys(I).filter(ee=>!A.includes(ee)),V=v.indexOf("comparator");V>-1&&v.splice(V,1);let O={fields:[]};const $={};v.forEach(ee=>{d(I[ee],ee,I,$,O,x)});const Q=$.name,pe=w._sourcePlugin||Q,H=Mn[pe],j=[],D=ee=>{const K=["cluster-cache"];for(const J of K)if(ee.model.includes(J))return!1;return new RegExp("(?<=-redis-).*").test(ee.model)};if(O._supported_redis_partial_type=w._supported_redis_partial_type,O._redis_partial_path=w._redis_partial_path,Je.getSharedFormName(pe)||jC(pe,i,T)||H?.useLegacyForm||e?.credential){if(H?.useLegacyForm&&e?.enableRedisPartial&&w._supported_redis_partial_type){for(const ee of O.fields)if(D(ee)){j.push(ee);continue}O.fields=O.fields.filter(ee=>!D(ee)),j.length&&O.fields.push({id:"_redis",fields:j,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path})}O.fields.sort((ee,K)=>(ee.order=ee.order||0,K.order=K.order||0,ee.order-K.order))}else{const ee=[],K=[],J=[],ce=[],z={};if(H?.fieldRules){const Ee=[...H.fieldRules.atLeastOneOf??[],...H.fieldRules.onlyOneOf??[],...H.fieldRules.mutuallyRequired??[]];if(H.fieldRules.onlyOneOfMutuallyRequired)for(const Ge of H.fieldRules.onlyOneOfMutuallyRequired)Ee.push(...Ge);for(const Ge of Ee)for(const se of Ge)z[se.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const Ee of O.fields){if(e?.enableRedisPartial&&w._supported_redis_partial_type&&D(Ee)){ce.push(Ee);continue}if(Ee.pinned){ee.push(Ee);continue}if(Ee.required||z[Ee.model]!==void 0){z[Ee.model]===!1&&(z[Ee.model]=!0),K.push(Ee);continue}J.push(Ee)}ce.length&&J.push({id:"_redis",fields:ce,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path,order:-1});const oe=Object.entries(z).filter(([,Ee])=>!Ee).map(([Ee])=>Ee.replace(/-/g,".").replace(/_/g,"-"));oe.length>0&&console.warn(`Unknown checked fields for plugin ${Q}: ${oe.join(", ")}`);const Pe=[];ee.length>0&&Pe.push({fields:ee.sort(GC)}),(K.length>0||J.length>0)&&Pe.push({fields:K.sort(zC),collapsible:{title:o("plugins.form.grouping.plugin_configuration.title"),description:o("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:J.sort(zC),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"}}),O={groups:Pe}}return{schema:O,model:$,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=w=>Array.isArray(w.default)||w.default!=null&&typeof w.default!="object"&&w.default!=="function",d=(w,S,x,T,I,A)=>{const v=c(w);return T[S]=v?w.default:null,w.id=S,w.model=S,w.fields&&w.type==="record"?f(w,S,x,T,I,A):(x[S]=w,N(w,T),A&&A[S]&&u(x[S],A[S]),I.fields.push(w)),x},u=(w,S)=>(S&&(Object.assign(w,S),S.label&&(w.label=S.label)),w),f=(w,S,x,T,I,A)=>{w.fields.forEach(v=>{Object.keys(v).forEach(V=>{const O=v[V];x=d(O,S+"-"+V,x,T,I,A)})})},p=(w,S)=>{w.type="input",w.inputType="hidden",w.styleClasses="kong-form-hidden-field-wrapper";const x=e?.entityId;S[w.model]=x?{id:x}:null},m=w=>{w.type="input",w.inputType="number",w.between&&w.between.length===2&&(w.min=w.between[0],w.max=w.between[1])},h=w=>{Object.prototype.hasOwnProperty.call(w,"one_of")?(w.type="select",w.values=w.one_of,w.selectOptions={hideNoneSelectedText:!0}):(w.type="input",w.inputType="text")},y=w=>{w.type="checkbox",w.default=!0,w.required=!1},g=w=>{if(w.type="object-advanced",w.values.type==="array"){const{type:S}=w.values.elements||{};w.schema={fields:[{schema:{fields:[{...ft,model:w.model,valueArrayType:S==="integer"?"number":S||"string",inputAttributes:{...ft.inputAttributes,type:S==="integer"?"number":"text",inputMode:S==="integer"?"numeric":"text"}}]}}]}}else w.values.fields&&(w.schema={fields:[{type:"object",model:"object",schema:{fields:w.values.fields.map(S=>{const x=Object.keys(S)[0];return{model:x,type:"input",label:n(x),placeholder:x,inputType:S[x].type}})}}]})},_=w=>w.fields.reduce((S,x)=>(x.fields&&x.fields.forEach(T=>{S[T.model]=T}),x.model&&(S[x.model]=x),S),{}),k=(w,S)=>{if(!Je.customFields.includes(w.model))return;const x=_(w);Je.customFields.forEach(T=>{Object.keys(x).forEach(I=>{const A=c(x[I]);S[I]=A?x[I].default:null}),delete S[T]})},b=(w,S)=>w.inputType==="hidden"?"":r(w.label||S.replace(/_/g," ")),N=(w,S)=>{switch(k(w,S),w.type){case"foreign":p(w,S);break;case"number":m(w),w.attributes={step:"any"};break;case"integer":m(w);break;case"string":h(w);break;case"boolean":y(w);break;case"map":g(w);break}w.inputType==="foreign"&&p(w,S),w.label=b(w,w.model)};function C(w,S){if(S==null||S.type&&S.type!=="record"||typeof w!="object"||w==null)return w;const x={};for(const T of S.fields){const I=Object.keys(T)[0],A=T[I];A.type==="record"?x[I]=C(w[I],A):A.type==="array"&&Array.isArray(w[I])&&A.elements.type==="record"?x[I]=w[I].map(v=>C(v,A.elements)):x[I]=w[I]}return x}return{buildFormSchema:d,parseSchema:l,customSchemas:a,typedefs:Bi,pruneRecord:C}},hd=Symbol("customPluginType"),sz=1e3,lz=20,HC=5e3,WC=(e,n=sz)=>{const r=/^[a-z][a-z\d+.-]*:/i.test(e),o=new URL(e,"http://localhost");return o.searchParams.has("size")||o.searchParams.set("size",`${n}`),r?o.toString():`${o.pathname}${o.search}${o.hash}`},yd=async(e,n,r)=>{const o=[];let i=WC(n),a=null,s=0;for(;i&&s<lz&&o.length<HC&&i!==a;){a=i;const c=(await e.get(i,{signal:r})).data;Array.isArray(c?.data)&&o.push(...c.data),i=c?.next?WC(c.next):null,s+=1}return o.slice(0,HC)};function cz(e){const{axiosInstance:n,apiBaseUrl:r}=e,o=()=>{if(e.app!=="konnect")throw new Error("Installed custom plugin APIs are only available for Konnect")},i=(g,_)=>{let k=`${r}${g}`;return e.app==="konnect"&&(k=k.replace(/{controlPlaneId}/gi,e.controlPlaneId)),k=k.replace(/{pluginId}/gi,_??"").replace(/\/{workspace}/gi,e.workspace?`/${e.workspace}`:""),k},a=async g=>{o();const _=i(nt.customPlugin.konnect.installed.edit,g),{data:k}=await n.get(_);return k},s=async g=>{o();const _=i(nt.customPlugin.konnect.installed.create),{data:k}=await n.post(_,g);return k},l=async(g,_)=>{o();const k=i(nt.customPlugin.konnect.installed.edit,g),{data:b}=await n.put(k,_);return b},c=async g=>{const _=i(nt.customPlugin[e.app].streamed.edit,g),{data:k}=await n.get(_);return k},d=async g=>{const _=i(nt.customPlugin[e.app].streamed.create),{data:k}=await n.post(_,g);return k},u=async(g,_)=>{const k=i(nt.customPlugin[e.app].streamed.edit,g),b=e.app==="konnect"?"put":"patch",{data:N}=await n[b](k,_);return N},f=async g=>{const{aliasName:_,priority:k,sourcePlugin:b}=g,N=i(nt.customPlugin[e.app].cloned.create),{data:C}=await n.post(N,{name:_,ref:b,priority:k});return C},p=async(g,_)=>{const{aliasName:k,priority:b,sourcePlugin:N}=_,C=i(nt.customPlugin[e.app].cloned.edit,g),w=e.app==="konnect"?"put":"patch",{data:S}=await n[w](C,{ref:N,priority:b,name:k});return S},m=async g=>{const _=i(nt.customPlugin[e.app].cloned.edit,g),{data:k}=await n.get(_);return k};return{getInstalledPlugin:a,createInstalledPlugin:s,updateInstalledPlugin:l,getStreamedPlugin:c,createStreamedPlugin:d,updateStreamedPlugin:u,getPluginByUnknownType:async g=>{if(e.app==="konnect")try{const _=await a(g);return Object.assign(_,{[hd]:"installed"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}try{const _=await c(g);return Object.assign(_,{[hd]:"streamed"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}try{const _=await m(g);return Object.assign(_,{[hd]:"cloned"})}catch(_){if(gi.isAxiosError(_)&&_.response?.status!==404)throw _}return null},getPluginType:g=>g[hd],getClonedPlugin:m,createClonedPlugin:f,updateClonedPlugin:p}}const YC={service:{entityType:"services",nameField:"name"},route:{entityType:"routes",nameField:"name"},consumer:{entityType:"consumers",nameField:"username"},consumer_group:{entityType:"consumer_groups",nameField:"name"}};function dz({config:e,axiosInstance:n,onError:r}){const o=t.ref({}),i=t.ref({}),a=(u,f)=>{let p=`${e.apiBaseUrl}${nt.form[e.app].entityGetOne}`;return e.app==="konnect"&&(p=p.replace(/{controlPlaneId}/gi,e?.controlPlaneId||"")),p.replace(/\/{workspace}/gi,e?.workspace?`/${e.workspace}`:"").replace(/{entity}/gi,u).replace(/{id}/gi,f)},s=async(u,f)=>{const{entityType:p,nameField:m}=YC[u];i.value[u]=!0;try{const{data:h}=await n.get(a(p,f));o.value[u]=h?.[m]||""}catch(h){r(h)}finally{i.value[u]=!1}};return{resolveReferenceNames:u=>{Object.keys(YC).forEach(f=>{const p=u?.[f]?.id;p&&s(f,p)})},getReferenceName:u=>o.value[u]||void 0,isReferenceNameLoading:u=>!!i.value[u]}}const it={useI18n:Qe,usePluginMetaData:Yk,usePluginHelpers:Fk,useSchemas:az,useExperimentalFreeForms:ug,useProvideExperimentalFreeForms:Q6,useFreeFormResolver:ez,useCustomPluginApi:cz,useReferenceEntityNames:dz},JC=e=>{const n=e?.response;return n?.status===400&&(n.data?.message?.includes("plugin schema is currently in use")||n.data?.code===19||n.data?.name==="referenced by others")},uz={class:"kong-ui-entities-custom-plugin-form"},fz={class:"plugin-type-radios"},pz={class:"compare-table-wrapper"},mz={class:"compare-table"},gz={key:0,scope:"col"},hz={key:1,scope:"col"},yz={key:2,scope:"col"},_z={scope:"row"},bz={key:0},kz={key:1},wz={key:2},Cz={scope:"row"},Ez={key:0},Nz={class:"compare-list"},Sz={key:1},Az={class:"compare-list"},xz={key:2},Iz={scope:"row"},vz={key:0},Tz={key:1},Bz={key:2},Oz={scope:"row"},Pz={key:0},Vz={key:1},$z={key:2},Rz={scope:"row"},Lz={key:0},Dz={key:1},Mz={key:2},Fz={class:"plugin-modules-section"},jz={class:"plugin-select-item"},Uz={class:"plugin-select-item"},Kz={key:1},qz=1*1024*1024,Gz=xe(t.defineComponent({__name:"CustomPluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!e.app||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&!e.workspace||!e.cancelRoute||!e.successRoute)},pluginName:{type:String,default:""},unsupportedTypes:{type:Array,default:()=>[]}},emits:["update","error","loading"],setup(e,{emit:n}){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=e,a=n,{i18n:{t:s},i18nT:l}=it.useI18n(),c=Ar.useRouter(),{getMessageFromError:d}=ue.useErrors(),{axiosInstance:u}=ue.useAxios(i.config?.axiosRequestConfig),{createInstalledPlugin:f,updateInstalledPlugin:p,createStreamedPlugin:m,updateStreamedPlugin:h,getPluginType:y,getPluginByUnknownType:g,createClonedPlugin:_,updateClonedPlugin:k}=it.useCustomPluginApi({axiosInstance:u,apiBaseUrl:i.config.apiBaseUrl,controlPlaneId:i.config.controlPlaneId,app:i.config.app,workspace:i.config.workspace});t.provide(ue.PLUGIN_FORM_LAYOUT_STATE,t.ref(!0));const b=t.ref(null),N=(se,X)=>{const he=i.config.workspace??"",ve=i.config.app==="konnect"?i.config.controlPlaneId:"";return`${i.config.apiBaseUrl}${se}`.replace(/{controlPlaneId}/gi,ve).replace(/{pluginId}/gi,X??"").replace(/\/\{workspace\}/gi,he?`/${he}`:"")},C=t.computed(()=>{const se=D.fields.pluginType;if(!se)return"";const X=T.value?i.pluginName:void 0,he=X?"edit":"create";if(i.config.app==="konnect"){if(se==="installed")return N(nt.customPlugin.konnect.installed[he],X);if(se==="streamed")return N(nt.customPlugin.konnect.streamed[he],X);if(se==="cloned")return N(nt.customPlugin.konnect.cloned[he],X)}else{if(se==="streamed")return N(nt.customPlugin.kongManager.streamed[he],X);if(se==="cloned")return N(nt.customPlugin.kongManager.cloned[he],X)}return""}),w=t.computed(()=>T.value?D.fields.pluginType==="cloned"?i.config.app==="konnect"?"put":"patch":i.config.app==="kongManager"&&D.fields.pluginType==="streamed"?"patch":"put":"post"),S=t.computed(()=>{switch(D.fields.pluginType){case"installed":return ue.SupportedEntityType.PluginSchema;case"streamed":return ue.SupportedEntityType.CustomPlugin;case"cloned":return ue.SupportedEntityType.ClonedPlugin;default:return ue.SupportedEntityType.Plugin}}),x=t.computed(()=>{switch(D.fields.pluginType){case"installed":return{lua_schema:D.fields.schemaContent};case"streamed":return{name:D.fields.name,schema:D.fields.schemaContent,handler:D.fields.handlerContent};case"cloned":return{ref:D.fields.sourcePlugin,name:D.fields.aliasName,...D.fields.priority?{priority:parseInt(D.fields.priority,10)}:{}};default:return{}}}),T=t.computed(()=>!!i.pluginName),I=t.ref(!1),A=t.ref(""),v=t.computed(()=>new Set(i.unsupportedTypes)),V=t.computed(()=>o.filter(se=>!v.value.has(se))),O=t.computed(()=>!T.value&&V.value.length===0),$=t.computed(()=>!T.value&&V.value.length>1),Q=()=>V.value[0]??null,pe=se=>V.value.includes(se),H=se=>{if(T.value||!$.value){const X=se-1;return(D.fields.pluginType==="installed"?1:2)>1?X:void 0}return se},j=t.ref(!0),D=t.reactive({fields:{pluginType:Q(),schemaContent:"",handlerContent:"",name:"",sourcePlugin:"",aliasName:"",priority:""},readonly:!1,errorMessage:""});let ee="";t.watch(V,se=>{T.value||(!D.fields.pluginType||!se.includes(D.fields.pluginType))&&(D.fields.pluginType=se[0]??null)},{immediate:!0}),t.watch(()=>D.fields.pluginType,()=>{T.value||(D.fields.schemaContent="",D.fields.handlerContent="",D.fields.name="",D.fields.sourcePlugin="",D.fields.aliasName="",D.fields.priority="")});const{getDisplayName:K}=Yk(),J=t.computed(()=>{const se=i.config?.clonablePlugins??r;if(se.length===0)return[];const X={};se.forEach(ve=>{const qe=Mn[ve]?.group;qe?(X[qe]||(X[qe]=[]),X[qe].push({label:K(ve),value:ve})):console.warn(`Plugin ${ve} is missing metadata group and will be shown without grouping.`)});const he=[];return Object.keys(X).sort().forEach(ve=>{he.push({label:ve,items:X[ve]})}),he}),ce=t.computed(()=>{if(O.value||!D.fields.pluginType)return!1;switch(D.fields.pluginType){case"installed":return D.fields.schemaContent.length>0;case"streamed":return D.fields.schemaContent.length>0&&D.fields.handlerContent.length>0&&D.fields.name.trim().length>0;case"cloned":return!!D.fields.sourcePlugin&&D.fields.aliasName.trim().length>0;default:return!1}}),z=se=>new Promise((X,he)=>{const ve=new FileReader;ve.onload=je=>{const qe=je.target?.result;typeof qe=="string"?X(qe):he(new Error("Failed to read file as text"))},ve.onerror=he,ve.readAsText(se)}),oe=async(se,X)=>{const he=X[0];if(he){if(he.size>qz){D.errorMessage=s("custom_plugin_form.errors.file_too_large");return}try{const ve=await z(he);se==="schema"?D.fields.schemaContent=ve:D.fields.handlerContent=ve}catch{D.errorMessage=s("custom_plugin_form.errors.file_read_error"),se==="schema"?D.fields.schemaContent="":D.fields.handlerContent=""}}},Pe=se=>{se==="schema"?D.fields.schemaContent="":D.fields.handlerContent=""},Ee=()=>{c.push(i.config.cancelRoute)};t.onMounted(async()=>{if(i.pluginName){I.value=!0,a("loading",!0);try{const se=await g(i.pluginName);if(!se){A.value=s("custom_plugin_form.errors.plugin_not_found"),a("error",new Error(A.value));return}const X=y(se);if(D.fields.pluginType=X,X==="installed")D.fields.schemaContent=se.item.lua_schema;else if(X==="streamed"){const{name:he,schema:ve,handler:je}=se;D.fields.name=he,D.fields.schemaContent=ve,D.fields.handlerContent=je}else if(X==="cloned"){const{ref:he,name:ve,priority:je}=se;D.fields.aliasName=ve,D.fields.sourcePlugin=he,D.fields.priority=je!==null?String(je):"",ee=ve}else A.value=s("custom_plugin_form.errors.unsupported_plugin_type",{type:X}),a("error",new Error(A.value))}catch(se){A.value=d(se),a("error",se)}finally{I.value=!1,a("loading",!1)}}});const Ge=async()=>{D.errorMessage="",D.readonly=!0;try{const se=D.fields.pluginType;if(!se)return;if(se==="installed"){const X={lua_schema:D.fields.schemaContent},he=T.value?await p(i.pluginName,X):await f(X);a("update",he)}else if(se==="streamed"){const X={name:D.fields.name,schema:D.fields.schemaContent,handler:D.fields.handlerContent},he=T.value?await h(i.pluginName,X):await m(X);a("update",he)}else{const X=T.value?await k(ee,{aliasName:D.fields.aliasName,sourcePlugin:D.fields.sourcePlugin,priority:D.fields.priority?parseInt(D.fields.priority,10):void 0}):await _({aliasName:D.fields.aliasName,sourcePlugin:D.fields.sourcePlugin,priority:D.fields.priority?parseInt(D.fields.priority,10):void 0});a("update",{pluginType:"cloned",sourcePlugin:X.ref,aliasName:X.name,priority:X.priority??void 0})}c.push(i.config.successRoute)}catch(se){D.errorMessage=JC(se)?s("delete.plugin_schema_in_use_message"):d(se),a("error",se)}finally{D.readonly=!1}};return(se,X)=>{const he=t.resolveComponent("KSkeleton"),ve=t.resolveComponent("KEmptyState"),je=t.resolveComponent("KRadio"),qe=t.resolveComponent("KCollapse"),Be=t.resolveComponent("KFileUpload"),Ve=t.resolveComponent("KLabel"),$e=t.resolveComponent("KAlert"),Ke=t.resolveComponent("KSelect"),de=t.resolveComponent("KInput"),Z=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",uz,[t.createVNode(t.unref(ue.EntityBaseForm),{ref_key:"entityBaseFormRef",ref:b,"can-submit":ce.value,config:e.config,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":D.errorMessage,"form-fields":x.value,"is-readonly":D.readonly,"slideout-deck-entity-type":S.value,"slideout-fetch-url":C.value,"slideout-request-method":w.value,onCancel:Ee,onSubmit:Ge},{"form-actions":t.withCtx(()=>[I.value||A.value||O.value?(t.openBlock(),t.createElementBlock("span",Kz)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(Z,{appearance:"primary","data-testid":"custom-plugin-form-submit",disabled:!ce.value||D.readonly,type:"submit"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.save")),1)]),_:1},8,["disabled"]),t.createVNode(Z,{appearance:"secondary","data-testid":"custom-plugin-form-cancel",disabled:D.readonly,onClick:Ee},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.cancel")),1)]),_:1},8,["disabled"]),t.createVNode(Z,{appearance:"tertiary","data-testid":"custom-plugin-form-view-configuration",onClick:X[14]||(X[14]=U=>b.value?.viewConfig())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("actions.view_configuration")),1)]),_:1})],64))]),default:t.withCtx(()=>[I.value?(t.openBlock(),t.createBlock(he,{key:0,type:"form"})):A.value?(t.openBlock(),t.createBlock(ve,{key:1,"action-button-visible":!1,"data-testid":"custom-plugin-form-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(A.value),1)]),_:1})):O.value?(t.openBlock(),t.createBlock(ve,{key:2,"action-button-visible":!1,"data-testid":"custom-plugin-form-unsupported-types-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(s)("custom_plugin_form.errors.no_supported_types")),1)]),_:1})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[$.value?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:0,class:"custom-plugin-form-steps",step:1,title:t.unref(s)("custom_plugin_form.step1.title")},{default:t.withCtx(()=>[t.createElementVNode("div",fz,[pe("installed")?(t.openBlock(),t.createBlock(je,{key:0,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[0]||(X[0]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-installed",description:t.unref(s)("custom_plugin_form.step1.types.installed.description"),label:t.unref(s)("custom_plugin_form.step1.types.installed.label"),"selected-value":"installed"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createBlock(je,{key:1,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[1]||(X[1]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-streamed",description:t.unref(s)("custom_plugin_form.step1.types.streamed.description"),label:t.unref(s)("custom_plugin_form.step1.types.streamed.label"),"selected-value":"streamed"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createBlock(je,{key:2,modelValue:D.fields.pluginType,"onUpdate:modelValue":X[2]||(X[2]=U=>D.fields.pluginType=U),card:"","card-orientation":"horizontal","data-testid":"custom-plugin-type-cloned",description:t.unref(s)("custom_plugin_form.step1.types.cloned.description"),label:t.unref(s)("custom_plugin_form.step1.types.cloned.label"),"selected-value":"cloned"},null,8,["modelValue","description","label"])):t.createCommentVNode("",!0)]),t.createVNode(qe,{modelValue:j.value,"onUpdate:modelValue":X[3]||(X[3]=U=>j.value=U),class:"custom-plugin-form-compare-collapse","data-testid":"compare-deployment-options","trigger-alignment":"leading","trigger-label":t.unref(s)("custom_plugin_form.step1.compare_trigger")},{default:t.withCtx(()=>[t.createElementVNode("div",pz,[t.createElementVNode("table",mz,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[X[15]||(X[15]=t.createElementVNode("th",{scope:"col"},null,-1)),pe("installed")?(t.openBlock(),t.createElementBlock("th",gz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("th",hz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("th",yz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.columns.cloned")),1)):t.createCommentVNode("",!0)])]),t.createElementVNode("tbody",null,[t.createElementVNode("tr",null,[t.createElementVNode("th",_z,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",bz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",kz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",wz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.main_use_case.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Cz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Ez,[t.createElementVNode("ul",Nz,[t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.handler")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.schema")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.installed.additional")),1)])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Sz,[t.createElementVNode("ul",Az,[t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.handler")),1),t.createElementVNode("li",null,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.file_supplied.streamed.schema")),1)])])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",xz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Iz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",vz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.installed")),1)):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Tz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.streamed")),1)):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",Bz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.how_installed.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Oz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Pz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Vz,[t.createVNode(t.unref(l),{keypath:"custom_plugin_form.step1.compare_table.rows.sandboxing.streamed"},{link:t.withCtx(()=>[t.createVNode(t.unref(_e.KExternalLink),{"hide-icon":"",href:t.unref(ra).customPluginSandboxing},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.streamed_link")),1)]),_:1},8,["href"])]),_:1})])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",$z,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.sandboxing.cloned")),1)):t.createCommentVNode("",!0)]),t.createElementVNode("tr",null,[t.createElementVNode("th",Rz,t.toDisplayString(t.unref(s)("custom_plugin_form.step1.compare_table.rows.data_plane_reload.header")),1),pe("installed")?(t.openBlock(),t.createElementBlock("td",Lz,[t.createVNode(t.unref(Ne.CheckCircleIcon),{color:`var(--kui-color-text-success, ${t.unref(qy)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("streamed")?(t.openBlock(),t.createElementBlock("td",Dz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0),pe("cloned")?(t.openBlock(),t.createElementBlock("td",Mz,[t.createVNode(t.unref(Ne.ClearIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])])):t.createCommentVNode("",!0)])])])])]),_:1},8,["modelValue","trigger-label"])]),_:1},8,["title"])):t.createCommentVNode("",!0),D.fields.pluginType==="installed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:1,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_files.title")},{default:t.withCtx(()=>[t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:t.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:T.value&&D.fields.schemaContent?t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!T.value,onFileAdded:X[4]||(X[4]=U=>oe("schema",U)),onFileRemoved:X[5]||(X[5]=U=>Pe("schema"))},null,8,["button-text","help","label","placeholder","required"]),t.createElementVNode("div",Fz,[t.createVNode(Ve,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("custom_plugin_form.step2_files.plugin_modules.label")),1)]),_:1}),t.createVNode($e,{appearance:"warning",message:t.unref(s)("custom_plugin_form.step2_files.plugin_modules.alert")},null,8,["message"])])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="streamed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:2,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_files.title")},{default:t.withCtx(()=>[t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.schema_file.button_text"),"data-testid":"custom-plugin-schema-upload",help:t.unref(s)("custom_plugin_form.step2_files.schema_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.schema_file.label"),placeholder:T.value&&D.fields.schemaContent?t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.schema_file.placeholder"),required:!T.value,onFileAdded:X[6]||(X[6]=U=>oe("schema",U)),onFileRemoved:X[7]||(X[7]=U=>Pe("schema"))},null,8,["button-text","help","label","placeholder","required"]),t.createVNode(Be,{accept:[".lua"],"button-text":t.unref(s)("custom_plugin_form.step2_files.handler_file.button_text"),"data-testid":"custom-plugin-handler-upload",help:t.unref(s)("custom_plugin_form.step2_files.handler_file.help"),label:t.unref(s)("custom_plugin_form.step2_files.handler_file.label"),placeholder:T.value&&D.fields.handlerContent?t.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder_edit"):t.unref(s)("custom_plugin_form.step2_files.handler_file.placeholder"),required:!T.value,onFileAdded:X[8]||(X[8]=U=>oe("handler",U)),onFileRemoved:X[9]||(X[9]=U=>Pe("handler"))},null,8,["button-text","help","label","placeholder","required"])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="cloned"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:3,class:"custom-plugin-form-steps",step:H(2),title:t.unref(s)("custom_plugin_form.step2_clone.title")},{default:t.withCtx(()=>[t.createVNode(Ke,{modelValue:D.fields.sourcePlugin,"onUpdate:modelValue":X[10]||(X[10]=U=>D.fields.sourcePlugin=U),"data-testid":"custom-plugin-clone-select","enable-filtering":"",items:J.value,label:t.unref(s)("custom_plugin_form.step2_clone.select_plugin.label"),placeholder:t.unref(s)("custom_plugin_form.step2_clone.select_plugin.placeholder"),required:""},{"item-template":t.withCtx(({item:U})=>[t.createElementVNode("div",jz,[t.createVNode(t.unref(Sr.PluginIcon),{name:String(U.value),size:20},null,8,["name"]),t.createElementVNode("span",null,t.toDisplayString(U.label),1)])]),"selected-item-template":t.withCtx(({item:U})=>[t.createElementVNode("div",Uz,[t.createVNode(t.unref(Sr.PluginIcon),{name:String(U.value),size:20},null,8,["name"]),t.createElementVNode("span",null,t.toDisplayString(U.label),1)])]),_:1},8,["modelValue","items","label","placeholder"])]),_:1},8,["step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="streamed"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:4,class:"custom-plugin-form-steps",description:t.unref(s)("custom_plugin_form.step3.description"),step:H(3),title:t.unref(s)("custom_plugin_form.step3.title")},{default:t.withCtx(()=>[t.createVNode(de,{modelValue:D.fields.name,"onUpdate:modelValue":X[11]||(X[11]=U=>D.fields.name=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-name",help:t.unref(s)("custom_plugin_form.step3.name.help"),label:t.unref(s)("custom_plugin_form.step3.name.label"),placeholder:t.unref(s)("custom_plugin_form.step3.name.placeholder"),readonly:D.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"])]),_:1},8,["description","step","title"])):t.createCommentVNode("",!0),D.fields.pluginType==="cloned"?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:5,class:"custom-plugin-form-steps",description:t.unref(s)("custom_plugin_form.step3.description"),step:H(3),title:t.unref(s)("custom_plugin_form.step3.title")},{default:t.withCtx(()=>[t.createVNode(de,{modelValue:D.fields.aliasName,"onUpdate:modelValue":X[12]||(X[12]=U=>D.fields.aliasName=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-alias-name",help:t.unref(s)("custom_plugin_form.step3.alias_name.help"),label:t.unref(s)("custom_plugin_form.step3.alias_name.label"),placeholder:t.unref(s)("custom_plugin_form.step3.alias_name.placeholder"),readonly:D.readonly,required:"",type:"text"},null,8,["modelValue","help","label","placeholder","readonly"]),t.createVNode(de,{modelValue:D.fields.priority,"onUpdate:modelValue":X[13]||(X[13]=U=>D.fields.priority=U),modelModifiers:{trim:!0},"data-testid":"custom-plugin-priority",label:t.unref(s)("custom_plugin_form.step3.priority.label"),"label-attributes":{info:t.unref(s)("custom_plugin_form.step3.priority.tooltip")},readonly:D.readonly,type:"number"},{help:t.withCtx(()=>[t.createVNode(t.unref(l),{keypath:"custom_plugin_form.step3.priority.help.text"},{link:t.withCtx(()=>[t.createVNode(t.unref(_e.KExternalLink),{"hide-icon":"",href:t.unref(ra).pluginPriority},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"])):t.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"]]),zz=(e,n)=>({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:e,selectOptions:{hideNoneSelectedText:!0},...n?.[0]!=null?{default:n[0]}:{}}}),Hz={class:"referable-field-item"},Wz=24,XC=xe(t.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(e){const n=e,{formatPluginFieldLabel:r}=it.usePluginHelpers(),o=t.computed(()=>n.field.replace(/\./g,"-")),i=t.computed(()=>n.field.replace(/^[cC]onfig\./,"").split(".").map(s=>r(s)).join(".")),a=()=>{if(!o.value)return;const s=`label[for="${o.value}"]`,l=document.querySelector(s)||document.getElementById(o.value);if(!l)return;const c=Math.max(0,l.getBoundingClientRect().top+window.scrollY-Wz),d=()=>{l.click?.()};window.addEventListener("scrollend",d,{once:!0}),window.scrollTo({top:c,behavior:"smooth"})};return(s,l)=>(t.openBlock(),t.createElementBlock("span",Hz,[t.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:a},t.toDisplayString(i.value),1),e.isLast?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-949a9ea1"]]),Yz={key:0},Jz=xe(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{i18n:{t:r},i18nT:o}=it.useI18n(),i=t.computed(()=>{const a=[];if(n.rules.atLeastOneOf)for(const s of n.rules.atLeastOneOf)a.push({key:"plugins.form.field_rules.at_least_one_of",fields:s});if(n.rules.onlyOneOf)for(const s of n.rules.onlyOneOf)a.push({key:"plugins.form.field_rules.only_one_of",fields:s});if(n.rules.mutuallyRequired)for(const s of n.rules.mutuallyRequired)a.push({key:"plugins.form.field_rules.mutually_required",fields:s});return a});return(a,s)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(l,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.value,({key:c,fields:d},u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},[t.createVNode(t.unref(o),{keypath:c},{parameters:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d,(f,p)=>(t.openBlock(),t.createBlock(XC,{key:`alert-field-${f}`,field:f,"is-last":p===d.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",Yz,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(c,d)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${d}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c,(u,f)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${d}-combination-${f}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u,(p,m)=>(t.openBlock(),t.createBlock(XC,{key:`only-one-mutually-field-${p}`,field:p,"is-last":m===u.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-5f9ff453"]]);function Xz(e){if(e.length===0)return"";if(e.length===1){const i=yn(e[0]);return yt(...i.slice(0,-1))}const n=e.map(i=>yn(i)),r=Math.min(...n.map(i=>i.length)),o=[];for(let i=0;i<r-1;i++){const a=n[0][i];if(n.every(s=>s[i]===a))o.push(a);else break}return yt(...o)}function fg(e){return"at_least_one_of"in e?e.at_least_one_of:"mutually_required"in e?e.mutually_required:"mutually_exclusive"in e?e.mutually_exclusive:null}function Zz(e,n){if(!n)return e;const r=n+ps;return e.map(o=>o.startsWith(r)?o.slice(r.length):o)}function Qz(e,n){const r=fg(e),o=Zz(r,n);return"at_least_one_of"in e?{at_least_one_of:o}:"mutually_required"in e?{mutually_required:o}:{mutually_exclusive:o}}function e5(e){const n=[],r=new Map;for(const o of e){const i=fg(o);if(!i){n.push(o);continue}const a=Xz(i);if(!a){n.push(o);continue}const s=Qz(o,a);r.has(a)||r.set(a,[]),r.get(a).push(s)}return{keep:n,move:r}}function t5(e,n,r){const o=yn(n);let i=e;for(const a of o){const s=i.fields.find(c=>Object.keys(c)[0]===a);if(!s)return;const l=s[a];if(l.type!=="record")return;i=l}i.entity_checks=[...i.entity_checks||[],...r]}function ZC(e){if(e.entity_checks?.length){const{keep:n,move:r}=e5(e.entity_checks);e.entity_checks=n.length?n:void 0;for(const[o,i]of r)t5(e,o,i)}for(const n of e.fields){const r=Object.values(n)[0];r.type==="record"&&ZC(r)}}function n5(e){const n=JSON.parse(JSON.stringify(e)),r={fields:n.fields};return ZC(r),n.fields=r.fields,n}function r5(e,n){const r=Mn[e];if(!r||!r.fieldRules)return n;const o=o5(r.fieldRules),i={...n};return i.fields=i.fields.map(a=>{if(Object.keys(a)[0]==="config"){const l=a.config.entity_checks||[],c=f=>{const m=[...fg(f)??[]].slice().sort();return`${Object.keys(f)[0]}:${m.join(",")}`},d=new Set(l.map(c)),u=o.filter(f=>{const p=c(f);return d.has(p)?!1:(d.add(p),!0)});return{config:{...a.config,entity_checks:[...l,...u]}}}return a}),i}function o5(e){const n=[],r=o=>o.startsWith("config.")?o.substring(7):o;return e.atLeastOneOf&&e.atLeastOneOf.forEach(o=>{n.push({at_least_one_of:o.map(r)})}),e.onlyOneOf&&e.onlyOneOf.forEach(o=>{n.push({mutually_exclusive:o.map(r)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(o=>{n.push({mutually_required:o.map(r)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(o=>{if(o.forEach(i=>{n.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),l=o[a].map(r);s.forEach(c=>{l.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const i5={class:"kong-ui-entities-plugin-form"},a5={key:1,class:"entity-form"},s5={class:"plugin-config-empty-state"},l5=xe(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.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(e,{emit:n}){const r=n,o=e,i=t.computed(()=>{if(o.config.app!=="konnect")return!1;const de=o.config;return!!de.isKonnectManagedRedisEnabled&&de.isCloudGateway===!0}),a=t.inject(Bn.KM_2306_CONDITION_FIELD_314,!1),s=t.inject(Bn.KHCP_20393_IDENTITY_PRINCIPALS_UI,!1),{axiosInstance:l}=ue.useAxios(o.config?.axiosRequestConfig),{parseSchema:c}=it.useSchemas({entityId:o.entityMap.focusedEntity?.id||void 0,credential:o.credential,enableRedisPartial:o.enableRedisPartial,experimentalRenders:o.config.app==="konnect"?o.config.experimentalRenders:void 0}),{convertToDotNotation:d,unFlattenObject:u,dismissField:f,isObjectEmpty:p,unsetNullForeignKey:m}=it.usePluginHelpers(),{shouldUseFreeForm:h,getFreeFormComponent:y}=it.useFreeFormResolver(),g=t.inject(ue.PLUGIN_FORM_LAYOUT_STATE),_=de=>{g&&(g.value=de)},{objectsAreEqual:k}=ue.useHelpers(),{i18n:{t:b}}=Qe(),N=de=>{let Z=de;return o.config.app==="konnect"&&(Z=Z.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||"")),Z.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")},C=(de,Z)=>{let U=`${o.config.apiBaseUrl}${nt.form[o.config.app].entityGetOne}`;return U=N(U),U=U.replace(/{entity}/gi,de),U=U.replace(/{id}/gi,Z),U},w=de=>{let Z=`${o.config.apiBaseUrl}${nt.form[o.config.app].entityGetAll}`;return Z=N(Z),Z=Z.replace(/{entity}/gi,de),Z},S=(de,Z,U)=>{const ne=C(de,Z);return l.get(ne,U)},x=(de,Z)=>{const U=w(de);return o.config.app==="konnect"?l.get(U).then(ne=>{const{data:{data:L}}=ne;if(delete Z.size,delete Z.offset,L.length&&Object.keys(Z).length===1){const M=Object.keys(Z)[0],Y=L.filter(ae=>ae[M]?!!ae[M].toLowerCase().includes(Z[M].toLowerCase()):!1);ne.data.data=Y}return ne}):l.get(U,{params:Z})},T=(de,Z,U)=>{const ne=w(de);if(o.config.app==="konnect"){const{size:L,offset:M,...Y}=Z;if(de==="consumer_groups")return l.get(ne,{params:{size:1e3},signal:U}).then(me=>{const{data:{data:Ae}}=me;if(Ae.length&&Object.keys(Y).length===1){const ze=Object.keys(Y)[0],ot=Ae.filter(F=>F[ze]?!!F[ze].toLowerCase().includes(Y[ze].toLowerCase()):!1);me.data.data=ot}return me});const ae={size:L,offset:M};for(const me of Object.keys(Y))ae.filter={[me]:{contains:Y[me]}};return l.get(ne,{params:ae,signal:U})}return l.get(ne,{params:Z,signal:U})},I=(de,Z=50)=>{const U=w(de);return l.get(U,{params:{size:Z}})};t.provide(Je.FORMS_API_KEY,{getOne:S,getAll:x,getAllV2:T,peek:I});const A=t.shallowReactive({...o.config});t.watch(()=>o.config,de=>{Object.assign(A,de)}),t.provide(Je.FORMS_CONFIG,A);const v=Ql();t.provide(Je.REDIS_CREATE_SLIDEOUT,{component:t.markRaw(mf.RedisConfigurationFormSlideout),toast:de=>v(de)});const V=t.ref(""),O=t.ref(),$=t.shallowRef(),Q=t.ref(null),pe=t.ref({}),H=t.reactive({}),j=t.reactive({}),D=t.computed(()=>Q.value?.options),ee=t.computed(()=>{const de=r5(j.name,o.rawSchema);return n5(de)}),K=t.ref(!1),J=t.ref(),ce=(de,Z)=>{K.value=de??"",J.value=Z},z=de=>{J.value?.(de),K.value=!1},oe=de=>{if(!de){O.value=void 0,$.value=void 0,V.value="",_(!1);return}const Z=o.schema?._sourcePlugin||de;O.value=MC(Z),$.value=h(Z,o.engine)?y(Z)??cg:void 0,V.value=Je.getSharedFormName(Z),_(!!$.value)},Pe=de=>{const Z={...o.schema},U=j,ne=H,L=Object.keys(U),M={};if(!p(pe.value))for(let ae=0;ae<pe.value?.fields?.length;ae++)Z[pe.value.fields[ae].model]=pe.value.fields[ae];Je.customFields.forEach(ae=>{Z[ae]&&(Z[ae].fields.forEach(me=>{me.fields&&me.fields.forEach(Ae=>{Z[Ae.model]=Ae}),me.model&&(Z[me.model]=me)}),delete Z[ae])}),L.forEach(ae=>{if(!Z[ae]){ae==="partials"&&(M[ae]=U[ae]);return}const me=Z[ae];let Ae=U[ae];const ze=ne[ae],ot=Array.isArray(Ae)?"array":typeof Ae,F=me?me.valueType:null,te=me?me.valueArrayType:null,G=me?me.transform:null;if(Ae==null&&ze==null&&!me.submitWhenNull)return;if(me){if(F&&ot!==F)switch(F){case"array":ot==="string"&&Ae.length&&(Ae=Ae.split(",").map(Ie=>{if(Ie=Ie.trim(),te==="string")return String(Ie);if(te==="number")return Number(Ie);if(te==="boolean"){if(typeof Ie=="string")return Ie.toLowerCase()==="true"||Ie==="1";if(typeof Ie=="number")return Ie===1}return Ie})),(!Ae||!Ae.length)&&(Ae=me.submitWhenNull?null:[]);break;case"number":me.referenceable!==!0&&(Ae=Number(Ae));break;case"boolean":ot==="string"&&(Ae=Ae.toLowerCase()==="true"||Ae==="1"),ot==="number"&&(Ae=Ae===1);break;case"string":Ae=Ae==null?"":String(Ae);break}else F==="array"&&(!Ae||!Ae.length?Ae=me.submitWhenNull?null:[]:me.inputAttributes?.type==="number"&&(Ae=Ae.map(Ie=>Number(Ie))));if(me.type==="array"&&me.nestedFields){const Ie=tt=>{Object.keys(tt).forEach(ge=>{tt[ge]&&typeof tt[ge]=="object"&&!Array.isArray(tt[ge])&&tt[ge]!==null?Ie(tt[ge]):(tt[ge]===void 0||tt[ge]===null||typeof tt[ge]=="number"&&isNaN(tt[ge])||typeof tt[ge]=="string"&&tt[ge].trim().length===0)&&delete tt[ge]})};Ae&&typeof Ae=="object"&&Ie(Ae)}me.type==="object-advanced"&&me.fields&&Ae!==null&&(Object.entries(Ae).length===0?Ae=null:Object.keys(Ae).forEach(Ie=>{Array.isArray(Ae[Ie])||(Ae[Ie]=Ae[Ie].split(","))}))}let le=d(ae);if(me.fieldNameHasDashes){const[Ie,...tt]=le.split(".").reverse();le=[Ie.replace(/_/g,"-"),...tt].reverse().join(".")}if(F==="object-expand"){let Ie;[le,Ie]=le.split(".");let tt={};M[le]&&(tt=M[le]),tt[Ie]=Ae,Ae=tt}ze!==void 0&&Ae===""&&Ae!==ze?M[le]=F==="object"?{}:null:me.type==="checklist"&&Ae===""?M[le]=[]:Ae!==""&&(M[le]=Ae),M[le]=G?G(Ae):M[le],m(le,M)});const Y=u(M);if($.value){if(de&&de.length)for(const ae of de)delete Y[ae];Object.assign(Y,Be.value)}return Y},Ee=(de,Z={})=>{f(j,Z,de,o.editing),r("model-updated",{model:j,originalModel:H,data:Pe()})},Ge=(de,Z)=>{const U={[Z]:de};typeof o.schema[Z]?.modelTransformer=="function"&&(U[Z]=o.schema[Z].modelTransformer(de));const ne=Object.assign({},j,U);Object.assign(j,ne),r("model-updated",{model:j,originalModel:H,data:Pe()})},se=de=>{r("validity-change",de)},X=(de,Z)=>{Object.keys(de).forEach(U=>{let ne=Z?`${Z}-${U}`:U,L=o.schema[ne];if(!L){const ae=Z?`${Z}-${U.replace(/-/g,"_")}`:U.replace(/-/g,"_");o.schema[ae]?.fieldNameHasDashes&&(ne=ae,L=o.schema[ne]),Z&&o.schema[Z]?.keyFromObject===U&&(ne=Z,L=o.schema[ne])}const M=de[U],Y=typeof M;if(L&&L.type==="object-advanced"&&!M){j[ne]={},H[ne]={};return}if(Array.isArray(M)){j[ne]=JSON.parse(JSON.stringify(M)),H[ne]=JSON.parse(JSON.stringify(M));return}if(Y==="object"&&M&&!M.length)return X(M,ne);if(Y==="object"&&M&&M.length&&L.type==="input"){j[ne]=M.join(", "),H[ne]=M.join(", ");return}j[ne]=M,H[ne]=M}),r("model-updated",{model:j,originalModel:H,data:Pe()})},he=(de,Z)=>{if(!Z)return de;if(Array.isArray(de)){const L=Z.elements;return L?de.map(M=>he(M,L)):de}if(!de||typeof de!="object")return de;if(Z.type==="map"&&Z.values){const L=Z.values,M={};for(const Y of Object.keys(de))M[Y]=he(de[Y],L);return M}if(!Array.isArray(Z.fields))return de;const U=new Map;for(const L of Z.fields){const M=L&&Object.keys(L)[0];M&&U.set(M,L[M])}const ne={};for(const L of Object.keys(de)){const M=U.get(L);M&&(ne[L]=he(de[L],M))}return ne},ve=()=>{const de=o.rawSchema?.fields;return Array.isArray(de)?de.find(U=>U?.config)?.config:void 0},je=new Set(["datakit"]),qe=t.computed(()=>o.schema?._sourcePlugin||j.name),Be=t.shallowRef(o.record),Ve=(de,Z)=>{const U=je.has(qe.value)?de:{...de,config:he(de.config,ve())};Be.value=U;const ne={...j};for(const L of Z||[])delete ne[L];r("model-updated",{model:{...ne,...U},originalModel:H,data:Pe(Z)})},$e=t.ref(!0),Ke=()=>{if(o.record&&o.schema&&(X({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)&&X({consumer_id:o.record.consumer_id||o.record.consumer}),X(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)&&X({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&&Ee("redis",{partials:o.record.partials}),$.value?Ve(o.record):X(o.record.config,"config"))),Object.keys(o.entityMap).length&&!o.entityMap.global&&o.schema){const de={};for(const Z in o.entityMap){const U=o.entityMap[Z].id,ne=o.entityMap[Z].idField,L=ne==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ne).replace("_","-"));Object.prototype.hasOwnProperty.call(j,L)&&(de[L]=U)}X(de)}if(o.entityMap.consumer?.id&&o.schema&&o.credential){const de={};Object.prototype.hasOwnProperty.call(j,"consumer")&&(de.consumer=o.entityMap.consumer.id),X(de)}$e.value=!1};return t.watch($e,de=>{r("loading",de)}),t.watch(()=>o.schema,(de,Z)=>{if(k(de||{},Z||{}))return;const U=c(de,void 0,void 0,o.engine);Object.assign(j,U.model),pe.value={fields:pe.value?.fields?.map(ne=>({...ne,disabled:ne.disabled||!1}))},Object.assign(H,JSON.parse(JSON.stringify(U.model))),oe(U.model.name),Ke()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{Q.value=c(o.schema,void 0,void 0,o.engine),Object.assign(j,Q.value?.model||{}),pe.value=Q.value?.schema||{},oe(Q.value?.model?.name),Ke()}),t.onBeforeUnmount(()=>{_(!1)}),(de,Z)=>{const U=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",i5,[$e.value?(t.openBlock(),t.createBlock(U,{key:0,type:"form"})):j.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",a5,[$.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent($.value),{key:0,developer:e.developer,"field-renderers":O.value?.fieldRenderers,"form-model":j,"form-schema":pe.value,"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,model:e.record,"on-form-change":Ve,"on-validity-change":se,"plugin-name":j.name,"render-rules":O.value?.renderRules,schema:ee.value,"onClick:createEntity":Z[0]||(Z[0]=ne=>de.$emit("click:create-entity",ne)),"onClick:learnMore":Z[1]||(Z[1]=ne=>de.$emit("click:learn-more",ne)),onGlobalAction:Z[2]||(Z[2]=(ne,L)=>de.$emit("globalAction",ne,L))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.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"])):V.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Je.sharedForms)[V.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":j,"form-options":D.value,"form-schema":pe.value,"identity-principals-ui-enabled":t.unref(s),"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,"on-model-updated":Ge,"on-partial-toggled":Ee,"show-new-partial-modal":ne=>de.$emit("showNewPartialModal",ne),"onClick:createEntity":Z[3]||(Z[3]=ne=>de.$emit("click:create-entity",ne)),"onClick:learnMore":Z[4]||(Z[4]=ne=>de.$emit("click:learn-more",ne))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.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"])):(t.openBlock(),t.createBlock(t.unref(Je.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,"is-konnect-managed-redis-enabled":i.value,model:j,options:D.value,schema:pe.value,onModelUpdated:Ge,onPartialToggled:Ee,onRefreshModel:Pe,onShowNewPartialModal:Z[5]||(Z[5]=ne=>de.$emit("showNewPartialModal",ne))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",s5,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[t.unref(Mn)[j.name]?.fieldRules&&(o.config.isNewOtelSchema||j.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(Jz,{rules:t.unref(Mn)[j.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Je.AUTOFILL_SLOT_NAME),fn:t.withCtx(ne=>[ne.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(qa.VaultSecretPickerProvider),t.mergeProps({key:0},ne,{onOpen:ce}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","is-konnect-managed-redis-enabled","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(qa.VaultSecretPicker),{config:o.config,setup:K.value,onCancel:Z[6]||(Z[6]=()=>K.value=!1),onProceed:z},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-9ddd337d"]]),c5={key:1},d5=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,r)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",c5,[t.renderSlot(n.$slots,"default")]))}}),u5={key:0},f5={class:"plugin-form-actions"},p5={key:0,class:"button-customize-deck-wrapper"},m5=xe(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.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(e,{emit:n}){const r=t.inject(Bn.KM_2306_CONDITION_FIELD_314,!1),o=t.inject(Bn.KM_2485_CLONED_PLUGINS,!1),i=t.ref(!1);t.provide(ue.PLUGIN_FORM_LAYOUT_STATE,i);const a=n,s=e,l=Ar.useRouter(),{i18n:{t:c}}=it.useI18n(),{customSchemas:d,typedefs:u}=it.useSchemas({app:s.config.app,credential:s.credential,experimentalRenders:s.config.app==="konnect"?s.config.experimentalRenders:void 0}),{formatPluginFieldLabel:f}=it.usePluginHelpers(),{shouldUseFreeForm:p}=it.useFreeFormResolver(),{getMessageFromError:m}=ue.useErrors(),{capitalize:h}=ue.useStringHelpers(),{objectsAreEqual:y}=ue.useHelpers(),{axiosInstance:g}=ue.useAxios(s.config?.axiosRequestConfig),{getClonedPlugin:_}=it.useCustomPluginApi({axiosInstance:ue.useAxios({...s.config?.axiosRequestConfig??{},konnect:{bypassGlobal404Handler:!0}}).axiosInstance,apiBaseUrl:s.config.apiBaseUrl,app:s.config.app,workspace:s.config.workspace,controlPlaneId:s.config.controlPlaneId}),k=t.ref(!1),b=t.computed(()=>!!s.pluginId),N=t.computed(()=>s.pluginId?ue.EntityBaseFormType.Edit:ue.EntityBaseFormType.Create),C=t.ref(void 0),w=t.ref(void 0),S=t.computed(()=>!!(s.credential&&s.config.entityId)),x=t.ref(void 0),T=t.ref({}),I=t.ref(),A=t.ref(),v=t.inject(Bn.KM_2503_CUSTOM_PLUGIN_FREEFORM,!1),V=t.ref(null),O=t.computed(()=>V.value!==null),$=t.computed(()=>O.value&&V.value?V.value:s.pluginType),Q=t.computed(()=>{if(s.engine)return s.engine;if(!(!v||!Ae.value))return O.value&&V.value?p(V.value)?"freeform":"vfg":"freeform"}),pe=t.computed(()=>p(s.pluginType,Q.value));t.provide(oa,{redisType:I,redisPath:A,isEditing:b.value});const H=[];t.provide(Jm,ge=>(H.push(ge),()=>{const we=H.indexOf(ge);we!==-1&&H.splice(we,1)}));const j=t.ref(!1),{isDeckEnabled:D,deckCustomizationOptions:ee,deckCalloutPreferenceKey:K}=ue.useBaseFormDeckOptions(()=>s.config,ue.SupportedEntityType.Plugin),J=t.ref(!1),ce=t.reactive({enabled:!0,protocols:[],tags:[]}),z=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),oe=t.ref([{title:c("view_configuration.json"),hash:"#json"},{title:c("view_configuration.yaml"),hash:"#yaml"}]);s.config.app==="konnect"&&oe.value.splice(1,0,{title:c("view_configuration.terraform"),hash:"#terraform"}),D.value&&oe.value.push({title:c("view_configuration.deck"),hash:"#deck"});const Pe=t.ref(oe.value[0].hash),Ee=t.ref(""),Ge=t.computed(()=>{if(S.value){let we=nt.form[s.config.app].credential[N.value];return we=we.replace(/{resourceEndpoint}/gi,ve.value),we}let ge;return s.config.entityType&&s.config.entityId?ge=nt.form[s.config.app].edit.forEntity.replace(/{entityType}/gi,s.config.entityType).replace(/{entityId}/gi,s.config.entityId):ge=nt.form[s.config.app].edit.all,s.config.app==="konnect"&&Mn[s.pluginType]?.useUIData?`${ge}?__ui_data=true`:ge}),se=()=>{k.value=!k.value},X=t.computed(()=>{const ge=s.config.entityType==="consumers"&&s.config.entityId||x.value?.consumer?.id,we=s.config.entityType==="consumer_groups"&&s.config.entityId||x.value?.consumer_group?.id,P=s.config.entityType==="services"&&s.config.entityId||x.value?.service?.id,fe=s.config.entityType==="routes"&&s.config.entityId||x.value?.route?.id;if(!(ge||we||P||fe))return{global:{entity:q.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const re={};return P&&(re.service={entity:q.PluginScope.SERVICE,entityEndpoint:"services",id:P,idField:To.SERVICE}),fe&&(re.route={entity:q.PluginScope.ROUTE,entityEndpoint:"routes",id:fe,idField:To.ROUTE}),ge&&(re.consumer={entity:q.PluginScope.CONSUMER,entityEndpoint:"consumers",id:ge,idField:To.CONSUMER}),we&&(re.consumer_group={entity:q.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:we,idField:To.CONSUMER_GROUP}),s.config.entityType&&(re.focusedEntity={entity:q.PluginScope[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()],entityEndpoint:s.config.entityType,id:s.config.entityId,idField:To[s.config.entityType.substring(0,s.config.entityType.length-1).toUpperCase()]}),re}),he=t.reactive({name:{default:s.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:c("plugins.form.fields.enabled.label"),textOn:c("plugins.form.fields.enabled.on_text"),textOff:c("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:s.hideScopeSelection&&(s.hideScopeSelection||N.value===ue.EntityBaseFormType.Create&&s.config.entityId)?"foreign":"selectionGroup",disabled:s.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:c("plugins.form.scoping.global.label"),description:c("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:c("plugins.form.fields.protocols.help"),label:c("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:c("plugins.form.fields.instance_name.label"),inputType:"text",help:c("plugins.form.fields.instance_name.help")},tags:u.tags,...r?{condition:{default:"",type:"input",label:c("plugins.form.fields.condition.label"),inputType:"text",help:c("plugins.form.fields.condition.tooltip"),placeholder:c("plugins.form.fields.condition.placeholder")}}:{}}),ve=t.computed(()=>{const ge=s.developer?"developers":"consumers",we=Br[s.pluginType]?.endpoint||"/plugins";return`${ge}/${s.config.entityId}${s.developer?"/credentials":""}${we}`}),je=ge=>{const we=Array.from(new Set(ge.map(P=>typeof P)));return we.length>1?"string":we[0]},qe=(ge,we,P,fe)=>{let re=we&&we.fields||[];const ie=d[$.value],Re=Br[s.pluginType]?.schema?.fields;return Array.isArray(re)&&(re=re.reduce((Oe,ye)=>{const be=Object.keys(ye)[0];return be.match(/-/g)?Oe[be.replace(/-/g,"_")]={...ye[be],fieldNameHasDashes:!0}:Oe[be]=ye[be],Oe},{})),Object.keys(re).sort().forEach(Oe=>{const ye=re[Oe];ye.type==="set"&&!(pe.value&&ye.elements.one_of)&&(ye.type="array");const be=ge?`${ge}-${Oe}`:`${Oe}`;if(ie?.fieldsToDelete?.includes(be)){Sb(P,be);return}if(Object.prototype.hasOwnProperty.call(ye,"overwrite")||ye.hidden)return;if(ye.type==="table")return qe(be,ye.schema,P);if(ye.fields)return fe&&ye.type==="record"?(P[be]={type:"object",model:Oe,schema:{fields:Object.values(qe(be,ye,{},!0))}},P):qe(be,ye,P);if(P[be]={id:be,model:Oe},P[be].type=ye.type==="boolean"?"checkbox":"input",P[be].required=ye.required,P[be].referenceable=ye.referenceable,be.startsWith("config-"))if(!fe&&ye.type==="array"&&(Ee.value=be),fe&&Ee.value&&be.startsWith(Ee.value)){const rt=be.slice(Ee.value.length+1);P[be].label=rt.split("-").map(f).join(".")}else P[be].label=f(be);if((ge==="config"||ge.startsWith("config-"))&&re[Oe]?.description&&(P[be].help=Ua.sanitize(Dl.marked.parse(re[Oe].description,{mangle:!1,headerIds:!1}))),ye.type==="map"){if(P[be].type="object-advanced",P[be].values=ye.values,ye.values.type==="array"){const{type:rt}=ye.values.elements||{};P[be].schema={fields:[{schema:{fields:[{...ft,model:be,valueArrayType:rt==="integer"?"number":rt||"string",inputAttributes:{...ft.inputAttributes,type:rt==="integer"?"number":"text",inputMode:rt==="integer"?"numeric":"text"}}]}}]}}else ye.values.fields&&(P[be].schema={fields:[{type:"object",model:"object",schema:{fields:ye.values.fields.map(rt=>{const Ze=Object.keys(rt)[0];return{model:Ze,type:"input",label:h(Ze),placeholder:Ze,inputType:rt[Ze].type}})}}]});return P}if(ye.enum&&ye.type==="array"&&(P[be].type="checklist",P[be].values=ye.enum,P[be].multi=!0,P[be].multiSelect=!0),ye.one_of&&ye.type!=="array"&&(P[be].type="select",P[be].values=ye.one_of,P[be].selectOptions={noneSelectedText:c("plugins.form.no_selection")}),ye.elements&&ye.type==="array"){const rt=ye.elements;if(P[be].referenceable=rt.referenceable,P[be].elements=rt,["string","integer","number"].includes(rt.type)&&!rt.one_of){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o}=P[be],{inputAttributes:ja,...Ly}=JSON.parse(JSON.stringify(ft));ja.type=rt.type==="string"?"text":"number",P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,inputAttributes:ja,...Ly}}else if(["string","integer","number"].includes(rt.type)&&rt.one_of){if(fe){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o}=P[be];P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,...zz(rt.one_of,ye.default)}}}else if(rt.type==="array"){const{id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,elements:ja}=P[be],{inputAttributes:Ly,...V7}=JSON.parse(JSON.stringify(ft));P[be]={id:Ze,help:He,label:Ye,hint:Bt,values:pt,referenceable:Ut,model:_o,elements:ja,inputAttributes:Ly,...V7}}}if(ye.hint&&(P[be].hint=Ua.sanitize(ye.hint)),ie&&!ie.overwriteDefault&&Object.keys(ie).forEach(rt=>{if(rt===be){const{help:Ze,label:He,hint:Ye,values:Bt,referenceable:pt,elements:Ut}=P[be],{help:_o,...ja}=ie[rt];P[be]={help:Ze,label:He,hint:Ye,values:Bt,referenceable:pt,elements:Ut,...ja},typeof _o=="string"&&(P[be].help=Ua.sanitize(Dl.marked.parse(_o,{mangle:!1,headerIds:!1})))}}),ye.type==="array"&&ye.elements?.type==="record"&&Array.isArray(ye.elements.fields)){let rt={};for(const He of ye.elements.fields)rt={...rt,...He};const Ze=P[be]?.items?.schema?.fields;if(Array.isArray(Ze))for(const He of P[be].items.schema.fields){const Ye=rt[He.model]?.description;He.help===void 0&&typeof Ye=="string"&&(He.help=Ua.sanitize(Dl.marked.parse(Ye,{mangle:!1,headerIds:!1})))}if(Ze||(P[be].type="array",P[be].newElementButtonLabelClasses="kong-form-new-element-button-label",P[be].fieldClasses="array-card-container-wrapper",P[be].itemContainerComponent="FieldArrayCardContainer",P[be].items={type:"object",schema:{fields:Object.values(qe(be,ye.elements,{},!0))}},P[be].items.schema.fields.forEach(He=>{for(const Ye of ye.elements.fields){const Bt=Object.keys(Ye)[0],pt=He.id?.split?.("-")??[];if(pt[pt.length-1]===Bt){He.model=Bt,He.label=f(Bt);break}}}),ye.elements.type==="record"&&(P[be].nestedFields=!0)),!P[be].nestedFields)P[be].items.default=()=>ye.elements.fields.reduce((He,Ye)=>{const Bt=Object.keys(Ye)[0];return He[Bt]=Ye[Bt].default,He},{});else{const He=(Ye,Bt)=>{if(Ye.type==="object"){Ye.model&&(Bt[Ye.model]={});for(const pt of Ye.schema.fields)He(pt,Ye.model?Bt[Ye.model]:Bt)}else Ye.model&&(Bt[Ye.model]=Ye.default)};P[be].items.default=()=>{const Ye={};return He(P[be].items,Ye),Ye}}}if(S.value&&Re){for(let rt=0;rt<Re.length;rt++)if(Re[rt][be]){P[be]={...P[be],...Re[rt][be]};break}}if(ye.required&&ye.type!=="boolean"&&(P[be].required=!0,P[be].selectOptions={hideNoneSelectedText:!0}),ye.required&&ye.type==="boolean"&&(P[be].default=ye.default??!1),ye.default!=null&&typeof ye.default!="object"&&ye.default!=="function"&&(P[be].default=ye.default),P[be].type==="input"){["string","number"].includes(typeof P[be].default)&&s.config.app==="konnect"&&(P[be].placeholder=`Default: ${P[be].default===""?"<empty string>":P[be].default}`);const{type:rt}=ye.elements||{};rt&&(P[be].valueArrayType=rt==="integer"?"number":rt),P[be].inputType=ye.type==="array"||ye.type==="string"?ye.encrypted?"password":"text":ye.type}let Ct="string";ye.enum?Ct=je(ye.enum):ye.type==="boolean"?Ct="boolean":ye.type==="number"||ye.type==="integer"?(Ct="number",P[be].inputType="number"):ye.type==="array"?(Ct="array",P[be].default=ye.default,ye.len_min>0&&(P[be].submitWhenNull=!0)):ye.type==="foreign"?Ct="object":ye.default&&Array.isArray(ye.default)?(Ct="array",P[be].valueArrayType=je(ye.default)):ye.default&&(Ct=typeof ye.default),P[be].valueType=Ct,ye.fieldNameHasDashes&&(P[be].fieldNameHasDashes=!0)}),P},Be=()=>{const ge=O.value&&V.value?V.value:s.pluginType,we=Mn[ge]?.scope.includes(q.PluginScope.SERVICE)??!0,P=Mn[ge]?.scope.includes(q.PluginScope.ROUTE)??!0,fe=Mn[ge]?.scope.includes(q.PluginScope.CONSUMER)??!0,re=s.config.disableConsumerGroupScope?!1:Mn[ge]?.scope.includes(q.PluginScope.CONSUMER_GROUP)??!0,ie=s.config.entityType==="consumers"&&!!s.config.entityId||!!x.value?.consumer?.id,Re=s.config.entityType==="consumer_groups"&&!!s.config.entityId||!!x.value?.consumer_group?.id,Oe=s.config.entityType==="services"&&!!s.config.entityId||!!x.value?.service?.id,ye=s.config.entityType==="routes"&&!!s.config.entityId||!!x.value?.route?.id,be=[],Ct=(Ze,He,Ye)=>Ze?c("plugins.form.disable_source_scope_change",{scope:Ye}):He?c("plugins.form.disable_data_retrieving",{scope:Ye}):"",rt=Ze=>s.scopedEntitiesPermissions?.[Ze]?.canRetrieve===!1;if(we){const Ze=rt("service"),He="services",Ye=Oe&&s.disableScopeSelection;be.push({id:"service-id",model:"service-id",label:c("plugins.form.scoping.gateway_service.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:He,inputValues:{fields:["name","id"]},help:c("plugins.form.scoping.gateway_service.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(P){const Ze=rt("route"),He="routes",Ye=ye&&s.disableScopeSelection;be.push({id:"route-id",model:"route-id",label:c("plugins.form.scoping.route.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:c("plugins.form.scoping.route.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(fe){const Ze=rt("consumer"),He="consumers",Ye=ie&&s.disableScopeSelection;be.push({model:"consumer-id",label:c("plugins.form.scoping.consumer.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:c("plugins.form.scoping.consumer.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(re){const Ze=rt("consumer_group"),He="consumer_groups",Ye=Re&&s.disableScopeSelection;be.push({model:"consumer_group-id",label:c("plugins.form.scoping.consumer_group.label"),placeholder:c("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:He,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:c("plugins.form.scoping.consumer_group.help"),disabled:Ye||Ze,disabledTooltip:Ct(Ye,Ze,He)})}if(be.length){const Ze=[...we?["service"]:[],...P?["route"]:[],...fe?["consumer"]:[],...re?["consumer_group"]:[]],Ye=Ze.splice(Ze.length-2,2).map(pt=>c(pt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${pt}.plural`)).join(`${Ze.length>0?",":""} and/or `),Bt=["Specific",[...Ze.length>0?[Ze.map(pt=>c(pt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${pt}.plural`)).join(", ")]:[],Ye].join(", ")].join(" ");he.selectionGroup.fields.push({label:c("plugins.form.scoping.label"),description:Bt,fields:[]}),he.selectionGroup.fields[1].fields=be}d[$.value]&&d[$.value].overwriteDefault&&Object.hasOwnProperty.call(d[$.value],"formSchema")&&Object.assign(he,d[$.value].formSchema)},Ve=t.computed(()=>!y(z.fields,ce,!0)),$e=t.computed(()=>!le.value&&!J.value&&(N.value===ue.EntityBaseFormType.Create||Ve.value)),Ke=t.ref(!1),de=t.ref(),Z=ge=>{s.credential&&ge.password&&(ge.password=""),z.fields.id=ge?.id||void 0,de.value=ge?.ordering,Object.assign(ce,z.fields),x.value=ge,Ke.value=!0},U=t.ref({}),ne=ge=>{z.fields=ge.model,z.fields.id=x.value?.id||void 0,Object.assign(ce,ge.originalModel),U.value=ge.data,s.isWizardStep&&a("model-updated",{model:z.fields,data:ge.data,resourceEndpoint:ve.value})},L=t.ref(new Map),M=t.computed(()=>[z.clientErrorMessage,z.serverErrorMessage].filter(Boolean).join("; ")),Y=ge=>{ge.valid?L.value.delete(ge.model):L.value.set(ge.model,ge.error),z.clientErrorMessage=[...L.value.entries()].map(([we,P])=>`${we}: ${typeof P=="string"?P:m(P)}`).join("; "),z.clientErrorMessage&&(z.serverErrorMessage="")};t.watch([X,Ke],(ge,we)=>{const P=ge[0]!==we[0],fe=ge[1],re=we[1];if(!S.value&&N.value===ue.EntityBaseFormType.Edit&&(P||fe&&fe!==re)){const ie=qe("config",T.value,he);Ae.value&&(ie._isCustomPlugin=!0),O.value&&V.value&&(ie._sourcePlugin=V.value),I.value&&(ie._supported_redis_partial_type=I.value),w.value=ie}},{deep:!0});const ae=()=>{s.config.cancelRoute?l.push(s.config.cancelRoute):a("cancel")},me=t.computed(()=>{const ge=s.config.entityType&&s.config.entityId&&!s.developer,we=S.value?nt.form[s.config.app].credential[N.value]:nt.form[s.config.app][N.value][ge?"forEntity":"all"];let P=`${s.config.apiBaseUrl}${we}`;return s.config.app==="konnect"&&(P=P.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),P=P.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:""),P=P.replace(/{resourceEndpoint}/gi,ve.value),P=P.replace(/{id}/gi,s.pluginId??""),P=P.replace(/{entityType}/gi,s.config.entityType||""),P=P.replace(/{entityId}/gi,s.config.entityId||""),P}),Ae=t.computed(()=>!Object.keys(Mn).includes(s.pluginType)),ze=t.computed(()=>{const ge=U.value;if(S.value){for(const we in q.PluginScope){const P=q.PluginScope[we];ge[P]&&!ge[P].id&&(ge[P]={id:s.config.entityId})}delete ge.created_at}return U.value.partials&&A.value&&Sb(ge,A.value),ge}),ot=t.computed(()=>{const{__ui_data:ge,...we}={...ze.value};return we}),F=async()=>{if(H.every(ge=>ge())&&!z.clientErrorMessage&&!s.isWizardStep)try{z.isReadonly=!0;let ge;const we=JSON.parse(JSON.stringify(ze.value)),P=d[$.value];!pe.value&&typeof P?.shamefullyTransformPayload=="function"&&P.shamefullyTransformPayload({originalModel:ce,model:z.fields,payload:we,schema:w.value}),N.value==="create"?ge=await g.post(me.value,we):N.value==="edit"&&(ge=s.config.app==="konnect"||I.value&&we.partials?await g.put(me.value,Object.assign({ordering:de.value},we)):await g.patch(me.value,we)),Object.assign(ce,z.fields),a("update",ge?.data)}catch(ge){z.serverErrorMessage=m(ge),a("error",ge)}finally{z.isReadonly=!1}},te=t.computed(()=>{const ge=S.value?Br[s.pluginType]?.schemaEndpoint:s.pluginType,we=S.value?nt.form[s.config.app].credentialSchema:nt.form[s.config.app].pluginSchema;let P=`${s.config.apiBaseUrl}${we}`;return s.config.app==="konnect"&&(P=P.replace(/{controlPlaneId}/gi,s.config.controlPlaneId||"")),P.replace(/\/{workspace}/gi,s.config.workspace?`/${s.config.workspace}`:"").replace(/{plugin}/gi,ge)}),G=t.ref(""),le=t.ref(!1),Ie=t.ref("");t.onBeforeMount(async()=>{le.value=!0;try{if(S.value&&s.config.app==="konnect"){const ge=Br[s.pluginType]?.schemaEndpoint,we=Wk[ge];G.value=ge,w.value=qe("",we,{}),le.value=!1}else{const ge=o&&Ae.value,we=s.schema?Promise.resolve(s.schema):g.get(te.value).then(fe=>fe.data),[P]=await Promise.all([we,ge?tt(s.pluginType):Promise.resolve()]);if(C.value=P,P)if(S.value)w.value=qe("",P,{}),le.value=!1;else{const fe=P.fields.find(ie=>ie.config);T.value=fe?fe.config:P,P.supported_partials&&(I.value=Object.keys(P.supported_partials).find(ie=>[yc.REDIS_CE,yc.REDIS_EE].includes(ie)),A.value=P.supported_partials[I.value]?.[0]),Be();const re=P.fields.find(ie=>ie.protocols)?.protocols;if(re){const{default:ie=[],elements:Re={}}=re;he.protocols.default=ie,he.protocols.placeholder=s.config.app==="konnect"?c("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:ie.join(", ")}):c("plugins.form.fields.protocols.placeholder"),Re.one_of?.length&&(he.protocols.values=Re.one_of.map(Oe=>({label:Oe,value:Oe})))}if(Ke.value||N.value===ue.EntityBaseFormType.Create){const ie=qe("config",T.value,he);I.value&&(ie._supported_redis_partial_type=I.value),Ae.value&&(ie._isCustomPlugin=!0),O.value&&V.value&&(ie._sourcePlugin=V.value),w.value=ie}}}}catch(ge){console.error(ge),Ie.value=m(ge),a("error:fetch-schema",ge)}finally{le.value=!1}});async function tt(ge){try{const we=await _(ge);V.value=we?.ref??null}catch(we){if(gi.isAxiosError(we)&&we.response?.status===404)return;throw we}}return(ge,we)=>{const P=t.resolveComponent("KSkeleton"),fe=t.resolveComponent("KEmptyState"),re=t.resolveComponent("KButton"),ie=t.resolveComponent("KTabs"),Re=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":i.value}])},[le.value?(t.openBlock(),t.createBlock(P,{key:0,type:"form"})):Ie.value?(t.openBlock(),t.createBlock(fe,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(c)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{key:2,"can-submit":$e.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"error-message":M.value,"fetch-url":Ge.value,"form-fields":ze.value,"is-readonly":z.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ae,"onFetch:error":we[6]||(we[6]=Oe=>ge.$emit("error",Oe)),"onFetch:success":Z,onLoading:we[7]||(we[7]=Oe=>ge.$emit("loading",Oe))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",u5)):(t.openBlock(),t.createBlock(d5,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",f5,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(re,{key:0,appearance:"tertiary","data-testid":`plugin-${b.value?"edit":"create"}-form-view-configuration`,onClick:we[5]||(we[5]=Oe=>se())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(re,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${b.value?"edit":"create"}-form-cancel`,disabled:z.isReadonly,onClick:ae},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(re,{appearance:"primary","data-testid":`plugin-${b.value?"edit":"create"}-form-submit`,disabled:!$e.value||z.isReadonly,type:"submit",onClick:F},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:F},null,32),t.createVNode(l5,{config:e.config,credential:S.value,developer:e.developer,editing:N.value===t.unref(ue.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":s.enableVaultSecretPicker,engine:Q.value,"entity-map":X.value,"raw-schema":C.value,record:x.value,schema:w.value,"onClick:createEntity":we[0]||(we[0]=Oe=>ge.$emit("click:create-entity",Oe)),"onClick:learnMore":we[1]||(we[1]=Oe=>ge.$emit("click:learn-more",Oe)),onGlobalAction:we[2]||(we[2]=(Oe,ye)=>ge.$emit("globalAction",Oe,ye)),onLoading:we[3]||(we[3]=Oe=>J.value=Oe),onModelUpdated:ne,onShowNewPartialModal:we[4]||(we[4]=Oe=>ge.$emit("showNewPartialModal",Oe)),onValidityChange:Y},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"])),t.createVNode(Re,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(c)("view_configuration.title"),visible:k.value,onClose:se},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(c)("view_configuration.message")),1),t.createVNode(ie,{modelValue:Pe.value,"onUpdate:modelValue":we[11]||(we[11]=Oe=>Pe.value=Oe),"data-testid":"form-view-configuration-slideout-tabs",tabs:oe.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ue.JsonCodeBlock),{config:e.config,"entity-record":ot.value,"fetcher-url":me.value,"request-method":s.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ue.YamlCodeBlock),{"deck-callout-preference-key":t.unref(D)?t.unref(K):void 0,"entity-record":ot.value,"onDeckCallout:clickCta":we[8]||(we[8]=Oe=>Pe.value="#deck")},null,8,["deck-callout-preference-key","entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ue.TerraformCodeBlock),{"credential-type":G.value,"entity-record":ot.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.unref(ee)?(t.openBlock(),t.createElementBlock("div",p5,[t.createVNode(re,{appearance:"secondary",class:"button-customize-deck",onClick:we[9]||(we[9]=Oe=>j.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.form.button_deck_customize")),1)]),_:1})])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"customization-options":t.unref(ee),"entity-record":ot.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"is-customization-modal-visible":j.value,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.workspace||void 0,onCustomizationClose:we[10]||(we[10]=Oe=>j.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-c298ae19"]]),g5={class:"plugin-filter"},h5={class:"plugin-tags-filter"},y5={class:"plugin-tags-filter-badges"},_5={class:"plugin-status-filter"},b5=xe(t.defineComponent({__name:"PluginFilter",props:t.mergeModels({entityType:{},entityId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const{i18n:{t:n}}=it.useI18n(),r={routes:q.PluginScope.ROUTE,services:q.PluginScope.SERVICE,consumers:q.PluginScope.CONSUMER,consumer_groups:q.PluginScope.CONSUMER_GROUP},o=t.computed(()=>e.entityType&&e.entityId?r[e.entityType]:void 0),i=t.useModel(e,"modelValue"),a=t.ref(""),s=t.ref({}),l=t.useTemplateRef("search-input"),c=t.useTemplateRef("tags-input"),d=(C,w)=>C.map(S=>w.find(x=>x.value===S).label).join(", "),u=t.ref(""),f=/^(?:[\x21-\x2B\x2D\x2E\x30-\x7E\p{N}\p{L}]+(?: *[\x21-\x2B\x2D\x2E\x30-\x7E\p{N}\p{L}])*)?$/u,p=t.computed(()=>u.value&&!f.test(u.value)?n("search.filter.tags_invalid"):""),m=()=>{l.value?.input?.focus()},h=()=>{c.value?.input?.focus()},y=()=>{a.value="",m()},g=(C,w)=>{const S=u.value;if(!S||!f.test(S)){h();return}C||(C=[]),C.includes(S)||C.push(S),u.value="",h(),w(C,C.join(", "))},_=(C,w,S)=>{const x=w.filter(T=>T!==C);S(x,x.join(", "))},k=t.computed(()=>({...o.value?{}:{scope:{label:n("plugins.list.table_headers.scope"),operators:["eq"],pinned:!0,multiple:!0,options:[{label:n("plugins.list.table_headers.applied_to_badges.route"),value:q.PluginScope.ROUTE},{label:n("plugins.list.table_headers.applied_to_badges.service"),value:q.PluginScope.SERVICE},{label:n("plugins.list.table_headers.applied_to_badges.consumer"),value:q.PluginScope.CONSUMER},{label:n("plugins.list.table_headers.applied_to_badges.consumer_group"),value:q.PluginScope.CONSUMER_GROUP},{label:n("plugins.list.table_headers.applied_to_badges.global"),value:q.PluginScope.GLOBAL}]}},status:{label:n("plugins.list.table_headers.status"),operators:["eq"],pinned:!0,maxWidth:350,options:[{value:"true",label:n("actions.enabled")},{value:"false",label:n("actions.disabled")}]},tags:{label:n("plugins.list.table_headers.tags"),operators:["eq"],pinned:!0,multiple:!0}})),b=t.computed(()=>{const C=new URLSearchParams;if(a.value&&C.set("filter[name][contains]",a.value),!o.value){const T=s.value.scope,I=Array.isArray(T?.value)?T.value:typeof T?.value=="string"&&T.value?[T.value]:[];I.length&&C.set("filter[scope][oeq]",I.join(","))}const w=s.value.status;w?.value&&C.set("filter[enabled]",w.value==="true"?"true":"false");const S=s.value.tags,x=Array.isArray(S?.value)?S.value:[];return x.length&&C.set("tags",x.join("/")),o.value&&e.entityId&&C.toString()&&C.set(`filter[${o.value}][eq]`,e.entityId),C.toString()});t.watch(b,C=>{i.value=C}),t.watch(i,C=>{C||(a.value="",s.value={},u.value="")});const N=(C,w)=>{const S=w[C];S&&(S.operatorDelimiter=": ")};return(C,w)=>{const S=t.resolveComponent("KInput"),x=t.resolveComponent("KBadge"),T=t.resolveComponent("KMultiselect"),I=t.resolveComponent("KRadio"),A=t.resolveComponent("KFilterGroup");return t.openBlock(),t.createElementBlock("div",g5,[t.createVNode(S,{ref:"search-input",modelValue:a.value,"onUpdate:modelValue":w[0]||(w[0]=v=>a.value=v),autocomplete:"off",class:"plugin-search-input","data-testid":"search-input",placeholder:t.unref(n)("search.placeholder.search")},{before:t.withCtx(()=>[t.createVNode(t.unref(Ne.SearchIcon),{decorative:""})]),after:t.withCtx(()=>[t.withDirectives(t.createVNode(t.unref(Ne.CloseIcon),{class:"plugin-search-clear",role:"button",tabindex:"0",onClick:y,onKeydown:[t.withKeys(t.withModifiers(y,["prevent"]),["enter"]),t.withKeys(t.withModifiers(y,["prevent"]),["space"])]},null,8,["onKeydown"]),[[t.vShow,a.value!==""]])]),_:1},8,["modelValue","placeholder"]),t.createVNode(A,{modelValue:s.value,"onUpdate:modelValue":w[2]||(w[2]=v=>s.value=v),filters:k.value,onApply:N},{"filter-tags":t.withCtx(({value:v,setValue:V})=>[t.createElementVNode("div",h5,[t.createVNode(S,{ref:"tags-input",modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=O=>u.value=O),autocomplete:"off","data-testid":"tags-filter-input",error:!!p.value,"error-message":p.value,placeholder:t.unref(n)("search.placeholder.tags_filter"),onKeydown:t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.createVNode(t.unref(Ne.ArrowTopLeftIcon),{class:"plugin-tags-filter-add","data-testid":"tags-filter-add",role:"button",tabindex:"0",onClick:O=>g(v,V),onKeydown:[t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["enter"]),t.withKeys(t.withModifiers(O=>g(v,V),["prevent"]),["space"])]},null,8,["onClick","onKeydown"])]),_:2},1032,["modelValue","error","error-message","placeholder","onKeydown"]),t.createElementVNode("div",y5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(v,O=>(t.openBlock(),t.createBlock(x,{key:O,"icon-before":!1},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ne.CloseIcon),{"data-testid":"tags-filter-remove-tag",role:"button",tabindex:"0",onClick:$=>_(O,v,V),onKeydown:[t.withKeys(t.withModifiers($=>_(O,v,V),["prevent"]),["enter"]),t.withKeys(t.withModifiers($=>_(O,v,V),["prevent"]),["space"])]},null,8,["onClick","onKeydown"])]),default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(O)+" ",1)]),_:2},1024))),128))])])]),"filter-scope":t.withCtx(({value:v,setValue:V,options:O})=>[t.createVNode(T,{"data-testid":"scope-filter-select",items:O,"model-value":v,placeholder:t.unref(n)("search.placeholder.scope_filter"),"onUpdate:modelValue":$=>V($,d($,O))},null,8,["items","model-value","placeholder","onUpdate:modelValue"])]),"filter-status":t.withCtx(({value:v,setValue:V,options:O})=>[t.createElementVNode("div",_5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(O,$=>(t.openBlock(),t.createBlock(I,{key:$.value,"data-testid":"status-filter-radio",label:$.label,"model-value":v,"selected-value":$.value,"onUpdate:modelValue":Q=>V(Q,$.label)},null,8,["label","model-value","selected-value","onUpdate:modelValue"]))),128))])]),_:1},8,["modelValue","filters"])])}}}),[["__scopeId","data-v-c4f55d0a"]]),k5={class:"kong-ui-entities-plugins-list"},w5={class:"button-row"},C5={class:"name-cell-wrapper"},E5={key:0,class:"info-wrapper"},N5={class:"info-name"},S5={key:1,class:"info-wrapper"},A5={key:0,class:"info-name"},x5={key:1,class:"info-name"},I5={key:2,class:"info-type"},v5={key:0},T5={key:1},B5={key:2},O5={key:1},P5={key:0},V5=xe(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.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(e,{emit:n}){const r=it.usePluginMetaData(),o=n,i=e,{i18n:{t:a,formatUnixTimeStamp:s}}=it.useI18n(),l=Ar.useRouter(),{axiosInstance:c}=ue.useAxios(i.config?.axiosRequestConfig),{hasRecords:d,handleStateChange:u}=ue.useTableState(()=>w.value),f=t.computed(()=>d.value&&i.config.app==="konnect"),p=t.computed(()=>!!i.config.entityId),m=t.computed(()=>i.config?.entityType==="consumers"),h=t.computed(()=>i.config?.entityType==="consumer_groups"),y=i.config.app==="konnect"||ue.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),g=t.computed(()=>i.config.app==="konnect"&&!!i.config.pluginTableImprovements?.filtering),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),k={name:{label:g.value?a("plugins.list.table_headers.plugin"):a("plugins.list.table_headers.name"),searchable:!0,sortable:!g.value,hidable:!1}};g.value&&(k.instanceName={label:a("plugins.list.table_headers.name"),sortable:!1}),i.config?.entityId||(k.appliedTo=g.value?{label:a("plugins.list.table_headers.scope"),sortable:!1}:{label:a("plugins.list.table_headers.applied_to"),sortable:!1}),k.enabled=g.value?{label:a("plugins.list.table_headers.status"),sortable:!1}:{label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},y&&(k.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),k.tags={label:a("plugins.list.table_headers.tags"),sortable:!1},k.updated_at={label:a("plugins.list.table_headers.updated_at"),sortable:!0};const b=k,N=L=>{let M=`${i.config.apiBaseUrl}${L}`;return i.config.app==="konnect"&&(M=M.replace(/{controlPlaneId}/gi,i.config?.controlPlaneId||"")),M.replace(/\/{workspace}/gi,i.config?.workspace?`/${i.config.workspace}`:"").replace(/{entityType}/gi,i.config?.entityType||"").replace(/{entityId}/gi,i.config?.entityId||"")},C=t.computed(()=>N(i.config.entityType?nt.list[i.config.app].forEntity:nt.list[i.config.app].all)),w=t.ref(""),S=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:k.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:{...k.enabled,label:a("search.filter.field.enabled")},name:k.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),x=t.computed(()=>g.value&&!!w.value),T=t.computed(()=>x.value?N(nt.list.konnect.search):C.value),{fetcher:I,fetcherState:A,fetcherCacheKey:v}=ue.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier,...x.value?{isExactMatch:!1}:{}})),T),V=()=>{w.value=""},O=()=>{v.value++},$=t.ref(null),Q=L=>{const M=[];return(L.route?.id||L.route_id)&&M.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),(L.service?.id||L.service_id)&&M.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),(L.consumer?.id||L.consumer_id)&&M.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),(L.consumer_group?.id||L.consumer_group_id)&&M.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),M.length?M:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},pe=async(L,M)=>L===null?!1:await i.canRetrieveScopedEntity?.(L,M.id),H=(L,M)=>M[L]?.id,j=(L,M)=>{const Y=H(L,M);return Y&&i.config?.getScopedEntityViewRoute?i.config.getScopedEntityViewRoute(L,Y):null},D=(L,M)=>{const Y=j(L,M);Y&&l.push(Y)},ee=t.ref(!1),K=t.ref(null),J=t.computed(()=>{const L={action:"disable",id:"",name:""};if(K.value){const{enabled:M,id:Y,name:ae}=K.value;L.action=M?"disable":"enable",L.id=Y,L.name=r.getDisplayName(ae)||Y}return L}),ce=L=>{ee.value=!0,K.value=L},z=()=>{ee.value=!1,K.value=null},oe=async()=>{if(!await i.canEdit?.(K.value)||!K.value)return;let M=`${i.config.apiBaseUrl}${nt.item[i.config.app]?.[i.config?.entityType?"forEntity":"all"].replace(/{entityType}/gi,i.config?.entityType||"").replace(/{entityId}/gi,i.config?.entityId||"")}`.replace(/{id}/gi,K.value.id||"");i.config.app==="konnect"&&(M=M.replace(/{controlPlaneId}/gi,i.config?.controlPlaneId||"")),M=M.replace(/\/{workspace}/gi,i.config?.workspace?`/${i.config.workspace}`:"");const Y=!K.value.enabled;try{const ae=i.config?.app;let me;w.value&&ae==="konnect"&&(me=await c.get(M));const{data:Ae}=ae==="konnect"?await c.put(M,{...me?.data||K.value,enabled:Y},{timeout:12e4}):await c.patch(M,{...K.value,enabled:Y},{timeout:12e4});o("toggle-enabled",Y,Ae),K.value.enabled=Y}catch(ae){o("error",ae)}},Pe=async(L,M)=>{const Y=L.id;if(!await M(Y)){o("copy:error",{entity:L,field:"id",message:a("errors.copy")});return}o("copy:success",{entity:L,field:"id",message:a("copy.success",{val:Y})})},Ee=async(L,M)=>{const Y=JSON.stringify(L);if(!await M(Y)){o("copy:error",{entity:L,message:a("errors.copy")});return}o("copy:success",{entity:L,message:a("copy.success_brief")})},Ge=async L=>{await i.canRetrieve?.(L)&&l.push(i.config.getViewRoute(L))},se=L=>({label:a("actions.view"),to:i.config.getViewRoute(L)}),X=L=>({label:a("actions.edit"),to:i.config.getEditRoute(L)}),he=L=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(L)}),ve=t.ref(void 0),je=t.ref(!1),qe=t.ref(!1),Be=t.ref(""),Ve=ue.useDeleteUrlBuilder(i.config,C.value),$e=L=>{ve.value=L,je.value=!0},Ke=()=>{je.value=!1},de=async()=>{if(ve.value?.id){qe.value=!0;try{await c.delete(Ve(ve.value.id)),qe.value=!1,je.value=!1,v.value++,o("delete:success",ve.value)}catch(L){Be.value=L.response?.data?.message||L.message||a("errors.delete"),o("error",L)}finally{qe.value=!1}}},Z=()=>{l.push(i.config.createRoute)};t.watch(A,L=>{if(L.status===ue.FetcherStatus.Error){$.value={title:a("errors.general")},L.error?.response?.data?.message&&($.value.message=L.error.response.data.message),o("error",L.error);return}$.value=null});const U=t.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")}),ne=t.ref(!1);return t.onBeforeMount(async()=>{ne.value=await i.canCreate(),ne.value&&(U.value.title=a("plugins.list.empty_state.title"),U.value.ctaText=a("actions.create"))}),(L,M)=>{const Y=t.resolveComponent("KButton"),ae=t.resolveComponent("KEmptyState"),me=t.resolveComponent("RouterLink"),Ae=t.resolveComponent("KBadge"),ze=t.resolveComponent("KTruncate"),ot=t.resolveComponent("KInputSwitch"),F=t.resolveComponent("KDropdownItem"),te=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",k5,[t.createVNode(t.unref(ue.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":U.value,"enable-entity-actions":"","error-message":$.value,fetcher:t.unref(I),"fetcher-cache-key":t.unref(v),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:w.value,"table-headers":t.unref(b),title:e.title,"title-tag":e.titleTag,onClearSearchInput:V,"onClick:row":M[5]||(M[5]=G=>Ge(G)),onSort:O,onState:t.unref(u)},t.createSlots({"toolbar-filter":t.withCtx(()=>[g.value?(t.openBlock(),t.createBlock(b5,{key:0,modelValue:w.value,"onUpdate:modelValue":M[0]||(M[0]=G=>w.value=G),"entity-id":i.config?.entityId,"entity-type":i.config?.entityType},null,8,["modelValue","entity-id","entity-type"])):(t.openBlock(),t.createBlock(t.unref(ue.EntityFilter),{key:1,modelValue:w.value,"onUpdate:modelValue":M[1]||(M[1]=G=>w.value=G),config:S.value},null,8,["modelValue","config"]))]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",w5,[!p.value&&f.value?(t.openBlock(),t.createBlock(Y,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:M[2]||(M[2]=G=>L.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(Y,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:G})=>[t.createElementVNode("div",C5,[t.createVNode(t.unref(Sr.PluginIcon),{class:"plugin-icon",name:G.name,size:24},null,8,["name"]),g.value?(t.openBlock(),t.createElementBlock("div",E5,[t.createElementVNode("span",N5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)])):(t.openBlock(),t.createElementBlock("div",S5,[G.instance_name?(t.openBlock(),t.createElementBlock("span",A5,t.toDisplayString(G.instance_name),1)):(t.openBlock(),t.createElementBlock("span",x5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)),G.instance_name?(t.openBlock(),t.createElementBlock("span",I5,t.toDisplayString(t.unref(r).getDisplayName(G.name)),1)):t.createCommentVNode("",!0)]))])]),instanceName:t.withCtx(({row:G})=>[t.createTextVNode(t.toDisplayString(G.instance_name||"-"),1)]),appliedTo:t.withCtx(({row:G})=>[Q(G).length>0?(t.openBlock(),t.createBlock(ze,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Q(G),(le,Ie)=>(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:le.badgeText,"auth-function":()=>pe(le.type,G),"force-show":""},{default:t.withCtx(({isAllowed:tt})=>[g.value?(t.openBlock(),t.createElementBlock("div",v5,[tt&&le.type&&j(le.type,G)?(t.openBlock(),t.createBlock(me,{key:0,class:"scope-link",to:j(le.type,G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(le.badgeText),1)]),_:2},1032,["to"])):(t.openBlock(),t.createElementBlock("span",T5,t.toDisplayString(le.badgeText),1)),Ie<Q(G).length-1?(t.openBlock(),t.createElementBlock("span",B5,", ")):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(Ae,{key:1,class:t.normalizeClass(tt||"disabled"),onClick:t.withModifiers(ge=>tt&&le.type&&D(le.type,G),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(le.badgeText),1)]),_:2},1032,["class","onClick"]))]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",O5,"-"))]),enabled:t.withCtx(({row:G})=>[g.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:G.enabled?"success":"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(G.enabled?t.unref(a)("actions.enabled"):t.unref(a)("actions.disabled")),1)]),_:2},1032,["appearance"])):(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:1,"auth-function":async()=>!!(await e.canEdit(G)&&await e.canToggle(G)),"force-show":""},{default:t.withCtx(({isAllowed:le})=>[t.createElementVNode("div",{onClick:M[4]||(M[4]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(ot,{disabled:!le,"disabled-tooltip-text":!le&&e.config.getToggleDisabledTooltip?.(G)||void 0,"model-value":G.enabled,onClick:t.withModifiers(Ie=>le&&ce(G),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]),_:2},1032,["auth-function"]))]),ordering:t.withCtx(({rowValue:G})=>[g.value?(t.openBlock(),t.createElementBlock("span",P5,t.toDisplayString(t.unref(qf)(G)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)):(t.openBlock(),t.createBlock(Ae,{key:1,appearance:t.unref(qf)(G)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(qf)(G)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"]))]),tags:t.withCtx(({rowValue:G})=>[t.createVNode(t.unref(ue.TableTags),{tags:G},null,8,["tags"])]),updated_at:t.withCtx(({row:G,rowValue:le})=>[t.createTextVNode(t.toDisplayString(t.unref(s)(le??G.created_at)),1)]),actions:t.withCtx(({row:G})=>[t.createVNode(te,null,{default:t.withCtx(({copyToClipboard:le})=>[t.createVNode(F,{"data-testid":"action-entity-copy-id",onClick:Ie=>Pe(G,le)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(te,null,{default:t.withCtx(({copyToClipboard:le})=>[t.createVNode(F,{"data-testid":"action-entity-copy-json",onClick:Ie=>Ee(G,le)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(G)},{default:t.withCtx(()=>[t.createVNode(F,{"data-testid":"action-entity-view","has-divider":"",item:se(G)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canEdit(G)},{default:t.withCtx(()=>[t.createVNode(F,{"data-testid":"action-entity-edit",item:X(G)},null,8,["item"])]),_:2},1032,["auth-function"]),g.value?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:0,"auth-function":async()=>!!(await e.canEdit(G)&&await e.canToggle(G)),"force-show":""},{default:t.withCtx(({isAllowed:le})=>[t.createVNode(F,{"data-testid":"action-entity-toggle-enabled",disabled:!le,onClick:Ie=>le&&ce(G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(G.enabled?t.unref(a)("actions.disable"):t.unref(a)("actions.enable")),1)]),_:2},1032,["disabled","onClick"])]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),!m.value&&!h.value&&t.unref(y)?(t.openBlock(),t.createBlock(t.unref(ue.PermissionsWrapper),{key:1,"auth-function":()=>e.canConfigureDynamicOrdering(G)},{default:t.withCtx(()=>[he(G)?(t.openBlock(),t.createBlock(F,{key:0,"data-testid":"action-entity-config-dyn-order",item:he(G)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ue.PermissionsWrapper),{"auth-function":()=>e.canDelete(G)},{default:t.withCtx(()=>[t.createVNode(F,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:le=>$e(G)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!w.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>[t.createVNode(ae,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Ne.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[ne.value?(t.openBlock(),t.createBlock(Y,{key:0,"data-testid":"entity-create-button",onClick:Z},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(Y,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:M[3]||(M[3]=G=>L.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[e.config?.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.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"]),t.createVNode(t.unref(ue.EntityToggleModal),{action:J.value.action,"entity-id":J.value.id,"entity-name":J.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":oe,visible:ee.value,onCancel:z,onProceed:z},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ue.EntityDeleteModal),{"action-pending":qe.value,description:t.unref(a)("delete.description"),"entity-name":ve.value&&(ve.value.instance_name||ve.value.name||ve.value.id),"entity-type":t.unref(ue.EntityTypes).Plugin,error:Be.value,title:t.unref(a)("delete.title"),visible:je.value,onCancel:Ke,onProceed:de},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-668423ed"]]),$5={class:"plugin-select-card-wrapper"},R5=["data-testid"],L5={class:"plugin-card-header"},D5={class:"plugin-card-title"},M5={key:0,class:"plugin-card-actions"},F5=["data-testid","title"],j5={key:0,class:"plugin-card-text"},U5={key:0,class:"custom-plugin-badges"},K5=["title"],pg=xe(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=n,o=e,i=Ar.useRouter(),{i18n:{t:a}}=it.useI18n(),s=t.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),l=t.computed(()=>!C.value||N.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")]),c=t.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),d=t.computed(()=>typeof o.config.getCustomEditRoute=="function"),u=t.computed(()=>o.plugin.customPluginType==="cloned"),f=t.computed(()=>u.value?o.canDeleteClonedPlugin:o.canDeleteCustomPlugin),p=t.computed(()=>u.value?o.canEditClonedPlugin:o.canEditCustomPlugin),m=t.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),h=t.computed(()=>p.value&&d.value),y=t.computed(()=>f.value),g=t.computed(()=>!!(C.value&&!N.value&&m.value&&o.navigateOnClick&&(y.value||h.value))),_=()=>{i.push(o.config.getCreateRoute(o.plugin.id))},k=()=>{o.navigateOnClick?_():b()},b=()=>{r("plugin-clicked",o.plugin)},N=t.computed(()=>o.plugin.id==="custom-plugin-create"),C=t.computed(()=>o.plugin.group===q.PluginGroup.CUSTOM_PLUGINS),w=()=>{C.value&&r("custom-plugin-delete")},S=(T,I)=>{const A=o.config;typeof A.getCustomEditRoute=="function"&&i.push(A.getCustomEditRoute(T,I))},x=()=>{if(!c.value&&C.value){const T=o.config;N.value&&T.createCustomRoute?i.push(T.createCustomRoute):C.value&&_()}};return(T,I)=>{const A=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdownItem"),V=t.resolveComponent("KDropdownMenu"),O=t.resolveComponent("KBadge"),$=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",$5,[t.createVNode($,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:c.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:I[1]||(I[1]=Q=>c.value||C.value?void 0:k())},[t.createElementVNode("div",L5,[t.createElementVNode("div",D5,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!C.value})},t.toDisplayString(e.plugin.name),3)]),g.value?(t.openBlock(),t.createElementBlock("div",M5,[t.createVNode(V,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"edit-plugin-schema",onClick:I[0]||(I[0]=t.withModifiers(Q=>S(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),y.value?(t.openBlock(),t.createBlock(v,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":h.value,onClick:t.withModifiers(w,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":C.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:x},[t.createVNode(t.unref(Sr.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),e.plugin.description||l.value.length?(t.openBlock(),t.createElementBlock("div",j5,[l.value.length?(t.openBlock(),t.createElementBlock("div",U5,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,Q=>(t.openBlock(),t.createBlock(O,{key:Q,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(Q),1)]),_:2},1024))),128))])):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,K5)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,F5),t.createElementVNode("div",{class:"plugin-card-footer",onClick:x},t.toDisplayString(N.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,R5)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-eb0977c9"]]),_d=xe(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),{getMessageFromError:a}=ue.useErrors(),{axiosInstance:s}=ue.useAxios(r.config?.axiosRequestConfig),l=t.computed(()=>u.value?i("delete.plugin_schema_in_use_title"):i("delete.title",{name:r.plugin?.name||i("delete.custom_plugin")})),c=t.ref(!1),d=t.ref(""),u=t.ref(!1),f=t.computed(()=>{const m=r.plugin.customPluginType;if(r.config.app==="konnect"){const h=m==="streaming"?nt.select[r.config.app].streamingCustomPluginItem:m==="cloned"?nt.customPlugin[r.config.app].cloned.edit:nt.select[r.config.app].schemaCustomPluginItem;return`${r.config.apiBaseUrl}${h}`.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"").replace(/{pluginId}/gi,r.plugin.id)}if(r.config.app==="kongManager"&&m&&m!=="schema"){const h=m==="cloned"?nt.customPlugin[r.config.app].cloned.edit:nt.customPlugin[r.config.app].streamed.edit;return`${r.config.apiBaseUrl}${h}`.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{pluginId}/gi,r.plugin.id)}return null}),p=async()=>{if(c.value=!0,d.value="",!r.plugin?.name){c.value=!1;return}try{f.value&&await s.delete(f.value),o("proceed")}catch(m){JC(m)?u.value=!0:d.value=a(m)}finally{c.value=!1}};return(m,h)=>{const y=t.resolveComponent("KAlert"),g=t.resolveComponent("KButton"),_=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ue.EntityDeleteModal),{key:0,"action-pending":c.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(i)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ue.EntityTypes).Plugin,error:d.value,"need-confirm":"",title:l.value,visible:"",onCancel:h[0]||(h[0]=k=>m.$emit("closed")),onProceed:p},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(_,{key:1,"action-button-disabled":c.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:l.value,visible:"",onCancel:h[2]||(h[2]=k=>m.$emit("closed"))},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"danger",message:t.unref(i)("delete.plugin_schema_in_use_message")},null,8,["message"])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(g,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[1]=k=>m.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9514182c"]]),q5={class:"custom-plugins-grid"},G5={class:"empty-state-title"},z5={class:"empty-state-description"},mg=310,H5=xe(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:s}=it.usePluginHelpers(),l=t.ref(!0),c=C=>{o("plugin-clicked",C)},d=t.computed(()=>{const C=JSON.parse(JSON.stringify(r.pluginList))[q.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:q.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(C):C}),u=t.ref(!1),f=t.ref(null),p=C=>{u.value=!0,f.value={id:C.id,name:C.name,customPluginType:C.customPluginType}},m=C=>{C&&(o("revalidate"),o("delete:success",f.value?.name||"")),u.value=!1,f.value=null},h=t.ref(mg),y=t.ref(null),g=t.ref(null),_=t.computed(()=>l.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),k=t.ref(!1),b=()=>{h.value=Math.max(a(g.value),mg),N()},N=()=>{g.value?.length&&(k.value=s(y.value,g.value?.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),mg),N(),window?.addEventListener("resize",b)}),t.onUnmounted(()=>{window?.removeEventListener("resize",b)}),(C,w)=>{const S=t.resolveComponent("KEmptyState"),x=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",q5,[d.value.length?(t.openBlock(),t.createBlock(x,{key:1,modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=T=>l.value=T),class:"custom-plugins-collapse","data-testid":`${t.unref(q.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(q.PluginGroup).CUSTOM_PLUGINS,"trigger-label":l.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(T,I)=>(t.openBlock(),t.createBlock(pg,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:T,onCustomPluginDelete:A=>p(T),onPluginClicked:c},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},[k.value?void 0:{name:"trigger",fn:t.withCtx(()=>[w[2]||(w[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(S,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",G5,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",z5,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),u.value&&f.value?(t.openBlock(),t.createBlock(_d,{key:2,config:e.config,plugin:f.value,onClosed:m,onProceed:w[1]||(w[1]=T=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-909f4d5f"]]),gg=310,QC=xe(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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:t.mergeModels(["plugin-clicked","delete:success"],["update:modelValue"]),setup(e,{emit:n}){const r=t.useModel(e,"modelValue"),o=e,i=n,{i18n:{t:a}}=it.useI18n(),{getTallestPluginCardHeight:s,getToggleVisibility:l}=it.usePluginHelpers(),c=t.ref(gg),d=t.ref(null),u=t.ref(null),f=t.computed(()=>r.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=t.ref(!1),h=t.ref(null),y=b=>{m.value=!0,h.value={id:b.id,name:b.name,customPluginType:b.customPluginType}},g=b=>{b&&i("delete:success",h.value?.name||""),m.value=!1,h.value=null},_=()=>{c.value=Math.max(s(u.value),gg),k()},k=()=>{u.value?.length&&(p.value=l(d.value,u.value?.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(s(u.value),gg),k(),window?.addEventListener("resize",_)}),t.onUnmounted(()=>{window?.removeEventListener("resize",_)}),(b,N)=>{const C=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(C,{modelValue:r.value,"onUpdate:modelValue":N[0]||(N[0]=w=>r.value=w),class:"plugins-collapse","data-testid":`${o.name}-collapse`,title:o.name,"trigger-label":r.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(f.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.plugins,w=>(t.openBlock(),t.createBlock(pg,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:u,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onCustomPluginDelete:S=>y(w),onPluginClicked:S=>i("plugin-clicked",w)},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},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[N[2]||(N[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"]),m.value&&h.value?(t.openBlock(),t.createBlock(_d,{key:0,config:e.config,plugin:h.value,onClosed:g,onProceed:N[1]||(N[1]=w=>g(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-7f683497"]]),W5={class:"plugin-select-grid"},Y5={class:"empty-state-title"},J5={class:"empty-state-description"},hg=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||!e.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(e,{emit:n}){const r=e,o=n,{i18n:{t:i}}=it.useI18n(),a=t.ref(!1),s=t.ref(Ap.reduce((d,u)=>(d[u]=!1,d),{})),l=d=>{o("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(r.pluginList));return r.config.app==="konnect"&&delete d[q.PluginGroup.CUSTOM_PLUGINS],d});return(d,u)=>{const f=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",W5,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(f,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",Y5,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",J5,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!r.hideHighlightedPlugins&&r.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(QC,{key:1,modelValue:a.value,"onUpdate:modelValue":u[0]||(u[0]=p=>a.value=p),"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:r.highlightedPluginsTitle||t.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:r.highlightedPlugins,"onDelete:success":u[1]||(u[1]=p=>o("delete:success",p)),onPluginClicked:u[2]||(u[2]=p=>l(p))},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"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Ap),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(QC,{modelValue:s.value[p],"onUpdate:modelValue":m=>s.value[p]=m,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],"onDelete:success":u[3]||(u[3]=m=>o("delete:success",m)),onPluginClicked:u[4]||(u[4]=m=>l(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"])])):t.createCommentVNode("",!0)],64))),256))])}}}),X5={class:"kong-ui-entities-plugin-select-form"},Z5={class:"plugins-filter-input-container"},Q5={key:0},eH={key:3,"aria-live":"polite",class:"plugins-results-container"},tH={"data-testid":"kong-tab"},nH={class:"tab-description"},rH={"data-testid":"custom-tab"},oH={class:"tab-description"},iH={key:1},aH=xe(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="kongManager"&&!e.workspace||e.app==="konnect"&&(!e.controlPlaneId||e.workspace)||!e.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(e,{emit:n}){const r=e,o=n,i=Ar.useRoute(),a=Ar.useRouter(),{i18n:{t:s}}=it.useI18n(),{pluginMetaData:l}=it.usePluginMetaData(),{getMessageFromError:c}=ue.useErrors(),{sortAlpha:d,objectsAreEqual:u}=ue.useHelpers(),f=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),y=t.ref(""),g=t.ref([]),_=t.ref([]),k=t.ref([]),b=t.ref({}),N=t.ref([]),C=t.ref(null),w=t.ref(!1),{axiosInstance:S}=ue.useAxios(r.config?.axiosRequestConfig),x=U=>U==="none"||U==="disabled"?new Set:new Set(Array.isArray(U)?U:[U]),T=t.computed(()=>x(r.customPluginSupport)),I=t.computed(()=>[...T.value].sort().join("|")),A=t.computed(()=>r.customPluginSupport==="disabled"),v=t.computed(()=>A.value||T.value.size>0),V=t.computed(()=>T.value.has("streaming")),O=t.computed(()=>T.value.has("cloned")),$=U=>gi.isAxiosError(U)&&U.code==="ERR_CANCELED",Q=U=>c(U).toLowerCase().includes("requires a license"),pe=t.computed(()=>b.value?Object.entries(b.value).filter(([U])=>U!==q.PluginGroup.CUSTOM_PLUGINS).reduce((U,[,ne])=>{for(const L of ne??[])U[L.id]=L;return U},{}):{}),H=t.computed(()=>{if(!b.value)return{};const U=f.value.toLowerCase(),ne=JSON.parse(JSON.stringify(b.value));for(const L in b.value){const M=b.value[L]?.filter(Y=>Y.name.toLowerCase().includes(U)||Y.id.toLowerCase().includes(U)||Y.group.toLowerCase().includes(U)||Y.clonedFromRef?.toLowerCase().includes(U)||Y.customPluginType?.toLowerCase().includes(U))||[];M.length?ne[L]=M:delete ne[L]}return ne}),j=t.computed(()=>r.highlightedPluginIds.reduce((U,ne)=>{const L=pe.value[ne];return L&&U.push(L),U},[])),D=t.computed(()=>Object.keys(H.value).length>0),ee=t.computed(()=>Object.keys(b.value).length>0&&!D.value),K=t.computed(()=>r.config.app!=="konnect"||!v.value?[]:[{hash:"#kong",title:s("plugins.select.tabs.kong.title")},{hash:"#custom",title:s("plugins.select.tabs.custom.title"),disabled:A.value}]),J=t.computed(()=>{let U=K.value.length&&(i?.hash||K.value[0]?.hash)||"";return U==="#custom"&&A.value&&(U="#kong"),U}),ce=()=>{const U=new Map(k.value.map(M=>[M.name,M])),ne=new Set(_.value.map(M=>M.name)),L=new Set([...ne,...U.keys()]);return[...new Set([...Object.keys({...r.availableOnServer?{}:l}),...g.value,...L])].filter(M=>!r.ignoredPlugins.includes(M)).filter(M=>{if(!r.config.entityType)return M;const Y=U.has(M)?U.get(M).ref:M;return r.config.entityType==="services"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.SERVICE)||r.config.entityType==="routes"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.ROUTE)||r.config.entityType==="consumer_groups"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.CONSUMER_GROUP)||r.config.entityType==="consumers"&&l[Y]&&!l[Y].scope.includes(q.PluginScope.CONSUMER)?!1:M}).reduce((M,Y)=>{const ae=l[Y]&&l[Y].name||Y,me=U.get(Y),Ae=ne.has(Y),ze={...l[Y],id:Y,name:ae,available:g.value.includes(Y)||!!me||Ae,disabledMessage:"",group:l[Y]?.group||q.PluginGroup.CUSTOM_PLUGINS};ze.group===q.PluginGroup.CUSTOM_PLUGINS&&(me?(ze.customPluginType="cloned",ze.clonedFromRef=me.ref):Ae?ze.customPluginType="streaming":ze.customPluginType="schema"),r.disabledPlugins&&(ze.disabledMessage=r.disabledPlugins[Y]);const ot=ze.group||s("plugins.select.misc_plugins");let F=M[ot];return F||(F=[]),F.push(ze),F.sort(d("name")),M[ot]=F,M},{})},z=t.computed(()=>{let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].availablePlugins}`;if(r.config.app==="konnect")U=U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"");else if(r.config.app==="kongManager"&&r.config.gatewayInfo?.edition==="community")return`${r.config.apiBaseUrl}${nt.select[r.config.app].availablePluginsForOss}`;return U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}),oe=t.computed(()=>{if(V.value){let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].streamingCustomPlugins}`;return r.config.app==="konnect"?U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),Pe=t.computed(()=>{if(O.value){let U=`${r.config.apiBaseUrl}${nt.select[r.config.app].clonedPlugins}`;return r.config.app==="konnect"?U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")}return null}),Ee=t.computed(()=>{if(r.config.entityType&&r.config.entityId){let U=`${r.config.apiBaseUrl}${nt.list[r.config.app].forEntity}`;return r.config.app==="konnect"&&(U=U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||"")),U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"").replace(/{entityType}/gi,r.config.entityType||"").replace(/{entityId}/gi,r.config.entityId||"")}return""}),Ge=U=>{a.replace({hash:U,query:i.query})};t.watch(()=>r.disabledPlugins,(U,ne)=>{!u(U,ne)&&!p.value&&(b.value=ce())}),t.watch(()=>r.ignoredPlugins,(U,ne)=>{!u(U,ne)&&!p.value&&(b.value=ce())}),t.watch(p,U=>{o("loading",U)});const se=async U=>{if(!Ee.value){N.value=[];return}try{const{data:{data:ne}}=await S.get(Ee.value,{signal:U});ne?.length&&(N.value=ne.reduce((L,M)=>(M.name&&L.push(M.name),L),[]))}catch(ne){$(ne)||(N.value=[])}},X=async U=>{const ne=[];oe.value&&Be.value&&ne.push(yd(S,oe.value,U).then(L=>{_.value=L}).catch(L=>{$(L)||y.value||(y.value=c(L)??s("plugins.select.tabs.custom.fetch_error"))})),Pe.value&&Ke.value&&ne.push(yd(S,Pe.value,U).then(L=>{k.value=L}).catch(L=>{if($(L))return;const M=Q(L);(M||!y.value)&&(y.value=M?s("plugins.select.tabs.custom.license_required"):c(L)??s("plugins.select.tabs.custom.fetch_error"))})),ne.push(se(U)),await Promise.allSettled(ne)},he=async()=>{C.value?.abort(),C.value=new AbortController,p.value=!0,m.value=!1,h.value="",y.value="",g.value=[],_.value=[],k.value=[],N.value=[];try{const{data:U}=await S.get(z.value,{signal:C.value.signal});if(r.config.app==="konnect"){const{names:ne}=U;g.value=ne||[]}else if(r.config.app==="kongManager"){const{plugins:{available_on_server:ne}}=U;g.value=ne?Object.keys(ne):[]}await X(C.value.signal),b.value=ce()}catch(U){$(U)||(m.value=!0,h.value=c(U))}finally{C.value?.signal.aborted||(p.value=!1)}},ve=t.ref(!1),je=t.ref(!1),qe=t.ref(!1),Be=t.ref(!1),Ve=t.ref(!1),$e=t.ref(!1),Ke=t.ref(!1),de=U=>{_.value=_.value.filter(ne=>ne.name!==U),k.value=k.value.filter(ne=>ne.name!==U),b.value=ce(),o("delete-custom:success",U)};t.onBeforeMount(async()=>{const[U,ne,L,M,Y,ae,me]=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()]);ve.value=U,je.value=ne,qe.value=L,Be.value=M,Ve.value=Y??ne,$e.value=ae??L,Ke.value=me});const Z=t.useTemplateRef("filter-input");return t.onMounted(async()=>{w.value=!0,Z.value?.input?.focus(),await he()}),t.watch(()=>[r.config.app==="konnect"?r.config.controlPlaneId:void 0,r.config.workspace,r.config.entityType,r.config.entityId,r.config.app==="kongManager"?r.config.gatewayInfo?.edition:void 0,I.value,A.value],async()=>{w.value&&await he()}),t.onBeforeUnmount(()=>{C.value?.abort()}),(U,ne)=>{const L=t.resolveComponent("KInput"),M=t.resolveComponent("KSkeletonBox"),Y=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState"),me=t.resolveComponent("KTooltip"),Ae=t.resolveComponent("KAlert"),ze=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",X5,[t.createElementVNode("div",Z5,[t.createVNode(L,{ref:"filter-input",modelValue:f.value,"onUpdate:modelValue":ne[0]||(ne[0]=ot=>f.value=ot),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(s)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",Q5,[t.createVNode(M,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Y,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):ee.value&&f.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(s)("search.no_results",{filter:f.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",eH,[K.value.length?(t.openBlock(),t.createBlock(ze,{key:0,modelValue:J.value,"onUpdate:modelValue":ne[3]||(ne[3]=ot=>J.value=ot),"data-testid":"plugins-tabs",tabs:K.value,onChange:Ge},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",tH,[t.createElementVNode("p",nH,t.toDisplayString(t.unref(s)("plugins.select.tabs.kong.description")),1),t.createVNode(hg,{"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":j.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[1]||(ne[1]=ot=>U.$emit("plugin-clicked",ot))},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:t.withCtx(()=>[t.createElementVNode("div",rH,[t.renderSlot(U.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",oH,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.description")),1),y.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):t.createCommentVNode("",!0),t.createVNode(H5,{"can-create-custom-plugin":ve.value,"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[2]||(ne[2]=ot=>U.$emit("plugin-clicked",ot))},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:t.withCtx(()=>[t.createVNode(me,{"max-width":"300",text:t.unref(s)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createElementBlock("div",iH,[y.value?(t.openBlock(),t.createBlock(Ae,{key:0,appearance:"warning",class:"custom-plugins-warning",message:y.value},null,8,["message"])):t.createCommentVNode("",!0),t.createVNode(hg,{"can-delete-cloned-plugin":$e.value,"can-delete-custom-plugin":qe.value,"can-edit-cloned-plugin":Ve.value,"can-edit-custom-plugin":je.value,config:e.config,"hide-highlighted-plugins":f.value.length>0,"highlighted-plugins":j.value,"highlighted-plugins-title":r.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":H.value,"onDelete:success":de,onPluginClicked:ne[4]||(ne[4]=ot=>U.$emit("plugin-clicked",ot))},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-40b228cd"]]),sH={key:0,class:"highlighted-match"},e1=xe(t.defineComponent({__name:"HighlightedText",props:{text:{},indices:{}},setup(e){const n=e,r=t.computed(()=>ZR(n.text,n.indices));return(o,i)=>(t.openBlock(),t.createElementBlock("span",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,(a,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:s},[a.highlighted?(t.openBlock(),t.createElementBlock("span",sH,t.toDisplayString(a.text),1)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.text),1)],64))],64))),128))]))}}),[["__scopeId","data-v-91ae2f75"]]),lH={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},cH={class:"plugin-card-header"},dH={class:"plugin-card-title"},uH={key:0,class:"plugin-card-actions"},fH=["data-testid","title"],pH={key:0},mH=["title"],gH={class:"plugin-card-footer"},hH={class:"plugin-card-footer-extra"},yH={key:0,class:"custom-plugin-badges"},_H=xe(t.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(e,{emit:n}){const r=n,o=e,i=Ar.useRouter(),{i18n:{t:a}}=it.useI18n(),s=t.computed(()=>o.plugin.customPluginType==="cloned"&&o.plugin.clonedFromRef?o.plugin.clonedFromRef:o.plugin.id),l=t.computed(()=>!b.value||k.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")]),c=t.computed(()=>!!(!o.plugin.available||o.plugin.disabledMessage)),d=t.computed(()=>typeof o.config.getCustomEditRoute=="function"),u=t.computed(()=>o.plugin.customPluginType==="cloned"),f=t.computed(()=>u.value?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin),p=t.computed(()=>u.value?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin),m=t.computed(()=>!(o.config.app==="kongManager"&&o.plugin.customPluginType==="schema")),h=t.computed(()=>p.value&&d.value),y=t.computed(()=>f.value),g=t.computed(()=>!!(b.value&&!k.value&&m.value&&(y.value||h.value))),_=t.computed(()=>c.value?{}:b.value&&k.value&&o.config.createCustomRoute?o.config.createCustomRoute:o.config.getCreateRoute(o.plugin.id)),k=t.computed(()=>o.plugin.id==="custom-plugin-create"),b=t.computed(()=>o.plugin.group===q.PluginGroup.CUSTOM_PLUGINS),N=()=>{b.value&&r("custom-plugin-delete")},C=(w,S)=>{typeof o.config.getCustomEditRoute=="function"&&i.push(o.config.getCustomEditRoute(w,S))};return(w,S)=>{const x=t.resolveComponent("KButton"),T=t.resolveComponent("KDropdownItem"),I=t.resolveComponent("KDropdownMenu"),A=t.resolveComponent("KBadge"),v=t.resolveComponent("RouterLink"),V=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",lH,[t.createVNode(V,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createVNode(v,{class:t.normalizeClass(["plugin-select-card",{disabled:c.value}]),"data-testid":`${e.plugin.id}-card`,to:_.value},{default:t.withCtx(()=>[t.createElementVNode("div",cH,[t.createElementVNode("div",dH,[t.createVNode(t.unref(Sr.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:s.value,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!b.value})},[t.createVNode(e1,{indices:e.plugin.matchedIndices,text:e.plugin.name},null,8,["indices","text"])],2)]),g.value?(t.openBlock(),t.createElementBlock("div",uH,[t.createVNode(I,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:S[1]||(S[1]=t.withModifiers(()=>{},["stop","prevent"]))},{default:t.withCtx(()=>[t.createVNode(x,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(T,{key:0,"data-testid":"edit-plugin-schema",onClick:S[0]||(S[0]=t.withModifiers(O=>C(e.plugin.name,e.plugin.customPluginType),["stop","prevent"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),y.value?(t.openBlock(),t.createBlock(T,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":h.value,onClick:t.withModifiers(N,["stop","prevent"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["has-divider"])):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip")},[e.plugin.description?(t.openBlock(),t.createElementBlock("div",pH,[t.createElementVNode("div",{title:e.plugin.description},t.toDisplayString(e.plugin.description),9,mH)])):t.createCommentVNode("",!0)],8,fH),t.createElementVNode("div",gH,[t.createElementVNode("div",null,t.toDisplayString(k.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1),t.createElementVNode("div",hH,[l.value.length?(t.openBlock(),t.createElementBlock("div",yH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,O=>(t.openBlock(),t.createBlock(A,{key:O,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(O),1)]),_:2},1024))),128))])):t.createCommentVNode("",!0),t.renderSlot(w.$slots,"footer-extra",{},void 0,!0)])])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-9025e247"]]),bH=["data-testid"],kH={class:"group-icon-wrapper"},wH={class:"group-title-text"},CH=["data-testid"],EH=["data-testid"],t1=xe(t.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(e,{emit:n}){const r=e,o=t.computed(()=>{switch(r.name){case q.PluginGroup.FEATURED:return Ne.PopularIcon;case q.PluginGroup.AI:return Ne.BotIcon;case q.PluginGroup.ANALYTICS_AND_MONITORING:return Ne.AnalyticsIcon;case q.PluginGroup.AUTHENTICATION:return Ne.LockIcon;case q.PluginGroup.LOGGING:return Ne.ServiceDocumentIcon;case q.PluginGroup.MONETIZATION:return Ne.MoneyIcon;case q.PluginGroup.SECURITY:return Ne.SecurityIcon;case q.PluginGroup.SERVERLESS:return Ne.RuntimeServerlessIcon;case q.PluginGroup.TRAFFIC_CONTROL:return Ne.TrafficIcon;case q.PluginGroup.TRANSFORMATIONS:return Ne.TransformationIcon;case q.PluginGroup.DEPLOYMENT:return Ne.DeployIcon;case q.PluginGroup.CUSTOM_PLUGINS:return Ne.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=it.useI18n(),s=t.ref(!1),l=t.computed(()=>r.showAllCard?r.plugins:!s.value&&r.plugins.length>9?r.plugins.slice(0,8):r.plugins),c=t.computed(()=>!r.showAllCard&&!s.value&&r.plugins.length>9);function d(){s.value=!0}const u=t.ref(!1),f=t.ref(null),p=h=>{u.value=!0,f.value={id:h.id,name:h.name,group:h.group,customPluginType:h.customPluginType}},m=h=>{h&&(i("revalidate"),i("delete:success",{name:f.value?.name||"",group:f.value?.group,customPluginType:f.value?.customPluginType})),u.value=!1,f.value=null};return(h,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}-title`},[t.createElementVNode("div",kH,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(o.value),{color:`var(--kui-color-text-decorative-purple, ${t.unref(Uy)})`},null,8,["color"]))]),t.createElementVNode("span",wH,t.toDisplayString(e.name),1)],8,bH)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,g=>(t.openBlock(),t.createBlock(_H,{key:`plugin-card-${g.id}`,"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,plugin:g,onCustomPluginDelete:_=>p(g),onPluginClicked:_=>i("plugin-clicked",g)},t.createSlots({_:2},[g.gatewayVersion&&t.unref(QR)(t.unref(q.GATEWAY_VERSION_TIMESTAMP_MAP)[g.gatewayVersion])?{name:"footer-extra",fn:t.withCtx(()=>[t.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${g.id}-new-badge`},t.toDisplayString(t.unref(a)("labels.new")),9,EH)]),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)),c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:d},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,CH),u.value&&f.value?(t.openBlock(),t.createBlock(_d,{key:1,config:e.config,plugin:f.value,onClosed:m,onProceed:y[0]||(y[0]=g=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f9a9a47c"]]),NH={class:"plugin-select-grid"},SH={class:"empty-state-title"},AH={class:"empty-state-description"},xH={key:1},IH=xe(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["plugin-clicked","delete:success"],setup(e,{emit:n}){const r=_c.concat(bc),o=n,{i18n:{t:i}}=it.useI18n(),a=s=>{o("plugin-clicked",s)};return(s,l)=>{const c=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",NH,[Object.keys(e.pluginList||[]).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(c,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",SH,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",AH,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(r),d=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.pluginList?.[d]?(t.openBlock(),t.createElementBlock("div",{key:d},[t.createVNode(t1,{"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,name:d,plugins:e.pluginList[d]||[],"onDelete:success":l[0]||(l[0]=u=>o("delete:success",u)),onPluginClicked:l[1]||(l[1]=u=>a(u))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","name","plugins"])])):t.createCommentVNode("",!0)],64))),256)),e.pluginList?.["Query Result"]?(t.openBlock(),t.createElementBlock("div",xH,[t.createVNode(t1,{"can-delete-cloned-plugin":e.canDeleteClonedPlugin,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-cloned-plugin":e.canEditClonedPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"","onDelete:success":l[2]||(l[2]=d=>o("delete:success",d)),onPluginClicked:l[3]||(l[3]=d=>a(d))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-e3bf3819"]]),vH={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},TH=["title"],BH=["title"],OH={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},PH={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},VH=xe(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{},canDeleteCustomPlugin:{type:Boolean},canDeleteClonedPlugin:{type:Boolean},canEditCustomPlugin:{type:Boolean},canEditClonedPlugin:{type:Boolean}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const r=n,o=e,{i18n:{t:i}}=it.useI18n(),a=I=>I.customPluginType==="cloned"&&I.clonedFromRef?i("plugins.select.cloned_from_badge",{link:I.clonedFromRef}):I.customPluginType==="streaming"?i("plugins.select.streamed_custom_badge"):I.customPluginType?i("plugins.select.installed_custom_badge"):"",s=t.computed(()=>w.value.some(I=>b(I.plugin))),l=t.computed(()=>{const I=[{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&&I.push({key:"more-actions",hideLabel:!0}),I}),c=t.computed(()=>{if(!o.pluginList)return[];const I=Object.values(o.pluginList).flat();return Array.from(new Map(I.map(v=>[v.id,v])).values()).map(v=>({id:v.id,name:v.name,description:v.description,badge:a(v),plugin:v}))}),d=t.ref(0),u=t.ref(10),f=t.ref(1),p=t.ref(c.value),m=t.ref(!1),h=t.ref(null),y=I=>I.customPluginType==="cloned"&&I.clonedFromRef?I.clonedFromRef:I.id,g=I=>I?.customPluginType==="cloned",_=I=>!I?.customPluginType||o.config.app==="kongManager"&&I.customPluginType==="schema"?!1:g(I)?!!o.canDeleteClonedPlugin:!!o.canDeleteCustomPlugin,k=I=>!I?.customPluginType||typeof o.config.getCustomEditRoute!="function"||o.config.app==="kongManager"&&I.customPluginType==="schema"?!1:g(I)?!!o.canEditClonedPlugin:!!o.canEditCustomPlugin,b=I=>_(I)||k(I),N=I=>{m.value=!0,h.value={id:I.id,name:I.name,group:I.group,customPluginType:I.customPluginType}},C=I=>{I&&(r("revalidate"),r("delete:success",{name:h.value?.name||"",group:h.value?.group,customPluginType:h.value?.customPluginType})),m.value=!1,h.value=null},w=t.computed(()=>{const I=p.value.length,A=Math.max(1,Math.ceil(I/u.value)),V=(Math.min(f.value,A)-1)*u.value;return p.value.slice(V,V+u.value)});t.watch(c,()=>{p.value=[...c.value],f.value=1,d.value++});const S=({page:I})=>{f.value=I},x=({pageSize:I})=>{u.value=I},T=I=>{const{sortColumnKey:A,sortColumnOrder:v}=I;A==="name"&&(p.value=[...p.value].sort((V,O)=>{const $=(V[A]||"").toLowerCase(),Q=(O[A]||"").toLowerCase();return $<Q?v==="asc"?-1:1:$>Q?v==="asc"?1:-1:0}))};return(I,A)=>{const v=t.resolveComponent("KBadge"),V=t.resolveComponent("KButton"),O=t.resolveComponent("KDropdownItem"),$=t.resolveComponent("KDropdown"),Q=t.resolveComponent("KTableView"),pe=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(pe,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(Q,{key:d.value,class:"plugin-catalog-table","client-sort":"",data:w.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:c.value.length,currentPage:f.value,initialPageSize:u.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:S,onPageSizeChange:x,onSort:T},{name:t.withCtx(({row:H})=>[t.createElementVNode("span",vH,[t.createVNode(t.unref(Sr.PluginIcon),{"data-testid":`plugin-catalog-list-view-${H.plugin.id}-icon`,name:y(H.plugin),size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:H.name},[t.createVNode(e1,{indices:H.plugin?.matchedIndices,text:H.name},null,8,["indices","text"])],8,TH),H.badge?(t.openBlock(),t.createBlock(v,{key:0,appearance:"info",class:"plugin-name-badge","data-testid":"plugin-catalog-list-view-custom-badge"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(H.badge),1)]),_:2},1024)):t.createCommentVNode("",!0)])]),description:t.withCtx(({row:H})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:H.description},t.toDisplayString(H.description),9,BH)]),action:t.withCtx(({row:H})=>[t.createElementVNode("div",OH,[t.createVNode(V,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:o.config.getCreateRoute(H.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:H})=>[b(H.plugin)?(t.openBlock(),t.createElementBlock("div",PH,[t.createVNode($,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>[k(H.plugin)?(t.openBlock(),t.createBlock(O,{key:0,"data-testid":"edit-plugin-schema",item:{label:t.unref(i)("actions.edit"),to:e.config.getCustomEditRoute?.(H.plugin.name,H.plugin.customPluginType)}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["item"])):t.createCommentVNode("",!0),_(H.plugin)?(t.openBlock(),t.createBlock(O,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":k(H.plugin),onClick:()=>N(H.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["has-divider","onClick"])):t.createCommentVNode("",!0)]),default:t.withCtx(()=>[t.createVNode(t.unref(Ne.MoreIcon),{color:`var(--kui-color-text-neutral, ${t.unref(sr)})`,size:`var(--kui-icon-size-30, ${t.unref(Tn)})`},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),m.value&&h.value?(t.openBlock(),t.createBlock(_d,{key:0,config:e.config,plugin:h.value,onClosed:C,onProceed:A[0]||(A[0]=H=>C(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-49cad2d2"]]),$H={class:"plugin-catalog","data-testid":"plugin-catalog"},RH={class:"plugin-filter","data-testid":"plugin-filter"},LH={class:"plugin-filter-title"},DH={class:"featured-title"},MH={class:"plugin-featured-filter"},FH=["data-testid"],jH={class:"group-title"},UH={class:"plugin-type-filter"},KH=["data-testid"],qH={class:"plugins-container"},GH={class:"plugins-filter-input-container"},zH={class:"icon-container"},HH={key:0},WH={key:3,"aria-live":"polite",class:"plugins-results-container"},YH=xe(t.defineComponent({__name:"PluginCatalog",props:{config:{},ignoredPlugins:{default:()=>[]},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(e,{emit:n}){const r=n,{i18n:{t:o}}=it.useI18n(),{pluginMetaData:i}=it.usePluginMetaData(),{getMessageFromError:a}=ue.useErrors(),{sortAlpha:s,objectsAreEqual:l}=ue.useHelpers(),c=e,{axiosInstance:d}=ue.useAxios(c.config?.axiosRequestConfig),u=t.useTemplateRef("filter-input"),f=t.ref(""),p=t.ref(!1),m=t.ref(!1),h=t.ref(Object.fromEntries(_c.concat(bc).map(Z=>[Z,!1]))),y=t.ref(!0),g=t.ref(!1),_=t.ref(""),k=t.ref(""),b=t.ref([]),N=t.ref([]),C=t.ref([]),w=t.ref({}),S=t.ref([]),x=t.ref(!1),T=t.ref(null),I=t.ref(!1),A=t.computed(()=>x.value?Ne.GridIcon:Ne.ListIcon),v=t.inject(Bn.KM_2485_CLONED_PLUGINS,!1),V=t.computed(()=>t.unref(v)),O=Z=>Z==="none"||Z==="disabled"?new Set:new Set(Array.isArray(Z)?Z:[Z]),$=t.computed(()=>O(c.customPluginSupport)),Q=t.computed(()=>[...$.value].sort().join("|")),pe=t.computed(()=>$.value.has("streaming")),H=t.computed(()=>V.value&&$.value.has("cloned")),j=Z=>gi.isAxiosError(Z)&&Z.code==="ERR_CANCELED",D=Z=>a(Z).toLowerCase().includes("requires a license"),ee=t.computed(()=>{let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].availablePlugins}`;if(c.config.app==="konnect")Z=Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||"");else if(c.config.app==="kongManager"&&c.config.gatewayInfo?.edition==="community")return`${c.config.apiBaseUrl}${nt.select[c.config.app].availablePluginsForOss}`;return Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}),K=t.computed(()=>{if(pe.value){let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].streamingCustomPlugins}`;return c.config.app==="konnect"?Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}return null}),J=t.computed(()=>{if(H.value){let Z=`${c.config.apiBaseUrl}${nt.select[c.config.app].clonedPlugins}`;return c.config.app==="konnect"?Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")}return null}),ce=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let Z=`${c.config.apiBaseUrl}${nt.list[c.config.app].forEntity}`;return c.config.app==="konnect"&&(Z=Z.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||"")),Z.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"").replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),z=t.computed(()=>{if(!w.value)return{};const Z=Object.entries(h.value).filter(([,Y])=>Y).map(([Y])=>Y);let U={};Z.length===0&&(U=w.value),Z.forEach(Y=>{w.value[Y]&&(U[Y]=w.value[Y])});const ne=f.value.toLowerCase();if(!ne)return U;const L=new Map;for(const Y of Object.values(U))for(const ae of Y??[]){if(L.has(ae.id))continue;const me=XR(ne,ae.name,ae.id);me.matched&&L.set(ae.id,{plugin:{...ae,matchedIndices:me.indices},score:me.score})}const M=Array.from(L.values()).sort((Y,ae)=>Y.score-ae.score||Y.plugin.name.localeCompare(ae.plugin.name)).map(Y=>Y.plugin);return M.length?{"Query Result":M}:{}}),oe=t.computed(()=>Object.keys(z.value).length>0),Pe=t.computed(()=>Object.keys(w.value).length>0&&!oe.value),Ee=()=>{Object.keys(h.value).forEach(Z=>{h.value[Z]=!1})},Ge=()=>{const Z=new Map(C.value.map(M=>[M.name,M])),U=new Set(N.value.map(M=>M.name)),ne=new Set([...U,...Z.keys()]),L=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...b.value,...ne])].filter(M=>!c.ignoredPlugins.includes(M)).filter(M=>{if(!c.config.entityType)return M;const Y=Z.has(M)?Z.get(M).ref:M;return c.config.entityType==="services"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[Y]&&!i[Y].scope.includes(q.PluginScope.CONSUMER)?!1:M}).reduce((M,Y)=>{const ae=i[Y]&&i[Y].name||Y,me=Z.get(Y),Ae=U.has(Y),ze={...i[Y],id:Y,name:ae,available:b.value.includes(Y)||!!me||Ae,disabledMessage:"",group:i[Y]?.group||q.PluginGroup.CUSTOM_PLUGINS};ze.group===q.PluginGroup.CUSTOM_PLUGINS&&(me?(ze.customPluginType="cloned",ze.clonedFromRef=me.ref):Ae?ze.customPluginType="streaming":ze.customPluginType="schema"),c.disabledPlugins&&(ze.disabledMessage=c.disabledPlugins[Y]);const ot=ze.group||o("plugins.select.misc_plugins");let F=M[ot];return F||(F=[]),F.push(ze),F.sort(s("name")),M[ot]=F,M},{});if(c.highlightedPluginIds&&c.highlightedPluginIds.length>0){const M=new Set(Object.values(L).flat().map(ae=>ae?.id)),Y=c.highlightedPluginIds.flatMap(ae=>{const me=i[ae];return!me||!M.has(ae)?[]:{...me,id:ae,name:me.name||ae,available:b.value.includes(ae),disabledMessage:c.disabledPlugins?.[ae]||"",group:me.group||q.PluginGroup.CUSTOM_PLUGINS}}).filter(Boolean);Y.length>0&&(L[q.PluginGroup.FEATURED]=Y)}return L};t.watch(()=>c.disabledPlugins,(Z,U)=>{!l(Z||{},U||{})&&!y.value&&(w.value=Ge())}),t.watch(()=>c.ignoredPlugins,(Z,U)=>{!l(Z,U)&&!y.value&&(w.value=Ge())}),t.watch(y,Z=>{r("loading",Z)});const se=t.ref(!1),X=t.ref(!1),he=t.ref(!1),ve=t.ref(!1),je=t.ref(!1),qe=t.ref(!1),Be=async()=>{try{const[Z,U,ne,L,M,Y]=await Promise.all([c.canEditCustomPlugin(),c.canDeleteCustomPlugin(),c.canReadCustomPlugin(),c.canEditClonedPlugin?c.canEditClonedPlugin():Promise.resolve(null),c.canDeleteClonedPlugin?c.canDeleteClonedPlugin():Promise.resolve(null),c.canReadClonedPlugin()]);se.value=Z,X.value=U,he.value=ne,ve.value=L??Z,je.value=M??U,qe.value=Y}catch{se.value=!1,X.value=!1,he.value=!1,ve.value=!1,je.value=!1,qe.value=!1}},Ve=async Z=>{if(!ce.value){S.value=[];return}try{const{data:{data:U}}=await d.get(ce.value,{signal:Z});U?.length&&(S.value=U.reduce((ne,L)=>(L.name&&ne.push(L.name),ne),[]))}catch(U){j(U)||(S.value=[])}},$e=async Z=>{const U=[];K.value&&he.value&&U.push(yd(d,K.value,Z).then(ne=>{N.value=ne}).catch(ne=>{j(ne)||k.value||(k.value=a(ne)??o("plugins.select.tabs.custom.fetch_error"))})),J.value&&qe.value&&U.push(yd(d,J.value,Z).then(ne=>{C.value=ne}).catch(ne=>{if(j(ne))return;const L=D(ne);(L||!k.value)&&(k.value=L?o("plugins.select.tabs.custom.license_required"):a(ne)??o("plugins.select.tabs.custom.fetch_error"))})),U.push(Ve(Z)),await Promise.allSettled(U)},Ke=async()=>{T.value?.abort();const Z=new AbortController;T.value=Z,y.value=!0,g.value=!1,_.value="",k.value="",b.value=[],N.value=[],C.value=[],S.value=[];try{const{data:U}=await d.get(ee.value,{signal:Z.signal});if(c.config.app==="konnect"){const{names:ne}=U;b.value=ne||[]}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:ne}}=U;b.value=ne?Object.keys(ne):[]}await $e(Z.signal),w.value=Ge()}catch(U){j(U)||(g.value=!0,_.value=a(U))}finally{T.value===Z&&!Z.signal.aborted&&(y.value=!1)}},de=async({name:Z})=>{Z&&(r("delete-custom:success",Z),await Ke())};return t.onMounted(async()=>{I.value=!0,u.value?.input?.focus(),await Be(),await Ke()}),t.watch(()=>[c.config.app==="konnect"?c.config.controlPlaneId:void 0,c.config.workspace,c.config.entityType,c.config.entityId,c.config.app==="kongManager"?c.config.gatewayInfo?.edition:void 0,Q.value,V.value],async()=>{I.value&&(await Be(),await Ke())}),t.onBeforeUnmount(()=>{T.value?.abort()}),(Z,U)=>{const ne=t.resolveComponent("KButton"),L=t.resolveComponent("KCheckbox"),M=t.resolveComponent("KBadge"),Y=t.resolveComponent("KCollapse"),ae=t.resolveComponent("KInput"),me=t.resolveComponent("KSkeletonBox"),Ae=t.resolveComponent("KSkeleton"),ze=t.resolveComponent("KEmptyState"),ot=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock("div",$H,[t.createElementVNode("div",RH,[t.createElementVNode("div",LH,[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.select.filter.title"))+" ",1),t.createVNode(ne,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(h.value).some(F=>F),onClick:Ee},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),t.createVNode(Y,{modelValue:p.value,"onUpdate:modelValue":U[0]||(U[0]=F=>p.value=F)},{title:t.withCtx(()=>[t.createElementVNode("div",DH,t.toDisplayString(t.unref(o)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",MH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(_c),F=>(t.openBlock(),t.createElementBlock("div",{key:F,class:"plugin-filter-item","data-testid":`plugin-filter-item-${F}`},[t.createVNode(L,{modelValue:h.value[F],"onUpdate:modelValue":te=>h.value[F]=te,label:F},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(M,{appearance:"neutral"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(w.value?.[F]?.length||0),1)]),_:2},1024)],8,FH))),128))])]),_:1},8,["modelValue"]),t.createVNode(Y,{modelValue:m.value,"onUpdate:modelValue":U[1]||(U[1]=F=>m.value=F)},{title:t.withCtx(()=>[t.createElementVNode("div",jH,t.toDisplayString(t.unref(o)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",UH,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(bc),F=>(t.openBlock(),t.createElementBlock("div",{key:F,class:"plugin-filter-item","data-testid":`plugin-filter-item-${F}`},[t.createVNode(L,{modelValue:h.value[F],"onUpdate:modelValue":te=>h.value[F]=te,"data-testid":`plugin-filter-checkbox-${F}`,label:F},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),t.createVNode(M,{appearance:"neutral","data-testid":`plugin-filter-count-${F}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(w.value?.[F]?.length||0),1)]),_:2},1032,["data-testid"])],8,KH))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",qH,[t.createElementVNode("div",GH,[t.createVNode(ae,{ref:"filter-input",modelValue:f.value,"onUpdate:modelValue":U[2]||(U[2]=F=>f.value=F),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(o)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",zH,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(A.value),{class:"plugins-filter-icon",color:`var(--kui-icon-color-primary, ${t.unref(JS)})`,onClick:U[3]||(U[3]=F=>x.value=!x.value)},null,8,["color"]))])]),y.value?(t.openBlock(),t.createElementBlock("section",HH,[t.createVNode(me,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(Ae,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):g.value?(t.openBlock(),t.createBlock(ze,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):Pe.value&&f.value?(t.openBlock(),t.createBlock(ze,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(o)("search.no_results",{filter:f.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",WH,[k.value?(t.openBlock(),t.createBlock(ot,{key:0,appearance:"warning",class:"custom-plugins-warning",message:k.value},null,8,["message"])):t.createCommentVNode("",!0),x.value?(t.openBlock(),t.createBlock(VH,{key:1,"can-delete-cloned-plugin":je.value,"can-delete-custom-plugin":X.value,"can-edit-cloned-plugin":ve.value,"can-edit-custom-plugin":se.value,config:e.config,"plugin-list":z.value,"onDelete:success":de},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"])):(t.openBlock(),t.createBlock(IH,{key:2,"can-delete-cloned-plugin":je.value,"can-delete-custom-plugin":X.value,"can-edit-cloned-plugin":ve.value,"can-edit-custom-plugin":se.value,config:e.config,"plugin-list":z.value,"onDelete:success":de,onPluginClicked:U[4]||(U[4]=F=>Z.$emit("plugin-clicked",F))},null,8,["can-delete-cloned-plugin","can-delete-custom-plugin","can-edit-cloned-plugin","can-edit-custom-plugin","config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-a7e2cc9c"]]),JH={key:1,class:"datakit-config-card-canvas"},XH={class:"config-card-details-label","data-testid":"datakit-configuration-label"},ZH={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},QH={class:"canvas-wrapper"},e9=xe(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(e){const n=t.computed(()=>xC.safeParse(e.pluginData?.config).success);return Cp(e.pluginData),(r,o)=>{const i=t.resolveComponent("KLabel");return n.value?(t.openBlock(),t.createElementBlock("div",JH,[t.createElementVNode("div",XH,[t.createVNode(i,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",ZH,[t.createElementVNode("div",QH,[t.createVNode(eg,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(t.openBlock(),t.createBlock(t.unref(ue.ConfigCardItem),{key:0,item:e.item},null,8,["item"]))}}}),[["__scopeId","data-v-9a3ef1ac"]]),t9={class:"kong-ui-entity-plugin-config-card"},n9={class:"name-cell-wrapper"},r9={class:"info-name"},o9={key:0},i9={key:0},a9={key:0},s9={key:0},l9={key:0},yg="config",c9=xe(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e?.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showNameAsLink:{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(e,{emit:n}){const r=n,o=e,{i18n:{t:i}}=it.useI18n(),a=it.usePluginMetaData(),{setFieldType:s}=it.usePluginHelpers(),{getPropValue:l}=ue.useHelpers(),c=t.computed(()=>{let I=nt.item[o.config.app]?.[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 A=o.expandPartial?"&":"?";I=I.concat(`${A}__ui_data=true`)}return I}),d=t.computed(()=>{const I={},A=S.value?.fields||[];for(let v=0;v<A.length;v++){const V=S.value.fields[v],O=Object.keys(V)?.[0];s(I,O,V[O])}return{...I,instance_name:{section:ue.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ue.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ue.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ue.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ue.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ue.ConfigurationSchemaType.BadgeTag,section:ue.ConfigurationSchemaSection.Basic,order:7}}}),u=t.computed(()=>S.value?.fields?S.value.fields?.find(A=>Object.keys(A)?.[0]===yg)?.[yg]?.fields||[]:[]),f=t.computed(()=>{const I={};if(!u.value)return I;for(let A=0;A<u.value?.length;A++){const v=u.value[A],V=Object.keys(v)?.[0],O=v[V];O.required&&(I[V]={order:1}),s(I,V,O)}return I}),p=I=>{const A=a.pluginMetaData[o.config.pluginType]?.scope;return A?Object.fromEntries(Object.entries(I).filter(([v,V])=>V?!0:!(v==="service"&&!A.includes(q.PluginScope.SERVICE)||v==="route"&&!A.includes(q.PluginScope.ROUTE)||v==="consumer"&&!A.includes(q.PluginScope.CONSUMER)||v==="consumer_group"&&!A.includes(q.PluginScope.CONSUMER_GROUP)))):I},m=I=>eo(I,"__ui_data"),{getMessageFromError:h}=ue.useErrors(),{axiosInstance:y}=ue.useAxios(o.config?.axiosRequestConfig),{resolveReferenceNames:g,getReferenceName:_,isReferenceNameLoading:k}=it.useReferenceEntityNames({config:o.config,axiosInstance:y,onError:I=>r("fetch:error",I)}),b=(I,A)=>_(I)||A,N=(I,A)=>_(I)?A:void 0,C=I=>{r("fetch:success",I),o.showNameAsLink&&g(I)},w=t.computed(()=>{let I=`${o.config.apiBaseUrl}${nt.form[o.config.app].pluginSchema}`;return o.config.app==="konnect"&&(I=I.replace(/{controlPlaneId}/gi,o.config?.controlPlaneId||"")),I.replace(/\/{workspace}/gi,o.config?.workspace?`/${o.config.workspace}`:"").replace(/{plugin}/gi,o.config.pluginType)}),S=t.ref({});ue.useSchemaProvider(S);const x=t.ref(!1),T=t.ref("");return t.onBeforeMount(async()=>{x.value=!0;try{const{data:I}=await y.get(w.value);S.value=I}catch(I){T.value=h(I),r("error:fetch-schema",I)}finally{x.value=!1}}),(I,A)=>{const v=t.resolveComponent("KSkeleton"),V=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",t9,[x.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):T.value?(t.openBlock(),t.createBlock(V,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(T.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ue.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ue.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":yg,"plugin-config-schema":f.value,"record-resolver":p,"onFetch:error":A[0]||(A[0]=$=>I.$emit("fetch:error",$)),"onFetch:success":C,onLoading:A[1]||(A[1]=$=>I.$emit("loading",$))},t.createSlots({name:t.withCtx($=>[t.createElementVNode("div",n9,[t.createVNode(t.unref(Sr.PluginIcon),{class:"plugin-icon",name:t.unref(l)("rowValue",$),size:24},null,8,["name"]),t.createElementVNode("span",r9,t.toDisplayString(t.unref(a).getDisplayName(t.unref(l)("rowValue",$))),1)])]),consumer:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("consumer",t.unref(l)("rowValue",$).id),to:e.config.getConsumerViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("consumer",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("consumer"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"consumer-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",o9,"–"))]),route:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("route",t.unref(l)("rowValue",$).id),to:e.config.getRouteViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("route",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("route"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"route-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",i9,"–"))]),service:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("service",t.unref(l)("rowValue",$).id),to:e.config.getServiceViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("service",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("service"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"service-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",a9,"–"))]),consumer_group:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$).id,value:b("consumer_group",t.unref(l)("rowValue",$).id),to:e.config.getConsumerGroupViewRoute?.(t.unref(l)("rowValue",$).id),subtitle:N("consumer_group",t.unref(l)("rowValue",$).id),subtitleLoading:t.unref(k)("consumer_group"),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(l)("rowValue",$).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",s9,"–"))]),partials:t.withCtx($=>[t.unref(l)("rowValue",$)?e.showNameAsLink?(t.openBlock(),t.createBlock(t.unref(ue.InternalLinkItem),{key:1,item:{key:t.unref(l)("rowValue",$)?.[0]?.id,value:t.unref(l)("rowValue",$)?.[0]?.id+(t.unref(l)("rowValue",$)?.[0]?.name?"/"+t.unref(l)("rowValue",$)?.[0]?.name:""),type:t.unref(ue.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(l)("rowValue",$)?.[0]?.id,"partial")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(l)("row",$).label}),"data-testid":"partial-copy-uuid",text:t.unref(l)("rowValue",$)?.[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",l9,"–"))]),_:2},[e.config.pluginType==="datakit"&&e.config.app==="konnect"?{name:"config-card-item-nodes",fn:t.withCtx($=>[t.createVNode(e9,{item:$.row,"plugin-data":$.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-915bf6f0"]]),d9=t.defineComponent({__name:"AuthPluginOnboardingCard",props:{pluginType:{},authMode:{},hasExistingEntity:{type:Boolean},createEntityTo:{},onCreateEntityClick:{type:Function},addCredentialTo:{},onAddCredentialClick:{type:Function}},emits:["dismiss"],setup(e){const{i18n:{t:n}}=it.useI18n(),r=t.computed(()=>{const o=e.authMode==="kong-identity",i=[{icon:Ne.GroupsIcon,appearance:"decorative-aqua",title:n(o?"onboarding.create_principal.title":"onboarding.create_consumer.title"),description:n(o?"onboarding.create_principal.description":`onboarding.${e.pluginType}.create_consumer.description`),to:e.createEntityTo,onClick:e.onCreateEntityClick}];return e.hasExistingEntity&&(e.addCredentialTo||e.onAddCredentialClick)&&i.push({icon:Ne.PasskeyIcon,appearance:"decorative-purple",title:n(o?"onboarding.add_principal_credential.title":`onboarding.${e.pluginType}.add_credential.title`),description:n(o?"onboarding.add_principal_credential.description":`onboarding.${e.pluginType}.add_credential.description`),to:e.addCredentialTo,onClick:e.onAddCredentialClick}),i});return(o,i)=>(t.openBlock(),t.createBlock(t.unref(ue.OnboardingCard),{items:r.value,subtitle:t.unref(n)(`onboarding.${e.pluginType}.subtitle`),title:t.unref(n)(`onboarding.${e.pluginType}.title`),onDismiss:i[0]||(i[0]=a=>o.$emit("dismiss"))},null,8,["items","subtitle","title"]))}}),u9=["innerHTML"],n1=xe(t.defineComponent({inheritAttrs:!1,__name:"CredentialSecretField",props:{placeholder:{},help:{},labels:{},autofocus:{type:Boolean},name:{},labelAttributes:{},generator:{type:Function}},emits:["update:modelValue"],setup(e,{emit:n}){const r=t.useAttrs(),o=t.createPropsRestProxy(e,["name","generator"]),i=n,{value:a,hide:s,...l}=$t(t.toRef(()=>e.name)),c=Jt(l.path,t.toRef({...o,...r}));function d(u){a.value=u===""?l.emptyValue.value:u,i("update:modelValue",a.value)}return(u,f)=>{const p=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(ue.SensitiveInput),t.mergeProps({key:1},t.unref(c),{class:"ff-credential-secret-field","data-testid":`ff-${l.path.value}`,generator:e.generator??t.unref(iw),mode:"create","model-value":t.unref(a)??"","onUpdate:modelValue":d}),t.createSlots({_:2},[t.unref(c).labelAttributes?.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,u9)],!0)]),key:"0"}:void 0]),1040,["data-testid","generator","model-value"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-ca6a15c0"]]);function bd(e,n){let r=`${e.apiBaseUrl}${n}`;return e.app==="konnect"&&(r=r.replace(/{controlPlaneId}/gi,e.controlPlaneId||"")),r.replace(/\/{workspace}/gi,e.workspace?`/${e.workspace}`:"")}const r1=xe(t.defineComponent({__name:"CredentialConfigurationForm",props:{config:{},credentialType:{}},emits:["update:modelValue","update:loading","error:fetch-schema"],setup(e,{emit:n}){const r=new Set(["id","created_at","consumer"]),{i18n:{t:o}}=it.useI18n(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),s=t.ref({}),l=g=>{s.value=g,i("update:modelValue",g)},c=t.ref(!1);t.watch(c,g=>i("update:loading",g),{immediate:!0});const d=t.ref(),u=g=>Object.keys(g)[0],f=t.computed(()=>{if(d.value)return{...d.value,type:"record",fields:d.value.fields.filter(g=>!r.has(u(g))).map(g=>{const _=u(g),k=g[_];return k.description||!k.hint?g:{[_]:{...k,description:k.hint}}})}}),p=[{match:"tags",component:Lo,propsOverrides:{help:o("plugins.form.fields.tags.help"),placeholder:o("plugins.form.fields.tags.placeholder")}},{match:"key",component:n1},{match:"secret",component:n1,propsOverrides:{labels:{generateLabel:o("plugins.form.fields.secret.generateLabel")}}}],m=t.computed(()=>Br[e.credentialType]?.schemaEndpoint),h=t.computed(()=>bd(e.config,nt.form[e.config.app].credentialSchema).replace(/{plugin}/gi,m.value));return(async()=>{c.value=!0;try{if(e.config.app==="konnect")d.value=Wk[m.value];else{const{data:g}=await a.get(h.value);d.value=g}}catch(g){i("error:fetch-schema",g)}finally{c.value=!1}})(),(g,_)=>{const k=t.resolveComponent("KSkeleton");return c.value?(t.openBlock(),t.createBlock(k,{key:0,type:"form"})):f.value?(t.openBlock(),t.createBlock(Ym,{key:1,class:"credential-fields","field-renderers":p,model:s.value,"on-form-change":l,"plugin-name":e.credentialType,schema:f.value},null,8,["model","plugin-name","schema"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-b8d3299a"]]),f9={class:"kong-ui-entities-create-consumer-credential-form"},p9={class:"onboarding-wizard-header"},m9={class:"onboarding-wizard-body"},g9={class:"consumer-note"},h9={class:"onboarding-wizard-footer"},y9=xe(t.defineComponent({__name:"CreateConsumerCredentialForm",props:{config:{},credentialType:{}},emits:["cancel","success"],setup(e,{emit:n}){const{i18n:{t:r}}=it.useI18n(),{getMessageFromError:o}=ue.useErrors(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),s=t.ref(1),l=t.ref(!1),c=t.ref(""),d=t.ref(null),u=t.ref({}),f=t.reactive({username:"",customId:"",tags:""}),p=t.computed(()=>!!f.username||!!f.customId),m=t.computed(()=>[{label:r("onboarding.steps.consumer.step"),state:s.value===1?"active":"completed"},{label:r("onboarding.steps.credential.step"),state:s.value===2?"active":"default"}]),h=t.computed(()=>({username:f.username||null,custom_id:f.customId||null,tags:f.tags.split(",").map(C=>C.trim()).filter(C=>C!=="")})),y=C=>{c.value=o(C)},g=async()=>{c.value="",l.value=!0;try{const{data:C}=await a.post(bd(e.config,nt.consumers[e.config.app]),h.value);d.value={id:C?.id,username:C?.username,custom_id:C?.custom_id},s.value=2}catch(C){c.value=o(C)}finally{l.value=!1}},_=t.computed(()=>{const C=Br[e.credentialType]?.endpoint||"/plugins";return`consumers/${d.value?.id}${C}`}),k=t.computed(()=>bd(e.config,nt.form[e.config.app].credential.create).replace(/{resourceEndpoint}/gi,_.value)),b=async()=>{if(d.value){l.value=!0,c.value="";try{const{data:C}=await a.post(k.value,u.value);i("success",{consumer:d.value,credential:C})}catch(C){c.value=o(C)}finally{l.value=!1}}},N=()=>{s.value===1?i("cancel"):d.value&&i("success",{consumer:d.value,credential:null})};return(C,w)=>{const S=t.resolveComponent("KStepper"),x=t.resolveComponent("KInput"),T=t.resolveComponent("KAlert"),I=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",f9,[t.createElementVNode("div",p9,[t.createVNode(S,{"data-testid":"wizard-stepper",steps:m.value},null,8,["steps"])]),t.createElementVNode("div",m9,[s.value===1?(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:0,description:t.unref(r)("onboarding.steps.consumer.description"),title:t.unref(r)("onboarding.steps.consumer.title")},{default:t.withCtx(()=>[t.createElementVNode("div",g9,t.toDisplayString(t.unref(r)("onboarding.steps.consumer.note")),1),t.createVNode(x,{modelValue:f.username,"onUpdate:modelValue":w[0]||(w[0]=A=>f.username=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-username",label:t.unref(r)("onboarding.consumer_fields.username_label"),placeholder:t.unref(r)("onboarding.consumer_fields.username_placeholder"),type:"text"},null,8,["modelValue","label","placeholder"]),t.createVNode(x,{modelValue:f.customId,"onUpdate:modelValue":w[1]||(w[1]=A=>f.customId=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-custom-id",label:t.unref(r)("onboarding.consumer_fields.custom_id_label"),placeholder:t.unref(r)("onboarding.consumer_fields.custom_id_placeholder"),type:"text"},null,8,["modelValue","label","placeholder"]),t.createVNode(x,{modelValue:f.tags,"onUpdate:modelValue":w[2]||(w[2]=A=>f.tags=A),modelModifiers:{trim:!0},autocomplete:"off","data-testid":"consumer-form-tags",help:t.unref(r)("plugins.form.fields.tags.help"),label:t.unref(r)("plugins.form.fields.tags.label"),placeholder:t.unref(r)("plugins.form.fields.tags.placeholder"),type:"text"},null,8,["modelValue","help","label","placeholder"])]),_:1},8,["description","title"])):(t.openBlock(),t.createBlock(t.unref(ue.EntityFormBlock),{key:1,title:t.unref(r)("onboarding.steps.credential.title")},{default:t.withCtx(()=>[t.createVNode(r1,{config:e.config,"credential-type":e.credentialType,"onError:fetchSchema":y,"onUpdate:loading":w[3]||(w[3]=A=>l.value=A),"onUpdate:modelValue":w[4]||(w[4]=A=>u.value=A)},null,8,["config","credential-type"])]),_:1},8,["title"])),c.value?(t.openBlock(),t.createBlock(T,{key:2,appearance:"danger",class:"onboarding-wizard-error","data-testid":"wizard-error",message:c.value},null,8,["message"])):t.createCommentVNode("",!0)]),t.createElementVNode("div",h9,[t.createVNode(I,{appearance:"tertiary","data-testid":"wizard-secondary-action",onClick:N},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.value===1?t.unref(r)("onboarding.actions.exit_setup"):t.unref(r)("onboarding.actions.skip")),1)]),_:1}),t.createVNode(I,{appearance:"primary","data-testid":"wizard-primary-action",disabled:l.value||s.value===1&&!p.value,onClick:w[5]||(w[5]=A=>s.value===1?g():b())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(s.value===1?t.unref(r)("onboarding.actions.save_and_next"):t.unref(r)(`onboarding.${e.credentialType}.credential_action`)),1)]),_:1},8,["disabled"])])])}}}),[["__scopeId","data-v-f4c3baf8"]]),_9=xe(t.defineComponent({__name:"AddCredentialToConsumerForm",props:{config:{},credentialType:{}},emits:["cancel","success"],setup(e,{emit:n}){const{i18n:{t:r}}=it.useI18n(),{getMessageFromError:o}=ue.useErrors(),i=n,{axiosInstance:a}=ue.useAxios(e.config?.axiosRequestConfig),{debouncedQueryChange:s,loading:l,results:c,loadItems:d}=ue.useDebouncedFilter(e.config,nt.consumers[e.config.app],"",{fetchedItemsKey:"data",searchKeys:["username","id"]}),u=t.computed(()=>c.value.map(N=>({label:N.username||N.custom_id,value:N.id}))),f=t.ref(""),p=t.ref(!1),m=t.ref(""),h=t.ref(!1),y=t.ref({}),g=t.computed(()=>!!f.value&&!h.value&&!p.value),_=t.computed(()=>{const N=Br[e.credentialType].endpoint;return`consumers/${f.value}${N}`}),k=t.computed(()=>bd(e.config,nt.form[e.config.app].credential.create).replace(/{resourceEndpoint}/gi,_.value)),b=async()=>{if(g.value){p.value=!0,m.value="";try{const{data:N}=await a.post(k.value,y.value);i("success",N)}catch(N){m.value=o(N)}finally{p.value=!1}}};return d(),(N,C)=>{const w=t.resolveComponent("KSelect");return t.openBlock(),t.createBlock(t.unref(ue.EntityBaseForm),{"align-action-button-to-left":"","can-submit":g.value,config:e.config,"entity-type":t.unref(ue.SupportedEntityType).Other,"error-message":m.value,"form-fields":y.value,"is-readonly":p.value,"no-validate":"","wrapper-component":"div",onCancel:C[4]||(C[4]=S=>N.$emit("cancel")),onSubmit:b},{default:t.withCtx(()=>[t.createVNode(t.unref(ue.EntityFormBlock),{description:t.unref(r)("onboarding.choose_consumer.description"),step:1,title:t.unref(r)("onboarding.choose_consumer.title")},{default:t.withCtx(()=>[t.createVNode(w,{modelValue:f.value,"onUpdate:modelValue":C[0]||(C[0]=S=>f.value=S),"data-testid":"choose-consumer-select","enable-filtering":"",items:u.value,label:t.unref(r)("onboarding.choose_consumer.select_label"),loading:t.unref(l),placeholder:t.unref(r)("onboarding.choose_consumer.select_placeholder"),width:"100%",onQueryChange:t.unref(s)},null,8,["modelValue","items","label","loading","placeholder","onQueryChange"])]),_:1},8,["description","title"]),t.createVNode(t.unref(ue.EntityFormBlock),{step:2,title:t.unref(r)("onboarding.add_credential.title")},{default:t.withCtx(()=>[t.createVNode(r1,{config:e.config,"credential-type":e.credentialType,"onError:fetchSchema":C[1]||(C[1]=S=>m.value=t.unref(o)(S)),"onUpdate:loading":C[2]||(C[2]=S=>h.value=S),"onUpdate:modelValue":C[3]||(C[3]=S=>y.value=S)},null,8,["config","credential-type"])]),_:1},8,["title"])]),_:1},8,["can-submit","config","entity-type","error-message","form-fields","is-readonly"])}}}),[["__scopeId","data-v-c6ff0a51"]]),{usePluginMetaData:b9,useProvideExperimentalFreeForms:k9}=it;function w9(e,n=!1){const r=e.length;let o=0,i="",a=0,s=16,l=0,c=0,d=0,u=0,f=0;function p(b,N){let C=0,w=0;for(;C<b;){let S=e.charCodeAt(o);if(S>=48&&S<=57)w=w*16+S-48;else if(S>=65&&S<=70)w=w*16+S-65+10;else if(S>=97&&S<=102)w=w*16+S-97+10;else break;o++,C++}return C<b&&(w=-1),w}function m(b){o=b,i="",a=0,s=16,f=0}function h(){let b=o;if(e.charCodeAt(o)===48)o++;else for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;if(o<e.length&&e.charCodeAt(o)===46)if(o++,o<e.length&&sa(e.charCodeAt(o)))for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;else return f=3,e.substring(b,o);let N=o;if(o<e.length&&(e.charCodeAt(o)===69||e.charCodeAt(o)===101))if(o++,(o<e.length&&e.charCodeAt(o)===43||e.charCodeAt(o)===45)&&o++,o<e.length&&sa(e.charCodeAt(o))){for(o++;o<e.length&&sa(e.charCodeAt(o));)o++;N=o}else f=3;return e.substring(b,N)}function y(){let b="",N=o;for(;;){if(o>=r){b+=e.substring(N,o),f=2;break}const C=e.charCodeAt(o);if(C===34){b+=e.substring(N,o),o++;break}if(C===92){if(b+=e.substring(N,o),o++,o>=r){f=2;break}switch(e.charCodeAt(o++)){case 34:b+='"';break;case 92:b+="\\";break;case 47:b+="/";break;case 98:b+="\b";break;case 102:b+="\f";break;case 110:b+=`
453
453
  `;break;case 114:b+="\r";break;case 116:b+=" ";break;case 117:const w=p(4);w>=0?b+=String.fromCharCode(w):f=4;break;default:f=5}N=o;continue}if(C>=0&&C<=31)if(Ls(C)){b+=e.substring(N,o),f=2;break}else f=6;o++}return b}function g(){if(i="",f=0,a=o,c=l,u=d,o>=r)return a=r,s=17;let b=e.charCodeAt(o);if(_g(b)){do o++,i+=String.fromCharCode(b),b=e.charCodeAt(o);while(_g(b));return s=15}if(Ls(b))return o++,i+=String.fromCharCode(b),b===13&&e.charCodeAt(o)===10&&(o++,i+=`
454
454
  `),l++,d=o,s=14;switch(b){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 N=o-1;if(e.charCodeAt(o+1)===47){for(o+=2;o<r&&!Ls(e.charCodeAt(o));)o++;return i=e.substring(N,o),s=12}if(e.charCodeAt(o+1)===42){o+=2;const C=r-1;let w=!1;for(;o<C;){const S=e.charCodeAt(o);if(S===42&&e.charCodeAt(o+1)===47){o+=2,w=!0;break}o++,Ls(S)&&(S===13&&e.charCodeAt(o)===10&&o++,l++,d=o)}return w||(o++,f=1),i=e.substring(N,o),s=13}return i+=String.fromCharCode(b),o++,s=16;case 45:if(i+=String.fromCharCode(b),o++,o===r||!sa(e.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+=h(),s=11;default:for(;o<r&&_(b);)o++,b=e.charCodeAt(o);if(a!==o){switch(i=e.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(b),o++,s=16}}function _(b){if(_g(b)||Ls(b))return!1;switch(b){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function k(){let b;do b=g();while(b>=12&&b<=15);return b}return{setPosition:m,getPosition:()=>o,scan:n?k:g,getToken:()=>s,getTokenValue:()=>i,getTokenOffset:()=>a,getTokenLength:()=>o-a,getTokenStartLine:()=>c,getTokenStartCharacter:()=>a-u,getTokenError:()=>f}}function _g(e){return e===32||e===9}function Ls(e){return e===10||e===13}function sa(e){return e>=48&&e<=57}var o1;(function(e){e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.space=32]="space",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.asterisk=42]="asterisk",e[e.backslash=92]="backslash",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.plus=43]="plus",e[e.slash=47]="slash",e[e.formFeed=12]="formFeed",e[e.tab=9]="tab"})(o1||(o1={})),new Array(20).fill(0).map((e,n)=>" ".repeat(n));const la=200;new Array(la).fill(0).map((e,n)=>`
455
455
  `+" ".repeat(n)),new Array(la).fill(0).map((e,n)=>"\r"+" ".repeat(n)),new Array(la).fill(0).map((e,n)=>`\r